FPGA: erinevus redaktsioonide vahel

Eemaldatud sisu Lisatud sisu
P Koondasin skripti abil viited
P pisitoimetamine
1. rida:
{{keeletoimeta}}
[[Pilt:Altera StratixIVGX FPGA.jpg|thumbpisi|300px|Altera Stratix IV GX FPGA]]
'''FPGA''' (''field-programmable gate array'', väliprogrammeeritav väravamassiiv või '''programmeeritav ventiilmaatriks''') on [[integraallülitus]], mille tootja on disaininud nii, et selle lülituse täpse [[Konfiguratsioon (informaatika)|konfiguratsiooni]] saab määrata ehk programmeerida kasutaja.
 
==Arhitektuur==
FPGA koosneb programmeeritavatest loogikakomponentidest, mida kutsutakse loogikaplokkideks, ja seadistatavatest vaheühendustest, mille abil saab loogikaplokke ühendada. Loogika plokke saab panna tegema keerulisi funktsioone aga ka lihtsaid loogilisi tehteid nagu näiteks [[AND]] ja [[XOR]]. Sageli on FPGA loogikaplokkides ka mäluelemendid, mis võivad olla lihtsad [[Triger|trigeridtriger]]id või keerulisemad mäluüksused.<ref name="FPGA" />
 
Lisaks digitaalsetele funktsioonidele on mõnel FPGA-l võimalused ka [[analoogelektroonika]] jaoks. Enamasti saab programaatiliselt muuta kiibi jalal oleva signaali muutumise kiirust ja väljundvoolu tugevust. Sageli on kiipi integreeritud ka analoogsignaali [[komparaator]]eid (võrdlejaid). Leidub ka seadmeid, milles on olemas nii [[Analooganaloog-digitaalmuundur|analoog-digitaalmuundurid]]id kui ka [[Digitaaldigitaal-analoogmuundur|digitaal-analoogmuundurid]]id, mis lubavad FPGA-l käituda nagu [[süsteemikiip]].<ref name="lBRK3" />
 
Kõige levinum FPGA arhitektuur<ref name="FPGA" /> koosneb '''loogikaplokkide massiivist''' (sõltuvalt tootjast kutsutakse seda kas seadistavaks loogikaplokiks (CLB) või loogika-massiiviplokkiks (LAB)), sisend/väljund jalgadest ning vaheühendustest. Üldiselt on kõigil ühendustel sama [[ribalaius]].
13. rida:
 
===Loogikarakud loogikaplokis===
Üldiselt koosneb loogikaplokk (CLB või LAB) mõnest '''loogikarakust'''. Tüüpiline loogikarakk koosneb 4 sisendiga [[otsingutabel|otsingutabelist]]ist, [[täisliitja]]st ja D-tüüpi [[Triger|flip-flopist]] nagu all näidatud. Otsingutabel on joonisel jagatud kaheks 3 sisendiga otsingutabeliks. Tavarežiimis on need läbi vasakul oleva [[multipleksor]]i kombineeritud üheks 4 sisendiga otsingutabeliks. Aritmeetikarežiimis söödetakse nende väljundid liitjale. Režiimi saab valida keskmise multipleksori programmeerimise abil. Väljund võib olla sünkroonne või asünkroonne sõltuvalt joonisel paremal asuva multipleksori programmeerimisest. Praktikas kasutatakse tervet või osa täisliitjast otsingutabeli funktsioonina, et ruumi säästa.<ref name="rvDCi" /><ref name="otMMI" /><ref name="2gCdK" />
 
[[Pilt:FPGA cell example.png|400px|thumbpisi|center|Lihtsustatud näidis loogikarakust]]
 
'''Loogikarakk''' koosneb tavaliselt kahest või neljast sellisest struktuurist, kus mõned signaalid on neile ühised. Loogikaplokkides on tüüpiliselt omakorda mõned loogikarakud.
67. rida:
 
