Gestion des Entrées/Sorties Gestion des Entrées/Sorties Diversité des périphériques Rappel : Constituants principaux d’un ordinateur Horloge Processeur Mémoire Centrale Unités d’Echanges Bus Ecran Clavier Imprimante Disque(s) dur(s) E/S Processus Industriels Réseaux ....... • • L’ordinateur n’est utilisable que s’il peut communiquer avec l’extérieur : Trois sens de communication – Périphériques d’Entrée : clavier,souris, écran tactile, scanner , capteurs … – Périphériques de Sortie : écran graphique, imprimante, enceintes, actionneurs … – Périphériques d’Entrée/Sortie : disque dur, clef USB, carte réseau, modem … • Unité centrale de Traitement (Processeur) cadencé par l’horloge avec : • – UAL : Unité arithmétique et logique qui réalise les opérations élémentaires – Unité de commande : lit les instructions en mémoire, les décode et les exécute Caractéristiques très différentes – Vitesse : de quelques octets/sec (clavier) à qq 100Mo/sec ( disque dur ou réseau) – Format des données : bit à bit (modem) , octet par octet ou paquets de données – Commandes : chaque périphérique a ses propres signaux pour signaler une activité au processeur ou transférer des données ( un disque dur lance un déplacement des têtes de lecture, une imprimante signale un manque de papier , un modem informe de l’arrivée d’un appel entrant …) • Mémoire centrale – Stocke les programmes et les données – Enregistre les résultats intermédiaires et/ou finaux • Unités d’Echange avec l’extérieur : Périphériques d’Entrées/Sorties • • – Permet au processeur de communiquer avec l’extérieur en entrée ( clavier, souris, disque dur, réseau) ou sortie ( écran , disque dur, réseau, processus industriel …) Diversité = frein à la connexion des périphériques sur le bus système => Nécessité d’un circuit spécialisé à chaque périphérique pour gérer les communications avec le processeur : contrôleur d’E/S ( ou coupleur d’E/S) • Bus : Permet aux constituants ci-dessus de communiquer entre eux L1 PCSPI / UEc263 / 2012-2013 1 L1 PCSPI / UEc263 / 2012-2013 Gestion des Entrées/Sorties Gestion des Entrées/Sorties Rôle du contrôleur d’E/S • • • • • Gestion logicielle des E/S Piloter l’opération d’E/S à la place du processeur Formater les données et les mémoriser temporairement pour adapter leur format et la vitesse de leur transfert Permettre le branchement de divers modèles de périphériques via une interface standardisée ( interfaces //, série, SCSI, USB, FireWire …) Peut-être intégré à un chipset, relié à celui-ci par un bus spécifique ou encore sur une carte d’E/S spécifique Chaque contrôleur contient : – – – – • • Bibliothèque de gestion du périphérique fournie : pilote (ou driver) à installer dans le système d’exploitation, qui contient l’ensemble des fonctions pour dialoguer avec le périphérique 2 possibilités d’accès aux E/S par le processeur – Par des fonctions spécialisées IN( ) et OUT( ) ? Le controleur a alors des lignes de contrôle spécifiques. – En intégrant l’espace mémoire du contrôleur d’E/S à l’espace mémoire général du processeur. L’accès des différents registres du contrôleur se fait alors comme un accès mémoire. Des circuits lui permettant de s’interfacer sur un bus coté ordinateur Une logique de commande pour piloter le périphérique Une mémoire interne pour mémoriser les données en transit Une interface de connexion au périphérique ( on doit trouver l’équivalent dans le périphérique) L1 PCSPI / UEc263 / 2012-2013 2 • Dialogue entre le processeur et le contrôleur d’E/S : 3 modes d’échanges – – – – 3 Par scrutation ou interrogation ( polling) Par interruption Par DMA ( Direct Access Mémory) Par processeur spécialisé L1 PCSPI / UEc263 / 2012-2013 4 1 Gestion des Entrées/Sorties Gestion des Entrées/Sorties E/S par interrogation • • • • E/S par interruption Le processeur interroge périodiquement le périphérique pour savoir si ce dernier a un échange à effectuer • – Le processeur interroge le registre d’état du périphérique pour savoir si une activité a eu lieu et s’il doit traiter une information – Si oui , il effectue le traitement demandé – Si non, il reviendra l’interroger plus tard • • Avantage : très simple à mettre en œuvre : simples lectures / écritures Inconvénient : occupation importante du processeur pour cette interrogation Peut-etre utilisée pour des périphériques ayant un temps de réponse court et transférant peu de données ( ex: souris tous les 10-2 sec) • – le processeur ne gaspille pas de temps à interroger un périphérique inactif – les échanges avec les périphériques peuvent être hiérarchisés et accélérés • • L1 PCSPI / UEc263 / 2012-2013 5 E/S par processeur spécialisé Consiste à donner à une unité d’échange la possibilité d’aller lire ou écrire directement en mémoire sans passer par le processeur Pour réaliser ce transfert, il faut : • • – Définir l’adresse de base du transfert, la taille du transfert – Demander au processeur l’autorisation de prendre le bus d’adresses et attendre son accord • • Avantage : accélère les gros transferts de données ( blocs) le processeur peut faire des traitements internes ( en mémoire cache interne) pendant ce temps • Inconvénient : complexe, nécessite un contrôleur DMA dans le contrôleur d’E/S, et que le processeur autorise ce type d’accès • Utilisée pour des périphériques ayant de grandes quantités de données à transférer ( ex: disque dur) L1 PCSPI / UEc263 / 2012-2013 6 Gestion des Entrées/Sorties E/S par DMA ( Direct Access Memory) • Inconvénient : plus complexe à mettre en œuvre ( matériel et logiciel) Mode de communication très adapté aux communications asynchrones avec des quantités de données faibles L1 PCSPI / UEc263 / 2012-2013 Gestion des Entrées/Sorties • C’est le périphérique qui signale de lui-même au processeur qu’il a un échange à effectuer Interruption = mécanisme permettant d’interrompre le processeur pour qu’il suspende le traitement en cours pour exécuter une action prioritaire puis qu’il reprenne le traitement en cours plusieurs interruptions possibles avec possibilité de hiérarchie et de masquage Avantages : 7 Généralisation du transfert de données autonome à la sous-traitance de traitements spécifiques Le processeur principal indique au processeur spécialisé l’adresse du programme à exécuter et est prévenu de la fin de l’exécution par une interruption Processeur très efficace car optimisé pour le domaine concerné ( ex: processeur graphique) L1 PCSPI / UEc263 / 2012-2013 8 2