PROGETTO DI SISTEMI ELETTRONICI DIGITALI. Digital Systems Design. Digital Circuits Advanced Topics


 Duane Morgan
 1 years ago
 Views:
Transcription
1 PROGETTO DI SISTEMI ELETTRONICI DIGITALI Digital Systems Design Digital Circuits Advanced Topics 1
2 Sequential circuit and metastability 2
3 Sequential circuit A Sequential circuit contains: Storage elements: Latches or FlipFlops Inputs Outputs Combinational Logic: Implements a multipleoutput switching function Inputs are signals from the outside. Outputs are signals to the outside. Other inputs, State or Present State, are signals from storage elements. The remaining outputs, Next State are inputs to storage elements State Storage Elements Combina tional Logic Next State 3
4 Bistable element the basic memory block Has two stable conditions (states) Can be used to store binary symbols If Q = high, the feedback to inverter 2 will cause its output to be low, which also forces the output of inverter 1 to be high. So this is a stable state. If Q = low, the feedback to inverter 2 will cause its output to be high, which also forces the output of inverter 1 to be low. So this is the second stable state. 4
5 Bistable element The bistable circuit DOES NOT require any input to drive it. It will automatically put itself in one of the above stable state upon poweron and remains there forever. Can be viewed as follows: 5
6 Bistable element If the push is less (i.e. violation of setup and hold time), the ball shall travel to the top of the hill (i.e. output metastable), stay there for some time and return to either stable state (i.e. output becomes stable eventually). It may also happen that the ball may rise partially and come back (i.e. output may produce some glitches). 6
7 Latch vs. Flipflop Latch D D Q Q En En E D Y Level sensitive Flipflop D D Q Q Clk Clk C D Q Edgesensitive 7
8 Synchronous and Asynchronous Sequential Circuits Asynchronous sequential circuits: Outputs and state change as soon as an input changes. Synchronous sequential circuits: Outputs and state change depending on a special input (clock). The term asynchronous is because the two flipflops are not clocked by the same signal. The following circuit is also called asynchronous, 2bit, binary up counter: 8
9 Synchronous design Combinational Logic (Larger circuits difficult to predict) Synchronous Logic driven by a CLOCK Registers, Flip Flops (Memory) Intermediate Inputs New Output every clock edge CLOCK Register EDGES 9
10 Timing Waveforms (asynchronous) A B C Y 0 ns 10 ns20 ns 30 ns 40 ns 50 ns 60 ns A B C Y 10
11 Timing Waveforms (synchronous) A B C D Clk Q 0 ns 10 ns 20 ns 30 ns 40 ns 50 ns 60 ns A B C D D Q Q Clk C 11
12 Timing Waveforms (synchronous) A B A_r B_r C D Clk Q 0 ns 10 ns 20 ns 30 ns 40 ns 50 ns 60 ns A B Clk D C D C Q Q A_r B_r C D D Q C Q_r 12
13 Timing Waveforms (Edge Detection) Clk Long_In Q1_r Q2_r Q2_f En_rise 0 ns 10 ns 20 ns 30 ns 40 ns 50 ns 60 ns Long_In Clk D C Q Q1_r D Q Q2_r Q2_f C En_rise 13
14 Gated Clocks Q(7 downto 0) Eight bit binary counter with gated clock (not recommended) " " + D Q CountEn Clk C Q(7 downto 0) Eight bit binary counter with freerunning clock (recommended) " " + CountEn 0 1 Clk D Q C 14
15 Synchronous design rules All flipflops are clocked only by the same freerunning master clock. No latches No asynchronous feedback No clock signals are derived from logic gating (unless gating produced by tool, i.e., correct by construction) Asynchronous flipflop inputs (Preset or Clear) are used only for initialization. Delays from one flipflop to another flipflop are designed to be less than the clock period. Asynchronous inputs pass through flipflops (one or more) before being used elsewhere. Enable (control) signals are nominally one clock period in length. Note: Synchronous design is not always the best method, but it is to be assumed unless other methods are absolutely necessary. 15
16 Metastability In an asynchronous system, the relationship between data and clock is not fixed; therefore, violations of setup and hold times can occur. When this happens, the output may go to an intermediate level between its two valid states and remain there for an indefinite amount of time before resolving itself or it may simply be delayed before making a normal transition. Two stable points, one metastable point: 16
17 SingleStage Synchronizer  Metastability Minimum data setup (tsu) and hold (thd) times must be met for the register to output synchronized data. The data input to the D flipflop is asynchronous to the clock. The arrival time of the input data relative to the clock is not known and a danger zone (decision or metastability window) is created. After a clocktooutput delay (tco), the input data appears at the Q output. If the input data enters the danger zone, the Q output is likely to be in a metastable state until the internal silicon settles to either a logic high or low. The extra time required to resolve the logic state is called resolution time (tr). 17
18 Timing Waveforms (Metastability) Clk D_early Q_early D_late Q_late D_bad Q_bad 0 ns 10 ns 20 ns 30 ns 40 ns 50 ns 60 ns D D Q Changes before setup time Changes after hold time Changes after setup time or before hold time Indeterminate Q Clk C 18
19 Resolving the metastability The Resolving Time Constant,, comes from the expression that describes the probability of a metastable event lasting longer than some time, t. If a FF is in the metastable state at time t its probability of resolve it over an additional time period t is the same regardless of the present age t The time to solve the metastability must follow an exponential probability distribution. Thus the probability that the system is still in the metastable state at time t is: 19
20 Calculating the MTBF Mean (Average) Time Between Failures or MTBF of a system, is the reciprocal of the failure rate in the special case when the failure rate is constant, i.e. distributed exponentially Failure rate = Metastability Rate * Probability of Metastability The probability of a metastable event lasting longer than some time is R(t): exp(t/ ) Assume the data arrives uniformly over clock cycle T. The probability that data will arrive in W in a clock period T is: P = W/T = W fc, where: W = Metastability window and fc = Clock frequency If the data rate is fd, then the rate of metastability becomes W fc fd Failure rate = W fc fd exp(tr/ ) MTBF = exp(tr/ ) /(W fc fd) T 20
21 Estimating device parameters A stable synchronous source is used for the measurement. The setup and hold times of the input data relative to the clock can be adjusted while observing the Q output for the metastable event. The Metastability Window, W, can be determined by accurately measuring the ClockToOutput Propagation Delay Time (tco) When the Setup time or Hold time is violated, the ClockToOutput Delay is increased. When the tco is measured longer than the tco_max (specified in the device data sheet), the device is considered to be in the metastable state 21
22 Avoiding metastability The most common way to avoid metastability is to add one or more synchronizing FFs at the signals that move from one clock domain to the other. This approach allows for an entire clock period (except for the setup time of the following flipflop) for metastable events to resolve itself. This does however; increase the latency in observation of input. The Failure rate is now the MTFB of the first FF and the overall MTFB can be computed as: the allowed resolve time are summed up! 22
23 Pipelining 23
24 Pipelining Clock frequency is defined as the rate at which data flows into the system and appears at the output. Pipelining decreases the combinational delay by inserting registers in a long combinational path, thus increasing the clock frequency and hence a higher performance. For a perfect clock without any jitter, the clock signal reaches all banks of registers simultaneously. If FFs are ideal (no tco, tsu and th): the maximum frequency FMAX is the reciprocal of the maximum delay path through the combinational logic. 24
25 FF and clock non idealities FF have delays: In real time circuit s clock input to register B would come after a small delay than at register A due to wire propagation delay: TSKW. Negative clock skew is due to early clocking i.e. clocking of registers before the relevant data is successfully latched. The variation between arrival times of the consecutive clock edges at the same point on the chip is defined as clock jitter TJIT. 25
26 Real world circuit Path in bold refers to the path with maximum delay between any two flipflops in the circuit: 26
27 Real world circuit The total delay between the two flipflops along the path b,f,j,l,m,n,o is: Assuming equal delays across all the flipflops in design (which might not be the actual case) we have the generalized formula for the maximum period as: The combinational delay in the above equation can be reduced by adding more FFs, thus increasing the max frequency on which a circuit can operate. 27
28 Pipelining again! Pipelining splits the critical path (path with maximum combinational delay) with memory elements between the clock cycles increases the calculations per second since the clock period per stage is reduced but increases the overhead by adding memory elements 28
29 Performance Increase Consider a big array of combinational logic between registers. The latency of the circuit is also the clock period: Consider the same circuit to be pipelined into n stages: Pipeline stage with worst delay limits the clock period: The latency is n times the clock period: Ideally, each pipeline stage has equal delay: 29
30 Performance Increase So the minimum possible clock period for any pipeline stage is: Thus the final latency with this ideal clock period is: We can now calculate the speed increase of a circuit after pipelining: If we specify the register and clock overhead as a fraction k of the total clock period of an unpipelined circuit, then we have: 30
31 Endianess 31
32 LittleEndian or BigEndian: Which Is Better? In Little Endian form, assembly language instructions for accessing 1, 2, 4, or longer byte number proceed in exactly the same way for all formats. Also, because of the 1:1 relationship between address offset and byte number (offset 0 is byte 0), multiple precision math routines are correspondingly easy to write. In Big Endian form, since the higherorder byte come first, it is easy to test whether the number is positive or negative by looking at the byte at offset zero. The numbers are also stored in the order in which they are printed out, so binary to decimal routines are particularly efficient. 32
33 Issues Dealing with Endianess Mismatch Endianess doesn t matter on a single system. It matters only when two computers are trying to communicate. One possible solution to interface oppositeendianess peripherals is to chose addresses so that they remain constant (i.e. Address Invariance where bytes remain at same address) 33
34 Issues Dealing with Endianess Mismatch Endianess doesn t matter on a single system. It matters only when two computers are trying to communicate. One other solution to interface oppositeendianess peripherals is to chose bit ordering to remain constant (Data Invariance where addresses are changed). 34
35 Swapping Swapping byte is an alternate way to achieve endianess conversion. This mode is useful in systems where the endianess is decided by the application itself. An atomic data object that is N bytes in size (a) is treated like an N element byte array (b). Each element of this byte array is then mirrored (Fig.1c) to complete the byte swap of the original data object. 35
36 Debouncing Techniques 36
37 Behavior of a switch When the metallic contacts of a switch strike together, their momentum and elasticity act together to cause bounce. A ResistorCapacitor (RC) network is probably the most common and easiest method of debouncing circuit: 37
38 Software debouncing Solution A: Read the Switch after sufficient time allowing the bounces to settle down. The only downside with is slow response time; this approach would fail if user desires to operate the switch at a rate much faster than 500 ms Solution B: Interrupt the CPU on switch activation and debounce in ISR. Solution C: Use a Counter to eliminate the noise and validate switch state. The counter counts up as long as the signal is Low, and is reset when the signal is High. If the counter reaches a certain fixed value, which should be one or two times bigger noise pulses, this means that the current pulse is a valid pulse. 38
39 Commercial debouncer For the designs that do not include debounce circuitry on external inputs, system may choose to use external debounce ICs. When the input does not equal the output, the XNOR gate issues a counter reset. When the switch input state is stable for the full qualification period, the counter clocks the flipflop, updating the output. The undervoltage lockout circuitry ensures that the outputs are at the correct state on powerup. 39
40 Clock gating and reset strategies 40
41 Clock gating In the traditional synchronous design style, the system clock is connected to the clock pin on every flipflop in the design. This results in three major components of power consumption: 1. Power consumed by combinatorial logic whose values are changing on each clock edge (due to flops driving those combo cells). 2. Power consumed by flipflops (this has nonzero value even if the inputs to the flipflops, and therefore, the internal state of the flipflops, is not changing). 3. Power consumed by the clock tree buffers in the design. Gating the clock path substantially reduces the power consumed by a Flip Flop. Gate clocking imposes that all enable signals be held constant from the active (rising) edge of the clock until the inactive (falling) edge of the clock to avoid truncating the generated clock pulse prematurely or generating multiple clock pulses (or glitches in clock): discard! 41
42 Clock gating The latchbased clock gating style adds a levelsensitive latch to the design to hold the enable signal from the active edge of the clock until the inactive edge of the clock. The latch captures the state of the enable signal and holds it until the complete clock pulse has been generated. The enable signal need only be stable around the rising edge of the clock. Only one input of the gate that turns the clock on and off changes at a time, ensuring that the circuit is free from any glitches or spikes on the output. 42
43 Synchronous reset Synchronous resets are based on the premise that the reset signal will only affect or reset the state of the flipflop on the active edge of a clock. Advantages of Using Synchronous Resets Synchronous resets generally insure that the circuit is 100% synchronous. Synchronous reset logic will synthesize to smaller flipflops, particularly if the reset is gated with the logic generating the Flop input. Synchronous resets ensure that reset can only occur at an active clock edge. The clock works as a filter for small reset glitches. Disadvantages Synchronous resets may need a pulse stretcher to guarantee a reset pulse width wide enough to ensure reset is present during an active edge of the clock. A synchronous reset will require a clock in order to reset the circuit. This may be a problem in some case where a gated clock is used to save power. 43
44 Synchronous reset 44
45 Asynchronous Reset Asynchronous reset flipflops incorporate a reset pin into the flipflop design. The most obvious advantage favoring asynchronous resets is that the circuit can be reset with or without a clock present. The biggest problem with asynchronous resets is that they are asynchronous, both at the assertion and at the deassertion. The assertion is a non issue, the deassertion is the issue. If the asynchronous reset is released at or near the active clock edge of a flipflop, the output of the flipflop could go metastable. Another problem that an asynchronous reset can have, depending on its source, is spurious resets due to noise or glitches on the board or system reset. 45
46 Reset synchronizer The reset synchronizer logic is designed to take advantage of the best of both asynchronous and synchronous reset styles. An external reset signal asynchronously resets a pair of flipflops, which in turn drive the master reset signal asynchronously through the reset buffer tree to the rest of the flipflops in the design. The entire design will be asynchronously reset. 46
47 Reset Glitch Filtering 47
48 Multiple clock domains 48
49 Multiple Clock domains Designs with multiple clocks can have: clocks with different frequencies and/or clocks with same frequency but different phases between them. Metastability issues may arise; system desing must be partitioned so that each module should work on one clock only. A synchronizer module has to be made for all signals that cross from one clock domain to another 49
50 Synchronous Clock domain crossing Clocks originating from the same clockroot and having a known phase and frequency relationship between them are known as synchronous clocks. A clock crossing between such clocks is known as a synchronous clock domain crossing. Depending on frequency and phase relationship, synchronizers may be needed or not! Synchronous Clock domain crossing can be divided into several categories: Clocks with the same frequency and zero phase difference: no domain cross! 50
51 Synchronous Clock domain crossing Synchronous Clock domain crossing can be divided into several categories : Clocks with the same frequency and constant phase difference: tighter constraint on the combinational logic delay due to smaller setup/hold margins. Integer multiple clocks: the minimum possible phase difference between the active edges of the two clocks would always be equal to the time period of the fast clock, i.e. one complete cycle of the faster clock would always be available for sampling 51
52 Synchronous Clock domain crossing Synchronous Clock domain crossing can be divided into several categories. Rational multiple clocks: the minimum phase difference between the two clocks can be small enough to cause metastability: synchronization needs to be done! 52
53 Transfer of control signals Two or more flipflops are cascaded to form a synchronizing circuit As previously seen, if the first flop of a synchronizer produces a metastable output, the metastability may get resolved before it is sampled by the second flip flop. This method does not guarantee that the output of the second flipflop will go metastable but it does decrease the probability of metastability. Adding more flops to the synchronizer will further reduce the probability of metastability. 53
54 Transfer of data signals Synchronous FIFO Simple Synchronous FIFO architecture: reading and writing is done on the same clock. The read and write addresses are generated by two pointers. A valid write enable increments the write pointer and a valid read enable increments the read pointer. A Status Block generates the fifo_empty and fifo_full signals. The Dual Port Memory (DPRAM) can have either synchronous (an explicit read signal is provided before the FIFO output is valid) or asynchronous reads (valid data is available as soon as it is written). 54
55 FIFO_FULL and FIFO_empty FIFO is either full or empty when readpointer equals to the write pointer: it is necessary to distinguish between these two conditions. FIFO becomes full when a write causes both the pointers to become equal in the next clock. This makes the following condition for assertion of fifo_full signal: fifo _ full=(read _ pointer ==(write _ pointer +1))AND "write An alternative approach exploits a counter that constantly indicates the number of full or empty locations left in the FIFO: additional hardware is neede! 55
56 Transfer of data signals Asynchronous FIFO Asynchronous FIFO is used to transfer data across two asynchronous clock domains. Unlike handshake signaling, asynchronous FIFO is used in case of performance critical designs. where clock latency is a factor rather than system resources. The same approach of synchronous FIFO can be exploited with special care taken for FIFO empty and FIFO Full signal generation to avoid metastability conditions. 56
57 Transfer of data signals Asynchronous FIFO 57
58 FIFO full timings 58
59 FIFO full timings Since a typical synchronizer circuit consists of at least two FFs, synchronizing read pointer on write clock will result in changed read pointer reflected after two write clocks. This results in blocking additional writes on the FIFO for additional cycles but is harmles 59
60 FIFO empty timings 60
61 FIFO empty timings For the FIFO Empty calculation, write pointer is synchronized to the read clock and compared against the read pointer. Due to this, read side sees delayed writes (two clock delayed signal), and would still indicate FIFO empty even though it actually has some data, but it is harmless. 61
62 Transfer of data signals Asynchronous FIFO Suppose full and empty signals are generated using a counter which is changing from FFF to 000. Metastability can be avoided by synchronizing the counter, but this may still get sampled values that are widely off the mark (e.g. sampling counter in the middle of the updating phase). A possible solution is to count in Graycode, with a number changing by one bit as it proceeds from one number to the next. Synchronizing gray counter will rarely result in sampled counter value getting metastable and secondly the value sampled will have at most one bit error Synchronizing read or write pointer on write clock will result in changed read or write pointer reflected after two (N) write clocks This results in blocking additional writes or read on the FIFO for additional cycles but is harmless! 62
63 Gray Code Implementation of FIFO Pointers STEP I : Convert the Gray value to Binary value. STEP II : Increment the Binary value depending on some condition. STEP III: Convert the Binary value back to Gray. STEP IV: Store the final Gray value of the counter in a register 63
PROGETTO DI SISTEMI ELETTRONICI DIGITALI. Digital Systems Design. Digital Circuits Advanced Topics
PROGETTO DI SISTEMI ELETTRONICI DIGITALI Digital Systems Design Digital Circuits Advanced Topics 1 Sequential circuit and metastability 2 Sequential circuit  FSM A Sequential circuit contains: Storage
More informationTiming Methodologies (cont d) Registers. Typical timing specifications. Synchronous System Model. Short Paths. System Clock Frequency
Registers Timing Methodologies (cont d) Sample data using clock Hold data between clock cycles Computation (and delay) occurs between registers efinition of terms setup time: minimum time before the clocking
More informationEE 42/100 Lecture 24: Latches and Flip Flops. Rev B 4/21/2010 (2:04 PM) Prof. Ali M. Niknejad
A. M. Niknejad University of California, Berkeley EE 100 / 42 Lecture 24 p. 1/20 EE 42/100 Lecture 24: Latches and Flip Flops ELECTRONICS Rev B 4/21/2010 (2:04 PM) Prof. Ali M. Niknejad University of California,
More informationEE552. Advanced Logic Design and Switching Theory. Metastability. Ashirwad Bahukhandi. (Ashirwad Bahukhandi) bahukhan@usc.edu
EE552 Advanced Logic Design and Switching Theory Metastability by Ashirwad Bahukhandi (Ashirwad Bahukhandi) bahukhan@usc.edu This is an overview of what metastability is, ways of interpreting it, the issues
More informationSequential Circuits. Prof. MacDonald
Sequential Circuits Prof. MacDonald Sequential Element Review l Sequential elements provide memory for circuits heart of a state machine saving current state used to hold or pipe data data registers, shift
More informationDesign of Digital Systems II Sequential Logic Design Principles (1)
Design of Digital Systems II Sequential Logic Design Principles (1) Moslem Amiri, Václav Přenosil Masaryk University Resource: Digital Design: Principles & Practices by John F. Wakerly Introduction Logic
More informationChapter 3 :: Sequential Logic Design
Chapter 3 :: Sequential Logic Design Digital Design and Computer Architecture David Money Harris and Sarah L. Harris Copyright 2007 Elsevier 3 Bistable Circuit Fundamental building block of other state
More informationLatch Timing Parameters. Flipflop Timing Parameters. Typical Clock System. Clocking Overhead
Clock  key to synchronous systems Topic 7 Clocking Strategies in VLSI Systems Peter Cheung Department of Electrical & Electronic Engineering Imperial College London Clocks help the design of FSM where
More informationFigure 2.1(a) Bistable element circuit.
3.1 Bistable Element Let us look at the inverter. If you provide the inverter input with a 1, the inverter will output a 0. If you do not provide the inverter with an input (that is neither a 0 nor a 1),
More informationAn astable multivibrator acts as an oscillator (clock generator) while a monostable multivibrator can be used as a pulse generator.
Concepts In sequential logic, the outputs depend not only on the inputs, but also on the preceding input values... it has memory. Memory can be implemented in 2 ways: Positive feedback or regeneration
More informationExperiment # 9. Clock generator circuits & Counters. Eng. Waleed Y. Mousa
Experiment # 9 Clock generator circuits & Counters Eng. Waleed Y. Mousa 1. Objectives: 1. Understanding the principles and construction of Clock generator. 2. To be familiar with clock pulse generation
More informationASYNCHRONOUS COUNTERS
LB no.. SYNCHONOUS COUNTES. Introduction Counters are sequential logic circuits that counts the pulses applied at their clock input. They usually have 4 bits, delivering at the outputs the corresponding
More informationFlipFlops, Registers, Counters, and a Simple Processor
June 8, 22 5:56 vra235_ch7 Sheet number Page number 349 black chapter 7 FlipFlops, Registers, Counters, and a Simple Processor 7. Ng f3, h7 h6 349 June 8, 22 5:56 vra235_ch7 Sheet number 2 Page number
More informationLecture 11: Sequential Circuit Design
Lecture 11: Sequential Circuit esign Outline Sequencing Sequencing Element esign Max and Minelay Clock Skew Time Borrowing TwoPhase Clocking 2 Sequencing Combinational logic output depends on current
More informationLecture3 MEMORY: Development of Memory:
Lecture3 MEMORY: It is a storage device. It stores program data and the results. There are two kind of memories; semiconductor memories & magnetic memories. Semiconductor memories are faster, smaller,
More informationIn Module 9, 10, 11, you have been introduced to examples of combinational logic circuits whereby the outputs are entirely dependent on the current
Module 12 In Module 9, 10, 11, you have been introduced to examples of combinational logic circuits whereby the outputs are entirely dependent on the current inputs. The following topics will be on sequential
More informationHaving read this workbook you should be able to: recognise the arrangement of NAND gates used to form an SR flipflop.
Objectives Having read this workbook you should be able to: recognise the arrangement of NAND gates used to form an SR flipflop. describe how such a flipflop can be SET and RESET. describe the disadvantage
More informationIntroduction to CMOS VLSI Design (E158) Lecture 8: Clocking of VLSI Systems
Harris Introduction to CMOS VLSI Design (E158) Lecture 8: Clocking of VLSI Systems David Harris Harvey Mudd College David_Harris@hmc.edu Based on EE271 developed by Mark Horowitz, Stanford University MAH
More informationSynchronization in Digital Logic Circuits. Synchronization: Why care?
Synchronization in Digital Logic Circuits Ryan Donohue Rdonohue@yahoo.com Synchronization: Why care? Digital Abstraction depends on all signals in a system having a valid logic state Therefore, Digital
More informationSequential Circuits. Combinational Circuits Outputs depend on the current inputs
Principles of VLSI esign Sequential Circuits Sequential Circuits Combinational Circuits Outputs depend on the current inputs Sequential Circuits Outputs depend on current and previous inputs Requires separating
More informationLecture 7: Clocking of VLSI Systems
Lecture 7: Clocking of VLSI Systems MAH, AEN EE271 Lecture 7 1 Overview Reading Wolf 5.3 TwoPhase Clocking (good description) W&E 5.5.1, 5.5.2, 5.5.3, 5.5.4, 5.5.9, 5.5.10  Clocking Note: The analysis
More informationL4: Sequential Building Blocks (Flipflops, Latches and Registers)
L4: Sequential Building Blocks (Flipflops, Latches and Registers) (Most) Lecture material derived from R. Katz, Contemporary Logic esign, Addison Wesley Publishing Company, Reading, MA, 993. Some material
More informationKarnaugh Maps. Example A B C X 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 1 1 0 0 1 1 0 1 0 1 1 0 1 1 1 1 1. each 1 here gives a minterm e.g.
Karnaugh Maps Yet another way of deriving the simplest Boolean expressions from behaviour. Easier than using algebra (which can be hard if you don't know where you're going). Example A B C X 0 0 0 0 0
More informationMemory Elements. Combinational logic cannot remember
Memory Elements Combinational logic cannot remember Output logic values are function of inputs only Feedback is needed to be able to remember a logic value Memory elements are needed in most digital logic
More informationSynchronization: Why care? Synchronization in Digital Logic Circuits. The Real World. Metastability
Synchronization in igital Logic Circuits Ryan onohue Rdonohue@yahoo.com Synchronization: Why care? igital Abstraction depends on all signals in a system having a valid logic state Therefore, igital Abstraction
More informationENGIN 112 Intro to Electrical and Computer Engineering
ENGIN 112 Intro to Electrical and Computer Engineering Lecture 19 Sequential Circuits: Latches Overview Circuits require memory to store intermediate data Sequential circuits use a periodic signal to determine
More informationA New Paradigm for Synchronous State Machine Design in Verilog
A New Paradigm for Synchronous State Machine Design in Verilog Randy Nuss Copyright 1999 Idea Consulting Introduction Synchronous State Machines are one of the most common building blocks in modern digital
More information3 FlipFlops. The latch is a logic block that has 2 stable states (0) or (1). The RS latch can be forced to hold a 1 when the Set line is asserted.
3 FlipFlops Flipflops and latches are digital memory circuits that can remain in the state in which they were set even after the input signals have been removed. This means that the circuits have a memory
More informationLecture 10: Sequential Circuits
Introduction to CMOS VLSI esign Lecture 10: Sequential Circuits avid Harris Harvey Mudd College Spring 2004 Outline q Sequencing q Sequencing Element esign q Max and Minelay q Clock Skew q Time Borrowing
More informationChapter 9 Latches, FlipFlops, and Timers
ETEC 23 Programmable Logic Devices Chapter 9 Latches, FlipFlops, and Timers Shawnee State University Department of Industrial and Engineering Technologies Copyright 27 by Janna B. Gallaher Latches A temporary
More informationChapter 2 Clocks and Resets
Chapter 2 Clocks and Resets 2.1 Introduction The cost of designing ASICs is increasing every year. In addition to the nonrecurring engineering (NRE) and mask costs, development costs are increasing due
More informationSequential Circuits Sequential circuits combinational circuits clocked sequential circuits gate delay
Sequential Circuits Sequential circuits are those with memory, also called feedback. In this, they differ from combinational circuits, which have no memory. The stable output of a combinational circuit
More informationShift registers. 1.0 Introduction
Shift registers 1.0 Introduction Shift registers are a type of sequential logic circuit, mainly for storage of digital data. They are a group of flipflops connected in a chain so that the output from
More informationETEC 2301 Programmable Logic Devices. Chapter 10 Counters. Shawnee State University Department of Industrial and Engineering Technologies
ETEC 2301 Programmable Logic Devices Chapter 10 Counters Shawnee State University Department of Industrial and Engineering Technologies Copyright 2007 by Janna B. Gallaher Asynchronous Counter Operation
More informationModule 4 : Propagation Delays in MOS Lecture 20 : Analyzing Delay in few Sequential Circuits
Module 4 : Propagation Delays in MOS Lecture 20 : Analyzing Delay in few Sequential Circuits Objectives In this lecture you will learn the delays in following circuits Motivation Negative DLatch SR Latch
More informationCounters and Decoders
Physics 3330 Experiment #10 Fall 1999 Purpose Counters and Decoders In this experiment, you will design and construct a 4bit ripplethrough decade counter with a decimal readout display. Such a counter
More informationContents COUNTER. Unit III Counters
COUNTER Contents COUNTER...1 Frequency Division...2 Divideby2 Counter... 3 Toggle FlipFlop...3 Frequency Division using Toggle Flipflops...5 Truth Table for a 3bit Asynchronous Up Counter...6 Modulo
More informationOutline. Sequential Circuit Design: Principle. 1. Overview on sequential circuit
Outline Sequential Circuit Design: Principle 1. Overview on sequential circuits 2. Synchronous circuits 3. Danger of synthesizing asynchronous circuit 4. Inference of basic memory elements 5. Simple design
More informationLesson 12 Sequential Circuits: FlipFlops
Lesson 12 Sequential Circuits: FlipFlops 1. Overview of a Synchronous Sequential Circuit We saw from last lesson that the level sensitive latches could cause instability in a sequential system. This instability
More informationNTE2053 Integrated Circuit 8 Bit MPU Compatible A/D Converter
NTE2053 Integrated Circuit 8 Bit MPU Compatible A/D Converter Description: The NTE2053 is a CMOS 8 bit successive approximation Analog to Digital converter in a 20 Lead DIP type package which uses a differential
More informationSequential Circuits: Latches & FlipFlops
Sequential Circuits: Latches & FlipFlops Sequential Circuits Combinational Logic: Output depends only on current input Able to perform useful operations (add/subtract/multiply/encode/decode/ select[mux]/etc
More informationTopics of Chapter 5 Sequential Machines. Memory elements. Memory element terminology. Clock terminology
Topics of Chapter 5 Sequential Machines Memory elements Memory elements. Basics of sequential machines. Clocking issues. Twophase clocking. Testing of combinational (Chapter 4) and sequential (Chapter
More informationWhite Paper Understanding Metastability in FPGAs
White Paper Understanding Metastability in FPGAs This white paper describes metastability in FPGAs, why it happens, and how it can cause design failures. It explains how metastability MTBF is calculated,
More informationDIGITAL SYSTEM DESIGN LAB
EXPERIMENT NO: 7 STUDY OF FLIP FLOPS USING GATES AND IC S AIM: To verify various flipflops like D, T, and JK. APPARATUS REQUIRED: Power supply, Digital Trainer kit, Connecting wires, Patch Chords, IC
More informationLatches and FlipFlops characterestics & Clock generator circuits
Experiment # 7 Latches and FlipFlops characterestics & Clock generator circuits OBJECTIVES 1. To be familiarized with D and JK flipflop ICs and their characteristic tables. 2. Understanding the principles
More information7. Latches and FlipFlops
Chapter 7 Latches and FlipFlops Page 1 of 18 7. Latches and FlipFlops Latches and flipflops are the basic elements for storing information. One latch or flipflop can store one bit of information. The
More informationDigital Fundamentals
Digital Fundamentals Tenth Edition Floyd hapter 8 2009 Pearson Education, Upper 2008 Pearson Saddle River, Education NJ 07458. All Rights Reserved ounting in Binary As you know, the binary count sequence
More informationSequential Logic. (Materials taken from: Principles of Computer Hardware by Alan Clements )
Sequential Logic (Materials taken from: Principles of Computer Hardware by Alan Clements ) Sequential vs. Combinational Circuits Combinatorial circuits: their outputs are computed entirely from their present
More informationFlipFlops. Outline: 2. Timing noise
Outline: 2. Timing noise FlipFlops Signal races, glitches FPGA example ( assign bad) Synchronous circuits and memory Logic gate example 4. FlipFlop memory RSlatch example D and JK flipflops Flipflops
More informationWEEK 8.1 Registers and Counters. ECE124 Digital Circuits and Systems Page 1
WEEK 8.1 egisters and Counters ECE124 igital Circuits and Systems Page 1 Additional schematic FF symbols Active low set and reset signals. S Active high set and reset signals. S ECE124 igital Circuits
More informationSetReset (SR) Latch
eteset () Latch Asynchronous Level sensitive crosscoupled Nor gates active high inputs (only one can be active) + + Function 0 0 0 1 0 1 eset 1 0 1 0 et 1 1 0? 0? Indeterminate crosscoupled Nand gates
More information7. Sequential Circuits  Combinational vs. Sequential Circuits  7. Sequential Circuits  State (2)  7. Sequential Circuits  State (1) 
Sistemas Digitais I LESI  2º ano Lesson 7  Sequential Systems Principles Prof. João Miguel Fernandes (miguel@di.uminho.pt) Dept. Informática  Combinational vs. Sequential Circuits  Logic circuits are
More information16 Latches and FlipFlops
6 Latches and FlipFlops Latches and flipflops are used as memory (storage) elements in sequential logic (FSMs, counters). Latches are controlled (gated) by clock signal levels (logic state control).
More informationSequential Logic Design Principles.Latches and FlipFlops
Sequential Logic Design Principles.Latches and FlipFlops Doru Todinca Department of Computers Politehnica University of Timisoara Outline Introduction Bistable Elements Latches and FlipFlops SR Latch
More informationLecture 10. Latches and FlipFlops
Logic Design Lecture. Latches and FlipFlops Prof. Hyung Chul Park & Seung Eun Lee Sequential Logic Outputs of sequential logic depend on current inputs and prior input values Sequential logic might explicitly
More informationA Pausible Bisynchronous FIFO for GALS Systems
2015 Symposium on Asynchronous Circuits and Systems A Pausible Bisynchronous FIFO for GALS Systems Ben Keller*, Ma@hew FojCk*, Brucek Khailany* *NVIDIA CorporaCon University of California, Berkeley May
More informationTopic Notes: Sequential Circuits
Computer Science 220 Assembly Language & Comp. Architecture Siena College Fall 2011 opic Notes: Sequential Circuits We have seen many examples of what we can do with combinational logic taking a set of
More informationCounters. Present State Next State A B A B 0 0 0 1 0 1 1 0 1 0 1 1 1 1 0 0
ounter ounters ounters are a specific type of sequential circuit. Like registers, the state, or the flipflop values themselves, serves as the output. The output value increases by one on each clock cycle.
More informationChapter  5 FLIPFLOPS AND SIMPLE FLIPFLOP APPLICATIONS
Chapter  5 FLIPFLOPS AND SIMPLE FLIPFLOP APPLICATIONS Introduction : Logic circuit is divided into two types. 1. Combinational Logic Circuit 2. Sequential Logic Circuit Definition : 1. Combinational
More informationTIMINGDRIVEN PHYSICAL DESIGN FOR DIGITAL SYNCHRONOUS VLSI CIRCUITS USING RESONANT CLOCKING
TIMINGDRIVEN PHYSICAL DESIGN FOR DIGITAL SYNCHRONOUS VLSI CIRCUITS USING RESONANT CLOCKING BARIS TASKIN, JOHN WOOD, IVAN S. KOURTEV February 28, 2005 Research Objective Objective: Electronic design automation
More informationDM9368 7Segment Decoder/Driver/Latch with Constant Current Source Outputs
DM9368 7Segment Decoder/Driver/Latch with Constant Current Source Outputs General Description The DM9368 is a 7segment decoder driver incorporating input latches and constant current output circuits
More informationFigure 3. Ball and hill analogy for metastable behavior. S' R' Q Q next Q next ' 0 0 1 1 0 1 1 0 1 0 0 1 1 1 0 0 1 1 1 1 1 0 (a)
Chapter 5 Latches and FlipFlops Page 1 of 17 5. Latches and FlipFlops Latches and flipflops are the basic elements for storing information. One latch or flipflop can store one bit of information. The
More informationSequential Circuits: Latches & FlipFlops
ESD I Lecture 3.b Sequential Circuits: Latches & FlipFlops 1 Outline Memory elements Latch SR latch D latch FlipFlop SR flipflop D flipflop JK flipflop T flipflop 2 Introduction A sequential circuit
More informationDigital Electronics. 5.0 Sequential Logic. Module 5
Module 5 www.learnaboutelectronics.org Digital Electronics 5.0 Sequential Logic What you ll learn in Module 5 Section 5.0 Introduction to Sequential Logic Circuits. Section 5.1 Clock Circuits. RC Clock
More informationChapter 5 Latch and flipflop
257 Chapter 5 Latch and flipflop «from the ground up I2013b  Copyright Daniele Giacomini  appunti2@gmail.com http://a3.informaticalibera.net 5.1 Propagation delay..................................
More informationSequential Logic Latches & Flipflops
Sequential Logic Latches & Flipflops Introduction Memory Elements PulseTriggered Latch SR Latch Gated SR Latch Gated D Latch EdgeTriggered Flipflops SR Flipflop D Flipflop JK Flipflop T Flipflop
More informationDigital Systems Based on Principles and Applications of Electrical Engineering/Rizzoni (McGraw Hill
Digital Systems Based on Principles and Applications of Electrical Engineering/Rizzoni (McGraw Hill Objectives: Analyze the operation of sequential logic circuits. Understand the operation of digital counters.
More informationPowerPC Microprocessor Clock Modes
nc. Freescale Semiconductor AN1269 (Freescale Order Number) 1/96 Application Note PowerPC Microprocessor Clock Modes The PowerPC microprocessors offer customers numerous clocking options. An internal phaselock
More informationLow latency synchronization through speculation
Low latency synchronization through speculation D.J.Kinniment, and A.V.Yakovlev School of Electrical and Electronic and Computer Engineering, University of Newcastle, NE1 7RU, UK {David.Kinniment,Alex.Yakovlev}@ncl.ac.uk
More informationSequential Logic Design
Lab #4 Sequential Logic Design Objective: To study the behavior and applications of flip flops and basic sequential circuits including shift registers and counters. Preparation: Read the following experiment.
More informationClocking. Figure by MIT OCW. 6.884  Spring 2005 2/18/05 L06 Clocks 1
ing Figure by MIT OCW. 6.884  Spring 2005 2/18/05 L06 s 1 Why s and Storage Elements? Inputs Combinational Logic Outputs Want to reuse combinational logic from cycle to cycle 6.884  Spring 2005 2/18/05
More informationUnit 4 Session  15 FlipFlops
Objectives Unit 4 Session  15 FlipFlops Usage of D flipflop IC Show the truth table for the edgetriggered D flipflop and edgetriggered JK flipflop Discuss some of the timing problems related to
More informationSequential Circuits: Latches and FlipFlops
Sequential Circuits: Latches and FlipFlops Sequential circuits Output depends on current input and past sequence of input(s) How can we tell if the input is current or from the past? A clock pulse can
More informationLecture 9: Flipflops
Points Addressed in this Lecture Properties of synchronous and asynchronous sequential circuits Overview of flipflops and latches Lecture 9: Flipflops Professor Peter Cheung Department of EEE, Imperial
More informationET398 LAB 6. FlipFlops in VHDL
ET398 LAB 6 FlipFlops in VHDL FlipFlops March 3, 2013 Tiffany Turner OBJECTIVE The objectives of this lab are for you to begin the sequential and memory programming using flip flops in VHDL program.
More informationModule 3: Floyd, Digital Fundamental
Module 3: Lecturer : Yongsheng Gao Room : Tech  3.25 Email : yongsheng.gao@griffith.edu.au Structure : 6 lectures 1 Tutorial Assessment: 1 Laboratory (5%) 1 Test (20%) Textbook : Floyd, Digital Fundamental
More informationModeling Sequential Elements with Verilog. Prof. ChienNan Liu TEL: 034227151 ext:34534 Email: jimmy@ee.ncu.edu.tw. Sequential Circuit
Modeling Sequential Elements with Verilog Prof. ChienNan Liu TEL: 034227151 ext:34534 Email: jimmy@ee.ncu.edu.tw 41 Sequential Circuit Outputs are functions of inputs and present states of storage elements
More informationDM74LS169A Synchronous 4Bit Up/Down Binary Counter
Synchronous 4Bit Up/Down Binary Counter General Description This synchronous presettable counter features an internal carry lookahead for cascading in highspeed counting applications. Synchronous operation
More information5. Sequential CMOS Logic Circuits
5. Sequential CMOS Logic Circuits In sequential logic circuits the output signals is determined by the current inputs as well as the previously applied input variables. Fig. 5.1a shows a sequential circuit
More informationLecture 10: Multiple Clock Domains
Bluespec SystemVerilog Training Lecture 10: Multiple Clock Domains Copyright Bluespec, Inc., 20052008 Lecture 10: Multiple Clock Domains The Clock type, and functions Modules with different clocks Clock
More informationSynchronous Sequential Logic. Logic and Digital System Design  CS 303 Erkay Savaş Sabanci University
Synchronous Sequential Logic Logic and Digital System Design  S 33 Erkay Savaş Sabanci University Sequential Logic Digital circuits we have learned, so far, have been combinational no memory, outputs
More informationL4: Sequential Building Blocks (Flipflops, Latches and Registers)
L4: Sequential Building Blocks (Flipflops, Latches and Registers) Acknowledgements: Materials in this lecture are courtesy of the following sources and are used with permission. Prof. Randy Katz (Unified
More informationAN1504/D. Metastability and the ECLinPS Family APPLICATION NOTE
Metastability and the ECLinPS Family Prepared by: Applications Engineering APPLICATION NOTE This application note examines the concept of metastability and provides a theoretical discussion of how it occurs,
More informationChapter 5 Bistable memory devices. Copyright The McGrawHill Companies, Inc. Permission required for reproduction or display.
Chapter 5 Bistable memory devices Copyright The McGrawHill Companies, Inc. Permission required for reproduction or display. Digital circuits Combinational Sequential Logic gates Decoders, MUXes, Adders,
More informationLab #5: Design Example: Keypad Scanner and Encoder  Part 1 (120 pts)
Dr. Greg Tumbush, gtumbush@uccs.edu Lab #5: Design Example: Keypad Scanner and Encoder  Part 1 (120 pts) Objective The objective of lab assignments 5 through 9 are to systematically design and implement
More informationChapter 3. Sequential Logic Design. Copyright 2013 Elsevier Inc. All rights reserved.
Chapter 3 Sequential Logic Design 1 Figure 3.1 Crosscoupled inverter pair 2 Figure 3.2 Bistable operation of crosscoupled inverters 3 Figure 3.3 SR latch schematic 4 Figure 3.4 Bistable states of SR
More informationModule3 SEQUENTIAL LOGIC CIRCUITS
Module3 SEQUENTIAL LOGIC CIRCUITS Till now we studied the logic circuits whose outputs at any instant of time depend only on the input signals present at that time are known as combinational circuits.
More informationRegisters, Counters, and Clock
Registers, Counters, and Clock Z. Jerry Shi Computer Science and Engineering University of Connecticut Thank John Wakerly for providing his slides and figures. Multibit registers 74x175 (4 bits) 8bit
More informationLatches, the D FlipFlop & Counter Design. ECE 152A Winter 2012
Latches, the D FlipFlop & Counter Design ECE 52A Winter 22 Reading Assignment Brown and Vranesic 7 FlipFlops, Registers, Counters and a Simple Processor 7. Basic Latch 7.2 Gated SR Latch 7.2. Gated SR
More informationSequential Logic. References:
Sequential Logic References: Adapted from: Digital Integrated Circuits: A Design Perspective, J. Rabaey, Prentice Hall UCB Principles of CMOS VLSI Design: A Systems Perspective, N. H. E. Weste, K. Eshraghian,
More informationDecimal Number (base 10) Binary Number (base 2)
LECTURE 5. BINARY COUNTER Before starting with counters there is some vital information that needs to be understood. The most important is the fact that since the outputs of a digital chip can only be
More informationDIGITAL COUNTERS. Q B Q A = 00 initially. Q B Q A = 01 after the first clock pulse.
DIGITAL COUNTERS http://www.tutorialspoint.com/computer_logical_organization/digital_counters.htm Copyright tutorialspoint.com Counter is a sequential circuit. A digital circuit which is used for a counting
More informationBINARY CODED DECIMAL: B.C.D.
BINARY CODED DECIMAL: B.C.D. ANOTHER METHOD TO REPRESENT DECIMAL NUMBERS USEFUL BECAUSE MANY DIGITAL DEVICES PROCESS + DISPLAY NUMBERS IN TENS IN BCD EACH NUMBER IS DEFINED BY A BINARY CODE OF 4 BITS.
More informationLecture 10 Sequential Circuit Design Zhuo Feng. Z. Feng MTU EE4800 CMOS Digital IC Design & Analysis 2010
EE4800 CMOS igital IC esign & Analysis Lecture 10 Sequential Circuit esign Zhuo Feng 10.1 Z. Feng MTU EE4800 CMOS igital IC esign & Analysis 2010 Sequencing Outline Sequencing Element esign Max and Minelay
More informationOutline. Lecture 8. VHDL, Part III 28.10.2010. Sequential logic and FSMs. Sequential circuits: principles. Finite state machines.
Lecture 8 VHDL, Part III Sequential logic and FSMs Outline Sequential circuits: principles System reset Finite state machines Output buffering 2 1 Section 1 SEQUENTIAL CIRCUITS: PRINCIPLES 3 Overview on
More information2 : BISTABLES. In this Chapter, you will find out about bistables which are the fundamental building blocks of electronic counting circuits.
2 : BITABLE In this Chapter, you will find out about bistables which are the fundamental building blos of electronic counting circuits. etreset bistable A bistable circuit, also called a latch, or flipflop,
More informationCHAPTER 11 LATCHES AND FLIPFLOPS
CHAPTER 11 LATCHES AND FLIPFLOPS This chapter in the book includes: Objectives Study Guide 11.1 Introduction 11.2 SetReset Latch 11.3 Gated D Latch 11.4 EdgeTriggered D FlipFlop 11.5 SR FlipFlop
More informationCHAPTER 11: Flip Flops
CHAPTER 11: Flip Flops In this chapter, you will be building the part of the circuit that controls the command sequencing. The required circuit must operate the counter and the memory chip. When the teach
More informationAsynchronous Counters. Asynchronous Counters
Counters and State Machine Design November 25 Asynchronous Counters ENGI 25 ELEC 24 Asynchronous Counters The term Asynchronous refers to events that do not occur at the same time With respect to counter
More informationDigital System Design. Digital System Design with Verilog
Digital System Design with Verilog Adapted from Z. Navabi Portions Copyright Z. Navabi, 2006 1 Digital System Design Automation with Verilog Digital Design Flow Design entry Testbench in Verilog Design
More information