Architecture
主題大綱
-
-
Ce cours présente rapidement les principes importants de l'architecture des circuits et des ordinateurs, l'objectif est d'avoir les bases pour comprendre les mécanismes de fonctionnement d'un ordinateur. Ce cours est bati à partir des cours équivalents donnés au département informatique (Architecture des circuits, Architecture des ordinateurs), en particulier le poly est le même, mais ARC représentant moins d'heures, les notions sont donc moins approfondies.
Les TD/TP sont fait sur machine du département ou sur votre machine avec le logiciel Digital (https://github.com/hneemann/Digital#readme)
Pour installer Digital sur votre machine, suivez les instruction de Helmut Neemann (https://github.com/hneemann/Digital#readme): téléchargez et dézippez le fichier Digital.zip et lancez digital avec la commande:
java -jar Digital.jar
-
Le Poly du cours:
Les slides des cours magistraux:
Cours 1: Introduction à l'architecture des ordinateurs, automates et Von Neumann
Cours 2: Architecture RISC, Assembleur (ISA), lien avec la compilation (pile) et ainsi que les slides de C. Wolf utilisées ici
Tous les slides ensemble:
-
Les TD/TP sont fait sur machine du département ou sur votre machine avec le logiciel Digital (https://github.com/hneemann/Digital#readme)
Pour installer Digital sur votre machine, suivez les instruction de Helmut Neemann (https://github.com/hneemann/Digital#readme): téléchargez et dézippez le fichier Digital.zip et lancez digital avec la commande:
java -jar Digital.jar
TD1 (4h): logique booleene, arithmétique et introduction à Digital
TD2 (4h): Logique séquentielle, mémoire. les design Digital pour les registres: Reg8.dig et Reg.dig
TD3 (4h): Automate. Le design digital du datapath_divider est ici
TD4 (4h): Un ordinateur “Von Neumann” simple. Le design digital de la micromachine est ici
TD5 (4h): Prise en main d’une architecture simple : le MSP430 (mise à jour pour mspgcc v8)
- Les docs: de la carte: ez430.pdf, du MSP430 en général: MSP430.pdf, de ce modèle particuler (MSP430F2274): msp430f2274.pdf
- Un résumé des instructions assembleur MSP430
- Le fichier env.sh dont vous aurez besoin pour utiliser msp430-elf-gcc SUR LES MACHINES DU DEPARTEMENT
- Le fichier env.sh dont vous aurez besoin pour utiliser msp430-elf-gcc SUR LES CLES BOOTABLE DU DEPARTEMENT
- Deux petits programmes assembleurs sol-ex15.s et tp1-call.s et la solution de l'exo 27 par Gautier Berthou
- La chaine de compilation pour Ubuntu proposé par TI: https://www.ti.com/tool/download/MSP430-GCC-OPENSOURCE
-
Il faut télécharger deux tar: https://dr-download.ti.com/software-development/ide-configuration-compiler-or-debugger/MD-LlCjWuAbzH/8.3.1.0/msp430-gcc-8.3.1.25_linux64.tar.bz2 et https://dr-download.ti.com/software-development/ide-configuration-compiler-or-debugger/MD-LlCjWuAbzH/8.3.1.0/msp430-gcc-support-files-1.208.zip
-
Actions à faire pour activer la toolchain sur votre machine en tant que simple utilisateur:
- exécuter la commande go_mspgcc (du fichier env.sh ci-dessus) pour avoir accès aux compilateur msp430-elf-gcc
- Se mettre dans le groupe "dialout" si ce n'est pas déjà le cas (sudo adduser votrelogin dialout)
- Mettre
en place la règle udev pour pouvoir accéder au device /dev/ttyACM0 créé
par l'ez430 connecté en USB, il faut mettre (en tant que root) dans le
fichier /etc/udev/rules.d/30-ez430.rules la ligne suivante:
-
ATTRS{idVendor}=="0451", ATTRS{idProduct}=="f432", MODE="0660",GROUP="dialout"
-
Attention à vérifier que les droits du fichier 30-ez430.rules sont bien les mêmes que ceux des autres règles du même répertoire
-
-
TD6 et 7 (2x2h): QtRVSim, le simulateur RISC-V de l'université de Prague, télécharger les fichiers assembleur RISC-V ici
- Le sujet de TP, l'archive à télécharger
- Un QuickRef pour l'assembleur RISC-V (Berkeley), un autre QuickRef plus complet
- La documentation de référence : spécification de l'assembleur RISC-V
- Le site de l'organisation RISC-V