Ensimag - Filières SLE/ISI
A) Introduction
Ce document décrit l’architecture externe ainsi que le jeu d’instructions du processeur MIPS R3000. Le MIPS
R3000 est la deuxième génération de processeur de la société MIPS1, et n’est plus commercialisé aujourd’hui.
Son successeur est le R4000 qui lui ressemble fort. Des informations sur cette famille de processeurs, très uti-
lisée dans les applications embarquées et dans les machines parallèle à mémoire partagées, sont disponibles
sur le site www.mips.com.
L’architecture externe est le niveau d’abstraction nécessaire à l’écriture de programmes assembleur, de la
partie génération de code d’un compilateur, et du programmeur de systèmes d’exploitation multi-processus
(et/ou multi-tâches). Sont détaillés :
– les registres visibles du logiciel ;
– l’adressage de la mémoire ;
– le jeu d’instruction ;
– les mécanismes de traitement des exceptions, interruptions et appels systèmes.
L’architecture interne sera décrite en détail durant le cours.
B) Notations
Par convention, nous utiliserons les notations du langage C pour la description des constantes, et pour la
terminologie en général.
La description des instructions nécessite également l’introduction de quelques notations :
=test d’égalité
+addition entière en complément à deux
−soustraction entière en complément à deux
×multiplication entière en complément à deux
.
.division entière en complément à deux
mod reste de la division entière en complément à deux
and opérateur et bit-à-bit
or opérateur ou bit-à-bit
nor opérateur non-ou bit-à-bit
xor opérateur ou-exclusif bit-à-bit
memb[a]contenu de la mémoire à l’adresse aaccédée sur boctets
←assignation
⇒implication
kconcaténation de chaînes de bits
xnréplication du bit xdans une chaîne de nbits. Notons que xest
un unique bit
xp...q sélection des bits pàqde la chaîne de bits x
Certains opérateurs n’étant pas évidents, nous donnons ici quelques exemples.
1MIPS signifie Microprocessor without Interlocked Pipeline Stage.
MIPS R3000 jeu d’instructions page - 2