Reti Logiche - C. Bolchini ed Altri - 2004 - Apogeo

Prefazione XI Capitolo 1 Introduzione 1 Capitolo 2 Algebra di Boole e di commutazione 7 2.1 Algebra di Boole 7 2.1.1 Proprietà dell'algebra 9 2.2 Algebra di commutazione 11 2.3 Funzioni ed espressioni 13 2.3.1 Espressioni booleane 14 2.3.2 Funzioni booleane 15 2.3.3 Tabella della verità 16 2.3.4 Funzioni non completamente specificate 17 2.4 Forme canoniche 18 2.4.1 Teorema di espansione 19 2.4.2 Prima forma canonica 20 2.4.3 Seconda forma canonica 22 2.5 Espressioni e proprietà dell'algebra 23 2.6 Porte logiche 24 2.6.1 Operatori funzionalmente completi: NAND e NOR 27 2.6.2 Altre porte logiche 28 2.7 Circuiti logici 29 Esercizi 33 Capitolo 3 La codifica dell'informazione 39 3.1 Codici e codifiche 39 3.2 Codici numerici 42 3.3 Rappresentazione dei numeri naturali 44 3.3.1 Codifica naturale 44 3.4 Rappresentazione dei numeri relativi 49 3.4.1 Codifica in modulo e segno 49 3.4.2 Codifica in complemento alla base 50 3.4.3 Codifica in complemento alla base diminuita 52 3.5 Rappresentazione dei numeri razionali 54 3.5.1 Codifica in virgola fissa 54 3.5.2 Codifica in virgola mobile 58 3.5.3 Standard IEEE 754 59 3.6 Altri codici 61 3.6.1 Binary-coded decimal (BCD) 61 3.6.2 Gray 62 3.6.3 One-hot 63 3.7 Aritmetica binaria 63 3.7.1 Somma e sottrazione in codifica binaria naturale 64 3.7.2 Somma algebrica in codifica modulo e segno 66 3.7.3 Somma algebrica in complemento a 1 67 3.7.4 Somma algebrica in complemento a 2 70 3.7.5 Moltiplicazione in codifica binaria naturale 71 3.7.6 Moltiplicazione in codifica modulo e segno 73 3.7.7 Moltiplicazione in complemento a 2 73 Esercizi 78 Capitolo 4 Reti combinatorie 83 4.1 Introduzione 83 4.2 Formalizzazione della specifica 85 4.3 Sintesi 86 4.3.1 Prima forma canonica 87 4.3.2 Seconda forma canonica 88 4.3.3 Funzioni non completamente specificate 89 4.4 Minimizzazione esatta 91 4.4.1 Metodo delle mappe di Karnaugh 92 4.4.2 Metodo di Quine-McCluskey 104 4.4.3 Metodi di supporto alla copertura 124 4.5 Minimizzazione euristica di reti a due livelli 130 4.5.1 Approccio iterativo 130 4.5.2 Descrizione del problema e soluzione iniziale 132 4.5.3 Trasformazioni 133 4.6 Minimizzazione euristica di reti su più livelli 138 4.6.1 Modello di riferimento 138 4.6.2 Trasformazioni 140 4.6.3 Applicazione delle trasformazioni 145 Esercizi 148 Capitolo 5 Circuiti combinatori speciali 167 5.1 Reti combinatorie di base 167 5.1.1 Multiplexer 167 5.1.2 Demultip1exer 169 5.1.3 Decoder 170 5.1.4 Priority encoder 172 5.2 Sommatori e sottrattori 173 5.2.1 Sommatori ripple-carry 173 5.2.2 Sommatori carry look-ahead 174 5.2.3 Sommatori carry-save 176 5.2.4 Sommatori misti 179 5.2.5 Sommatori / sottrattori 180 5.3 Complementatori 182 5.3.1 Complemento a uno 182 5.3.2 Complemento a due 183 5.4 Comparatori 185 5.4.1 Comparatori di uguaglianza 185 5.4.2 Comparatori generici 185 5.5 Moltiplicatori 187 5.6 Unità aritmetico logiche 191 5.6.1 Multiplexed ALU 191 5.6.2 Bit-sliced ALU 193 Capitolo 6 Macchine a stati finiti 195 6.1 Introduzione 195 6.2 Macchina di Moore e macchina di Mealy 198 6.3 Modelli per le macchine a stati finiti 201 6.3.1 Grafo di transizione dello stato 202 6.3.2 Tabella di transizione dello stato o tabella degli stati 203 6.3.3 Modello di Huffman 204 6.3.4 Rete logica sincrona 205 6.3.5 Differenze tra modelli comportamentali e modelli comportamentali/strutturali 206 6.4 Procedura di trasformazione dei modelli 207 6.4.1 Procedura per il passaggio da una macchina di Moore a una di Mealy 207 6.4.2 Procedura per il passaggio da una macchina di Mealy a una di Moore 207 Esercizi 211 Capitolo 7 Bistabili 217 7.1 Introduzione 217 7.2 Classificazione basata sulla modalità di sincronizzazione 218 7.2.1 Latch SR asincrono 218 7.2.2 Latch SR sincrono 222 7.2.3 Flip-flop master-slave 224 7.2.4 Flip-flop data lock-out 226 7.2.5 Flip-flop edge-triggered 227 7.3 Classificazione basata sul tipo 230 7.3.1 Tipo SR 230 7.3.2 Tipo D 231 7.3.3 Tipo JK 231 7.3.4 Tipo T 232 7.4 Temporizzazione e metastabilità 233 7.5 Ingressi asincroni di preset e clear 234 7.6 Analisi di funzionamento temporale 234 Esercizi 235 Capitolo 8 Sintesi delle macchine a stati finiti 243 8.1 I passi della fase di progetto 243 8.2 Dalla specifica al diagramma dello stato 245 8.2.1 Stato di partenza 245 8.3 Modelli di Mea1y e di Moore 247 8.4 Sequenza di interesse e completamento delle transizioni 248 8.5 Dal diagramma di stato alla tabella degli stati 255 8.6 Codifica dello stato 255 8.6.1 Codifica a distanza minima 258 8.6.2 Codifica a priorità 260 8.6.3 Codifica basata sull'uscita 264 8.7 Dalla tabella delle transizioni di stato codificato alla tabella delle eccitazioni 265 8.8 Riepilogo 267 Esercizi 268 Capitolo 9 Ottimizzazione delle macchine a stati finiti 281 9.1 Introduzione 281 9.2 Macchine completamente specificate 283 9.3 Macchine non completamente specificate 292 Esercizi 308 Capitolo 10 Ottimizzazione strutturale 319 10.1 Introduzione 320 10.2 Retiming 322 10.2.1 Modello per il retiming 323 10.2.2 Aspetti generali 324 10.2.3 Minimizzazione del periodo di clock 326 10.2.4 Minimizzazione dell'area 333 10.2.5 Pipelining ottimo 335 10.3 Peripheral retiming 338 Esercizi 340 Capitolo 11 Circuiti sequenziali speciali 349 11.1 Registri 349 11.1.1 Registro parallelo/parallelo 350 11.1.2 Registro serie/parallelo 351 11.1.3 Registro serie/serie 352 11.1.4 Registro serie/serie circolare 352 11.1.5 Registro parallelo/serie 353 11.2 Contatori 354 11.2.1 Progettazione comportamentale dei contatori 356 11.2.2 Progettazione strutturale dei contatori 359 11.2.3 Contatori veloci 361 Bibliografia 365