Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > ebac5394abc62d2e0b61505bfba9712a > files > 12

howto-text-fr-2006-5mdv2010.0.noarch.rpm


             Brève introduction aux systèmes et processeurs Alpha

Neal Crook, Digital Equipment (Publication: David Mosberger) (Adaptation
Française par Christophe Vallat (miodrag@mygale.org))

   V0.11, 6 Juin 1997
     _________________________________________________________________

   _Ce document est un rapide aperçu des processeurs et systèmes Alpha
   existants. Il y a un peu de parti pris, à cause de mon expérience
   personnelle. Bien que je sois un employé de Digital Equipment
   Corporation, il ne s'agit pas d'un d'un document officiel de Digital
   et les opinions exprimées sont les miennes, pas celles de Digital._
     _________________________________________________________________

1. Qu'est-ce que Alpha ?

   "Alpha" est le nom donné à l'architecture RISC 64 bits de Digital. Le
   projet Alpha commença à Digital à la mi-1989, dans le but de fournir
   une voie de migration haute-performance pour les clients VAX. Il ne
   s'agit pas de la première architecture RISC produite par Digital, mais
   ce fut la première à être mise sur le marché. Quand Digital a annoncé
   Alpha en mars 1992, elle a pris la décision d'entrer sur le marché des
   composants électroniques en vendant des microprocesseurs Alpha.

   Alpha est parfois désigné par Alpha AXP, pour de vieilles et obscures
   raisons qu'il est inutile de préciser. Il suffit de dire que c'est
   exactement la même chose.

