cours ADo chap1 - Faculté des Sciences · L’architecture de Von Neumann fait référence à un...

22
Chapitre1: Introduction Dr. HARBOUCHE Kh.

Transcript of cours ADo chap1 - Faculté des Sciences · L’architecture de Von Neumann fait référence à un...

Page 1: cours ADo chap1 - Faculté des Sciences · L’architecture de Von Neumann fait référence à un cadre général que devraient suivre le matériel, la programmation et les données.

Chapitre1: Introduction

Dr. HARBOUCHE Kh.

Page 2: cours ADo chap1 - Faculté des Sciences · L’architecture de Von Neumann fait référence à un cadre général que devraient suivre le matériel, la programmation et les données.

Information automaTique

Traitement données et instructions

Science Traitement automatique de l’information

valeurs numériques,

textes, images, sons, ...

Informa Tique

1. Introduction à la notion d'architecture des ordinateurs

1.1 Notions générales

Page 3: cours ADo chap1 - Faculté des Sciences · L’architecture de Von Neumann fait référence à un cadre général que devraient suivre le matériel, la programmation et les données.

un ordinateur était un calculateur numérique

-Computer

Est une science relativement récente, apparue au milieu du 20ième siècle.

D’abord réservée au calcul scientifique

Puis elle fut appliquée au traitement de l’information

le contrôle de processus, d’automatisation

maintenant elle est déployée dans l’industrie

La communication . . .

Ordinateur

le commerce était initialement confinée dans les labos

Il est devenu plus répandu et généralisé

L’usage des ordinateurs est vulgarisé

On est passé des ordinateurs à tubes à vide (ENIAC en1946)

aux ordinateurs à transistors mainframes tels que IBM 7090 en1959

les minis tels que le PDP8 en1965

les stations de travail tels que le VAX Station en 1985actuellement les serveurs organisés en clusters fermés ou les tablettes et autres smartphones

Elle est en évolution extrêmement rapide sur tous les plans

utilisation commercialisation technologie

Page 4: cours ADo chap1 - Faculté des Sciences · L’architecture de Von Neumann fait référence à un cadre général que devraient suivre le matériel, la programmation et les données.

Informatique Science Traitement automatique de l’information

Machine automatique

Ordinateur

d’acquérir et de conserver de l’information

(acquisition, stockage) d’effectuer des traitements (calcul)

de restituer les informations stockées (restitution) Permet de lier «information»

Page 5: cours ADo chap1 - Faculté des Sciences · L’architecture de Von Neumann fait référence à un cadre général que devraient suivre le matériel, la programmation et les données.

performance d’ensemble et facilité de programmation.

Architecture

Une architecture est ce qui constitue l'ossature, les éléments essentiels d'une œuvre.

Le mot « Structure », selon la définition donnée par le dictionnaire LAROUSSE, désigne

La constitution, disposition et assemblage des éléments qui constituent l’ossature d’un bâtiment, une carrosserie, ...

L’architecture d’un ordinateur

Elle Constitue la représentation de ses composants et de leurs interconnexions du transistor aux unités les plus complexes.

C’est l’organisation des divers éléments constitutifs d'un système informatique, en vue d'optimiser la conception de l'ensemble pour un usage déterminé.

Les ordinateurs sont plus complexes, plus rapides, de différentes dimensions (micro, mini . . . ), mais leur architecture interne reste organisée de façon, souvent, similaire.

Le choix d’une architecture est toujours le résultat d’un compromis entre :

performance et coût, efficacité et facilité de construction,

Page 6: cours ADo chap1 - Faculté des Sciences · L’architecture de Von Neumann fait référence à un cadre général que devraient suivre le matériel, la programmation et les données.

flux d’instructions unique, flux de données unique. Toutes les machines qui possèdent un seul processeur sont des SISD.

Un ordinateur est une machine de traitement de l’information : donc il est composé de deux principaux constituants:

la Mémoire qui permet de stocker l’information,

le processeur qui se charge du traitement de ces informations.Les informations traitées par l'informatique sont de différentes natures : des nombres, du texte, des sons, des images, des vidéos etc.

mais aussi les instructions des programmes informatiques qui traitent tous ces types d'informations.

