Professional Documents
Culture Documents
CLK
Q1
Q0’
InB N0 Q0
D Q
Q1’ 9 gates
Q0’
InA 21 gate inputs
CLK
Q1’
Q0
Z
Q1
Q0’
InB’
ECE 238L 19 Ohehot © 2006
Page 5
One-Hot Implementation
A
InA’ B
B N_A A InA N_C C
D Q D Q
InA’ C
D InB’
CLK CLK
N_B N_D
A B C D
D Q D Q
InA InB
B Z
CLK CLK
C
9 gates
19 gate inputs
x’
A
x State Encoding
y’z
A 100
B y’z’
B 010
C 001
y
NA D Q A
With one-hot encoding, each
state has its own flip flop.
State Encoding
A 100 NB D Q B Note: ‘A’ is the name of a
B 010 state. It is also the name of
the wire coming out from
C 001
the flip flop for state ‘A’.
NC C
D Q The same holds true for
states ‘B’ and ‘C’
B y’z’
NA = A•x’ + B•y’z + C
B y’z’
NA = A•x’ + B•y’z + C
B y’z’
NA = A•x’ + B•y’z + C
B y’z’
NA = A•x’ + B•y’z + C
y
Similar reasoning leads to:
C NB = A•x + B•y’z’
NC = B•y
A+ = (PUSHED’ A) + (ECNT3’ E)
+ (WAITDONE F)
+ (LOCKED D)
A+ = (PUSHED’ A) + (ECNT3’ E)
+ (WAITDONE F)
+ (LOCKED D)
B+ = (PUSHED’ B)+(PUSHED 7 A)
A+ = (PUSHED’ A) + (ECNT3’ E)
+ (WAITDONE F)
+ (LOCKED D)
B+ = (PUSHED’ B)+(PUSHED 7 A)
C+ = (PUSHED’ C)+(PUSHED 8 B)
A+ = (PUSHED’ A) + (ECNT3’ E)
+ (WAITDONE F)
+ (LOCKED D)
B+ = (PUSHED’ B)+(PUSHED 7 A)
C+ = (PUSHED’ C)+(PUSHED 8 B)
D+ = (LOCKED’ D)+(PUSHED 9 C)
A+ = (PUSHED’ A) + (ECNT3’ E)
+ (WAITDONE F)
+ (LOCKED D)
B+ = (PUSHED’ B)+(PUSHED 7 A)
C+ = (PUSHED’ C)+(PUSHED 8 B)
D+ = (LOCKED’ D)+(PUSHED 9 C)
E+ = (PUSHED 7’ A)
+ (PUSHED 8’ B)
+ (PUSHED 9’ C)
A+ = (PUSHED’ A) + (ECNT3’ E)
+ (WAITDONE F)
+ (LOCKED D)
B+ = (PUSHED’ B)+(PUSHED 7 A)
C+ = (PUSHED’ C)+(PUSHED 8 B)
D+ = (LOCKED’ D)+(PUSHED 9 C)
E+ = (PUSHED 7’ A)
+ (PUSHED 8’ B)
+ (PUSHED 9’ C)
F+ = (ECNT3 E)
+ (WAITDONE’ F)
ERROR = E