2.
Definizione e Importanza delle
Interconnessioni
Le interconnessioni sono "linee di materiale
conduttore (metallo, polisilicio fortemente
drogato con comportamento quasi metallico)
che collegano tra loro diversi nodi del
circuito e diverse porte logiche." Sono
componenti fondamentali nei System-on-Chip
(SoC) moderni, dove possono estendersi per
"molti chilometri" e sono distribuite su
"molti livelli (piani)" che costituiscono il
Back End Of Line (BEOL).
Fatti Chiave:
Il numero di livelli di interconnessione è
andato storicamente crescendo con l’evolvere
delle tecnologie.
Contribuiscono in modo fondamentale all’area
complessiva del chip.
Il consumo di potenza per il loro pilotaggio
rappresenta spesso oltre l’80% del consumo
totale.
3. Tipi di Interconnessioni: Locali
e Globali
Le interconnessioni si distinguono in due
categorie principali basate sulla loro
lunghezza e funzione:
Interconnessioni Locali: tante ma di
piccola lunghezza (connessioni tra porte
logiche e celle standard).
Interconnessioni Globali: poche ma di
elevata lunghezza (bus di comunicazione,
distribuzione del clock, VDD, GND). Len è
circa proporzionale alla radice quadrata
dell’area del chip.
La distribuzione della lunghezza delle linee
in un chip, come mostrato nei grafici di
esempio (Pentium, Pentium Pro, Pentium II),
evidenzia una predominanza di
interconnessioni locali corte e un numero
minore di interconnessioni globali più
lunghe.
4. Modellizzazione delle
Interconnessioni: Parametri
Distribuiti
Ogni tratto infinitesimo (dx) di una linea di
interconnessione può essere schematizzato con
un circuito equivalente che include parametri
distribuiti:
R = resistenza per unità di lunghezza
[Ohm/m]
C = capacità per unità di lunghezza
[Farad/m]
G = conduttanza per unità di lunghezza
[Siemens/m]
L = induttanza per unità di lunghezza
[Henry/m]
M = induttanza mutua per unità di lunghezza
[Henry/m]
Cm = capacità di accoppiamento per unità
di lunghezza [Farad/m]
Requisiti e Problemi:
Per prestazioni ottimali, si richiedono
bassa r (rho) e bassa x (epsilon) (low-k
materials o aria).
Un problema critico è che Il ritardo
introdotto dall’interconnessione tende a
rimanere costante con lo scaling mentre quello
di propagazione dei gate tende a calare.
5. Capacità di Fringing e Capacità
Totale
La capacità di un'interconnessione non è data
solo dal contributo delle facce piane
parallele, ma anche da un significativo
"contributo di fringing" e, nel caso di linee
accoppiate, da un "contributo di
accoppiamento laterale." Questo rende il
calcolo della capacità più complesso.
6. Semplificazione del Modello:
Modello RC Distribuito
In molte applicazioni interne ai chip, si
possono fare delle semplificazioni:
Trascurare G (non sempre vero ad alta
frequenza).
Trascurare L se la lunghezza d'onda dei
segnali (λ) è >> lunghezza complessiva della
linea, il che significa che le cadute di
tensione sulle induttanze sono trascurabili
rispetto a quelle sulle resistenze.
Questa condizione è normalmente verificata
per interconnessioni interne ai chip dove R
è elevata in quanto W e H hanno dimensioni
molto piccole. Per una linea isolata, M e Cm
sono nulle.
Sotto queste ipotesi, ogni tratto di linea
può essere rappresentato come una resistenza
in serie seguita da una capacità verso massa,
portando alla ben nota equazione di
diffusione.
Il comportamento di una linea distribuita
implica una risposta più rapida che un modello
a parametri concentrati a parità di resistenza
e capacità totali della linea.
7. Approssimazioni a Parametri
Concentrati
Data la complessità computazionale dei
modelli distribuiti, si utilizzano "soluzioni
approssimate" basate su parametri
concentrati.
La linea viene approssimata con un numero
finito di "celle di tipo L, π o T" costituite
da elementi concentrati. L'accuratezza di
questi modelli a più celle cresce con il
numero di celle utilizzate.
8. Tempo di Propagazione del Segnale
e Ottimizzazione del Ritardo
Tempo di Propagazione: Il modello a
parametri concentrati delle interconnessioni
ha numerose capacità, e la risposta temporale
è una sovrapposizione di esponenziali. Si
ipotizza una "costante di tempo dominante"
(quella di durata maggiore) per il calcolo
del ritardo.
Ritardo Driver-Linea: Quando la linea è
pilotata da una porta logica (driver), il
segnale d'ingresso non è un gradino. Un
modello semplificato RC ad L per la linea e
una resistenza equivalente R_eq per il driver
permettono di calcolare una costante di tempo.
Il ritardo intrinseco della linea può essere
molto elevato.
Ottimizzazione del Ritardo: Per mitigare
l'elevato ritardo intrinseco delle
interconnessioni, si utilizzano diverse
tecniche:
Inserimento di Ripetitori: inseriamo
ripetitori (invertitori o buffer non
invertenti) lungo la linea e ne ottimizziamo
il numero.
Ripetitori Identici di Area Minima: Con
k ripetitori identici, si può ottimizzare il
numero per minimizzare il ritardo.
Ripetitori Identici Ottimizzati con
Fattore di Forma (h): Utilizzando un fattore
di forma h per i ripetitori, il ritardo
ottimizzato risulta inferiore al caso
precedente, lineare in Len.
Buffer a Cascata di Invertitori: Utilizzo
di n invertitori di dimensioni crescenti con
un fattore f. Questo approccio porta a un
ritardo ottimo che è "quadratico il Len.