Basée sur la notion de flots d’informations, elle classifie les machines en 04 types :

plusieurs flux de données, plusieurs flux d’instructions.

plusieurs flux d’instructions, flux de données unique.

flux d’instructions unique, plusieurs flux de données.

La taxonomie de FLYNN

L’architecture MIMD "Multiple Instruction Multiple Datastream"

L’architecture MISD "Multiple Instruction Single Data"

L’architecture SIMD "Single Instruction Multiple Datastream"

L’architecture SISD "Single Instruction Single Datastream" :

Exemple : Les systèmes répartis ou les réseaux.

Exemple : Ordinateurs pour les traitements scientifiques "parallélisme réel".Aucune machine n’a été commercialisée.

Exemple : ILLIAC5 de DARPA.

L’architecture de VON NEUMANN est une architecture SISD.

Page 7: cours ADo chap1 - Faculté des Sciences · L’architecture de Von Neumann fait référence à un cadre général que devraient suivre le matériel, la programmation et les données.

ORDINATEUR

CIRCUIT COMBINATOIRE

SYNCHRONE ASYNCHRONE

TRANSISTOR

CIRCUIT SEQUENTIEL

BLOC FONCTIONNEL

UNITE FONCTIONNEL

CIRCUIT LOGIQUE

PORTE LOGIQUE

Opérateur arithmétiquesCodeur et décodeurMultiplexeur et Démultiplexeur etTranscodeur

MémoiresCompteurDécompteurAutomate

Unité de traitement, unité de commande, mémoire …

Processeur et mémoire

NOT, AND, OR, NAND, NOR, XOR

Les portes logiques et même les transistors qui composent ces portes sont aux niveaux inférieurs, viennent les circuits logiques de différents types au niveau intermédiaire et enfin on monte aux niveaux supérieurs où on trouve les blocs et les unités fonctionnels.

Pour connaitre l’architecture d’un ordinateur on partira des composant les plus élémentaires jusqu’aux constituants les plus complexes.

Ainsi, on voit apparaître la notion de niveaux hiérarchisés ascendants de contenance.

1.2 Architecture d’un ordinateur

Page 8: cours ADo chap1 - Faculté des Sciences · L’architecture de Von Neumann fait référence à un cadre général que devraient suivre le matériel, la programmation et les données.

Le transistorÀ la suite des travaux sur les semi-conducteurs, le transistor a été inventé le 23 décembre 1947 par les Américains John Bardeen, William Shockley et Walter Brattain, chercheurs des Laboratoires Bell.

Un transistor (contraction de TRANsfer reSISTOR, en français résistance de transfert) est un composant électronique semi-conducteur actif capable de modifier le courant qui le traverse.

La découverte du transistor a permis de remplacer efficacement les tubes électroniques et ainsi de perfectionner la miniaturisation et la fiabilité des circuits électroniques.

Le transistor MOS (Métal Oxyde de Silicium) est le type de transistor majoritairement utilisé pour la conception de circuits dits intégrés.

source (possédant un potentiel quasi-nul),

drain (possédant un potentiel de 5V).

Le transistor MOS est composé de :

deux zones de silicium chargées négativement appelées :

séparées par une région chargée positivement, appelée substrat (substrate).

Le substrat est surmonté d’une électrode de commande, appelée porte (grille ou gate), permettant d’appliquer une tension sur le substrat.

Page 9: cours ADo chap1 - Faculté des Sciences · L’architecture de Von Neumann fait référence à un cadre général que devraient suivre le matériel, la programmation et les données.

Il comporte trois connexions externes :

L’émetteur : qui est relié à la masse (0 volt).

Le collecteur : C’est la sortie du transistor. Il est relié au fil d’où vient la tension Vcc (5 volts de courant continu) de l’alimentation.

La base : Elle constitue la connexion d’entrée. Tout dépend de la tension Ve qui lui est appliquée.

Le transistor agit donc globalement comme un interrupteur programmable grâce à l’électrode de commande :

Le transistor fonctionne comme suit:

Lorsqu’aucune tension n’est appliquée à l’électrode de commande, le substrat chargé positivement agit telle une barrière et empêche les électrons d’aller de la source vers le drain.

Lorsqu’une tension est appliquée à la porte, les charges positives du substrat sont repoussées et il s’établit un canal de communication, chargé négativement, reliant la source au drain.

Si tension appliquée alors interrupteur fermé Sinon interrupteur ouvert.

Page 10: cours ADo chap1 - Faculté des Sciences · L’architecture de Von Neumann fait référence à un cadre général que devraient suivre le matériel, la programmation et les données.

Il existe plusieurs types de portes logiques:

Les portes avec des entrées inversées

Les portes logiques

Les portes logiques sont des circuits qui représentent les fonctions logiques élémentaires (+, . , NOT . . . ).

Les portes logiques à l’exception de l’inverseur NON (une seule entrée) peuvent avoir plus de deux entrées.

Les portes logiques de base

Autres opérateurs

Page 11: cours ADo chap1 - Faculté des Sciences · L’architecture de Von Neumann fait référence à un cadre général que devraient suivre le matériel, la programmation et les données.

Les portes logiques sont conçues à partir de transistors:

La porte NOR : On met deux transistors en parallèle. Si les deux transistors bloquent le passage du courant (Ve = V’e= 0), alors Vs=5V. Dès que l’un laisse passer le courant, on a Vs= 0V. Cette configuration permet de créer la porte NOR.

La porte NON : La configuration du transistor nous permet de créer la porte NON. Si Ve =0V alorsVs =5V et Si Ve =5V alors Vs =0V.

La porte NAND : On met deux transistors en série. Si les deux transistors laissent passer du courant (Ve = V’e= 5V), alors Vs=0V. Dès que l’un bloque le passage du courant, on a Vs= 5V. Avec cette configuration on peut créer la porte NAND.

Les portes AND : A . B = NON (NON(A . B)) ==> On aura besoin d’un transistor pour le NON et 2 pour le NAND.

Les portes OR : A+B = NON(NON(A+B )) ==> On aura besoin d’un transistor pour le NON et 2 pour le NOR.

Page 12: cours ADo chap1 - Faculté des Sciences · L’architecture de Von Neumann fait référence à un cadre général que devraient suivre le matériel, la programmation et les données.

==> Il est Dépourvu de toute capacité de mémorisation.

Les circuits de transcodage: Codeurs, décodeurs et transbordeurs.

Les circuits logiques

Un circuit logique est un composant électronique qui traite et exécute des opérations logiques (booléennes).

Ils sont construits à partir de portes logiques.

Il existe deux types de circuits logiques:

Combinatoires :

Un circuit logique est dit combinatoire si l'état de ses sorties ne dépend que de l'état de ses entrées.

Les circuits combinatoires réalisent les fonctions booléennes.

Il existe 3 types de circuits combinatoires:

Les circuits arithmétiques: additionneur, soustracteur, multiplieur, diviseur, comparateur.

Les circuits d’aiguillage: multiplexeur, démultiplexeur.

Page 13: cours ADo chap1 - Faculté des Sciences · L’architecture de Von Neumann fait référence à un cadre général que devraient suivre le matériel, la programmation et les données.

Les circuits séquentiels permettent de stocker une information au cours du temps et sont, donc, l’élément principal des mémoires.

Ils servent à concevoir:

Séquentiels :

Un circuit logique est dit séquentiel si l’état courant de ses sorties dépend des entrées mais également des valeurs antérieures des sorties.

Le temps est donc un paramètre des circuits séquentiels.

La majorité des circuits séquentiels sont réalisés à partir de circuits séquentiels appelés bascules.

Les circuits séquentiels peuvent être synchrones ou asynchrones.

les registres, les mémoires, les automates, les compteurs, les décompteurs, ...

Page 14: cours ADo chap1 - Faculté des Sciences · L’architecture de Von Neumann fait référence à un cadre général que devraient suivre le matériel, la programmation et les données.

Les unités fonctionnelles

Elles sont conçues à partir de circuits logiques.

Il s’agit d’un séquenceur pour contrôler les composants nécessaires à l’exécution de l’instruction en cours.

Elle exécute les instructions de types arithmétique et logiques, les comparaisons, etc...

Ce sont des mémoires locales au processeur, rapides et de petites tailles.

Il permet de déterminer le type d’instruction (addition, soustraction, . . . ),

C’est un registre spécial qui contient l’adresse de l’instruction en mémoire.

Parmi les unités fonctionnels d’un ordinateur, on peut citer:

Unité de commande :

Unité arithmétique et logique (UAL ou ALU) :

Compteur ordinal :

Décodeur :

Registres :

Elle est conçue principalement d’un automate.

Elle est conçue principalement de circuits combinatoires: additionneur, multiplicateur, comparateur, …

Ils servent à sauvegarder l’instruction en cours d’exécution, les données manipulées et les résultats intermédiaires.

Page 15: cours ADo chap1 - Faculté des Sciences · L’architecture de Von Neumann fait référence à un cadre général que devraient suivre le matériel, la programmation et les données.

Les blocs fonctionnels

L’architecture d’un ordinateur constitue la représentation de ses unités fonctionnelles et de leurs interconnexions.

Les deux unités fonctionnelles principales d’un ordinateur, à base de transistors, sont :

La mémoire centrale:

C’est un ensemble d’emplacements appelés mots mémoire (chaque mot est, généralement, sur 1 octet).

Chaque mot a une adresse

==> La taille de la mémoire = Nombre d’adresses * taille mot.

Elle est exprimée en octets (actuellement en giga octets).

Physiquement les instructions et les données d’un programme sont chargées et stockées dans la mémoire centrale avant leur exécution.

mot0mot1mot2

.

.

.

.motn-1

@0

@1

@2

.

.

.

.@n-1

Mot mémoire

Page 16: cours ADo chap1 - Faculté des Sciences · L’architecture de Von Neumann fait référence à un cadre général que devraient suivre le matériel, la programmation et les données.

Le processeur :

Un programme écrit dans un langage de haut niveau, sera converti, avant son exécution, en un code qui utilise un nombre restreint d’opérations élémentaires, en langage binaire exécutable directement par le processeur.

Cet ensemble d’opérations est appelé jeu d’instructions ou (Instruction Set Architecture : ISA).

Le processeur traite l’information en exécutant des instructions sur des données.

Ces données sont déplacées d’un point à l’autre du processeur via un chemin de données.

Le processeur accède aux instructions et aux données chargées en mémoire par un ensemble de liens électriques passifs appelés BUS.

C'est simplement un ensemble de n fils conducteurs, utilisés pour transporter n signaux binaires.

Ce bus peut être divisé en trois sous-bus spécialisés : bus de données, bus de commandes et bus d’adresses.

Page 17: cours ADo chap1 - Faculté des Sciences · L’architecture de Von Neumann fait référence à un cadre général que devraient suivre le matériel, la programmation et les données.

La mémoire centrale et les éléments du processeur sont cadencés par une horloge.

Un ordinateurs contient d’autres blocs fonctionnels :

Dispositifs d’entrée: clavier, souris, scanner, capteur, …

Dispositifs de sortie: écran, imprimante, table traçante …

Unité de stockage: Disque dur, disque optique …

Elle constitue une référence commune à ces différents composants.

Page 18: cours ADo chap1 - Faculté des Sciences · L’architecture de Von Neumann fait référence à un cadre général que devraient suivre le matériel, la programmation et les données.

Ils sont essentiellement des emplacements de stockage temporaires qui stockent les adresses des instructions à exécuter.

2. La machine de Von Neumann et la machine Harvard

Il existe deux types d'architectures informatiques qui décrivent la fonctionnalité et la mise en œuvre des systèmes informatiques:2.1 Architecture de Von NeumannL’architecture de Von Neumann fait référence à un cadre général que devraient suivre le matériel, la programmation et les données.

Elle a été conçue à la fin des années 1940 par le physicien et mathématicien John Von Neumann.

Elle constitue la base de l'informatique moderne et est plus facile à mettre en œuvre. 

C’est une conception théorique basée sur le concept de stockage des instructions et des données qu’elles manipulent dans la même mémoire.

L’architecture de Von Neumann comprend trois composants distincts:

Une unité centrale de traitement (CPU) ou Processeur (P):

