2003 IC/CAD Contest Problem 5: Clock Tree Optimization for Useful Skew

Size: px
Start display at page:

Download "2003 IC/CAD Contest Problem 5: Clock Tree Optimization for Useful Skew"

Transcription

1 2003 IC/CAD Contest Problem 5: Clock Tree Optimization for Useful Skew Source: Global UniChip Corp. February 11, 2003, revised on March 21, 2003 & April 22, Introduction There are two approaches to resolve the timing violation of a critical path. One is to apply logic optimization technique to the path for reducing its path delay, and the other is to adjust clock arrival times of the starting flip-flop and ending flip-flop of that path such that the starting flip-flop can launch data earlier or the ending flip-flop can latch data later to compensate the timing slack due to timing violation. For those critical paths whose logic levels are too high and are difficult to be optimized, the later technique would be much effective. The clock latency of a flip-flop s clock pin is the path delay starting from clock root through the distribution cells, and ending at the clock pin (leaf pin). In other words, the arrival time of a flip-flop s clock pin is its clock latency. The clock latency of a clock tree is the maximum clock latency from clock root to any leaf pin. The clock skew of two flip-flops is the difference of their clock latencies, and the clock skew of a clock tree is the maximum difference among the clock latencies of the leaf pins. As an example shown in Fig. 1, the arrival times (clock latencies) of F1.CK, F2.CK, and F3.CK all are 2ns, and thus the clock latency of clock tree CLK is 2ns, where for example F1.CK stands for CK pin of flip-flop F1. The clock skew of F1.CK and F2.CK is 0ns, and the clock skew of clock tree CLK is 0ns as well. For another example shown in Fig. 3, the clock latencies of F1.CK, F2.CK, and F3.CK are 1.9ns, 2.4ns, and 2ns respectively, and the clock latency of clock tree CLK is 2.4ns. The clock skew of F1.CK and F2.CK is 0.5ns (2.4ns 1.9ns) that is also the clock skew of CLK. Cycle delay Tck12=10ns Tck23=10ns from CK to CK Tp12=t11+t12=10.4ns Tp23=t21+t22=9.5ns Data path delay Ts2 = 0.1ns Ts3 = 0.1ns CLK F1 F2 F3 D Q D Q D Q t11 CK CK CK Ta1_CK = 2ns t12 Ts2 Ts3 t21 t22 Ta2_CK = 2ns Ta3_CK = 2ns Fig 1. A design with timing violations 1

2 t11: cell delay from F1.CK to F1.Q t12: path delay from F1.Q to F2.D Tp12: path delay from F1.CK to F2.D (t11+t12) Ta1_CK: arrival time of F1.CK Tck12: the cycle delay from F1.CK to F2.CK Ts2: setup time of F2.D w.r.t. F2.CK Tr2_D: the required time of F2.D Ta2_D: the arrival time of F2.D CLK F1.CK F2.CK Clock rise 2ns Ta1_CK Ta2_CK Clock Cycle m Clock Cycle m+1 Clock cycle =10ns 2ns Tck12 = 10ns Next clock rise F2.D Tr2_D = 11.9ns Ts2= 0.1ns Data Ready Tp12 = 10.4ns Ta2_D = 12.4ns Slack2 = -0.5ns Fig 2. Timing diagram of Fig. 1 In Fig 1, the clock latency and clock skew of CLK are 2ns and 0ns, respectively. Assume that the clock cycle time is 10ns, both of Ts2 and Ts3 are 0.1ns, and the data path delays of Tp12 and Tp23 are 10.4ns and 9.5ns, respectively. By referring to the timing diagram shown in Fig. 2, the data launched at F1 (F2) at clock cycle m is to be captured at F2 (F3) at clock cycle m+1. Thus, the data required time of F2.D and F3.D are as follows. Tr2_D = (Clock cycle time) + (F2.CK clock latency) (F2.D setup time) = 10ns + 2ns 0.1ns = 11.9ns Tr3_D = (Clock cycle time) + (F3.CK clock latency) (F3.D setup time) = 10ns + 2ns 0.1ns = 11.9ns And, the data arrival times are Ta2_D = (F1.CK clock latency) + (F1.CK to F2.D path delay) = 2ns ns = 12.4ns Ta3_D = (F2.CK clock latency) + (F2.CK to F3.D path delay) = 2ns + 9.5ns = 11.5ns Thus, we can find the timing slacks are Slack2 = Tr2_D Ta2_D = -0.5ns Negative timing slack (setup time) Slack3 = Tr3_D Ta3_D = 0.4ns Meet timing requirement. There is 0.5ns negative timing slack in the critical path from F1.CK to F2.D. 2

