Architecture des ordinateurs

Ce document présente les notions fondamentales de l’architecture des ordinateurs, en particulier des systèmes à microprocesseur.

D'après le document Architecture des ordinateurs

Cet article a été rédigé automatiquement à partir du document source, puis vérifié avant publication.

Document source

Architecture des ordinateurs

Computer Architecture · PDF · 56 pages · 2004

Afficher l'aperçu du document

Consulter le document original →

Ce document présente les notions fondamentales de l’architecture des ordinateurs, en particulier des systèmes à microprocesseur. Il s’adresse aux étudiants en informatique industrielle ou en électronique souhaitant comprendre les principes de base du traitement programmé de l’information, la structure des mémoires, ainsi que l’organisation interne du microprocesseur et ses interactions avec les autres composants.

Généralités

Introduction

L'informatique, contraction d'information et automatique, est la science du traitement de l'information. Apparue au milieu du 20ème siècle, elle a rapidement évolué, intégrant des fonctionnalités variées telles que l'automatisation, le contrôle de processus, la communication et le partage de l'information.

Le cours d’architecture des systèmes à microprocesseurs expose les principes de base du traitement programmé de l’information. La mise en œuvre de ces systèmes repose sur deux modes : le matériel (hardware), qui comprend l’unité centrale, la mémoire, les organes d’entrées-sorties, etc., et le logiciel (software), un ensemble d’instructions appelé programme, stocké dans la mémoire et définissant les actions du matériel.

Qu’entend-on par architecture ?

L’architecture d’un système à microprocesseur désigne l’organisation de ses différentes unités et leurs interconnexions. Le choix d’une architecture est un compromis entre :

  • performances et coûts,
  • efficacité et facilité de construction,
  • performances d’ensemble et facilité de programmation,
  • etc.

Qu’est-ce qu’un microprocesseur ?

Un microprocesseur est un circuit intégré complexe regroupant sur une puce des fonctions logiques combinatoires (logiques et/ou arithmétiques) et séquentielles (registres, compteurs, etc.). Il interprète et exécute les instructions d’un programme. Son domaine d’utilisation est très large.

Le premier microprocesseur, le 4004, a été créé par Intel en 1971. C’était une unité de calcul 4 bits fonctionnant à 108 kHz, intégrant environ 2300 transistors.

Rappels

Les informations traitées par un microprocesseur sont codées en binaire, c’est-à-dire sous forme de bits (valeurs 0 ou 1). Un ensemble de bits forme un mot. Un mot de 8 bits est appelé un octet.

Exemple de conversion binaire-décimal :

(101)2 = 1×2² + 0×2¹ + 1×2⁰ = (5)10

Pour des données plus longues, on utilise souvent la représentation hexadécimale (base 16), avec les chiffres 0 à 9 et les lettres A à F.

Exemple :

(9A)16 = 9×16¹ + 10×16⁰ = (154)10

Quelques conversions d’unités :

  • 1 kilobit = 2¹⁰ bits = 1024 bits
  • 1 mégabit = 2¹⁰ kilobits = 1024 kilobits
  • 1 gigabit = 2¹⁰ mégabits = 1024 mégabits

Où trouve-t-on des systèmes à microprocesseur ?

Les systèmes à microprocesseur sont présents dans de nombreux domaines :

  • ordinateurs, PDA, consoles de jeux, calculatrices,
  • télévision, téléphones portables, distributeurs automatiques d’argent,
  • robotique, lecteurs de cartes à puce, codes-barres,
  • automobile, instrumentation, etc.

Architecture de base

Modèle de von Neumann

Le microprocesseur doit être intégré dans un système complet pour traiter l’information. Le modèle de von Neumann (1946) est la base de la plupart des systèmes actuels. Il comprend :

  • une unité centrale,
  • une mémoire principale,
  • des interfaces d’entrées/sorties.

Ces éléments sont reliés par des bus, voies de communication pour les données, adresses et commandes.

L’unité centrale

Elle est constituée du microprocesseur chargé d’interpréter et d’exécuter les instructions, de lire et écrire dans la mémoire, et de communiquer avec les périphériques. Le microprocesseur fonctionne au rythme d’une horloge.

Ses caractéristiques principales sont :

  • la fréquence d’horloge (MHz ou GHz),
  • le nombre d’instructions exécutées par seconde (MIPS),
  • la taille des données traitées (en bits).

La mémoire principale

Elle contient les programmes en cours d’exécution et les données associées. Elle se divise souvent en :

  • mémoire morte (ROM) : stockage du programme, lecture seule,
  • mémoire vive (RAM) : stockage temporaire des données, lecture/écriture, volatile.

Les périphériques de stockage comme les disques durs ou CD-ROM sont considérés comme des mémoires secondaires.

Les interfaces d’entrées/sorties

Ces interfaces assurent la communication entre le microprocesseur et les périphériques (capteurs, clavier, écran, imprimante, modem, etc.).

Les bus

Un bus est un ensemble de fils transmettant un type d’information en parallèle. On distingue :

  • le bus de données : bidirectionnel, transfert d’informations entre microprocesseur et environnement, nombre de lignes égal à la taille des données traitées,
  • le bus d’adresses : unidirectionnel, sélection des informations dans l’espace mémoire, avec 2ⁿ emplacements si n est le nombre de conducteurs,
  • le bus de commande : quelques conducteurs assurant la synchronisation et le contrôle des flux.

Décodage d’adresses

Le microprocesseur communique avec plusieurs mémoires et interfaces, tous connectés sur le même bus de données. Pour éviter les conflits, un décodeur d’adresses sélectionne un seul composant à la fois en fonction de l’adresse envoyée sur le bus d’adresses.

Lorsqu’un composant n’est pas sélectionné, ses sorties sont mises en haute impédance (impédance très élevée, équivalent à un circuit ouvert) pour ne pas perturber le bus.

Les mémoires

Organisation d’une mémoire

Une mémoire peut être vue comme une armoire avec de nombreux tiroirs (cases mémoire). Chaque case contient un mot de données et est identifiée par une adresse binaire de n bits, permettant d’adresser 2ⁿ cases.

Un boîtier mémoire comprend :

  • des entrées d’adresses (n bits),
  • des entrées/sorties de données (m bits),
  • une entrée de commande R/W (lecture/écriture),
  • une entrée de sélection CS (chip select).

Le cycle d’accès mémoire suit toujours :

  1. sélection de l’adresse,
  2. choix de l’opération (R/W),
  3. sélection de la mémoire (CS = 0),
  4. lecture ou écriture de la donnée.

Caractéristiques d’une mémoire

  • Capacité : nombre total de bits stockés, souvent exprimé en octets.
  • Format des données : nombre de bits par case mémoire (largeur du mot).
  • Temps d’accès : durée entre la demande et la disponibilité de la donnée.
  • Temps de cycle : intervalle minimum entre deux opérations successives.
  • Débit : nombre maximum d’informations lues ou écrites par seconde.
  • Volatilité : permanence des données sans alimentation électrique.

L’accès à une mémoire à semi-conducteurs est direct (aléatoire), contrairement à l’accès séquentiel des bandes magnétiques.

Différents types de mémoire

Les mémoires vives (RAM)

Les RAM servent au stockage temporaire. Elles doivent être rapides et sont généralement volatiles. Deux grandes familles :

  • RAM statiques (SRAM) : chaque bit est une bascule composée de 4 à 6 transistors.
  • RAM dynamiques (DRAM) : chaque bit est une charge électrique dans un condensateur, nécessitant un rafraîchissement périodique.

Avantages des DRAM : plus grande densité d’intégration, consommation réduite.

Inconvénients : nécessité de rafraîchissement, lecture destructive nécessitant une réécriture.

Conclusion : les DRAM sont utilisées pour la mémoire centrale, les SRAM pour les caches et registres où la vitesse est critique.

Évolution des DRAM

  • DRAM FPM (1987) : accès plus rapide avec notion de page mémoire (33-50 MHz).
  • DRAM EDO (1995) : conservation plus longue de l’information, anticipation du cycle mémoire (33-50 MHz).
  • DRAM BEDO : lecture/écriture par blocs (burst), gain de temps (66 MHz).
  • SDRAM (1997) : synchronisée sur horloge, suppression des temps d’attente, fréquence plus élevée (100 MHz).
  • DDR-SDRAM (2000) : double transfert de données par cycle d’horloge (133-200 MHz).

Les mémoires mortes (ROM)

Les ROM sont non volatiles, ne peuvent être que lues, et conservent les données sans alimentation. Plusieurs types :

  • ROM classique,
  • PROM (programmable une fois),
  • EPROM (effaçable par UV),
  • EEPROM (effaçable électriquement),
  • Flash EPROM.

La ROM

Programmée par le fabricant, contenu fixe. Structure matricielle avec diodes. Avantages : densité élevée, non volatile, rapide. Inconvénients : écriture impossible, délai de fabrication, coût élevé.

La PROM

Programmable une seule fois par l’utilisateur via un programmateur. Structure avec fusibles ou jonctions. Avantages : coût plus faible, programmation rapide. Inconvénient : modification impossible.

L’EPROM (UV-EPROM)

Reprogrammable après effacement par rayons UV. Utilise un transistor FAMOS avec grille flottante. Programmation par piégeage de charges, effacement par UV. Avantages : reprogrammable, non volatile. Inconvénients : effacement global, lent à écrire, nécessite fenêtre quartz.

L’EEPROM

