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.

Slides:



Advertisements
Similar presentations
Basic HDL Coding Techniques
Advertisements

© 2003 Xilinx, Inc. All Rights Reserved Course Wrap Up DSP Design Flow.
Spartan-3 FPGA HDL Coding Techniques
Architecture-Specific Packing for Virtex-5 FPGAs
Commercial FPGAs: Altera Stratix Family Dr. Philip Brisk Department of Computer Science and Engineering University of California, Riverside CS 223.
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.
Altera FLEX 10K technology in Real Time Application.
University Of Vaasa Telecommunications Engineering Automation Seminar Signal Generator By Tibebu Sime 13 th December 2011.
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.
BIST for Logic and Memory Resources in Virtex-4 FPGAs Sachin Dhingra, Daniel Milton, and Charles Stroud Electrical and Computer Engineering Auburn University.
1 Performed by: Lin Ilia Khinich Fanny Instructor: Fiksman Eugene המעבדה למערכות ספרתיות מהירות High Speed Digital Systems Laboratory הטכניון - מכון טכנולוגי.
FPGAs and VHDL Lecture L12.1. FPGAs and VHDL Field Programmable Gate Arrays (FPGAs) VHDL –2 x 1 MUX –4 x 1 MUX –An Adder –Binary-to-BCD Converter –A Register.
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.
Configurable System-on-Chip: Xilinx EDK
Evolution of implementation technologies
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
Implementation of DSP Algorithm on SoC. Mid-Semester Presentation Student : Einat Tevel Supervisor : Isaschar Walter Accompaning engineer : Emilia Burlak.
1 Chapter 7 Design Implementation. 2 Overview 3 Main Steps of an FPGA Design ’ s Implementation Design architecture Defining the structure, interface.
Introduction to FPGA’s FPGA (Field Programmable Gate Array) –ASIC chips provide the highest performance, but can only perform the function they were designed.
Field Programmable Gate Array (FPGA) Layout An FPGA consists of a large array of Configurable Logic Blocks (CLBs) - typically 1,000 to 8,000 CLBs per chip.
Using Programmable Logic to Accelerate DSP Functions 1 Using Programmable Logic to Accelerate DSP Functions “An Overview“ Greg Goslin Digital Signal Processing.
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.
Dr. Konstantinos Tatas ACOE201 – Computer Architecture I – Laboratory Exercises Background and Introduction.
EET 252 Unit 5 Programmable Logic: FPGAs & HDLs  Read Floyd, Sections 11-5 to  Study Unit 5 e-Lesson.  Do Lab #5.  Lab #5a due next week. 
EKT303/4 PRINCIPLES OF PRINCIPLES OF COMPUTER ARCHITECTURE (PoCA)
ISE. Tatjana Petrovic 249/982/22 ISE software tools ISE is Xilinx software design tools that concentrate on delivering you the most productivity available.
Highest Performance Programmable DSP Solution September 17, 2015.
Matrix Multiplication on FPGA Final presentation One semester – winter 2014/15 By : Dana Abergel and Alex Fonariov Supervisor : Mony Orbach High Speed.
© 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.
System Arch 2008 (Fire Tom Wada) /10/9 Field Programmable Gate Array.
PROGRAMMABLE LOGIC DEVICES (PLD)
CPLD (Complex Programmable Logic Device)
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.
Group No 5 1.Muhammad Talha Islam 2.Karim Akhter 3.Muhammad Arif 4.Muhammad Umer Khalid.
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.
© 2003 Xilinx, Inc. All Rights Reserved Synchronous Design Techniques.
Basic Sequential Components CT101 – Computing Systems Organization.
ECE 448 Lecture 6 FPGA devices
EKT303/4 PRINCIPLES OF PRINCIPLES OF COMPUTER ARCHITECTURE (PoCA)
Field Programmable Port Extender (FPX) 1 Modular Design Techniques for the FPX.
Evaluating and Improving an OpenMP-based Circuit Design Tool Tim Beatty, Dr. Ken Kent, Dr. Eric Aubanel Faculty of Computer Science University of New Brunswick.
Tools - LogiBLOX - Chapter 5 slide 1 FPGA Tools Course The LogiBLOX GUI and the Core Generator LogiBLOX L BX.
Lopamudra Kundu Reg. No. : of Roll No.:- 91/RPE/ Koushik Basak
ESS | FPGA for Dummies | | Maurizio Donna FPGA for Dummies Basic FPGA architecture.
CDA 4253 FGPA System Design Xilinx FPGA Memories
Introduction to Field Programmable Gate Arrays Lecture 1/3 CERN Accelerator School on Digital Signal Processing Sigtuna, Sweden, 31 May – 9 June 2007 Javier.
DDRIII BASED GENERAL PURPOSE FIFO ON VIRTEX-6 FPGA ML605 BOARD PART B PRESENTATION STUDENTS: OLEG KORENEV EUGENE REZNIK SUPERVISOR: ROLF HILGENDORF 1 Semester:
George Mason University ECE 448 – FPGA and ASIC Design with VHDL FPGA Devices ECE 448 Lecture 5.
FPGA Field Programmable Gate Arrays Shiraz University of shiraz spring 2012.
Introduction to Field Programmable Gate Arrays (FPGAs) EDL Spring 2016 Johns Hopkins University Electrical and Computer Engineering March 2, 2016.
A Brief Introduction to FPGAs
FPGA Technology Overview Carl Lebsack * Some slides are from the “Programmable Logic” lecture slides by Dr. Morris Chang.
Introduction to the FPGA and Labs
Introduction to Programmable Logic
Electronics for Physicists
Field Programmable Gate Array
Field Programmable Gate Array
Field Programmable Gate Array
The Xilinx Virtex Series FPGA
VHDL Introduction.
Electronics for Physicists
Digital Designs – What does it take
FPGA’s 9/22/08.
Presentation transcript:

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 as part of two vertical columns. There are three types of CLB slices in the Spartan-6 architecture: SLICEM, SLICEL, and SLICEX. Each slice contains four LUTs, eight flip-flops, and miscellaneous logic. The LUTs are for general-purpose combinatorial and sequential logic support. Synthesis tools take advantage of these highly efficient logic. Clock Management Each Spartan-6 FPGA has up to six CMTs, each consisting of two DCMs and one PLL, which can be used individually or cascaded. Block RAM Every Spartan-6 FPGA has between 12 and 268 dual-port block RAMs, each storing 18 Kb. Each block RAM has two completely independent ports. Synchronous Operation Each memory access, whether read or write, is controlled by the clock. All inputs, data, address, clock enables, and write enables are registered. The data output is always latched, retaining data until the next operation. An optional output data pipeline register allows higher clock rates at the cost of an extra cycle of latency. During a write operation in dual-port mode, the data output can reflect either the previously stored data, the newly written data, or remain unchanged. Programmable Data Width Each port can be configured as 16K × 1, 8K × 2, 4K × 4, 2K × 9 (or 8), 1K × 18 (or 16), or 512 x 36 (or 32). The x9, x18, and x36 configurations include parity bits. The two ports can have different aspect ratios. Memory Controller Block Most Spartan-6 devices include dedicated memory controller blocks (MCBs), each targeting a single-chip DRAM (either DDR, DDR2, DDR3, or LPDDR), and supporting access rates of up to 800 Mb/s. The MCB has dedicated routing to predefined FPGA I/Os. If the MCB is not used, these I/Os are available as general purpose FPGA I/Os. The memory controller offers a complete multi-port arbitrated interface to the logic inside the Spartan-6 FPGA. Commands can be pushed, and data can be pushed to and pulled from independent built-in FIFOs, using conventional FIFO control signals Digital Signal Processing—DSP48A1 Slice DSP applications use many binary multipliers and accumulators, best implemented in dedicated DSP slices. All Spartan-6 FPGAs have many dedicated, full-custom, low-power DSP slices, combining high speed with small size, while retaining system design flexibility. Each DSP48A1 slice consists of a dedicated 18 × 18 bit two's complement multiplier and a 48-bit accumulator, both capable of operating at up to 390 MHz. 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 as part of two vertical columns. There are three types of CLB slices in the Spartan-6 architecture: SLICEM, SLICEL, and SLICEX. Each slice contains four LUTs, eight flip-flops, and miscellaneous logic. The LUTs are for general-purpose combinatorial and sequential logic support. Synthesis tools take advantage of these highly efficient logic. Clock Management Each Spartan-6 FPGA has up to six CMTs, each consisting of two DCMs and one PLL, which can be used individually or cascaded. Block RAM Every Spartan-6 FPGA has between 12 and 268 dual-port block RAMs, each storing 18 Kb. Each block RAM has two completely independent ports. Synchronous Operation Each memory access, whether read or write, is controlled by the clock. All inputs, data, address, clock enables, and write enables are registered. The data output is always latched, retaining data until the next operation. An optional output data pipeline register allows higher clock rates at the cost of an extra cycle of latency. During a write operation in dual-port mode, the data output can reflect either the previously stored data, the newly written data, or remain unchanged. Programmable Data Width Each port can be configured as 16K × 1, 8K × 2, 4K × 4, 2K × 9 (or 8), 1K × 18 (or 16), or 512 x 36 (or 32). The x9, x18, and x36 configurations include parity bits. The two ports can have different aspect ratios. Memory Controller Block Most Spartan-6 devices include dedicated memory controller blocks (MCBs), each targeting a single-chip DRAM (either DDR, DDR2, DDR3, or LPDDR), and supporting access rates of up to 800 Mb/s. The MCB has dedicated routing to predefined FPGA I/Os. If the MCB is not used, these I/Os are available as general purpose FPGA I/Os. The memory controller offers a complete multi-port arbitrated interface to the logic inside the Spartan-6 FPGA. Commands can be pushed, and data can be pushed to and pulled from independent built-in FIFOs, using conventional FIFO control signals Digital Signal Processing—DSP48A1 Slice DSP applications use many binary multipliers and accumulators, best implemented in dedicated DSP slices. All Spartan-6 FPGAs have many dedicated, full-custom, low-power DSP slices, combining high speed with small size, while retaining system design flexibility. Each DSP48A1 slice consists of a dedicated 18 × 18 bit two's complement multiplier and a 48-bit accumulator, both capable of operating at up to 390 MHz. PROJECT FLOW DIAGRAM Constraints Describes each Xilinx® constraint, including supported architectures, applicable elements, propagation rules, and syntax examples Describes constraint types and constraint entry methods Hardware Describes how to achieve maximum density and performance using the special features of the Virtex and Spartan devices Includes information on FPGA configuration techniques and printed circuit board (PCB) design considerations Libraries Includes Xilinx® Unified Library information arranged alphabetically and by functional categories Describes each Xilinx design element, including architectures, usage information, syntax examples, and related constraints. ISim Describes the ISE simulator that lets you perform functional and timing simulations for VHDL, Verilog and mixed VHDL/Verilog designs System Generator for DSP Describes the System Generator for DSP development environments; MATLAB® and Simulinksoftware Describes how to design, simulate, implement and debug high performance FPGA-based DSP systems Synthesis and Simulation Provides a general overview of designing Field Programmable Gate Arrays (FPGA devices) with a Hardware Description Language (HDL) Command Line Tools Provides detailed information about converting, implementing, and verifying designs with the Xilinx® command line tools Constraints Describes each Xilinx® constraint, including supported architectures, applicable elements, propagation rules, and syntax examples Describes constraint types and constraint entry methods Hardware Describes how to achieve maximum density and performance using the special features of the Virtex and Spartan devices Includes information on FPGA configuration techniques and printed circuit board (PCB) design considerations Libraries Includes Xilinx® Unified Library information arranged alphabetically and by functional categories Describes each Xilinx design element, including architectures, usage information, syntax examples, and related constraints. ISim Describes the ISE simulator that lets you perform functional and timing simulations for VHDL, Verilog and mixed VHDL/Verilog designs System Generator for DSP Describes the System Generator for DSP development environments; MATLAB® and Simulinksoftware Describes how to design, simulate, implement and debug high performance FPGA-based DSP systems Synthesis and Simulation Provides a general overview of designing Field Programmable Gate Arrays (FPGA devices) with a Hardware Description Language (HDL) Command Line Tools Provides detailed information about converting, implementing, and verifying designs with the Xilinx® command line tools GROUP MEMBERS Muhammad Talha Islam 2010-TE-054 Karim Akhter 2010-TE-123 GROUP MEMBERS Muhammad Talha Islam 2010-TE-054 Karim Akhter 2010-TE-123 Huffman Implementation on FPGA and Its Application in Image Compression Telecommunication Engineering Department ADVISOR: S.M. UMAR TALHA Huffman Implementation on FPGA and Its Application in Image Compression Telecommunication Engineering Department ADVISOR: S.M. UMAR TALHA GROUP MEMBERS Muhammad Umer Khalid 2010-TE-022 Muhammad Arif 2010-TE-010 GROUP MEMBERS Muhammad Umer Khalid 2010-TE-022 Muhammad Arif 2010-TE FPGA (Field Programmable Gate Array): ISE (Integrated Software Environment):