Vous êtes sur la page 1sur 21

COMPTE RENDU INFORMATIQUE

INDUSTRIEL : ASSEMBLEUR 6809


Filière génie : industriel et maintenance

Réaliser par : encadre par :


HAFSA IEBOUBEN MR KHATORY
LAMYAE HAJJAJ
COMPTE RENDU INFORMATIQUE INDUSTRIEL : ASSEMBLEUR 6809

Introduction sur le
microprocesseur :
Un microprocesseur est un processeur dont les composants ont été
suffisamment miniaturisée pour être regroupes dans un unique circuit intègre.
Fonctionnellement, le processeur est la partie d’un ordinateur qui exécute les
instructions et traite les donnes des programmes, jusqu’au début des années
1970.les différents composants électroniques formant un processeur ne
pouvaient tenir sur un seul circuit intègre. On devait donc les placer sur
plusieurs circuits intègre. En 1971, la société américaine Intel réussit, pour la
première fois, à placer tous les transistors qui constituent un processeur sur un
seul circuit intègre donnant ainsi nécessaire au microprocesseur cette
miniaturisation a permis :

D’augmenter les vitesses de fonctionnement des processeurs grâce a la


réduction entre les composants entre autres :
De réduire les couts grâce au remplacement de plusieurs circuits par seul
entre autres :
D’augmenter la fiabilité : en supprimant les connexions entre les
composants du processeur on supprime l’un des principaux vecteurs de
panne
De créer des ordinateurs bien plus petits les micro-ordinateurs
De réduire la consommation énergétique
Les principales caractéristiques d’un microprocesseur sont :
Un microprocesseur se caractérise aujourd’hui par différentes
fonctions.la première est le jeu d’instruction qu’il est capable d’exécuter
pouvant aller de dizaines a des milliers d’instruments différentes. La
deuxième est la complexité de son architecteur qui se mesure par le
nombre de transistors présentes : plus ce nombre est élevé, plus la
complexité des taches à traiter peut augmenter. La troisième est la
vitesse de son horloge qui dicte le rythme de travail enfin le
microprocesseur se caractérise par le nombre des bits qu’il peut traiter
( 4 a ses débuts , 128 en 2011 ). A sa création, il était capable d’effectuer

1
COMPTE RENDU INFORMATIQUE INDUSTRIEL : ASSEMBLEUR 6809

un peu moins d’un million d’instructions par seconde aujourd’hui il en


traite plus de 10 milliards.

LE MICROPROCESSEUR 6809 : Le 6809 est un micro possesseur 8 bits de


Motorola. Il fut introduit vers 1977-1978. Ce micro possesseur fut une avancée
majeure par rapport à ses deux prédécesseurs. Le 6809 de Motorola et son
quasi-clone, le 5602 de MOS technologie. Parmi les systèmes a utilisé le 6809
on retrouve la gamme de microordinateur Thomson, le TRS-80 color computer,
la console vectrex ; et des machines d’arcade du début des années 1980, ainsi
que divers appareils tels que l’échantillonneur. Le 6809 était par son design,le
premier microprocesseur pour lequel il était possible décrire du code
indépendant de sa position en mémoire(adressage relatif) ; et complètement
réentrant d’une manière simple sans utiliser d’artifice de
programmation .c’était aussi l’un des première microprocesseur a implémenter
une instruction matérielle de multiplication ; il dispose en outre arithmétique
16 bits Complete et d’un système interruption particulièrement rapide . 

2
COMPTE RENDU INFORMATIQUE INDUSTRIEL : ASSEMBLEUR 6809

Structure interne d’un microprocesseur :

Le processeur exécute une à une les instructions stokes dans la mémoire


