Capitolo 2 - Algebra booleana
|
|
|
- Domenica Lanza
- 10 anni fa
- Просмотров:
Транскрипт
1 ppunti di Elettronica Digitale Capitolo - lgebra booleana Introduzione... Postulati di Huntington... Reti di interruttori... Esempi di algebra booleana... 4 Teoremi ondamentali dell'algebra booleana... Deinizioni varie... 9 Forme canoniche... Porte logiche... Esempio... 4 Osservazione: sistemi unzionalmente completi... Funzioni booleane di variabili booleane... Funzioni NND e NOR... 9 Funzione EOR e ENOR... Osservazione... 4 Esempio... Costo di una unzione booleana... Esempio... lgebra delle proposizioni... Introduzione... Esempio... Mappe di Karnaugh... Introduzione... Metodi di riduzione tramite mappe di Karnaugh... 4 Esempio... 4 Esempio... 4 Esempio Mappe di Karnaugh per la seconda orma canonica... Condizioni don t care... 4
2 ppunti di Elettronica Digitale - Capitolo INTRODUZIONE Il unzionamento di un dispositivo digitale è basato sull'impiego di elementi aventi due possibili stati di unzionamento o, come si dice spesso, due livelli di lavoro, che vengono convenzionalmente indicati con una coppia di parole del tipo uno/zero oppure vero/also. Questo è giustiicato da ragioni molteplici: in primo luogo è acile, e perciò più economico, realizzare circuiti aventi due soli stati di unzionamento; inoltre qualsiasi dato può essere rappresentato mediante successioni di e di. Ci occupiamo allora delle nozioni ondamentali dell'algebra che permette di trattare adeguatamente i segnali binari. Questa algebra prende il nome dal matematico oole che per primo ne pubblicò i concetti generali nel 84. POSTULTI DI HUNTINGTON Consideriamo un insieme S ormato da un certo numero di elementi. Supponiamo che tra questi elementi sia deinita una relazione di uguaglianza che goda delle proprietà simmetrica, transitiva e rilessiva. Supponiamo inine che questo insieme sia dotato delle seguenti proprietà (o postulati):. è deinita una legge di composizione, chiamata somma logica (simbolo ), che ad ogni coppia di elementi qualsiasi e Y dell'insieme S a corrispondere un elemento Z = Y a sua volta appartenente ad S. è deinita una legge di composizione, chiamata prodotto logico (simbolo *), che ad ogni coppia di elementi qualsiasi e Y dell'insieme S a corrispondere un elemento Z = * Y a sua volta appartenente ad S. esiste almeno un elemento dell'insieme S, chiamato zero, che è "neutro" rispetto alla somma, cioè tale che, comunque si scelga un elemento qualsiasi di S, si abbia = 4. esiste almeno un elemento dell'insieme S, chiamato unità, che è "neutro" rispetto al prodotto, cioè tale che, comunque si scelga un elemento qualsiasi di S, si abbia * =. valgono le proprietà commutative delle operazioni somma e prodotto logico: Y = Y * Y = Y *. valgono le proprietà distributive della somma rispetto al prodotto e del prodotto rispetto alla somma: (Y * Z) = (Y) * (Z) * (Y Z) = (*Y) (*Z). per ogni elemento dell'insieme S esiste un elemento ', detto complemento di, sempre appartenente ad S, tale che ' = e * ' = 8. Esiste almeno una coppia di elementi e Y di S tali che sia diverso da Y I precedenti postulati deiniscono sull'insieme S una struttura algebrica che prende il nome di algebra booleana.
3 lgebra booleana RETI DI INTERRUTTORI Un modello particolarmente importante al quale è possibile applicare i postulati di Huntington è quello costituito dalle cosiddette reti di interruttori. Si deinisce intanto circuito elementare un circuito costituito da un interruttore ai cui capi si applica una certa dierenza di potenziale. Un circuito elementare può assumere solo uno tra due dierenti stati di unzionamento: lo stato aperto, contraddistinto dal valore binario, e lo stato chiuso, contraddistinto dal valore binario. Supponiamo allora di avere i circuiti elementari,y,...,z. Si deinisce somma logica di circuiti elementari e Y il nuovo circuito T = Y nel quale i due interruttori e Y sono collegati in parallelo. I valori che il circuito può assumere sono rappresentati da un particolare schema che prende il nome di tavola di verità di un circuito: Y T Da tale tavola si vede che il circuito T risulta aperto in dierenti situazioni mentre risulta chiuso in una sola: ainché sia aperto basta che almeno uno dei due circuiti elementari che lo compongono sia aperto; di conseguenza l'unica possibilità perché sia chiuso è che entrambi i circuiti elementari componenti siano chiusi. Si deinisce prodotto logico di circuiti elementari e Y il nuovo circuito T = * Y nel quale i due interruttori e Y sono collegati in serie. I valori che il circuito può assumere sono rappresentati da un altra opportuna tavola di verità: Y T In questo caso, si nota una situazione in un certo senso inversa a quella esaminata in precedenza: inatti il circuito T risulta aperto in una sola situazione, quella cioè in cui entrambi i circuiti elementari sono aperti; viceversa il circuito T risulta chiuso in distinte situazioni, nelle quali almeno uno dei circuiti elementari componenti è chiuso. Da questo esempio come anche dagli enunciati dei postulati di Huntington si deduce che le operazioni di somma logica e di prodotto logico sono duali tra di loro. La dualità sarà un concetto spesso ricorrente nei discorsi che aremo, tanto da essere anche ormalizzato in un apposito teorema.
4 ppunti di Elettronica Digitale - Capitolo ESEMPI DI LGER OOLEN Consideriamo adesso un insieme S contenenti solo 4 elementi, che indichiamo con,,a,b. Supponiamo che su tale insieme siano deinite due operazioni, che per semplicità chiamiamo somma e prodotto, deinite rispettivamente dalle seguenti tavole della verità: a b a b a a a b b b * a b a a a b b b a b dei quattro simboli e delle due operazioni appena rappresentate costituisce un algebra di oole. Per veriicarlo, non dobbiamo ar altro che controllare se sono veriicati i postulati di Huntington. I primi due postulati rappresentato semplicemente le proprietà di chiusura della somma e del prodotto: acendo la somma o il prodotto di due elementi dell insieme S, il risultato deve essere a sua volta un elemento dell insieme S. E evidente, dalle due tabelle di verità, che questa proprietà è veriicata. Il terzo postulato richiede l esistenza dell elemento neutro rispetto alla somma e si tratta evidentemente del simbolo : sommando con un qualsiasi altro simbolo di S, si ottiene l altro simbolo. In modo analogo, è veriicato il quarto postulato, in quanto il simbolo è neutro rispetto al prodotto. Il quinto ed il sesto postulato richiedono che sia veriicata la proprietà commutativa sia per la somma sia per il prodotto e così accade. E veriicato anche l ottavo postulato, in base al quale non ci devono essere elementi coincidenti nell insieme S. Resta dunque da veriicare il postulato, riguardante le proprietà distributiva della somma rispetto al prodotto e distributiva del prodotto rispetto alla somma: Ci chiediamo se l insieme {,, a, b,,*} (Y * Z) = (Y) * (Z) * (Y Z) = (*Y) (*Z) E acile (anche se piuttosto lungo) veriicare che queste due proprietà sono anch esse veriicate, per cui l insieme {,, a, b,,*} costituisce un algebra di oole Facciamo adesso un altro esempio: consideriamo un insieme S costituito da due soli simboli {,} e deiniamo le seguenti due operazioni di somma e prodotto: * Due operazioni così deinite si indicano rispettivamente con i simboli OR e ND. eriichiamo se l insieme {,,,*} costituisce un algebra di oole. Usiamo (ovviamente) i postulati di Huntington. 4
5 lgebra booleana E immediato accorgersi che sono veriicati tutti i postulati, ma veriichiamo in particolare che sia veriicato il settimo, relativo alle proprietà distributiva della somma rispetto al prodotto e distributiva del prodotto rispetto alla somma: (Y * Z) = (Y) * (Z) * (Y Z) = (*Y) (*Z) Cominciamo dalla prima, per veriicare la quale possiamo costruire una apposita tabella: Z) Y)*( ( Z Y (Y * Z) Y * Z Z Y Data l uguaglianza tra colonna e la colonna, deduciamo che la proprietà distributiva della somma rispetto al prodotto è veriicata. In modo del tutto analogo, andiamo a veriicare l altra proprietà: Z) Y)*( ( Z Y (Y*Z) Y *Z Z Y nche qui, la colonna e la colonna sono uguali, per cui è veriicata anche la proprietà distributiva del prodotto rispetto la somma. Concludiamo, dopo tale veriica, che l insieme { },*,, rappresenta un algebra booleana. Su questa particolare algebra booleana (che prende anche il nome di algebra di commutazione in conseguenza del atto che ci sono solo simboli nell alabeto) si può deinire anche una terza operazione logica, che si indica con OR ed è descritta dalla seguente tavola di verità: OR
6 ppunti di Elettronica Digitale - Capitolo desso apportiamo una leggera modiica a tale insieme, deinendo in altro modo la tavola di verità della somma logica (in particolare, supponiamo che =): * In questo caso, è acile accorgersi che sono veriicati tutti i postulati dal primo all ottavo, eccezion atta per il settimo. ccertiamo allora che sia eettivamente così. Cominciamo col veriicare la proprietà distributiva della somma rispetto al prodotto: Z) Y)*( ( Z Y (Y*Z) Y *Z Z Y Data l uguaglianza tra colonna e la colonna, deduciamo che la proprietà distributiva della somma rispetto al prodotto è veriicata. Passiamo all altra proprietà: Z) Y)*( ( Z Y (Y*Z) Y *Z Z Y Si nota in questo caso che la e la colonna sono diverse, per cui la proprietà non è veriicata e quindi l insieme considerato non rappresenta un algebra di oole.
7 lgebra booleana TEOREMI FONDMENTLI DELL'LGER OOLEN In base ai postulati di Huntington precedentemente enunciati, è possibile ricavare i seguenti teoremi ondamentali dell'algebra booleana. Teorema - Esiste ed è unico l'elemento "zero" per il quale è veriicata la relazione = Teorema - Esiste ed è unico l'elemento "unità" per il quale è veriicata la relazione * = Teorema - Comunque si prenda un elemento, risulta sempre valida la relazione = Teorema 4 - Comunque si prenda un elemento, risulta sempre valida la relazione * = Teorema - Comunque si prenda un elemento, risulta sempre valida la relazione = Teorema - Comunque si prenda un elemento, risulta sempre valida la relazione * = Teorema - Presi qualsiasi elementi ed Y, risulta sempre valida la relazione ( *Y) = ( teorema di assorbimento) Teorema 8 - Presi qualsiasi elementi e Y, risulta sempre valida la relazione *( Y) = ( teorema dell assorbimento) Teorema 9 - Dato un elemento, è unico il suo complemento ' tale che siano veriicate le relazioni ' = *' = Teorema - Dato un elemento, se si prende il suo complemento ' e si a il complemento di quest'ultimo si trova che ( ')' = (teorema dell involuzione)
8 ppunti di Elettronica Digitale - Capitolo Teorema - Per qualsiasi coppia di elementi ed Y, risulta valida la relazione ( Y )' = '*Y' ( teorema di De Morgan) Teorema - Per qualsiasi coppia di elementi ed Y risulta valida la relazione ( *Y)' = ' Y' ( teorema di De Morgan) N.. Il teorema di De Morgan si può anche generalizzare ad una n-pla qualsiasi di variabili che possono assumere solo valori: si ottiene così il teorema di De Morgan generalizzato, in base al quale risulta [ ( x, x,..., x, ',,*)]' = ( x', x',..., x', _,*, ) n Questo enunciato dice, in pratica, che, per eettuare il complemento di una certa unzione, tutte le variabili vanno sostituite con il proprio complemento, che l operazione complemento va eliminata, che la somma diventa prodotto e che il prodotto diventa somma. n Teorema - Per qualsiasi terna di elementi Y e Z risulta valida la relazione (Y Z) = ( Y) Z (Proprietà associativa della somma logica) Teorema 4 - Per qualsiasi terna di elementi Y e Z risulta valida la relazione *(Y * Z) = ( *Y)* Z (Proprietà associativa del prodotto logico) Un altro teorema di grande importanza nell algebra booleana è il teorema della peretta induzione, in base al quale un dato teorema è vero se risulta veriicato per tutti i possibili valori ( ed ) attribuibili a tutte le variabili coinvolte. In altre parole, se un dato teorema presenta un enunciato in cui sono coinvolte due sole variabili booleane, basta veriicare che tale enunciato risulti vero attribuendo alle due variabili tutte le possibili combinazioni di valori (quindi -, -,- ed -). 8
9 lgebra booleana DEFINIZIONI RIE Si deinisce variabile booleana una grandezza variabile che può assumere solo i valori di un algebra di oole. Se i simboli dell algebra di oole considerata solo, si parla di algebra di commutazione. Nel seguito noi ci rieriremo solo ad algebra di commutazione. Le operazioni deinite in un algebra di oole sono deinite da tabelle di verità, le quali associano ad ogni combinazioni dei due simboli il corrispondente risultato (ovviamente appartenente a sua volta all algebra considerata). La corrispondenza tra operandi e risultato è biunivoca e prende il nome di unzione booleana. Quindi, le tabelle di verità costituiscono una rappresentazione delle unzioni booleane. Ogni unzione booleana è rappresentata da una ed una sola tabella di verità: di conseguenza, se due unzioni booleane sono rappresentate dalla stessa tabella di verità, devono necessariamente coincidere. Detto anche in altro modo, due unzioni sono identiche se hanno la stessa tabella di verità. Date due unzioni booleane, esse possono essere a loro volta combinate (mediante le operazioni booleane, che sono solamente OR, ND e NOT), ottenendo una nuova unzione a sua volta booleana. Consideriamo adesso n variabili booleane, con le quali vogliamo costruire una unzione booleana. Ci chiediamo quante unzioni booleane possiamo costruire con queste n variabili booleane. Consideriamo per esempio n=, per cui vogliamo vedere quante unzioni booleane di variabili booleane esistono. Ci aiutiamo con la seguente tabella: Quando le due variabili valgono entrambe, la tabella di verità non potrà che associare, come valore della unzione, o il valore o il valore, per cui abbiamo possibilità: (,)= oppure (,)=. Quando la prima variabile vale e la seconda, abbiamo 4 possibilità: in corrispondenza di (,)= possiamo prendere o (,)= oppure (,)= e, in modo analogo, in corrispondenza di (,)= possiamo prendere o (,)= oppure (,)=. Proseguendo ino al valore di (,), è ovvio che ci sono in tutto possibilità, per cui concludiamo che con variabili booleane possiamo costruire dierenti unzioni di variabile booleane. D altra parte, non è altro che 4, dove 4 è il numero di combinazioni possibili con bit, ossia. In eetti, sussiste un criterio generale: con n variabili booleane è possibile costruire ( ) n dierenti unzioni di variabile booleane. Per esempio, con n= variabili booleane si possono costruire unzioni, con n=4 si possono costruire unzioni e così via. Si nota, allora, che all aumentare del numero di variabili considerate, il numero di possibili unzioni booleane aumenta enormemente. 9
10 ppunti di Elettronica Digitale - Capitolo FORME CNONICHE Si pone a questo punto un problema: esiste un metodo generale che permetta di individuare l espressione analitica di una qualsiasi unzione booleana (di un numero qualsiasi di variabili booleane) nota che sia solo la sua tabella di verità? Eettivamente, questo metodo generale esiste e si basa sulle cosiddette unzioni canoniche. Esistono due distinte orme canoniche, ciascuna delle quali viene uori dall applicazione di un opportuno teorema; si tratta, in particolare, dei teoremi di Shannon, di cui enunciamo il primo: Teorema - Data una unzione booleana ( x, x,..., ) x n di n variabili booleane, essa può sempre essere espressa nella orma seguente: ( x, x,..., x ) = x * (, x,..., x ) x' * (, x,..., ) n n x n La dimostrazione di questo teorema è immediata se si usa la peretta induzione: basta ar vedere che il primo ed il secondo membro sono uguali sia quando x = sia quando x =. Detto questo, possiamo applicare il teorema, con rierimento questa volta alla variabile x, ai, x,...,, x,..., che compaiono nell enunciato del teorema stesso termini ( ) e ( ) = x n x n ( x, x,..., x n ) = x *[ x * (,,..., x n ) x' * (,,..., x n )] x' * [ x * (,,..., x n ) x' * (,,..., x n )] x *x * (,,..., x ) x * x' * (,,..., x ) x' *x * (,,..., x ) x' *x' * (,,..., x ) n n Possiamo ulteriormente proseguire il discorso per i termini (,,..., x n ), (,,..., x n ), (,,..., x n ) e (,,..., x n ), ovviamente rispetto ad x. Proseguendo in questo modo, si ottiene la unzione ( x, x,..., x n ) sviluppata come somma di n termini, l ultimo dei quali sarà evidentemente x' *x' *...*x' * (,,...,) n. Per semplicità, consideriamo il caso semplice in cui n=: lo sviluppo della unzione risulta dunque composto dalla somma di =8 termini: indicando per semplicità con x,y e z le tre variabili, è acile veriicare che lo sviluppo sia (x, y, z) x * y'*z* (,,) x * y*z'* (,,) x * y*z* (,,) = x'*y'*z'* (,,) x'*y'*z* (,,) x'*y*z'* (,,) x'*y*z* (,,) x * y'*z'* (,,) In questo sviluppo si nota una cosa molto interessante: in ciascun termine dello sviluppo, ogni variabile viene complementata solo quando il valore di tale variazione in cui la unzione viene calcolata è. Per esempio, nel termine x '*y'*z'* (,,), la unzione è calcolata usando per tutte e tre le variabili il valore, per cui la unzione viene successivamente moltiplicata per tutte e tre le variabili complementate. Nel termine x * y*z'* (,,), invece, solo la variabile z vale come argomento di, per cui è l unica che va complementata nel prodotto. I termini per cui la unzione viene moltiplicata all interno dello sviluppo prendono il nome di mintermini: si tratta cioè dei termini x '*y'*z', x'*y'*z, x'*y*z', x'*y*z, x * y'*z', x * y'*z, x * y*z', x * y*z Si osserva allora un altra cosa: essendo una variabile booleana, può assumere solo i valori ed ; se vale, il termine corrispondente, nello sviluppo, scompare, mentre se vale, rimane solo il corrispondente mintermine. In deinitiva, quindi, lo sviluppo di (x,y,z) è composto dalla somma dei soli mintermini cui corrisponde un valore unitario di stessa. d esempio, supponiamo che la tabella di verità della unzione sia la seguente: n n =
11 lgebra booleana Y Z (, Y, Z) // // x'*y *z' x'*y *z x * y'*z' // // x * y *z asta individuare le combinazioni di,y,z in corrispondenza delle quali (,Y,Z)=; si considerano quindi in corrispondenti mintermini e se ne a la somma: nell esempio considerato, possiamo dunque concludere che l espressione analitica della unzione è (x, y, z) = x'*y*z' x'*y*z x * y'*z' x * y*z In altre parole ancora, la unzione risulta espressa dalla somma dei mintermini corrispondenti a combinazioni di,y,z tali che (,Y,Z)=. Così acendo, ad ogni unzione viene associato uno ed un solo sviluppo di mintermini, ottenendo la prima orma canonica (detta anche orma normale disgiuntiva) della unzione considerata. Essa è caratterizzata dunque dal atto che è data dalla somma di un certo numero di prodotti. Esiste anche una seconda orma canonica, che si basa sul secondo teorema di Shannon: questo teorema è del tutto duale rispetto al primo, per cui, anziché ornirne l enunciato, analizziamo direttamente le conseguenze. In modo analogo alla prima orma canonica, si considera sempre la tabella di verità della unzione assegnata: Y Z (, Y, Z) x y z x y z' // // // x' y z' x' y' z nziché considerare le combinazioni di,y,z in corrispondenza della quali (,Y,Z)=, si considerano questa volta quelle in corrispondenza delle quali (,Y,Z)=. queste combinazioni, si associano i cosiddetti maxtermini, corrispondenti a somme delle variabili,y,z (eventualmente complementate se corrispondente valore in cui la unzione viene calcolata è ). Questi maxtermini vanno quindi moltiplicati tra di loro. Nell esempio considerato, lo sviluppo risulta quindi essere il seguente: ( x y z) *( x y z' )*( x' y z' )*( x' y' z) (, Y, Z) = //
12 ppunti di Elettronica Digitale - Capitolo La unzione considerata risulta dunque espressa dal prodotto dei maxtermini corrispondenti a combinazioni di,y,z tali che (,Y,Z)=. Così acendo, ad ogni unzione viene associato uno ed un solo sviluppo di maxtermini, ottenendo la seconda orma canonica (detta anche orma normale congiuntiva) della unzione considerata. Essa è caratterizzata dal atto che è data dal prodotto di un certo numero di somme. Ci sono da are alcune importanti osservazioni circa le orme canoniche appena introdotte: in primo luogo, come abbiamo già sottolineato, ad ogni unzione booleana è associata una ed una sola orma normale disgiuntiva (somma di mintermini) ed una ed una sola orma normale congiuntiva (prodotto di maxtermini) e tali due orme canoniche esistono sempre, per qualsiasi unzione booleana; in secondo luogo, una orma canonica (disgiuntiva o congiuntiva che sia) può essere talvolta sempliicata utilizzando i teoremi ed i postulati dell algebra booleana: si ottengono, in tal modo, a partire da tale orma canoniche, una o più orme ridotte, tutte equivalenti tra di loro ed equivalenti anche alla orma canonica di partenza; ovviamente, non è detto che una orma canonica sia sempliicabile: in questo caso, si parla di orma minima; in modo analogo, data una orma canonica che è sempliicabile, una volta atte tutte le possibili sempliicazioni si giunge ad una espressione della unzione considerata che è ancora chiamata orma minima. In altre parole, la orma minima di una unzione booleana è la più semplice espressione analitica che si può dare della unzione stessa: non necessariamente si tratta della orma canonica (disgiuntiva o congiuntiva) della unzione considerata, ma sarà comunque equivalente ad essa; inine, come sarà più chiaro tra poco, la scelta di una o di un altra rappresentazione analitica della unzione booleana considerata va atta in base all implementazione circuitale con cui la si realizza isicamente: generalmente, si sceglie la orma più semplice da realizzare circuitalmente (e quindi sarà una orma minima), ma a volte le esigenze sono anche altre. PORTE LOGICHE Si deiniscono porte logiche (o anche circuiti digitali) dei circuiti aventi n ingressi booleani (che cioè possono assumere solo due possibili valori) ed una sola uscita anch essa booleana, che corrisponde ad una certa combinazione degli ingressi. Sia gli ingressi sia l uscita di una porta logica non sono altro, quindi, che tensioni che possono assumere solo due possibili valori, che indichiamo con H (valore alto) e con L (valore basso), ben separati tra di loro. In modo analogo, anche l uscita può assumere solo i valori H e L. vendo n tensioni di ingresso, ci sono n possibili combinazioni dell ingresso, a ciascuna delle quali l uscita deve associare o H o L. Si tratta, perciò, di una classica unzione booleana che, come tale, può essere rappresentata mediante una tavola della verità. Le porte logiche sono realizzate operando una opportuna combinazione di porte logiche ondamentali, rappresentate dalle seguenti tabelle della verità: L L H H L H L H U L H H H L L H H L H L H U L L L H L H U H L
13 lgebra booleana E ovvio che, per relazionare questi circuiti alle operazioni booleane, dobbiamo necessariamente stabilire una corrispondenza tra le tensioni H e L ed i valori e dell algebra booleana (di commutazione, visto che sono solo due i valori possibili). Ci sono allora due possibilità: logica positiva L H logica negativa L L Se il valore basso di tensione viene associato al simbolo logico, si parla di logica positiva, mentre in caso contrario si parla di logica negativa. E bene osservare che, da un punto di vista isico, le due tensioni L e H sono sempre tali che L < H : esse possono essere entrambe positive, entrambe negative (nel qual caso > ) oppure una positiva ed una negativa (nel qual caso L < e H >). Tornando adesso alle porte logiche ondamentali prima descritte, vediamo a cosa corrispondono sia in logica positiva sia in logica negativa. Cominciamo dalla porta logica ondamentale: L H logica positiva U logica negativa U E evidente che, sia in logica positiva sia in logica negativa, questa porta logica corrisponde all operazione booleana di complemento. Si parla allora di porta NOT o anche semplicemente di inverter. Il simbolo con cui rappresentiamo questa porta nello schema logico di un circuito digitale è il seguente: Passiamo adesso alla prima porta logica ondamentale: logica positiva U logica positiva U Le cose cambiano rispetto a prima: inatti, si osserva che in logica positiva abbiamo l operazione di somma booleana (OR), mentre invece in logica negativa abbiamo l operazione di prodotto booleano (ND). In entrambi i casi, la porta prende il nome di porta OR: in logica positiva essa esegue la somma logica, mentre invece in logica negativa essa esegue il prodotto logico. Questa ambiguità non può che essere risolta a monte, nel senso che deve essere il costruttore a speciicare che tipo di logica sia stata utilizzata.
14 ppunti di Elettronica Digitale - Capitolo Per quanto ci riguarda, d ora in poi noi useremo (salvo diverso avviso) la logica positiva, per cui una porta OR sarà sempre un circuito che esegue la somma booleana. Il simbolo con cui rappresentiamo questa porta logica è il seguente: U Passiamo inine all ultima porta logica ondamentale: U U logica positiva logica negativa nche in questo caso, la porta esegue due operazioni booleane diverse a seconda della logica utilizzata: in logica positiva, viene evidentemente eseguito il prodotto logico. Parleremo in ogni caso di porta ND e la rappresenteremo nel modo seguente: U Una osservazione importante è quella per cui nei simboli delle porte logiche appena citate non vengono mai indicati i terminali dell alimentazione né i terminali collegati a massa. Questo serve, ove possibile, a sempliicare gli schemi logici dei circuiti. Esempio Una volta introdotte le porte logiche, vediamo come esse vengono utilizzate per l implementazione delle unzioni booleane. Cominciamo da un semplice esempio, costituito dalla seguente unzione: = C D E Si tratta di una semplice unzione booleana di variabili (quindi ingressi), di cui viene atta la somma logica (OR). Il modo più semplice di procedere, per l implementazione concreta di questa unzione, è quello di riscriverla in modo più opportuno: inatti, applicando la proprietà associativa della somma logica, possiamo scrivere che {[ ( ) C] D} E = 4
15 lgebra booleana bbiamo in tal modo separato 4 distinte operazioni di somma logica, che quindi possono essere realizzate mediante 4 porte logiche OR poste in cascata, come nella igura seguente: C ()C D (C)D E CDE Nel realizzare un circuito in questo modo si presentano alcuni inconvenienti: il principale è legato al ritardo di propagazione dei segnali elettrici da una porta all altra. Per ovviare a questi inconvenienti, vengono realizzate delle particolari porte OR, aventi più di ingressi e capaci quindi di realizzare la somma logica di più variabili. Per esempio, per realizzare la unzione appena descritta, servirebbe una porta OR con ingressi. Osservazione: sistemi unzionalmente completi bbiamo detto prima che le tre porte logiche ondamentali (OR,ND,NOT) consentono di implementare una qualsiasi unzione logica, comunque complessa: si dice allora che tali porte logiche ondamentali costituiscono un sistema unzionalmente completo. Esistono tuttavia altri sistemi unzionalmente completi: sono di particolare importanza quelli costituiti da sola porta logica ondamentale. Per esaminare questi particolari sistemi unzionalmente completi, dobbiamo premettere alcuni concetti. FUNZIONI OOLENE DI RIILI OOLENE ogliamo adesso descrivere, con suiciente dettaglio, tutte le possibili unzioni booleane di variabili booleane. bbiamo già avuto modo di dire che tali unzioni sono in tutto. Per studiare queste unzioni, partiamo dalle loro tavole della verità, che si possono ricavare acilmente con il metodo seguente: costruiamo una tabella di colonne, ciascuna corrispondente ad una delle unzioni booleane di variabili (che indichiamo con e ): Le possibili combinazioni di valori di e sono 4, per cui ogni unzione deve associare dei propri valori a queste 4 combinazioni. Cominciamo allora a riempire l ultima riga della tabella, sistemando il valore nelle prime 8 colonne ed il valore nelle restanti 8 colonne:
16 ppunti di Elettronica Digitale - Capitolo Passando alla penultima riga, sistemiamo prima quattro, poi quattro, poi ancora quattro e inine quattro. In modo analogo, nella seconda riga sistemiamo prima due, poi due, poi ancora due e così via ino alle ultime due colonne. Inine, riempiano la prima riga alternativamente con ed, partendo dal valore nella prima colonna: E immediato accorgersi che le combinazioni così ottenute sono tutte diverse tra di loro, per cui siamo certi di aver descritto le tavole di verità di tutte e sole le unzioni booleane di variabili booleane. l ine di identiicare ciascuna di queste unzioni, possiamo indicarle con il simbolo k, dove il pedice k, associato alla k unzione, corrisponde al valore decimale dell uscita della unzione stessa, letta dal basso verso l alto: decimale lettura Fatto questo, vogliamo descrivere alcune particolari proprietà di questa tabella. La proprietà più importante è la seguente: consideriamo una generica unzione, ad esempio, e cerchiamo l altra unzione (sarà unica) la cui tabella della verità sia il complemento ad di quella di. Osservando la tabella, si trova che questa unzione è : la particolarità è nel atto che i pedici ( e ) che individuano queste unzioni sono l uno il complemento a dell altro. Si tratta di una proprietà generale, acilmente veriicabile per tutte le altre unzioni: possiamo allora esprimerla simbolicamente nel modo seguente:,,..., k ' k k = = ediamo adesso di individuare alcune particolari unzioni presenti nella tabella e, in particolare, vogliamo determinarne le espressioni analitiche.
17 lgebra booleana Sono evidentemente particolari le unzioni poste agli estremi della tabella: inatti, è uguale a per qualsiasi combinazione degli ingressi, mentre è identicamente uguale ad per qualsiasi combinazione degli ingressi: = =,, Riconosciamo inoltre nelle unzioni 4 ed 8 le operazioni, rispettivamente, di somma logica (unzione OR) e di prodotto logico (unzione ND): 8 4 = * = E stato in questo caso immediato trovare le espressioni analitiche di queste due unzioni. C è anche da osservare che esse non sono espresse né in orma normale disgiuntiva (somma di mintermini) né in orma normale congiuntiva (prodotto di mintermini). Se adesso applichiamo a queste unzioni la proprietà prima evidenziata, abbiamo quanto segue: = ' = ' 8 4 = = teorema di De Morgan ( * )' = ' ' teorema di De Morgan ( )' = '*' bbiamo dunque acilmente trovato le espressioni analitiche di altre due unzioni, con la dierenza che esse risultano espresse come orme canoniche: è inatti rappresentata mediante un maxtermine, mentre è rappresentata mediante un mintermine. Essendo il complemento del risultato di un OR tra due ingressi, la unzione è detta unzione NOR, mentre, in modo analogo, la unzione è detta unzione NND, in quanto complementa il risultato di una NND. Le appena elencate sono le uniche unzioni di cui sia così immediata la ricerca dell espressione analitica. Per le rimanenti unzioni dobbiamo invece adottare il criterio delle orme canoniche precedentemente descritto. Cominciamo ad esempio dalla unzione : nella sua tabella della verità compare un solo (in corrispondenza di = e =), per cui possiamo utilizzare il corrispondente mintermine, in modo da scrivere che = '* Ovviamente, utilizzando ancora una volta la proprietà dei complementi, possiamo acilmente trovare l espressione di : = ' = ' E chiaro che questo è l unico maxtermine della unzione, che inatti presenta un solo (sempre in corrispondenza di = e = e non potrebbe essere altrimenti dato il teorema di dualità). Passiamo adesso alla unzione : nella sua tabella della verità compaiono due e due, per cui è indierente usare i mintermini o i maxtermini: usando ancora una volta i mintermini, è evidente che ( '*' ) ( '*) = Utilizzando la proprietà dei complementi, possiamo poi trovare l espressione di : = ' = ( ) *( ' )
18 ppunti di Elettronica Digitale - Capitolo bbiamo dunque espressione e con le rispettive orme canoniche. Tuttavia, questo è un tipico caso in cui possiamo are anche qualcosa in più: inatti, considerando l espressione di, possiamo mettere in evidenza il termine, per cui = '* ' ( ) Ricordando adesso che, in base ad uno dei teoremi dell algebra booleana risulta =, possiamo concludere che = ' = ' = bbiamo cioè trovato una orma ridotta per e conseguentemente una orma ridotta per. Non solo, ma queste orme ridotte sono anche orme minime, visto che non è possibile sempliicarle ulteriormente. La dierenza tra la orma canonica = ( '*' ) ( '*) e la orma minima = ' è evidentemente nel numero di porte logiche necessario alla implementazione pratica: la orma canonica richiede porte NOT, due porte ND ed una porta OR, mentre invece la orma minima richiede solo una porta NOT. Da qui si deduce l importanza di sempliicare il più possibile l espressione analitica (sia essa in orma canonica o meno) della unzione considerata al ine di arrivare alla orma minima della stessa unzione. Questo è ancora più evidente per la unzione : per realizzare la orma canonica = ( ) *( ' ) servirebbero porta NOT, due porte OR ed una porta ND; al contrario, per realizzare la orma minima = basta semplicemente prelevare il valore di, per cui non serve neanche una porta logica. Proseguendo nell analisi delle unzioni booleane della tabella prima costruita, consideriamo la unzione : questa unzione è particolarmente importante in quanto, come si deduce dalla sua tabella di verità, non a altro che conrontare gli ingressi: se gli ingressi sono uguali, ornisce in uscita, mentre se sono diversi ornisce in uscita. Per questo motivo, è detta unzione EOR e si indica generalmente nel modo seguente: = Per quanto riguarda l espressione analitica, la unzione presenta due e due nella propria tabella di verità, per cui è indierente ragionare con i mintermini o con i maxtermini; considerando i mintermini, otteniamo la orma canonica = '* *' ( ) ( ) In questo caso, la orma canonica è anche minima, in quanto non è possibile sempliicarla ulteriormente. Utilizzando la proprietà dei complementi, possiamo poi trovare l espressione di 9 : = ' = ( ' )*( ' ) 9 nche in questo caso (e non poteva essere altrimenti data sempre la dualità), la orma canonica (che in questo caso è congiuntiva, visto che a rierimento ai maxtermini) è una orma minima. Questa unzione è detta unzione ENOR in quanto ornisce in uscita il valore se gli ingressi sono uguali e il valore in caso contrario: si indica generalmente come complemento della unzione EOR, ossia 9 = ( )' 8
19 lgebra booleana Facciamo inoltre osservare che potevamo anche esprimere come prodotto di maxtermini e 9 come somma di mintermini: ( ) *( ' ' ) = ' = ( '*' ) ( *) = 9 Passiamo adesso alla unzione : sviluppandola mediante i mintermini, otteniamo ( '*' ) ( *') = Possiamo anche sempliicare questa orma canonica, al ine di giungere ad una orma minima: ( ' ) *' = *' ' = = Osserviamo dunque che l azione della unzione è quello di riportare il complemento del secondo ingresso. pplicando la proprietà dei complementi, possiamo immediatamente esprimere la : = ' = L azione della unzione è evidentemente quello di riportare in uscita direttamente il valore del secondo ingresso. Consideriamo adesso la unzione 4 : essa presenta il valore in un solo caso, per cui, considerando il corrispondente mintermine, otteniamo 4 = *' pplicando la proprietà dei complementi, otteniamo anche l ultima unzione, ossia : 4 = ' = ' Funzioni NND e NOR questo punto, ricollegandoci a quanto detto nel paragrao precedente, vogliamo mostrare che esistono, tra quelle appena enunciate, delle unzioni (e quindi delle corrispondenti porte logiche) che, da sole, costituiscono dei sistemi unzionalmente completi, ossia consentono di implementare una qualsiasi unzione booleana. Le unzioni cui siamo interessati sono la unzione NOR (o anche ) e la unzione NND (o anche ). Per dimostrare che ciascuna di queste unzioni costituisce un sistema unzionalmente completo, basta dimostrare che con ciascuna di esse è possibile implementare le operazioni booleane ondamentali (NOT, OR e ND), le quali costituiscono a loro volte un sistema unzionalmente completo. Cominciamo dalla unzione NND, che viene convenzionalmente rappresentata negli schemi logici nel modo seguente: U 9
20 ppunti di Elettronica Digitale - Capitolo Questo simbolo è assolutamente analogo a quello di una porta ND, con in più un pallino prima dell uscita, che sta ad indicare che, una volta eettuato l ND degli ingressi, ne viene eettuato il complemento. E immediato ar vedere che una porta NND può essere usata per eseguire l operazione NOT, ossia per ottenere il complemento dell ingresso: inatti, ricordando che = ( *)', basta porre = per ottenere che ( * )' ' (, ) = = Quindi, se mandiamo il valore su entrambi gli ingressi della porta NND, otteniamo in uscita proprio il complemento di : ' desso vediamo come è possibile realizzare l operazione ND: possiamo scrivere, applicando il teorema di De Morgan, che * = [( *)']' In base a questa espressione, se acciamo prima la NND di e e poi eseguiamo il complemento del risultato, otteniamo proprio l ND di e. Lo schema logico da adottare è dunque il seguente: * Inine, vediamo come è possibile realizzare l operazione OR: applicando nuovamente il teorema di De Morgan, abbiamo che = ( '*' )' In base a questa espressione, se acciamo la NND di e otteniamo proprio l OR di e. Lo schema logico da adottare è dunque il seguente: ' ' Se la porta NND può essere usata per realizzare le operazioni NOT, OR e ND, le quali a loro volta bastano per realizzare tutte le operazioni booleane, deduciamo che la porta NND basta, da sola, per realizzare tutte le operazioni booleane, come volevamo dimostrare.
21 lgebra booleana Il discorso è del tutto analogo per la porta NOR, che si rappresenta negli schemi logici nel modo seguente: U Questo simbolo è assolutamente analogo a quello di una porta OR, con in più il pallino prima dell uscita, che sta ad indicare che, una volta eettuato l OR degli ingressi, ne viene eettuato il complemento. Così come per la porta NND, anche la porta NOR eettua il complemento di un valore se esso viene mandato ad entrambi gli ingressi della porta: inatti, ricordando che la unzione ha espressione analitica = ( )', se poniamo = otteniamo ( )' ' (, ) = = Quindi, se mandiamo il valore su entrambi gli ingressi della porta NOR, otteniamo in uscita proprio il complemento di : ' Per quanto riguarda, invece, l operazione OR, possiamo scrivere che [( )']' = In base a questa espressione, se acciamo prima la NOR di e e poi eseguiamo il complemento del risultato, otteniamo proprio l OR di e. Lo schema logico da adottare è dunque il seguente: Inine, per realizzare l operazione ND basta considerare che * = ( ' ' )' In base a questa espressione, se acciamo la NOR di e otteniamo proprio l OR di e. Lo schema logico da adottare è dunque il seguente:
22 ppunti di Elettronica Digitale - Capitolo ' * ' nche la porta NOR costituisce dunque un sistema unzionalmente completo. Facciamo osservare che, per questioni di comodità di rappresentazione, il circuito usato per realizzare l OR mediante porte NND e quello usato per realizzare l ND mediante porte NOR vengono spesso rappresentati dai seguenti simboli: * I pallini sui due ingressi stanno a rappresentare che l operazione compiuta dalla porta viene eseguita sui complementi dei due ingressi. Funzione EOR e ENOR Un altro sistema unzionalmente completo è quello costituito dalle unzioni EOR ( ) e ND ( 8 ). Per renderci conto di questo, studiamo le principali proprietà della unzione EOR, ricordando subito l espressione analitica di tale unzione: ( '*) ( *' ) = = In pratica, la unzione restituisce in uscita se gi ingressi sono uguali oppure in caso contrario. E molto acile dimostrare che la unzione EOR gode delle proprietà commutativa, associativa e distributiva (rispetto al prodotto logico): per quanto riguarda la proprietà commutativa, deriva dalla commutatività della unzione OR: = = ( '*) ( *') = ( *') ( '*) = per quanto riguarda la proprietà associativa, la si dimostra con la peretta induzione: nel caso di ingressi, essa aerma che C = ( ) ( ) C e può chiaramente essere estesa ad un numero generico di ingressi; inine, la proprietà distributiva rispetto al prodotto logico aerma quanto segue: * ( C) = ( *) ( *C)
23 lgebra booleana La dimostrazione di questa proprietà, eseguita con la peretta induzione, è la seguente: C C *( C) * *C ( *) ( *C) Data l uguaglianza tra la e l ultima colonna, la proprietà è chiaramente dimostrata. ltre due proprietà importanti sono le seguenti: = = ( *) ( '*) = ( *) ( '*) = ' In base a queste proprietà, l EOR di una variabile booleana con coincide con la variabile stessa, mentre l EOR con coincide con il complemento della variabile. Queste due proprietà vengono sruttate per realizzare una particolare porta logica, che prende il nome di NOT controllato (o inverter controllato): La porta è una porta NND la cui uscita dipende dal valore dell ingresso : quando =, la porta esegue l EOR di con e quindi ornisce, mentre invece, quando =, l uscita è, in base alle considerazioni di prima. In altre parole, il valore di consente di ottenere da questa porta sia un inverter sia semplicemente un inseguitore. Porte controllate con questa sono di particolare importanza in molti circuiti digitali, dei quali parleremo in seguito. Ci sono ancora altre 4 proprietà importanti della unzione EOR, tutte dimostrabili con la peretta induzione: Z = Y Se Z = Y Y Z = Y Z = Y *Y = Y L ultima di queste proprietà spiega in pratica come è possibile realizzare la unzione OR utilizzando due porte EOR ed una porta ND. questo punto, quindi, si capisce il motivo per cui le porte EOR e ND costituiscono un sistema unzionalmente completo (detto sistema REED-MULLER): abbiamo inatti visto prima come si
24 ppunti di Elettronica Digitale - Capitolo realizza il NOT mediante una porta EOR, la unzione ND è già presente e l ultima proprietà enunciata mostra come è possibile realizzare la unzione OR. d esempio, in base alla proprietà Y *Y = Y, lo schema logico per eseguire l OR di due ingressi è il seguente: Osservazione bbiamo visto in precedenza che sia la unzione NND sia la unzione NOR costituiscono, da sole, due sistemi unzionalmente completi, per cui possono essere usate per implementare una qualsiasi unzione booleana. l ine di capire, con discreta rapidità, come poter esprimere una generica unzione booleana come combinazioni di sole unzioni NND o di sole unzioni NOR, è necessario are un richiamo sulle orme canoniche delle unzioni booleane. In particolare, per rappresentare in modo sintetico una unzione espressa con la orma normale disgiuntiva (somma di mintermini) o con quella normale congiuntiva (prodotto di maxtermini), è possibile attribuire a ciascun mintermine o a ciascun maxtermine un numero che lo identiichi in modo univoco. Facciamo un esempio concreto, rierendoci in particolare ad una unzione di variabili booleane (indicate con,y, e Z) avente la seguente tabella della verità: Y Z (, Y, Z) Questa unzione presenta evidentemente il valore in corrispondenza di diverse combinazioni delle variabili di ingresso, per cui è rappresentabile come somma dei corrispondenti mintermini. Per individuare gli 8 possibili mintermini di questa unzione, possiamo associare a ciascuno di essi un numero dato dal valore decimale della corrispondente combinazione delle variabili di ingresso, come indicato nella tabella seguente: 4
25 lgebra booleana Y Z (, Y, Z) mintermine mintermine mintermine mintermine mintermine 4 mintermine mintermine mintermine Deduciamo, dunque, che la unzione considerata è data dalla somma dei mintermini numero, e, per cui possiamo esprimere sinteticamente la nostra unzione nel modo seguente: (, Y, Z) = (,,) In modo assolutamente analogo possiamo procedere per la orma canonica congiuntiva, in quanto anche i maxtermini possono essere numerati così come i mintermini: Y Z (, Y, Z) maxtermine maxtermine maxtermine maxtermine maxtermine 4 maxtermine maxtermine maxtermine Ricordando che i maxtermini da considerare sono quelli in corrispondenza dei quali la unzione assume valore, abbiamo che (, Y, Z) = (,,,4, ) Osserviamo, inine, che il numero totale di mintermini (o di maxtermini) è pari al numero di combinazioni possibili per le variabili di ingresso, ossia è pari a n, dove n sono gli ingressi. Le due rappresentazioni (equivalenti) così ottenute per la generica unzione sono di aiuto per rappresentare tale unzione o in termini di sole porte NND o in termini di sole porte NOR. Consideriamo, ad esempio, una generica unzione booleana di n variabili booleane: ( x, x,..., x n ) e supponiamo che il suo sviluppo come somma di mintermini sia il seguente: ( x, x,..., x ) = a b c... n Quelli indicati con a,b,c sono appunti generici mintermini della unzione.
26 ppunti di Elettronica Digitale - Capitolo pplicando il teorema dell involuzione, possiamo esprimere la unzione nel modo seguente: ( x, x,..., x ) = [ '( x, x,..., x )]' = [( a b c...)']' = [ a' b' c'...]' n n Ricordando che i mintermini sono prodotto di variabili booleane, è evidente che le quantità a, b, c e così via rappresentano delle unzioni NND applicate agli ingressi (alcuni complementari ed altri no); non solo, ma di queste quantità viene anche eettuata una NND (cioè ne viene atto il prodotto e poi viene complementato il risultato), per cui deduciamo che la unzione è stata così espressa in termini solo di operazioni NND. Facciamo un esempio concreto: consideriamo una unzione booleana di variabili booleane avente la seguente orma canonica disgiuntiva: (, Y, Z) (,,) = '*Y'*Z '*Y *Z *Y'* Z = pplicando il teorema dell involuzione, otteniamo la unzione espressa nel modo seguente: (, Y, Z) = [( '*Y'*Z )'*( '*Y*Z )' ( *Y'*Z )']' bbiamo dunque la NND di tre attori: il attore ( '*Y'*Z)' è la NND delle variabili,y e Z; il attore ( '*Y *Z)' è la NND delle variabili,y e Z ed il attore ( *Y'*Z)' è la NND delle variabili,y e Z. Considerando che anche il complemento è ottenibile (nel modo già visto) mediante una porta NND, concludiamo che possiamo implementare la unzione considerata in termini di sole porte NND. ESEMPIO Consideriamo la seguente unzione T, espressa nella prima orma canonica: T = (,4,,,,,) ogliamo trovarne l espressione analitica e, se possibile, vogliamo anche trovarne una orma minima. In primo luogo, dobbiamo sapere quante sono le variabili coinvolte nella unzione, o, in altre parole, quanti sono gli ingressi. Dato che non ci sono speciiche implicazioni, possiamo ritenere che gli ingressi siano solo 4: inatti, con 4 variabili di ingresso, il numero massimo di mintermini è (numerati da a ), per cui sono compresi tutti i mintermini indicati nell espressione di partenza. ndiamo allora a considerare i mintermini indicati nell espressione, utilizzando la tavola della verità della unzione e indicando con a,b,c e d le variabili di cui T è unzione:
27 lgebra booleana n mintermine) 4 a b c d T mintermine a' b' cd a' bc' d' a' bc' d a' bcd' a' bcd ab' cd abcd Nella tabella abbiamo ovviamente considerato solo i mintermini indicati nell espressione T = (,4,,,,,), ossia i mintermini corrispondenti a tutte e sole le combinazioni degli ingressi in corrispondenza delle quali la unzione T vale. Facendo dunque la somma di tali mintermini, otteniamo l espressione analitica della unzione secondo la prima orma canonica: ( a' b' cd) ( a' bc' d' ) ( a' bc'd) ( a' bcd' ) ( a' bcd) ( ab'cd) ( abcd) T (a, b,c,d) = olendo rappresentare questa espressione mediante uno schema logico, possiamo utilizzare una rappresentazione schematica del tipo seguente: l uscita dello schema è, in pratica, una OR dei singoli mintermini, che sono in numero di, per cui possiamo utilizzare appunto in uscita una porta OR dotata di ingressi (e ovviamente di una sola uscita). Per quanto riguarda tali ingressi, essi rappresentano, ciascuno, l uscita di una porta ND a 4 ingressi, che sono appunto le 4 variabili di ingresso, alcune complementate ed altre no. bbiamo dunque una tipica realizzazione a livelli, dove ogni livello raccoglie porte tutte dello stesso tipo: nel nostro caso, il primo livello è costituito da porte ND a 4 ingressi, mentre il secondo livello è costituito da porta OR a ingressi. Costo di una unzione booleana Sulla base dell espressione analitica di una unzione booleana, è possibile deinire il costo della unzione stessa, legato allo schema logico corrispondente all espressione considerata: il costo di una unzione booleana è la somma di due contributi, uno (che indicheremo con C L ) pari al numero di variabili prelevate dall ingresso e l altro (che indicheremo con C T ) pari al numero di porte in ingresso aventi più di un ingresso. In ormule, abbiamo cioè che C = C C unzione Per capire il signiicato di questa deinizione, consideriamo l espressione di T prima ricavata (e lo schema logico corrispondente): ( a' b'cd) ( a' bc' d' ) ( a' bc'd) ( a' bcd' ) ( a' bcd) ( ab'cd) ( abcd) T = Il costo di questa unzione è 8=, dove 8(=4*) sono il numero di variabili prelevate dall ingresso, ossia il numero di variabili presenti nei singoli termini da cui è composta l espressione, mentre è il numero di porte di ingresso con più di un ingresso, ossia il numero di termini, nell espressione analitica, ormati da più di una variabile. L T
28 ppunti di Elettronica Digitale - Capitolo Una cosa interessante è la seguente: ogni mintermine che compare nell espressione di T vale in corrispondenza di una sola combinazione degli ingressi ed è ovvio che, in corrispondenza di questa stessa combinazione, tutti gli altri mintermini valgono. Questo deriva semplicemente dalla deinizione di prima orma canonica, in base alla quale i mintermini sono tanti quante sono le combinazioni di ingresso in corrispondenza delle quali la unzione vale. questo punto, ci chiediamo se è possibile sempliicare l espressione della unzione ottenuta poco a, al ine evidentemente di sempliicare anche la corrispondente implementazione pratica. tal ine, l unico strumento (per ora) a nostra disposizione consiste nell applicare i teoremi ondamentali dell algebra booleana. Per esempio, si osserva, nell espressione di T, che ci sono alcune coppie di mintermini che dieriscono solo per una variabile: a' b' cd ab' cd ( ) ( ) ( a' bcd' ) ( a' bcd) ( a' bc' d' ) ( a' bc' d) Se allora mettiamo in evidenza le variabili comuni, applicando la proprietà distributiva del prodotto rispetto alla somma, abbiamo quanto segue: ( a' b' cd) ( ab' cd) = ( a' a) b' cd ( a' bcd' ) ( a' bcd) = ( d' d) a' bc ( a' bc' d' ) ( a' bc' d) = ( d' d) a' bc' questo punto, sappiamo che la somma di una variabile con la sua complessa coniugata vale, per cui possiamo scrivere che a' b' cd ab' cd = a' a b' cd = b' cd ( ) ( ) ( ) ( a' bcd' ) ( a' bcd) = ( d' d) a' bc = a' bc ( a' bc' d' ) ( a' bc' d) = ( d' d) a' bc' = a' bc' per cui, tornando nell espressione di T, abbiamo quanto segue: T (a, b,c,d) = b' cd a' bc a' bc' 8 ( abcd) E evidente che abbiamo eettuato una notevole sempliicazione, pervenendo ad una espressione di T che non è più una orma canonica. Il costo di questa nuova espressione della unzione T è 4=, dove sono le variabili coinvolte e 4 i termini in cui compare più di una variabile. Rispetto al costo di trovato per la orma canonica, la sempliicazione è evidente. Possiamo are ancora un altra cosa al ine di eliminare l unico mintermine rimasto: inatti, se torniamo all espressione completa di T come prima orma canonica, osserviamo che il mintermine (abcd) ha in comune variabili con il mintermine precedente (ab cd) che noi abbiamo successivamente sempliicato. llora, prima di sempliicare tale mintermine, nessuno ci impedisce di duplicarlo, ossia di scriverlo volte nell espressione di T: inatti, per una nota proprietà, la somma di una variabile booleana con se stessa è ancora la variabile booleana stessa, per cui l espressione di T non cambia. Fatto questo passo iniziale, possiamo eettuare la stessa sempliicazione atta prima e possiamo inoltre scrivere che a ' bcd abcd = a a' bcd = ( ) ( ) ( ) bcd
29 lgebra booleana per cui l espressione di T diventa la seguente: T (a, b, c,d) = b' cd a' bc a' bc' bcd Il costo di T è adesso sceso a 4=. olendo implementare T, possiamo dunque usare uno schema logico molto più semplice di quello visto prima: bbiamo ancora due livelli, di cui il primo ormato solo da porte ND ed il secondo da una porta OR, con la dierenza, rispetto a prima, che le porte ND sono 4 e sono ciascuna a ingressi e, inoltre, che la porta OR è a soli quattro ingressi (tanti quante sono le porte ND). La sempliicazione rispetto a prima è evidente. Possiamo però ancora sempliicare: con lo stesso ragionamento di prima, ossia raggruppando i termini aventi variabili in comune, possiamo inatti scrivere che ( b' cd bcd) ( a' bc a' bc' ) = ( b' b) cd ( c c' ) a' b = cd a' b T (a, b,c,d) = bbiamo in tal modo ottenuto una orma minima (non è detto che sia l unica) della unzione T: il atto che sia una orma minima dipende chiaramente dal atto che non sono possibili ulteriori sempliicazioni. Il costo minimo di T è dunque 4=. Lo schema logico è il seguente: a b c d T Ricordiamo che gli invertitori vengono generalmente integrati nelle porte ND, per cui non ha molto senso parlare di un primo livello ormato dalle porte NOT. 9
30 ppunti di Elettronica Digitale - Capitolo questo punto, un altro problema che ci possiamo porre è quello di voler implementare la unzione T mediante sole porte NND, che sappiamo costituire un sistema unzionalmente completo. Supponiamo ad esempio di voler partire dalla seguente espressione di T : T (a, b, c,d) = b' cd a' bc a' bc' bcd Come già visto in precedenza, dobbiamo esprimere questa unzione in termini di sole operazioni NND (ricordando che una NND non è altro che il complemento del risultato di una ND). Possiamo allora esprimere T come complemento del suo complemento, applicando poi il teorema di De Morgan come segue: T = ( T' )' = [( b'cd a' bc a' bc' bcd) ']' = [( b' cd) '( a' bc) '( a' bc' )' ( bcd) ']' In base a questa espressione, la unzione T è espressa con la NND di 4 NND, per cui può essere implementata con sole porte NND bbiamo ancora una volta una realizzazione a livelli: il primo livello è costituito da 4 porte NND a ingressi, mentre il secondo livello è costituito da sola porta NND a 4 ingressi. E interessante osservare che, se conrontiamo quest ultimo schema con quello corrispondente alla unzione espressa come T (a, b, c,d) = b' cd a' bc a' bc' bcd, il numero delle porte logiche usate è lo stesso (anche le complementazioni usate sono le stesse). Se, anziché le porte NND, volessimo usare solo porte NOR, ci basterebbe scrivere quanto segue: T = = ( T' )' = [( b' cd a' bc a' bc' bcd) ']' = [( b' cd) '( a' bc) '( a' bc' )' ( bcd) ']' = [( b c' d' )( a b' c)( a b' c)( b' c' d' )]' = ( b c' d' )' ( a b' c) ' ( a b' c) ' ( b' c' d' )' Questa espressione di T è composta dall OR di 4 operazioni NOR, per cui non ci siamo ancora. Per arrivare ad una espressione in termini di sole porte NOR, ci basta complementare altre due volte: {[ ( T' )']' }' = [( b c' d' )' ( a b' c) ' ( a b' c) ' ( b' c' d' )']' T = { }' Questa espressione può essere realizzata con sole porte NOR. La dierenza, con gli schemi precedenti, è nell aggiunta di un terzo livello (ormato da una porta NOT con ingressi uguali) necessario a realizzare il complemento dell uscita del livello. Si deduce, perciò, che, mentre il passaggio dalla prima orma canonica alla cosiddetta orma NND è abbastanza immediato, risulta leggermente più complesso il passaggio della prima orma canonica alla cosiddetta orma NOR. E intuitivo aspettarsi che il discorso si inverta se, anziché partire dalla prima orma canonica (somma di mintermini), partiamo dalla seconda orma canonica (prodotto di maxtermini) della unzione T: è acile veriicare che, in questo caso, il passaggio alla orma NOR è più agevole del passaggio alla orma NND. Un altra cosa interessante da osservare viene uori se conrontiamo lo schema logico corrispondente alla orma NND e quello corrispondente alla orma NOR: inatti, a parte il terzo livello nella orma NOR, si trova che il numero di porte, nei primi due livelli, è lo stesso nei due schemi, che il numero di ingressi di ciascuna porta è lo stesso, ma che le complementazioni sono invertite (nel senso che gli ingressi non complementati nella orma NND lo sono nella orma NOR e, viceversa, quelli complementati nella orma NND non solo sono nella orma NOR). Questo è un risultato assolutamente generale che consente un passaggio abbastanza immediato da uno schema all altro.
31 lgebra booleana ESEMPIO Facciamo adesso un esempio in qualche modo inverso al precedente, nel senso che ci chiediamo, data una unzione espressa in orma minima, quale sia la sua orma canonica. Supponiamo che la unzione (di variabili booleane a,b,c), espressa appunto in orma minima, sia la seguente: T = a b' c E una unzione molto semplice di costo 4 (abbiamo variabili di ingresso ed solo termine in cui compaiono più di una variabile). Per arrivare alla prima orma canonica di questa unzione, ci basta applicare alcuni teoremi ondamentali dell algebra booleana: per esempio, date variabili booleane,y,z, possiamo scrivere che = = Y Y' = Y Y' = Y Y' Z Z' = YZ YZ' Y' Z Y' Z ( ) ( ) ( ) ( ) ' Partendo cioè da una generica variabile booleana, siamo sempre in grado di moltiplicarla per opportuni termini (cioè YY, ZZ e così via se ci sono altre variabili) in modo da esprimerla come somma di mintermini. pplicando questa proprietà al nostro caso, abbiamo quanto segue: ( b b' )( c c' ) b' c( a a' ) = abc abc' ab' c ab' c' ab' c a' bc T = a b' c = a Il termine ab c compare due volte, per cui ne eliminiamo uno, in modo da ottenere la seguente espressione di T: T = a b' c = abc abc' ab' c ab' c' a' bc Questa è una espressione di T come prima orma canonica e sappiamo che è anche l unica esistente. Il costo di questa orma canonica è =. Nota la unzione in termini di prima orma canonica, possiamo rapidamente determinarne la tabella della verità, associando valore solo in corrispondenza dei mintermini che compaiono nell espressione: a b c T mintermine a' b' c' a' b' c a' bc' a' bc ab' c' ab' c abc' abc
32 ppunti di Elettronica Digitale - Capitolo lgebra delle proposizioni INTRODUZIONE Si deinisce proposizione una rase che, di per sé, è vera oppure alsa, senza possibilità di ambiguità. Ci sono diverse operazioni che si possono compiere con le proposizioni: congiunzione e : congiungendo due o più proposizioni con la congiunzione e, si ottiene una proposizione che sarà vera solo se tutte le proposizioni componenti sono vere (operazione ND); disgiunzione o : congiungendo due o più proposizioni con la disgiunzione o, si ottiene una proposizione che sarà vera se almeno una delle proposizioni componenti è vera (operazione OR); implicazione materiale: date due proposizioni e, l operazione di implicazione materiale è quella per cui, ad esempio, se la proposizione è vera, anche la proposizione è vera; questa operazione si indica con una scrittura del tipo. ESEMPIO Per comprendere a pieno i concetti appena esposti a proposito delle proposizioni, acciamo un esempio concreto. Supponiamo di avere una cassaorte dotata di pulsanti, che indichiamo con,,c,d ed E. Supponiamo, inoltre, che tale cassaorte si apra solo se i pulsanti sono premuti rispettando le seguenti prescrizioni: ) o o o entrambi devono essere premuti; ) C o E, ma non entrambi, devono essere premuti; ) e C sono entrambi premuti o nessuno dei due lo è; 4) se D è premuto, E deve essere premuto e, se D non è premuto, neanche E deve essere premuto; ) se non è premuto, e D devono essere entrambi premuti. Il nostro scopo è quello di individuare la e le combinazioni di tasti che aprono la cassaorte, ossia che soddisano queste prescrizioni. Possiamo evidentemente utilizzare i concetti dell algebra di commutazione: ognuno dei pulsanti sarà una variabile booleana che vale, ad esempio, se il pulsate è premuto e in caso contrario; l apertura della cassaorte sarà evidentemente una unzione, delle variabili booleane che rappresentano i pulsanti, ed assumerà, per esempio, valore se la cassaorte si apre e valore se la cassaorte rimane chiusa.
33 lgebra booleana N.. E chiaro che la scelta di associare il valore o il valore ad un particolare evento è del tutto arbitraria, nel senso che potevamo anche attribuire valore ad un pulsante premuto oppure il valore alla cassaorte chiusa. bbiamo dunque una unzione (,, C, D, E) di variabili booleane, della quale ci interessa in pratica individuare la tabella della verità, in modo da individuare le combinazioni di ingresso per le quali la unzione stessa vale. Le possibilità sono ovviamente =. Possiamo allora applicare l algebra delle proposizioni, assumendo che ciascuna delle prescrizioni iniziali sia una proposizione. In primo luogo, è evidente che le prescrizioni devono essere tutte veriicate ainché la cassaorte si possa aprire, per cui l espressione di sarà una ND delle proposizioni corrispondenti alle prescrizioni: ( prescrizione) ( prescrizione) ( prescrizione) ( 4 prescrizione) ( prescrizione) = Cominciamo dalla prima prescrizione, in base alla quale la cassaorte sicuramente si apre se o o sono entrambi premuti. Ciò signiica, avendo detto che attribuiamo il valore ad un interruttore aperto, che la prima prescrizione è traducibile con : ( ) ( prescrizione) ( prescrizione) ( 4 prescrizione) ( prescrizione) = La seconda prescrizione dice invece che la cassaorte sicuramente si apre se o C o E, ma non entrambi, è premuto. Ciò signiica che la seconda prescrizione è traducibile con C E (dove ricordiamo che la unzione EOR assume valore se gli ingressi sono uguali, ossia se gli interruttori sono entrambi premuti o entrambi non premuti, e valore in caso contrario, ossia se solo uno dei due è premuto): quindi ( ) ( C E) ( prescrizione) ( 4 prescrizione) ( prescrizione) = La terza prescrizione dice, in pratica, il contrario della precedente, ma con rierimento ai pulsati e C: ricordando allora che la unzione ENOR assume valore se gli ingressi sono uguali, ossia se gli interruttori sono entrambi premuti o entrambi non premuti, e valore in caso contrario, ossia se solo uno dei due è premuto, deduciamo che la terza prescrizione è traducibile con ( C)' : ( ) ( C E) ( C )' ( 4 prescrizione) ( prescrizione) = La quarta prescrizione è una implicazione, in base alla quale E è premuto solo se D è premuto; in altre parole, essa dice che i due interruttori devono essere entrambi premuti, per cui possiamo tradurla semplicemente con D E : ( ) ( C E) ( C )' ( D E) ( prescrizione) = Inine, l ultima prescrizione coinvolte tre pulsanti e dice che se non è premuto, e D devono essere entrambi premuti. Questa proposizione deve quindi valere nell unico caso in cui vale e e D valgono entrambi, per cui può essere tradotta con ' D e possiamo perciò concludere che = ( ) ( C E) ( C )' ( D E) ( ' D)
34 ppunti di Elettronica Digitale - Capitolo Ricavare la tabella della verità di partendo da questa espressione è alquanto lungo (anche se non complicato), per cui ci conviene provare a sempliicare. tale ine, cominciamo con l indicare le espressioni esplicite delle unzioni EOR e ENOR: ( )( C' E CE' )( ' C' C)( DE)( ' D) = desso eseguiamo il prodotto tra il primo ed il terzo attore ed inoltre quello tra gli ultimi due attori: = ' C' C ' C' C C' E CE' ' DDE ( )( )( ) Possiamo chiaramente eliminare il termine C dove la variabile compare sia complementata sia non complementata e possiamo inoltre sempliicare C=C e DDE= DE: ( ' C' C C)( C' E CE' )( ' DE) = Inoltre, possiamo scrivere che C C = ( )C = C, per cui ( ' C' C)( C' E CE' )( ' DE) = Eseguendo adesso il prodotto tra i primi due attori, abbiamo che = = ( ' C' C' E ' CC' E' CC' E CCE' )( ' DE) = ( ' C' E CE' )( ' DE) ' ' C' DEE ' CDE' E = ' C' DE bbiamo dunque concluso che = ' C' DE e questa è una espressione che risolve il nostro problema, in quanto ci dice che l unica combinazione di ingresso per la quale = (cioè cassaorte aperta) è = ' = = C' = C = D = E = In termini concreti, la cassaorte si apre se premiamo soltanto,d ed E. Questo è ovviamente un caso semplice in cui le variabili isiche di ingresso (cioè in questo caso gli interruttori) possono assumere solo due valori discreti; più complicato è il caso in cui i valori discreti sono più di e ancora più complicato è il caso in cui i valori possibili sono distribuiti con continuità entro un certo intervallo. In quest ultimo caso, il modo più semplice di procedere, per ricondursi a variabili booleane, è quello di issare una soglia: quando il generico ingresso supera il valore di soglia, si attribuisce alla corrispondente variabile booleana il valore (oppure ), mentre, quando esso è al di sotto della soglia, si prende il valore (oppure ). a ovviamente considerato anche il caso in cui l ingresso è esattamente pari alla soglia ed è in questo caso indierente associare il valore o il valore a tale condizione. = 4
35 lgebra booleana Mappe di Karnaugh INTRODUZIONE Nei paragrai precedenti è stata più volte messa in evidenza la convenienza di determinare la orma minima di una data unzione booleana. Gli unici strumenti che inora abbiamo avuto a disposizione per eettuare sempliicazioni di unzioni booleane erano i teoremi e le proprietà dell algebra booleana e l intuito. ogliamo ora descrivere, invece, un modo abbastanza rigoroso per la sempliicazioni della unzioni booleane. Consideriamo una generica unzione booleana di N variabili booleane. Sappiamo che la prima orma canonica di questa unzione sarà composta dalla somma di un certo numero di mintermini, che al più sono N (tanti quante sono le combinazioni di ingresso). Questi N mintermini possono essere indicati in una particolare tabella, detta mappa di Karnaugh della unzione, in cui ogni casella corrisponde appunto ad un mintermine: se il mintermine corrispondente ad una casella è presente nell espressione della prima orma canonica della unzione (ossia se la unzione vale per la corrispondente combinazione di ingresso), la casella viene riempita con il simbolo, mentre in caso contrario la casella viene lasciata vuota (in teoria andrebbe riempita con, ma è conviene sempliicare al massimo le notazioni). Fin qui, dunque, niente di particolare: abbiamo N caselle, di cui quelle riempite sono quelle corrispondenti ai mintermini che compaiono nell espressione della unzione. Si tratta ora di capire come costruire la tabella contenente queste N caselle: lo scopo è, ovviamente, quello di trovare una sistemazione delle caselle che consenta poi una riduzione immediata della unzione. Cominciamo dal caso semplice di una unzione di N= variabili, cui corrispondono quindi =4 mintermini e quindi 4 caselle. La mappa di Karnaugh di tale unzione è così atta: Ogni casella corrisponde, come detto, ad un mintermine: Y (mintermine) a b c a c b d d Nel caso di N= variabili, i mintermini, e quindi la caselle, diventano =8 e ci sono due possibilità:
36 ppunti di Elettronica Digitale - Capitolo Nel caso di N=4 variabili, i mintermini sono 4 = e la corrispondente mappa di Karnaugh è atta nel modo seguente: Fermiamoci per il momento a unzioni di 4 variabili. Si pone il problema di associare le caselle ai mintermini. La soluzione è nell adottare un metodo di indirizzamento, ossia nell associare a ciascuna casella un indirizzo: tale indirizzo corrisponderà, ovviamente, al numero del corrispondente mintermine. Per esempio, nel caso di unzione a variabili, avremo quanto segue: Y mintermine (indirizzo) L indirizzo viene generalmente scritto in alto a sinistra della casella, in modo da lasciare adeguato spazio per inserire l eventuale che indica la presenza del corrispondente mintermine nell espressione della unzione. Per esempio, la mappa di Karnaugh della unzione ND è la seguente: Y Y () () () ()
37 lgebra booleana La mappa di Karnaugh della unzione EOR è invece la seguente: Y Y () () () () E ovvio che, essendoci distinte unzioni di variabili booleane, esisteranno solo mappe di Karnaugh a 4 caselle diverse tra di loro. Passiamo adesso a unzioni di variabili booleane, per le quali il metodo di indirizzamento è leggermente più complesso del caso precedente. Tale indirizzamento può essere realizzato utilizzando il già citato metodo del cubo, che è sintetizzato nella igura seguente: Riportando su un unico piano le acce di questo cubo, si ottiene il seguente indirizzamento della mappa di Karnaugh a 8 caselle: \ Y Z Le caselle della prima riga corrispondono tutte ad =, mentre quelle della seconda riga corrispondono a =; per quanto riguarda, invece, le colonne, si ha quanto segue: colonna Y= e Z=; colonna Y= e Z=; colonna Y= e Z=; 4 colonna Y= e Z=; In termini di indirizzi decimali, gli indirizzi sono dunque i seguenti: 4
38 ppunti di Elettronica Digitale - Capitolo Consideriamo, per esempio, la unzione avente la seguente tabella della verità: Y Z (, Y, Z) () // () // () x'*y*z' () x'*y*z (4) x * y'*z' () // () // () x * y*z La corrispondente mappa di Karnaugh è la seguente: 4 Passiamo adesso alle unzioni di 4 variabili booleane (che indichiamo, nell ordine, con -Y-Z,W), cui corrispondono mappe di Karnaugh a caselle. In questo caso, l indirizzamento è molto semplice, in quanto basta usare il noto metodo delle rilessioni: Y \ ZW Gli indirizzi decimali sono dunque i seguenti: Consideriamo ad esempio una unzione che abbia la seguente orma canonica: T = (,4,,,,,) 8
39 lgebra booleana La sua mappa di Karnaugh è atta nel modo seguente: desso consideriamo il problema inverso a quello appena esposto. Consideriamo una unzione che abbia la seguente mappa di Karnaugh: 4 ogliamo l espressione canonica della unzione. Per primo luogo, avendo una mappa con 8 caselle, deduciamo che la unzione è a variabili, che indichiamo, per esempio, con a,b e c; in secondo luogo, dato che caselle sono occupate, deduciamo che solo degli 8 mintermini compaiono nella orma canonica della unzione, ossia anche che tale unzione assume valore in corrispondenza di combinazioni di ingresso (e nelle rimanenti due combinazioni). Scrivendo gli indirizzi delle celle in binario, in modo da individuare rapidamente i corrispondenti mintermini, abbiamo quanto segue: Deduciamo dunque che la orma canonica di questa unzione è T (a, b,c) = (,,,,,) = a' b'c' a' b' c a' bc' ab' c abc' abc Si tratta di una unzione il cui costo è 8=4. Come ultimo caso consideriamo una unzione booleana di variabili booleane. Come si costruisce la sua mappa di Karnaugh? Ci si basa, in questo caso, su due distinte mappe: sia T (v, x, y, z, w) la generica unzione di variabili; se consideriamo a parte una qualsiasi di tali variabili, ad esempio la prima, con le altre quattro si può costruire una normale mappa a caselle del tipo visto per le unzioni a 4 variabili; allora, si costruiscono due mappe a caselle, di cui la prima sarà relativa a v= (cioè a v complementata) e la seconda relativa a v= (cioè a v non complementata): 9
40 ppunti di Elettronica Digitale - Capitolo Y \ ZW Y \ ZW (v = ) (v = ) E chiaro che gli indirizzi binari sono espressi con bit, corrispondenti appunto alle variabili booleane di cui T è unzione. Facciamo anche qui un esempio concreto, supponendo che la unzione T (v, x, y, z, w) in esame abbia la seguente mappa di Karnaugh: Y \ ZW (v = ) Y \ ZW (v = ) La orma canonica corrispondente è la seguente: T = (,,,,,8,,4,,,8,9,,4,9, ) METODI DI RIDUZIONE TRMITE MPPE DI KRNUGH bbiamo dunque capito come costruire la mappa di Karnaugh di una unzione booleana. Dobbiamo adesso capire quale utilità abbiano queste rappresentazioni (che inora non hanno niente di sostanzialmente nuovo rispetto alle tabelle di verità) ai ini della sempliicazione delle unzioni. Partiamo da un esempio concreto. Consideriamo una unzione che abbia la seguente mappa di Karnaugh: 4 E immediato determinare l espressione canonica della unzione : T (x, y, z) = x' y' z 4 x' yz Questa espressione può essere sempliicata, in quanto entrambi i mintermini hanno in comune il termine x z: T (x, y, z) = y' y x' z = x' ( ) z Quella ottenuta è ovviamente una orma minima della unzione T. d essa si poteva arrivare direttamente dalla mappa di Karnaugh, senza i passaggi analitici appena eettuati: inatti, le due
41 lgebra booleana caselle considerate sono contraddistinte dagli stessi valori di x (=) e di z (=), mentre y cambia, per cui y stessa è la variabile che cade. Consideriamo ora quest altra mappa: 4 In questo caso, è la x che cambia tra le due caselle, mentre y e z rimangono le stesse (uguali rispettivamente a e ad ), per cui T (x, y, z) = y' z Più complesso è invece il caso di una mappa come la seguente: 4 In questo caso, tra le caselle e cade la y, mentre tra le caselle e cade la x. Non c è apparentemente alcun criterio con cui scegliere quale variabile ar cadere: prima possibilità T (x, y, z) = x' z xy' z seconda possibilità T (x, y, z) = x' yz y' z I prossimi discorsi sono allora volti a capire come arontare casi di questo tipo. Cominciamo con alcune deinizioni. Date due unzioni booleane e g, si dice che la unzione copre la unzione g (in simboli si scrive g) se tutti gli della unzione g sono della unzione ma non viceversa. Detto in termini più ormali, se indichiamo con U e U g gli insiemi di, rispettivamente, di e di g, la deinizione prevede che x U : x U. g E chiaro che, se avviene anche il viceversa, ossia se y U : y U g, le due unzioni sono uguali (si suppone ovviamente uguale il numero di variabili di ingresso). Supponiamo adesso che copra la unzione g. Se la unzione g è un prodotto di variabili, si dice che essa rappresenta un implicante della. E chiaro, quindi, che la unzione copre tutti i suoi implicanti. Tra gli implicanti di una unzione, ce ne sono possono essere alcuni, detti implicanti primi, di particolare importanza: supponiamo che sia una unzione di N variabili booleane e che un dato implicante di tale unzione sia dato dal prodotto di m (minore di N) variabili; allora, se il prodotto di m- variabili tra quelle che costituiscono l implicante non copre la unzione, si dirà che l implicante considerato è un implicante primo. Facciamo un esempio concreto. Consideriamo una unzione booleana T (a, b, c, d, e,, g) di variabili booleane e supponiamo che il prodotto ab ' c' de sia un implicante di questa unzione. Se, da questo prodotto, eliminiamo una variabile per volta, otteniamo prodotti: si tratta dei prodotti b ' c' de, ac ' de, ab ' de, ab ' c' e e ab ' c' d. inché il prodotto ab ' c' de sia un implicante primo, la unzione T deve valere in corrispondenza delle stesse combinazioni di ingresso per le quali i prodotti valgono a loro volta : 4
42 ppunti di Elettronica Digitale - Capitolo il prodotto b ' c' de vale quando ( b =, c =, d =, e = ), per cui, ainché l implicante ab' c' de b =, c =, d =, e = ; sia primo, la unzione T deve valere anch essa quando ( ) il prodotto ac ' de vale quando ( a =, c =, d =, e = ), per cui, ainché l implicante ab' c' de sia primo, la unzione T deve valere anch essa quando ( a =, c =, d =, e = ) e così via con gli altri prodotti. In altre parole, se nessuno dei prodotti è un implicante della T, allora ab ' c' de è un implicante primo di T. Come vedremo, ai ini della riduzione di una unzione T mediante le mappe di Karnaugh, quelli che interessano sono proprio gli implicanti primi, che possono essere individuati acilmente direttamente sulle mappe. questo punto torniamo alle mappe di Karnaugh. bbiamo visto che, per eliminare una variabile in due mintermini, essi devono essere necessariamente adiacenti tra di loro. llora, il raggruppamento tra mintermini adiacenti in una mappa di Karnaugh si chiama subcubo di ordine. Esistono anche subcubi di ordine maggiore di. d esempio, un subcubo di ordine è ormato da 4 caselle di una mappa di Karnaugh, disposte in modo tale che ciascuna casella sia adiacente ad altre due (deve cioè avere due lati ciascun in comune con altre due caselle). E acile accorgersi che ci possono essere solo possibili subcubi di ordine : In ognuna di queste possibilità, ciascuna casella è adiacente ad altre due: mentre questo è evidente nel quadrato di 4 caselle, lo è di meno negli altri due casi, ma bisogna tener presente che la prima e l ultima casella del vettore riga e del vettore colonna sono tra loro adiacenti, nel senso che i loro indirizzi binari dieriscono per un solo bit. Consideriamo, ad esempio, la seguente mappa di Karnaugh di una unzione di variabili: Come si nota, abbiamo un subcubo di ordine, in quanto la casella più a sinistra e quella più a destra del subcubo hanno indirizzi che dieriscono di un solo bit. Facciamo inoltre osservare che il quadrato di 4 caselle può anche essere relativo a 4 caselle d angolo della mappa di Karnaugh considerata. Consideriamo ad esempio la seguente mappa: In questa mappa abbiamo due subcubi di ordine : 4
43 lgebra booleana 8 Esistono poi subcubi di ordine (tali cioè che ogni caselle sia adiacente ad altre ), subcubi di ordine 4 (tali cioè che ogni caselle sia adiacente ad altre 4) e così via. L ordine di un subcubo è particolarmente importante in quanto coincide al numero di variabili che possiamo eliminare dai mintermini che costituiscono il subcubo stesso. Consideriamo proprio l esempio di poco a, che corrisponde ad una unzione la cui prima orma canonica è evidentemente ( 4,,,) = ab' c' ab' c abc' abc T = Tra i mintermini 4 e (che hanno in comune il termine ab ) cade la variabile c ed anche tra i mintermini e (che hanno in comune il termine ab) cade la variabile c: quindi T = ab' ab. Possiamo inoltre mettere in evidenza la a, in modo da eliminare la b: concludiamo che T = a. In totale, abbiamo eliminato delle variabili, come previsto dal atto che il subcubo considerato era di ordine. questo punto, possiamo ornire delle regole generali per la riduzione di una unzione booleana a partire dalla sua mappa di Karnaugh: il primo passo consiste nell individuare tutti gli implicanti primi della unzione, che corrispondono a tutti i possibili subcubi che si possono individuare nella mappa della unzione stessa; nell elenco degli implicanti primi bisogna individuare quelli essenziali; a questo punto, la unzione sarà data dalla somma degli implicanti primi essenziali. E evidente che si può presentare un caso particolare e cioè quello in cui la unzione non presenta implicanti primi essenziali: il modo di procedere, in questo caso, è quello di prendere il numero minimo di implicanti primi che copre la unzione. Per capire bene il concetto, rimandiamo ad un apposito esempio che sarà illustrato in seguito. Resta inoltre da capire come si possano individuare gli implicanti primi e come gli implicanti primi essenziali. Per quanto riguarda gli implicanti primi, essi corrispondono semplicemente a tutti i possibili subcubi che si possono individuare nella mappa della unzione. Per quanto riguarda, invece, gli implicanti primi essenziali, corrispondono a quegli implicanti primi che coprono almeno un mintermine che non è coperto da nessun altro implicante primo. Negli esempi che seguono, questi concetti saranno ampiamente chiariti. ESEMPIO Consideriamo nuovamente la unzione T (v, x, y, z, w) avente la seguente mappa di Karnaugh: Y \ ZW (v = ) Y \ ZW (v = ) 4
44 ppunti di Elettronica Digitale - Capitolo Per comodità, riportiamo queste stesse mappe con gli indirizzi espressi in decimale: Y \ ZW 4 9 (v = ) 8 4 Y \ ZW (v = ) 9 8 Dobbiamo per prima cosa individuare gli implicanti primi, che corrispondono a tutti i possibili subcubi presenti nella mappa: cominciando dai subcubi di ordine maggiore, non ci sono subcubi di ordine (ormati cioè da 8 caselle adiacenti), mentre si osserva la presenza di distinti subcubi di ordine (ormati cioè da 4 caselle adiacenti): = (,,,) = (,,4,) C = (,,,) D = (,,8,) E = (,,8,9) passiamo adesso ai subcubi di ordine (ormati cioè da caselle adiacenti): F = (,) G = (8,4) H = (,) I = (,4) L = (,8) M = (9,) Questi sono dunque tutti gli implicanti primi della unzione considerata. desso dobbiamo individuare gli implicanti primi essenziali, ossia gli implicanti primi che coprono almeno un mintermine che non sia coperto da altri implicanti prima. Per are questo, conviene riportare, in una apposita tabella, gli implicanti e i mintermini da essi coperti: C D E F G H I L M La tabella riporta in ordinate gli implicanti primi e in ascisse i mintermini che compaiono nella orma canonica della unzione. Per ogni riga, cioè per ogni implicante, le caselle contrassegnate con corrispondono a mintermini coperti dall implicante stesso. llora, per individuare eventuali implicanti primi, ci basta individuare le colonne con una sola : si tratta evidentemente delle colonne corrispondenti ai mintermini,8,,4,9,,9, che sono coperti, rispettivamente, dagli implicanti 44
45 lgebra booleana F,G,C,,E,D ed M. Deduciamo perciò che questi sono implicanti primi essenziali, per cui possiamo cominciare a scrivere che T = C D E F G M... questo punto, per semplicità di ragionamento, andiamo a cancellare dalla tabella sia le righe corrispondenti agli implicanti primi essenziali appena individuati sia le colonne dei mintermini coperti da tali implicanti, in modo da veriicare se ci sono ancora dei mintermini rimasti non coperti: D H I L Ci accorgiamo in questo modo che è rimasto un solo mintermine scoperto, ossia il ; è anche evidente che tale mintermine è coperto sia dall implicante I sia dall implicante L, per cui è indierente scegliere l uno o l altro, dal che deduciamo che abbiamo due orme minime per la unzione T in esame: I T = C D E F G M L Una volta individuati, dunque, gli implicanti che costituiscono le orme minime di T, dobbiamo trovarne le rispettive espressioni analitiche, studiando le adiacenze delle caselle da cui ciascun implicante è ormato. Cominciamo dall implicante, che raggruppa le caselle,,4,: Y \ ZW (v = ) 4 In queste 4 caselle, le variabili che rimangono uguali sono la Y (che vale ), la (che vale ) e la Z (che vale ), mentre passano da ad le rimanenti variabili e W. Deduciamo che proprio queste due variabili cadono, per cui il termine rimanente è composto dal prodotto delle variabili Y, e Z: dato che solo vale, solo essa va complementata, per cui concludiamo che = ' YZ. 4
46 ppunti di Elettronica Digitale - Capitolo Passiamo all implicante C, che raggruppa le caselle,,,: Y \ ZW (v = ) In questo caso, rimangono costanti le variabili Z (che vale ), W (che vale ) e (che vale ), mentre passano da ad le rimanenti variabili e Y. Deduciamo che C = ' ZW N.. Si osserva che gli implicanti primi essenziali e C hanno due celle in comune (la e la ), il che, come si vede, corrisponde ad avere in comune il termine Z. Passiamo ora all implicante D, che contiene la caselle,,8,: Y \ ZW Y \ ZW (v = ) 4 (v = ) In questo caso, cambiano valore le variabili e Y, mentre vale, Z vale e W=, per cui D = ' ZW' L ultimo implicante che comprende 4 caselle è E, che comprende le caselle,,8,9: Y \ ZW Y \ ZW (v = ) 4 (v = ) Le variabili che cambiano sono ancora la e poi la W, mentre ==Y e Z=, per cui E = ' Y' Z 4
47 lgebra booleana Rimangono adesso gli implicanti corrispondenti a subcubi di ordine, la cui deinizione è immediata: F = (,) cade Z F = ' ' YW G = (8,4) cade G = Y' Z' W' H = (,) cade H = YZW I = (,4) cade I = Y' Z' W' L = (,8) cade Z L = ' Y' W' M = (9,) cade Z M = YW Siamo così giunti all espressione minima della unzione T assegnata: T = ( ' YZ) ( ' ZW) ( ' ZW' ) ( ' Y' Z) ( ' ' YW) ( Y' Z' W' ) ( YW) Y' ' Z' W' Y' W' ESEMPIO Consideriamo una unzione T di 4 variabili booleane avente la seguente orma canonica: T(a, b, c, d) =,,,8,9,,,,,4, ( ) La corrispondente mappa di Karnaugh è atta nel modo seguente: In questa mappa abbiamo la possibilità di individuare un subcubo di ordine, ormato cioè da 8 caselle disposte in modo tale che ciascuna sia adiacente ad altre : caselle 8,9,,,,,4, Ci sono inoltre due subcubi di ordine : caselle,,, C caselle,,4, bbiamo dunque implicanti primi: ( 8,9,,,,,4,) = = (,,,) C = (,,4,) 4
48 ppunti di Elettronica Digitale - Capitolo Dobbiamo adesso capire se, tra questi implicanti primi, ce ne sono alcuni essenziali, per cui utilizziamo l apposita tabella: C Le colonne con una sola sono quelle corrispondenti ai mintermini,,8,9,,, e, che sono coperti da, da e da C, per cui deduciamo che tutti e tre gli implicanti primi sono essenziali. Dato che questi implicanti coprono tutti i mintermini, possiamo subito scrivere che T = C Dobbiamo ora trovare le espressioni analitiche di questi implicanti e, a questo scopo, riportiamo la mappa della unzione con gli indirizzi espressi in binario: ab \ cd Per quanto riguarda il subcubo di ordine corrispondente ad, ci si accorge che solo a non cambia segno, per cui =a; per quanto riguarda, invece, cambiano a e c, che quindi cadono, per cui =bd; inine, per quanto riguarda C, le variabili che cadono sono a e d, per cui C=bc. Possiamo dunque concludere che T = a bd bc ESEMPIO Consideriamo una unzione che abbia la seguente mappa di Karnaugh: 4 E immediato trovare l espressione della unzione come prima orma canonica: T (a, b,c) = (,,,,,) = a' b'c' a' b' c a' bc' ab' c abc' abc Si tratta di una unzione il cui costo è 8=4. Possiamo applicare i teoremi ondamentali dell algebra booleana per sempliicare questa espressione: 48
49 T(a, b,c) = = a' b' bc' ac ( a' b' c' a' b' c) ( a' bc' abc' ) ( ab' c abc) = ( c' c) a' b' ( a' a) bc' ( b' b) lgebra booleana ac = Questa è sicuramente una orma minima della unzione. Essa è stata però ricavata analiticamente. ediamo cosa è possibile are usando il metodo basato sulle adiacenze nella mappa di Karnaugh della unzione. Per are questo, dobbiamo per prima cosa individuare gli implicanti primi della unzione, studiando le adiacenze nella mappa di Karnaugh della unzione stessa: = (,) = (,) C = (, ) D = (,) E = (,) F = (,) Dobbiamo adesso capire se, tra questi implicanti primi, ce ne sono alcuni essenziali. ndiamo allora a tracciare la tabella nella quale riportiamo, per ogni implicante, i corrispondenti mintermini coperti: C D E F Si osserva che la unzione non presenta implicanti primi essenziali: inatti, non ci sono colonne contrassegnate da una sola, ossia non ci sono mintermini coperti da un solo implicante.. Ci troviamo, quindi, in un caso diverso da quelli esaminati in precedenza. Il modo di procedere, in questi casi, è indicato da una regola precedente enunciata: dobbiamo considerare il numero minimo di implicanti primi necessario per coprire tutti i mintermini della unzione. Per ottenere questo, non possiamo ar altro che partire da un implicante che copra il maggior numero di mintermini: in questo caso particolare, dato che tutti gli implicanti coprono mintermini, possiamo scegliere un implicante qualsiasi e partiamo perciò dal primo, ossia da. Cominciamo dunque a scrivere che T=... e cancelliamo dalla tabella la riga corrispondente ad e le colonne corrispondenti ai mintermini coperti da stesso: C D E F Dobbiamo ora proseguire scegliendo un altro implicante. Non conviene prendere o C, in quanto coprono ciascuno un solo mintermine, per cui prendiamo D: ciò signiica che T = D... e che possiamo cancellare sia la riga corrispondente a D sia le colonne dei mintermini coperti da D stesso: 49
50 ppunti di Elettronica Digitale - Capitolo C E F questo punto, ci troviamo in una situazione particolarmente avorevole, nella quale sono rimasti due soli mintermini e sono entrambi coperti da un implicante (che in questo caso è F): possiamo allora concludere il processo di riduzione prendendo T = D F Da qui dobbiamo adesso risalire all espressione della unzione: consideriamo l implicante, che comprende i mintermini adiacenti ed : tra questi due mintermini, la variabile che cambia è la z, che quindi cade, lasciando il prodotto tra le altre due variabili: date che entrambe valgono, le dobbiamo complementare, per cui concludiamo che = x' y' ; passiamo all implicante D, che comprende i mintermini adiacenti e : tra di essi, la variabile che cambia è la y, che quindi cade, lasciando il prodotto tra le altre due variabili, che non vanno complementate in quanto valgono entrambe : concludiamo che D = xz ; inine, consideriamo l implicante F, che comprende i mintermini adiacenti e : la variabile che cade in questo caso è la x, mentre rimangono le altre due, di cui solo la z vale e quindi va complementata: concludiamo che F = yz'. Possiamo perciò scrivere che T = x' y' xz yz' E evidente che questa è una orma minima, dato che non possiamo operare alcuna ulteriore sempliicazione. questo punto, acciamo osservare che questa orma minima proviene dal atto di aver cominciato il processo di riduzione arbitrariamente dall implicante. ediamo allora come cambiano le cose se partiamo da un altro implicante: C D E F
51 lgebra booleana Consideriamo ad esempio l implicante, per cui cancelliamo la riga e le colonne corrispondenti: C D E F Successivamente consideriamo l implicante C, per cui la tabella si riduce alla seguente: D E F questo punto, restano ancora una volta due mintermini coperti da un unico implicante (cioè E), per cui possiamo scrivere che T = C E ndiamo allora a trovare l espressione analitica corrispondente a tali implicanti: implicante (caselle e ) cade la y e le altre due variabili vanno complementate = x' z' implicante C (caselle e ) cade la x e solo la y va complementata C = y' z implicante E (caselle e ) cade la z e le altre due non vanno complementate E = xy Concludiamo dunque che T = x' z' y' z xy Questa è un altra orma minima della unzione T. Essa ha lo stesso costo (=9) della precedente, il che è una conseguenza della mancanza di implicanti primi essenziali. Siamo dunque in un caso dove ci sono più orme minime della unzione, aventi però tutte lo stesso costo. Si parla, in questo caso, di unzioni cicliche. MPPE DI KRNUGH PER L SECOND FORM CNONIC I discorsi atti ino ad ora partivano tutti dal presupposto di utilizzare, per la unzione booleana assegnata, la prima orma canonica, ossia la somma di mintermini. ogliamo allora ar vedere che le mappe di Karnaugh si possono anche mettere in relazioni alla seconda orma canonica (prodotto di maxtermini) di una unzione booleana. Il presupposto teorico è, ovviamente, duale di quello visto per la prima orma canonica: consideriamo ad esempio una unzione booleana T ( x,..., x N ) delle N variabili booleane x,..., x N e
52 ppunti di Elettronica Digitale - Capitolo x' N. Si tratta cioè di maxtermini che dieriscono solo per l ultima variabile, che in un caso è complementata e nell altro no. E immediato dimostrare che, nel prodotto tra questi due maxtermini, la variabile x N è proprio quella che cade: applicando, per esempio, la proprietà distributiva della somma rispetto al prodotto, in supponiamo che in essa compaiano maxtermini del tipo ( ) x N base alla quale risulta Y Z = ( Y) ( Z) che e ( ), basta porre =, Y=x N e Z = x' N per accorgersi ( x ) ( x' ) N N = Quindi, in modo duale a quanto si a con rierimento alla prima orma canonica, anche per la seconda orma canonica tutto sta a studiare le adiacenze tra caselle vuote (o riempite con ) nella mappa di Karnaugh della unzione considerata. Per comprendere meglio il concetto, serviamoci di un esempio concreto e consideriamo perciò una unzione T di 4 variabili booleane (che indichiamo con w,x,y,z) avente la seguente mappa di Karnaugh: Dato che stiamo acendo rierimento alla seconda orma canonica, non ci interessano più i mintermini (corrispondenti a combinazioni di ingresso per le quali T vale ), ma i maxtermini (corrispondenti a combinazioni di ingresso per le quali T vale ), per cui ci conviene indicare questi sulla tabella: In questa mappa abbiamo la possibilità di individuare diversi subcubi, corrispondenti, in questo caso, a insiemi di celle adiacenti riempite con. Come al solito, partiamo dai subcubi di ordine maggiore: in una mappa di Karnaugh a caselle, l ordine maggiore dei subcubi è (cioè 8 caselle adiacenti), ma è evidente che non ci sono subcubi di questo ordine. Passiamo allora ai subcubi di ordine (cioè 8 caselle adiacenti), che in questo caso sono 4: caselle,,, =(,,,) caselle,4,8, =(,4,8,) C caselle,,, C=(,,,) D caselle,,4, D=(,,4,) Rimangono uori da questo elenco le caselle e, che appartengono a due subcubi di ordine : E caselle, E=(,) F caselle, F=(,)
53 lgebra booleana bbiamo dunque caselle, che in questo caso, però, non vengono chiamate implicanti, anche se, in pratica, hanno lo stesso signiicato. Dobbiamo adesso capire se, tra questi subcubi, ce ne sono alcuni essenziali, per cui andiamo a tracciare l apposita tabella: 4 8 C D E F Non abbiamo subcubi essenziali, per cui dobbiamo procedere come nell esempio precedente, partendo cioè da uno qualsiasi di essi, scelto, ovviamente, in modo da coprire il maggiore numero di maxtermini. Possiamo ad esempio considerare, che copre 4 maxtermini. Ciò signiica che possiamo cominciare a scrivere che T = e possiamo inoltre cancellare la tabella sia la riga corrispondente ad sia le colonne corrispondenti ai maxtermini coperti da stesso: 4 8 C D E F Possiamo adesso considerare, che copre maxtermini: C D E F Siamo dunque arrivati a T =.... Ora conviene considerare C, che copre maxtermini:
54 ppunti di Elettronica Digitale - Capitolo D E F questo punto non resta che considerare E ed F, per cui concludiamo che T = C E F Non resta adesso che trovare le espressioni dei termini,,c,e ed F: questo termine copre le caselle,,,, in corrispondenza delle quali rimangono costanti (pari entrambe a ) le variabili w ed x; deduciamo quindi che = w x ; questo termine copre le caselle,4,8,, in corrispondenza delle quali rimangono costanti (pari entrambe a ) le variabili y ed z; deduciamo quindi che = y z ; C questo termine copre le caselle,,,, in corrispondenza delle quali rimangono costanti le variabili w ed y (pari, rispettivamente, a ed ); deduciamo quindi che C = w y' ; E questo termine copre le caselle e, in corrispondenza delle quali rimangono costanti le w,x ed y (pari, rispettivamente, a,,); deduciamo quindi che cade la z e che E = w' x' y ; F questo termine copre le caselle e, in corrispondenza delle quali rimangono costanti le x,y e z (pari, rispettivamente, a,,); deduciamo quindi che cade la z e che F = x y' z' ; In conclusione, la orma minima di T (in termini di prodotto di somme) è ( w x)( y z)( w y' )( w' x' y)( x y' z' ) T = Il costo di questa orma minima è =, dove sono i prelevamenti all ingresso e (cioè tutte) le porte con almeno ingressi. CONDIZIONI DON T CRE Sappiamo che la tabella della verità di una generica unzione booleana T ha lo scopo di indicare, per ciascuna combinazione delle variabili di ingresso, il corrispondente valore ( oppure ) assunto da T stessa. In questo modo, la tabella deinisce in modo assolutamente univoco la unzione T considerata. Ci sono, invece, dei casi in cui la tabella della verità è incompleta da questo punto di vista, nel senso che non speciica il valore di T in corrispondenza di TUTTE le combinazioni di ingresso, ma solo in corrispondenza di alcune di esse. Consideriamo, per esempio, una unzione T di due variabili booleane, la cui tabella della verità sia ornita nel modo seguente: 4
55 lgebra booleana a b T Come si nota, la tabella ornisce il valore che T assume quando i due ingressi sono uguali, mentre non ornisce il valore che T assume quando i due ingressi sono diversi. Si dice allora che la unzione presenta due condizioni don tcare (cioè condizioni che non interessano), in corrispondenza delle combinazioni di ingresso e : il signiicato di questa situazione è che non è importante sapere quale valore assuma la T in corrispondenza di quelle combinazioni di ingresso, nel senso che interessa solo sapere il valore di T per le restanti combinazioni. I casi in cui possono presentarsi delle condizioni don t care sono molteplici: un tipico caso è quello dei convertitori di codice numerico, ossia quei circuiti che ricevono in ingresso una parola di un codice numerico e devono ornire in uscita la corrispondente parola espressa però in un altro codice. Consideriamo, per esempio, un convertitore di codice che riceva in ingresso una parola di codice CD (ormata perciò da 4 bit) e deve ornire in uscita la corrispondente parola del codice ad eccesso (ormata sempre da 4 bit è ottenuta da quella del codice CD sommando il numero binario, ossia ). olendo indicare la tabella della verità di questo convertitore (cioè della corrispondente unzione a 4 ingressi e 4 uscite), dobbiamo considerare le possibili parole del codice CD e le corrispondenti parole nel codice ad eccesso : a b c d u u u u 4 E evidente che questa tabella della verità speciica la combinazione di uscita solo in corrispondenza di combinazioni di ingresso, mentre non speciica l uscita in corrispondenza delle rimanenti combinazioni di ingresso. Essa presenta dunque condizioni don t care, nel senso che non importa sapere quale valore assuma l uscita in corrispondenza di queste combinazioni di ingresso. E acile intuire che le condizioni don t care possono essere di notevole aiuto nella riduzione delle unzioni a orma minima: inatti, proprio perché non interessa sapere il valore della unzione considerare in corrispondenza di una condizione don care, è possibile issare arbitrariamente tale valore e quindi si potrà scegliere il valore più conveniente. Facciamo un esempio per comprendere meglio il concetto. Consideriamo una unzione T(a,b,c) di tre variabili booleane, la cui tabella della verità sia la seguente:
56 ppunti di Elettronica Digitale - Capitolo a b c T Questa unzione presenta valore in corrispondenza di una sola combinazione di ingresso (), mentre presenta tre condizioni don t care (in corrispondenza delle combinazioni, e ). ogliamo trovare l espressione analitica di questa unzione. Il modo più intuitivo di procedere è quello di porre a tutte le condizioni don t care, ossia imporre che la unzione assuma valore per le corrispondenti combinazioni di ingresso: in questo caso, quindi, c è un solo valore assunto dalla unzione, corrispondente ad solo mintermine, per cui T = a' bc Questa è dunque una prima possibilità e, in particolare, si tratta di una orma canonica della unzione. Possiamo invece porre tutte le condizioni don t care ad, nel qual caso otteniamo T = a' bc' a' bc abc' abc Questa orma canonica è più costosa della precedente, ma si può evidentemente sempliicare: ( a' bc' a' bc) ( abc' abc) = ( c' c) a' b ( c' c) ab = a' b ab = (a' a)b b T = = Questa è ovviamente una orma minima della unzione ed è meno costosa dell espressione T = a' bc trovata prima con le condizioni don t care poste tutte a. Ci sono ancora altre possibilità, nel senso che alcune delle condizioni don t care possono essere poste a e le rimanenti ad. E chiaro, però, che la orma T=b sarà comunque quella a costo minimo, per cui non ha senso are altri tentativi. Un modo ancora più immediato per decidere come convenga porre le condizioni don t care è quello di utilizzare le mappe di Karnaugh. Consideriamo sempre la stessa unzione T e rappresentiamola mediante la sua mappa di Karnaugh: a / bc 4 8 nche qui abbiamo indicato con delle le condizioni don t care, ossia mintermini in corrispondenza dei quali non è noto né importante il valore di T. Con questa rappresentazione, è evidente che il modo più opportuno di procedere è quello di porre ad tutte le condizioni don t care: si viene inatti a ormare un subcubo di ordine nel quale la a e la
57 lgebra booleana c cambiano valore, per cui cadono, mentre la b rimane invariata sul valore, da cui si deduce immediatamente che la orma minima è T=b. Consideriamo adesso un altro esempio, sempre con rierimento ad una unzione booleana di variabili: a / bc 4 8 bbiamo condizioni don t care. Quale valore gli attribuiamo. E abbastanza evidente che conviene ancora una volta porle entrambe ad, in modo da ottenere la seguente tabella: a / bc 4 8 bbiamo in questo modo due subcubi di ordine, corrispondenti perciò a due implicanti primi: sono =(,,,) e =(,,,). ediamo se sono essenziali mediante l apposita tabella: E evidente che si tratta di due implicanti primi essenziali (ciascun di essi copre almeno un mintermine che non è coperto dall altro implicante), per cui la unzione sarà data dalla loro somma: considerando che è ormato da mintermini nei quali solo la variabile a rimane invariata (sul valore ), mentre è ormato da mintermini nei quali sono la variabile c rimane invariata (sul valore ), possiamo concludere che T = = a' c Concludiamo l argomento dicendo che le condizioni don t care possono essere indicate sia nella tabella della verità della unzione considerata, sia nella mappa di Karnaugh sia anche nell espressione compatta della prima o della seconda orma canonica: per esempio, per la unzione T considerata nell ultimo esempio, scriveremo che T(a, b, c) T(a, b, c) = = (,,,) (4,) con D = (,) con D = (,) Sia speciicando i mintermini sia speciicando i maxtermini, indicheremo con D=(...) l insieme delle condizioni don t care. utore: SNDRO PETRIZZELLI [email protected] sito personale: succursale:
Algebra Booleana 1 ALGEBRA BOOLEANA: VARIABILI E FUNZIONI LOGICHE
Algebra Booleana 1 ALGEBRA BOOLEANA: VARIABILI E FUNZIONI LOGICHE Andrea Bobbio Anno Accademico 2000-2001 Algebra Booleana 2 Calcolatore come rete logica Il calcolatore può essere visto come una rete logica
SISTEMI DI NUMERAZIONE E CODICI
SISTEMI DI NUMERAZIONE E CODICI Il Sistema di Numerazione Decimale Il sistema decimale o sistema di numerazione a base dieci usa dieci cifre, dette cifre decimali, da O a 9. Il sistema decimale è un sistema
I.I.S. Primo Levi Badia Polesine A.S. 2012-2013
LGEBR DI BOOLE I.I.S. Primo Levi Badia Polesine.S. 2012-2013 Nel secolo scorso il matematico e filosofo irlandese Gorge Boole (1815-1864), allo scopo di procurarsi un simbolismo che gli consentisse di
4 3 4 = 4 x 10 2 + 3 x 10 1 + 4 x 10 0 aaa 10 2 10 1 10 0
Rappresentazione dei numeri I numeri che siamo abituati ad utilizzare sono espressi utilizzando il sistema di numerazione decimale, che si chiama così perché utilizza 0 cifre (0,,2,3,4,5,6,7,8,9). Si dice
Cap. 3 Reti combinatorie: analisi e sintesi operatori logici e porte logiche
Cap. 3 Reti combinatorie: analisi e sintesi operatori logici e porte logiche 3.1 LE PORTE LOGICHE E GLI OPERATORI ELEMENTARI 3.2 COMPORTAMENTO A REGIME E IN TRANSITORIO DEI CIRCUITI COMBINATORI I nuovi
APPUNTI DI MATEMATICA LE FRAZIONI ALGEBRICHE ALESSANDRO BOCCONI
APPUNTI DI MATEMATICA LE FRAZIONI ALGEBRICHE ALESSANDRO BOCCONI Indice 1 Le frazioni algebriche 1.1 Il minimo comune multiplo e il Massimo Comun Divisore fra polinomi........ 1. Le frazioni algebriche....................................
Calcolatori: Algebra Booleana e Reti Logiche
Calcolatori: Algebra Booleana e Reti Logiche 1 Algebra Booleana e Variabili Logiche I fondamenti dell Algebra Booleana (o Algebra di Boole) furono delineati dal matematico George Boole, in un lavoro pubblicato
Utilizzo I mintermini si usano quando si considererà la funzione di uscita Q come Somma di Prodotti (S. P.) ossia OR di AND.
IPSI G. Plana Via Parenzo 46, Torino efinizione di Mintermine onsiderata una qualunque riga della tabella di verità in cui la funzione booleana di uscita Q vale, si definisce mintermine il prodotto logico
1. PRIME PROPRIETÀ 2
RELAZIONI 1. Prime proprietà Il significato comune del concetto di relazione è facilmente intuibile: due elementi sono in relazione se c è un legame tra loro descritto da una certa proprietà; ad esempio,
Algebra Di Boole. Definiamo ora che esiste un segnale avente valore opposto di quello assunto dalla variabile X.
Algebra Di Boole L algebra di Boole è un ramo della matematica basato sul calcolo logico a due valori di verità (vero, falso). Con alcune leggi particolari consente di operare su proposizioni allo stesso
Algebra di Boole. Le operazioni base sono AND ( ), OR ( + ), NOT ( )
Algebra di Boole Circuiti logici: componenti hardware preposti all'elaborazione delle informazioni binarie. PORTE LOGICHE (logical gate): circuiti di base. Allo scopo di descrivere i comportamenti dei
Prodotto libero di gruppi
Prodotto libero di gruppi 24 aprile 2014 Siano (A 1, +) e (A 2, +) gruppi abeliani. Sul prodotto cartesiano A 1 A 2 definiamo l operazione (x 1, y 1 ) + (x 2, y 2 ) := (x 1 + x 2, y 1 + y 2 ). Provvisto
Variabili logiche e circuiti combinatori
Variabili logiche e circuiti combinatori Si definisce variabile logica binaria una variabile che può assumere solo due valori a cui si fa corrispondere, convenzionalmente, lo stato logico 0 e lo stato
G. Pareschi ALGEBRE DI BOOLE. 1. Algebre di Boole
G. Pareschi ALGEBRE DI BOOLE 1. Algebre di Boole Nel file precedente abbiamo incontrato la definizione di algebra di Boole come reticolo: un algebra di Boole e un reticolo limitato, complementato e distributivo.
risulta (x) = 1 se x < 0.
Questo file si pone come obiettivo quello di mostrarvi come lo studio di una funzione reale di una variabile reale, nella cui espressione compare un qualche valore assoluto, possa essere svolto senza necessariamente
ALGEBRA DELLE PROPOSIZIONI
Università di Salerno Fondamenti di Informatica Corso di Laurea Ingegneria Corso B Docente: Ing. Giovanni Secondulfo Anno Accademico 2010-2011 ALGEBRA DELLE PROPOSIZIONI Fondamenti di Informatica Algebra
Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo.
DALLE PESATE ALL ARITMETICA FINITA IN BASE 2 Si è trovato, partendo da un problema concreto, che con la base 2, utilizzando alcune potenze della base, operando con solo addizioni, posso ottenere tutti
Teoria degli insiemi
Teoria degli insiemi pag 1 Easy Matematica di dolfo Scimone Teoria degli insiemi Il concetto di insieme si assume come primitivo, cioè non riconducibile a concetti precedentemente definiti. Sinonimi di
Lezioni di Matematica 1 - I modulo
Lezioni di Matematica 1 - I modulo Luciano Battaia 16 ottobre 2008 Luciano Battaia - http://www.batmath.it Matematica 1 - I modulo. Lezione del 16/10/2008 1 / 13 L introduzione dei numeri reali si può
Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Fondamenti di calcolo booleano
Breve introduzione storica Nel 1854, il prof. Boole pubblica un trattato ormai famosissimo: Le leggi del pensiero. Obiettivo finale del trattato è di far nascere la matematica dell intelletto umano, un
Dimensione di uno Spazio vettoriale
Capitolo 4 Dimensione di uno Spazio vettoriale 4.1 Introduzione Dedichiamo questo capitolo ad un concetto fondamentale in algebra lineare: la dimensione di uno spazio vettoriale. Daremo una definizione
I sistemi di numerazione
I sistemi di numerazione 01-INFORMAZIONE E SUA RAPPRESENTAZIONE Sia dato un insieme finito di caratteri distinti, che chiameremo alfabeto. Utilizzando anche ripetutamente caratteri di un alfabeto, si possono
MAPPE DI KARNAUGH e sintesi ottima
MAPPE DI KARNAUGH e sintesi ottima (prima stesura da rivedere) Sappiamo che una funzione logica può essere espressa in diverse forme, tra loro equivalenti e noi siamo già in grado di passare da una all
Proof. Dimostrazione per assurdo. Consideriamo l insieme complementare di P nell insieme
G Pareschi Principio di induzione Il Principio di Induzione (che dovreste anche avere incontrato nel Corso di Analisi I) consente di dimostrare Proposizioni il cui enunciato è in funzione di un numero
ESEMPIO 1: eseguire il complemento a 10 di 765
COMPLEMENTO A 10 DI UN NUMERO DECIMALE Sia dato un numero N 10 in base 10 di n cifre. Il complemento a 10 di tale numero (N ) si ottiene sottraendo il numero stesso a 10 n. ESEMPIO 1: eseguire il complemento
LA TRASMISSIONE DELLE INFORMAZIONI QUARTA PARTE 1
LA TRASMISSIONE DELLE INFORMAZIONI QUARTA PARTE 1 I CODICI 1 IL CODICE BCD 1 Somma in BCD 2 Sottrazione BCD 5 IL CODICE ECCESSO 3 20 La trasmissione delle informazioni Quarta Parte I codici Il codice BCD
Il principio di induzione e i numeri naturali.
Il principio di induzione e i numeri naturali. Il principio di induzione è un potente strumento di dimostrazione, al quale si ricorre ogni volta che si debba dimostrare una proprietà in un numero infinito
MAPPE DI KARNAUGH. Nei capitoli precedenti si è visto che è possibile associare un circuito elettronico o elettrico ad una funzione logica.
MAPPE DI KARNAUGH 1. Generalità Nei capitoli precedenti si è visto che è possibile associare un circuito elettronico o elettrico ad una funzione logica. E ovvio che più semplice è la funzione e più semplice
Linguaggio del calcolatore. Algebra di Boole AND, OR, NOT. Notazione. And e or. Circuiti e reti combinatorie. Appendice A + dispense
Linguaggio del calcolatore Circuiti e reti combinatorie ppendice + dispense Solo assenza o presenza di tensione: o Tante componenti interconnesse che si basano su e nche per esprimere concetti complessi
Parte 2. Determinante e matrice inversa
Parte. Determinante e matrice inversa A. Savo Appunti del Corso di Geometria 013-14 Indice delle sezioni 1 Determinante di una matrice, 1 Teorema di Cramer (caso particolare), 3 3 Determinante di una matrice
Matematica Computazionale Lezione 4: Algebra di Commutazione e Reti Logiche
Matematica Computazionale Lezione 4: Algebra di Commutazione e Reti Logiche Docente: Michele Nappi [email protected] www.dmi.unisa.it/people/nappi 089-963334 ALGEBRA DI COMMUTAZIONE Lo scopo di questa algebra
Lezione 9: Cambio di base
Lezione 9: Cambio di base In questa lezione vogliamo affrontare uno degli argomenti piu ostici per lo studente e cioè il cambio di base all interno di uno spazio vettoriale, inoltre cercheremo di capire
Corrispondenze e funzioni
Corrispondenze e funzioni L attività fondamentale della mente umana consiste nello stabilire corrispondenze e relazioni tra oggetti; è anche per questo motivo che il concetto di corrispondenza è uno dei
Alcune nozioni di base di Logica Matematica
Alcune nozioni di base di Logica Matematica Ad uso del corsi di Programmazione I e II Nicola Galesi Dipartimento di Informatica Sapienza Universitá Roma November 1, 2007 Questa é una breve raccolta di
Appunti di informatica. Lezione 2 anno accademico 2015-2016 Mario Verdicchio
Appunti di informatica Lezione 2 anno accademico 2015-2016 Mario Verdicchio Sistema binario e logica C è un legame tra i numeri binari (0,1) e la logica, ossia la disciplina che si occupa del ragionamento
Operatori logici e porte logiche
Operatori logici e porte logiche Operatori unari.......................................... 730 Connettivo AND........................................ 730 Connettivo OR..........................................
Probabilità discreta
Probabilità discreta Daniele A. Gewurz 1 Che probabilità c è che succeda...? Una delle applicazioni della combinatoria è nel calcolo di probabilità discrete. Quando abbiamo a che fare con un fenomeno che
Comparatori. Comparatori di uguaglianza
Comparatori Scopo di un circuito comparatore é il confronto tra due codifiche binarie. Il confronto può essere effettuato per verificare l'uguaglianza oppure una relazione d'ordine del tipo "maggiore",
APPUNTI DI MATEMATICA ALGEBRA \ INSIEMISTICA \ TEORIA DEGLI INSIEMI (1)
ALGEBRA \ INSIEMISTICA \ TEORIA DEGLI INSIEMI (1) Un insieme è una collezione di oggetti. Il concetto di insieme è un concetto primitivo. Deve esistere un criterio chiaro, preciso, non ambiguo, inequivocabile,
Iniziamo con un esercizio sul massimo comun divisore: Esercizio 1. Sia d = G.C.D.(a, b), allora:
Iniziamo con un esercizio sul massimo comun divisore: Esercizio 1. Sia d = G.C.D.(a, b), allora: G.C.D.( a d, b d ) = 1 Sono state introdotte a lezione due definizioni importanti che ricordiamo: Definizione
CALCOLO COMBINATORIO
CALCOLO COMBINATORIO 1 Modi di formare gruppi di k oggetti presi da n dati 11 disposizioni semplici, permutazioni Dati n oggetti distinti a 1,, a n si chiamano disposizioni semplici di questi oggetti,
Complementi di Analisi per Informatica *** Capitolo 2. Numeri Complessi. e Circuiti Elettrici. a Corrente Alternata. Sergio Benenti 7 settembre 2013
Complementi di Analisi per nformatica *** Capitolo 2 Numeri Complessi e Circuiti Elettrici a Corrente Alternata Sergio Benenti 7 settembre 2013? ndice 2 Circuiti elettrici a corrente alternata 1 21 Circuito
Per lo svolgimento del corso risulta particolarmente utile considerare l insieme
1. L insieme R. Per lo svolgimento del corso risulta particolarmente utile considerare l insieme R = R {, + }, detto anche retta reale estesa, che si ottiene aggiungendo all insieme dei numeri reali R
Funzioni composte pag 1 Adolfo Scimone
Funzioni composte pa 1 Adolo Scimone Appunti elaborati dalle lezioni del Pro. Boieri PROPRIETA' DELLE FUNZIONI La unzione composta Consideriamo due unzioni e di variabile reale e indichiamo : A = dom B
Algebra di Boole. Le operazioni, nell algebra booleana sono basate su questi tre operatori: AND ( ), OR ( + ),NOT ( )
Algebra di Boole L algebra di Boole prende il nome da George Boole, matematico inglese (1815-1864), che pubblicò un libro nel 1854, nel quale vennero formulati i principi dell'algebra oggi conosciuta sotto
Esercitazioni di Reti Logiche. Lezione 2 Algebra Booleana e Porte Logiche. Zeynep KIZILTAN [email protected]
Esercitazioni di Reti Logiche Lezione 2 Algebra Booleana e Porte Logiche Zeynep KIZILTAN [email protected] Argomenti Algebra booleana Funzioni booleane e loro semplificazioni Forme canoniche Porte
Come visto precedentemente l equazione integro differenziale rappresentativa dell equilibrio elettrico di un circuito RLC è la seguente: 1 = (1)
Transitori Analisi nel dominio del tempo Ricordiamo che si definisce transitorio il periodo di tempo che intercorre nel passaggio, di un sistema, da uno stato energetico ad un altro, non è comunque sempre
Algebra booleana. Si dice enunciato una proposizione che può essere soltanto vera o falsa.
Algebra booleana Nel lavoro di programmazione capita spesso di dover ricorrere ai principi della logica degli enunciati e occorre conoscere i concetti di base dell algebra delle proposizioni. L algebra
Esercizi su lineare indipendenza e generatori
Esercizi su lineare indipendenza e generatori Per tutto il seguito, se non specificato esplicitamente K indicherà un campo e V uno spazio vettoriale su K Cose da ricordare Definizione Dei vettori v,,v
STRUTTURE ALGEBRICHE
STRUTTURE ALGEBRICHE Operazioni in un insieme Sia A un insieme non vuoto; una funzione f : A A A si dice operazione binaria (o semplicemente operazione), oppure legge di composizione interna. Per definizione
L algebra di Boole. Cenni Corso di Reti Logiche B. Mariagiovanna Sami
L algebra di Boole Cenni Corso di Reti Logiche B Mariagiovanna Sami Algebra Booleana: sistema algebrico Operazione: Operazione α sull'insieme S={s1,s2,...} = funzione che da SxS (prodotto cartesiano S
Lezione 1. Gli Insiemi. La nozione di insieme viene spesso utilizzata nella vita di tutti i giorni; si parla dell insieme:
Lezione 1 Gli Insiemi La nozione di insieme viene spesso utilizzata nella vita di tutti i giorni; si parla dell insieme: degli iscritti ad un corso di laurea delle stelle in cielo dei punti di un piano
Capitolo 2. Operazione di limite
Capitolo 2 Operazione di ite In questo capitolo vogliamo occuparci dell operazione di ite, strumento indispensabile per scoprire molte proprietà delle funzioni. D ora in avanti riguarderemo i domini A
Dispense di Informatica per l ITG Valadier
La notazione binaria Dispense di Informatica per l ITG Valadier Le informazioni dentro il computer All interno di un calcolatore tutte le informazioni sono memorizzate sottoforma di lunghe sequenze di
4. Operazioni aritmetiche con i numeri binari
I Numeri Binari 4. Operazioni aritmetiche con i numeri binari Contare con i numeri binari Prima di vedere quali operazioni possiamo effettuare con i numeri binari, iniziamo ad imparare a contare in binario:
I CIRCUITI ELETTRICI. Prima di tutto occorre mettersi d accordo anche sui nomi di alcune parti dei circuiti stessi.
I CIRCUITI ELETTRICI Prima di tutto occorre mettersi d accordo anche sui nomi di alcune parti dei circuiti stessi. Definiamo ramo un tratto di circuito senza diramazioni (tratto evidenziato in rosso nella
LE SUCCESSIONI 1. COS E UNA SUCCESSIONE
LE SUCCESSIONI 1. COS E UNA SUCCESSIONE La sequenza costituisce un esempio di SUCCESSIONE. Ecco un altro esempio di successione: Una successione è dunque una sequenza infinita di numeri reali (ma potrebbe
Transitori del primo ordine
Università di Ferrara Corso di Elettrotecnica Transitori del primo ordine Si consideri il circuito in figura, composto da un generatore ideale di tensione, una resistenza ed una capacità. I tre bipoli
Applicazioni lineari
Applicazioni lineari Esempi di applicazioni lineari Definizione. Se V e W sono spazi vettoriali, una applicazione lineare è una funzione f: V W tale che, per ogni v, w V e per ogni a, b R si abbia f(av
Logica Numerica Approfondimento 1. Minimo Comune Multiplo e Massimo Comun Divisore. Il concetto di multiplo e di divisore. Il Minimo Comune Multiplo
Logica Numerica Approfondimento E. Barbuto Minimo Comune Multiplo e Massimo Comun Divisore Il concetto di multiplo e di divisore Considerato un numero intero n, se esso viene moltiplicato per un numero
u 1 u k che rappresenta formalmente la somma degli infiniti numeri (14.1), ordinati al crescere del loro indice. I numeri u k
Capitolo 4 Serie numeriche 4. Serie convergenti, divergenti, indeterminate Data una successione di numeri reali si chiama serie ad essa relativa il simbolo u +... + u +... u, u 2,..., u,..., (4.) oppure
f(x) = 1 x. Il dominio di questa funzione è il sottoinsieme proprio di R dato da
Data una funzione reale f di variabile reale x, definita su un sottoinsieme proprio D f di R (con questo voglio dire che il dominio di f è un sottoinsieme di R che non coincide con tutto R), ci si chiede
Esercizi svolti sui numeri complessi
Francesco Daddi - ottobre 009 Esercizio 1 Risolvere l equazione z 1 + i = 1. Soluzione. Moltiplichiamo entrambi i membri per 1 + i in definitiva la soluzione è z 1 + i 1 + i = 1 1 + i z = 1 1 i. : z =
Alessandro Pellegrini
Esercitazione sulle Rappresentazioni Numeriche Esistono 1 tipi di persone al mondo: quelli che conoscono il codice binario e quelli che non lo conoscono Alessandro Pellegrini Cosa studiare prima Conversione
Sintesi di reti combinatorie. Sommario. Motivazioni. Sommario. Funzioni Espressioni. M. Favalli
Sommario Sintesi di reti combinatorie Funzioni Espressioni 1 Teorema di espansione di Shannon (Boole) M. Favalli Engineering Department in Ferrara 2 Forme canoniche 3 Metriche per il costo di una rete
APPUNTI DI ELETTRONICA DIGITALE
APPUNTI DI ELETTRONICA DIGITALE ITIS MARCONI-GORGONZOLA docente :dott.ing. Paolo Beghelli pag.1/24 Indice 1.ELETTRONICA DIGITALE 4 1.1 Generalità 4 1.2 Sistema di numerazione binario 4 1.3 Operazioni con
Esempi ed esercizi Aritmetica degli elaboratori e algebra di commutazione
Esempi ed esercizi Aritmetica degli elaboratori e algebra di commutazione Fondamenti di Informatica Michele Ceccarelli Università del Sannio [email protected] Angelo Ciaramella DMI-Università degli
Guardiamo ora però la cosa da un altro punto di vista analizzando il seguente grafico a forma di torta. La torta in 5 parti
L EQUIVALENZA FRA I NUMERI RAZIONALI (cioè le frazioni), I NUMERI DECIMALI (quelli spesso con la virgola) ED I NUMERI PERCENTUALI (quelli col simbolo %). Ora vedremo che ogni frazione (sia propria, che
Anno 3. Classificazione delle funzioni
nno 3 Classificazione delle funzioni 1 Introduzione In questa lezione affronteremo lo studio delle principali proprietà delle funzioni, imparando a classificarle e a compiere alcune operazioni su esse.
Logica binaria. Porte logiche.
Logica binaria Porte logiche. Le porte logiche sono gli elementi fondamentali su cui si basa tutta la logica binaria dei calcolatori. Ricevono in input uno, due (o anche più) segnali binari in input, e
10. Insiemi non misurabili secondo Lebesgue.
10. Insiemi non misurabili secondo Lebesgue. Lo scopo principale di questo capitolo è quello di far vedere che esistono sottoinsiemi di R h che non sono misurabili secondo Lebesgue. La costruzione di insiemi
1 Applicazioni Lineari tra Spazi Vettoriali
1 Applicazioni Lineari tra Spazi Vettoriali Definizione 1 (Applicazioni lineari) Si chiama applicazione lineare una applicazione tra uno spazio vettoriale ed uno spazio vettoriale sul campo tale che "!$%!
Parte 6. Applicazioni lineari
Parte 6 Applicazioni lineari A Savo Appunti del Corso di Geometria 203-4 Indice delle sezioni Applicazioni fra insiemi, 2 Applicazioni lineari tra spazi vettoriali, 2 3 Applicazioni lineari da R n a R
Codifica binaria e algebra di Boole
Codifica binaria e algebra di Boole Corso di Programmazione A.A. 2008/09 G. Cibinetto Contenuti della lezione Codifica binaria dell informazione Numeri naturali, interi, frazionari, in virgola mobile Base
Teoria delle code. Sistemi stazionari: M/M/1 M/M/1/K M/M/S
Teoria delle code Sistemi stazionari: M/M/1 M/M/1/K M/M/S Fabio Giammarinaro 04/03/2008 Sommario INTRODUZIONE... 3 Formule generali di e... 3 Leggi di Little... 3 Cosa cerchiamo... 3 Legame tra N e le
Parte II Indice. Operazioni aritmetiche tra valori rappresentati in binario puro. Rappresentazione di numeri con segno
Parte II Indice Operazioni aritmetiche tra valori rappresentati in binario puro somma sottrazione Rappresentazione di numeri con segno modulo e segno complemento a 2 esercizi Operazioni aritmetiche tra
La Logica Proposizionale. (Algebra di Boole)
1 ISTITUTO DI ISTRUZIONE SUPERIORE ANGIOY La Logica Proposizionale (Algebra di Boole) Prof. G. Ciaschetti 1. Cenni storici Sin dagli antichi greci, la logica è intesa come lo studio del logos, che in greco
Sintesi Combinatoria Uso di componenti diversi dagli operatori elementari. Mariagiovanna Sami Corso di reti Logiche 8 Anno 2007-08
Sintesi Combinatoria Uso di componenti diversi dagli operatori elementari Mariagiovanna Sami Corso di reti Logiche 8 Anno 27-8 8 Quali componenti, se non AND e OR (e NOT )? Si è detto inizialmente che
APPUNTI SU PROBLEMI CON CALCOLO PERCENTUALE
APPUNTI SU PROBLEMI CON CALCOLO PERCENTUALE 1. Proporzionalità diretta e proporzionalità inversa Analizziamo le seguenti formule Peso Lordo = Peso Netto + Tara Ricavo = Utile + Costo Rata = Importo + Interesse
I SISTEMI DI NUMERAZIONE
ISTITUTO DI ISTRUZIONE SUPERIORE G. M. ANGIOY CARBONIA I SISTEMI DI NUMERAZIONE Prof. G. Ciaschetti Fin dall antichità, l uomo ha avuto il bisogno di rappresentare le quantità in modo simbolico. Sono nati
Sommario. Teoremi Maxterm Forme Canoniche Mappe di Karnaugh Fine lezione
Algebra di Boole e Funzioni Binarie Lezione Prima Sommario Variabili Binarie Negazione Somma Logica Prodotto Logico Relazioni- proprietà Funzioni Minterm Teoremi Maxterm Forme Canoniche Mappe di Karnaugh
Politecnico di Milano. Facoltà di Ingegneria Industriale. Corso di Analisi e Geometria 2. Sezione D-G. (Docente: Federico Lastaria).
Politecnico di Milano. Facoltà di Ingegneria Industriale. Corso di Analisi e Geometria 2. Sezione D-G. (Docente: Federico Lastaria). Aprile 20 Indice Serie numeriche. Serie convergenti, divergenti, indeterminate.....................
Matematica generale CTF
Successioni numeriche 19 agosto 2015 Definizione di successione Monotonìa e limitatezza Forme indeterminate Successioni infinitesime Comportamento asintotico Criterio del rapporto per le successioni Definizione
Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione in virgola mobile
Problemi connessi all utilizzo di un numero di bit limitato Abbiamo visto quali sono i vantaggi dell utilizzo della rappresentazione in complemento alla base: corrispondenza biunivoca fra rappresentazione
Parte 3. Rango e teorema di Rouché-Capelli
Parte 3. Rango e teorema di Rouché-Capelli A. Savo Appunti del Corso di Geometria 203-4 Indice delle sezioni Rango di una matrice, 2 Teorema degli orlati, 3 3 Calcolo con l algoritmo di Gauss, 6 4 Matrici
Anno 1. Le relazioni fondamentali (equivalenza, d'ordine, inverse, fra insiemi)
Anno 1 Le relazioni fondamentali (equivalenza, d'ordine, inverse, fra insiemi) 1 Introduzione In questa lezione imparerai a utilizzare le diverse tipologie di relazione e a distinguerle a seconda delle
MATEMATICA DEL DISCRETO elementi di teoria dei grafi. anno acc. 2009/2010
elementi di teoria dei grafi anno acc. 2009/2010 Grafi semplici Un grafo semplice G è una coppia ordinata (V(G), L(G)), ove V(G) è un insieme finito e non vuoto di elementi detti vertici o nodi di G, mentre
Complemento al corso di Fondamenti di Informatica I corsi di laurea in ingegneria, settore dell informazione Università la Sapienza Consorzio Nettuno
Rappresentazione di numeri Complemento al corso di Fondamenti di Informatica I corsi di laurea in ingegneria, settore dell informazione Università la Sapienza Consorzio Nettuno Un numero e un entità teorica,
SOMMARIO. 13.1 I radicali pag. 3. 13.2 I radicali aritmetici pag. 5. 13.3 Moltiplicazione e divisione fra radicali aritmetici pag.
SOMMARIO CAPITOLO : I RADICALI. I radicali pag.. I radicali aritmetici pag.. Moltiplicazione e divisione fra radicali aritmetici pag.. Potenza di un radicale aritmetico pag.. Trasporto di un fattore esterno
4. Operazioni elementari per righe e colonne
4. Operazioni elementari per righe e colonne Sia K un campo, e sia A una matrice m n a elementi in K. Una operazione elementare per righe sulla matrice A è una operazione di uno dei seguenti tre tipi:
Modulo 8. Elettronica Digitale. Contenuti: Obiettivi:
Modulo 8 Elettronica Digitale Contenuti: Introduzione Sistemi di numerazione posizionali Sistema binario Porte logiche fondamentali Porte logiche universali Metodo della forma canonica della somma per
Appunti sulla Macchina di Turing. Macchina di Turing
Macchina di Turing Una macchina di Turing è costituita dai seguenti elementi (vedi fig. 1): a) una unità di memoria, detta memoria esterna, consistente in un nastro illimitato in entrambi i sensi e suddiviso
Convertitori numerici in Excel
ISTITUTO DI ISTRUZIONE SUPERIORE G. M. ANGIOY CARBONIA Convertitori numerici in Excel Prof. G. Ciaschetti Come attività di laboratorio, vogliamo realizzare dei convertitori numerici con Microsoft Excel
19. Inclusioni tra spazi L p.
19. Inclusioni tra spazi L p. Nel n. 15.1 abbiamo provato (Teorema 15.1.1) che, se la misura µ è finita, allora tra i corispondenti spazi L p (µ) si hanno le seguenti inclusioni: ( ) p, r ]0, + [ : p
2.1 Definizione di applicazione lineare. Siano V e W due spazi vettoriali su R. Un applicazione
Capitolo 2 MATRICI Fra tutte le applicazioni su uno spazio vettoriale interessa esaminare quelle che mantengono la struttura di spazio vettoriale e che, per questo, vengono dette lineari La loro importanza
Statistica e biometria. D. Bertacchi. Variabili aleatorie. V.a. discrete e continue. La densità di una v.a. discreta. Esempi.
Iniziamo con definizione (capiremo fra poco la sua utilità): DEFINIZIONE DI VARIABILE ALEATORIA Una variabile aleatoria (in breve v.a.) X è funzione che ha come dominio Ω e come codominio R. In formule:
Funzioni funzione dominio codominio legge argomento variabile indipendente variabile dipendente
Funzioni In matematica, una funzione f da X in Y consiste in: 1. un insieme X detto dominio di f 2. un insieme Y detto codominio di f 3. una legge che ad ogni elemento x in X associa uno ed un solo elemento
Ing. Alessandro Pochì
Lo studio di unzione Ing. Alessandro Pochì Appunti di analisi Matematica per la Classe VD (a.s. 011/01) Schema generale per lo studio di una unzione Premessa Per Studio unzione si intende, generalmente,
Il concetto di valore medio in generale
Il concetto di valore medio in generale Nella statistica descrittiva si distinguono solitamente due tipi di medie: - le medie analitiche, che soddisfano ad una condizione di invarianza e si calcolano tenendo
Algebra booleana e circuiti logici. a cura di: Salvatore Orlando
lgebra booleana e circuiti logici a cura di: Salvatore Orlando rch. Elab. - S. Orlando lgebra & Circuiti Elettronici I calcolatori operano con segnali elettrici con valori di potenziale discreti sono considerati
