ispmach 4000 Timing Model Design and Usage Guidelines

Similar documents
MACH 4 Timing and High Speed Design

ispmach 4A CPLD Family High Performance E 2 CMOS In-System Programmable Logic

MACH 4 CPLD Family. High Performance EE CMOS Programmable Logic

UltraLogic 128-Macrocell Flash CPLD

MACH 4 CPLD Family. High Performance EE CMOS Programmable Logic

UltraLogic 128-Macrocell ISR CPLD

SDO SDI MODE SCLK MODE

PEEL 18CV8-5/-7/-10/-15/-25 CMOS Programmable Electrically Erasable Logic Device

Combinational vs Sequential

DIGITAL SYSTEM FUNDAMENTALS (ECE421) DIGITAL ELECTRONICS FUNDAMENTAL (ECE422) LATCHES and FLIP-FLOPS

INTEGRATED CIRCUITS. PZ macrocell CPLD. Product specification 1997 Feb 20 IC27 Data Handbook

Introduction Actel Logic Modules Xilinx LCA Altera FLEX, Altera MAX Power Dissipation

L11/12: Reconfigurable Logic Architectures

Lecture 8: Sequential Logic

Single Channel LVDS Tx

A Tour of PLDs. PLD ARCHITECTURES. [Prof.Ben-Avi]

(CSC-3501) Lecture 7 (07 Feb 2008) Seung-Jong Park (Jay) CSC S.J. Park. Announcement

CSE140L: Components and Design Techniques for Digital Systems Lab. CPU design and PLDs. Tajana Simunic Rosing. Source: Vahid, Katz

Logic Design. Flip Flops, Registers and Counters

CHAPTER 11 LATCHES AND FLIP-FLOPS

Objectives. Combinational logics Sequential logics Finite state machine Arithmetic circuits Datapath

L12: Reconfigurable Logic Architectures

March 13, :36 vra80334_appe Sheet number 1 Page number 893 black. appendix. Commercial Devices

USE GAL DEVICES FOR NEW DESIGNS

Figure 1: segment of an unprogrammed and programmed PAL.

INTEGRATED CIRCUITS. PZ macrocell CPLD. Product specification 1997 Mar 05 IC27 Data Handbook

PALCE26V12 Family. 28-Pin EE CMOS Versatile PAL Device DISTINCTIVE CHARACTERISTICS GENERAL DESCRIPTION FINAL COM L: H-7/10/15/20 IND: H-10/15/20

Sequential Logic Basics

MACH220-10/12/15/20. Lattice Semiconductor. High-Density EE CMOS Programmable Logic DISTINCTIVE CHARACTERISTICS GENERAL DESCRIPTION BLOCK DIAGRAM

6.S084 Tutorial Problems L05 Sequential Circuits

Logic Design II (17.342) Spring Lecture Outline


2.6 Reset Design Strategy

11. Sequential Elements

2. Logic Elements and Logic Array Blocks in the Cyclone III Device Family

MUHAMMAD NAEEM LATIF MCS 3 RD SEMESTER KHANEWAL

CSE115: Digital Design Lecture 23: Latches & Flip-Flops

Digital Logic Design Sequential Circuits. Dr. Basem ElHalawany

Last time, we saw how latches can be used as memory in a circuit

Flip-Flops and Registers

MC54/74F568 MC54/74F569 4-BIT BIDIRECTIONAL COUNTERS (WITH 3-STATE OUTPUTS) 4-BIT BIDIRECTIONAL COUNTERS (WITH 3-STATE OUTPUTS)

Fifth Generation MACH Architecture

DIGITAL CIRCUIT LOGIC UNIT 9: MULTIPLEXERS, DECODERS, AND PROGRAMMABLE LOGIC DEVICES

DIGITAL CIRCUIT LOGIC UNIT 11: SEQUENTIAL CIRCUITS (LATCHES AND FLIP-FLOPS)

