1 Synchronous Sequential Circuit Analysis
2 Synchronous Sequential Circuit State Memory – A set of n edge-triggered flip-flops that store the current state of the machine – All flip-flops are triggered from the same master clock signal – All change state together Combinational circuit – Next state logic – Output logic – Mealy and Moore Combinational circuit Inputs State Memory Outputs Clock Current State Next State
3 Mealy Model next state = F ( current state, inputs ) outputs = G (current state, inputs)
4 Moore Model next state = F ( current state, inputs ) outputs = G (current state)
5 Analysis - Goals Characterize as Mealy or Moore machine Determine next state equations, i.e., find the function F – next state = F (current state, inputs) Determine output equations – Meally: outputs = F (current state, inputs), or – Moore: outputs = F (current state) Express as machine behavior – State table, or – State diagram Formulate English description of machine behavior
6 An example sequential circuit A sequential circuit with two JK flip-flops State or memory: Q1Q0 One input: X; One output: Z
7 State table of example circuit
8 Output Equations From the diagram, you can see that Z = Q 1 Q 0 X Mealy model circuit !!!
9 Next State Equations – Q(t+1) Find the flip-flop input equations/excitation equations Substitute excitation equations in the flip-flop’s characteristic equation J 1 = X’ Q 0 K 1 = X + Q 0 J 0 = X + Q 1 K 0 = X’
10 Next State Equations – Q(t+1) Next state equations: – Q 1 (t+1) = K 1 ’Q 1 (t) + J 1 Q 1 ’(t) = (X + Q 0 (t))’ Q 1 (t) + X’ Q 0 (t) Q 1 ’(t) = X’ (Q 0 (t)’ Q 1 (t) + Q 0 (t) Q 1 (t)’) = X’ (Q 0 (t) Q 1 (t)) – Q 0 (t+1) = K 0 ’Q 0 (t) + J 0 Q 0 ’(t) = X Q 0 (t) + (X + Q 1 (t)) Q 0 ’(t) = X + Q 0 (t)’ Q 1 (t) Excitation equations: – J 1 = X’ Q 0 and K 1 = X + Q 0 – J 0 = X + Q 1 and K 0 = X’ Characteristic equation of the JK flip-flop: – Q(t+1) = K’Q(t) + JQ’(t)
11 State Table & Next State Equations Q 1 (t+1) = X’ (Q 0 (t) Q 1 (t)) – Q 1 =0, Q 0 =0, X= 0 => Q 1 (t+1)= 0 Q 0 (t+1) = X + Q 0 (t)’ Q 1 (t) – Q 1 =0, Q 0 =0, X= 0 => Q 0 (t+1)= 0 0
12 State Table & Next State Equations Q 1 (t+1) = X’ (Q 0 (t) Q 1 (t)) – Q 1 =0, Q 0 =1, X= 1 => Q 1 (t+1)= 0 Q 0 (t+1) = X + Q 0 (t)’ Q 1 (t) – Q 1 =0, Q 0 =1, X= 1 => Q 0 (t+1)=
13 State Table & Next State Equations Q 1 (t+1) = X’ (Q 0 (t) Q 1 (t)) Q 0 (t+1) = X + Q 0 (t)’ Q 1 (t)
14 State Table & Characteristic Table The general JK flip-flop characteristic equation is: Q(t+1) = K’Q(t) + JQ’(t) We can also determine the next state for each input/current state combination directly from the characteristic table
15 State Table & Characteristic Table With these equations, we can make a table showing J 1, K 1, J 0 and K 0 for the different combinations of present state Q 1 Q 0 and input X J 1 = X’ Q 0 J 0 = X + Q 1 K 1 = X + Q 0 K 0 = X’
16 State Table & Characteristic Table
17 State Table & Characteristic Table 0
18 A different look Present State Q1 Q0 Next State Output Z Input X= 0 Input X= 1 X= 0X=
19 State diagrams (Mealy model) We can also represent the state table graphically with a state diagram A diagram corresponding to our example state table is shown below /0 0/0 1/0 1/1 inputoutput state
20 Sizes of state diagrams /0 0/0 1/0 1/1 Always check the size of your state diagrams – If there are n flip-flops, there should be 2 n nodes in the diagram – If there are m inputs, then each node will have 2 m outgoing arrows In our example, – We have two flip-flops, and thus four states or nodes. – There is one input, so each node has two outgoing arrows.
21 Another Mealy Circuit
22 Excitation Equations D 0 = EN’ Q 0 + EN Q 0 ’ D 0 = EN’ Q 0 + EN Q 0 ’ D 1 = EN’ Q 1 + EN Q 1 ’ Q 0 + EN Q 1 Q 0 ’ D 1 = EN’ Q 1 + EN Q 1 ’ Q 0 + EN Q 1 Q 0 ’
23 Next State/Output Equations Q 0 (t+1) = D 0 = EN’ Q 0 + EN Q 0 ’ Q 0 (t+1) = D 0 = EN’ Q 0 + EN Q 0 ’ Q 1 (t+1) = D 1 = EN’ Q 1 + EN Q 1 ’ Q 0 + EN Q 1 Q 0 ’ Q 1 (t+1) = D 1 = EN’ Q 1 + EN Q 1 ’ Q 0 + EN Q 1 Q 0 ’ MAX= EN Q 1 Q 0 MAX= EN Q 1 Q 0
24 Mealy State Table Present State Q1 Q0 Next State Output MAX Input EN= 0 Input EN= 1 X= 0X= Q 0 (t+1) = D 0 = EN’ Q 0 + EN Q 0 ’ Q 0 (t+1) = D 0 = EN’ Q 0 + EN Q 0 ’ Q 1 (t+1) = D 1 = EN’ Q 1 + EN Q 1 ’ Q 0 + EN Q 1 Q 0 ’ Q 1 (t+1) = D 1 = EN’ Q 1 + EN Q 1 ’ Q 0 + EN Q 1 Q 0 ’ MAX= EN Q 1 Q 0 MAX= EN Q 1 Q 0
25 Mealy State Diagram Present State Q1 Q0 Next State Output MAX Input EN= 0 Input EN= 1 X= 0X=
26 Moore Circuit X Remove input connection to output logic => Moore machine
27 Next State/Output Equations Q 0 (t+1) = D 0 = EN’ Q 0 + EN Q 0 ’ Q 0 (t+1) = D 0 = EN’ Q 0 + EN Q 0 ’ Q 1 (t+1) = D 1 = EN’ Q 1 + EN Q 1 ’ Q 0 + EN Q 1 Q 0 ’ Q 1 (t+1) = D 1 = EN’ Q 1 + EN Q 1 ’ Q 0 + EN Q 1 Q 0 ’ MAX= Q 1 Q 0 MAX= Q 1 Q 0 X
28 Moore State Table Present State Q1 Q0 Next State Output MAX Input EN= 0 Input EN= Q 0 (t+1) = D 0 = EN’ Q 0 + EN Q 0 ’ Q 0 (t+1) = D 0 = EN’ Q 0 + EN Q 0 ’ Q 1 (t+1) = D 1 = EN’ Q 1 + EN Q 1 ’ Q 0 + EN Q 1 Q 0 ’ Q 1 (t+1) = D 1 = EN’ Q 1 + EN Q 1 ’ Q 0 + EN Q 1 Q 0 ’ MAX= Q 1 Q 0 MAX= Q 1 Q 0
29 Moore State Diagram Present State Q1 Q0 Next State Output MAX Input EN= 0 Input EN= 1 X= 0X=
30 State Transitions MAX : Output of the Mealy circuit MAXS : Output of the Moore circuit
31 Sequential circuit analysis summary To analyze sequential circuits, you have to: – Find Boolean expressions for the outputs of the circuit and the flip-flop inputs – Use these expressions to fill in the output and flip-flop input columns in the state table – Finally, use the characteristic equation or characteristic table of the flip-flop to fill in the next state columns. The result of sequential circuit analysis is a state table or a state diagram describing the circuit