# Modeling Latches and Flip-flops

Save this PDF as:

Size: px
Start display at page:

## Transcription

1 Lab Workbook Introduction Sequential circuits are digital circuits in which the output depends not only on the present input (like combinatorial circuits), but also on the past sequence of inputs. In effect, these circuits must be able to remember something about the past history of the inputs. Thus the timing concept is introduced and the clock signal provides the timing essence to the sequential circuits. Latches and flip-flops are commonly used memory devices in sequential circuits. Please refer to the Vivado tutorial on how to use the Vivado tool for creating projects and verifying digital circuits. Objectives After completing this lab, you will be able to: Model various types of latches Model flip-flops with control signals Latches Part 1 Storage elements can be classified into latches and flip-flops. A latch is a device with exactly two stable states: a high-output and a low-output. A latch has a feedback path, so information can be retained by the device. Therefore latches are volatile memory devices, and can store one bit of data for as long as the device is powered. As the name suggests, latches are used to "latch onto" information and hold the data in place. An SR latch (Set/Reset) is an asynchronous device: it works independently of control signals and relies only on the state of the S and R inputs. The symbol, the circuit using NOR gates, and the truth table are shown below. Though Xilinx FPGA can implement such a latch using one LUT (Look-Up Table) circuit, the following VHDL code shows how such circuit can be modeled using structural and dataflow modeling. architecture SR_latch of SR_latch_dataflow is begin Q <= Qbar nor R; Qbar <= Q nor S; end SR_latch; architecture SR_latch of SR_latch_dataflow_arch is begin Q_i <= Q after 2ns; Qbar_i <= Qbar after 2ns; Q <= not(r or Qbar) after 2ns; Qbar <= not(s or Q) after 2ns; end SR_latch; Artix-7 5-1

2 Lab Workbook 1-1. Design a SR latch (you can base it on the example shown above). Synthesize the design and view the RTL schematic of the Open Synthesized Design. Develop a testbench to test (see waveform below) and validate the design. Simulate the design. Assign S input to SW0 and R input to SW1. Assign Q to LED0 and Qbar to LED1. Implement the design and verify the functionality in hardware Open Vivado and create a blank project called lab5_1_ Create and add the VHDL module with the SR_latch_dataflow code Develop a testbench (see waveform above) to test and validate the design Add the appropriate board related master XDC file to the project and edit it to include the related pins, assigning S input to SW0, R input to SW1, Q to LED0, and Qbar to LED Set the tcl.pre option in the Bitstream Settings to point to the provided lab5_prehook.tcl file. This Synthesize the design and view the schematic under the Open Synthesized Design process group. Verify that it uses 2 LUTs and 4 IOs (2 IBUF, and 2 OBUF) Implement the design and view the project summary. It should show 2 LUTs, 2 slice, and 4 IOs Generate the bitstream, download it into the Basys3 or the Nexys4 DDR board, and verify the In some situations it may be desirable to dictate when the latch can and cannot latch. The gated SR latch is a simple extension of the SR latch which provides an Enable line which must be driven high before data can be latched. Even though a control line is now required, the SR latch is not synchronous, because the inputs can change the output even in the middle of an enable pulse. When the Enable input is low, then the outputs from the AND gates must also be low, thus the Q and bar Q outputs remain latched to the previous data. Only when the Enable input is high can the state of the latch change, as shown in the truth table. When the enable line is asserted, a gated SR latch is identical in operation to an SR latch. The Enable line is sometimes a clock signal, but is usually a read or writes strobe. The symbol, circuit, and the truth table of the gates SR latch are shown below. Artix

3 Lab Workbook 1-2. Design a gated SR latch (shown in the figure above) using dataflow modeling. Synthesize the design and view the schematic of the Open Synthesized Design. Develop a testbench to test (generate input as shown below) and validate the design. Simulate the design. Assign S input to SW0, R input to SW1, and Enable input to SW2. Assign Q to LED0 and Qbar to LED1. Implement the design and verify the functionality in the hardware Open Vivado and create a blank project called lab5_1_ Create and add the VHDL module that will model the gated SR latch using dataflow modeling. Assign 2 units delay to each assignment statement used in the model Develop a testbench to test and validate the design. It should generate the input stimuli as shown in the figure above Add the appropriate board related master XDC file to the project and edit it to include the related pins, assigning S input to SW0, R input to SW1, Enable to SW2, Q to LED0, and Qbar to LED Set the tcl.pre option in the Bitstream Settings to point to the provided lab5_prehook.tcl file. This Synthesize the design and view the schematic under the Open Synthesized Design process group. Verify that it uses 2 LUTs and 5 IOs Implement the design and view the Utilization Report. It should show 2LUTs, 1 slice, and 5 IOs Generate the bitstream, download it into the Basys3 or the Nexys4 DDR board, and verify the Artix-7 5-3