3 Cycle delay Tck12=10.5ns Tck23=9.6ns from CK to CK Tp12=10.4ns Tp23=9.5ns Data path delay Ts2 = 0.1ns Ts3 = 0.1ns D Q D Q D Q F1 F2 F3 CK CK CK Ta1_CK = 1.9ns 2.4ns 2.0ns Fig 3. A design without timing violation Clock rise Clock Cycle m Clock Cycle m+1 Clock cycle =10ns Next clock rise CLK F1.CK F2.CK 1.9ns Tck12=10.5ns 2.4ns F2.D Tr2_D=12.3ns Tp12=10.4ns Ta2_D=12.3ns Data Ready Ts2= 0.1ns Fig 4. Timing diagram of Fig. 3 Slack2 = 0ns To resolve the timing violation above, one can adjust the clock latencies of F1 and F2, and let F1 launches data earlier and F2 captures data later to compensate the negative timing slack. Fig 3 demonstrates an example of fixing the timing violation, in which the data required times of F2.D and F3.D are Tr2_D = (Clock cycle time) + (F2.CK clock latency) (F2.D setup time) = 10ns + 2.4ns 0.1ns = 12.3ns Tr3_D = (Clock cycle time) + (F3.CK clock latency) (F3.D setup time) = 10ns + 2ns 0.1ns = 11.9ns And, the data arrival times are Ta2_D = (F1.CK clock latency) + (F1.CK to F2.D path delay) = 1.9ns ns = 12.3ns 3

4 Ta3_D = (F2.CK clock latency) + (F2.CK to F3.D path delay) = 2.4ns + 9.5ns = 11.9ns Now there is no more setup time violations as follows. Slack2 = Tr2_D Ta2_D = 0.0ns Meet timing requirement. Slack3 = Tr3_D Ta3_D = 0.0ns Meet timing requirement. 2. Problem Description Given (1) a design that has been done cell placement and clock tree synthesis, (2) a static timing report containing all critical paths (maximum delay paths) that are between any two flip-flops, from primary inputs to flip-flops, and from flip-flops to primary outputs, (3) Timing model of clock buffers, the developed software has to apply clock tree optimization techniques such as buffer insertion, gate resizing, and buffer removal, and consider the placement of clock buffers to reduce the number of setup time violation paths and the total negative slack. Basically, one has to take not only setup time problems but also hold time problems into account when applying clock tree optimization to resolve timing violations. Resolving setup time violations may result in new hold time violations, and vice versa. To simply this problem, the contestants need to take care setup time violations only and ignore all hold time violations. 3. Input The default time, capacitance, and distance (coordinate) units are in nano-second (ns), pico-fara (pf), and micron-meter (um), respectively. (1). Design file (design.def) The format of the design file is as follows. DIEAREA (lower-left coordinate) (upper-right coordinate) PINS Pin_name1 Direction X1-coordinate Y1-coordinate Pin_name2 Direction X2-coordinate Y2-coordinate END PINS COMPONENTS Instance_Name1 Cell_Name1 X3-coordinate Y3-coordinate Instance_Name2 Cell_Name1 X4-coordinate Y4-coordinate END COMPONENTS NET 4

5 Net_Name1 Type Instance_Name1.pin1 Instance_Name2.pin1. Net_Name2 Type Instance_Name4.pin2 Instance_Name5.pin2.. END NET lower-left coordinate: the coordinate at the lower-left corner of the die. upper-right coordinate: the coordinate at the upper-right corner of the die Pin_name: the pin name of input, output, and in/out pins Direction: the direction of the corresponding pin. It can be IN, OUT, or INOUT. X-coordinate: the coordinate in X-axis. Y-coordinate: the coordinate in Y-axis. Instance_Name: the instance name of a placed cell. Cell_Name: the cell name of a placed cell. Net_Name: the name of an interconnect. Type: the type of the specified net. It can be CLOCK or SIGNAL. Instance_Name.pin: the pin name of the cell connected to the net. For example, u1/u10/f1.ck represents that the instance name is u1/u10/f1 and CK pin is connected to the net. The slash / stands for hierarchy divider. The sequence of specified instances must be the driving cell first and followed by driven cells. (2). Static timing report file (timing.inf) Note that, in this problem, we only consider setup time constraints. The static timing report file contains the timing information of the critical paths (maximum delay paths) that are between any two flip-flops, from primary inputs to flip-flops, and from flip-flops to primary outputs. The format is defined as follows: #start_point end_point path_delay setup cap s_clk e_clk slack data_in[0] u0/rg_ u1/u10/f1 u1/u10/f u1/u10/f2 u2/f u1/rg_1 u1/u10/f u1/u10/f2 add_out[5] The line begins with # is a comment. start_point: a primary input port or a flip-flop instance name. end_point: a flip-flop instance name or a primary output port. path_delay: the maximum path delay from the start_point clock pin to the end_point data pin. setup: the setup time requirement of the end_point flip-flop. 5

