|
Configuration
Chaque prise série doit posséder sa
propre adresse et son propre IRQ. Ces valeurs sont affectées par
défaut, mais peuvent être modifiées si la carte
I/O le permet.
Le principal problème réside dans le
fait que les 4 COM se partagent seulement deux IRQs. Ainsi, si vous
installez une souris sur le COM1 et un modem sur le COM3, ces deux
composants ne fonctionneront jamais simultanément, car ils partagent
le même IRQ. Ce problème peut être facilement réglé sur les cartes
I/O ou cartes mères récentes. En effet, elles permettent l’usage
d’une IRQ différente pour chaque port.
Configuration des ports sériels :
| Port |
Adresse |
IRQ |
| COM1 |
3F8H |
4 |
| COM2 |
2F8H |
3 |
| COM3 |
3E8H |
4 |
| COM4 |
2E8H |
3 |
L’UART
Le cœur d’un port série est
l’UART (Universal Asynchronous
Receiver / Transmitter). Ce composant convertit les données du PC
qui sont toujours en mode parallèle, en mode série pour son envoi et
effectue la manœuvre inverse pour le retour. L’usage d’un
UART n’est pas limité au port série,
en fait la plupart des périphériques en font usage (port jeu, disque
dur, ...).
Pour connaître le type de chip
utilisé dans votre PC, faites appel au programme
MSD généralement situé dans le
répertoire de Windows. Il existe
plusieurs versions de ce chip dont voici les spécificités :
| 8250 |
Ce composant a été utilisé dans les XT, il
contient quelques bugs relativement inoffensifs. De plus, il ne
contient aucune mémoire cache (registres), il est donc
excessivement lent. |
| 8250A |
Ce composant corrige les bugs de la version
précédente, y compris un concernant le registre d’interruptions.
Il ne peut être utilisé dans un XT. Il requiert donc un PC AT et
supporte mal les vitesses égales ou supérieures à 9600 bps. D’un
point de vu logiciel, il apparaît comme un 16450. |
| 8250B |
Ce composant corrige les bugs du 8250 et
fonctionne sur des machines non-AT. Il connaît les mêmes
limitations concernant les vitesses de transfert que le 8250A.
|
| 16450 |
Ce composant est issu du 8250A, il est donc
uniquement destiné à des PC AT. Le fait qu’il fonctionne plus
rapidement que ses prédécesseurs en fait le chip UART le plus
répandu actuellement. Il représente même le minimum requis pour
OS2. L’augmentation de vitesse à été obtenue par l’adjonction
d’un registre d’un octet. |
| 16550 |
Ce composant permet des accès au travers de
multiples canaux DMA. En dehors du fait que son FIFO buffer (First-In,
First-Out mémoire cache) soit buggé et non utilisable, il est
nettement plus rapide que le 16450 |
| 16550A |
Ce composant corrige le bug du précédent et
permet ainsi le fonctionnement du FIFO buffer. Il est recommandé
de l’utiliser si vous faites souvent des communications à une
vitesse supérieure à 9600 Bps. La taille de son registre est de
16 octets, et il supporte les accès DMA. |
| 16650 |
Dernier cri dans le domaine, ce composant
possède un registre FIFO de 32Ko et supporte la gestion
d’énergie. Ce chip n’est pas proposé par National Semiconductor,
qui est pourtant à l’origine des autres UART. |
| 16750 |
Ce composant, qui propose 64Ko de FIFO, est
produit par Texas Instruments |
Les prises Loopback
Lorsque vous rencontrez des
problèmes de connexion sérielle, il est toujours difficile de
distinguer entre les causes matérielles et logicielles. Vous
trouverez dans le commerce ou sur Internet de nombreux programmes de
test destinés à examiner la partie hardware. Ceux-ci vous demandent
souvent l’insertion d’une prise loopback
dans le port sériel testé. Cette prise est en fait une boucle qui
permet de simuler une connexion sans pour autant devoir posséder un
second PC.
1.5.2. Le port parallèle
Le port parallèle d’un PC est basé
sur un transfert de type parallèle. C’est-à-dire que les 8 bits d’un
octet sont envoyés simultanément. Ce type de communication est
nettement plus rapide que celui d’un port série. Le principal défaut
de ce type de port est que de longs câbles ne peuvent être utilisés
sans l’adjonction d’un amplificateur de signal en ligne.
En effet, la longueur officielle est
limitée à trois mètres sans perte de
données. En fait, il est possible de dépasser cette longueur en
veillant à certains points.
le câble doit posséder un bon
blindage.
contrôlez l’environnement du câble. La présence de transformateur ou
autre source électromagnétique à proximité du câble peuvent générer
toutes sortes de dysfonctionnement.
Prises parallèles
La
prise standard d’un port parallèle est la DB25,
la prise trapézoïdale à 25 broches. Il est aussi très courant
d’utiliser un câble avec une prise dite Centronic pour se connecter
à une imprimante. Ce type de prise est aussi de forme trapézoïdale,
par contre elle n’est pas à broches. En effet, elle contient un long
connecteur sur lequel sont fixés 36 contacts métallisés ou dorés. On
parle alors de câble imprimante.
Configuration du port parallèle
Le paramétrage des ports parallèles
est beaucoup plus simple que celui des ports sériels. En standard,
le PC est équipé d’un seul port parallèle, mais il serait tout à
fait possible d’en rajouter un second. Dans la plupart des Bios, une
interruption est d’ailleurs réservée d’office à cet effet, que le
port soit présent ou non. Dans de nombreux cas, le second port est
désactivé et l’IRQ 5 est réutilisée
pour un autre composant.
Configuration des LPT :
| N° de LPT |
Adresse |
IRQ |
| LPT1 |
378 H |
7 |
| LPT2 |
278H |
5 |
Les types de ports parallèles
Il existe différents types de ports parallèles dont
voici la liste :
ORIGINAL
UNIDIRECTIONNEL
Ce type est la toute première
version du port parallèle. Ce port n’était pas bidirectionnel et le
seul type de communication possible était du PC en direction d’un
périphérique. Son débit pouvait atteindre 60 Ko
par secondes.
TYPE
1 BIDIRECTIONNEL
Introduit en 1987 par IBM pour sa
gamme PS2, ce port bidirectionnel ouvrait la porte à un vrai
dialogue entre un PC et un périphérique. Cela a pu être fait en
envoyant au travers d’une pin inoccupée, un signal annonçant dans
quel sens va la communication. Il a été commercialisé aussi sous le
nom de Extended Parallel ou
PS/2 Type. Tout en restant compatible
avec le port unidirectionnel, il offrait des débits pouvant
atteindre 300 Ko/s selon le type de
périphérique utilisé.
TYPE
3 DMA
Ce type de port utilise le DMA
Auparavant le processeur envoyait chaque octet au port, contrôlait
son envoi, et envoyait enfin le suivant. Le DMA permet de stocker
les données à envoyer dans un bmoc de mémoire, déchargeant ainsi le
processeur. Son usage à été limité à la gamme
IBM PS/2, à partir du Modèle 57.
EPP
Le port parallèle
EPP (Enhanced Parallel Port) a été
développé par Intel, Xircom et Zenith. Il a pour but de définir une
norme de communications bidirectionnelle entre des périphériques
externes et un PC.
ECP
Mise au point par Microsoft et
Hewlett-Packard, cette norme ECP (Extended
Capabilities Ports) est presque identique à l’EPP.
En plus, le port parallèle peut utiliser le DMA
et une mémoire tampon (buffer) permet d’offrir de meilleures
performances.
1.5.3. USB
Ce nouveau port se présente sous la forme de deux
petites prises à l’arrière du PC.