4 Lab Workbook The D latch (D for "data") or transparent latch is a simple extension of the gated SR latch that removes the possibility of invalid input states (metastability). Since the gated SR latch allows us to latch the output without using the S or R inputs, we can remove one of the inputs by driving both the Set and Reset inputs with a complementary driver, i.e. we remove one input and automatically make it the inverse of the remaining input. The D latch outputs the D input whenever the Enable line is high, otherwise the output is whatever the D input was when the Enable input was last high. This is why it is also known as a transparent latch - when Enable is asserted, the latch is said to be "transparent" - it signals propagate directly through it as if it isn't there. D-latches can be modeled in behavioral modeling as shown below. architecture behavior of D_latch is begin process (D, Enable) begin if (Enable = 1 ) then Qbar <= not(d); Note that since we do not say what to do when Enable is low, the circuit remembers the previous state. While Enable is high and since the always block is also sensitive to D, Q and Qbar will be updated at any time D changes, giving it a transparent behavior. The distinction between the blocking and nonblocking assignment is covered in Lab 7 (Testbenches for Sequential Circuits) Design a D latch (shown in the figure above) using dataflow modeling. Synthesize the design and view the schematic of the Open Synthesized Design. Develop a testbench to test (generate input as shown below) and validate the design. Simulate the design. Assign D input to SW0, and Enable input to SW1. Assign Q to LED0 and Qbar to LED1. Implement the design and verify the functionality in hardware Open Vivado and create a blank project called lab5_1_ Create and add the VHDL module that will model the D latch using dataflow modeling. Assign 2 units delay to each assignment statement used in the model. Artix

5 Lab Workbook Develop a testbench to test and validate the design. It should generate the input stimuli as shown in the figure above Add the appropriate board related master XDC file to the project and edit it to include the related pins, assigning d input to SW0, Enable to SW1, Q to LED0, and Qbar to LED Set the tcl.pre option in the Bitstream Settings to point to the provided lab5_prehook.tcl file. This Synthesize the design and view the schematic under the Open Synthesized Design process group. Verify that it uses 2 LUTs and 4 IOs Implement the design and view the Utilization Report. It should show 2 LUTs, 1 slice, and 4 IOs Generate the bitstream, download it into the Basys3 or the Nexys4 DDR board, and verify the Flip-flops Part 2 Flip-flops are clocked circuits whose output may change on an active edge of the clock signal based on its input. Unlike latches, which are transparent and in which output can change when the gated signal is asserted upon the input change, flip-flops normally would not change the output upon input change even when the clock signal is asserted. Flip-flops are widely used in synchronous circuits. The D flip-flop is a widely used type of flip-flop. It is also known as a data or delay flip-flop. The D flip-flop captures the value of the D-input at a definite portion of the clock cycle (such as the rising edge of the clock). That captured value becomes the Q output. At other times, the output Q does not change. The D flip-flop can be viewed as a memory cell or a delay line. The active edge in a flip-flop could be rising or falling. The following figure shows rising (also called positive) edge triggered D flip-flop and falling (negative edge) triggered D flip-flop. The positive edge triggered D flip-flop can be modeled using behavioral modeling as shown below. architecture behavior of D_ff is begin if rising_edge(clk) then Note that the process block is sensitive to any change to clk value, however the rising_edge function (defined in IEEE library) checks for the value change from any value to final value of 1. When a change (event) on the sensitive signal occurs, the statements in the if block will be executed. Artix-7 5-5

