Вы находитесь на странице: 1из 9

LACIA 6850

INTERFACE SERIES ACIA 6850

LACIA 6850 (Asynchronous Communications Interface Adapter) est le coupleur de


priphrique qui permet de raliser la liaison entre le microprocesseur 6809 et ses
priphriques.

LACIA communique avec le microprocesseur par lintermdiaire des bus de :

Donnes (8 bits);

Adresses (4* lignes);

Contrle.

Les dialogues avec la priphrie sont assurs par une ligne de transmission et une de
rception. Trois broches de contrle assurent la synchronisation des transferts.

La programmation de lACIA est fonction de :

La vitesse de transmission;

Le format du mot envoy;

Le priphrique connect.

I. ORGANISATION DE LACIA :

1. Organisation interne de lACIA :

LACIA comprend 4 registres internes (8 bits) accessibles lutilisateur :

TDR (Transmit Data Register) : registre de transmission criture seule, il contient le


mot mettre (8 bits) ;

RDR (Recive Data Register) : registre de rception lecture seule, il reoit le


mot (8 bits) en provenance de la priphrie;

CR (Control Register) : Registre de contrle criture seule, il contient les


paramtres de fonctionnement (8 bits) en transmission et en rception;

A. FAKKAR 76
LACIA 6850
SR (Statut Register) : Registre dtat lecture seule, il contient les informations
(8bits) sur les oprations en cours.

2. Organisation externe de lACIA :

LACIA se prsente sous la forme dun botier DIL (Dual In Line), 24 broches,
mono-tension (0, 5 V).

14 6
E T XDA TA
8 5
10 CS0 RTS
9 CS1 7
CS2 IRQ
11 22
2 RS D0 21
24 RXDA TA D1 20
23 CTS D2 19
DCD D3 18
3 D4 17
4 RXCLK D5 16
T XCLK D6 15
13 D7
R/W
A CIA 6 850

a. Liaisons avec le microprocesseur :

Bus de donnes D0, D1,, D7 : Ces 8 lignes bi-directionnelles sont


directement relies au bus du 6809. Elles assurent lchange de donnes entre
le microprocesseur et lACIA.

Bus des adresses :

CS0, CS1 et /CS2 (Chip Select line) : Ces trois entres


permettent de slectionner le botier ACIA.

RS (Register Select line) : Cette entre permet de slectionner les


registres internes (2 octets mmoires).

Bus de contrle :

E (Enable line) : Signal dactivation des changes.

R/W (Read/ Write) : Lecture-criture.

/IRQ (Interrupt ReQuest line) : Reli /IRQ, /FIRQ ou /NMI du


6809, cette sortie permet dinterrompre le microprocesseur.

b. Liaison avec la priphrie :

A. FAKKAR 77
LACIA 6850
Lignes de transfert :

TxD (Transmitted Data line) : Ligne de transmission de donnes.


Cette sortie assure la transmission de donnes.

RxD (Receive Data line) : Ligne de rception de donnes. Cette


entre rceptionne les donnes srie en provenance de la
priphrie.

Lignes de contrle :

/RTS (Request To Send) : Sortie demande dmission, elle permet


de piloter un priphrique ou un MODEM.

/CTS (Clear To Send) : Entre inhibition de lmetteur, elle


permet le contrle automatique de la fin de transmission par un
MODEM. Non utilise, elle doit tre au niveau bas.

/DCD (Data Carrier Detect) : Entre perte de la porteuse de


donne, elle permet le contrle de la rception. Non utilise, elle
doit tre au niveau bas.

Lignes dhorloges :

TxCk (Transmit Clock) : Entre dhorloge de transmission, elle


sert de rfrence pour la transmission de donnes.

RxCk (Receive Clock) : Entre horloge de rception, elle est


utilise pour la synchronisation des informations reus.

II. FONCTIONNEMENT DE LACIA

Le diagramme de fonctionnement de lACIA nous montre le rle des diffrents


registres accessible lutilisateur.

Transfert dune donne entre le processeur et la priphrie :

La donne est charge dans le registre de transmission TDR, on fait un accs en


criture. TDR transfert cette donne dans un registre dcalage qui la srialise. Le format

A. FAKKAR 78
LACIA 6850
de la donne transmise dpend du contenu du registre de contrle, il en est de mme pour
la vitesse de transmission.

Transfert dune donne entre la priphrie et le processeur :

Le mot est rceptionn par le registre dcalage RSR qui le dsrialise. Il est ensuite
transfr dans le registre de rception. La donne reus sera prise en compte par un accs
en lecture de RDR. Si le message ne correspond pas ce qui tait initialement prvu, les
indicateurs dtat de SR sont positionns.