centrale. Pour cela, les instructions doivent êtres chargées dans le
processeur. Elles le sont dans le registre d’instructions. Ce dernier
contient donc l’instruction courante a exécuter.
L’instruction a exécuté chargée dans le registre d’instructions est
interprétée par le décodeur.
Le séquenceur est alors capable d’ordonnancer les diverses opérations
élémentaires du processeur nécessaires pour exécuter l’instruction grâce
à un microprogramme.
Le compteur ordinal est un registre particulier qui contient a tout instant
ladresse de l’instruction suivante a exécuter.
L’horloge est un dispositif qui détermine le rythme dans lequel sont
exécutées les instructions. Elle fournit un signal régulier au processeur.
Le registre d’état est, comme le compteur ordinal, un registre particulier
il représente à tout moment l’Etat du processeur. En effet, événements
peuvent créer des situations par exemple l’addition de deux valeurs peut

3
COMPTE RENDU INFORMATIQUE INDUSTRIEL : ASSEMBLEUR 6809

dépasser les capacités de représentation du processeur, dans ce cas un


bit registre d’Etat signal que le processeur est dans l’état overflow

Le processeur contient encore d’autres registres spéciaux présentes dans le


paragraphe suivant :

L’unité de calcul, comme son nom l’indique effectue tous les calculs au
sein du processeur a cote des opérations arithmétiques elle peut aussi
procéder a des opérations logiques c’est grâce a cette fonctionnalité que
l’ordinateur est capable d’exécuter des structures de contrôle contenant
des conditions.
L’accumulateur est le registre de calcul par excellence. C’est par lui en
effet que transitent toutes les données devant faire d’une opération ainsi
que tous résultants produits par calcul arithmétiques.
Comme ces opérations mettent généralement en jeu plusieurs termes
et /ou états intermédiaires l’accumulateur est seconde par un nombre
variable de registres généraux destines à la réalisation matérielle des
calculs.
Comme son nom l’indique l’unité arithmétiques et logiques.
Pour communiquer avec son environnement, le processeur dispose d’un
ensemble de (bus) cas il peut s’agir de l’adresse d’un ou de plusieurs
octets à charger dans le processeur ou à stocker en mémoire.
Enfin, le bus de commande permet au processeur de designer l’opération
à effectuer chargement dans le processeur ou stockage en mémoire.

L’interface MC09 :

Le MC09 est équipé d’un clavier de 30 touches pour l’écriture de


programme en langage machine. Les cases mémoires et les opérandes sont
visualisées sur 6 afficheurs réserves à cet- effet l’acquisition de la carte
détention référencée 008 permet décrire des programmes en assembleur sur
PC et de téléchargement le binaire dans le mémoire vive du systèmes .la
souplesse d’utilisation du moniteur et les nombreuses fonction utilisables
facilitent l’apprentissage et permettent une maitrise rapide du fonctionnement
des différents circuits de ce système

4
COMPTE RENDU INFORMATIQUE INDUSTRIEL : ASSEMBLEUR 6809

5
COMPTE RENDU INFORMATIQUE INDUSTRIEL : ASSEMBLEUR 6809

Les touches de fonctions permettent : le calcul automatique des branchements


relatifs le MC09 est un système didactique autonome spécialement conçu pour
la formation au fonctionnement du microprocesseur 6809 et de ses
preipheriques.il est équipe des principaux circuits périphériques du 6809 :

 Pia 6821 : boitier d’entrées/sorties parallèles


 Timer 6840 : circuit intégrant 3 compteurs 16 bits
 Acia 6850 : boitier d’entrées/sorties séries
 Via 6522 : ce circuit est muni de 2 ports parallèles 8 bits, 2 times 16
registrent à décalage et 4 lignes de contrôle.

Spécification du MC 09 :

Durant ce TP, on a eu l’occasion du travailler sue le MC 09.

Le système MC 09 fait suite au système développé autour du microprocesseur


6809 de motorola.il repend dans son architecture les principales
caractéristiques qui ont fait le succès du MC09.

Cette carte est équipée de :

Un microprocesseur 6809.

Un mémoire EPROM moniteur de 8 ko

6
COMPTE RENDU INFORMATIQUE INDUSTRIEL : ASSEMBLEUR 6809

Deux supports pour mémoire EPROM de 8ko

Une mémoire RAM de 16 ko

Une interface parallèle de PIA 6821.

Une interface multifonction VIA 6522

Une interface série ACIA 6850

Une INTERFACE TIMER 6840

