AO_ChapitreII.pdf
Document Details
Uploaded by TougherMountRushmore2090
Université Cadi Ayyad, École Supérieure de Technologie - Safi
Related
- PCSII Depression/Anxiety/Strong Emotions 2024 Document
- A Concise History of the World: A New World of Connections (1500-1800)
- Human Bio Test PDF
- University of Santo Tomas Pre-Laboratory Discussion of LA No. 1 PDF
- Vertebrate Pest Management PDF
- Lg 5 International Environmental Laws, Treaties, Protocols, and Conventions
Full Transcript
Chapitre II Le Microprocesseur 8086 Le processeur Intel 8086 L'Intel 8086 est un microprocesseur fabriqué par Intel en 1978. C’est le premier microprocesseur de la famille Intel 80x86 (8086, 80186, 80286, 80386, 80486, Pentium,...) qui est devenue l'architecture de processeur la plus...
Chapitre II Le Microprocesseur 8086 Le processeur Intel 8086 L'Intel 8086 est un microprocesseur fabriqué par Intel en 1978. C’est le premier microprocesseur de la famille Intel 80x86 (8086, 80186, 80286, 80386, 80486, Pentium,...) qui est devenue l'architecture de processeur la plus répandue dans le monde des ordinateurs personnels, stations de travail et serveurs informatiques. Il est basé sur des registres de 16 bits, Il dispose d'un bus externe de données de 16 bits il dispose d'un bus d'adresse de 20 bits, qui lui permet d'adresser 1 Mo. Il intègre 29 000 transistors Le processeur Intel 8086 Le processeur Intel 8086 Description des PINs Vcc et GND assure l’alimentation électrique du microprocesseur. AD15-AD0 : Bus multiplexés:Adresses/Données (ALE = 1: bus d’adresses/ ALE = 0: bus de données) A19/S6-A16/S3 : Bus multiplexés Adresses/Etats M / IO : Indique si l'adresse est une mémoire ou l'adresse E/S, (1:mémoire/ 0: E/S). RD (Read):signal de lecture d'une donnée. WR (Write): Signal d'écriture d'une donnée. ALE (Address latch enable):démultiplexe les bus d’adresses/données: (1:bus d’adresse, 0 bus de données) DT/R (DataTransmit/Receive):bus de données transmet ou reçoit les données DT/R = 1 : données émises par le microprocesseur (écriture) ; DT/R = 0 : données reçues par le microprocesseur (lecture). DEN (Data bus Enable): indique que les données sont en train de circuler sur le bus A/D CLK : entrée destinée à recevoir le signale de l'horloge système, qui cadence le fonctionnement du microprocesseur. INTR: interruption normale NMI : interruption prioritaire:(Non Maskable Interrupt) INTA : Interrupt Acknowledge, indique que le microprocesseur accepte l’interruption Le processeur Intel 8086 Description des PINs READY : synchronise des mémoires et les E/S lents avec le CPU à insertion de périodes d'attente entre les périodes des cycles RESET: un signale de remise à l'état initiale. Ce signale doit rester à l'état haut pendant au moins quatre cycles d'horloge Test : Entrée de mise en attente du microprocesseur d’un évènement extérieur MN/MX: indique dans quel mode le processeur doit fonctionner: minimum/maximum HOLD: entrée de demande d'accès au bus. HLDA: indique que le microprocesseur a pris en compte la demande d'accès au bus. BHE : Bus High Enable,signal de lecture de l’octet de poids fort du bus de Données. S0 à S7: Signaux d'état indiquant le type d'opération sur le bus. Le processeur Intel 8086 L’architecture interne du 8086 Le processeur Intel 8086 L’architecture interne du 8086 L'EU ( Exécution Unit, unité d'exécution): regroupe les fonctions de traitement (unité arithmétique et logique), les registres généraux, le décodeur d'instruction. Elle lit les codes opération dans une file d'attente et les exécute. La file d'attente est alimentée par le BIU qui constitue la deuxième machine. l'UIB (Bus Interface Unit, unité d'interface de bus) : son travail principal est de chercher les instructions en mémoire et de les mettre dans la file d'attente. pendant que l'EU ne demande pas de transfert avec la mémoire , le BIU occupe ce temps libre du bus pour amener les instructions dans la file d'attente. Quand la file d'attente est vide , l'EU attend que le BIU y place une instruction Le processeur Intel 8086 Les types de registres Les données dont le processeur a besoin sont stockées dans des "cases" qu'on appelle des registres. Il existe plusieurs types de registres et chacun a son utilité. Registres généraux ou de travail : Ils servent à manipuler des données, à transférer des paramètres lors de l’appel de fonction et à stocker des résultats intermédiaires. Registres d’adresse ( ou d’offset ou pointeur) : Ils contiennent une valeur représentant un offset à combiner avec une adresse de segment Registres de segment : Ils sont utilisés pour stocker l’adresse de début d’un segment. Il peut s’agir de l’adresse du début des instructions du programme, du début des données ou du début de la pile. Registre de flag : Il contient des bits qui ont chacun un rôle indicateur. Le processeur Intel 8086 Registres généraux (ou de données) Les registres généraux (AX,BX,CX,DX): Utilisés dans les opérations arithmétiques et logiques et E/S. Taille 16 bits, divisée en 2 parties L (pour les 8 bits de poids faible) et H (pour les 8 bits de poids fort). AX (accumulateur): Pour opérations arithmétiques et E/S. BX (registre de base): Pour l’adressage mémoire dans une zone autre que CS (généralement DS). Peut aussi stocker les données. CX (compteur): Pour les instructions de boucles. Peut aussi stocker les données. DX (registre de données): Pour multiplication et division et comme extension de AX. Le processeur Intel 8086 Registres de segments Les registres de segments (CS,SS,DS,ES) , les registres pointeurs (SP,BP,IP) et d’index (SI,DI): contiennent des adresses de cases mémoire. Voici les différents segments : CS (Code Segment) : indique le début du segment du code qui contient les instructions du programme. Les adresses des différentes instructions du programme sont relatives à CS DS (Data Segment) : contient l’adresse du début de segment des données du programme. Qui contient les données traitées par le programme SS (Stack Segment): pointe sur le segment qui représente la pile ES (Extra Segment): Registre segment supplémentaire est utilisé, par défaut, par certaines instructions de copie de bloc. En dehors de ces instructions, le programmeur est libre de l’utiliser comme il l’entend Le processeur Intel 8086 Registres d'adresses SI (indexe source) et DI (indexe destination): Associés à DS (DS:SI ou DS:DI) Adressage comme registre d’index, (par défaut, son offset est relatif à DS). Généralement décalages dans DS pour pointer sur l’opérande source ou destination. BP (Base pointer): il est associé au registre de segment SS (SS :BP) pour accéder aux données de la pile lors d’appels de sous-programmes (CALL). SP (Stack pointer): il est associé au registre de segment SS (SS :SP) pour indiquer le dernier élément de la pile. Le pointeur d'instructions (IP): Ce registre est associé au registre de segment CS (CS :IP) pour indiquer la prochaine instruction à exécuter. Il ne pourra jamais être modifié directement ; il sera modifié indirectement par les instructions de saut, par les sous-programmes et par les interruptions Le processeur Intel 8086 Gestion de la mémoire L'espace mémoire adressable est de taille 1Mo = 220 (20 bits du bus d'adresse) La taille des registres (d’adresse) est de 16 bits donc la possibilité d'adressage est de 216 = 64 Ko (