Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 Lecture 14 Memory storage elements  Latches  Flip-flops State Diagrams.

Similar presentations


Presentation on theme: "1 Lecture 14 Memory storage elements  Latches  Flip-flops State Diagrams."— Presentation transcript:

1 1 Lecture 14 Memory storage elements  Latches  Flip-flops State Diagrams

2 2 Example from last time Door combination lock  Inputs: Sequence of numbers, reset, new  Outputs: Door open/close  Memory: Must remember combination  Memory: Must remember current state

3 3 Feedback Example: Two inverters can hold a bit (as long as power is applied)  What is missing? How do we change the stored bit? How do we store information? "0" "1" "stored bit"

4 4 How do we store information? Storing a new memory  Temporarily break the feedback path "remember" "load" "data" "stored bit"

5 5 SR latch Cross-coupled NOR gates  Can set (S=1, R=0) or reset (R=1, S=0) the output RQ Q S Reset Set SRQ 00hold 010 101 11disallow R S Q Q'

6 6 SR latch behavior R S Q Q' 100 Reset Hold SetResetSet Race R S Q Q' SRQ 00hold 010 101 11disallow

7 7 SR latch is glitch sensitive Static 0 glitches can set/reset latch  Glitch on S input sets latch  Glitch on R input resets latch R S Q Q' 0 0

8 8 State diagrams How do we characterize logic circuits?  Combinational circuits: Truth tables  Sequential circuits: State diagrams First draw the states  States  Unique circuit configurations Second draw the transitions between states  Transitions  Changes in state caused by inputs

9 9 Example: SR latch Q Q' 0 1 Q Q' 1 0 Q Q' 0 0 Q Q' 1 1 SR=10 SR=01 SR=00 SR=10 SR=00 SR=01 SR=11 SR=01 SR=10 SR=01 SR=10 SR=11 possible oscillation between states 00 and 11 (when SR=00) R S Q Q' SRQ 00hold 010 101 11disallow SR=00 SR=11 SR=00

10 10 Observed SR latch behavior The 1–1 state is transitory  Either R or S “gets ahead”  Latch settles to 0–1 or 1–0 state ambiguously  Race condition  non-deterministic transition Disallow (R,S) = (1,1) SR=00 SR=10 Q Q' 0 1 Q Q' 1 0 SR=10 SR=01 SR=00 SR=01

11 11 D ("data") latch Output depends on clock  Clock high: Input passes to output  Clock low: Latch holds its output DQ Q CLK Input CLK D Q latch

12 12 Making a D latch D CLK D R Q Q S

13 13 D flip-flop Input sampled at clock edge  Rising edge: Input passes to output  Otherwise: Flip-flop holds its output Flip-flops can be rising-edge triggered or falling-edge triggered CLK D Q ff DQ Q CLK Input

14 14 Master-slave D-type flip-flop DQ CLK Input Master D latch DQ Output Slave D latch X How to make into negative edge- triggered D-type flip-flop?

15 15 Latches versus flip-flops behavior is the same unless input changes while the clock is high CLK D Q ff Q latch DQ Q CLK DQ Q

16 16 Terminology and notation DQ Q CLK Input Output Rising-edge triggered D flip-flop DQ Q CLK Input Output Falling-edge triggered D flip-flop DQ Q CLK Input Output Positive D latch DQ Q CLK Input Output Negative D latch

17 17 Q D Clk W Y X Z Q’ How to make a D flip-flop? Edge triggering is difficult  Label the internal nodes  Draw a timing diagram  Start with Clk=1

18 18 How to make a D flip flop? Q D Clk W Y X Z Q’ When Clk  0 then Y (set for SR latch block) becomes Z’=D and X (reset for SR latch block) becomes W’=D’ so Q becomes D. If Clk=1 then X=Y=0 and SR latch block holds previous values of Q,Q’, also Z=D’ and W=Z’=D. While Clk=0, if D switches then Z becomes 0 (because inputs to Z are D and D') and X and W hold their previous values and Y=X’=D as before. Falling edge-triggered flip-flop

19 19 T ("toggle") flip-flop Output toggles when input is asserted  If T=1, then Q  Q' when CLK   If T=0, then Q  Q when CLK  CLK Q TQ > Input Input(t) Q(t) Q(t +  t) 000 011 101 110


Download ppt "1 Lecture 14 Memory storage elements  Latches  Flip-flops State Diagrams."

Similar presentations


Ads by Google