Circuit PIO

Un article de Wikipédia, l'encyclopédie libre.
Circuit intégré Zilog Z80 PIO
Brochage du Zilog Z80 PIO

Les circuits PIO ("Programmed Input/Output") sont des circuits d'interface Entrées/Sorties parallèles qui permettent de raccorder un périphérique particulier au bus informatique d'un ordinateur ou d'un système embarqué.

Comme un microprocesseur est censé gérer plusieurs périphériques à la fois, il reçoit une multitude de signaux d'interruption, mais ne peut jamais en traiter qu’un seul à la fois. Il faut donc convenir d'une discipline de priorité. Pour cela, le périphérique envoyant un signal d’interruption doit donc envoyer au microprocesseur l'instant où il « prendra la main », et signaler qu'il en a terminé. Par la gestion d'une file de priorité (Daisy-Chain) sur les connexions (Interrupt Enable Input/Interrupt Enable Output), il devient possible de subordonner plusieurs entrées-sorties parallèles les unes aux autres.

  • IEI (= Interrupt-Enable In): le PIO obtient l'autorisation d'émettre un vecteur d'interruption /INT au CPU, à condition qu'aucune requête de priorité supérieure soit émise.
  • IEO (= Interrupt-Enable Out): l'interruption est en cours de traitement, les PIO de priorité moindre doivent attendre.

Exemples de circuits PIO[modifier | modifier le code]

  • le Z8420/Z84C20 de Zilog pour le Z80 ; il existait avec ce circuit quatre modes de commande:
    • Mode 0: sortie par octet
    • Mode 1: entrée par octet
    • Mode 2: mode bidirectionnel en entrée/sortie
    • Mode 3: commande bit à bit (pour l'émission de bits d'interruption en parallèle)
  • le 8255A fabriqué par Intel.

Voir aussi[modifier | modifier le code]