An Introduction to FPGA and SOPC Development Board Yong Wang.

Slides:



Advertisements
Similar presentations
FPGA (Field Programmable Gate Array)
Advertisements

Introduction to Programmable Logic John Coughlan RAL Technology Department Electronics Division.
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.
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.
Configurable System-on-Chip: Xilinx EDK
Programmable logic and FPGA
Silicon Programming--Altera Tools1 “Silicon Programming“ programmable logic Altera devices and the Altera tools major tasks in the silicon programming.
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
ECE Department: University of Massachusetts, Amherst Lab 1: Introduction to NIOS II Hardware Development.
EET 1131 Unit 4 Programmable Logic Devices  Read Kleitz, Chapter 4.  Homework #4 and Lab #4 due next week.  Quiz next week.
Digital Circuit Design on FPGA
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.
General FPGA Architecture Field Programmable Gate Array.
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. 
Chapter 4 Programmable Logic Devices: CPLDs with VHDL Design Copyright ©2006 by Pearson Education, Inc. Upper Saddle River, New Jersey All rights.
EKT303/4 PRINCIPLES OF PRINCIPLES OF COMPUTER ARCHITECTURE (PoCA)
COE4OI5 Engineering Design Chapter 2: UP2/UP3 board.
ISE. Tatjana Petrovic 249/982/22 ISE software tools ISE is Xilinx software design tools that concentrate on delivering you the most productivity available.
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.
FPGA Circuits A simple FPGA model Full-adder realization Demos.
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.
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.
1 3-General Purpose Processors: Altera Nios II 2 Altera Nios II processor A 32-bit soft core processor from Altera Comes in three cores: Fast, Standard,
K&H MFG. Co., LTD. Manufacturer, Exporter & Importer for Educational Equipment & Measuring Instrument CIC-310 CPLD/FPGA Development System.
Ch.9 CPLD/FPGA Design TAIST ICTES Program VLSI Design Methodology Hiroaki Kunieda Tokyo Institute of Technology.
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.
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.
PROGRAMMABLE LOGIC DEVICES (PLD)
J. Christiansen, CERN - EP/MIC
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.
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.
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.
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.
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)
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.
Introduction to Field Programmable Gate Arrays Lecture 1/3 CERN Accelerator School on Digital Signal Processing Sigtuna, Sweden, 31 May – 9 June 2007 Javier.
Teaching Digital Logic courses with Altera Technology
Survey of Reconfigurable Logic Technologies
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)
FPGA-Based System Design: Chapter 3 Copyright  2004 Prentice Hall PTR Topics n FPGA fabric architecture concepts.
Introduction to Field Programmable Gate Arrays (FPGAs) EDL Spring 2016 Johns Hopkins University Electrical and Computer Engineering March 2, 2016.
FPGA Technology Overview Carl Lebsack * Some slides are from the “Programmable Logic” lecture slides by Dr. Morris Chang.
Rapid Prototyping with PLDs 4 th & 7 th October 2005.
FPGA 상명대학교 소프트웨어학부 2007년 1학기.
Introduction to the FPGA and Labs
EET 1131 Unit 4 Programmable Logic Devices
Sequential Programmable Devices
Topics SRAM-based FPGA fabrics: Xilinx. Altera..
Introduction to Programmable Logic
An Introduction to FPGA and SOPC Development Board
Electronics for Physicists
Programmable Logic Devices: CPLDs and FPGAs with VHDL Design
Field Programmable Gate Array
Field Programmable Gate Array
Field Programmable Gate Array
Programmable Logic- How do they do that?
Electronics for Physicists
"Computer Design" by Sunggu Lee
Programmable logic and FPGA
Presentation transcript:

An Introduction to FPGA and SOPC Development Board Yong Wang

Outline What are Programmable Logic Devices? Architecture and Examples Why FPGA? Vendors and Devices Development on Altera Device Summary

Programmable Logic Devices Programmable digital integrated circuit Desired functionality is implemented by configuring on-chip logic blocks and interconnections Developers only care about the logic design but not the internal hard-wire connection ( softwarelize the hardware design)