Une interface parallèle système PIA 6821 (gestion clavier et afficheurs)

Un clavier de 32 touches (hexa et fonction)

Un afficheur de 6 digits à 7 segments

Une ligne séries RS232

Une prise pour liaison minitel

Une prise pour liaison cassette.

Deux connecteurs de 50 points chacun.

 Il ne faut pas oublier que la carte nécessite une alimentation externe


+5volts,2 ampères pour, cela on a relié de +5V de l’alimentation à
l’entrée +5V du MC09,  ensuite on a relié la masse de l’alimentation a
l’entre 0V du MC09.

LES REGISTRES :
1. L’accumulateur :
Un accumulateur est un registre spécial. Incorpore dans certaines architectures
de processeur ou les résultats intermédiaires de l’UAL ou, ALU en anglais
(arithmétique logical unit), sont verses sans accumulateur il faudrait verse le
résultat de l’UAL dans la mémoire centrale, puis le recharger pour effectuer
L’opération suivante dont le résultat serait a son tour verse dans la mémoire

7
COMPTE RENDU INFORMATIQUE INDUSTRIEL : ASSEMBLEUR 6809

centrale sont beaucoup plus lent que ceux fait sur un registre tel un
accumulateur.

2. Le compteur d’instruction
Appelé encore compteur programme (p.c.) ou compteur ordinal (Co.)

Son rôle : pointer toujours le premier octet d’une instruction. Le programme a


exécuté est une succession d’instruction ordonnée (chaque instruction peuvent
prend plusieurs octet) qui se trouve range dans un zone mémoire
généralement a des adresses successives. Le p.c. repère le premier octet de
chaque instruction du programme.

La taille du PC a une langueur de 16bits ce qui lui permet d’adresser 65536


adresses mémoire soit 64 K octet (le champ mémoire). Notons qu’il est
connecté au bus interne des données.

A la mise sous tension une valeur particulière est déposée sur le bus d’adresses
(dans le cas du 6809, cette valeur est $FFFF).

