Descriptif du cours « Architecture des ordinateurs »
Heures de travail attendues | 120 | Langue d'enseignement | F |
---|---|---|---|
Année de validitée | 2023/2024 | Identifiant du cours | B2C-AROR-S |
Année du plan d'études | 2e année | Niveau | intermédiaire |
Semestre | automne | Type de cours | fondamental |
Programme | français, bilingue | Type de formation | bachelor |
Filière(s) | Informatique et systèmes de communication | Orientation(s) | Informatique logicielle, Ingénierie des données, Réseaux et systèmes |
Objectifs
De façon globale le cours Architecture des ordinateurs vise les objectifs suivants:
- Comprendre le fonctionnement d’un ordinateur
- Concevoir et programmer des traitements séquentiels en langage C/C++
- Concevoir et programmer des traitements séquentiels en langage assembleur ARM
- Mettre en oeuvre des systèmes à microprocesseurs
De façon plus détaillée, et au terme du cours, l’étudiant sera capable :
- d’utiliser des outils de développement croisé pour des systèmes embarqués
- concevoir et réaliser une application embarquée sur microprocesseur ARM
- programmer des applications orienté-objet en langage C/C++ en manipulant les éléments de base du langage, en gérant les allocations dynamique de la mémoire ainsi que le traitement de périphériques
- mettre en oeuvre une méthodologie de développement et de test suivant les bonnes pratiques du CI/CD
Contenu
Le cours traite des sujets suivants:
-
Chapitre 1 : Programmation en langage C/C++ (pour programmeur Java)
- L’utilisation de bibliothèques
- Les entrées sorties
- La compilation séparée
- Les types de données
- Les variables
- Les constantes
- Les instructions de contrôle de flux
- Les classes
- Les objets
- Les fonctions
- Les tableaux et les vecteurs
- Les pointeurs
- L’héritage
- Exercices
-
Chapitre 2 : Architecture générale des ordinateurs
- Ordinateur
- Microprocesseur et microcontrôleur
- Unité centrale de traitement
- Principe de traitement de l’information
- Taxonomie de Flynn
- Architectures des jeux d’instructions
- Information et données
- Mémoire centrale
- Périphériques
- Placement d’un programme en mémoire
- Exercices
-
Chapitre 3 : Architecture interne
- Architecture ARM
- Exécution d’un programme informatique
- Composants internes des µP ARMv7
- Modes des CPU ARMv7
- Performances
- Exercices
-
Chapitre 4 : Systèmes de nombres
- Les nombres entiers
- Représentations des nombres entiers
- Addition binaire
- Les nombres entiers signés
- Nombres binaires signés
- Addition binaire de nombres signés
- Soustraction binaire
- Comparaison
- Nombres en virgules flottantes
- Exercices
-
Chapiter 5 : Assembleur des processeurs ARM
- Processus de développement
- Structure d’un module d’assemblage
- Interfaçage C ‑ Assembleur
- Jeux d’instructions
- Exercices
-
Chapitre 6 : Traitement des interruptions
- Concept général
- Interruptions matérielles
- Profiles ARM
- Exercices
-
Chapitre 7 : Hierarchie de la mémoire
- Concept général
- Mémoire Cache
- Unité de Gestion de la Mémoire
- Accès Direct à la Mémoire
- Exercices
Formes d’enseignement
Forme d’enseignement | Durée |
---|---|
Cours magistral (y compris exercices) | 40 périodes |
Travaux pratiques / laboratoires | 40 périodes |
Projets | - |
Examen de révision | - |
Examen de branche | - |
Remarque
1 période dure 45 minutes
Modalités d’évaluation
- Contrôle continu: travaux écrits, TP/évaluation de rapports
Mode de calcul de la note de cours
La note du contrôle continu prend en compte les notes des travaux écrits et des travaux pratiques. Le détail du calcul est donné lors de la première heure de cours.
Ouvrages de référence
Les références seront données pendant le cours
Enseignant(s) et/ou coordinateur(s)
Luca Haab, Jacques Supcik
Date de mise à jour : 18.09.2022