[Architettura dei calcolatori, Calcolatori Elettronici] Problema con gestione di Preset e Clear
Salve a tutti,
ho problema a capire la gestione di preset e clear di un FF T. Ad esempio, in un esercizio del genere:
Una rete sequenziale ha due ingressi X1, X0 (sincroni con un segnale di clock CLK) e due uscite
Y1, Y0. I bit di ingresso (X1X0) corrispondono alle cifre di un numero binario N (con X1 cifra più
significativa). Il funzionamento della rete è il seguente, se la NAND bit a bit tra il valore corrente di
N e quello precedente è pari allora l’uscita Y1 verrà posta a 1, se lo XOR bit a bit tra il valore
corrente di N e quello precedente è dispari l’uscita Y0 verrà posta a 1.
Il sistema è anche caratterizzato da un ingresso asincrono RESET (attivo alto) che forzerà il
sistema a ritornare nello stato di partenza che si assume sia corrispondente alla ricezione di un
valore di N pari a 1 (in decimale).
Si progetti il sistema logico sequenziale utilizzando una struttura a macchina di Mealy
implementando i registri di stato utilizzando esclusivamente flip-flop di tipo T positive edgetriggered
provvisti di PRESET e CLEAR asincroni e attivi alti. Si implementi, inoltre, la parte
combinatoria utilizzando una struttura minima SP.
Assumendo:
• per i flip-flop un ritardo di propagazione pari a Δt;
• che la “next state logic” e la “output logic” abbiano un ritardo di propagazione pari a 2Δt
indipendentemente dal numero di livelli logici utilizzati;
• un periodo di clock pari a 8Δt;
• il clock con il fronte di salita al tempo t=0;
• RESET alto per t≤Δt e basso per t>Δt;
• in ingresso la sequenza (11), (10), (10), (00) con il primo ingresso ricevuto al tempo t=0;
si rappresenti l’evoluzione temporale dei segnali presenti nel sistema nell’intervallo temporale
−8Δt≤t≤32Δt.
come faccio a capire quali valori assumono Preset e clear?
ho problema a capire la gestione di preset e clear di un FF T. Ad esempio, in un esercizio del genere:
Una rete sequenziale ha due ingressi X1, X0 (sincroni con un segnale di clock CLK) e due uscite
Y1, Y0. I bit di ingresso (X1X0) corrispondono alle cifre di un numero binario N (con X1 cifra più
significativa). Il funzionamento della rete è il seguente, se la NAND bit a bit tra il valore corrente di
N e quello precedente è pari allora l’uscita Y1 verrà posta a 1, se lo XOR bit a bit tra il valore
corrente di N e quello precedente è dispari l’uscita Y0 verrà posta a 1.
Il sistema è anche caratterizzato da un ingresso asincrono RESET (attivo alto) che forzerà il
sistema a ritornare nello stato di partenza che si assume sia corrispondente alla ricezione di un
valore di N pari a 1 (in decimale).
Si progetti il sistema logico sequenziale utilizzando una struttura a macchina di Mealy
implementando i registri di stato utilizzando esclusivamente flip-flop di tipo T positive edgetriggered
provvisti di PRESET e CLEAR asincroni e attivi alti. Si implementi, inoltre, la parte
combinatoria utilizzando una struttura minima SP.
Assumendo:
• per i flip-flop un ritardo di propagazione pari a Δt;
• che la “next state logic” e la “output logic” abbiano un ritardo di propagazione pari a 2Δt
indipendentemente dal numero di livelli logici utilizzati;
• un periodo di clock pari a 8Δt;
• il clock con il fronte di salita al tempo t=0;
• RESET alto per t≤Δt e basso per t>Δt;
• in ingresso la sequenza (11), (10), (10), (00) con il primo ingresso ricevuto al tempo t=0;
si rappresenti l’evoluzione temporale dei segnali presenti nel sistema nell’intervallo temporale
−8Δt≤t≤32Δt.
come faccio a capire quali valori assumono Preset e clear?
Risposte
Premetto che non metto mano su arhitetture da qualche semestre ormai, ma non capisco questa domanda
PR e CLR sono tipicamente due segnali di ingresso asincroni col clock. Quindi non devi capire che valore assumono, devi progettare il circuito in modo che l'uscita venga riportata istantaneamente ad uno stato noto quando si PR o CLR sono attivi ( e puoi progettarli attivi alti o bassi)
Tipicamente questi due ingressi sono collegati alla logica combinatoria di uscita perchè il loro effetto deve essere istantaneo (a meno di tempo di salita e propagazione).
prendi questo esempio:
[img]https://qph.fs.quoracdn.net/main-qimg-d520b9803ee7976dc7010c563aa6db89[/img]
In questo caso PR è attivo basso. Immagina che per default PR sia sempre a 1, quando commuta a 0, indipendentemente da cosa accada sugli ingressi S e R, l'uscita Q diventa 1.
Un discorso analogo puoi fare per CLR, solo che in questo caso l'uscita Q diventa istantaneamente 0 (sempre a meno del tempo di propagazione).
A te viene richiesto di farli attivi alti, ma il concetto è simile. Ti consiglio di fare questo, progetta lo schema senza tenere conto dei segnali PR e CLR, una volta terminato aggiungici questi due ingressi. Posta magari lo schema che hai ottenuto fino ad ora
come faccio a capire quali valori assumono Preset e clear?
PR e CLR sono tipicamente due segnali di ingresso asincroni col clock. Quindi non devi capire che valore assumono, devi progettare il circuito in modo che l'uscita venga riportata istantaneamente ad uno stato noto quando si PR o CLR sono attivi ( e puoi progettarli attivi alti o bassi)
Tipicamente questi due ingressi sono collegati alla logica combinatoria di uscita perchè il loro effetto deve essere istantaneo (a meno di tempo di salita e propagazione).
prendi questo esempio:
[img]https://qph.fs.quoracdn.net/main-qimg-d520b9803ee7976dc7010c563aa6db89[/img]
In questo caso PR è attivo basso. Immagina che per default PR sia sempre a 1, quando commuta a 0, indipendentemente da cosa accada sugli ingressi S e R, l'uscita Q diventa 1.
Un discorso analogo puoi fare per CLR, solo che in questo caso l'uscita Q diventa istantaneamente 0 (sempre a meno del tempo di propagazione).
A te viene richiesto di farli attivi alti, ma il concetto è simile. Ti consiglio di fare questo, progetta lo schema senza tenere conto dei segnali PR e CLR, una volta terminato aggiungici questi due ingressi. Posta magari lo schema che hai ottenuto fino ad ora