Le PC pointe toujours ladresse du début de l’instruction suivante. (a retenir car


parfois il est utile de connaitre ladresse présente

8
COMPTE RENDU INFORMATIQUE INDUSTRIEL : ASSEMBLEUR 6809

Il est possible de recharger le P.C avec une adresse qui ne correspond pas au
déroulement séquentiel du programme. On trouve les détournements
conditionnel et inconditionnel.

3. Le registre d’adresses
Son rôle : le registre ou (R.A) sert d’interface entre le bus des données interne
et le bus des adresses.il pilote le bus d’adresses du microprocesseur.

Une langueur de 16bits ile est constitué de deux registres 8bits (partie haute et
partie basse). Son contenu provient de différentes sources :

Le compteur d’instruction

Un registre général un emplacement mémoire

Un emplacement mémoire

Le contenu du registre d’adresse pointe la zone mémoire utile au


microprocesseur.

Une fois que le premier octet de l’instruction en cours est décodé…

Le contenu du compteur d’instruction est change le contenu du registre


adresses change

Ce changement correspond soit à une incrémentation du contenu afin de lire


l’information complémentaire de l’instruction en cours soit a un changement
dune nouvelle valeur correspondant a une nouvelle zone mémoire utilisée
temporairement par le microprocesseur cette nouvelle valeur provient soit
d’une lecture en mémoire.

4. Représentation de différents registres interne au 6809  :

9
COMPTE RENDU INFORMATIQUE INDUSTRIEL : ASSEMBLEUR 6809

Les registres A et B sont des accumulateurs ces registres sont interchangeables


sauf que les instruction ABX et DAA et les opérations sur 16bits certaines
instruction regroupe les registre A et B pour former un seul accumulateur D de
16 bits dans ce cas l’accumulateur A représenté d’indexé X et Y sont utilisés
pour les modes d’adresse indexée les donnes 16 bits contenues dans ces
registres servant de pointeur de données ces adresses peuvent êtres modifie
par une constante prise comme valeur de déplacement qui permet alors de
calculer une adresse effective

Déplacement le contenu de ces registres peut être incrémente ou pour gère


des donnes stockées sous forme dorme de table. Les registres S et U

Le pointeur de pile S (système) est utilise automatiquement par le


microprocesseur pour mémoriser l’état de tous ces registres internes dans dans
le cas ou il doit exécuter un sous-programme

Le pointeur de pile U est gère exclusivement par le programme pour effectuer


avec facilite le passage des paramètres entre programme et sous-programme
les registres U et S peuvent faire office de pointeurs registres d’indexé

5. Le registre de codes condition :


Ce registre donne à tout instant l’état des indicateurs du microprocesseur il y a
deux types d’indicateurs ; les indicateurs sur la nature des résultats lies aux
manipulations des données.

6. Le compteur de programme :
C’est le registre (16 bits) qui pointe la zone où se trouvent les instructions
devant être exécutées.

7. Le jeu d’instructions :
Les instructions sont reparties en groupe déterminer par leurs caractéristiques.

Les modes d’adressage 6809

10
COMPTE RENDU INFORMATIQUE INDUSTRIEL : ASSEMBLEUR 6809

Le microprocesseur 6809 possède 59 instructions de base combinées avec le


jeu des modes d’adressage (9 au total) elles fournissent 1464 code opératoires
différents les modes d’adressage sont :

L’adressage inhérent ou implicite

L’adressage immédiat

L’adressage étendu

L’adressage étendu indirect

L’adressage direct

L’adressage par registre

L’adressage indexe direct

L’adressage indexe indirect

L’adressage relatif

Au moyen des signaux qu’il génère sur me bus d’adresse le microprocesseur a


la possibilité d’adresser les divers circuits mémoires et interfaces qui lui sont
connectes au travers des bus afin d’accéder à leur contenu.

Cet accès se traduit par opération d’adressage cette opération peut se faire de
plusieurs façon grâce a la présence de différents modes d’adressage

Remarque :la puissance d’un microprocesseur dépend de son jeu


d’instruction mais aussi de ses modes d’adressage

L’adressage inhérent ou implicite est utilisé par les instructions qui agissent
seulement sur les registres internes du microprocesseur ici le code opératoire
de l’instruction contient toute l’information d’adressage

Exemples : ABX, ASL, ASR, CLR, INC

8.Classification :
Instructions de traitement des données

11
COMPTE RENDU INFORMATIQUE INDUSTRIEL : ASSEMBLEUR 6809

 Instruction arithmétique
 Addition (DAA ABX ADC)
 Multiplication (MUL=
 Soustraction (SBC, SUB)
 Instructions logiques
 Rotation à droite et à gauche (ROL, ROR)
 Décalage à droite et à gauche (RSR LSR RSL LSL)
 Les fonctions logiques de base (COM NEG NOP INC DEC CLR)

Instruction de transfert de donnes


Transfert internes entre registres (EXG TFR)
Transferts externes avec la mémoire (LD ST)

Instruction de tests et de branchements


Instruction de tests sur un bit/ un octet (BIT, TST)
Instructions de comparaison (CMP)
Instruction de branchement conditionnel
Les instructions du CCR sont actives

Instruction de branchement inconditionnel et de saut


(provoquent la rupture de la séquence sans condition)
Saut relatif (BRA, BRN :1 ou 2 octets)

Saut absolu (JMP :2 octets)

Instruction d’appel et de retour de sous-programme. Appel :

Saut absolu (JSR) et saut relatif (BSR)

Retour : RTS

Le contenu PC sauvegarde dans la pile est restitue dans le registre pc du


programme a l’endroit ou il a été interrompu.

Instruction opérant sur les pointeurs U S et X Y

12
COMPTE RENDU INFORMATIQUE INDUSTRIEL : ASSEMBLEUR 6809

 Load effective address (in register): LEA

Permet de manipuler des données sur 16 bits ces données représentent


généralement des adresses.

Instructions opérant sur le pointeur S et U

 Empilement des registres dans la pile


 Dépilement des registres de la pile

Après chaque sauvegarde /extraction le pointeur est automatiquement


décrémente /incrémente de 1

Définition d’une pile : zone mémoire RAM gérée par des pointeurs qui
permettent de transférer

Rapidement des données dans des cases mémoires selon un protocole bien
établi.

La partie pratique

13
COMPTE RENDU INFORMATIQUE INDUSTRIEL : ASSEMBLEUR 6809

Manipulation 1 :
Composant Emplacement Adressage sur le Capacite mémoire
Zi(1≤i≤20) mc09
EPROM système 2732 8 ko
dans laquelle réside le Z6 De A
programme du
moniteur MC09
EPROM 2732 Z7 E000 FFFF 8ko
extension utilisateur
EPROM 2732 Z8 C000 DFFF 8ko
extension utilisateur
PIA 6821 Z9 8000 B003 4 octets
utilisateur
VIA 6522 Z2 8400 840F 16 octets
utilisateurs
Timer 6840 Z4 8800 8807 8 octets
utilisateur
ACIA 6850 Z5 8C00 8C01 2 octets
utilisateur
PIA 6821 système Z11 9000 9FFF 8 ko
(afficheurs et
clavier)
RAM utilisateur Z10 0000 0FSF 4 ko
90 octets réserver 0F60 0FFF 160 octets
au moniteur MC09
Processeur 6809
Clavier 30 touches
Deux connecteurs COM1
50 points chacun
Alimentation + 5V
Borne de masse MASSE

Manipulation 2 :
14
COMPTE RENDU INFORMATIQUE INDUSTRIEL : ASSEMBLEUR 6809

1- Initialisation au logiciel MOTO 6809


2- Complétant les tableaux suivants :

Adresse Code machine Code Adressage Commentaires


MC09 MOTO6809 Code Code mnémonique
opérati opérande
on
0000 FC00 86 Immédiat Charge la
LDA #$30 valeur A=25

0002 FCO2 88 ADDA #$51 Immédiat Additionner la


valeur 51
A=30+51=81
0004 FC04 3F END Inhérent Fin du
programme

Instruction Définition
LDA Chargement de A avec le contenu mémoire

ADDA Addition du contenu mémoire a l’accumulateur A

END Fin de programme

Adresse Code machine Code Adressage


mnémonique Commentaire
Code Code
opération opérande
0000 ---- 09 ; $0021 DB ------- 1
$09
0002 ----- 10 ; $0021 DB ------ 2
$10
0004 86 00 LDA#$00 Immédiat 3
0006 1F 8B TFR A, DP Inhérent 4

15
COMPTE RENDU INFORMATIQUE INDUSTRIEL : ASSEMBLEUR 6809

0008 D6 20 LDB $ 20 Direct 5


000A D0 21 SUBB $21 Direct 6
000C F7 22 STB $0022 Étendu 7
000E 3F ----- END Inhérent 8

La vérification sur la maquette MC09 :

On a vérifié que chaque adresse contient son code et les lampes s’allume

Par
l’incrémentation les autres lampes sont allumées :

16
COMPTE RENDU INFORMATIQUE INDUSTRIEL : ASSEMBLEUR 6809

Après
le

changement de code les lampes allumées qui changent :

Incrémentation de code (STA) la lampe rouge s’allume :

17
COMPTE RENDU INFORMATIQUE INDUSTRIEL : ASSEMBLEUR 6809

18
COMPTE RENDU INFORMATIQUE INDUSTRIEL : ASSEMBLEUR 6809

Exercice 2 :

Test du programme a laide simulateur MOTO6809 puis sur la maquette MC09

Conclusion :
Généralement le TP du l’informatique industriel nous permet
de savoir beaucoup des choses sur le microprocesseur qui
permit de la création d’appareils complètement imposable.et
les objectifs principaux de ce TP sont :

La familiarisation avec l’utilisation de microsystème MC09

L’application de quelques programmes du processeur 6809 à


travers l’interface MC09

19
COMPTE RENDU INFORMATIQUE INDUSTRIEL : ASSEMBLEUR 6809

Finalement je remercier MR. KHATORY pour tous ses efforts


qu’il ne lésine pas sur nous

20

Vous aimerez peut-être aussi