ASYNCHRONOUS SEQUENTIAL CIRCUITS

Similar documents
CHAPTER 9: SEQUENTIAL CIRCUITS

Asynchronous sequence circuits

Synchronous Sequential Circuit

Chapter 9 Asynchronous Sequential Logic

Synchronous Sequential Circuit Design. Digital Computer Design

ELEC Digital Logic Circuits Fall 2014 Sequential Circuits (Chapter 6) Finite State Machines (Ch. 7-10)

Different encodings generate different circuits

Ch 7. Finite State Machines. VII - Finite State Machines Contemporary Logic Design 1

ECEN 248: INTRODUCTION TO DIGITAL SYSTEMS DESIGN. Week 7 Dr. Srinivas Shakkottai Dept. of Electrical and Computer Engineering

Department of Electrical & Electronics EE-333 DIGITAL SYSTEMS

Synchronous Sequential Circuit Design. Dr. Ehab A. H. AL-Hialy Page 1

Synchronous Sequential Logic

Problem Set 9 Solutions

COE 202: Digital Logic Design Sequential Circuits Part 3. Dr. Ahmad Almulhem ahmadsm AT kfupm Phone: Office:

Sequential logic and design

ECEN 248: INTRODUCTION TO DIGITAL SYSTEMS DESIGN. Week 9 Dr. Srinivas Shakkottai Dept. of Electrical and Computer Engineering

Digital Design. Sequential Logic

COE 202: Digital Logic Design Sequential Circuits Part 3. Dr. Ahmad Almulhem ahmadsm AT kfupm Phone: Office:

Last lecture Counter design Finite state machine started vending machine example. Today Continue on the vending machine example Moore/Mealy machines

EECS Components and Design Techniques for Digital Systems. FSMs 9/11/2007

Sequential Circuit Design

EECS150 - Digital Design Lecture 23 - FSMs & Counters

Sequential Logic Circuits

The Design Procedure. Output Equation Determination - Derive output equations from the state table

Sequential vs. Combinational

Boolean Algebra and Digital Logic 2009, University of Colombo School of Computing

Clocked Sequential Circuits UNIT 13 ANALYSIS OF CLOCKED SEQUENTIAL CIRCUITS. Analysis of Clocked Sequential Circuits. Signal Tracing and Timing Charts

EEE2135 Digital Logic Design

Generalized FSM model: Moore and Mealy

Example: vending machine

Sequential Logic. Rab Nawaz Khan Jadoon DCS. Lecturer COMSATS Lahore Pakistan. Department of Computer Science

EGR224 F 18 Assignment #4

University of Minnesota Department of Electrical and Computer Engineering

Parity Checker Example. EECS150 - Digital Design Lecture 9 - Finite State Machines 1. Formal Design Process. Formal Design Process

CPE100: Digital Logic Design I

Chapter 4. Sequential Logic Circuits

Finite State Machine (FSM)

ELCT201: DIGITAL LOGIC DESIGN

Let s now begin to formalize our analysis of sequential machines Powerful methods for designing machines for System control Pattern recognition Etc.

Overview of Chapter 4

Sequential Logic Optimization. Optimization in Context. Algorithmic Approach to State Minimization. Finite State Machine Optimization

Sequential Circuits Sequential circuits combinational circuits state gate delay

ALU, Latches and Flip-Flops

Latches. October 13, 2003 Latches 1

Lecture 10: Synchronous Sequential Circuits Design

Chapter 3. Digital Design and Computer Architecture, 2 nd Edition. David Money Harris and Sarah L. Harris. Chapter 3 <1>

Digital Logic and Design (Course Code: EE222) Lecture 19: Sequential Circuits Contd..

3. Complete the following table of equivalent values. Use binary numbers with a sign bit and 7 bits for the value

Reg. No. Question Paper Code : B.E./B.Tech. DEGREE EXAMINATION, NOVEMBER/DECEMBER Second Semester. Computer Science and Engineering

Time Allowed 3:00 hrs. April, pages

EE40 Lec 15. Logic Synthesis and Sequential Logic Circuits

Analysis of Clocked Sequential Circuits

Chapter 15 SEQUENTIAL CIRCUITS ANALYSIS, STATE- MINIMIZATION, ASSIGNMENT AND CIRCUIT IMPLEMENTATION

