Reti logiche Esempi reti sequenziali Capitolo 7: esempi di progetto logico sequenziale Reti Logiche Contemporary Logic Design Randy H. Katz University of California, Berkeley May 1993 Trasparenze tradotte da: Luciano Lavagno Universita’ di Udine Settembre 1998 © R.H. Katz 7-1 Motivazione Reti logiche Esempi reti sequenziali • Flipflop: blocchi logici sequenziali primitivi disponibili come componenti integrati. • Blocchi funzionali sequenziali piu’ complessi: Registri di memoria, registri a scorrimento, contatori Disponibili come componenti nel catalogo TTL • Come rappresentare e progettare semplici circuiti sequenziali: i contatori • Problemi ed errori piu’ comuni lavorando con i contatori: Stato iniziale Logica sincrona ed asincrona © R.H. Katz 7-2 Sommario del capitolo Reti logiche Esempi reti sequenziali Esaminiamo circuiti sequenziali disponibili come componenti • Registri di memorizzazione ed a scorrimento • Memorie ad accesso diretto (Memorie ad accesso diretto, RAM) • Contatori Metodo di progetto per contatori • Macchina a stati finiti molto semplice ma utile • Diagramma di stato, tabella di transizione, funzioni di stato futuro • Tabelle di eccitazione per realizzazione con vari tipi di flipflop Contatori sincroni ed asincroni • Contatori a riporto e sincroni • Azzeramento e caricamento sincrono ed asincrono © R.H. Katz 7-3 Reti logiche Esempi reti sequenziali Tipi di registri e contatori Registri di memorizzazione Gruppo di elementi di memoria letti e scritti insieme Registro a 4 bit costituito da 4 FF D Clock e clear condivisi Simbolo per schemi 171 12 CLK 13 CLR 11 5 4 14 D3 D2 D1 D0 Q3 Q3 Q2 Q2 Q1 Q1 Q0 Q0 9 10 7 6 2 3 1 15 TTL 74171 4 D FF con clear (i numeri rappresentano i piedini) © R.H. Katz 7-4 Reti logiche Esempi reti sequenziali Tipi di registri e contatori Vari schemi di ingressi ed uscite Capacita’ di caricamento in parallelo Uscite tri-state ed open collector Uscite complementate e non 377 11 1 18 17 14 13 8 7 4 3 CLK EN D7 D6 D5 D4 D3 D2 D1 D0 374 Q7 Q6 Q5 Q4 Q3 Q2 Q1 Q0 19 16 15 12 9 6 5 2 74377 8 FF D con caricamento parallelo EN deve essere basso (attivo) quando il clock ha un fronte di salita per caricare un nuovo valore 11 18 17 14 13 8 7 4 3 CLK H QH G QG F QF E QE D QD C QC B QB A QA OE 1 19 16 15 12 9 6 5 2 74374 8 FF D con abilitazione in uscita OE deve essere basso (attivo) per fornire il valore dei FF sui piedini di uscita; se no, uscite tri-state © R.H. Katz 7-5 Reti logiche Esempi reti sequenziali Tipi di registri e contatori Matrici di registri (register file) Matrici bidimensionali di flipflop Indirizzo seleziona una parola specifica Il contenuto della parola viene letto o scritto 670 11 4 5 12 13 14 3 2 1 15 Abilitazioni di lettura e scrittura separate Indirizzi di lettura e scrittura separati Ingressi D, uscite Q RE RB RA WE WB WA D4 D3 D2 D1 Q4 Q3 Q2 Q1 6 7 9 10 Contiene 16 FF D, organizzati in 4 righe (parole) di 4 elementi (bit) 74670 Matrice 4x4 di registri con uscite tri-state © R.H. Katz 7-6 Reti logiche Esempi reti sequenziali Tipi di registri e contatori Registri a scorrimento (shift register) Memorizzazione + capacita’ di trasferire dati tra elementi \Reset Shift Direction Shift CLK CLK CLK CLK Shift Shift Shift \Reset Q1 Q2 Q3 Q4 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 Dati scorrono da sinistra a destra (da un elemento all’altro) su ogni transizione in salita dell’ingresso di scorrimento I dati tornano dall’ultimo elemento a destra al primo a sinistra FF master/slave: campionano ingressi con clock alto; cambiano uscite con clock basso © R.H. Katz 7-7 Reti logiche Esempi reti sequenziali Tipi di registri e contatori Ingressi ed uscite dei registri a scorrimento Ingressi e/o uscite seriali Ingressi e/o uscite paralleli Direzione di scorrimento: sinistra/destra Ingressi seriali: LSI, RSI Ingressi paralleli: D, C, B, A Uscite parallele: QD, QC, QB, QA Ingresso di azzeramento (clear) FF attivi sul fronte di salita 74194 4-bit Universal Shift Register S1,S0 determinano la funzione S1 = 1, S0 = 1: carica il dato parallelo sul fronte di salita S1 = 1, S0 = 0: scorrimento a sinistra sul fronte, LSI entra al posto di D S1 = 0, S0 = 1: scorrimento a destra sul fronte, RSI entra al posto di A S1 = 0, S0 = 0: mantiene lo stato Multiplexer all’ingresso di ogni FF! Questi registri vanno bene per conversioni serie/parallelo come le comunicazioni tra terminale e calcolatore © R.H. Katz 7-8 Reti logiche Tipi di registri e contatori Esempi reti sequenziali Uso di registri a scorrimento: conversioni serie/parallelo Ingressi paralleli Uscite parallele Trasmissione seriale © R.H. Katz 7-9 Reti logiche Tipi di registri e contatori Esempi reti sequenziali Contatori Sequenza ben definita di stati in risposta al segnale di conteggio Crescente a 3 bit: 000, 001, 010, 011, 100, 101, 110, 111, 000, ... Decrescente a 3 bit: 111, 110, 101, 100, 011, 010, 001, 000, 111, ... Contatori binari, BCD ed a codice Gray Un contatore e’ una rete logica sequenziale speciale in cui lo stato e’ l’unica uscita © R.H. Katz 7-10 Reti logiche Esempi reti sequenziali Tipi di registri e contatori Contatore Johnson + 1 0 + + \Res et J S Q CLK K Q R Q1 J S Q CLK K Q R Q2 J S Q CLK K Q R Q3 J S Q CLK K Q R Ricircolo Q4 Shift + 100 Shift Q1 1 1 1 1 0 0 0 0 Q2 0 1 1 1 1 0 0 0 Q3 0 0 1 1 1 1 0 0 Q4 0 0 0 1 1 1 1 0 8 stati possibili, cambia un bit per stato, utile per evitare alee © R.H. Katz 7-11 Tipi di registri e contatori Contatori standard TTL 7 P 10 T 163 15 2 CLK RCO 6 5 4 3 D C B A 9 LOAD 1 CLR QD QC QB QA 11 12 13 14 74163 contatore crescente a 4 bit sincrono Reti logiche Esempi reti sequenziali Ingressi di caricamento ed azzeramento (clear) sincroni FF attivi sul fronte di salita Caricamento parallelo dei dati da D, C, B, A Ingressi di abilitazione P, T: devono essere attivi entrambi per abilitare il conteggio RCO: attivo quando il contatore entra nell’ultimo stato (1111), usato per contatori in cascata "Ripple Carry Output" 74161: simile funzione, ma con caricamento ed azzeramento asincroni © R.H. Katz 7-12 Reti logiche Esempi reti sequenziali Tipi di registri e contatori Diagramma temporale dettagliato del 74163 CLR LOAD A B C D CLK P T QA QB QC QD RCO Clear 12 Load 13 14 15 Count 0 1 2 Inhibit © R.H. Katz 7-13 Reti logiche Metodo di progetto per contatori Esempi reti sequenziali Introduzione Questo metodo puo’ essere generalizzato per realizzare qualsiasi rete logica sequenziale I contatori sono semplici come esempio iniziale: nessuna decisione sullo stato futuro lo stato presente e’ l’uscita Esempio: contatore crescente a 3 bit Stato presente Stato futuro Ingressi flipflop Decidiamo di realizzarlo con flipflop T Quali ingressi vanno forniti ai flipflop T per far assumere il valore voluto? Diagramma degli stati Tabella degli Tabella stati ingressi flipflop Questo passo e’ detto “trasformazione della funzione di stato futuro” © R.H. Katz 7-14 Reti logiche Metodo di progetto per contatori Esempi reti sequenziali Introduzione Questo metodo puo’ essere generalizzato per realizzare qualsiasi rete logica sequenziale I contatori sono semplici come esempio iniziale: nessuna decisione sullo stato futuro lo stato presente e’ l’uscita Esempio: contatore crescente a 3 bit Stato presente Stato futuro Ingressi flipflop Decidiamo di realizzarlo con flipflop T Quali ingressi vanno forniti ai flipflop T per far assumere il valore voluto? Diagramma degli stati Tabella degli Tabella stati ingressi flipflop Questo passo e’ detto “trasformazione della funzione di stato futuro” © R.H. Katz 7-15 Metodo di progetto per contatori Esempio (continua) Mappe di Karnaugh per ingressi toggle: Reti logiche Esempi reti sequenziali Circuito finale: CB A 00 11 10 11 10 01 0 1 TA = CB A 00 01 0 1 TB = CB A 00 01 11 10 0 1 TC = © R.H. Katz 7-16 Reti logiche Esempi reti sequenziali Metodo di progetto per contatori Esempio (continua) Mappe di Karnaugh per ingressi toggle : + C CB A Circuito finale: 00 01 11 10 0 1 1 1 1 1 1 1 1 1 TS Q CLK Q R B TA = 1 QA T S Q CLK Q R QB QC T S Q CLK Q R \Reset C CB 00 01 11 10 0 0 0 0 0 1 1 1 1 1 A B TB = A 100 QC 00 01 11 10 0 0 0 0 0 1 0 1 1 0 A Forme d’onda: \Res et C CB Count QB QA Count B TC = A • B © R.H. Katz 7-17 Reti logiche Esempi reti sequenziali Metodo di progetto per contatori Contatori piu’ complicati Passo 1: derivare il diagramma degli stati Sequenza di conteggio: 000, 010, 011, 101, 110 Stato presente Stato futuro Passo 2: Tabella degli stati © R.H. Katz 7-18 Reti logiche Esempi reti sequenziali Metodo di progetto per contatori Contatori piu’ complicati Passo 1: derivare il diagramma degli stati Sequenza di conteggio: 000, 010, 011, 101, 110 Stato presente Stato futuro Passo 2: Tabella degli stati Notate i don’t care © R.H. Katz 7-19 Reti logiche Esempi reti sequenziali Metodo di progetto per contatori Contatori piu’ complicati Passo 3: Mappe di Karnaugh per le funzioni di stato futuro B+ C+ A+ © R.H. Katz 7-20 Reti logiche Esempi reti sequenziali Metodo di progetto per contatori Contatori piu’ complicati Passo 4: Scegliere il tipo di flipflop per la realizzazione Tabelle di eccitazione per trasformare le funzioni di stato futuro Stato presente Ingressi toggle Tabella di eccitazione flipflop T Funzioni di stato futuro trasformate © R.H. Katz 7-21 Reti logiche Esempi reti sequenziali Metodo di progetto per contatori Contatori piu’ complicati Passo 4: Scegliere il tipo di flipflop per la realizzazione Tabelle di eccitazione per trasformare le funzioni di stato futuro Stato presente Ingressi toggle Tabella di eccitazione flipflop T Funzioni di stato futuro trasformate © R.H. Katz 7-22 Reti logiche Esempi reti sequenziali Metodo di progetto per contatori Contatori piu’ complicati Mappe di Karnaugh trasformate CB A 00 01 11 CB 10 A 0 0 1 1 TC 00 01 11 10 TB CB A 00 01 11 10 0 1 TA TC = TB = TA = © R.H. Katz 7-23 Reti logiche Esempi reti sequenziali Metodo di progetto per contatori Contatori piu’ complicati Mappe di Karnaugh trasformate TB TC TA TC = A C + A C = A xor C TB = A + B + C TA = A B C + B C © R.H. Katz 7-24 Reti logiche Esempi reti sequenziali Metodo di progetto per contatori Contatori piu’ complicati Rete logica finale: 5 porte 13 letterali +connessioni con flipflop TC Count T S Q C TB CLK Q \C R B T S Q CLK Q \B R TA A T S Q CLK Q \A R \Reset Forme d’onda: 100 Count \Res et C 0 0 0 0 1 1 0 B 0 0 1 1 0 1 0 A 0 0 0 1 1 0 0 © R.H. Katz 7-25 Contatori auto-inizializzanti Stati iniziali Reti logiche Esempi reti sequenziali All’accensione del circuito, il contatore puo’ essere in qualsiasi stato Il progettista deve garantire che (ad un certo punto) entri in uno valido E’ un problema per contatori che non usano tutti i 2n stati Soluzione auto-inizializzante: Progettare un contatore che ad un certo punto entri comunque in uno stato valido Realizzazione nella figura precedente! Due diagrammi auto-inizializzanti per il contatore dell’esempio precedente © R.H. Katz 7-26 Reti logiche Contatori auto-inizializzanti Esempi reti sequenziali Funzioni di transizione con opportuna assegnazione dei don’t’care Inputs to Toggle Flip-flops State Changes TC C+ State Transition Table Present State TB TA B+ C B A 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 Next State C+ 0 1 0 1 0 1 0 1 B+ 1 1 1 0 1 1 0 0 A+ 0 1 1 1 1 0 0 1 A+ © R.H. Katz 7-27 Reti logiche Esempi reti sequenziali Realizzazione con diversi tipi di FF Latch R-S Continuiamo con l’esempio 000, 010, 011, 101, 110, 000, ... Stato presente Stato futuro Stato futuro trasformato Q+ = S + R Q Tabella di eccitazione RS Funzioni di stato futuro trasformate © R.H. Katz 7-28 Reti logiche Esempi reti sequenziali Realizzazione con diversi tipi di FF Latch RS CB A CB 00 01 11 10 A 0 0 1 1 00 RC 11 10 RC = SC CB A 01 SC = CB 00 01 11 10 A 00 01 11 10 0 0 RB = 1 1 SB = RB SB CB A RA = CB 00 01 11 10 A 0 0 1 1 RA 00 01 11 10 SA = SA © R.H. Katz 7-29 Reti logiche Esempi reti sequenziali Realizzazione con diversi tipi di FF Latch RS RC SC RC = A SC = A RB SB RB = A B + B C SB = B RA = C SA = B C RA SA © R.H. Katz 7-30 Reti logiche Esempi reti sequenziali Realizzazione con diversi tipi di FF Latch RS \A A R Q CLK Q S C RB R Q CLK Q S \B \C Count A C B B C SA \B RB R Q CLK Q S A \A B \C SA Realizzazione logica finale: 3 porte, 11 letterali + connessioni con flipflop © R.H. Katz 7-31 Reti logiche Esempi reti sequenziali Realizzazione con diversi tipi di FF Flipflop JK Stato presente Stato futuro Stato futuro trasformato Q+ = J Q + K Q Tabella di eccitazione del J-K Funzioni di stato futuro trasformate © R.H. Katz 7-32 Reti logiche Esempi reti sequenziali Realizzazione con diversi tipi di FF Flipflop JK CB A CB 00 01 11 10 A 0 0 1 1 00 01 11 10 JC = JC KC CB A KC = CB 00 01 11 10 A 0 0 1 1 00 11 10 JA = KB CB KA = CB 00 01 11 10 A 0 0 1 1 JA JB = KB = JB A 01 00 01 11 10 KA © R.H. Katz 7-33 Reti logiche Esempi reti sequenziali Realizzazione con diversi tipi di FF Flipflop JK JC KC JC = A KC = A JB = 1 JB KB KB = A + C JA = B C KA = C JA KA © R.H. Katz 7-34 Reti logiche Esempi reti sequenziali Realizzazione con diversi tipi di FF Flipflop JK + A \A J Q C CLK K Q KB \C J Q B CLK K Q \B JA C J Q A CLK K Q \A Count A C KB B \C JA Realizzazione logica finale: 2 porte, 10 letterali + connessioni con flipflop © R.H. Katz 7-35 Reti logiche Esempi reti sequenziali Realizzazione con diversi tipi di FF FF D Progetto piu’ facile: non serve trasformazione! DC = A DB = A C + B DA = B C A D Q CLK Q C \C DB D Q CLK Q B \B DA D Q CLK Q A \A Count \C \A DB \B B \C DA Realizzazione logica finale: 3 porte, 8 letterali + connessioni con flipflop © R.H. Katz 7-36 Realizzazione con diversi tipi di FF Confronto tra le varie realizzazioni Reti logiche Esempi reti sequenziali • I flipflop T vanno bene per contatori semplici ma hanno richiesto la rete piu’ complessa in questo caso! • Non c’e’ ragione per preferire RS a JK, poiche’ hanno meno funzioni I flipflop R-S in ogni caso non esistono! I flipflop J-K danno la rete migliore in questo caso Spesso sono i migliori per logica TTL a componenti discreti (se il numero di porte e’ la cosa piu’ importante) • I flipflop D hanno il metodo di progetto piu’ semplice In questo caso danno anche il numero di letterali minimo Flipflop D sono molto efficienti in VLSI (pochi transistor MOS) Sono i migliori quando e’ importante minimizzare porte/letterali © R.H. Katz 7-37 Reti logiche Esempi reti sequenziali Contatori sincroni ed asincroni Contatori a riporto (ripple counter) Sono molto piu’ semplici dei corrispondenti contatori sincroni T Q T Q A CLK Q T Q B CLK Q C CLK Q Count Il segnale di conteggio e’ riportato da sinistra a destra Transizioni di stato non precise! Puo’ causare alee nella logica combinatoria che decodifica le uscite! © R.H. Katz 7-38 Reti logiche Contatori sincroni ed asincroni Esempi reti sequenziali Contatori sincroni in cascata con riporti (carry) interconnessi L’uscita RCO del primo stadio abilita il conteggio del secondo RCO attivo subito dopo che il contatore entra nello stato 1111 dipende anche dall’abilitazione T Il secondo stadio e’ piu’ lento nella transizione da 1111 a 0000 Ha effetto sul periodo e sulla logica di decodifica © R.H. Katz 7-39 Reti logiche Contatori sincroni ed asincroni Esempi reti sequenziali L’utilita’ dell’azzeramento e caricamento sincrono Contatori con valore iniziale diverso da zero: e.g., 0110, 0111, 1000, 1001, 1010, 1011, 1100, 1101, 1111, 0110, ... 100 D C B A Cloc k Load 1 6 3 P + R Q Q QQ C D CBA C O L T K DCBA D L O C A L D R C B A + Load 0 1 0110 e’ lo stato iniziale da caricare Usare RCO per caricare di nuovo lo stato iniziale L’ingresso Load del 74163 e’ sincrono, quindi lo stato cambia solo al prossimo fronte di salita © R.H. Katz 7-40 Contatori sincroni ed asincroni L’utilita’ dell’azzeramento e caricamento sincrono Reti logiche Esempi reti sequenziali Contatori con valore finale diverso da zero: e.g., 0000, 0001, 0010, ..., 1100, 1101, 0000 CLR D C B Il segnale di azzeramento (Clear) ha effetto al primo fronte di salita di Count A 1 R Q Q Q Q D C B A L 6 CC O C O 3 L A L PT K DCBA D R 1 0 Decodificare lo stato in cui ri-inizializzare il contatore a zero Sostituire il '163 con il '161, contatore con Clear asincrono: il Clear ha effetto subito! © R.H. Katz 7-41 Reti logiche Esempi reti sequenziali Memorie ad accesso diretto RAM statica Modo efficiente per realizzare memoria con pochi transistor RAM piccola: 256 parole di 4 bit RAM grande: 64 milioni di parole di 1 bit (nel 1998; cresce di un fattore 2 ogni 1.5 anni) Analizzeremo una RAM con organizzazione 1024 x 4 Data Data j j Word Enable i Parole = righe Cella di RAM statica Cella di RAM statica Cella di RAM statica Colonne = bit (codificate “dual rail”) © R.H. Katz 7-42 Memorie ad accesso diretto Reti logiche Esempi reti sequenziali Organizzazione RAM statica Abilitazione (Chip Select; attivo basso) Scrittura (Write Enable; attivo basso) 10 fili per l’indirizzo 4 fili bidirezionali per i dati 10 24 x 4 SRAM CS WE A9 A8 A7 IO3 A6 IO2 A5 IO1 A4 IO0 A3 A2 A1 A0 © R.H. Katz 7-43 Reti logiche Esempi reti sequenziali Memorie ad accesso diretto Organizzazione RAM statica Strutture lunghe e strette non sono le migliori sul silicio A9 A8 Alcuni bit di indirizzo scelgono la riga Storage Storage Matrix Array Matrice quadrata 64 x 64 A7 A6 64 x 16 A5 A4 A3 Altri bit di indirizzo scelgono la colonna entro la riga Address Buffers A2 64 x 16 64 x 16 64 x 16 Row Decoders Address Buffers Amplificatori e mux/demux Sense Amplifiers A1 A0 Column Decoders CS Data Buffers WE I/O0 I/O1 I/O2 I/O3 © R.H. Katz 7-44 Reti logiche Esempi reti sequenziali Memorie ad accesso diretto Tempistiche delle RAM WE CS Tempistica (semplificata) in lettura Indirizzo Indirizzo valido Tempo di accesso Dati uscita Dati uscita WE CS Tempistica (semplificata) in scrittura Tempo di ciclo Indirizzo Dati ingresso Indirizzo valido Dati ingresso © R.H. Katz 7-45 Memorie ad accesso diretto Reti logiche Esempi reti sequenziali RAM dinamiche 1 transistor ed 1 condensatore come elemento di memoria Word Line Lettura: attivare Word Line, leggere Bit Line Scrittura: pilotare Bit Line, attivare Word Line Lettura distruttiva Bit Line Servono cicli di “rinfresco”: la memorizzazione sparisce in alcuni msec Circuiti interni per leggere una parola e riscriverla © R.H. Katz 7-46 Reti logiche Esempi reti sequenziali Memorie ad accesso diretto Organizzazione DRAM Righe lunghe semplificano il rinfresco Due nuovi segnali: RAS, CAS Matrice di memoria Decod. di riga 64 x 64 Row Address Strobe (memorizza indirizzo riga) Column Address Strobe (memorizza indirizzo col.) Row Address Sostituiscono Chip Select A11 . . . A0 RAS CAS WE Indirizzo di colonna e segnali di controllo Latch di colonna Multiplexer/demultiplexer Logica di controllo DOUT DIN © R.H. Katz 7-47 Reti logiche Esempi reti sequenziali Memorie ad accesso diretto Indirizzamento con RAS, CAS Per leggere 1 bit, bisogna leggere l’intera riga da 64 bit! Separiamo l’indirizzamento in due cicli: riga e colonna Riduce il numero di pin, accelera l’accesso a bit uno dopo l’altro! Indirizzo Indir. riga Indir. colonna RAS Ciclo di lettura CAS Valido Dout Lettura riga Memorizzazione indirizzo riga Leggere bit entro riga Memorizzazione indirizzo colonna Uscite tornano in tri-state © R.H. Katz 7-48 Reti logiche Esempi reti sequenziali Memorie ad accesso diretto Tempistica ciclo scrittura Indirizzo Indir. riga Indir. colonna RAS (1) Memorizzazione indirizzo riga Lettura riga CAS WE (2) WE attivo (basso) Din Valido (3) CAS attivo (basso): sostituzione bit scritto (4) RAS alto: riscrivere la riga modificata (5) CAS alto: completa il ciclo di memoria © R.H. Katz 7-49 Memorie ad accesso diretto Rinfresco della RAM dinamica Reti logiche Esempi reti sequenziali Frequenza di rinfresco: RAM da 4096 parole -- rinfresco di ogni parola ogni 4 ms Supponiamo un tempo di ciclo di 120ns Un rinfresco ogni 976 ns (1 accesso alla DRAM su 8)! Ma la RAM in realta’ e’ organizzata in 64 righe (parole) Cio’ implica un rinfresco ogni 62.5 µs (1 accesso alla DRAM su 500) DRAM piu’ grandi hanno 256 righe, e quindi rinfrescano ogni 16 µs Rinfresco usando solo RAS (ciclo RAS, non ciclo CAS) Un controllore esterno ricorda l’ultima riga rinfrescata Alcune DRAM includono il puntatore alla riga di rinfresco Rinfresco “CAS prima di RAS”: se CAS attivo per primo, rinfresco © R.H. Katz 7-50 Memorie ad accesso diretto Vari tipi di DRAM DRAM “a pagine” (page mode) Reti logiche Esempi reti sequenziali Permette di leggere/scrivere bit in una riga senza attivare RAS RAS, CAS, CAS, . . ., CAS, RAS, CAS, ... Ogni ciclo di CAS specifica la colona su cui operare RAM a colonne statiche: come “page mode”, ma il cambio di indirizzo indica l’indirizzo di colonna (invece del ciclo di CAS) in scrittura, disattivare il circuito o il segnale di CAS mentre le colonne cambiano DRAM a gruppi di 4 bit (“nibble”): come “page mode”, ma un ciclo di CAS indica il prossimo gruppo di colonne non c’e’ bisogno di specificare la colonna dopo il primo CAS funzionz 4 bit alla volta (di qui il termine “nibble”, 1/2 byte) RAS, CAS, CAS, CAS, CAS, RAS, CAS, CAS, CAS, CAS, . . . © R.H. Katz 7-51 Riassunto del capitolo Reti logiche Esempi reti sequenziali • Vari tipi di circuiti integrati sequenziali Registri di memorizzazione ed a scorrimento, contatori, RAM • Contatori: semplici macchine a stati finiti • Metodo di progetto per contatori 1. derivare il diagramma degli stati 2. derivare la tabella di transizione 3. determinare le funzioni di stato futuro 4. trasformare le funzioni di stato futuro per il tipo di flipflop scelto usando le tabelle di eccitazione 5. minimizzare la logica • Diversi tipi di FF nei contatori J-K e’ il migliore per ridurre le porte in logica a componenti discreti D e’ il piu’ facile da progettare, ed il migliore per ridurre l’area in VLSI • Contatori sincroni ed asincroni Evitare contatori a riporto! Le transizioni di stato non sono precise! Attenzione ai problemi mettendo contatori sincroni in cascata Contatori con partenza e fine diverse da zero: facili da realizzare con preset e clear sincroni Non usare mai contatori con clear asincrono per queste applicazioni! © R.H. Katz 7-52