6 Lab Workbook 2-1. Model a D flip-flop using behavioral modeling. Develop a testbench to validate the model (see diagram below). Simulate the design Open Vivado and create a blank project called lab5_2_ Create and add the VHDL module that will model simple D flip-flop Develop a testbench to validate the design behavior. It should generate the input stimuli as shown in the above timing diagram. The following circuit and timing diagrams illustrate the differences between D-latch, rising edge triggered D flip-flop and falling edge triggered D flip-flops Model the circuit, as shown above, using behavioral modeling. You will use three process blocks. Develop a testbench generating input as shown above. Simulate and validate the design Open Vivado and create a blank project called lab5_2_ Create and add the VHDL module that will model the given circuit Develop a testbench to test and analyze the design behavior. It should generate the input stimuli as shown in the timing diagram. Often it is necessary to have the synchronous element to start with a defined output. It is also desired and required in some circuits to force the synchronous element to a known output ignoring input at the D input. The D flip-flop discussed above can be modified to have such Such D flip-flop is known as D flip-flop with synchronous set and reset capabilities if the desired output is obtained on the active edge of the clock, otherwise it is viewed to have asynchronous preset and clear. The models of each kind are shown below. Artix

7 Lab Workbook architecture behavior of D_ff_with_synch_reset is begin if rising_edge(clk) begin if (reset = 1 ) then Q <= 0 ; else architecture behavior of D_ff_with_asynch_reset is begin process (clk, clear) begin if (clear = 1 ) then Q <= 0 ; elsif rising_edge(clk) then 2-3. Model the D flip-flop with synchronous reset using behavioral modeling. Develop a testbench to test (generate input as shown) and validate the design. Simulate the design. Assign D input to SW0, reset to SW1, Clk to SW15, and output Q to LED0. Verify the design in hardware Open Vivado and create a blank project called lab5_2_ Create and add the VHDL module that will model the D flip-flop with synchronous reset Develop a testbench to test and analyze the design behavior. It should generate the input stimuli as shown in the timing diagram Add the appropriate board related master XDC file to the project and edit it to include the related pins, assigning D input to SW0, reset input to SW1, Clk to SW2, and Q to LED0. set_property CLOCK_DEDICATED_ROUTE FALSE [get_nets { clk }]; The above line of code needs to be added to the XDC file to allow SW15 be used as a clock Set the tcl.pre option in the Bitstream Settings to point to the provided lab5_prehook.tcl file. This Synthesize and implement the design. Look at the Project Summary and note that 1 BUFG and 4 IOs are used. The BUFG is used because the clock signal is used in the design. Artix-7 5-7

8 Lab Workbook Generate the bitstream, download it into the Basys3 or the Nexys4 DDR board, and verify the In FPGAs, LUT and FF located in different configurable logic blocks (CLB) are connected using routing resources. During implementation, the tools will use these resources depending on the way the circuits are modeled, the type and amount of resources required, and the speed at which the circuit is going to be driven. Often resources used for exchanging information are placed close to each other; however, there can be a situation when it may not be possible. When related flip-flops, between which the information gets exchanged are placed away from each other, the clocks arriving at the source and destination flipflops may not be at the same time creating what is called clock-skew. The clock-skew can alter the behavior of the circuit. In some other cases, certain flip-flops may not need to update their output at every asserted clock edges. In order to control the behavior, flip-flops in FPGA have an additional control signal called Clock Enable (CE). In ASIC technology, gated clocks are used to control the behavior. A symbol of the flip-flop with CE is shown below. architecture behavior of D_ff_with_ce is begin if rising_edge(clk) then if (ce = 1 ) then architecture behavior of D_ff_with_ce_and_synch_reset is begin if rising_edge(clk) then if (reset = 1 ) then Q <= 0 ; elsif (ce = 1 ) then 2-4. Model the D flip-flop with synchronous reset and clock enable using behavioral modeling. Develop a testbench to test (generate input as shown) and validate the design. Simulate the design. Assign D input to SW0, reset to SW1, Clk to SW15, ce to SW2, and output Q to LED0. Verify the design in hardware. Artix

