Esplora E-book
Categorie
Esplora Audiolibri
Categorie
Esplora Riviste
Categorie
Esplora Documenti
Categorie
Un circuito integrato una piastrina di silicio (o chip), quadrata o rettangolare, sulla cui superficie vengono realizzati e collegati transistor e dunque porte logiche, che complessivamente realizzano uno o pi circuiti digitali
Il Livello Logico-Digitale
Blocchi funzionali combinatori
La piastrina di silicio integra i transistor, i collegamenti tra i transistor e i collegamenti con i morsetti di ingresso/uscita del chip
porte logiche sparse e indipendenti una o pi reti combinatorie, con funzioni definite una o pi reti sequenziali unit funzionali complesse: memoria, processore, unit di controllo di periferiche, e cos via
-2-
Usi caratteristici
SSI: piccoli circuiti digitali di contorno a circuiti pi complessi (glue logic, logica di incollamento) MSI: circuiti digitali semplici, dotati di ununica funzione ben definita. Ad LSI: circuiti digitali complessi, dotati di funzionalit multiple, eventualmente programmabili. Ad es.: un intero insieme di op. aritmetiche
(addizione, sottrazione, moltiplicazione, divisione - ALU), memorie di piccole dimensioni, processori semplici
SSI (Small Scale Integrated): IC a scala di integrazione piccola, da 1 a 10 porte MSI (Medium Scale Integrated): IC a scala di integrazione media, da 10 a 100 porte LSI (Large Scale Integrated): IC a scala di integrazione grande, da 100 a 100.000 porte VLSI (Very Large Scale Integrated): IC a scala di integrazione molto grande, > 100.000 porte
es.:scambio di due o pi segnali, confronto di due numeri, addizione o sottrazione di due numeri
VLSI: circuiti digitali molto complessi o di grandi dimensioni, spesso programmabili. Ad es.: processori (dai microcontrollori ai processori di uso generale Pentium, SPARC, memorie, da qualche Kbyte in su, unit di controllo delle periferiche
Ogni famiglia ha degli usi caratteristici nei calcolatori e in generale nei dispositivi elettronici, che dipendono dalle sue dimensioni, cio dalla quantit di porte presenti nel circuito integrato stesso
Nessuno progetta un circuito integrato VLSI, ma anche LSI, trattandolo come ununica rete combinatoria o sequenziale (104-106 porte logiche) Per progettare circuiti digitali di tali dimensioni, si usano tecniche modulari, per scomporre il problema
-3-
-4-
Multiplexer
Il blocco funzionale multiplexer ha:
Questi blocchi appartengono alle famiglie MSI e (alcuni di essi) LSI La libreria contiene anche blocchi funzionali di tipo sequenziale
Half adder e Full adder Addizionatore a n bit ALU or, and, not e somma
Gli ingressi dati sono numerati a partire da 0: k = 0, 1, 2, , 2n 1 Se sugli ingressi di selezione presente il numero binario k, il kesimo ingresso dati viene inviato in uscita
-6-
I1 0 0 1 1 0 0 1 1
0 0 0 0 1
Sel (Ctrl) 0 1 0 1 0 1 0 1
OUT 0 0 0 1 1 0 1 1
I0I1
Sel 00 0 0 0 1
01 0 1
11 1 1
10 1 0
1 1 1
-7-
Sel I0 U I1 MUX
Ctrl
B
3
B
3
ingressi dati
I0 I1 I2 I3 MUX
S0 U
uscita
2 3 4 5 6 7
-9-
0 M U 1 X 0 M U 1 X
OUT
3
OUT
3
X X X X
A
3
0 M U 1 X
X X X X X X
- 10 -
Demultiplexer
Il blocco funzionale demultiplexer ha:
Uscite O1 D 0 0 0 O2 0 D 0 0 O3 0 0 D 0 O4 0 0 0 D
O 1 = !S 1 !S 2 I O 2 = S 1 !S 2 I
O 3 = !S 1 S 2 I O 4 = S 1S 2I
Le uscite sono numerate a partire da 0: k = 0, 1, 2, , 2n 1 Se sugli ingressi di selezione presente il numero binario k, lingresso dati viene inviato alla kesima uscita, le rimanenti sono a 0
S1 S2
00 I 10 01 11
O1 O2 O3 O4
Decodificatore (decoder)
Il blocco funzionale decodificatore ha:
Decodificatore
DEC a 2 ingressi
U0 U1 U2 U3
n 1 ingressi 2n 2 uscite
Le uscite sono numerate a partire da 0: k = 0, 1, 2, , 2n 1 Se sugli ingressi presente il numero binario k, la kesima uscita assume il valore 1 e le restanti uscite assumono il valore 0
ingressi
I1 I0 DEC
uscite
Decodificatore a 2 ingressi
- 13 - 14 -
1 2 3
Confrontatore (comparator)
Il blocco funzionale confrontatore ha:
Confrontatore
Tabella delle verit
# riga A1 A0 B1 B0 A<B A=B A>B 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 1 1 0 0 1 1 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 1 1 0 0 1 1 1 0
due gruppi A e B di ingressi da n 1 bit ciascuno tre uscite: minoranza A < B, uguaglianza A = B e maggioranza A >B
COMP a 2 bit
A0
1 2 3
ingressi
A1 B0
A<B A=B
uscite
4 5 6 7 8 9 10
Il blocco confronta i due numeri binari A e B da n bit presenti sui due gruppi di ingressi, e attiva (a 1) luscita corrispondente allesito del confronto
A>B B1 COMP
11 12 13 14 15
Shifter combinatorio
Il blocco funzionale shifter ha:
n 1 ingressi 1 ingresso per il bit aggiunto a dx (scorrimento a sinistra) 1 ingresso per il bit aggiunto a sx (scorrimento a destra) 1 ingresso di controllo che comanda lo scorrimento a destra o a sinistra n 1 uscite scorrimento a dx: bit aggiunto a sx + ingressi shiftati di una posizione a dx (viene perso il bit meno significativo degli ingressi) scorrimento a sx: bit aggiunto a dx + ingressi shiftati di una posizione a sx (viene perso il bit pi significativo degli ingressi)
S/!D
Nuovo bit
scorrimento a destra
I4
I3
I2
I1
I0
Nuovo bit
scorrimento a sinistra
Uscite:
MUX
MUX
MUX
MUX
MUX
O4
O3
O2
O1
O0
Si noti che se si considerano gli ingressi come un valore numerico espresso in binario naturale
lo scorrimento a dx (con bit aggiunto a sx = 0) equivale ad una divisione per 2 lo scorrimento a sx (con bit aggiunto a dx = 0) equivale ad una moltiplicazione per 2
- 17 - 18 -
Half adder
HALF-ADDER A 0 0 1 1 B 0 1 0 1 Carry Sum 0 0 0 1 0 1 1 0
Carry
Addizionatore ad 1 bit
Sum = A B Carry = AB
A B
Addizionatore a k bit in binario naturale intero Sottrattore a 1 bit Sottrattore a k bit in binario naturale intero
Sum
- 19 -
- 20 -
Full adder
B
3 bit
A2
B2
A1
B1
A0
B0
CarryOut
FULL ADDER
Cout2
Cin2
FULL ADDER
Cin1
HALF ADDER
CarryOut Sum
Cout1
Cout0
S2 SUM
3 bit
S1
S0
- 21 -
- 22 -
Ricavare le tabelle delle verit, lespressione logica minima e la rete combinatoria che realizza
sottraendo
M2 M1 M0 S2 S1 S0 Pusc D2 D1 Pin D0
in ingresso due numeri interi binari naturali (positivi) A e B da n 1 bit ciascuno in ingresso un segnale di comando C in uscita un numero intero binario naturale Z da n 1 bit
prestito in uscita
Unit Aritmetico-Logica
Add Sub
comandi
Rin, Pin n A
ALU
C ALU U n n
I0 S MUX U I1 n Z
operandi esiti
risultato
Multiplatore Sottrattore
- 27 -
- 28 -
Unit Aritmetico-Logica
# riga 0 1 2 3 4 5 6 7 8 9 10 Comando Add Sub Pass A Pass B Zero Shift Left A Shift Right A Null Compare Multiply Divide Operazione somma A e B sottrae B da A A passa in uscita B passa in uscita annulla uscita A scorre a SX A scorre a DX Confronta A con 0 Confronta A con B prodotto di A e B divisione A / B
- 29 -
riporto in uscita Rusc prestito in uscita Pusc bit pi significativo di A bit meno significativo di A A=0 A < B, A = B, A > B riporto in uscita divisione per 0 ?
F0F1 0 0 1 0 0 1 1 1
CarryOut
Multiplexer Uscita
- 30 -
La tecnica pi usata per rappresentare i numeri interi relativi il complemento a due (twos complement) Le ALU sono normalmente in grado di operare sia con numeri interi naturali sia con numeri interi relativi rappresentati in complemento a due
I numeri reali sono rappresentabili tramite sequenze di bit, proprio come i numeri interi
Esiste uno standard internazionale per la rappresentazione binaria di numeri reali: lo standard IEEE 754 per la rappresentazione in virgola mobile Esistono ALU in grado di effettuare i calcoli aritmetici con i numeri reali, oltre che con i numeri interi
- 32 -