7 / 63 · Concetto
Algebra booleana, equivalenza e costo d’implementazione
Trasformare circuiti con De Morgan e fattorizzazione, distinguendo equivalenza logica e temporizzazione.
Le lezioni sono gratuite. Iscriviti per salvare i progressi.
Espressioni equivalenti producono la stessa uscita per ogni ingresso
Semplificare un circuito combinatorio non significa soltanto accorciare una formula. Occorre mantenere la funzione considerando livelli logici, fan-in, fan-out e celle realmente disponibili. Leggiamo anzitutto e moltiplicazione dell'algebra booleanaAlgebra booleana Algebra di 0,1, AND, OR e NOT. Il simbolo più indica normalmente OR e segue regole diverse dall’addizione intera. come OR e AND.
La seconda identità si verifica per casi: con entrambi i membri valgono 1; con valgono entrambi . Anche dopo aver applicato un'identità memorizzata bisogna saperne spiegare il significato.
Leggere strutture NAND e NOR con De Morgan
Per esempio, equivale ad . La prima forma si disegna con due AND e una OR, la seconda con una OR e una AND. Tuttavia, con tempi d'arrivo o carichi diversi, la soluzione con meno porte non è sempre più veloce.
È utile anche il teorema del consenso:
Quando , se è già 1 il termine , mentre se è già 1 . Quindi è ridondante per la funzione a regime. Eliminarlo può però modificare gli hazard durante le transizioni; vedremo questa differenza nella lezione sui ritardi.
Ogni colonna rappresenta una combinazione ABC, non il trascorrere del tempo. Controllate che le due uscite coincidano in tutte le colonne. Numero di porte e cammini possono differire, ma la funzione per ingressi 0/1 stabili è uguale.
Mostra i dati della forma d’onda
| Segnale | Forma d’onda | Valori del bus |
|---|---|---|
| ABC | 23452345 | 000 → 001 → 010 → 011 → 100 → 101 → 110 → 111 |
| AB+AC | 0....1.. | |
| A(B+C) | 0....1.. |
Criterio per verificare l'equivalenza
Chiamate y_ref e y_opt le versioni prima e dopo la trasformazione e, per spazi d'ingresso piccoli, confrontate tutte le combinazioni. Uno o due casi verificati con successo non bastano a concludere l'equivalenza.
assign y_ref = (a & b) | (a & c);
assign y_opt = a & (b | c);
assign mismatch = y_ref ^ y_opt;In tutte le otto combinazioni 0/1, mismatch deve essere sempre 0. Una simulazione a quattro stati con X/Z o l'equivalenza di circuiti sequenziali richiede condizioni aggiuntive. Dichiarare l'ambito effettivamente dimostrato è fondamentale nella revisione del progetto.
Prova tu
Semplificate e indicate quante combinazioni d’ingresso verificare.
Leggi la spiegazione
I primi due termini danno , quindi . Due variabili richiedono quattro combinazioni. L’equivalenza delle formule non implica uguali ritardi di propagazione.