L4: Sequential Building Blocks (Flip-flops, Latches and Registers)

Similar documents
Engr354: Digital Logic Circuits

Latches, the D Flip-Flop & Counter Design. ECE 152A Winter 2012

CSE140: Components and Design Techniques for Digital Systems

CHAPTER 11 LATCHES AND FLIP-FLOPS

Theory of Logic Circuits. Laboratory manual. Exercise 3

Lecture 10 Sequential Circuit Design Zhuo Feng. Z. Feng MTU EE4800 CMOS Digital IC Design & Analysis 2010

Master/Slave Flip Flops

Sequential Logic Design Principles.Latches and Flip-Flops

Memory Elements. Combinational logic cannot remember

Lesson 12 Sequential Circuits: Flip-Flops

Sequential Logic: Clocks, Registers, etc.

CDA 3200 Digital Systems. Instructor: Dr. Janusz Zalewski Developed by: Dr. Dahai Guo Spring 2012

Lecture 10: Sequential Circuits

ECE380 Digital Logic

WEEK 8.1 Registers and Counters. ECE124 Digital Circuits and Systems Page 1

Lecture 11: Sequential Circuit Design

Sequential Circuits. Combinational Circuits Outputs depend on the current inputs

DIGITAL TECHNICS II. Dr. Bálint Pődör. Óbuda University, Microelectronics and Technology Institute

BINARY CODED DECIMAL: B.C.D.

Having read this workbook you should be able to: recognise the arrangement of NAND gates used to form an S-R flip-flop.

Flip-Flops, Registers, Counters, and a Simple Processor

Sequential Logic. (Materials taken from: Principles of Computer Hardware by Alan Clements )

To design digital counter circuits using JK-Flip-Flop. To implement counter using 74LS193 IC.

SEQUENTIAL CIRCUITS. Block diagram. Flip Flop. S-R Flip Flop. Block Diagram. Circuit Diagram

7. Latches and Flip-Flops

CS311 Lecture: Sequential Circuits

EE 459/500 HDL Based Digital Design with Programmable Logic. Lecture 16 Timing and Clock Issues

Flip-Flops and Sequential Circuit Design. ECE 152A Winter 2012

Flip-Flops and Sequential Circuit Design

Chapter 9 Latches, Flip-Flops, and Timers

Chapter 5. Sequential Logic

Modeling Sequential Elements with Verilog. Prof. Chien-Nan Liu TEL: ext: Sequential Circuit

Combinational Logic Design Process

EE 42/100 Lecture 24: Latches and Flip Flops. Rev B 4/21/2010 (2:04 PM) Prof. Ali M. Niknejad

Module 3: Floyd, Digital Fundamental

Timing Methodologies (cont d) Registers. Typical timing specifications. Synchronous System Model. Short Paths. System Clock Frequency

Digital Logic Design. Basics Combinational Circuits Sequential Circuits. Pu-Jen Cheng

Set-Reset (SR) Latch

Counters & Shift Registers Chapter 8 of R.P Jain

Layout of Multiple Cells

Lecture 10: Latch and Flip-Flop Design. Outline

Digital Fundamentals

Introduction to CMOS VLSI Design (E158) Lecture 8: Clocking of VLSI Systems

So far we have investigated combinational logic for which the output of the logic devices/circuits depends only on the present state of the inputs.

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

Modeling Latches and Flip-flops

Design Verification & Testing Design for Testability and Scan

Asynchronous Counters. Asynchronous Counters

Lecture-3 MEMORY: Development of Memory:

Topics of Chapter 5 Sequential Machines. Memory elements. Memory element terminology. Clock terminology

DIGITAL COUNTERS. Q B Q A = 00 initially. Q B Q A = 01 after the first clock pulse.

Experiment # 9. Clock generator circuits & Counters. Eng. Waleed Y. Mousa

DIGITAL TECHNICS II. Dr. Bálint Pődör. Óbuda University, Microelectronics and Technology Institute. 2nd (Spring) term 2012/2013