5 State Minimisation. university of applied sciences hamburg. Digital Systems. Prof. Dr. J. Reichardt Prof. Dr. B. Schwarz

Vidyalankar S.E. Sem. III [ETRX] Digital Circuits and Design Prelim Question Paper Solution

DHANALAKSHMI COLLEGE OF ENGINEERING, CHENNAI DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING CS6201 DIGITAL PRINCIPLES AND SYSTEM DESIGN

Symbolic State Minimization

Chapter 6. Synchronous Sequential Circuits

FSM Optimization. Counter Logic Diagram Q1 Q2 Q3. Counter Implementation using RS FF 10/13/2015

ENGG 1203 Tutorial. Solution (b) Solution (a) Simplification using K-map. Combinational Logic (II) and Sequential Logic (I) 8 Feb Learning Objectives

UNIVERSITY OF BOLTON SCHOOL OF ENGINEERING BENG (HONS) ELECTRICAL & ELECTRONICS ENGINEERING EXAMINATION SEMESTER /2017

Digital Electronics Sequential Logic

King Fahd University of Petroleum and Minerals College of Computer Science and Engineering Computer Engineering Department

Synchronous Sequential Circuit Design

11.1 As mentioned in Experiment 10, sequential logic circuits are a type of logic circuit where the output of

Models for representing sequential circuits

Written exam for IE1204/5 Digital Design with solutions Thursday 29/

04. What is the Mod number of the counter circuit shown below? Assume initially reset.

Appendix A: Digital Logic. Principles of Computer Architecture. Principles of Computer Architecture by M. Murdocca and V. Heuring

Timing Constraints in Sequential Designs. 63 Sources: TSR, Katz, Boriello & Vahid

Digital Circuit Engineering

Digital Logic Design - Chapter 4

S.Y. Diploma : Sem. III [CO/CM/IF/CD/CW] Digital Techniques

Chapter 3. Chapter 3 :: Topics. Introduction. Sequential Circuits

CSE 140 Midterm 2 Tajana Simunic Rosing. Spring 2008


Homework #4. CSE 140 Summer Session Instructor: Mohsen Imani. Only a subset of questions will be graded

CPE/EE 422/522. Chapter 1 - Review of Logic Design Fundamentals. Dr. Rhonda Kay Gaede UAH. 1.1 Combinational Logic

King Fahd University of Petroleum and Minerals College of Computer Science and Engineering Computer Engineering Department

Lecture 9: Sequential Logic Circuits. Reading: CH 7

Sequential Logic Design: Controllers

Review for Final Exam

Appendix A: Digital Logic. CPSC 352- Computer Organization

15.1 Elimination of Redundant States

Chapter 4 Part 2 Sequential Circuits

Chapter 7. Sequential Circuits Registers, Counters, RAM

Menu. Master-Slave Flip-Flop

State Machines ELCTEC-131

Finite State Machine. By : Ali Mustafa

ELEN Electronique numérique

Boolean cubes EECS150. Mapping truth tables onto cubes. Simplification. The Uniting Theorem. Three variable example

Appendix A: Digital Logic. Principles of Computer Architecture. Principles of Computer Architecture by M. Murdocca and V. Heuring

Review for B33DV2-Digital Design. Digital Design

6. Finite State Machines

Simplification of State Machines

Fundamentals of Computer Systems

Lecture 3 Review on Digital Logic (Part 2)

COMPUTER SCIENCE TRIPOS

Computers also need devices capable of Storing data and information Performing mathematical operations on such data

Module 10: Sequential Circuit Design

Transcription:

ASYNCHRONOUS SEQUENTIAL CIRCUITS Sequential circuits that are not snchronized b a clock Asnchronous circuits Analsis of Asnchronous circuits Snthesis of Asnchronous circuits Hazards that cause incorrect behavior of a circuit

ASYNCHRONOUS SEQUENTIAL CIRCUITS Snchronous sequential circuits state variables : F/Fs controlled b a clock operate in pulse mode Asnchronous sequential circuits do not operate in snchronous with clock signal. do not use F/Fs to represent state variables Changes in state are dependent on whether each of inputs to the circuit has the logic level 0 or at an given time To achieve reliable operation the inputs to the circuit must change one at a time there must be sufficient time between the changes in input signals to allow the circuit to reach a stable state A circuit that adheres to these constraints is said to operate in the fundamental mode

