01.06.2013 Views

LEZIONE N.4 IL LIVELLO RTL - home page luca orrù

LEZIONE N.4 IL LIVELLO RTL - home page luca orrù

LEZIONE N.4 IL LIVELLO RTL - home page luca orrù

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

CALCOLATORI ELETTRONICI Il livello <strong>RTL</strong><br />

Luca Orrù<br />

Lezione n.4<br />

Il livello <strong>RTL</strong><br />

1


CALCOLATORI ELETTRONICI Il livello <strong>RTL</strong><br />

Sommario:<br />

• Bus dedicati e bus condivisi<br />

• Descrizione a livello <strong>RTL</strong> di un sistema<br />

• Unità di controllo e unità di esecuzione<br />

Abbiamo visto nella precedente lezione la descrizione dei moduli base a livello <strong>RTL</strong>.<br />

Nelle prossime lezioni verrà descritto a livello <strong>RTL</strong> un particolare sistema: il<br />

moltiplicatore binario per numeri in modulo e segno. Verrà prima descritto<br />

l’algoritmo che consente di realizzare il prodotto e quindi sarà mostrata come<br />

esempio la metodologia di progettazione.<br />

Luca Orrù<br />

Le interconnessioni<br />

• Le strutture d’interconnessione collegano i moduli che devono scambiarsi<br />

informazioni<br />

• In un sistema di calcolo le prestazioni, l’affidabilità e il costo delle<br />

interconnessioni hanno un ruolo fondamentale<br />

o Le prestazioni : si misurano in Byte/sec trasferiti<br />

La connessione può essere seriale (un solo filo per trasferire i bit)<br />

o parallela (più fili per trasferire i dati)<br />

La connessione parallela ha prestazioni superiori in termini di<br />

velocità ma ha anche costi maggiori rispetto alla seriale<br />

o Affidabilità: capacità del sistema di compiere la propria missione, cioè<br />

trasferire il dato correttamente; dipende principalmente dal tipo di<br />

connettore usato<br />

o Costo: legato al tipo di connessione e alla standardizzazione<br />

Il concetto di standard e di modularità è importante. Se i sistemi sono standardizzati<br />

allora i costruttori possono realizzare sistemi usando moduli diversi, attraverso<br />

interconnessioni standard. Questo riduce i costi perché l’utente può scegliere quello<br />

che gli fa più comodo.<br />

BUS<br />

In un sistema digitale la principale struttura d’interconnessione è il BUS. Un BUS è<br />

in pratica un’insieme di linee/conduttori che trasferiscono le informazioni da un<br />

elemento sorgente ad un elemento destinazione.<br />

Si possono avere BUS di tipo:<br />

2


CALCOLATORI ELETTRONICI Il livello <strong>RTL</strong><br />

• Dedicato: collega in modo esclusivo due moduli (modulo sorgente e modulo<br />

destinatario)<br />

• Bus condiviso: collega tra loro più moduli; in questo caso collegamenti fra<br />

elementi diversi si hanno in tempi diversi (time multiplexing); è necessario un<br />

meccanismo (protocollo) per regolare la comunicazione. La condivisione del bus<br />

tra più moduli si può avere anche usando la tecnica FDM (Frequency Division<br />

Multiplexing), tecnica a divisione di frequenza.<br />

Luca Orrù<br />

BUS dedicati<br />

Cosa s’intende? Canali che vengono usati in modo specifico per trasferire i dati da<br />

un modulo all’altro.<br />

Supponiamo di avere 4 moduli A,B,C,D<br />

Canale<br />

D<br />

C<br />

A<br />

la connessione completa di N moduli richiede N*(N-1) bus dedicati/linea.<br />

Vantaggio di questa struttura: si possono fare diverse comunicazioni<br />

contemporaneamente (quindi elevato parallelismo). Possiamo, per esempio, trasferire<br />

dati contemporaneamente tra i moduli A e D e tra B e C. Questo significa elevato<br />

vantaggio in termini di prestazioni. Non si hanno però vantaggi in termini di<br />

scalabilità (o espansibilità) della struttura. Scalabile significa che posso far crescere<br />

