You are on page 1of 39
Cireuns 4’ ordinsteur 4.2 Les circuits de fa fo es microprocesseurs de Partie 3 Chapitre 4.2.1 page 1 Partie 4 : Circuits imagrés auménques 3/4.2.1 Le microprocesseur 6809 de Motorola Fabricants : Motorola, Fairchild, Gould AMI, Hitachi, Thomson-CSF 3/4.2.1.1 Généralités Le microprocesseur 6809 de Motorola est un processeur 8 bits de haute gamme, dont l’organisation interne est orientée 16 bits. Ul permet un adressage mémoire de 64 kiloOctets griice a ses 16 lignes adresse. Il existe deux versions de ce processeur, le 6809 et le 6809E. Leur brochage différe ainsi que leurs signaux mais leur jeu d’instruction est identique. Il posséde deux accumulateurs A et B de 8 bits qui peuvent étre concaténés en un accumulateur D de 16 bits, deux registres X et Y dits d’index (16 bits), deux regisires U ec $ pour Ja gestion des piles utilisateur et systéme, un pointeur de page DP (8 bits) servant a adressage direct de la mémoire et un regisire d’état CC (8 bits). Le role de tous ces registres sera présenté plus loin. Il posside 9 modes d’acressage se complétant et permettant ainsi au programmeur d’optimiser ses routines personnelles. — L’adressage inhérent — Ladressage immédiat — L’adressage direct — Ladressage étendu — Ltadressage étendu indirect 2 Complémens 5.2 Les circuits de a fomile ie 3 Chapitre 4.2.1 page Cirouits d'ordinateur Partie 4 Circuits intégess numériquas ‘es mieroprocessaurs dela série BBXX Description des signaux — Ladressage relatif court — Liadressage relatif long — Liadressage indesé — Ladressage indexé indirect. 3/4.2.1.2 Organisation du 6809 Le microprocesseur, fabriqué en technologie MOS Canal N. com- porte 40 broches et est du type mono-tension (5 V), Haun cycle d’horloge interne de 2 MHz (Fréquence externe divi- sée par 4) ; il posséde trois bus indépendants : — bus de données sur 8 bits — bus d’adresses sur 16 bits —— bus de contréle de 10 bits pour le 6809 et de 12 bits pour le 6809E. Le bus de donnée (D0-D7) est totalement bidirectionne! et chaque sortie peux piloter l"équivalent de 8 charges TTL. Ces sorties sont du type trois états et Pinversion du mode entre/sortie est assurée 4 Vintérieur d’un seul cycle. Le bus d’adresse (A0-A15) est unidirectionnel, peut piloter 8 char- ges TTL et est en logique trois états. Le bus de contrdie comporte des signaux eommuans aun deux ver- sions de 6809 ; ce sont les suivant Le signal lecture-écriture R/W (read, write) détermine le sens dur transfert des données. Lorsque R/W = 1, le 6809 fait sne lecture ; les données entrent. Lorsque R/W = 0, le 6809 fait une éeriture ; les données sortent du 6809. Les lignes d'état du bus BA (bus available) et BS (bus state) rensei- gnent les périphériques du 6809 sur la disponibilité des bus den- nées et adresses dans le cas d'applications du type accés direct mémoire (DMA - Direct Memory Acces). Cireuns o'ordinateur 42 Les circuite de fa fale rocesseurs de In rene SEX dos on Signaux de contrdle du 6809E Conclusion Portie 4 : Circuits intégrés numériques Les sorties E et Q sont des horioges destinges aux périphériques du 6809. Elles sont en quadrature de phase. L'entrée meémoire préte (MRDY — Memory ReaDY) permet Pallor gement d'un cycle d’horloge E par fraction de quart de cycle jusqu’a 1ys. Cela autorise ainsi les mémoires a temps d’accés long. L’entrée accés direct mémoire (DMA/BREQ) suspend le fonction- nement du 6809, permettant ainsi la liberation des bus pour des péri- phériques intelligents ou un rafraichissement de mémoires dyna- miques. Les broches Ein et Qin sont les entrées d’horloge de 6809E:. Ces deux signaux doivent étre en quadrature. La broche de contrdle des trois états bus (TSC - Three State Control} Joue le méme réle que DMA/BREQ pour le 6809 et offre les mémes possibilités. Le signal d’indication de dernier cycle (LIC - Last Instruction Cycle) est 4 état haut (LIC = 1) a chaque fois que le microprocesseur exécute le dernier cycle machine dune instruction. Done lorsqu’il revient a l'état bas, le 6809E effectue une lecture du premier code opératoire de Pinstruction suivante. Le signal de prévention d’aceés mémoire (AVMA - Advanced Valid Memory Address) nous prévient en passant a l’éat haut au cours du cycie d’un acces bus par le 6809E. En mode HALT, SYNC ou. en calcul interne, AVMA est au niveau bas. Cela permet d’optimi- ser l’échange de ressources communes dans un dispositif multipro- cesseur. La broche BUSY a le méme fonctionnement que AVMA mais elle ne passe a l'état haut que pendant l’exécution dune lecture-éeriture dune donnée numérique. Les caractéristiques matérielles du 6809 le rendent entirement com- patible avec tous les périphériques de la famille 68XX. On a pu noter la spéciatisation du 6809E dans les applications & ptu- sieurs processeurs Cireuits d’ordinsteur [Partie 3 Chapitre 4.2.1 page 3 Partie 4 : Circuits intégras numériques 4.2 Les cicuits de ta tore es microprocessours de la série 68XX * BA = BS = 0: Le 6809 est en fonctionnement, il gére les bus données et adresses. * BA = 0 BS = 1: Le 6809 vient de recevoir une interruption, il recherche le vecteur correspondant * BA = 1 BS = 0 : Le 6809 vient de rencontrer dans le programme Vinstruction SYNC. Hl attend cette synchronisation sur une ligne interruption avec ses bus a haute impédance. = BA = BS = 1 : Le 6809 a été arrété par Je signal HALT ; les bus sont a haute impédance. La ligne HALT permet d’interrompre de fagon marérielle le dérou- Jement d’un programme. Le 6809 termine l’instruetion en cours puis positionne BA et BS 1. Le déroulement reprend dés que la broche HALT est a | et sans perte d’informations. Les lignes d’interrup- tions IRQ et FIRQ sont dévalidées : RESET et NMI sont valides mais leur traitement ne se fera qu’a la libération du 6809. Les hor- loges ne sont pas affectées. La ligne RESET permet la réinitialisation commpléte du 6809. Le tra- vail en cours est totalement perdu, Les IT sont masquées, NMI est dévalidée, le 6809 se relance en lecture du vecteur RESET aux adres- ses FFFE-FFFF, il charge ce vecteur dans le compteur programme et s¢ replace en exécution. La ligne NMI (Non Masquable Interrupt) est une ligne d’interrup- tion non masquable. File permet d’exécuter une routine d’interrup- tion dont l’adresse est contenue dans le vecteur FFFC-FFFD. Cette ligne est dévatidées par RESET et n'est revalidée qu’aprés un char- gement du registre S en mode immédiat. Le contenu de la totalité des registres du 6809 est sauvegardé dans ia pile systéme. La ligne d’interruption rapide (FRG : Fast Interrupt Request) a son vecteur situé en FFFA-FFFB, elle est masquée ou non suivant Fexat du bit F du registre CC. Les registres du 6809 ne sont sauve- gardés que particllement. La ligne IRG (Interrupt Request) a son vecteur en FFF8-FFF9 ; elle est conditionnée par le bit 1 de CC et tous les registres sont sauve- gardés. Le déroulement de ta routine peut étre interrompu par FIRQ ‘ou NMI. Signaux de controle Les entrées d’horloge XTAL et EXTAL permettent deux fonction- du 6809 nements différents. On connecte un quartz en paralléle sur ces bro- ches (ose. interne) ou on injecte un signal TTL d’horioge sur EXTAL, en reliant XTAL au OV. 2+ Complement Cirevits ¢ordinateur 4.2 Les crouits de la faritle ‘dex mcroprocessturs dela sie 6BXX Brochage du 6809 vss NMI ira. FIRQ. Bs BA vec a0 al A2 Ag Aa AS a6 AT AB ag Alo Alt Al2 [pas Dane 4D page Partie 3 Chapitre 4.2.1 page 5 Partie 4 : Circuits intégrés numériques HALT XTAL EXTAL ‘RESET MRDY a e DMA/BREQ AN Do D1 be 3 ba 2s De 07 AIS ala AI3 2 Complement Circuits d’ordinarour 4.2 Ls circuits de a tame Parle 3 Chapitre 4.2.1 page 7 Partie 4 : Circuits intégrés numériques ‘dos mueroprocesseuts dela série 68XX Les registres du registre CC 3/4.2.1.3 Architecture interne du 6809 Le 6809 comporte 9 registres 8 ou 16 bits que nous allons décrire. Les accumulateurs A et B cu 6809 sont des registres de calcul de 8 bits dans lesquels toutes les opérations arithmétiques et logiques peuvent s’effectuer. Ils sont pour cela entigrement identiques et mis, part les instructions ABX et DAA, ils jouent exactement le méme réle sur 8 bits. Le double accumulateur D est en fait la concaténation de A et B, le registre A représentant les poids forts et B les poids faibles. D peut done étre le résultat dune opération sur A ou sur B avec B ou A constituant une partie constante. Les registres X et Y sont dits registres d’index car ils permettent d’adresser tout l’espace mémoire avec en plus la capacité d’étre pré- décrémenté ou post-inerémenté pour faciliter le traitement de varia- bles en tables. Les registres U et $ sont des pointeurs de pile qui fonctionnent tous deux identiquement. Ils opérent en mode dernier entré-premier sorti (LIFO - Last In - First out) négatif. Ces deux registres peuvent & Poccasion servir de registre d’index avec la totalité des possibilités de X et Y. Le registre S (System) est utilisé par le 6809 pour toutes les opérations de sauvegarde en cas d’interruption ou de saut a un sous-programme (Adresse de retour). Le registre U (User) est entié- rement réservé a |’utilisateur. Le registre PC (Program Counter) détermine l’adresse mémoire a laquelic le 6809 doit exécuter une instruction. 1] peut dans certains cas tre — avec grande précaution — utilisé comme regisire d'index. Le registre de page DP (Direct Page) forme la partie haute de Padresse pointer dans le cas d'un adressage direct. I est automa- tiquement remis 4 00 par un RESET. Le registre CC (Condition Codes) définit a tout instant état du 6809 résultant dune instruction. I] comporte 8 bits jouant chacun un r6le important pour les instructions de sauts ou de branchements conditionnels. . Le bit C (Carry - BO) est positionné lors d'une opération arithmé- tique uniquement. Il est 4 UN dans le cas d'une addition dont le 2" Complement Partie 3 Chapitre 4.2.1 page © Circuits d'ordinateur Partie 4 : Circuits intégrés numériques 4.2 bes chenite de ba faite Ges microprocesseurs de la série 68XX résultat est supérieur 4 255 ($ FF) ou lorsque le résultat d’une sous- traction (SUB, NEG, CMP, SBC) est positif. Dans le cas de I’ins- truction MUL (A multiplié par B, résultat sur J6 bits dans D), CARRY et égal au bit BT de D. Le bit V (oVerflow - B1) est le résultat d’un OU-EXCLUSIF entre les retenues arithmétiques de B6 et de B7. Les opérations logiques de chargements, de stockages et de transferts positionnent V 4 O. Seules les opérations comme ADD, ADC, SUB, SBC, NEG et CMP positionnent V a la valeur approprige Le bit Z (Zéro - B2) est l'indicateur d'un résultar nul. Toutes les instructions positionnent ce bit. Le bit N (NEGATIVE - B3) indique un résultat négatif. Pour tou- tes les instructions, N prend la valeur du bit de poids fort de ’opé- rande ou de I’accumulateur en mouvement. I] est trés utile lors de travaux signés sur des entiers compris entre + 127 et — 128. Le bit I (Interrupt - B4) autorise lorsque i] est a Oe traitement des interruptions IRQ et les dévalide quand il est 4 1, Ce bit est unique- ‘ment manipulé par utilisateur ruais est positionné 4 1 par un RESET Le bit H (Half-carry - BS) est un bit de demi-retenue entre le quar- tet faible et le quartet fort de A ou B. II n'y a pas d’instruction de branchement conditionnel testant ce bit mais il faut savoir que l'on peut Ie tester en utilisant TFR CC, A pour ne pas modifier CC et tester A aprés ou en utilisant directement ANDCC $20, ce qui trans- fere H dans Z. Le bit F (Fast interrupt) - B6) conditionne le traitement de Ia ligne FIRQ. Hest 0 aprés un RESET et dans ce cas FIRQ est dévatidée. Si Vutilisateur le force & 1, FIRQ est traitée. Le bit E (B7) est I'indicateur de sauvegarde partielle lié a la ligne d’interruption FIRQ. Lorsque il est & 0 aprés un RESET seulement, une partie des registres internes sont sauvegardés pendant le teaite- ment de interruption. Lorsque il est 4 1, tous les registres sont sau- vegardés dans la pile systéme. Circuits ¢'ordinateur Par ia 3 Chapitre 4.2.1 page 9 4.2 Lae circuits de la far des microprocesseurs de la sie BAXX Partie 4 : Circuits intégrés numériques: Les registres du 6809 a5 x 2 Te ¥ a 15. vu 0 5. s ° 7 OF, q 15 PC o CCR Le registre des codes condition CC Accumulatous 8 bite A et 8 Registre stindex x Regiwe a’ndox ¥ Registres Pornteure Pointeur do pie vellgatour Posnteur de pile systame } Comptewr ordinal ou comptaur programme Regie oes codes conattion ec] ef efularlu|ztv Negeri Macaque o'interution oO Oembeetenue Masque dinteruption de FRG Etat de souvagarce 2% Compitmers aunacz of “sy Organisation interne te 5529-— Bes 9€ Connees Partie 3 Chapitre 4.2.1 page 10 Circuits d'ordinateur 4.2 Los circuits deta amie “erie 58xx, dios meroprocesseurs de L’adressage inhérent L'adressage immediat Ladressage direct Partie 4 : Circuits intégres mumériques 3/4.2.1.4 Modes d’adressage du 6809 Le 6809 posséde 9 modes d’adressage qui, utilisés en conjonction avec ses 59 instructions de base, procurent 1464 instructions pos- sibles. Le code opération contient toute l'information nécessaire 4 l’exé- cution de instruction. Ces instructions sont codées — soit sur un seul octet. Ex: ABX ASLA RORA NEGA COMA DECA... -— soit sur deux octets. Ex ; SWI2 TER PSHS PULU CWAY... Le code opératoire est directement suivi par un opérande de un ov deux octets. Cet opérande est une valeur qui va étre chargée dans, comparée ou additionnée a un registre de 6809. Ex: LDA 28 > Chargement de A avec 25 (décimal) CMPX # $ 4403 + Comparaison de X avec 4403 (Hexa) ADDD # % 010010 + Addition de 010010 (Binaire) 4 D Ces instructions peuvent atteindre quatre octets comme LDS ou CMPU. On retrouvera toujours le signe « # » dans le langage d’assembiage qui notifie le mode immédiat. Ce mode de travail permet en collaboration avec le registre DP de charger un accumulateur avec fe contenu de n'importe quelle adresse mémoire, De plus, il n’occupe que deux octets sauf pour Jes ins- iructions liées 2 ¥ et S. Si DP a été préatablement chargé avec $ 24: — LDA < $ 00 charge A avec le contenu de I’adresse $ 2400 — CMPX < S$ 56 compare X avec le contenu des adresses $ 2456 ~ $ 2487. Le symbole « < » précise le mode direct en langage d’assemblage. Si}’vtilisateur veut travailler sur une autre page, il lui suffit d’écrire : — LDA # $ 18 = muméro de page $ 18 dans A — TFR A.DP ~ wansfert de A dans DP. Circuits d’ ordinateur ‘Chapitre ge 1 4.2 Les crete de la fare Partie 4 : Ciccuits intégrés oumériques ‘dew mieroprocesseurs dela sie 68XX Adressage étendu Adressage étendu indirect Adressage relatif court Cela prend quatre octets qui permettront d’en gagner beaucoup plus dans Te cas d’un travail important dans la page $ 1800-S 18 FF. Ce mode permet d’atteindre totue fa mémoire mais avec un opéra- toire deux octets. Cet opérande représente l'adresse mémoire dont le contenu va étre manipulé. Ex: LDA $ 1000 > charge A avec le contenu de Vadresse $ 1000 SBCB $29 DO ~> soustrait 4 B le contenu de ladresse $ 29 DO et le contenu du bit C de CC. CMPX $ 4800 + compare X au contenu de $ 4800-$ 4801. Il n’y a pas de symbole d’assemblage pour I’adressage étendu. est ici le contenu de I’adresse citée comme opérande qui va indi- quer I'adresse dans laquelle ce trouve le nombre 4 manipuler. Pour mieux illustrer : Supposons qu’a adresse $ 1000 de la mémoire il y ait $ 23 et qu’a Padresse § 1001 il y ait $ D9. LDA [8 1000] + CHARGE A avec le contenu de I’adresse $ 23D9.. Cela est trés efficace lorqu’une routine unique doit traiter différen- tes valeurs. La routine n’a pas besoin d’étre doublée, ce sont les « points de repére » qui bougent. ‘Ony trouve aussi une grande utilité dans l'emploi de tables d’adres- sage. Les signes « [ ] » sont la notation de ce mode de travail. Ce mode d’adressage est employé pour les intructions de branche- ment. Il permet de « brancher » le programme a une instruction se Trouvant 4 + 127 ou — 128 octets de distance. Adr. Code — Mnémonique $ OFFC 8640 LDA # $40 $ OFFE 20XX BRA$1010 Branchement & I’adresse $ 1000 § 1010 la valeur de XX se calcule a partir du 1* octet $1010 7E 0000.» LDX #0 suivant On soustrait l'adresse qui suit l'opérande de instruction de bran- chement de l’adresse de destination. $1010 — § 1000 = § 0010 On obtient la valeur de octet XX = § 10 qui sera ajoutée au comp- teur programme lors de Vexécution. eee 2 Comptémens BO ee (Pantie 3 Ghapitre 4.2.1 page 12 Circuits d’ordinateur 4.2 Les celts de I fare Partie 4 ; Circuits intéarés numériques es micropracossours Ge Ia série 68XX Adressage calatit tong Lert . lege Vadressage indexé Adressage indexé déplacement nul Adressage indexé avec auto-incrémentation décrémentation If fonctionae suivant le méme principe que le précédent mais le dépla~ cement est codé sur deux octets. Il permet d’atteindre toute la mémoire par un déplacement de + 32767 A — 32768 T oceupe quatre octets mais reste trés pratique pour fa mise en ceuvre de routines devant pouvoir s’implanter n’importe of dans la mémoire_ Ex ; LBEQ $ 2000 + Branche le déroulement 4 I’adresse $ 2000 si fe bit Z de CC est positionné. Le « L » devant l’instruction BEQ signale en langage d’assemblage le mode relatif long. Dans ce mode d’adressage, un registre d’index de 16 bits spécifie une base a laquelle on ajoute un déplacement signé de 5, 8 ou 16 bits. Ce déplacement peut étre défini par une constante faisant partie de instruction ou par le contenu d'un des autres registres du 6809. Enfin ce mode permet aussi la pré-décrémentation et la post- incrémentation simple ou double. Toutes ces possibilités sont pr cisées par le post-octet qui suit le code opératoire. C’est le fonctionnement le plus simple de ce mode d’adressage ; le registre d’index contient I’adresse effective de l’octet 4 manipuler. Ex: LDA,X + charge A avec le contenu de l’adresse pointée par le valeur de X. Dans ce type de travail le contenu du registre d’index est décrémenté avant de pointer l'adresse effective ou incrémenté aprés l’avoir fait. Ex : Si X contieat $ 1000 LDA.X + 3 Charge A avec le contenu de adresse $ 1000, mais X contiendra § 1001 aprés l'instruction terminée. LDB ,~X -+ Commence par décrémenter X. donc X = $ OFFF et charge B avec le contenu de § OFFF. LDD ,X++ — Charge D avec les contenus de $ 1000 — $ 1001 et incrémente deux fois X aprés. donc X = $ 1002. Circuits d'ordinateur 42 Les ciroute deta famile des microprocesseurs dela série 68XX [Gal oOo a2 ma] [Partie 3 Chapitre 4.2.7 page 13 Parte 4 : Circuits intégrés numsriques Signification des bits du registre post-octet Bit du registre post-octet Mode dadressage indexé | Tle[s]4{s| 2/1, o} A= . Bose (A) = Dépiacement OA | OEPLACEMENT {AE = Aaa bie 1 i] oR ofo aloo) ae= . a= i[ 8 olo;t] Ag= ate i vf a fojejo ABZ i 1] 8 ft lolol} AEe = -R 1] k [ile spol AES R40 Tv) oR [tle 1 0|1] Abe A uACES (iP po|t ii fol at Raacca 1| rR filijolojo) aes R= 8 bits Fil a ftitjoloji1| ae= , R216 bis rioR jtifolif a] aes. R20 ceca + AccB) 7 [ilv[tfe[o] ae=rcs 7 oie | tort tfofa) agape st bis | vlow [altoalal a! ace. adeoe | REMARQUE : Les bits 5 et 6 du post-octet permettent de définir fa base. oO Base R oar Index X | 0 | O ee Pointe i Pointeur S Compteur Programme i+ Indifferent, 1a sélection de Ja base PC se fait 2 rade des bits 213 (4, 1), 2 Complément Cireuits ¢’ordinateur 4.2 Log circuits de fa fa ‘dex meroprocesseurs 66 Adressage indexé a déplacement constant Adressage indexé Compare D avec le contenu des adresses U-5, U-4. Les bits BS et B6 du post-octer désignent le resistre devant servir @index. Dans ce cas c'est le contenu des accumulateurs A, B ou D qui est additionné au registre d’index avant de pointer l’adresse effective. Le bit B7 du post-octet est a 1, les bits BS-B6 précisent ("index et les bits BO-B3 précisent l'accumulateur concerné : — %1010 ACC A — % 1001 ACC B — % 1011 ACC D Ex: LDA A,¥ > Additionne X et A pour obtenir l'adresse effec- tive oft I’on doit trouver le nouveau contenu de A. Ce mode permet seulement un adressage indexé 4 déplacement constant sur 8 ou 16 bits. Les bits B5-B6 du post-octet n‘ont plus de sens, ce sont les bits B2-B3 qui forcent ce mode de travail : B2 = B3 = 1 + Index = PC Le déplacement est précisé par un ou deux octets qui suivent le post-octet. Ce mode d'adressage est une combinaison du mode indexé et du mode indirect. Circuits d'ordinateur 4.2 Les circuits do Is famite des microprocessours de la série 68XX ° ‘adressage index z Registre : i : z : i z i i i : i i - ~ - - Nat ° * ° a S bits po vue ~T oT. moe >. Pp. pe maa ee ao ob g g i a o a a S c 7 3 : : ee f i 2 Complement [Pantie 3 Chapitre 4.2.1 page 16 Circuits d’ordinateur 4.2 Les crits dota famite des microprocesseurs da Conclusion Partie 2 + Circuits intégrés numsriques Crest le contenu de adresse pointée par l'index qui va servir adresse effective. Ex : LDB [~ 6S} -> Va chercher Al’adresse S-6, S- tive & partir de laquelle on va charger B. 5 Vadresse effec- La notation « {| » précise fe mode indirect et "indexation offre les mémes possibilités que le mode indexé simple. La multitude des combinaisons entre les 9 modes d’adressages et les 59 instructions de base du 6809, fait de ce microprocesseur le meilleur des microprocesseurs de 8 bits sur le marché. Circus 4° ordinateur Partie 3 Chapitve 4.2.1 page 17 Partie 3 : Circuits intégrés numériques 4.2 Les circuits de In foie ee mieroprocesseurs do Ia série 68XX : * 6809 La 3/4.2.1.5 Le jeu d’instruction du 6809 Bien que le nombre de mnémoniques soit limité, le jeu d’instruc- tion du 6809 est trés performant. Le réle de l'instruction, son effet sur les indicateurs, les modes d’adressage utilisables et ies différen- tes formes du mnémonique vont étre décrits dans cette partie. Les instructions seront abordées par ordre alphabétique. ABX — Addition non signée de B dans X Mode d'adr -+ INHERENT Code Nore Nore objet cycles. octets ABX 3A 3 1 X = (X) + (B); Ajoute le contenu de B au regisire X, Résultat dans X. MH oNzye CCR mee peenpe [ns ADC — Addition d’un octet mémoire avec un accumulateur et avec retenue. | imMepiaT | piRECT | ETENDU | _INDEXE : 1 C0) Cy] Oc! Col cy 0c, |G ] : ADGA Bri l3 9} 4] 2 | Bo] s ! ADCB co 2) 2 | p94 | 279. 5 i R + (R) + Donnée + (C) ; ajoute a accumulateur la donnée puis le contenu du bit de retenue Carry de cc x Nave cor xk x s[z]vye; ADD — Addition d'une donnée & un accumulateur 4° Complement Partie 3 Chapitr 2tsage 8) Circuits dforcinateur Parte 3 Circuits in s numerigues £2 Los ciruite de Is fare ‘es mcropeacesseure ela séie GBXX ; IMMEDIAT DIRECT | _ETENDU INDEXE | ! Co Cy | Oc Co | Cy | Oc | Co | Cy Oc | Cos Cy | Oc ADDA 3B) 22°98 4) 2 BB) S 3 AB A 2 ADDB | CB. 2 2 .DB) 4/2 FB| $3 EB’ 4 2 appbp =| G3) 43/03; 6/2 3/7 4°. 6 2 R — (R) = (M) ; ajoute le contenu de adresse mémoire & Paccu- mulateur, résultat dans l'acc. D+ (A:B) + (MeM+1)§ Idem sur 16 bits HONzve ADDA/ADDB {x x] x N]z VC HoNzve ADDD eels |[NIZ]¥ IC] AND — Et logique entre la mémoire et un registre. IMMEDIAT {| DIRECT ETENDU 1 INDEXE Co} Cy | Oc | Co | cy | Oc Co! cy | Oc | Co Cy | Oc | ANDA B42 re Bb) Ss 3 A’ 4 | 2 ANDB /C4i 2002 Ds 412 4) 5 3 BH 4 2 ANDCC 1 1C} 302 : | R + (R). Donnée ; effecrve un ET logique, le résuliat est dans le registre. H Nzyve ANDA/ANDB ANDCC — Décalage arithmétique vers la gauche. INHERENT DIRECT ETENDU INDEXE Co 6 | 253173 8 6 7 2 | COMA 32 | Po : | | coMB. | 33) 2/1 | Pot | | i HONZYEC com x] ]*[x1N]2/0]0] CWAY — Attente dune interruption (HERENT | | Co | | | cWAY 3c 2 Effectue un ET logique entre le contenu du registre d’érat et octet immédiat. Cela permet de bloquer le déroulement du programme et d’attendre une interruption IRQ, FIRQ ou NMI. & Cometement {Partie 3 Chapitre 4.2.1 page 26 Circuits ordinateur Pane 3:6 ng iméavés numariques 4.2 tos czeuits de ta ‘ar les microprocassmurs de 18 série GBXX H Nave cWAY is[xis eee ment décimal i INHERENT / | Co_| Ne _| No | | DAA ws 2] Ajuste le contenu de ’accumulateur A en décimal en fonction des indicateurs résultant de l’addition de deux nombres en BCD. On ajoute 6 au quartet faible si : — if est plus grand que 9 — le bit Hest ai On ajoute 6 au quartet fort si: — il est plus grand que 9 le bit Cest at — il est plus grand que 8 et Je quartet faible a été corrigé, H oNzve DAA WyeieispNiziy x DEC — Décrémentation \ |__ INHERENT DIRECT | ETENDU | INDEXE | | €o | Cy | Oc | Co Cy | Oc | Co | Cy | Oc | Co! Cy | Oc DEC Dex fo ax (OA; 6 | 2 [7A | 7 3/64) 6 (| 2 DECA = 44 2) Fi ob | t : DEcB. SA 251) | id Soustrait 1 A Vopérande 1 si lopérande Stait $80 0 dans tous les autres cas Circuits ¢ordinateur 4.2 Lye crests de a faite des miereprocesseurs Ge ia série @8XX — ["Panie 3 Chapitre 4.2.1 page 27 | Partie 3 : Circuits intégrés numériaues | 6809 EOR — OU EXCLUSIF [ IMMEDIAT | DIRECT | _ETENDU INDEXE [€0 1 cy | Oe} Co! cy [Oc] Col cy Oc Co] cy foc) EoRA | 38! 2/2/98) 4) 2 [Bs] si 3 asi 4 2) | EORB [cs) 2) 2 ips} 4 2) Fy 5 3 Bg) 42) Effectue un OU EXCLUSIF entre l'accumulateur ot Vopérande. a xzve EOR [xlalxix,N]zjors! EXG — Echange de contenu entre deux registres. |__JNHERENT | Co | Ne | No EXG iE Echange les contenus des registres désignés par le post octet Les deux quartets du post octer désignent chacun un registre. 16 Bits 8 Bits 05D 8A 1+X 9 +B 24¥ ACC 3--U B= DP 4-8 3 > PC H NZVE EXG Dox [x[ata sb lx INC — Incrémentation |_ INHERENT DIRECT | _ETENDU INDEXE | [Co Cy | Oc Co Cy | Oc | Co. Cy | Oe Co Cy | Oc | INC XX ws jax OC, 6 1 2) 1C 713 66 6,2) INCA 4co2 1 i | | ‘ INCB (sc) 201 boot | Ajoute 1 a l'opérande 2° Compliment ‘3 Chapitre 4. 4.2 Lee cirque de la fanille ‘des microprocesseurs dela série €8XX 1 pege 28 Circuits ¢’ordinateur Partie 3 : Circuits imégrés aumeriques H oNzve INC [x[x[s[a Niz *V = 1 si lopérande était S7F * V = 0 dans tous les autres cas IMP — Saut inconditionnel a une adresse effective i | DIRECT | ETENDU | INDEXE | ‘Co|Ne No ‘Co |Ne|No|Co Ne No} [___ICo|Ne.No Co |Ne|NolCo Ne!No} ! JMP OE) 3/2 76/4] 3 [ee 3 | 2! Transfére |’exécution du programme a I'adresse désignée par l"ins- truction. HO Nave IMP woes |xlaye|s JSR — Saut 4 un sous-programme ——___——_————_—— H | DIRECT | ETENDU Le eVWnre | Co:Ne,No!Co;Nc.NoiCo|Ne'No! ISR {9p 7/2 [ppl s 13 lap 7 2! Empile i'adresse effective suivant l'instruction JSR dans la pile systeme S et transfére lexécution a l’adresse désignée par I’ins- truction. HONZye JSR qpeittextxlayel LD — Chargement d’un registre I | IMMEDIAT DIRECT | ETENDU | INDEXE [0 | Cy | Oc | Co; Cy | Oc | Co! cy | Oe | Co] cy! Oe | LDA wei 2 3) m6 UH 2 PBS 8 Ae 4D LbB co) 2) 2 De) 4 | 2] Fe) Si 3 | ee) 4) 2 | top Sec! 353 (pc: sj 2!re 6° 3 FC S$ 2 / EDK SE 33 9) 3,2] RE 6.3) aE; 5 2 U (cei 3 3; DE; $ ,21FE 6.3 EE 3 2 Y SE 4 4 109E' 6 | 3 OBE 7; 4 AE 6 | 3 Ls. hoce 4 4 i0DE 6 3 HOFF 7 | 4 MEE 6 | 3 Charge dans le registre Ja valeur spécifiée ou le conzenu mémoire. HoN2zve iziols LD [Parte 3 Chasire 4.2.1 page 2a] Circuits ¢'erdinateur Partie 3 Chapitre 4.2.1 page 29 Panto 3 : Cireuits intagrés numoriques 4.2 Les circuits de fa famile des microprocesseurs de Ia série BBXX | 6809 LEA — Chargement d’un registre 16 Bits avec une adresse | _INDEXE | [co | Ne | No Leas | 32 / 4 | 2 LEAU 33 f 4 | 2 I LEAX 30 4 2 LEAY | 31 | 4 | 2 Calcule l’adresse effective en fonction de I'adressage indexé et charge cette valeur dans le registre. BONZvc Gite LEAX/LEAY [xs x) x]x 2] x18 HO oNzve LEAU/LEAS — fx] x|ajxix|a x] LSL — Décalage logique a gauche INHERENT | DIRECT | ETENDU | INDEXE | Co | Cy | Oc cafes fos Co | Cy | Oc | Co | Cy | Oc | LSE arrels 277%/>7/[3 6 6/2. LSLA | _ er LSLB 38 | 2 Li C © b7.b6.65.b4.b3.b2-b1.b0 — 0 Effectue un décaiage a gauche b0 — 0 cH a_oNave LSL (x x NZ "|e V = N* C(* représente un OU EXCLUSIF) + Compiément

You might also like