Esercizio di elettronica digitale
Buonasera a tutti, mi trovo in difficoltà con questo esercizio, di cui allego il testo:
Il circuito di figura utilizza un contatore con reset sincrono, una ROM di 16 locazioni per 10 bit, due registri da 10 bit (ciascuno costituito da 10 flip-flop di tipo D con il clock in comune) e un sommatore aritmetico da 10 bit senza riporto. In ciascuna locazione della ROM è caricato il valore $ x+n^2 $ n è l’indirizzo che va da 0 a 15 e $ x=(360)_10 $ .Determinare l’output Y all’istante $ t^* $ identificato da una freccia nel diagramma temporale.

Non capisco bene come interpretare il grafico temporale e ricavare i 4 bit meno significativi in uscita dal contatore: una volta fatto questo passaggio ho pensato di convertire quei 4 bit in un numero decimale che diventerebbe l'indice $ n $ da inserire nella formula implementata nella ROM. Il dato in uscita, riconvertito in bit, andrebbe sommato ad un numero binario ottenuto dall'azione dei 20 shift register e dunque scalato verso destra di 20 posizioni? Grazie in anticipo
Il circuito di figura utilizza un contatore con reset sincrono, una ROM di 16 locazioni per 10 bit, due registri da 10 bit (ciascuno costituito da 10 flip-flop di tipo D con il clock in comune) e un sommatore aritmetico da 10 bit senza riporto. In ciascuna locazione della ROM è caricato il valore $ x+n^2 $ n è l’indirizzo che va da 0 a 15 e $ x=(360)_10 $ .Determinare l’output Y all’istante $ t^* $ identificato da una freccia nel diagramma temporale.
Click sull'immagine per visualizzare l'originale

Non capisco bene come interpretare il grafico temporale e ricavare i 4 bit meno significativi in uscita dal contatore: una volta fatto questo passaggio ho pensato di convertire quei 4 bit in un numero decimale che diventerebbe l'indice $ n $ da inserire nella formula implementata nella ROM. Il dato in uscita, riconvertito in bit, andrebbe sommato ad un numero binario ottenuto dall'azione dei 20 shift register e dunque scalato verso destra di 20 posizioni? Grazie in anticipo
Risposte
Il grafico temporale ti serve solo per contare i fronti di salita del clock (dopo la discesa del RESET), per poterti ricavare l'uscita B della ROM all'istante $t^\ text{*}$, mentre per A basterà determinare quale fosse l'uscita della ROM due fronti di clock prima. Per Y ti basterà ovviamente sommare A e B direttamente in binario o meglio ancora in decimale, per poi convertirlo, eliminando l'eventuale riporto.
Non vedo shift-register a 20 posizioni, ma solo a 2: quei due gruppi di 10 FF sono in parallelo.
Non vedo shift-register a 20 posizioni, ma solo a 2: quei due gruppi di 10 FF sono in parallelo.
Ti ringrazio per la risposta, un'ultima cosa, come posso calcolare quei 4 bit in uscita dal contatore?
Scusa ma non capisco la tua domanda, se nel testo non viene altrimenti specificato, quel contatore è da ritenersi un contatore binario modulo 16 (UP) e quindi i quattro bit di uscita andranno semplicemente a contare i fronti di salita del clock.
BTW Ti ricordo che sul Forum è consuetudine postare la soluzione del problema; grazie.
BTW Ti ricordo che sul Forum è consuetudine postare la soluzione del problema; grazie.