400 likes | 657 Views
Objectives. Sequential CircuitsMemory ElementsLatchesFlip-Flops. Ahmad Almulhem, KFUPM 2009. Combinational vs Sequential. A combinational circuit:At any time, outputs depends only on inputsChanging inputs changes outputsNo regard for previous inputsNo memory (history)Time is ignored !. Ahmad
E N D
1. COE 202: Digital Logic DesignSequential CircuitsPart 1 Dr. Ahmad Almulhem
Email: ahmadsm AT kfupm
Phone: 860-7554
Office: 22-324
Ahmad Almulhem, KFUPM 2009
2. Objectives Sequential Circuits
Memory Elements
Latches
Flip-Flops Ahmad Almulhem, KFUPM 2009
3. Combinational vs Sequential A combinational circuit:
At any time, outputs depends only on inputs
Changing inputs changes outputs
No regard for previous inputs
No memory (history)
Time is ignored ! Ahmad Almulhem, KFUPM 2009
4. Combinational vs Sequential A sequential circuit:
outputs depends on inputs and previous inputs
Previous inputs are stored as binary information into memory
The stored information at any time defines a state
next state depends on inputs and present state Ahmad Almulhem, KFUPM 2009
5. Examples of sequential systems Ahmad Almulhem, KFUPM 2009
6.
4-bit adder (ripple-carry)
Notice how carry-out propagates
One adder is active at a time
4 full adders are needed Combinational Adder Ahmad Almulhem, KFUPM 2009
7.
1-bit memory and 2 4-bit memory
Only one full-adder!
4 clocks to get the output
The 1-bit memory defines the circuit state (0 or 1) Sequential Adder Ahmad Almulhem, KFUPM 2009
8. Types of Sequential Circuits Two types of sequential circuits:
Synchronous: The behavior of the circuit depends on the input signal values at discrete intervals of time (also called clocked)
Asynchronous: The behavior of the circuit depends on the order of change of the input signals at any instance of time (continuous) Ahmad Almulhem, KFUPM 2009
9. Clock A clock generator produces a periodic train of pulses (alternating 0s and 1s)
A clock signal is required for generating discrete time intervals in synchronous circuits
The memory/state changes with the clock Ahmad Almulhem, KFUPM 2009
10. Memory - Latches A latch is binary storage component
Can store a 0 or 1
The most basic memory element
Built with gates (NORs, NANDs)
Can be used to build flip-flops Ahmad Almulhem, KFUPM 2009
11. SR Latch What does this circuit do? Ahmad Almulhem, KFUPM 2009
12. SR Latch Two states: Set (Q = 1) and Reset (Q = 0)
When S=R=0, Q remains the same, S=R=1 is not allowed!
Provide a simple form of memory
State of the circuit depends not only on the current inputs, but also on the recent history of the inputs Ahmad Almulhem, KFUPM 2009
13. S’ R’ Latch Ahmad Almulhem, KFUPM 2009 How about this circuit?
14. S’ R’ Latch Ahmad Almulhem, KFUPM 2009 Similar to SR latch (complemented)
Two states: Set (Q = 0) and Reset (Q = 1)
When S=R=1, Q remains the same
S=R=0 is not allowed!
15. SR Latch with Clock An additional input signal (Clock) can be introduced to make sure that the operation of the latch is modified depending on the value of the Clock (C) signal
When C=0, the S and R inputs have no effect on the latch
When C=1, the inputs affect the state of the latch and possibly the output Ahmad Almulhem, KFUPM 2009
16. D Latch How can we eliminate the undefined state? Ahmad Almulhem, KFUPM 2009
17. D Latch Ensure S and R are never equal to 1 at the same time
Add inverter
D stands for data
Output follows the input when C = 1
When C = 0, Q remains the same Ahmad Almulhem, KFUPM 2009
18. Characteristic Table Similar to the truth table in combinational circuits
Next state is defined in terms of the current state and the inputs
K-Map can be used to obtain the characteristic equation
The indeterminate states can be expressed as don’t cares Ahmad Almulhem, KFUPM 2009
19. Characteristic Table – SR Latch Ahmad Almulhem, KFUPM 2009
20. Characteristic Table – SR Latch Ahmad Almulhem, KFUPM 2009
21. Characteristic Table – D Latch Ahmad Almulhem, KFUPM 2009
22. Characteristic Table – D Latch Ahmad Almulhem, KFUPM 2009
23. Excitation Table Defines the input conditions for which a certain next state is reached from a certain current state for a circuit
Lists the inputs for moving from one state to another Ahmad Almulhem, KFUPM 2009
24. Excitation Table Defines the input conditions for which a certain next state is reached from a certain current state for a circuit
Lists the inputs for moving from one state to another Ahmad Almulhem, KFUPM 2009
25. Clocked JK Latch Ahmad Almulhem, KFUPM 2009
26. Clocked JK Latch Ahmad Almulhem, KFUPM 2009
27. JK Latch – Characteristic Table Ahmad Almulhem, KFUPM 2009
28. JK Latch – Excitation Table For the next state and present state to be equal to 0, J must be equal to 0
For both next and current states to be equal to 1, K must be equal to 0
To change state from 0 to 1, J must be 1
To change state from 1 to 1, K must be 1 Ahmad Almulhem, KFUPM 2009
29. Clocked T Latch The clocked T latch is a single input version of the JK latch
The letter ‘T’ stands for Toggle, as it toggles the current state when equal to 1
When T=1, the next state is the complement of the current state Ahmad Almulhem, KFUPM 2009
30. T Latch (Tables) Ahmad Almulhem, KFUPM 2009
31. Problem with Latches What happens Clock=1? What will be the value of Q when Clock goes to 0?
Problem: A latch is transparent; state keep changing as long as the clock remains active
Due to this uncertainty, latches can not be reliably used as storage elements. Ahmad Almulhem, KFUPM 2009
32. Flip Flops A flip-flop is a one bit memory similar to latches
Solves the issue of latch transparency
Latches are level sensitive
Flip-Flops are edge-triggered or edge-sensitive Ahmad Almulhem, KFUPM 2009
33. Flip Flops Implementation Two methods:
Master-Slave
Two latches (master and slave) and additional logic
Edge-Triggered
Usually implemented differently at the transistor level
Can also be built with latches similar to master-slave implementation Ahmad Almulhem, KFUPM 2009
34. Master-Slave SR Flip Flop Built using two latches (Master and Slave)
C = 1, master is active
C = 0, slave is active
Q is sampled at the falling edge
Also called pulse-triggered: data is entered on the rising edge of the clock pulse, but the output does not reflect the change until the falling edge of the clock pulse. Ahmad Almulhem, KFUPM 2009
35. Master-Slave JK Flip Flop Ahmad Almulhem, KFUPM 2009
36. Edge-Triggered D Flip Flop This flip-flop takes exactly the form of a master-slave flip-flop, with the master a D latch and the slave an SR latch. Also, an inverter is added to the clock input of the master latch.
Because the master latch is a D latch, the flip-flop exhibits edge-triggered rather than master-slave (pulse-triggered) behavior. Ahmad Almulhem, KFUPM 2009
37. Standard Symbols Ahmad Almulhem, KFUPM 2009
38. Direct Inputs Ahmad Almulhem, KFUPM 2009
39. D Flip Flop with Direct Inputs Ahmad Almulhem, KFUPM 2009
40. Flip Flops Sheet (Mano’s Textbook) Ahmad Almulhem, KFUPM 2009
41. Summary In a sequential circuit, outputs depends on inputs and previous inputs
Previous inputs are stored as binary information into memory
The stored information at any time defines a state
Similarly, next state depends on inputs and present state
Two types of sequential circuits: Synchronous and Asynchronous
Two types of Memory elements: Latches and Flip-Flops.
A flip-flop is described using functional, characteristic table/equation and excitation tables Ahmad Almulhem, KFUPM 2009