2. Qu'est-ce que Digital Semiconductor ?

   Digital Semiconductor (DS) est la section commerciale de Digital
   Equipment Corporation (Digital - nous n'aimons pas le sigle DEC) qui
   vend les composants électroniques. Parmi les produits de Digital
   figurent les processeurs, les chipsets associés, les pontages PCI-PCI
   et les composants PCI pour la communication et le multimédia.

3. Processeurs Alpha

   Il y a actuellement 2 générations de base de processeur implémentant
   l'architecture Alpha :

     * EV4
     * EV5

   Les avis différent quant au sens de "EV" (note : la vraie réponse est
   bien entendu "Electro Vlassic" [1]), mais le chiffre représente la
   première génération de technologie CMOS de Digital avec laquelle le
   processeur a été conçu. Ainsi, EV4 a été initialement conçue en CMOS4.
   Au fil du temps, un processeur tend a trouver une nouvelle jeunesse en
   étant optiquement rétrécie dans la nouvelle génération de CMOS. EV45
   est donc la base EV4 conçue en CMOS5. Il y a une grande différence
   entre rétrécir une conception pour une technologie particulière et la
   reconcevoir pour cette technologie (mais je ne veux pas entrer dans
   les détails). Il y a encore quelques variantes : la CMOS4S
   (rétrécissement optique de la CMOS4) et une CMOS5L.

   Les vrais technophiles seront curieux de savoir que CMOS4 est une
   gravure en 0,75 micron, CMOS5 est une gravure en 0,5 micron, et CMOS6
   est une gravure en 0,35 micron.

   Pour faire correspondre ces bases de processeur aux _puces_ nous
   avons:

   _21064-150,166_
          EV4 (initialement), EV4S (maintenant)

   _21064-200_
          EV4S

   _21064A-233,275,300_
          EV45

   _21066_
          LCA4S (base EV4, avec coprocesseur EV4)

   _21066A-233_
          LCA45 (base EV4, mais avec coprocesseur EV45)

   _21164-233,300,333_
          EV5

   _21164A-417_
          EV56

   _21264_
          EV6

   La base EV4 est un noyau double-écoulement (il peut traiter 2
   instructions processeur par cycle d'horloge) super-pipeliné avec une
   unité de calcul entier, une unité de calcul flottant et prédiction de
   branchement. Il a des bus de données internes de 64 bits et des caches
   de 8Ko étroitement couplés, un jeu de chaque pour les instructions, et
   pour les données. Les caches sont en écriture immédiate
   ("write-through").

   La base EV45 a quelques améliorations par rapport à la base EV4 :
   l'unité de calcul flottant est légérement améliorée, et les caches
   sont de 16Ko. (Note : Neal Crook a indiqué dans un courrier séparé que
   les modifications de l'unité de calcul flottant améliorent les
   performances de la division. La FPU de l'EV4 prend 34 cycles pour une
   division en simple précision et 63 cycles pour une division en
   double-précision (quelles que soient les données). En comparaison, le
   FPU de l'EV45 prend généralement 19 cycles (34 au pire) pour la simple
   précision et 29 cycles (63 au pire) pour la double-précision (en
   fonction des données).)

   La base EV5 est un noyau quadruple-écoulement, également
   super-pipeliné etc etc. Il a des caches de 8 Ko étroitement couplés,
   un de pour les instructions et un pour les données. Ces caches sont en
   écriture immédiate. Il dispose également d'un cache de deuxième niveau
   de 96 Ko sur le processeur (le Scache) qui est associatif 3-morceaux
   et en écriture différée ("write back"). Le gain de performance de
   l'EV4 à l'EV5 est supérieur au seul gain généré par l'augmentation de
   la fréquence. En plus des caches plus grands et du
   quadruple-écoulement, il y a aussi des améliorations de sa
   microarchitecture pour réduire les temps d'attente
   producteur/consommateur dans certaines voies.

   La base EV56 est fondamentalement la même microarchitecture que l'EV5,
   mais ajoute quelques nouvelles instructions pour la lecture et
   l'écriture sur 8 et 16 bits (cf. section Les octets et leur
   multiples). Elles sont principalement destinées aux pilotes de
   périphériques. La base EV56 est réalisée en CMOS6, en 2,0 Volts.

   Le 21064 a été annoncé en mars 1992. Il utilise la base EV4, avec un
   bus de 128 bits. L'interface du bus supporte une connexion 'facile'
   d'un cache externe de deuxième niveau, avec une taille de bloc de 256
   bits (2 fois la taille du bus). La vitesse de ce Bcache est
   entièrement configurable logiciellement. Le 21064 peut aussi être
   configuré pour utiliser un bus externe de 64 bits (mais je crois
   qu'aucun système n'utilise ce mode). Le 21064 n'impose aucune
   contrainte sur le Bcache, mais il est généralement configuré en
   écriture différée. Le 21064 contient un système permettant à du
   matériel séparé de maintenir la cohérence entre le Bcache et le cache
   interne, mais c'est complexe.

   Le 21066 utilise la base EV4 et intégre un contrôleur de mémoire et un
   pontage de bus PCI. Pour économiser des broches, le contrôleur de
   mémoire a un bus de 64 bits (mais les caches internes ont une taille
   de bloc de 256 bits, comme le 21064, donc une lecture de bloc prend 4
   cycles du bus). Le contrôleur de mémoire supporte le BCache et la DRAM
   externe. La vitesse du Bcache et de la DRAM est entièrement
   configurable logiciellement, et peut être contrôlé à la vitesse du
   processeur. La décomposition en 4 accès pour remplir un bloc de cacte
   n'est pas si mauvais qu'on peut le penser parce que l'accès à la DRAM
   est fait en mode page. Malheureusement, le contrôleur de mémoire ne
   supporte ni les types de DRAM ésotérique (SDRAM, EDO ou BEDO), ni les
   RAMs de cache synchrone. L'interface du bus PCI est entièrement
   compatible avec PCI 2.0 et tourne jusqu'à 33 MHz.

   Le 21164 a un bus de données de 128 bits et supporte les lectures
   partielles, avec jusqu'à deux lectures en cours en même temps (ce qui
   permet une utilisation à 100% du bus de données dans les meilleures
   conditions de rêve, i.e. il est possible théoriquement de transférer
   128 bits de données à chaque cycle du bus). Le 21164 supporte une
   connexion facile d'un cache de troisième niveau (Bcache) et a tout le
   système pour permettre à du matériel externe de maintenir la cohérence
   de tous les caches. De cette façon, les conceptions de multiprocesseur
   symétrique sont 'faciles'.

   Le 21164A a été annoncé en octobre 1995. Il utilise la base EV56. Son
   brochage est compatible avec celui du 21164, mais nécessite des lignes
   d'alimentation séparées ; toutes les broches qui étaient +3,3 Volts
   sur le 21164 ont été divisées en deux groupes ; un groupe fournit 2,0
   Volts au coeur du processeur, l'autre fournissant 3,3 Volts aux unités
   d'entrées/sorties. Contrairement aux anciennes conceptions, les
   broches du 21164A n'acceptent pas 5 Volts. Le résultat de ce
   changement est que les systèmes 21164 ne peuvent en général pas être
   mis à jour en 21164A (bien qu'il soit relativement simple de concevoir
   un système 21164A qui puisse aussi accepter un 21164). Le 21164A
   dispose également de quelques nouvelles broches pour supporter les
   lectures et écritures sur 8 et 16 bits. Il améliore également le
   support du 21164 pour les SRAMs synchrones qui composent le Bcache.