9 Lab Workbook Open Vivado and create a blank project called lab5_2_ Create and add the VHDL module that will model the D flip-flop with synchronous reset and clock enable Develop a testbench to test and analyze the design behavior. It should generate the input stimuli as shown in the above timing diagram Add the appropriate board related master XDC file to the project and edit it to include the related pins, assigning D to SW0, reset to SW1, Clk to SW15, ce to SW3, and Q to LED0. set_property CLOCK_DEDICATED_ROUTE FALSE [get_nets { clk }]; The above line of code needs to be added to the XDC file to allow SW15 be used as a clock Set the tcl.pre option in the Bitstream Settings to point to the provided lab5_prehook.tcl file. This Synthesize and implement the design. Look at the Project Summary and note that 1 BUFG and 5 IOs are used. The BUFG is used because the clock signal is used in the design Generate the bitstream, download it into the Basys3 or the Nexys4 DDR board, and verify the In digital circuits, another kind of flip-flop, called T or Toggle, is used to implement clock divider circuits. It can be used to divide the input by 2. If more than one T flip-flop is cascaded then the clock division can be 2 power of the number of flip-flops used. The T flip-flop has a T input (data), a clock input, and optionally reset and enable control signals. architecture behavior of T_ff is begin if falling_edge(clk) then Q <= not(q); The T flip-flop can also have a control signal called CE (clock enable) which will allow clock division to take place only when it is asserted. The following code models the functionality of the T flip-flop that is sensitive to a falling edge of clock and has active-low reset and active-high T control signals. architecture behavior of T_ff_enable is begin if falling_edge(clk) then if (enable = 1 ) and (T = 1 ) then Q <= not(q); else Q <= Q; Artix-7 5-9

### Modeling Registers and Counters

Lab Workbook Introduction When several flip-flops are grouped together, with a common clock, to hold related information the resulting circuit is called a register. Just like flip-flops, registers may

### CHAPTER 11 LATCHES AND FLIP-FLOPS

CHAPTER 11 LATCHES AND FLIP-FLOPS This chapter in the book includes: Objectives Study Guide 11.1 Introduction 11.2 Set-Reset Latch 11.3 Gated D Latch 11.4 Edge-Triggered D Flip-Flop 11.5 S-R Flip-Flop

### DIGITAL 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

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

Objectives Having read this workbook you should be able to: recognise the arrangement of NAND gates used to form an S-R flip-flop. describe how such a flip-flop can be SET and RESET. describe the disadvantage

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

CDA 3200 Digital Systems Instructor: Dr. Janusz Zalewski Developed by: Dr. Dahai Guo Spring 2012 Outline SR Latch D Latch Edge-Triggered D Flip-Flop (FF) S-R Flip-Flop (FF) J-K Flip-Flop (FF) T Flip-Flop

### Lesson 12 Sequential Circuits: Flip-Flops

Lesson 12 Sequential Circuits: Flip-Flops 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

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

8.1 Objectives To design digital counter circuits using JK-Flip-Flop. To implement counter using 74LS193 IC. 8.2 Introduction Circuits for counting events are frequently used in computers and other digital

### Sequential 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

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

Latches, the D Flip-Flop & Counter Design ECE 52A Winter 22 Reading Assignment Brown and Vranesic 7 Flip-Flops, Registers, Counters and a Simple Processor 7. Basic Latch 7.2 Gated SR Latch 7.2. Gated SR

### Module 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

### 7. Latches and Flip-Flops

Chapter 7 Latches and Flip-Flops Page 1 of 18 7. Latches and Flip-Flops Latches and flip-flops are the basic elements for storing information. One latch or flip-flop can store one bit of information. The

### Chapter 8. Sequential Circuits for Registers and Counters

Chapter 8 Sequential Circuits for Registers and Counters Lesson 3 COUNTERS Ch16L3- "Digital Principles and Design", Raj Kamal, Pearson Education, 2006 2 Outline Counters T-FF Basic Counting element State

### Modeling Sequential Elements with Verilog. Prof. Chien-Nan Liu TEL: 03-4227151 ext:34534 Email: jimmy@ee.ncu.edu.tw. Sequential Circuit

Modeling Sequential Elements with Verilog Prof. Chien-Nan Liu TEL: 03-4227151 ext:34534 Email: jimmy@ee.ncu.edu.tw 4-1 Sequential Circuit Outputs are functions of inputs and present states of storage elements

### Chapter 9 Latches, Flip-Flops, and Timers

ETEC 23 Programmable Logic Devices Chapter 9 Latches, Flip-Flops, and Timers Shawnee State University Department of Industrial and Engineering Technologies Copyright 27 by Janna B. Gallaher Latches A temporary

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

SEQUENTIAL CIRCUITS http://www.tutorialspoint.com/computer_logical_organization/sequential_circuits.htm Copyright tutorialspoint.com The combinational circuit does not use any memory. Hence the previous

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

Counters Some digital circuits are designed for the purpose of counting and this is when counters become useful. Counters are made with flip-flops, they can be asynchronous or synchronous and they can

### Engr354: Digital Logic Circuits

Engr354: igital Circuits Chapter 7 Sequential Elements r. Curtis Nelson Sequential Elements In this chapter you will learn about: circuits that can store information; Basic cells, latches, and flip-flops;

