Vous êtes sur la page 1sur 16

INTERFACES D’ENTREES-SORTIES

1 Rôle des interfaces

Adaptation physique et logique


Accès par adressage
Synchronisation des échanges

2 Synchronisation des entrées-sorties

Consultation et affichage directs


Synchronisation par test d’état

3 Compléments
INTERFACES D’ENTREES-SORTIES

-1-
Rôle des interfaces

Très grande diversité des périphériques


usuels : clavier, écran, imprimante ...
particuliers : caméra, automate, outil de mesure ...

➜ Uniformiser la vision des périphériques :


adaptation physique et logique
accès par adressage
synchronisation

processeur
Interface

adaptation logique
adressage adaptation périph.
synchronisation physique
Bus

2
INTERFACES D’ENTREES-SORTIES

Rôle des interfaces


Adaptation physique
amplification de tension ou de courant
changement de support physique :
courant, optique, magnétique
conversion analogique → digital
conversion digital → analogique
capteurs / actionneurs (image, son, ...) :
relèvent de dispositifs périphériques spécialisés

interface
disque
DAC ADC

entrées-sorties
sorties de puissance analogiques périph. magnétique

Adaptation logique
processeur : données 8, 16, 32 bits en parallèle
périphérique : données largeur différente (ex. série bit à bit)

l’interface assure souvent la détection d’erreurs

3
INTERFACES D’ENTREES-SORTIES

Rôle des interfaces

Accès par adressage

le processeur communique par son bus -> adresses


interface : collection d’adresses
chaque adresse a un rôle spécifique

Exemple
afficheur (S) : écriture à adr1
signal d’enfoncement touche (Valid) : lecture à adr2
valeur de la touche enfoncée (E) : lecture à adr3

bus du processeur

décodage
interface adr1 adr2 adr3

S Valid E
0 1 2 3 4
5 6 7 6 9

4
INTERFACES D’ENTREES-SORTIES

Rôle des interfaces

Synchronisation des échanges

communiquer des séquences de données sans perte ni duplication

sans précaution, rien n’assure que :


le processeur lit la donnée quand l’extérieur la délivre
l’extérieur voit la donnée quand le processeur l’écrit

➜ protocole calculateur - périphérique


assuré
en partie par l’architecture de l’interface
en partie la programmation des échanges

5
INTERFACES D’ENTREES-SORTIES

-2-
Synchronisation des entrées-sorties

Consultation et affichage directs

accès “à la volée”, sans aucune synchronisation


peut suffire dans certains cas

Entrée-sorties synchronisées par test d’état

pour communiquer une séquence de données

6
INTERFACES D’ENTREES-SORTIES

Synchronisation des entrées-sorties

Consultation et affichage directs

Lecture à la volée
présenter la donnée externe sur le bus de donnée
lorsque le processeur exécute une lecture sur un port

==> adaptateur trois-états validé par le décodage d’adresse

bus de donnée

extérieur
CS décodage A
A = adr
lec lecE-S

moment de la lecture : décidé par l’activité programmée


convient pour consulter un état extérieur :
prélever une mesure,
tester l’état ouvert/fermé d’une vanne ...

7
INTERFACES D’ENTREES-SORTIES

Synchronisation des entrées-sorties

Consultation et affichage directs

Affichage à la volée
une donnée écrite sur le bus est éphémère (un cycle bus)
==> mémoriser la donnée dans l’interface (registre ou verrou)
chargement commandé par l’écriture sur le port

bus de donnée

extérieur
ch CS décodage A
A = adr
ecr ecrE-S

la valeur affichée demeure


jusqu’à une prochaine écriture sur le port
convient pour :
commandes de marche/arrêt
avec un DAC, vitesse d’un moteur, musique ...

8
INTERFACES D’ENTREES-SORTIES

Synchronisation des entrées-sorties

Synchronisation par test d’état

Entrée-sorties de séquences de valeurs


==> garantir que chaque donnée est
prise en compte une fois et une seule
consultation et affichage directs ne conviennent pas :
récepteur : ignore s’il y a une nouvelle donnée
émetteur : ignore si le récepteur est prêt à recevoir

technique simple, mémoire de 1 bit dans l’interface :


état de la communication
1 : donnée disponible
0 : absence de donnée

émetteur et récepteur attendent que l’état soit convenable

