38 / 63 · Concetto
Equazioni di stato del registro a scorrimento
Esprimere lo scorrimento come transizione vettoriale e collegare profondità e latenza.
Le lezioni sono gratuite. Iscriviti per salvare i progressi.
Leggere più flip-flop insieme
Un registroRegistro Memorizza uno stato di più bit. I registri sincroni del corso acquisiscono gli ingressi specificati al fronte di clock. Approfondisci a scorrimento di N bit con nuovo ingresso d al bit 0 ha questo stato successivo:
Le parentesi graffe indicano la concatenazioneConcatenazione Accoda sequenze di bit. La larghezza risultante è la somma delle larghezze, non un’addizione numerica. Approfondisci RTL. Ogni bit legge lo stesso stato precedente: d non attraversa tutto il registro in un fronte. enable=0 mantiene l'intero vettore; reset imposta quello iniziale specificato.
Ogni colonna registra un fronte di salitaFronte di salita Passaggio del clock da 0 a 1, distinto dall’intero intervallo di livello CLK=1. Approfondisci. Gli ingressi sono quelli immediatamente precedenti; gli stati indicati con «after» sono quelli subito dopo l’aggiornamento. Le colonne indicano l’ordine dei campioni, non il ritardo fisico di propagazioneRitardo di propagazione Tempo dalla variazione d’ingresso all’assestamento corretto dell’uscita. Equivalenza logica e proprietà temporali sono distinte. Approfondisci. Da q=000 si inserisce din=1 una volta, poi 0 tre volte. Il bit acceso passa q0→q1→q2 e scompare.
Mostra i dati della forma d’onda
| Segnale | Forma d’onda | Valori del bus |
|---|---|---|
| din | 10.. | |
| q2 after | 0.10 | |
| q1 after | 010. | |
| q0 after | 10.. | |
| q after | 2345 | 001 → 010 → 100 → 000 |
Avanzate una volta con din=1 e tre con din=0: 001→010→100→000. Cambiare l'ingresso non modifica subito q, ma solo il valore atteso al prossimo fronte.
Il reset sincrono ha priorità su enable. Con enable=0, il valore memorizzato viene mantenuto. q=000; q_next = (2q + din) mod 8
Verificare i collegamenti con una formula numerica
Interpretando il vettore come unsignedUnsigned Interpretazione dei bit come intero non negativo. Il campo a n bit è 0–2^n−1 e può differire dalla lettura signed degli stessi bit. Approfondisci, la stessa transizione è:
Con N=3, Q=5(101), d=1, si ha e : il prossimo valore è 011. Questa forma numerica fornisce un riferimento diverso dalla concatenazione, utile per verificare l'implementazione.
Che cosa viene conservato?
I bit vecchi salgono verso l'indice massimo e i nuovi entrano al minimo. Dopo sufficienti ingressi validi, il registro contiene quello attuale e gli ultimi N−1. La stessa struttura serve per rilevare sequenze, creare ritardi semplici e convertire seriale in parallelo.
Aumentare la memoria non aumenta i bit trattati per ciclo: qui si accetta un bit per fronte valido. Ingresso parallelo, scorrimento multiplo e stop ready/validHandshake Contratto che conferma il trasferimento quando valid del mittente e ready del destinatario valgono 1 allo stesso fronte. Include il mantenimento dei dati in attesa. Approfondisci richiedono ciascuno datapath e controlli specifici.
Prova tu
Per N=4, Q=1101, d=0, calcolate il prossimo Q con concatenazione e formula numerica.
Leggi la spiegazione
Concatenazione: {101,0}=1010. Numericamente: . Il precedente bit più significativo 1 esce dal campo memorizzato.