Introduction. NAND Gate Latch. Digital Logic Design 1 FLIP-FLOP. Digital Logic Design 1

Field Programmable Gate Arrays (FPGAs)

Sub-LVDS-to-Parallel Sensor Bridge

More on Flip-Flops Digital Design and Computer Architecture: ARM Edition 2015 Chapter 3 <98> 98

Latches, Flip-Flops, and Registers. Dr. Ouiem Bchir

RELATED WORK Integrated circuits and programmable devices

cascading flip-flops for proper operation clock skew Hardware description languages and sequential logic

MACH130-15/20. Lattice/Vantis. High-Density EE CMOS Programmable Logic

Advanced Devices. Registers Counters Multiplexers Decoders Adders. CSC258 Lecture Slides Steve Engels, 2006 Slide 1 of 20

Sequential logic. Circuits with feedback. How to control feedback? Sequential circuits. Timing methodologies. Basic registers

MC54/74F568 MC54/74F569 4-BIT BIDIRECTIONAL COUNTERS (WITH 3-STATE OUTPUTS) 4-BIT BIDIRECTIONAL COUNTERS (WITH 3-STATE OUTPUTS)

Unit 11. Latches and Flip-Flops

ELE2120 Digital Circuits and Systems. Tutorial Note 8

ELEN Electronique numérique

Asynchronous (Ripple) Counters

Introduction to Digital Logic Missouri S&T University CPE 2210 Exam 3 Logistics

1. Convert the decimal number to binary, octal, and hexadecimal.

Chapter 6. Flip-Flops and Simple Flip-Flop Applications

Sequential Design Basics

EEC 118 Lecture #9: Sequential Logic. Rajeevan Amirtharajah University of California, Davis Jeff Parkhurst Intel Corporation

ECE 263 Digital Systems, Fall 2015

problem maximum score 1 28pts 2 10pts 3 10pts 4 15pts 5 14pts 6 12pts 7 11pts total 100pts

Microprocessor Design

CSE140L: Components and Design Techniques for Digital Systems Lab. FSMs. Tajana Simunic Rosing. Source: Vahid, Katz

Registers and Counters

Introduction to Sequential Circuits

PROGRAMMABLE ASIC LOGIC CELLS

D Latch (Transparent Latch)

XC4000E and XC4000X Series. Field Programmable Gate Arrays. Low-Voltage Versions Available. XC4000E and XC4000X Series. Features

Scan. This is a sample of the first 15 pages of the Scan chapter.

ECE 3401 Lecture 12. Sequential Circuits (II)

EL302 DIGITAL INTEGRATED CIRCUITS LAB #3 CMOS EDGE TRIGGERED D FLIP-FLOP. Due İLKER KALYONCU, 10043

MODULE 3. Combinational & Sequential logic

Modeling Latches and Flip-flops

Efficient Architecture for Flexible Prescaler Using Multimodulo Prescaler

COE 202: Digital Logic Design Sequential Circuits Part 1. Dr. Ahmad Almulhem ahmadsm AT kfupm Phone: Office:

DEPARTMENT OF ELECTRICAL &ELECTRONICS ENGINEERING DIGITAL DESIGN

Experiment 8 Introduction to Latches and Flip-Flops and registers

Sequential Logic. E&CE 223 Digital Circuits and Systems (A. Kennings) Page 1

Chapter 6. sequential logic design. This is the beginning of the second part of this course, sequential logic.

CSE Latches and Flip-flops Dr. Izadi. NOR gate property: A B Z Cross coupled NOR gates: S M S R Q M

Computer Systems Architecture

CPS311 Lecture: Sequential Circuits

Sequential Circuits: Latches & Flip-Flops

Sequencing. Lan-Da Van ( 范倫達 ), Ph. D. Department of Computer Science National Chiao Tung University Taiwan, R.O.C. Fall,

Designing for High Speed-Performance in CPLDs and FPGAs

EECS150 - Digital Design Lecture 3 Synchronous Digital Systems Review. Announcements

