EO_501

DIGITAL FPGA DESIGN ELETTRONICA OGGI 501 - APRILE 2022 47 Il lettore avrà sicuramente familiarità sia con gli FPGA (Field Programmable Gate Array) sia con dispositivi a semiconduttore alternativi con i quali gli FPGA competono. Sarebbe utile confrontare alcune delle differenze essenziali esistenti fra gli FPGA e i principali dispositivi concorrenti, ossia i microcontrollori (MCU, Microcontroller Unit). Progettazione con gli FPGA: i vantaggi chiave Il principale vantaggio per il progettista che impiega gli FPGA è rappresentato dalla loro struttura intrinseca, che gli consente di programmarli (e riprogrammarli) rapidamente per eseguire pressoché qualunque funzione. Un modo per I principali vantaggi degli FPGA rispetto alle MCU Jay Aggarwal Lattice Semiconductor Nel momento in cui si accingono a sviluppare un nuovo sistema elettronico, i progettisti devono prendere una miriade di decisioni; una delle più cruciali è quella riguardante l’architettura del sistema e i dispositivi a semiconduttore impiegati per realizzarla. Considerando la funzione critica svolta da questi componenti e l’ampia scelta attualmente disponibile, prendere la decisione sbagliata può fare la differenza tra successo e insuccesso nel mercato raffigurarsi questa struttura è quello di pensare a tante piccole “isole” (blocchi) a logica programmabile all’interno di un “mare” di interconnessioni programmabili (Fig. 1). Ciascun blocco logico risulta composto da un registro e da alcune celle logiche combinatorie e può essere programmato per eseguire una determinata funzione, mentre le interconnessioni programmabili possono essere utilizzate per collegare gli input/output universali (GPIO, general-purpose input/output) dell’FPGA agli I/O dei blocchi logici selezionati e per collegare fra di loro i blocchi logici. Inoltre, i banchi di GPIOpossonoessereprogrammati per supportare diverse interfacce elettriche, impedenze d’ingresso e valori dello slew rate in uscita. La struttura programmabile degli FPGA può essere utilizzata per implementare algoritmi di elaborazione dati ad elevato parallelismo. Per esempio, supponiamo che un algoritmo debba eseguire 100 somme su set simili di dati; è possibile configurare un FPGA in modo che esegua Fig. 1 – Tipica architettura di un FPGA

RkJQdWJsaXNoZXIy Mzg4NjYz