il sistema come complessità, mantenendo la stessa struttura d’interconnessione.<br />

Esempio: se si aggiunge un modulo E alla struttura precedente, dobbiamo far in modo<br />

di collegarlo a tutti gli altri moduli. Questo comporta la modifica anche degli altri<br />

moduli, in termini per esempio di nuove porte.<br />

Quindi.<br />

B<br />

3


CALCOLATORI ELETTRONICI Il livello <strong>RTL</strong><br />

Svantaggi: sistema poco scalabile. Inoltre il numero di connessioni pari a N*(N-<br />

1)=N^2-N cresce con il quadrato di N; quindi al crescere di N il numero di<br />

connessioni esplode.<br />

Luca Orrù<br />

BUS dedicati<br />

A B C D<br />

BUS<br />

• Vantaggio: costi inferiori e scalabilità<br />

• Svantaggio: una sola comunicazione per volta<br />

Esiste un’unica struttura d’interconnessione. E’ evidente che se A e B stanno<br />

comunicando (BUS occupato), nessun’altra comunicazione può avvenire. Questa<br />

struttura rispetto alla struttura a BUS dedicato ha però costi inferiori ed è scalabile.<br />

Infatti, se aggiungiamo un modulo, la struttura d’interconnessione non né risente (non<br />

viene modificato alcun modulo precedente).<br />

Naturalmente il numero dei moduli sarà limitato, in pratica non possiamo inserire<br />

tutti i moduli che vogliamo, in quanto ci saranno le specifiche elettriche da rispettare<br />

(max potenza assorbita). Ci saranno poi anche delle caratteristiche funzionali, in<br />

quanto le prestazioni del sistema né risentono in termini di velocità (collo di<br />

bottiglia). Per risolvere questo problema si potrebbe pensare di aumentare il numero<br />

di BUS. L’utilizzo di BUS dedicati ha si il vantaggio di migliorare le prestazioni, ma<br />

aumenta i costi.<br />

L’uso di strutture d’interconnessione condivise e standardizzate è stato cruciale<br />

nell’evoluzione dei moderni sistemi di calcolo. La realizzazione di sistemi modulari<br />

configurabili a piacere a partire da elementi disponibili sul mercato consente di<br />

ridurre i costi dei sistemi completi.<br />

Descrizione di un sistema a livello <strong>RTL</strong><br />

Vediamo ora come descrivere la struttura di un sistema a livello <strong>RTL</strong>.<br />

La descrizione a livello <strong>RTL</strong> si divide in due tipi:<br />

1. la struttura cioè come i componenti sono interconnessi<br />

2. il comportamento, ovvero il programma<br />

4


CALCOLATORI ELETTRONICI Il livello <strong>RTL</strong><br />

La descrizione grafica definisce la struttura di un sistema a livello <strong>RTL</strong>, mentre la<br />

descrizione del comportamento avviene mediante un linguaggio specifico<br />

Esempio di struttura (descrizione strutturale)<br />

Accanto alla descrizione strutturale c’è la descrizione comportamentale.<br />

Linguaggio <strong>RTL</strong>: l’istruzione base <strong>RTL</strong> è la seguente<br />

1. Z = f ( X1<br />

, X 2,<br />

− − −Xn)<br />

Luca Orrù<br />

Unità<br />

funzionale<br />

Sommatore oppure blocco OR,<br />

AND, decodificatore etc<br />

BUS<br />

R1 R2<br />

Z è un registro dove viene immagazzinato il risultato fornita dalla funzione f.<br />

Analogamente X1,X2,……Xn sono dei registri o celle di memoria.<br />

L’espressione 1 ci dice: trasferisci i dati contenuti nelle celle X1,X2,…Xn, nella<br />

cella/registro Z, dove i dati contenuti in X1, X2, Xn sono elaborati tramite la funzione<br />

f.<br />

In sintesi: calcola la funzione f con i dati contenuti nei registri X1, X2, …Xn e<br />

trasferisci il risultato nel registro Z.<br />

R3<br />

Bus dedicati<br />

R1,R2,R3 sono dei<br />

registri/moduli<br />

paralleli che<br />

immagazzinano<br />

delle parole<br />

5

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!