Digital Logic Design Sequential circuits

Lecture 7: Clocking of VLSI Systems

Clocking. Figure by MIT OCW Spring /18/05 L06 Clocks 1

Lecture 8: Synchronous Digital Systems

COMBINATIONAL and SEQUENTIAL LOGIC CIRCUITS Hardware implementation and software design

DIGITAL ELECTRONICS. Counters. By: Electrical Engineering Department

Counters and Decoders

ETEC 2301 Programmable Logic Devices. Chapter 10 Counters. Shawnee State University Department of Industrial and Engineering Technologies

Counters. Present State Next State A B A B

The enable pin needs to be high for data to be fed to the outputs Q and Q bar.

IE1204 Digital Design F12: Asynchronous Sequential Circuits (Part 1)

Chapter 8. Sequential Circuits for Registers and Counters

NTE2053 Integrated Circuit 8 Bit MPU Compatible A/D Converter

Chapter 7. Registers & Register Transfers. J.J. Shann. J. J. Shann

DIGITAL TECHNICS II. Dr. Bálint Pődör. Óbuda University, Microelectronics and Technology Institute 5. LECTURE: REGISTERS AND RELATED

Sequential Circuit Design

CHAPTER 3 Boolean Algebra and Digital Logic

Latch Timing Parameters. Flip-flop Timing Parameters. Typical Clock System. Clocking Overhead

Fig1-1 2-bit asynchronous counter

Latch versus Register

