ANALISI DI RETI LOGICHE

In questo capitolo è mostrato come ottenere la funzione logica a partire da un circuito logico. I circuiti logici sono detti "reti logiche" e si suddividono in due famiglie

Le reti logiche combinatorie sono quei circuiti logici la cui uscita dipende solo dal valore degli ingressi presenti (a meno dei ritardi di propagazione). Le reti logiche sequenziali sono quei circuiti logici la cui uscita dipende, non solo dagli ingressi presenti, ma anche dal valore dell'uscita precedente. In questa sede ci si occuperà di analisi di reti logiche combinatorie. L'espressione algebrica di una rete logica che ne esplicita il funzionameno è detta funzione di commutazione o switching function.

Esempi: dalla rete logica alla funzione di commutazione

Esempio 1

Data la rete logica di Figura 1 ricavare la funzione di commutazione e la tabella della verità

analisi reti
Figura 1

Per ricavare la funzione di commutazione della rete logica si può procedere partendo dall'uscita (top down) o dall'ingresso (bottom up).

Se si parte dall'uscita occorre introdurre delle variabili logiche ausiliarie, cioè intermedie tra l'ingresso e l'uscita (o le uscite)
Y=A+Z
Z=T•B
T=A
sostituendo T
Z=A•B
Y=A+A•B
Allo stesso risultato si può arrivare partendo dall'ingresso: T=A
questo è messo in AND con B
Z=A•B
infine Z è messa in OR con A
Y=A+A•B
Ad ogni gruppo di operazioni booleana che hanno la stessa precedenza corrisponde un livello. La funzione di commutazione ottenuta può essere ulteriormente semplificata con il secondo teorema dell'assorbimento:
Y=A+B
La corrispondente tabella della verità risulta quindi essere:

Tabella della verità

ABY
000
011
101
111

Esempio 2

Data la rete logica di Figura 2 ricavare la funzione di commutazione e la tabella della verità

analisi reti
Figura 2

Per ricavare la funzione di commutazione della rete logica si può procedere partendo dall'uscita (top down) o dall'ingresso (bottom up).

Se si parte dall'uscita occorre introdurre delle variabili logiche ausiliarie, cioè intermedie tra l'ingresso e l'uscita (o le uscite)
Y=T+X
T=A•B
X=A•B•C
X=A•B•C
sostituendo T e X
Y=A•B+A•B•C
Allo stesso risultato si può arrivare partendo dall'ingresso:
T=A•B
X=A•B•C
X viene negata (il pallino su un ingresso significa che la variabile di ingresso è complementata)
X=A•B•C
Il tutto è messo in OR
Y=A•B+A•B•C
La funzione di commutazione ottenuta può essere ulteriormente semplificata applicando De Morgan, applicando la proprietà distributiva e il teorema dell'annullamento:
Y=A•B+A•B•C=A•B+A+B•C=A•(B+1)+B•C
Y=A+B•C
La corrispondente tabella della verità risulta quindi essere:

Tabella della verità

ABCY
0001
0011
0101
0110
1001
1011
1101
1111

Esempio 3

Data la rete logica di Figura 3 a più uscite ricavare la funzione di commutazione e la tabella della verità

analisi reti
Figura 3

Funzione di commutazione dalla rete logica; in questo caso le uscite sono 3. Si sono evidenziati i livelli.

X=A•(B+C)+A•BC
Y=BC•+C•B
Z=C

Tabella della verità

ABCXYZ
000011
001100
010101
011110
100111
101000
110001
111010

Esempi: dalla funzione di commutazione alla rete logica

In questa sezione si parte dalla funzione di commutazione e si arriva al circuito logico: la regola generale è quella di seguire le precedenze:

In alternativa a far partire due linee per ogni variabile di ingresso (una per la variabile naturale e l'altra per la stessa variabile negata), si possono direttamente negare (mettendo un "pallino") gli ingressi del primo livello di porte logiche

analisi reti
Figura 4

Metodi alternativi per negare una variabile di ingresso: a sinistra si crea una linea dedicata con la variabile "complementata", a destra si complementa direttamente l'ingresso della prima porta logica

Esempio di rete logica

Disegnare la rete logica che sintetizzi la seguente funzione di commutazione usando solo le reti logiche fondamentali
A+BA

analisi reti
Figura 5

Rappresentazione circuitale della funzione di commutazione A+BA

Le condizioni di indifferenza

Non sempre nella tabella della verità è prescritto un certo comportamento degli ingressi o delle uscite: non importa, in alcuni casi, che queste valgano 0 o 1 (potrebbero valere anche 1 o 0). Queste situazioni vengono dette "condizioni di indifferenza" e sono indicati nella tabella della verità dalla lettera X. Questa notazione, se riferita a un ingresso, semplifica la tabella della verità (perde una riga), se riferita ad un'uscita (vedremo quando si parlerà di metodi di sintesi di reti logiche) invece può essere scelta o pari a 0 o a 1 a seconda che aiuti a semplificare il circuito logico.

Tabella della verità con condizioni di indifferenza

ABCY
00X1
0101
0110
100X
101X
110X
1110
Nella tabella sopra riportata se gli ingressi A e B sono entrambi nulli non importa il valore assunto dall'ingresso C che può essere indifferentemente 0 o 1 (e quindi X) e l'uscita Y sarà comunque pari a 1. Alle combinazioni degli ingressi A,B,C (1,0,0), (1,0,1), (1,1,0) non interessa, invece, il valore dell'uscita che potrà essere indifferentemente 0 o 1. Il valore dell'uscita può quindi essere scelto in base ad altre considerazioni circuitali.

Reti logiche combinatorie reali

Nei paragrafi precedenti si sono analizzate reti logiche combinatorie ideali: ad una combinazione degli ingressi corrisponde una combinazione delle uscite; tuttavia non si è tenuto conto che nella realtà ogni porta logica ha bisogno di un

tempo di propagazione

tp del segnale tra i suoi ingressi e le sue uscite. Questo tempo, per quanto relativamente piccolo (si tratta di decine di ns) influenza l'uscita della rete che si comporta in moodo inaspettato. Il fenomeno peggiora all'aumentare dei livelli del circuito logico. Come mostrato in Figura 6 se si manda un segnale A ad un ingresso di una porta AND, e al secondo ingresso arriva il segnale A ma attraverso una porta NOT (A), ci si aspetta, per il teorema dei complementi, un'uscita identicamente nulla... invece non è così: a causa del ritardo di propagazione, quando A commuta da 0 a 1, A commuta in ritardo da 1 a 0 e, per qualche ns, i due ingressi sono entrambi a 1 e quindi l'uscita dell'AND è pure a 1 invece che nulla.

analisi reti
Figura 6

Alea statica dell'AND dovuta al ritardo di propagazione del NOT

Questo fenomeno viene detto alea statica (si ha per una tempo per quanto piccolo un segnale di uscita scorretto). Se il fenomeno prevede più commutazioni multiple dell'uscita corretto-scorretto-corretto-scorretto-corretto il fenomeno è detto alea dinamica. Le alee sono osservabili in circuiti logici ad alte frequenze, e per evitarle si mette una sincronizzazione dell'uscita (il che vuol dire che l'uscita ha senso solo dopo che è trascorso un dato intervallo di tempo dalla commutazione degli ingressi).