Les caractéristiques de l’USB
L’Universal
Serial Bus permet de gérer les périphériques externes comme
un réseau. Les périphériques sont reliés entre eux par un mince
câble unique. Ce dernier ne se contente pas de permettre aux données
de circuler, il va jusqu’à fournir
l’alimentation électrique de chaque composant.
Nombre de périphériques
L’USB support jusqu’à 127
périphériques au total.
Débit
Si
le câble est de type blindé, brins de données torsadés, ce débit
atteint 12 mégabits par seconde.
Si
un câble de non blindé non torsadé est utilisé, le débit tombe alors
à 1,5 Mbits par secondes.
Hot Plug’n Play
Ce terme barbare signifie simplement
que les branchements des périphériques peuvent s’effectuer à chaud,
sans extinction de l’ordinateur. Il suffit de brancher le
périphérique à l’emplacement désiré de la chaîne. Aucun paramétrage
ne doit être effectué sur ce dernier, pas d’ID ou d’adresse à
définir. Le système d’exploitation va alors reconnaître le
périphérique automatiquement et charger son pilote.
Si celui-ci ne peut pas être trouvé, il sera alors
demandé à l’utilisateur (CD ou disquette).
Ce pilote support un chargement à
chaud, il peu ainsi être chargé et déchargé en cours de session. Si
le périphérique devait être débranché, le pilote sera alors retiré
de la mémoire sans nécessiter de redémarrage de la machine.
Alimentation Électrique