Digital Systems Based on Principles and Applications of Electrical Engineering/Rizzoni (McGraw Hill

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

Digital Electronics Part I Combinational and Sequential Logic. Dr. I. J. Wassell

ASYNCHRONOUS COUNTERS

2 : BISTABLES. In this Chapter, you will find out about bistables which are the fundamental building blocks of electronic counting circuits.

LAB #4 Sequential Logic, Latches, Flip-Flops, Shift Registers, and Counters

DATA SHEET. HEF40193B MSI 4-bit up/down binary counter. For a complete data sheet, please also download: INTEGRATED CIRCUITS

Counters are sequential circuits which "count" through a specific state sequence.

TRIPLE D FLIP-FLOP FEATURES DESCRIPTION PIN NAMES BLOCK DIAGRAM

Contents COUNTER. Unit III- Counters

Sequential 4-bit Adder Design Report

Registers & Counters

Asynchronous counters, except for the first block, work independently from a system clock.

ENEE 244 (01**). Spring Homework 5. Due back in class on Friday, April 28.

(1) /30 (2) /30 (3) /40 TOTAL /100

Upon completion of unit 1.1, students will be able to

DM74LS112A Dual Negative-Edge-Triggered Master-Slave J-K Flip-Flop with Preset, Clear, and Complementary Outputs

CHAPTER 11: Flip Flops

Wiki Lab Book. This week is practice for wiki usage during the project.

Measuring Metastability

Binary full adder. 2-bit ripple-carry adder. CSE 370 Spring 2006 Introduction to Digital Design Lecture 12: Adders

DM74LS169A Synchronous 4-Bit Up/Down Binary Counter

Register File, Finite State Machines & Hardware Control Language

Systems I: Computer Organization and Architecture

The components. E3: Digital electronics. Goals:

Digital Electronics Detailed Outline

Transcription:

L4: Sequential Building Blocks (Flip-flops, Latches and Registers) Acknowledgements: Materials in this lecture are courtesy of the following sources and are used with permission. Prof. Randy Katz (Unified Microelectronics Corporation istinguished Professor in Electrical Engineering and Computer Science at the University of California, Berkeley) and Prof. Gaetano Borriello (University of Washington epartment of Computer Science & Engineering) from Chapter 2 of R. Katz, G. Borriello. Contemporary Logic esign. 2nd ed. Prentice-Hall/Pearson Education, 25. J. Rabaey, A. Chandrakasan, B. Nikolic. igital Integrated Circuits: A esign Perspective. Prentice Hall/Pearson, 23. L4: 6. Spring 26 Introductory igital Systems Laboratory

Combinational Logic Review in in Combinational Circuit in in in N- in M- Combinational logic circuits are memoryless No feedback in combinational logic circuits Output assumes the function implemented by the logic network, assuming that the switching transients have settled Outputs can have multiple logical transitions before settling to the correct value L4: 6. Spring 26 Introductory igital Systems Laboratory 2

A Sequential System Inputs Current State COMBINATIONAL LOGIC Registers Outputs Next state Memory element Sequential circuits have memory (i.e., remember the past) The current state is held in memory and the next state is computed based the current state and the current inputs In a synchronous systems, the clock signal orchestrates the sequence of events L4: 6. Spring 26 Introductory igital Systems Laboratory 3

A Simple Example Adding N inputs (N- Adders) in in in2 in N- Using a sequential (serial) approach reset in Current_Sum clk L4: 6. Spring 26 Introductory igital Systems Laboratory 4

Implementing State: Bi-stability V o =V i2 V o2 =V i V i2 = V o Point C is Metastable C V o V i2 V i2 =V o V i A V o2 δ V i = V o2 V i2 = V o A Points A and B are stable (represent & ) C B V i =V o2 δ B V i = V o2 L4: 6. Spring 26 Introductory igital Systems Laboratory 5

NOR-based Set-Reset (SR) Flipflop S S R S R SR =, SR =, SR = SR = SR = SR = SR = SR = SR = R Forbidden State SR = SR = Reset Hold Set Reset Set R S?? Flip-flop refers to a bi-stable element (edge-triggered registers are also called flip-flops) this circuit is not clocked and outputs change asynchronously with the inputs L4: 6. Spring 26 Introductory igital Systems Laboratory 6

Making a Clocked Memory Element: Positive -Latch S R G clk R and S clock sample hold sample hold A Positive -Latch: Passes input to output when is high and holds state when clock is low (i.e., ignores input ) A Latch is level-sensitive: invert clock for a negative latch L4: 6. Spring 26 Introductory igital Systems Laboratory 7 hold

Multiplexor Based Positive & Negative Latch 2: multiplexor Positive Latch Negative Latch in in out SEL Out = sel * in + sel * in "data" clk "load" clk "remember" "stored value" L4: 6. Spring 26 Introductory igital Systems Laboratory 8

74HC75 (Positive Latch) 2 6 3 LE -2 CP L 3 2 CP 2 2 5 4 Operating Modes Inputs Outputs LE n-n n n n 6 4 3 LE 3-4 L2 CP L3 3 3 ata Enabled ata Latched H L L H H H H L L X q q 7 4 4 9 CP L4 4 8 Figures by MIT OpenCourseWare. L4: 6. Spring 26 Introductory igital Systems Laboratory 9

Building an Edge-Triggered Register Negative latch Positive latch M G G Master Slave M M Master-Slave Register Use negative clock phase to latch inputs into first latch Use positive clock to change outputs with second latch View pair as one basic unit master-slave flip-flop twice as much logic Image by MIT OpenCourseWare. L4: 6. Spring 26 Introductory igital Systems Laboratory

Latches vs. Edge-Triggered Register Edge triggered device sample inputs on the event edge 7474 Transparent latches sample inputs as long as the clock is asserted Positive edge-triggered register Timing iagram: 7475 C Level-sensitive latch Bubble here for negative edge triggered register 7474 7475 Behavior the same unless input changes while the clock is high L4: 6. Spring 26 Introductory igital Systems Laboratory

Important Timing Parameters Clock Clock: Periodic Event, causes state of memory element to change Input T su T h There is is a timing "window" around the clocking event during which the input must remain stable and unchanged in in order to to be be recognized memory element can be updated on the: rising edge, falling edge, high level, low level Setup Time (T su ) Minimum time before the clocking event by which the input must be stable Hold Time (T h ) Minimum time after the clocking event during which the input must remain stable Propagation elay (T cq for an edge-triggered register and T dq for a latch) elay overhead of the memory element L4: 6. Spring 26 Introductory igital Systems Laboratory 2

The J-K J K Flip-Flop Flop J K S R J K + + J K \ Eliminate the forbidden state of the SR Flip-flop Use output feedback to guarantee that R and S are never both one L4: 6. Spring 26 Introductory igital Systems Laboratory 3

J-K K Master-Slave Register Sample inputs while clock high Sample inputs while clock low J P S S K R P R 's Set Reset Catch T oggle J K Correct Toggle Operation J φ K P \ P \ Master outputs Slave outputs Is there a problem with this circuit? L4: 6. Spring 26 Introductory igital Systems Laboratory 4

Pulse Based Edge-Triggered J-K J K Register Input X φ Input φ Output X t plh Schematic Output J φ K S R J φ K JK Register Logic Symbol JK Register Schematic L4: 6. Spring 26 Introductory igital Systems Laboratory 5

Pulse-Triggered Registers Ways to design an edge-triggered sequential cell: Master-Slave Latches Pulse-Based Register ata L L2 ata Latch Short pulse around clock edge Pulse registers are widely used in high-performance microprocessor chips (Sun Microsystems, AM, Intel, etc.) The can have a negative setup time! L4: 6. Spring 26 Introductory igital Systems Laboratory 7

Flip-Flop Flop vs. Toggle Flip-Flop Flop Flip-Flop N T T (Toggle) Flip-Flop T N N- N- L4: 6. Spring 26 Introductory igital Systems Laboratory 6

Realizing ifferent Types of Memory Elements Characteristic Equations : J-K: T: + = + = J + K + = T + T E.g., J=K=, then + = J=, K=, then + = J=, K=, then + = J=, K=, then + = Implementing One FF in Terms of Another J C K K J C implemented with J-K J-K implemented with L4: 6. Spring 26 Introductory igital Systems Laboratory 7

esign Procedure Excitation Tables: What are the necessary inputs to cause a particular kind of change in state? + J X X K X X T Implementing FF with a J-K FF: ) Start with K-map of + = ƒ(, ) 2) Create K-maps for J and K with same inputs (, ) 3) Fill in K-maps with appropriate values for J and K to cause the same state changes as in the original K-map E.g., = =, + = then J =, K = X X X X X + = J = K = L4: 6. Spring 26 Introductory igital Systems Laboratory 8

