Reti logiche: analisi, sintesi e minimizzazione Giovedì 9 ottobre 2014 Punto della situazione • Stiamo studiando le reti logiche costruite a partire dalle porte logiche AND, OR, NOT per progettare l’ALU (Unità Logico Aritmetica), componente essenziale del calcolatore. • Reti logiche = espressioni booleane • Obiettivo di oggi: passaggio da rete logica ad espressione booleana e viceversa Operatori logici • Una funzione di variabili binarie e a valore binario viene detta funzione logica o di commutazione. • Ogni funzione logica può essere definita in termini di semplici operatori logici di 1 o 2 variabili: AND, OR, NOT. • Esistono però degli altri operatori logici importanti: XOR, NAND, NOR. AND ovvero il prodotto AND(x,y) con x, y variabili che possono assumere valore Vero o Falso. Risultato Vero se entrambe le variabili sono poste a Vero, Falso, altrimenti. Interpretando Vero come 1 e Falso come 0. AND(x,y) corrisponde al prodotto x y. AND(F,F) = F AND(F,V) = F AND(V,F) = F AND(V,V) = V 00=0 01=0 10=0 11=1 x 0 0 1 1 y 0 1 0 1 x*y 0 0 0 1 Tavola di verità OR ovvero la somma OR(x,y) con x, y variabili che possono assumere valore Vero o Falso. Risultato Vero se almeno una variabile è posta a Vero, Falso, altrimenti. Interpretando Vero come 1 e Falso come 0 OR(x,y) corrisponde alla somma x + y, in cui 1+1 = 1. OR(F,F) = F OR(F,V) = V OR(V,F) = V OR(V,V) = V 0+0=0 0+1=1 1+0=1 1+1=1 x 0 0 1 1 y 0 1 0 1 x+y 0 1 1 1 Tavola di verità NOT ovvero la negazione NOT(x) con x variabile che può assumere valore Vero o Falso. Risultato Vero se la variabile è posta a Falso; Falso, altrimenti. Interpretando Vero come 1 e Falso come 0 NOT(x) corrisponde alla negazione. NOT(V) = F NOT(F) = V 0 =1 1=0 x 0 1 x 1 0 La combinazione delle variabili e degli operatori viene chiamata espressione logica. Mappa di verità o tavola di verità: tabella che definisce i valori dell’output per ogni possibile input Espressione SOP Letterale = variabile o la sua negazione • Un’espressione booleana è in forma normale SOP (Sum Of Products) quando è l’OR/somma di AND/prodotto di letterali x1 x2 x3 x1 x3 x1 x3 • Mintermine = prodotto di letterali in cui compare ogni variabile o vera o negata • Una espressione normale SOP è in forma canonica SOP se i suoi termini sono tutti mintermini x1 x2 x3 x1 x2 x3 x1 x2 x3 Scambiando Somma con Prodotto si definiscono le espressioni POS Espressione POS Letterale = variabile o la sua negazione • Un’espressione booleana è in forma normale POS (Product Of Sums ) quando è il prodotto (AND) di somme (OR) di letterali ( x2 x3 )( x1 x3 ) • Maxtermine = somma di letterali in cui compare ogni variabile o vera o negata • Una espressione normale POS è in forma canonica POS se i suoi termini sono tutti maxtermini ( x1 x2 x3 )( x1 x2 x3 ) Rete logica Una rete logica è un’interconnessione di porte logiche AND, OR, NOT, in modo che ogni uscita da una porta alimenti al più un ingresso di una porta Risultati principali Corrispondenza fra funzioni logiche e reti logiche: • Per ogni funzione logica possiamo costruire una rete logica che la realizza e viceversa • Ogni funzione logica può essere espressa in termini soltanto di AND, OR, NOT. Analisi: data una rete determinare la funzione calcolata Sintesi: data una funzione logica costruire una rete che la calcola Analisi di una rete: dalla rete alla funzione • Ogni rete logica calcola una funzione booleana dei suoi ingressi f(x1,x2,x3) = x3 ( x1 . x2) + (x1+x3) Analisi e Sintesi di reti • Analisi è abbastanza semplice: – Calcola per ogni porta logica di cui sono specificati tutti gli input l’espressione booleana associata all’output • Fino ad ottenere l’espressione associata al terminale d’uscita della rete • 1. 2. 3. Vediamo ora la sintesi di una funzione logica f: Da f alla tavola di verità Dalla tavola di verità all’espressione «SOP» Dall’espressione «SOP» ad una rete a due stadi: il primo di porte AND, il secondo con una sola porta OR Tavole di verità di mintermini Per ogni mintermine, la tavola di verità ha un solo valore 1. Per esempio: se f = x3 x2 x1 allora avrà un solo 1 in corrispondenza di x3=0, x2=1, x1=1. • Ricorda: x3 x2 x1 f • Il prodotto è 1 sse ogni fattore è 1 0 0 0 0 Viceversa, se la tavola di verità di f ha un solo valore 1 necessariamente f è un mintermine. 0 0 1 0 0 1 0 0 0 1 1 1 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 0 f = x3 x2 x1 Dalla tavola di verità alla SOP Se invece la tavola di verità ha più occorrenze di 1: f ha valore 1 se: x3 x2 x1 f x3=0, x2=1, x1=1 oppure 0 0 0 0 x3=1, x2=0, x1=1 0 0 1 0 Espressione SOP 0 1 0 0 0 1 1 1 1 0 0 0 1 0 1 1 1 1 0 0 1 1 1 0 x 3 x2 x1 x 3 x2 x1 f = x3 x2 x1 + x3 x 2 x1 1. Per ogni 1 nella tavola di verità trovare il mintermine corrispondente 2. Sommare i mintermini ottenuti Esercizio (maggioranza) Sia f(x,y,z) la funzione che vale 1 se (e solo se) la maggioranza delle variabili vale 1. Effettuare la sintesi di f: 1. Da f alla tavola di verità 2. Dalla tavola di verità all’espressione SOP 3. Dall’espressione SOP ad una rete a due stadi: il primo di porte AND, il secondo con una sola porta OR Dalla tavola di verità alla SOP: esempio 1 Supponiamo di avere una funzione f data tramite la sua tavola di verità Espressione SOP Dalla tavola di verità alla SOP: esempio 2 Dalla tavola di verità all’espressione SOP Espressione SOP Dall’espressione canonica SOP alla rete a due livelli SOP /AND-to-OR: nel primo livello varie porte AND, nel secondo livello solo una porta OR Nota Nota: le porte sono state estese in modo da poter avere più di 2 ingressi Minimizzazione di reti combinatorie Sinonimi: Reti logiche, reti combinatorie Funzioni logiche, funzioni di commutazione Valutazione delle Prestazioni di una Rete Combinatoria 25 • Per ogni funzione di commutazione esistono diverse reti combinatorie che la realizzano – Qual è la migliore? • Quella che ha le migliori prestazioni • Le prestazioni di una rete combinatoria vengono misurate in termini di – Velocità – Costo • Esiste una tecnica che ci permette di sintetizzare la rete in modo da massimizzare le prestazioni? Velocità di una Rete Combinatoria 26 • La velocità della rete viene misurata calcolando il tempo che passa da quando i segnali sono disponibili sui terminali di input a quando un segnale è disponibile sul terminale di output • Quando un segnale attraversa una porta logica subisce un piccolo ritardo • La velocità di una rete dipende dal massimo numero di porte logiche che un segnale deve attraversare per andare da un terminale di input al terminale di output • Faremo sempre riferimento a reti a due livelli – Sono le più veloci tra quelle che possono realizzare qualsiasi funzione – Le reti ad un livello possono realizzare un insieme molto limitato di funzioni Costo di una rete/espressione logica 27 • Il costo della rete dipende da – Numero di porte logiche – Numero di linee di input • Tra tutte le reti AND-to-OR (SOP) che realizzano una certa funzione di commutazione una rete è minimale se – Ha il minor numero di porte AND – Tra tutte quelle che hanno il minor numero di porte AND ha il minor numero di linee di input • Un’espressione in forma normale SOP è minimale se – Ha il minor numero di termini prodotto possibile – Tra tutte le espressioni equivalenti che hanno il minor numero di prodott,i ha il minor numero di letterali 28 Minimizzazione di espressioni booleane • La minimizzazione di espressioni booleane non è un processo semplice e diretto. Si possono utilizzare le regole contenute nella seguente tabella. • Per poche variabili invece è possibile utilizzare la Mappa di Karnaugh per semplificare il processo – una rappresentazione particolare delle tavole di verità che consente di individuare facilmente i mintermini adiacenti – Utile fino a 4 variabili Esercizio: verificare che (x+y)(x+z) = x+yz confrontando le rispettive tavole di verità Esempi Esempio 1 Applicando la proprietà distributiva e del complemento si ha: x1 x2 x3 x4 x1 x2 x3 x4 x1 x2 x3 ( x4 x4 ) x1 x2 x3 Esempio 2 Applicando le leggi di De Morgan si dimostra: f x2 x4 x1 x3 𝑓= x2 x4 x1 x3 x2 x4 x1 x3 ( x2 x4 )( x1 x3 ) Esercizio (SOP) Determinare l’espressione canonica SOP della funzione definita dalla seguente tavola di verità x2 x1 f 0 0 1 0 1 0 1 0 1 1 1 0 Esercizio (POS) Determinare l’espressione canonica POS della funzione definita dalla seguente tavola di verità x2 x1 f 0 0 0 0 1 1 1 0 0 1 1 1 Suggerimento: usare le leggi di De Morgan Risultati principali Corrispondenza fra funzioni logiche e reti logiche: • Per ogni funzione logica possiamo costruire una rete logica che la realizza e viceversa • Ogni funzione logica può essere espressa in termini soltanto di AND, OR, NOT. Analisi: data una rete determinare la funzione calcolata Sintesi: data una funzione logica costruire una rete che la calcola Riepilogo e riferimenti • Analisi e sintesi di rete logiche [PH] appendice C.1, C.2, C.3 [P] par. 4.1, 4.2, 4.3. La prossima volta: la minimizzazione con le mappe di Karnaugh [P] par. 4.4
© Copyright 2024 ExpyDoc