Esercizio 1segmento 2 di un display a sette segmenti con don't care (tema d'esame giugno 2022)
In questa pagina 5
Testo (tema d'esame giugno 2022, primo appello, esercizio 1). Minimizzare l'equazione logica di controllo del segmento 2 del display a sette segmenti (i segmenti sono numerati: 0 in alto, 1 in alto a destra, 2 in basso a destra, 3 in basso, 4 in basso a sinistra, 5 in alto a sinistra, 6 al centro) utilizzando le mappe di Karnaugh. Il circuito ha come ingresso le variabili che rappresentano i bit del numero da rappresentare da a , dal meno significativo () al più significativo (), e come uscita che deve valere quando il segmento va illuminato e in caso contrario. Riportare la mappa di Karnaugh con i raggruppamenti utilizzati e l'equazione finale ottenuta, sfruttando opportunamente le condizioni di don't care.
Teoria usata: Mappe di Karnaugh - implicanti e copertura minimaLa mappa di Karnaugh è la tabella di verità disposta in una griglia con righe e colonne in codice Gray, così che celle adiacenti (anche tra bordi opposti) differiscano in una sola variabile. Si raggruppano gli 1 in rettangoli di $2^k$ celle: ogni gruppo elimina $k$ variabili e dà un prodotto. Implicante primo = gruppo massimo; essenziale = unico a coprire un mintermine; la copertura minima contiene tutti gli essenziali più il minimo di altri primi (può non essere unica). Efficace fino a 4 variabili.Mappe di Karnaugh - implicanti e copertura minima →, Mappe di Karnaugh - POS, condizioni di don't care e paritàPer la POS minima si raggruppano gli 0 della mappa, si ottiene la SOP minima di $\overline F$ e si scrive $F$ come prodotto di somme (variabile diretta se vale 0 nel gruppo, negata se vale 1). Le condizioni di don't care (X) sono combinazioni di ingresso che non si presentano o la cui uscita è indifferente: si usano come 1 o come 0 a seconda di quel che allarga i gruppi (mai raggruppamenti fatti solo di X). Le funzioni XOR a più variabili (disparità) e XNOR (parità) hanno mappa a scacchiera: non si semplificano con i gruppi.Mappe di Karnaugh - POS, condizioni di don't care e parità →, Decoder, encoder e priority encoderUn decoder $n$-to-$m$ ($m\le2^n$) converte un ingresso binario a $n$ bit in un'uscita 1-hot (un solo 1, nella posizione indicata): le sue uscite sono i mintermini degli ingressi, realizzati con $m$ AND; per decoder grandi si usa l'approccio gerarchico (costo in ingressi: 3-to-8 = 27, 6-to-64 = 182) e un enable. Ogni funzione = decoder + OR dei suoi mintermini. L'encoder fa l'operazione inversa (1-hot $\to$ binario) ma sbaglia con più ingressi a 1 o tutti a 0: il priority encoder risolve con una priorità e un'uscita V (valid).Decoder, encoder e priority encoder → (display a sette segmenti).
Passo 1: tabella di verità
Il segmento 2 è quello in basso a destra. Nelle cifre decimali da a è acceso in tutte tranne che nel (il ha il segmento in basso a sinistra, non quello in basso a destra). Le combinazioni – (numeri da a ) non rappresentano cifre: non si presenteranno, quindi sono don't care (X).
| cifra | ||
|---|---|---|
| 0000 | 0 | 1 |
| 0001 | 1 | 1 |
| 0010 | 2 | 0 |
| 0011 | 3 | 1 |
| 0100 | 4 | 1 |
| 0101 | 5 | 1 |
| 0110 | 6 | 1 |
| 0111 | 7 | 1 |
| 1000 | 8 | 1 |
| 1001 | 9 | 1 |
| 1010–1111 | 10–15 | X |
L'indice del mintermine è il numero in binario: con don't care .
Passo 2: mappa di Karnaugh
Righe , colonne (codice Gray):
| 00 | 01 | 11 | 10 | |
|---|---|---|---|---|
| 00 | 1 | 1 | 1 | 0 |
| 01 | 1 | 1 | 1 | 1 |
| 11 | X | X | X | X |
| 10 | 1 | 1 | X | X |
L'unico è nella cella (cifra 2, riga , colonna ).
Passo 3: raggruppamenti
Si usano i don't care per fare gruppi grandi. Tre gruppi da 8 celle:
- : le colonne e (celle ): le variabili costanti sono solo ;
- : le colonne e (celle ): ;
- : le righe e (celle ): .
Un quarto implicante primo, (righe e ), esiste ma non serve: le sue celle con ( e ) sono già coperte da . I tre gruppi scelti sono essenziali: la cella è coperta solo da , la cella solo da , la cella solo da .
Passo 4: controllo e circuito
Controllo con la tabella: solo quando , , , cioè : nelle cifre – è la sola combinazione (il ); per (, don't care) il risultato è indifferente. Quindi anche . Verificato con un programma sulle 10 cifre valide ( solo per la cifra 2). La forma POS minima dà lo stesso: un solo termine somma, .
Circuito: un inverter su e una porta OR a 3 ingressi (, , ): costo ingressi di porta; la variante NAND a 3 ingressi su , , costerebbe di più (due inverter).
Errori comuni
- Non usare i don't care: senza di essi la forma minima è (3 prodotti, 6 letterali) invece di (3 letterali).
- Dimenticare che il segmento 2 è spento solo nel (non anche nell' o nel ).
- Fare gruppi di 8 solo con le X: ogni gruppo deve contenere almeno un non coperto da altri.
Versione ripasso
- Testo. Segmento 2 (basso a destra), ingressi (LSB) … (MSB), cifre –, – don't care; mappa di Karnaugh ed equazione minima.
- Tabella: per ; solo per la cifra ; X per – (Mappe di Karnaugh - POS, condizioni di don't care e paritàPer la POS minima si raggruppano gli 0 della mappa, si ottiene la SOP minima di $\overline F$ e si scrive $F$ come prodotto di somme (variabile diretta se vale 0 nel gruppo, negata se vale 1). Le condizioni di don't care (X) sono combinazioni di ingresso che non si presentano o la cui uscita è indifferente: si usano come 1 o come 0 a seconda di quel che allarga i gruppi (mai raggruppamenti fatti solo di X). Le funzioni XOR a più variabili (disparità) e XNOR (parità) hanno mappa a scacchiera: non si semplificano con i gruppi.Mappe di Karnaugh - POS, condizioni di don't care e parità →).
- Mappa (righe , colonne ): un solo in ; gruppi da 8: (colonne 01 e 11), (colonne 00 e 01), (righe 01 e 11), tutti essenziali.
- Risultato: (equivale a ; POS: ). Circuito: 1 inverter + OR3.
- Errori: don't care non usati; segmento sbagliato; gruppi senza 1 nuovi.