4. Performances comparées du 21064 et du 21066

   Le 21064 et le 21066 ont la même base (EV4). Si le même programme
   tourne sur un 21064 et un 21066, à la même fréquence, alors la
   différence de performance provient uniquement de la bande passante
   entre le Bcache et la mémoire. Du code qui tombe principalement dans
   les caches _internes_ tournera aussi rapidement. Il y a 2 principaux
   tueurs de performances :

    1. Du code qui écrit énormément. Malgré les buffers en écriture du
       21064 et du 21066 pour économiser certains délais, du code qui
       écrit énormément sera étranglé par la bande passante en écriture
       du bus système. Cela est du au fait que les cache du processeur
       sont en écriture immédiate.
    2. Du code qui veut traiter les flottants en tant qu'entiers.
       L'architecture Alpha ne permet pas des transferts entre registres
       entiers et registres flottants. Une telle conversion doit être
       faite en mémoire (Et du coup, puisque les caches du processeur
       sont en écriture immédiate, via le Bcache). (Note : il semble que
       l'EV4 et l'EV45 peuvent effectuer la conversion via le premier
       cache de données (Dcache), à partir du moment ou la mémoire est
       cachée. Dans ce cas, l'écriture faite par la séquence de
       conversion mettra à jour le Dcache et la lecture qui va suivre
       sera, dans certaines circonstances, capable de lire la valeur du
       Dcache, évitant un coûteux transfert depuis le Bcache. En
       particulier, il semble meilleur d'exécuter les instructions
       stq/ldt ou stt/ldq dos à dos, ce qui est plutôt contraire à
       l'intuition.)

   Si vous effectuez la même comparaison entre un 21064A et un 21066A, il
   y a un facteur supplémentaire du aux différentes tailles des Icache et
   Dcache entre les deux processeurs.

   Maintenant, le 21164 résoud ces deux problèmes : il atteint des _bien_
   meilleures bandes passantes du bus système (malgré le même nombre de
   broches de signal - oui, je _sais_ que c'est à peu près deux fois plus
   qu'un 21064, mais les supplémentaires sont l'alimentation et la masse
   ! (oui, réellement!!)) et il a des caches en écriture différée. Le
   seul problème restant est la réponse à la question "combien il coûte
   ?"

5. Quelques notes sur les fréquences

   Tous les processeurs Alpha actuels utilisent des horloges à haute
   vitesse, parce que leur microarchitecture a été conçue comme "en
   cycles courts". Cependant, du coup, aucun des bus systèmes n'a besoin
   de tourner à de telles vitesses :

     * sur les 21066(A), 21064(A) et 21164 la vitesse du cache externe
       (Bcache) est entièrement programmable, à la résolution de
       l'horloge du processeur. Par exemple, pour un processeur à 275
       MHz, le temps d'accès en lecture du Bcache peut être contrôlé avec
       une résolution de 3,6 ns.
     * sur les 21066(A), la vitesse des DRAM est entièrement
       programmable, à la résolution de l'horloge du processeur (_pas_
       celle du bus PCI).
     * sur les 21064(A) et 21164(A), la fréquence du bus système est un
       sous-multiple de cele du processeur. La plupart des cartes mères
       21064 utilisent une horloge du bus système à 33 MHz.
     * Le systèmes à base de 21066 peuvent faire tourner le bus PCI à
       n'importe quelle fréquence par rapport au processeur. En général,
       le bus PCI tourne à 33 MHz.
     * Les systèmes qui utilisent les chipset APECS (cf. section Les
       chipsets ) ont toujours la fréquence du bus processeur égale à
       celle du bus PCI. Cela signifie que les deux bus tendent à tourner
       soit à 25 MHz, soit à 33 MHz (puisque ce sont les fréquences qui
       sont sous-multiples de celle du processeur). Sur les systèmes
       APEC, la vitesse du contrôleur de DRAM est programmable
       logiciellement en fonction de la fréquence du bus processeur.

   _Note:_ quelqu'un a suggéré qu'il obtenait de mauvaises performances
   sur un système 21066 parce que le contrôleur de mémoire du 21066 ne
   tourne qu'à 33 MHz. En fait, ce sont soulement les systèmes
   super-rapides 21064A qui ont des contrôleurs de mémoire qui tournent
   'seulement' à 33 MHz.

