Edge-Triggered FF Operation

Slides:



Advertisements
Similar presentations
State-machine structure (Mealy)
Advertisements

EE 5900 Advanced Algorithms for Robust VLSI CAD, Spring 2009 Sequential Circuits.
A. Abhari CPS2131 Sequential Circuits Most digital systems like digital watches, digital phones, digital computers, digital traffic light controllers and.
1 KU College of Engineering Elec 204: Digital Systems Design Lecture 12 Basic (NAND) S – R Latch “Cross-Coupling” two NAND gates gives the S -R Latch:
Overview Part 1 - Storage Elements and Analysis
Overview Part 1 - Storage Elements and Analysis
CPEN Digital System Design Chapter 5 Sequential Circuits Storage Elements and Sequential Circuit Analysis C. Gerousis © Logic and Computer Design.
Charles Kime & Thomas Kaminski © 2008 Pearson Education, Inc. (Hyperlinks are active in View Show mode) Chapter 5 – Sequential Circuits Logic and Computer.
Circuits require memory to store intermediate data
Charles Kime & Thomas Kaminski © 2008 Pearson Education, Inc. (Hyperlinks are active in View Show mode) Chapter 5 – Sequential Circuits Part 1 – Storage.
Sequential Circuit Analysis & Design Dr. Aiman H. El-Maleh Computer Engineering Department King Fahd University of Petroleum & Minerals Dr. Aiman H. El-Maleh.
Chapter 6 –Selected Design Topics Part 2 – Propagation Delay and Timing Logic and Computer Design Fundamentals.
CS 151 Digital Systems Design Lecture 21 Analyzing Sequential Circuits.
1 Lecture 23 More Sequential Circuits Analysis. 2 Analysis of Combinational Vs. Sequential Circuits °Combinational : Boolean Equations Truth Table Output.
Charles Kime & Thomas Kaminski © 2008 Pearson Education, Inc. (Hyperlinks are active in View Show mode) Chapter 5 – Sequential Circuits Part 1 – Storage.
Sequential Circuits. 2 Sequential vs. Combinational Combinational Logic:  Output depends only on current input −TV channel selector (0-9) Sequential.
EE 4271 VLSI Design, Fall 2010 Sequential Circuits.
Sequential Circuit Analysis. 2 Synchronous vs. Asynch. Synchronous sequential circuit:  The behavior can be defined from knowledge of its signal at discrete.
Sequential Circuit Analysis. 2 Synchronous vs. Asynch. Synchronous sequential circuit:  the behavior can be defined from knowledge of its signal at discrete.
Sequential Circuits Chapter 6
ECE/CS 352 Digital System Fundamentals© T. Kaminski & C. Kime 1 ECE/CS 352 Digital Systems Fundamentals Spring 2001 Chapter 4 – Part 3 Tom Kaminski & Charles.
Lecture 10 Topics: Sequential circuits Basic concepts Clocks
CPEN Digital System Design Chapter 5 - Sequential Circuits Sequential Circuit Design C. Gerousis © Logic and Computer Design Fundamentals, 4 rd Ed.,
Charles Kime & Thomas Kaminski © 2004 Pearson Education, Inc. Terms of Use (Hyperlinks are active in View Show mode) Terms of Use ECE/CS 352: Digital Systems.
Sequential Circuit: Analysis BIL- 223 Logic Circuit Design Ege University Department of Computer Engineering.
Charles Kime & Thomas Kaminski © 2008 Pearson Education, Inc. (Hyperlinks are active in View Show mode) Chapter 6 – Selected Design Topics Part 1 – The.
Registers; State Machines Analysis Section 7-1 Section 5-4.
EKT 221 / 4 DIGITAL ELECTRONICS II

