Vous êtes sur la page 1sur 13

SYSTEME DE CONTROLE DACCES ELA CT 1000+L SEQUENCE 1

1- Architecture des systmes micro programms :

1.1- Systme minimum microprocesseur : exemple utilisant un microprocesseur


MOTOROLA 6809 :

1
Micro-
-processeur
ROM RAM PIA
6809

3 4 5 6
DECODEUR DADRESSES

Le systme comprend :

Le microprocesseur, cerveau du systme

De la mmoire :

- morte (ROM : Read Only Memory : mmoire lecture seule) pour stocker le
programme, ainsi la mise hors tension celui-ci ne ........................................

- vive (RAM : Random Access Memory : mmoire accs alatoire) pour ranger les
donnes sur lesquelles le programme travaille. A la mise hors tension toutes ces
donnes ................................

Remarque : mmoire accs alatoire ne veut pas dire grand-chose, car la ROM aussi
est accs alatoire si on veut chipoter, mais ce nom est devenu un usage alors on fait
avec...

Au moins une interface dentre sortie : exemple PIA (Parallel Interface Adapter :
adaptateur dinterface parallle) ou ACIA (Asynchronous Control Interface Adapter
qui est une interface srie type bus RSXXX). Linterface est le minimum pour que le
systme puisse communiquer avec dautres composants ou dispositifs (clavier,
dcodeur + afficheur 7 segments au plus simple, ou un clavier, un cran, une
imprimante ou un autre ordinateur au plus complexe...)

Rvis le 14/12/2006 Page 1/12 Romuald REBECK


SYSTEME DE CONTROLE DACCES ELA CT 1000+L SEQUENCE 1

Une circuiterie de contrle (dcodeur dadresse) pour dcider quel circuit


communique avec le microprocesseur (note 1)

3 bus :

Le bus de donnes (8 fils sur le 6809) : bidirectionnel, repre 1, toutes ces lignes
sont des entres et des sorties du P (pas en mme temps, mais selon lopration,
le bus est en entre ou en sortie), pour ranger des donnes (bus en sortie) de 8 bits
dans la RAM ou dans les registres du PIA ou aller chercher (bus en entre) ou crire
(bus en sortie) des donnes de 8 bits dans la RAM ou les registres du PIA ou des
instructions dans la ROM.

Le bus dadresses (16 fils sur le 6809) unidirectionnel, repre 2, toutes ces lignes
sont des sorties du P pour slectionner une case mmoire (8 bits) dans la RAM ou la
ROM ou un registre du PIA

Le bus de contrle bidirectionnel, repre 3, certaines lignes sont des sorties,


dautres des entres du P, qui vhiculent les signaux tels que demande dcriture
par le P (sortie), demande de lecture par le P (sortie), demandes dinterruption des
priphriques (entres). Exemple de ligne de contrle, la ligne R/ W (Read/ WRITE ),
lecture/ criture , elle est 1 si on veut lire une case mmoire, 0 si lon veut crire
dans une case mmoire

Note1 : tous les circuits tant relis sur le bus de donne, ils ne peuvent pas communiquer
en mme temps avec le P. Par exemple, si le P veut crire dans la RAM, il ne faut pas
que la ROM ou le PIA prsentent des donnes sur le bus en mme temps, car elles ont
toutes les chances dtre diffrentes et donc de provoquer des court circuits et la
destruction du systme, au mieux, si le systme ne se dtruisait pas, on pourrait avoir la
RAM qui met une ligne de donne 1 et la ROM qui met la mme ligne 0, donc du 5V
reli du 0V (ce qui sappelle mettre deux sorties en court-circuit !!!)
On utilise alors la commande de slection de botier (chip select)
Selon ladresse laquelle le P pointe, adresses qui sont diffrentes pour la ROM, la
RAM et le PIA, le dcodeur sait de quel circuit il sagit et slectionne le botier
correspondant en dsactivant les autres (mise ltat haute impdance de leurs lignes de
sorties de donnes et mise en veille du circuit)

Exemple, le P veut crire dans un registre du PIA

Il slectionne le PIA (par la ligne de chip select repre 6), dont les lignes de donnes
seront actives et met les lignes de donnes de la RAM et la ROM (par les lignes de
chip select 4 et 5) ltat haute impdance et ces deux circuits en veille.

On noubliera pas dalimenter lensemble (ben oui, il faut rajouter une alimentation) et
de rajouter des dispositifs dentre et sortie + un quartz pour cadencer le P + quelques
composants de type rsistances et condensateurs et on obtient un truc sympa qui
fonctionne.

