Upload
buidieu
View
225
Download
0
Embed Size (px)
Citation preview
Scuola Politecnica e delle Scienze di BaseCorso di Laurea in Ingegneria Informatica
Elaborato finale in Calcolatori Elettronici 1
Impiego di tecnologie FPGA perapplicazioni DSP: Valutazione e
confronto di prestazioni
Anno Accademico 2014/2015
Candidato: Federica Mesolella
matr.N46/000881
“Qualsiasi innovazione tecnologica puo essere pericolosa: il fuoco lo e
stato fin dal principio, e il linguaggio ancor di piu; si puo dire che
entrambi siano ancora pericolosi al giorno d’oggi, ma nessun uomo
potrebbe dirsi tale senza il fuoco e senza la parola.”(Isaac Asimov)
“La disumanita del computer sta nel fatto che, una volta programmato e
messo in funzione, si comporta in maniera perfettamente onesta.”
(Isaac Asimov)
Indice
Introduzione vii
1 Tecnologia FPGA 1
1.1 Introduzione all’FPGA . . . . . . . . . . . . . . . . . . . . . 1
1.1.1 Tecnologie di sviluppo . . . . . . . . . . . . . . . . . 3
1.1.2 Trend di evoluzione . . . . . . . . . . . . . . . . . . 4
1.1.3 Principali player . . . . . . . . . . . . . . . . . . . . 6
1.2 Struttura FPGA :Architettura e Tecnologia realizzativa . . 6
1.3 ASIC vs FPGA: vantaggi e svantaggi . . . . . . . . . . . . 9
1.4 Applicazioni FPGA . . . . . . . . . . . . . . . . . . . . . . 11
2 Tecnologia FPGA-DSP Oriented 13
2.1 Gli FPGA nelle applicazioni DSP . . . . . . . . . . . . . . . 15
2.1.1 Prestazioni DSP su moduli FPGA . . . . . . . . . . 16
2.2 Vantaggi e svantaggi nell’utilizzo combinato di DSP e FPGA 18
2.3 Tendenze, Opzioni, considerazioni e tools per l’utilizzo di
piattaforme FPGA riconfigurabili come alternativa all’ Hard-
ware DSP dedicato . . . . . . . . . . . . . . . . . . . . . . . 19
2.3.1 Passaggio da Hardware dedicato a piattaforma FP-
GA riconfigurabile . . . . . . . . . . . . . . . . . . . 21
iii
Indice
2.3.2 Supporto DSP sui dispositivi FPGA . . . . . . . . . 22
2.3.3 Prestazioni DSP su moduli FPGA . . . . . . . . . . 24
2.3.4 Quanto velocemente possibile devono eseguire gli al-
goritmi di segnali digitali? . . . . . . . . . . . . . . 25
2.3.5 L ’elaborazione del segnale e seriale o parallela? . . 25
2.3.6 Quanta capacita di calcolo DSP e disponibile ? . . . 26
2.3.7 Quali meccanismi di comunicazione sono disponibili
e a quale velocita sono trasferiti i dati? . . . . . . . 28
2.3.8 Tradeoff costo/prestazioni . . . . . . . . . . . . . . . 28
2.3.9 Quanta memoria e disponibile ? . . . . . . . . . . . 29
2.3.10 Qual e la disponibilita della soluzione? . . . . . . . . 29
3 Architettura e Selezione dei Componenti Hardware per
Applicazioni SDR 31
3.1 Requisiti generici . . . . . . . . . . . . . . . . . . . . . . . 33
3.2 Selezione componente ADC . . . . . . . . . . . . . . . . . . 36
3.3 Selezione componente DAC . . . . . . . . . . . . . . . . . . 37
3.4 Selezione componente DSP . . . . . . . . . . . . . . . . . . 38
3.5 Selezione componente FPGA . . . . . . . . . . . . . . . . . 42
4 Confronto prestazionale: processori DSP/FPGA 44
4.1 Confronto in termini di velocita e consumo di potenza . . . 46
4.1.1 Confronto in termini di velocita . . . . . . . . . . . . 47
4.1.2 Potenza e Costo . . . . . . . . . . . . . . . . . . . . 48
Bibliografia 51
iv
Elenco delle figure
1.1 Dispositivo Virtex-5 della famiglia Xilinx . . . . . . . . . . 3
1.2 Grafico Prima Legge di Moore . . . . . . . . . . . . . . . . 5
1.3 Struttura FPGA . . . . . . . . . . . . . . . . . . . . . . . . 7
1.4 Matrice di blocchi logici . . . . . . . . . . . . . . . . . . . . 8
1.5 Schema LUT . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.1 DSP Flusso di eventi . . . . . . . . . . . . . . . . . . . . . . 20
2.2 Slice semplificata del diagramma a blocchi del Xilinx Virtex-
5 FPGA’s DSP48E . . . . . . . . . . . . . . . . . . . . . . 23
2.3 Slice semplificata del diagramma del blocchi del Xilinx Virtex-
5 FPGA’s DSP48E . . . . . . . . . . . . . . . . . . . . . . 23
2.4 Confronto tra elaborazione convenzionale e quella basata su
FPGA-DSP . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.5 Risorse DSP dei moduli Acromag DSP . . . . . . . . . . . . 27
2.6 Moduli FPGA . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.7 Moduli PMC con dispositiviDSP-FPGA . . . . . . . . . . . 29
2.8 Memoria nei moduli Acromag PMC . . . . . . . . . . . . . 30
3.1 Diagramma a blocchi di alto livello SDR . . . . . . . . . . . 36
3.2 Selezione componente ADC . . . . . . . . . . . . . . . . . . 37
3.3 Selezione componente DAC . . . . . . . . . . . . . . . . . . 38
v
Elenco delle figure
3.4 Selezione componente DSP . . . . . . . . . . . . . . . . . . 40
3.5 Selezione componente FPGA . . . . . . . . . . . . . . . . . 42
4.1 Tabella DSP . . . . . . . . . . . . . . . . . . . . . . . . . . 49
4.2 Tabella FPGA . . . . . . . . . . . . . . . . . . . . . . . . . 49
4.3 Tabella DSP vs FPGA . . . . . . . . . . . . . . . . . . . . . 50
4.4 Grafico DSP vs FPGA . . . . . . . . . . . . . . . . . . . . . 50
vi
Introduzione
Il tema dell’elaborato e incentrato sullo studio delle potenzialita della
tecnologia FPGA per applicazioni DSP, sul confronto e sulla valutazio-
ne delle prestazioni. La prima parte riguarda uno studio, ad alto livello,
della tecnologia FPGA partendo dall’architettura e dalla struttura realiz-
zativa dei componenti, soffermandoci brevemente sulle analisi di mercato
riguardo costi e tempi di sviluppo, per finire con un’analisi circa i campi
applicativi dell’FPGA nel mercato odierno. La seconda sezione, invece, en-
tra nel vivo dello specifico argomento dell’elaborato in quanto tratta delle
applicazioni DSP su FPGA. Parleremo di dispositivi FPGA-DSP oriented.
Come vedremo in seguito in maniera piu approfondita fino ad alcuni anni
fa gli FPGA erano privi di blocchi specializzati nel DSP. Oggi, al contrario,
tutti i nuovi dispositivi FPGA sono dotati di blocchi DSP. Questo cam-
biamento di prospettiva si puo spiegare ricordando che negli ultimi anni
se e vero che e cresciuta la necessita di potenza di calcolo DSP, dall’altro
i tradizionali processori DSP hanno raggiunto il limite delle possibilita di
sviluppo basate sulla Prima Legge di Moore. Motivo per cui come i mi-
croprocessori anche i DSP sono costretti a fare i conti con l’architettura di
Von Neumann. Infatti gli FPGA-DSP Oriented si basano su architettura
parallela in grado di rispondere a questa maggiore domanda di potenza
di calcolo. Per anni, i moduli DSP sono stati progettati e sviluppati per
vii
Introduzione
applicazioni ”specific purpose”. Con l’avvento della tecnologia FPGA, e
piu in particolare grazie alla capacita degli ingegneri DSP di programmare
i dispositivi FPGA, e stato possibile un graduale aumento della flessibilita
complessiva della soluzione DSP. Oggi, con i piu recenti dispositivi FPGA
Xilinx Virtex-4 e Virtex-5 sul popolare modulo PMC, i progettisti godono
di grande flessibilita per la gestione sia del mondo campionato che del mon-
do elaborato algoritmicamente. Vedremo i vantaggi e gli svantaggi nell’uso
combinato di DSP e FPGA, gli eventi che hanno segnato tale evoluzione
e hanno determinato il passaggio da Hardware dedicato a piattaformna
FPGA riconfigurabile, concludendo il capitolo con sette domande circa le
prestazioni dei DSP su moduli FPGA, rispondendo alle quali e possibile
definire il contesto di esecuzione per l’applicazione. L’argomento generale
FPGA/DSP si particolarizzera, poi, all’ambito del cosiddetto Software-
Defined Radio (SDR) che sara l’argomento centrale del terzo capitolo. Per
Software Defined Radio, SDR, si intende una tecnologia che permette di
costruire ricevitori radio quasi completamente software e multistandard.
Oggigiorno i ricevitori dei vari standard (UMTS, GSM, Wimax, satelli-
tare...) sono costruiti in hardware e funzionano in modo simile. Hanno
tutti un’antenna che capta il segnale modulato alla frequenza dello stan-
dard usato, un demodulatore che riporta il segnale dalla banda traslata
in banda base, e un blocco di conversione analogico-digitale che converte
il segnale continuo in segnale numerico-digitale. I ricevitori odierni prima
di eseguire l’operazione di conversione del segnale da analogico a digitale
effettuano la demodulazione dello stesso. Nell’SDR questa operazione si
elimina perche la conversione si effettua direttamente in banda traslata. Il
concetto base dell’ SDR e posizionare la separzione digitale-analogica piu
vicina possibile all’antenna. Cio si ottiene mediante l’implementazione di
viii
Introduzione
molte funzioni tradizionalmente svolte da circuiti analogici con circuiti di-
gitali riconfigurabili. Vedremo i requisiti relativi al costo, al consumo di
energia, alle dimensioni, e le preoccupazioni ambientali in particolare il loro
contributo nella progettazione dell’applicazione e infine vedremo un’archi-
tettura ottimizzata per una tipica applicazione SDR. L’ultima sezione, il
capitolo conclusivo, presenta in maniera sintetica le principali caratteristi-
che di FPGA e DSP confrontando le due tecnologie attraverso tabelle e
grafici di interesse.
ix
Capitolo 1
Tecnologia FPGA
In elettronica digitale con l’acronimo FPGA “Field Programmable Ga-
te Array ”si intende un circuito integrato programmabile “sul campo ”dal-
l’utilizzatore finale, fuori dalla fabbrica, dotato di elavata scalabilita e ta-
le da consentire l’implementazione di funzioni logiche molto complesse.
Questo sara l’argomento dominante del capitolo seguente.
1.1 Introduzione all’FPGA
Possiamo descrivere la tecnologia FPGA come circuiti integrati la cui
configurazione hardware puo essere modificata dall’utilizzatore in accor-
do alle funzioni desiderate. L’FPGA e un circuito integrato. Tuttavia
la differenza rispetto ad altri e che i suddetti possono essere configurabili
dall’utilizzatore. Che significa? Nei circuiti integrati standard, che non
possono essere programmabili, vi sono interconnessioni tra transistori fis-
se. A meno che non si brucino o si verifichi un evento particolarmente
sfortunato queste interconnessioni non possono essere cambiate. Con la
tecnologia FPGA, invece, le interconnessioni tra transistori possono essere
cambiate a seconda della funzione logica, sebbene complessa, che abbia-
1
Capitolo 1. Tecnologia FPGA
mo definito. In questo modo, teoricamente, qualsiasi operazione, qual-
siasi funzione logica, anche complessa, puo essere implementata tenendo
conto sempre della capacita dei transistori. Una delle caratteristiche piu
importanti della tecnologia FPGA e la capacita di eseguire elaborazioni
parallele. Per elaborazione parallela intendiamo la capacita di effettuare
piu operazioni contemporaneamente. Una persona che legge un libro e
contemporaneamente ascolta musica e beve caffe e un esempio calzante
di una specie di elaborazione parallela. Un circuito integrato stanndard
non puo fare elaborazioni parallele o comunque puo farlo ma in maniera
limitata. Con la tecnologia FPGA, invece, possono essere fatte decine di
migliaia di elaborazioni parallele. Questo rende l’FPGA l’unica soluzione
da adottare nel caso di applicazioni che richiedono elaborazione parallela.
Ad esempio, se si vuole fare un’operazione di filtraggio in tempo reale su
un segnale video ad alta risoluzione, sappiamo dalla “Teoria dei Segnali
”che il segnale video e in realta una serie di immagini in sequenza chiamate
fotogrammi. Fondamentalmente e necessario ottenere un fotogramma da
una porta di ingresso, filtrarlo e inviarlo attraverso una porta di uscita. Poi
si dovrebbe fare lo stesso lavoro di “processing”in tempo reale per i prossi-
mi fotogrammi. Se si utilizzano circuiti integrati standard, inizio ad avere
il secondo frame dopo le tre operazioni (ottengo, filtra e invio) per il primo
fotogramma. Se questo processo non e abbastanza veloce, si puo perdere
il fotogramma successivo. La tecnologia FPGA,al contrario fa fare tutte
queste operazioni in parallelo. Cio significa che mentre inizia l’elaborazio-
ne di filtraggio del primo fotogramma, potremmo cominciare a prendere il
secondo fotogramma. E mentre invio il primo fotogramma in output, ini-
zio a filtrare il secondo frame e ad ottenere il terzo contemporaneamente.
In sintesi, gli FPGA sono circuiti integrati hardware programmabili che ci
2
Capitolo 1. Tecnologia FPGA
Figura 1.1
forniscono capacita di elaborazione parallela e l’opportunita di cambiare
la struttura interna a seconda dell’applicazione desiderata.
1.1.1 Tecnologie di sviluppo
Esistono diverse tipologie di FPGA. Alla prima famiglia appartengono
gli OTP (OneTime Programmable), ossia dispositivi programmabili una
sola volta. Alla seconda invece appartengono i devices basati su tecnolo-
gia SRAM (Static Random Access Memory) rimprogrammabili un gran
numero di volte. I quali, al contrario dei precedenti che mantegono la loro
configurazione allo spegnimento, questi devono essere riprogrammati ad
ogni accensione avendo una configurazione ”VOLATILE”.
• SRAM: Basata su tecnologia a memoria statica, RAM volatile che
non necessita di operazioni di refresh. Le SRAM-FPGA sono pro-
grammabili e riprogrammabili piu volte, configurabili da devices
esterni .
3
Capitolo 1. Tecnologia FPGA
• Antifusibile: Circuiti programmabili una sola volta (One-time
programmable)OTP.
• PROM: Circuiti programmabili una sola volta.
• EPROM: I dispositivi basati su tecnologia EPROM al contrario di
quelli PROM che una volta programmati non possono essere modi-
ficati questi invece possono essere riprogrammati piu volte mediante
la cancellazione dei dati con radiazione ultravioletta.
• EEPROM: Le operazioni di scrittura, modifica e cancellazione dei
dati avvengono per via elettrica.
• Flash: Tecnologia EPROM basata su memoria flash, dispositivi
che possono essere riprogrammati. Una cella di memoria flash e piu
piccola e meno costosa di una equivalente EEPROM.
• Fusibile: Circuiti programmabili una sola volta; bipolare.
1.1.2 Trend di evoluzione
Grazie al continuo progredire della tecnologia e in particolare delle
tecniche di miniaturizzazione le capacita di tali devices sono aumentate,
sono stati sviluppati circuiti integrati economici e potenti che sembrano
aver rispettato la prima Legge di Moore circa l’aumento del numero di
componenti a parita di volume occupato.“Le prestazioni dei processori, e
il numero di transistor ad esso relativo, raddoppiano ogni 18 mesi.”[13].
Infatti si e passati in soli 2 decenni dall’uso di poche migliaia di porte
logiche a qualche milione per singolo dispositivo FPGA. Inoltre prestazioni
elevate, costi e tempi di sviluppo ridotti al minimo sono le caratteristiche
che hanno aumentato il successo commerciale ed applicativo dei dispositivi
FPGA.
4
Capitolo 1. Tecnologia FPGA
Figura 1.2
Andamento negli anni del numero di porte logiche presenti su
circuiti FPGA:
• 1982: 8192 porte logiche; Burroughs Advances Systems Group; pro-
cessore S-Type 24 bit per I/O riprogrammabili.
• 1987: 9,000 porte logiche, Xilinx
• 1992: 600 000 porte logiche, Naval Surface Warfare Department
• 2000-2015: Milioni. [14]
Dimensione del mercato :
• 1985: Il primo dispositivo FPGA in commercio e stato XC2064 di
Xilinx.
• 1987: 14.000.000 dollari
• 1993: maggiori di 385.000.000 dollari
5
Capitolo 1. Tecnologia FPGA
• 2005: 1.9 miliardi di dollari.
• 2010-2015: Si stima 2.75 miliardi. [14]
1.1.3 Principali player
I principali player del mercato degli FPGA sono Xilinx e Altera. Questi
si differenziano tra loro per la realizzazione di dispoditivi diversi sia dal
punto di vista delle prestazioni che dei costi. Attualmente le famiglie di
punta dei due principali produttori sono Virtex-5 di Xilinx e Stratix-III
di Altera. Invece le famiglie piu economiche sono Spartan-3 di Xilinx e
Cyclone-III di Altera.
1.2 Struttura FPGA :Architettura e Tecnologia
realizzativa
L’FPGA e in generale una matrice di blocchi logici configurabili, detti
CLB (Configurable Logic Blocks), connessi fra loro attraverso interconnes-
sioni programmabili (programmable routing resources). Il singolo blocco
logico FPGA e costituito da una look-up table a 4 ingressi(LUT), e un
flip flop. L’unica uscita, puo essere quella registrata o non registrata della
LUT. Quindi quello che manca per realizzare un circuito digitale e l’inter-
connessione tra tutti questi blocchi logici disponibili sul dispositivo: questa
interconnessione puo essere codificata sotto forma di una sequenza di bit
(bitstream) che viene introdotta serialmente dopo il reset e va a program-
mare gli switch presenti nel dispositivo. Ai margini di tale matrice vi
sono i blocchi di ingresso/uscita, detti IOB (Input Output Block). I CLB
realizzano le funzioni logiche, l’insieme di interconnessioni li mette in co-
municazione, mentre gli IOB si occupano dell’interfacciamento del circuito
6
Capitolo 1. Tecnologia FPGA
Figura 1.3
con l’esterno. All’interno di tale matrice sono presenti anche altre tipi di
risorse, come i DCM (Digital Clock Manager), che generano il segnale di
clock, la rete che trasporta il segnale di clock dai flip-flop ai CLB ed al-
tre risorse di calcolo, come ad esempio le ALU (Arithmetic Logic Unit), e
risorse di memoria distribuita.
Matrice di blocchi logici: I blocchi CLB sono composti solitamente da
due o quattro celle logiche (logic cell), che eseguono le operazioni booleane.
Ogni logic cell e solitamente composta da una o piu LUT (Look Up Table)
programmabili. Le LUT sono utilizzate per implementare funzioni boolea-
ne. L’insieme di questi elementi e detto logic cell, e rappresenta uno dei
parametri piu importanti nella valutazione della potenzialita di un FPGA.
I CLB possono essere connessi fra loro, permettendo cosi di realizzare fun-
zioni booleane complesse. Le LUT sono composte da una memoria SRAM
da 16 bit e da un multiplexer a 4 ingressi: una volta configurate possono
generare qualsiasi funzione logica a quattro ingressi ciascuna. La scelta di
utilizzare LUT a soli quattro ingressi risiede nel fatto che la complessita
7
Capitolo 1. Tecnologia FPGA
Figura 1.4
di una LUT cresce esponenzialmente all’aumentare del numero di ingressi,
e risulta dunque poco gestibile. Raggruppare insieme alcune LUT in un
CLB e connetterle con una rete locale di interconnessioni consente infatti
una maggiore velocita, dovuta al fatto che questo tipo di interconnessione
e piu veloce di quella generale tra blocchi logici distinti. Lungo il perime-
tro dei blocchi logici vi sono infine i pin di ingresso e uscita. I blocchi di
ingresso/uscita si occupano della gestione dei segnali da e verso l’esterno
dell’FPGA. Le linee di interconnessione hanno invece il compito di mettere
in comunicazione le diverse risorse del dispositivo. Si possono distinguere
due tipi di interconnessione: le linee fisse e le matrici di scambio, dette an-
che switch matrix. Le matrici di scambio (switch matrix) sono costituite
da pass-transistor programmabili finalizzati all’instradamento dei segnali
all’interno dell’organizzazione matriciale che costituisce l’FPGA.
8
Capitolo 1. Tecnologia FPGA
Figura 1.5
1.3 ASIC vs FPGA: vantaggi e svantaggi
ASIC sta per“Application Specific Integreted Circuit”ossia circuiti in-
tegrati specifici per un’applicazione di calcolo ben precisa (specific purpo-
se). Un circuito elettronico digitale puo essere progettato in varie maniere,
utilizzando un linguaggio di descrizione dell’hardware(VHDL,Verilog,SystemC)
o tramite programma di Schematic entry con cui il progettista unisce di-
rettamente tra loro i componenti tramite esempio CAD. Dopo questa fase
di progettazione c’e l’implementazione fisica. Ossia il circuito, in fonderia,
deve essere implementato su chip di silicio. L’implementazione fatta in una
Wafer Faber da un produttore di semiconduttori viene detta Standard Cell
o ASIC. Perche Standard Cell? Poiche quando il designer deve effettuare
la Sintesi logica del circuito progettato usa la libreria di componenti stan-
dard che contiene la descrizione di tutte le porte logiche (AND,OR) che
il designer sul silicio puo utilizzare. Il termine ASIC si riferisce al campo
di applicazione del prodotto. Ci sono aziende che si occupano solo della
progettazione dei circuiti digitali (aziende fabless), quelle che si occupano
dell’implementaione fisica(TSMC,UMC) e quelle che si occupano di am-
bo gli aspetti(Intel,Texas Instruments,STMicroelectronics). Le tecnologie
Standard Cell permettono di implementare un ASIC con un costo per chip
bassissimo sull’ordine di grandezza del dollaro. Pero hanno anche una serie
9
Capitolo 1. Tecnologia FPGA
di svataggi motivo per cui si opta verso le tecnologie FPGA. Gli svantaggi
sono:
• ciclo di progettazione-produzione abbastanza lungo
• se si trova un bug dopo aver prodotto un chip non e
possibile correggerlo
• ci sono costi iniziali che possono raggiungere un milione
di dollari
Al contrario nelle tecnologia FPGA:
• ciclo di progettazione molto veloce
• usano l’approccio riprogrammabile e quindi permettono
la correzione di eventuali bug
• costo iniziale quasi nullo
• occupano piu area rispetto agli ASIC:
• dissipano piu potenza (circa 10 volte tanto) quindi non
possono essere usati in dispositivi mobili alimentati a bat-
teria
• frequenza di funzionamento piu basse circa 10 volte: esem-
pio 50 Mhz contro 500 Mhz
Quindi ricapitolando la differenza fra le due tecnologie e la seguente. Negli
ASIC i costi iniziali sono molto elevati e i tempi di sviluppo molto lunghi.
Tuttavia ogni chip avra costi di produzione e consumi molto bassi. Al
contrario negli FPGA i costi iniziali sono pressocche nulli e i tempi di
progettazione ridotti ma ogni singolo dispositivo puo costare centinaia di
dollari e dissipare molta poteza.
10
Capitolo 1. Tecnologia FPGA
1.4 Applicazioni FPGA
Gli sviluppi tecnologici e la crescente capacita di integrazione, hanno
portato al continuo incremento del numero di porte logiche integrabili su
un unico chip, tanto che gli ultimi modelli includono al loro interno ul-
teriori risorse. Banchi di memoria RAM per la memorizzazione dei dati,
interfacce di I/O ad elevate prestazioni (high speed I/O interfaces) per il
trasferimento seriale di dati ad alta velocita (dellordine dei Gbps), blocchi
DSP (Digital Signal Processing) che contengono moltiplicatori, sommatori
e accumulatori, usati per l’elaborazione digitale dei segnali, blocchi DCM
(Digital Clock Managers) dedicati al segnale di clock, che si occupano di
trasferire il segnale all’interno del dispositivo e di ritardare o moltiplicare
la sua frequenza, microprocessore integrato, utilizzato in applicazioni em-
bedded. Tali caratteristiche hanno notevolmente ampliato il mercato di
questi dispositivi. Vediamone di seguito le principali applicazioni:
• comunicazioni: wireless, telefonia, reti cablate e modem DSL.
• server e archiviazione: data center, memorie di massa, reti di
archiviazione, stampanti e fotocopiatrici.
• industria dell’automobile: sistemi multimediali, di navigazione
gps e per il riconoscimento vocale.
• elettronica di consumo: display, lettori mp3 e fotocamere digi-
tali.
• apparati militari e aerospaziali: veicoli, armi, satelliti, radar e
sonar.
• elaborazione audio e video: compressione, conversione, inter-
facciamento.
11
Capitolo 1. Tecnologia FPGA
• industriale: automazione, attrezzature di test, controllo e ispezio-
ne.
• medicale: sistemi video, scanner e ultrasuoni.
• sicurezza: protezione contro la clonazione, il reverse engineering .
12
Capitolo 2
Tecnologia FPGA-DSP
Oriented
L’elaborazione numerica dei segnali, digital signal processing (DSP)
e una tecnica di elaborazione digitale dei segnali che si basa sull’uso di
processori dedicati, con un elevato grado di specializzazione. L’implemen-
tazione delle attivita di elaborazione del segnale digitale (DSP) in appli-
cazioni di telecomunicazioni in genere richiede chip con elevate capacita
di calcolo. Allo stesso tempo le applicazioni di telecomunicazioni pongono
vincoli stringenti su costi e consumi. Le attivita di DSP nei prodotti di
telecomunicazioni storicamente sono state effettuate con processori DSP o
circuiti integrati per applicazioni specifiche ”specific purpose”. I disposi-
tivi ASIC raggiungono elevati livellli di prestazioni e efficienza energetica,
ma richiedono enormi sforzi di progettazione. Al contrario i dispositivi
DSP tendono a facilitare il processo di sviluppo, e a fornire prestazioni
adeguate ed efficienza ragionevole per molte applicazioni. Gli array field-
programmable gate (FPGA) raramente sono stati utilizzati per implemen-
tare le attivita di DSP. Fino a poco tempo fa, la tecnologia FPGA non era
13
Capitolo 2. Tecnologia FPGA-DSP Oriented
in grado di gestire algoritmi DSP esigenti ed erano costosi. Tutto questo
e cambiato con l’introduzione di nuovi prodotti FPGA-DSP Oriented da
parte di societa quali Altera Corp. e Xilinx Inc., entrambe con sede a San
Jose, in California. La Famiglia Stratix di Altera e la famiglia Virtex-II di
Xilinx , entrambi, offrono significativi miglioramenti architetturali DSP-
oriented. Includendo alcuni elementi di elaborazione cablate, i dispositivi
FPGA sono in grado di migliorare l’efficienza energetica e le prestazioni
di costo, offrendo prestazioni eccezionali. Inoltre, entrambe le aziende of-
frono sofisticati tools di aiuto allo sviluppo DSP-oriented, come librerie
per le funzioni DSP comuni e interfacce per strumenti DSP di alto livello,
come Simulink. I requisiti computazionali di alcune applicazioni di teleco-
municazione odierne spesso superano le prestazioni offerte anche dai piu
veloci processori DSP. Questo rende la nuova generazione di DSP-FPGA
Oriented una soluzione potenzialmente interessante per alcune applicazio-
ni. Questo sara l’argomento del capitolo seguente. Parlero di questi pro-
gressi, delle tendenze attuali per l’implementazione di applicazioni DSP, e
dei vantaggi nell’ utilizzare FPGA per DSP.
Benchmark Una sfida fondamentale per i progettisti di sistema, pero,
e capire dove e opportuno utilizzare questi nuovi dispositivi. Purtroppo,
i progettisti sono stati ostacolati in questa attivita per la mancanza di
un metodo affidabile per valutare le prestazioni di dispositivi DSP-FPGA
Oriented e per confrontare le loro prestazioni con quelle dei processori DSP.
Chiaramente, i benchmark DSP-oriented consentono agli ingegneri di fare
questi confronti. Un buon benchmarking usato per valutare le prestazioni
hardware dei dispositivi richiede un’attenta selezione dei parametri di rife-
rimento e di una metodologia ben sviluppata. Il benchmarking di Berkeley
Design Technology Inc. di processori per applicazioni DSP utilizza una se-
14
Capitolo 2. Tecnologia FPGA-DSP Oriented
rie di algoritmi DSP comuni, come i filtri FIR, ottimizzati in linguaggio
assembly in ogni processore. Quando BDTI comincio questa analisi com-
parativa dei dispositivi, fu subito chiaro che questo approccio non sarebbe
andato bene. Un problema fondamentale e che i piccoli algoritmi utiliz-
zati per i processori non sono adatti per la valutazione delle capacita di
elaborazione degli FPGA. I primi risultati suggeriscono che la nuova gene-
razione di FPGA puo essere una soluzione molto interessante per alcune
applicazioni DSP-oriented. Anche se i risultati dei benchmark sono impor-
tanti, ci sono molte considerazioni soft che sono di pari importanza nella
scelta tra un FPGA e un processore DSP. Uno di questi e la disponibilita
di competenze del personale in questione. Ad esempio, la maggior parte
degli sviluppatori di applicazioni DSP non hanno familiarita con il flus-
so di progettazione FPGA. L’implementazione anche di un semplice filtro
FIR su FPGA richiede un processo totalmente diverso di progettazione
(e mentalita) che implementare la stessa funzione su un processore DSP.
Altera e Xilinx offrono tools e librerie per semplificare il processo. Inoltre,
il tempo necessario per sviluppare un’implementazione ottimizzata anche
di una funzione DSP relativamente modesto per un FPGA puo essere di
ordini di grandezza superiori a quella di un DSP.
2.1 Gli FPGA nelle applicazioni DSP
Gli FPGA-DSP Oriented sono dispositivi FPGA dotati di blocchi spe-
cializzati per svolgere funzioni di Digital Signal Processing. I blocchi DSP
integrati nel tessuto logico degli FPGA consistono in moltiplicatori e ac-
cumulatori. Questi servono per realizzare tutte le principali funzioni DSP
come i filtri Fir, i filtri Iir, le Fft, le Dct ecc. La diffusione degli FPGA nelle
applicazioni DSP ha una notevole rilevanza economica. Infatti la Forward
15
Capitolo 2. Tecnologia FPGA-DSP Oriented
Concept, societa di ricerche di mercato ha dichiarato che le due piu grandi
aziende nel settore Xilinx e Altera hanno fatturato oltre 200 milioni di dol-
lari nelle applicazioni DSP. Fino ad alcuni anni fa gli FPGA erano privi di
blocchi specializzati nel DSP. Oggi, al contrario, tutti i nuovi FPGA sono
dotati di blocchi DSP. Questo cambiamento di prospettiva si puo spiegare
ricordando che negli ultimi anni se e vero che da un lato e cresciuta la
necessita di potenza di calcolo DSP perche e aumentata la larghezza di
banda disponibile nelle applicazioni di audio e video digitale, dall’altro i
tradizionali processori DSP hanno raggiunto il limite delle possibilita di
sviluppo basate sulla Prima Legge di Moore, di cui ne abbiamo spiegato
il contenuto nel capitolo precedente. Come i microprocessori anche i DSP
sono costretti a fare i conti con l’architettura di Von Neumann. Infatti
gli FPGA-DSP Oriented si basano su architettura parallela in grado di
rispondere a questa maggiore domanda di potenza di calcolo.
2.1.1 Prestazioni DSP su moduli FPGA
L’elaborazione del segnale digitale e un’attivita molto complessa. An-
che la misura delle prestazioni del DSP e altrettanto complicato. La velo-
cita di esecuzione degli algoritmi di segnali digitali dipende dalla velocita
del processore, dalll’FPGA, dall’efficienza delle componenti DSP, dalla na-
tura dell’applicazione, e dal grado di elaborazione simultanea contro l’ele-
borazione seriale. Altri fattori includono la velocita e il tipo di dispositivi
di memorizzazione di dati sia all’interno dell’ FPGA che sul modulo PMC
(Ad esempio blocco di RAM, DDR SDRAM, doppia porta SRAM), dal-
la quantita di memoria disponibile, e dal metodo di trasferimento di dati
a/dal FPGA e la CPU.
16
Capitolo 2. Tecnologia FPGA-DSP Oriented
L’elaborazione del segnale e seriale o parallela? Le applicazioni
DSP possono essere realizzate in diversi modi. Un’architettura seriale e
dove un singolo ingresso Signal-Source viene elaborato, e un unico flus-
so, senza l’influenza di un ingresso adiacente simultaneo Signal-Source.
Moduli DSP progettati discretamente per le architetture seriali sono sem-
plici nel design, tuttavia, quando piu flussi di segnali simultanei e iterativi
in sequenza stanno richiedendo calcoli, diventa necessario una separata
e distinta logica di elaborazione del Signal-Source e del DSP. Questo ti-
po di applicazione e molto costosa in progettazione, realizzazione e test.
Con l’implementazione dell’FPGA, tuttavia, e possibile avere piu reti che
eseguono contemporaneamente le componenti DSP e la logica fornisce i
vantaggi di un’architettura di sistema in parallelo. Molte delle funzioni
utilizzate nelle elaborazioni DSP si basano infatti sulla ripetizione di ope-
razioni identiche e quindi si prestano all’uso di architetture parallele. Un
filtro Fir a 256 taps, ad esempio, richiede 256 operazioni consecutive di
moltiplicazione. In un processore Dsp tradizionale, normalmente cio e ot-
tenuto utilizzando un unico blocco Mac per 256 iterazioni consecutive. In
un FPGA, al contrario, e possibile utilizzare 256 moltiplicatori distinti e
quindi ottenere il risultato in un solo colpo di clock. Inoltre la possibilita
di configurare i singoli blocchi Dsp e di usare il tessuto logico di contorno
per collegarli tra loro a piacimento rende possibile, nel caso degli FPGA,
creare una struttura hardware perfettamente aderente all’algoritmo. Al
contrario, le risorse hardware dei tradizionali processori DSP sono prede-
terminate e quindi non offrono lo stesso livello di flessibilita. Un dato DSP
avra ad esempio determinate prestazioni a livello di bus, un numero fisso
di blocchi MAC, una larghezza dei dati predeterminata e una dotazione
fissa di blocchi di accelerazione.
17
Capitolo 2. Tecnologia FPGA-DSP Oriented
2.2 Vantaggi e svantaggi nell’utilizzo combinato
di DSP e FPGA
Innanzitutto, le FPGA hanno l’enorme vantaggio di essere program-
mabili dall’utente, il che significa che il designer puo piazzare blocchi di
elaborazione e registri di memoria dove piu comodo, senza restrizioni strut-
turali, ovvero migliore compromesso fra prestazioni e area occupata rispet-
to ad un processore Dsp a configurazione fissa. In secondo luogo, molte
delle funzioni base di un Dsp si basano sulla ripetizione di operazioni iden-
tiche. Ad esempio, come visto prima, un filtro FIR a 256 taps richiede
256 operazioni consecutive di moltiplicazione. In un processore DSP cio
sarebbe ottenuto utilizzando un unico blocco moltiplicatore-accumulatore
(MAC) 256 volte, mentre in una FPGA e possibile utilizzare 256 moltipli-
catori e avere lo stesso risultato in un unico ciclo di clock. Infatti le Fpga
hanno il vantaggio di essere strutture parallele, per cui la disponibilita di
un numero sempre piu elevato di porte logiche e legata linearmente al-
l’aumento delle prestazioni (piu porte logiche=piu moltiplicatori), mentre
nei processori DSP l’aumento di porte logiche e usato per aumentare la
complessita delle istruzioni oppure per aumentare la quantita di memoria
presente sul chip, ma cio non significa aumento lineare delle prestazioni.
Un dispositivo FPGA-DSP-oriented ha una complessita nel processo di
implementazione dell’applicazione DSP maggiore rispetto ad un processo-
re, e costa e consuma di piu. Una recente ricerca effettuata dalla societa di
consulenze americana BDTI ha messo a confronto tre dispositivi: l’Fpga
Xilinx Virtex-4 SX25, l’Fpga Altera Stratix-II 2S15 e il processore DSP
Texas Instruments TMS320C6410 a 400 MHz. Sottoposti allo stesso test,
hanno prodotto risultati che in termini di rapporto costo/prestazione dan-
18
Capitolo 2. Tecnologia FPGA-DSP Oriented
no per vincenti le Fpga, poiche e si vero che un Fpga costa di piu e consuma
di piu, ma ha prestazioni da 10 a 100 volte maggiori rispetto al semplice
processore. Per risolvere invece il problema dei tempi di implementazione,
i principali produttori di Fpga hanno messo a punto strumenti di sinte-
si che permettono al progettista di descrivere la funzione Dsp desiderate
utilizzando un alto livello di astrazione, come ad esempio uno schema a
blocchi in Simulink. I vantaggi di un’architettura DSP-FPGA Oriented si
manifestano in una moltitudine di settori applicativi, dal wireless all’analisi
dei segnali video/audio e ai sistemi di controllo.
2.3 Tendenze, Opzioni, considerazioni e tools per
l’utilizzo di piattaforme FPGA riconfigurabi-
li come alternativa all’ Hardware DSP dedi-
cato
Il tempo di sviluppo, i costi, e la facilita con cui le soluzioni DSP pos-
sono essere implementate e notevolmente migliorata dopo l’introduzione
di componenti FPGA ad alte prestazioni da parte di aziende come Xilinx
e Altera. I dispositivi moderni FPGA offrono ora un enorme supporto per
le applicazioni DSP. Ora quello che faro e parlare di questi progressi, delle
tendenze attuali per l’implementazione di applicazioni DSP, e dei vantaggi
di utilizzare FPGA per DSP usando come supporto il ” White Paper ”
della Acromag Inc. Sebbene una varieta di dispositivi FPGA ora offrono
supporto DSP, io mi limitero a parlare di Xilinx Virtex-4 FPGA e Virtex-5
per semplicita. Sappiamo che per una corretta elaborazione delle informa-
zioni del segnale, vi sono il controllo, la sincronizzazione, la signal data
capture, la gestione dei dati del segnale, e lo scambio o la trasmissione di
19
Capitolo 2. Tecnologia FPGA-DSP Oriented
Figura 2.1
dati del segnale ,operazioni che rendono il compito in generale non sem-
plice. Le prime soluzioni erano costose da progettare, lente da sviluppare
e difficili da ridistribuire poiche erano fissate in hardware. Vediamo ora le
attivita di elaborazione del segnale digitale visto come flusso semplificato
di eventi presenti in molte applicazioni comuni.
L’attivita di acquisizione del segnale grezzo e la generazione dei segnali
e complicata dalla logica di controllo necessaria per garantire la corretta
sincronizzazione e sequenziamento con i dispositivi esterni. L’elaborazione
interna dei dati del segnale, la pacchettizzazione/de-pacchettizzazione, e
la gestione di storage FIFO sono compiti interni al modulo FPGA. Queste
attivita richiedono un’attenzione particolare ai tempi e al sequenziamento.
Lo scambio di informazioni con la CPU e spesso implementata utilizzando
tecniche quali, scambi di memoria a doppia porta con la sincronizzazione
del semaforo, interrupt, e tecniche di time-based o polling . L’architetto
del sistema software prende queste decisioni basate su vincoli di prestazioni
e vincoli di risorse.
20
Capitolo 2. Tecnologia FPGA-DSP Oriented
2.3.1 Passaggio da Hardware dedicato a piattaforma FP-
GA riconfigurabile
Per anni, i moduli DSP sono stati progettati e sviluppati per applica-
zioni“specific purpose”e basate su implementazioni discrete con interfacce
hardware fisse sia al mondo esterno mondo campionato che al mondo in-
terno mondo di elaborazione algoritmica. Con l’avvento della tecnologia
FPGA, e piu in particolare grazie alla capacita degli ingegneri DSP di
programmare i dispositivi FPGA, un graduale aumento della flessibilita
complessiva della soluzione DSP divenne realta. Oggi, con i piu recenti
dispositivi FPGA Xilinx Virtex-4 e Virtex-5 sul popolare modulo PMC,
i progettisti godono di grande flessibilita per la gestione sia del mondo
campionato che del mondo di elaborazione algoritmica”. Caratteristiche
significative di questa evoluzione dall’ hardware discreto DSP alle soluzioni
programmabili FPGA-DSP include i seguenti passaggi:
• Da metodologie di acquisizione e sincronizzazione del se-
gnale definite inflessibili alle interfacce definibili libe-
ramente e ridefinibili come necessario
• da una metodologia di scambio dati definita ad una ride-
finibile
• dall’hardware personalozzato a quello off the shelf
• dall’elaborazione logica seriale a quella parallela
• Dal prezzo piu alto per ogni funzione al piu basso
• da metodologie poco flessibili ad un aumento della fles-
sibilia
21
Capitolo 2. Tecnologia FPGA-DSP Oriented
• Dal richiedere applicazioni completamente definite alle
applicazioni modificabili a adeguate ai requisiti di cambia-
mento
• dal debugging fatto a livello hardware all’uso di soft-
ware per il dubugging
• da un’interfaccia IO fissa ad una ridefinibile e sostituibile
• Da lunghi cicli di sviluppo a tempi molto piu brevi
• dallo sviluppo ad alto costo allo sviluppo a basso costo
2.3.2 Supporto DSP sui dispositivi FPGA
Acromag ha scelto Xilinx FPGA per la loro linea di moduli PMC per
fornire supporto DSP per le applicazioni di elaborazione del segnale. Xili-
nx, nella sua evoluzione dei prodotti dal Virtex-4 al Virtex-5, ha raggiunto
alcune importanti innovazioni tecnologiche. Per supportare il processo di
elaborazione algoritmica del segnale sono disponibili un livello sofisticato
di elementi di alta capacita note come slices XtremeDSP DSP48 su FPGA
Virtex-4 e slices XtremeDSP DSP48E su Virtex-5 FPGA. Queste slices
DSP permettono altissime frequenze di clock e throughput molto elevato
con moltiplicatori, moltiplicatore-accumulatori, moltiplicatore addiziona-
tori/sottrattori, tre ingressi adder a 48-bit, multiplexer, contatori. La Slice
DSP48E dell’ FPGA Virtex-5 migliora rispetto alla slice DSP48 con una
maggiore gamma dinamica. Le figure seguenti mostrano blocchi sempli-
ficati di slices XtremeDSP DSP48 e DSP48E come si trovano sul Xilinx
Virtex-4 e Virtex-5 FPGA, rispettivamente. Questi dispositivi FPGA sono
distribuiti sui moduli Acromag PMC-LX / SX e PMC-VLX VSX .
22
Capitolo 2. Tecnologia FPGA-DSP Oriented
Figura 2.2
Figura 2.3
23
Capitolo 2. Tecnologia FPGA-DSP Oriented
2.3.3 Prestazioni DSP su moduli FPGA
L’elaborazione del segnale digitale e un’attivita molto complessa ed
esigente. Tuttavia anche la misura delle prestazioni dei DSP e altrettanto
complicato. La velocita di esecuzione degli algoritmi di segnali digitali di-
pende dalla velocita del processore, dall’FPGA, dall’efficienza delle slices
DSP, dalla natura dell’applicazione, e dal grado di elaborazione simultanea
contro quella seriale. Altri fattori includono la velocita e il tipo di dispo-
sitivi di memorizzazione di dati sia all’interno della FPGA che sul modulo
PMC (Ad esempio blocco di RAM, DDR SDRAM, doppia porta SRAM),
dalla quantita di memoria disponibile, e dal metodo di trasferimento di da-
ti a/da FPGA e la CPU. Rispondendo alle domande di seguito, e possibile
definire il contesto di esecuzione per l’applicazione.
• 1. Quanto velocemente possibile devono eseguire gli al-
goritmi di segnali digitali?
• 2. Quanta capacita di calcolo DSP e disponibile?
• 3. L ’elaborazione del segnale e seriale o parallela?
• 4. Quanta memoria e disponibile ?
• 5. Quali meccanismi di comunicazione sono disponibili e a
quale velocita sono trasferiti i dati?
• 6. Quali sono i compromessi costo/prestazioni?
• 7. Qual e la disponibilita della soluzione?
Una discussione su queste domande verra fatta di seguito .
24
Capitolo 2. Tecnologia FPGA-DSP Oriented
2.3.4 Quanto velocemente possibile devono eseguire gli al-
goritmi di segnali digitali?
A titolo di esempio, la serie PMC-LX/SX di Acromag presenta la Xi-
linx Virtex-4 FPGA che esegue a 500MHz ed ha un tasso superiore alle
256 miliardi di operazioni di moltiplicazione-addizione (MAC) al secondo.
La Serie di Acromag PMC-VLX/VSX con Virtex-5 FPGA esegue fino a
550MHz ed ha un tasso (rate) oltre le 350 miliardi di MAC al secondo. Per
applicazioni estreme, i moduli PMC con Virtex-5 FPGA presentano piu
di un aumento del 36 percento in termini di prestazioni di calcolo rispetto
ai moduli con il Virtex-4 FPGA.
2.3.5 L ’elaborazione del segnale e seriale o parallela?
Le applicazioni DSP possono essere realizzate in diversi modi. Un’ar-
chitettura seriale e dove un singolo Signal-Source ingresso viene elabora-
to, e un unico flusso, senza l’influenza dell’ingresso simultaneo adiacente
Signal-Source. Moduli DSP discretamente progettati per le architetture
in serie sono semplici nel design, tuttavia, quando sono necessari piu flussi
di segnali simultanei e calcoli in sequenza iterativi, diventa necessario una
separata e distinta logica di elaborazione Signal-Source e DSP. Questo tipo
di applicazione e molto costosa in progettazione, realizzazione e test. Con
l’implementazione FPGA, tuttavia, e possibile avere piu reti che eseguono
contemporaneamente le slices DSP e la logica seguente fornisce i vantaggi
di un’architettura di sistema in parallelo. La figura illustra le differenze
nell’ utilizzare DSP basato su FPGA o un processore standard DSP con
alti carichi computazionali. Xilinx FPGA offre Managers Digital Clock
(DCMS) per assistere nell’orchestrazione delle reti di esecuzione parallela
delle slices DSP e la logica. Ciascun DCM puo essere configurato per ge-
25
Capitolo 2. Tecnologia FPGA-DSP Oriented
Figura 2.4
nerare sincronizzazione dell’orologio ad una frequenza diversa per ciascuna
rete a cui e assegnato. Le frequenze sorgenti di clock disponibili sono de-
rivati da cristalli sul modulo PMC o da sorgenti di clock esterne iniettate
attraverso gli ingressi FPGA. Virtex-4 FPGA e in grado di fornire 8 DCMs
reciprocamente distinte; mentre il piu recente Virtex-5 FPGA fornisce 12
DCM.
2.3.6 Quanta capacita di calcolo DSP e disponibile ?
Senza contare la componente logica discreta dell’ FPGA utilizzato, la
seguente tabella riassume il numero di slices DSP disponibili nella famiglia
PMC-FPGA della Acromag.
26
Capitolo 2. Tecnologia FPGA-DSP Oriented
Figura 2.5
Figura 2.6
27
Capitolo 2. Tecnologia FPGA-DSP Oriented
2.3.7 Quali meccanismi di comunicazione sono disponibili
e a quale velocita sono trasferiti i dati?
L’Elaborazione del segnale digitale e un’attivita di calcolo estremamen-
te complicata che richiede alta velocita di elaborazione e la possibilita di
spostare i dati in modo efficiente e rapido. Tipicamente, i moduli PMC
FPGA supportano interrupt , i trasferimenti DMA, e protocolli seriali che
utilizzano il FPGA I/O. I moduli Virtex-4 FPGA della Acromag supporta-
no trasferimenti DMA che rispettano la specifica PCI R2.0 di trasferire piu
di 60MB/sec (parola a 32 o 64 bit trasferimenti fino a 66 MHz). I moduli
Virtex-5 FPGA della Acromag dispongono di PCI-X r3.0- trasferimenti
DMA compatibili per fornire piu di 600 MB/sec di throughput (parola a
32 bit o 64 fino a 100MHz). Trasferimenti LVDS seriali sono verificati per
oltre 150 MHz per punto di I/O.
2.3.8 Tradeoff costo/prestazioni
Rispetto allo sviluppo del modulo hardware DSP discreto tradizionale,
l’uso di un modulo FPGA DSP based e ora spesso la scelta del proget-
tista per la riduzione dei tempi di sviluppo, supporto alla progettazio-
ne/sviluppo/debug, e la disponibilita della logica predefinita (IP core). La
natura riconfigurabile di moduli basati su FPGA aggiunge flessibilita, ag-
giornabilita, e anche l’uso di nuovi moduli in altre applicazioni con una
semplice riprogrammazione. Quando progettazione hardware diventa una
riconfigurazione software, e solo una questione di sviluppare il modulo
iniziale FPGA per aiutare il segnale esterno ad interfacciarsi con le carat-
teristiche di comunicazione e prestazioni. Nell’ attuale configurazione del
software, possono essere imposti dei limiti sulla capacita del modulo piat-
taforma FPGA per permettere ai segnali esterni di interfacciarsi Questo e
28
Capitolo 2. Tecnologia FPGA-DSP Oriented
Figura 2.7
dove i moduli PMC FPGA possono rendere lo sviluppo delle applicazioni
molto redditizio. Acromag offre una varieta di moduli PMC FPGA a par-
tire da poco piu di 3000 dollari, ciascuno con diversi livelli di prestazione
per trattamento DSP.
2.3.9 Quanta memoria e disponibile ?
Tre risorse di memoria sono disponibili su ogni modulo Acromag FP-
GA PMC: Block RAM provenienti dal dispositivo FPGA, SDRAM DDR
reperito nel modulo PMC, SRAM a due porte di origine sul modulo PMC.
Ciascuno di queste aree di memoria offrono capacita e velocita diverse.
Essi possono essere assegnati dall’ingegnere progettista FPGA-DSP per
soddisfare al meglio la domanda.
2.3.10 Qual e la disponibilita della soluzione?
I produttori di FPGA continuano a spingere sulle prestazioni delle nuo-
ve generazioni di dispositivi. Tuttavia, gli sviluppatori del sistema devono
29
Capitolo 2. Tecnologia FPGA-DSP Oriented
Figura 2.8
chiedersi se vale la pena di aspettare per la prossima generazione o l’attuale
generazione puo adeguatamente soddisfare la loro domanda. L’intervallo di
tempo tra l’annuncio di un nuovo dispositivo FPGA e il rilascio di moduli
di piattaforma che implementano il nuovo chipset puo essere significativo.
In molti casi, si puo iniziare lo sviluppo sull’attuale generazione di moduli
per la ”proof of concept ”e poi in seguito aggiornare il tutto quando i nuovi
moduli sono disponibili con minimi sforzi supplementari.
30
Capitolo 3
Architettura e Selezione dei
Componenti Hardware per
Applicazioni SDR
Nelle comunicazioni wireless e in particolare nell’ambito militare l’SDR
che sta per software-defined radio e l’obiettivo da raggiungere. Per Soft-
ware Defined Radio, SDR, si intende una tecnologia che permette di co-
struire ricevitori radio quasi completamente software e multistandard. In-
somma una rivoluzione rispetto ai ricevitori hardware visti finora. Multi-
standard vuol dire che, poiche il ricevitore SDR e riprogrammabile attra-
verso software funziona con tutti gli standard. Se prima avevo un ricevi-
tore per ogni standard, ora, con SDR si ha un ricevitore riprogrammabile
per gestire uno standard diverso. Oggigiorno i ricevitori dei vari standard
(UMTS, GSM, Wimax, satellitare...) sono costruiti in hardware e funzio-
nano in modo simile. Hanno tutti un’antenna che capta il segnale modulato
alla frequenza dello standard usato, un demodulatore che riporta il segna-
le dalla banda traslata, centrata alla frequenza di modulazione, in banda
31
Capitolo 3. Architettura e Selezione dei Componenti Hardware per ApplicazioniSDR
base, centrata alla frequenza nulla, e un blocco di conversione analogico-
digitale che converte il segnale continuo in segnale numerico-digitale. I
ricevitori odierni prima di eseguire l’operazione di conversione del segnale
da analogico a digitale effettuano la demodulazione dello stesso portandolo
dalla banda traslata centrata attorno alla frequenza di modulazione alla
banda base. Nell’SDR questa operazione si elimina perche la conversione
si effettua direttamente in banda traslata. Cio al momento risulta difficile
da implementare perche, se ad esempio consideriamo lo standard wireless
che funziona ad una frequenza portante di 2,4 GHz, per il teorema del
campionamento di Nyquist-Shannon, affinche il segnale possa essere rico-
struito e necessario usare una frequenza di campionamento fc pari almeno
al doppio della frequenza massima dello spettro, insomma il doppio della
banda ossia fc=2Bw, quindi in questo caso abbiamo fc=5 GHz ossia circa 5
miliardi di campioni al secondo. Al giorno d’oggi e impossibile riuscire ad
ottenere questa quantita di campioni. Attualmente esiste una versione che
prevede dopo la ricezione da parte dell’antenna, una demodulazione del se-
gnale ad una frequenza intermedia e dopo la conversione analogica digitale.
Il concetto base dell’ SDR e posizionare la separazione digitale-analogica
piu vicina possibile all’antenna. Cio si ottiene mediante l’implementazione
di molte funzioni tradizionalmente svolte da circuiti analogici con circui-
ti digitali riconfigurabili. Implementato con successo, questo puo fornire
un prodotto radio a prova di obsolescenza che puo supportare formati di
modulazione esistenti e futuri. In pratica, questi obiettivi possono essere
difficili da realizzare, in particolare per applicazioni a batteria piu piccola.
I requisiti relativi al costo, al consumo di energia, alle dimensioni, e le pre-
occupazioni ambientali di solito sono i motivi centrali che dettano poi i veri
compromessi progettuali, anche se questi requisiti variano a seconda del-
32
Capitolo 3. Architettura e Selezione dei Componenti Hardware per ApplicazioniSDR
l’applicazione. In questo capitolo esploreremo un’architettura ottimizzata
per una tipica applicazione SDR.[2]
3.1 Requisiti generici
• Basso consumo energetico, soprattutto quando si e in modalita stand-
by.
• banda riconfigurabile, con risorse di elaborazione sufficienti per rea-
lizzare molti tipi di forme d’onda, come ad esempio(FSK), (QAM),
(CDMA), e (OFDM).
• antenne multiple.
• Fattore di forma.
• Display Video delle informazioni.
• interfacce esterne comuni ad altre apparecchiature, come Ethernet e
USB.
• Ampia gamma di temperatura di funzionamento senza raffreddamen-
to attivo.
• banda di frequenza di funzionamento larga.
• supporto banda di frequenza multipla.
• costo moderato.
• alto rendimento di produzione.
Un parametro di progettazione critico, che ha un impatto importante nel
soddisfare qualsiasi insieme di requisiti, e la posizione della separazione
33
Capitolo 3. Architettura e Selezione dei Componenti Hardware per ApplicazioniSDR
digitale-analogico nella catena radio, sia per ricevere che per trasmettere.
La metodologia SDR impone che tale conversione dovrebbe avvenire il piu
vicino possibile all’antenna. Recentemente, si sono resi disponibili con-
vertitori analogico-digitali (ADCs) subcampionati intorno alla frequenza
intermedia (IF) che operano in piu di 100 MSPS a 12+ bit con larghezze
di banda di ingresso analogico fino a 1 GHz. L’attuale offerta da parte
di produttori leader richiede un minimo di 200 mW di consumo di poten-
za per canale. Questo rende pratiche da usare le frequenze IF superiori
a 500 MHz. Tutto cio ancora non permettera il campionamento diretto
di un segnale a 2 GHz, ma consentira una singola conversione radio per
campionare segnali multipli su un’ampia larghezza di banda. Aumentando
la velocita di campionamento aumenta anche il rapporto segnale-rumore
(SNR). Interfacciarsi a questi livelli di frequenze IF e un po piu impegna-
tivo sul lato della trasmissione. La maggior parte dei circuiti in bandabase
hanno difficolta a produrre campioni di trasmissione a prezzi molto piu alti
rispetto a 200 MHz, che limita la trasmissione IF a circa il 40 per cento del
tasso, pari a circa 80 MHz. Ma alcuni produttori di (DAC) Convertitore
digitale-analogico hanno affrontato questo problema incorporando l’inter-
polazione nelle loro parti, e aggiungendo della circuiteria per consentire
al DAC di selezionare l’uscita nelle zone di Nyquist Superiori (eliminando
il requisito di 40 per cento). Un’altra opzione e quella di Integrare inter-
polazione, mixer digitale, e DAC. Questo puo permettere di trasmettere
ad alte Frequenze IF, dell’ordine di 400 MHz. Tuttavia, questi approcci
possono essere costosi, sia in termini di consumo di energia che per i costi.
Se sono accettabili trasmissioni IF inferiori, allora puo esere implementata
una soluzione di alimentazione molto meno costosa e inferiore. Per l’elabo-
razione in banda base, vi e una pletora di possibili soluzioni e architetture.
34
Capitolo 3. Architettura e Selezione dei Componenti Hardware per ApplicazioniSDR
Per applicazioni SDR, uno dei requisiti principali e configurabilita e fles-
sibilita. Questo elimina la soluzione a piu basso consumo di energia e di
costo, che e una purpose-built ASIC in banda base, come quelle utilizzati
nei telefoni cellulari commerciali. La soluzione piu flessibile per l’elabo-
razione del segnale digitale (DSP) e quella di utilizzare sia un processore
DSP che FPGA. Questo approccio ha i seguenti vantaggi:
• Il processore DSP fornisce la piattaforma ideale per l’implementa-
zione di algoritmi molto complessi.
• Il dispositivo FPGA offre elevati tassi di elaborazione e bit-resolution
necessari per determinate funzioni, quali (FIR) filtri, (FFT), ricevi-
tore CDMA RAKE, decoder Turbo, e numerose altre funzioni.
• Puo agire come un efficace co-processore per i processori DSP, purche
adeguate connessioni a banda larga siano disponibili; questo approc-
cio consente agli algoritmi di essere divisi tra i dispositivi DSP e
FPGA in modo ottimale.
• Sono disponibili ambienti e strumenti di sviluppo ben noti.
• I DSP possono incorporare funzioni di protocollo e di elaborazione
dei pacchetti, sia con doppio processore, o utilizzando un’architettura
di processore singolo convergente.
• I DSP possono incorporare l’interfaccia video BT656 al display uten-
te. La scelta del produttore e della famiglia del prodotto avra un
grande impatto sul consumo di energia, costi, velocita di trasmissio-
ne dati radio e sistema di upgrading. Queste scelte, una volta fatte,
sono difficili da cambiare in seguito, senza un importante ciclo di
ingegneria di riprogettazione.
35
Capitolo 3. Architettura e Selezione dei Componenti Hardware per ApplicazioniSDR
Figura 3.1
La figura seguente mostra uno schema a blocchi generico di una tipica im-
plementazione radio SDR. Il resto di questo capitolo invece discute delle
componenti critiche che hanno un forte impatto sulle prestazioni radio e
funzionalita, e offre il confronto tra le offerte di prodotti diversi. I compo-
nenti chiave considerati sono l’ADC, il DAC, il DSP, e dispositivi FPGA.
Il costo non e parte di questo confronto .
3.2 Selezione componente ADC
La tecnica di ricezione delle frequenze IF sub-campionate e comune-
mente usata nei progetti di SDR. In teoria, la ricezione dlle IF e limitata
solo dalla banda analogica dell’ ADC. Nella pratica, una ricezione molto
alto della IF puo ridurre le prestazioni dell’ ADC, e anche imporre re-
36
Capitolo 3. Architettura e Selezione dei Componenti Hardware per ApplicazioniSDR
Figura 3.2
quisiti stretti sul jitter del clock ADC. Per queste ragioni, e importante
confrontare sia la larghezza di banda analogica dell’ADC nonche la massi-
ma ricezione del segnale nelle schede del produttore. Prestazioni dell’ADC
a un rialzo dei tassi rispetto a quelli caratterizzati nella scheda tecnica van-
no verificate con il produttore del dispositivo. Nelletabella di seguito sono
stati considerati solo ADC con capacita maggiori di 100 milioni di cam-
pioni al secondo (MSPS) e minori di 500 mW per canale. Una risoluzione
a 12-bit e generalmente sufficiente a soddisfare le esigenze della maggior
parte dei requisiti radio moderni, e da 12 a 14 bit di ADC sono stati consi-
derati. I semiconduttori ADC nazionali offrono elevate larghezze di banda
analogiche con basso consumo energetico ( 200 mW per canale). Per quasi
tutte le applicazioni DSP, 100 MSPS e una frequenza di campionamento
adeguato.
3.3 Selezione componente DAC
Le sanzioni di potenza e di costo rendono una trasmissione IF molto
elevata poco attraente, a meno che non vi sia un motivo valido per que-
sto approccio. Dal momento che un trasmissione IF a 400-MHz e ancora
troppo bassa per la maggior parte delle bande di frequenza, una fase di
37
Capitolo 3. Architettura e Selezione dei Componenti Hardware per ApplicazioniSDR
Figura 3.3
upconversion analogico sara richiesto in quasi tutti i casi. Per le applica-
zioni tipiche DSP dove la larghezza di banda del segnale e inferiore a 25
MHz, una sub di 100 MHz che trasmette frequenza IF accoppiata con un
solo stadio mixer a radiofrequenza e piu pratica. La tabella sopra riassume
i risultati del confronto tra i diversi DAC competitivi. Una risoluzione a
14 bit e in genere sufficiente per soddisfare i requisiti di prestazioni del-
le moderne modulazioni radio. Per una singola catena di trasmissione,
l’AD9744 e una buona scelta. Tuttavia, sulla base di requisiti comuni di
molti sistemi di comunicazione moderni per la diversita di trasmissione,
l’AD9755, che offre oltre 100 MHz trasmissione IF, puo essere una scelta
migliore. I filtri di interpolazione e funzioni NCO complessi possono essere
facilmente ed efficacemente attuate nel dispositivo FPGA.
3.4 Selezione componente DSP
Come menzionato sopra, la scelta del processore DSP e fondamentale
da fare la prima volta, poiche e difficile cambiarlo poi successivamente. Il
seguente elenco di requisiti e stato utilizzata per restringere il campo a due
famiglie di produttori .
38
Capitolo 3. Architettura e Selezione dei Componenti Hardware per ApplicazioniSDR
• Famiglia di prodotti affermata, ben accolta nel mercato, dovrebbe
essere ben sostenuta e aumentare la capacita in futuro.
• Buone opzioni per il sistema operativo: fornito dal produttore, Li-
nux, di terze parti.
• In grado di supportare le attivita di elaborazione dei pacchetti (Me-
dia Access Control (MAC) layer).
• In grado di supportare il livello superiore radio dei livelli di proto-
collo.
• Ambiente di sviluppo maturo.
• 500 MHz prestazioni di base.
• Architettura a bassa potenza (meno di 1 W).
• Supporto per Ethernet e / o ad alta velocita USB.
• DDR esterno (o SDRAM) interfaccia di memoria.
• Interfacce ad alta larghezza di banda adatto per interfacciarsi con
FPGA.
• In grado di gestire l’interfaccia di visualizzazione video.
Dopo la revisione di diversi produttori, due famiglie di prodotti DSP si
distinguono: Blackfin da Analog Devices e DaVinci di Texas Instruments.
Come mostrato nella tabella seguente, entrambe queste famiglie DSP sod-
disfano tutti i requisiti sopra discussi. Inoltre, ogni produttore ha molti
membri della famiglia, con diverse periferiche e caratteristiche. Entrambe
le famiglie hanno grande sostegno dai parte dei loro produttori, nonche da
parte degli sviluppatori IP software di terze parti. Entrambi hanno grande
39
Capitolo 3. Architettura e Selezione dei Componenti Hardware per ApplicazioniSDR
Figura 3.4
accettazione del mercato, e puntano a migliorare funzionalita e prestazioni
per gli anni a venire. Sia Blackfin che DaVinci hanno molti membri del-
la famiglia. Cio rende la selezione difficile, in quanto diverse applicazioni
possono enfatizzare diverse caratteristiche del processore. Per Blackfin,
il requisito di Ethernet MAC restringe il campo considerevolmente. La
soluzione migliore sembra essere BF527. Se USB 2.0 puo essere sostituito
per il MAC Ethernet, allora bisogna considerare il BF548, come parte che
ha una porta parallela supplementare, che e molto utile per la connessio-
ne a banda larga ad un FPGA. Anche Il BF548 impacchetta istruzioni di
elaborazione video migliorate. Per DaVinci, solo i membri della famiglia
con nucleo RISC integrato sono state considerate, come il 6441. Questo
e un grande vantaggio, in quanto consente al software di elaborazione dei
pacchetti di risiedere in un nucleo CPU separato. Al contrario, Analog De-
vices utilizza un’architettura convergente, tale che il suo nucleo Blackfin e
40
Capitolo 3. Architettura e Selezione dei Componenti Hardware per ApplicazioniSDR
progettato per supportare contemporaneamente elaborazione dei pacchet-
ti e applicazioni DSP. Per riassumere, il Blackfin ha un grande vantaggio
nel consumo di potenza, dimensioni, e possibilmente costo. Il DaVinci,
con il suo DSP e nucleo RISC , ha piu potenza di elaborazione. Nel Da-
Vinci, nuclei separati per l’elaborazione dei pacchetti / protocollo e DSP
possono facilitare lo sviluppo di software. Mentre i processori sia Ana-
log Devices che Texas Instruments sono progettati per essere processori
multimediali, la DaVinci ha in piu il supporto per l’elaborazione video.
Per telefoni SDR, che richiedono il consumo di energia molto piu bassa,
il Blackfin e probabilmente la scelta migliore. Per i sistemi veicolari, la
DaVinci offre piu potenza di elaborazione e sarebbe la soluzione piu van-
taggiosa. Quando devo interfacciare un processore DSP a un FPGA, avere
elevata larghezza di banda e interfacce multiple puo fare la differenza in
termini di prestazioni. Molti algoritmi radio sono implementati suddivisi
tra il processore DSP e FPGA. I compiti della velocita di elaborazione al-
goritmicamente complessi, possono essere implementate in DSP. Compiti
algoritmicamente piu semplici, con requisiti di elaborazione devono essere
attuate negli FPGA. Cio richiede interfacce flessibili e ad alta larghezza di
banda. Un esempio comune e l’acquisizione iniziale del segnale di ricezione.
Spesso un approccio iterativo e considerato per individuare la frequenza di
offset, il recupero di temporizzazione e sincronizzazione simultaneamente.
Solitamente gli algoritmi utilizzati sono complessi, e l’approccio migliore
e spesso suddiviso tra il processore DSP e FPGA, con l’FPGA facendo
piu dell’elaborazione , mentre il DSP calcola i parametri dell’algoritmo.
La comunicazione inter-dispositivo richiede la capacita di trasferire bloc-
chi di dati a bassa latenza utilizzando accesso memoria diretto (DMA) da
e verso la memoria DSP, nonche un rapido accesso DSP per controllare
41
Capitolo 3. Architettura e Selezione dei Componenti Hardware per ApplicazioniSDR
Figura 3.5
registri nell’FPGA. Interrupt, DMA spesso innescato, sono utilizzati per
sincronizzare l’elaborazione tra il processore DSP e FPGA.
3.5 Selezione componente FPGA
L’FPGA rappresenta un altro importante componente architettonico
scelto. Gli FPGA sono evoluti ben oltre il semplice hardware program-
mabile, come i produttori di FPGA offrono elevati IP cores , soft core
microcontrollori, progetti di riferimento, la metodologia system-on-chip di
progettazione, e ambienti di progettazione completi. Grazie alla potenza
e ai vincoli di costo, solo le famiglie di dispositivi Altera R© Cyclone R© III
FPGA e Xilinx Spartan-3 sono state considerate. Entrambi i produttori
offrono un’ampia capacita DSP , fa impallidire il tasso di elaborazione rea-
lizzabile in un processore DSP. La tabella di seguito mostra un confronto
tra due dispositivi Xilinx Spartan-3A DSP recentemente annunciato e la
famiglia Altera Cyclone III. Questi due dispositivi Xilinx sono stati ot-
timizzati per applicazioni DSP, cosı come la famiglia Altera Cyclone III.
Non vengono visualizzati tutti i dispositivi della famiglia Cyclone III.
Risorse moltiplicatore includono solo moltiplicatori hard, non molti-
plicatori soft costruiti dalle risorse logiche. I conteggi dei moltiplicatori
42
Capitolo 3. Architettura e Selezione dei Componenti Hardware per ApplicazioniSDR
mostrano configurazioni con un massimo di 18 x 18 x 9 o 9 moltiplicatori.
Mentre gli FPGA hanno grandi capacita di DSP (confrontare GMACS in
tabella precedente con valori DSP), questi possono anche avere requisiti di
elevata potenza. Quindi un parametro critico da considerare e il consumo
di energia. Questo non e sempre un numero facile da valutare. Pertanto,
“’i manufacturers”hanno stimatori di potenza, che possono essere utilizzati
nelle prime fasi del ciclo di progettazione. Un numero comparativo facile
da usare e il valore per il potere statico (dispositivo non cronometrato o
programmato), che pur non essendo indicativo del consumo di energia rea-
le dell’FPGA, puo essere utilizzato per fini comparativi. Le parti Altera
sono circa un terzo del fabbisogno di potenza statica dei dispositivi Xilinx.
Anche se Xilinx ha preso di mira le due parti per applicazioni DSP esse
sono al di sotto delle capacita dell’ FPGA Altera Cyclone III. La scelta
consigliata e l’ Altera EP3C40, nel pacchetto BGA 484-pin. Come risulta
dalla tabella indicata, il Cyclone III FPGA offre molta piu capacita DSP
delle parti DSP di dimensioni simili a Spartan-3A. Il dispositivo EP3C40
Cyclone III ha un consumo di energia molto piu basso. Per i modelli in
cui il consumo di energia e fondamentale, le parti Altera Cyclone III sono
disponibili in 5K e 10K, densita che ancora offrono prestazioni 6-GMACS
DSP, con un consumo energetico dell’ordine di 200 mW a frequenze di
clock di 100 MHz.
43
Capitolo 4
Confronto prestazionale:
processori DSP/FPGA
L’operazione di filtraggio del rumore adattativo in real-time richiede
hardware dedicato per soddisfare i reqisiti richiesti entro tempi stringenti.
Sono stati studiati entrambi i processori DSP e FPGA per quanto riguar-
da le loro prestazioni in termini di consumo di energia, di architettura
hardware di riferimento e della velocita per applicazioni in tempo reale. A
scopo di verifica sono stati fatti diversi test. Cosa si evince? Innanzitutto
in tempo reale i filtri di rumore adattivo sono stati implementati e simu-
lati su due piattaforme differenti, le boards Motorola DSP56303 EVM e
Xilinx Spartan III. Questo studio ha dimostrato che in applicazioni ad alta
velocita, i dispositivi FPGA sono vantaggiosi rispetto a qulli DSP grazie
alla loro riduzione della velocita e del rumore a causa dell’ architettura
parallela. La tecnologia FPGA permette di gestire piu processi contempo-
raneamente rispetto alla tecnologia DSP, che puo gestire solo un numero
limitato di istruzioni parallele alla volta. Inoltre la velocita in ambo i pro-
cessori ha come effetto la riduzione del rumore in tempo reale. Piu il nucleo
44
Capitolo 4. Confronto prestazionale: processori DSP/FPGA
DSP diventa lento, piu diventa difficile rimuovere il rumore in tempo reale.
Per quanto riguarda la potenza i dispositivi DSP sono vantaggiosi rispetto
a quelli FPGA. Gli FPGA hanno una struttura di gate riconfigurabile che
consuma piu energia. Nel caso di DSP, invece, l’hardware e gia stato con-
figurato, quindi viene spontanea una domanda. Quale tra i due richiede
meno consumo di energia? Gli FPGA sono costruiti per scopi generali,
e la loro area di silicio nel core e piu grande di quella dei DSP. Questo
e un altro fattore che influenza il consumo di energia. Quindi nelle ap-
plicazioni ad alta frequenza, gli FPGA sono vantaggiosi rispetto ai DSP.
Nelle applicazioni a bassa frequenza, al contrario, DSP e FPGA, entrambi,
soddisfano i requisiti per la cancellazione del rumore. Per le applicazioni
a bassa frequenza, i DSP sono vantaggiosi per quanto riguarda il consumo
di energia e per le applicazioni per i dispositivi alimentati a batteria.[3]
Le prestazioni dell’elaborazione dei dati in tempo reale e spesso limitata
dalla capacita di elaborazione del sistema. Pertanto, la valutazione di dif-
ferenti piattaforme di elaborazione del segnale digitale per determinare la
piattaforma piu efficiente e un compito importante. Ci sono state molte
discussioni riguardo la preferenza di processori di segnale digitale (DSP) o
Field Programmable Gate Array (FPGA) per quanto riguarda la cancella-
zione del rumore in tempo reale. La tecnologia DSP si trova in un’ampia
varieta di applicazioni, come il filtraggio, il riconoscimento vocale, il mi-
glioramento delle immagini e la compressione dei dati, le reti neurali, cosı
come i filtri analogici. Lo scopo di questo capitolo e quello di studiare
le caratteristiche dei dispositivi DSP e FPGA rispetto al loro consumo di
potenza, alla velocita, all’architettura e al costo.
45
Capitolo 4. Confronto prestazionale: processori DSP/FPGA
4.1 Confronto in termini di velocita e consumo
di potenza
I filtri di rumore adattativo sono stati implementati su DSP e FPGA.
Ad esenpio Motorola DSP56303 e stato utilizzato per la piattaforma DSP,
mentre le schede Xilinx Spartan III sono state utilizzate per implementa-
re il filtraggio del rumore adattivo FPGA. Matlab e Simulink sono stati
utilizzati per testare l’efficacia e la correttezza dei filtri adattativi prima
dell’ implementazione hardware. Come discusso nei capitoli precedenti, il
concetto delle applicazioni di filtraggio del rumore adattivo puo essere im-
plementato in entrambi i processori DSP come le serie Motorola DSP56300
e anche nel Field Programmable Gate Array come schede Xilinx Spartan
III. Nelle applicazioni di elaborazione del segnale ad alte prestazioni, i di-
spositivi FPGA hanno diversi vantaggi rispetto ai processori DSP di fascia
alta. Un’ Indagine ha dimostrato che gli FPGA di fascia alta hanno un
enorme vantaggio in termini di throughput rispetto ai processori DSP ad
alte prestazioni per alcuni tipi di applicazioni di elaborazione del segnale.
La tecnologia FPGA utilizza architetture altamente flessibili che possono
essere piu vantaggiose rispetto ai processori DSP regolari. Tuttavia, gli
FPGA hanno un costo hardware. La flessibilita si ha grazie ad un gran
numero di porte, che significa piu area di silicio, piu instradamento e con-
sumo di potenza superiore. I processori DSP sono piu efficienti per compiti
DSP comuni, ma tipicamente il DSP richiede solo una piccola frazione di
superficie di silicio, che e dedicato a scopi computazionali. La maggior par-
te dell’area e designata per i codici di istruzioni e per lo spostamento dati.
Nelle applicazioni di elaborazione del segnale ad alte prestazioni come l’ela-
borazione video, l’FPGA con l’uso di architetture altamente parallele puo
46
Capitolo 4. Confronto prestazionale: processori DSP/FPGA
offrire un throughput molto piu elevato rispetto ai processori DSP. Come
risultato il consumo energetico complessivo dell’ FPGA puo essere signifi-
cativamente inferiore rispetto ai processori DSP, nonostante il fatto che il
loro consumo di energia a livello di chip e spesso piu elevato. I processori
DSP possono consumare 2-3 watt, mentre gli FPGA possono consumare
fino a 10 watt. La tecnica a pipeline ossia piu area computazionale e con
piu gates permette agli FPGA di elaborare piu canali contemporaneamen-
te. Cosı il consumo di energia per canale e significativamente inferiore
nell’ FPGA. I DSP sono forme specializzate di microprocessore, mentre
gli FPGA sono forme di hardware altamente configurabile. In passato,
l’utilizzo di DSP e stato quasi onnipresente, ma con le esigenze di molte
applicazioni ,superando le capacita di elaborazione (MIPS) di DSP, l’uso
di FPGA e diventato molto diffuso.
4.1.1 Confronto in termini di velocita
La velocita e uno dei concetti piu importanti che determinano il tempo
di calcolo ed inoltre e uno dei concetti piu importanti del mercato. Nei
filtri adattativi i parametri vengono aggiornati ad ogni iterazione e dopo
ogni iterazione l’errore tra l’ingresso e il segnale desiderato diviene piu
piccolo. Dopo un numero di iterazioni l’errore diventa zero e il segnale
desiderato e raggiunto. Secondo le specifiche dei manuali dei produtto-
ri, Motorola serie DSP56300 ha un CPU clock di 100 MHz, ma questa
velocita dipende all’instruction fetch , dalla velocita di calcolo ed anche
dalla velocita delle periferiche. Sulla scheda DSP56303EVM il codec au-
dio funziona su 24,57 MHz, questa velocita di clock e determinato da un
cristallo esterno. Dall’altra parte Xilinx Spartan 3 ha la massima frequen-
za di clock di 125 MHz, ma tale velocita puo essere ridotta a causa del
47
Capitolo 4. Confronto prestazionale: processori DSP/FPGA
numero di istruzione,porte e a causa della congestione nell’instradamento
dei segnali. Nel caso del processore Motorola DSP a causa della velocita di
clock effettiva bassa, condizioni di causalita e la limitazione della velocita
il tempo di esecuzione dell’algoritmo LMS modificato e 20 MHz. Nel caso
della velocita di funzionamento nella FPGA e di circa 50 MHz. Infatti e
la flessibilita dell’FPGA che rende il clock piu veloce. Come discusso nelle
sezioni precedenti, abbiamo dimostrato le differenze tra i processori DSP
e FPGA.
4.1.2 Potenza e Costo
Per quanto riguarda la potenza e il costo, i processori DSP in generale
hanno un basso consumo energetico, che li rende adatti per l’utilizzo con
batteria. Tali applicazioni possono essere adatte per applicazioni audio.
Quando si tratta di applicazioni ad alta frequenza, i processori DSP hanno
alcune limitazioni da parte loro, quando vengono confrontati con le FPGA.
Nelle applicazioni ad alta velocita, gli FPGA sono molto piu veloci rispet-
to ai processori DSP. Quando si tratta di applicazioni ad alta velocita, le
schede DSP hanno alcune limitazioni rispetto agli FPGA. Infatti l’FPGA
puo offrire piu canali, e quindi quando ll costo per canale viene conside-
rato, perche FPGA puo offrire piu canali, il costo per canale e inferiore al
DSP. Anche il partizionamento dell’ FPGA e in grado di offrire piu throu-
ghput rispetto ai processori DSP. Secondo il nostro studio, la conclusione
finale e che per semplici applicazioni audio come la rimozione del rumore
adattativo, il Motorola DSP56300 e piu vantaggioso, in quanto i requisiti
per le applicazioni audio si incontrano cn quelli dei processori DSP. Inoltre
sono molto piu efficinti in potenza e puo essere utilizzato per i dispositivi
alimentati a batteria. Ma quando il filtraggio del rumore adattivo e consi-
48
Capitolo 4. Confronto prestazionale: processori DSP/FPGA
Figura 4.1
Figura 4.2
derato per applicazioni ad alta velocita come il video streaming, l’FPGA
offre un approccio piu veloce e quindi e piu adatto per applicazioni ad alta
frequenza.
49
Capitolo 4. Confronto prestazionale: processori DSP/FPGA
Figura 4.3
Figura 4.4
50
Bibliografia
[1] White-Paper: Acromag. J. A Primer on FPGA-based DSPApplications.Trends, Options, Considerations, and Tools forUsing Re-configurable FPGA Platforms as an Alternative toDedicated DSP Hardware.
[2] White-Paper Altera.Architecture and Component Selectionfor SDR Applications.
[3] DSPs/FPGAs Comparative Study for Power Consumption,Noise Cancellation, and Real Time High Speed Applica-tions.J. Michael Knieser, Maher Rizkalla.Department ofElectrical and Computer Engineering, Indiana UniversityPurdue University Indianapolis, Indianapolis, USA.
[4] Jenniefr Eyre.Senior DSP Analyst .Berkeley Design Techno-logy Inc,Berkeley.pdf.
[5] Tecnologie FPGA. Fazzino ,Catania,11/06/2007.pdf.
[6] FPGA Arxhitectural Research:A Survey.Stephen Brown.University of Toronto .pdf.
[7] http://www.elettronicanews.it/Gli Fpga nelle applicazioniDsp — Elettronica News(visualizzato il 29-03-2015)
[8] http://www.elettronicanews.it/L’evoluzione dei Dsp basatisu Fpga — Elettronica News (visualizzato il 29-03-2015)
[9] http://www.FPGAcenter.com/pdf/(visualizzato il 29-01-2015)
[10] http://http://www.eetimes.com/pdf/(visualizzato il 12-02-2015)
[11] http://http://http://www.ni.com/white-paper/pdf/(visualizzato il 12-02-2015)
51
Bibliografia
[12] http://http://www.adapteva.com/pdf/(visualizzato il 12-02-2015)
[13] http://www.wikipedia.org/wiki/PrimaLeggeDiMoore CAPcite note-3 (visualizzato il 29-03-2015)
[14] http://www.wikipedia.org/wiki/FPGA CAPcite note-3 (vi-sualizzato il 29-03-2015)
52