Externalisation

Disponible uniquement sur Etudier
  • Pages : 9 (2012 mots )
  • Téléchargement(s) : 0
  • Publié le : 28 mars 2011
Lire le document complet
Aperçu du document
Cours de Microprocesseur

Présentation du 68000 de Motorola

Le microprocesseur que nous étudions est le 68000 de Motorola. Bien que désuet aujourd’hui, l’architecture de ce composant et sa programmation reste une référence dans l’étude des microprocesseurs.

Le 68000 est un composant électronique de 64 broches, qui possède un bus de données sur 16 bis et un bus d’adressage sur 23bits, ce qui détermine une région mémoire maximum de 8 Mega-octets[1]. La fréquence de l’horloge est de 10 Mega-hertz, ce qui correspond à un cycle d’horloge de 100 ns. Notons que la plus petite opération nécessite 4 cycles d’horloge.

L’état du processeur est caractérisé par les fonctions codes FC0, FC1, FC2. Par ailleurs, on distinguera le mode utilisateur et superviseur.

Agencement de lamémoire



Types de données

|bits | | |
|bytes |8 bits |.B |
|words |16 bits |.W |
|long words |32 bits |.L |

Registresinternes

• 8 registres de données, 32 bits : D0 … D7

Ces registres peuvent être manipulés soit comme des bytes, soit comme des word, soit comme des long.

• 8 registres d’adresses[2], 32 bits : A0 … A7 et A7 bis

On peut manipuler des adresses longues (long) ou des adresses courtes (word). Notons que les adresses réelles du 68000 sont codés sur 24 bits, par conséquent les 8 derniersbits d’une adresse longue ne sont pas significatifs !
Notons également le rôle particulier des deux registres d’adresse A7 et A7 bis, encore appelé USP (user stack pointer) et SSP (supervisor stack pointer). SP ou A7 contient l’adresse du pointeur de pile relatif au mode courant, c’est-à-dire utilisateur ou superviseur.

• PC ou program counter 

Il contient l’adresse de la prochaineinstruction à exécuter.

• SR ou status register, et CCR ou condition code register

Registre 16 bits : SR au format word (16 bits) ou CCR au format byte (8 bits)
C’est le registre d’état, qui comporte des bits indicateurs ou flags.

Bits systèmes:
- T : mode trace
- S : mode superviseur
- I2, I1, I0 : masque d'interruptions

Bits utilisateurs (CCR):
- X,N, Z, V, C : indicateurs arithmétiques qui peuvent avoir des sens différents selon les opérations…

|Z |zero |zéro |
|N |negative |bit de poids fort ou de signe |
|C |carry |retenue ||X |extend |retenue non signée |
|V |pverflows |overflow signé |

Pour un move, seul N et Z sont affectés mais pas C et V. Pour une opération arithmétique N, Z, C, V sont affectés.

Présentation du jeu d’instruction

On distingue des instructions de troissortes : les transferts de données (ex. : move[3]), les opérations arithmétiques (ex. : add), et les tests / ruptures de séquence (ex. : beq).

Un programme est une suite de code machine représentant des instructions (selon un codage bien défini), et placé en mémoire. Les instructions peuvent avoir des longueurs variables (de un à plusieurs mots[4]). De ce fait, les adresses de début d’instruction sonttoujours paires.

Codage des instructions



Move

syntaxes : move.b source , destination
move.w source , destination
move.l source , destination

L’instruction move transfert la source vers la destination, en écrasant le contenu de cette dernière. Par défaut, le format de l’instruction move est .w.

Modes d’adressage

• adressage absolue

L’adresse...
tracking img