6. Les chipset

   DS vend deux chipsets de support processeur. Le chipset 2107x (dénommé
   APECS) supporte les 21064(A). Le chipset 2117x (dénommé ALCOR)
   supporte les 21164. Il y aura aussi un chipset 2117xA (dénommé ALCOR
   2) qui supportera le 21164A.

   Ces deux chipsets fournissent des contrôleurs de mémoire et des
   pontages PCI pour leur processeur. APECS fournit un pontage PCI de 32
   bits, ALCOR fournit un pontage PCI de 64 bits qui (conformément à la
   spécification PCI) peut supporter des périphériques PCI aussi bien 32
   bits que 64 bits.

   APECS consiste en 6 puces de 208 broches (4 registres de 32 bits
   (DECADE), 1 contrôleur système (COMANCHE), 1 contrôleur PCI (EPIC)).
   Il fournit un contrôleur de DRAM (bus mémoire de 128 bits) et une
   interface PCI. Il effectue également tout le travail de maintien de la
   cohérence quand un périphérique PCI effectue une opération DMA vers
   (ou depuis) la mémoire.

   ALCOR consiste en 5 puces (4 registres de 64 bits (Data Switch, DSW)
   208 broches PQFP et 1 contrôleur (Control, I/O Address, CIA) - un
   boîtier plastique de 383 broches). Il fournit un contrôleur de DRAM
   (bus mémoire de 256 bits) et une interface PCI. Il effectue également
   tout le travail de maintion de cohérence quand un périphérique PCI
   effectue une opération DMA vers (ou depuis) la mémoire.

   Il n'existe pas de chipset supportant le 21066, puisque le contrôleur
   de mémoire et le pontage PCI sont intégrés dans le processeur.

