Vous êtes sur la page 1sur 8

5/5/12

INTRODUCTION SUR LES SYSTEMES A BASE DE MICROPROCESSEUR

|TouslesCours |introduction.htm |Lessystmesbasedemicroprocesseur|Lemicroprocesseur8086)8088 |Programmationen assembleur | |Lejeudinstructiondu8086/8088 |Lesinterruptions |Linterfaceparallelele8255A |Linterfacesriele8250/16550 | Chapitre1

INTRODUCTIONSURLESSYSTEMESABASEDEMICROPROCESSEUR
I)Architectured'unsystmebasedemicroprocesseur:
Unsystmebasedemicroprocesseurestformdestroislments: UneunitCPU(centralprocessingunit) Unemmoire(ROMetRAM) Desportsd'entres/sorties. Lestroismodulessontinterconnectscommelemontrelafiguresuivanteautourdetroisbus: busdedonnes,busd'adressesetbusdecontrlesetcommandes Bus:Ils'agitdeplusieurspisteslectroniquesquisontreliesaumicroprocesseur.Cesbus assurentlacommunicationinterneetexternedumicroprocesseur.

Lebusdedonnes:c'estunensembledefilsbidirectionnelsquivapermettreletransfertde donnesentrelesdiffrentslmentsdusystme.C'estparcebusquesonttransmiseslesdonnes quidoiventtretraitesparlemicroprocesseur.Al'inverse,c'estgalementparcebusquetransitent lesrsultatsensortiedumicroprocesseur.Autrementdit,touteslesdonnesentrantesetsortantes dumicroprocesseursontvhiculesparlebusdedonnesquifixelalongueurdumotchang aveclammoire. Lebusd'adresses:ilpermetd'adresserunlmentparlemicroprocesseur.ilest unidirectionnel.ildterminelacapacitmaximaled'adressagedusystme,c'estdirelenombre maximumdemotsdelammoireassocie(ex:16bits"adressent"64Kmots). Lebusdecommandesetdecontrle:c'estunbusquipermetdevhiculerlessignauxde contrlesetdecommandestelsquel'horlogelessignauxRd/Wretc...Cebussertcoordonner tousleschangesd'informationsdcritsprcdemment.Ilvhiculedesdonnesquivalidentla mmoireetlesportsd'entres)sorties.Ilintroduitdesdlaisd'attentelorsquedesinformationssont

www.technologuepro.com/microprocesseur/chap1_microprocesseur.htm

1/8

5/5/12

INTRODUCTION SUR LES SYSTEMES A BASE DE MICROPROCESSEUR

envoyesunpriphriquequiprsenteunevitessedetraitementrduite.Lebusdecommandes vitelesconflitsdebuslorsquedeuxlmentscherchentcommuniquerenmmetemps. Remarque: Danscertainscas,lebusdedonnesetlebusd'adressessontmultiplexssurunseulbus. Unelogiqueexternedoitalorseffectuerledmultiplexage. Lammoiresertaurangementdedeuxtypesd'informations: Desdonnes:lesinformationstraiteparlemicroprocesseur. Desinstructions:ensembled'informationscodesquigrel'activitdumicroprocesseur. Remarque: Lammoiremorte(ROM:ReadOnlyMemory)rangeengnralleprogrammed'initialisationdu systme(exempledanslePCellerangeleBIOS:BasicInputOuputsysteme). Lammoirevive(RAM:RandomAxesMemory)sertaurangementdesprogrammesutilisateurs c'estunemmoirevolatile. Lesinterfacesd'entressortiesvontpermettreaumicroprocesseurdecommuniqueraveclemonde extrieur,Noustrouvonsdesportsutilissexclusivementpourl'entre,etd'autresports exclusivementpourlasortie.Ilexisteaussidesportsbidirectionnels.Donclemicroprocesseurpeut liredesdonnespartird'uneinterfaced'entre(exemplesouris,clavierdisquedur,Etc....)de mmeilpeutrestituerlersultatdesontraitementaumondeextrieurenadressentdesinterfaces desortie(telquelesimprimantesleclavieretc....)donclesinterfacesd'entres/sortiesvont soulagerlemicroprocesseurpourlacommunicationaveclemondeextrieur. LemicroprocesseurdoitDonccontrlerlesfonctionseffectuesparlesautresmodules,ildoit chercherainsiquedcoderdesinstructionsrangerenmmoire,etildoitadresserdesinterfaces d'entres/sortiespourliredesdonnesdumondeextrieur,etrestituerlersultatdesontraitement.

