Datapath con EPC e Cause register

Datapath con EPC e Cause register

by Davide Doneddu -
Number of replies: 3

Buonasera, 

Durante la realizzazione del datapath con le due eccezioni, ho avuto difficoltà nel capire quale segnale collegare ai registri A B ALUout...

Ho provato collegando lo stesso segnale di clock collegato alla OutputControlUnit ma ha un periodo troppo breve e resetta subito i registri in questione. 

Come dovrei collegarli?

In reply to Davide Doneddu

Ri: Datapath con EPC e Cause register

by Federica Di Lauro -
Buonasera,
per quanto riguarda l'esercizio per la gestione dell'overflow sono necessarie solo modifiche relative alla FSM, non all'altro hardware presente nel datapath. Per quando riguarda la lw non allineata è necessario aggiungere dell'hardware per "capire" quando una word non è allineata e un registro extra per poter salvare l'indirizzo in questione.
Ho reso disponibili nella sezione laboratorio le soluzioni video dei due esercizi, se qualcosa non è chiaro dopo aver visto i video rispondi pure a questo thread.
In reply to Federica Di Lauro

Ri: Datapath con EPC e Cause register

by Davide Doneddu -
Chiedo scusa, mi sono spiegato male. Ho ricreato il datapath(aggiungendo overflow e istruzione non riconosciuta) da zero. Quello che, guardando il file .circ(logisim) datoci per fare gli esercizi, non sono riuscito a capire quale sarebbe il collegamento all'input del clock e all'input we dei registri A B ALUout e Memory data register.
Più che per un effettivo esercizio si può dire che sia un progetto personale.
Mi scuso ancora per il fraintendimento,buona serata.
In reply to Davide Doneddu

Ri: Datapath con EPC e Cause register

by Federica Di Lauro -
Ah ok, non avevo capito che stessi rifacendo il datapath da zero.
Per il segnale di clock c'è un unico "generatore di clock" a cui ho collegato un tunnel per usare lo stesso clock per tutti gli elementi del datapath, se non ricordo male usare più elementi "generatore di clock" dava problemi (nel mondo vero possono esserci più clock, che vanno a frequenze diverse, ma direi che è un argomento che va decisamente oltre a quello che si richiede al corso).
Per quando riguada i segnali di write enable sono fissi a 1 in quanto i registri vengono sempre sovrascritti ad ogni ciclo di clock.