BR 1/991 Logic Element array PIN Altera IO Element.

Slides:



Advertisements
Similar presentations
ECE 506 Reconfigurable Computing ece. arizona
Advertisements

Spartan-3 FPGA HDL Coding Techniques
Reconfigurable Computing (EN2911X, Fall07) Lecture 04: Programmable Logic Technology (2/3) Prof. Sherief Reda Division of Engineering, Brown University.
Xilinx CPLDs and FPGAs Module F2-1. CPLDs and FPGAs XC9500 CPLD XC4000 FPGA Spartan FPGA Spartan II FPGA Virtex FPGA.
Ch.7 Layout Design Standard Cell Design TAIST ICTES Program VLSI Design Methodology Hiroaki Kunieda Tokyo Institute of Technology.
Maintaining Data Integrity in Programmable Logic in Atmospheric Environments through Error Detection Joel Seely Technical Marketing Manager Military &
Programmable Logic Devices
Spartan II Features  Plentiful logic and memory resources –15K to 200K system gates (up to 5,292 logic cells) –Up to 57 Kb block RAM storage  Flexible.
Reconfigurable Computing - Clocks John Morris Chung-Ang University The University of Auckland ‘Iolanthe’ at 13 knots on Cockburn Sound, Western Australia.
FPGA-Based System Design: Chapter 3 Copyright  2004 Prentice Hall PTR SRAM-based FPGA n SRAM-based LE –Registers in logic elements –LUT-based logic element.
Implementing Logic Gates and Circuits Discussion D5.1.
Implementing Logic Gates and Circuits Discussion D5.3 Section 11-2.
The Spartan 3e FPGA. CS/EE 3710 The Spartan 3e FPGA  What’s inside the chip? How does it implement random logic? What other features can you use?  What.
Programmable logic and FPGA
CMPUT Computer Organization and Architecture II1 CMPUT329 - Fall 2003 Topic: Internal Organization of an FPGA José Nelson Amaral.
1. 2 FPGAs Historically, FPGA architectures and companies began around the same time as CPLDs FPGAs are closer to “programmable ASICs” -- large emphasis.
Adv. Digital Circuit Design
CS 151 Digital Systems Design Lecture 38 Programmable Logic.
ALTERA UP2 Tutorial 1: The 15 Minute Design. Figure 1.1 The Altera UP 1 CPLD development board. ALTERA UP2 Tutorial 1: The 15 Minute Design.
Flip-Flops.
1 DIGITAL DESIGN I DR. M. MAROUF FPGAs AUTHOR J. WAKERLY.
CSET 4650 Field Programmable Logic Devices
Global Timing Constraints FPGA Design Workshop. Objectives  Apply timing constraints to a simple synchronous design  Specify global timing constraints.
Lecture 2: Field Programmable Gate Arrays September 13, 2004 ECE 697F Reconfigurable Computing Lecture 2 Field Programmable Gate Arrays.
DSD Presentation Introduction of Actel FPGA. page 22015/9/11 Presentation Outline  Overview  Actel FPGA Characteristic  Actel FPGA Architecture  Actel.
EE4OI4 Engineering Design Programmable Logic Technology.
Lecture #3 Page 1 ECE 4110– Sequential Logic Design Lecture #3 Agenda 1.FPGA's 2.Lab Setup Announcements 1.No Class Monday, Labor Day Holiday 2.HW#2 assigned.
Ch.9 CPLD/FPGA Design TAIST ICTES Program VLSI Design Methodology Hiroaki Kunieda Tokyo Institute of Technology.
Open Discussion of Design Flow Today’s task: Design an ASIC that will drive a TV cell phone Exercise objective: Importance of codesign.
Electronics in High Energy Physics Introduction to Electronics in HEP Field Programmable Gate Arrays Part 1 based on the lecture of S.Haas.
Lecture #3 Page 1 ECE 4110– Sequential Logic Design Lecture #3 Agenda 1.FPGA's 2.Lab Setup Announcements 1.No Class Monday, Labor Day Holiday 2.HW#2 assigned.
FPGA-Based System Design: Chapter 3 Copyright  2004 Prentice Hall PTR FPGA Fabric n Elements of an FPGA fabric –Logic element –Placement –Wiring –I/O.
FPGA-Based System Design: Chapter 3 Copyright  2004 Prentice Hall PTR Topics n FPGA fabric architecture concepts.
Sept. 2005EE37E Adv. Digital Electronics Lesson 1 CPLDs and FPGAs: Technology and Design Features.
Basic Sequential Components CT101 – Computing Systems Organization.
Lecture #3 Page 1 ECE 4110–5110 Digital System Design Lecture #3 Agenda 1.FPGA's 2.Lab Setup Announcements 1.HW#2 assigned Due.
© 2003 Xilinx, Inc. All Rights Reserved Global Timing Constraints FPGA Design Flow Workshop.
BR 1/991 Issues in FPGA Technologies Complexity of Logic Element –How many inputs/outputs for the logic element? –Does the basic logic element contain.
BR 8/991 DFFs are most common Most programmable logic families only have DFFs DFF is fastest, simplest (fewest transistors) of FFs Other FF types (T, JK)
CPLD Vs. FPGA Positioning Presentation
M.Mohajjel. Why? TTM (Time-to-market) Prototyping Reconfigurable and Custom Computing 2Digital System Design.
ESS | FPGA for Dummies | | Maurizio Donna FPGA for Dummies Basic FPGA architecture.
© BYU 11b MSFF Page 1 ECEn 224 MSFF Master/Slave Flip Flops.
FPGA-Based System Design: Chapter 1 Copyright  2004 Prentice Hall PTR Moore’s Law n Gordon Moore: co-founder of Intel. n Predicted that number of transistors.
Interconnect/Via.
Basic LED Interface.
EE121 John Wakerly Lecture #15
BR 1/991 FPGA Timing Models Most FPGA and CPLD vendors provide a timing model in their data sheets that allow estimation of path delays. Some example path.
FPGA-Based System Design: Chapter 3 Copyright  2004 Prentice Hall PTR Topics n FPGA fabric architecture concepts.
THEMIS Instrument CDR 1 UCB, April 20, 2004 Actel Reliability Critical Design Review Robert Abiad University of California - Berkeley.
High Speed Properties of Digital Gates, Copyright F. Canavero, R. Fantino Licensed to HDT - High Design Technology
Issues in FPGA Technologies
Sequential Programmable Devices
Sequential Logic Design
Topics SRAM-based FPGA fabrics: Xilinx. Altera..
Each I/O pin may be configured as either input or output.
XILINX FPGAs Xilinx lunched first commercial FPGA XC2000 in 1985
ECE 4110–5110 Digital System Design
Maintaining Data Integrity in Programmable Logic in Atmospheric Environments through Error Detection Joel Seely Technical Marketing Manager Military &
FPGA.
These chips are operates at 50MHz clock frequency.
COOLRUNNER II REAL DIGITAL CPLD
We will be studying the architecture of XC3000.
The Xilinx Virtex Series FPGA
Topics Antifuse-based FPGA fabrics: Flash-based FPGAs Actel.
FPGA Tools Course Basic Constraints
Interfacing Data Converters with FPGAs
The Xilinx Virtex Series FPGA
Implementing Logic Gates and Circuits
Programmable logic and FPGA
Presentation transcript:

