digital logic design a rigorous approach c
play

Digital Logic Design: a rigorous approach c Chapter 17: Flip-Flops - PowerPoint PPT Presentation

Digital Logic Design: a rigorous approach c Chapter 17: Flip-Flops Guy Even Moti Medina School of Electrical Engineering Tel-Aviv Univ. January 4, 2016 Book Homepage: http://www.eng.tau.ac.il/~guy/Even-Medina 1 / 1 Preliminary


  1. � Digital Logic Design: a rigorous approach c Chapter 17: Flip-Flops Guy Even Moti Medina School of Electrical Engineering Tel-Aviv Univ. January 4, 2016 Book Homepage: http://www.eng.tau.ac.il/~guy/Even-Medina 1 / 1

  2. Preliminary questions How is time measured in a synchronous circuit? 1 What is a “clock” in a microprocessor? 2 What is the frequency of a clock? 3 How are bits stored? 4 What is the functionality of a flip-flop? 5 What is a stable state? How many stable states does a 6 flip-flop have? How does a flip-flop move from one stable state to another? 7 How fast is this transition? 8 2 / 1

  3. The clock the clock is generated by rectifying and amplifying a signal generated by special non-digital devices (e.g., crystal oscillators). Definition A clock is a periodic logical signal that oscillates instantaneously between logical one and logical zero. There are two instantaneous transitions in every clock period: (i) in the beginning of the clock period, the clock transitions instantaneously from zero to one; and (ii) at some time in the interior of the clock period, the clock transitions instantaneously from one to zero. logical level clock fall clock rise clock period 1 pulse width 0 time 3 / 1

  4. logical level 1 (A) 0 time logical level 1 (B) 0 time logical level 1 (C) 0 time Figure: (A) A symmetric clock (B) narrow pulses (C) wide pulses.

  5. Clock cycles A clock partitions time into discrete intervals. t i - the starting time of the i th clock period. [ t i , t i +1 ) -clock cycle i . 5 / 1

  6. Definition (edge-triggered flip-flop) Inputs: D ( t ) and a clock clk . Output: Q ( t ). Parameters: Four parameters are used to specify the functionality of a flip-flop: Setup-time denoted by t su , Hold-time denoted by t hold , Contamination-delay denoted by t cont , and Propagation-delay denoted by t pd . Terminology Require − t su < t hold < t cont < t pd . △ critical segment: C i = [ t i − t su , t i + t hold ] △ instability segment: A i = [ t i + t cont , t i + t pd ] Functionality: If D ( t ) is stable during the critical segment C i , then Q ( t ) = D ( t i ) during the interval ( t i + t pd , t i +1 + t cont ).

  7. Critical and instability segments in a flip-flop clk C i A i Figure: The critical segment C i = [ t i − t su , t i + t hold ] and instability segment A i = [ t i + t cont , t i + t pd ] corresponding the clock period starting at t i . 7 / 1

  8. Timing diagram of a Flip Flop The x -axis corresponds to time. A green interval means that the signal is stable during this interval. A red interval means that the signal may be instable. C i A i C i +1 A i +1 clk t su D ( t ) x y t hold t cont t cont Q ( t ) x y t pd 8 / 1

  9. Remarks about flip-flops The assumption − t su < t hold < t cont < t pd implies that the 1 critical segment C i and the instability segment A i are disjoint. If D ( t ) is stable during the critical segment C i , then the value 2 of D ( t ) during the critical segment C i is well defined and equals D ( t i ). The flip-flop samples the input signal D ( t ) during the critical 3 segment C i . Sampling is successful only if D ( t ) is stable while it is sampled. If the input D ( t ) is stable during the critical segments { C i } i , 4 then the output Q ( t ) is stable in between the instability segments { A i } i . The stability of the input D ( t ) during the critical segments 5 depends on the clock period. We will later see that slowing down the clock (i.e., increasing the clock period) helps in achieving a stable signal D ( t ) during the critical segments. 9 / 1

  10. Flip-flop schematic The special “arrow” that marks the clock input port. D clk ff Q 10 / 1

  11. clk clk combinational D 1 ( t ) Q 0 ( t ) D 0 ( t ) Q 1 ( t ) circuit ff ff C C i A i C i +1 A i +1 clk t su D 0 ( t ) t hold t cont Q 0 ( t ) t pd d ( C ) D 1 ( t ) t cont Q 1 ( t ) t pd

  12. clk clk combinational D 1 ( t ) Q 0 ( t ) D 0 ( t ) Q 1 ( t ) circuit ff ff C clk X D 0 ( t ) X Q 0 ( t ) f(X) D 1 ( t ) f(X) Q 1 ( t )

  13. Non-empty intersection of C i and A i The timing analysis fails if C i ∩ A i � = ∅ . This could happen, if t hold > t cont (in contradiction to the definition of a flip-flop). 13 / 1

  14. t hold > t cont clk clk combinational Q 0 ( t ) D 1 ( t ) D 0 ( t ) Q 1 ( t ) circuit ff ff C C i C i +1 A i +1 A i clk t su D 0 ( t ) t hold t cont Q 0 ( t ) t pd d ( C ) D 1 ( t ) C i C i +1 ����� ����� �������� �������� ��� ��� t cont ����� ����� �������� �������� ��� ��� Q 1 ( t ) t pd 14 / 1

  15. Bounding Instability Flip-flops play a crucial role in bounding the segments of time during which signals may be instable. Informally, uncertainty increases as the segments of stability become shorter. Flip-flops help bounding instability. 15 / 1

  16. A chain of k inverters and a chain of k flip-flops Q 0 ( t ) D 1 ( t ) Q 1 ( t ) D 2 ( t ) Q 2 ( t ) D 0 ( t ) inv 0 inv 1 inv 2 clk clk clk Q 0 ( t ) D 1 ( t ) D 1 ( t ) Q 1 ( t ) D 0 ( t ) Q 2 ( t ) ff 0 ff 1 ff 2 16 / 1

  17. timing: chain of inverters vs. chain of FFs D 0 ( t ) t pd ( inv ) Q 0 ( t ) t pd ( inv ) Q 1 ( t ) k · t pd ( inv ) Q k − 1 ( t ) C i A i C i +1 A i +1 clk t su D 0 ( t ) t hold t cont t cont Q 0 ( t ) t pd t cont t cont Q 1 ( t ) t pd t cont t cont Q k − 1 ( t ) t pd 17 / 1

  18. Clock enabled flip-flops Definition A clock enabled flip-flop is defined as follows. Inputs: Digital signals D ( t ) , ce ( t ) and a clock clk . Output: A digital signal Q ( t ). Functionality: If D ( t ) and ce ( t ) are stable during the critical segment C i , then for every t ∈ ( t i + t pd , t i +1 + t cont ) � D ( t i ) if ce ( t i ) = 1 Q ( t ) = Q ( t i ) if ce ( t i ) = 0. We refer to the input signal ce ( t ) as the clock-enable signal. Note that the input ce ( t ) indicates whether the flip-flop samples the input D ( t ) or maintains its previous value. 18 / 1

  19. Which design is a correct clock enabled FF? D ( t ) D ( t ) 1 0 ce ( t ) mux ce ( t ) and clk ff ff clk Q ( t ) Q ( t ) (A) (B) 19 / 1

  20. Summary memory devices: flip-flops and the clock signal. The flip-flop samples the value of the input at the “end” of a clock cycle and outputs the sampled value during the “next” clock cycle. Flip-flops play a crucial role in bounding the segments of time during which signals may be instable. Flip-flops and combinational circuits have opposite roles. Combinational circuits compute interesting Boolean functions but increase uncertainty. Flip-flops, on the other hand, output the same value that is fed as input but they provide certainty. 20 / 1

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend