Composants Matériels du système informatique MC4 PDF
Document Details
Uploaded by SupportingGraffiti554
USTHB
2024
Mme. BENMAHIDDINE. M
Tags
Summary
This document is a course handout on computer hardware components, focusing on the structure of computer systems. The handout covers topics like computer architecture, components, and the history of computer development, including notable figures such as Von Neumann and Babbage. It aims to give a detailed overview of computer components and hardware architecture.
Full Transcript
Polycopié de cours Composants Matériels du système informatique MC4 Mme. BENMAHIDDINE. M 2024-2025 Plan Pédagogique du cours Matière : Composants Matériels du système informatique M.C.4 Domaine : Cyber sécurité Volume Horaire du cours : 2 h Evaluation : Contrô...
Polycopié de cours Composants Matériels du système informatique MC4 Mme. BENMAHIDDINE. M 2024-2025 Plan Pédagogique du cours Matière : Composants Matériels du système informatique M.C.4 Domaine : Cyber sécurité Volume Horaire du cours : 2 h Evaluation : Contrôle continu 1 :20 %, Contrôle continu 2 :10 %, La présence + Cahier : 10 % Examen : 60%. Introduction L’architecture de l’ordinateur est le domaine qui s’intéresse aux différents composants internes des machines, en explicitant leur construction et leurs interactions. Un ordinateur est un outil complexe qui peut effectuer des tâches variées et dont les performances globales dépendent des spécifications de tous ses éléments. Comprendre son architecture permet de savoir dans quelle mesure les caractéristiques propres à chaque composant influencent la réactivité de la machine en fonction de son usage 1 Introduction Pour comprendre le fonctionnement d’un ordinateur, il faut d’abord connaitre sa définition, ainsi que son architecture et l’évolution de cette machine. Nous verrons également dans ce premier chapitre, les deux architectures informatiques les plus connues et utilisées dans l’ordinateur : Von Neumann et Harvard. L'informatique, contraction d'information et automatique, désigne l’ensemble des sciences et des techniques en rapport avec le traitement automatique de l'information et ce traitement est effectué par un système, concret (machine) ou abstrait. Qu’est-ce qu’un ordinateur ? L'ordinateur est une machine électronique programmable servant au traitement de l'information codée sous forme numérique. Programme Données Sortie Il peut recevoir des données en entrée « fonction d’entrée ». Stocker ou effectuer sur ces données des opérations en fonction d’un programme « fonction de traitement ». Et enfin fournir des résultats en sortie « fonction de sortie ». 2 L'information traitée par l'ordinateur peut se présenter sous forme : numérique, texte, son, dessin ou graphique, image... mais aussi instructions composant un programme. Cette information est représentée (codée) sous forme de suites de chiffres binaires 0 et 1. Définition ordinateur (selon le dictionnaire Hachette) n. m. INFORM Machine capable d’effectuer automatiquement des opérations arithmétiques et logiques (à des fins scientifiques, administratives, comptable, etc.) à partir de programmes définissant la séquence de ces opérations. Terminologie 1955 : Création du mot français « Ordinateur », déposé d’abord par IBM, pour désigner ce qui est en anglais un "Computer". - Français Ordinateur Ordre (commande et organisation) - Anglais Computer Calculateur - Arabe اﻟﺤﺎﺳﻮب,اﻟﻜﻤﺒﯿﻮﺗﺮ Qu’appelle-t-on architecture des ordinateurs ? L’architecture des ordinateurs est la discipline qui correspond à la façon dont on conçoit les composants d’un système informatique. En informatique, le terme architecture désigne l’organisation des éléments d’un système et les relations entre ces éléments. Il y a : L’architecture matérielle : concerne l’organisation des différents dispositifs physiques que l’on trouve dans un ordinateur. Fonctionnement logique de chaque composant et le dialogue entre les composants L’architecture logicielle : concerne l’organisation de différents programmes entre eux. Codage de l’information et jeu d’instruction de la machine càd l’ensemble des opérations que la machine peut exécuter. 1.1. Chronologie Pour comprendre l’architecture d’un ordinateur d’aujourd’hui, il faut comprendre son évolution et comment ont fonctionné ses ancêtres et par quelles évolutions on est parvenu à l’architecture moderne des ordinateurs (voir tableau ci-dessous). Après la machine mécanique de Blaise Pascal (1643), qui automatisait à l'aide de roues dentées les opérations arithmétiques et celle du Britannique Charles Babbage (1883), qui les enchaînait grâce à une complexe tringlerie lisant le programme sur un ruban perforé. Les « calculateurs électroniques » ont fait leur apparition dans les années 1940-1950. 3 Générations Caractéristiques ère 1 génération - Technologie à lampes, relais, tubes à vider, résistances. 1945-55 : Les ordinateurs - Premiers calculateurs électroniques. mécaniques 1946 EDVAC (Electronic Discrete Variable Automatic Compute) par Von Neumann et mise en service en 1951 (programme et données enregistrés en mémoire) 2ème génération - Technologie à transistors (remplacent les tubes à vides). 1955-65 : Les ordinateurs à - Apparition des langages de programmation évolués. transistors 1955 IBM 650 1er ordinateur fabriqué en série 3ème génération - Technologie des Circuits Intégrés (puces) SSI/MSI (Small Scale Integration / Medium Scale Integration) qui 1965-71 : Les ordinateurs à permettent de placer un nombre important de transistors circuits intégrés sur une même puce en silicium. - Avènement du système d’exploitation complexe. 1971 Kenback 11er micro-ordinateur 4ème génération - Technologie LSI (Large SI). 1971-77 : La micro- - Avènement de réseaux de machines. informatique 1976 Apple I (S. Wozniak & S. Jobs,) muni de clavier 5ème génération - Technologies VLSI / ULSI (Very Large / Ultra large SI) 1977 et plus : des ordinateurs l’intégration de milliers à des milliards de transistors sur une même puce. partout 1981 PC (Personal Computer) par IBM Et depuis 1990 - Miniaturisation des composants matériels, on parle de la Nouveaux outils nanotechnologie. 1990 Nouveaux outils 2007 iPhone 1er smartphone par Appel 1.2. Machine de Von Neumann et machine de Harvard Il existe deux architectures informatiques, qui diffèrent dans la manière d’accéder aux mémoires : L’Architecture de Von Neumann et l’Architecture de Harvard. Dans l’architecture de Von Neumann, les programmes et les données sont stockés dans la même mémoire et gérés par le même sous-système de traitement de l'information. Dans l’architecture de Harvard, les programmes et les données sont stockés et gérés par différents sous-systèmes. C’est la différence essentielle entre ces deux architectures. 1.2.1. Machine de Von Neumann A la fin de 1946 « John Von Neumann » un physicien et mathématicien d’origine Hongroise, propose un modèle d’ordinateur qui fait abstraction du programme et se lance dans la construction d’un EDVAC (Electronic Discrete Variable Automatic Computer). Il a introduit 2 nouveaux concepts dans le traitement digital de l’information : 4 a. Programme enregistré Von Neumann, a eu l’idée d’utiliser les mémoires du calculateur pour emmagasiner les programmes : d’où le nom de la machine à programme enregistré donné au nouveau type de calculateur. b. Rupture de séquence Von Neumann, a eu l’idée de rendre automatique les opérations de décision logique en munissant la machine d’une instruction appelée branchement conditionnelle (ou rupture de séquence conditionnelle). Description de l’architecture de Von Neumann C'est Von Neumann qui a défini en 1944 l'architecture des ordinateurs modernes encore largement utilisés aujourd’hui (seules les technologies ont changé). Dans cette architecture, on utilise une seule mémoire pour les programmes et les données, tandis que l’unité centrale (processeur) est composée d’unité de contrôle et d’unité arithmétique et logique. Elle est constituée d’un bus de données (programme et données) et d’un bus d'adresse (programme et données). L'architecture de Von Neumann (fig. 1) décompose l'ordinateur en quatre parties : Unité Arithmétique et Logique (UAL) : effectue les calculs (les opérations de base). Unité de contrôle (UC) : commande les autres unités. Elle est chargée du séquençage des opérations – Envoie des signaux de contrôle aux autres unités – Supervise le fonctionnement de l’UAL – Envoie des signaux d’horloge aux autres unités… Mémoire : dispositif de stockage des information (données et programme). Dispositifs d’Entrée-Sortie : permettent l’échange d’informations avec les dispositifs extérieurs. Figure 1: L’architecture de Von Neumann. Les différents organes du système sont reliés par des voies de communication appelées bus (bus d’adresse et bus de données). 5 C’est avec cette architecture que sont construits tous les ordinateurs, du nanoprocesseur (que l’on trouve par exemple dans une machine à laver) au super-ordinateur (calcul intensif). 1.2.2. Machine de Harvard Le nom de cette structure vient du nom de l’université de Harvard où une telle architecture a été mise en pratique pour la première fois avec le Harvard Mark 1 créé par Howard Aiken et fut construit par IBM en 1944. Également appelé par IBM Automatic Sequence Controlled Calculator (ASCC). Il fut le premier ordinateur à utiliser des systèmes de mémoire séparés (des données et des instructions). Description de l’architecture de Harvard Dans l'architecture dite de Harvard (mise au point dans cette université américaine en 1930), on sépare systématiquement la mémoire de programme de la mémoire des données : l'adressage de ces mémoires est indépendant. Une architecture simple de Harvard (fig. 2), constituée d’un bus de données, d’un bus de programme et de deux bus d'adresses. Les échanges s'effectuent de manière double entre l'unité centrale et les deux mémoires, ce qui permet une grande souplesse pour l'enregistrement et l'utilisation des données. D'ailleurs, la mémoire de programme est également utilisée en partie comme mémoire de données pour obtenir encore plus de possibilités de traitement avec des algorithmes complexes. Figure 2 : L’architecture de Harvard. Architecture Harvard n’est normalement utilisé que dans les deux systèmes spécialisés ou à des usages très spécifiques, elle est utilisée dans le traitement du signal numérique spécialisé (DSP Digital Signal Processing), typiquement pour le traitement des données vidéo et audio. Elle est également utilisée dans de nombreux petits microcontrôleurs dans des applications de l'électronique. 6 1.2.3. La différence entre l’architecture de Von Neumann et Harvard Différence Architecture de Von Neumann Architecture de Harvard Le nom provient de « Harvard Elle porte le nom du mathématicien Mark I », un ancien ordinateur à Nom et informaticien John Von relais, projet réalisé à l’université Neumann Harvard La conception de l'architecture de La conception de l'architecture de Conception Von Neumann est simple. Harvard est compliquée. Système de Elle a besoin d’une seule mémoire Elle a besoin de deux mémoires mémoire pour les instructions et les données. pour les instructions et les données Système de Ne requiert qu'un seul bus pour les Nécessite un bus séparé pour les bus instructions et les données. instructions et les données. Traitement Le processeur a besoin de deux Le processeur peut compléter une des cycles d'horloge pour terminer une instruction en un cycle. instructions instruction. Plus facile à canaliser, donc de Faible performance par rapport à Performance hautes performances peuvent être l’architecture de Harvard. atteintes. Coût Coût moins cher. Coût relativement élevé. Principalement utilisée sur toutes les Concept utilisé principalement dans machines (des ordinateurs de les microcontrôleurs et le traitement Utilisation bureau, des ordinateurs portables et du signal numérique (DSP ‘Digital stations de travail hautes Signal Processor’) performances). 1.3. Conclusion Dans ce chapitre introductif, nous avons expliqué la définition d’un ordinateur et la signification du terme architecture en informatique, son évolution par laquelle des modifications sont intervenues dans l’architecture moderne des ordinateurs d’aujourd’hui et ainsi que les architectures de Von Neumann et de Harvard. Dans le chapitre suivant, nous verrons en détail les principaux composants d’un ordinateur. 7 1. Introduction 2. Composants d’un ordinateur 3. Processeur (Unité Arithmétique et Logique) 4. Bus 5. Registres 6. Mémoire 2.1. Introduction/ Ce chapitre s’intéresse aux éléments fondamentaux d’un ordinateur et leurs fonctionnements. Nous présenterons les principaux modules constituant l’architecture d’un ordinateur type. Nous expliquerons la fonctionnalité de chacun de ces modules et de leurs relations fonctionnelles dans l’ordinateur. Il s’agit ici uniquement de présenter de manière globale le fonctionnement de l’ordinateur. Un ordinateur est une machine électronique capable de résoudre et traiter des problèmes en appliquant des instructions probablement définies. Donc il permet : D’acquérir des informations. De conserver des informations. D’effectuer des traitements sur les informations. De restituer des informations. Concernant l’organisation de base d’un ordinateur (fig. 3), il doit posséder les unités fonctionnelles suivantes : Unité de traitement (Processeur) : cerveau de l’ordinateur, supervise les autres unités et effectue les traitements (exécution et calcule). Unités de stockage (Mémoire) : lieu de stockage des informations (programmes et données). Unités d’entrées et de sorties (Périphériques) : ce sont les unités qui sont destinées à recueillir les informations en entrée et à les restituer en sortie. Bus de communication assurent les connections entre les différentes unités. 8 Figure 3 : La structure d’un ordinateur général. 2.2. Composants de l’ordinateur Un ordinateur est un ensemble de composants électroniques modulaires, c'est-à-dire des composants pouvant être remplacés par d'autres composants ayant éventuellement des caractéristiques différentes, capables de faire fonctionner des programmes informatiques. La mise en œuvre de ces systèmes s’appuie sur deux modes de réalisation distincts : Le matériel (hardware mot signifiant quincaillerie) correspond à l’aspect concret ou physique de l’ordinateur : unité centrale, mémoire, organes d’entrées-sorties, etc… Le logiciel (software mot fabriqué pour les besoins de la cause en remplaçant hard ‘dur’ par soft ‘mou’) désigne au contraire tout ce qui n’est pas matériel est qui correspond à un ensemble d’instructions, appelé programme, qui sont contenues dans les différentes mémoires du système d’un ordinateur et qui définissent les actions effectuées par le matériel. Les composants matériels de l'ordinateur sont architecturés autour d'une carte principale comportant quelques circuits intégrés et beaucoup de composants électroniques tels que condensateurs, résistances, etc... Tous ces composants sont soudés sur la carte et sont reliés par les connexions du circuit imprimé et par un grand nombre de connecteurs : cette carte est appelée « carte mère ». 2.2.1 Présentation de la carte mère L'élément constitutif principal et essentiels de l'ordinateur est la carte mère (en anglais « Mainboard » ou « Motherboard », parfois abrégé en « Mobo »). 9 Figure 4 : Le modèle de carte mère. La carte mère est la plus grande carte électronique prenant la forme d’un circuit imprimé. C'est le système nerveux de l'ordinateur car elle assemble et met en relation tous les composants matériels. Elle permet à tous ses composants de fonctionner ensemble efficacement car elle assure la connexion physique des différents composants (processeur, mémoire, carte d'entrées/sorties,...) par l’intermédiaire de différents bus (adresses, données et commande). La qualité de la carte mère est vitale puisque la performance de l’ordinateur dépend énormément d’elle. 2.3. Processeur Le processeur (CPU, pour Central Processing Unit, soit Unité Centrale de Traitement) est le cerveau de l'ordinateur. Il permet les échanges de données entre les différents composants (disque dur, mémoire RAM, Carte graphique, …) et de manipuler des informations numériques, c'est-à-dire des informations codées sous forme binaire et d'exécuter les instructions stockées en mémoire. Sa puissance est exprimée en Hertz. Electroniquement, le processeur est une puce (circuit intégré complexe) d'environ 4cm de côté et quelques millimètres d’épaisseur en silicium regroupant quelques centaines de millions de transistors, qui chauffe beaucoup car il est très sollicité. 10 Figure 5 : Le processeur. 2.3.1 Unités d’un processeur Le processeur est constitué d'un ensemble d'unités fonctionnelles reliées entre elles (la figure 6 ci-dessous présente son architecture générale). Les rôles des principaux éléments d'un microprocesseur sont les suivants : 1. Une unité d'instruction (ou unité de commande, en anglais control unit), qui contrôle toutes les composantes et qui lit les données arrivantes, les décode puis les envoie à l'unité d'exécution. L'unité d'instruction est notamment constituée des éléments suivants : A. Séquenceur (ou bloc logique de commande) chargé de synchroniser l'exécution des instructions au rythme d'une horloge. Il est ainsi chargé de l'envoi des signaux de commande. B. Compteur ordinal contenant l'adresse de l'instruction en cours. C. Registre d'instruction contenant l'instruction à exécuter. D. Décodeur d’instruction identifie l’instruction à exécuter qui se trouve dans le registre RI, puis d’indiquer au séquenceur la nature de cette instruction afin que ce dernier puisse déterminer la séquence des actions à réaliser. 2. Une unité d'exécution (ou unité de traitement), qui accomplit les tâches que lui a donné l'unité d'instruction. L'unité d'exécution est notamment composée des éléments suivants : 3. L'unité arithmétique et logique (notée UAL ou en anglais ALU pour Arithmetical and Logical Unit) pour le traitement des données. A. L'unité de virgule flottante (notée FPU, pour Floating Point Unit), qui accomplit les calculs complexes non entiers que ne peut réaliser l'unité arithmétique et logique. B. Le registre d'état. C. Le registre accumulateur. 4. Une unité de gestion des bus (ou unité d'entrées-sorties), qui gère les flux d'informations entrant et sortant, en interface avec la mémoire vive du système. 11 Figure 6 : L’architecture générale d’un processeur 2.3.2 Unité Arithmétique et Logique C’est le cœur du processeur, l’UAL (l’abrégé de l’unité arithmétique et logique) est chargé de l’exécution de tous les calculs que peut réaliser le microprocesseur Figure 7 : L’unité arithmétique et logique. Fonctions de l’UAL : L’UAL permet de réaliser différents types d’opérations sur des données de la forme S= f (E1, E2) : Des opérations arithmétiques : additions, soustractions,... Des opérations logiques : ou, et, ou exclusif,... Des décalages et rotations. 2.4. BUS Un bus est un ensemble de fils (conducteurs électriques) qui assure la transmission des informations binaires entre les éléments de l’ordinateur. Il y a plusieurs bus spécialisés en fonction des types de périphériques concernés et de la nature des informations transportées : adresses, commandes ou données. 2.4.1. Caractéristiques d’un bus Un bus est caractérisé par : 12 a. Sa largeur : un bus est caractérisé par le volume d’informations qui peuvent être envoyées en parallèle (exprimé en bits) correspond au nombre de lignes physiques sur lesquelles les données sont envoyées de manière simultanée. Ainsi la largeur désigne le nombre de bits qu’un bus peut transmettre simultanément. 1 fil transmet un bit, 1bus à n fils = bus n bits Exemple : une nappe de 32 fils permet ainsi de transmettre 32 bits en parallèle. b. Sa vitesse : est le nombre de paquets de données envoyés ou reçus par seconde. Elle est également définie par sa fréquence (exprimée en Hertz). On parle de cycle pour désigner chaque envoi ou réception de données. Un cycle mémoire assure le transfert d’un mot mémoire : Cycle mémoire (s)=1 / fréquence C. Son débit : Le débit maximal du bus (ou le taux de transfert maximal) est la quantité de donnée qu’il peut transfert par unité de temps, en multipliant sa largeur par sa fréquence. Débit (octets/s) = (nombre de transferts par seconde * largeur) / 8 Bande passante (en Mo/s) = largeur bus (en octets) * fréquence (en Hz) 2.4.1. Différents types de bus Selon la nature de l’information à transporter, on retrouve trois types de bus d’information (fig. 8) en parallèle dans un système de traitement programmé de l’information: Figure 8 : Les différents types de bus. a. Bus de données : c’est un bidirectionnel, il assure le transfert des informations (opérations et données) entre le microprocesseur et son environnement, et inversement. Son nombre de lignes est égal à la capacité de traitement du microprocesseur. b. Bus d’adresses (bus d’adressage ou mémoire) : c’est un bus unidirectionnel, il permet la sélection des informations à traiter dans un espace mémoire (ou espace adressable) selon la demande du processeur pour lire ou écrire une donnée. Il peut avoir 2n emplacements, avec n = nombre de conducteurs du bus d'adresses. c. Bus de commande (bus de contrôle) : c’est un bidirectionnel, constitué par quelques conducteurs qui assurent la synchronisation des flux d'informations. Il transporte les 13 signaux de contrôle (lecture ou écriture mémoire, opération d’entrées/ sorties, …), dont les éléments sont disponibles sur les bus donnés ou adresses. 2.4.2. Principaux bus On distingue généralement sur un ordinateur deux principaux bus : a. Bus système (bus interne, en anglais internal bus ou front-side bus, noté FSB) : permet au processeur de communiquer avec la mémoire centrale du système (mémoire vive ou RAM) comme les bus d’adresse et de données. b. Bus d'extension (bus d'entrée/sortie) : permet aux divers composants liés à la carte-mère (USB, série, parallèle, cartes branchées sur les connecteurs PCI, disques durs, lecteurs et graveurs de CD-ROM, etc.) de communiquer entre eux. Il permet aussi l'ajout de nouveaux périphériques grâce aux connecteurs d'extension (appelés slots) qui lui y sont raccordés. 2.5. Registres Lorsque le processeur exécute des instructions en cours de traitement, les données sont temporairement stockées dans de petites mémoires (rapides de 8, 16, 32 ou 64 bits) que l'on appelle registres. Suivant le type de processeur le nombre global de registres peut varier d'une dizaine à plusieurs centaines. Il existe deux types de registres : a. Registres visibles par l’utilisateur (manipulable par le programmeur) : un registre utilisateur est un registre référençable pour les instructions exécutées par le processeur. On trouve différentes catégories : - Données : ne peuvent pas être employées pour le calcul d’adresses. - Adresses : souvent dévolues à un mode d’adressage particulier (contenant des valeurs de base ou d’index). - Conditions (flags) : constitués d’une suite de bits indépendants dont chacun est positionné en fonction du résultat d’une opération. - Autres : n’ont pas de fonction spécifique. Les registres de l'UAL (unité arithmétique et logique), qui sont accessibles au programmeur, contrairement aux registres de l'UCC (unité de contrôle et commande). On dénombre : - Registre accumulateur (ACC), stockant les résultats des opérations arithmétiques et logiques des données en cours de traitement. - Registres arithmétiques : destinés pour les opérations arithmétiques (+, -, *, /, complément à 1,...) ou logiques (NOT, AND, OR, XOR), l’accumulateur (ACC) pour stocker le résultat, …. - Registres d’index : pour stocker l'index d'un tableau de données et ainsi calculer des adresses dans ce tableau. - Registre pointeur : d'une pile ou de son sommet. - Registres généraux : pour diverses opérations, exemple stocker des résultats intermédiaires. - Registres spécialisés : destinés pour certaines opérations comme les registres de décalages, registres des opérations arithmétiques à virgule flottante, …etc - 14 b. Registres de contrôle et des statuts (non visible par le programmeur) : utilisés par l’unité de commandes pour contrôler l’activité du processeur et par des programmes du système d’exploitation pour contrôler l’exécution des programmes. Quatre registres sont essentiels à l’exécution d’une instruction. Ils sont utilisés pour l’échange avec la mémoire principale : - Le compteur ordinale (CO ou PC, pour Program Counter) : contient l’adresse de la prochaine instruction à exécuter. - Le registre d’instruction (RI ou IR, pour Instruction Register) : contient l’instruction en cours de traitement. - Le registre d’adresse mémoire (MAR, pour Memory Adress Register) : contient une adresse mémoire et il est directement connecté au bus d’adresse. - Le registre tampon mémoire (MBR, pour Memory Buffy Register) : contient un mot de données à écrire en mémoire ou un mot lu récemment. Il est directement connecté au bus de données et il fait le lien avec les registres visibles par l’utilisateur. Comme registre de statut, le registre d'état (PSW, pour Processor Status Word) contient des informations de statut. Il permet de stocker des indicateurs sur l'état du système (retenue, dépassement, etc.) et qui dépend du résultat donné par l’UAL. 2.6. Mémoire Un ordinateur a deux caractéristiques essentielles qui sont la vitesse à laquelle il peut traiter un grand nombre d’informations et la capacité de mémoriser ces informations. On appelle « mémoire » tout dispositif capable d’enregistrer, de conserver aussi longtemps que possible et de les restituer à la demande. Il existe deux types de mémoire dans un système informatique : La mémoire centrale (ou interne) permettant de mémoriser temporairement les données et les programmes lors de l'exécution des applications. Elle est très rapide, physiquement peu encombrante mais coûteuse. C’est la mémoire de travail de l’ordinateur. La mémoire de masse (ou auxiliaire, externe) permettant de stocker des informations à long terme, y compris lors de l'arrêt de l'ordinateur. Elle est plus lente, assez encombrante physiquement, mais meilleur marché. C’est la mémoire de sauvegarde des informations. 15 16