Computer Architecture and Organization

Advanced Digital Logic Design EECS 303

Vignana Bharathi Institute of Technology UNIT 4 DLD

12/31/2010. Overview. 12-Latches and Flip Flops Text: Unit 11. Sequential Circuits. Sequential Circuits. Feedback. Feedback

Simulation Mismatches Can Foul Up Test-Pattern Verification

Counters

Introduction to Microprocessor & Digital Logic

EEE2135 Digital Logic Design Chapter 6. Latches/Flip-Flops and Registers/Counters 서강대학교 전자공학과

Flip-Flops and Sequential Circuit Design

Transcription:

September 2001 Introduction Technical Note TN1004 When implementing a design into an ispmach 4000 family device, it is often critical to understand how the placement of the design will affect the timing. The ispmach 4000 devices have numerous paths a signal can take, each of which affects the timing. The ispmach 4000 timing model was created to more accurately describe these different paths. ispmach 4000 Architecture Basics The fundamental architecture of the ispmach 4000 devices consists of multiple optimized Generic Logic Blocks (GLBs) interconnected by a Global Routing Pool (GRP). The GRP allows communication between GLBs and routes inputs to the GLBs. The Output Routing Pool (ORP) provides flexibility when assigning macrocells to I/O pins and further enhances routability. In an ispmach 4000 device, all signals incur the same delays, regardless of the macrocell used. In addition to the product terms available in each cell, there is an expander term that can be added to support wider logic. This expander term adds 5 product terms at a time with a maximum of 20 product terms (4 groups of 5 product terms). This feature allows the ispmach 4000 devices to offer SpeedLocking in which performance is design-independent and guaranteed. For narrow product term functions, a 5 product term bypass path may be used to achieve faster timing. For functions wider than 20 product terms, a third type of path offers up to 80 product terms. The block diagram for the ispmach 4000 GLB is shown in Figure 1. Figure 1. ispmach 4000 Block Diagram and PAL Structure Clock Generator From M/C N-4 Generic Logic Block Clock/ Input Pins Dedicated Pins Global Routing Pool Logic Array Internal Feedback External Feedback Logic Allocator Output/ Buried Macrocell To M/C N+4 Generic Logic Block Output Routing Pool I/O Cell As indicated in Figure 1, any given macrocell output signal has two different feedback paths into the GRP. These two paths are referred to as internal feedback and external feedback. A signal is using internal feedback when it goes back into the GRP without going through the ORP and the I/O cell. When a signal is fed back into the GRP after having gone through the ORP and the I/O cell, it is using external feedback. Both feedback types are shown in Figure 2. For simplicity, the ORP and the I/O cell together are modeled as an output buffer. 2001 Lattice Semiconductor Corp. All Lattice trademarks, registered trademarks, patents, and disclaimers are as listed at www.latticesemi.com/legal. All other brand or product names are trademarks or registered trademarks of their respective holders. The specifications and information herein are subject to change without notice. www.latticesemi.com 1 tn1004_01.0

Figure 2. ispmach 4000 Signal Feedback Types Macrocell Output Buffer I/O Pad GRP Internal Feedback External Feedback The primary focus of the ispmach 4000 timing model is to represent the timing in an ispmach 4000 device in an accurate and easy to understand manner. To ensure accuracy, the route of the signal must be known. To make the timing model easy to understand and use, timing is modularized such that each logic element in the signal path will have its own parameters. A diagram representing the ispmach 4000 timing model is shown in Figure 3. A list of all base parameters used when calculating timing is given in Table 1 and a list of adders and their respective base parameters is shown in Table 2. The adders are represented in italics in Figure 3. Refer to the data sheet for the timing numbers associated with each parameter. Figure 3. From Feedback Routing/GLB t PDb t PDi t FBK Feedback IN t IN t INREG t INDIO t ROUTE t BLA t MCELL t EXP DATA Q t ORP t BUF t IOO t EN t DIS Out SCLK t GCLK_IN t PTCLK t BCLK C.E. In/Out t PTSR t BSR S/R MC Reg. Register/Latch Control t GPTOE t PTOE OE t GOE In/Out Note: Italicized items are optional delay adders. 2