### Memory 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

### Sequential Logic Design Principles.Latches and Flip-Flops

Sequential Logic Design Principles.Latches and Flip-Flops Doru Todinca Department of Computers Politehnica University of Timisoara Outline Introduction Bistable Elements Latches and Flip-Flops S-R Latch

### ETEC 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

### Experiment # 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

### Contents COUNTER. Unit III- Counters

COUNTER Contents COUNTER...1 Frequency Division...2 Divide-by-2 Counter... 3 Toggle Flip-Flop...3 Frequency Division using Toggle Flip-flops...5 Truth Table for a 3-bit Asynchronous Up Counter...6 Modulo

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

LAB #4 Sequential Logic, Latches, Flip-Flops, Shift Registers, and Counters LAB OBJECTIVES 1. Introduction to latches and the D type flip-flop 2. Use of actual flip-flops to help you understand sequential

### Counters and Decoders

Physics 3330 Experiment #10 Fall 1999 Purpose Counters and Decoders In this experiment, you will design and construct a 4-bit ripple-through decade counter with a decimal read-out display. Such a counter

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

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

### WEEK 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

### Sequential Logic: Clocks, Registers, etc.

ENEE 245: igital Circuits & Systems Lab Lab 2 : Clocks, Registers, etc. ENEE 245: igital Circuits and Systems Laboratory Lab 2 Objectives The objectives of this laboratory are the following: To design

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

### ECE232: Hardware Organization and Design. Part 3: Verilog Tutorial. http://www.ecs.umass.edu/ece/ece232/ Basic Verilog

ECE232: Hardware Organization and Design Part 3: Verilog Tutorial http://www.ecs.umass.edu/ece/ece232/ Basic Verilog module ();

### ECE380 Digital Logic

ECE38 igital Logic Flip-Flops, Registers and Counters: Flip-Flops r.. J. Jackson Lecture 25- Flip-flops The gated latch circuits presented are level sensitive and can change states more than once during

### Digital Logic Design Sequential circuits

Digital Logic Design Sequential circuits Dr. Eng. Ahmed H. Madian E-mail: ahmed.madian@guc.edu.eg Dr. Eng. Rania.Swief E-mail: rania.swief@guc.edu.eg Dr. Eng. Ahmed H. Madian Registers An n-bit register

### Theory of Logic Circuits. Laboratory manual. Exercise 3

Zakład Mikroinformatyki i Teorii Automatów yfrowych Theory of Logic ircuits Laboratory manual Exercise 3 Bistable devices 2008 Krzysztof yran, Piotr zekalski (edt.) 1. lassification of bistable devices

### Combinational Logic Design Process

Combinational Logic Design Process Create truth table from specification Generate K-maps & obtain logic equations Draw logic diagram (sharing common gates) Simulate circuit for design verification Debug

### EXPERIMENT 8. Flip-Flops and Sequential Circuits

EXPERIMENT 8. Flip-Flops and Sequential Circuits I. Introduction I.a. Objectives The objective of this experiment is to become familiar with the basic operational principles of flip-flops and counters.

### CS311 Lecture: Sequential Circuits

CS311 Lecture: Sequential Circuits Last revised 8/15/2007 Objectives: 1. To introduce asynchronous and synchronous flip-flops (latches and pulsetriggered, plus asynchronous preset/clear) 2. To introduce

### ASYNCHRONOUS 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

### 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.

equential Logic o far we have investigated combinational logic for which the output of the logic devices/circuits depends only on the present state of the inputs. In sequential logic the output of the

### CHAPTER 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

### CSE140: Components and Design Techniques for Digital Systems

CE4: Components and esign Techniques for igital ystems Tajana imunic osing ources: Where we are now What we ve covered so far (Chap -5, App. A& B) Number representations Boolean algebra OP and PO Logic

### DDS. 16-bit Direct Digital Synthesizer / Periodic waveform generator Rev. 1.4. Key Design Features. Block Diagram. Generic Parameters.

Key Design Features Block Diagram Synthesizable, technology independent VHDL IP Core 16-bit signed output samples 32-bit phase accumulator (tuning word) 32-bit phase shift feature Phase resolution of 2π/2

### Digital 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.

### Set-Reset (SR) Latch

et-eset () Latch Asynchronous Level sensitive cross-coupled 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 cross-coupled Nand gates