7. Les systèmes

   Le groupe applications de DS produit des exemples de conceptions
   utilisant les processeurs et leurs chipsets associés. Il s'agit
   typiquement de cartes mères de format PC-AT, avec toutes les
   fonctionnalités que vous trouverez typiquement sur une carte mère
   Pentium haut de gamme. Initialement, ces exemples de conception
   étaient destinés à être utilisés comme point de départ pour des
   tierces parties pour concevoir des cartes mères. Ces conceptions de
   première génération furent nommées Evaluation Boards (EB). Comme la
   quantité de travail nécessaire pour concevoir une carte mère a
   augmenté (à cause de la montée en fréquence des processeurs et pour
   respecter les régles sur l'émission de fréquences radio) l'accent a
   été mis sur la conception de cartes mères utilisables pour une
   production en masse.

   Les groupes système de Digital ont produit plusieurs générations de
   machines à base de processeurs Alpha. Certains de ces systèmes
   utilisent des chipsets conçues par les groupes système, d'autres
   utilisent les chipsets de DS. Dans certains cas, les systèmes
   utilisent une combinaison des deux.

   Plusieurs tierces parties ont construit des systèmes à base de
   processeurs Alpha. Certaines de ces entreprises ont conçu leurs
   systèmes à partir de zéro, d'autres ont utilisé les chipsets de DS, ou
   ont copié/modifié les exemples de conception de DS, ou simplement
   assemblent leurs systèmes à partir des cartes fabriquées et vérifiées
   par DS.

   L'EB64 : Conception obsolète utilisant un 21064 avec un contrôleur de
   mémoire implémenté en logique programmée. Entrées/Sorties réalisées
   par de la logique programmée pour s'interfacer à un chipset de pontage
   486<->ISA. Ethernet, SuperI/O (2S, 1P, LD) intégré sur la carte mère,
   bus ISA. Taille PC-AT. Alimentation standard PC.

   L'EB64+ : Utilise un 21064 ou un 21064A, et un APECS. Bus ISA et PCI
   (3 emplacements ISA, 2 emplacements PCI, une paire sur un emplacement
   partagé). Supporte des SIMMs de DRAM 36 bits. Le bus ISA est géré par
   un chipset de pontage Intel Saturn. Contrôleur SCSI (NCR 810 PCI),
   ethernet (Digital 21040), contrôleur clavier et souris (PS/2),
   SuperI/O (2S, 1P, LD), mémoire CMOS et horloge sur la carte mère. ROM
   de démarrage en EPROM. Taille PC-AT. Alimentation standard PC.

   L'EB66 : Utilise un 21066 ou un 21066A. Le sous-système d'entrées
   sorties est identique à celui de l'EB64+. Taille baby PC-AT.
   Alimentation standard PC. Les schémas de l'EB66 furent publiés dans
   des publicités vantant le 21066 comme "le premier microprocesseur au
   monde avec PCI intégré" (pour les amateurs d'anecdotes : il y a deux
   versions de cette publicité - j'ai dessiné les circuits et écrit le
   boniment dans la première version, et des américains ont malmené le
   boniment pour la deuxième version)

   L'EB164 : Utilise un 21164 et ALCOR. Bus ISA et PCI (3 emplacements
   ISA, 2 emplacements PCI 64 bits (dont un partagé avec un emplacement
   ISA) et 2 emplacements PCI 32 bits). Emplacement SIMM pour le Bcache.
   Le sous-système d'entrées sorties fournit un contrôleur SuperI/O (2S,
   1P, LD), un contrôleur clavier et souris (PS/2), mémoire CMOS et
   horloge. ROM de démarrage en mémoire flash. Taille PC-AT. Nécessite
   une alimentation en 3,3 Volts.

   L'AlphaPC64 (aussi nommée Cabriolet) : dérivé de l'EB64+ mais
   désormais en taille baby PC-AT avec une ROM de démarrage en flash, et
   plus de contrôleur SCSI et ethernet sur la carte mère. 3 emplacements
   ISA, 4 emplacements PCI (dont un partagé avec un emplacement ISA),
   emplacement SIMM pour le Bcache. Nécessite une alimentation en 3,3
   Volts.

   L'AXPpci33 (aussi nommée NoName), est basée sur l'EB66. Cette
   conception est produite par le groupe technique OEM de Digital (TOEM).
   A base d'un processeur 21066 tournant à 166 MHz ou 233 MHz. Taille
   baby PC-AT, nécessite une alimentation standard PC. 5 emplacements ISA
   et 3 emplacements PCI (dont un partagé avec un emplacement ISA). Il
   existe deux versions, avec un connecteur soit PS/2, soit DIN pour le
   clavier.

   D'autres cartes mères à base de 21066 : la plupart, sinon toutes,
   disponibles sur le marché sont basées sur l'EB66 - il n'y a pas
   beaucoup d'options dans la conception d'un système 21066, parce que
   tout le contrôle est fait par les puces.

   Multia (aussi nommé Universal Desktop Box) : il s'agit d'un système
   boîtier bureau très compact à base de 21066. Il comporte deux ports
   PCMCIA, une carte graphique 21030 (TGA), une carte ethernet 21040 et
   un contrôleur SCSI NCR 810, ainsi qu'un lecteur de disquettes, 2 port
   série et un port parallèle. Ses capacités d'extension sont limitées
   (un emplacement PCI) à cause de sa petite taille (il y a en plus des
   restrictions sur l'utilisation de l'emplacement PCI, dont je ne me
   souviens plus). (Notez que des Multia à base de 21066A ou de Pentium
   sont aussi disponibles).

   DEC PC 150 AXP (aussi nommé Jensen) : c'est un très vieux système
   Digital - l'un des systèmes Alpha de première génération. Il n'est
   mentionné ici que parce qu'un certain nombre de ces systèmes semblent
   être disponibles sur le marché de l'occasion. Le Jensen est un système
   grande tour qui utilise un 21064 à 150 MHz (des versions plus récentes
   utilisèrent des processeurs plus rapides mais je ne suis pas sûr des
   vitesses). Il utilisait de la logique programmée pour interfacer le
   processeur à un pontage 486<->EISA.

   D'autres systèmes à base de 21064(A) : il existe encore 3 ou 4 autres
   conceptions de cartes mère (sans compter les _systèmes_ Digital) et
   tous ceux que je connais sont dérivés de l'EB64+. Parmi ceux-ci :

     * EB64+ (certains vendeurs l'ont assemblé et vendu sans
       modifications); taille AT.
     * Carte mère Aspen Systems : dérivée de l'EB64+ ; taille baby AT.
     * Carte serveur Aspen Systems : beaucoup d'emplacements PCI (inclut
       un pontage PCI).
     * AlphaPC64 (aussi nommée Cabriolet), taile baby AT.

   D'autres systèmes à base de 21164(A) : le seul que je connaisse qui ne
   soit pas un simple clone d'un EB164 est un système de DeskStation. Ce
   système est construit avec un contrôleur de mémoire et
   d'entrées/sorties propriétaire de DeskStation. Je ne sais pas quelle
   est leur attitude vis-à-vis de Linux.