II)Architectured'unCPU:
UneCPUestformeparlestroislmentsfonctionnelsinterconnectssuivants: Registres. UAL:Unitarithmtiqueetlogique. Circuitdecontrle. II1)Lesregistres: II11)L'accumulateur: Ils'agitd'unregistred'usagegnralrecevantdesoprandes,desrsultatsintermdiairesou desrsultatsprovenantdel'unitarithmtiqueetlogique.Ilsvitentdesappelsfrquentsla mmoire,rduisantainsilestempsdecalcul.Donclaplupartdesoprationsarithmtiqueset logiquessefontdansl'accumulateur. II12)Lecompteurdeprogramme: Lecompteurdeprogrammecontientl'adresse(dcalageouoffset)del'instructionsuivanteen mmoirequidoittreexcute.Autrementdit,ildoitindiquerauprocesseurlaprochaineinstruction excuter.Leregistrecompteurdeprogrammeestconstammentmodifiaprsl'excutionde

www.technologuepro.com/microprocesseur/chap1_microprocesseur.htm

2/8

5/5/12

INTRODUCTION SUR LES SYSTEMES A BASE DE MICROPROCESSEUR

chaqueinstructionafinqu'ilpointesurl'instructionsuivante.Lesmicroprocesseursdela famillex86dpendententirementduregistrecompteurdeprogrammepourconnatre l'instructionsuivante. II13)Registred'instructionetdcodeurd'instruction: II131)Leregistred'instruction: Chaqueoprationquelemicroprocesseurvaeffectuerestcode(c'estdirepourchaque instructiononassigneuncodequinepeutpastremodifinichangparunautrecode)appel instructioncodeouoprationcode,pourexcuteruneinstructionlemicroprocesseurtransmet l'adressesetrouvantdansleregistrecompteurdeprogrammelammoire,lammoireretourneau microprocesseurl'octetadresseparcedernier(lecodedel'instruction)celuiciserastockerdansun registreappelregistred'instructions(RI),doncLeregistred'instructionscontientlaprochaine instructiontreexcuteparleprocesseur.Cetteinstructionseraachemine(parunbusde donnes)audcodeurd'instructionsquiserachargdel'interprter. II132)Ledcodeurd'instruction: C'estluiquivainterprterl'instructioncontenuedansleregistred'instruction(RI). C'estdirequ'elleestl'oprationeffectuer(Addition,branchementetc...)Etcommentaller chercherlesoprandesrequisespourcetteopration(parexemple,lesnombresadditionner).Le dcodeurd'instructionscommuniquealorsavecl'unitdecommandesetdecontrlesquipourra dclencherlesvnementsenconsquence.Parexemple,siledcodeurd'un8086reoitl'octet 10000001(le"Addmem/regdata"),ilsaitqueleprocesseurdoitallerchercher3autresoctets enmmoirevivepourcomplterl'instruction. II14/Registresd'adresses: Cesregistresserventgrerl'adressagedelammoire.Eneffetleprocesseurpeututiliserun registreouunepairederegistrespouraccderunemplacementmmoire,etpuisquelesregistres peuventtreincrmenteroudcrmenterdonconpeutaccderfacilementdesdonnesqui setrouventenmmoired'unemanireadjacente(telquelestableaux) II15Registred'tat(FLAGS): Leregistred'tatFLAGsertcontenirl'tatdecertainesoprationseffectuesparleprocesseur. Parexemple,quandlersultatd'uneoprationesttropgrandpourtrecontenudansleregistrecible (celuiquidoitcontenirlersultatdel'opration),unbitspcifiqueduregistred'tat(lebitOF)estmis 1pourindiquerledbordement II2)L'unitarithmtiqueetlogique(UAL): Commesonnoml'indique,cetteunitpeutexcuterdeuxtypesd'oprations. Oprationsarithmtiques Ellesincluentl'additionetlasoustractionquisontdesoprationsdebase(unesoustractionest uneadditionaveclecomplmentdeux),lamultiplicationetladivision.Lesdonnestraites sontconsidresdansdesreprsentationsentires. Oprationslogiques Cesoprationssonteffectuesbitbitsurlesbitsdemmepoidsdedeuxmots,telqueET,OU, NOTOUEXCLUSIF,demmelesoprationsderotationetdedcalage(arithmtiqueetlogique) Ellereoitsesoprandes(lesoctetsqu'ellemanipule)dubusdedonnes.Cellescipeuvent provenirderegistresoudelammoire.Alafind'uneopration,l'UALpeutallermodifiercertainsbits

www.technologuepro.com/microprocesseur/chap1_microprocesseur.htm