### 9/14/2011 14.9.2011 8:38

Algorithms and Implementation Platforms for Wireless Communications TLT-9706/ TKT-9636 (Seminar Course) BASICS OF FIELD PROGRAMMABLE GATE ARRAYS Waqar Hussain firstname.lastname@tut.fi Department of Computer

### Digital 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

### EC313 - VHDL State Machine Example

EC313 - VHDL State Machine Example One of the best ways to learn how to code is seeing a working example. Below is an example of a Roulette Table Wheel. Essentially Roulette is a game that selects a random

### VHDL GUIDELINES FOR SYNTHESIS

VHDL GUIDELINES FOR SYNTHESIS Claudio Talarico For internal use only 1/19 BASICS VHDL VHDL (Very high speed integrated circuit Hardware Description Language) is a hardware description language that allows

### RAPID PROTOTYPING OF DIGITAL SYSTEMS Second Edition

RAPID PROTOTYPING OF DIGITAL SYSTEMS Second Edition A Tutorial Approach James O. Hamblen Georgia Institute of Technology Michael D. Furman Georgia Institute of Technology KLUWER ACADEMIC PUBLISHERS Boston

### Lecture 8: Synchronous Digital Systems

Lecture 8: Synchronous Digital Systems The distinguishing feature of a synchronous digital system is that the circuit only changes in response to a system clock. For example, consider the edge triggered

### ECE 3401 Lecture 7. Concurrent Statements & Sequential Statements (Process)

ECE 3401 Lecture 7 Concurrent Statements & Sequential Statements (Process) Concurrent Statements VHDL provides four different types of concurrent statements namely: Signal Assignment Statement Simple Assignment

### EE 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,

### Master/Slave Flip Flops

