Fondamenti di Informatica Prof. Arcangelo Castiglione A.A. 2017/18
Outline Algebra di Boole Relazione con i Circuiti Logici Elementi Costitutivi Operatori Logici Elementari Funzioni Logiche (o Booleane) Definizioni Rappresentazione in Prima Forma Canonica (Somma di Prodotti) Circuiti Logici Porte Logiche Dalla Funzione Logica al Circuito Dal Circuito alla Funzione Logica Dal Circuito alla Tavola di Verità (Simulazione Circuitale)
Outline Algebra di Boole Relazione con i Circuiti Logici Elementi Costitutivi Operatori Booleani (o Logici) Funzioni Logiche (o Booleane) Definizioni Rappresentazione in Prima Forma Canonica (Somma di Prodotti) Circuiti Logici Porte Logiche Dalla Funzione Logica al Circuito Dal Circuito alla Funzione Logica Dal Circuito alla Tavola di Verità (Simulazione Circuitale)
Introduzione Un elaboratore elettronico digitale è costituito da circuiti logici (detti anche circuiti digitali) I circuiti logici sono componenti hardware che manipolano informazione binaria Per descrivere i comportamenti dei circuiti logici di solito si usa un algebra (notazione matematica), che permette di analizzare e progettare tali circuiti Algebra di Boole (o Algebra Booleana)
Algebra di Boole e Circuiti Logici: Relazione Gli elaboratori elettronici operano mediante segnali elettrici aventi due valori (o stati) di potenziale Alto oppure Basso I potenziali intermedi, che si verificano durante le transizioni di potenziale, non vengono considerati La codifica binaria è stata adottata perché i bit (!, ") permettono di codificare in maniera non ambigua i # stati di potenziale elettrico in uso negli elaboratori
Algebra di Boole e Circuiti Logici: Relazione Si studia l algebra booleana poiché le sue funzioni sono isomorfe ai circuiti digitali Il livello di potenziale Alto corrisponde al valore logico Vero (Valore binario 1) Il livello di potenziale Basso corrisponde al valore logico Falso (Valore binario 0)
Algebra di Boole: Un po di Storia Il matematico inglese George Boole tra il 1847 ed il 1854 fondò un campo della matematica e della filosofia chiamato logica simbolica Strumento per la soluzione matematica di problemi di logica «The Mathematical Analysis of Logic», pubblicato nel 1847 «An Investigation of the Laws of Thought on Which are Founded the Mathematical Theories of Logic and Probabilities», George Boole, pubblicato nel 1854
Outline Algebra di Boole Relazione con i Circuiti Logici Elementi Costitutivi Operatori Booleani (o Logici) Funzioni Logiche (o Booleane) Definizioni Rappresentazione in Prima Forma Canonica (Somma di Prodotti) Circuiti Logici Porte Logiche Dalla Funzione Logica al Circuito Dal Circuito alla Funzione Logica Dal Circuito alla Tavola di Verità (Simulazione Circuitale)
Algebra di Boole: Elementi Costitutivi Definizione (Algebra di Boole): Struttura algebrica astratta composta da Un insieme di elementi k = 0, 1, detti valori booleani (o binari) Talvolta denotati mediante: vero/falso, on/off, si/no Operazioni (o funzioni) booleane: funzioni i cui input ed output sono valori booleani Definizione (Variabile Booleana): Variabile il cui valore può essere 0 oppure 1
Algebra di Boole: Elementi Costitutivi Un operando nell algebra di Boole può essere Una variabile booleana (detta anche letterale) Un valore booleano (1 o 0) Sugli operandi si definiscono gli operatori logici elementari OR e AND: che agiscono su (almeno) due operandi (operatori binari) NOT: che agisce su un solo operando (operatore unario) Nella valutazione delle espressioni booleane esiste una relazione di precedenza fra gli operatori NOT, AND e OR, nell ordine in cui sono stati elencati N.B. Per alterare tale relazione bisogna usare le parentesi
Outline Algebra di Boole Relazione con i Circuiti Logici Elementi Costitutivi Operatori Logici Elementari Funzioni Logiche (o Booleane) Definizioni Rappresentazione in Prima Forma Canonica (Somma di Prodotti) Circuiti Logici Porte Logiche Dalla Funzione Logica al Circuito Dal Circuito alla Funzione Logica Dal Circuito alla Tavola di Verità (Simulazione Circuitale)
Operatori Logici Elementari Tali operatori permettono di realizzare Funzioni Booleane (o Funzioni Logiche) Maggiori dettagli in seguito Gli operatori logici elementari sono AND OR NOT
Operatori Logici Elementari Tali operatori permettono di realizzare Funzioni Booleane (o Funzioni Logiche) Maggiori dettagli in seguito Gli operatori logici elementari sono AND OR NOT
Operatore AND (Prodotto Logico) Il risultato dell operatore (o funzione) AND è! se il valore di entrambi gli operandi è!. Il risultato è " negli altri casi.!. / 0.!,. / =.!. / " " " Tavola di verità "! "! " "!!! In generale, date # variabili binarie indipendenti, il loro prodotto logico (AND) è dato da $ 1 $ 2 $ # = " se almeno una $ ( vale ", )*# 1 ( #! se $ 1 = $ 2 = = $ # =!
Operatori Logici Elementari Tali operatori permettono di realizzare Funzioni Booleane (o Funzioni Logiche) Maggiori dettagli in seguito Gli operatori logici elementari sono AND OR NOT
Operatore OR (Somma Logica) Il risultato dell operatore (o funzione) OR è! se almeno uno degli operandi vale!. Il risultato è " negli altri casi /! / 0 1 /!, / 0 = /! + / 0 Tavola di verità " " " "!!! "!!!! In generale, date # variabili binarie, la loro somma logica (OR) è data da $ 1 + $ 2 + + $ # =! se almeno una $ * vale!, +,# 1 * # " se $ 1 = $ 2 = = $ # = "
Operatori Logici Elementari Tali operatori permettono di realizzare Funzioni Booleane (o Funzioni Logiche) Maggiori dettagli in seguito Gli operatori logici elementari sono OR AND NOT
NOT Negazione L operatore (o funzione) NOT, inverte il valore dell operando su cui opera, per questo viene anche detto inverter # $ % # $ = # $ ' $ $ ' Doppia negazione Data un variabile!, il suo negato! viene detto complemento di!
Operatori AND, OR e NOT: Possibili Rappresentazioni L operazione binaria AND può essere rappresentata in vari modi $ &! 6%7($,!) $ 6%7! $! $! $! $! $! L operazione binaria OR può essere rappresentata in vari modi $! &/($,!) $ #! $ &/! $ +! $! $! L operazione unaria NOT può essere rappresentata in vari modi! = ~$! = %&'($)! =! $! = %&' $! = $! = $! = -$
Outline Algebra di Boole Relazione con i Circuiti Logici Elementi Costitutivi Operatori Logici Elementari Funzioni Logiche (o Booleane) Definizioni Rappresentazione in Prima Forma Canonica (Somma di Prodotti) Circuiti Logici Porte Logiche Dalla Funzione Logica al Circuito Dal Circuito alla Funzione Logica Dal Circuito alla Tavola di Verità (Simulazione Circuitale)
Funzioni Logiche (o Booleane) Funzione Logica (Definizione informale): funzione che opera su variabili booleane prese in inpute restituisce come output solo un valore! oppure " Funzione Logica (Definizione formale): funzione che date # variabili indipendenti $!, $ &,, $ # prese in input, fa corrispondere in modo univoco ad ognuna delle & # configurazioni di tali variabili un valore di ( (che può essere " oppure!) ): ",! # {",!}
Funzioni Logiche (o Booleane) Una funzione in! variabili booleane ": $, &! {$, &} può essere definita (o rappresentata) mediante una Tavola (o Tabella) di Verità, che elenca tutte le combinazioni dei valori di ingresso ed il corrispondente valore dato dal risultato della funzione! (colonne) ingressi & (colonna) uscita +! configurazioni * & * + *! - $ $ $ & & & & $
Funzioni Logiche (o Booleane) Date! variabili booleane indipendenti " #, " %,, "!, (dette anche letterali) queste possono assumere %! configurazioni distinte Ad es., per! = ( si hanno ) configurazioni Un mintermine (minterm) corrisponde al prodotto di! letterali, ciascuno dei quali compare nella forma " se nella corrispondente configurazione di ingresso ha valore #, nella forma *" se ha valore + 010 x 1 x 2 x 3 " # " % " (,(" #, " %, " ( ) 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 1 1 0 0 0 1 0 1 1 1 1 0 1 1 1 1 1 Nel minterm una variabile compare in forma naturale " se nella corrispondente configurazione di ingresso ha valore #, in forma complementata *" se ha valore +
Funzioni Logiche (o Booleane) )* 1 )* 2 )* 3 )* 1 )* 2 * 3 )* 1 * 2 )* 3 )* 1 * 2 * 3 * 1 )* 2 )* 3 * 1 )* 2 * 3 * 1 * 2 )* 3 * 1 * 2 * 3 minterm! "! #! $ %(! ",! #,! $ ) 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 1 1 0 0 0 1 0 1 1 1 1 0 1 1 1 1 1 Configurazioni 011 indica tra le 2 3 =8 configurazioni possibili, quella in cui * 1 = 0 * 2 = 1 * 3 = 1 Questa configurazione si scrive semplicemente con il prodotto )* 1 * 2 * 3 Ogni riga (in rosso) mostra il valore restituito a partire da una particolare configurazione dell input
Outline Algebra di Boole Relazione con i Circuiti Logici Elementi Costitutivi Operatori Logici Elementari Funzioni Logiche (o Booleane) Definizioni Rappresentazione in Prima Forma Canonica (Somma di Prodotti) Circuiti Logici Porte Logiche Dalla Funzione Logica al Circuito Dal Circuito alla Funzione Logica Dal Circuito alla Tavola di Verità (Simulazione Circuitale)
Rappresentazione in Prima Forma Canonica: Dalla Tavola di Verità alla Funzione Oltre che mediante tavola di verità, ogni funzione booleana può essere rappresentata tramite la sua espressione booleana (1 a Forma Canonica) Per passare dalla rappresentazione mediante tavola di verità alla notazione tramite espressione booleana è necessario 1. Identificare tutte le righe della tavola di verità che danno! in output 2. Per ogni riga con un! in output, scrivere il minterm della configurazione delle variabili che la definiscono 3. Collegare tramite OR tutti i minterm ottenuti "! " # " $ %("!, " #, " $ ) ) ) ) ) ) )! ) )! ) ) )!!!! ) ) )! )!!!! )!!!!!
Rappresentazione in Prima Forma Canonica: Dalla Tavola di Verità alla Funzione Oltre che mediante tavola di verità, ogni funzione booleana può essere rappresentata tramite la sua espressione booleana (1 a Forma Canonica) Per passare dalla rappresentazione mediante tavola di verità alla notazione tramite espressione booleana è necessario 1. Identificare tutte le righe della tavola di verità che danno! in output 2. Per ogni riga con un! in output, scrivere il minterm della configurazione delle variabili che la definiscono 3. Collegare tramite OR tutti i minterm ottenuti "! " # " $ %("!, " #, " $ ) ) ) ) ) ) )! ) )! ) ) )!!!! ) ) )! )!!!! )!!!!!
Rappresentazione in Prima Forma Canonica: Dalla Tavola di Verità alla Funzione Oltre che mediante tavola di verità, ogni funzione booleana può essere rappresentata tramite la sua espressione booleana (1 a Forma Canonica) Per passare dalla rappresentazione mediante tavola di verità alla notazione tramite espressione booleana è necessario 1. Identificare tutte le righe della tavola di verità che danno " in output 2. Per ogni riga con un " in output, scrivere il minterm della configurazione delle variabili che la definiscono 3. Collegare tramite OR tutti i minterm ottenuti! "! #! $ %(! ",! #,! $ ) ) ) ) ) ) ) " ) ) " ) ) ) " " " " ) ) ) " ) " " " " ) " " " " "
Rappresentazione in Prima Forma Canonica: Dalla Tavola di Verità alla Funzione Oltre che mediante tavola di verità, ogni funzione booleana può essere rappresentata tramite la sua espressione booleana (1 a Forma Canonica) Per passare dalla rappresentazione mediante tavola di verità alla notazione tramite espressione booleana è necessario 1. Identificare tutte le righe della tavola di verità che danno " in output 2. Per ogni riga con un " in output, scrivere il minterm della configurazione delle variabili che la definiscono 3. Collegare tramite OR tutti i minterm ottenuti! "! #! $ %(! ",! #,! $ ) ) ) ) ) ) ) " ) ) " ) ) ) " " " " ) ) ) " ) " " " " ) " " " " "
Rappresentazione in Prima Forma Canonica: Dalla Tavola di Verità alla Funzione Oltre che mediante tavola di verità, ogni funzione booleana può essere rappresentata tramite la sua espressione booleana (1 a Forma Canonica) Per passare dalla rappresentazione mediante tavola di verità alla notazione tramite espressione booleana è necessario 1. Identificare tutte le righe della tavola di verità che danno " in output 2. Per ogni riga con un " in output, scrivere il minterm della configurazione delle variabili che la definiscono 3. Collegare tramite OR tutti i minterm ottenuti! "! #! $! "! #! $ %(! ",! #,! $ ) ) ) ) ) ) ) " ) ) " ) ) ) " " " " ) ) ) " ) " " " " ) " " " " "
Rappresentazione in Prima Forma Canonica: Dalla Tavola di Verità alla Funzione Oltre che mediante tavola di verità, ogni funzione booleana può essere rappresentata tramite la sua espressione booleana (1 a Forma Canonica) Per passare dalla rappresentazione mediante tavola di verità alla notazione tramite espressione booleana è necessario 1. Identificare tutte le righe della tavola di verità che danno " in output 2. Per ogni riga con un " in output, scrivere il minterm della configurazione delle variabili che la definiscono 3. Collegare tramite OR tutti i minterm ottenuti! "! #! $! "! #! $! "! #! $ %(! ",! #,! $ ) ) ) ) ) ) ) " ) ) " ) ) ) " " " " ) ) ) " ) " " " " ) " " " " "
Rappresentazione in Prima Forma Canonica: Dalla Tavola di Verità alla Funzione Oltre che mediante tavola di verità, ogni funzione booleana può essere rappresentata tramite la sua espressione booleana (1 a Forma Canonica) Per passare dalla rappresentazione mediante tavola di verità alla notazione tramite espressione booleana è necessario 1. Identificare tutte le righe della tavola di verità che danno " in output 2. Per ogni riga con un " in output, scrivere il minterm della configurazione delle variabili che la definiscono 3. Collegare tramite OR tutti i minterm ottenuti! "! #! $! "! #! $! "! #! $! "! #! $! "! #! $ %(! ",! #,! $ ) ) ) ) ) ) ) " ) ) " ) ) ) " " " " ) ) ) " ) " " " " ) " " " " "
Rappresentazione in Prima Forma Canonica: Dalla Tavola di Verità alla Funzione Oltre che mediante tavola di verità, ogni funzione booleana può essere rappresentata tramite la sua espressione booleana (1 a Forma Canonica) Per passare dalla rappresentazione mediante tavola di verità alla notazione tramite espressione booleana è necessario 1. Identificare tutte le righe della tavola di verità che danno " in output 2. Per ogni riga con un " in output, scrivere il minterm della configurazione delle variabili che la definiscono 3. Collegare tramite OR tutti i minterm ottenuti! "! #! $! "! #! $! "! #! $! "! #! $! "! #! $ %(! ",! #,! $ ) ) ) ) ) ) ) " ) ) " ) ) ) " " " " ) ) ) " ) " " " " ) " " " " "
Rappresentazione in Prima Forma Canonica: Dalla Tavola di Verità alla Funzione Oltre che mediante tavola di verità, ogni funzione booleana può essere rappresentata tramite la sua espressione booleana (1 a Forma Canonica) Per passare dalla rappresentazione mediante tavola di verità alla notazione tramite espressione booleana è necessario 1. Identificare tutte le righe della tavola di verità che danno " in output 2. Per ogni riga con un " in output, scrivere il minterm della configurazione delle variabili che la definiscono 3. Collegare tramite OR tutti i minterm ottenuti! "! #! $ +! "! #! $ +! "! #! $ +! "! #! $! "! #! $ %(! ",! #,! $ ) ) ) ) ) ) ) " ) ) " ) ) ) " " " " ) ) ) " ) " " " " ) " " " " "
Rappresentazione in Prima Forma Canonica: Dalla Tavola di Verità alla Funzione Oltre che mediante tavola di verità, ogni funzione booleana può essere rappresentata tramite la sua espressione booleana (1 a Forma Canonica) Per passare dalla rappresentazione mediante tavola di verità alla notazione tramite espressione booleana è necessario 1. Identificare tutte le righe della tavola di verità che danno " in output 2. Per ogni riga con un " in output, scrivere il minterm della configurazione delle variabili che la definiscono 3. Collegare tramite OR tutti i minterm ottenuti %(! ",! #,! $ )! "! #! $ +! "! #! $ +! "! #! $ +! "! #! $! "! #! $ %(! ",! #,! $ ) ) ) ) ) ) ) " ) ) " ) ) ) " " " " ) ) ) " ) " " " " ) " " " " "
Rappresentazione in Prima Forma Canonica: Dalla Tavola di Verità alla Funzione! " #, " %, " & = " # " % " & + " # " % " & + " # " % " & + " # " % " & L espressione booleana così calcolata prende il nome di Prima Forma Canonica o (Sum Of Products - SOP) della funzione Esiste anche una seconda forma canonica (Product Of Sums - POS), che non vedremo duranteilcorso Tutte le funzioni logiche possono essere espresse in forma canonica (prima o seconda) ) 1 ) 2 ) 3 -() 1, ) 2, ) 3 ) 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 1 1 0 0 0 1 0 1 1 1 1 0 1 1 1 1 1
Esempio 1: dalla Tavola di Verità alla Funzione! " # $ 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 1 1 0 0 0 1 0 1 1 1 1 0 1 1 1 1 0 Problema: date tre variabili booleane (!, ", #), si scriva la funzione F che vale 1 quando solo due di esse hanno valore 1 Si può scrivere la funzione come somma logica (OR) delle configurazioni corrispondenti agli 1 $!, ", # =!yz + x("# +!"# Forma canonica: somma di prodotti (OR di AND) N.B. tutte le funzioni logiche si possono scrivere in questa forma
Esempio 2: dalla Tavola di Verità alla Funzione! " # $ 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1 0 0 1 1 0 1 0 1 1 0 0 1 1 1 1 Problema: date tre variabili booleane (!, ", #), si scriva la funzione F che vale 1 quando il numero di 1 è dispari Si può scrivere la funzione come somma logica (OR) delle configurazioni corrispondenti agli 1 $!, ", # =! ("z +!" # +! (" # + xyz Forma canonica: somma di prodotti (OR di AND) N.B. tutte le funzioni logiche si possono scrivere in questa forma
Outline Algebra di Boole Relazione con i Circuiti Logici Elementi Costitutivi Operatori Logici Elementari Funzioni Logiche (o Booleane) Definizioni Rappresentazione in Prima Forma Canonica (Somma di Prodotti) Circuiti Logici Porte Logiche Dalla Funzione Logica al Circuito Dal Circuito alla Funzione Logica Dal Circuito alla Tavola di Verità (Simulazione Circuitale)
Circuito Logico Le istruzioni sono eseguite dall hardware di un elaboratore L hardware è costituito da tante semplici componenti, che combinate tra loro in maniera opportuna permettono di realizzare funzionalità complesse Un Circuito Logico è costituito da Porte Logiche Le porte logiche sono collegate tra loro per formare circuiti I circuiti possono essere a loro volta combinati a vari livelli, per realizzarne altri di complessità crescente
Porte Logiche Dispositivi elettronici che implementano/realizzano semplici funzionibooleane Elementidibase utilizzati percreare circuiti logici Qualsiasi circuito può essere implementato usando solo porte logiche elementari AND, OR e NOT Ciascuna porta logica ha il proprio simbolo logico, che permette a funzioni complesse di essere rappresentate mediante un diagramma logico La funzione associata a ciascuna porta logica può essere rappresentata mediante una tavola di verità o un espressione (o equazione) logica (o booleana)
Porte Logiche Elementari Rappresentano circuiti che forniscono in uscita il risultato di operazioni logiche elementari (AND, OR e NOT) sui valori delle! variabili in ingresso La funzione calcolata da un circuito con! ingressi è descritta da una corrispondente tabella per ciascuna delle "! combinazioni degli ingressi
Funzione AND: Tavola di Verità e Porta Logica Tavola di verità! "! #! "! # (AND) % % % % " % " % % " " " Simbolo logico (o funzionale) 0 0 1 0 0 0 0 1 1 1 0 1
Funzione AND: Tavola di Verità e Porta Logica Input Simbolo logico (o funzionale) Tavola di verità 0 0 1 0! "! #! "! # (AND) % % % % " % " % % " " " 0 0 0 1 1 1 0 1
Funzione AND: Tavola di Verità e Porta Logica Tavola di verità! "! #! "! # (AND) % % % % " % " % % " " " Simbolo logico (o funzionale) 0 0 1 0 0 0 0 1 Output 1 1 0 1
Funzione AND: Tavola di Verità e Porta Logica Tavola di verità! "! #! "! # (AND) % % % % " % " % % " " " Simbolo logico (o funzionale) 0 0 1 0 0 0 0 1 1 1 0 1 Espressione booleana & ' & ( oppure & ' & (
Funzione OR: Tavola di Verità e Porta Logica Tavola di verità! "! #! " +! # (OR) % % % % " " " % " " " " Simbolo logico (o funzionale) 0 0 0 1 0 1 1 0 1 1 1 1 Espressione booleana & ' + & (
Funzione NOT: Tavola di Verità e Porta Logica Tavola di verità! "! " (NOT) # " " # Simbolo logico (o funzionale) 0 1 1 0 Espressione booleana $ %
AND, OR e NOT Riepilogo Porte Logiche AND Tavola di Verità! "! &! "! & (AND) # # # # " # " # # " " " Simbolo logico Espressione booleana $ % $ ( oppure 0 $ % $ ( OR Tavola di Verità! "! &! " +! & (OR) # # # # " " " # " " " " Simbolo logico Espressione booleana $ % + $ ( NOT Tavola di Verità! "! " (NOT) # " " # Simbolo logico 1 Espressione booleana $ %
Altre porte Logiche Componendo le porte logiche elementari AND, OR e NOT è possibile ottenere le porte logiche NAND NOR XOR NOT XOR Etc
Altre Porte Logiche Porta NAND NAND = NOT AND Simbolo Logico Simbolo Logico Tavola di verità! = # % Espressione booleana Tavola di verità
Altre Porte Logiche Porta NAND NAND = NOT AND Simbolo Logico Simbolo Logico Tavola di verità! = # % Espressione booleana Tavola di verità
Altre Porte Logiche Porta NOR NOR = NOT OR Simbolo Logico Tavola di verità Espressione booleana Espressione booleana
Altre Porte Logiche Porta NOR NOR = NOT OR Simbolo Logico Tavola di verità Espressione booleana Espressione booleana
Altre Porte Logiche Porta XOR Simbolo Logico Tavola di verità Espressione booleana Espressione booleana
Altre Porte Logiche Porta Exclusive NOR NOT XOR Espressione booleana Simbolo Logico Tavola di verità Espressione booleana
Outline Algebra di Boole Relazione con i Circuiti Logici Elementi Costitutivi Operatori Logici Elementari Funzioni Logiche (o Booleane) Definizioni Rappresentazione in Prima Forma Canonica (Somma di Prodotti) Circuiti Logici Porte Logiche Dalla Funzione Logica al Circuito Dal Circuito alla Funzione Logica Dal Circuito alla Tavola di Verità (Simulazione Circuitale)
Dalla Funzione Logica al Circuito Ad ogni funzione logica (data come espressione booleana) è possibile associare il circuito logico equivalente, composto dall interconnessione di porte logiche elementari Metodo: Costruzione del circuito a partire dalla funzione logica 1. Si considerano le variabili prese in input dalla funzione 2. Ogni termine dell espressione è sostituito dal corrispondente circuito O dalla corrispondente porta logica 3. Le uscite corrispondenti ad ogni termine si compongono così come indicato dagli operatori! " # %(!, ", #) =!" + $#!" $# %
Esempio 1: dalla Funzione al Circuito 1/2 Circuito per la funzione " $ Circuito per la funzione " %$
Esempio 1: dalla Funzione al Circuito 2/2 Circuito per la funzione " $ Circuito per la funzione " %$
Esempio 2: dalla Funzione al Circuito 1/2 Circuito per la funzione " + $ Circuito per la funzione " + %$
Esempio 2: dalla Funzione al Circuito 2/2 Circuito per la funzione " + $ Circuito per la funzione " + %$
Esempio 3: dalla Funzione al Circuito 1/2 Circuito per la funzione " $% Circuito per la funzione " + $%
Esempio 3: dalla Funzione al Circuito 2/2 Circuito per la funzione " $% Circuito per la funzione " + $%
Esempio 4: dalla Funzione al Circuito X = A+ BC
Esempio 5: dalla Funzione al Circuito C = (# + %) ' (#%) Porta NAND
Esempio 6: dalla Funzione al Circuito 1/2 Y = AB + CD
Esempio 6: dalla Funzione al Circuito 2/2 Y = AB + CD Porta NOR
Esempio 7: dalla Funzione al Circuito 1/2 X = A BC + A BC + AB C
Esempio 7: dalla Funzione al Circuito 2/2 X = A BC + A BC + AB C
Outline Algebra di Boole Relazione con i Circuiti Logici Elementi Costitutivi Operatori Logici Elementari Funzioni Logiche (o Booleane) Definizioni Rappresentazione in Prima Forma Canonica (Somma di Prodotti) Circuiti Logici Porte Logiche Dalla Funzione Logica al Circuito Dal Circuito alla Funzione Logica Dal Circuito alla Tavola di Verità (Simulazione Circuitale)
Dal Circuito alla Funzione In generale, dato un circuito, è possibile determinare la funzionelogicarealizzata datale circuito Metodo: procedere progressivamente dagli input verso l output, aggiungendo di volta in volta le espressioni logiche all outputdiciascuna porta logica
Esempio 1: dal Circuito alla Funzione 1/3
Esempio 1: dal Circuito alla Funzione 2/3 Procedere progressivamente dagli input verso l output, aggiungendo di volta in volta le espressioni logiche all output di ciascuna porta logica
Esempio 1: dal Circuito alla Funzione 3/3 Procedere progressivamente dagli input verso l output, aggiungendo di volta in volta le espressioni logiche all output di ciascuna porta logica
Esempio 1: dal Circuito alla Funzione 3/3 Procedere progressivamente dagli input verso l output, aggiungendo di volta in volta le espressioni logiche all output di ciascuna porta logica
Outline Algebra di Boole Relazione con i Circuiti Logici Elementi Costitutivi Operatori Logici Elementari Funzioni Logiche (o Booleane) Definizioni Rappresentazione in Prima Forma Canonica (Somma di Prodotti) Circuiti Logici Porte Logiche Dalla Funzione Logica al Circuito Dal Circuito alla Funzione Logica Dal Circuito alla Tavola di Verità (Simulazione Circuitale)
Dal Circuito alla Tavola di Verità (Simulazione Circuitale) La tavola di verità di una circuito può essere ricavata «simulando» il funzionamento di tale circuito Metodo: per simulare il funzionamento di un circuito, si applicano dei valori agli ingressi e li si propaga lungo il circuito fino all uscita $!!! %! & # # "
Dal Circuito alla Tavola di Verità (Simulazione Circuitale) ( ) *!!! (corrisponde alla riga! della tabella)! ' ' " Risultato della simulazione: "(!,!,!) = '
Dal Circuito alla Tavola di Verità (Simulazione Circuitale) ( ) * $ $! (corrisponde alla riga! della tabella) $ $ $ " Risultato della simulazione: "($, $,!) = $
Dal Circuito alla Tavola di Verità (Simulazione Circuitale) ) * + $ & $ (corrisponde alla riga! della tabella) $ & & " Risultato della simulazione: "($, &, $) = &
Dal Circuito alla Tavola di Verità (Simulazione Circuitale) ) * + $ & & (corrisponde alla riga! della tabella) $ $ $ " Risultato della simulazione: "($, &, &) = $
Dal Circuito alla Tavola di Verità (Simulazione Circuitale) ) * + $ & & (corrisponde alla riga! della tabella) & $ $ " Risultato della simulazione: "($, &, &) = $
Dal Circuito alla Tavola di Verità (Simulazione Circuitale) ) * + $ & $ (corrisponde alla riga! della tabella) & & & " Risultato della simulazione: "($, &, $) = &
Dal Circuito alla Tavola di Verità (Simulazione Circuitale) ) * + $ $ & (corrisponde alla riga! della tabella) $ $ $ " Risultato della simulazione: "($, $, &) = $
Dal Circuito alla Tavola di Verità (Simulazione Circuitale) ( ) * $ $ $ (corrisponde alla riga! della tabella) $ + $ " Risultato della simulazione: "($, $, $) = $
Risultato della Simulazione! " # $ % % % & % % & % % & % & % & & % & % % & & % & % & & % & & & & &