3/8

5/5/12

INTRODUCTION SUR LES SYSTEMES A BASE DE MICROPROCESSEUR

duregistred'tat (FLAG).Parexemple,danslecasdudbordementd'uneaddition(quelersultatdel'additionest tropgrandpourentrerdansunregistre),l'UALvamettrelebitdedbordementduFLAG1. II3)Unitdecontrleetcommande: Synchroniseparlesignaldel'horloge,c'estellequidclenchelesvnementsdansleprocesseur (onpeutremarquercesujetqu'elleestconnectetouteslesautrescomposantesduprocesseur). Parexemple,quanduneinformationpassedansunbus,cetteinformationestdestineunseul endroit(parexemple,unregistre).C'estdoncl'unitdecommandeetdecontrlequiva "dverrouiller"l'entredecettedestinationpourquel'informationquicirculesurlebuspuissey entrer(etnepasentrerailleursenmmetemps). Ils'agitdoncessentiellementd'unautomateexcutantlesdiffrentessquencespropreschaque instruction.Cetautomatepeuttreralisdeplusieursfaons(cbleroumicroprogrammeretdans lesdeuxcaslejeud'instructionsestfixe).Laplupartdesunitsdetraitementsontmicro programmesetdoncjeuxd'instructionsfixes.

III)Fonctionnementd'unsystmebasedemicroprocesseur:
III1)Lesinterruptions: Lesinterruptionspermettentaumatriel(priphrique)decommuniqueravecle processeur.Danscertainscas,ondsirequeleprocesseurragisserapidementun vnementextrieur:arrived'unpaquetdedonnessuruneconnexionrseau,frapped'un caractreauclavier,modificationdel'heure.Lesinterruptionssontsurtoututilisespourlagestion despriphriquesdel'ordinateur,eneffetlessystmesbasedemicroprocesseurspeuvent comporterplusieurslmentsmatrielstelsquel'cran,leslecteursdeCD,lecteursdeDVD,les ADC(Analogtodigitalconverter)etDAC(digitaltoanalogconverter)etc...maislamajoritdeces priphriquesn'ontbesoindumicroprocesseurqu'certainsmoments.Siunpriphriquencessite uneintervention,ilgnreluimmeunedemanded'interruption. Uneinterruptionestsignaleauprocesseurparunsignallectriquesurunebornespciale.Lorsde larceptiondecesignal,leprocesseur(traite)l'interruptiondslafindel'instructionqu'iltaiten traind'excuter.Letraitementdel'interruptionconsistesoit: l'ignoreretpassernormalementl'instructionsuivante:c'estpossibleuniquementpour certainesinterruptions,nommesinterruptionsmasquables.Ilesteneffetparfoisncessairede pouvoirignorerlesinterruptionspendantuncertaintemps,poureffectuerdestraitementstrs urgentsparexemple.Lorsqueletraitementesttermin,leprocesseurdmasqueles interruptionsetlesprendalorsencompte. excuteruntraitantd'interruption(interrupthandler).Untraitantd'interruptionestun programmequiestappelautomatiquementlorsqu'uneinterruptionsurvient.L'adressededbut dutraitantestdonneparlatabledesvecteursd'interruptions(voirchapitreinterruption). Remarque: Parfoislemicroprocesseurestsollicitparplusieursinterruptionsenmmetemps,pourrpondre cesappelsunordredeprioritestsouventprisencomptepourleurstraitements. Lesinterruptionsaugmententconsidrablementl'efficacitduprocesseur. Lesinterruptionssontdedeuxtypes: *Interruptionmatrielle.

www.technologuepro.com/microprocesseur/chap1_microprocesseur.htm

4/8

5/5/12

INTRODUCTION SUR LES SYSTEMES A BASE DE MICROPROCESSEUR

*Interruptionlogicielle. III2/L'critureenmmoire(WRITE): Pourcrireunedonnedanslammoirelemicroprocesseurdoitplacerl'adressedeladonne surlebusd'adresses(sonemplacementdanslammoire)puisilplaceladonnesurlebusde donnesetenfingnrelesignalWRITE(ordred'crituredanslammoire). III3)Lalecturedelammoire(READ):

Pourlireunedonnedelammoirelemicroprocesseurdoitconnatresonemplacement,eneffetil dposesonadressesurlebusd'adressespuisgnrelesignalREAD(ildemandeuneopration delecturedelammoire)alorsladonneseraachemineverslemicroprocesseurtraverslebus dedonnes.Ladonneserastockedansunregistredanslemicroprocesseur.