Introduction to Sequential Logic Design Finite State-Machine Analysis.
1 KU College of Engineering Elec 204: Digital Systems Design Lecture 13 Edge-Triggered FF Operation.
Overview Part 1 - Storage Elements and Sequential Circuit Analysis
2018/5/2 EE 4271 VLSI Design, Fall 2016 Sequential Circuits.
Sequential Networks and Finite State Machines
4.
Overview Part 1 - Storage Elements and Analysis
Introduction to Sequential Logic Design
ANALYSIS OF SEQUENTIAL CIRCUITS
Digital Fundamentals Floyd Chapter 7 Tenth Edition
Sequential Circuit Timing
FIGURE 5.1 Block diagram of sequential circuit
Digital Design Lecture 9
2018/8/29 EE 4271 VLSI Design, Fall 2013 Sequential Circuits.
EKT 121 / 4 DIGITAL ELECTRONICS I
Sequential Circuits Most digital systems like digital watches, digital phones, digital computers, digital traffic light controllers and so on require.
CISE204: Design of Digital Systems Lecture 18 : Sequential Circuits
Asynchronous Inputs of a Flip-Flop
Overview Part 1 – The Design Space
Assistant Prof. Fareena Saqib Florida Institute of Technology
T Flip-Flop A T (toggle) flip-flop is a complementing flip-flop and can be obtained from a JK flip-flop when the two inputs are tied together. When T.
Sequential Circuits: Flip-Flops
DIGITAL ELECTRONICS ТHEME 4: SEQUENTIAL LOGIC CIRCUITS. FLIP- FLOPS – ASYNCHRONOUS AND SYNCHRONOUS, R - S, D, T, J - K FLIP- FLOPS. The value of the outputs.
Sequential Networks and Finite State Machines
Chapter 7 Latches, Flip-Flops, and Timers
KU College of Engineering Elec 204: Digital Systems Design
Example: Re-design with Moore Model
ECE 434 Advanced Digital System L05
Instructor: Alexander Stoytchev
Instructor: Alexander Stoytchev
KU College of Engineering Elec 204: Digital Systems Design
EE2174: Digital Logic and Lab
MTE 202, Summer 2016 Digital Circuits Dr.-Ing. Saleh Hussin
Chapter 5 – Sequential Circuits
Sequential Circuit Analysis & Design
SYEN 3330 Digital Systems Chapter 6 – Part 3 SYEN 3330 Digital Systems.
Binary Adder/Subtractor
Sequential Circuits UNIT- IV
Chapter 5 Sequential Circuits.
SEQUENTIAL CIRCUITS __________________________________________________
2019/9/26 EE 4271 VLSI Design, Fall 2012 Sequential Circuits.
Presentation transcript:

Edge-Triggered FF Operation KU College of Engineering Elec 204: Digital Systems Design

Edge-Triggered FF Operation KU College of Engineering Elec 204: Digital Systems Design

Edge-Triggered FF Operation KU College of Engineering Elec 204: Digital Systems Design

Edge-Triggered FF Operation KU College of Engineering Elec 204: Digital Systems Design

Flip-Flop Timing Parameters $ t wH wH,min C t $ t wL wL,min t t s h S / R ts - setup time th - hold time tw - clock pulse width tpx - propagation delay tPHL - High-to-Low tPLH - Low-to-High tpd - max (tPHL, tPLH) t p-,min t p-,max Q (a) Pulse-triggered (positive pulse) t $ t wH wH,min C t $ t wL wL,min t t s h D t p-,min t p-,max Q (b) Edge-triggered (negative edge) KU College of Engineering Elec 204: Digital Systems Design

Flip-Flop Timing Parameters (continued) ts - setup time Master-slave - Equal to the width of the triggering pulse Edge-triggered - Equal to a time interval that is generally much less than the width of the the triggering pulse th – minimum hold time for the inputs - Often equal to zero tpx - propagation delay Same parameters as for gates except Measured from clock edge that triggers the output change to the output change KU College of Engineering Elec 204: Digital Systems Design

Sequential Circuit Analysis Inputs Combina-tional Logic Outputs General Model Current State at time (t) is stored in an array of lip-flops.  Next State at time (t+1) is a Boolean function of State and Inputs. Outputs at time (t) are a Boolean function of State (t) and (sometimes) Inputs (t). Storage Elements CLK State Next State KU College of Engineering Elec 204: Digital Systems Design