esign Procedure (cont.) Implementing J-K FF with a FF: ) K-Map of + = F(J, K, ) 2,3) Revised K-map using 's excitation table its the same! that is why design procedure with FF is simple! JK J K + = = J + K Resulting equation is the combinational logic input to to cause same behavior as J-K FF. Of course it is identical to the characteristic equation for a J-K FF. L4: 6. Spring 26 Introductory igital Systems Laboratory 9

System Timing Parameters In Combinational Logic Register Timing Parameters T cq : worst case rising edge clock to q delay T cq, cd : contamination or minimum delay from clock to q T su : setup time T h : hold time Logic Timing Parameters T logic : worst case delay through the combinational logic network T logic,cd : contamination or minimum delay through logic network L4: 6. Spring 26 Introductory igital Systems Laboratory 2

System Timing (I): Minimum Period In Combinational Logic CLout T h T h IN T su T cq T su T cq FF T cq,cd T logic T cq,cd CLout T l,cd T su2 T > T cq + T logic + T su L4: 6. Spring 26 Introductory igital Systems Laboratory 2

System Timing (II): Minimum elay In Combinational Logic CLout IN FF CLout T su T h T cq,cd T h T l,cd T cq,cd + T logic,cd > T hold L4: 6. Spring 26 Introductory igital Systems Laboratory 22

Shift-Register Typical parameters for Positive edge-triggered Register Tsu 2ns Th 5ns Tsu 2ns Th 5ns Tw 25ns Tplh 25ns 3ns Tphl 4ns 25ns all measurements are made from the clocking event that is, the rising edge of the clock Shift-register IN OUT IN L4: 6. Spring 26 Introductory igital Systems Laboratory 23