20 / 63 · Concetto
Flip-flop D: dal livello al fronte
Confrontare l’aggiornamento di latch e flip-flop collegandolo a registri, setup e hold.
Le lezioni sono gratuite. Iscriviti per salvare i progressi.
Clock alto e fronte di salita sono diversi
Un latchLatch Elemento che segue l’ingresso quando il controllo è attivo e mantiene il valore quando inattivo. Differisce dal flip-flop che acquisisce solo ai fronti. Approfondisci attivo alto segue D per tutto l'intervallo CLK=1. Un flip-flopFlip-flop Acquisisce al fronte di clock specificato e mantiene fino al successivo. Gli ingressi devono rispettare setup e hold. D acquisisce D solo al passaggio da CLK=0 a 1, il fronte di salitaFronte di salita Passaggio del clock da 0 a 1, distinto dall’intero intervallo di livello CLK=1., e lo conserva fino al successivo. La sola condizione clk=1 non rende equivalenti i due comportamenti.
Eseguite questo confronto:
- Con CLK=0 portate D a 1. Entrambi i Q restano 0.
- Portate CLK a 1. Entrambi i Q diventano 1.
- Lasciate CLK=1 e portate D a 0. Solo Q del latch diventa 0.
- Abbassate CLK a 0 e rialzatelo a 1. Anche il flip-flop acquisisce 0.
Si assume che entrambi i valori q partano da 0. Il latch D segue D con CLK=1 e mantiene il valore con CLK=0. Il flip-flop D acquisisce D solo alla transizione del clock 0→1.
Un ciclo di un circuito sequenziale
Quando Q attraversa la logica combinatoria e genera il prossimo D, si realizza una transizione di stato. Indicando con l'ingresso prima del fronte e con lo stato dopo, il modello ideale è:
Le uscite reali cambiano dopo il ritardo clock-to-Q, non istantaneamente al fronte. Più flip-flop acquisiscono i rispettivi ingressi allo stesso fronte e calcolano quindi lo stato successivo a partire dagli stati precedenti. È la base di contatori e registriRegistro Memorizza uno stato di più bit. I registri sincroni del corso acquisiscono gli ingressi specificati al fronte di clock. a scorrimento.
- Q attuale: Stato memorizzato nel ciclo attuale
- Circuito combinatorio: Calcolare D da Q e dagli ingressi esterni
- Prossimo fronte di salita: Memorizzare D se sono rispettati i vincoli temporali
- Nuovo Q: Presentare lo stato successivo dopo il ritardo clock-to-Q
Setup e hold sono presupposti del campionamento
D deve essere stabile durante il setupSetup Tempo minimo prima del fronte di acquisizione in cui i dati devono essere stabili. Una violazione rende non garantito il valore memorizzato. Approfondisci prima del fronte e l'holdTempo di hold Tempo minimo dopo il fronte di acquisizione in cui i dati devono restare stabili. Va distinto dal generico mantenimento di un valore. Approfondisci dopo. Cambiando D vicino al fronte non è garantito semplicemente il vecchio o il nuovo valore: può insorgere metastabilità. Il laboratorio non simula questo fenomeno analogico.
Un registro raggruppa più flip-flop. Una larghezza di otto bit non garantisce da sola che gli otto ingressi costituiscano un dato coerente. Servono condizioni temporali e regole comuni di trasferimento.
Stato iniziale e reset
Inizializzare Q=0 in simulazione non garantisce che l'hardware si accenda a 0. La prossima lezione aggiunge reset ed enable per definire inizializzazione e mantenimento. Il reset sincrono agisce al fronte; quello asincrono indipendentemente dal fronte, ma anche il suo rilascio richiede attenzione temporale.
Prova tu
Con CLK=1, D varia 0→1→0 e si stabilizza a 1 prima del successivo fronte di salita. Quando cambiano i Q? Il flip-flop si aggiorna due volte al fronte?
Leggi la spiegazione
Il latch segue D mentre CLK=1. Il flip-flop ignora quelle variazioni e acquisisce una sola volta D=1 valido al successivo fronte di salita. Nel circuito reale vanno inclusi setup, hold e clock-to-Q.