KU College of Engineering Elec 204: Digital Systems Design Example 1 (from Fig. 6-17) Input: x(t) Output: y(t) State: (A(t), B(t)) What is the Output Function? What is the Next State Function? A C D Q y x B CP KU College of Engineering Elec 204: Digital Systems Design

Example 1 (from Fig. 6-17) (continued) Boolean equations for the functions: A(t+1) = A(t)x(t) + B(t)x(t) B(t+1) = A(t)x(t) y(t) = x(t)(B(t) + A(t)) x D Q A C Q A Next State D Q B CP C Q' y Output KU College of Engineering Elec 204: Digital Systems Design

Example 1(from Fig. 6-17) (continued) Where in time are inputs, outputs and states defined? 1 KU College of Engineering Elec 204: Digital Systems Design

State Table Characteristics State table – a multiple variable table with the following four sections: Present State – the values of the state variables for each allowed state. Input – the input combinations allowed. Next-state – the value of the state at time (t+1) based on the present state and the input. Output – the value of the output as a function of the present state and (sometimes) the input. From the viewpoint of a truth table: the inputs are Input, Present State and the outputs are Output, Next State KU College of Engineering Elec 204: Digital Systems Design

Example 1: State Table (from Fig. 6-17) The state table can be filled in using the next state and output equations: A(t+1) = A(t)x(t) + B(t)x(t) B(t+1) =A (t)x(t) y(t) =x (t)(B(t) + A(t)) Present State Input Next State Output A(t) B(t) x(t) A(t+1) B(t+1) y(t) 0 0 0 0 1 0 1 0 1 1 1 1 0 1 0 1 1 KU College of Engineering Elec 204: Digital Systems Design

Example 1: Alternate State Table 2-dimensional table that matches well to a K-map. Present state rows and input columns in Gray code order. A(t+1) = A(t)x(t) + B(t)x(t) B(t+1) =A (t)x(t) y(t) =x (t)(B(t) + A(t)) Present State Next State x(t)=0 x(t)=1 Output x(t)=0 x(t)=1 A(t) B(t) A(t+1)B(t+1) A(t+1)B(t+1) y(t) y(t) 0 0 0 0 0 1 0 0 0 1 0 0 1 1 1 0 1 0 1 1 0 0 1 0 KU College of Engineering Elec 204: Digital Systems Design

KU College of Engineering Elec 204: Digital Systems Design State Diagrams The sequential circuit function can be represented in graphical form as a state diagram with the following components: A circle with the state name in it for each state A directed arc from the Present State to the Next State for each state transition A label on each directed arc with the Input values which causes the state transition, and A label: On each circle with the output value produced, or On each directed arc with the output value produced. KU College of Engineering Elec 204: Digital Systems Design

KU College of Engineering Elec 204: Digital Systems Design State Diagrams Label form: On circle with output included: state/output Moore type output depends only on state On directed arc with the output included: input/output Mealy type output depends on state and input KU College of Engineering Elec 204: Digital Systems Design

Example 1: State Diagram A B 0 0 0 1 1 1 1 0 x=0/y=1 x=1/y=0 x=0/y=0 Which type? Diagram gets confusing for large circuits For small circuits, usually easier to understand than the state table Type: Mealy KU College of Engineering Elec 204: Digital Systems Design

KU College of Engineering Elec 204: Digital Systems Design Moore and Mealy Models Sequential Circuits or Sequential Machines are also called Finite State Machines (FSMs). Two formal models exist: In contemporary design, models are sometimes mixed Moore and Mealy Moore Model Named after E.F. Moore. Outputs are a function ONLY of states Usually specified on the states. Mealy Model Named after G. Mealy Outputs are a function of inputs AND states Usually specified on the state transition arcs. KU College of Engineering Elec 204: Digital Systems Design

Moore and Mealy Example Diagrams Mealy Model State Diagram maps inputs and state to outputs Moore Model State Diagram maps states to outputs 1 x=1/y=1 x=1/y=0 x=0/y=0 1/0 2/1 x=1 x=0 0/0 KU College of Engineering Elec 204: Digital Systems Design

