Sintesi di reti combinatorie. Sommario. Motivazioni. Sommario. Funzioni Espressioni. M. Favalli



Documenti analoghi
Sintesi di reti combinatorie. Motivazioni. Sommario. Funzioni Espressioni

Cap. 3 Reti combinatorie: analisi e sintesi operatori logici e porte logiche

Algebra Booleana 1 ALGEBRA BOOLEANA: VARIABILI E FUNZIONI LOGICHE

L algebra di Boole. Cenni Corso di Reti Logiche B. Mariagiovanna Sami

Calcolatori: Algebra Booleana e Reti Logiche

I.I.S. Primo Levi Badia Polesine A.S

Sintesi di reti logiche multilivello. Sommario. Motivazioni. Sommario. M. Favalli

Esercitazioni di Reti Logiche. Lezione 2 Algebra Booleana e Porte Logiche. Zeynep KIZILTAN zkiziltan@deis.unibo.it

MAPPE DI KARNAUGH. Nei capitoli precedenti si è visto che è possibile associare un circuito elettronico o elettrico ad una funzione logica.

Algebra Di Boole. Definiamo ora che esiste un segnale avente valore opposto di quello assunto dalla variabile X.

Algebra di Boole. Le operazioni base sono AND ( ), OR ( + ), NOT ( )

Macchine a stati finiti. Sommario. Sommario. M. Favalli. Le macchine a stati si utilizzano per modellare di sistemi fisici caratterizzabili mediante:

Sintesi Combinatoria Uso di componenti diversi dagli operatori elementari. Mariagiovanna Sami Corso di reti Logiche 8 Anno

Utilizzo I mintermini si usano quando si considererà la funzione di uscita Q come Somma di Prodotti (S. P.) ossia OR di AND.

Operatori logici e porte logiche

Sommario. Strumento CAD per la sintesi ottima di reti a 2 livelli. Motivazioni. PLA (Programmable Logic Array)

MAPPE DI KARNAUGH e sintesi ottima

Reti Logiche. Le reti logiche sono gli elementi architettonici di base dei calcolatori, e di tutti gli apparati per elaborazioni digitali.

Algebra di Boole e reti logiche. Giovedì 8 ottobre 2015

Macchine a stati finiti. Sommario. Sommario. M. Favalli. 5th June 2007

Minimizzazione di Reti Logiche Combinatorie Multi-livello

APPUNTI DI ELETTRONICA DIGITALE

Algebra di Boole. Le operazioni, nell algebra booleana sono basate su questi tre operatori: AND ( ), OR ( + ),NOT ( )

Algebra di Boole ed Elementi di Logica

Le equazioni. Diapositive riassemblate e rielaborate da prof. Antonio Manca da materiali offerti dalla rete.

Algebra Booleana ed Espressioni Booleane

Matematica Computazionale Lezione 4: Algebra di Commutazione e Reti Logiche

Variabili logiche e circuiti combinatori

Dimensione di uno Spazio vettoriale

APPUNTI DI MATEMATICA LE FRAZIONI ALGEBRICHE ALESSANDRO BOCCONI