BR 1/991 Logic Element array PIN Altera IO Element

BR 1/992 PIN Tincomb TiodTiocombTod1 Altera IOE Timing model

BR 1/993 IOE Delays Input path –Tincomb - input pad and buffer to fasttrack interconnect delay Output path (combinatorial path with fast output slew) –Tiod - data delay –Tiocomb - combinatorial delay –Tod1 - slow rate = off, Vccio = Vccint (Vcc of IO pad is same as internal Vcc).

BR 1/994 Aside: Why programmable Output slew? Slew rate is the measure of how fast an output can change value (measured in Volts/Sec). Most FPGA vendors offer the capability of programming the output to be either fast slew or slow slew WHY? –Fast Slew rates cause more noise problems via ground bounce, especially when multiple outputs are switching –If you have room in your timing spec, should use slow slew rate if possible

BR 1/995 GND Bounce Chip Large change of current on Vdd/Gnd pins (inrush current) due to multiple outputs changing simultaneously causes induced voltage on GND plane: v(t) = L * di/dt Larger the inductance, larger the change in current, larger the induced voltage. Two ways to reduce Voltage: Reduce Inductance : More vdd/gnd pins (inductance in parallel reduces total inductance), better packaging (different packages have more/less inductance than others). Flex 10K pin package has 19 Vdd pins, 18 Gnd pins). Reduce di/dt : slower slew rate!!!! Vdd GND

BR 1/996 Altera Logic Element

BR 1/997 TlutTcomb Altera Logic Element

BR 1/998 Minimum Pin To Pin Delay [Input Pin delay] + [Logic Element Delay] + [Output Delay] [Tincomb] + [Tlut + Tcomb] + [Tiod + Tiocomb + Tod1] What about Routing Delays? Table 20 has routing delays. Tdin2data - delay from dedicated input or clock to LE data Tsamecolumn - delay from LE output to IOE in same column Tsamerow - delay from LE output IOE in same row