Moore and Mealy Example Tables Mealy Model state table maps inputs and state to outputs Moore Model state table maps state to outputs Present State Next State x=0 x=1 Output 0 1 0 0 1 Present State Next State x=0 x=1 Output 0 1 1 0 2 2 KU College of Engineering Elec 204: Digital Systems Design

Example 2: Sequential Circuit Analysis Clock Reset D Q C R A B Z Logic Diagram: KU College of Engineering Elec 204: Digital Systems Design

Example 2: Flip-Flop Input Equations Variables Inputs: None Outputs: Z State Variables: A, B, C Initialization: Reset to (0,0,0) Equations A(t+1) = Z = B(t+1) = C(t+1) = A(t+1) = BC B(t+1) = B’C + BC’ C(t+1) = A’C’ Z = A KU College of Engineering Elec 204: Digital Systems Design

KU College of Engineering Elec 204: Digital Systems Design Example 2: State Table X+ = X(t+1) A B C A+B+C+ Z 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 A’B’C’: 0 0 1, 0 1 0, 0 1 1, 1 0 0, 0 0 0, 0 1 0, 0 1 0, 1 0 0 Z: 0 0 0 0 1 1 1 1 KU College of Engineering Elec 204: Digital Systems Design

Example 2: State Diagram 000 011 010 001 100 101 110 111 Reset ABC Which states are used? What is the function of the circuit? Only states reachable from the reset state 000 are used: 000, 001, 010, 011, and 100. The circuit produces a 1 on Z after four clock periods and every five clock periods thereafter: 000 -> 001 -> 010 -> 011 -> 100 -> 000 -> 001 -> 010 -> 011 -> 100 … 1 1 KU College of Engineering Elec 204: Digital Systems Design

Circuit and System Level Timing Q Q' CLOCK Consider a system comprised of ranks of flip-flops connected by logic: If the clock period is too short, some data changes will not propagate through the circuit to flip-flop inputs before the setup time interval begins KU College of Engineering Elec 204: Digital Systems Design

Circuit and System Level Timing (continued) Timing components along a path from flip-flop to flip-flop (a) Edge-triggered (positive edge) t p pd,FF pd,COMB slack s C (b) Pulse-triggered (negative pulse) KU College of Engineering Elec 204: Digital Systems Design

Circuit and System Level Timing (continued) New Timing Components tp - clock period - The interval between occurrences of a specific clock edge in a periodic clock tpd,COMB - total delay of combinational logic along the path from flip-flop output to flip-flop input tslack - extra time in the clock period in addition to the sum of the delays and setup time on a path Can be either positive or negative Must be greater than or equal to zero on all paths for correct operation KU College of Engineering Elec 204: Digital Systems Design

Circuit and System Level Timing (continued) Timing Equations tp = tslack + (tpd,FF + tpd,COMB + ts) For tslack greater than or equal to zero, tp ≥ max (tpd,FF + tpd,COMB + ts) for all paths from flip-flop output to flip-flop input Can be calculated more precisely by using tPHL and tPLH values instead of tpd values, but requires consideration of inversions on paths KU College of Engineering Elec 204: Digital Systems Design

Calculation of Allowable tpd,COMB Compare the allowable combinational delay for a specific circuit: a) Using edge-triggered flip-flops b) Using master-slave flip-flops Parameters tpd,FF(max) = 1.0 ns ts(max) = 0.3 ns for edge-triggered flip-flops ts = twH = 1.0 ns for master-slave flip-flops Clock frequency = 250 MHz KU College of Engineering Elec 204: Digital Systems Design

Calculation of Allowable tpd,COMB (continued) Calculations: tp = 1/clock frequency = 4.0 ns Edge-triggered: 4.0 ≥ 1.0 + tpd,COMB + 0.3, tpd,COMB ≤ 2.7 ns Master-slave: 4.0 ≥ 1.0 + tpd,COMB + 1.0, tpd,COMB ≤ 2.0 ns Comparison: Suppose that for a gate, average tpd = 0.3 ns Edge-triggered: Approximately 9 gates allowed on a path Master-slave: Approximately 6 to 7 gates allowed on a path KU College of Engineering Elec 204: Digital Systems Design