Breve introduction aux systemes et processeurs Alpha
Neal Crook, Digital Equipment (Publication: David Mosberger
<mailto:
[email protected]>) (Adaptation Francaise par
Christophe Vallat (
[email protected]))
V0.11, 6 Juin 1997
Ce document est un rapide apercu des processeurs et systemes Alpha
existants. Il y a un peu de parti pris, a cause de mon experience
personnelle. Bien que je sois un employe de Digital Equipment Corpora-
tion, il ne s'agit pas d'un d'un document officiel de Digital et les
opinions exprimees sont les miennes, pas celles de Digital.
11.. QQuu''eesstt--ccee qquuee AAllpphhaa ??
"Alpha" est le nom donne a l'architecture RISC 64 bits de Digital. Le
projet Alpha commenca a Digital a 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 premiere architecture RISC produite par Digital, mais
ce fut la premiere a etre mise sur le marche. Quand Digital a annonce
Alpha en mars 1992, elle a pris la decision d'entrer sur le marche des
composants electroniques en vendant des microprocesseurs Alpha.
Alpha est parfois designe par Alpha AXP, pour de vieilles et obscures
raisons qu'il est inutile de preciser. Il suffit de dire que c'est
exactement la meme chose.
22.. QQuu''eesstt--ccee qquuee DDiiggiittaall SSeemmiiccoonndduuccttoorr ??
Digital Semiconductor <
http://www.digital.com/info/semiconductor/>
(DS) est la section commerciale de Digital Equipment Corporation
(Digital - nous n'aimons pas le sigle DEC) qui vend les composants
electroniques. Parmi les produits de Digital figurent les processeurs,
les chipsets associes, les pontages PCI-PCI et les composants PCI pour
la communication et le multimedia.
33.. PPrroocceesssseeuurrss AAllpphhaa
Il y a actuellement 2 generations de base de processeur implementant
l'architecture Alpha :
+o EV4
+o EV5
Les avis different quant au sens de "EV" (note : la vraie reponse est
bien entendu "Electro Vlassic" ``[1]''), mais le chiffre represente la
premiere generation de technologie CMOS de Digital avec laquelle le
processeur a ete concu. Ainsi, EV4 a ete initialement concue en CMOS4.
Au fil du temps, un processeur tend a trouver une nouvelle jeunesse en
etant optiquement retrecie dans la nouvelle generation de CMOS. EV45
est donc la base EV4 concue en CMOS5. Il y a une grande difference
entre retrecir une conception pour une technologie particuliere et la
reconcevoir pour cette technologie (mais je ne veux pas entrer dans
les details). Il y a encore quelques variantes : la CMOS4S
(retrecissement 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 _p_u_c_e_s nous avons:
2211006644--115500,,116666
EV4 (initialement), EV4S (maintenant)
2211006644--220000
EV4S
2211006644AA--223333,,227755,,330000
EV45
2211006666
LCA4S (base EV4, avec coprocesseur EV4)
2211006666AA--223333
LCA45 (base EV4, mais avec coprocesseur EV45)
2211116644--223333,,330000,,333333
EV5
2211116644AA--441177
EV56
2211226644
EV6 <
http://www.mdronline.com/report/articles/21264/21264.html>
La base EV4 est un noyau double-ecoulement (il peut traiter 2
instructions processeur par cycle d'horloge) super-pipeline avec une
unite de calcul entier, une unite de calcul flottant et prediction de
branchement. Il a des bus de donnees internes de 64 bits et des caches
de 8Ko etroitement couples, un jeu de chaque pour les instructions, et
pour les donnees. Les caches sont en ecriture immediate ("write-
through").
La base EV45 a quelques ameliorations par rapport a la base EV4 :
l'unite de calcul flottant est legerement amelioree, et les caches
sont de 16Ko. (Note : Neal Crook a indique dans un courrier separe que
les modifications de l'unite de calcul flottant ameliorent les
performances de la division. La FPU de l'EV4 prend 34 cycles pour une
division en simple precision et 63 cycles pour une division en double-
precision (quelles que soient les donnees). En comparaison, le FPU de
l'EV45 prend generalement 19 cycles (34 au pire) pour la simple
precision et 29 cycles (63 au pire) pour la double-precision (en
fonction des donnees).)
La base EV5 est un noyau quadruple-ecoulement, egalement super-
pipeline etc etc. Il a des caches de 8 Ko etroitement couples, un de
pour les instructions et un pour les donnees. Ces caches sont en
ecriture immediate. Il dispose egalement d'un cache de deuxieme niveau
de 96 Ko sur le processeur (le Scache) qui est associatif 3-morceaux
et en ecriture differee ("write back"). Le gain de performance de
l'EV4 a l'EV5 est superieur au seul gain genere par l'augmentation de
la frequence. En plus des caches plus grands et du quadruple-
ecoulement, il y a aussi des ameliorations de sa microarchitecture
pour reduire les temps d'attente producteur/consommateur dans
certaines voies.
La base EV56 est fondamentalement la meme microarchitecture que l'EV5,
mais ajoute quelques nouvelles instructions pour la lecture et
l'ecriture sur 8 et 16 bits (cf. section ``Les octets et leur
multiples''). Elles sont principalement destinees aux pilotes de
peripheriques. La base EV56 est realisee en CMOS6, en 2,0 Volts.
Le 21064 a ete annonce 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 deuxieme niveau, avec une taille de bloc de 256
bits (2 fois la taille du bus). La vitesse de ce Bcache est
entierement configurable logiciellement. Le 21064 peut aussi etre
configure pour utiliser un bus externe de 64 bits (mais je crois
qu'aucun systeme n'utilise ce mode). Le 21064 n'impose aucune
contrainte sur le Bcache, mais il est generalement configure en
ecriture differee. Le 21064 contient un systeme permettant a du
materiel separe de maintenir la coherence entre le Bcache et le cache
interne, mais c'est complexe.
Le 21066 utilise la base EV4 et integre un controleur de memoire et un
pontage de bus PCI. Pour economiser des broches, le controleur de
memoire 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 controleur de memoire supporte le BCache et la DRAM
externe. La vitesse du Bcache et de la DRAM est entierement
configurable logiciellement, et peut etre controle a la vitesse du
processeur. La decomposition en 4 acces pour remplir un bloc de cacte
n'est pas si mauvais qu'on peut le penser parce que l'acces a la DRAM
est fait en mode page. Malheureusement, le controleur de memoire ne
supporte ni les types de DRAM esoterique (SDRAM, EDO ou BEDO), ni les
RAMs de cache synchrone. L'interface du bus PCI est entierement
compatible avec PCI 2.0 et tourne jusqu'a 33 MHz.
Le 21164 a un bus de donnees de 128 bits et supporte les lectures
partielles, avec jusqu'a deux lectures en cours en meme temps (ce qui
permet une utilisation a 100% du bus de donnees dans les meilleures
conditions de reve, i.e. il est possible theoriquement de transferer
128 bits de donnees a chaque cycle du bus). Le 21164 supporte une
connexion facile d'un cache de troisieme niveau (Bcache) et a tout le
systeme pour permettre a du materiel externe de maintenir la coherence
de tous les caches. De cette facon, les conceptions de multiprocesseur
symetrique sont 'faciles'.
Le 21164A a ete annonce en octobre 1995. Il utilise la base EV56. Son
brochage est compatible avec celui du 21164, mais necessite des lignes
d'alimentation separees ; toutes les broches qui etaient +3,3 Volts
sur le 21164 ont ete divisees en deux groupes ; un groupe fournit 2,0
Volts au coeur du processeur, l'autre fournissant 3,3 Volts aux unites
d'entrees/sorties. Contrairement aux anciennes conceptions, les
broches du 21164A n'acceptent pas 5 Volts. Le resultat de ce
changement est que les systemes 21164 ne peuvent en general pas etre
mis a jour en 21164A (bien qu'il soit relativement simple de concevoir
un systeme 21164A qui puisse aussi accepter un 21164). Le 21164A
dispose egalement de quelques nouvelles broches pour supporter les
lectures et ecritures sur 8 et 16 bits. Il ameliore egalement le
support du 21164 pour les SRAMs synchrones qui composent le Bcache.
44.. PPeerrffoorrmmaanncceess ccoommppaarreeeess dduu 2211006644 eett dduu 2211006666
Le 21064 et le 21066 ont la meme base (EV4). Si le meme programme
tourne sur un 21064 et un 21066, a la meme frequence, alors la
difference de performance provient uniquement de la bande passante
entre le Bcache et la memoire. Du code qui tombe principalement dans
les caches _i_n_t_e_r_n_e_s tournera aussi rapidement. Il y a 2 principaux
tueurs de performances :
1. Du code qui ecrit enormement. Malgre les buffers en ecriture du
21064 et du 21066 pour economiser certains delais, du code qui
ecrit enormement sera etrangle par la bande passante en ecriture du
bus systeme. Cela est du au fait que les cache du processeur sont
en ecriture immediate.
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 etre
faite en memoire (Et du coup, puisque les caches du processeur sont
en ecriture immediate, via le Bcache). (Note : il semble que l'EV4
et l'EV45 peuvent effectuer la conversion via le premier cache de
donnees (Dcache), a partir du moment ou la memoire est cachee. Dans
ce cas, l'ecriture faite par la sequence de conversion mettra a
jour le Dcache et la lecture qui va suivre sera, dans certaines
circonstances, capable de lire la valeur du Dcache, evitant un
couteux transfert depuis le Bcache. En particulier, il semble
meilleur d'executer les instructions stq/ldt ou stt/ldq dos a dos,
ce qui est plutot contraire a l'intuition.)
Si vous effectuez la meme comparaison entre un 21064A et un 21066A, il
y a un facteur supplementaire du aux differentes tailles des Icache et
Dcache entre les deux processeurs.
Maintenant, le 21164 resoud ces deux problemes : il atteint des _b_i_e_n
meilleures bandes passantes du bus systeme (malgre le meme nombre de
broches de signal - oui, je _s_a_i_s que c'est a peu pres deux fois plus
qu'un 21064, mais les supplementaires sont l'alimentation et la masse
! (oui, reellement!!)) et il a des caches en ecriture differee. Le
seul probleme restant est la reponse a la question "combien il coute
?"
55.. QQuueellqquueess nnootteess ssuurr lleess ffrreeqquueenncceess
Tous les processeurs Alpha actuels utilisent des horloges a haute
vitesse, parce que leur microarchitecture a ete concue comme "en
cycles courts". Cependant, du coup, aucun des bus systemes n'a besoin
de tourner a de telles vitesses :
+o sur les 21066(A), 21064(A) et 21164 la vitesse du cache externe
(Bcache) est entierement programmable, a la resolution de l'horloge
du processeur. Par exemple, pour un processeur a 275 MHz, le temps
d'acces en lecture du Bcache peut etre controle avec une resolution
de 3,6 ns.
+o sur les 21066(A), la vitesse des DRAM est entierement programmable,
a la resolution de l'horloge du processeur (_p_a_s celle du bus PCI).
+o sur les 21064(A) et 21164(A), la frequence du bus systeme est un
sous-multiple de cele du processeur. La plupart des cartes meres
21064 utilisent une horloge du bus systeme a 33 MHz.
+o Le systemes a base de 21066 peuvent faire tourner le bus PCI a
n'importe quelle frequence par rapport au processeur. En general,
le bus PCI tourne a 33 MHz.
+o Les systemes qui utilisent les chipset APECS (cf. section ``'') ont
toujours la frequence du bus processeur egale a celle du bus PCI.
Cela signifie que les deux bus tendent a tourner soit a 25 MHz,
soit a 33 MHz (puisque ce sont les frequences qui sont sous-
multiples de celle du processeur). Sur les systemes APEC, la
vitesse du controleur de DRAM est programmable logiciellement en
fonction de la frequence du bus processeur.
NNoottee:: quelqu'un a suggere qu'il obtenait de mauvaises performances sur
un systeme 21066 parce que le controleur de memoire du 21066 ne tourne
qu'a 33 MHz. En fait, ce sont soulement les systemes super-rapides
21064A qui ont des controleurs de memoire qui tournent 'seulement' a
33 MHz.
66.. LLeess cchhiippsseett
DS vend deux chipsets de support processeur. Le chipset 2107x (denomme
APECS) supporte les 21064(A). Le chipset 2117x (denomme ALCOR)
supporte les 21164. Il y aura aussi un chipset 2117xA (denomme ALCOR
2) qui supportera le 21164A.
Ces deux chipsets fournissent des controleurs de memoire et des
pontages PCI pour leur processeur. APECS fournit un pontage PCI de 32
bits, ALCOR fournit un pontage PCI de 64 bits qui (conformement a la
specification PCI) peut supporter des peripheriques PCI aussi bien 32
bits que 64 bits.
APECS consiste en 6 puces de 208 broches (4 registres de 32 bits
(DECADE), 1 controleur systeme (COMANCHE), 1 controleur PCI (EPIC)).
Il fournit un controleur de DRAM (bus memoire de 128 bits) et une
interface PCI. Il effectue egalement tout le travail de maintien de la
coherence quand un peripherique PCI effectue une operation DMA vers
(ou depuis) la memoire.
ALCOR consiste en 5 puces (4 registres de 64 bits (Data Switch, DSW)
208 broches PQFP et 1 controleur (Control, I/O Address, CIA) - un
boitier plastique de 383 broches). Il fournit un controleur de DRAM
(bus memoire de 256 bits) et une interface PCI. Il effectue egalement
tout le travail de maintion de coherence quand un peripherique PCI
effectue une operation DMA vers (ou depuis) la memoire.
Il n'existe pas de chipset supportant le 21066, puisque le controleur
de memoire et le pontage PCI sont integres dans le processeur.
77.. LLeess ssyysstteemmeess
Le groupe applications de DS produit des exemples de conceptions
utilisant les processeurs et leurs chipsets associes. Il s'agit
typiquement de cartes meres de format PC-AT, avec toutes les
fonctionnalites que vous trouverez typiquement sur une carte mere
Pentium haut de gamme. Initialement, ces exemples de conception
etaient destines a etre utilises comme point de depart pour des
tierces parties pour concevoir des cartes meres. Ces conceptions de
premiere generation furent nommees Evaluation Boards (EB). Comme la
quantite de travail necessaire pour concevoir une carte mere a
augmente (a cause de la montee en frequence des processeurs et pour
respecter les regles sur l'emission de frequences radio) l'accent a
ete mis sur la conception de cartes meres utilisables pour une
production en masse.
Les groupes systeme de Digital ont produit plusieurs generations de
machines a base de processeurs Alpha. Certains de ces systemes
utilisent des chipsets concues par les groupes systeme, d'autres
utilisent les chipsets de DS. Dans certains cas, les systemes
utilisent une combinaison des deux.
Plusieurs tierces parties ont construit des systemes a base de
processeurs Alpha. Certaines de ces entreprises ont concu leurs
systemes a partir de zero, d'autres ont utilise les chipsets de DS, ou
ont copie/modifie les exemples de conception de DS, ou simplement
assemblent leurs systemes a partir des cartes fabriquees et verifiees
par DS.
L'EB64 : Conception obsolete utilisant un 21064 avec un controleur de
memoire implemente en logique programmee. Entrees/Sorties realisees
par de la logique programmee pour s'interfacer a un chipset de pontage
486<->ISA. Ethernet, SuperI/O (2S, 1P, LD) integre sur la carte mere,
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
partage). Supporte des SIMMs de DRAM 36 bits. Le bus ISA est gere par
un chipset de pontage Intel Saturn. Controleur SCSI (NCR 810 PCI),
ethernet (Digital 21040), controleur clavier et souris (PS/2),
SuperI/O (2S, 1P, LD), memoire CMOS et horloge sur la carte mere. ROM
de demarrage en EPROM. Taille PC-AT. Alimentation standard PC.
L'EB66 : Utilise un 21066 ou un 21066A. Le sous-systeme d'entrees
sorties est identique a celui de l'EB64+. Taille baby PC-AT.
Alimentation standard PC. Les schemas de l'EB66 furent publies dans
des publicites vantant le 21066 comme "le premier microprocesseur au
monde avec PCI integre" (pour les amateurs d'anecdotes : il y a deux
versions de cette publicite - j'ai dessine les circuits et ecrit le
boniment dans la premiere version, et des americains ont malmene le
boniment pour la deuxieme version)
L'EB164 : Utilise un 21164 et ALCOR. Bus ISA et PCI (3 emplacements
ISA, 2 emplacements PCI 64 bits (dont un partage avec un emplacement
ISA) et 2 emplacements PCI 32 bits). Emplacement SIMM pour le Bcache.
Le sous-systeme d'entrees sorties fournit un controleur SuperI/O (2S,
1P, LD), un controleur clavier et souris (PS/2), memoire CMOS et
horloge. ROM de demarrage en memoire flash. Taille PC-AT. Necessite
une alimentation en 3,3 Volts.
L'AlphaPC64 (aussi nommee Cabriolet) : derive de l'EB64+ mais
desormais en taille baby PC-AT avec une ROM de demarrage en flash, et
plus de controleur SCSI et ethernet sur la carte mere. 3 emplacements
ISA, 4 emplacements PCI (dont un partage avec un emplacement ISA),
emplacement SIMM pour le Bcache. Necessite une alimentation en 3,3
Volts.
L'AXPpci33 (aussi nommee NoName), est basee sur l'EB66. Cette
conception est produite par le groupe technique OEM de Digital (TOEM).
A base d'un processeur 21066 tournant a 166 MHz ou 233 MHz. Taille
baby PC-AT, necessite une alimentation standard PC. 5 emplacements
ISA et 3 emplacements PCI (dont un partage avec un emplacement ISA).
Il existe deux versions, avec un connecteur soit PS/2, soit DIN pour
le clavier.
D'autres cartes meres a base de 21066 : la plupart, sinon toutes,
disponibles sur le marche sont basees sur l'EB66 - il n'y a pas
beaucoup d'options dans la conception d'un systeme 21066, parce que
tout le controle est fait par les puces.
Multia (aussi nomme Universal Desktop Box) : il s'agit d'un systeme
boitier bureau tres compact a base de 21066. Il comporte deux ports
PCMCIA, une carte graphique 21030 (TGA), une carte ethernet 21040 et
un controleur SCSI NCR 810, ainsi qu'un lecteur de disquettes, 2 port
serie et un port parallele. Ses capacites d'extension sont limitees
(un emplacement PCI) a 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 a base de 21066A ou de Pentium
sont aussi disponibles).
DEC PC 150 AXP (aussi nomme Jensen) : c'est un tres vieux systeme
Digital - l'un des systemes Alpha de premiere generation. Il n'est
mentionne ici que parce qu'un certain nombre de ces systemes semblent
etre disponibles sur le marche de l'occasion. Le Jensen est un systeme
grande tour qui utilise un 21064 a 150 MHz (des versions plus recentes
utiliserent des processeurs plus rapides mais je ne suis pas sur des
vitesses). Il utilisait de la logique programmee pour interfacer le
processeur a un pontage 486<->EISA.
D'autres systemes a base de 21064(A) : il existe encore 3 ou 4 autres
conceptions de cartes mere (sans compter les _s_y_s_t_e_m_e_s Digital) et tous
ceux que je connais sont derives de l'EB64+. Parmi ceux-ci :
+o EB64+ (certains vendeurs l'ont assemble et vendu sans
modifications); taille AT.
+o Carte mere Aspen Systems : derivee de l'EB64+ ; taille baby AT.
+o Carte serveur Aspen Systems : beaucoup d'emplacements PCI (inclut
un pontage PCI).
+o AlphaPC64 (aussi nommee Cabriolet), taile baby AT.
D'autres systemes a base de 21164(A) : le seul que je connaisse qui ne
soit pas un simple clone d'un EB164 est un systeme de DeskStation. Ce
systeme est construit avec un controleur de memoire et
d'entrees/sorties proprietaire de DeskStation. Je ne sais pas quelle
est leur attitude vis-a-vis de Linux.
88.. LLeess oocctteettss eett lleeuurr mmuullttiipplleess
Quand l'architecture Alpha fut presentee, elle etait unique par
rapport aux autres architectures RISC en empechant les lectures et
ecritures sur 8 et 16 bits. Elle supportait les lectures et ecritures
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-systeme memoire tend
a ralentir les acces pour les quantites de 32 et 64 bits.
2. Le support des octets rend difficile la creation d'un circuit de
correction d'erreur haute-vitesse dans le cache et le sous-systeme
memoire.
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 operations sur les chaines de
caracteres (par exemples, certains tests de Byte) montrent que l'Alpha
se comporte tres bien pour la manipulation des octets.
L'absence de lectures et ecritures sur octet a des repercussions sur
certains semaphores logiciels et sur la conception des sous-systemes
d'entrees/sorties. La solution de Digital au probleme des
entrees/sorties est d'utiliser certaines lignes d'adresse de bas
niveau pour specifier la taille des donnees pendant les transferts de
donnees, et de les decoder en masque d'octets. Cet adressage denomme
"adressage clairseme" gache une partie de l'espace d'adressage et rend
l'espace d'entrees/sorties non contigue (j'en dirais plus sur cet
adressage clairseme quand j'aurai fini par l'ecrire). Notez que
l'espace d'entrees/sorties, dans ce contexte, se refere a toutes les
ressources presentes sur le bus PCI et comprend aussi bien l'espace
memoire PCI que l'espace d'entrees/sorties PCI.
Avec l'apparition du 21164A, l'architecture Alpha a ete etendue pour
inclure l'adressage des octets. L'execution des nouvelles instructions
sur un processeur plus ancien declenchera une exception PALcode
OPCDEC, pour que le PALcode puisse gerer cet acces. Cela aura une
incidence sur les performances. Les ramifications de ceci font que
l'utilisation de ces instructions devraient (a mon humble avis) etre
limitee aux pilotes de peripheriques plutot qu'aux applications.
Ces nouvelles possibilite de lecture et ecriture au niveau octet
signifient que de futurs chipsets pourront supporter un espace
d'entrees/sorties contigue.
99.. LLee PPAALLccooddee
Cet emplacement est destine a une section expliquant le PALcode. Je
l'ecrirai s'il y a suffisemment d'interet.
1100.. PPoorrttaabbiilliittee
La possibilite de faire tourner Linux sur n'importe quelle machine
Alpha est generalement limitee par votre possibilite d'obtenir des
informations sur les details sanglants de ses arcanes. Puisque des
portages de Linux existent pour les cartes meres EB66, EB64+ et EB164,
tous les systemes bases sur les 21066, 21064/APECS et 21164/ALCOR
devraient pouvoir faire tourner Linux avec tres peu voire aucune
modification. La principale difference entre toutes ces cartes meres
est la facon dont elles diffusent les interruptions. Il y a trois
sources d'interruptions :
+o peripheriques integres
+o peripheriques PCI
+o peripheriques ISA
Tous les systemes utilisent un systeme de pontage d'entrees/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 utilise pour
supporter les peripheriques anciens ou basse vitesse). Le SIO
contient la traditionnelle paire de 8259 chaines.
Certains systemes (par exemple le NoName) diffusent leurs
interruptions via le SIO vers le processeur. Certains systemes ont un
controleur d'interruptions separe et diffusent toutes les
interruptions PCI plus l'interruption SIO (sortie du 8259) via ce
controleur, et toutes les interruptions ISA via le SIO.
Les autres differences entre ces systemes comprennent :
+o de combien d'emplacements ils disposent
+o quels sont les peripheriques PCI integres
+o si la ROM de demarrage est en memoire flash ou en EPROM
1111.. PPlluuss dd''iinnffoorrmmaattiioonnss
Toutes les conceptions de cartes d'evaluation et de cartes meres de DS
sont libres de droits et la documentation complete pour une conception
coute environ 50$ (300FF). Cela comprend tous les schemas, les sources
des parties programmees, les feuilles d'informations du processeur et
du chipset. Les kits de documentation sont disponibles aupres des
distributeurs de Digital Semiconductor. Je ne suggere pas de vous
precipiter aller l'acheter, mais je veux faire remarquer que ces
informations sont disponibles.
J'espere que cela vous a ete utile. Les commentaires, mises a jour,
suggestions d'extension sont a envoyer a Neal Crook
<mailto:
[email protected]>.
1122.. RReeffeerreenncceess
[1]
<
http://www.research.digital.com/wrl/publications/abstracts/TN-13.html>
Bill Hamburgen, Jeff Mogul, Brian Reid, Alan Eustace, Richard Swan,
Mary Jo Doherty, and Joel Bartlett. _C_h_a_r_a_c_t_e_r_i_z_a_t_i_o_n _o_f _O_r_g_a_n_i_c
_I_l_l_u_m_i_n_a_t_i_o_n _S_y_s_t_e_m_s. DEC WRL, Technical Note 13, April 1989.