6 cap: the clock pin capacitance of the end_point if the end_point is a flip-flop. s_clk: the clock latency of the start_point clock pin. e_clk: the clock latency of the end_point clock pin. The slack is the required time subtracts the arrival time of the end_point. In the example above, the second (third) row demonstrates the timing information of the path between flip-flops F1 and F2 (F2 and F3) depicted in Fig. 1. The instance names of F1, F2, and F3 are u1/u10/f1, u1/u10/f2, and u2/f3, respectively. data_in[0] is a primary input port and add_out[5] is a preminary output port. (3). Clock buffer s timing model (clkbuf.lib) The given timing model is in Synopsys.lib format and contains timing information and input pin capacitance of clock buffers and inverters only. It is a two-dimension table-look-up model. The timing is related to the input transition time and the output load. Below is an example of the timing model: lu_table_template(delay_template_7x7) { variable_1 : input_net_transition; variable_2 : total_output_net_capacitance; index_1 ("1000, 1001, 1002, 1003, 1004, 1005, 1006"); index_2 ("1000, 1001, 1002, 1003, 1004, 1005, 1006"); cell (CLKBUFX1) { pin(a) { direction : input; capacitance : ; pin(y) { direction : output; capacitance : 0.0; function : "A"; timing() { related_pin : "A"; timing_sense : positive_unate; cell_rise(delay_template_7x7) { index_1 ("0.03, 0.1, 0.4, 0.9, 1.5, 2.2, 3"); index_2 (" , 0.021, , 0.084, 0.147, 0.231, "); values ( \ " , , , , , , ", \ " , , , , , , ", \ " , , , , , , ", \ " , , , , , , ", \ " , , , , , , ", \ " , , , , , , ", \ " , , , , , , "); rise_transition(delay_template_7x7) { index_1 ("0.03, 0.1, 0.4, 0.9, 1.5, 2.2, 3"); index_2 (" , 0.021, , 0.084, 0.147, 0.231, "); values (\ " , , , , , , ", \ " , , , , , , ", \ " , , , , , , ", \ " , , , , , , ", \ " , , , , , , ", \ " , , , , , , ", \ " , , , , , , "); Input Capacitance 6

7 cell_fall(delay_template_7x7) { index_1 ("0.03, 0.1, 0.4, 0.9, 1.5, 2.2, 3"); index_2 (" , 0.021, , 0.084, 0.147, 0.231, "); values ( \ " , , , , , , ", \ " , , , , , , ", \ " , , , , , , ", \ " , , , , , , ", \ " , , , , , , ", \ " , , , , , , ", \ " , , , , , , "); fall_transition(delay_template_7x7) { index_1 ("0.03, 0.1, 0.4, 0.9, 1.5, 2.2, 3"); index_2 (" , 0.021, , 0.084, 0.147, 0.231, "); values ( \ " , , , , , , ", \ " , , , , , , ", \ " , , , , , , ", \ " , , , , , , ", \ " , , , , , , ", \ " , , , , , , ", \ " , , , , , , "); The lu_table_template defines the template of the look-up-table. This is a 2-dimension table, where the first index denotes the input net transition time and the second index denotes the total output net capacitance. The output net capacitance includes net load and the input pin load of driven cells. Assume that a CLKBUFX2 buffer drives three CLKBUFX1 and its net load is 10pf. Then, the total output net capacitance is pf (10pf + 3 x pf). Both indexes have 7 elements. The cell_rise and cell_fall groups define cell s rising delay and falling delay of the output pin that related to an input pin. In the example, when input net transition is 0.1ns and the output net capacitance is pf, the cell_rise delay is ns. The rise_transistion and fall_transistion groups define cell s output pin transition time. In the example, when input net transition is 0.1ns and the output net capacitance is pf, the rise_transition time is ns. The output pin transition is used as the input net transition for the delay calculation of next stage. If the input net transition and/or the output net capacitance are not exactly exist in the indexes, the software should use interpolation to calculate the timing. For the details of Synopsys timing model format, please refer to Synopsys Library Compiler Manual. (4). Timing constraint file (timing.con) Timing constraint file specifies the clock cycle time, and the input delay and output delay 7

8 of primary IOs. The format is defined as follows: Clock_cycle clock_name clock_cycle_time Input_delay input_pin_name input_delay_time Output_delay output_pin_name output_delay_time Clock_cycle, Input_delay, and Output_delay are reserved keywords. Input_delay and Output_delay are the external delays of an input pin and an output pin respectively, whose definitions are identical to that defined in Synopsys PrimeTime. As the example shown in Fig. 1 and the example of timing.inf shown in page 5, the timing constraint file is as follows. Clock_cycle CLK 10 Input_delay data_in[0] 4.8 Output_delay add_out[5] Output (1). Design file with optimized clock tree (design_opt.def) The format of the output design file should be identical to that of the input design file. The output design file should contain entire design including optimized clock tree. All placed standard cells except clock buffers cannot be changed or moved. It is not allowed to place clock buffers outside the die area. In other words, the lower-left coordinate and the upper-right coordinate should be the same as those of the input design file. The new placed clock buffers are allowed to overlap the existing placed standard cells. (2). Clock tree timing report (clock.rpt) The format of the clock tree timing report is as below: #start_point end_point s_clk1 e_clk1 slack1 s_clk2 e_clk2 slack2 data_in[0] u0/rg_ u1/u10/f1 u1/u10/f u1/u10/f2 u2/f u1/rg_1 u1/u10/f u1/u10/f2 add_out[5] start_point: a primary input port or a flip-flop instance name. end_point: a flip-flop instance name or a primary output port. 8

9 s_clk1: the original clock latency of the start_point clock pin. e_clk1: the original clock latency of the end_point clock pin. slack1: the original timing slack. s_clk2: the optimized clock latency of the start_point clock pin. e_clk2: the optimized clock latency of the end_point clock pin. slack2: the optimized timing slack. In the example above, the contents of the first two columns are identical to those given in input timing report file (timing.inf), and the following three columns are identical to the last three columns in timing.inf as well. The second (third) row demonstrates the timing information of the path between flip-flops F1 and F2 (F2 and F3) depicted in Fig. 3. (3). Net load file (net_load.rpt) The net load file contains capacitance of all clock nets. The capacitance unit is in pf. # Net_Name capacitance CLK_L0_N CLK_L0_N CLK_L1_N The program doesn t need to perform real routing but it must use the given formula below to estimate the net load for calculating the delay of clock buffers. The formula to estimate the net load C of a driver pin is C = net _ length φ, all _ fanout φ = where the net_length is the net length from driving cell to the driven cell, its unit is in um and its formula is net _ length = X cell1 X cell 2 + Y cell1 Y cell 2 where the (X,Y) is the coordinates of a cell in X-axis and Y-axis, respectively. φ is a capacitance factor and its value is pf/um. 5. Delay Calculation In this problem, we assume the resistance of interconnect is 0 ohm and thus the there is 9

10 no interconnect delay for all nets. The effects of net load, pin capacitance of driven clock buffers, and pin capacitance of flip-flop s clock pin should be taken into account when calculating the cell delay of driving clock buffer. The input capacitances of clock buffers and flip-flops are specified in clock buffer s timing model and timing report file, respectively. Assume that the input transition times of all primary inputs are 0ns and all primary output capacitance are 0pf. 6. Language/Platform Language: C or C++ Platform: SUN OS/Solaris 7. Evaluation The number of setup time violation paths The maximum negative slack of setup time violations. The total negative slack of setup time violations The worst clock latency Run time Memory usage The correctness of net load calculation The maximum negative slack after optimization should be less than or equal to that before optimization. The total negative slack is the summation of all negative setup time slacks. The clock latency should be as less as possible. The final results will be compared with the report from Synopsys PrimeTime, in which the output design (design_opt.def) as well as clock net load (net_load.rpt) will be back-annotated to PrimaryTime to analyze the timing of clock buffers, the clock latencies of all flip-flop s clock pins, and the setup time of all critical paths. Again, all hold time violations can be ignored. 8. Reference [1] J.P. Fishburn, Clock Skew Optimization, IEEE Transaction on Computers, 39(7): , [2] N. Masheshwari and S.S. Sapatnekar, Timing Analysis and Optimization of Sequential Circuits, second edition, Kluwer Academic Publishers,

University of Texas at Dallas. Department of Electrical Engineering. EEDG 6306 - Application Specific Integrated Circuit Design

University of Texas at Dallas. Department of Electrical Engineering. EEDG 6306 - Application Specific Integrated Circuit Design University of Texas at Dallas Department of Electrical Engineering EEDG 6306 - Application Specific Integrated Circuit Design Synopsys Tools Tutorial By Zhaori Bi Minghua Li Fall 2014 Table of Contents

More information

How To Design A Chip Layout

How To Design A Chip Layout Spezielle Anwendungen des VLSI Entwurfs Applied VLSI design (IEF170) Course and contest Intermediate meeting 3 Prof. Dirk Timmermann, Claas Cornelius, Hagen Sämrow, Andreas Tockhorn, Philipp Gorski, Martin

More information

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

Topics 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. Two-phase clocking. Testing of combinational (Chapter 4) and sequential (Chapter

More information

LatticeECP3 High-Speed I/O Interface

LatticeECP3 High-Speed I/O Interface April 2013 Introduction Technical Note TN1180 LatticeECP3 devices support high-speed I/O interfaces, including Double Data Rate (DDR) and Single Data Rate (SDR) interfaces, using the logic built into the

More information

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

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 information

Alpha CPU and Clock Design Evolution

Alpha CPU and Clock Design Evolution Alpha CPU and Clock Design Evolution This lecture uses two papers that discuss the evolution of the Alpha CPU and clocking strategy over three CPU generations Gronowski, Paul E., et.al., High Performance

More information

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

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

More information

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

Modeling Latches and Flip-flops

Modeling Latches and Flip-flops 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,

More information

Lesson 12 Sequential Circuits: Flip-Flops

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

More information

Fairchild Solutions for 133MHz Buffered Memory Modules

Fairchild Solutions for 133MHz Buffered Memory Modules AN-5009 Fairchild Semiconductor Application Note April 1999 Revised December 2000 Fairchild Solutions for 133MHz Buffered Memory Modules Fairchild Semiconductor provides several products that are compatible

More information

High Fanout Without High Stress: Synthesis and Optimization of High-fanout Nets Using Design Compiler 2000.11

High Fanout Without High Stress: Synthesis and Optimization of High-fanout Nets Using Design Compiler 2000.11 High Fanout Without High Stress: Synthesis and Optimization of High-fanout Nets Using Design Compiler 2000.11 Rick Furtner Tensilica, Inc rfurtner@tensilica.com ABSTRACT High fanout nets, especially resets

More information

TIMING-DRIVEN PHYSICAL DESIGN FOR DIGITAL SYNCHRONOUS VLSI CIRCUITS USING RESONANT CLOCKING

TIMING-DRIVEN PHYSICAL DESIGN FOR DIGITAL SYNCHRONOUS VLSI CIRCUITS USING RESONANT CLOCKING TIMING-DRIVEN 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 information

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

More information

The.lib file is an ASCII representation of the timing and power parameters associated with any cell in a particular semiconductor technology

The.lib file is an ASCII representation of the timing and power parameters associated with any cell in a particular semiconductor technology Liberty Timing File The.lib file is an ASCII representation of the timing and power parameters associated with any cell in a particular semiconductor technology The timing and power parameters are obtained

More information

Lecture 5: Gate Logic Logic Optimization

Lecture 5: Gate Logic Logic Optimization Lecture 5: Gate Logic Logic Optimization MAH, AEN EE271 Lecture 5 1 Overview Reading McCluskey, Logic Design Principles- or any text in boolean algebra Introduction We could design at the level of irsim

More information

Low Power AMD Athlon 64 and AMD Opteron Processors

Low Power AMD Athlon 64 and AMD Opteron Processors Low Power AMD Athlon 64 and AMD Opteron Processors Hot Chips 2004 Presenter: Marius Evers Block Diagram of AMD Athlon 64 and AMD Opteron Based on AMD s 8 th generation architecture AMD Athlon 64 and AMD

More information

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

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

More information

NTE2053 Integrated Circuit 8 Bit MPU Compatible A/D Converter

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

More information

CHAPTER 11: Flip Flops

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

More information

Asynchronous IC Interconnect Network Design and Implementation Using a Standard ASIC Flow

Asynchronous IC Interconnect Network Design and Implementation Using a Standard ASIC Flow Asynchronous IC Interconnect Network Design and Implementation Using a Standard ASIC Flow Bradley R. Quinton Dept. of Electrical and Computer Engineering University of British Columbia bradq@ece.ubc.ca

More information

Testing Low Power Designs with Power-Aware Test Manage Manufacturing Test Power Issues with DFTMAX and TetraMAX

Testing Low Power Designs with Power-Aware Test Manage Manufacturing Test Power Issues with DFTMAX and TetraMAX White Paper Testing Low Power Designs with Power-Aware Test Manage Manufacturing Test Power Issues with DFTMAX and TetraMAX April 2010 Cy Hay Product Manager, Synopsys Introduction The most important trend

More information

Clock Management in a Gigabit Ethernet Physical Layer Transceiver Circuit Juan C. Diaz Agere Systems jdiaz@agere.com

Clock Management in a Gigabit Ethernet Physical Layer Transceiver Circuit Juan C. Diaz Agere Systems jdiaz@agere.com Clock Management in a Gigabit Ethernet Physical Layer Transceiver Circuit Juan C. Diaz Agere Systems jdiaz@agere.com Marta Saburit Agere Systems msaburit@agere.com Abstract This paper describes the clock

More information

Design Compiler Graphical Create a Better Starting Point for Faster Physical Implementation

Design Compiler Graphical Create a Better Starting Point for Faster Physical Implementation Datasheet Create a Better Starting Point for Faster Physical Implementation Overview Continuing the trend of delivering innovative synthesis technology, Design Compiler Graphical delivers superior quality

More information

Contents. Overview... 5-1 Memory Compilers Selection Guide... 5-2

Contents. Overview... 5-1 Memory Compilers Selection Guide... 5-2 Memory Compilers 5 Contents Overview... 5-1 Memory Compilers Selection Guide... 5-2 CROM Gen... 5-3 DROM Gen... 5-9 SPSRM Gen... 5-15 SPSRM Gen... 5-22 SPRM Gen... 5-31 DPSRM Gen... 5-38 DPSRM Gen... 5-47

More information

A Utility for Leakage Power Recovery within PrimeTime 1 SI

A Utility for Leakage Power Recovery within PrimeTime 1 SI within PrimeTime 1 SI Bruce Zahn LSI Corporation Bruce.Zahn@lsi.com ABSTRACT This paper describes a utility which is run within the PrimeTime SI signoff environment that recovers leakage power and achieves

More information

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.

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

More information

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

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

More information

Set-Reset (SR) Latch

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

More information

FF-Bond: Multi-bit Flip-flop Bonding at Placement CHANG-CHENG TSAI YIYU SHI GUOJIE LUO IRIS HUI-RU JIANG. IRIS Lab NCTU MST PKU

FF-Bond: Multi-bit Flip-flop Bonding at Placement CHANG-CHENG TSAI YIYU SHI GUOJIE LUO IRIS HUI-RU JIANG. IRIS Lab NCTU MST PKU FF-Bond: Multi-bit Flip-flop Bonding at Placement CHANG-CHENG TSAI YIYU SHI GUOJIE LUO IRIS HUI-RU JIANG IRIS Lab NCTU MST PKU ISPD-13 Outline 2 Introduction Preliminaries Problem formulation Algorithm

More information

IL2225 Physical Design

IL2225 Physical Design IL2225 Physical Design Nasim Farahini farahini@kth.se Outline Physical Implementation Styles ASIC physical design Flow Floor and Power planning Placement Clock Tree Synthesis Routing Timing Analysis Verification

More information

CHAPTER 11 LATCHES AND FLIP-FLOPS

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

More information

IMPLEMENTATION OF BACKEND SYNTHESIS AND STATIC TIMING ANALYSIS OF PROCESSOR LOCAL BUS(PLB) PERFORMANCE MONITOR

IMPLEMENTATION OF BACKEND SYNTHESIS AND STATIC TIMING ANALYSIS OF PROCESSOR LOCAL BUS(PLB) PERFORMANCE MONITOR International Journal of Engineering & Science Research IMPLEMENTATION OF BACKEND SYNTHESIS AND STATIC TIMING ANALYSIS OF PROCESSOR LOCAL BUS(PLB) PERFORMANCE MONITOR ABSTRACT Pathik Gandhi* 1, Milan Dalwadi

More information

Clocking. Figure by MIT OCW. 6.884 - Spring 2005 2/18/05 L06 Clocks 1

Clocking. 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 information

VHDL GUIDELINES FOR SYNTHESIS

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

More information

Demystifying Data-Driven and Pausible Clocking Schemes

Demystifying Data-Driven and Pausible Clocking Schemes Demystifying Data-Driven and Pausible Clocking Schemes Robert Mullins Computer Architecture Group Computer Laboratory, University of Cambridge ASYNC 2007, 13 th IEEE International Symposium on Asynchronous

More information

Clock Distribution Networks in Synchronous Digital Integrated Circuits

Clock Distribution Networks in Synchronous Digital Integrated Circuits Clock Distribution Networks in Synchronous Digital Integrated Circuits EBY G. FRIEDMAN Invited Paper Clock distribution networks synchronize the flow of data signals among synchronous data paths. The design

More information

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

More information

Chapter 13: Verification

Chapter 13: Verification Chapter 13: Verification Prof. Ming-Bo Lin Department of Electronic Engineering National Taiwan University of Science and Technology Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008-2010,

More information

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

EE 459/500 HDL Based Digital Design with Programmable Logic. Lecture 16 Timing and Clock Issues EE 459/500 HDL Based Digital Design with Programmable Logic Lecture 16 Timing and Clock Issues 1 Overview Sequential system timing requirements Impact of clock skew on timing Impact of clock jitter on

More information

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

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

More information

Measuring Metastability

Measuring Metastability Measuring Metastability Sandeep Mandarapu Department of Electrical and Computer Engineering, VLSI Design Research Laboratory, Southern Illinois University Edwardsville, Illinois, USA, 62025 ECE595: Masters

More information

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

DATA SHEET. HEF40193B MSI 4-bit up/down binary counter. For a complete data sheet, please also download: INTEGRATED CIRCUITS INTEGRATED CIRCUITS DATA SHEET For a complete data sheet, please also download: The IC04 LOCMOS HE4000B Logic Family Specifications HEF, HEC The IC04 LOCMOS HE4000B Logic Package Outlines/Information HEF,

More information

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

Introduction 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 information

Engr354: Digital Logic Circuits

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;

More information

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

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

More information

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

Latch Timing Parameters. Flip-flop 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 information

Theory of Logic Circuits. Laboratory manual. Exercise 3

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

More information

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

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

More information

ECE124 Digital Circuits and Systems Page 1

ECE124 Digital Circuits and Systems Page 1 ECE124 Digital Circuits and Systems Page 1 Chip level timing Have discussed some issues related to timing analysis. Talked briefly about longest combinational path for a combinational circuit. Talked briefly

More information

A Pausible Bisynchronous FIFO for GALS Systems

A 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 information

Status of the design of the TDC for the GTK TDCpix ASIC

Status of the design of the TDC for the GTK TDCpix ASIC Status of the design of the TDC for the GTK TDCpix ASIC Gianluca Aglieri Rinella, Lukas Perktold DLL design review meeting, 16 03 2011 Outline Introduction Purpose and objectives Reminder Challenges of

More information

路 論 Chapter 15 System-Level Physical Design

路 論 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

More information

STA - Static Timing Analysis. STA Lecturer: Gil Rahav Semester B, EE Dept. BGU. Freescale Semiconductors Israel

STA - Static Timing Analysis. STA Lecturer: Gil Rahav Semester B, EE Dept. BGU. Freescale Semiconductors Israel STA - Static Timing Analysis STA Lecturer: Gil Rahav Semester B, EE Dept. BGU. Freescale Semiconductors Israel Static Verification Flow RTL Domain Synthesis Functional Simulation Testbench Equivalence

More information

Route Power 10 Connect Powerpin 10.1 Route Special Route 10.2 Net(s): VSS VDD

Route Power 10 Connect Powerpin 10.1 Route Special Route 10.2 Net(s): VSS VDD SOCE Lab (2/2): Clock Tree Synthesis and Routing Lab materials are available at ~cvsd/cur/soce/powerplan.tar.gz Please untar the file in the folder SOCE_Lab before lab 1 Open SOC Encounter 1.1 % source

More information

Sequential 4-bit Adder Design Report

Sequential 4-bit Adder Design Report UNIVERSITY OF WATERLOO Faculty of Engineering E&CE 438: Digital Integrated Circuits Sequential 4-bit Adder Design Report Prepared by: Ian Hung (ixxxxxx), 99XXXXXX Annette Lo (axxxxxx), 99XXXXXX Pamela

More information

Sequential Circuits. Combinational Circuits Outputs depend on the current inputs

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

Quartus II Introduction for VHDL Users

Quartus II Introduction for VHDL Users Quartus II Introduction for VHDL Users This tutorial presents an introduction to the Quartus II software. It gives a general overview of a typical CAD flow for designing circuits that are implemented by

More information

ECE380 Digital Logic

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

More information

Sequential Circuit Design

Sequential Circuit Design Sequential Circuit Design Lan-Da Van ( 倫 ), Ph. D. Department of Computer Science National Chiao Tung University Taiwan, R.O.C. Fall, 2009 ldvan@cs.nctu.edu.tw http://www.cs.nctu.edu.tw/~ldvan/ Outlines

More information

Lecture 11: Sequential Circuit Design

Lecture 11: Sequential Circuit Design Lecture 11: Sequential Circuit esign Outline Sequencing Sequencing Element esign Max and Min-elay Clock Skew Time Borrowing Two-Phase Clocking 2 Sequencing Combinational logic output depends on current

More information

Module 3: Floyd, Digital Fundamental

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

More information

Lecture 10: Sequential Circuits

Lecture 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 Min-elay q Clock Skew q Time Borrowing

More information

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

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 A Sequential circuit contains: Storage elements:

More information

7. Latches and Flip-Flops

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

More information

ADQYF1A08. DDR2-1066G(CL6) 240-Pin O.C. U-DIMM 1GB (128M x 64-bits)

ADQYF1A08. DDR2-1066G(CL6) 240-Pin O.C. U-DIMM 1GB (128M x 64-bits) General Description ADQYF1A08 DDR2-1066G(CL6) 240-Pin O.C. U-DIMM 1GB (128M x 64-bits) The ADATA s ADQYF1A08 is a 128Mx64 bits 1GB DDR2-1066(CL6) SDRAM over clocking memory module, The SPD is programmed

More information

Lecture 7: Clocking of VLSI Systems

Lecture 7: Clocking of VLSI Systems Lecture 7: Clocking of VLSI Systems MAH, AEN EE271 Lecture 7 1 Overview Reading Wolf 5.3 Two-Phase 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 information

Layout of Multiple Cells

Layout of Multiple Cells Layout of Multiple Cells Beyond the primitive tier primitives add instances of primitives add additional transistors if necessary add substrate/well contacts (plugs) add additional polygons where needed

More information

Power Reduction Techniques in the SoC Clock Network. Clock Power

Power Reduction Techniques in the SoC Clock Network. Clock Power Power Reduction Techniques in the SoC Network Low Power Design for SoCs ASIC Tutorial SoC.1 Power Why clock power is important/large» Generally the signal with the highest frequency» Typically drives a

More information

Topics. Flip-flop-based sequential machines. Signals in flip-flop system. Flip-flop rules. Latch-based machines. Two-sided latch constraint

Topics. Flip-flop-based sequential machines. Signals in flip-flop system. Flip-flop rules. Latch-based machines. Two-sided latch constraint Topics Flip-flop-based sequential machines! Clocking disciplines. Flip-flop rules! Primary inputs change after clock (φ) edge.! Primary inputs must stabilize before next clock edge.! Rules allow changes

More information

Getting the Most Out of Synthesis

Getting the Most Out of Synthesis Outline Getting the Most Out of Synthesis Dr. Paul D. Franzon 1. Timing Optimization Approaches 2. Area Optimization Approaches 3. Design Partitioning References 1. Smith and Franzon, Chapter 11 2. D.Smith,

More information

RAM & ROM Based Digital Design. ECE 152A Winter 2012

RAM & ROM Based Digital Design. ECE 152A Winter 2012 RAM & ROM Based Digital Design ECE 152A Winter 212 Reading Assignment Brown and Vranesic 1 Digital System Design 1.1 Building Block Circuits 1.1.3 Static Random Access Memory (SRAM) 1.1.4 SRAM Blocks in

More information

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

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

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

More information

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

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

More information

Chapter 9 Latches, Flip-Flops, and Timers

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

More information

1. Memory technology & Hierarchy

1. Memory technology & Hierarchy 1. Memory technology & Hierarchy RAM types Advances in Computer Architecture Andy D. Pimentel Memory wall Memory wall = divergence between CPU and RAM speed We can increase bandwidth by introducing concurrency

More information

DEPARTMENT OF INFORMATION TECHNLOGY

DEPARTMENT OF INFORMATION TECHNLOGY DRONACHARYA GROUP OF INSTITUTIONS, GREATER NOIDA Affiliated to Mahamaya Technical University, Noida Approved by AICTE DEPARTMENT OF INFORMATION TECHNLOGY Lab Manual for Computer Organization Lab ECS-453

More information

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

Timing 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 information

INTEGRATED CIRCUITS. For a complete data sheet, please also download:

INTEGRATED CIRCUITS. For a complete data sheet, please also download: INTEGRATED CIRCUITS DATA SEET For a complete data sheet, please also download: The IC6 74C/CT/CU/CMOS ogic Family Specifications The IC6 74C/CT/CU/CMOS ogic Package Information The IC6 74C/CT/CU/CMOS ogic

More information

8 by 8 dot matrix LED displays with Cascadable Serial driver B32CDM8 B48CDM8 B64CDM8 General Description

8 by 8 dot matrix LED displays with Cascadable Serial driver B32CDM8 B48CDM8 B64CDM8 General Description 8 by 8 dot matrix LED displays with Cascadable Serial driver B32CDM8 B48CDM8 B64CDM8 General Description The B32CDM8, B48CDM8 and the B64CDM8 are 8 by 8 (row by column) dot matrix LED displays combined

More information

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

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

More information

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

The enable pin needs to be high for data to be fed to the outputs Q and Q bar. of 7 -Type flip-flop (Toggle switch) The -type flip-flops are used in prescalar/divider circuits and frequency phase detectors. Figure shows how the flip-flop (latch) can be made using -input logic circuits

More information

The 104 Duke_ACC Machine

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

More information

Combinational Logic Design Process

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

More information

Pmod peripheral modules are powered by the host via the interface s power and ground pins.

Pmod peripheral modules are powered by the host via the interface s power and ground pins. Digilent Pmod Interface Specification Revision: November 20, 2011 1300 NE Henley Court, Suite 3 Pullman, WA 99163 (509) 334 6306 Voice (509) 334 6300 Fax Introduction The Digilent Pmod interface is used

More information

CADENCE LAYOUT TUTORIAL

CADENCE LAYOUT TUTORIAL CADENCE LAYOUT TUTORIAL Creating Layout of an inverter from a Schematic: Open the existing Schematic Page 1 From the schematic editor window Tools >Design Synthesis >Layout XL A window for startup Options

More information

INTRODUCTION TO DIGITAL SYSTEMS. IMPLEMENTATION: MODULES (ICs) AND NETWORKS IMPLEMENTATION OF ALGORITHMS IN HARDWARE

INTRODUCTION TO DIGITAL SYSTEMS. IMPLEMENTATION: MODULES (ICs) AND NETWORKS IMPLEMENTATION OF ALGORITHMS IN HARDWARE INTRODUCTION TO DIGITAL SYSTEMS 1 DESCRIPTION AND DESIGN OF DIGITAL SYSTEMS FORMAL BASIS: SWITCHING ALGEBRA IMPLEMENTATION: MODULES (ICs) AND NETWORKS IMPLEMENTATION OF ALGORITHMS IN HARDWARE COURSE EMPHASIS:

More information

Sequential Logic Design Principles.Latches and Flip-Flops

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

More information

A New Paradigm for Synchronous State Machine Design in Verilog

A 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 information

The components. E3: Digital electronics. Goals:

The components. E3: Digital electronics. Goals: E3: Digital electronics Goals: Basic understanding of logic circuits. Become familiar with the most common digital components and their use. Equipment: 1 st. LED bridge 1 st. 7-segment display. 2 st. IC

More information

RAPID PROTOTYPING OF DIGITAL SYSTEMS Second Edition

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

More information

HEF4021B. 1. General description. 2. Features and benefits. 3. Ordering information. 8-bit static shift register

HEF4021B. 1. General description. 2. Features and benefits. 3. Ordering information. 8-bit static shift register Rev. 10 21 March 2016 Product data sheet 1. General description 2. Features and benefits 3. Ordering information The is an (parallel-to-serial converter) with a synchronous serial data input (DS), a clock

More information

MADR-009190-0001TR. Quad Driver for GaAs FET or PIN Diode Switches and Attenuators Rev. 4. Functional Schematic. Features.

MADR-009190-0001TR. Quad Driver for GaAs FET or PIN Diode Switches and Attenuators Rev. 4. Functional Schematic. Features. Features High Voltage CMOS Technology Four Channel Positive Voltage Control CMOS device using TTL input levels Low Power Dissipation Low Cost Lead-Free SOIC-16 Plastic Package Halogen-Free Green Mold Compound

More information

Low latency synchronization through speculation

Low 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 information

CSE140: Components and Design Techniques for Digital Systems

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

More information

AVR151: Setup and Use of the SPI. Introduction. Features. Atmel AVR 8-bit Microcontroller APPLICATION NOTE

AVR151: Setup and Use of the SPI. Introduction. Features. Atmel AVR 8-bit Microcontroller APPLICATION NOTE Atmel AVR 8-bit Microcontroller AVR151: Setup and Use of the SPI APPLICATION NOTE Introduction This application note describes how to set up and use the on-chip Serial Peripheral Interface (SPI) of the

More information

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

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

More information

Lecture-3 MEMORY: Development of Memory:

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,

More information

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

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

More information