You are on page 1of 4

Informatique industrielle

SSI

Structure matrielle des systmes microprocesseur


Les structures matrielles des systmes de traitement de linformation sont pratiquement toutes organises autour darchitectures base de microprocesseur. Le microprocesseur est n en 1972 du dveloppement de la technologie des semiconducteurs Le principal intrt du microprocesseur est sa polyvalence : Il suffit simplement de changer le programme pour raliser des tches diffrentes . Cest un gros avantage par rapport la technologie cble , donc fige : pour changer un cycle dans une chaine de production technologie cble, il fallait changer la (ou les) carte(s) lectronique(s) ! Gain au niveau du cot, de la maintenance (plus fiable car moins de composants = moins de risques de pannes ) de lvolutivit, gain de temps norme au niveau de la conception des systmes (cest plus rapide de faire un programme que de concevoir des cartes lectroniques ) Le 21me sicle est lre du numrique (informatique, robotique, domotique) grce aux microprocesseurs ! Structure dun systme microprocesseur :

Le systme microprocesseur est constitu de plusieurs lments monts sur une carte de circuit imprim : le processeur excute les oprations logiques ou arithmtiques qui permettent de calculer les donnes de sorties partir des donnes dentres, la mmoire stocke le programme, ainsi que toutes les donnes ncessaires au traitement, les bus sont les liaisons lectriques qui vhiculent les informations entre les diffrents composants du systme lectronique. Bus de donnes : cest sur ces lignes que circulent les donnes du programme . Exemple sur un
bus de donnes de 8bits = 8 fils on fera ciculer quun octet la fois . Il est BI-DIRECTIONNEL

Lyce Louis Payen

Informatique industrielle

SSI

Bus dadresse :
Il est parcouru par des informations qui permettent de localiser le ou les botiers concernspar lchange dinformation. On parle alors de ladresse de linformation. Il est UNIDIRECTIONNEL (le microprocesseur impose sa valeur), il transporte une adresse produite par le microprocesseur. Cette adresse spcifie lorigine ou la destination des donnes qui transitent. Pour un bus de 16 bits, le microprocesseur peut accder 2^16 = 65 535 adresses diffrentes. Un seul composant (ROM,RAM )est slectionn ( par son adresse) la fois. Le dcodage du bus dadresse permet de valider le composant slectionn. (Rle du dcodeur dadresse)

Bus de contrle :
Cest un ensemble de lignes relativement indpendantes qui permettent de : - synchroniser le systme : Horloge - raliser linitialisation de lunit centrale (Reset) - contrler les changes (lecture, criture) - provoquer des excutions de programmes particuliers (interruptions)

linterface dentres et sorties, parallle ou srie, permet de communiquer avec les priphriques extrieurs au systme, lhorloge quartz donne la cadence, par des impulsions lectriques qui synchronisent le systme. Voici larchitecture dun (petit) microprocesseur (famille motorola 68XX) :

Le microprocesseur est compos :

Dune unit arithmtique et logique qui effectue les oprations (UAL) : addition, soustraction, oprations logique (OU, ET, NON , OU exclusif) Des registres et accumulateurs qui permettent de stocker les donnes Dune unit de contrle qui lit squentiellement les instructions et gnre les signaux de commande.
Un microprocesseur est toujours associe de la mmoire avec qui il communique grce au bus dadresse et de donnes. Cest dans la mmoire que se trouve le programme excuter.

Lyce Louis Payen

Informatique industrielle

SSI

Le microprocesseur vient chercher ses instruction dans une mmoire programme o le programme est rang sous forme dune suite dinstructions codes en binaire. Les instructions quil doit excuter sont lmentaires : -lire ou crire dans la mmoire de donnes, -lire des entres, crire des sorties, -tester des tats logiques, -effectuer des oprations logiques de base ( ET, OU, NON, OU exclusif) -effectuer les principales oprations arithmtiques (+, -, ., /) -transfert des donnes Le microprocesseur travaille sur des mots binaires, toutes les informations sont codes en binaire. Gnralement les mots ont une longueur de 8,16, 32 bits. Exemple dinstructions en langage assembleur pour microcontrleur 68HC11 : LDAA $1000 ADDA #2 STAA $1001 JSR affichage Charger le contenu de ladresse $1000 dans laccumulateur A A = A+2 Stocker A dans case mmoire adresse $1001 Aller au sous programme affichage

