Programowalne Układy Logiczne Wykład III FPGA dr inż. Paweł Russek
Układy FPGA
Cechy architektury Virtex II Fast look-ahead carry Wide functions Block Select RAM Distributed RAM 18 bitowe układy mnożące DCM Power PC (Virtex II Pro) Rocket IO (Virtex II Pro)
Virtex II architektura
IOB: bloki we/wy DDR Wyjścia różnicowe
Struktura IOB
Virtex II CLB 1 CLB = 4 slice = 8 LUT = 8 rejestrów
Virtex II SLICE
Element F5MUX Multipleksery są szybsze niż kaskadowane LUT F5MUX: Każda funkcja 5 zmiennych Wybrane funkcje do 9 zmiennych Multiplekser 4:1
Elementy F6MUX, F7MUX, F8MUX Drugi multiplekser w SLICE może być w zależności od pozycji F6MUX, F7MUX, F8MUX F6MUX i 4 LUT: dowolna funkcja 6 zmiennych wybrane funkcje 19 zmiennych Multiplekser 8:1
Fast Carry Look Ahead Adder Full adder Carry look ahead
Carry Look Ahead w Virtex II
Rejestry przesuwne
Wide Functions
Distributed Select RAM
Block Select RAM 18K bitów Pamięć dwuportowa Synchroniczna Niezależna konfiguracja pamięci dla portów
Tryby pracy Block RAM WRITE_FIRST. Aktywne zbocze zegara zapisuje daną do pamięci przepisuje ją na wyjście. READ_FIRST. Aktywne zbocze zegara zapisuje daną do pamięci przepisuje na wyjście poprzednią wartość.
Globalne zasoby połączeniowe
Zasoby połączeniowe
Bufory 3-stanowe 2 bufory dla każdego CLB 4 linie dla każdego wiersza dostęp do 2 linii dla każdego bufora
Digital Clock Manager: DCM Eliminacja Clock-Skew Synteza częstotliwości Ustalenie fazy zegara
Delay Locked Loop: DLL
DCM korekta clock skew
DCM wybór fazy zegara Dodatkowo Phase Shifter Disable Fixed mode Variable mode
Digital Frequency Synthezier: DFS Możliwość pracy z DLL i bez
Zasoby zegara
Układy mnożące process(clk) is begin if clk event and clk = 1 then prod <= a*b; end if; end process;
Top performance
Ewolucja układów FPGA
Rodzina Vitrex 4
Architektura V4
Ewolucja Vitrex
Rodzina Vitrex5 Easy to create sub-families LX : High-performance logic and parallel IO LXT: High-performance logic with serial connectivity SXT: Extensive signal processing with serial connectivity Other platform to follow: Embedded-oriented with Highest Performance Serial Capabilities LX Platform SXT Platform LXT Platform Extensive Embedded Blocks + Highest Performance Serial Connectivity Users can choose the best mix of resources to optimize cost and performance Embedded Platform Coming Soon
Specjalizacja w Virtex5 Advanced Configuration Options Integrated System Monitor Most Advanced High-Performance Express Fabric 36Kbit Dual-Port Block RAM / FIFO with Integrated ECC SelectIO with ChipSync Technology and XCITE DCI 25x18 DSP Slice 550 MHz Clock Management Tile with DCM and PLL 10/100/1000 Mbps Ethernet MAC Blocks* PCI-Express Endpoint Blocks* Low-Power RocketIO GTP Serial Transceivers* *LXT and SXT Platforms Only
Architektura logiczna Virtex5 Second-generation column-based Advanced Silicon Modular BLock (ASMBL) architecture RAM64 Advanced logic structure True 6-input LUTs Exclusive 64-bit distributed RAM option per LUT Exclusive 32-bit or 16-bit x 2 shift register SRL32 RAM64 SRL32 RAM64 SRL32 RAM64 LUT6 LUT6 LUT6 Register/ Latch Register/ Latch Register/ Latch More efficient and flexible inter-clb routing Increased performance SRL32 LUT6 Register/ Latch Virtex-5 is the flagship of the FPGA industry
Virtex5 LUT6 8 to 1 Multiplexer 64 bit RAM LUT4 LUT6 LUT4 LUT6
Konfiguracja połączeń w Virtex5 Symmetric routing pattern reaches more CLBs with fewer hops 1 CLB Fast Connect 1 Hop 2 Hops 3 Hops Dramatically increases design performance
Virtex5 i pamięci Distributed RAM/SRL32 On-chip BRAM/FIFO Fast Memory Interfaces LOGIC RAM / SRL 32 BRAM/FIFO Virtex-5 DRAM DRAM SDRAM DDR SDRAM FCRAM SRAM RLDRAM SRAM Sync SRAM FLASH DDR SRAM ZBT QDR EEPROM FLASH EEPROM Very granular, localized memory Minimal impact on logic routing Great for small FIFOs Granularity Efficient, on-chip blocks Flexible + optional FIFO logic Ideal for mid-sized FIFOs/buffers Cost-effective bulk storage Memory controller cores Large memory requirements Capacity
XtremeDSP w Virtex5 DSP Slice Second-generation DSP slice architecture 25x18 multiplier New per-bit logic functions (AND, OR, XOR, XNOR, ) High performance for DSP heavy lifting 550 MHz operation Fully cascadable Can also be used for fast counters, barrel shifters, etc