18 ott 20001 il livello logico livello architettonico livello logico livello fisico contatti,...
TRANSCRIPT
18 ott 2000 1
Il livello logico
Livello architettonico
Livello logico
Livello fisico
contatti,segnali ecircuiti
Funzioni,variabili,
espressioni
Processore,memoria, I/O
Ram,Registro,Contatore
Alu,Decoder
Multiplexer
18 ott 2000 2
Analisi e sintesi direti combinatorie
introduzione:porte logiche e
operatori logici
18 ott 2000 3
Introduzione• Nella prima settimana del corso abbiamo introdotto il modello di comportamento e di struttura delle
reti sequenziali (ad esempio il semaforo), e ne abbiamo descritto il funzionamento con il diagramma degli stati e la tabella di flusso
• Quindi ci siamo posti l’obiettivo di progettare una rete logica (cioè un sistema di elaborazione binario) che realizzasse il funzionamento descritto dalla t.d.f.
• A tal fine abbiamo codificato in binario gli stati interni, gli ingressi e le uscite della rete e abbiamo così potuto tradurre la tabella di flusso in tabella delle transizioni. La t.d.t. non è altro che un insieme di tabelle della verità che descrivono le funzioni combinatorie F e G (rispettivamente variabili di uscita e di stato futuro)
• Non resta ora che imparare a “fare la sintesi” cioè disegnare lo schema logico delle reti logiche combinatorie F e G assegnate con la tabella delle transizioni, dopodichè potremo completare il progetto della rete sequenziale disegnando i rami di retroazione sulla funzione G. A quel punto potremo verificare con il simulatore l’effettiva correttezza del nostro progetto
• Inoltre siamo in generale interessati a scoprire qual è il funzionamento di un rete sequenziale di cui conosciamo lo schema logico. Per prima cosa dobbiamo allora imparare “a fare l’analisi” cioè a scoprire la tabella della verità delle reti combinatorie F e G; solo a quel punto potremo puntare a disegnare il d.d.s. della rete e quindi a capirne il funzionamento
• Nei prossimi lucidi possiamo studieremo uno strumento matematico (l’algebra di commutazione) che ci consente di eseguire l’analisi e la sintesi di reti logiche combinatorie composte dagli operatori logici elementari AND, OR e NOT. Questi tre operatori costuituiscono un insieme di operatori funzionalmente completo: con essi cioè è possibile realizzare qualunque rete logica combinatoria.
Sin
tesi
Sin
tesi
An
alis
iA
nal
isi
18 ott 2000 4
Premessa fondamentale allo studio delle reti combinatorie: l’approssimazione del modello
• Il modello di comportamento delle reti logiche combinatorie mette in relazione le uscite con il valore degli ingressi nello stesso istante (F: I U)
• Nel modello quindi si ipotizza implicitamente che il ritardo introdotto dalle reti combinatorie sia nullo.
• Questa è un’approssimazione del vero comportamento dei circuiti elettronici che realizzano reti combinatorie; infatti tutti i circuiti reali introducono un ritardo, per quanto piccolo.
• Estinto il ritardo, però, il comportamento del circuito elettronico è esattamente quello “modellato” dalla definizione della macchina combinatoria (F: I U).
• Si può quindi affermare che il ritardo rappresenta un fenomeno transitorio, estinto il quale il modello della macchina combinatoria riflette il funzionamento del circuito elettronico
• Il funzionamento dopo il transitorio iniziale si chiama anche “funzionamento a regime”
18 ott 2000 5
Comportamento a regime e in transitorio dei circuiti combinatori
ingresso i
uscita u
comportamentoin
transitorio
comportamentoa
regime
I nuovi valori dei segnali di ingresso di una rete combinatoriadevono propagarsi all’interno della struttura prima diriuscire ad imporre al segnale d’uscita il valore che ad essi deve corrispondere. Ciò determina un comportamento in transitorio, che in generale sarà diverso da quello a regime.Il comportamento a regime è quello previsto dal modello.
18 ott 2000 6
Altra premessa allo studio delle reti combinatorie: le porte logiche e gli operatori elementari
Gate o porta logica - Struttura formata da alcuni interruttori singolarmente azionabili dall’esterno e caratterizzata da un segnaledi uscita il cui valore a regime dipende unicamente dai valoricontemporanei dei segnali di azionamento degli interruttori.
• Operatore logico elementare: rete logica combinatoria “primitiva” cioè considerata non decomponibile (vedi principio di decomposizione delle reti logiche)
• Gli operatori logici elementari vengono assegnati mediante la relazione ingresso/uscita e vengono rappresentati con simboli che li identificano.
Esempio: ecco i tre operatori logici elementari definiti nell’algebra di commutazione
Ciascuno di essi viene realizzato con porte logiche chiamate con lo stesso nome
L’operatore “or”
L’operatore “and”
L’operatore “not”
18 ott 2000 7
Esempio: il gate “not” elettronico e l’operatore logico “not”
Vi Vu
0 + E + E 0
I U
+ E
Vi
Vu
0 voltoppure+E volt
+E voltoppure0 volt
Questo è il gate
Se Vi= E allora
l’interruttore è chiuso
Questo è il gate
Se Vi= E allora
l’interruttore è chiuso
Con la codifica di Vi e Vu si ottiene la tabella della verità dell’operatore logico il quale agirà su variabili binarie
Con la codifica di Vi e Vu si ottiene la tabella della verità dell’operatore logico il quale agirà su variabili binarie
I U
0 1 1 0
Questo è l’operatore logico che useremo nei nostri progetti
Questo è l’operatore logico che useremo nei nostri progetti
18 ott 2000 8
Velocità di commutazione:il ritardo del Not elettronico
causa: Vi
tempo
alta
bassa
effetto: Vu
tempo
alta
bassa
+ E
Vi
Vu
T1 T2
18 ott 2000 9
Il ritardo sui fronti
• Il ritardo sui fronti di salita (LH) e di discesa (HL) è
presente in ogni tipo di gate e varia in modo notevole
da dispositivo a dispositivo.
• A causa della marcata differenza dei due valori, la
durata di una situazione H o L in ingresso ad un gate
è diversa dalla corrispondente situazione in uscita.
• A causa della “inerzia” del gate, un segnale di
ingresso “impulsivo” e “troppo stretto” può non
essere avvertito in uscita.
18 ott 2000 10
Il ritardo di propagazione
• Ritardo puro
tp
tp
• Ritardo inerziale
Il modello del ritardo inerziale è il più vicino alla realtàIl ritardo puro (o matematico) è però più facile da simulare
t < tp
nessuneffetto
ritardo di propagazione: tp = max (LH, HL)
18 ott 2000 11
gate “reale” (o quasi)
ritardo dipropagazione
z
Un modello più realistico per il gate
x1
x2
xn
Simbolo graficodell’operatore logico
o gate “ideale”
Z
Z = F(x1, x2, .., xn) z(t) = Z(t-tp)
N.B. - I Costruttori di famiglie logiche forniscono i valori minimo, nominale e massimo di t p
• L’operatore logico è una astrazione: esso descrive il funzionamento del gate ideale, a ritardo nullo; descrive cioè il funzionamento del gate a regime
• Il gate ha dunque un comportamento sequenziale: l’uscita all’istante t dipende dal valore degli ingressi all’istante t-tp!
• L’operatore logico è una astrazione: esso descrive il funzionamento del gate ideale, a ritardo nullo; descrive cioè il funzionamento del gate a regime
• Il gate ha dunque un comportamento sequenziale: l’uscita all’istante t dipende dal valore degli ingressi all’istante t-tp!
18 ott 2000 12
La relazione ingresso/uscita e il simbolo grafico degli operatori logici AND e OR
I1 I2 U
1 1 1
0 0 0
1 0 0
0 1 0Operatore logico AND
Tabella della verità
Simbolo grafico
I1 I2 U
1 1 1
0 0 0
1 0 1
0 1 1Operatore logico OR
Tabella della verità
Simbolo grafico
18 ott 2000 13
La relazione ingresso/uscita e il simbolo grafico dell’operatore NOT
I U
1 0
0 1 Operatore logico NOT
Tabella della verità
Simbolo grafico
• In una diapositiva precedente abbiamo visto come può essere fatto un gate che realizza la funzione dell’operatore logico NOT con un interruttore elettronico
• Nei corsi di elettronica digitale si studieranno altre realizzazioni dello stesso gate, nonché diverse realizzazioni di gate che realizzano le funzioni degli operatori logici AND e OR
• Noi studieremo un metodo di analisi e sintesi di reti combinatorie composte da operatori logici AND OR e NOT perché questi operatori possono essere realizzati con porte logiche o gate elettronici, e perché, come vedremo, con questi operatori è possibile realizzare qualunque rete combinatoria (si dice che i tre operatori AND OR e NOT costituiscono un insieme di operatori logici funzionalmente completo)
• Nel prossimo lucido viene mostrato concettualmente come un AND e un OR possono essere realizzati utilizzando interruttori
18 ott 2000 14
Contatti in serie
I1 I2
A B
I1 I2 ABaperto aperto apertoaperto chiuso apertochiuso aperto apertochiuso chiuso chiuso
I gate “and” e “or” realizzati con interruttori in serie
{aperto = 1, chiuso = 0}
I1 I2 AB0 0 01 0 10 1 11 1 1
I1 I2 AB0 0 01 0 00 1 01 1 1
{aperto = 0, chiuso = 1}
Il gate “or”Il gate “and”
Due differentiastrazioni!
18 ott 2000 15
I1 I2 ABaperto aperto apertoaperto chiuso chiusochiuso aperto chiusochiuso chiuso chiuso
I gate “and” e “or” realizzati con interruttori in parallelo
{aperto = 0, chiuso = 1}
I1 I2 AB0 0 01 0 10 1 11 1 1
{aperto = 1, chiuso = 0}
I1 I2 AB0 0 01 0 00 1 01 1 1
Il gate “or” Il gate “and”
Due differentiastrazioni!
Contatti in parallelo
I1
I2
A B
18 ott 2000 16
Considerazioni sui due lucidi precedenti
• Nelle due precedenti diapositive abbiamo mostrato concettualmente come un AND e un OR possono essere realizzati utilizzando interruttori
• Si noti che la funzione logica realizzata dipende dalla codifica: un AND in logica positiva è un OR in logica negativa e viceversa
• questo fatto è una conseguenza di un principio detto di “dualità” che vedremo successivamente
18 ott 2000 17
Analisi e sintesi direti combinatorie
algebra della commutazione
18 ott 2000 18
Introduzione• Nelle prossime diapositive studieremo uno strumento matematico
(l’algebra di commutazione) che ci consente di eseguire l’analisi e la sintesi di reti logiche combinatorie composte dagli operatori logici elementari AND, OR e NOT.
• Questi tre operatori costuituiscono un insieme di operatori funzionalmente completo: con essi cioè è possibile realizzare qualunque rete logica combinatoria
• Trattandosi di operatori logici combinatori essi verranno considerati operatori con ritardo nullo
• Quando vorremo tener conto del ritardo introdotto da un operatore utilizzeremo il modello della diapositiva n. 11:disegneremo il ritardo con un blocco specifico sull’uscita dell’operatore (oppure indicheremo il ritardo nell’operatore stesso)
Operatore logicocombinatorio AND
p p
AND con ritardo p
18 ott 2000 19
Comportamento & Struttura di una rete logica combinatoria
sintesi
analisi
0 0 0 ……..01 0 0 ……..00 1 0 ……..01 1 0 ……..00 0 1 ……..0
0 1 1 ……..11 1 1 ……..1
0 oppure 10 oppure 10 oppure 10 oppure 10 oppure 1
0 oppure 10 oppure 1
x1x2x3 … xn z = F(x1,.., xn)
Tabella della verità
x1
x2
x3
xn
z
Gk
G3G2
G1
Rete logica combinatoria
?
Nell’algebra di comutazione i blocchi Gi
sono AND OR e NOT
Nell’algebra di comutazione i blocchi Gi
sono AND OR e NOT
18 ott 2000 20
Algebra della commutazione
L’algebra viene definita assegnando:• gli operatori dell’algebra• i simboli su cui gli operatori agiscono• i postulati che definiscono il comportamento degli
operatori
È un sistema matematico che consente di eseguire l’analisi e la sintesi di reti logiche combinatorie. L’algebra della commutazione consente infatti di passare dallo schema logico alla tabella della verità e viceversa
Studiare l’algebra di commutazione significa studiare le proprietà dei suoi operatori al fine di imparare a manipolare, costruire e analizzare espressioni
C’è una corrispondenza biunivoca tra gli operatori dell’algebra di commutazione e gli operatori logici elementari AND OR e NOT
18 ott 2000 21
Definizione dei simboli e delle operazioni dell’algebra della commutazione
1) Operazioni: somma logica (+) (4 postulati, diap. 22)
prodotto logico (.) (4 postulati, diap. 23)
complementazione (’) (2 postulati, diap.22)
Le operazioni dell’algebra agiscono su costanti e variabili
2) Costanti: 0, 1
3) Variabili: simboli sostituibili o con 0 o con 1 (segue)
L’algebra della commutazione è:• un’insieme di 3 operazioni• un insieme di 2 simboli (0 e 1): questo insieme è l’alfabeto binario su cui le operazioni dell’algebra agiscono
18 ott 2000 22
Definizione delle tre operazioni dell’algebra di commutazione e dei corrispondenti operatori logici
Postulati: Funzione: x z Realizzazione: 0’ = 1 0 1 z1’ = 0 1 0 x
Postulati: Funzione: x y z Realizzazione: 0 + 0 = 0 0 0 00 + 1 = 1 0 1 1 x1 + 0 = 1 1 0 1 z1 + 1 = 1 1 1 1 y
(segue)
Complementazione : z = x’ , z =x , z = x
Somma logica: z = x + y , z = x y
Operatore NOTOperatore NOT
Operatore OROperatore OR
18 ott 2000 23
Postulati: Funzione: x y z Realizzazione: 0 . 0 = 0 0 0 00 . 1 = 0 0 1 0 x1 . 0 = 0 1 0 0 z1 . 1 = 1 1 1 1 y
(segue)
Prodotto logico: z = x . y , z = xy , z = x y
Operatore logico ANDOperatore logico AND
C’è una corrispondenza biunivoca tra gli operatori logici NOT, OR, AND e le tre operazioni dell’algebra complementazione, somma logica e prodotto logico (rispettivamente rappresentate con i caratteri ‘ + . )
C’è una corrispondenza biunivoca tra ingressi dell’operatore logico e operandi dell’operazione algebrica
C’è una corrispondenza biunivoca tra l’uscita dell’operatore logico e il risultato dell’operazione algebrica
18 ott 2000 24
Giustificazione delle prossime diapositive• L’algebra della commutazione è il ponte tra la struttura della rete combinatoria e la
descrizione del suo comportamento (cioè della relazione tra ingressi e uscita)
• rappresenteremo la struttura con il suo schema logico
• rappresenteremo la relazione ingressi/uscita (cioè il comportamento) sotto forma di funzione binaria di variabili binarie
• Per fare l’analisi assoceremo a ogni schema logico una espressione dell’algebra e di lì passeremo alla funzione con un procedimento detto “valutazione dell’espressione”
• Per fare la sintesi impareremo a determinare una espressione dell’algebra che “descriva la funzione” da sintetizzare e quindi impareremo a disegnare lo schema logico corrispondente all’espressione trovata
• Dobbiamo quindi definire i seguenti oggetti e le relative proprietà:
– l’espressione dell’algebra
– la funzione binaria di variabili binarie
– lo schema logico
• dobbiamo inoltre:– imparare a passare dallo schema logico all’espressione e viceversa
– studiare il procedimento di valutazione delle espressioni
– imparare a descrivere le funzioni (ad esempio con la tabella della verità)
Sin
tesi
Sin
tesi
An
alis
iA
nal
isi
18 ott 2000 25
Definizione di espressione dell’algebra di commutazione
Esempi: a+(b.c) a + bc
a’.b (a+b)’ a’b + 0 + ab’• L’operazione di prodotto è prioritaria rispetto alla somma e non è obbligatorio
racchiuderla tra parentesi. • La notazione AB indica A.B
• Le parentesi sono obbligatorie solo se omettendole cambia l’ordine in cui le operazioni sono applicate agli operandi
Espressione: - Stringa finita di costanti, variabili, operatori e parentesi, formata in accordo con le seguenti regole:
1) 0 e 1 sono espressioni2) una variabile è una espressione3) se A è un’espressione, lo sono anche (A’) e A’4) se A, B sono espressioni, lo sono anche (A+B), (A.B)
18 ott 2000 26
Definizione di Funzione completamente specificata
Una Funzione completamente specificata di n variabili binarie z=F(x1, x2, …, xn) è l’insieme di tutte le 2n coppie ordinate x,z x Bn, z B formate da una configurazione di valori delle n variabili indipendenti xi e dal corrispondente valore della variabile dipendente z.
Con la tabella della veritàCon la tabella della verità con le mappe di Karnaugh con le mappe di Karnaugh
Una funzione può essere descritta in diversi modi, come, ad esempio:
Due rappresentazioni equivalenti della stessa funzione z = F(x2, x1, x0)
X2 X1 X0 Z
0 0 0 00 0 1 10 1 0 00 1 1 11 0 0 01 0 1 01 1 0 11 1 1 1
0
1
00 01 11 10x2
x1 x0
0 1 1 0
0 0 1 1z
18 ott 2000 27
Descrizione di una funzione mediante Tabella della verità
F(x1, x2, …, xn)0 0 0 ……..01 0 0 ……..00 1 0 ……..01 1 0 ……..00 0 1 ……..0
0 1 1 ……..11 1 1 ……..1
x1, x2, …, xn
0 oppure 10 oppure 10 oppure 10 oppure 10 oppure 1
0 oppure 10 oppure 1
n+1 colonne
2n righe
La Tabella della verità è una - Descrizione tabellare di una funzione di variabili binarie
Quante colonne ha la t.d.v. di una funzione di 4variabili?
Quante righe ha la t.d.v. di una funzione di 8 variabili?
Quante colonne ha la t.d.v. di una funzione di 4variabili?
Quante righe ha la t.d.v. di una funzione di 8 variabili?
18 ott 2000 28
Descrizione di una funzione mediante Mappe di Karnaugh
Mappa di Karnaugh - Rappresentazione bidimensionale della tabella della verità di una funzione di 2,3,4 variabili, i cui valori sono stati elencati sui bordi in maniera che due configurazioni consecutive siano a distanza 1, differiscano cioè per il valore di un solo bit.
Esempi:
0 101
Somma logica
ab
0 11 1
00 01 11 10000111
10
Parità pari su4 variabili
abcd
0 11 0
0 11 0
0 11 0
0 11 0
18 ott 2000 29
Importante proprietà delle mappe di Karnaugh: Adiacenza tra celle
Coppia di celle adiacenti su mappe di Karnaugh - Due celle lecui coordinate differiscono per un solo bit. In una mappa che descrive una funzione di n variabili ogni cella ha n celle adiacenti.
Regola grafica per l’adiacenza - Sono adiacenti celle aventi un lato
in comune o poste all’estremità di una stessa riga o colonna.
0 101
cella scelta come esempio
celle adiacenti
2 variabili
ab
00 01 11 1001
3 variabili
abc
00 01 11 10000111
10
4 variabili
abcd
18 ott 2000 30
Estensione delle mappe a 5 e a 6 variabili
00 01 11 10
00
01
11
10
bcde
a=0
bc 00 01 11 10
00
0111
10
de
a=1
5 variabili
00 01 11 10
00
01
11
10
cdef
ab=00
cd 00 01 11 10
00
0111
10
ef
ab =01
00 01 11 10
00
01
11
10
cdef
ab =10
cd 00 01 11 10
00
0111
10
ef
ab=11
6 variabili
Ulteriore regola di adiacenza - Sono adiacenti celle che occupano la stessa posizione in sotto-mappe
adiacenti.
18 ott 2000 31
Check point
• Cosa è una funzione completamente specificata e come possiamo
rappresentarla?
• Cosa è una espressione dell’algebra di commutazione e quali
operatori può includere?
• Si risponda alle due domande precedenti con alcuni esempi.
• Cosa è la sintesi di una rete combinatoria?
• Cosa è l’analisi di una rete combinatoria?
• Come si passa da un’espressione alla funzione? Col procedimento
di valutazione che vediamo nelle prossime diapositive
• Come si passa dalla funzione all’espressione? Con i procedimenti
di sintesi che vedremo più avanti
18 ott 2000 32
Valutazione di una espressione in un punto
Sia data una espressione E in cui compaiono n variabili e sia data una
configurazione binaria di queste n variabili
Valutare l’espressione E nella configurazione binaria data (cioè in un particolare
punto del suo dominio di definizione) significa eseguire i seguenti passi:
1 - sostituire ad ogni variabile il valore che ha nella configurazione data
2 - partendo dalle parentesi più interne sostituire ogni
operazione con il corrispondente risultato calcolato applicando i postulati
dell’algebra, fino ad ottenere o la costante 0 o la costante 1.
Esempio: Valutiamo E(a,b,c) = a+(b.c) con a=0, b=1, c=0
0+(1.0)
= 0+0 = 0
N° di valutazioni - Una espressione di n variabili può essere valutata su 2n configurazioni binarie diverse
18 ott 2000 33
Regole di priorità nella valutazione
• Si ricordi che, in assenza di parentesi valgono le seguenti regole:
– L’operazione di complementazione è prioritaria rispetto a prodotto e somma
– L’operazione di prodotto è prioritaria rispetto alla somma e non è obbligatorio racchiuderla tra parentesi.
18 ott 2000 34
Passaggio dalla espressione alla funzione
• Il passaggio dalla espressione alla funzione si chiama anche “valutazione della espressione nel suo dominio”
• Valutare una espressione di n variabili nel suo dominio Bn significa costruire una tabella della verità di 2n righe (una per ogni configurazione delle n variabili) e n+1 colonne.
• Ogni riga conterrà nelle n colonne più a sinistra la configurazione binaria associata alla riga stessa
• Nella colonna più a destra di ogni riga si deve invece riportare la costante determinata valutando l’espressione nel punto individuato dalla configurazione binaria indicata nelle n colonne più a sinistra della riga stessa
• Con la valutazione di una espressione è possibile ottenere la funzione associata all’espressione data
18 ott 2000 35
Dall’espressione alla funzione: esempio
La valutazione di una espressione E(x0, x2, …, xn-1) nei 2n punti del suo dominio dà origine a 2n coppie x,z x,z x Bn, z B
Esempio: E(a,b,c) = a+(b.c) a b c | E
E(0,0,0) = 0+(0.0) = 0 0 0 0 | 0E(0,0,1) = 0+(0.1) = 0 0 0 1 | 0E(0,1,0) = 0+(1.0) = 0 0 1 0 | 0E(0,1,1) = 0+(1.1) = 1 0 1 1 | 1E(1,0,0) = 1+(0.0) = 1 1 0 0 | 1E(1,0,1) = 1+(0.1) = 1 1 0 1 | 1E(1,1,0) = 1+(1.0) = 1 1 1 0 | 1E(1,1,1) = 1+(1.1) = 1 1 1 1 | 1
T1) Ogni espressione descrive una e una sola funzione
Tabella della verità della
funzione associata all’espressione data
Tabella della verità della
funzione associata all’espressione data
18 ott 2000 36
Dall’espressione alla funzione: altri esempi
T2) Una funzione può essere descritta da infinite espressioni
EsercizioVerificare che le valutazioni di
E1=(a.b’) + (b.c) + (a.b)
E2=(a+b).(a+c)
sono identiche a quelle di E = a+(b.c)
a b c E E1 E20 0 0 00 0 1 00 1 0 00 1 1 11 0 0 11 0 1 11 1 0 11 1 1 1
18 ott 2000 37
Analisi di una rete logica combinatoria: dalla Struttura al Comportamento
analisi
Rete logica combinatoria
0 0 0 ……..01 0 0 ……..00 1 0 ……..01 1 0 ……..00 0 1 ……..0
0 1 1 ……..11 1 1 ……..1
0 oppure 10 oppure 10 oppure 10 oppure 10 oppure 1
0 oppure 10 oppure 1
x1x2x3 … xn z = F(x1,.., xn)
Avendo studiato come si passa dall’espressione alla funzione, dobbiamo ora esaminare il passaggio dallo schema logico della rete combinatoria all’espressione
Avendo studiato come si passa dall’espressione alla funzione, dobbiamo ora esaminare il passaggio dallo schema logico della rete combinatoria all’espressione
Tabella della verità
EspressioneValutazione Valutazione
x1
x2
x3
xn
z
Gk
G3G2
G1
Schema logico: insieme di operatori AND, OR, NOTinterconnessi in serie e parallelo
18 ott 2000 38
Dallo schema logico all’espressione
Per individuare l’espressione corrispondente ad un dato schemasi parte dai gate che elaborano solo segnali di ingresso, si assegnaun simbolo alla loro uscita e si annota a parte l’espressione. Si procede in modo analogo con i gate i cui ingressi sono già statidenominati. Una volta individuata l’espressione del gate di uscita, vi si sostituiscono tutti i simboli con le corrispondenti espressioni.
z = e + f = (c.b) + (a.d) = a’b + a.b’
a
b
c = a’
d = b’
e = (c . b)
f = (a . d) Qual è la tdv di questa rete?
Se ne descriva a parole il comportamento
Qual è la tdv di questa rete?
Se ne descriva a parole il comportamento
Questa rete realizza un importante operatore logico detto
OR ESCLUSIVO o XOR (Exclusive Or)
Questa rete realizza un importante operatore logico detto
OR ESCLUSIVO o XOR (Exclusive Or)
18 ott 2000 39
Check point
• Come si esegue l’analisi di uno schema logico composto da AND, OR e NOT interconnessi?
• Qual è il risultato dell’analisi?
• Esistono altre tecniche di analisi oltre a quella basata sulla valutazione delle espressioni? Sì, le vedremo in alcune diapositive successive
• Quante espressioni sono associate a uno schema logico?
• Quante funzioni sono associate a una espressione?
• Quante espressioni sono associate a una funzione?
18 ott 2000 40
Esercizi
Si tracci la tabella della verità e lo schema logico corrispondentiall’espressione:
E(D, C,B,A) = D.(C + B)
Si descriva a parole la funzione nel caso in cui i bit D, C, B, Arappresentino i coefficienti del numero D.23+ C.22+ B.21+ A.20
•Si disegni lo schema logico dell’espressione: ac + bc’
•La rete così ottenuta si chiama multiplexer a due vie
•Si analizzi questa rete (se ne tracci la mappa) e se ne descriva a parole il funzionamento
•Si verifichi con il simulatore la correttezza della soluzione trovata
18 ott 2000 41
Check point sull’analisi delle reti combinatorie
• Abbiamo visto un metodo di analisi basato sulla valutazione delle espressioni
associate allo schema logico assegnato.
• Questo metodo può diventa impraticabile quando l’espressione è complessa
• In questo caso si possono utilizzare in generale due metodi alternativi:
– la semplificazione dell’espressione mediante applicazione di alcune
proprietà dell’algebra della commutazione
– la semplificazione sistematica dell’espressione mediante applicazione del
teorema di espansione
• Nelle prossime diapositive illustreremo alcune proprietà (o teoremi)
dell’algebra di commutazione e mostreremo qualche esempio del primio
metodo
• Il secondo metodo verrà presentato successivamente
18 ott 2000 42
Funzionidi
n variabili
Equivalenza tra espressioni
Espressioni equivalenti - Due espressioni E1, E2 sono equivalenti, e si scrive E1 = E2 , se e solo se descrivono la stessa funzione.
Espressionidi
n variabili
F
Espressionidi F
•Se si vuole analizzare una espressione conviene cercare tra le espressioni equivalenti alla espressione data, quelle più facili da analizzare! Questa ricerca può essere effettuta applicando le equivalenze indicate nelle prossime due diapositive
18 ott 2000 43
Equivalenze notevolidell’algebra di commutazione
Proprietà della somma e del prodotto logico:
T4) commutativa x + y = y + xx . y = y . x
T5) associativa (x + y) + z = x + y + z
(x . y) . z = x . y. z T6) distributiva (x . y) + (x . z) = x . (y + z)
(x + y) . (x + z) = x + (y . z)T7) idempotenza x + x = x
x . x = xT8) identità x + 0 = x
x . 1 = xT9) limite x + 1 = 1
x . 0 = 0
18 ott 2000 44
Altre equivalenze notevolidell’algebra di commutazione
Proprietà della complementazione: T10) involuzione (x ’) ’ = x
T11) limitazione x + x ’ = 1 x . x ’ = 0
T12) combinazione xy + xy’ = x (x+y).(x+y’) = x
T13) Ia legge di De Morgan (x + y) ’ = x ’ . y ’ Iia legge di De Morgan (x . y) ’ = x ’ + y ’
T14) consenso xy + x’z + yz = xy + x’z (x+y).(x’+z).(y+z) = (x+y).(x’+z)
18 ott 2000 45
Dualità
Proprietà della dualità:(Ed)d = EEd = E’(x’, y’, z’, ...)Se E1 = E2 allora (E1 )d = (E2 )d
Espressioni duali - Data l’espressione E(x, y, z, .., 1, 0, +, ., ’) è detta duale di E e denotata con Ed l’espressione che si ottienescambiando tra loro 0,1 e .,+ Ed = E(x, y, z, .., 0, 1, .,+, ’).Esempio: A+B e A.B (nell’esempio si scambiano solo gli operatori . e +)
N.B. - A causa delle due possibili codifiche dei valori di un segnale binario, il comportamento di ogni struttura di interruttori azionabili indipendentemente uno dall’altro ha due descrizioni algebriche, una duale dell’altra.
•La terza proprietà dice che se due espressioni sono equivalenti, lo sono anche le rispettive duali. Si verifichi questa proprietà nelle equivalenze notevoli dei lucidi precedenti
18 ott 2000 46
Qualche commento sui teoremi dell’algebra di commutazione
• La proprietà associativa per l’OR si può anche scrivere come segue:
• (x + y) + z = x + (y + z) = (z + x) + y = x + y + z
• Questa proprietà ci dice che combinando in qualunque modo tre ingressi con due OR in cascata si ottengono sempre espressioni equivalenti; la funzione che si ottiene vale 1 se e solo se almeno un ingresso vale 1. Possiamo chiamare questa funzione “OR a tre ingressi”; è possibile nello stesso modo definire l’OR a n ingressi
• si verifichi la proprietà associativa con il simulatore
• chiamiamo NOR l’operatore composto da un OR e un NOT in cascata; si disegni la tdv di questo operatore composto e si dimostri che per questo operatore non vale la proprietà
• associativa
• Per la terza proprietà sulla dualità quello che abbiamo detto per l’OR vale anche per l’AND e quello che non vale per il NOR non vale nemmeno per l’operatore composto dalla serie AND-NOT (il NAND)
• I teoremi di De Morgan indicano l’equivalenza tra NOR e AND degli ingressi complementati e l’equivalenza tra NAND e OR degli ingressi complementati
• Il teorema del consenso indica due diversi modi per realizzare la funzione “multiplexer a due vie” già vista in un esempio precedente
18 ott 2000 47
Qualche esercizio di analisi da svolgere utilizzando i teoremi dell’algebra della commutazione
• Si esegua l’analisi delle seguenti espressioni:
• xy + x’z + xyz + yz
• (((x+y)’+(z+w)’)’+1)’
• ((x+y)’+(z+y)’)’
• per l’ultimo esercizio si consiglia di eseguire le semplificazioni a
partire dallo schema logico
• Per il primo si suggerisce di provare sia con i teoremi, sia tracciando
direttamente la mappa di Karnaugh
18 ott 2000 48
Check point
• Ora siamo in grado di eseguire l’analisi delle reti combinatorie realizzate con
gli operatori dell’algebra di commutazione. Il procedimento si basa sulla
semplificazione delle espressioni (ottenuta applicando intuitivamente i
teoremi dell’algebra) e sulla relativa valutazione.
• Resta ancora da vedere una tecnica di semplificazione sistematica
dell’espressione basata sull’applicazione del teorema di espansione già
annunciato e che dobbiamo ancora studiare
• Prima vogliamo affrontare il problema della sintesi e vogliamo inoltre
dimostrare che gli operatori dell’algebra sono un insieme funzionalmente
completo (il che significa che con AND, OR e NOT è possibile realizzare
qualunque tabella della verità)
18 ott 2000 49
Il problema della sintesi
Espressioni equivalenti Schemi logici
Individuazione dell’espressione che fornisce lo schema “migliore” per la realizzazione della funzione assegnata.
Funzione assegnata
Massima velocità
Massima flessibilità Minima complessità
18 ott 2000 50
Funzioni non completamente specificate
Le configurazioni di valori delle variabili al di fuori del dominio sono dette condizioni di indifferenza e sono indicate nella tdv con il simbolo “-” nella colonna ove va indicato il valore della funzione.
6) Funzioni incomplete - Funzioni di n variabili il cui dominio è un sottoinsieme di Bn
ENCODER a 3 ingressix2 x1 x0 z1 z0
0 0 0 0 01 0 0 1 10 1 0 1 00 0 1 0 1N.B. le altre configurazionisono per ipotesi impossibili
x2 x1 x0 z1 z0
0 0 0 0 01 0 0 1 10 1 0 1 00 0 1 0 11 1 0 - -1 0 1 - -0 1 1 - -1 1 1 - -
•Alcune configurazionidi ingresso possono essere impossibili, oppure per certe configurazioni di ingresso può non interessare il valore dell’uscita. In questi casi la funzione è incompleta o “non completamente specificata”
•Alcune configurazionidi ingresso possono essere impossibili, oppure per certe configurazioni di ingresso può non interessare il valore dell’uscita. In questi casi la funzione è incompleta o “non completamente specificata”
18 ott 2000 51
Espressioni di funzioni incomplete
Espressioni equivalenti di funzioni incomplete - Espressioni che forniscono eguale valutazione limitatamente al dominio di una funzione incompleta data sono dette equivalenti rispetto ad essa
Espressioni per l’ENCODER:
z1 = x2 x1’x0’+ x2’ x1 x0’ z0 = x2 x1’x0’+ x2’ x1’x0
x2 x1 x0 z1 z0
0 0 0 0 0 1 0 0 1 1 0 1 0 1 0 0 0 1 0 1 1 1 0 0 0 1 0 1 0 00 1 1 0 0 1 1 1 0 0
u1 = x2 + x1
u0 = x2 + x0
u1 u0
0 01 11 00 11 11 1 1 11 1
Come funziona un encoder?Come funziona un encoder?
18 ott 2000 52
Espressioni normaliEspressione normale - Espressione del tipo “somma di prodotti logici” (SP) o “prodotto di somme logiche” (PS). Lo schema logico corrispondente ad una espressione normalecontiene al più due gate in cascata (tre, se non sono disponibili anche i complementi dei segnali di ingresso).
Nell’ambito delle espressioni normali hanno particolare rilievo: le espressioni canoniche e le espressioni generali, che individuano circuiti utili nella sintesi di qualsiasi funzione; le espressioni minime, che consentono di realizzare una funzione con il minimo numero di gate e di collegamenti.
Quando l’interesse preminente è la velocità di risposta, l’espressione “migliore” è quella normale !
18 ott 2000 53
c’a’b’aba’bab’c
Velocità e lunghezza dei percorsi
= a’.b’.c’ +a.b.c’+a’.b. c +a.b’.c
Questa reteè più veloce
(a’.b’+a.b).c’+(a’.b+a.b’).c
a’b’c’abc’a’bcab’c
tp
tptp
tp
tp
tp
18 ott 2000 54
Stima della durata del transitorio (metodo del caso peggiore)
I1
I0
A
U
I1
I0
A
U
I1
I0
A
U
18 ott 2000 55
Sintesi di reti combinatorie mediante AND, OR, NOT
• Come si esegue la sintesi di una rete combinatoria di cui è data la
tabella della verità? Si può utilizzare l’algebra di commutazione
• In tal caso si passa dalla tdv alla espressione e, successivamente, dalla
espressione allo schema logico
• Nelle prossime diapositive verrà illustrato il passaggio
dall’espressione allo schema logico. Il problema della determinazione
di una espressione associata alla tdv verrà esaminato successivamente
18 ott 2000 56
Dall’espressione allo schema logico
T3) Ogni espressione descrive una struttura formata da gate AND, OR, NOT connessi in serie e/o in parallelo (schema logico)
Per individuare lo schema logico corrispondente ad una dataespressione si parte dalle parentesi più interne e si traccia ilsimbolo del gate corrispondente all’operazione, collegandonegli ingressi ai segnali esterni. Si procede in modo analogo con le altre parentesi, considerando via via come ingressi dei nuovi gate anche le uscite di quelli già tracciati.
a+(b.c) bca
18 ott 2000 57
Dall’espressione allo schema logico:altro esempio
c(((a)’ + b) . c)’ b
a
N.B. - Lo schema logico di una espressione non può avere segnali in retroazione (l’uscita di ogni gate dipende da segnali d’ingresso e/o da uscite di gate disposti “a monte”).
18 ott 2000 58
• Sintesi con espressionicanoniche
• Sintesi conDECODERe OR
18 ott 2000 59
Espressioni canoniche
T16) Espressione canonica SP (Somma di Prodotti)
Ia forma canonica - Ogni funzione può essere descritta da una somma di tanti prodotti logici quante sono le configurazioni per cui vale 1. In ciascun prodotto, o mintermine, appaiono tutte le variabili, in forma o vera o complementata a seconda che nella configurazione corrispondente presentino valore 1 o valore 0.
T17) Espressione canonica PS (Prodotto di Somme)
IIa forma canonica - Ogni funzione può essere descritta da un prodotto di tante somme logiche quante sono le configurazioni per cui vale 0. In ciascuna somma, o maxtermine, appaiono tutte le variabili, in forma o vera o complementata a seconda che nella configurazione corrispondente presentino valore 0 o valore 1.
18 ott 2000 60
a b ab 0 0 1 0 1 1 1 0 0 1 1 1
Espressioni canoniche della funzione “a implica b”
IIa forma canonica:F(a,b) = a’ + b
Ia forma canonica:F(a,b) = a’ . b’ + a’ . b + a . b
Verifica della equivalenza per manipolazione algebrica:F(a,b) = a’ . b’ + a’ . b + a . b
= a’ . (b’ + b) + a . b = a’.1 + a . b = a’ + a . b = a’ + a . b + a’ . b = a’ + b
18 ott 2000 61
Sintesi canonica dell’operatore EX-OR
x1 x0 x0x1
0 0 0 0 1 1 1 0 1 1 1 0
1 sex0=0 e x1=1oppure sex0=1 e x1=00 negli altri due casi
x0 x1
1 se e solo sex0=0 e x1=1
1 se e solo sex0=1 e x1=0
x0 x1
18 ott 2000 62
Sintesi di un ENCODER a tre ingressi
z1 = x2 x1’x0’+ x2’ x1 x0’ z0 = x2 x1’x0’+ x2’ x1’x0
x2 x1 x0 z1 z0
0 0 0 0 01 0 0 1 10 1 0 1 00 0 1 0 1N.B. le altre configurazioni
sono per ipotesi impossibili
x2 x1 x0
z1
z0
18 ott 2000 63
Addizione “colonna per colonna” ...
an-1 ai a1 a0
bn-1 bi b1 b0
+
rn-1 ri r1 0rn
sn-1 si s1 s0sn
(S)2 = (A)2 + (B)2 r a b R S
0 0 0 0 00 0 1 0 10 1 0 0 10 1 1 1 01 0 0 0 11 0 1 1 01 1 0 1 01 1 1 1 1
18 ott 2000 64
… e sintesi canonica del Full AdderS = r’. a’. b + r’. a . b’ + r . a’. b’ + r. a . bR = r’. a . b + r . a’. b + r . a . b’ + r . a . b
r’ r a’ a b’ b
S
R
18 ott 2000 65
Sintesi della trascodifica da binario a 1 su N
Esempio: Trascodifica 2:4
B A U0 U1 U2 U3
0 0 1 0 0 00 1 0 1 0 01 0 0 0 1 01 1 0 0 0 1
AB
U0 = B’. A’
U1 = B’. A
U2 = B . A’
U3 = B . A
18 ott 2000 66
SN74154 U0
(MSI) U1
U2
U3
U4
U5
U6
U7
U8
U9
U10
EN U11
A U12
B U13
C U14
D U15
SN74138 U0
(MSI) U1
U2
U3
EN U4
A U5
B U6
C U7
Il circuito integrato DECODER
Decoder o Rete di decodifica - Rete logica combinatoria che realizza i 2n distinti prodotti di n variabili (n = 2,3,4)
SN74139 U0
(MSI) U1
EN U2
A U3
BAB
U0
U1
U2
U3
Quando EN=1, vale 1 l’uscita il cui pedice, in decimale, corrisponde al numero binario in ingresso (A bit di minor peso)
EN
N.B. - In realtàle uscite sonoattive “basse”
18 ott 2000 67
Composizione modulare di Decoder
N.B. il prodotto è associativo
DEC2:4
1CD
U0
U1
U2
U3
DEC2:4
DEC2:4
DEC2:4
DEC2:4A
B
U0
U1
U2
U3
U0
U1
U2
U3U0
U1
U2
U3
U0
U1
U2
U3
U0
U1
U2
U3
U4
U5
U6
U7
U8
U9
U10
U11
U12
U13
U14
U15
18 ott 2000 68
Notazioni simboliche per le espressioni canoniche
r a b R S
0 0 0 0 00 0 1 0 10 1 0 0 10 1 1 1 01 0 0 0 11 0 1 1 01 1 0 1 01 1 1 1 1
i
01234567
S (r,a,b) = 3 m (1,2,4,7) S (r,a,b) = 3 M (0,3,5,6)
R (r,a,b) = 3 m (3,5,6,7)R (r,a,b) = 3 M (0,1,2,4)
• m(i) : mintermine di n bit che assume il valore 1 solo per la n-pla di valori delle variabili corrispondente all’indice i.
• M(i) : maxtermine di n bit che assume il valore 0 solo per la n-pla di valori delle variabili corrispondente all’indice i.
18 ott 2000 69
Sintesi del Full Adder con Decoder e Or
S = 3 m (1,2,4,7) R = 3 m (3,5,6,7)
’138 U0
U1
U2
U3
U4
A U5
B U6
C U7
bar
RS
N.B - Le uscite di un decoder TTL hanno fan-out >10. Come si modifica lo schema sesi prende atto che le uscite sonoattive basse?