Układy FPGA Programowalne Układy Cyfrowe dr inż. Paweł Russek
Program wykładu Geneza Technologia Struktura Funktory logiczne, sieć połączeń, bloki we/wy Współczesne układy FPGA Porównanie z ASIC
Literatura www.actel.com www.altera.com www.xilinx.com www.latticesemi.com Field Programmable Gate Arrays J.V. Oldfield, R.C. Dorf Field Programable Gate Array Technology ed. S.M. Trimberger Digital System Design And Prototyping Using Field Programmable Logic, Z. Salcic, A. Smailagi
Nisza technologiczna
Potencjalne zastosowania Kontrolery przemysłowe Urządzenia medyczne Telekomunkacja Przetwarzanie danych Przemysł samochodowy, lotniczy, kosmiczny Multimedia(set-top box, konsole do gier)
Geneza Hierarchiczny model projektowania Projektowanie modułowe Stanowią jednorodne medium realizacji układów cyfrowych Przykładowa struktura blokowa procesora GPP: Budowa modułowa Poszczególne bloki wykonują niezależne zadania
Field Programmable Gate Arrays CPLD MPGA/FPGA Mask Programmable Gate Arrays Semi-Custom ASIC Matryca funktorów logicznych Realizacja funkcji poprzez nałożenie maski sieci połączeń MPGA FPGA
Technologie FPGA FPGA SRAM Xilinx, Altera Antyfuse Actel EEPROM MAX Altera ProASIC
Element programowania: SRAM Ulotność Pamięć zewnętrzna Reprogramowalność Jakość układów Technologia Moc
Element programowania: Antifuse Rezystancja Rozmiary Czas programowania Testowalność Technologia Moc OTP Actel antyfuse
Elementy składowe FPGA Bloki logiczne. Realizują cyfrowe układy kombinacyjne i sekwencyjne. Matryce komutacyjne. Do realizacji sieci połączeń Zasoby połączeniowe. Bloki WE/WY. Połączenie bloków logicznych z wyprowadzeniami zewnętrznymi
Struktury FPGA Technologia programowania wymusza strukturę SRAM Antifuse
Funktory logiczne Technologia wymusza sposób realizacji funktorów logicznych SRAM Antifuse
Bloki logiczne SRAM
Matryca połączeń Połączenia typu: Programmable interconect C Switch matrix S
Hierarchia połączeń. Metoda 1. Zasoby połączeniowe decydują o zaletach i wadach FPGA.
Hierarchia połączeń. Metoda 2.
Multiplekser zamiast LUT Firma Actel Sposób atrakcyjny przy małym rozmiarze klucza programowalnego - antifuse MUX 2:1 realizuje dowolną funkcję logiczna 2 zmiennych Realizacja technologiczne zgodna z realizacją sieci połączeń FPGA Duża funkcjonalność niewielkim kosztem
Przykład z MUX firmy Actel Realizuje wszystkie funkcje 3 zmiennych Realizuje wiele funkcji 4 zmiennych
Multipleksery w funkcji przerzutników C1=0, C2=clk: rising edge flip-flop
Struktura ACTEL
Współczesne układy FPGA Wyzwanie: Potrzeba skutecznej konkurencji z full-custom ASIC Fakty: 1. Powszechne stosowanie pewnych elementów logicznych 2. Projektowanie oparte o platformy projektowe 3. Dominujące zapotrzebowanie w pewnych dziedzinach zastosowań. 4. Ogromne możliwości jakie daje technologia półprzewodnikowa Wbudowane bloki funkcjonale.
Wbudowane pamięci
Wbudowane CPU
Wbudowane MUL/MAC/DSP
Dystrybucja zegara
Kontrola zegara
Bloki IO
Współczesne układy FPGA Brak jednorodnej struktury
Ewolucja FPGA Xilinxa
Domain Based FPGA 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 Embedded Platform Coming Soon
Rodzina Vitrex 4
Technologia V4
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* Low-Power RocketIO GTP Serial Transceivers* PCI-Express Endpoint Blocks*
FPGA vs ASIC
CPLD vs FPGA CPLD FPGA Struktura niejednorodna Średnia ilość zasobów Narzucona struktura połączeń Duża szybkość Struktura tablicowa Duża ilość zasobów Duża dowolność łączenia zasobów Średnia szybkość