Rvis le 14/12/2006 Page 2/12 Romuald REBECK


SYSTEME DE CONTROLE DACCES ELA CT 1000+L SEQUENCE 1

1.2- Systme microcontrleur :

Le microcontrleur contient au minimum de la ROM, de la RAM, des lignes


dentre/sortie pour communiquer avec lextrieur et toute la circuiterie pour grer
lensemble.
On rajoute des dispositifs dentre et sortie + un quartz et quelques composants et (encore)
une alimentation et on a un truc beaucoup plus sympa qui fonctionne aussi.

1.3- Alors microprocesseur ou microcontrleur ?

A la prhistoire de linformatique, il y a 30 ans, il nexistait que quelques


microprocesseurs

Puis sont apparus les microcontrleurs et en mme temps, les microprocesseurs nont
pas disparu et ont volu (augmentation de la taille du bus de donnes : 8 bits au
dpart puis 16 puis 32 et de la vitesse, au dpart 1Mhz, actuellement plus de 3 GHz en
standard soit des P 3000 fois plus rapides en 25 ans, ajout de coprocesseurs au dpart
(circuits qui ne faisaient que des oprations pour soulager le P) puis de chipsets qui
grent des bus supplmentaires (exemple bus PCI) et ajout de cartes (son,
graphiques...) de plus en plus complexes rapides et puissantes avec leur propre
mmoire (exemple vido). Actuellement : puissance (taille de bus) vitesse et bus
hirarchiss ont considrablement perfectionn les premier PC (dbut des annes 80)
qui ramaient 1Mhz avec 1MO de RAM, il ny avait aucun ventilateur cette poque.

Les microprocesseurs conviennent aux dispositifs complexes, puissants, rapides et


industriels (par exemple le micro-ordinateur quip dun Pentium de chez INTEL
3 GHz) qui fonctionne trs vite mais chauffe donc beaucoup, silicium et vitesse =
chaleur, tellement que si on ne le refroidit pas il se dtruit en quelques secondes.

Les microcontrleurs, de par leur simplicit et leur faible cot conviennent bien aux
petits systmes, avec des frquences dhorloge de quelques Mhz, industriels ou
dveloppes par des bricoleurs, il suffit davoir un microcontrleur, un Programmateur
de microcontrleur, une insoleuse, du perchlorure de fer, un fer souder et une bonne
ide.

2- Rappels sur les mmoires :

2.1- Diffrents types de mmoires mortes :

Les ROM masque : programmes en usine directement sur le silicium par un masque.
Moins cher en trs grande srie quune PROM encore moins quune EPROM, mais le
programme/ou les donnes stocker devront tre parfait/ou figes et ne pourront plus tre
modifis. Elles sont en voie de dclin actuellement.

Rvis le 14/12/2006 Page 3/12 Romuald REBECK


SYSTEME DE CONTROLE DACCES ELA CT 1000+L SEQUENCE 1

Les PROM (Programmable ROM)

OTPROM (One Time programmable ROM) programmable une seule fois par
destruction de micro fusibles par exemple.

EPROM (Erasable PROM) programmables et effaables

- Les premires EPROM ont t les UVPROM programmables avec un


programmateur dEPROM et effaables avec un tube ultra violets (attention
les yeux).
Principe de programmation : on rend un transistors MOS grille isole
conducteur/ou non en pigeant/ou pas des lectrons au niveau de sa grille en
utilisant une tension dalimentation plus leve que la tension normale par
exemple 25V pour les premires, moins depuis. Les transistors conducteurs
donnent un niveau logique en sortie, les transistors bloqus (ceux dont la grille
ne contient pas de charges) donnent le niveau complmentaire.
Principe deffacement : on libre les lectrons pigs en les soumettant des
photons haute nergie (lumire UV), il y a une fentre sur le botier. Il faut
respecter le temps dans leffaceur dEPROM sinon il reste des lectrons captifs
et lEPROM nest pas totalement efface.
On noublie pas de masquer la fentre avec autocollant opaque une fois que
lUVPROM est programme, sinon la lumire du jour suffit leffacer ou
endommager le contenu (on a quand mme du temps pour mettre
lautocollant !)
Remarque, il existe des UVPROM sans fentre, on obtient alors une PROM
car la mmoire nest plus effaable. Lintrt est que la technique des MOS
grille isole est moins coteuse que celle des micros fusibles

- Ensuite sont apparues les EEPROMS (Electrically Erasable PROM)


Programmables et effaables avec des hautes tensions comme les UVPROM
au dpart puis des tensions de plus en plus basses et avec des technologies plus
volues et actuellement avec la tension dalimentation du microprocesseur ou
microcontrleur soit 5V par exemple, ce qui permet dy crire en la laissant sur
la carte micro et sans utiliser de programmateur, elles nont toutefois pas la
rapidit ni la facilit dcriture des RAM et on ne peut pas crire et effacer
indfiniment un peu comme un CDRW (mais quelques millions de fois quand
mme... Cest dj pas mal)

Un type particulier dEPROM est leprom flash, plus rapide leffacement puisquon
peut leffacer totalement en une opration ou par pages dont la taille tend devenir
plus petite aujourdhui. Les EEPROM sont effaces et rcrites octet par octet.

A noter, les RAM pile intgre qui se comportent comme des RAM pour la
lecture/criture mais dont les donnes persistent quand on coupe lalimentation (du
moins tant que la pile nest pas dcharge), ce ne sont pas des ROM mais on peut les
utiliser tout comme. Elles ont lavantage dtre rapides et ont peut lire et crire
facilement presque indfiniment.

Rvis le 14/12/2006 Page 4/12 Romuald REBECK


SYSTEME DE CONTROLE DACCES ELA CT 1000+L SEQUENCE 1

Attention : le terme UVPROM est rarement utilis, on devrait mme dire UVEPROM
Dans les docs on trouve souvent le simple terme dEPROM pour de lUVPROM.
Une autre confusion existe entre EPROM et EEPROM car une EEPROM est aussi une
EPROM, dans tous les cas rfrez vous la documentation.

2.2- Diffrents types de mmoire vive :

Les RAM dynamiques (Dynamic RAM en anglais)

Linformation est stocke dans des micro condensateurs qui ne conservent la charge que
quelques dizaines de nano secondes ce qui oblige rgnrer cette charge toute les 15 ns
par exemple. Cette opration sappelle le rafrachissement.

Les RAM statiques (Static RAM en anglais) ou SRAM

Linformation est stocke dans des bascules transistors. Ltat de la bascule est stable
dans le temps et ces mmoires nont pas besoin dtre rafrachies. Elles sont utilises pour
les mmoires cache des systmes.

3- Les microcontrleurs PIC16C5X, gnralits

3.1- Architecture interne : de type Harvard par opposition larchitecture Von Neumann

Architecture Von Neumann (cas du microprocesseur 6809 de la socit MOTOROLA)

Une instruction tient dans lEPROM sous forme de plusieurs octets en anglais
bytes (case mmoire de format 8 bits)

- un ou deux octets pour le code opration de linstruction sans la donne ou


ladresse

- un ou deux octets pour la donne ou ladresse

Il ny a quun bus pour faire les transferts de lEPROM vers le P, le bus de


donnes

Dans le cas dune instruction qui tient sur 4 octets, les 4 octets devront tre achemins par
le bus de donne de 8 bits vers le P les uns aprs les autres pour tre traits soit dj 4
cycles pour le transfert de la totalit de linstruction.

Architecture interne Harvard (cas du microcontrleur PIC 16C5X de la socit


MICROCHIP)

Une instruction tient dans lEPROM sous forme dun mot (en anglais Word) de
12 bits (case mmoire de format 12 bits)

Rvis le 14/12/2006 Page 5/12 Romuald REBECK


SYSTEME DE CONTROLE DACCES ELA CT 1000+L SEQUENCE 1

- une partie des 12 bits sert ranger le code opration de linstruction sans la
donne ou ladresse
- le reste pour la donne ou ladresse.

Linstruction est extraite de la case mmoire en une fois, coupe en 2 par un


dcodeur dinstruction et achemine vers lunit arithmtique et logique (le
calculateur du PIC) par deux bus, un bus pour la partie du code opration relative
linstruction sans la donne ou ladresse et un bus pour la donne ou ladresse
Lavantage de larchitecture Harvard est que lon gagne en rapidit.

Une case mmoire suffit pour linstruction qui est lue en un cycle contre 2 4 pour le 6809

3.2- Architecture RISC :

Le format de linstruction est petit (12bits) car le PIC utilise larchitecture RISC (Reduced,
Instruction Set Computer : circuit jeu dinstruction rduit)
En effet il ny a que ....... instructions, donc la partie du code opration relative linstruction
sans la donne ou ladresse est plus petit (....... bits)
Par opposition un 6809 peut excuter beaucoup plus dinstructions avec 16 bits pour la partie
du code opration relative linstruction sans la donne ou ladresse.

3.3- Pipe Line :

Pour aller encore plus vite, dans le PIC, pendant quune instruction sexcute, la suivante est
dj en train dtre charge, structure appele pipe line. Soit encore plus de rapidit.

3.4- Remarque :

Il faut tout de mme 4 cycles dhorloge pour excuter une instruction.


Exemple avec un quartz de 4 Mhz, la priode doscillation est T = 1/ 4 000 000 = ......... ns
4 priodes sont ncessaires pour traiter une instruction, ce traitement dure donc 4 x ........ ns
Soit ....s donc 1 instruction toutes les s

Soit 1/ 1x10-6 = 1 000 000 dinstructions par seconde

Donc avec un quartz de 40Mhz (valeur ........................) 10 000 000 dinstructions par seconde

4- Le PIC utilis dans OT2 du systme ELA (le clavier)

4.1- Rechercher dans la documentation constructeur :

Quelle est la rfrence du PIC utilis ? ..........................

Quelle est la frquence maximale dhorloge de ce circuit ? ..........................

Quelle est la taille de la ROM ? ...................... mots de ........ bits (1 K=1024 en


informatique)

Sagit-il de ROM masque ou dEPROM ? ..........................

Rvis le 14/12/2006 Page 6/12 Romuald REBECK


SYSTEME DE CONTROLE DACCES ELA CT 1000+L SEQUENCE 1

Sil sagit dEPROM est ce de LEEPROM de lUVPROM ? ..............................

Quelle est la taille de la RAM ? ......................................

Combien y a-t-il de lignes dentres sorties ? .................

Combien le circuit possde-t-il de broches ? ..................

4.2- Circuit quivalent une broche dentre/sortie :

La sortie est de type CMOS


Utilisant des transistors MOS complmentaires
MOS (Metal oxyde Semi conductor)
Ce sont des transistors effet de champ
La sortie comprend 2 transistors
Un transistor mos canal P
Un transistor mos canal N

Un transistor MOS qui conduit est quivalent


....
une faible rsistance (une dizaine une
centaine dohms) on la considrera nulle pour
des courants raisonnables (100 ohms x 2mA
correspond une chute de tension de 0,2V de
mme que 20 ohms x 10mA = 0,2 V) donc son
modle sera
....un interrupteur ferm

Un transistor MOS qui est bloqu est


quivalent un interrupteur ouvert

VDD=5V VSS=0V

1er cas :
Le MOS canal P conduit
.... V Le MOS canal N est bloqu

En sortie on a ......V

Etat logique .....

Rvis le 14/12/2006 Page 7/12 Romuald REBECK


SYSTEME DE CONTROLE DACCES ELA CT 1000+L SEQUENCE 1

2me cas :
Le MOS canal P est bloqu
.... V Le MOS canal N conduit

En sortie on a ......V

Etat logique .....

3me cas :
Le MOS canal P est bloqu
Le MOS canal N est bloqu

La sortie est ltat haute impdance


not Hi , HZ ou HiZ
Elle est comme dconnecte

Cette situation est utilise pour la


lecture, la broche est en entre

Lecture de ltat dune broche

Buffer ou tampon (amplificateur) 3 tats (H, L, HiZ)


Si le tampon est en lecture, on trouve en sortie ce que
lon a en entre (RD port est comme la commande dun
robinet ouvert si ordre read, ferm sinon)

Rvis le 14/12/2006 Page 8/12 Romuald REBECK


SYSTEME DE CONTROLE DACCES ELA CT 1000+L SEQUENCE 1

...... L ...... H ...... X


. . .

ordre read (robinet ouvert) ordre read (robinet ouvert) pas dordre read (robinet ferm)

La situation o les deux transistors sont conducteurs conduirait un court-circuit et ne


doit pas se produire

4.3- Les ports dentre sortie :

Le circuit comprend 20 lignes dentre/sortie rpartis en 3 ports dentre/sortie grs par 3

registres, 2 ports de 8 bits grs par les registres .............. et ...............

et un port de 4 bits grs par le registre ..............

Reprez PORTA, PORTB et PORTC sur le schma fonctionnel

Chacune des lignes de ces ports peut tre utilise soit en entre soit en sortie, le choix se
faisant par la programmation (contenu des registres de contrle des ports appels TRISA pour
le PORTA, TRISB pour le PORTB TRISC)

Reprez TRISA, TRISB, TRISC sur le schma fonctionnel

Rvis le 14/12/2006 Page 9/12 Romuald REBECK


SYSTEME DE CONTROLE DACCES ELA CT 1000+L SEQUENCE 1

4-4- Programmation de la direction dune ligne dentre sortie :

Retrouver le paragraphe qui explique le fonctionnement dans la doc constructeur :

Pour programmer une ligne en sortie il faut mettre le bit de contrle de direction dans le

registre TRIS correspondant .........

Pour programmer une ligne en entre il faut mettre le bit de contrle de direction dans le

registre TRIS correspondant .........

Rechercher linfo dans la doc :

Au reset la mise sous tension toutes les lignes sont programmes par dfaut en ..............

Ce qui les met ltat haute impdance

Cette info se trouve page ........

4.5- Programmation de la direction dun port :

On veut programmer le port B pour que RB0, RB1, RB2, RB3, RB4 et RB7 soient en entre
ou simplement ltat haute impdance (en effet il faut lire la ligne pour quelle soit une
entre, voir tampon 3 tat) et RB5 et RB6 en sortie

Il faut donc mettre la valeur binaire .......................................... dans .............

Pour charger une valeur dans le registre TRISB, il faut dabord charger le registre de travail
du microcontrleur, appel ..... avec cette valeur.

Reprez ce registre sur le schma

Il faut ensuite ranger le contenu de ..... dans le registre TRIS...

Rvis le 14/12/2006 Page 10/12 Romuald REBECK


SYSTEME DE CONTROLE DACCES ELA CT 1000+L SEQUENCE 1

Donc on veut mettre 10011111B dans TRISB

On charge W avec la valeur 10011111

Ceci se fait avec linstruction MOVLW 10011111B

Aprs linstruction on a :

Il faut ensuite ranger le contenu de W dans le registre TRISB (remarque : le contenu de W ne


disparat pas)

Ceci se fait avec linstruction TRIS PORTB

Aprs linstruction on a

Bravo ! Vous venez de voir vos 2 premires instructions

Retrouvez les dans le programme page 31/56, vous voyez, ce nest pas compliqu !!!

Rvis le 14/12/2006 Page 11/12 Romuald REBECK


SYSTEME DE CONTROLE DACCES ELA CT 1000+L SEQUENCE 1

On en dduit que les broches n ............................... du PIC seront des sorties

Et que les broches n ............................... du PIC seront des entres ou simplement ltat

haute impdance

4.6- Ecriture sur un port :

Si maintenant on va crire un 1 dans RB5 (bit 5 du port B), la broche n .... du PIC sera ....V

Si lon va crire un 0 dans RB6, la broche n .... du PIC sera ....V

4.7- Lecture dun port :

Si le cavalier J1 est en position N, la broche ..... du PIC est .....V

Si lon vient lire ltat de cette broche on trouvera un tat logique .... dans le bit ..... du port B

Ce bit sappelle RB....

4.8- Remarque :

Un bon principe consiste ne mettre une ligne en sortie que quand on a besoin dcrire
dessus, donc la mettre en entre le reste du temps mais sans la lire (donc tat haute
impdance).
Par exemple on ncrit sur le clavier que quand on le scrute, le reste du temps les lignes
de sortie sont place en entre donc ltat haute impdance et on ne les lit pas, ce sont
des sorties !
Cela permet notamment dcrire dans les ports sans ce soucier de ces bits.
Cela permet aussi de ne pas faire conduire un transistor de sortie pendant des heures
sans changer ltat de la sortie.
On met alors cette sortie ltat haute impdance (en entre) et on fixe ventuellement
un potentiel sur la broche grce une rsistance de tirage au +VDD (pull up rsistor) ou
au 0V (pull down resistor) pour donner quand mme un tat quand les transistors de
sortie sont bloqus (haute impdance) si cest ncessaire.

Des liens pour des informations sur les mmoires:

http://www.commentcamarche.net/pc/rom.php3

http://www.commentcamarche.net/pc/ram.php3

Rvis le 14/12/2006 Page 12/12 Romuald REBECK


This document was created with Win2PDF available at http://www.win2pdf.com.
The unregistered version of Win2PDF is for evaluation or non-commercial use only.
This page will not be added after purchasing Win2PDF.

Vous aimerez peut-être aussi