Architecture & Matériel PDF Gratuit

Cours Architecture des ordinateurs en PDF (Intermédiaire)

Introduction à l'architecture matérielle

Architecture des ordinateurs : Ce qu'il faut savoir. Discipline qui étudie l'organisation matérielle et logicielle d'un ordinateur, incluant représentation binaire des données, unité centrale, hiérarchie mémoire, bus et périphériques. Le texte décrit comment le CPU exécute un programme, comment mémoire et contrôleurs d'E/S coopèrent, et pourquoi certaines optimisations (cache, modes d'adressage) impactent fortement les performances. Fiche basée sur le PDF gratuit d'Emmanuel Viennet (IUT de Villetaneuse, Département GTR), téléchargeable pour consultation et révision.

Le modèle de Von Neumann

Le modèle de Von Neumann organise l'ordinateur autour d'une mémoire unique contenant programmes et données (principe du programme enregistré). L'unité centrale regroupe une unité de traitement (ALU/UAL), une unité de contrôle et des registres ; elle exécute un cycle d'instruction composé des étapes fetch‑decode‑execute. Les voies d'interconnexion relient CPU, mémoire et périphériques d'entrée/sortie selon ce modèle, générant des contraintes de débit, d'arbitrage et de cohérence.

Les circuits logiques et l'unité arithmétique

L'unité arithmétique et logique (UAL) repose sur des blocs logiques combinatoires et séquentiels pour réaliser opérations arithmétiques, logiques et de transfert. Les circuits combinatoires fournissent les fonctions sans état utilisé immédiatement par l'UAL ; les circuits séquentiels gèrent la mémoire interne (registre, bascules) nécessaire aux états intermédiaires d'une opération. Ces éléments déterminent les latences et la complexité d'un chemin de données.

Circuits combinatoires et logiques

Les circuits combinatoires réalisent des fonctions logiques sans mémoire interne. Un exemple courant est le additionneur binaire (demi‑additionneur, additionneur complet) combinant portes logiques pour calculer somme et retenue. Un multiplexeur permet de sélectionner une entrée parmi plusieurs via des signaux de contrôle. Ces blocs servent de fondation pour construire l'UAL et les chemins de données du processeur.

  • Rôle de l'additionneur dans l'UAL : calculs d'addition/soustraction, génération de drapeaux (carry, zero), base pour opérations arithmétiques plus complexes.
  • Versions courantes : additionneur en série (ripple-carry), additionneur à propagation rapide (carry-lookahead) et variantes optimisées pour la latence.
  • Impact sur la performance : choix d'architecture d'additionneur influence fréquence maximale et consommation énergétique.

Composants du système

Liste des périphériques classiques et leur rôle fonctionnel. Cette vue inclut les composants d'entrée, de sortie et les interfaces usuelles présents sur une station de travail ou un PC embarqué, utile pour la configuration de bancs de TP et l'enseignement pratique.

  • Périphériques d'entrée : clavier, souris, pavé tactile.
  • Périphériques de sortie : écran (moniteur), haut-parleurs, imprimante.
  • Autres interfaces courantes : ports USB, interfaces réseau, contrôleurs de stockage.

Rôle de la carte mère et des composants internes

La carte mère (motherboard) assure le support mécanique et électrique des composants : sockets CPU, emplacements mémoire, connecteurs d'extension, bus (PCI/PCIe), contrôleurs intégrés et circuits d'alimentation. Elle centralise les voies d'interconnexion et le chipset qui orchestre les accès mémoire et périphériques. En pratique, la carte mère définit les possibilités d'extension, le type de bus disponible et les contraintes d'interfaçage entre l'unité centrale et les périphériques d'entrée et de stockage.

🎯 Ce que vous allez apprendre

  • Représentation des données et codages — maîtrise des systèmes de numération (bases 2, 8, 10, 16), codage des entiers et des flottants selon la norme IEEE. Limites des codages sur 8/16/32/64 bits et conséquences pratiques sur l'overflow, la précision et les conversions entre bases.
  • Architecture de base et bus — connaissance des composants : mémoire principale (MP), mémoire vive (RAM), processeur, carte mère, et liaisons Processeur‑Mémoire via bus (local, PCI). Analyse des goulots d'étranglement liés au bus et critères d'interfaçage pour des périphériques.
    • Unité Arithmétique et Logique (UAL)
    • Registres CPU
    • Horloge système
    • Carte mère (connectivité, chipset)
  • Langage machine et jeu d'instruction — étude du codage des instructions, des types d'instructions et des modes d'adressage; lecture du temps d'exécution et correspondances avec le C. Capacité à interpréter des opcodes simples et à anticiper l'impact d'un mode d'adressage sur la performance.
  • Assembleur 80x86, segmentation et pile — écriture et structure d'un programme assembleur, gestion de la segmentation mémoire, utilisation de la pile et des instructions PUSH/POP, et conventions d'appel (CALL/RET). Écriture et débogage de courtes routines en assembleur et intégration d'extraits d'assembleur dans du code C.
  • Système d'exploitation, BIOS et interruptions — rôle du BIOS, vecteurs d'interruption, instruction INT n et installation de traitants d'interruptions; gestion matérielle des interruptions sur PC et contrôleur d'interruptions. Rédaction d'un traitant d'interruption simple en C et explication du mécanisme d'une interruption externe masquable.
  • Entrées/Sorties et périphériques — principes des transferts (modes, DMA vs interruptions), bus SCSI/PCMCIA, interface série 8250 et normes RS‑232 ; programmation des échanges UART basiques et topologie d'un bus d'extension sur PC.

📑 Sommaire du document

  • Introduction à l'architecture
  • Introduction au langage machine
  • L'assembleur 80x86
  • Notions de compilation
  • Le système d'exploitation
  • Les interruptions
  • Les entrées/sorties
  • Les périphériques

💡 Pourquoi choisir ce cours ?

Document pédagogique d'Emmanuel Viennet, enseignant au Département GTR de l'IUT de Villetaneuse, alliant théorie et nombreux exemples pratiques centrés sur l'architecture du PC. Approche progressive : de la représentation binaire aux mécanismes d'interruption, en passant par l'assembleur 80x86 et la programmation d'E/S en C, avec exemples, usage du programme debug et extraits de code. Le PDF équilibre concepts fondamentaux (hiérarchie mémoire, principe de localité) et modes opératoires concrets adaptés à des travaux pratiques.

👤 À qui s'adresse ce cours ?

  • Public cible : étudiants et techniciens en DUT/BUT GTR, BTS ou licence informatique, développeurs bas‑niveau et administrateurs souhaitant comprendre l'interaction CPU/mémoire/périphériques dans un environnement PC.
  • Prérequis : arithmétique binaire et systèmes de numération, connaissances élémentaires en programmation (notamment en langage C), et familiarité avec une ligne de commande ou un terminal.

❓ Foire Aux Questions (FAQ)

Quelle est la différence entre RISC et CISC ?

La comparaison porte sur la complexité des opcodes, la longueur d'instruction et l'organisation du pipeline. Les architectures RISC favorisent des instructions simples et un pipeline efficace, tandis que les architectures CISC proposent des instructions plus riches pouvant réduire la densité du code mais complexifier le décodage et l'exécution.

Fonctionnement de la mémoire cache et localité

La hiérarchie mémoire inclut des caches associatifs qui exploitent la localité temporelle et spatiale pour augmenter le taux de hit. Les paramètres clés sont la taille du cache, la taille des lignes, l'association et la politique de remplacement ; these éléments déterminent l'effet sur la latence observable par le processeur.