ASIC vs. Programmable Logic Devices ASIC ( Application Specific Integrated Circuit ) Programmable Chips Longer design cycle and costlier ECO (Engineering Change order) Shorter design cycle and cheaper ECO Faster performanceLong delay Lower cost if produced in high volume > 10,000 chips Higher cost, good for medium to low volume products Energy savingMore power consumption

Type of Programmable Logic Devices PLA (Programmable Logic Array) CPLD (Complex Programmable Logic Device) FPGA (Field Programmable Gate Array)

PLD - Sum of Products ABC AND plane Programmable AND array followed by fixed fan-in OR gates Programmable switch or fuse

PLD - Macrocell Can implement combinational or sequential logic A B C Flip-flop Select Enable DQ Clock AND plane MUX

CPLD Structure Integration of several PLD blocks with a programmable interconnect on a single chip PLD Block PLD Block PLD Block PLD Block Interconnection Matrix I/O Block PLD Block PLD Block PLD Block PLD Block I/O Block Interconnection Matrix

CPLD Example - Altera MAX7000 EPM7000 Series Block Diagram

CPLD Example - Altera MAX7000 EPM7000 Series Device Macrocell

FPGA - Generic Structure FPGA building blocks: Programmable logic blocks Implement combinatorial and sequential logic Programmable interconnect Wires to connect inputs and outputs to logic blocks Programmable I/O blocks Special logic blocks at the periphery of device for external connections

Other FPGA Building Blocks Clock distribution Embedded memory blocks Special purpose blocks: –DSP blocks: Hardware multipliers, adders and registers –Embedded microprocessors/microcontrollers –High-speed serial transceivers

FPGA – Basic Logic Element LUT to implement combinatorial logic Register for sequential circuits Additional logic (not shown): –Carry logic for arithmetic functions –Expansion logic for functions requiring more than 4 inputs LUT Out Select DQ ABCDABCD Clock

Look-Up Tables (LUT) Look-up table with N-inputs can be used to implement any combinatorial function of N inputs LUT is programmed with the truth-table LUT A B C D Z A B C D Z Truth-tableGate implementation LUT implementation

LUT Implementation Example: 3-input LUT Based on multiplexers (pass transistors) LUT entries stored in configuration memory cells 0/1 X1 X2 X3 F Configuration memory cells

Other FPGA Building Blocks Clock distribution Embedded memory blocks Special purpose blocks: – DSP blocks: Hardware multipliers, adders and registers –Embedded microprocessors/microcontrollers –High-speed serial transceivers

Special Features Clock management –PLL,DLL –Eliminate clock skew between external clock input and on-chip clock –Low-skew global clock distribution network Support for various interface standards High-speed serial I/Os Embedded processor cores DSP blocks

Configuration Storage Elements Static Random Access Memory (SRAM) –Logical configuration is controlled by the state of SRAM bits –FPGA needs to be configured at power-on by another separated ROM Flash Erasable Programmable ROM (Flash) –– Logical configuration is implemented by floating- gate transistors that can be turned off by injecting charge onto its gate. FPGA itself holds the program –reprogrammable, even in-circuit

Example: Altera Stratix Series

Why FPGA? FPGA chips handle dense logic and memory elements offering very high logic capacity Uncommitted logic blocks are replicated in an FPGA with interconnects and I/O blocks Complete integrated design environment (IDE) Easy to learn and use Low cost of ownership

FPGA Vendors Altera Xilinx –Virtex-II/Virtex-4: Feature-packed high- performance SRAM-based FPGA –Spartan 3: low-cost feature reduced version –CoolRunner: CPLDs Actel Lattice QuickLogic

Programmable Logic Families –High & Medium Density FPGAs Stratix ™ II, Stratix, APEX ™ II, APEX 20K, & FLEX ® 10K –Low-Cost FPGAs Cyclone ™ & ACEX ® 1K –FPGAs with Clock Data Recovery Stratix GX & Mercury ™ –CPLDs MAX ® 7000 & MAX 3000 –Embedded Processor Solutions Nios ™, Excalibur T™ –Configuration Devices EPC Introduction to Altera Devices