www.technologuepro.com/microprocesseur/chap1_microprocesseur.htm

5/8

5/5/12

INTRODUCTION SUR LES SYSTEMES A BASE DE MICROPROCESSEUR

Remarque: Siladonneestuncodeopratoired'uneinstructionalorselleseralogedansleregistre d'instructionssinonelleseralogedansunregistrededonnes(engnrall'accumulateur) III4)WaitStat(tempsd'attentepourlasynchronisation): LeWaitStatn'estqu'untempsd'attentequ'ilfautdonnercertainspriphriquespourterminerleurs oprations(Notammentlammoire),eneffetengnraldanslaplupartdessystmesbasede microprocesseurontrouvetoujoursdescircuitsintermdiairesentrelaCPUetlammoire commelemontrelafiguresuivante:

www.technologuepro.com/microprocesseur/chap1_microprocesseur.htm

6/8

5/5/12

INTRODUCTION SUR LES SYSTEMES A BASE DE MICROPROCESSEUR

Cescircuitsentranenttoujoursdestempsderetardsupplmentairescequiobligele microprocesseurutiliserdesWaitStat(tempsderetard)poursynchroniserlestransfertsentrela mmoireetlaCPU.lafigureprcdentemontrequelemicroprocesseurperdenviron10nspour avoirl'informationcausedudcodageetlabuffrisationdubus. Remarque: Parfoislemicroprocesseurutiliseplusqu'unseulWaitStatpoursynchroniseravecces priphriques(toutdpenddutempsquelepriphriquedemandepouracheverson fonctionnement) III5/Communicationaveclesentres/sorties: Ilpeuts'agird'unfluxd'informationsdel'extrieurversl'ordinateur(Acquisitionvialeclavier,une connexionrseau,undisquedur,etc...),oud'unfluxdel'ordinateurversl'extrieur(cran,rseau, disque,etc...). Lesdonneschangesentreunpriphriqueetleprocesseurtransitentparl'interface(ou contrleur)associcepriphrique.L'interfacepossdedelammoiretamponpourstockerles donneschanges(suivantletyped'interface,cettemmoiretamponfaitde1seuloctet quelquesMgaoctets).L'interfacestockeaussidesinformationspourgrerla communicationaveclepriphrique: desinformationsdecommande,pourdfinirlemodedefonctionnementdel'interface:sensde transfert(entreousortie),modedetransfertdesdonnes(parscrutationouinterruption), etc.Cesinformationsdecommandessontcommuniquesl'interfacelorsdelaphase d'initialisationdecelleci,avantledbutdutransfert.

www.technologuepro.com/microprocesseur/chap1_microprocesseur.htm

7/8

5/5/12

INTRODUCTION SUR LES SYSTEMES A BASE DE MICROPROCESSEUR

desinformationsd'tat,quimmorisentlamaniredontletransfertc'esteffectu (erreurdetransmission,rceptiond'informations,etc).Cesinformationssontdestinesau processeur. Lorsdel'excutiondesinstructionsd'entres/sorties,leprocesseurmet1saborneIO/Met prsentel'adresseE/Ssurlebusd'adresse.LesignalIO/Mindiqueauxcircuitsdedcodage d'adressesqu'ilnes'agitpasd'uneadressenmmoireprincipale,maisdel'adressed'une interfaced'entres/sorties. Remarque: Lacommunicationentrelemicroprocesseuretlesinterfacesd'entres/sortiespeuttresrie (surunseulfilbitparbit)ouparallle(surplusieursfils) III6)Accsdirectlammoire(DMA) Lorsqu'untransfertenmmoireestncessairedelammoireRAMunportd'E/S,laCPUlitle premieroctetenmmoireetlechargedansl'undesregistresdumicroprocesseur.LaCPUcrit ensuitel'octetrangprcdemmentsurleportd'E/Sappropri. Ilenrsultequelemicroprocesseureffectuedesoprationsdelectureetd'criturerptes.Ainsi uncertaintempsestperduentreletraitementdechaqueoctet.Pourremdierceproblme,une procdureestmiseaupointpourl'accsdirectlammoire(DirectMemoryAcess),qui permetdetransfrerdesdonnesdelammoireRAMauportd'E/Ssanspasserparle microprocesseur.Pourcela,uncontrleurDMA,quireprendlerledelaCPU,c'estdirequ'ilgre lestransfertsdelaRAMauxportsd'E/S.

Rvisle:18Jan2009|2009www.technologuepro.com|ValidHTML4.01Transitional

www.technologuepro.com/microprocesseur/chap1_microprocesseur.htm

8/8