• Non ci sono risultati.

È stata quindi studiata l’aritmetica in virgola mobile, in particolare si sono studiati gli algoritmi per le operazioni base e lo standard IEEE.

N/A
N/A
Protected

Academic year: 2021

Condividi "È stata quindi studiata l’aritmetica in virgola mobile, in particolare si sono studiati gli algoritmi per le operazioni base e lo standard IEEE. "

Copied!
4
0
0

Testo completo

(1)

Conclusioni

Il presente lavoro di tesi ha avuto come obiettivo la realizzazione, mediante linguaggio VHDL, di un coprocessore matematico che lavorasse sui numeri in formato floating point (FPU). La FPU è stata realizzata per essere interfacciata al LEON, un processore realizzato in VHDL dall’Agenzia Spaziale Europea (oggi mantenuto dalla Gaisler Research, Svezia) che è disponibile in open source e può essere utilizzato per realizzare il core all’interno di sistemi embedded.

Si è iniziato studiando il LEON e concentrando l’attenzione sull’interfaccia predisposta per fargli lavorare in parallelo un coprocessore.

Sono stati poi studiati i modi che vengono utilizzati per rappresentare i numeri nei sistemi di elaborazione dell’informazione e lo standard IEEE per la rappresentazione dei numeri in virgola mobile.

È stata quindi studiata l’aritmetica in virgola mobile, in particolare si sono studiati gli algoritmi per le operazioni base e lo standard IEEE.

Dopo aver fatto lo studio delle poche FPU presenti in letteratura sono state scelte le specifiche e l’architettura della FPU.

La FPU è stata realizzata in VHDL e :

• Lavora in Singola Precisione (32-bit).

• Realizza le operazioni di :

o Addizione, Sottrazione, Moltiplicazione, Divisione Radice quadrata, Valore assoluto e Negazione.

• È conforme allo standard IEEE-754 e ne contempla sia i 4 tipi di

arrotondamento, sia le eccezioni previste.

(2)

Conclusioni pag. 101

Dopo questa fase la FPU è stata sottoposta alla verifica del UCBTEST, un test che esamina il comportamento dei dispositivi che utilizzano l'aritmetica in virgola mobile con lo standard IEEE 754 sviluppato a Berkeley presso la University of California che consiste nel mandare in ingresso alla FPU degli operandi prestabiliti ed il tipo di arrotondamento voluto e nel verificare che l'uscita sia identica a quella che ci si attende.

Tenendo conto della predisposizione del LEON è stata realizzata l’interfaccia per connettergli la FPU.

Infine la FPU e l’Interfaccia sono state sintetizzate con il programma Design Compiler di Synopsys in tecnologia CMOS 0,18 µm standard cell, con libreria tecnologica HCMOS8DLL (Device Low Leakage), progettata per minimizzare il consumo di potenza e che può essere alimentata con una tensione che va da 1,2 V a 1,95 V. Al compilatore è stato indicato di utilizzare le condizioni operative “worst case commercial” (1,55 V e 85°C).

Facendo la sintesi dei singoli blocchi della FPU è si è ottenuto :

Blocco Area occupata Gate equivalenti

ESEGUI 647,16 µ m

2

53

VSI-INGRESSO 5054,46 µ m

2

412

ADD-SUB 5010263,74 µ m

2

407670

MUL 368644,12 µ m

2

29996

DIV 722173,75 µ m

2

58762

SQRT* 5732437,49 µ m

2

466431

ABS-NEG 2387,96 µ m

2

195

SINCRONIZZA 212,99 µ m

2

18

VSI-USCITA 2473,98 µ m

2

202

*valore stimato

Sintesi della FPU (vincoli: Max Area = 0.0, T clock = 50 ns)

L’occupazione totale di area della FPU è 11844295,65 µ m

2

pari a 963735

gate equivalenti e il cammino critico di 227,12 ns è interno al blocco DIV.

(3)

Conclusioni pag. 102