L’USB
prend aussi en charge l’alimentation des périphériques connectés,
selon leur consommation. En effet, la norme autorise une
consommation maximum de 15 watts par
périphérique. Si ce chiffre est largement suffisant pour une paire
d’enceinte, il n’en va pas forcément de même pour un scanner ou un
lecteur CD.
C’est pour cette raison que de
certains périphériques possèdent leur propre alimentation
électrique. Mais, pas de problème, l’USB
se charge de les gérer. Vous n’aurez pas besoin de les allumer ou de
les éteindre, l’USB activera ces
alimentations lors de l’allumage du PC, et les coupera à son
extinction.
1.6. LES IRQ
Afin de garantir des traitements
multitâches, le processeur doit traiter les commandes reçues et en
même temps surveiller toute activité des périphériques. Sur les
anciens ordinateurs, le CPU allait
interroger chaque périphérique tous les X
cycles. C’était en effet son seul moyen de savoir si ceux-ci avaient
une requête à lui communiquer. Ce procédé, nommé polling, avait le
principal défaut d’être extrêmement gourmand en ressources.
Désormais, les interruptions
matérielles (IRQ Interrupt ReQuest channel)
sont utilisées. Si un événement se produit sur un périphérique,
celui-ci émet un signal pour en informer le processeur. Ainsi,
celui-ci peut se consacrer pleinement à sa tâche et ne s’interromps
que lorsque cela est réellement nécessaire.
Les premiers PC ne disposaient que
de 8 interruptions (N° 0-7).
Il s’agit de liaisons physiques entre les périphériques et un chip
nommé PIC8259. Rapidement, cela n’a
plus suffit et il a été nécessaire de prévoir une extension. Cela
fut fait simplement en greffant un second chip au premier (8-15).
La liaison s’effectua par le second PIC8259
au premier au travers de l’IRQ2. Cette
dernière est nommée "cascade" ou IRQ9
redirigée. Désormais, ces deux chips sont inclus dans un plus grand
faisant partie du "Chipset".
1.6.1. Fonctionnement
Lorsqu’un composant émet un signal (
frappe clavier, mouvement de la souris,..) destiné à une IRQ, une
routine spéciale est activée. Elle commence par sauvegarder tous les
registres du processeur dans une pile (stack).
Ensuite, elle dirige le système vers la table
d’interruption. Cette table contient la liste des adresse
mémoires correspondant aux canaux d’interruptions. En fonction de
l’interruption appelante, le programme correspond avec le composant
au travers du canal ainsi déterminé. Ce dernier pointera soit vers
le composant lui-même, soit vers le driver qui le gère. Par exemple,
pour le disque dur, le vecteur pointera vers les codes du
BIOS qui dirigent le contrôleur
disque.

Toutes les interruptions standard
sont appelées maskable interrupts. En
d’autres termes, le processeur peut parfaitement choisir d’ignorer
temporairement le signal émis par celles-ci afin de terminer la
tâche en cours. Le PC dispose quand même d’une interruption non
masquable (NMI) qui peut être utilisée
en cas d’extrême urgence.
En ce cas, le CPU abandonne
immédiatement tout travail en cours afin de se consacrer à son
traitement. Cette NMI n’est
généralement utilisée que par des événements critiques pouvant
mettre en danger la cohérence des données.
1.6.2. Paramètrage
Il est absolument nécessaire de ne
placer qu’un seul périphérique par IRQ. Dans le cas contraire, seul
un des deux sera géré correctement. Le tableau ci-contre, vous
permet de connaître les principales IRQ. L’IRQ 12 n’est réservée que
si le PC dispose d’un port souris PS2 intégré.
Table des IRQ pour un bus 16
bits ISA, EISA et MCA :
| IRQ |
Bus |
Priorité |
Fonction |
Remarques |
| 0 |
non |
1 |
System Timer |
Câblé sur la carte mère |
| 1 |
non |
2 |
Contrôleur clavier |
Câblé sur la carte mère |
| 2 |
reroutée |
- |
Cascade |
Remplacée par IRQ9 |
| 3 |
8/16bits |
11 |
COM2 |
Peut-être utilisée par COM4 (conflit) |
| 4 |
8/16bits |
12 |
COM1 |
Peut-être utilisée par COM3 (conflit) |
| 5 |
8/16bits |
13 |
LPT2 |
Souvent libre |
| 6 |
8/16bits |
14 |
Contrôleur Floppy |
- |
| 7 |
8/16bits |
15 |
LPT1 |
- |
| 8 |
- |
3 |
Real-Time clock |
Câblé sur la carte mère |
| 9 |
16bits |
4 |
|
- |
| 10 |
16bits |
5 |
|
- |
| 11 |
16bits |
6 |
|
- |
| 12 |
16bits |
7 |
Port souris PS2 |
Occupé seulement si port PS2 |
| 13 |
- |
8 |
Coprocesseur |
Câblé sur la carte mère |
| 14 |
16bits |
9 |
Premier contrôleur IDE |
- |
| 15 |
16bits |
10 |
Second contrôleur IDE |
- |
1.6.3. Affectation des IRQ
L’ordre de priorité des IRQ est le suivant :
0, 1, 8, 9, 10, 11, 12, 13, 14, 15, 3, 4, 5, 6, 7.
Les IRQ du second chip étant rerouté
sur l’IRQ 2, ils se placent
logiquement après l’IRQ 1. De plus, certaines sont réservées pour
des slots 8 ou 16
bits, d’autres sont câblées d’usine pour des composants fixés sur la
carte mère.

 |