Table 1. ispmach 4000 Family Timing Parameters Parameter Description In/Out t IN Input Buffer Delay t GOE Global OE Pin Delay t GCLK_IN Global Clock Input Buffer Delay t BUF Delay through Output Buffer t EN Output Enable Time t DIS Output Disable Time Routing/GLB t ROUTE Delay through GRP t MCELL Macrocell Delay t INREG Input Buffer to Macrocell Register Delay t FBK Internal Feedback Delay t PDb 5-PT Bypass Propagation Delay t PDi Macrocell Propagation Delay Register/Latch t S Register Setup Time, D Flip-Flop t ST Register Setup Time, T Flip-Flop t H Register Hold Time, D Flip-Flop t HT Register Hold Time, T Flip-Flop t COi Register Clock to ORP Time t CES Clock Enable Setup Time t CEH Clock Enable Hold Time t SL Latch Setup Time t HL Latch Hold Time t GOi Latch Gate to ORP Time t PDLi Propagation Delay through Transparent Latch to ORP t SRi Asynchronous Reset or Set to ORP Delay t SRR Asynchronous Reset or Set Recovery Control t BCLK Block PT Clock Delay t PTCLK Macrocell PT Clock Delay t BSR Block PT Set/Reset Delay t PTSR Macrocell PT Set/Reset Delay t GPTOE Global PT OE Delay t PTOE Macrocell PT OE Delay Optional Input Buffer Selection Adder t IOO Output Buffer Selection Adder t EXP Product Term Expander Adder t INDIO Input Register Delay t EXP Product Term Expander Delay t BLA Additional Block Loading Adder 3

Table 2. ispmach 4000 Family Timing Adders Adder Type Base Parameter Description Optional Delay Adders t ORP Output routing pool delay t BLA t ROUTE GLB loading adder t EXP t MCELL Product term expander delay t INDIO t INREG Additional delay for the input register for zero hold time Input Adjusters LVTTL_in t IN, t GCLK_IN, t GOE Delay when input is configured as 3.3V TTL LVCMOS18_in t IN, t GCLK_IN, t GOE Delay when input is configured as 1.8V CMOS LVCMOS25_in t IN, t GCLK_IN, t GOE Delay when input is configured as 2.5V CMOS LVCMOS33_in t IN, t GCLK_IN, t GOE Delay when input is configured as 3.3V CMOS t IOO Output Adjusters LVTTL_out t BUF, t EN, t DIS Delay when output is configured as 3.3V TTL LVCMOS18_out t BUF, t EN, t DIS Delay when output is configured as 1.8V CMOS LVCMOS25_out t BUF, t EN, t DIS Delay when output is configured as 2.5V CMOS LVCMOS33_out t BUF, t EN, t DIS Delay when output is configured as 3.3V CMOS Delay when output is configured with slow slew. Slow slew may Slow Slew t BUF, t EN be used with any output type above. Using the Timing in the ispmach 4000 device family is calculated using timing delays associated with each of the blocks in the architecture. Register setup and hold times are calculated using the path delays on the data and clock signals into the register in conjunction with the inherent setup and hold times of the register itself. By using the internal path delays, accurate times are derived for timing with respect to the device input and output pins. Table 1 is split into several sections. The largest of the sections is the Routing section, which defines all of the timing delays that are a result of a signal propagating through a particular architectural feature. As an example, t IN represents the time it takes for a signal to propagate from the device I/O pad through the input buffer. In Figure 3, t IN is shown in the same block with the parameter. The parameter appears in italics because it is an optional parameter. The same is true of all optional parameters in the model. The optional parameters are given for features, such as programmable I/O interface standards, that may affect timing but aren t always used or required. When deriving external timing using the internal timing numbers, the following basic equations are used: Setup time = Logic Delay + t S - Clock Delay Hold Time = Clock Delay + t H - Logic Delay Clock-to-Out Time = Clock Delay + t COi + Output Path Delay Below are examples of different setup, hold and clock-to-out times calculated using the ispmach 4000 timing model. When the setup and hold times calculated are negative, the software will report them as being 0ns. Setup Times: Synchronous Setup t SS = (t IN + t ROUTE + t MCELL ) + t S - (t GCK_IN ) Asynchronous Setup t SA = (t IN + t ROUTE + t MCELL ) + t S - (t IN + t ROUTE + t PTCLK ) Input Register Setup t SIR = (t IN + t INREG ) + t S - (t GCK_IN ) Hold Times: Synchronous Hold t HS = (t GCK_IN ) + t H - (t IN + t ROUTE + t MCELL ) 4