===Areng tänapäeval===
Hiljutine trend on viia traditsiooniline FPGA edasi ja ühendada see mikroprotsessori ja teiste lisaseadmetega, et moodustada [[süsteemikiip]]. Näiteks sellistest hübriidtehnoloogiatest võib tuua [[Xilinx]] Virtex-II PRO ja Virtex-4 seadmed, kus on üks või rohkem [[PowerPC]] protsessorit FPGA [[loogikakangas]]se integreeritud. [[Atmel]]<nowiki/>i FPSLIC on veel üks selline seade, mis kasutab AVR-i protsessorit koos Atmeli programmeeritava loogikaarhitektuuriga.
 
Alternatiivne lähenemine protsessorite kasutamises on võimalus kasutada tarkvaralisi protsessoreid, mis on juurutatud otse FPGA loogikale.
98. rida:
 
==Seadistamise eripärad==
FPGA konfiguratsioon määratakse tavaliselt [[riistvara kirjeldamise keel|riistvara kirjeldamise keelega]]ega (''hardware description language'' – HDL). See kirjeldus on sarnane keelega, millega kirjeldatakse [[Rakendusespetsiifiline integraallülitusi|rakendusespetsiifilisi integraallülitusi]] (''application-specific integrated circuit'' – ASIC). FPGA abil on võimalik teostada iga loogilist funktsiooni, mis rakendus-spetsiifilises integraallülituses võib eksisteerida.<ref name="AoWz7" />
 
Et määrata FPGA käitumine, peab kasutajal olema [[riistvara kirjeldamise keel|riistvara kirjeldamise keelega]]ega (''hardware description language'' – HDL) või elektriskeemiga disain. HDL on parem vorm, kui on vaja töötada suurte struktuuridega, sest seal saab neid nummerdada, mitte ei pea igat väikest osa käsitsi joonistama. Aga visualiseerimiseks on parem kasutada skeemi.
 
Kasutades seejärel mõnda abiprogrammi, genereeritakse elektriliste ühenduste nimekiri. Seejärel saab selle ühenduste nimekirja konkreetse FPGA peale kaardistada. Selle jaoks on tavaliselt FPGA tootja valmistatud kinnine tarkvara. Kasutaja vaatab tulemuse üle erinevate valideerimismeetoditega, mis võivad näidata nii ajastuse analüüsi kui ka süsteemi simulatsiooni.
106. rida:
Kui disainimise ja valideerimise protsess on lõppenud, genereeritakse FPGA tootja tarkvara poolt binaarfail, mille abil seadistatakse lõpuks FPGA. Seadistamiseks kasutatakse [[jadaühendus]]t või välist mäluseadet.
 
Kõige tavalisemad HDL-id on '''VHDL''' ja '''Verilog'''. Kuid HDL-id on tavaliselt suhteliselt keerulised ja seda võrreldakse oma raskusastme poolest [[Assemblerkeel|assemblerkeelegaassemblerkeel]]ega.
 