Elle est le cœur du système informatique et comprend trois composants principaux:

L’ unité arithmétique et logique (ALU):

L’unité de contrôle (CU):

Elle est responsable de l'exécution de toutes les opérations arithmétiques et logiques sur les données.

Elle détermine l'ordre de flux des instructions devant être exécutées dans les programmes en envoyant des signaux de contrôle au matériel.

Les registres:

Page 19: cours ADo chap1 - Faculté des Sciences · L’architecture de Von Neumann fait référence à un cadre général que devraient suivre le matériel, la programmation et les données.

Le processeur P est relié à la mémoire M par un bus B:

Une unité de mémoire (M):

Elle est utilisée pour stocker les données de programme et les instructions.

Il existe au moins 03 méthodes pour installer un tel dispositif :

Des interfaces d'entrée/sortie (E/S):

Les machines de base de Von Neumann, qu'on a décrit ne présentait aucun intérêt sans au moins un dispositif d'entrée/sortie permettant une communication avec l’extérieur

==> l’architecture compte des interfaces d’entrées/sorties qui permettent aux utilisateurs de communiquer avec le monde extérieur, tels que les périphériques de stockage …

Interface connectée au bus commun :

le choix de l'adresse indique si P s'adresse à M ou à l’interface.

la communication entre P et l'interface se fait moyennant des registres spécialisés.

un fil spécialisé du bus indique si le processeur s'adresse à la mémoire ou à l'interface d’entrée/sortie.

Interface vue par le processeur comme une partie de la mémoire :

Interface directement reliée au processeur :

Page 20: cours ADo chap1 - Faculté des Sciences · L’architecture de Von Neumann fait référence à un cadre général que devraient suivre le matériel, la programmation et les données.

On constate que la rapidité du processeur P sera limitée par l'élément le plus lent

L’inconvénient de cette architecture est qu’elle est exposée aux goulots d'étranglement ainsi les performances du système sont affectées.

==> pourquoi fabriquer un processeur très rapide, s'il interagit avec des composants lents connectés sur le même bus?

Dans l'architecture Von Neumann, l'unité de traitement aurait besoin de deux cycles d'horloge pour terminer une instruction:

Le processeur extrait l'instruction de la mémoire au cours du premier cycle et la décode,

puis les données sont extraites de la mémoire au cours du deuxième cycle.

Etant donné que les instructions et les données utilisent le même système de bus dans l'architecture Von Neumann, la conception et le développement de l'unité de contrôle sont simplifiés, ce qui permet de réduire les coûts de production au minimum.

Page 21: cours ADo chap1 - Faculté des Sciences · L’architecture de Von Neumann fait référence à un cadre général que devraient suivre le matériel, la programmation et les données.

C’est l’architecture du premier ordinateur Harvard Mark I : On utilisait le stockage d'instructions sur des bandes perforées et celui des données dans des compteurs électromécaniques.

2.2 Architecture Harvard

Chaque mémoire est accessible par un bus différent

On permettait à la fois les accès aux données, les transferts et les extractions d’instructions.

L’architecture de Harvard dispose d’un espace mémoire séparé pour les données et les instructions.

L’idée de cette architecture est de scinder la mémoire en deux parties: l’une pour les données (Md)

et l’autre pour les programmes (Mi).Bi pour les instructions

et Bd pour les données:

==> Accès simultané aux instructions et aux données

==> Augmentation du flux d'informations.

Page 22: cours ADo chap1 - Faculté des Sciences · L’architecture de Von Neumann fait référence à un cadre général que devraient suivre le matériel, la programmation et les données.

Elle est utilisée dans les microcontrôleurs et le traitement des signaux numériques (DSP: Digital Signal Processing).

Dans l'architecture de Harvard, l'unité de traitement peut exécuter une instruction en un cycle si des stratégies de traitement appropriées sont mises en place.

Le développement d’une unité de contrôle dans l’architecture de Harvard est plus coûteux que celui de Von Neumann en raison de l’architecture complexe qui utilise deux bus pour les instructions et les données.

L'avantage de cette architecture est qu'elle supprime le goulot d'étranglement créé par la machine de Von Neumann.