Asynchronous Hold t HA = (t IN + t ROUTE + t PTCLK ) + t H - (t IN + t ROUTE + t MCELL ) Input Register Hold t HIR = (t GCK_IN ) + t H - (t IN + t INREG ) Clock-to-Out Time: t CO = t GCK_IN + t COi + t BUF Combinatorial Propagation Time: t PD1 = t IN + t ROUTE + t PDB + t BUF t PD2 = t IN + t ROUTE + t MCELL + t PDi + t BUF The use of the ispmach 4000 timing model will be demonstrated using two examples. The first example is a combinatorial logic design illustrating the use of internal feedback. The second example, a synchronous sequential logic design, demonstrates how to calculate f MAX. Example 1 This combinatorial logic design fits into an ispmach 4000. A group of input signals are routed to Block A, which is in high power mode. Logic is generated in array A and allocated to macrocell A5, which is configured as a combinatorial path. This logic is routed to I/O 6, which is configured for a slow slew rate. The signal delay of this path would be: t PD = t IN + t ROUTE + t MCELL + t PDi + t BUF + t IOO (Slow Slew) This logic is also fed back to the central switch matrix via the internal feedback path and then routed to Block D. A second logic is generated in array D using the first logic along with another group of input signals. This second logic is allocated to macrocell D8, which is configured as a combinatorial path. This second logic is sent to pad I/O 31, which is in fast slew rate. The longest delay path of this design would be from Block A to I/O 31 and the delay T CRITICAL is: T CRITICAL = t IN + t ROUTE + t MCELL + t PDi + t ROUTE + t MCELL + t PDi + t BUF When the number of product terms is increased beyond 20, the timing will change. T EXP is used when more than 20 product terms are needed and the software settings allow for more than 20 product terms in a single function. The longest path would be for an input signal to use the expander feature of the ispmach 4000. t PD _ MC = t IN + t ROUTE + t MCELL + t EXP + t PDi + t BUF Example 2 This synchronous sequential logic design has a 16-bit up-counter with load enable and reset. It fits into an ispmach 4256 using 16 macrocells configured with T-type registers. Register inputs are defined by the device inputs and flip-flop output, which is internally fed back to the switch matrix. Under these conditions, the period t CNT is limited by the internal delay from the flip-flop outputs through the internal feedback and logic to the flip-flop inputs. t CNT = t COi +t FBK + t ROUTE + t MCELL + t Si And the f MAX is designated f MAXINT f MAXINT = 1/ t CNT Conclusion The ispmach 4000 timing model provides an accurate, easy to understand timing calculation. It defines both internal and external feedback paths and simplifies the timing used for internal registers/latches. The timing model makes it easier to control the critical path timing in a high speed design. 5

Technical Support Assistance Hotline: 1-800-LATTICE (North America) +1-503-268-8001 (Outside North America) e-mail: techsupport@latticesemi.com Internet: www.latticesemi.com Revision History Date Version Change Summary September 2001 01.0 Initial release. 6