BR 1/999 Minimum Pin To Pin Delay [Input Pin delay] + [Routing] + [Logic Element Delay] + [Routing] + [Output Delay] [Tincomb] + [Tdin2data] + [Tlut + Tcomb] + [Minimum (same col,row)] + [Tiod + Tiocomb + Tod1] [ 2.8 ] + [4.3] + [ ] + min(1.4,3.7) + [ ] = 14.3 ns if ignore routing, then 8.6 ns (this is what marketing will quote). Note that same column routing much faster than row routing. (hence dedicated carry chains run in column routing).

BR 1/9910 Minimum Register to Register [Input Pin delay] + [Routing] + [Logic element clock-to-Q] + [Routing] + [Logic Element Delay] + [Routing] + [Logic Element Setup Time] Dedicated Clkpin Routing Clkpin Logic Element DFF Q Q Routing LUT D

BR 1/9911 Minimum Register to Register [Input Pin delay] + [Routing] + [Logic element clock-to-Q] + [Routing] + [Logic Element Setup Time] Dedicated Clkpin Routing Clkpin Logic Element DFF Q Q Routing LUT D Tsu Tdclk2le Tc + Tco Tsamecol

BR 1/9912 Dedicated Inputs/Clock Pins vs IOE inputs A dedicated input pin or dedicated clock pin does not have the IOE logic. The input timing is specified as routing delay only: Dedicated Clkpin Routing Clkpin Tdclk2le = 2.6 ns IOE Routing Input Tincomb + Tsamecol = 3.1ns + 1.4ns = 4.4 ns Use dedicated input pins to minimize input delay. Not many on device - 10K pin package only has 4 dedicated inputs and 2 dedicated clock pins.

BR 1/9913 Setup Time for Logic Element DFF QD LUT Tsu ? or Tsu +Tlut? Typically, the setup time specification for an external data input already accounts for the LUT delay since the data input has to pass through the LUT on its way to the D input. The altera spec is a bit confusing - my best guess is that Tsu includes the LUT delay. There is no doubt that the Xilinx Virtex Tsu spec includes the LUT delay.

BR 1/9914 Clock To Out Two different Choices here - is the Dff in the LUT or the IOE?? Dedicated Clock pin Routing Clkpin Logic Element DFF Q Routing LUT IOE Output Routing Clkpin DFF Q IOE Dedicated Clock pin

BR 1/9915 Clock To Out Two different Choices here - is the Dff in the LUT or the IOE?? Routing Clkpin Logic Element DFF Q Routing LUT IOE Output Routing Clkpin DFF Q IOE Tdclk2le Tdclk2ioe Tc + Tco Tioc + Tioco + Tod1 Tsamecol Tiod + Tiocomb + Tod1 Dedicated Clock pin

BR 1/9916 Latching in IOE or LE? The DFF in the IOE can be configured to either latch incoming data or outgoing data –Can latch ingoing/outgoing data in either IOE or LE (logic element) Using the DFF in the IOE to latch outgoing data will usually reduce Clock-2-Out time –DFF is closer to the Pin! Using the DFF in the IOE to latch ingoing data will reduce external setup time. –DFF is closer to the Pin!

BR 1/9917 Minimum External Setup Time Data latched in LE Routing Clkpin DFF Q LUT Tdclk2le Dedicated Clock pin IOE Routing Tincomb TsamecolTsu Tsu_ext = Tincomb + Tsame col + Tsu - minimum(Tdclk2le) Tsu_ext = 3.1 ns + 1.4ns + 1.3ns - 0 = 5.8 ns Input Tsu_ext? D

BR 1/9918 Minimum External Setup Time Data latched in IOE Routing Clkpin Q Tdclk2le Dedicated Clock pin IOE Input Tsu_ext? Tinreg + Tiosu Tsu_ext = Tinreg + Tiosu - minimum(Tdclk2le) Tsu_ext = 6.0 ns = 8.8 ns D !! Latching in IOE slower than in Logic Element? These are all worse case numbers in the datasheet which could account for this; also mentioned on page 28 that latching in LE element will sometimes give better setup time than an IOE. For other FPGA families this is usually not the case.

BR 1/9919 Chip To Chip Output Routing Clkpin DFF Q IOE Tdclk2ioe Tioc + Tioco + Tod1 Dedicated Clock pin Chip 1 Q IOE Input Tsu_ext Tinreg + Tiosu D Chip 2 (clk2out + Tsu_ext) will be constraint on how fast data is exchanged between chips

BR 1/9920 PLL effects PLL/DLL will synchronize internal clock to external clock. Aim is to have zero delay between clock edges at Logic elements and external clock edge Routing Q LUT Dedicated Clock pin Clk_ext Clk_int Want a ‘zero-delay’ clock, no difference in edge arrival times of clock edges at ‘Clk_ext’ and ‘Clk_int’.