Effaçable et programmable électriquement, mot par mot, sans retrait du circuit. Utilise transistor SAMOS. Avantages : reprogrammation in situ, non volatile. Inconvénients : lente, coût élevé.

La Flash EPROM

Similaire à l’EEPROM, programmable et effaçable électriquement. Deux architectures :

  • Architecture NOR : cellules en parallèle, adressage aléatoire, programmation mot par mot, temps d’accès faible, mais coût élevé et lenteur en écriture/lecture par paquet.
  • Architecture NAND : cellules en série, accès séquentiel, programmation par secteur, forte densité, coût réduit, rapide en écriture/lecture par paquet, consommation faible, mais interface E/S indirecte et pas d’écriture/lecture par octet.

La Flash EPROM est largement utilisée dans la téléphonie mobile et les appareils multimédia.

Critères de choix d’une mémoire

  • capacité,
  • vitesse,
  • consommation,
  • coût.

Notion de hiérarchie mémoire

Une mémoire idéale serait grande, rapide et peu coûteuse, mais cela n’existe pas. Pour optimiser coût et performance, on organise les mémoires en hiérarchie :

  • les registres (très rapides, situés dans le processeur),
  • la mémoire cache (rapide, faible capacité, stocke les données les plus utilisées),
  • la mémoire principale (plus lente, grande capacité),
  • la mémoire d’appui (intermédiaire entre mémoire principale et mémoire de masse),
  • la mémoire de masse (très grande capacité, stockage permanent sur supports magnétiques ou optiques).

Plus on s’éloigne du microprocesseur, plus la capacité augmente et le temps d’accès s’allonge.

Le microprocesseur

Architecture de base

Le microprocesseur est un circuit intégré complexe capable d’interpréter et d’exécuter les instructions d’un programme. Il organise et exécute les tâches, traite les informations extérieures, et constitue le cerveau du système.

Il est construit autour de deux éléments principaux :

  • une unité de commande,
  • une unité de traitement,
  • associés à des registres pour stocker les informations à traiter.

Ces éléments sont reliés par des bus internes pour échanger les données et adresses.

Les registres

  • Registres d’usage général : manipulent les données à haute vitesse, connectés au bus de données interne.
  • Registres d’adresses (pointeurs) : connectés au bus d’adresses.

L’unité de commande

Elle séquence le déroulement des instructions :

  • compteur de programme : registre contenant l’adresse de l’instruction à exécuter, initialisé au début du programme,
  • registre d’instruction et décodeur : stocke et décode l’instruction binaire,
  • bloc logique de commande (séquenceur) : organise l’exécution des instructions au rythme de l’horloge, génère les signaux de synchronisation internes et externes selon les commandes du décodeur.

Glossaire des termes clés

  • Architecture : Organisation des unités d’un système et de leurs interconnexions.
  • Bit : Unité élémentaire d’information binaire (0 ou 1).
  • Bus : Ensemble de fils transmettant des informations (données, adresses, commandes).
  • Cache : Mémoire rapide de faible capacité stockant les données les plus utilisées.
  • EPROM : Mémoire programmable et effaçable par rayons UV.
  • EEPROM : Mémoire programmable et effaçable électriquement, mot par mot.
  • Flash EPROM : Mémoire non volatile programmable et effaçable électriquement, avec architectures NOR ou NAND.
  • Microprocesseur : Circuit intégré capable d’interpréter et d’exécuter un programme.
  • RAM : Mémoire vive, volatile, accessible en lecture/écriture.
  • ROM : Mémoire morte, non volatile, accessible en lecture seule.
  • Registre : Mémoire très rapide située dans le microprocesseur.
  • Temps d’accès : Durée entre la demande et la disponibilité d’une donnée en mémoire.
  • Volatilité : Propriété d’une mémoire à perdre ou conserver les données sans alimentation.

Points clés à retenir

  • Un système à microprocesseur combine matériel (microprocesseur, mémoire, interfaces) et logiciel (programme).
  • Le modèle de von Neumann organise le système en unité centrale, mémoire principale et interfaces E/S reliées par des bus.
  • La mémoire se caractérise par sa capacité, vitesse, format, volatilité et coût.
  • Les mémoires RAM sont volatiles et rapides, avec deux types : statiques (SRAM) et dynamiques (DRAM).
  • Les mémoires ROM sont non volatiles, avec plusieurs variantes selon la possibilité de programmation et d’effacement.
  • La hiérarchie mémoire optimise le compromis entre capacité, vitesse et coût.
  • Le microprocesseur comprend une unité de commande, une unité de traitement et des registres, orchestrés par une horloge.

Partager

Commentaires

Aucun commentaire pour le moment. Posez la première question.

Les commentaires sont relus avant publication. Votre e-mail n'est jamais affiché.

← Toutes les révisions