62
Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato finale in Calcolatori Elettronici 1 Impiego di tecnologie FPGA per applicazioni DSP: Valutazione e confronto di prestazioni Anno Accademico 2014/2015 Candidato: Federica Mesolella matr.N46/000881

Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

  • Upload
    buidieu

  • View
    225

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 2: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

“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)

Page 3: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

“La disumanita del computer sta nel fatto che, una volta programmato e

messo in funzione, si comporta in maniera perfettamente onesta.”

(Isaac Asimov)

Page 4: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 5: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 6: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 7: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 8: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 9: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 10: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 11: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 12: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 13: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 14: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 15: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 16: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 17: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 18: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 19: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 20: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 21: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 22: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 23: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 24: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 25: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 26: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 27: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 28: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 29: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 30: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 31: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 32: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 33: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

Capitolo 2. Tecnologia FPGA-DSP Oriented

Figura 2.2

Figura 2.3

23

Page 34: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 35: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 36: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 37: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

Capitolo 2. Tecnologia FPGA-DSP Oriented

Figura 2.5

Figura 2.6

27

Page 38: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 39: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 40: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 41: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 42: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 43: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 44: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 45: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 46: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 47: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 48: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 49: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 50: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 51: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 52: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 53: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 54: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 55: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 56: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 57: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 58: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 59: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 60: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

Capitolo 4. Confronto prestazionale: processori DSP/FPGA

Figura 4.3

Figura 4.4

50

Page 61: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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

Page 62: Calcolatori Elettronici 1 Impiego di tecnologie FPGA per ... · Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato nale in Calcolatori

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