III. SELECTION DES REGISTRES INTERNES

Le dialogue entre le microprocesseur et la priphrie seffectue par lintermdiaire


des registres internes de lACIA. Pour accder ces registres, on dispose de 3 lignes de
slection de botiers (CS0, SC1 et /CS2) et dune ligne de slection de registre (RS). La
figure rsume la mthode dadressage des registres internes de lACIA. LACIA occupe 2
octets mmoires conscutifs, puisque RS est reli A0. Les lignes A1-A15 sont relies une
logique de dcodage qui dtermine ladresse de base de lACIA en slectionnant le botier.
Les 4 registres internes tant accessibles en lecture (TDR et CR) et en lecture (RDR et
SR), la ligne R/W intervient dans la slection de ces registres.

VI. PROGRAMMATION DE LACIA

La communication srie gre par lACIA utilise la procdure START-STOP. Chaque


caractre transmis ou reu un format de 7 ou 8 bits avec ou sans bit de parit. Il est
prcd dun bit de START et suivi de 1 ou 2 bits de STOP.

Chacun de ces bits est synchronis sur une horloge mais la suite des caractres est
asynchrone (voir figure 1).

A. FAKKAR 79
LACIA 6850
Figure 1 : Principe de la transmission

1. Programmation du registre de contrle :

Ce registre, criture seule permet de commander le fonctionnement de la partie


transmission et de la patrie rception. La signification prcise de chacun des bits de loctet
charger dans ce registre est donne par la figure 2 .

Afin dviter la transmission dinformations intempestives, ce circuit comporte un


dispositif de mise sous tension qui le maintient dans un tat inhib jusqu son initialisation
programme (CR5 = 0 et CR6 = 1).

Cette initialisation est le constructeur lappelle un MASTER RESET ; pour cela il suffit
de charger le registre de contrle par le mot suivant :

7 0

x x x x x x 1 1

(x) : indiffrent (ne modifie pas CR5 et CR6).

On peut ensuite charger le registre de contrle par loctet dfinissant le mode de


fonctionnement du botier. Les bits de ce registre ont alors la signification suivante :

CR1 CR0 : Ces bits dfinissent le rapport de division des horloges de transmission
et de rception par rapport RxCk et TxCk.

CR4 CR3 CR2 : Ces bits dfinissent le format de chaque mot srie reus ou
transmis dans la procdure START STOP.

CR6 CR5 : Actifs en transmission seulement, ces bits dfinissent ltat de la


sortie /RTS ainsi que la validation (ou linhibition) des interruptions dues la transmission.
En autre ltat CR6 = 1 et

CR5 = 1 permet denvoyer un caractre break sur la sortie TxD (TxD = 0 pendant
quelques priodes de lhorloge).
A. FAKKAR 80
LACIA 6850
CR7 : Actif seulement en rception, ce bit lorsquil est 1 permet dinterrompre le
microprocesseur quand le registre de rception est plein.

2. Registre dtat SR rle des indicateurs :

Ce registre lecture seule, contient les informations tmoins (les indicateurs) de ltat
de linterface 6850. Il permet de connatre ltat des registres de transmission, de
rception, de lentre /CTS, de lentre /DCD et des demandes dinterruption /IRQ. Son
format est donn sur la figure 3 .

La signification de ses bits est la suivante :

SR0 : RDRF (Receive Data Register Full) :

Un test sur ce bit permet de connatre ltat du registre de rception RDR.

Si SR0 = 0, ce bit indique que le registre de rception est vide.

Si SR0 = 1, ce bit indique que le registre de rception est plein et que les
indicateurs de rception du registre dtat SR sont positionns. Ce bit est remis 0 par
une lecture du registre de rception ainsi que par un MASTER RESET.

En outre, lorsque lentre /DCD est ltat haut, indiquant ainsi une absence de
porteuse pour le MODEM, le bit RS0 est alors forc ltat bas (indiquant que le registre
de rception est vide).

SR1 : TDRE (Transmit Data Register Empty)

Ce bit de contrle de connatre ltat du registre de transmission.

Si SR1 = 1, ce bit indique que le registre de transmission est vide.

Si SR1 = 0, ce bit indique que le registre de transmission est plein. Ainsi,


lcriture dans TDR fait passer le bit SR1 de 1 0, le transfert de TDR
TSR remet SR1 0.

En outre, lorsque lentre /CTS est ltat haut, le bit SR1 est forc 0, ce que
devra empcher le logiciel de lutilisateur dcrire une nouvelle donne dans le registre de
transmission.

