FPGA 상명대학교 소프트웨어학부 2007년 1학기.

Slides:



Advertisements
Similar presentations
ECE 506 Reconfigurable Computing Lecture 2 Reconfigurable Architectures Ali Akoglu.
Advertisements

FPGA (Field Programmable Gate Array)
ECE 506 Reconfigurable Computing ece. arizona
Xilinx CPLDs and FPGAs Module F2-1. CPLDs and FPGAs XC9500 CPLD XC4000 FPGA Spartan FPGA Spartan II FPGA Virtex FPGA.
Survey of Reconfigurable Logic Technologies
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.
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
Multiplexers, Decoders, and Programmable Logic Devices
February 4, 2002 John Wawrzynek
ECE 331 – Digital System Design Tristate Buffers, Read-Only Memories and Programmable Logic Devices (Lecture #16) The slides included herein were taken.
Implementing Digital Circuits Lecture L3.1. Implementing Digital Circuits Transistors and Integrated Circuits Transistor-Transistor Logic (TTL) Programmable.
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
Programmable Array Logic (PAL) Fixed OR array programmable AND array Fixed OR array programmable AND array Easy to program Easy to program Poor flexibility.
1 DIGITAL DESIGN I DR. M. MAROUF FPGAs AUTHOR J. WAKERLY.
The Xilinx Spartan 3 FPGA EGRE 631 2/2/09. Basic types of FPGA’s One time programmable Reprogrammable (non-volatile) –Retains program when powered down.
Section I Introduction to Xilinx
Lecture 2: Field Programmable Gate Arrays September 13, 2004 ECE 697F Reconfigurable Computing Lecture 2 Field Programmable Gate Arrays.
EET 252 Unit 4 Programmable Logic: SPLDs & CPLDs  Read Floyd, Sections 11-1 to  Study Unit 4 e-Lesson.  Do Lab #4.  Homework #4 and Lab #4 due.
Lecture 7 1. Introduction  Comparison of Standard Logic Circuits and Programmable Logic Circuits  Evolution and Overview of PLC:  PROM, PLA, PAL 
EE4OI4 Engineering Design Programmable Logic Technology.
Section II Basic PLD Architecture. Section II Agenda  Basic PLD Architecture —XC9500 and XC4000 Hardware Architectures —Foundation and Alliance Series.
© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Digital Fundamentals Tenth Edition Floyd.
Electronics in High Energy Physics Introduction to Electronics in HEP Field Programmable Gate Arrays Part 1 based on the lecture of S.Haas.
PLD (Programmable Logic Device) Wednesday, October 07, ARINDAM CHAKRABORTY LECTURER,DEPT. OF ECE INSTITUTE OF ENGINEERING & MANAGEMENT.
System Arch 2008 (Fire Tom Wada) /10/9 Field Programmable Gate Array.
CPLD (Complex Programmable Logic Device)
Memory and Programmable Logic Memory device: Device to which binary information is transferred for storage, and from which information is available for.
J. Christiansen, CERN - EP/MIC
The Xilinx Spartan 3 FPGA EGRE 631 2/2/09. Basic types of FPGA’s One time programmable Reprogrammable (non-volatile) –Retains program when powered down.
Programmable Logic Devices
Chapter 4 Programmable Logic Devices: CPLDs with VHDL Design Copyright ©2006 by Pearson Education, Inc. Upper Saddle River, New Jersey All rights.
Sept. 2005EE37E Adv. Digital Electronics Lesson 1 CPLDs and FPGAs: Technology and Design Features.
Introduction to FPGA Created & Presented By Ali Masoudi For Advanced Digital Communication Lab (ADC-Lab) At Isfahan University Of technology (IUT) Department.
Field Programmable Gate Arrays (FPGAs) An Enabling Technology.
Basic Sequential Components CT101 – Computing Systems Organization.
ECE 448 Lecture 6 FPGA devices
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.
EKT303/4 PRINCIPLES OF PRINCIPLES OF COMPUTER ARCHITECTURE (PoCA)
FPGA Based System Design
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.
Programmable Logic Device Architectures
Survey of Reconfigurable Logic Technologies
EE121 John Wakerly Lecture #15
George Mason University ECE 448 – FPGA and ASIC Design with VHDL FPGA Devices ECE 448 Lecture 5.
PLDS Mohammed Anvar P.K AP/ECE Al-Ameen Engineering College.
Delivered by.. Love Jain p08ec907. Design Styles  Full-custom  Cell-based  Gate array  Programmable logic Field programmable gate array (FPGA)
3-1 MKE1503/MEE10203 Programmable Electronics Computer Engineering Department Faculty of Electrical and Electronic Universiti Tun Hussein Onn Malaysia.
FPGA Technology Overview Carl Lebsack * Some slides are from the “Programmable Logic” lecture slides by Dr. Morris Chang.
Programmable Logic Devices
This chapter in the book includes: Objectives Study Guide
ETE Digital Electronics
Sequential Programmable Devices
Sequential Logic Design
Electronics for Physicists
This chapter in the book includes: Objectives Study Guide
Field Programmable Gate Array
Field Programmable Gate Array
Chapter 13 – Programmable Logic Device Architectures
FIGURE 7.1 Conventional and array logic diagrams for OR gate
The architecture of PAL16R8
Electronics for Physicists
Implementing Logic Gates and Circuits
FPGA’s 9/22/08.
Programmable logic and FPGA
Presentation transcript:

FPGA 상명대학교 소프트웨어학부 2007년 1학기

Contents Implementation Technologies Xilinx device products Standard chips PLD ASIC Xilinx device products CoolRunner Spartan Virtex Altera device products MAX II Statrix II

Standard Chips V x f (a) Dual-inline package (DIP) V Gnd DD x 1 2 3 f 7404 7408 7432 (a) Dual-inline package (DIP) V DD Gnd (b) Structure of 7404 chip

Programmable Logic Devices (PLD) First introduced in 1970s PLD contains Logic gates Programmable switches Types of PLDs Simple PLD Programmable logic array (PLA) Programmable array logic (PAL) Complex programmable logic devices (CPLD) Field-programmable gate arrays (FPGA)

Recap - Programmable Logic Devices (PLD)

Generalized PAL

Programmable Logic Device (PLD) Simple PLD (SPLD) & Complex PLD SPLD PAL itself is considered as SPLD The fixed part (the blue part of the previous slide) is called “Macrocells” A macrocell is with one OR gate and associated output logic. A typical SPLD has 8~10 macrocells within one IC package.

PAL with Macrocells

Basic Macrocells Y=A’B+AB’ If B=1, Y=A’

SPLD designation 16V8 and 22V10 are common. Number of inputs Type of output logic (Variable) Number of outputs

16V8 SPLD

Sequential PLD Sequential Programmable Logic Device (SPLD)

Basic Macrocell of Sequential PLD

Complex PLD (CPLD) CPLD consists multiple SPLD arrays and programmable interconnections. LAB = SPLD PIA: Programmable Interconnect Array LAB & PIA are programmed using software. CPLD “density” is usually specified in terms of macrocells or LAB. Altera & Xilinx are the major manufacturers.

Altera CPLDs Altera produces three lines of CPLDs EPLD series MAX series FLEX series It also produces a complete design tool MAX+PLUS 2 Quartus II

Entry Level EPLD Series EPLD 220 device standard AND/OR structure replaces a PAL 16L8 or PAL 16R8 can operate at near 100 MHz pin to pin delays of about 7.5 nsec Package

EPLD 220 Macrocell The Macrocell for the EPLD 220 is a registered programmable level structure Select combinational or registered output up to 8 terms in a function

Altera MAX 7000 CPLD

Altera MAX 7000 Macrocell A programmable AND array 5 AND gates A product-term selection matrix 1 OR gate Associated logic that is programmable to be input combinational logic output registered output (sequential output)

Shared expander Example of how a shared expander can be used in a macrocell to increase the number of product terms.

Using a shared expander term from another macrocell to increase an SOP expression

Parallel expander

Using parallel expander terms from another macrocell to increase an SOP expression.

MAX II CPLD Logic array blocks with multiple logic elements Uses Lookup table (LUT) instead of AND-OR array Programmable interconnects Input/Output elements (IOE)

Xilinx CPLDs CoolRunner II, XC9500 XC9500 is similar to MAX 7000, has PAL architecture CoolRunner II has PLA architecture

Recap – PAL vs. PLA

CoolRunner II Architecture FB = LAB AIM (Advanced Interconnect Matrix) = PIA 2~32 FBs

Simplified FB structure

FPGA Provides logic blocks instead of AND or NAND plane Typical logic blocks is LUT Volatile devices Programmable read-only memory (PROM) can be used to make it nonvolatile

LUT as Logic Block x f 3-input LUT 1 2 3 0/1 x 2 3 1 3-input LUT Program is actually written in Memory, just like conventional CPU with Main Memory.

General Structure of FPGA Pin grid array (PGA) package

FPGA Example f1 f2

FPGA concept Field Programmable Gate Array Basic elements: Configurable logic block (CLB) I/O block interconnections CLB is simpler than LAB or FB, but there are many more of them

Configurable Logic Block (CLB) Many FPGAs are volatile because their LUTs are based on SRAM.

Altera FPGAs High & Medium Density FPGAs Low-Cost FPGAs Stratix II, Stratix, APEX II, APEX 20K, & FLEX 10K Low-Cost FPGAs Cyclone & ACEX 1K Stratix II FPGA LAB (logic array block) structure

Adaptive Logic Module Normal mode Extended LUT mode Arithmetic mode Shared arithmetic mode

ASIC Application-specific integrated circuit Smallest size Fastest speed Lowest power Microprocessors or memory chips Not standard Types of ASIC Custom chips Standard cell chips Gate array

Standard Cell Chips Use the pre-designed layout of individual gates CAD tools arranges all the gates

Gate Array Gate array part is prefabricated. Other parts are custom fabricated. Wiring Sea-of-gate

Which Way to Go? ASICs FPGAs Off-the-shelf High performance Low development cost Low power Short time to market Low cost in high volumes Reconfigurability

Other FPGA Advantages Manufacturing cycle for ASIC is very costly, lengthy and engages lots of manpower Mistakes not detected at design time, which have large impact on development time and cost FPGAs are perfect for rapid prototyping of digital circuits Easy upgrades like in case of software Unique applications reconfigurable computing

Major FPGA Vendors SRAM-based FPGAs Xilinx, Inc. Altera Corp. Atmel Lattice Semiconductor Flash & antifuse FPGAs Actel Corp. Quick Logic Corp. Share over 60% of the market

Contents Implementation Technologies Xilinx device products Standard chips PLD ASIC Xilinx device products CoolRunner Spartan Virtex Altera device products MAX II Statrix II

ISE Alliance and Foundation Series Design Software Xilinx Primary products: FPGAs and the associated CAD software Main headquarters in San Jose, CA Programmable Logic Devices ISE Alliance and Foundation Series Design Software

Xilinx FPGA family

Xilinx CoolRunner MC: Macrocell AIM: Advanced Interconnect Matrix The Function Blocks use a Programmable Logic Array (PLA) configuration which allows all product terms (p-term) to be routed and shared among any of the macrocells of the FB.

CoolRunner Macrocell

CoolRunner Macrocell SOP logic expressions up to 40 inputs and span 56 product terms within a single function block. The macrocell can further combine the SOP expression into an XOR gate with another single p-term expression. The logic function can be pure combinational or sequential The storage element operating selectably as a D or T flip-flop, or transparent latch. Each macrocell flip-flop is configurable for either single edge or DualEDGE clocking, providing either double data rate capability or the ability to distribute a slower clock (thereby saving power). For single edge clocking or latching, either clock polarity may be selected per macrocell.

Spartan 3E Digital Clock Manager (DCM) Blocks provide self-calibrating, fully digital solutions for distributing, delaying, multiplying, dividing, and phase-shifting clock signals. Configurable Logic Blocks (CLBs) contain flexible Look-Up Tables (LUTs) that implement logic plus storage elements used as flip-flops or latches. CLBs perform a wide variety of logical functions as well as store data. Input/Output Blocks (IOBs) control the flow of data between the I/O pins and the internal logic of the device. Each IOB supports bidirectional data flow plus 3-state operation. Supports a variety of signal standards, including four high-performance differential standards. Double Data-Rate (DDR) registers are included. Block RAM provides data storage in the form of 18-Kbit dual-port blocks. Multiplier Blocks accept two 18-bit binary numbers as inputs and calculate the product.

Spartan 3E - CLB

Spartan 3E - CLB

Spartan 3E - Slice Common resources in both SLICEM & SLICEL Two 4-input LUT function generators, F and G Two storage elements (Flip-flops) Two wide-function multiplexers, F5MUX and FiMUX Carry and arithmetic logic The SLICEM pair supports two additional functions: Two 16x1 distributed RAM blocks, RAM16 Two 16-bit shift registers, SRL16

LUT (Look-Up Table) Functionality Look-Up tables are primary elements for logic implementation Each LUT can implement any function of 4 inputs

5-Input Functions implemented using two LUTs OUT LUT

FPGA Nomenclature

Device Part Marking XC3S100-4FG256

Xilinx Virtex IO is enhanced Processor is added Embedded RocketIO™ (up to 3.125 Gb/s) or RocketIO X (up to 6.25 Gb/s) Multi-Gigabit Transceivers (MGTs). Processor is added Processor blocks with embedded IBM PowerPC™ 405 RISC CPU core (PPC405) and integration circuitry.

Virtex – Processor block Embedded IBM PowerPC 405-D5 RISC CPU core On-Chip Memory (OCM) controllers and interfaces (between BRAM and Processor Core) Clock/control interface logic CPU-FPGA Interfaces (Block RAM)

Contents Implementation Technologies Xilinx device products Standard chips PLD ASIC Xilinx device products CoolRunner Spartan Virtex Altera device products MAX II Statrix II

Altera FPGA CPLD Structured ASIC Only a part of “layers” are customizable

Altera – MAX II FB  LAB MC  LE

MAX II LE

MAX II - LE A four-input LUT A programmable register (flip-flop) Programmable register can be configured for D, T, JK, or SR operation. Each register has data, asynchronous load data, clock, clock enable, clear, and asynchronous load/preset inputs. Single bit addition or subtraction with carry chain

MAX II LAB

MAX II Family

Altera - Statrix II

Statrix II - ALM A LAB has eight ALM LE  ALM (Adaptive logic module)

Statrix II family

Statrix II family