(Ny og original) På lager 3S200A-4FTG256C IC-chip XC3S200A-4FTG256C
Produktegenskaber
TYPE | BESKRIVELSE | VÆLG |
Kategori | Integrerede kredsløb (IC'er) |
|
Mfr | AMD Xilinx |
|
Serie | Spartan®-3A |
|
Pakke | Bakke |
|
Produktstatus | Aktiv |
|
Antal LAB'er/CLB'er | 448 |
|
Antal logiske elementer/celler | 4032 |
|
Samlet RAM Bits | 294912 |
|
Antal I/O | 195 |
|
Antal porte | 200.000 |
|
Spænding – Forsyning | 1,14V ~ 1,26V |
|
Monteringstype | Overflademontering |
|
Driftstemperatur | 0°C ~ 85°C (TJ) |
|
Pakke/etui | 256-LBGA |
|
Leverandørenhedspakke | 256-FTBGA (17×17) |
|
Basisproduktnummer | XC3S200 |
Feltprogrammerbar gate-array
ENfeltprogrammerbar gate array(FPGA) er enintegreret kredsløbdesignet til at blive konfigureret af en kunde eller en designer efter fremstilling - deraf udtrykketfeltprogrammerbar.FPGA-konfigurationen er generelt specificeret ved hjælp af enhardwarebeskrivelsessprog(HDL), svarende til det, der bruges til enapplikationsspecifikt integreret kredsløb(ASIC).Kredsløbsdiagrammerblev tidligere brugt til at specificere konfigurationen, men dette er mere og mere sjældent på grund af fremkomsten afelektronisk designautomatiseringværktøjer.
FPGA'er indeholder en række afprogrammerbar logiske blokke, og et hierarki af rekonfigurerbare sammenkoblinger, der gør det muligt at forbinde blokke sammen.Logiske blokke kan konfigureres til at udføre kompleksekombinationsfunktioner, eller handle så enkeltlogiske portesynes godt omOGogXOR.I de fleste FPGA'er inkluderer logiske blokke ogsåhukommelseselementer, hvilket kan være enkeltklipklappereller flere komplette hukommelsesblokke.[1]Mange FPGA'er kan omprogrammeres til at implementere forskelligelogiske funktioner, hvilket tillader fleksibelrekonfigurerbar computingsom udført icomputer software.
FPGA'er har en bemærkelsesværdig rolle iindlejret systemudvikling på grund af deres evne til at starte systemsoftwareudvikling samtidigt med hardware, muliggøre systemydeevnesimuleringer i en meget tidlig fase af udviklingen og tillade forskellige systemforsøg og designgentagelser, før systemarkitekturen færdiggøres.[2]
Historie[redigere]
FPGA-industrien udsprang afprogrammerbar skrivebeskyttet hukommelse(PROM) ogprogrammerbare logiske enheder(PLD'er).PROM'er og PLD'er havde begge mulighed for at blive programmeret i batches på en fabrik eller i marken (feltprogrammerbare).[3]
Alterablev grundlagt i 1983 og leverede industriens første omprogrammerbare logiske enhed i 1984 - EP300 - som indeholdt et kvartsvindue i pakken, der gjorde det muligt for brugerne at skinne en ultraviolet lampe på matricen for at sletteEPROMceller, der indeholdt enhedskonfigurationen.[4]
Xilinxproduceret den første kommercielt levedygtige feltprogrammerbaregate arrayi 1985[3]– XC2064.[5]XC2064 havde programmerbare porte og programmerbare sammenkoblinger mellem porte, begyndelsen på en ny teknologi og et nyt marked.[6]XC2064 havde 64 konfigurerbare logiske blokke (CLB'er) med to tre-inputopslagstabeller(LUTs).[7]
I 1987 blevNaval Surface Warfare Centerfinansieret et eksperiment foreslået af Steve Casselman for at udvikle en computer, der ville implementere 600.000 omprogrammerbare porte.Casselman havde succes, og et patent relateret til systemet blev udstedt i 1992.[3]
Altera og Xilinx fortsatte uanfægtet og voksede hurtigt fra 1985 til midten af 1990'erne, da konkurrenterne spirede frem og udhulede en betydelig del af deres markedsandel.I 1993, Actel (nuMikrosemi) tjente omkring 18 procent af markedet.[6]
1990'erne var en periode med hurtig vækst for FPGA'er, både i kredsløbsraffinement og produktionsvolumen.I begyndelsen af 1990'erne blev FPGA'er primært brugt itelekommunikationognetværk.I slutningen af årtiet fandt FPGA'er vej til forbruger-, bil- og industriapplikationer.[8]
I 2013 repræsenterede Altera (31 procent), Actel (10 procent) og Xilinx (36 procent) tilsammen cirka 77 procent af FPGA-markedet.[9]
Virksomheder som Microsoft er begyndt at bruge FPGA'er til at accelerere højtydende, beregningsintensive systemer (som f.eks.datacentreder driver deresBing søgemaskine), på grund af denydeevne pr wattfordel FPGA'er leverer.[10]Microsoft begyndte at bruge FPGA'er tilfremskyndeBing i 2014 og i 2018 begyndte at implementere FPGA'er på tværs af andre datacenter-arbejdsbelastninger for deresAzure skyenplatform.[11]
Følgende tidslinjer angiver fremskridt i forskellige aspekter af FPGA-design:
Porte
- 1987: 9.000 porte, Xilinx[6]
- 1992: 600.000, Naval Surface Warfare Department[3]
- Begyndelsen af 2000'erne: millioner[8]
- 2013: 50 millioner, Xilinx[12]
Markedets størrelse
- 1985: Første kommercielle FPGA: Xilinx XC2064[5][6]
- 1987: 14 millioner dollars[6]
- c.1993: >385 millioner dollars[6][mislykket verifikation]
- 2005: 1,9 milliarder dollars[13]
- 2010 skøn: $2,75 milliarder[13]
- 2013: 5,4 milliarder dollars[14]
- Estimat for 2020: 9,8 milliarder dollars[14]
Designet starter
ENdesign starter et nyt brugerdefineret design til implementering på en FPGA.
Design[redigere]
Nutidige FPGA'er har store ressourcer pålogiske porteog RAM-blokke til at implementere komplekse digitale beregninger.Da FPGA-design anvender meget hurtige I/O-hastigheder og tovejsdatabusser, bliver det en udfordring at verificere korrekt timing af gyldige data inden for opsætningstid og holdetid.
Gulvplanlægningmuliggør ressourceallokering inden for FPGA'er for at opfylde disse tidsbegrænsninger.FPGA'er kan bruges til at implementere enhver logisk funktion, som enASICkan præstere.Muligheden for at opdatere funktionaliteten efter forsendelse,delvis omkonfigurationaf en del af designet[17]og de lave ikke-tilbagevendende tekniske omkostninger i forhold til et ASIC-design (på trods af de generelt højere enhedsomkostninger), giver fordele for mange applikationer.[1]
Nogle FPGA'er har analoge funktioner ud over digitale funktioner.Den mest almindelige analoge funktion er en programmerbardrejningshastighedpå hver udgangsben, hvilket giver ingeniøren mulighed for at indstille lave satser på let belastede stifter, som ellers villeringellerparuacceptabelt, og at sætte højere rater på tungt belastede ben på højhastighedskanaler, der ellers ville køre for langsomt.[18][19]Også almindelige er kvarts-krystal oscillatorer, on-chip modstand-kapacitans oscillatorer, ogfaselåste sløjfermed indlejretspændingsstyrede oscillatorerbruges til clockgenerering og -styring samt til højhastighedsserializer-deserializer (SERDES) sende ure og gendannelse af modtagerur.Temmelig almindelige er differentialekomparatorerpå inputben, der er designet til at blive tilsluttetdifferentiel signaleringkanaler.Nogle få "blandet signalFPGA'er" har integreret periferiudstyranalog-til-digital konvertere(ADC'er) ogdigital-til-analog konvertere(DAC'er) med analoge signalbehandlingsblokke, der tillader dem at fungere som ensystem-på-en-chip(SoC).[20]Sådanne enheder udvisker linjen mellem en FPGA, som bærer digitale enere og nuller på dets interne programmerbare sammenkoblingsstof, ogfeltprogrammerbar analog array(FPAA), som bærer analoge værdier på sit interne programmerbare sammenkoblingsstof.
Logiske blokke[redigere]
Hovedartikel:Logisk blok
Forenklet eksempel på illustration af en logisk celle (LUT –Opslagstabel, FA –Fuld hugorm, DFF –D-type flip-flop)
Den mest almindelige FPGA-arkitektur består af en række aflogiske blokke(kaldet konfigurerbare logiske blokke, CLB'er eller logiske array-blokke, LAB'er, afhængigt af leverandøren)I/O padsog dirigere kanaler.[1]Generelt har alle routingkanaler den samme bredde (antal ledninger).Flere I/O-pads kan passe ind i højden af en række eller bredden af en kolonne i arrayet.
"Et applikationskredsløb skal kortlægges i en FPGA med tilstrækkelige ressourcer.Mens antallet af nødvendige CLB'er/LAB'er og I/O'er let kan bestemmes ud fra designet, kan antallet af nødvendige routingspor variere betydeligt selv blandt designs med den samme mængde logik.(For eksempel entværstangskontaktkræver meget mere routing end ensystolisk arraymed samme portantal.Da ubrugte routingspor øger omkostningerne (og mindsker ydeevnen) af delen uden at give nogen fordel, forsøger FPGA-producenter at levere lige nok spor, så de fleste designs, der vil passe mht.opslagstabeller(LUT'er) og I/O'er kan væredirigeret.Dette bestemmes af estimater som dem, der er afledt afHuslejens regeleller ved at eksperimentere med eksisterende designs."[21]Fra 2018,netværk-på-chiparkitekturer til routing og sammenkobling er under udvikling.[citat nødvendig]
Generelt består en logisk blok af nogle få logiske celler (kaldet ALM, LE, slice osv.).En typisk celle består af en 4-input LUT, enfuld hugorm(FA) og enD-type flip-flop.Disse kan være opdelt i to 3-input LUT'er.Inormal tilstanddisse kombineres til en 4-input LUT gennem den førstemultiplekser(mux).Iaritmetiktilstand, føres deres udgange til adderen.Valget af tilstand programmeres ind i den anden mux.Udgangen kan være entensynkronellerasynkron, afhængigt af programmeringen af den tredje mux.I praksis er hele eller dele af hugormengemt som funktionerind i LUT'erne for at spareplads.[22][23][24]
Hårde blokke[redigere]
Moderne FPGA-familier udvider ovenstående muligheder til at inkludere funktionalitet på højere niveau fastgjort i silicium.At have disse fælles funktioner indlejret i kredsløbet reducerer det nødvendige areal og giver disse funktioner øget hastighed sammenlignet med at bygge dem ud fra logiske primitiver.Eksempler på disse omfattermultiplikatorer, generiskDSP blokke,indlejrede processorer, højhastigheds I/O-logik og indlejretminder.
High-end FPGA'er kan indeholde høj hastighedmulti-gigabit transceivereoghårde IP-kernersåsomprocessorkerner,Ethernet medium adgangskontrolenheder,PCI/PCI Expresscontrollere og eksterne hukommelsescontrollere.Disse kerner findes sammen med det programmerbare stof, men de er bygget ud aftransistoreri stedet for LUT'er, så de har ASIC-niveauydeevneogstrømforbruguden at forbruge en betydelig mængde stofressourcer, hvilket efterlader mere af stoffet frit til den applikationsspecifikke logik.Multi-gigabit transceivere indeholder også højtydende analoge input- og output-kredsløb sammen med højhastigheds-serializere og deserializere, komponenter som ikke kan bygges ud af LUT'er.Højere niveau fysisk lag (PHY) funktionalitet som f.ekslinjekodningkan eller kan ikke implementeres sammen med serializers og deserializers i hård logik, afhængigt af FPGA.