• Aucun résultat trouvé

Sixièe aie Év

N/A
N/A
Protected

Academic year: 2022

Partager "Sixièe aie Év"

Copied!
10
0
0

Texte intégral

(1)

Évolution

(2)
(3)

Évolution des miroproesseurs Intel

Pouraborderl'étuded'uneentité,queesoitelledemiroproesseurouden'importequelle

autre,onatoujoursintérêtàonsidérerenpremierlaplussimpleinstanepossibleenseplaçant

dansunevisiondynamiquepouraborderensuitelesaméliorationspuislederniermodèledispo-

nible(qui nedurera,detoutesfaçons, qu'untempstrès restreint)aumomentdelaoneption

deequel'onveut.

Defaçonàpouvoirmanipulerlemiroproesseurquenousavonsprisenexemple,nousavons

hoisileplusaniendesmiroproesseursenorefailementdisponible.

Ce miroproesseur peut déjà apparaître d'une grande omplexité. Nous allons don dire

quelquesmotssurlesmiroproesseursantérieurs,dupointdevuedelaprogrammation.

(4)

25.1 Le tout premier miroproesseur : le 4004

Apparition.- Le tout premier miroproesseurde l'histoireapparaît en 1971 : il s'agit du4004

d'Intel, omme nousl'avons déjàvu. Il est destiné àaméliorerla oneptiondes alulettes et

nondesordinateurs.

Lebusestde4bits, adenéà740KHz.

Mémoires.- Il peut aéder àtrois typesde mémoire : une pourles programmes, une pourles

donnéesetunepourlapile.

La mémoire pour le programme a une apaité pouvant atteindre un KiO (plaée en

ROM).LesinstrutionsonditionnellesnepeuventtravaillerquedanslabanquedeROM

enours(de256otets).Lessauts inonditionnelsetlessautsauxsous-routinespeuvent

parontre hoisiruneadressequelonquedelamémoirepourleprogramme.

La mémoire pour les données (en RAM) est limitée à 640 otets. L'aès s'eetue de

lamême façonquepourlesentrées-sorties.On utilisetout d'abord, uneinstrution SRC

(pourl'anglaisSeaRCh)pourspéier aumiroproesseuràqueltypedemémoireilfaut

aéder(ROMouRAM)puisdesinstrutionsWRM(pourl'anglaisWRiteMemory) etRDM

(pourl'anglaisReaDMemory)permettantdetransférerdesdonnéesdel'aumulateurà

lamémoireoudelamémoiredansl'aumulateur.

Lapileestinterneaumiroproesseur,onstituéedetroisregistresde12bitshaun.

Interruptions.-Iln'y enapassurlepremiermiroproesseur.

Portsd'entrée-sortie.-Ilya16portsd'entréede 4bits haunet 16portsde sortie,également

de4bits haun.

Registres.- Ilya21registresdequatretypesdiérents:

Leompteurdeprogramme(PC) estunregistrede12bits.

Il y a trois registres de pile, de 12 bits haun, e qui est susant pour avoir trois

sous-routinesemboîtéeslesunesdanslesautres.Chaque appelàunesous-routinestoke

l'adresse de retour dans undes registres de pile. Les ontenus de l'aumulateur et des

registresd'indexnesontpassauvegardés.

L'aumulateurest unregistrede4bits.Ilest prinipalementutilisé pourlesopérations

logiqueset arithmétiques ainsi que pour laleture et l'éritureen mémoireRAM et sur

lesportsd'entrée-sortie.

Lemiroproesseurpossèdeenn 16registres d'index de4bits,qui peuventtravailler

enpairepourformer8registresde8bits.

(5)

Jeud'instrutions.-Le4004possède46instrutions:

desinstrutionsdetransfertdedonnées;

desinstrutionsarithmétiques:addition,soustration,inrémentationetdérémentation;

desinstrutionslogiquesetderotation;

desinstrutionsdeontrle:sautonditionnel(limitéàlaROMenours),inonditionnel,

appeldeproédureet retourd'uneproédure;

desinstrutionsd'entrée-sortie;

quelquesautresinstrutions:opérationssurl'indiateurdedébordement,ajustementdé-

imal,et.

Uneinstrutionestodéesurunoudeuxotets.

Modesd'adressage.Onpeutdistinguerlesadressages:

deregistre(de4bits)ouimpliite;

diretenmémoire;

indiretparregistre(uniquementpouraéderàlaROMenours);

immédiat(donnéesde4ou8bits).

(6)

25.2 Le 8008

Présentation.-Lepremiermiroproesseur8bitssortinqmoisaprèslepremiermiroproesseur,

en1972.Ilestadenéà500KHzouà800KHz,donmoinsrapide(eninstrutionsparseonde)

quelemiroproesseur4bits.Lesapportsparrapportau4004sontlessuivants:

unbusde8bitsaulieude4bits;

supportde16KiOdemémoire(ROM etRAM)aulieu demoinsde5KiO;

7niveauxdepile aulieu de3;

l'apparitiondesinterruptions.

Parontrel'aèsdiretàlamémoireadisparu:ilfautd'abordstokerunotetdanslesregistres

Het Lpuisaéderàlamémoiredefaçonindirete.Cet inonvénientdisparaîtraavele8080.

Mémoires.-Onpeuttoujoursaéderàtroistypesdemémoires,maisleprogrammeetlesdonnées

oupentlemêmeespaemémoirequipeutatteindreunKiO:

Le programme peut être plaé n'importe où dans ette mémoire partagée. Les sauts,

inonditionnelsouonditionnels,etlesappelsauxsous-routinesutilisentdesadressessur

14bits(enfaitsur16bitsdontlesdeuxdeplusfortpoidssontignorés).

On utilise des adresses sur 14 bits pour les données an de pouvoir aéder à toute la

mémoire.

Lapileestonstituéedeseptregistres(aulieudetrois)de14bitshaun.

Les64premiersbitsdelapagemémoire0peuventêtreréservéspourlesveteursd'interruption

(instrutionsRST).

Interruptions.- Le miroproesseur possède des interruptions, non masquables. Lorsqu'une de-

mande d'interruption apparaît,le miroproesseur hargeune instrutiondepuis lebus,en gé-

néralunedesinstrutionssuivantes:

unedes8instrutionsRST(RST0-RST7).Lemiroproesseursauvegardealorsleomp-

teurdeprogrammedanslapileeteetueunsautàl'emplaementmémoire

N ∗ 8

(où

N

estunnombrede3bits,de0à7,fourniparl'instrutionRST).

uneinstrutionCALL(de3otets).Lemiroproesseurappellealorslasous-routinedont

l'adresseestspéiéeparledeuxièmeetletroisièmeotetdel'instrution.

Portsd'entrée-sortie.-Ilya8portsd'entréeet24ports desortie.

(7)

Registres.-Ilyamaintenant16registres,deinqtypesdiérents:

Leompteurde programme(PC) estunregistrede14bits.

L'aumulateur, ouregistreA, est unregistre de8 bitsutilisé pourles opérationsarith-

métiques,logiques,d'entrée-sortie,dehargementet destokage.

Ilyasixregistres de données,de8bitshaun:

LesquatreregistresB,C,DetEsontutiliséspourdesstokagestemporaires.

LesregistresH(pourHigh)etL(pourLow)peuventêtreutilisésensemblepourobtenir

un registreHLde 16 bits. Le registreHL ontienten généralun pointeur dedonnées

utilisé pourfaire référeneàuneadressemémoire. Danse as,le registreL ontient

l'otetdepoidsfaibleetles2bitsdepoidsfortduregistreHsontignorés.

Ily aseptregistres de pile, de14 bits haun, e qui est susantpouravoirsept sous-

routinesemboîtéeslesunesdanslesautres.

Leregistre des indiateursontientquatre indiateursd'unbit haun :Signe, Zéro,

Paritéet Report(Carryenanglais).

Jeud'instrutions.-Le8008possède48instrutions:

desinstrutionsdetransfertdedonnées;

desinstrutionsarithmétiques:addition,soustration,inrémentationetdérémentation;

desinstrutionslogiques:and,or,xor,omparaisonetrotation;

desinstrutionsdeontrle:sautonditionnel,inonditionnel,appeldeproédure,retour

d'uneproédureetredémarrage;

desinstrutionsd'entrée-sortie;

quelquesautresinstrutions,donthalt.

Uneinstrutionestodéesurun,deuxoutroisotets.

Modesd'adressage.Onpeutdistinguerlesmodesd'adressage:

deregistreouimpliite;

indiretparregistre:l'instrutionspéieleregistreHL,quiontientl'adressedeladon-

née;

immédiat.

(8)

25.3 Le 8080

Présentation.- En1974sortle suesseurdu8008, appelé 8080.Pourfailiterlatransitionave

l'anien miroproesseur, Intel déide que les programmes érits en langage mahine du 8008

doivent pouvoirêtreexéutés surle nouveaumiroproesseur : il s'agitdu fameux prinipede

ompatibilité asendanteadopté parIntel et toujoursàl'ordre dujour, e qui pose quelquefois

des problèmesmais ave des avantages qui l'emportentapparemmentdans lebilan global. Les

améliorationssontlessuivantes:

supporte64KiOdemémoire;

lapile se trouvemaintenant dans l'espaemémoire partagé et n'est donplus limitée à

septniveaux;

lenombredeportsd'entrée-sortieest portéà256;

lejeu d'instrutionsestaugmentéetonretrouvel'adressagediret.

Mémoire.- Désormaisle programme, les données et la pile oupent lemême espaemémoire,

quipeutatteindre64KiO:

Le programme peut être plaé n'importe où dans ette mémoire partagée. Les sauts,

inonditionnelsouonditionnels,etlesappelsauxsous-routinesutilisentdesadressessur

16bits(etnonplus14bits),puisque

2 16 = 64

Ki.

Onutilisedesadressessur16bitspourlesdonnées.

Lapileestsituée àlandelamémoireet progresseenarrière.

Interruptions.- Lemiroproesseurale même systèmed'interruptionsquele 8008sauf qu'elles

sontmaintenantmasquables.IlyadonlesdeuxnouvellesinstrutionsEI (pourEnableInter-

rupt)etDI(pourDisable Interrupt).

Portsd'entrée-sortie.-Ilya256portsd'entrée-sortie.

Registres.- Ilyamaintenant10registres,deinqtypesdiérents:

Leompteurde programme(PC) estunregistrede16bits.

L'aumulateur,ouregistreA,estunregistrede8bits.

Six registres généraux, de 8 bits haun, dénommés B, C, D, E, H et L, peuvent être

utilisésenpaireBC,DEet HLpourobtenirdesregistresde16bits.

Leregistre de pilede16bitsest toujoursinrémentéoudérémenté de2.

Le registre des indiateursest maintenantunregistre de8 bits dont inq seulement

sontutilisés:enplusdesindiateursdeSigne,deZéro,deParitéetdeReport(Carryen

anglais)du8008,ilyamaintenantl'indiateurAuxiliaire.

Jeud'instrutions.-Le 8080possède,outre lesinstrutionsdu8008, quelquesinstrutionsnou-

vellesomme le positionnement et l'eaement des indiateurs,l'ativation et la désativation

desinterruptionset lesopérationssurlapile.

Modesd'adressage.L'adressagediretestrétabli,pourdesdonnéesde8oude16bits.

(9)

25.4 Le 8085

Présentation.-En 1976 sortlesuesseurdu8080, appelé 8085,plusrapidequele préédentet

aveunjeu d'instrutionsétendubienquenondoumenté.

Interruptions.-Lemiroproesseurpossèdemaintenantinqbrohesd'interruptions,aulieud'une

préédemment.Nouslesprésentonsi-dessousdansl'ordredepriorité,delaplusbasseàlaplus

haute:

L'interruptionINTRorrespondàl'interruptiondu8080avelaquelleelleestompatible.

RST5.5 orrespond à une interruption masquable. Lorsqu'un signal apparaît sur ette

brohe, le miroproesseur sauvegarde le ontenu du registre PC dans la pile et va à

l'instrutiond'adresse2Ch.

RST6.5 orrespond à une interruption masquable. Lorsqu'un signal apparaît sur ette

brohe, le miroproesseur sauvegarde le ontenu du registre PC dans la pile et va à

l'instrutiond'adresse34h.

RST7.5 orrespond à une interruption masquable. Lorsqu'un signal apparaît sur ette

brohe, le miroproesseur sauvegarde le ontenu du registre PC dans la pile et va à

l'instrutiond'adresse3Ch.

Traporrespond àune interruptionnon masquable. Lorsqu'unsignalapparaît surette

brohe, le miroproesseur sauvegarde le ontenu du registre PC dans la pile et va à

l'instrutiond'adresse24h.

Lesinstrutionsmasquablespeuventêtreativéesoudésativées, toutesensembles,enutilisant

lesinstrutionsEI etDI.LesinterruptionsRST5.5, RST6.5etRST7.5peuventêtreativéesou

désativéesindividuellementenutilisantl'instrutionSIM.

(10)

25.5 Historique

25.5.1 Le 4004

Ave unepuissaned'exéution de92600opérationsparseondeàune fréquenemaximale

de740kHz,lei4004estomparableàl'ENIAC, lealulateuréletroniquedévoiléen 1946,qui

oupait167m

2

pourunpoidstotalde30tonnes.

Références

Documents relatifs

l'espace acoustique ( F 1 ,F 2 ), comme la manière dont elles sont représentées dans les cartes perceptuelles de nos simulations. La gure 7.10 montre

Le ompilateur doit traduire un programme soure, érit dans un langage de programmation.. donné, en un

Registres ahés.- Un registre est un élément mémoire inlus dans le miroproesseur..

de mémoire vive et, d'autre part, le transfert d'une valeur d'un registre vers un élément.. de mémoire vive, ou

Nous avons vu, pour l'instant, omment le miroproesseur a aès aux registres et à la mé-..

(pour Integer DIVision), où le dividende de 16 bits (resp. 32 bits) est plaé dans l'aumulateur. AX (resp. AX et DX, e dernier ontenant le mot de poids fort) et le diviseur de 8

Pour une valeur se trouvant à l'adresse (de mémoire vive) désignée par le ontenu d'uno. registre (de seize bits, puisque 'est la taille du déplaement), on indique le nom de

Jusqu'à maintenant nous avons érit des programmes soit dans un langage évolué (omme le. langage C, Pasal,...), soit dans un