8. Les octets et leur multiples

   Quand l'architecture Alpha fut présentée, elle était unique par
   rapport aux autres architectures RISC en empêchant les lectures et
   écritures sur 8 et 16 bits. Elle supportait les lectures et écritures
   sur 32 et 64 bits (mot long et quadruple mot, dans la terminologie
   Digital). Les co-architectes (Dick Sites et Rich Witek) justifiaient
   ce choix par ces avantages :

    1. Le support des octets dans le cache et le sous-système mémoire
       tend à ralentir les accès pour les quantités de 32 et 64 bits.
    2. Le support des octets rend difficile la création d'un circuit de
       correction d'erreur haute-vitesse dans le cache et le sous-système
       mémoire.

   L'Alpha compense par de puissantes instructions pour la manipulation
   des octets et des groupes d'octets dans les registres de 64 bits. Les
   tests de performances standard pour les opérations sur les chaînes de
   caractères (par exemples, certains tests de Byte) montrent que l'Alpha
   se comporte très bien pour la manipulation des octets.

   L'absence de lectures et écritures sur octet a des répercussions sur
   certains sémaphores logiciels et sur la conception des sous-systèmes
   d'entrées/sorties. La solution de Digital au problème des
   entrées/sorties est d'utiliser certaines lignes d'adresse de bas
   niveau pour spécifier la taille des données pendant les transferts de
   données, et de les décoder en masque d'octets. Cet adressage dénommé
   "adressage clairsemé" gâche une partie de l'espace d'adressage et rend
   l'espace d'entrées/sorties non contigü (j'en dirais plus sur cet
   adressage clairsemé quand j'aurai fini par l'écrire). Notez que
   l'espace d'entrées/sorties, dans ce contexte, se réfère à toutes les
   ressources présentes sur le bus PCI et comprend aussi bien l'espace
   mémoire PCI que l'espace d'entrées/sorties PCI.

   Avec l'apparition du 21164A, l'architecture Alpha a été étendue pour
   inclure l'adressage des octets. L'exécution des nouvelles instructions
   sur un processeur plus ancien déclenchera une exception PALcode
   OPCDEC, pour que le PALcode puisse gérer cet accès. Cela aura une
   incidence sur les performances. Les ramifications de ceci font que
   l'utilisation de ces instructions devraient (à mon humble avis) être
   limitée aux pilotes de périphériques plutôt qu'aux applications.

   Ces nouvelles possibilité de lecture et écriture au niveau octet
   signifient que de futurs chipsets pourront supporter un espace
   d'entrées/sorties contigü.