Nios: The processor in software a user-configurable, 16-bit instruction set architecture (ISA), general-purpose RISC embedded processor designers can use the SOPC (system-on- aprogrammable-chip) Builder system development tool to very easily create custom processor-based systems

What is available Altera Stratix Nios Development Board Altera UP2 Development Board

Altera Stratix Nios Development Board

Stratix EP1S10F780C6 –10,570 Logic Elements –920 Kb on-chip memory Provide hardware platform for developing embedded system –Comes pre-programmed with a 32-bit Nios processor reference design

Altera Staratix Nios Development Board 8 MB of flash Memory,1MB of static RAM, 16MB of SDRAM On-board Ethernet MAC/PHY device Compact Flash connector hearder Two RS-232 DB9 serial ports 50MHz oscillator and zero-skew clock distribution circuitry Four push-button switches Dual 7-segment LED display

Altera UP2 Development Board

EPF10K70RC240-4 device EPM7128SLC-7 device One RS-232 serial port Four push-button switches Dual 7-segment LED display MHz oscillator

FPGA Design Flow

Synthesis Translate Design into Device Specific Primitives Optimization to Meet Required Area & Performance Constraints Design Specification Place & Route Map Primitives to Specific Locations inside Target Technology with Reference to Area & Performance Constraints Specify Routing Resources to Be Used Design Entry/RTL Coding Behavioral or Structural Description of Design LE MEM I/O RTL Simulation Functional Simulation Verify Logic Model & Data Flow (No Timing Delays)

FPGA Design Flow Timing Analysis - Verify Performance Specifications Were Met - Static Timing Analysis Gate Level Simulation - Timing Simulation - Verify Design Will Work in Target Technology Program & Test - Program & Test Device on Board t clk

Design Entry Methods Text-based –VHDL(Very High Speed Integrated Circuit Hardware Description Language) –Verilog HDL

Block Diagram Contents of a block can be any type of design unit

State Diagram “Bubble” diagram States Conditions Transitions Outputs Useful for developing control modules

Program Devices Once we verify our design, it should be downloaded to the FPGA devices Designs can be downloaded through parallel port in PC to the JTAG connector on board using download cables Designs can also be downloaded via the Internet to a target device

Introduction to Altera Design Software Software & Development Tools: –Quartus II Stratix II, Stratix, Stratix GX, Cyclone, APEX II, APEX 20K/E/C, Excalibur, & Mercury Devices FLEX 10K/A/E, ACEX 1K, FLEX 6000, MAX 7000S/AE/B, MAX 3000A Devices –Quartus II Web Edition Free Version Not All Features & Devices Included –MAX+PLUS ® II All FLEX, ACEX, & MAX Devices

Quartus II Development System Fully-Integrated Design Tool Multiple Design Entry Methods Logic Synthesis Place & Route Simulation Timing & Power Analysis Device Programming

More Features MegaWizard ® & SOPC Builder Design Tools LogicLock ™ Optimization Tool NativeLink ® 3 rd -Party EDA Tool Integration Integrated Embedded Software Development SignalTap ® II & SignalProbe ™ Debug Tools Windows, Solaris, HPUX, & Linux Support Node-Locked & Network Licensing Options Revision Control Interface

Quartus II Operating Environment

Main Toolbar & Modes To Reset Views: Tools  Toolbars>Reset All; Restart Quartus II Window & new file buttons Compiler ReportFloorplans Execution Controls Dynamic menus

Previous Project 1: VGA Driver 25Mhz clock (640 * 480) Horizontal, Vertical Sync RGB

Previous Project 2: DRIIVE Network Figure 1: Hardware Organization

Summary Prerequisite –Electronics and circuits –Digital logic design –VHDL (VHSIC Hardware Description Language) FPGA –Combine technologies in hardware & software –Benefits