SequentialCircuits
SequentialCircuits
Sequential Circuits
A combinational circuit:
• At any time, outputs depends only on inputs
• Changing inputs changes outputs
• No regard for previous inputs
• No memory (history)
Combinational vs Sequential
inputs X Combinational outputs Z
Circuits
present state next state
Memory
A sequential circuit:
• A combinational circuit with feedback through memory
• The stored information at any time defines a state
• Outputs depends on inputs and previous inputs
• Previous inputs are stored as binary information into memory
• Next state depends on inputs and present state
Types of Sequential Circuits
• Two types of sequential circuits:
• Synchronous: The behavior of the circuit
depends on the input signal at discrete
instances of time (also called clocked)
• Asynchronous: The behavior of the circuit
depends on the input signals at any instance
of time and the order of the inputs change
• A combinational circuit with feedback
Synchronous Sequential Circuits
inputs X Combinational outputs Z
Circuits
present state next state
Flip-Flops
clock
clock
clk
clk clk
• D = J Q’ + K’ Q
• J sets the flip flop (1)
• K reset the flip flop (0)
• When J = K = 1, the output is complemented
Other Flip Flops (cont.)
T Flip Flop
• Example: (D Latch)
Steps:
• Obtain state equations
• FF input equations
• Output equations
• Fill the state table
• Put all combinations of inputs and current states
• Fill the next state and output
• Draw the state diagram
Example 1
Analyze this circuit?
• Is this a sequential
circuit? Why?
• How many inputs?
• How many outputs?
• How many states?
• What type of
memory?
Example 1 (cont.)
Q(t) D Q(t+1)
0 0 0
D Q(t+1)
0 1 1
0 0 Q(t+1) = D
1 0 0
1 1
1 1 1
Example 1 (cont.)
State equations:
DA = AX + BX
DB = A’ X
Y = (A + B) X’
Substitute (to get N.S.):
A(t+1) = DA = AX + BX
B(t+1) = DB = A’ X
State table:
Example 1 (cont.)
State table (2D):
Example 1 (cont.)
State table: State diagram:
Example 2
Analyze this circuit?
• Is this a sequential
circuit? Why?
• How many inputs?
• How many outputs?
• How many states?
• What type of
memory?
Example 2 (cont.)
J K Q(t+1)
0 0 Q(t)
0 1 0
Q(t+1) = JQ’ + K’Q
1 0 1
1 1 Q’(t)
Example 2 (cont.)
State equations:
JA = B, KA = B X’
JB = X’, KB = A X
by substitution:
A = JAA’ + KA’A
= A’ B + A B’ + A X
B = B’ X’ + A B X + A’ B X’
Design of Synchronous
Sequential Circuits
• The design of a clocked sequential circuit starts
from a set of specifications and ends with a logic
diagram (Analysis reversed!)
• Building blocks: flip-flops, combinational logic
• Need to choose type and number of flip-flops
• Need to design combinational logic together with
flip-flops to produce the required behavior
• The combinational part is
• flip-flop input equations
• output equations
Design of Synchronous
Sequential Circuits
Design Procedure:
• Obtain a state diagram from the word description
• State reduction if necessary
• Obtain State Table
• State Assignment
• Choose type of flip-flops
• Use FF’s excitation table to complete the table
• Derive state equations
• Obtain the FF input equations and the output equations
• Use K-Maps
• Draw the circuit diagram
Example 1
Problem: Design of A 3-bit Counter
Design a circuit that counts in binary form as follows
000, 001, 010, … 111, 000, 001, …
Example 1 (cont.)
Step1: State Diagram
We choose T-FF
0
Example 1 (cont.)
Step3: State Equations
Example 1 (cont.)
Step4: Draw Circuit
TA0 = 1
TA1 = A0
TA2 = A1A0
Excitation Table
D–FF excitation table
T–FF excitation table