Update readme
This commit is contained in:
parent
41fce59ed8
commit
f66a81403e
2 changed files with 32 additions and 5 deletions
35
README.md
35
README.md
|
@ -1,9 +1,26 @@
|
||||||
# Projet Système Info
|
|
||||||
### Yohan SIMARD - Arnaud VERGNET
|
|
||||||
4IR A1 2020-2021
|
|
||||||
|
|
||||||
Ce dépôt inclut notre compilateur, un cross assembleur et le code VHDL de notre processeur.
|
Ce dépôt inclut notre compilateur, un cross assembleur et le code VHDL de notre processeur.
|
||||||
|
|
||||||
|
- [Fonctionnalités du parser](#fonctionnalités-du-parser)
|
||||||
|
- [Fonctionnalités du compilateur](#fonctionnalités-du-compilateur)
|
||||||
|
- [Fonctionnalités du processeur](#fonctionnalités-du-processeur)
|
||||||
|
- [Installation](#installation)
|
||||||
|
- [Description des dépôts](#description-des-dépôts)
|
||||||
|
* [Compilateur (compilator-2000)](#compilateur--compilator-2000-)
|
||||||
|
+ [Structure](#structure)
|
||||||
|
+ [Compilation et lancement](#compilation-et-lancement)
|
||||||
|
+ [Particularités de l’implémentation](#particularités-de-l'implémentation)
|
||||||
|
- [Tables](#tables)
|
||||||
|
- [Tests unitaires](#tests-unitaires)
|
||||||
|
- [Fonctions utilitaires](#fonctions-utilitaires)
|
||||||
|
* [Cross-assembleur (crossassembler-2000)](#cross-assembleur--crossassembler-2000-)
|
||||||
|
+ [Compilation et lancement](#compilation-et-lancement-1)
|
||||||
|
* [Processeur (processor-2000)](#processeur--processor-2000-)
|
||||||
|
+ [Structure](#structure-1)
|
||||||
|
+ [Simulation et tests](#simulation-et-tests)
|
||||||
|
+ [Particularités de l’implémentation](#particularités-de-l'implémentation-1)
|
||||||
|
- [Multiplexeurs](#multiplexeurs)
|
||||||
|
- [Tests d’intégration](#tests-d'intégration)
|
||||||
|
|
||||||
## Fonctionnalités du parser
|
## Fonctionnalités du parser
|
||||||
- Déclaration de variables
|
- Déclaration de variables
|
||||||
- Affectation de variables
|
- Affectation de variables
|
||||||
|
@ -104,6 +121,16 @@ make clean
|
||||||
```
|
```
|
||||||
|
|
||||||
### Processeur (processor-2000)
|
### Processeur (processor-2000)
|
||||||
|
#### Structure
|
||||||
|
|
||||||
|
Ce projet contient un fichier `.vhd` pour chaque composant du processeur, à savoir l’ALU (`ALU.vhd`), la mémoire de données (`data_memory.vhd`), la mémoire d’instructions (`instruction_memory.vhd`), et le banc de registres (`registers.vhd`). Chacun de ces composants possède un fichier de test associé (nommés `COMPOSANT_test.vhd`). Ensuite, tous ces composants sont connectés grâce à une pipeline dans le fichier `CPU.vhd`, possédant lui aussi un fichier de test.
|
||||||
|
|
||||||
#### Simulation et tests
|
#### Simulation et tests
|
||||||
Ouvrir le projet dans ISE et lancer la simulation. Le fichier `config_simu.wcfg` contient une configuration du simulateur qui permet de visualiser tous les signaux intéressants.
|
Ouvrir le projet dans ISE et lancer la simulation. Le fichier `config_simu.wcfg` contient une configuration du simulateur qui permet de visualiser tous les signaux intéressants.
|
||||||
|
|
||||||
|
#### Particularités de l’implémentation
|
||||||
|
##### Multiplexeurs
|
||||||
|
Les multiplexeurs sont implémentés avec des `std_logic_vector`, pour lesquels chaque booléen correspond à une instruction. Cela permet d'ajouter facilement de nouvelles instructions : il suffit de rajouter à chaque vecteur un booléen.
|
||||||
|
|
||||||
|
## Tests d’intégration
|
||||||
|
Nous avons testé les trois composants (compilateur, cross-assembleur et processeur) sur le fichier `test.c`. Nous avons constaté en simulation que la mémoire était bien mise à jour avec les bonnes valeurs. Nous n’avons cependant pas eu le temps de tester sur la carte physique.
|
||||||
|
|
BIN
README.pdf
BIN
README.pdf
Binary file not shown.
Loading…
Reference in a new issue