Naar inhoud springen

Field-programmable gate array

Uit Wikipedia, de vrije encyclopedie
Dit is een oude versie van deze pagina, bewerkt door EmausBot (overleg | bijdragen) op 26 mei 2011 om 07:34. (r2.6.4) (robot Anders: pt:Field-programmable gate array)
Deze versie kan sterk verschillen van de huidige versie van deze pagina.
een Altera Stratix IV GX FPGA.

Een Field-programmable gate array, vaak afgekort tot FPGA, is een geïntegreerde schakeling bestaande uit programmeerbare logische componenten. Deze logische componenten kunnen geprogrammeerd worden als logische functies zoals AND, XOR, enzovoorts. Deze functies kunnen bijvoorbeeld decoders of eenvoudige wiskundige functies zijn. In het merendeel van de FPGA, kan men ook logische elementen terugvinden in de logische blokken.

FPGA’s zijn ontstaan in de jaren 80. Vanaf toen werd het een populaire keuze voor het maken van prototypes en producten. Een FPGA is een speciaal soort Programmable logic device (PLD). Deze PLD maakt de implementatie mogelijk van courante digitale circuits. De capaciteit van een FPGA is zodanig gegroeid dat er tegenwoordig een volledige multi-processor systeem in één enkele chip kan geplaatst worden.

Voor de implementatie van ontwerpen van digitale circuits die in de FPGA moeten komen, maakt men gebruik van een CAD programma. Deze CAD programma’s ondersteunen verschillende methodes om logische schakelingen toe te voegen. Aangezien deze digitale circuits steeds complexer en complexer worden zijn Hardware description languages (HDL's) de enige praktische keuze om zulke systemen te definiëren. Een HDL is een hoog niveau van de programmeertalen. Het laagniveau wordt meestal door CAD voorzien. Hierdoor kan de ontwerper zich volledig toeleggen op het functionele van het ontwerp.

Soft-core

Een Soft-core processor is onderdeel van de FPGA, deze is zo ontworpen om flexibel te zijn. Het is de bedoeling dat parameters op eender welk tijdstip kunnen worden gewijzigd bij het (her)implementeren in de hardware. Een Soft-core processor bevat een microprocessor, die volledig softwarematig worden beschreven. Hier maakt men meestal gebruik van HDL bestanden.

ASIC’s

ASIC's (Application specific integrated circuit) worden gebruikt om systemen samen te stellen. Door gebruik te maken van Soft-core processoren kunnen zulke systemen geïntegreerd worden in één enkel FPGA-chip. Op de commerciële markt zijn er twee Soft-core-processoren terug te vinden. De NIOS van Altera corp. en de Microblaze van Xilinx Inc.

FPGA-technologie

FPGA zijn zo opgebouwd dat ze elke digitale component kunnen bevatten. Om al deze programmeerbaarheid te ondersteunen bevatten FPGA-chips drie verschillende elementen:

  • Logische blokken
  • I/O-blokken
  • Programmeerbare Interconnecties

Logische blokken

De logische blokken van de FPGA’s bestaan uit een lookup table (LUT) en een flipflop. Een LUT kan men zo programmeren dat hij elk soort logische functie kan bevatten.

Elk logisch blok kan maar kleine functies van enkele variabelen opslaan.

Een LUT kan gebruikt worden als :

  • Een willekeurige combinatorische schakeling met maximaal 4 ingangen
  • 16 bits geheugen
  • Een 16 bits schuifregister.

Programmeerbare inter-connectie

Programmeerbare inter-connectie dient om logische blokken te verbinden tot grotere circuits om aan de vereiste functionaliteit te voldoen, ook wel routing genoemd. Concreet is routing dus het verbinden van verschillende logische schakelingen. Routing is een zeer belangrijk aspect in FPGA-chips. Dit gedeelte heeft de meeste invloed op de chip, ook worden de meeste vertragingen veroorzaakt door het routen.

I/O-blokken

I/O-blokken verbinden de interne logica met pinnen van de FPGA. De meeste pinnen kunnen geconfigureerd worden als ingang, uitgang of bidirectioneel.

Basisprocestechnologietypes

Historiek FPGA

In 1985 ontwikkelt Xilinx de eerste de FPGA: de XC2064 chip met 1000 poorten. Toen wist men natuurlijk nog niet dat de hedendaagse FPGA's 10.000 maal groter zouden zijn. Verder zijn er vele uitbreiding en nieuwere programma’s gekomen om FPGA’s te programmeren. Vooral de grote toename van het computer-gebruik en Internet, hebben bijgedragen tot de groei van FPGA’s.

Bronnen

  • Oldfield J.V., Dorf R.C., Field-Programmable Gate Arrays: Reconfigurable Logic for Rapid Prototyping and Implementation of Digital Systems, 0471556653, Wiley-Interscience, 1995.
  • Wolf W., FPGA-Based System Design, 0131424610, Prentice Hall, 2004.
  • Trimberger S.M., Field-Programmable Gate Array Technology, 0792394194, Springer, 1994.
  • Vincent Himpe, Programmeerbare logica: Van 0 en 1 tot FPGA, 9789053812488, Elektor, 2009
Zie de categorie FPGA van Wikimedia Commons voor mediabestanden over dit onderwerp.