George Mason University ECE 448 – FPGA and ASIC Design with VHDL FPGA Devices ECE 448 Lecture 5.

Slides:



Advertisements
Similar presentations
ECE 506 Reconfigurable Computing ece. arizona
Advertisements

Lecture 15 Finite State Machine Implementation
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.
George Mason University ECE 448 – FPGA and ASIC Design with VHDL FPGA Devices & FPGA Design Flow ECE 448 Lecture 5.
Survey of Reconfigurable Logic Technologies
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.
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.
George Mason University ECE 448 – FPGA and ASIC Design with VHDL Overview of Modern FPGAs ECE 448 Lecture 14.
Lecture 11 Xilinx FPGA Memories
FPGA Devices & FPGA Design Flow
George Mason University ECE 645 – Computer Arithmetic Introduction to FPGA Devices.
ECE 448 Lecture 7 FPGA Devices
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
Introduction to Field Programmable Gate Arrays (FPGAs) COE 203 Digital Logic Laboratory Dr. Aiman El-Maleh College of Computer Sciences and Engineering.
February 4, 2002 John Wawrzynek
Lecture 3 1 ECE 412: Microcomputer Laboratory Lecture 3: Introduction to FPGAs.
George Mason University ECE 448 – FPGA and ASIC Design with VHDL Overview of Modern FPGAs ECE 448 Lecture 14.
Features of Modern FPGAs
CMPUT Computer Organization and Architecture II1 CMPUT329 - Fall 2003 Topic: Internal Organization of an FPGA José Nelson Amaral.
Basic Adders and Counters Implementation of Adders in FPGAs ECE 645: Lecture 3.
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.
EKT303/4 PRINCIPLES OF PRINCIPLES OF COMPUTER ARCHITECTURE (PoCA)
Section I Introduction to Xilinx
George Mason University FPGA Memories ECE 448 Lecture 13.
Section II Basic PLD Architecture. Section II Agenda  Basic PLD Architecture —XC9500 and XC4000 Hardware Architectures —Foundation and Alliance Series.
Ch.9 CPLD/FPGA Design TAIST ICTES Program VLSI Design Methodology Hiroaki Kunieda Tokyo Institute of Technology.
George Mason University FPGA Devices & FPGA Design Flow ECE 448 Lecture 7.
COE 405 Programmable Logic and Storage Devices Dr. Aiman H. El-Maleh Computer Engineering Department King Fahd University of Petroleum & Minerals Dr. Aiman.
Electronics in High Energy Physics Introduction to Electronics in HEP Field Programmable Gate Arrays Part 1 based on the lecture of S.Haas.
ECE 448 – FPGA and ASIC Design with VHDL Lecture 11 Memories in Xilinx FPGAs.
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.
FPGA (Field Programmable Gate Array): CLBs, Slices, and LUTs Each configurable logic block (CLB) in Spartan-6 FPGAs consists of two slices, arranged side-by-side.
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.
Introduction to FPGA Created & Presented By Ali Masoudi For Advanced Digital Communication Lab (ADC-Lab) At Isfahan University Of technology (IUT) Department.
© 2003 Xilinx, Inc. All Rights Reserved Synchronous Design Techniques.
ECE 448 Lecture 6 FPGA devices
George Mason University ECE 449 – Computer Design Lab Introduction to FPGA Devices & Tools.
ECE 545 Lecture 7 FPGA Design Flow.
Sept. 2005EE37E Adv. Digital Electronics Lesson 1 (Part 2) FPGA Architectures.
FPGA Based System Design
ESS | FPGA for Dummies | | Maurizio Donna FPGA for Dummies Basic FPGA architecture.
FPGA Devices & FPGA Design Flow
CDA 4253 FGPA System Design Xilinx FPGA Memories
Lecture 10 Xilinx FPGA Memories Part 1
Survey of Reconfigurable Logic Technologies
Delivered by.. Love Jain p08ec907. Design Styles  Full-custom  Cell-based  Gate array  Programmable logic Field programmable gate array (FPGA)
George Mason University FPGA Devices & FPGA Design Flow ECE 545 Lecture 8.
George Mason University ECE 448 – FPGA and ASIC Design with VHDL FPGA Devices & FPGA Design Flow ECE 448 Lecture 6.
FPGA-Based System Design: Chapter 3 Copyright  2004 Prentice Hall PTR Topics n FPGA fabric architecture concepts.
FPGA Devices & FPGA Design Flow
FPGA 상명대학교 소프트웨어학부 2007년 1학기.
Introduction to the FPGA and Labs
Sequential Programmable Devices
Topics SRAM-based FPGA fabrics: Xilinx. Altera..
Programmable Logic Memories
FPGA Devices & FPGA Tools
We will be studying the architecture of XC3000.
Programmable Logic Memories
The Xilinx Virtex Series FPGA
ECE 448 Lecture 7 FPGA Devices
ECE 448 Lecture 5 FPGA Devices
ECE 545 Lecture 17 RAM.
Basic Adders and Counters Implementation of Adders
The Xilinx Virtex Series FPGA
Pipelined Array Multiplier Aldec Active-HDL Design Flow
FPGA’s 9/22/08.
Presentation transcript:

George Mason University ECE 448 – FPGA and ASIC Design with VHDL FPGA Devices ECE 448 Lecture 5

2 Required reading Spartan-6 FPGA Configurable Logic Block: User Guide  CLB Overview  Slice Description

3 Highly recommended for the Wednesday lab section using Nexys 4 boards 7 Series FPGAs Configurable Logic Block: User Guide  Overview  Functional Details Recommended reading

4ECE 448 – FPGA and ASIC Design with VHDL Block RAMs Configurable Logic Blocks I/O Blocks What is an FPGA? Block RAMs

5 Modern FPGA Graphics based on The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Multipliers/DSP units RAM blocks Logic resources (#Logic resources, #Multipliers/DSP units, #RAM_blocks)

6ECE 448 – FPGA and ASIC Design with VHDL Major FPGA Vendors SRAM-based FPGAs Xilinx, Inc. Altera Corp. ( subsidiary of Intel since 2015) Lattice Semiconductor Atmel Achronix Tabula (went out of business in 2015) Flash & antifuse FPGAs Microsemi SoC Products Group (formerly Actel Corp.) Quick Logic Corp. ~ 51% of the market ~ 34% of the market ~ 85%

7ECE 448 – FPGA and ASIC Design with VHDL Xilinx  Primary products: FPGAs and the associated CAD software  Main headquarters in San Jose, CA  Fabless* Semiconductor and Software Company  UMC (Taiwan) {*Xilinx acquired an equity stake in UMC in 1996}  Seiko Epson (Japan)  TSMC (Taiwan)  Samsung (Korea) Programmable Logic Devices ISE Alliance and Foundation Series Design Software

TechnologyLow-costMid-rangeHigh- performance 220 nmVirtex 180 nmSpartan-II, Spartan-IIE 120/150 nmVirtex-II, Virtex-II Pro 90 nmSpartan-3Virtex-4 65 nmVirtex-5 45 nmSpartan-6 40 nmVirtex-6 28 nmArtix-7Kintex-7Virtex-7 Xilinx FPGA Families

9 FPGA Family

10ECE 448 – FPGA and ASIC Design with VHDL Spartan-6 FPGA Family

11ECE 448 – FPGA and ASIC Design with VHDL Artix-7 FPGA Family

George Mason University ECE 448 – FPGA and ASIC Design with VHDL CLB Structure

13ECE 448 – FPGA and ASIC Design with VHDL The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( General structure of an FPGA

14ECE 448 – FPGA and ASIC Design with VHDL Xilinx Spartan-6 & Artix-7 CLB

15ECE 448 – FPGA and ASIC Design with VHDL Row & Column Relationship Between CLBs & Slices

16ECE 448 – FPGA and ASIC Design with VHDL Basic Components of the Slice LUTs Storage Elements

17ECE 448 – FPGA and ASIC Design with VHDL Example of a 4-input LUT (Look-Up Table) (used in earlier families of FPGAs) Look-Up tables are primary elements for logic implementation Each LUT can implement any function of 4 inputs

18ECE 448 – FPGA and ASIC Design with VHDL LUT of Spartan-6 and Artix-7

19

20ECE 448 – FPGA and ASIC Design with VHDL Reset and Set Configurations No set or reset Synchronous set Synchronous reset Asynchronous set (preset) Asynchronous reset (clear)

21ECE 448 – FPGA and ASIC Design with VHDL Three Different Types of Slices in Spartan-6 50%25%

22ECE 448 – FPGA and ASIC Design with VHDL Two Different Types of Slices in Artix-7

23ECE 448 – FPGA and ASIC Design with VHDL SLICEX

24 SLICEL

25  Each SliceL and SliceM contains separate logic and routing for the fast generation of sum & carry signals Increases efficiency and performance of adders, subtractors, accumulators, comparators, and counters  Carry logic is independent of normal logic and routing resources Fast Carry Logic LSB MSB Carry Logic Routing

26 Accessing Carry Logic  All major synthesis tools can infer carry logic for arithmetic functions Addition (SUM <= A + B) Subtraction (DIFF <= A - B) Comparators (if A < B then…) Counters (count <= count +1)

27ECE 448 – FPGA and ASIC Design with VHDL

28ECE 448 – FPGA and ASIC Design with VHDL SLICEM

29 The Design Warrior’s Guide to FPGAs Devices, Tools, and Flows. ISBN Copyright © 2004 Mentor Graphics Corp. ( Xilinx Multipurpose LUT (MLUT) 64 x 1 ROM (logic) 64 x 1 RAM 32-bit SR

30 Single-port 64 x 1-bit RAM

31 Single-port 64 x 1-bit RAM

32 Memories Built of Neighboring MLUTs Single-port 128 x 1-bit RAM: RAM128x1S Dual-port 64 x 1-bit RAM : RAM64x1D Memories built of 2 MLUTs: Memories built of 4 MLUTs: Single-port 256 x 1-bit RAM: RAM256x1S Dual-port 128 x 1-bit RAM: RAM128x1D Quad-port 64 x 1-bit RAM:RAM64x1Q Simple-dual-port 64 x 3-bit RAM:RAM64x3SDP (one address for read, one address for write)

33 Dual-port 64 x 1 RAM Dual-port 64 x 1-bit RAM : 64x1D Single-port 128 x 1-bit RAM: 128x1S

34 Dual-port 64 x 1 RAM ECE 448 – FPGA and ASIC Design with VHDL Dual-port 64 x 1-bit RAM : 64x1D Single-port 128 x 1-bit RAM: 128x1S

35 Total Size of Distributed RAM in Spartan-6

36 Total Size of Distributed RAM in Artix-7

37ECE 448 – FPGA and ASIC Design with VHDL MLUT as a 32-bit Shift Register (SRL32)

George Mason University ECE 448 – FPGA and ASIC Design with VHDL Input/Output Blocks (IOBs)

39ECE 448 – FPGA and ASIC Design with VHDL Basic I/O Block Structure D EC Q SR D EC Q SR D EC Q SR Three-State Control Output Path Input Path Three-State Output Clock Set/Reset Direct Input Registered Input FF Enable

40ECE 448 – FPGA and ASIC Design with VHDL IOB Functionality IOB provides interface between the package pins and CLBs Each IOB can work as uni- or bi-directional I/O Outputs can be forced into High Impedance Inputs and outputs can be registered advised for high-performance I/O Inputs can be delayed

George Mason University ECE 448 – FPGA and ASIC Design with VHDL Family Attributes

42ECE 448 – FPGA and ASIC Design with VHDL Spartan-6 FPGA Family

43ECE 448 – FPGA and ASIC Design with VHDL Artix-7 FPGA Family

44ECE 448 – FPGA and ASIC Design with VHDL FPGA device present on the Digilent Nexys 3 board XC6SLX16-CSG324C Spartan-6 family Size 324 pins Package type (Ball Chip-Scale) Commercial temperature range 0° C – 85° C Logic Optimized

45ECE 448 – FPGA and ASIC Design with VHDL FPGA device present on the Digilent Nexys 4 DDR board XC7A100T-1CSG324C Artix-7 family Size 324 pins Package type (Ball Chip-Scale) Commercial temperature range 0°C – 85° C Speed Grade