Per ridurre l’occupazione d’area è stato semplificato il blocco ADD-SUB introducendo un errore relativo di 0 , 0000000596

1 2

24

= sull’operazione eseguita. Rifacendo la sintesi dei singoli blocchi della FPU è si è ottenuto :

Blocco Area occupata Gate equivalenti

ESEGUI 647,16 µ m

2

53

VSI-INGRESSO 5054,46 µ m

2

412

ADD-SUB 99700,70 µ m

2

8113

MUL 368644,12 µ m

2

29996

DIV 722173,75 µ m

2

58762

SQRT* 821874,45 µ m

2

66874

ABS-NEG 2387,96 µ m

2

195

SINCRONIZZA 212,99 µ m

2

18

VSI-USCITA 2473,98 µ m

2

202

*valore stimato

FPU semplificata (vincoli : Max Area = 0.0, T clock = 50 ns)

L’area occupata ora dal blocco ADD-SUB si è notevolmente ridotta diventando l’ 1,98% di quella iniziale, di conseguenza anche l’area occupata dal blocco SQRT è diventata il 14,33% dell’iniziale.

L’occupazione totale di area della FPU diviene 2023169,57 µ m

2

pari a 164620 gate equivalenti. Rinunciando alla precisione assoluta si è ottenuto quindi una riduzione totale d’area pari al 82,91% di quella iniziale.

Il cammino critico rimane quello interno al blocco DIV che non ha subito

modifiche. Va però considerato che il suo valore è dovuto al fatto che il

risultato dell’operazione di divisione viene prodotto in 1 solo ciclo di clock,

mentre tutte le FPU studiate in letteratura realizzano questa operazione in

più di 20 cicli.

(4)

Conclusioni pag. 103 Facendo la sintesi dell’Interfaccia si è ottenuto :

Area occupata Gate equivalenti

Interfaccia 11665,40 µ m

2

950

Interfaccia LEON –FPU (vincoli: Max Area = 0.0, T clock = 50 ns) Il cammino critico è pari a 14,08 ns.

Per futuri sviluppi di questo lavoro si suggerisce di cercare di ridurre l’area attualmente occupata dalla FPU. La strada indicata dalle sintesi eseguite è quella di pensare ad un nuovo algoritmo per l’operazione di addizione o sottrazione, se da esse si richiede la massima precisione permessa dalla rappresentazione adottata.

Occorre inoltre ampliare le prestazioni della FPU eseguendo le operazioni

anche nel formato a doppia precisione. Questo obbiettivo si può raggiunge

adattando al nuovo tipo di dato le soluzioni già adottate per realizzare le

operazioni in singola precisione.

Riferimenti

Documenti correlati

La mantissa M è, nella forma normalizzata, un numero frazionario compreso fra 2 –1 e 1, ossia 0.5 ≤ M < 1 (M in pratica viene rappresentato in virgola fissa con la virgola

(i) I numeri floating point possono essere trasferiti fra due computer che utilizzano lo standard IEEE in binario senza perdere precisione;.. (ii) I dettagli dell’aritmetica

Inoltre, il frammento di collisione, costituito dalla somma della parte di pacchetto trasmessa più la sequenza di jamming che viene posta in coda, deve avere una lunghezza inferiore

Come si vede dalla Figura 22, il livello PHY con canali ampi 40 MHz e 4 flussi spaziali raggiunge velocità di trasmissione massime di 600 Mbps con la modulazione 64-QAM contro gli

6.fine- stringa.. se stato FUORI e car alfab: entra DENTRO e incr il cont. se stato DENTRO e car alfab: resta DENTRO, non fa nulla

la coppia ordinata [indice di riga, indice di colonna] indica la posizione di un elemento nello array bidimensionale. Gli indici possono essere

dichiarazione della variabile di nome Numero di tipo complesso.. Elementi di Informatica..

dichiarazione della variabile di nome Numero di tipo complesso.. Elementi di Informatica.. Prof. del Sannio