Ressources
- Plan de cours
- Description officielle et horaires
- Bibliothèque libs.s
- 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 - RISC-V Assembler and Runtime Simulator
- Mon fork RARS utilisé dans le cours : avec une plus jolie interface et de nombreuses corrections de bogues
- Lien direct vers le jar
- RARS original (non supporté dans le cadre du cours)
- Manuel GNU as
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.
Jeux vidéo d’assembleur (et d’architecture)
- Human Resource Machine (facile)
- Great Permutator (moyen)
- TIS-100 (difficile)
- Baba Is You (…)
Communication
Équipe enseignante
- Enseignants: Jean Privat (coordinateur) et Hugo Leblanc
- Démonstrateurs:
- Nicolas Cantin (groupe 10)
- Sébastien Marcil (groupe 10)
- Axel Nguessan (groupe 11)
- Akanni Tchanou (groupes 10 et 11)
Évaluations
Description | Pondération | Échéance |
---|---|---|
Quiz 1 | 2.5% | 3 et 4 fév. |
TP 1 | 10% | 18 fév. |
Examen intra | 25% | 25 fév. |
TP 2 | 20% | 17 mars. |
Quiz 2 | 2.5% | 30 et 31 mars. |
TP 3 | 15% | 21 avril. |
Examen final | 25% | 28 avril. |
- 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 dimanche avant 23h55 (vous pouvez remettre avant)
- Les examens communs sont le dimanche après midi
Semainier des séances
Le semainier est à titre indicatif
Semaine | Cours | Laboratoire | Échéance |
---|---|---|---|
1 | 8 janv.
0001 - Introduction au cours. Architecture, RISC-V, registre, exécution. Programmes. abstrusegoose/307. | 9 et 12 janv.
Pas de laboratoire | |
2 | 15 janv.
0010 - Arithmétique. Bit, octet, complément à deux, addition, soustraction, débordement. Programme. abstrusegoose/294 et xkcd/74. | 16 et 19 janv.
lab02 - Arithmétique. Solutions. | |
3 | 22 janv.
0011 - Éléments d'assembleur. Instruction, directive, symbole, entrée-sortie, branchement. Programmes. Distribution sujet TP1. | 23 et 26 janv.
lab03 - Éléments d'assembleur. Solutions. | |
4 | 29 janv.
0100 - Mémoire. Segment, directive de donnée, boutisme, alignement, lecture et écriture, chaîne de caractères. Programmes. | 30 janv. et 2 fév.
lab04 - Mémoire Solutions. | 3 & 4 fev.
Quiz 1 |
5 | 5 fév.
0101 - Calculs. Instruction logique, décalage, multiplication, division. Programmes. xkcd/759. | 6 et 9 fév.
lab05 - Calculs Solutions. | |
6 | 12 fév.
0110 - Adressage. Tableaux, matrices, pointeurs, pile et routines. Programmes. xkcd/138. Distribution sujet TP2. | 13 et 16 fév.
lab06 - Tableaux Solutions. | 18 fév.
Remise TP1 |
7 | 19 fév.
0111 - Instructions. Codage des instructions, code automodifiable, registre d'état et de configuration, compteur de performance matériel. Programmes. | 20 et 23 fév.
lab07 - Révision | |
8 ☃️ | Dim. 25 fév. 14:00 à 17:00 Examen intra. | ||
26 fév au 3 mars
Semaine de relâche | |||
9 | 4 mars.
Correction de l'examen. 1000 - Routines. programmes, bibliothèques, récursivité, pointeurs de routine, paramètres et variable locales dans la pile. Programmes. | 5 et 8 mars.
lab08 - Routines Solutions. | |
10 | 11 mars.
Routines (suite) | 12 et 15 mars.
lab08 - Routines (suite) Solutions. | 17 mars.
Remise TP2 |
11 | 18 mars.
1001 - Structures et données. Structure, tas, liste chainée. Programmes. Distribution sujet TP3. | 19 et 22 mars
lab09 - Structures et tas Solutions. | |
12 | 25 mars.
1010 - Flottants. Nombre réels, IEEE 754, instructions flottantes. Programmes. What Every Computer Scientist Should Know About Floating-Point Arithmetic. xkcd/217. | 26 mars (29 mars congé)
lab10 - Flottants Solutions. | 30 & 31 mars.
Quiz 2 |
# | 1er avril congé, pas de cours | 2 et 5 avril
lab10 - Flottants (suite) Solutions. | |
13 | 8 avril.
1011 - Entrées-sorties. Entrée-sortie programmée, interruptions, accès direct à la mémoire, appel système. Programmes. xkcd/2317. | 9 et 12 avril.
lab11 - Entrées-sorties Solutions. | |
14 | 15 avril.
1100 - Circuits logiques. Introduction au circuits logiques, circuits combinatoires, circuits séquentiels. Révisions. xkcd/730 et xkcd/2497. | 16 et 19 avril.
lab12 - Révisions | 21 avril.
Remise TP3 |
15 🌷 | 23 avril.
Pas de cours. | 23 et 26 avril.
lab12 - Révisions (suite) | |
Dim. 28 avril. 14:00 à 17:00 Examen final. |
Anciens examens
- Intra automne 2023: sujet, corrigé
- Final automne 2023: sujet, corrigé
- Intra hiver 2024: sujet, corrigé
- D’anciens quiz sont disponibles sur Moodle.