1 / 33

What is an FPGA

What is an FPGA.

veta
Download Presentation

What is an FPGA

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. What is an FPGA • A Field Programmable Gate Array (FPGA) is a semiconductor device containing programmable logic components and programmable interconnects. The programmable logic components can be programmed to duplicate the functionality of basic logic gates such as AND, OR, XOR, NOT or more complex combinatorial functions such as decoders or simple math functions. In most FPGAs, these programmable logic components also include memory elements, which may be simple flip-flops or complete blocks of memory. • A hierarchy of programmable interconnects allows the logic blocks of an FPGA to be interconnected as needed by the system designer. These logic blocks and interconnects can be programmed after the manufacturing process by the customer so that the FPGA can perform whatever logical function that is needed.

  2. What makes up an FPGA

  3. What projects are FPGAs good for • Aerospace & DefenseRadiation-tolerant FPGAs along with intellectual property for image processing, waveform generation, and partial reconfiguration for SDRs. • AutomotiveAutomotive silicon and IP solutions for gateway and driver assistance systems, comfort, convenience, and in-vehicle infotainment. • BroadcastSolutions enabling a vast array of broadcast chain tasks as video and audio finds its way from the studio to production and transmission and then to the consumer. • ConsumerCost-effective solutions enabling next generation, full-featured consumer applications, such as converged handsets, digital flat panel displays, information appliances, home networking, and residential set top boxes. • Industrial/Scientific/MedicalIndustry-compliant solutions addressing market-specific needs and challenges in industrial automation, motor control, and high-end medical imaging. • Storage & ServerData processing solutions for Network Attached Storage (NAS), Storage Area Network (SAN), servers, storage appliances, and more. • Wireless CommunicationsRF, base band, connectivity, transport and networking solutions for wireless equipment, addressing standards such as WCDMA, HSDPA, WiMAX and others. • Wired CommunicationsEnd-to-end solutions for the Reprogrammable Networking Linecard Packet Processing, Framer/MAC, serial backplanes, and more

  4. Who uses them www.fpgajobs.com

  5. Why Help is Needed • FPGA’s are horrendously complex (much more than computer software) • Many tools, coding systems, etc. • Analog (non-ideal) timing behavior • Many types of devices • Code synthesis/Place & Route are not deterministic • In short a design frequently • Is theoretically correct • Simulates OK • Fails in a real part

  6. Why are they important • They have the ability to revolutionize the way that prototyping is done. • Allows companies to get to market quicker and stay in market longer.

  7. Xilinx • Largest manufacturer of HW • Develop hardware and software • Embedded PowerPC • SIRF space hardened

  8. FPGA Project 101

  9. ISE • ISE is the software used to make the project we are going to complete.

  10. Design

  11. How are FPGAs programs designed • There are many different methodolgies for programming (or designing) with FPGAs • Hardware Descriptive Language (HDL) • VHDL • Verilog • Schematic Capture • C Code • EDK • System Generator

  12. HDLs: VHDL and Verilog • Hardware Descriptive Languages are ways of describing digital logic. They are not a programming language, they are languages for describing hardware and are the most popular mechanisms for creating FPGA projects • VHDL – VHSIC Hardware Descriptive Language • Verilog • Which is best?

  13. Schematic Capture • Could be used • Difficult decission • Not normally used at commercial or university level for FPGA design

  14. VHDL Code The title of the article is "Analysis of the programmable logic usage and assurace survey results“ revision 10.1, sept 25,2002Glenn research center, Cleveland, Ohio.Quote:It is a serious mistake to equate VHDL programming to software. At best it is firmware, but for the most part there isn't a good name for programming FPGA logic. In a high performance design like ours, the minute you forget that you are designing hardware and think you are writing software, you fail. Forest Level View

  15. Entity Declaration Inputs and outputs for FPGA std_logic versus std_logic_vector -- comments: this is how you enter comments in VHDL entity BUZZER isport ( DOOR, IGNITION, SBELT: in std_logic; WARNING: out std_logic); end BUZZER;

  16. Architecture Declaration

  17. Design Process DESIGN SYNTHESIS IMPLEMENTATION/PLACE AND ROUTE PROGRAM Programmable Logic Project – Development Process

  18. Synthesis Synthesis is the process of combining all the different design files together into a single file XST is a Xilinx tool that synthesizes HDL designs to create Xilinx specific netlist files called NGC files. The NGC file is a netlist that contains both logical design data and constraints that takes the place of both EDIF and NCF files. There are other 3rd party synthesis engines that are very good but not necessary now

  19. Synthesis – Choosing space, speed and other options

  20. RTL Viewer Allows designer to view schematic representation of the HDL. Y <= C OR ((NOT A) AND (NOT B)); Excellent troubleshooting tool

  21. Design Process DESIGN SYNTHESIS IMPLEMENTATION/PLACE AND ROUTE PROGRAM Programmable Logic Project – Development Process

  22. Place and Route • P&R is the process of translating the netlist into physical gates on the chip • This is where you care about the specific chip you will be using and you will see the introduction of the UCF. • The UCF is a user constraint file that ties your projects inputs and outputs to actual pins on the chip.

  23. Device ImplementationPlace & Route (for FPGAs) Schematic Capture Synthesis Simulation 0 1 0 0 1 1 1 0 1 1 0 0 1 1 1 1 Design Flow Specification libraries HDL Gates of the design ... netlist Verification ... are placed ... ... and routed test vectors Implementation Translate Fitting/ Place & Route

  24. Design Process DESIGN SYNTHESIS IMPLEMENTATION/PLACE AND ROUTE PROGRAM Programmable Logic Project – Development Process

  25. Program the Device • The FPGA is volatile. There are several ways to program the board • Through the use of the JTAG cable directly • Use the JTAG cable to program memory on the board and then boot load the FPGA from memory on power cycle

  26. Simulations • There are two simuators • ISE • Modelsim • Simulations allow a way to validate your projects. Create modules, test them. Create system, test them.

  27. Counter Simulation

  28. Behavioral and Timing Simulation • There are two main types of simulation that can be performed. • Behavioral is done to verify the design makes sense – not concerned with specific device parameters • Functional or timing simulation is performed after the device is mapped to a specific device.

  29. Service Packs • After software installation, download and install the service packs. Some could be 1-2G of update download. • Will see the process when we do the simple project.

  30. Default Locations for SW • When you are setting up the software, regardless of whether it is at the lab or at home, only install the software at the default locations. This is infinitely more critical when you get to a graduate level where you are looking at multiple software packages.

  31. Educational Materials Available • Clint’s web site www.eecs.wsu.edu/~ee214 • Digilent website www.digilentinc.com • UNM 238L course site www.ece.unm.edu/vhdl • XUP site • www.fpgamac.com (FMAC tutorials used here) • Quick start tutorials – launch within ISE

  32. Educational Materials Available

  33. Digilent (cont.) • Clint’s boards

More Related