Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Memo sulla Memoria #9

Open
Andrea01Fraschini opened this issue Jun 15, 2023 · 0 comments
Open

Memo sulla Memoria #9

Andrea01Fraschini opened this issue Jun 15, 2023 · 0 comments
Assignees
Labels
documentation Improvements or additions to documentation

Comments

@Andrea01Fraschini
Copy link
Collaborator

Andrea01Fraschini commented Jun 15, 2023

Memoria da 1 KB indirizzabile per byte e con word da 32 bit. Questo significa che sebbene gli indirizzi siano anch'essi da 32 bit, l'indirizzo massimo in grado di contenere una word è il 1020 (0x000003FC).

Il modulo vhdl MEMORY deve essere sempre affiancato da un file di testo chiamato "initial_mem_state.txt" di cui è presente un esempio nella cartella "moduli". La presenza di tale file è necessaria affinché la memoria venga inizializzata sul fronte di clock quando il segnale di RST è alto, nel caso non fosse presente, la simulazione si interromperebbe prematuramente.

Per la corretta lettura, il file deve essere composto da esattamente 256 righe, ciascuna contenente 32 cifre binarie consecutive. Esse rappresentano le word contenute nella memoria dall'indirizzo più basso fino a quello più alto. Su ogni riga, oltre alle prime 32 cifre binarie, possono essere presenti ulteriori caratteri che non verranno considerati in fase di caricamento del file e che quindi posso essere utilizzati per scrivere commenti.

La struttura della memoria, come ci è stata descritta dal professore, si traduce nella seguente struttura del file:

Dalla riga 1 alla riga 32 vi è la sezione reserved
Dalla riga 33 alla riga 128 vi è la sezione text
Dalla riga 129 in su vi è la sezione data
Inversamente, dalla riga 256 in giù cresce lo stack

@Andrea01Fraschini Andrea01Fraschini added the documentation Improvements or additions to documentation label Jun 15, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation
Projects
None yet
Development

No branches or pull requests

3 participants