Sommario. 1 Realizzazione del STG. Introduzione. 1 traduzione delle specifiche informali in specifiche formali (STG o

ALGEBRA DELLE PROPOSIZIONI

I sistemi di numerazione

Le Mappe di Karnaugh.

Comparatori. Comparatori di uguaglianza

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Fondamenti di calcolo booleano

Architettura degli Elaboratori Implementazione di funzioni booleane

Sommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi.

Reti sequenziali sincrone

e-dva - eni-depth Velocity Analysis

G. Pareschi ALGEBRE DI BOOLE. 1. Algebre di Boole

Alcune nozioni di base di Logica Matematica

I PROBLEMI ALGEBRICI

Algebra booleana. Si dice enunciato una proposizione che può essere soltanto vera o falsa.

risulta (x) = 1 se x < 0.

SISTEMI DI NUMERAZIONE E CODICI

Architettura dei Calcolatori Algebra delle reti Logiche

1. PRIME PROPRIETÀ 2

Appunti di informatica. Lezione 2 anno accademico Mario Verdicchio

Teoria degli insiemi

Linguaggio del calcolatore. Algebra di Boole AND, OR, NOT. Notazione. And e or. Circuiti e reti combinatorie. Appendice A + dispense

Laurea Specialistica in Informatica

Codifica binaria e algebra di Boole

Parte 2. Determinante e matrice inversa

Matematica generale CTF

Lezione 9: Cambio di base

Macchine a stati finiti G. MARSELLA UNIVERSITÀ DEL SALENTO

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo.

Esercitazione di Calcolatori Elettronici Ing. Battista Biggio. Corso di Laurea in Ingegneria Elettronica. Esercitazione 1 (Capitolo 2) Reti Logiche

Sommario. Teoremi Maxterm Forme Canoniche Mappe di Karnaugh Fine lezione

x y z F x y z F F = x z + y z + yz + xyz G = wyz + vw z + vwy + vwz + v w y z Sommario

Algoritmi e strutture dati. Codici di Huffman

Corso di Informatica

Memorie ROM (Read Only Memory)

Misure finanziarie del rendimento: il Van

Transitori del primo ordine

1 Applicazioni Lineari tra Spazi Vettoriali

Capitolo 2. Operazione di limite

La Logica Proposizionale. (Algebra di Boole)

Soluzione di equazioni quadratiche

Iniziamo con un esercizio sul massimo comun divisore: Esercizio 1. Sia d = G.C.D.(a, b), allora:

Misure finanziarie del rendimento: il Van

RETTE, PIANI, SFERE, CIRCONFERENZE

Sui concetti di definizione, teorema e dimostrazione in didattica della matematica

Per lo svolgimento del corso risulta particolarmente utile considerare l insieme

Schemi delle Lezioni di Matematica Generale. Pierpaolo Montana

(anno accademico )

Applicazioni lineari

Un metodo per il rilevamento degli errori: la tecnica del Bit di Parità

( x) ( x) 0. Equazioni irrazionali

1 Serie di Taylor di una funzione

Intelligenza Artificiale

ESERCIZI APPLICAZIONI LINEARI

LEZIONE 31. B i : R n R. R m,n, x = (x 1,..., x n ). Allora sappiamo che è definita. j=1. a i,j x j.

Operazioni Aritmetiche e Codici in Binario Giuseppe Talarico 23/01/2013

Esempi ed esercizi Aritmetica degli elaboratori e algebra di commutazione

4. Operazioni aritmetiche con i numeri binari

SOMMARIO I radicali pag I radicali aritmetici pag Moltiplicazione e divisione fra radicali aritmetici pag.

Proof. Dimostrazione per assurdo. Consideriamo l insieme complementare di P nell insieme

Il concetto di valore medio in generale

Corso di Matematica per la Chimica

Il seguente esempio ha lo scopo di illustrare i 3 tipi di relazione 1:1,1:N,N:N. Tabella Conto: Tabella Conto:

4 Dispense di Matematica per il biennio dell Istituto I.S.I.S. Gaetano Filangieri di Frattamaggiore EQUAZIONI FRATTE E SISTEMI DI EQUAZIONI

Modulo 8. Elettronica Digitale. Contenuti: Obiettivi:

2.1 Definizione di applicazione lineare. Siano V e W due spazi vettoriali su R. Un applicazione

Funzioni in C. Violetta Lonati

Esponenziali elogaritmi

MATEMATICA DEL DISCRETO elementi di teoria dei grafi. anno acc. 2009/2010

Sistemi di Numerazione Binaria NB.1

4. Operazioni binarie, gruppi e campi.

Transcript:

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 4 Forme normali M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 1 / 49 M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 2 / 49 Motivazioni Sommario Si deve trovare una metodologia in grado di ottenere un espressione equivalente a una funzione di partenza Il numero di tali espressioni é peró infinito Si puó utilizzare come punto di partenza una forma canonica, ovvero un espressione che data la funzione é unica Questa espressione é poi il punto di partenza per possibili strategie di ottimizzazione che data una specifica (costo...) sfruttano le proprietá dell algebra di commutazione per ottenere un espressione migliore di quella di partenza Le forme canoniche sono utili anche per la verifica 1 Teorema di espansione di Shannon (Boole) 2 Forme canoniche 3 Metriche per il costo di una rete 4 Forme normali M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 3 / 49 M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 4 / 49

Definizioni Esempio di cofattori Si definisce cofattore rispetto a una variabile x i in forma vera, la valutazione della funzione con x i = 1 f xi =1 = f (x 1, x 2,..., 1,..., x n ) Si definisce cofattore rispetto a una variabile x i in forma negata, la valutazione della funzione con x i = 0 f xi =0 = f (x 1, x 2,..., 0,..., x n ) La funzione f (x 1, x 2, x 3, x 4 ) = x 1 x 2 + x 3x 4 + x 3 x 1 ha i cofattori f x3 =1 = x 1 x 2 + x 4 f x3 =0 = x 1 x 2 + x 1 = x 1 Cosa significa se f xi =0 = 0 o f xi =1 = 0? Cosa significa se f xi =0 = f xi =1? Si calcolino i cofattori di: x 1 x 2 + (x 3 + x 4 ) M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 5 / 49 M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 6 / 49 Teorema di espansione Espressione del teorema di espansione come prodotto di somme f (x 1, x 2,..., x i,..., x n ) = x i f x i =0 + x i f xi =1 = x i f (x 1, x 2,..., 0,..., x n ) + x i f (x 1, x 2,..., 1,..., x n ) (1) Dimostrazione i. Funzioni costanti ii. Funzioni proiezione iii. Funzioni composte ottenute utilizzando gli operatori dell algebra di commutazione (f g, f + g, f ) Vale l espressione duale: Infatti Verifica f (x 1, x 2,..., x i,..., x n ) = (x i + f xi =0)(x i + f xi =1) (2) (x i + f xi =0)(x i + f xi =1) = x i x i + x i f xi =1 + f xi =0x i + f xi =0f xi =1 = x i f xi =1 + f xi =0x i M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 7 / 49 M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 8 / 49

Rappresentazione grafica Esempi Il processo di escpansione con il teorema di Shannon puó essere rappresnetato graficamente come un albero binario x1 f(x1,x2,x3,...,xn) x2 f(0,x2,x3,...,xn) f(1,x2,x3,...,xn) f(0,0,x3,...,xn) f(0,1,x3,...,xn) f(1,0,x3,...,xn) f(1,1,x3,...,xn) M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 9 / 49 M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 10 / 49 Sommario Applicazione iterativa 1 Teorema di espansione di Shannon (Boole) 2 Forme canoniche 3 Metriche per il costo di una rete 4 Forme normali Il teorema di espansione puó essere applicato iterativamente ai cofattori Esempio (n = 3) f (x 1, x 2, x 3 ) = x 1 f (0, x 2, x 3 ) + x 1 f (1, x 2, x 3 ) = x 1 (x 2 f (0, 0, x 3) + x 2 f (0, 1, x 3 )) + x 1 (x 2 f (1, 0, x 3) + x 2 f (1, 1, x 3 )) = x 1 x 2 (x 3 f (0, 0, 0) + x 3f (0, 0, 1)) + x 1 x 2(x 3 f (0, 1, 0) + x 3f (0, 1, 1))+ x 1 x 2 (x 3 f (1, 0, 0) + x 3f (1, 0, 1)) + x 1 x 2 (x 3 f (1, 1, 0) + x 3f (1, 1, 1)) = x 1 x 2 x 3 f (0, 0, 0)+x 1 x 2 x 3f (0, 0, 1)+x 1 x 2x 3 f (0, 1, 0)+x 1 x 2x 3 f (0, 1, 1)+ x 1 x 2 x 3 f (1, 0, 0)+x 1x 2 x 3f (1, 0, 1)+x 1 x 2 x 3 f (1, 1, 0)+x 1x 2 x 3 f (1, 1, 1) M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 11 / 49 M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 12 / 49

Prima forma canonica Mintermini É ottenuta dall applicazione iterattiva del teorema di Shannon f (x 1, x 2,..., x n ) = x 1 x 2...x nf (0, 0,..., 0) + x 1 x 2...x nf (0, 0,..., 1) +... x 1 x 2...x n f (1, 1,..., 1) Si definiscono discriminanti i termini del tipo f (0, 0,..., 0),..., f (1, 1,..., 1) I discriminanti corrispondono alle righe della tabella di veritá I termini prodotto contenenti discriminanti nulli possono essere eliminati dall espressione precedente Si definiscono mintermini, quei termini prodotto in cui compaiono n variabili (in forma vera o complementata) che corrispondono a discriminanti non nulli Un mintermine é legato a una riga della tabella di veritá in quanto esso vale 1 solo se le variabili di ingresso hanno un valore corrispondente a quello indicato nella riga della tabella di veritá M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 13 / 49 M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 14 / 49 Esempio Forma canonica SP x 1 x 2 x 3 f (discr.) termine prodotto 000 0 x 1 x 2 x 3 001 0 x 1 x 2 x 3 010 1 x 1 x 2x 3 mintermine 011 1 x 1 x 2x 3 mintermine 100 0 x 1 x 2 x 3 101 1 x 1 x 2 x 3 mintermine 110 1 x 1 x 2 x 3 mintermine 111 0 x 1 x 2 x 3 Si definisce forma canonica di tipo somma di prodotti (SP o SOP) la disgiunzione (somma) di tutti i mintermini della funzione Nell esempio precedente si ha: f (x 1, x 2, x 3 ) = x 1 x 2x 3 + x 1 x 2x 3 + x 1 x 2 x 3 + x 1 x 2 x 3 Quindi si ha finalmente un espressione per f!!!! M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 15 / 49 M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 16 / 49

Sommario Una funzione di n variabili puó quindi essere descritta in funzione dei suoi valori per ogni configurazione delle variabili f = 2 n 1 i=0 p i f (i) i é un indice che corrisponde al numero naturale codificato da una configurazione degli ingressi - es. x 1, x 2, x 3 = 100 i = 4 p i é il termine prodotto corrispondente a i (es. p 4 = x 1 x 2 x 3 ) Nella forma canonica SP, si ha: m i é l i-mo mintermine f = i f (i)=1 M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 17 / 49 m i Seconda forma canonica Anche l espressione duale del teorema di Shannon puó essere applicata in maniera iterattiva f (x 1, x 2, x 3 ) = (x 1 + f (0, x 2, x 3 ))(x 1 + f (1, x 2, x 3 )) = (x 1 +(x 2 +f (0, 0, x 3 ))(x 2 +f (0, 1, x 3)))(x 1 +(x 2+f (1, 0, x 3 ))(x 2 +f (1, 1, x 3))) (x 1 + (x 2 + (x 3 + f (0, 0, 0))(x 3 + f (0, 0, 1)))) (x 1 + (x 2 + (x 3 + f (0, 1, 0))(x 3 + f (0, 1, 1)))) (x 1 + (x 2 + (x 3 + f (1, 0, 0))(x 3 + f (1, 0, 1)))) (x 1 + (x 2 + (x 3 + f (1, 1, 0))(x 3 + f (1, 1, 1)))) = (x 1 +x 2 +x 3 +f (0, 0, 0))(x 1 +x 2 +x 3 +f (0, 0, 1)) (x 1 +x 2 +x 3+f (0, 1, 0))(x 1 +x 2 +x 3 +f (0, 1, 1)) (x 1 +x 2+x 3 +f (1, 0, 0))(x 1 +x 2+x 3 +f (1, 0, 1)) (x 1 +x 2 +x 3+f (1, 1, 0))(x 1 +x 2 +x 3 +f (1, 1, 1)) M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 18 / 49 Seconda forma canonica Maxtermini f (x 1, x 2,..., x n ) = (x 1 + x 2 +... + x n + f (0, 0,..., 0)) (x 1 + x 2 +... + x n + f (0, 0,..., 1))... (x 1 + x 2 +... + x n + f (1, 1,..., 1)) Attenzione: la seconda forma canonica non si ottiene complementando la prima I termini somma contenenti discriminanti = 1 possono essere eliminati dall espressione precedente Si definiscono maxtermini, quei termini somma in cui compaiono n variabili (in forma vera o complementata) che corrispondono a discriminanti nulli Un maxtermine é legato a una riga della tabella di veritá in quanto esso vale 0 solo se le variabili di ingresso hanno un valore corrispondente a quello indicato nella riga della tabella di veritá M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 19 / 49 M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 20 / 49

Esempio Forma canonica PS x 1 x 2 x 3 f (discr.) termine somma 000 0 x 1 + x 2 + x 3 maxtermine 001 0 x 1 + x 2 + x 3 maxtermine 010 1 x 1 + x 2 + x 3 011 1 x 1 + x 2 + x 3 100 0 x 1 + x 2 + x 3 maxtermine 101 1 x 1 + x 2 + x 3 110 1 x 1 + x 2 + x 3 111 0 x 1 + x 2 + x 3 maxtermine Si definisce forma canonica di tipo prodotto di somme (PS o POS) la congiunzione (prodotto) di tutti i maxtermini della funzione Nell esempio precedente si ha: f (x 1, x 2, x 3 ) = (x 1 + x 2 + x 3 )(x 1 + x 2 + x 3 )(x 1 + x 2 + x 3 )(x 1 + x 2 + x 3 ) M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 21 / 49 M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 22 / 49 Sommario Esempi Una funzione di n variabili puó quindi essere descritta in funzione dei suoi valori per ogni configurazione delle variabili 2 n 1 i=0 (s i + f (i)) i é un indice che corrisponde al numero naturale codificato da una configurazione degli ingressi - es. x 1, x 2, x 3 = 100 i = 4 s i é il termine somma corrispondente a i (es. s 4 = x 1 + x 2 + x 3 ) Nella forma canonica PS, si ha: M i é l i-mo maxtermine i f (i)=0 M i M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 23 / 49 M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 24 / 49

Forme canoniche: il punto di vista del calcolo del proposizioni Forma canonica di tipo SP: la funzione vale 1 se la configurazione delle variabili di ingresso é una di quelle (disgiunzione) in cui la funzione vale 1 Forma canonica di tipo PS: la funzione vale 1 se non si trova in alcuna (congiunzione) delle configurazioni in cui vale 0 supponiamo che 0101 sia una configurazione in cui f (x 1, x 2, x 3, x 4 ) = 0: devo trovare una espressione che é vera se non sono in tale configurazione, quindi x 1 = 1 o x 2 = 0 o x 3 = 1 o x 4 = 0 (x 1 + x 2 + x 3 + x 4 ) ovvero un maxtermine Il ruolo dell ottimizzazione nella sintesi di reti logiche Ingredienti: funzione/espressione di partenza un obbiettivo di progetto (costo, ritardo, consumo di potenza) e una metrica che descriva tale obbiettivo Il compito dell ottimizzazione é quello di esplorare lo spazio delle possibili espressioni equivalenti cercando quella piú conveniente dal punto di vista della metrica considerata Questo puó essere fatto mediante: una tecnica esatta che trova la soluzione migliore (es. rete dal costo minimo) una tecnica euristica che porta a una soluzione approssimata (es. un minimo locale del costo) con un costo computazionale decisamente inferiore all approccio esatto M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 25 / 49 M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 26 / 49 Ottimizzazione del costo Sommario Le forme canoniche consentono di descrivere un espressione mediante l algebra di commutazione In molti casi é possibile semplificare una forma canonica ottenendo un espressione equivalente piú semplice e quindi una rete meno costosa 1 Teorema di espansione di Shannon (Boole) 2 Forme canoniche f (x 1, x 2, x 3 ) = x 1 x 2x 3 + x 1 x 2x 3 + x 1 x 2 x 3 + x 1 x 2 x 3 = x 1 x 2(x 3 + x 3) + x 1 x 3 (x 2 + x 2) = x 1 x 2 + x 1 x 3 3 Metriche per il costo di una rete 4 Forme normali Occorre specificare meglio cosa vuole dire "meno costosa" M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 27 / 49 M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 28 / 49

Metriche per la stima del costo di una rete Numero di letterali Il costo di una rete che é proporzionale all area occupata dalla sua implementazione fisica (gate e interconnessioni) Chiaramente non si puó arrivare fino alla realizzazione fisica per valutare il costo di un espressione Bisogna trovare una metrica che fornisca una stima approssimata dell area Esistono diverse metriche: 1 numero di gate (non si considera il fatto che i gate con piú ingressi hanno maggiori dimensioni) 2 numero di letterali nell espressione 3 numero di porte logiche pesate sui loro ingressi Si conta il numero di letterali (l) nell espressione f = ab + c + d e l = 5 f = abc + a bce + d e f l = 10 Questo metodo é semplice, ma puó essere reso piú accurato. Si considerino 3 funzioni con l = 6 e le reti corrispondenti f 1 = ab + cd + e + f f 2 = ab + cd + ef f 3 = abc + def a b c d e f a b c d e f Il numero totale di ingressi di gate (g) che é proporzionale all area occupata dai gate é g 1 = 8, g 2 = 9, g 3 = 8 a b c d e f M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 29 / 49 M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 30 / 49 Esempi Somma dei gate pesata sugli ingressi Questa metrica puó essere facilmente utilizzata se é disponibile la rete, mentre é difficile da applicare direttamente all espressione A questo riguardo si possono mettere tutte le parentesi (compreso quelle non necessarie) e contare il numero di operandi di ciascun operatore somma e prodotto, aggiungendo 1 tutte le volte che si incontra un invertitore Esempio f = abc + d + e(f + g) = (abc) + d + (e(f + g)), si ha un OR a 3 ingressi, un AND a 3 ingressi, un OR a 2 ingressi, un AND a 2 ingressi e un NOT. Quindi g = 10 (mentre l = 7) M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 31 / 49 M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 32 / 49

Il ruolo del fan-out Esempi Chiaramente la valutazione del costo di un espressione corrispondente a una rete deve essere attuata tenendo in conto dell eventuale utilizzo del fan-out evitando cosí di contare piú volte letterali e operandi In effetti tutti i metodi considerati non tengono conto del costo delle interconnessioni M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 33 / 49 M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 34 / 49 Sommario Forme normali e reti a 2 livelli 1 Teorema di espansione di Shannon (Boole) 2 Forme canoniche 3 Metriche per il costo di una rete 4 Forme normali Considereremo per primo un problema particolare: quello delle reti che realizzano espressioni del tipo somma di prodotti (SP) o prodotti di somme (PS) Taeli espressioni vengono definite come forme normali (le forme canoniche ne sono un caso particolare) Le reti corrispondenti (trascurando i NOT) vengono definite a 2 livelli I motivi di questa restrizione sono: la possibilitá di trovare una soluzione esatta del problema con tempi di calcolo ragionevoli alcuni strumenti sviluppati in questo caso servono per risolvere il problema generale l interesse tecnologico (sorpassato) di metodologie di fabbricazione in grado di realizzare reti a 2 livelli in maniera molto efficiente M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 35 / 49 M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 36 / 49

Sintesi di reti a 2 livelli Implicanti e implicati Sono stati sviluppati diversi metodi per la sintesi a 2 livelli, sia di tipo esatto che euristico In questo ambito vedremo due metodi di carattere esatto: Mappe di Karnaugh: un metodo grafico per la sintesi di funzioni con fino a 6 ingressi Quine-Mc Cluskey: un metodo implementabile in uno strumento di sintesi automatica (computazionalmente fattibile fino a circa 20 ingressi) Si vedrá anche uno strumento CAD (Espresso) in grado di trattare funzioni di dimensioni maggiori eventualmente ricorrendo a strumenti euristici Sian n il numero di variabili In una forma normale di tipo SP di una funzione f, un termine prodotto P di k letterali corrispondenti a k n variabili diverse viene detto implicante Infatti P = 1 f = 1 In una forma normale di tipo PS di una funzione f, un termine somma S di k letterali corrispondenti a k n variabili diverse viene detto implicato Infatti S = 1 f = 1 M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 37 / 49 M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 38 / 49 Diagrammi di Venn Espansione Sia P un termine prodotto di k n letterali, vale la proprietá: x P + xp = (x + x)p = 1 P = P L espressione di partenza ha 2(k + 1) letterali, e quella finale ne ha k La regola puó essere applicata iterattivamente f = a b c d + a b c d + a bc d + a bc d = a b c (d + d) + a bc (d + d) = a b c + a bc = a c (b + b ) = a c M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 39 / 49 M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 40 / 49

L espansione non é sufficiente Idempotenza Si consideri un ulteriore caso Si potrebbe passare per un espressione multilivello per semplificare ulteriormente le espressioni (utilizzando la proprietá di semplificazione) f = abc d + abcd + a bcd La proprietá di espansione puó essere applicata in 2 modi diversi, si ha: f = abd(c + c ) + a bcd = abd + a bcd f = bcd(a + a ) + abc d = bcd + abc d La proprietá di espansione non puó piú essere applicata f = abd + a bcd = bd(a + a c) = bd(a + c) = abd + bcd f = bcd + abc d = bd(c + ac ) = bd(a + c) = abd + bcd Come alternatica si puó utilizzare la proprietá di idempotenza (P + P = P) per poi applicare l espansione f = abc d + abcd + a bcd = abc d + abcd + abcd + a bcd = = abd(c + c) + bcd(a + a ) = abd + bcd M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 41 / 49 M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 42 / 49 Espansione in espressioni PS Implicanti e implicati primi Le proprietá duali possono essere applicate a espressioni di tipo PS (x + S)(x + S) = S Vediamo ad esempio il caso dell espansione: f = (a + b + c + d)(a + b + c + d)(a + b + c + d)(a + b + c + d) Un implicante o implicato che non puó essere ulteriormente espanso si definisce come primo Si vedrá in seguito il significato di tali termini = ((a+b+d)+c)((a+b+d)+c )((a+b +d)+c)((a+b +d)+c ) = (a + b + d)(a + b + d) = ((a + d) + b)((a + d) + b ) = a + d M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 43 / 49 M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 44 / 49

Distanza Hamming (forme SP) Selezione di coppie di termini per l espansione: termini prodotto con lo stesso numero di letterali che differiscono per un solo letterale corrispondente alla stessa variabile in forma vera e complementata Nel caso dei mintermini l operazione puó essere fatta sia analizzando l espressione che analizzando la tabella di veritá In particolare, possono essere espanse le configurazioni corrispondenti a uni della funzione che si trovano a distanza Hamming unitaria Si considerino ad esempio i mintermini: xywz 1111 xywz 1110 Questi possono essere espansi come xyw(z + z ) = xyw Rappresentazione dei termini prodotto come configurazioni Il ragionamento sulle configurazioni binarie puó essere esteso a termini prodotto con un qualsiasi numero di letterali Questo puó essere fatto utilizzando configurazioni di {0, 1, } n che utilizzano lo stesso ordinamento delle variabili usato nella tabella di veritá in particolare si associa a ogni letterale presente nel termine prodotto il simbolo 1 se il letterale é in forma vera e 0 se é in forma negata si associa il simbolo a quelle variabili che non compaiono nel prodotto Ad esempio f (x, y,, z): xyw 111, xy 10 M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 45 / 49 M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 46 / 49 Generalizzazione della distanza Hamming Esempi La distanza Hamming puó essere generalizzata a quelle configurazioni di {0, } n che hanno il simbolo nelle stesse posizioni Ad esempio, 01 0 e 01 1 hanno distanza 1, mentre 11 e 00 hanno distanza 2 Termini prodotto corrispondenti a configurazioni a distanza 1 possono essere espansi sostituendo il valore per cui differiscono con il simbolo Esempio 01 0 e 01 1 possono essere espansi come 01 Infatti, i termini prodotto corrispondenti sono x yz + x yz = xy (z + z ) = xy M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 47 / 49 M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 48 / 49

Conclusioni Si é visto come si possa rappresentare una funzione mediante un espressione É stata sviluppata una metrica per valutare il costo di un espressione Sono stati sviluppati alcuni concetti utili per la semplificazione di un espressione Non si ha ancora un approccio sistematico M. Favalli (ENDIF) Sintesi di reti combinatorie Reti logiche 49 / 49