9. Le PALcode

   Cet emplacement est destiné à une section expliquant le PALcode. Je
   l'écrirai s'il y a suffisemment d'intérêt.

10. Portabilité

   La possibilité de faire tourner Linux sur n'importe quelle machine
   Alpha est généralement limitée par votre possibilité d'obtenir des
   informations sur les détails sanglants de ses arcanes. Puisque des
   portages de Linux existent pour les cartes mères EB66, EB64+ et EB164,
   tous les systèmes basés sur les 21066, 21064/APECS et 21164/ALCOR
   devraient pouvoir faire tourner Linux avec très peu voire aucune
   modification. La principale différence entre toutes ces cartes mères
   est la façon dont elles diffusent les interruptions. Il y a trois
   sources d'interruptions :

     * périphériques intégrés
     * périphériques PCI
     * périphériques ISA

   Tous les systèmes utilisent un système de pontage d'entrées/sorties
   (SIO) Intel en tant que pontage entre les bus PCI et ISA (le bus
   principal est PCI, le bus ISA est un bus secondaire utilisé pour
   supporter les périphériques anciens ou basse vitesse). Le SIO contient
   la traditionnelle paire de 8259 chaînés.

   Certains systèmes (par exemple le NoName) diffusent leurs
   interruptions via le SIO vers le processeur. Certains systèmes ont un
   contrôleur d'interruptions séparé et diffusent toutes les
   interruptions PCI plus l'interruption SIO (sortie du 8259) via ce
   contrôleur, et toutes les interruptions ISA via le SIO.

   Les autres différences entre ces systèmes comprennent :

     * de combien d'emplacements ils disposent
     * quels sont les périphériques PCI intégrés
     * si la ROM de démarrage est en mémoire flash ou en EPROM

11. Plus d'informations

   Toutes les conceptions de cartes d'évaluation et de cartes mères de DS
   sont libres de droits et la documentation complète pour une conception
   coûte environ 50$ (300FF). Cela comprend tous les schémas, les sources
   des parties programmées, les feuilles d'informations du processeur et
   du chipset. Les kits de documentation sont disponibles auprès des
   distributeurs de Digital Semiconductor. Je ne suggère pas de vous
   précipiter aller l'acheter, mais je veux faire remarquer que ces
   informations sont disponibles.

   J'espère que cela vous a été utile. Les commentaires, mises à jour,
   suggestions d'extension sont à envoyer à Neal Crook.

12. Références

   [1] Bill Hamburgen, Jeff Mogul, Brian Reid, Alan Eustace, Richard
   Swan, Mary Jo Doherty, and Joel Bartlett. _Characterization of Organic
   Illumination Systems_. DEC WRL, Technical Note 13, April 1989.