interface
récepteur émetteur

état

9
INTERFACES D’ENTREES-SORTIES

Synchronisation des entrées-sorties


Synchronisation en entrée

bit d’état EP : entrée présente


passe à 1 quand l’extérieur présente une donnée, Valid
à 0 quand le programme lit la donnée

extérieur interface bus du processeur

EntréePrésente EP
Valid
mise à 1 mise à 0

programme de lecture
tantque EP≠1 faire fait; attente
lire la donnée;
EP:=0 consommation de la donnée

le processeur attend par une boucle : “attente active”


il n’est pas disponible pour autre chose

l’extérieur attend que la donnée soit lue avant de fournir la suivante

10
INTERFACES D’ENTREES-SORTIES

Synchronisation des entrées-sorties


Synchronisation en entrée

Accès au bit d’état

EP rendu accessible à une adresse de port AdrEtat

bus de donnée
E
A = A
AdrDonnée
lecE-S
mise à 1 mise à 0
Valid ecrE-S
EP
A =
AdrEtat A
Entrée
Présente

Avec cette interface :


la mise à 0 de EP est faite explicitement
par une instruction d’écriture à l’adresse AdrEtat
(donnée sans importance, l’ordre d’écriture met EP à 0)

11
INTERFACES D’ENTREES-SORTIES

Synchronisation des entrées-sorties


Synchronisation en entrée

Affectation automatique du bit d’état

EP doit être mis à 0 après avoir lu la donnée


==> l’interface le fait automatiquement
==> interface plus simple d’emploi

l’évènement “lecture donnée” sert de mise à 0 de EP

bus de donnée
E
A = A
AdrDonnée
lecE-S
mise à 1 mise à 0
Valid EP
A = A
AdrEtat
Entrée
Présente

12
INTERFACES D’ENTREES-SORTIES

Synchronisation des entrées-sorties


Synchronisation en sortie

principe similaire

bit d’état SP : sortie présente


passe à 1 quand le programme écrit une donnée,
à 0 quand l’extérieur acquitte la donnée (Acquit)

extérieur interface bus du processeur

SortiePrésente SP
Acquit
mise à 0 mise à 1

programme d’écriture
tantque SP≠0 faire fait;attente
écrire la donnée;
SP:=1 signale nouvelle donnée

La mise à 1 de SP est généralement faite


automatiquement par l’interface lors de l’écriture

13
INTERFACES D’ENTREES-SORTIES

-3-
Compléments

Commandes de configuration

interfaces offrant plusieurs modes de fonctionnement


==> configuration
par envoi de codes sur un “port de contrôle”

exemple : interface configurable en entrée ou en sortie

bus de donnée

D0
A = A
MODE AdrControle
EcrES

D exterieur

écriture de 0 sur AdrControle => MODE:=0 => entrée


écriture de 1 sur AdrControle => MODE:=1 => sortie

14
INTERFACES D’ENTREES-SORTIES

Compléments

Commandes de configuration

Exemples de commandes de configuration :


• choix de modes de transmission
• choix de vitesse de transmission série
• choix de mécanismes de détection d’erreurs
• choix de protocole de synchronisation
• choix entre test d’état ou génération d’interruption

Interfaces multiples
contient plusieurs interfaces indépendants (ou presque)
chaque interface : quelques adresses internes

cas d’une interface pour une entrée et une sortie :


la même adresse sert aux deux ports de données
la distinction se fait par les signaux lecture-écriture

un bit d’état pour chaque liaison


==> généralement regoupés en un “mot d’état” lu à une adresse
==> isoler le bit à tester par un masquage

15
INTERFACES D’ENTREES-SORTIES

Compléments

Différences
adresses mémoire / ports d’E-S

adresses mémoires :

doivent (devraient) désigner de simples mots mémoires


==> sémantique ultime simple et immuable
pour les instructions qui utilisent la mémoire
MOV R,Adr signifie R:=MEM[Adr]

adresses de port :
désignent des organes complexes et non fixés à l’avance
==> pas de sémantique ultime définie
pour les instructions d’entrée-sortie (IN et OUT)
IN R,Adr signifie ??? cela dépend ...

Exemple, avec l’interface d’entrée précédente :


IN R,AdrDonnée provoque R:=E,EP:=0

16

Vous aimerez peut-être aussi