Équipe enseignante – Automne 2024
- Coordination (2024-2025) et matériel de cours
- Jean Privat
- Enseignants
- Hugo Leblanc (groupe 20)
- Aléna Tsikhanovich (groupe 30)
- Démonstrateurs
- Axel-Auguste Okhako Nguessan (Groupe 20/Jeudi AM)
- Nicolas Beeckmans (Groupe 20/Vendredi AM)
Ressources
- Plan de cours
- Description officielle et horaires
- Simulateur - RARS 1.7 - Lien direct vers le jar
- Guide de style de programmation assembleur
- Guide d’installation RARS
Spécifications, documentations et logiciels
- RISC-V International
- Aide mémoire RISC-V (pdf)
- RARS - Dépôt RISC-V Assembler and Runtime Simulator
- Manuel GNU as
- Bibliothèque libs.s
Communication
Évaluations
Description | Pondération | Échéance |
---|---|---|
Quiz 1 | 2.5% | 28 & 29 sept. |
TP 1 | 10% | 14 oct. |
Examen intra | 25% | 27 oct. |
TP 2 | 20% | 11 nov. |
Quiz 2 | 2.5% | 23 & 24 nov. |
TP 3 | 15% | 9 déc. |
Examen final | 25% | 15 déc. |
- Les quiz sont à faire sur Moodle et sont ouverts samedi et dimanche (le temps limité une fois commencé)
- Les TP sont a remettre en ligne le lundi avant 23h55 (vous pouvez remettre avant)
- Les examens communs sont le dimanche après midi
Calendrier des séances
Le calendrier est à titre indicatif
Semaine | Cours | Laboratoire | Échéance | ||||
---|---|---|---|---|---|---|---|
Gr 20 | Gr 30 | Matière | Gr 20 | Gr 30 | Exercices | ||
1 | 3 sept. | 4 sept. |
0001 - Introduction au cours.
Architecture, RISC-V, registre, exécution. Programmes. abstrusegoose/307. | 5 & 6 sept. | 2 & 9 sept. |
Pas de laboratoire | |
2 | 10 sept. | 11 sept. |
0010 - Arithmétique.
Bit, octet, complément à deux, addition, soustraction, débordement. Programme. abstrusegoose/294 et xkcd/74. | 12 & 13 sept. | 16 sept. |
lab02 - Arithmétique.
Solutions. | |
3 | 17 sept. | 18 sept. |
0011 - Éléments d'assembleur.
Instruction, directive, symbole, entrée-sortie, branchement. Programmes. Distribution sujet TP1. | 19 & 20 sept. | 23 sept. |
lab03 - Éléments d'assembleur.
Solutions. | |
4 | 24 sept. | 25 sept. |
0100 - Mémoire.
Segment, directive de donnée, boutisme, alignement, lecture et écriture, chaîne de caractères. Programmes. | 26 & 27 sept. | 30 sept. congé |
lab04 - Mémoire
Solutions. | 28 & 29 sept.
Quiz 1 |
5 | 1 oct. | 2 oct. |
0101 - Calculs.
Instruction logique, décalage, multiplication, division. Programmes. xkcd/759. | 3 & 4 oct. | 7 oct. |
lab05 - Calculs
Solutions. | |
6 | 8 oct. | 9 oct. |
0110 - Adressage.
Tableaux, matrices, pointeurs, pile et routines. Programmes. xkcd/138. Distribution sujet TP2. | 10 & 11 oct. | 14 oct. congé |
lab06 - Tableaux
Solutions. | 14 oct.
Remise TP1 |
7 | 15 oct. | 16 oct. |
0111 - Instructions.
Codage des instructions, code automodifiable, registre d'état et de configuration, compteur de performance matériel. Programmes. | 17 & 18 oct. | 21 oct. | lab07 - Révision | |
8 | Dim. 27 oct. 14:00 à 17:00 Examen intra. | ||||||
22 oct. au 26 oct.
Relâche de cours | |||||||
9 | 29 oct. | 30 oct. |
Correction de l'examen.
1000 - Routines. programmes, bibliothèques, récursivité, pointeurs de routine, paramètres et variable locales dans la pile. Programmes. | 31 oct. & 1 nov. | 4 nov. |
lab08 - Routines
Solutions. | |
10 | 5 nov. | 6 nov. | Routines (suite) | 7 & 8 nov. | 11 nov. |
lab08 - Routines (suite)
Solutions. | 11 nov.
Remise TP2 |
11 | 12 nov. | 13 nov. |
1001 - Structures et données.
Structure, tas, liste chainée. Programmes. Distribution sujet TP3. | 14 & 15 nov. | 18 nov. |
lab09 - Structures et tas
Solutions. | |
12 | 19 nov. | 20 nov. |
1010 - Flottants.
Nombre réels, IEEE 754, instructions flottantes. Programmes. What Every Computer Scientist Should Know About Floating-Point Arithmetic. xkcd/217. | 21 & 22 nov. | 25 nov. |
lab10 - Flottants
Solutions. | 23 & 24 nov.
Quiz 2 |
13 | 26 nov. | 27 nov. |
1011 - Entrées-sorties.
Entrée-sortie programmée, interruptions, accès direct à la mémoire, appel système. Programmes. xkcd/2317. | 28 & 29 nov. | 2 déc. |
lab11 - Entrées-sorties
Solutions. | |
14 | 3 déc. | 4 déc. |
1100 - Circuits logiques.
Introduction au circuits logiques, circuits combinatoires, circuits séquentiels. Révisions. xkcd/730 et xkcd/2497. | 5 & 6 déc. | 9 déc. | lab12 - Révisions | 9 déc.
Remise TP3 |
15 | 10 déc. | 11 déc. | Pas de cours. | 12 & 13 déc. | N/A | lab12 - Révisions (suite) | |
Dim. 15 déc. 14:00 à 17:00 Examen final. |
Anciens examens
- Intra automne 2023: sujet, corrigé
- Final automne 2023: sujet, corrigé
- Intra hiver 2024: sujet, corrigé
- Final hiver 2024: sujet, corrigé
- D’anciens quiz sont disponibles sur Moodle.
Ressources complémentaires
Vidéos et autre matériel de cours
Jeux vidéo d’assembleur (et d’architecture)
- Human Resource Machine (facile)
- Great Permutator (moyen)
- TIS-100 (difficile)
- Baba Is You (…)
Bibliographie complémentaire
- Borin, E. – « An Introduction to Assembly Programming with RISC-V » – 2021. ISBN 978-65-00-15811-3.
- Harris, D et Harris, S. – « Digital Design and Computer Architecture RISC-V Edition » – Morgan Kaufmann Publishers, 2021. ISBN 978-0-12-820064-3.
- Patterson, D.A. et Hennessy, J.L. – « Computer Organisation and Design, RISC-V Edition » – Morgan Kaufmann Publishers, 2018. ISBN 978-0-12-812275-4.
- Patterson, D.A. et Waterman, A. – « The RISC-V Reader: An Open Architecture Atlas » – Strawberry Canyon, 2017. ISBN: 978-0-99-924911-6.