A. FAKKAR 81
LACIA 6850
SR2 : /DCD (Data Carrier Detect)

SR2 = 1 ce bit indique que la porteuse est absente, le registre de rception


est toujours considr comme vide, aucune donne nest prise en
considration. SR7 est positionn 1 et la sortie /IRQ 0 sur front montant
du signal /DCD si les interruptions de la rception sont autorises.

SR2 = 0, ce bit indique que la porteuse de donne est prsente au niveau du


MODEM, donc que la transmission est ventuellement correcte. Notons
quune lecture du registre dtat SR suivie dune lecture du registre de
rception RDR ou dun MASTER RESET entrane SR2 = 0 et SR7 = 0
(remise 0 des indicateurs).

SR3 : /CTS (Clear To Send)

Le bit SR3 est la recopie de ltat de lentre /CTS. Un niveau haut sur cette
entre inhibera le bit TDRE (SR1) en le forant 0. Il en sera de mme de SR7. Ce bit SR3
non affect par un MASTER RESET, na aucune action sur la donne place dans le
registre de transmission TDR ou en cours de chargement.

Il a un rle dinhibition qui lui est attribu par le programme dexploitation.

SR4 : FE (Framing Error)

Si SR4 = 1, ce bit indique une erreur de format.

Si SR1 = 0, ce bit indique quil ny a pas derreur de format

Une erreur de format ce caractrise par la perte dun bit par exemple, ou lmission
dun caractre break sur la ligne. Ce dfaut entrane une dsynchronisation forant SR4
1. Celui ne reviendra 0 que si la transmission redevient correcte pour la donne suivante.

SR5 : OVRN (Over Run)

SR5 = 0, ce bit indique que la rception est correcte.

SR5 = 1, ce bit indique une surcharge.

A. FAKKAR 82
LACIA 6850
Dans ce cas, plusieurs caractres ont t reus avant la lecture du prcdent par le
microprocesseur. La mise 1 de SR5 est faite partir du milieu du dernier du Snd caractre
reu sans lecture.

Ce bit est ramen 0 par une nouvelle lecture ainsi que par le bit SR0.

SR6: PE (Parity Error)

SR6 = 0, ce bit indique quil ny a pas derreur de parit.

SR6 = 1, ce bit indique quil y a une erreur de parit

Ce bit est positionn si un contrle de parit a t programm dans le registre de


contrle.

Notons quun tat 1 sur lente /DCD ou un MASTER RESET remet PE 0.

SR7 : /IRQ (Interrupt Request)

Ce bit indicateur de demande dinterruption, est positionn 1, par 3 sources


diffrentes :

Partie transmission : Si CR5 = 1 et CR6 = 0, les demandes dinterruption sont


valides et SR7 recopie le bit TDRE.

Partie rception : Si les demandes dinterruption sont valides (CR7 = 1), SR7 est
la recopie du bit RDRF.

Dtection de porteuse : Si les demandes dinterruption sont valides (CR7 = 1), la


dtection de labsence de porteuse (entre /DCD = 1), entrane le positionnement de SR7
1 et de la sortie /IRQ 0.

A. FAKKAR 83
LACIA 6850
V. ANALYSE DE FONCTIONNEMENT :

1. En transmission :

Dans le logiciel de fonctionnement de ce priphrique, lenvoie dun caractre dans


le registre de transmission RDR est toujours prcd par une lecture du bit 7 du TDRE du
registre dtat SR. Cette lecture est ralise suite une interruption ou une scrutation
permanente de ce bit dans une boucle dattente.

Lorsque le chargement du registre de transmission TDR est ralis, le bit TDRE


passe 0 interdisant ainsi un nouveau chargement. La donne du TDR est alors transfre
dans le registre TSR pour tre srialise avec les drapeaux de dbut (START) et de fin
(STOP) de donnes, et transfre sur la sortie TxD la vitesse de lhorloge TxCk
(ventuellement divise par 16 ou 64).

2. En rception :

La synchronisation entre lhorloge de rception RxCk et la frquence de rcurrence


des bits constituant la donne doivent tre synchrone. Cette synchronisation est interne
dans le cas dune division par 16 ou 64, et est raliser par lutilisateur dans le cas o il
ny a pas de division (CR1 = 0 et CR0 =0).

La donne reue est dsrialise dans le registre RSR puis charge dans le registre
positionnant 1 le bit RDRF de registre dtat SR. Ce bit est 0 par une lecture de
registre RDR.

A. FAKKAR 84

Вам также может понравиться