Et lihtsustada komplekssete süsteemide disainimist FPGA-del, on loodud teeke, mis sisaldavad keerulisi funktsioone ja skeeme, mis on testitud ja optimeeritud. Inglise keeles on nende nimetus tihti "IP cores" ja nad on saadaval FPGA-de tootjate ja kolmandate osapoolte käest. Enamasti on need tasulised ja kinniste litsentsidega, kuid mõned on ka [[avatud lähtekood]]i ja [[vaba litsents]]iga.
124. rida:
{{viited|allikad=
<ref name="FPGA">[http://www.eecg.toronto.edu/~vaughn/challenge/fpga_arch.html FPGA Architecture for the Challenge]</ref>
<ref name="FPGA-ASIC-comparison">http://doi.acm.org/10.1145/1117201.1117205</ref>
<ref name="whitepaper">Tim Erjavec, White Paper, "[http://www.xilinx.com/support/documentation/white_papers/wp306.pdf Introducing the Xilinx Targeted Design Platform: Fulfilling the Programmable Imperative]."</ref>
<ref name="history">[http://archive.is/0TkGb ''History of the programmable logic'']</ref>
<ref name="four">Funding Universe. “[http://www.fundinguniverse.com/company-histories/Xilinx-Inc-Company-History.html Xilinx, Inc.]”</ref>
<ref name="clive">Clive Maxfield, Programmable Logic DesignLine, "[http://www.pldesignline.com/products/187203173 Xilinx unveil revolutionary 65nm FPGA architecture: the Virtex-5 family].</ref>
<ref name="book">Clive Maxfield, raamat "[http://books.google.com/books?id=dnuwr2xOFpUC&pg=PA4&lpg=PA4&dq=FPGA+Market+growth+1990s&source=web&ots=YjFedB35Vp&sig=EH8y56Cih9iNLEqYXkZ63iO46K4&hl=en&sa=X&oi=book_result&resnum=4&ct=result The Design Warrior's Guide to FPGAs]". Kirjastas Elsevier, 2004. ISBN 0750676043, 9780750676045.</ref>
<ref name="instat">Dylan McGrath, EE Times, "[http://www.eetimes.com/news/design/business/showArticle.jhtml?articleID=188102617 FPGA Market to Pass $2.7 Billion by '10, In-Stat Says]".</ref>
<ref name="lBRK3">Mike Thompson, EETimes [http://www.eetimes.com/showArticle.jhtml?articleID=200000777 Mixed-signal FPGAs provide GREEN POWER]</ref>
<ref name="rvDCi">[http://www.altera.com/literature/hb/cyc2/cyc2_cii51002.pdf CycloneII Architecture]</ref>
136. rida ⟶ 129. rida:
<ref name="2gCdK">[http://www.xilinx.com/support/documentation/user_guides/ug070.pdf Virtex-4 FPGA User Guide]</ref>
<ref name="aW7DF">[http://www.xilinx.com/bvdocs/whitepapers/wp245.pdf Achieving Higher System Performance with the Virtex-5 Family of FPGAs]</ref>
<ref name="FPGA-ASIC-comparison">http://doi.acm.org/10.1145/1117201.1117205</ref>
<ref name="whitepaper">Tim Erjavec, White Paper, "[http://www.xilinx.com/support/documentation/white_papers/wp306.pdf Introducing the Xilinx Targeted Design Platform: Fulfilling the Programmable Imperative]."</ref>
<ref name="history">[http://archive.is/0TkGb ''History of the programmable logic'']</ref>
<ref name="81hOA">Peter Clarke, EE Times, "[http://www.eetimes.com/story/OEG20010622S0091 Xilinx, ASIC Vendors Talk Licensing]."</ref>
<ref name="four">Funding Universe. "[http://www.fundinguniverse.com/company-histories/Xilinx-Inc-Company-History.html Xilinx, Inc.]"</ref>
<ref name="clive">Clive Maxfield, Programmable Logic DesignLine, "[http://www.pldesignline.com/products/187203173 Xilinx unveil revolutionary 65nm FPGA architecture: the Virtex-5 family].</ref>
<ref name="book">Clive Maxfield, raamat "[http://books.google.com/books?id=dnuwr2xOFpUC&pg=PA4&lpg=PA4&dq=FPGA+Market+growth+1990s&source=web&ots=YjFedB35Vp&sig=EH8y56Cih9iNLEqYXkZ63iO46K4&hl=en&sa=X&oi=book_result&resnum=4&ct=result The Design Warrior's Guide to FPGAs]". Kirjastas Elsevier, 2004. ISBN 0750676043, 9780750676045.</ref>
<ref name="instat">Dylan McGrath, EE Times, "[http://www.eetimes.com/news/design/business/showArticle.jhtml?articleID=188102617 FPGA Market to Pass $2.7 Billion by '10, In-Stat Says]".</ref>
<ref name="8wovu">[http://www.eetimes.com/document.asp?doc_id=1271975 FPGA/DSP Blend Tackles Telecom Apps]</ref>
<ref name="nf2q1">Mark LaPedus, EETimes [http://www.eetimes.com/showArticle.jhtml?articleID=197001881 Xilinx aims 65-nm FPGAs at DSP applications]</ref>
143. rida:
 
{{Mikrokontrollerid}}
 
[[Kategooria:Riistvara]]
[[Kategooria:Loogikalülitused]]