EECS150 - Digital Design Lecture 3 - Field Programmable Gate Arrays (FPGAs) Project platform: Xilinx ML
|
|
- Ross Patrick
- 5 years ago
- Views:
Transcription
1 EECS150 - igital esign Lecture 3 - Field Programmable Gate Arrays (FPGAs) January 25, 2010 John Wawrzynek Spring 2011 EECS150 - Lec03-FPGA Page 1 Project platform: Xilinx ML Spring 2011 EECS150 - Lec03-FPGA Page 2
2 FPGA Overview Basic idea: two-dimensional array of logic blocks and flip-flops with a means for the user to configure (program): 1. the interconnection between the logic blocks, 2. the function of each block. Simplified version of FPGA internal architecture: Spring 2011 EECS150 - Lec03-FPGA Page 3 Why are FPGAs Interesting? Technical viewpoint: For hardware/system-designers, like ASICs only better! Tape-out new design every few minutes/hours. oes the reconfigurability or reprogrammability offer other advantages over fixed logic? ynamic reconfiguration? In-field reprogramming? Self-modifying hardware, evolvable hardware?
3 Why are FPGAs Interesting? Staggering logic capacity growth (10000x): Year Introduced evice Logic Cells logic gate equivalents 1985 XC XC7V2000T 1,954,50 15,3,480 FPGAs have tracked Moore s Law better than any other programmable device. Why are FPGAs Interesting? Logic capacity now only part of the story: on-chip RAM, high-speed I/Os, hard function blocks,... Modern FPGAs are reconfigurable systems Xilinx Virtex-5 LX110T 10GBps Serdes Ethernet MACs PCI express Phy But, the heterogeneity erodes the purity argument. Mapping is more difficult. Introduces uncertainty in efficiency of solution. 4 ALUs 148 3Kb AM Blocks
4 Why are FPGAs Interesting? Have been an archetype for the semiconductor industry as a whole: from: mattrhodes.net Putting the FPGA Business in Perspective. How large is it compared to others? from: mattrhodes.net
5 Why are FPGAs Interesting? Have attracted an huge amount of investment for new ventures: Most startups have failed. Why? Business dominated by Xilinx and Altera Why are FPGAs Interesting? FPGAs at the leading edge of IC processing: Xilinx V7 out next year with 28nm TSMC processing Foundaries like FPGAs - regularity help get process up the learning curve High-volume commitment gets interest of foundry (Gives FPGAs a competitive edge over ASICs, which usually are built on an older process.)
6 Why are FPGAs Interesting? FPGAs have been wildly successful even though they are inefficient in silicon area, energy, and performance : Measuring the Gap Between FPGAs and ASICs, Ian Kuon and Jonathan Rose, FPGA 0 Versus ASICs: area 40X, delay 3-4X, power 12X How can this be? Is there something more important than silicon efficiency? ie Photos: Virtex FPGA vs. Pentium IV FGPA Vertex chip looks remarkably structured Very dense, very regular structure Full-Custom Pentium chip somewhat more random in structure Large on-chip memories (caches) are visible Fall 2010 CS Lec01 Intro Page 12
7 FPGAs are in widespread use FPGAs Power Net-Centric Battlefield on Many Fronts Far more designs are implemented in FPGA than in custom chips. INSIE Make MicroBlaze Processing Roar With Hardware Acceleration FPGAs Help RN Track Particles Approaching Speed of Light Xcell Automotive Innovators Hit Hit High Top Gear in river Assistance with FPGA Platforms Hardware Trumps Software in Medical evice esign Taming Power raw in Consumer MPUs Plugging into High-Volume Consumer Products INSIE Algorithm evelopers Power New A System on Xilinx Automotive FPGA Platform Engineer Turns Blown HIGH VOLUME Engine into Hot Startup Spartan-3E: A New Era How to Beat Your Son Multimedia for Automotive at Guitar Hero Using Xilinx FPGA SP Algorithms Tips and Tricks for ESIGN TOOLS Using FPGA Editor New ISE 7.1i Software and SystemVerilog Control Your esigns SERIAL I/O Fall 2010 CS Lec01 Intro Page 13 Extend Your Reach SUBS FPGA Variations Families of FPGA s differ in: physical means of implementing user programmability, arrangement of interconnection wires, and the basic functionality of the logic blocks. Most significant difference is in the method for providing flexible blocks and connections: Anti-fuse based (ex: Actel) + Non-volatile, relatively small fixed (non-reprogrammable) Several floating gate or eprom style approaches have been used. One now by Actel. Fall 2010 CS Lec01 Intro Page 14
8 Floating-gate / EPROM / FLASH based (ex: Actel, others) FPGA Variations + Non-volatile + reprogrammable larger size then anti-fuse requires special process Fall 2010 CS Lec01 Intro Page 15 User Programmability Latch-based (Xilinx, Altera, ) + reconfigurable volatile relatively large. Latches are used to: 1. control a switch to make or break cross-point connections in the interconnect 2. define the function of the logic blocks 3. set user options: within the logic blocks in the input/output blocks global reset/clock Configuration bit stream is loaded under user control Fall 2010 CS Lec01 Intro Page 1
9 Background (review) for upcoming A MUX or multiplexor is a combinational logic circuit that chooses between 2 N inputs under the control of N control signals. A latch is a 1-bit memory (similar to a flip-flop). Spring 2011 EECS150 - Lec03-FPGA Page 17 Idealized FPGA Logic Block 4-input look up table () implements combinational logic functions Register optionally stores output of Fall 2010 CS Lec01 Intro Page 18
10 4- Implementation n-bit is implemented as a 2 n x 1 memory: inputs choose one of 2 n memory locations. memory locations (latches) are normally loaded with values from user s configuration bit stream. Inputs to mux control are the CLB inputs. Result is a general purpose logic gate. n- can implement any function of n inputs! Fall 2010 CS Lec01 Intro Page 19 as general logic gate An n-lut as a direct implementation of a function truth-table. Each latch location holds the value of the function corresponding to one input combination. Example: 4-lut Example: 2-lut Implements any function of 2 inputs. How many of these are there? How many functions of n inputs? Fall 2010 CS Lec01 Intro Page 20
11 FPGA Generic esign Flow esign Entry: Create your design files using: schematic editor or HL (hardware description languages: Verilog, VHL) esign Implementation: Logic synthesis (in case of using HL entry) followed by, Partition, place, and route to create configuration bit-stream file esign verification: Optionally use simulator to check function, Load design onto FPGA device (cable connects PC to development board), optional logic scope on FPGA check operation at full speed in real environment. Fall 2010 CS Lec01 Intro Page 21 Example Partition, Placement, and Route Idealized FPGA structure: Example Circuit: collection of gates and flip-flops Circuit combinational logic must be covered by 4-input 1-output s. Flip-flops from circuit must map to FPGA flip-flops. (Best to preserve closeness to CL to minimize wiring.) Best placement in general attempts to minimize wiring. Vdd, GN, clock, and global resets are all prewired. Fall 2010 CS Lec01 Intro Page 22
12 Example Partition, Placement, and Route OUT IN Example Circuit: collection of gates and flip-flops A A B B Two partitions. Each has single output, no more than 4 inputs, and no more than 1 flip-flop. In this case, inverter goes in both partitions. Note: the partition can be arbitrarily large as long as it has not more than 4 inputs and 1 output, and no more than 1 flip-flop. Fall 2010 CS Lec01 Intro Page 23 Xilinx FPGAs (interconnect detail) Fall 2010 CS Lec01 Intro Page 24
13 Project platform: Xilinx ML Spring 2011 EECS150 - Lec03-FPGA Page 25 FPGA: Xilinx Virtex-5 XC5VLX110T Virtex-5 die photo Spring 2011 EECS150 - Lec03-FPGA Page 2 A die is an unpackaged part!"#$%&'()
14 Ball Grid Array (BGA) Flip-Chip Package From die to PC board... Copper Heatspreader Thermal Interface Material Underfill Epoxy Adhesive Epoxy* Flip Chip Solder Bump Silicon ie Solder Ball Organic Build-Up Substrate Spring 2011 EECS150 - Lec03-FPGA Page 27!"#$%&'() BANK 40 I/O BANK 40 I/O BANK 40 I/O BANK 40 I/O Figure -3: Banks of I/O placed on chip floor plan BANK 20 I/O BANK 20 I/O CONFIG BANK 20 I/O BANK 20 I/O BANK 40 I/O BANK 40 I/O BANK 40 I/O BANK 40 I/O ug190 03_02130 Virtex-5 XC5VLX30 I/O Banks Colors on this package pinout map to banks. A B C E F G H J K L M N P R T U V W Y AA AB AC A AE AF A B C E F G H J K L M N P R T U V W Y AA AB AC A AE AF Spring 2011 EECS150 - Lec03-FPGA Page 28!"#$%&'()
15 Colors represent different types of resources: Logic Block RAM SP (ALUs) Clocking I/O Serial I/O + PCI A routing fabric runs throughout the chip to wire everything together. Spring 2011 EECS150 - Lec03-FPGA Page 29!"#$%&'() Routing fabric requires many interconnect layers. Spring 2011 EECS150 - Lec03-FPGA Page 30!"#$%&'()
16 Configurable Logic Blocks (CLBs) Slices define regular connections to the switching fabric, and to slices in CLBs above and below it on the die. CLB Slice(1) Switch Matrix Slice(0) CIN CIN UG190_5_01_12205 The LX110T has 17,280 slices. Spring 2011 EECS150 - Lec03-FPGA Page 31 X-Y naming convention for slices X0, X2,... are lower CLB slices. X1, X3,... are upper CLB slices. Y0, Y1,... are CLB column positions. CLB Slice X1Y1 CLB Slice X3Y1 Slice X0Y1 Slice X2Y1 CIN CIN CIN CIN CLB Slice X1Y0 CLB Slice X3Y0 Slice X0Y0 Slice X2Y0 Lower-left corner of the die. UG190_5_02_12205 Spring 2011 EECS150 - Lec03-FPGA Page 32
17 Atoms: 5-input Look Up Tables (s) 5 A[:2] (1) (0) (1). (0). A[:2] Computes any 5- input logic function. Timing is independent of function (0) (1) Latches set during configuration. 33 Spring 2011 EECS150 - Lec03-FPGA Page Virtex-5 -s: Composition of 5-s May be used as one -input ( out) or as two 5-input S ( and 5) Figure 3: Block iagram of a Virtex-5 -Input WP245_03_05100 The LX110T has 9,120 -s - delay is 0.9 ns Combinational logic (post configuration) Spring 2011 EECS150 - Lec03-FPGA Page 34
18 ([:1]) (C[:1]) (B[:1]) A[:1] A[:1] A[:1] The simplest view of a slice SLI (Optional) (Optional) () () (C) (C) (B) (B) Four -s Four Flip-Flops Switching fabric may see combinational and registered outputs. (A[:1]) () A[:1] (Optional) (Optional) (A) (A) An actual Virtex-5 slice adds many small features to this simplified diagram. We show them one by one... Spring 2011 EECS150 - Lec03-FPGA Page 35 SLI Two 7-s per slice... ([:1]) A[:1] F7BMUX (C[:1]) A[:1] (CMUX) (C) (Optional) Extra multiplexers (F7AMUX, F7BMUX) (CX) () (B[:1]) A[:1] F7AMUX Extra inputs (AX and CX) (AMUX) (A[:1]) A[:1] (A) (Optional) (AX) Spring 2011 EECS150 - Lec03-FPGA Page 3
19 Or one 8-s per slice... SLI ([:1]) A[:1] F7BMUX (C[:1]) A[:1] F8MUX Third multiplexer (F8MUX) (CX) (BMUX) (B[:1]) A[:1] F7AMUX (Optional) (B) Third input (BX) (A[:1]) (AX) (BX) () A[:1] Configuring the n of an n-... Spring 2011 EECS150 - Lec03-FPGA UG Page 37 Extra muxes to chose option... Inputs X FE/LAT MUX From eight 5-s... to one 8-. C Inputs CX F7BMUX F8MUX FE/LAT C CMUX C Combinational or registered outs. B Inputs BX FE/LAT B BMUX B Flip-flops unused by s can be used standalone. A Inputs AX (X) F7AMUX A AMUX FE/LAT A Spring 2011 EECS150 - Lec03-FPGA Page 38 UG190_5_25_05050 Flip-flops...
20 Slice flip-flop properties... Output HIGH LOW Each state element may be edge-triggered or latch. X CX BX AX C Output B Output A Output C HIGH LOW B HIGH LOW A HIGH LOW C Reset Type Sync Async B A Clock enable, clock polarity, and set/reset lines in a slice are shared. Each state element may respond differently to set/reset signal. Next: The vertical dimension... Spring 2011 EECS150 - Lec03-FPGA Page 39 From From X S3 (To Next Slice) I3 MUXCY Virtex 5 Verical Logic Carry Chain Block (CARRY4) CO3 O3 MUX/* MUX We can map ripple-carry addition onto carry-chain block. (Optional) From C S2 MUXCY CO2 CMUX/C* From C CX I2 O2 CMUX C (Optional) From B S1 MUXCY CO1 BMUX/B* From B BX I1 O1 BMUX B From A From A AX S0 I0 CYINIT 0 1 MUXCY CIN CO0 O0 (Optional) AMUX/A* AMUX A (Optional) * Can be used if unregistered/registered outputs are free. Spring 2011 CIN (From Previous Slice) EECS150 - Lec03-FPGA Page 40 UG190_5_24_05050 The carry-chain block also useful for speeding up other adder structures and counters.
21 Putting it all together... a SLIL X ROM X Reset Type Sync Async HIGH LOW MUX The previous slides explain all SLIL features. CMUX C C5 C4 C3 C2 C1 CX B B5 B4 B3 B2 B1 BX AX ROM ROM ROM 0/1 C CX B BX A AX Spring 2011 EECS150 - Lec03-FPGA Page HIGH LOW HIGH LOW HIGH LOW C C BMUX B B AMUX A A About 50% of the 17,280 slices in an LX110T are SLILs. The other slices are SLIMs, and have extra features. 41 CIN UG190_5_04_ A[:2] Recall: 5- architecture... (1) (0) (1). (0) (0) (1). A[:2] 32 Latches. Configured to 1 or 0. Some parts of a logic design need many state elements. SLIMs replace normal 5-s with circuits that can act like 5-s, but can alternatively use the 32 latches as RAM, ROM, shift registers. Spring 2011 EECS150 - Lec03-FPGA Page 42
22 Normal - inputs. Memory write address A SLIM -... Memory data input I2 PRAM4/32 SPRAM4/32 L32 L1 RAM I1 ROM MC31 W-W WA7 WA8 Normal 5/- outputs. Memory data input. Control output for chaining s to make larger memories. A 1.1 Mb distributed RAM can be made if all SLIMs of an LX110T are used as RAM. Spring 2011 EECS150 - Lec03-FPGA Page 43 A[7:0] W WE Many RAM configurations possible... 8 () (WE/) RAM25X1S I1 A[:1] WA[8:1] WE I1 A[:1] WA[8:1] WE I1 A[:1] WA[8:1] WE I1 A[:1] WA[8:1] WE SPRAM4 SPRAM4 SPRAM4 SPRAM4 F7BMUX (AX) F7AMUX (CX) A7 (BX) F8MUX O Output Registered Output (Optional) UG190_5_14_05050 Example configuration: Single-port 25b x 1, registered output. A complete list:! Single-Port 32 x 1-bit RAM! ual-port 32 x 1-bit RAM! uad-port 32 x 2-bit RAM! Simple ual-port 32 x -bit RAM! Single-Port 4 x 1-bit RAM! ual-port 4 x 1-bit RAM! uad-port 4 x 1-bit RAM! Simple ual-port 4 x 3-bit RAM! Single-Port 128 x 1-bit RAM! ual-port 128 x 1-bit RAM! Single-Port 25 x 1-bit RAM A 128 x 32b RAM has a 1.1ns access time. Figure 5-14: istributed RAM (RAM25X1S) Spring 2011 EECS150 - Lec03-FPGA Page 44
23 SLIM shift register (one of many). SHIFTIN () 32-bit Shift Register WE SHIFTOUT(31) Address (A[4:0]) 5 MUX UG190_5_1_05050 See Virtex-5 User Guide for an complete list of shift-register types. Spring 2011 EECS150 - Lec03-FPGA Page 45 SLIL vs SLIM... SLIL SLIM Reset Type Sync Reset Type Sync X ROM X Async HIGH LOW MUX I I2 W-W WA7 WA8 PRAM4/32 SPRAM4/32 L32 L1 RAM ROM I1 MC31 X Async HIGH LOW MUX CMUX X C C5 C4 C3 C2 C1 CX B B5 B4 B3 B2 B1 BX AX ROM ROM ROM CIN SLIM adds memory 0/1 C CX B BX A AX HIGH LOW HIGH LOW HIGH LOW C C BMUX B B AMUX A A UG190_5_04_0320 features to s, + muxes. I2 PRAM4/32 SPRAM4/32 L32 L1 RAM I1 ROM MC31 W-W WA7 WA8 I2 PRAM4/32 SPRAM4/32 L32 L1 RAM I1 ROM MC31 W-W WA7 WA8 I2 PRAM4/32 SPRAM4/32 L32 L1 RAM I1 ROM MC31 W-W WA7 WA8 Spring 2011 WE WE EECS150 - Lec03-FPGA CIN Page 4 CI C C5 C4 C3 C2 C1 CX BI B B5 B4 B3 B2 B1 BX AI AX WSGEN 0/1 C CX B BX A AX HIGH LOW HIGH LOW HIGH LOW CMUX C C BMUX B B AMUX A A UG190_5_03_04100
24 Virtex-5 SP48E Slice Efficient implementation of multiply, add, bit-wise logical. LX110T has 4 in a single column. Spring 2011 EECS150 - Lec03-FPGA Page 47 Spring 2011 EECS150 - Lec03-FPGA Page 48
25 To be continued... Throughout the semester, we will look at different Virtex-5 features in-depth. Switch fabric Block RAM SP48 (ALUs) Clocking I/O Serial I/O + PCI Spring 2011 EECS150 - Lec03-FPGA Page 49!"#$%&'()
CS Digital Systems Project Laboratory
CS 194- igital Systems Project Laboratory Lecture 1 Virtex-5 Microarchitecture Not a professor. John is OK. 2008-9- John Lazzaro (www.cs.berkeley.edu/~lazzaro) And also, an introduction to the project.
More informationEECS150 - Digital Design Lecture 3 - Field Programmable Gate Arrays (FPGAs) FPGA Overview
EECS150 - igital esign Lecture 3 - Field Programmable Gate rrays (FPGs) January 27, 2009 John Wawrzynek Spring 2009 EECS150 - Lec03-FPG Page 1 FPG Overview asic idea: two-dimensional array of logic blocks
More informationEECS150 - Digital Design Lecture 6 - Field Programmable Gate Arrays (FPGAs)
EECS150 - Digital Design Lecture 6 - Field Programmable Gate Arrays (FPGAs) September 12, 2002 John Wawrzynek Fall 2002 EECS150 - Lec06-FPGA Page 1 Outline What are FPGAs? Why use FPGAs (a short history
More informationOutline. EECS150 - Digital Design Lecture 6 - Field Programmable Gate Arrays (FPGAs) FPGA Overview. Why FPGAs?
EECS150 - Digital Design Lecture 6 - Field Programmable Gate Arrays (FPGAs) September 12, 2002 John Wawrzynek Outline What are FPGAs? Why use FPGAs (a short history lesson). FPGA variations Internal logic
More informationEECS150 - Digital Design Lecture 13 - Project Description, Part 2: Memory Blocks. Project Overview
EECS150 - igital esign Lecture 13 - Project escription, Part 2: Memory Blocks Mar 2, 2010 John Wawrzynek Spring 2010 EECS150 - Lec13-proj2 Page 1 Project Overview A. MIPS150 pipeline structure B. Serial
More informationECE 448 Lecture 5. FPGA Devices
E 448 Lecture 5 FPGA evices E 448 FPGA and ASIC esign with VHL George Mason University Required reading 7 Series FPGAs Configurable Logic Block: User Guide Overview Functional etails 2 What is an FPGA?
More informationBasic FPGA Architectures. Actel FPGAs. PLD Technologies: Antifuse. 3 Digital Systems Implementation Programmable Logic Devices
3 Digital Systems Implementation Programmable Logic Devices Basic FPGA Architectures Why Programmable Logic Devices (PLDs)? Low cost, low risk way of implementing digital circuits as application specific
More informationField Programmable Gate Array (FPGA)
Field Programmable Gate Array (FPGA) Lecturer: Krébesz, Tamas 1 FPGA in general Reprogrammable Si chip Invented in 1985 by Ross Freeman (Xilinx inc.) Combines the advantages of ASIC and uc-based systems
More informationFPGA for Complex System Implementation. National Chiao Tung University Chun-Jen Tsai 04/14/2011
FPGA for Complex System Implementation National Chiao Tung University Chun-Jen Tsai 04/14/2011 About FPGA FPGA was invented by Ross Freeman in 1989 SRAM-based FPGA properties Standard parts Allowing multi-level
More informationINTRODUCTION TO FIELD PROGRAMMABLE GATE ARRAYS (FPGAS)
INTRODUCTION TO FIELD PROGRAMMABLE GATE ARRAYS (FPGAS) Bill Jason P. Tomas Dept. of Electrical and Computer Engineering University of Nevada Las Vegas FIELD PROGRAMMABLE ARRAYS Dominant digital design
More informationPhysical Implementation
CS250 VLSI Systems Design Fall 2009 John Wawrzynek, Krste Asanovic, with John Lazzaro Physical Implementation Outline Standard cell back-end place and route tools make layout mostly automatic. However,
More informationToday. Comments about assignment Max 1/T (skew = 0) Max clock skew? Comments about assignment 3 ASICs and Programmable logic Others courses
Today Comments about assignment 3-43 Comments about assignment 3 ASICs and Programmable logic Others courses octor Per should show up in the end of the lecture Mealy machines can not be coded in a single
More informationFPGA architecture and design technology
CE 435 Embedded Systems Spring 2017 FPGA architecture and design technology Nikos Bellas Computer and Communications Engineering Department University of Thessaly 1 FPGA fabric A generic island-style FPGA
More informationTopics. Midterm Finish Chapter 7
Lecture 9 Topics Midterm Finish Chapter 7 ROM (review) Memory device in which permanent binary information is stored. Example: 32 x 8 ROM Five input lines (2 5 = 32) 32 outputs, each representing a memory
More informationEECS150 - Digital Design Lecture 16 Memory 1
EECS150 - Digital Design Lecture 16 Memory 1 March 13, 2003 John Wawrzynek Spring 2003 EECS150 - Lec16-mem1 Page 1 Memory Basics Uses: Whenever a large collection of state elements is required. data &
More informationINTRODUCTION TO FPGA ARCHITECTURE
3/3/25 INTRODUCTION TO FPGA ARCHITECTURE DIGITAL LOGIC DESIGN (BASIC TECHNIQUES) a b a y 2input Black Box y b Functional Schematic a b y a b y a b y 2 Truth Table (AND) Truth Table (OR) Truth Table (XOR)
More informationReview. EECS Components and Design Techniques for Digital Systems. Lec 03 Field Programmable Gate Arrays
EECS 5 - Components and Design Techniques for Digital Systems Lec 3 Field Programmable Gate Arrays 9-4-7 David Culler Electrical Engineering and Computer Sciences University of California, Berkeley http://www.eecs.berkeley.edu/~culler
More informationPROGRAMMABLE MODULES SPECIFICATION OF PROGRAMMABLE COMBINATIONAL AND SEQUENTIAL MODULES
PROGRAMMABLE MODULES SPECIFICATION OF PROGRAMMABLE COMBINATIONAL AND SEQUENTIAL MODULES. psa. rom. fpga THE WAY THE MODULES ARE PROGRAMMED NETWORKS OF PROGRAMMABLE MODULES EXAMPLES OF USES Programmable
More informationXilinx ASMBL Architecture
FPGA Structure Xilinx ASMBL Architecture Design Flow Synthesis: HDL to FPGA primitives Translate: FPGA Primitives to FPGA Slice components Map: Packing of Slice components into Slices, placement of Slices
More informationEECS150 - Digital Design Lecture 16 - Memory
EECS150 - Digital Design Lecture 16 - Memory October 17, 2002 John Wawrzynek Fall 2002 EECS150 - Lec16-mem1 Page 1 Memory Basics Uses: data & program storage general purpose registers buffering table lookups
More informationEE219A Spring 2008 Special Topics in Circuits and Signal Processing. Lecture 9. FPGA Architecture. Ranier Yap, Mohamed Ali.
EE219A Spring 2008 Special Topics in Circuits and Signal Processing Lecture 9 FPGA Architecture Ranier Yap, Mohamed Ali Annoucements Homework 2 posted Due Wed, May 7 Now is the time to turn-in your Hw
More informationFPGA. Logic Block. Plessey FPGA: basic building block here is 2-input NAND gate which is connected to each other to implement desired function.
FPGA Logic block of an FPGA can be configured in such a way that it can provide functionality as simple as that of transistor or as complex as that of a microprocessor. It can used to implement different
More informationFPGA Implementations
FPGA Implementations Smith Text: Chapters 4-8 Online version at: http://www10.edacafe.com/book/asic/asics.php Topic outline Chapter 4 Programmable ASIC technologies Chapter 5 Programmable logic cells Chapter
More informationTopics. Midterm Finish Chapter 7
Lecture 9 Topics Midterm Finish Chapter 7 Xilinx FPGAs Chapter 7 Spartan 3E Architecture Source: Spartan-3E FPGA Family Datasheet CLB Configurable Logic Blocks Each CLB contains four slices Each slice
More informationECE 645: Lecture 1. Basic Adders and Counters. Implementation of Adders in FPGAs
ECE 645: Lecture Basic Adders and Counters Implementation of Adders in FPGAs Required Reading Behrooz Parhami, Computer Arithmetic: Algorithms and Hardware Design Chapter 5, Basic Addition and Counting,
More informationOutline. EECS Components and Design Techniques for Digital Systems. Lec 11 Putting it all together Where are we now?
Outline EECS 5 - Components and Design Techniques for Digital Systems Lec Putting it all together -5-4 David Culler Electrical Engineering and Computer Sciences University of California Berkeley Top-to-bottom
More informationFPGA How do they work?
ent FPGA How do they work? ETI135, Advanced Digital IC Design What is a FPGA? Manufacturers Distributed RAM History FPGA vs ASIC FPGA and Microprocessors Alternatives to FPGAs Anders Skoog, Stefan Granlund
More informationSpiral 2-8. Cell Layout
2-8.1 Spiral 2-8 Cell Layout 2-8.2 Learning Outcomes I understand how a digital circuit is composed of layers of materials forming transistors and wires I understand how each layer is expressed as geometric
More informationVirtex-II Architecture. Virtex II technical, Design Solutions. Active Interconnect Technology (continued)
Virtex-II Architecture SONET / SDH Virtex II technical, Design Solutions PCI-X PCI DCM Distri RAM 18Kb BRAM Multiplier LVDS FIFO Shift Registers BLVDS SDRAM QDR SRAM Backplane Rev 4 March 4th. 2002 J-L
More informationDigital Integrated Circuits
Digital Integrated Circuits Lecture 9 Jaeyong Chung Robust Systems Laboratory Incheon National University DIGITAL DESIGN FLOW Chung EPC6055 2 FPGA vs. ASIC FPGA (A programmable Logic Device) Faster time-to-market
More informationDigital Design Methodology (Revisited) Design Methodology: Big Picture
Digital Design Methodology (Revisited) Design Methodology Design Specification Verification Synthesis Technology Options Full Custom VLSI Standard Cell ASIC FPGA CS 150 Fall 2005 - Lec #25 Design Methodology
More informationVirtex-II Architecture
Virtex-II Architecture Block SelectRAM resource I/O Blocks (IOBs) edicated multipliers Programmable interconnect Configurable Logic Blocks (CLBs) Virtex -II architecture s core voltage operates at 1.5V
More informationEECS150 - Digital Design Lecture 5 - Verilog Logic Synthesis
EECS150 - Digital Design Lecture 5 - Verilog Logic Synthesis Jan 31, 2012 John Wawrzynek Spring 2012 EECS150 - Lec05-verilog_synth Page 1 Outline Quick review of essentials of state elements Finite State
More informationFPGA Architecture Overview. Generic FPGA Architecture (1) FPGA Architecture
FPGA Architecture Overview dr chris dick dsp chief architect wireless and signal processing group xilinx inc. Generic FPGA Architecture () Generic FPGA architecture consists of an array of logic tiles
More informationEvolution of Implementation Technologies. ECE 4211/5211 Rapid Prototyping with FPGAs. Gate Array Technology (IBM s) Programmable Logic
ECE 42/52 Rapid Prototyping with FPGAs Dr. Charlie Wang Department of Electrical and Computer Engineering University of Colorado at Colorado Springs Evolution of Implementation Technologies Discrete devices:
More informationproblem maximum score 1 10pts 2 8pts 3 10pts 4 12pts 5 7pts 6 7pts 7 7pts 8 17pts 9 22pts total 100pts
University of California at Berkeley College of Engineering epartment of Electrical Engineering and Computer Sciences EECS150 J. Wawrzynek Spring 2003 2/21/03 Exam I Solutions Name: I number: This is a
More informationPINE TRAINING ACADEMY
PINE TRAINING ACADEMY Course Module A d d r e s s D - 5 5 7, G o v i n d p u r a m, G h a z i a b a d, U. P., 2 0 1 0 1 3, I n d i a Digital Logic System Design using Gates/Verilog or VHDL and Implementation
More informationOutline. Field Programmable Gate Arrays. Programming Technologies Architectures. Programming Interfaces. Historical perspective
Outline Field Programmable Gate Arrays Historical perspective Programming Technologies Architectures PALs, PLDs,, and CPLDs FPGAs Programmable logic Interconnect network I/O buffers Specialized cores Programming
More informationLecture 41: Introduction to Reconfigurable Computing
inst.eecs.berkeley.edu/~cs61c CS61C : Machine Structures Lecture 41: Introduction to Reconfigurable Computing Michael Le, Sp07 Head TA April 30, 2007 Slides Courtesy of Hayden So, Sp06 CS61c Head TA Following
More informationIntroduction to Field Programmable Gate Arrays
Introduction to Field Programmable Gate Arrays Lecture 1/3 CERN Accelerator School on Digital Signal Processing Sigtuna, Sweden, 31 May 9 June 2007 Javier Serrano, CERN AB-CO-HT Outline Historical introduction.
More informationDesign Methodologies. Full-Custom Design
Design Methodologies Design styles Full-custom design Standard-cell design Programmable logic Gate arrays and field-programmable gate arrays (FPGAs) Sea of gates System-on-a-chip (embedded cores) Design
More informationPLAs & PALs. Programmable Logic Devices (PLDs) PLAs and PALs
PLAs & PALs Programmable Logic Devices (PLDs) PLAs and PALs PLAs&PALs By the late 1970s, standard logic devices were all the rage, and printed circuit boards were loaded with them. To offer the ultimate
More informationBasic FPGA Architecture Xilinx, Inc. All Rights Reserved
Basic FPGA Architecture 2005 Xilinx, Inc. All Rights Reserved Objectives After completing this module, you will be able to: Identify the basic architectural resources of the Virtex -II FPGA List the differences
More information! Program logic functions, interconnect using SRAM. ! Advantages: ! Re-programmable; ! dynamically reconfigurable; ! uses standard processes.
Topics! SRAM-based FPGA fabrics:! Xilinx.! Altera. SRAM-based FPGAs! Program logic functions, using SRAM.! Advantages:! Re-programmable;! dynamically reconfigurable;! uses standard processes.! isadvantages:!
More informationDigital Design Methodology
Digital Design Methodology Prof. Soo-Ik Chae Digital System Designs and Practices Using Verilog HDL and FPGAs @ 2008, John Wiley 1-1 Digital Design Methodology (Added) Design Methodology Design Specification
More informationEECS 151/251A Spring 2019 Digital Design and Integrated Circuits. Instructor: John Wawrzynek. Lecture 18 EE141
EECS 151/251A Spring 2019 Digital Design and Integrated Circuits Instructor: John Wawrzynek Lecture 18 Memory Blocks Multi-ported RAM Combining Memory blocks FIFOs FPGA memory blocks Memory block synthesis
More informationECE 636. Reconfigurable Computing. Lecture 2. Field Programmable Gate Arrays I
ECE 636 Reconfigurable Computing Lecture 2 Field Programmable Gate Arrays I Overview Anti-fuse and EEPROM-based devices Contemporary SRAM devices - Wiring - Embedded New trends - Single-driver wiring -
More informationEE178 Lecture Module 2. Eric Crabill SJSU / Xilinx Fall 2007
EE178 Lecture Module 2 Eric Crabill SJSU / Xilinx Fall 2007 Lecture #4 Agenda Survey of implementation technologies. Implementation Technologies Small scale and medium scale integration. Up to about 200
More informationIntroduction to Modern FPGAs
Introduction to Modern FPGAs Arturo Díaz Pérez Centro de Investigación y de Estudios Avanzados del IPN Departamento de Ingeniería Eléctrica Sección de Computación adiaz@cs.cinvestav.mx Outline Technology
More informationFPGA: What? Why? Marco D. Santambrogio
FPGA: What? Why? Marco D. Santambrogio marco.santambrogio@polimi.it 2 Reconfigurable Hardware Reconfigurable computing is intended to fill the gap between hardware and software, achieving potentially much
More informationEECS150 - Digital Design Lecture 10 Logic Synthesis
EECS150 - Digital Design Lecture 10 Logic Synthesis September 26, 2002 John Wawrzynek Fall 2002 EECS150 Lec10-synthesis Page 1 Logic Synthesis Verilog and VHDL stated out as simulation languages, but quickly
More informationECE 331 Digital System Design
ECE 331 Digital System Design Tristate Buffers, Read-Only Memories and Programmable Logic Devices (Lecture #17) The slides included herein were taken from the materials accompanying Fundamentals of Logic
More informationEECS Components and Design Techniques for Digital Systems. Lec 20 RTL Design Optimization 11/6/2007
EECS 5 - Components and Design Techniques for Digital Systems Lec 2 RTL Design Optimization /6/27 Shauki Elassaad Electrical Engineering and Computer Sciences University of California, Berkeley Slides
More informationVery Large Scale Integration (VLSI)
Very Large Scale Integration (VLSI) Lecture 6 Dr. Ahmed H. Madian Ah_madian@hotmail.com Dr. Ahmed H. Madian-VLSI 1 Contents FPGA Technology Programmable logic Cell (PLC) Mux-based cells Look up table PLA
More informationProgrammable Logic. Any other approaches?
Programmable Logic So far, have only talked about PALs (see 22V10 figure next page). What is the next step in the evolution of PLDs? More gates! How do we get more gates? We could put several PALs on one
More informationOverview. CSE372 Digital Systems Organization and Design Lab. Hardware CAD. Two Types of Chips
Overview CSE372 Digital Systems Organization and Design Lab Prof. Milo Martin Unit 5: Hardware Synthesis CAD (Computer Aided Design) Use computers to design computers Virtuous cycle Architectural-level,
More informationDesign Tools for 100,000 Gate Programmable Logic Devices
esign Tools for 100,000 Gate Programmable Logic evices March 1996, ver. 1 Product Information Bulletin 22 Introduction The capacity of programmable logic devices (PLs) has risen dramatically to meet the
More informationEECS150 - Digital Design Lecture 10 Logic Synthesis
EECS150 - Digital Design Lecture 10 Logic Synthesis February 13, 2003 John Wawrzynek Spring 2003 EECS150 Lec8-synthesis Page 1 Logic Synthesis Verilog and VHDL started out as simulation languages, but
More informationDesign Methodologies and Tools. Full-Custom Design
Design Methodologies and Tools Design styles Full-custom design Standard-cell design Programmable logic Gate arrays and field-programmable gate arrays (FPGAs) Sea of gates System-on-a-chip (embedded cores)
More informationFPGA Based Digital Design Using Verilog HDL
FPGA Based Digital Design Using Course Designed by: IRFAN FAISAL MIR ( Verilog / FPGA Designer ) irfanfaisalmir@yahoo.com * Organized by Electronics Division Integrated Circuits Uses for digital IC technology
More informationL2: FPGA HARDWARE : ADVANCED DIGITAL DESIGN PROJECT FALL 2015 BRANDON LUCIA
L2: FPGA HARDWARE 18-545: ADVANCED DIGITAL DESIGN PROJECT FALL 2015 BRANDON LUCIA 18-545: FALL 2014 2 Admin stuff Project Proposals happen on Monday Be prepared to give an in-class presentation Lab 1 is
More informationProgrammable Logic Devices FPGA Architectures II CMPE 415. Overview This set of notes introduces many of the features available in the FPGAs of today.
Overview This set of notes introduces many of the features available in the FPGAs of today. The majority use SRAM based configuration cells, which allows fast reconfiguation. Allows new design ideas to
More informationECE 485/585 Microprocessor System Design
Microprocessor System Design Lecture 4: Memory Hierarchy Memory Taxonomy SRAM Basics Memory Organization DRAM Basics Zeshan Chishti Electrical and Computer Engineering Dept Maseeh College of Engineering
More informationField Program mable Gate Arrays
Field Program mable Gate Arrays M andakini Patil E H E P g r o u p D H E P T I F R SERC school NISER, Bhubaneshwar Nov 7-27 2017 Outline Digital electronics Short history of programmable logic devices
More informationEECS 150 Homework 7 Solutions Fall (a) 4.3 The functions for the 7 segment display decoder given in Section 4.3 are:
Problem 1: CLD2 Problems. (a) 4.3 The functions for the 7 segment display decoder given in Section 4.3 are: C 0 = A + BD + C + BD C 1 = A + CD + CD + B C 2 = A + B + C + D C 3 = BD + CD + BCD + BC C 4
More informationLab 1: FPGA Physical Layout
Lab 1: FPGA Physical Layout University of California, Berkeley Department of Electrical Engineering and Computer Sciences EECS150 Components and Design Techniques for Digital Systems John Wawrzynek, James
More informationLogic Synthesis. EECS150 - Digital Design Lecture 6 - Synthesis
Logic Synthesis Verilog and VHDL started out as simulation languages, but quickly people wrote programs to automatically convert Verilog code into low-level circuit descriptions (netlists). EECS150 - Digital
More informationCS310 Embedded Computer Systems. Maeng
1 INTRODUCTION (PART II) Maeng Three key embedded system technologies 2 Technology A manner of accomplishing a task, especially using technical processes, methods, or knowledge Three key technologies for
More informationWhat is Xilinx Design Language?
Bill Jason P. Tomas University of Nevada Las Vegas Dept. of Electrical and Computer Engineering What is Xilinx Design Language? XDL is a human readable ASCII format compatible with the more widely used
More informationCHAPTER 9 MULTIPLEXERS, DECODERS, AND PROGRAMMABLE LOGIC DEVICES
CHAPTER 9 MULTIPLEXERS, DECODERS, AND PROGRAMMABLE LOGIC DEVICES This chapter in the book includes: Objectives Study Guide 9.1 Introduction 9.2 Multiplexers 9.3 Three-State Buffers 9.4 Decoders and Encoders
More informationStacked Silicon Interconnect Technology (SSIT)
Stacked Silicon Interconnect Technology (SSIT) Suresh Ramalingam Xilinx Inc. MEPTEC, January 12, 2011 Agenda Background and Motivation Stacked Silicon Interconnect Technology Summary Background and Motivation
More informationFYSE420 DIGITAL ELECTRONICS. Lecture 7
FYSE420 DIGITAL ELECTRONICS Lecture 7 1 [1] [2] [3] DIGITAL LOGIC CIRCUIT ANALYSIS & DESIGN Nelson, Nagle, Irvin, Carrol ISBN 0-13-463894-8 DIGITAL DESIGN Morris Mano Fourth edition ISBN 0-13-198924-3
More informationDigital Logic & Computer Design CS Professor Dan Moldovan Spring 2010
Digital Logic & Computer Design CS 434 Professor Dan Moldovan Spring 2 Copyright 27 Elsevier 5- Chapter 5 :: Digital Building Blocks Digital Design and Computer Architecture David Money Harris and Sarah
More informationCS429: Computer Organization and Architecture
CS429: Computer Organization and Architecture Dr. Bill Young Department of Computer Sciences University of Texas at Austin Last updated: January 2, 2018 at 11:23 CS429 Slideset 5: 1 Topics of this Slideset
More informationEITF35: Introduction to Structured VLSI Design
EITF35: Introduction to Structured VLSI Design Introduction to FPGA design Rakesh Gangarajaiah Rakesh.gangarajaiah@eit.lth.se Slides from Chenxin Zhang and Steffan Malkowsky WWW.FPGA What is FPGA? Field
More informationAnnouncements. Midterm 2 next Thursday, 6-7:30pm, 277 Cory Review session on Tuesday, 6-7:30pm, 277 Cory Homework 8 due next Tuesday Labs: project
- Fall 2002 Lecture 20 Synthesis Sequential Logic Announcements Midterm 2 next Thursday, 6-7:30pm, 277 Cory Review session on Tuesday, 6-7:30pm, 277 Cory Homework 8 due next Tuesday Labs: project» Teams
More informationSynthesis of VHDL Code for FPGA Design Flow Using Xilinx PlanAhead Tool
Synthesis of VHDL Code for FPGA Design Flow Using Xilinx PlanAhead Tool Md. Abdul Latif Sarker, Moon Ho Lee Division of Electronics & Information Engineering Chonbuk National University 664-14 1GA Dekjin-Dong
More informationThe Virtex FPGA and Introduction to design techniques
The Virtex FPGA and Introduction to design techniques SM098 Computation Structures Lecture 6 Simple Programmable Logic evices Programmable Array Logic (PAL) AN-OR arrays are common blocks in SPL and CPL
More informationECE 448 Lecture 5. FPGA Devices
ECE 448 Lecture 5 FPGA Devices George Mason University Required reading Spartan-6 FPGA Configurable Logic Block: User Guide CLB Overview Slice Description 2 Recommended reading Highly recommended for the
More informationProgrammable Logic. Simple Programmable Logic Devices
Programmable Logic SM098 Computation Structures - Programmable Logic Simple Programmable Logic evices Programmable Array Logic (PAL) AN-OR arrays are common blocks in SPL and CPL architectures Implements
More informationChapter 8 FPGA Basics
Chapter 8 FPGA Basics NCHU EE Yin-Tsung Hwang YT Hwang VLSI SP 1 What are PLs? YT Hwang VLSI SP 2 Programmable Logic evices A pre-fabricated ASIC capable of performing any logic subject to user programming
More informationMemory and Programmable Logic
Memory and Programmable Logic Memory units allow us to store and/or retrieve information Essentially look-up tables Good for storing data, not for function implementation Programmable logic device (PLD),
More informationXilinx SSI Technology Concept to Silicon Development Overview
Xilinx SSI Technology Concept to Silicon Development Overview Shankar Lakka Aug 27 th, 2012 Agenda Economic Drivers and Technical Challenges Xilinx SSI Technology, Power, Performance SSI Development Overview
More informationCPE/EE 422/522. Introduction to Xilinx Virtex Field-Programmable Gate Arrays Devices. Dr. Rhonda Kay Gaede UAH. Outline
CPE/EE 422/522 Introduction to Xilinx Virtex Field-Programmable Gate Arrays Devices Dr. Rhonda Kay Gaede UAH Outline Introduction Field-Programmable Gate Arrays Virtex Virtex-E, Virtex-II, and Virtex-II
More informationESE532: System-on-a-Chip Architecture. Today. Message. Graph Cycles. Preclass 1. Reminder
ESE532: System-on-a-Chip Architecture Day 8: September 26, 2018 Spatial Computations Today Graph Cycles (from Day 7) Accelerator Pipelines FPGAs Zynq Computational Capacity 1 2 Message Custom accelerators
More informationThe Next Generation 65-nm FPGA. Steve Douglass, Kees Vissers, Peter Alfke Xilinx August 21, 2006
The Next Generation 65-nm FPGA Steve Douglass, Kees Vissers, Peter Alfke Xilinx August 21, 2006 Hot Chips, 2006 Structure of the talk 65nm technology going towards 32nm Virtex-5 family Improved I/O Benchmarking
More informationECEU530. Project Presentations. ECE U530 Digital Hardware Synthesis. Rest of Semester. Memory Structures
ECEU53 ECE U53 igital Hardware Synthesis Prof. Miriam Leeser mel@coe.neu.edu November 5, 26 Lecture 8: Student project presentations Memories and FPGAs Tri-state buffers and busses Student project presentations:
More informationProgrammable Logic Devices
Programmable Logic Devices INTRODUCTION A programmable logic device or PLD is an electronic component used to build reconfigurable digital circuits. Unlike a logic gate, which has a fixed function, a PLD
More informationDigital Systems Design with PLDs and FPGAs Kuruvilla Varghese Department of Electronic Systems Engineering Indian Institute of Science Bangalore
Digital Systems Design with PLDs and FPGAs Kuruvilla Varghese Department of Electronic Systems Engineering Indian Institute of Science Bangalore Lecture-36 FPGA Interconnection, Design Methodology Welcome
More informationReadings: Storage unit. Can hold an n-bit value Composed of a group of n flip-flops. Each flip-flop stores 1 bit of information.
Registers Readings: 5.8-5.9.3 Storage unit. Can hold an n-bit value Composed of a group of n flip-flops Each flip-flop stores 1 bit of information ff ff ff ff 178 Controlled Register Reset Load Action
More informationField Programmable Gate Array
Field Programmable Gate Array System Arch 27 (Fire Tom Wada) What is FPGA? System Arch 27 (Fire Tom Wada) 2 FPGA Programmable (= reconfigurable) Digital System Component Basic components Combinational
More informationSynthesizable FPGA Fabrics Targetable by the VTR CAD Tool
Synthesizable FPGA Fabrics Targetable by the VTR CAD Tool Jin Hee Kim and Jason Anderson FPL 2015 London, UK September 3, 2015 2 Motivation for Synthesizable FPGA Trend towards ASIC design flow Design
More informationField Programmable Gate Arrays (FPGAs)
EECE-474 Advanced VHDL and FPGA Design Lecture Field Programmable Gate Arrays (FPGAs) Cristinel Ababei Dept. of Electrical and Computer Engr. Marquette University Overview FPGA Devices ASIC vs. FPGA FPGA
More informationEECS150 - Digital Design Lecture 4 - Verilog Introduction. Outline
EECS150 - Digital Design Lecture 4 - Verilog Introduction Feb 3, 2009 John Wawrzynek Spring 2009 EECS150 - Lec05-Verilog Page 1 Outline Background and History of Hardware Description Brief Introduction
More informationFPGA VHDL Design Flow AES128 Implementation
Sakinder Ali FPGA VHDL Design Flow AES128 Implementation Field Programmable Gate Array Basic idea: two-dimensional array of logic blocks and flip-flops with a means for the user to configure: 1. The interconnection
More informationECE 545 Lecture 12. FPGA Resources. George Mason University
ECE 545 Lecture 2 FPGA Resources George Mason University Recommended reading 7 Series FPGAs Configurable Logic Block: User Guide Overview Functional Details 2 What is an FPGA? Configurable Logic Blocks
More informationAltera FLEX 8000 Block Diagram
Altera FLEX 8000 Block Diagram Figure from Altera technical literature FLEX 8000 chip contains 26 162 LABs Each LAB contains 8 Logic Elements (LEs), so a chip contains 208 1296 LEs, totaling 2,500 16,000
More informationEITF35: Introduction to Structured VLSI Design
EITF35: Introduction to Structured VLSI Design Part 1.1.2: Introduction (Digital VLSI Systems) Liang Liu liang.liu@eit.lth.se 1 Outline Why Digital? History & Roadmap Device Technology & Platforms System
More informationThe Xilinx XC6200 chip, the software tools and the board development tools
The Xilinx XC6200 chip, the software tools and the board development tools What is an FPGA? Field Programmable Gate Array Fully programmable alternative to a customized chip Used to implement functions
More informationEECS Components and Design Techniques for Digital Systems. Lec 07 PLAs and FSMs 9/ Big Idea: boolean functions <> gates.
Review: minimum sum-of-products expression from a Karnaugh map EECS 5 - Components and Design Techniques for Digital Systems Lec 7 PLAs and FSMs 9/2- David Culler Electrical Engineering and Computer Sciences
More information