Master/Slave Flip Flops Page 1 A Master/Slave Flip Flop ( Type) Gated latch(master) Gated latch (slave) 1 Gate Gate GATE Either: The master is loading (the master in on) or The slave is loading (the slave

### Lab 1: Introduction to Xilinx ISE Tutorial

Lab 1: Introduction to Xilinx ISE Tutorial This tutorial will introduce the reader to the Xilinx ISE software. Stepby-step instructions will be given to guide the reader through generating a project, creating

### Counters. 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 flip-flop values themselves, serves as the output. The output value increases by one on each clock cycle.

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

IE1204 Digital Design F12: Asynchronous Sequential Circuits (Part 1) Elena Dubrova KTH / ICT / ES dubrova@kth.se BV pp. 584-640 This lecture IE1204 Digital Design, HT14 2 Asynchronous Sequential Machines

### BINARY 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.

### Fig1-1 2-bit asynchronous counter

Digital electronics 1-Sequential circuit counters Such a group of flip- flops is a counter. The number of flip-flops used and the way in which they are connected determine the number of states and also

### 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

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

Flip-Flops and Sequential Circuit Design ECE 52 Winter 22 Reading ssignment Brown and Vranesic 7 Flip-Flops, Registers, Counters and a Simple Processor 7.5 T Flip-Flop 7.5. Configurable Flip-Flops 7.6

### Flip-Flops and Sequential Circuit Design

Flip-Flops and Sequential Circuit Design ECE 52 Winter 22 Reading ssignment Brown and Vranesic 7 Flip-Flops, Registers, Counters and a Simple Processor 7.5 T Flip-Flop 7.5. Configurable Flip-Flops 7.6

### Asynchronous 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

### Lecture-3 MEMORY: Development of Memory:

Lecture-3 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,

### CHAPTER 3 Boolean Algebra and Digital Logic

CHAPTER 3 Boolean Algebra and Digital Logic 3.1 Introduction 121 3.2 Boolean Algebra 122 3.2.1 Boolean Expressions 123 3.2.2 Boolean Identities 124 3.2.3 Simplification of Boolean Expressions 126 3.2.4

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

DIGITAL TECHNICS II Dr. Bálint Pődör Óbuda University, Microelectronics and Technology Institute 2. LECTURE: ELEMENTARY SEUENTIAL CIRCUITS: FLIP-FLOPS 1st year BSc course 2nd (Spring) term 2012/2013 1

### 16-bit ALU, Register File and Memory Write Interface

CS M152B Fall 2002 Project 2 16-bit ALU, Register File and Memory Write Interface Suggested Due Date: Monday, October 21, 2002 Actual Due Date determined by your Lab TA This project will take much longer

### State Machines in VHDL

State Machines in VHDL Implementing state machines in VHDL is fun and easy provided you stick to some fairly well established forms. These styles for state machine coding given here is not intended to

### COMBINATIONAL and SEQUENTIAL LOGIC CIRCUITS Hardware implementation and software design

PH-315 COMINATIONAL and SEUENTIAL LOGIC CIRCUITS Hardware implementation and software design A La Rosa I PURPOSE: To familiarize with combinational and sequential logic circuits Combinational circuits

### Chapter 5. Sequential Logic

Chapter 5 Sequential Logic Sequential Circuits (/2) Combinational circuits: a. contain no memory elements b. the outputs depends on the current inputs Sequential circuits: a feedback path outputs depends

### Asynchronous & Synchronous Reset Design Techniques - Part Deux

Clifford E. Cummings Don Mills Steve Golson Sunburst Design, Inc. LCDM Engineering Trilobyte Systems cliffc@sunburst-design.com mills@lcdm-eng.com sgolson@trilobyte.com ABSTRACT This paper will investigate

### Counters & Shift Registers Chapter 8 of R.P Jain

Chapter 3 Counters & Shift Registers Chapter 8 of R.P Jain Counters & Shift Registers Counters, Syllabus Design of Modulo-N ripple counter, Up-Down counter, design of synchronous counters with and without

### Prototyping ARM Cortex -A Processors using FPGA platforms

Prototyping ARM Cortex -A Processors using FPGA platforms Brian Sibilsky and Fredrik Brosser April 2016 Page 1 of 17 Contents Introduction... 3 Gating... 4 RAM Implementation... 7 esign Partitioning...

### GETTING STARTED WITH PROGRAMMABLE LOGIC DEVICES, THE 16V8 AND 20V8

GETTING STARTED WITH PROGRAMMABLE LOGIC DEVICES, THE 16V8 AND 20V8 Robert G. Brown All Rights Reserved August 25, 2000 Alta Engineering 58 Cedar Lane New Hartford, CT 06057-2905 (860) 489-8003 www.alta-engineering.com

### Technical Note. Micron NAND Flash Controller via Xilinx Spartan -3 FPGA. Overview. TN-29-06: NAND Flash Controller on Spartan-3 Overview

Technical Note TN-29-06: NAND Flash Controller on Spartan-3 Overview Micron NAND Flash Controller via Xilinx Spartan -3 FPGA Overview As mobile product capabilities continue to expand, so does the demand

### VHDL Test Bench Tutorial

University of Pennsylvania Department of Electrical and Systems Engineering ESE171 - Digital Design Laboratory VHDL Test Bench Tutorial Purpose The goal of this tutorial is to demonstrate how to automate

### Finite State Machine Design and VHDL Coding Techniques

Finite State Machine Design and VHDL Coding Techniques Iuliana CHIUCHISAN, Alin Dan POTORAC, Adrian GRAUR "Stefan cel Mare" University of Suceava str.universitatii nr.13, RO-720229 Suceava iulia@eed.usv.ro,

### A Verilog HDL Test Bench Primer Application Note

A Verilog HDL Test Bench Primer Application Note Table of Contents Introduction...1 Overview...1 The Device Under Test (D.U.T.)...1 The Test Bench...1 Instantiations...2 Figure 1- DUT Instantiation...2

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

June 8, 22 5:56 vra235_ch7 Sheet number Page number 349 black chapter 7 Flip-Flops, Registers, Counters, and a Simple Processor 7. Ng f3, h7 h6 349 June 8, 22 5:56 vra235_ch7 Sheet number 2 Page number

### Introduction to Programmable Logic Devices. John Coughlan RAL Technology Department Detector & Electronics Division

Introduction to Programmable Logic Devices John Coughlan RAL Technology Department Detector & Electronics Division PPD Lectures Programmable Logic is Key Underlying Technology. First-Level and High-Level

### Multiplexers Two Types + Verilog

Multiplexers Two Types + Verilog ENEE 245: Digital Circuits and ystems Laboratory Lab 7 Objectives The objectives of this laboratory are the following: To become familiar with continuous ments and procedural

### NTE2053 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

### Design and Implementation of Vending Machine using Verilog HDL

2011 2nd International Conference on Networking and Information Technology IPCSIT vol.17 (2011) (2011) IACSIT Press, Singapore Design and Implementation of Vending Machine using Verilog HDL Muhammad Ali

### Finite State Machine Design A Vending Machine

LAB 6 Finite State Machine Design A Vending Machine You will learn how turn an informal sequential circuit description into a formal finite-state machine model, how to express it using ABEL, how to simulate

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

Digital Logic Design Basics Combinational Circuits Sequential Circuits Pu-Jen Cheng Adapted from the slides prepared by S. Dandamudi for the book, Fundamentals of Computer Organization and Design. Introduction

### Lecture 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 Min-elay

### Registers & Counters

Objectives This section deals with some simple and useful sequential circuits. Its objectives are to: Introduce registers as multi-bit storage devices. Introduce counters by adding logic to registers implementing

### Using Altera MAX Series as Microcontroller I/O Expanders

2014.09.22 Using Altera MAX Series as Microcontroller I/O Expanders AN-265 Subscribe Many microcontroller and microprocessor chips limit the available I/O ports and pins to conserve pin counts and reduce

### The 104 Duke_ACC Machine

The 104 Duke_ACC Machine The goal of the next two lessons is to design and simulate a simple accumulator-based processor. The specifications for this processor and some of the QuartusII design components

### Digital Design Verification

Digital Design Verification Course Instructor: Debdeep Mukhopadhyay Dept of Computer Sc. and Engg. Indian Institute of Technology Madras, Even Semester Course No: CS 676 1 Verification??? What is meant

### DIGITAL ELECTRONICS. Counters. By: Electrical Engineering Department

Counters By: Electrical Engineering Department 1 Counters Upon completion of the chapter, students should be able to:.1 Understand the basic concepts of asynchronous counter and synchronous counters, and

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

DIGITAL TECHNICS II Dr. Bálint Pődör Óbuda University, Microelectronics and Technology Institute 4. LECTURE: COUNTERS AND RELATED 2nd (Spring) term 2012/2013 1 4. LECTURE: COUNTERS AND RELATED 1. Counters,

### ECE410 Design Project Spring 2008 Design and Characterization of a CMOS 8-bit Microprocessor Data Path

ECE410 Design Project Spring 2008 Design and Characterization of a CMOS 8-bit Microprocessor Data Path Project Summary This project involves the schematic and layout design of an 8-bit microprocessor data

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

Chapter 7 Registers & Register Transfers J. J. Shann J.J. Shann Chapter Overview 7- Registers and Load Enable 7-2 Register Transfers 7-3 Register Transfer Operations 7-4 A Note for VHDL and Verilog Users

### 路 論 Chapter 15 System-Level Physical Design

Introduction to VLSI Circuits and Systems 路 論 Chapter 15 System-Level Physical Design Dept. of Electronic Engineering National Chin-Yi University of Technology Fall 2007 Outline Clocked Flip-flops CMOS

### Source-Synchronous Serialization and Deserialization (up to 1050 Mb/s) Author: NIck Sawyer

Application Note: Spartan-6 FPGAs XAPP1064 (v1.2) November 19, 2013 Source-Synchronous Serialization and Deserialization (up to 1050 Mb/s) Author: NIck Sawyer Summary Spartan -6 devices contain input SerDes

### LAB #3 VHDL RECOGNITION AND GAL IC PROGRAMMING USING ALL-11 UNIVERSAL PROGRAMMER

LAB #3 VHDL RECOGNITION AND GAL IC PROGRAMMING USING ALL-11 UNIVERSAL PROGRAMMER OBJECTIVES 1. Learn the basic elements of VHDL that are implemented in Warp. 2. Build a simple application using VHDL and

### Using Xilinx ISE for VHDL Based Design

ECE 561 Project 4-1 - Using Xilinx ISE for VHDL Based Design In this project you will learn to create a design module from VHDL code. With Xilinx ISE, you can easily create modules from VHDL code using

### Design Example: Counters. Design Example: Counters. 3-Bit Binary Counter. 3-Bit Binary Counter. Other useful counters:

Design Eample: ers er: a sequential circuit that repeats a specified sequence of output upon clock pulses. A,B,C,, Z. G, O, T, E, R, P, S,!.,,,,,,,7. 7,,,,,,,.,,,,,,,,,,,. Binary counter: follows the binary

### Cascaded Counters. Page 1 BYU

Cascaded Counters Page 1 Mod-N Counters Generally we are interested in counters that count up to specific count values Not just powers of 2 A mod-n counter has N states Counts from 0 to N-1 then rolls