ECE 424 – Introduction to VLSI Design Emre Yengel Department of Electrical and Communication Engineering Fall 2014.

Slides:



Advertisements
Similar presentations
CS1104 – Computer Organization Aaron Tan Tuck Choy School of Computing National University.
Advertisements

Changes in input values are reflected immediately (subject to the speed of light and electrical delays) on the outputs Each gate has an associated “electrical.
1 Introduction Sequential circuit –Output depends not just on present inputs (as in combinational circuit), but on past sequence of inputs Stores bits,
Sequential Logic ENEL 111. Sequential Logic Circuits So far we have only considered circuits where the output is purely a function of the inputs With.
Introduction to Sequential Logic Design Latches. 2 Terminology A bistable memory device is the generic term for the elements we are studying. Latches.
1 Lecture 14 Memory storage elements  Latches  Flip-flops State Diagrams.
COE 202: Digital Logic Design Sequential Circuits Part 1 Dr. Ahmad Almulhem ahmadsm AT kfupm Phone: Office: Ahmad Almulhem, KFUPM.
Sequential Logic Building Blocks – Flip-flops
Digital Design - Sequential Logic Design Chapter 3 - Sequential Logic Design.
MOHD. YAMANI IDRIS/ NOORZAILY MOHAMED NOOR1 Sequential Circuit Latch & Flip-flop.
Digital Logic Design ESGD2201
CHAPTER 3 Sequential Logic/ Circuits.  Concept of Sequential Logic  Latch and Flip-flops (FFs)  Shift Registers and Application  Counters (Types,
Digital Logic Chapter 5 Presented by Prof Tim Johnson
1 Kuliah Rangkaian Digital Kuliah 8: Rangkaian Logika Sekuensial Teknik Komputer Universitas Gunadarma.
Multiplexors Sequential Circuits and Finite State Machines Prof. Sin-Min Lee Department of Computer Science.
Fall 2004EE 3563 Digital Systems Design EE 3563 Sequential Logic Design Principles  A sequential logic circuit is one whose outputs depend not only on.
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.
Sequential Logic Latches & Flip-flops
1 Sequential Circuits –Digital circuits that use memory elements as part of their operation –Characterized by feedback path –Outputs depend not only on.
EKT 124 / 3 DIGITAL ELEKTRONIC 1
Sequential Logic Flip-Flops and Related Devices Dr. Rebhi S. Baraka Logic Design (CSCI 2301) Department of Computer Science Faculty.
EECC341 - Shaaban #1 Lec # 13 Winter Sequential Logic Circuits Unlike combinational logic circuits, the output of sequential logic circuits.
ENGIN112 L20: Sequential Circuits: Flip flops October 20, 2003 ENGIN 112 Intro to Electrical and Computer Engineering Lecture 20 Sequential Circuits: Flip.
CS 151 Digital Systems Design Lecture 20 Sequential Circuits: Flip flops.
Sequential Circuits. 2 Sequential vs. Combinational Combinational Logic:  Output depends only on current input −TV channel selector (0-9) Sequential.
Flip-Flops and Related Devices
Chapter 3: Sequential Logic Circuit EKT 121 / 4 ELEKTRONIK DIGIT 1.
1 CSE370, Lecture 14 Lecture 14 u Logistics n Midterm 1: Average 90/100. Well done! n Midterm solutions online n HW5 due date delayed until this Friday.
1 Sequential Circuit Latch & Flip-flop. 2 Contents Introduction Memory Element Latch  SR latch  D latch Flip-flop  SR flip-flop  D flip-flop  JK.
COE 202: Digital Logic Design Sequential Circuits Part 1
Eng. Mohammed Timraz Electronics & Communication Engineer University of Palestine Faculty of Engineering and Urban planning Software Engineering Department.
Flip-flops. Outline  Edge-Triggered Flip-flops  S-R Flip-flop  D Flip-flop  J-K Flip-flop  T Flip-flop  Asynchronous Inputs.
EE2174: Digital Logic and Lab Professor Shiyan Hu Department of Electrical and Computer Engineering Michigan Technological University CHAPTER 9 Sequential.
CHAPTER 3 Sequential Logic/ Circuits.  Concept of Sequential Logic  Latch and Flip-flops (FFs)  Shift Registers and Application  Counters (Types,
FLIP FLOP By : Pn Siti Nor Diana Ismail CHAPTER 1.
Company LOGO DKT 122/3 DIGITAL SYSTEM 1 WEEK #12 LATCHES & FLIP-FLOPS.
CS 352 : Computer Organization and Design University of Wisconsin-Eau Claire Dan Ernst Latches & Flip-Flops.
Introduction to Sequential Logic
Synchronous Sequential Logic A digital system has combinational logic as well as sequential logic. The latter includes storage elements. feedback path.
EKT 121 / 4 ELEKTRONIK DIGIT I
5 Chapter Synchronous Sequential Circuits 1. Logic Circuits- Review 2 Logic Circuits Sequential Circuits Combinational Circuits Consists of logic gates.
Sahar Mosleh PageCalifornia State University San Marcos 1 More on Flip Flop State Table and State Diagram.
Sequential Circuit Latch & Flip-flop. Contents Introduction Memory Element Latch  SR latch  D latch Flip-flop  SR flip-flop  D flip-flop  JK flip-flop.
Chapter 6 – Digital Electronics – Part 1 1.D (Data) Flip Flops 2.RS (Set-Reset) Flip Flops 3.T Flip Flops 4.JK Flip Flops 5.JKMS Flip Flops Information.
Chapter5: Synchronous Sequential Logic – Part 1
CSE 140: Components and Design Techniques for Digital Systems Lecture 7: Sequential Networks CK Cheng Dept. of Computer Science and Engineering University.
Synchronous Sequential Circuits by Dr. Amin Danial Asham.
A latch is a temporary storage device that has two stable states (bistable). It is a basic form of memory. The S-R (Set-Reset) latch is the most basic.
Synchronous Sequential Circuits by Dr. Amin Danial Asham.
Flip Flops Engr. Micaela Renee Bernardo. A latch is a temporary storage device that has two stable states (bistable). It is a basic form of memory. Latches.
Dept. of Electrical Engineering
Ch.5 Flip Flops and Related Devices
EEE 301 DIGITAL ELECTRONICS
Memory Elements. Outline  Introduction  Memory elements.
Flip-Flop Flip-flops Objectives Upon completion of this chapter, you will be able to :  Construct and analyze the operation of a latch flip-flop made.
CSE 260 DIGITAL LOGIC DESIGN
Sequential logic circuits First Class 1Dr. AMMAR ABDUL-HAMED KHADER.
CS1103 Arunima Shukla Asim Marchant Urja Kantharia Harsh kosambia Digital Electronics Mini Project.
Digital Design - Sequential Logic Design
LATCHED, FLIP-FLOPS,AND TIMERS
Lecture 8 Dr. Nermi Hamza.
Synchronous Sequential Circuits
Flip Flops.
CS1104 – Computer Organization
Sequential Logic and Flip Flops
ECE Digital logic Lecture 16: Synchronous Sequential Logic
Synchronous Sequential Circuits
CSE 370 – Winter Sequential Logic - 1
FLIP-FLOPS.
Synchronous sequential
Presentation transcript:

ECE 424 – Introduction to VLSI Design Emre Yengel Department of Electrical and Communication Engineering Fall 2014

Introduction Sequential circuit o Output depends not just on present inputs (as in combinational circuit), but on past sequence of inputs Stores bits, also known as having “state” o Simple example: a circuit that counts up in binary A sequential circuit consists of a feedback path, and employs some memory elements.

Introduction a Flight attendant call button ▫Press call: light turns on  Stays on after button released ▫Press cancel: light turns off ▫Logic gate circuit to implement this? Q Call Cancel Doesn’t work. Q=1 when Call=1, but doesn’t stay 1 when Call returns to 0 Need some form of “feedback” in the circuit a a Bit Storage Blue light Call button Cancel button 1. Call button pressed – light turns on Bit Storage Blue light Call button Cancel button 2. Call button released – light stays on Bit Storage Blue light Call button Cancel button 3. Cancel button pressed – light turns off

Memory Elements There are two types of sequential circuits: o synchronous: outputs change only at specific time o asynchronous: outputs change at any time Multivibrator: a class of sequential circuits. They can be: bistable (2 stable states) monostable or one-shot (1 stable state) astable (no stable state) Bistable logic devices: latches and registers a latch is level sensitive a register is edge-triggered Many books call edge-triggered elements flip-flops.

Standard Memory Elements  Memory element with clock.  Clock is usually a square wave. command Memory element stored value Q clock Positive edgesNegative edges Positive pulses

Timing Definitions t t D t c 2 q t hold t su t Q DATA STABLE DATA STABLE Register CLK DQ setup time (t su ) hold time (t hold ) propagation delay (t c-q )

Latches vs Registers  Latch stores data when clock is low or high D Clk Q D Q  Register stores data when clock rises Clk D D QQ

Latches

Static Latches and Registers: Bistability Principle V i1 A C B V o2 V i1 =V o2 V o1 V i2 V i2 =V o1 When the gain of the inverter in the transient region is larger than 1, only A and B are stable operation points, and C is a metastable operation point.

Gain should be larger than 1 in the transition region Bistability Principle

SR Latches R=1 S=0 t Q R S 1 0 t 1 0 Q Q S (set) SR latch R (reset) Does the circuit to the right, with cross-coupled NOR gates, do what we want? t Q S=0 R=0 t Q S=1 R= t Q S= X 0 Recall… a

SR Latches  Characteristics table for active-high input S-R latch (also known as NOR gate latch):  Characteristics table for active-low input S'-R' latch (also known as NAND gate latch): SRSR Q Q' SRSR Q Q'

SR Latches Problem ▫If S=1 and R=1 simultaneously, we don’t know what value Q will take Q may oscillate. Then, because one path will be slightly longer than the other, Q will eventually settle to 1 or 0 – but we don’t know which.

SR Latches Problem not just one of a user pressing two buttons at same time Can also occur even if SR inputs come from a circuit that supposedly never sets S=1 and R=1 at same time ▫But does, due to different delays of different paths The longer path from X to R than to S causes SR=11 for short time – could be long enough to cause oscillation R Y X S SR latch Q Arbitrary circuit

Level Sensitive SR Latches Add enable input “C” as shown ▫Only let S and R change when C=0  Enure circuit in front of SR never sets SR=11, except briefly due to path delays ▫Change C to 1 only after sufficient time for S and R to be stable ▫When C becomes 1, the stable S and R value passes through the two AND gates to the SR latch’s S1 R1 inputs. R1 S1 S C R Level-sensitive SR latch Q Though SR=11 briefly......S1R1 never = 11 S C Q’ Q R Level-sensitive SR latch symbol R1 S1 S X Y C Clk R Level-sensitive SR latch Q S R C S1 R1 1 a

Clock Signals of a Latch How do we know when it’s safe to set C=1? ▫Most common solution –make C pulse up/down  C=0: Safe to change X, Y  C=1: Must not change X, Y  We’ll see how to ensure that later ▫Clock signal -- Pulsing signal used to enable latches  Because it ticks like a clock ▫Sequential circuit whose storage components all use clock signals: synchronous circuit  Most common type  Asynchronous circuits – important topic, but left for advanced course R1 S1 S X Y C Clk R Q Level-sensitive SR latch

Clocks Clock period: time interval between pulses ▫Above signal: period = 20 ns Clock cycle: one such time interval ▫Above signal shows 3.5 clock cycles Clock frequency: 1/period ▫Above signal: frequency = 1 / 20 ns = 50 MHz  1 Hz = 1/s 100 GHz 10 GHz 1 GHz 100 MHz 10 MHz 0.01 ns 0.1 ns 1 ns 10 ns 100 ns PeriodFreq

Level Sensitive D Latch SR latch requires careful design to ensure SR=11 never occurs D latch relieves designer of that burden ▫Inserted inverter ensures R always opposite of S R S D C D latch Q DQ’ QC D latch symbol

Problem with Level-Sensitive D Latch D latch still has problem (as does SR latch) ▫When C=1, through how many latches will a signal travel? ▫Depends on for how long C=1  Clk_A -- signal may travel through multiple latches  Clk_B -- signal may travel through fewer latches ▫Hard to pick C that is just the right length  Can we design bit storage that only stores a value on the rising edge of a clock signal? Clk

Flip-Flop Flip-flop: Bit storage that stores on clock edge, not level One design -- master-servant ▫Two latches, output of first goes to input of second, master latch has inverted clock signal ▫So master loaded when C=0, then servant when C=1 ▫When C changes from 0 to 1, master disabled, servant loaded with value that was at D just before C changed -- i.e., value at D during rising edge of C Clk rising edges Note: Hundreds of different flip- flop designs exist D latch master D latch servant D DmDs Cs QmQs’ Qs Q Q’ Cm Clk D flip-flop

Edge-Triggered Flip-Flops  S-R, D and J-K edge-triggered flip-flops. Note the “>” symbol at the clock input. S C R Q Q' S C R Q Q' D C Q Q' D C Q Q' J C K Q Q' J C K Q Q' Positive edge-triggered flip-flops Negative edge-triggered flip-flops

S-R Flip-Flop  S-R flip-flop: on the triggering edge of the clock pulse,  S=HIGH (and R=LOW)  SET state  R=HIGH (and S=LOW)  RESET state  both inputs LOW  no change  both inputs HIGH  invalid  Characteristic table of positive edge-triggered S-R flip-flop: X = irrelevant (“don’t care”)  = clock transition LOW to HIGH

S-R Flip-Flop  It comprises 3 parts:  a basic NAND latch  a pulse-steering circuit  a pulse transition detector (or edge detector) circuit  The pulse transition detector detects a rising (or falling) edge and produces a very short- duration spike. The pulse transition detector. S Q Q' CLK Pulse transition detector R Positive-going transition (rising edge) CLK CLK' CLK* CLK' CLK CLK* Negative-going transition (falling edge) CLK' CLK CLK* CLK CLK' CLK*

D Flip-Flop D Q’ Q Q’ D Q Symbol for rising-edge triggered D flip-flop Symbol for falling-edge triggered D flip-flop Clk rising edges Clk falling edges Internal design: Just invert servant clock rather than master The triangle means clock input, edge triggered

D Flip-Flop Solves problem of not knowing through how many latches a signal travels when C=1 ▫In figure below, signal travels through exactly one flip-flop, for Clk_A or Clk_B ▫Why? Because on rising edge of Clk, all four flip-flops are loaded simultaneously -- then all four no longer pay attention to their input, until the next rising edge. Doesn’t matter how long Clk is 1. D1Q1D2Q2D3Q3D4Q4 Y Clk Clk_AClk_B Two latches inside each flip-flop

D-Latch vs. D-Flip-Flop Latch is level-sensitive: Stores D when C=1 Flip-flop is edge triggered: Stores D when C changes from 0 to 1 ▫Saying “level-sensitive latch,” or “edge-triggered flip- flop,” is redundant ▫Two types of flip-flops -- rising or falling edge triggered. Comparing behavior of latch and flip-flop:

Flight-Attendant Call Button Using D Flip-Flop D flip-flop will store bit Inputs are Call, Cancel, and present value of D flip-flop, Q Truth table shown below Preserve value: if Q=0, make D=0; if Q=1, make D=1 Cancel -- make D=0 Call -- make D=1 Let’s give priority to Call -- make D=1 Circuit derived from truth table, using combinational logic design process Call button Cancel button Flight attendant call-button system Blue light DQ’ Q Clk Call button Cancel button Blue light Call Cancel Q

D Flip-Flop  Application: Parallel data transfer. To transfer logic-circuit outputs X, Y, Z to flip- flops Q 1, Q 2 and Q 3 for storage. * After occurrence of negative-going transition Q1 = X*D CLK Q Q' Q2 = Y*D CLK Q Q' Q3 = Z*D CLK Q Q' Combinational logic circuit Transfer X Y Z

J-K Flip-Flop  J-K flip-flop: Q and Q' are fed back to the pulse-steering NAND gates.  No invalid state.  Include a toggle state.  J=HIGH (and K=LOW)  SET state  K=HIGH (and J=LOW)  RESET state  both inputs LOW  no change  both inputs HIGH  toggle J-K flip-flop. J Q Q' CLK Pulse transition detector K

J-K Flip-Flop  J-K flip-flop.  Characteristic table. J Q Q' CLK Pulse transition detector K Q(t+1) = J.Q' + K'.Q

T Flip-Flop  T flip-flop: single-input version of the J-K flip flop, formed by tying both inputs together.  Characteristic table. Q(t+1) = T.Q' + T'.Q T Q Q' CLK Pulse transition detector J C K Q Q' CLK T

Summary We considered increasingly better bit storage until we arrived at the robust D flip-flop bit storage D flip-flop D latch master D latch servant DmQm Cm Ds D Clk Qs’ CsQs Q’ Q S R D Q C D latch Feature: Only loads D value present at rising clock edge, so values can’t propagate to other flip-flops during same clock cycle. Tradeoff: uses more gates internally than D latch, and requires more external gates than SR – but gate count is less of an issue today. Feature: SR can’t be 11 if D is stable before and while C=1, and will be 11 for only a brief glitch even if D changes while C=1. Problem: C=1 too long propagates new values through too many latches: too short may not enable a store. Feature: S and R only have effect when C=1. We can design outside circuit so SR=11 never happens when C=1. Problem: avoiding SR=11 can be a burden. R (reset) S (set) Q SR latch Feature: S=1 sets Q to 1, R=1 resets Q to 0. Problem: SR=11 yield undefined Q. S1 R1 S Q C R Level-sensitive SR latch