SoC FPGA Technology
-
Upload
siraj-muhammad -
Category
Devices & Hardware
-
view
651 -
download
4
Transcript of SoC FPGA Technology
![Page 1: SoC FPGA Technology](https://reader034.fdocuments.us/reader034/viewer/2022042514/55d5778dbb61eb8b0d8b46af/html5/thumbnails/1.jpg)
SoC FPGA TECHNOLOGY
![Page 2: SoC FPGA Technology](https://reader034.fdocuments.us/reader034/viewer/2022042514/55d5778dbb61eb8b0d8b46af/html5/thumbnails/2.jpg)
HISTORY
• Digital Logic: (1950s-1960s)
3-input Function
ABC
A B C Y0 0 1 10 1 0 11 1 0 00 0 0 11 1 1 0
Black Box
Truth Table Digital Circuit
CMOS NAND Gate
Sum of ProductsProduct of Sums
![Page 3: SoC FPGA Technology](https://reader034.fdocuments.us/reader034/viewer/2022042514/55d5778dbb61eb8b0d8b46af/html5/thumbnails/3.jpg)
HISTORY
• Regular structures for two-level logic: (1960s-70s)
• Consist of MUXs, De-MUXs, Decoders, FFs.
• Yield spaghetti-like maze!
• Each modification means a new PCB.
• Engineers got fed up!
![Page 4: SoC FPGA Technology](https://reader034.fdocuments.us/reader034/viewer/2022042514/55d5778dbb61eb8b0d8b46af/html5/thumbnails/4.jpg)
HISTORY
• Programmable Logic Devices (PLDs): (1970s-80s)
• Chip makers addressed this problem by unconnected arrays of AND-OR gates.
• Fuses used to connect gates.
• Each fuse could be blown open or left close.
• Programming took place at manufacturers plants.
• Simple PLDs (SPLD) could only handle up to 10–20 logic equations.
• You had to break the design apart.
• Wiring was also required and it was a big no-no!
• Again engineers got fed up!
![Page 5: SoC FPGA Technology](https://reader034.fdocuments.us/reader034/viewer/2022042514/55d5778dbb61eb8b0d8b46af/html5/thumbnails/5.jpg)
HISTORY
• Programmable Logic Devices (PLDs): (1970s-80s)
Programmed State
![Page 6: SoC FPGA Technology](https://reader034.fdocuments.us/reader034/viewer/2022042514/55d5778dbb61eb8b0d8b46af/html5/thumbnails/6.jpg)
HISTORY
• Complex PLD (CPLD): (1980s)
• Contains a bunch of PLD blocks connected togetherby a global interconnect matrix.
• Each component is programmed individually.
![Page 7: SoC FPGA Technology](https://reader034.fdocuments.us/reader034/viewer/2022042514/55d5778dbb61eb8b0d8b46af/html5/thumbnails/7.jpg)
HISTORY
• Application Specific Integrated Circuits (ASICs):
• Not available circa 1980s!
• Custom fabricated design from scratch.
• Large complex functions, millionsof gates customised for extremespeed and low power.
• Very expensive in smallquantities > $1 Million
• Very hard to design.
• NOT reprogrammable which meanshigh risks!
![Page 8: SoC FPGA Technology](https://reader034.fdocuments.us/reader034/viewer/2022042514/55d5778dbb61eb8b0d8b46af/html5/thumbnails/8.jpg)
HISTORY
• Application Specific Integrated Circuits (ASICs):
• Any mistake means millions of dollars!
• June 1994, a flaw in Intel Pentium chipcauses a division error, discovered bysomeone called Dr Nicely.
• December 20th 1994, Intel apologizedand replaced all flawed Pentiums upon request.
• Intel reserved $420 million to cover costs!
• Full story:http://www.emery.com/1e/pentium.htm
![Page 9: SoC FPGA Technology](https://reader034.fdocuments.us/reader034/viewer/2022042514/55d5778dbb61eb8b0d8b46af/html5/thumbnails/9.jpg)
PROBLEM
PLDs• Limited
Complexity• Thousands of
gates• Easy to design• Programmable
ASICs• Large Complex
Functions• Millions of gates• Hard to design• Not
reprogrammable
FPGA
![Page 10: SoC FPGA Technology](https://reader034.fdocuments.us/reader034/viewer/2022042514/55d5778dbb61eb8b0d8b46af/html5/thumbnails/10.jpg)
FPGA DEFINITIONS
• Field Programmable Gate Arrays (FPGAs) are digital integrated circuits (ICs) that contain configurable (programmable) blocks of logic along with configurable interconnects between these blocks.
• The “field programmable” portion of the FPGA’s name refers to the fact that its programming takes place “in the field”.
![Page 11: SoC FPGA Technology](https://reader034.fdocuments.us/reader034/viewer/2022042514/55d5778dbb61eb8b0d8b46af/html5/thumbnails/11.jpg)
WHY USE FPGA?
• The cost of an FPGA design is much lower than that of an ASIC.
• Implementing design changes is much easier in FPGA.
• Time to market for FPGAs is much faster.
• FPGAs make many small, innovative design companies viable.
• In 2003: 1500 to 4000 ASIC design starts and 5000 ASSP design starts, while around 450,000 FPGA design starts in the same year.
![Page 12: SoC FPGA Technology](https://reader034.fdocuments.us/reader034/viewer/2022042514/55d5778dbb61eb8b0d8b46af/html5/thumbnails/12.jpg)
WHY USE FPGA?
• What distinguishes an FPGA from an ASIC is embodied in the name:
Field Gate ArrayProgrammable
![Page 13: SoC FPGA Technology](https://reader034.fdocuments.us/reader034/viewer/2022042514/55d5778dbb61eb8b0d8b46af/html5/thumbnails/13.jpg)
FPGA ARCHITECTURE
• Programmable logic blocks calledLogic Elements (LEs).1000+ → 100,000+
• Massive fabric of programmableinterconnects.
• LEs described as islands in a “sea”of interconnects.
• Manufacturers refer to LE in different ways.Altera refers to it as Adaptive Logic Module (ALM).Xilinx refers to it as Configurable Logic Block (CLB).
![Page 14: SoC FPGA Technology](https://reader034.fdocuments.us/reader034/viewer/2022042514/55d5778dbb61eb8b0d8b46af/html5/thumbnails/14.jpg)
ARCHITECTURE: LOGIC ELEMENTS
• 8-input divisible look-up table(LUT).
• Four dedicated registers to improvetiming closure.
• Full Adders and MUXs.
• 25% of ALMs can be used asdistributed memory using MLABs.
ALM for Altera Cyclone V
![Page 15: SoC FPGA Technology](https://reader034.fdocuments.us/reader034/viewer/2022042514/55d5778dbb61eb8b0d8b46af/html5/thumbnails/15.jpg)
ARCHITECTURE: LUT
• LUT contains memory cellsto implement smalllogic functions.
• Each cell holds ‘0’ or ‘1’.
• Programmed with outputsof truth tables.
• Inputs select content of oneof the cells as output.
![Page 16: SoC FPGA Technology](https://reader034.fdocuments.us/reader034/viewer/2022042514/55d5778dbb61eb8b0d8b46af/html5/thumbnails/16.jpg)
ARCHITECTURE: LAB AND ALM
• LABs are Logic Array Blocks
• Some FPGAs have two ALMs in eachLAB, while others have four.
• Fast programmable interconnectwithin the LAB.
• This is complemented by anequivalent hierarchy in theinterconnect.
LAB
ALM ALM
ALM ALM
Logic Cell
Logic Cell
Logic Cell
Logic Cell
Logic Cell
Logic Cell
Logic Cell
Logic Cell
Interconnect Speed
LABs
ALMs
Logic Cells
![Page 17: SoC FPGA Technology](https://reader034.fdocuments.us/reader034/viewer/2022042514/55d5778dbb61eb8b0d8b46af/html5/thumbnails/17.jpg)
ALM connection details for Cyclone V
![Page 18: SoC FPGA Technology](https://reader034.fdocuments.us/reader034/viewer/2022042514/55d5778dbb61eb8b0d8b46af/html5/thumbnails/18.jpg)
ARCHITECTURE: EMBEDDED MULTIPLIERS, ADDERS, ETC.
• Some functions may be slow inprogrammable logic.
• One common operation in DSPapplications,Multiply-and-Accumulate (MAC).
• Some FPGAs provide entire MACsas embedded functions.
![Page 19: SoC FPGA Technology](https://reader034.fdocuments.us/reader034/viewer/2022042514/55d5778dbb61eb8b0d8b46af/html5/thumbnails/19.jpg)
ARCHITECTURE: MORE FEATURES
• Memory
• DSP Blocks
• PLLs
• Transceivers
• GPIO
• Hard IP
• That’s whatdifferentiates FPGAfrom CPLD.
![Page 20: SoC FPGA Technology](https://reader034.fdocuments.us/reader034/viewer/2022042514/55d5778dbb61eb8b0d8b46af/html5/thumbnails/20.jpg)
DESIGNING WITH FPGA: HDL
• Can’t design FPGA by hand; way too much logic to manage and hard to make changes.
• Hardware Descriptions Languages (HDL) are used to specify functionality of logic at a high level.
• Most two popular languages are Verilog and VHDL (VHSIC Hardware Description Language).
D Q
Q
Verilog VHDL DFF
![Page 21: SoC FPGA Technology](https://reader034.fdocuments.us/reader034/viewer/2022042514/55d5778dbb61eb8b0d8b46af/html5/thumbnails/21.jpg)
DESIGNING WITH FPGA: FLOW
• Validation:
• High level simulation to catch specification errors.
• Verify pin-outs and connections to other systemcomponents.
• RTL Synthesis:
• Process of compiling HDL code into logic gatesand flip-flops.
• Technology Mapping:
• Map the logic onto elements available in the implementationstechnology (LUTs).
• Placement and Routing:
• Assign logic blocks to functions.
• Make wiring connections.
Design System
Validation
RTL Synthesis
Place and Rout
Verification
![Page 22: SoC FPGA Technology](https://reader034.fdocuments.us/reader034/viewer/2022042514/55d5778dbb61eb8b0d8b46af/html5/thumbnails/22.jpg)
DESIGNING WITH FPGA: FLOW
• Timing Analysis:
• Verify paths and determine delays.
• Check critical paths and improve their timing.
• Adjust placement of cells to improve timing closure.
• If the design does not fit it can be divided into multiple chips.
• Generate programming files which contain bits to be loaded in the device.
![Page 23: SoC FPGA Technology](https://reader034.fdocuments.us/reader034/viewer/2022042514/55d5778dbb61eb8b0d8b46af/html5/thumbnails/23.jpg)
DESIGNING WITH FPGA: OPENCL
• What is OpenCL (Open Computing Language)?
• Open standard framework that enables developers to write programs that execute across heterogeneous systems including CPUs, GPUs, DSPs, and FPGAs.
• Benefits of OpenCL for FPGAs:
• Faster time-to-market: using the OpenCL C-based parallelprogramming language as opposed to low-level HDL.
• Quick design exploration: by working at higherlevel of abstraction.
• Easy design re-use: by retargeting existing OpenCLcode to current and future FPGAs.
• Faster design completion: by generating an FPGAimplementation in single step.
![Page 24: SoC FPGA Technology](https://reader034.fdocuments.us/reader034/viewer/2022042514/55d5778dbb61eb8b0d8b46af/html5/thumbnails/24.jpg)
CONFIGURING FPGA
• Millions of SRAM cells hold LUTs and interconnect values.
• Volatile memory, loses configuration when power is turned off.
• Non-volatile memories are used to power up FPGAs with specific bit file.
![Page 25: SoC FPGA Technology](https://reader034.fdocuments.us/reader034/viewer/2022042514/55d5778dbb61eb8b0d8b46af/html5/thumbnails/25.jpg)
SoC FPGA
• Formerly, designers used to implement what so called soft processors, which are microprocessors implemented in HDL.
• Popular IPs: NIOS II from Altera and MicroBlaze from Xilinx.
• Such architectures did not realize high performances, in addition to resources consumption and power consumption.
• They were also vendor-specific.
![Page 26: SoC FPGA Technology](https://reader034.fdocuments.us/reader034/viewer/2022042514/55d5778dbb61eb8b0d8b46af/html5/thumbnails/26.jpg)
SoC FPGA
• Chip makers again for the rescue!
• SoC FPGAs integrate an ARM-based hardprocessor system (HPS) consisting ofprocessor, peripherals, and memoryinterfaces with the FPGA fabric usinga high bandwidth interconnect backbone.
• It combines the performance and powersavings of hard intellectual property (IP)with the flexibility of programmable logic.
![Page 27: SoC FPGA Technology](https://reader034.fdocuments.us/reader034/viewer/2022042514/55d5778dbb61eb8b0d8b46af/html5/thumbnails/27.jpg)
SoC FPGA: ADVANTAGES
• Improved system performance: through a higher HPS to FPGA bandwidth interconnect, hardware acceleration, and increased memory performance.
• Increased reliability: through error correction code (ECC) and memory protection. Warm/Cold CPU reset that initiates without affecting or reprogramming FPGA.
• More flexibility: through hardware differentiation, system boot and configurations options, and multiple hardened memory controllers.
• Lower system cost: through single-chip integration, integrated PCIe controller and no power off sequencing.
![Page 28: SoC FPGA Technology](https://reader034.fdocuments.us/reader034/viewer/2022042514/55d5778dbb61eb8b0d8b46af/html5/thumbnails/28.jpg)
SoC FPGA
• FPGA Vendors and Processors:
FPGA Vendor Hard Processor Soft Processor
Actel None Third-Party only
Altera ARM NIOS, NIOS II
Lattice None Third-Party only
Xilinx IBM PowerPC MicroBlaze, PicoBlaze
QuickLogic MIPS Third-Party only
![Page 29: SoC FPGA Technology](https://reader034.fdocuments.us/reader034/viewer/2022042514/55d5778dbb61eb8b0d8b46af/html5/thumbnails/29.jpg)
SoC FPGA: HPS
Cyclone V SoC HPS Architecture
![Page 30: SoC FPGA Technology](https://reader034.fdocuments.us/reader034/viewer/2022042514/55d5778dbb61eb8b0d8b46af/html5/thumbnails/30.jpg)
SoC FPGA: HPS FEATURES
• 925 MHz, dual-core ARM® Cortex™-A9 MPCore™ processor.
• Each processor core includes:
• 32 KB of L1 instruction cache, 32 KB of L1 data cache.
• Single- and double-precision floating-point unit and NEONTM media engine.
• CoreSightTM debug and trace technology.
• 512 KB of shared L2 cache.
• 64 KB of scratch RAM.
• Multiport SDRAM controller with support for DDR2, DDR3, and LPDDR2 and optional error correction code (ECC) support.
![Page 31: SoC FPGA Technology](https://reader034.fdocuments.us/reader034/viewer/2022042514/55d5778dbb61eb8b0d8b46af/html5/thumbnails/31.jpg)
SoC FPGA: APPLICATIONS
• Just to name a few:
• Automotive Advanced Driver Assistance Systems (ADAS)
• Wireless Communications
• Military Radar
• Military Secure Communications
• The top four manufacturers of electronic imaging systems all use FPGAs
• This include CT, MRI, and Ultrasonic equipment
![Page 32: SoC FPGA Technology](https://reader034.fdocuments.us/reader034/viewer/2022042514/55d5778dbb61eb8b0d8b46af/html5/thumbnails/32.jpg)
DEMONSTRATIONS
• Morse Transmitter
• 9-bit Microprocessor (Hello World)
• SoC HPS Apps (G-Sensor)
• DE1-SoC Ubuntu Desktop
![Page 33: SoC FPGA Technology](https://reader034.fdocuments.us/reader034/viewer/2022042514/55d5778dbb61eb8b0d8b46af/html5/thumbnails/33.jpg)
REFERENCES
• www.altera.com
• www.Xilinx.com
• www.fpga4fun.com
• FPGAs Instant Access by Clive “Max” Maxfield
• Rapid Prototyping of Digital Systems, SOPC Edition by James O. Hamblen