Les registres internes : Les registres peuvent tre plus ou moins nombreux dans le microprocesseur Un grand nombre de registres permet un maximum du traitement des donnes lintrieur de lunit centrale. On vite ainsi de nombreux accs du processeur la mmoire externe pour stocker et lire des donnes intermdiaires de calcul. Le temps de traitement se trouve ainsi acclr. (note : dans les processeurs type pentium on trouve ce quon appelle de la mmoire cache qui travaille la mme vitesse que le processeur et sert de tampon entre la mmoire externe et les registres internes) Un minimum de registres internes est indispensable au fonctionnement de lunit centrale et est ncessaire la programmation :

Le registre indicateur CC contient des indications sur le rsultat aprs chaque traitement de lunit arithmtique et logique. Il est modifi automatiquement par lunit arithmtique et logique quand elle effectue une opration.

Lyce Louis Payen

Informatique industrielle - Le bit de zro Z est mis un quand le rsultat de lopration est zro, - Le bit ngatif N est mis un quand le rsultat de lopration est ngatif, - Le bit de retenue C est mis un quand le rsultat ne peut tenir dans laccumulateur de sortie A (dbordement) - Le bit V (overflow) mis 1 si dpassement de la capacit de codage - Le bit I : masque dinterruption - Le bit H : Half Carry : demi retenue : retenue sur la somme des bits 3.

SSI

Le compteur ordinal PC est le registre qui pointe dans la mmoire ladresse de la prochaine instruction traiter par lunit de commande. Le pointeur de pile SP est le registre qui pointe ladresse du dernier lment de la pile. La pile est utilise pour stocker des donnes intermdiaires ou ladresse de retour des sous programmes. Le registre dindex X est un registre qui pointe ladresse en cours de lecture dans une table de donnes. Note : Les registres CC, PC et SP sont totalement transparent pour le programmeur. Exemple, programme de dcomptage : LDAA $F000 charge A avec le contenu de ladresse $F000 DEBUT : DECA Dcrmente laccumulateur A (A = A-1) BNE DEBUT Branche DEBUT si rsultat opration prcdente <>0 (en fait, linstruction BNE teste le bit Z ) Organisation de lespace mmoire adressable Voici un exemple dorganisation mmoire (les adresses sont donnes en HEXADECIMALE) Le circuit interface E/S occupe 1ko (soit 1024 octets) . Son adresse de base est 0000h et son adresse finale 3FF 3FF(h) = 1023(d) (0 1023 correspond bien 1024octets, soit 1ko, ne pas oublier de compter ladresse 0 !!!) Sachant quon empile au dessus une RAM de 32ko et une EEPROM de 8ko, justifier par calcul les adresses de dbut et fin de chacune des zones. Calculer lespace non utilis. Donner la taille (nombre de bits) du bus dadresses

Correction : RAM 32k, adresse 400h = 1024d . 1024+32*1024= 33792d soit 8400h . La RAM va donc de 400 83FF . (83FFh = 8400h - 1) EEPROM 8ko, adresse base 8400h = 33792d . 33792 + 8*1024 = 41984d soit A400 en hexa. Leeprom occupe donc les adresses 8400h A3FF (A3FF = A400-1) Espace non utilis : 23ko car : FFFF A400 = 5BFF et (5BFF + 1) = 23552 octets soit 23ko (23552/1024 = 23) Le bus dadresse doit tre de 16 bits car 2^16-1 = 65535d = FFFFh.

Lyce Louis Payen

You might also like