Field Programmable Gate Array: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Rightaway2 (discussione | contributi)
Aggiunta della menzione alle nuove schede Versal che uniscono FPGA ed AI Engine
 
(41 versioni intermedie di 22 utenti non mostrate)
Riga 1:
[[File:Altera Flex EPF10K20 20000 cell FPGA.jpg|thumb|FPGA contenente 20.000 [[porta logica|porte logiche]]]]
Un '''Field Programmable Gate Array''' (solitamente abbreviato in '''FPGA'''), in [[elettronica digitale]], indicaè un [[dispositivo logico programmabile]] ovvero genericamente un [[dispositivo (informatica)|dispositivo]] [[hardware]] elettronico
formato da un [[circuito integrato]] le cui funzionalità logiche di elaborazione sono appositamente [[programmazione (informatica)|programmabili]] e modificabili tramite unopportuni [[linguaggio di descrizione hardware|linguaggi di descrizione hardware]].
 
==Cenni storiciStoria ==
{{Vedi anche|Programmable Logic ArrayDevice}}
I componenti FPGA sono stati introdotti nella seconda metà degli [[anni 1980'80]] come terza generazione di PLD ([[Programmable Logic Device]]);, sviluppati presso i laboratori della [[Harris Semiconductor]];. ulterioriUlteriori sviluppi vennero realizzati con le [[Read Only Memory]], delle memorie [[CMOS]] e delle tecnologie [[antifuse]] che vennero tutte implementate in tali dispositivi. Dopo

A partire dalla seconda metà degli [[anni '80]], dopo i primi modelli prodotti da [[Altera]] e la realizzazione dell’XC2064dell'XC2064 di [[Xilinx]] e l'implementazione della [[SRAM]] su larga scala negli [[anni '90]], l’industria delledel FPGAsettore ha avutaavuto una forte espansione, grazie anche ai continui progressi tecnologici nel settore dei [[semiconduttori]], raggiungendo nel 2005 una quota di mercato vicina ai 2 miliardi di dollari.
 
== Caratteristiche ==
=== Tipologia ===
Esistono diversi tipi di FPGA, che comprendono sia dispositivi programmabili una sola volta, sia dispositivi riprogrammabili un grande numero di volte. I primi, detti [[Programmable Read Only Memory|OTP]] (''One Time Programmable''), sono costituiti da componenti il cui stato di funzionamento cambia in modo permanente, permettendo di mantenere la configurazione allo spegnimento del dispositivo. Alla seconda categoria appartengono i dispostividispositivi basati su tecnologia [[SRAM]] (''Static Random Access Memory''), i quali devono essere riprogrammati ad ogni accensione, avendo una memoria di configurazione volatile.
 
I circuiti FPGA sono elementi che presentano caratteristiche intermedie rispetto ai dispositivi [[Application specific integrated circuit|ASIC]] (''Application Specific Integrated Circuit'') da un lato e a quelli con architettura [[Programmable Array Logic|PAL]] (''Programmable Array Logic'') dall'altro. L'uso di componenti FPGA comporta alcuni vantaggi rispetto agli ASIC: si tratta infatti di dispositivi standard la cui funzionalità da implementare non viene impostata dal produttore, il quale può quindi produrre su larga scala a basso prezzo. La loro genericità li rende adatti a un gran numero di applicazioni comein ambito ''consumer'', comunicazioni, ''automotive'' eccetera. Essi sono programmati direttamente dall'utente finale, consentendo la diminuzione dei tempi di progettazione, di verifica mediante simulazioni e di prova sul campo dell'applicazione. Il grande vantaggio rispetto agli ASIC è che permettono di apportare eventuali modifiche o correggere errori semplicemente riprogrammando il dispositivo in qualsiasi momento. Per questo motivo sono utilizzati ampiamente nelle fasi di [[prototipizzazione]], in quanto eventuali errori possono essere risolti semplicemente riconfigurando il dispositivo. L'ambiente di progettazione è anche più ''[[user-friendly]]'' e di relativamente facile apprendimento. Di contro, per applicazioni su grandi numeri sono antieconomici, perché il prezzo unitario del dispositivo è superiore a quello degli ASIC (i quali hanno spesso, però, più elevati costi di progettazione).
 
Il costo di tali dispositivi è oggi in rapida diminuzione: ciò li rende sempre di più una valida alternativa alla tecnologia [[standard cell]]. Usualmente vengono programmati con linguaggi come il [[Verilog]] o il [[VHDL]], ma non bisogna dimenticare la modalità "''schematic-entry''", che consente un approccio veloce e semplificato a tale tecnologia pur essendo di pari potenzialità. Molte case costruttrici (ad esempio [[Xilinx]] e [[Altera]]) forniscono gratuitamente sistemi di sviluppo che supportano quasi tutta la loro gamma di prodotti.
 
Grazie alla versatilità di questi processori si stanno allargando i campi di utilizzo in diversi settori per i quali queste schede inizialmente non erano state progettate: ad esempio per l'attività di mining delle criptovalute, un campo inizialmente combattuto solo dai processori ASIC e dalle GPU.
 
===Le principali tecnologie===
Riga 44 ⟶ 48:
== Utilizzo ==
Tali dispositivi consentono la realizzazione di [[Funzione booleana|funzioni logiche]] anche molto complesse, e sono caratterizzati da un'elevata [[scalabilità]]. Questo tipo di tecnologia ha assunto un ruolo sempre più importante nell'elettronica industriale così come nella [[ricerca scientifica]]. Grazie al continuo progredire delle tecniche di miniaturizzazione, le capacità di tali dispositivi sono aumentate enormemente nel corso di due soli decenni, durante i quali si è passati da poche migliaia di [[Porta logica|porte logiche]] a qualche milione di porte logiche per singolo dispositivo FPGA.
 
Integrata con componenti [[AI engine]], le ultime schede riconfigurabili hanno trovato spazio in applicazioni di intelligenza artificiale, con lo scopo di unire flessibilità, prestazioni ed efficienza energetica in un unico dispositivo <ref>{{Cita pubblicazione|nome=Kees|cognome=Vissers|data=2019-02-20|titolo=Versal: The Xilinx Adaptive Compute Acceleration Platform (ACAP)|editore=ACM|pp=83–83|lingua=en|accesso=2025-07-11|doi=10.1145/3289602.3294007|url=https://dl.acm.org/doi/10.1145/3289602.3294007}}</ref>.
 
== Dati sulla diffusione==
Riga 53 ⟶ 59:
* 1992: 600 000 porte logiche, Naval Surface Warfare Department
* 2000-2010: Milioni.
* 2019: 10.2 milioni (Intel Stratix GX 10M)
 
Dimensione del mercato:
Riga 59 ⟶ 66:
* 1987: 14 000 000 $
* ~1993: >385 000 000 $
* 2005: 1.9 miliardi di dollari.<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] {{Webarchive|url=https://web.archive.org/web/20110615022908/http://www.eetimes.com/news/design/business/showArticle.jhtml?articleID=188102617 |data=15 giugno 2011 }}''. May 24, 2006. Retrieved February 5, 2009.</ref>
* 2010: 2.75 miliardi.<ref name="instat"/>
* 2020: si stima un mercato di 8.5 miliardi di dollari.
Riga 66 ⟶ 73:
[[Xilinx]] e [[Altera]] al 2014 erano i due maggiori fabbricatori di FPGA.<ref>{{Cita web |nome=John |cognome=Edwards |sito=EDN |url=http://www.edn.com/article/CA6339519.html |titolo=No room for Second Place: Xilinx and Altera slug it out for supremacy in the changing PLD market |data=1º giugno 2006 |accesso=11 maggio 2012 |urlmorto=sì |urlarchivio=https://archive.is/20120728124831/http://www.edn.com/article/CA6339519.html |dataarchivio=28 luglio 2012 }}</ref> Le due aziende sono rivali "storiche", e insieme controllano oltre l'80% del mercato.<ref>{{Cita web|sito=Seeking Alpha|url=http://seekingalpha.com/article/85478-altera-and-xilinx-report-the-battle-continues|titolo= Altera and Xilinx Report: The Battle Continues|data=17 luglio 2008|anno=2008|accesso=13 novembre 2013}}</ref>
Sia Xilinx sia Altera forniscono il relativo software di sviluppo per [[Microsoft Windows|Windows]] e [[Linux]], in versioni gratuite o a pagamento, e con licenza [[Software proprietario|proprietaria]]<ref>{{Cita web|nome=Xilinx Inc.|sito=Xilinx.com|url=http://www.xilinx.com/support/documentation/sw_manuals/end-user-license-agreement.txt|titolo=End User License Agreement|accesso=15 ottobre 2015|urlmorto=sì|urlarchivio=https://web.archive.org/web/20151017142617/http://www.xilinx.com/support/documentation/sw_manuals/end-user-license-agreement.txt|dataarchivio=17 ottobre 2015}}</ref><ref>
{{Cita web|nome=Altera Corporation|sito=dl.Altera.com|url=http://dl.altera.com/eula/|titolo=Altera Software License Agreements|accesso=15 ottobre 2015}}</ref>. Questo software consente l'implementazione della logica nel dispositivo e rende possibile la gestione delle singole risorse.<ref>{{Cita web|titolo=Xilinx ISE WebPACK|url=http://www.xilinx.com/ise/logic_design_prod/webpack.htm|urlmorto=sì|urlarchivio=https://web.archive.org/web/20070624212612/http://www.xilinx.com/ise/logic_design_prod/webpack.htm|dataarchivio=24 giugno 2007}}</ref><ref>{{Cita web|titolo=Quartus II Web edition software|url=https://www.altera.com/support/software/download/altera_design/quartus_we/dnl-quartus_we.jsp|accesso=1º gennaio 2014|urlarchivio=https://web.archive.org/web/20071203074531/https://www.altera.com/support/software/download/altera_design/quartus_we/dnl-quartus_we.jsp|dataarchivio=3 dicembre 2007|urlmorto=sì}}</ref> Tra gli altri produttori vi sono [[Lattice Semiconductor]] (dispositivi SRAM con memorie flash integrate) [[Actel]] (ora [[Microsemi]], produce dispositivi antifuse), [[SiliconBlue Technologies]], [[Achronix]],<ref>{{Cita web|titolo=Achronix to use Intel's 22&nbsp;nm manufacturing|url=httphttps://newsroom.intel.com/community/intel_newsroom/blog/2010/11/01/chip-shot-achronix-to-use-intel-s-22nm-manufacturing}}</ref> e [[QuickLogic]]. Nel marzo 2010, [[Tabula (azienda)|Tabula]] annuncia l'introduzione della propria tecnologia basata su logica time-multiplexed.<ref>{{Cita web |titolo=Tabula's Time Machine - Micro Processor Report |url=http://www.tabula.com/news/M11_Tabula_Reprint.pdf |urlmorto=sì |urlarchivio=https://web.archive.org/web/20110410094902/http://www.tabula.com/news/M11_Tabula_Reprint.pdf |dataarchivio=10 aprile 2011 }}</ref>
 
==Note==
Riga 76 ⟶ 83:
 
== Voci correlate ==
* [[Altera]]
* [[Antifusibile]]
* [[Gate array]]
* [[Linguaggio di descrizione hardware]]
* [[Programmable logicLogic deviceArray]]
* [[Programmable Logic Device]]
* [[Programmable Read Only Memory]]
* [[SRAM]]
* [[Verilog]]
* [[VHDL]]
* [[Xilinx]]
 
== Altri progetti ==
{{interprogetto|preposizione=sul|wikt=FPGA|wikt_etichetta=FPGA}}
 
== Collegamenti esterni ==
* {{Collegamenti esterni}}
* {{cita web|http://electro-logic.blogspot.it/p/indice-articoli.html|Articoli sulle FPGA}}
* {{FOLDOC|2=field-programmable gate array}}
* {{cita web|httphttps://electro-logic.blogspot.it/p/indice-articoli.html|Articoli sulle FPGA}}
* [https://www.youtube.com/watch?v=keAftEcTZKA ''ASIC e FPGA - Le differenze che contano davvero'']'', YouTube''
* {{cita web|1=http://rcs.uncc.edu/|2=University of North Carolina at Charlotte's Reconfigurable Computing Laboratory|lingua=en|accesso=1º gennaio 2014|urlarchivio=https://web.archive.org/web/20130820024712/http://rcs.uncc.edu/|dataarchivio=20 agosto 2013|urlmorto=sì}}
* {{cita web|http://www.eecg.toronto.edu/~vaughn/challenge/fpga_arch.html|Vaughn Betz's FPGA Architecture Page|lingua=en}}
* {{cita web|1=http://www.fpgacenter.com/|2=Tutorials and Examples on FPGAs|lingua=en|accesso=1 gennaio 2014|dataarchivio=5 gennaio 2014|urlarchivio=https://web.archive.org/web/20140105120901/http://fpgacenter.com/|urlmorto=sì}}
 
{{Logica programmabile}}
{{Controllo di autorità}}
{{Portale|informatica|elettronica}}