ADVANTAGES OF ASYNCHRONOUS CIRCUITS No clock skew (clock signal arrives at different time) Lower power (Snchronous : clock signal must be present ever time and everwhere. Average-case performance VS worstcase performance Easing of global timing issues Partial optimization Better external input handling 3

DRAWBACKS More difficult to design Concerns for hazards and glitches Unsure about faster performance 4

WHY ASYNCHRONOUS CIRCUITS? Used when speed of operation is important Response quickl without waiting for a clock pulse Used in small independent sstems Onl a few components are required Used when the input signals ma change independentl of internal clock Asnchronous in nature Used in the communication between two units that have their own independent clocks Must be done in an asnchronous fashion 5

MODE OF OPERATIONS Stead-state condition: Current states and next states are the same Difference between Y and will cause a transition Fundamental mode: No simultaneous changes of two or more variables The time between two input changes must be longer than the time it takes the circuit to a stable state The input signals change one at a time and onl when the circuit is in a stable condition Fundamental Mode Pulse Mode: the inputs and outputs are represented b pulses. onl one input is allowed to have pulse present at an time. Similar to snchronous sequential circuits except without a clock signal. 6

GENERAL BLOCK DIAGRAM 7

TERMINOLOGY Asnchronous circuits state table -> flow table state-assigned table -> transition table or excitation table will use the term flow table and excitation table 8

STEPS IN THE ANALYSIS PROCESS Each feedback path is cut A dela element is inserted at the point where the cut is made A cut can be made anwhere in a particular loop formed b feedback connection, as long as there is onl one cut per (state variable) loop Next-state and output expressions are derived from the circuit The excitation table is derived A flow table is obtained A corresponding state diagram is derived from the flow table if desired 9

ASYNCHRONOUS BEHAVIOR OF SR-LATCH -NOR gate dela Y = ( S) R = ' S ' R = ( S ) R ' Stable state: given inputs, if a circuit reaches a state and remains in that state, then the state is said to be stable. Circles denote stable states, i.e., state unchanged. 0

MOORE FSM MODEL Y = ( S) R = ' S' R = ( S ) R ' Q=

MEALY FSM Unspecified output : At state A: input 0 changes to state B, Y=, Q= after reaching state B. No need to change it beforehand.

GATED D-LATCH CD CD Y = ' 3 Q D C CD CD D C D C D C D C D C = = = = = ' ') ' ( ') ' ( ') ) ' (( ') ' ( ) ' ( ') ' ( Consensus term

GATED D-LATCH () 4

MASTER-SLAVE D FLIP-FLOP Y Y m s Q= = CD C' = C' s m C m s 5

MASTER-SLAVE D FLIP-FLOP () Unspecified entries : At state S: stable with input CD=0. Thus, cannot achieve CD=0. ( inputs cannot change at the same time.) 6

FURTHER EXAMPLE 7 ' ; ' ' ' ' ' ' z w w w w Y w w w Y = = =

FURTHER EXAMPLE () 8

FURTHER EXAMPLE (3) Unspecified entries : At state B: stable with input w w =0. Thus, cannot achieve w w =0. ( inputs cannot change at the same time.) 9

SYNTHESIS OF ASYNCHRONOUS CIRCUITS the same basic steps used to snthesize the snchronous circuits. Devise a state diagram for an FSM. Derive the flow table and reduce the number of states if Possible 3. Perform the state assignment and derive the excitation table 4. Obtain the next-state and output expressions 5. Construct a circuit that implements these expressions Reverse of Analsis 0

EXAMPLE: SERIAL PARITY GENERATOR input w : pulses are applied to w output z z= if the number of previousl applied pulses is odd

EXAMPLE: SERIAL PARITY GENERATOR ()

STATE ASSIGNMENT State assignment (a) has a major flaw state D = : w=0 state A = =00 the values of the next-state variables determined b the networks of logic gates with varing delas suppose changes first =0 -> state C(0) state C is stable when w=0 suppose changes first =0-> state B (0) tr to change to =0 when w=0 if changes first, =00 race condition occurs 3

RACE CONDITION A race is said to occur if between next set of states S q and present states s q, there are two or more bits change (two or more latches undergoes change in Q output) at the memor or dela section. Race condition arises due to variable number of delas of different latches, which lead to intermediate states. 4

NEXT-STATE EQ S & CIRCUIT DIAGRAM Y Y z = w = w = ' w' w' Hazard prevention ' Snchronous Solution 5

MODULO-4 UP COUNTER Input w: cause A B, and sta there. w=0 cause B C and so on 6

FLOW TABLE & EXCITATION TABLE 7

NEXT STATE & OUTPUT EQ S 3 3 3 3 3 3 3 3 3 3 ' ' ' ' ' ' ' ' ' ' ' z w w Y w w Y w w w Y = = = = Exercise: Draw the circuit diagram. 8 3 ' z =

STATE REDUCTION For simpler implementation (fewer FF s and so on) Two step approach Partitioning (Same as the snchronous case) Equivalent states : equivalent k-successors and equivalent stable next-state with same input. Use merger diagram 9

COMPATIBILITY OF STATES Definition: Two states (rows in a flow table), S i and S j, are said to be compatible if there are no state conflicts for an input valuation. Thus for each input valuation, one of the following conditions must be true: both S i and S j have the same successor, or both S i and S j are stable, or the successor of S i or S j, or both, is unspecified. Moreover, both S i and S j must have the same output whenever specified. 30

COMPATIBLE STATES EXAMPLE Compatible pairs: (A,H), (B,F), (B,G), (D,E), (F,G), (G,H). Primitive Flow Table 3

MERGER DIAGRAM Used to represent the compatibilit relationship. Procedure Each row of the flow table is represented as a point, labeled b the name of the row. Aline is drawn connecting an two points that correspond to compatible states (rows). The reduced flow table can be derived from the merger diagram b choosing the best merging possibilit. 3

MERGER DIAGRAM FOR PREVIOUS COMPATIBLE STATES EXAMPLE Complete Merger Diagram (Include Meal-tpe FSM) Black line : Moore-tpe Reduced Moore-tpe Flow Table 33

STATE REDUCTION PROCEDURE. Use the partitioning procedure to eliminate the equivalent states in a primitive flow table.. Construct a merger diagram for the resulting flow table. 3. Choose subsets of compatible states that can be merged, tring to minimize the number of subsets needed to cover all states. Each state must be included in onl one of the chosen subsets. 4. Derive the reduced flow table b merging the rows in chosen subsets. 5. Repeat steps to 4 to see whether further reductions are possible. 34

STATE REDUCTION EXAMPLE 3 ) )( )( )( )( )( )( )( )( ( ) )( )( )( )( )( )( )( ( P P J HK F E D C BL G A P J HK F E D C BL AG P = = = 35

STATE REDUCTION EXAMPLE () Merger Diagram Reduced Flow Table 36

STATE REDUCTION EXAMPLE (3) Merger Diagram for reduced flow table Finalized Flow Table 37

STATE REDUCTION EXAMPLE P P P 3 = ( AF)( BEG)( C)( D)( H ) = ( AF)( BE)( G)( C)( D)( H ) = P 38

STATE REDUCTION EXAMPLE () Merger Diagram Reduced Flow Table 39

AN ASYNCHRONOUS VENDING MACHINE Specification A cand vending machine with accepts onl nickels and dimes 0 cents for cand No change given. Initial State Diagram 40

AN ASYNCHRONOUS VENDING MACHINE () P P P 3 = ( AD)( B)( CF)( E) = ( A)( D)( B)( CF)( E) = P 4

AN ASYNCHRONOUS VENDING MACHINE (3) Merger Diagram DN Reduced Flow Table 4

STATE ASSIGNMENT To achieve reliable operation of the circuit, the state variables should change their values one at a time in controlled fashion. This can prevent the race. Hamming distance : the number of different bits, e.g., 000,00 distance 3. Ideal state assignment: Hamming distance of for all transitions from one stable state to another. (ma not be possible!!!) 43

TRANSITION DIAGRAM Or state-adjacenc diagram, used for depicting the state transitions to provide a convenient aid in searching for a suitable state assignment. A good state assignment results if the transition diagram does not have an diagonal paths. Condition: Must be possible to embed the transition diagram onto a k-dimensional cube 44

TRANSITIONS EXAMPLE 45

RACE CONDITION A race condition occurs in an asnchronous circuit when or more state variables change in response to a change in the value of a circuit input. Unequal circuit delas ma impl that the or more state variables ma not change simultaneousl this can cause a problem. Assume two state variables change If the circuit reaches the same final, stable state regardless of the order in which the state variables change, then the race in non-critical. If the circuit reaches a different final, stable state depending on the order in which the state variables change, then the race is critical. We need to avoid critical races for predictabilit and to ensure our circuit does the intended function! 46

NON-CRITICAL RACE Assume current state is 00, and input changes from 0. This requires to change from 00. Depending on circuit delas, several possible transition sequences: 00 -> -> 0 (simultaneous change for and ). 00 -> 0 ( changes first). 00 -> 0 -> -> 0 ( changes first) In all cases, we end up in the same stable state, so the race is non-critical. 47

CRITICAL RACE Assume current state is 00, and input changes from 0->. This requires to change from 00->. Possible transition sequences: 00-> ( and change simultaneousl) 00->0-> ( changes first) 00->0 ( changes first) So, depending on which state variable changes first, we can get into a different stable state the race is critical. 48

ADDITIONAL EXAMPLE Non-critical Critical 49

CYCLES A ccle occurs when a circuit goes through a unique sequence of unstable states. 50

INSTABILITY When x x =, =, then Y=0, Y. Then =0 Y=, Y. If each gate has a 5-ns propagation dela, Y=0 for 0 ns, and Y= for 0 ns, resulting in 50-MHz clock signal! 5

RACE-FREE STATE ASSIGNMENT Can prevent races (pre-emptive) b performing state assignment such that transitions from one stable state to another stable state onl require one state variable to change at a time. Flow Table BAD State Assignment Good State Assignment 5

METHOD ONE FOR RACE FREE STATE ASSIGNMENT Given a flow table, tr and embed the smbolic states into the co-ordinates of a n-dimensional cube such that the path from stable state to stable state: Is direct along a single edge of the cube, or Goes through newl introduced unstable states along edges of the cube. 53

METHOD ONE EXAMPLE Can attempt to embed 4 states into a - dimensional cube and draw the transition diagram: No state assignment that has onl one state variable changing at a time. 54

METHOD ONE EXAMPLE (CONT) Solution is to introduce additional, unstable states and use them as intermediate states during transitions. i.e., embed the 4-states into the corners of a 3-dimensional cube. 55

METHOD ONE EXAMPLE (CONT) All transitions are made properl b introducing extra unstable states (Note: the new extra states are alwas unstable!!!): 56

EXAMPLE : RACE-FREE FLOW TABLE Can now see the original flow table, and an expanded flow table (extra unstable states) that has a race-free state assignment (see previous slide!): 57

METHOD TWO FOR RACE FREE STATE ASSIGNMENT Method useful for flow tables with <= 4 states. Replace a state with multiple (two) equivalent states Note: Outputs must be the same for the equivalent states!!! 58

METHOD TWO EXAMPLE Consider the following flow table, and another (larger table) with equivalent states: The flow table with equivalent states permits a race free state assignment. We can see this b looking at the states on a 3-dimensional cube. 59

METHOD TWO EXAMPLE (CONT) With equivalent states, we alwas have of the equivalent states directl adjacent to ever other state! 60

METHOD THREE FOR RACE-FREE STATE ASSIGNMENT Can use the idea of one-hot encoding to get a race free state assignment Given n-states, let the i th state be encoded as 0 00..0 where the is in the i th location. For a transition from i th stable state to j th stable state, introduce unstable state with encoding 0..00..00..0 where the s are in the i th and j th position. 6

METHOD THREE EXAMPLE Consider the following flow table, with one-hot state assignment: Look for transitions and introduce new unstable states, as required using one-hot encoding scheme. 6

ASYNCHRONOUS SEQUENTIAL CIRCUITS SUMMARY Analsis: From the logic diagram, determine input, output, state variable. Derive Boolean functions. Obtain excitation table, flow table, state diagram. Snthesis (Design): Determine state diagram and primitive flow table. Reduce states if possible. Assign states and obtain excitation table. Derive Boolean functions and design circuit. 63