aboutsummaryrefslogtreecommitdiff
path: root/fr_FR.ISO8859-1/books/handbook/hw/chapter.sgml
diff options
context:
space:
mode:
Diffstat (limited to 'fr_FR.ISO8859-1/books/handbook/hw/chapter.sgml')
-rw-r--r--fr_FR.ISO8859-1/books/handbook/hw/chapter.sgml5780
1 files changed, 0 insertions, 5780 deletions
diff --git a/fr_FR.ISO8859-1/books/handbook/hw/chapter.sgml b/fr_FR.ISO8859-1/books/handbook/hw/chapter.sgml
deleted file mode 100644
index 8d226e1099..0000000000
--- a/fr_FR.ISO8859-1/books/handbook/hw/chapter.sgml
+++ /dev/null
@@ -1,5780 +0,0 @@
-<!--
- The FreeBSD Documentation Project
- The FreeBSD French Documentation Project
-
- $FreeBSD$
- Original revision: n.nn
--->
-
- <chapter id="hw">
- <title>** Compatibilit&eacute; mat&eacute;rielle</title>
- &trans.a.haby;
-
-
- <para>Les questions de compatibilit&eacute; mat&eacute;rielle sont aujourd'hui
- les plus probl&eacute;matiques de l'industrie informatique et FreeBSD
- n'en est nullement &agrave; l'abri. De ce point de vue, l'avantage qu'a
- FreeBSD de pouvoir &ecirc;tre utilis&eacute; sur du mat&eacute;riel PC courant et
- peu co&ucirc;teux est aussi une difficult&eacute; lorsqu'il faut supporter
- l'incroyable vari&eacute;t&eacute; de composants disponibles.
- Il est impossible de donner une liste exhaustive des mat&eacute;riels
- compatibles avec FreeBSD, mais ce chapitre est un catalogue des
- pilotes de p&eacute;riph&eacute;riques inclus dans FreeBSD et des mat&eacute;riels que
- chaque pilote supporte. Si possible et appropri&eacute;, des notes ont
- ajout&eacute;es sur les mat&eacute;riels eux-m&ecirc;mes. Vous pouvez aussi vous
- r&eacute;f&eacute;rer au chapitre <link linkend="kernelconfig-config">Configurer
- le noyau de FreeBSD</link> de ce manuel pour avoir
- la liste des mat&eacute;riels support&eacute;s.</para>
-
- <para>FreeBSD est un projet b&eacute;n&eacute;vole qui n'a pas les moyens de financer
- un service de tests, nous reposons sur vous, les utilisateurs, pour une
- grande part des informations que fournit ce catalogue. Si vous avez
- l'exp&eacute;rience personnelle d'un mat&eacute;riel qui fonctionne ou ne fonctionne
- pas avec FreeBSD, faites-le nous savoir par courrier &eacute;lectronique
- &agrave; &a.doc;. Les questions concernant les mat&eacute;riels compatibles doivent
- &ecirc;tre adress&eacute;es &agrave; &a.questions; (voyez la section
- <link linkend="eresources-mail">Listes de diffusion</link>
- pour plus d'informations). Quand vous nous faites
- parvenir de l'information ou posez une question, n'oubliez pas s'il vous
- pla&icirc;t de pr&eacute;ciser exactement quelle version de FreeBSD vous utilisez et
- de donner le maximum de d&eacute;tails sur votre configuration
- mat&eacute;rielle.</para>
-
- <sect1>
- <title>Ressources Internet</title>
-
- <para>Les liens donn&eacute;s ci-dessous se sont av&eacute;r&eacute;s utiles pour guider
- dans les choix de mat&eacute;riels. Bien que les renseignements qu'ils vous
- donnent ne soient pas n&eacute;cessairement sp&eacute;cifiques (ou m&ecirc;me
- applicables) &agrave; FreeBSD, ils ne d&eacute;pendent pas, pour la plupart
- du syst&egrave;me d'exploitation. V&eacute;rifiez s'il vous pla&icirc;t dans le guide
- du mat&eacute;riel pour FreeBSD que la configuration que vous avez choisie
- soit compatible avec FreeBSD avant d'acheter quoi que ce soit.</para>
-
- <para>
- <itemizedlist>
-
- <listitem>
- <para><ulink url="http://www.tomshardware.com/">The Pentium
- Systems Hardware Performance Guide</ulink>&nbsp;-&nbsp;le
- guide des performances des syst&egrave;mes Pentium.</para>
- </listitem>
-
- </itemizedlist>
- </para>
-
- </sect1>
-
- <sect1 id="hw-configs">
- <title>Exemples de configurations</title>
-
- <para>La liste de configurations ci-dessous ne constitue en aucun
- cas une publicit&eacute; pour un constructeur ou un produit de la
- part du <emphasis>Projet FreeBSD</emphasis>. Ces informations ne
- sont donn&eacute;es que pour &ecirc;tre utiles et rassemblent simplement les
- exp&eacute;riences de diff&eacute;rentes personnes sur des configurations vari&eacute;es.
- Tarifs indicatifs. Chauss&eacute;e glissante. Attention au chien.</para>
-
- <sect2 id="hw-jordans-picks">
- <title>La s&eacute;lection de Jordan</title>
-
- <para>J'ai obtenu de bons r&eacute;sultats en mettant sur pied des stations
- de travail et des serveurs avec les composants ci-dessous. Je ne
- peut vous garantir que vous en aurez aussi, ni qu'aucune des marques
- cit&eacute;es restera &ldquo;le meilleur choix&rdquo;. J'essaierai, si
- possible, de tenir cette liste &agrave; jour, mais ne peux bien &eacute;videmment
- vous assurer qu'elle le soit &agrave; un moment donn&eacute;.</para>
-
- <sect3 id="hw-mb">
- <title>Cartes m&egrave;res</title>
-
- <para>Pour les syst&egrave;mes Pentium Pro (P6), j'aime assez la carte m&egrave;re
- bi-processseurs
- <ulink url="http://www.tyan.com/html/products.html">Tyan</ulink>
- S1668. Elle fait un sympathique syst&egrave;me &agrave; un ou deux processeurs
- (ce que supporte FreeBSD 3.0) et le prix du Pentium Pro 180/256K
- a maintenant baiss&eacute; &agrave; un niveau vraiment abordable. Le Pentium Pro
- reste mon processeur favori pour les serveurs (les m&eacute;gahertzs ne
- font pas tout).</para>
-
- <para>Pour les Pentium II, j'ai un s&eacute;rieux pr&eacute;jug&eacute; en faveur de la
- carte m&egrave;re <ulink url="http://www.asus.com.tw">ASUS</ulink>
- <ulink url="http://www.asus.com.tw/Products/Motherboard/Pentiumpro/P2l97-s/index.html">P2l97-S</ulink>
- avec contr&ocirc;leur WIDE SCSI int&eacute;gr&eacute;.</para>
-
- <para>Pour les machines Pentium, la carte m&egrave;re ASUS
- <ulink url="http://www.asus.com.tw/Products/Motherboard/Pentium/P55tp4/index.html">P55T2P4</ulink>
- para&icirc;t un bon choix pour un serveur ou une station de travail
- de taille moyenne &agrave; importante. Vous pouvez aussi
- regarder du c&ocirc;t&eacute; de la carte
- <ulink url="http://asustek.asus.com.tw/FTP/ASUS/Info/Spec/pvi-486sp3.txt">486SP3G</ulink>,
- si vous cherchez une carte m&egrave;re 486.</para>
-
- <note>
- <para>(Il semble qu'il soit devenu difficile de se procurer ces
- derni&egrave;res, qu'ASUS ne fabrique apparemment plus.) </para>
- </note>
-
- <para>Ceux qui veulent utiliser des syst&egrave;mes plus tol&eacute;rants aux
- erreurs doivent veiller &agrave; employer de la m&eacute;moire avec contr&ocirc;le
- de parit&eacute;, ou ECC, pour des applications non-stop.</para>
-
- <note>
- <para>La m&eacute;moire ECC entra&icirc;ne une petite perte de performances
- (que vous remarquerez ou non selon votre application) mais vous
- apporte des gains significatifs en termes de tol&eacute;rance
- d'erreur.</para>
- </note>
- </sect3>
-
- <sect3>
- <title>Contr&ocirc;leurs de disque</title>
-
- <para>C'est un point plus d&eacute;licat. J'utilisais
- inconditionnellement des contr&ocirc;leurs
- <ulink url="http://www.buslogic.com">Buslogic</ulink>
- pour tout, de l'ISA au PCI, j'incline maintenant plut&ocirc;t vers
- le contr&ocirc;leur <ulink
- url="http://www.adaptec.com">Adaptec</ulink> 1542CF pour l'ISA,
- le contr&ocirc;leur Buslogic Bt747c pour l'EISA et le contr&ocirc;leur
- Adaptec 2940UW pour le PCI.</para>
-
- <para>J'ai aussi eu de bons r&eacute;sultats avec les cartes
- PCI NCR/Symbios, bien qu'il faille s'assurer que
- votre carte m&egrave;re supporte le mod&egrave;le sans BIOS (s'il n'y
- a rien sur votre carte qui ressemble vaguement &agrave; une puce
- ROM, c'est probablement un mod&egrave;le qui s'attend &agrave; ce que son
- BIOS soit sur la carte m&egrave;re).</para>
-
- <para>Si vous pensez qu'il vous faut plus d'un contr&ocirc;leur SCSI,
- vous pouvez songer &agrave; &eacute;conomiser vos maigres ressources en
- emplacements PCI en achetant une carte Adaptec 3940, qui
- int&egrave;gre deux contr&ocirc;leurs PCI sur un seul connecteur.</para>
-
- </sect3>
-
- <sect3 id="hw-disks">
- <title>Disques durs</title>
-
- <para>Pour cette version particuli&egrave;re de la roulette russe, je
- donnerais peu de conseils pr&eacute;cis sinon pour recommander
- &ldquo;du SCSI plut&ocirc;t que de l'IDE d&egrave;s que vous pouvez vous
- l'offrir&rdquo;. M&ecirc;me sur de petites machines de bureau, le SCSI
- est souvent un meilleur choix parce qu'il vous permet de
- migrer vos disques du serveur vers la machine de bureau lorsque
- les prix en chute des disques en font une solution &eacute;conomiquement
- viable. Si vous avez plus d'une machine &agrave; administrer, ne pensez
- pas seulement en terme de stockage, voyez plut&ocirc;t cela comme
- une cha&icirc;ne alimentaire!</para>
-
- <para>Je ne trouve pas que les disques WIDE SCSI repr&eacute;sentent
- un investissement n&eacute;cessaire, &agrave; moins que vous ne mettiez en place
- un serveur NFS ou des forums de discussion
- qui devront supporter beaucoup d'acc&egrave;s disque pour de nombreux
- utilisateurs.</para>
-
- </sect3>
-
- <sect3 id="hw-jordans-picks-cdrom">
- <title>Lecteur de CD-ROMs</title>
-
- <para>Ma pr&eacute;f&eacute;rence pour le SCSI s'applique aussi aux lecteurs de
- CD-ROMs SCSI, et bien que j'ai toujours eu de bons r&eacute;sultats
- avec le mod&egrave;le <ulink url="http://www.toshiba.com">Toshiba</ulink>
- XM-3501B (qui existe aussi en version tiroir sous la r&eacute;f&eacute;rence
- XM-5401B), je suis maintenant tr&egrave;s partisan du lecteur
- <ulink url="http://www.plextor.com">Plextor</ulink> PX-12CS.
- C'est un lecteur 12x dont les performances et la fiabilit&eacute; sont
- excellentes.</para>
-
- <para>D'une fa&ccedil;on g&eacute;n&eacute;rale, la plupart des lecteurs de CD-ROMs SCSI
- que j'ai vus, sont de fabrication robuste et vous ne vous
- tromperez pas non plus si vous prenez un mod&egrave;le HP ou NEC. Le prix
- des lecteurs de CD-ROMs SCSI semble avoir aussi consid&eacute;rablement
- baiss&eacute; ces derniers mois et devient comp&eacute;titif avec celui des
- lecteurs IDE, alors qu'ils restent techniquement sup&eacute;rieurs. A
- choisir entre les deux, je ne vois pas de raison de se d&eacute;cider
- pour un lecteur IDE.</para>
-
- </sect3>
-
- <sect3 id="hw-worm">
- <title>Graveurs de CD-ROMs non r&eacute;inscriptibles</title>
-
- <para>Au moment o&ugrave; j'&eacute;cris ceci, FreeBSD supporte trois types de
- graveurs de CD-ROMs (bien que je pense qu'ils viennent en fait
- tous de chez Phillips): le Phillips CDD 522 (se comporte comme
- le Plasmon), le Plasmon RF4100 et le HP 6020i. J'utilise
- personnellement le HP 6020i pour graver mes CD-ROMs (avec la
- version 2.2-current de FreeBSD&nbsp;-&nbsp;il ne fonctionne pas
- avec la version 2.1.5 et les versions ant&eacute;rieures du pilote SCSI)
- qui me donne toute satisfaction. Regardez dans le fichier
- <ulink url="file:/usr/share/examples/worm">/usr/share/examples/worm</ulink>
- sur votre syst&egrave;me 2.2 pour avoir des exemples de proc&eacute;dures pour
- cr&eacute;er des images au format ISO9660 (avec les extensions RockRidge)
- de vos syst&egrave;mes de fichiers et graver ensuite des CD-ROMs avec un
- HP6020i.</para>
-
- </sect3>
-
- <sect3 id="hw-tape">
- <title>Lecteurs de bandes</title>
-
- <para>J'ai obtenu de bons r&eacute;sultats avec les lecteurs
- <ulink url="http://www.Exabyte.COM:80/Products/8mm/8505XL/Rfeatures.html">8mm</ulink>
- de chez
- <ulink url="http://www.exabyte.com">Exabyte</ulink>
- et
- <ulink url="http://www-dmo.external.hp.com:80/tape/_cpb0001.htm">4mm (DAT)</ulink>
- de chez <ulink url="http://www.hp.com">HP</ulink>.</para>
-
- <para>Pour les sauvegardes, je recommande les Exabytes pour la
- robustesse (et la plus grande capacit&eacute;) des bandes 8mm.</para>
-
- </sect3>
-
- <sect3 id="hw-video">
- <title>Cartes graphiques</title>
-
- <para>Si vous pouvez aussi vous offrir un serveur X commercial
- pour 99&#36; US de chez
- <ulink url="http://www.xig.com/">Xi Graphics, Inc. (autrefois, X Inside, Inc)</ulink>
- alors je vous recommande vivement la carte
- <ulink url="http://www.matrox.com/">Matrox</ulink>
- <ulink url="http://www.matrox.com/mgaweb/brochure.htm">Millenium</ulink>.
- Cette carte est aussi tr&egrave;s bien support&eacute;e par le serveur
- <ulink url="http://www.xfree86.org/">XFree86</ulink>,
- qui en est maintenant &agrave; sa version 3.3.2.</para>
-
- <para>Les cartes
- <ulink url="http://www.nine.com/">Number 9</ulink> sont aussi
- un excellent choix&nbsp;-&nbsp;leurs cartes Vision 868 et 968
- (la s&eacute;rie 9FX) bas&eacute;es sur le circuit S3 sont aussi tr&egrave;s rapides
- et bien g&eacute;r&eacute;es par le pilote S3 du serveur XFree86.</para>
-
- </sect3>
-
- <sect3 id="hw-monitors">
- <title>Moniteurs</title>
-
- <para>J'ai eu d'excellents r&eacute;sultats avec les moniteurs
- <ulink url="http://cons3.sel.sony.com/SEL/ccpg/display/ms17se2.html">Sony Multiscan 17seII</ulink>,
- et avec le Viewsonic qui utilise le m&ecirc;me tube (Trinitron). Pour
- des mod&egrave;les au-del&agrave; de 17", tout ce que je peux aujourd'hui
- conseiller est de ne pas d&eacute;penser moins de 2.500 &#36; pour
- un moniteur 21" ou 1.700 &#36; pour un 20", si vous en avez
- vraiment besoin. Il y de bons &eacute;crans dans
- la gamme des 20" et plus,
- et il y en a aussi de bon march&eacute;. Malheureusement, il y en a tr&egrave;s
- peu qui soient &agrave; la fois de bonne qualit&eacute; et bon march&eacute;!</para>
-
- </sect3>
-
- <sect3 id="hw-networking">
- <title>R&eacute;seau</title>
-
- <para>Je peux recommander le contr&ocirc;leur <ulink
- url="http://www.smc.com/">SMC</ulink> Ultra 16 pour les
- applications ISA et les cartes SMC EtherPower ou Compex ENET32
- pour les r&eacute;seaux importants bas&eacute;s sur du PCI. Ces deux cartes
- PCI sont construites autour de la puce contr&ocirc;leur Ethernet
- DEC DC21041 et les autres cartes qui employent cette puce, telles
- que la Zynx ZX432 et la DEC DE435, fonctionneront aussi. Pour
- les r&eacute;seaux 100Mbit, les cartes SMC SMC9332DST 10/100MB ou Intel
- Intel EtherExpress Pro/100B font du bon travail, ma pr&eacute;f&eacute;rence
- allant &agrave; la carte Intel EtherExpress.</para>
-
- <para>Si d'un autre c&ocirc;t&eacute; vous cherchez la solution la moins ch&egrave;re
- possible, mais qui fonctionne malgr&eacute; tout raisonnablement, alors
- pratiquement n'importe quel clone NE2000 est un bon choix.</para>
-
- </sect3>
-
- <sect3 id="hw-serial">
- <title>S&eacute;rie</title>
-
- <para>Si vous cherchez des solutions pour un r&eacute;seau s&eacute;rie &agrave; grande
- vitesse, alors <ulink url="http://www.dgii.com/">Digi
- International</ulink> fabrique la s&eacute;rie <ulink
- url="http://www.dgii.com/prodprofiles/profiles-prices/digiprofiles/digispecs/sync570.html">SYNC/570</ulink>,
- pour laquelle FreeBSD-current a maintenant des pilotes.
- <ulink url="http://www.etinc.com">Emerging Technologies</ulink>
- fabrique aussi une carte avec des fonctionnalit&eacute;s T1/E1,
- qui utilise du logiciel qu'il fournit.
- Je n'ai cependant pas l'exp&eacute;rience personnelle de ces deux
- produits.</para>
-
- <para>Les possibilit&eacute;s de cartes multi-ports sont quelque peu plus
- nombreuses, bien que le support par FreeBSD des produits
- <ulink url="http://www.cyclades.com/">Cyclades</ulink> soit
- r&eacute;put&eacute; le plus complet, essentiellement en raison de
- l'engagement pris par cette compagnie de nous fournir du
- mat&eacute;riel pour &eacute;valuation et des sp&eacute;cifications techniques. J'ai
- entendu dire que la Cyclom-16Ye offrait le meilleur rapport
- prix/performances, mais je n'ai pas consult&eacute; les tarifs r&eacute;cents.
- D'autres cartes multi-ports dont j'ai entendu dire du bien
- sont les BOCA et les AST, et <ulink
- url="http://www.stallion.com/">Stallion
- Technologies</ulink> propose apparemment <ulink
- url="ftp://ftp.stallion.com/drivers/unsupported/freebsd/stalbsd-0.0.4.tar.gz">ici</ulink>
- un pilote non officiel pour ses cartes.</para>
-
- </sect3>
-
- <sect3 id="hw-audio">
- <title>Audio</title>
-
- <para>J'utilise actuellement une AWE32 de <ulink
- url="http://www.creaf.com/">Creative Labs</ulink>, bien qu'&agrave; peu
- pr&egrave;s tout ce qui vient de chez Creative Labs marcherait
- aujourd'hui. Ce qui ne veut pas dire que d'autres cartes son
- ne marchent pas, simplemement je n'en ai qu'une exp&eacute;rience
- limit&eacute;e (j'aimais bien autrefois les cartes GUS, mais la
- situation des cartes Gravis est d&eacute;licate depuis quelque
- temps).</para>
-
- </sect3>
-
- <sect3 id="hw-vgrabbers">
- <title>Vid&eacute;o</title>
-
- <para>Pour la capture vid&eacute;o, il y a deux bons
- choix&nbsp;-&nbsp;n'importe
- quelle carte &agrave; base de puce Brooktree BT848, comme les Hauppauge
- ou les WinTV, marchera &agrave; merveille avec FreeBSD. Une autre carte
- que j'utilise est la
- <ulink
- url="http://www.matrox.com/">Matrox</ulink> <ulink
- url="http://www.matrox.com/imgweb/meteor.htm">Meteor</ulink>.
- FreeBSD supporte aussi la carte d'incrustation vid&eacute;o plus ancienne
- de chez Creative Labs, mais elles deviennent difficiles &agrave; trouver.
- Notez que la carte Meteor <emphasis>ne fonctionnera pas</emphasis>
- avec les cartes m&egrave;res qui ont un contr&ocirc;leur 440FX! Consultez
- la section
- <link linkend="hw-mb">Cartes m&egrave;res</link> pour plus de
- d&eacute;tails. Dans ce cas, il vaut mieux prendre une carte
- BT848.</para>
-
- </sect3>
- </sect2>
- </sect1>
-
- <sect1 id="hw-core">
- <title>Composants de base/Processeurs</title>
-
- <sect2>
- <title>Cartes m&egrave;res, bus et contr&ocirc;leurs de bus</title>
-
- <sect3>
- <title>* ISA</title>
- <para></para>
- </sect3>
-
- <sect3>
- <title>* EISA</title>
- <para></para>
- </sect3>
-
- <sect3>
- <title>* VLB</title>
- <para></para>
- </sect3>
-
- <sect3 id="hw-mb-pci">
- <title>PCI</title>
-
- <para><emphasis>Contribution de &a.rgrimes;.<!-- <br> -->25 Avril
- 1995.</emphasis></para>
-
- <para><emphasis>Mises &agrave; jour de &a.jkh;.</emphasis><!-- <br>
- -->Derni&egrave;re mise &agrave; jour le <emphasis>26 Ao&ucirc;t
- 1996.</emphasis></para>
-
- <para>Parmi les contr&ocirc;leurs INTEL PCI, la liste suivante d&eacute;crit
- diff&eacute;rents types de probl&egrave;me connus, et leur gravit&eacute;, du pire
- au meilleur.</para>
-
- <variablelist>
- <varlistentry><term>Mercury:</term>
- <listitem>
- <para>Probl&egrave;mes de coh&eacute;rence du cache, en particulier s'il
- y a des contr&ocirc;leurs de bus ISA en plus du pont ISA/PCI.
- C'est un probl&egrave;me mat&eacute;riel, la seule solution consiste
- &agrave; d&eacute;sactiver le cache.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry><term>Saturn-I <emphasis>(i.e., 82424ZX en i
- r&eacute;vision 0, 1 ou 2)</emphasis>:</term>
-
- <listitem>
- <para>Probl&egrave;me de coh&eacute;rence lors de la r&eacute;&eacute;criture dans le
- cache. C'est un probl&egrave;me mat&eacute;riel. La seule parade
- consiste &agrave; configurer le cache externe en mode
- transparent. Ou &agrave; passer &agrave; la version Saturn-II.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry><term>Saturn-II <emphasis>(i.e., 82424ZX en
- r&eacute;vision 3 ou 4)</emphasis>:</term>
-
- <listitem>
- <para>Fonctionne bien, mais de nombreux fabriquants de
- carte m&egrave;re ne se pr&eacute;occupent pas du bit SRAM n&eacute;cessaire
- aux op&eacute;rations de r&eacute;ecriture. On peut y pallier en
- utilisant le mode transparent ou en g&eacute;rant le bit SRAM.
- (J'ai fait cela avec une ASUS PCI/I-486SP3G r&eacute;vision 1.6
- et des cartes plus r&eacute;centes).</para>
- </listitem>
- </varlistentry>
-
- <varlistentry><term>Neptune:</term>
-
- <listitem>
- <para>Ne peut g&eacute;rer plus de deux contr&ocirc;leurs de bus. C'est
- une erreur de conception reconnue par Intel. Parmi les
- solutions: ne pas utiliser plus de deux contr&ocirc;leurs,
- mat&eacute;riel sp&eacute;cialement con&ccedil;u pour remplacer l'arbitre de
- bus PCI (apparu avec l'Intel Altair et d'autres cartes
- m&egrave;res pour serveur Intel), et bien s&ucirc;r la r&eacute;ponse
- officielle d'Intel, le remplacer par un Triton, nous
- &ldquo;l'y avons mis&rdquo;.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry><term>Triton <emphasis>(ie,
- 430FX)</emphasis>:</term>
-
- <listitem>
- <para>Pas de probl&egrave;me de coh&eacute;rence du cache ou de contr&ocirc;le
- du bus connu. Mais cette puce n'impl&eacute;mente tout simplement
- pas le contr&ocirc;le de parit&eacute;. Contournez le probl&egrave;me de
- parit&eacute;. Utilisez des cartes Triton-II si vous avez
- le choix.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry><term>Triton-II <emphasis>(ie,
- 430HX)</emphasis>:</term>
-
- <listitem>
- <para>Tous les &eacute;chos sur les cartes m&egrave;res avec cette puce
- sont jusqu'ici favorables. Pas de probl&egrave;me connu.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry><term>Orion:</term>
-
- <listitem>
- <para>Les premi&egrave;res versions de cette puce souffraient d'un
- retard en &eacute;criture PCI qui entra&icirc;nait des d&eacute;gradations
- sensibles de performance des applications gourmandes en
- trafic sur le bus PCI. Les versions B0 et ult&eacute;rieures de
- cette puce ont r&eacute;gl&eacute; ce probl&egrave;me.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry><term><ulink
- url="http://developer.intel.com/design/pcisets/desktop.htm#440FX">440FX</ulink>:</term>
-
- <listitem>
- <para>Cette puce pour <ulink
- url="http://www.intel.com/procs/ppro/index.htm">Pentium Pro</ulink>
- semble fonctionner correctement et ne souffre pas des
- probl&egrave;mes qu'ont connus
- les premi&egrave;res puces Orion. Il accepte
- aussi une plus grande vari&eacute;t&eacute; de types de m&eacute;moire, y compris
- l'ECC et le contr&ocirc;le de parit&eacute;. Le seul probl&egrave;me connu est
- que la carte d'acquisition vid&eacute;o Matrox Meteor ne fonctionne
- pas avec.</para>
-
- </listitem>
- </varlistentry>
- </variablelist>
-
- </sect3>
- </sect2>
-
- <sect2>
- <title>Processeurs/Coprocesseurs</title>
-
- <para><emphasis>Contribution de &a.asami;.<!-- <br> -->26 D&eacute;cembre
- 1997.</emphasis></para>
-
- <sect3>
- <title>P6 (Pentium Pro/Pentium II)</title>
-
- <para>Le Pentium Pro et le Pentium II fonctionnent parfaitement
- avec FreeBSD.
- De fait, notre site ftp de base <ulink
- url="ftp://ftp.freebsd.org/">ftp.freebsd.org</ulink> (aussi
- appel&eacute; "<filename>ftp.cdrom.com</filename>", le site ftp le plus
- important au monde) utilise FreeBSD sur un Pentium Pro. Des <ulink
- url="ftp://ftp.cdrom.com/archive-info/wcarchive.txt">D&eacute;tails de la configuration</ulink> sont disponibles si vous &ecirc;tes int&eacute;ress&eacute;s.</para>
-
- </sect3>
-
- <sect3>
- <title>Pentium</title>
-
- <para>Les Pentium Intel (P54C), Pentium MMX (P55C), AMD K6 et
- Cyrix/IBM 6x86MX fonctionnent tous avec FreeBSD. Je n'entrerai
- pas dans le d&eacute;tail de savoir lequel est plus rapide que l'autre,
- il y a des zillions de sites Web sur l'Internet pour vous
- l'expliquer &agrave; l'endroit et &agrave; l'envers.
- <!-- smiley --><emphasis>:)</emphasis></para>
-
- <note>
- <para>Les diff&eacute;rents processeurs ont besoin d'une alimentation
- et d'une ventilation diff&eacute;rentes. Assurez-vous que votre carte
- m&egrave;re fournit la tension exacte requise par votre processeur. Par
- exemple, de nombreuses puces MMX ont besoin d'une alimentation
- d&eacute;doubl&eacute;e (e.g., 2.9V pour l'unit&eacute; centrale, 3.3V pour les
- entr&eacute;es/sorties). Certaines puces AMD et Cyrix/IBM chauffent
- plus que les puces Intel. Dans ce cas, v&eacute;rifiez que vous avez
- bien les bons radiateurs et ventilateurs (vous pouvez trouver la
- liste des composants certifi&eacute;s sur leurs pages Web).</para>
- </note>
-
- <sect4>
- <title>Vitesses d'horloge</title>
-
- <para><emphasis>Contribution de &a.rgrimes;.<!-- <br> -->1
- Octobre 1996.</emphasis></para>
-
- <para><emphasis>Mise &agrave; jour de &a.asami;.<!-- <br> -->27 D&eacute;cembre
- 1997.</emphasis></para>
-
- <para>Les machines de la cat&eacute;gorie Pentium utilisent des vitesses
- d'horloge diff&eacute;rentes pour leurs diff&eacute;rents composants. Il y a
- la fr&eacute;quence du processeur, celle du bus m&eacute;moire externe et
- celle du bus PCI. Il n'est pas toujours exact qu'un processeur
- &ldquo;plus rapide&rdquo; compose un syst&egrave;me plus rapide
- qu'un &ldquo;plus lent&rdquo;, du fait de ces diff&eacute;rentes
- vitesses d'horloge. Voici une table qui donne la liste des
- possibilit&eacute;s:</para>
-
- <informaltable frame="none">
- <tgroup cols="4">
- <thead>
- <row>
- <entry>Fr&eacute;quence du processeur (MHz)</entry>
- <entry>Horloge externe et fr&eacute;quence du bus m&eacute;moire (mHz)
- [a]</entry>
- <entry>Coefficient multiplicateur horloge
- interne/externe</entry>
- <entry>Fr&eacute;quence du bus PCI (MHz)</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>60</entry>
- <entry>60</entry>
- <entry>1.0</entry>
- <entry>30</entry>
- </row>
-
- <row>
- <entry>66</entry>
- <entry>66</entry>
- <entry>1.0</entry>
- <entry>33</entry>
- </row>
-
- <row>
- <entry>75</entry>
- <entry>50</entry>
- <entry>1.5</entry>
- <entry>25</entry>
- </row>
-
- <row>
- <entry>90</entry>
- <entry>60</entry>
- <entry>1.5</entry>
- <entry>30</entry>
- </row>
-
- <row>
- <entry>100</entry>
- <entry>50 [b]
- </entry>
- <entry>2</entry>
- <entry>25</entry>
- </row>
-
- <row>
- <entry>100</entry>
- <entry>66</entry>
- <entry>1.5</entry>
- <entry>33</entry>
- </row>
-
- <row>
- <entry>120</entry>
- <entry>60</entry>
- <entry>2</entry>
- <entry>30</entry>
- </row>
-
- <row>
- <entry>133</entry>
- <entry>66</entry>
- <entry>2</entry>
- <entry>33</entry>
- </row>
-
- <row>
- <entry>150</entry>
- <entry>60</entry>
- <entry>2.5</entry>
- <entry>30 (Intel, AMD)</entry>
- </row>
-
- <row>
- <entry>150</entry>
- <entry>75</entry>
- <entry>2</entry>
- <entry>37.5 (Cyrix/IBM 6x86MX)</entry>
- </row>
-
- <row>
- <entry>166</entry>
- <entry>66</entry>
- <entry>2.5</entry>
- <entry>33</entry>
- </row>
-
- <row>
- <entry>180</entry>
- <entry>60</entry>
- <entry>3</entry>
- <entry>30</entry>
- </row>
-
- <row>
- <entry>200</entry>
- <entry>66</entry>
- <entry>3</entry>
- <entry>33</entry>
- </row>
-
- <row>
- <entry>233</entry>
- <entry>66</entry>
- <entry>3.5</entry>
- <entry>33</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- <para>Remarques:</para>
- <itemizedlist>
- <listitem>
- <para>[a] 66MHz peut &ecirc;tre en fait 66.667MHz, mais ne pas le
- pr&eacute;sumer.</para>
- </listitem>
- <listitem>
- <para>[b] Le Pentium 100 peut utiliser une horloge externe &agrave;
- 50MHz avec un coefficient multiplicateur de 2 ou &agrave; 66MHz
- avec un coefficient multiplicateur de 1.5.</para>
- </listitem>
- </itemizedlist>
- <para>L'id&eacute;al est donc d'avoir un processeur &agrave; 100,
- 133, 166, 200 ou 233, sinon qu'avec un coefficient
- multiplicateur de 3 et plus, le processeur attend apr&egrave;s
- la m&eacute;moire.</para>
-
- </sect4>
-
- <sect4>
- <title>Le bogue de l'AMD K6</title>
-
- <para>En 1997, on a rapport&eacute; des probl&egrave;mes d'erreurs d'acc&egrave;s
- &agrave; la m&eacute;moire lors de compilations intensives avec l'AMD K6.
- Le probl&egrave;me a &eacute;t&eacute; r&eacute;gl&eacute; au troisi&egrave;me trimestre 97. D'apr&egrave;s
- les rapports, les puces K6 dont la date de fabrication est
- &ldquo;9733&rdquo; ou plus (i.e., produites &agrave; partir de la
- 33&egrave;me semaine de 97) n'ont plus ce probl&egrave;me.</para>
-
- </sect4>
- </sect3>
-
- <sect3>
- <title>* 486</title>
- <para></para>
- </sect3>
-
- <sect3>
- <title>* 386</title>
- <para></para>
- </sect3>
-
- <sect3>
- <title>286</title>
-
- <para>D&eacute;sol&eacute;, FreeBSD ne tourne pas sur des machines 80286. Il est
- quasiment impossible de faire tourner les UNIXs cons&eacute;quents et
- dot&eacute;s de fonctionnalit&eacute;s compl&egrave;tes d'aujourd'hui sur de telles
- machines.</para>
-
- </sect3>
- </sect2>
-
- <sect2>
- <title>M&eacute;moire</title>
-
- <para>Il vous faudra au moins 5 MB de m&eacute;moire pour pouvoir installer
- FreeBSD. Une fois votre syst&egrave;me en &eacute;tat de marche, vous pouvez
- <link linkend="kernelconfig-building">recompiler un noyau</link>
- qui utilisera moins de m&eacute;moire. Avec <filename>boot4.flp</filename>
- vous pouvez vous en sortir avec seulement 4 MB.</para>
-
- </sect2>
-
- <sect2>
- <title>* BIOS</title>
-
- <para></para>
- </sect2>
- </sect1>
-
- <sect1 id="hw-io">
- <title>*** P&eacute;riph&eacute;riques d'Entr&eacute;e/Sortie</title>
-
-<!--
- &trans.a.dntt;
--->
-
- <sect2>
- <title>* Cartes graphiques</title>
-
- <para></para>
- </sect2>
-
- <sect2>
- <title>* Cartes son</title>
-
- <para></para>
- </sect2>
-
- <sect2>
- <title>*** Ports s&eacute;rie et cartes multi-ports</title>
-
- <sect3 id="uart">
- <title>*** L'UART : Ce que c'est et comment il fonctionne</title>
- &sgml.todo;
-
-<!--
- <para><emphasis>Copyright &copy; 1996 &a.uhclem;, tous droits
- r&eacute;serv&eacute;s. 13 janvier 1996.</emphasis></para>
-
- <para>Le contr&ocirc;leur du r&eacute;cepteur/&eacute;metteur
- asynchrone universel <emphasis>Universal
- Asynchronous Receiver/Transmitter (UART)</emphasis>
- est le composant clef du sous-syst&egrave;me de communication
- d'un ordinateur. L'UART prend des octets de donn&eacute;es et
- transmet des bits individuels d'un mani&egrave;re s&eacute;quentielle.
- Au point de destination, un second UART re-assemble les
- bits en octets complets.</para>
-
- <para>Les transmissions s&eacute;ries sont habituellement
- utilis&eacute;es avec les modems et pour les communications
- non-r&eacute;seaux entre les ordinateurs, terminaux et autres
- p&eacute;riph&eacute;riques.</para>
-
- <para>Il y a deux formes de transmission s&eacute;rie : synchrone
- et asynchrone. D&eacute;pendant du mode que votre mat&eacute;riel
- supporte, le nom d'un sous-syst&egrave;me de communication indiquera
- <literal>A</literal> s'il supporte les communications
- asynchrone et <literal>S</literal> s'il supporte les
- communications synchrones. Les deux formes sont d&eacute;crites
- ci-dessous :</para>
-
- <para>Les acronymes les plus courants sont :
-
- <blockquote>
- <para>UART <emphasis>Universal Asynchronous
- Receiver/Transmitter></emphasis> : R&eacute;cepteur/Emetteur
- universel asynchrone</para>
- </blockquote>
-
- <blockquote>
- <para>USART <emphasis>Universal SYnchronous-Asynchronous
- Receiver/Transmitter></emphasis> : R&eacute;cepteur/Emetteur
- universel synchrone-asynchrone</para>
- </blockquote></para>
-
- <sect4>
- <title>Transmission s&eacute;rie synchrones</title>
-
- <para>Les transmissions s&eacute;ries synchrones n&eacute;cessite le
- fait que l'&eacute;metteur et le r&eacute;cepteur partage une horloge
- commune, ou que l'envoyeur fournisse un signal
- d'&eacute;chantillonage
- ou n'importe quel autre signal temporel afin que le
- r&eacute;cepteur sache quand est-ce qu'il doit
- &ldquo;lire&rdquo; le prochain bit de donn&eacute;es. Dans la
- plupart des formes de communication synchrone, s'il
- n'y a pas de donn&eacute;es disponibles au moment o&ugrave; il faut
- envoyer, un caract&egrave;re de remplissage doit &ecirc;tre envoy&eacute; &agrave;
- la place de telle sorte qu'il y ait toujours des
- donn&eacute;es en cours de transmission.
- La communication synchrone est souvent plus efficace
- parce seulement des bits de donn&eacute;es sont transmis entre
- l'&eacute;metteur et le r&eacute;cepteur, et la communication
- synchrone peut co&ucirc;ter plus cher si du cablage et
- circuit suppl&eacute;mentaires sont n&eacute;cessaires pour partager
- un signal d'horloge entre l'&eacute;metteur et le
- r&eacute;cepteur.</para>
-
- <para>Une forme de transmission synchrone est celle
- utilis&eacute;e par les imprimantes et les p&eacute;riph&eacute;riques disques
- non amovibles dans lesquels la donn&eacute;e est envoy&eacute; &agrave; un
- ensemble de c&acirc;bles pendant que l'horloge ou le signal
- d'&eacute;chantillonage est envoy&eacute; par un c&acirc;ble diff&eacute;rent.
- Les imprimantes et les p&eacute;riph&eacute;riques de disques fixes ne
- sont normalement pas des p&eacute;riph&eacute;riques s&eacute;rie parce que la
- plupart des interfaces standards de disques fixes envoient
- un mot entier de donn&eacute;e par signal d'horloge ou
- d'&eacute;chantillonage en utilisant un c&acirc;ble s&eacute;par&eacute; pour chaque
- bit du mot. Dans l'industrie du PC, cela est appel&eacute;
- p&eacute;riph&eacute;rique parall&egrave;le.</para>
-
- <para>Le mat&eacute;riel de communication s&eacute;rie standard dans un PC
- ne supporte pas les op&eacute;rations synchrones. Ce mode est crit
- ici dans un seul but de comparaison.</para>
- </sect4>
-
- <sect4>
- <title>Transmission parall&egrave;le asynchrone</title>
-
- <para>La transmission asynchrone parall&egrave;le permet
- au donn&eacute;es d'&ecirc;tre transmises sans que l'&eacute;metteur n'ait &agrave;
- envoyer une horloge au r&eacute;cepteur.
- A la place, l'&eacute;metteur et le r&eacute;cepteur doivent s'entendre
- &agrave; l'avance sur les param&ecirc;tres de temps et des bits sp&eacute;ciaux
- sont ajout&eacute;s &agrave; chaque mot utilis&eacute; pour synchroniser les
- unit&eacute;s d'envoi et de r&eacute;ception.</para>
-
- <para>Lorsqu'un mot est donn&eacute; &agrave; l'UART pour des
- transmissions asynchrones, un bit nomm&eacute; "bit de d&eacute;part"
- est ajout&eacute; au d&eacute;bute de chaque mot transmis. Le bit de
- d&eacute;part est utilis&eacute; pour avertir le r&eacute;cepteur qu'un mot de
- donn&eacute;e est sur le point d'&ecirc;tre envoy&eacute;, et pour forcer
- l'horloge du r&eacute;cepteur &agrave; se synchroniser avec l'horloge de
- l'&eacute;metteur. Ces deux horloges doivent &ecirc;tre assez pr&eacute;cises
- afin de ne pas avoir un d&eacute;calage de fr&eacute;quence sup&eacute;rieur &agrave;
- 10% durant la transmission du reste des bits du mot. (cette
- n&eacute;cessit&eacute; a &eacute;t&eacute; introduit aux jours des t&eacute;l&eacute;printers
- m&eacute;caniques et est fr&eacute;quement rencontr&eacute; par les &eacute;quipements
- &eacute;lectroniques modernes.</para>
-
- <para>Apr&egrave;s le bit de d&eacute;part, les bits individuels du mot de
- donn&eacute;es sont envoy&eacute;s, avec le bit de poids faible
- <emphasis> - the Least Significant Bit (LSB) - </emphasis>
- devant &ecirc;tre envoy&eacute; en premier.
- Chaque bit dans la transmission est envoy&eacute; pour exactement
- le m&ecirc;me temps que tous les autres bits, et le r&eacute;cepteur
- &ldquo;regarde&rdquo; dans le c&acirc;ble &agrave;
- approximativement la moiti&eacute; de la p&eacute;riode assign&eacute;e &agrave;
- chaque bit pour d&eacute;terminer si le bit est un
- <literal>1</literal> ou un <literal>0</literal>.
- Par exemple, si cela prend deux secondes pour
- envoyer chaque bit, le r&eacute;cepteur examinera le
- signal pour d&eacute;terminer si c'est un <literal>1</literal>
- ou un <literal>0</literal> apr&egrave;s qu'une seconde
- se soit pass&eacute;e, puis il attendra deux secondes,
- et examinera la valeur du bit suivant, et ainsi
- de suite.</para>
-
- <para>L'&eacute;metteur ne sait pas si le r&eacute;cepteur a
- &ldquo;regard&eacute;&rdquo; la valeur du bit.
- L'&eacute;metteur a seulement connaissance de
- l'horloge lui disant de commencer &agrave; transmettre
- le prochain bit du mot.</para>
-
- <para>Lorsqu'un mot de donn&eacute;e complet a &eacute;t&eacute;
- envoy&eacute;, l'&eacute;metteur peut ajouter un bit de
- parit&eacute; que l'&eacute;metteur g&eacute;n&egrave;re. Le bit de
- parit&eacute; peut &ecirc;tre utilis&eacute; par le r&eacute;cepteur pour
- effectuer une v&eacute;rification d'erreur simple.
- Puis enfin, un bit d'arr&ecirc;t est envoy&eacute; &agrave;
- l'emmetteur.</para>
-
- <para>Lorsque le r&eacute;cepteur recoit tous les bits
- du mot de donn&eacute;es, il peut v&eacute;rifier les bits de
- parit&eacute; (l'&eacute;metteur et le r&eacute;cepteur doivent
- s'&ecirc;tre mis d'accord sur le bit de parit&eacute;
- utilis&eacute;), puis le r&eacute;cepteur attend un bit
- d'arr&ecirc;t. Si le bit d'arr&ecirc;t n'apparait pas au
- moment o&ugrave; il est suppos&eacute; le faire, l'UART
- consid&egrave;re que le mot complet est erron&eacute; et
- reportera une erreur de fen&ecirc;tre au processeur
- h&ocirc;te lorsque le mot de donn&eacute;e est lu. La cause
- usuelle d'une erreur de fen&ecirc;tre est lorsque
- l'horloge de l'&eacute;metteur et du r&eacute;cepteur ne
- tournent pas &agrave; la m&ecirc;me vitesse, et que le
- signal a &eacute;t&eacute; interrompu.</para>
-
- <para>Ind&eacute;pendamment de si les donn&eacute;es ont &eacute;t&eacute;
- re&ccedil;u correctement ou non, l'UART &eacute;carte
- automatiquement les bits de d&eacute;part, d'arr&ecirc;t et de
- parit&eacute;.
- Si l'&eacute;metteur et le r&eacute;cepteur sont configur&eacute;s
- identiquement, ces bits ne sont pas pass&eacute; &agrave;
- l'h&ocirc;te.</para>
-
- <para>Si un autre mot est pr&ecirc;t pour la
- transmission, le bit de d&eacute;part pour le nouveau mot
- peut &ecirc;tre envoy&eacute; aussit&ocirc;t que le bit d'arr&ecirc;t pour
- le mot pr&eacute;c&eacute;dent a &eacute;t&eacute; envoy&eacute;.</para>
-
- <para>Parce que les donn&eacute;es asynchrones sont
- &ldquo;auto-descriptibles&rdquo;, s'il n'y a pas
- de donn&eacute;es &agrave; transmettre, la ligne de transmission
- peut &ecirc;tre inactive.</para>
- </sect4>
-
- <sect4>
- <title>Autres fonctions UART</title>
-
- <para>En plus de son travail qui est de convertir
- des donn&eacute;es de parall&egrave;le &agrave; s&eacute;rie en r&eacute;ception, un
- UART fournit usuellement des circuits addtionnel
- pour les signaux qui peuvent &ecirc;tre utilis&eacute;s pour
- indiquer l'&eacute;tat de le m&eacute;dia de transmission, et
- pour r&eacute;guler le flux de donn&eacute;es dans l'&eacute;ventualit&eacute;
- o&ugrave; le p&eacute;riph&eacute;rique distant n'est pas pr&eacute;par&eacute; &agrave;
- accepter plus de donn&eacute;es. Par exemple, quand le
- p&eacute;riph&eacute;rique connect&eacute; &agrave; l'UART est un modem, le
- modem peut reporter la pr&eacute;sence d'une portance sur
- la ligne t&eacute;l&eacute;phonique alors que l'ordinateur peut
- ordonner au modem de se r&eacute;initialiser ou de ne pas
- prendre d'appel en prenant en compte ou non ces
- signaux suppl&eacute;pmentaires. La fonction de chacun
- de ces signaux suppl&eacute;mentaires est d&eacute;fini dans le
- standard EIA RS232-C.</para>
- </sect4>
-
- <sect4>
- <title>Les standards RS232-C et V.24</title>
-
- <para>Dans la plupart des syst&egrave;mes informatiques,
- l'UART est connect&eacute; au circuit g&eacute;n&eacute;rant le signal
- correspondant aux sp&eacute;cifications EIA RS232-C.
- Il y a aussi un standard CCITT nomm&eacute; V.24
- qui reprend les sp&eacute;cifications incluses dans
- RS232-C.</para>
-
- <sect5>
- <title>Assignation de bits RS232-C (marques et
- espaces)</title>
-
- <para>Dans la RS232-C, une valeur de <literal>1</literal>
- est appel&eacute;e une <literal>marque</literal> et une
- valeur de <literal>0</literal> est appel&eacute; un
- <literal>espace</literal>.
- Lorsqu'une ligne de communication est inactive,
- la ligne est dite &ldquo;marquant&rdquo; ou
- transmettant continuellement la valeur
- <literal>1</literal>.</para>
-
- <para>Le bit de d&eacute;part a toujours une valeur de
- <literal>0</literal> (un espace). Le bit d'arr&ecirc;t
- a toujours une valeur de <literal>1</literal>
- (une marque). Cela signifie qu'il y aura
- toujours une transition d'une marque (1) &agrave; un
- espace (0) sur la ligne &agrave; chaque mot, m&ecirc;me si
- plusieurs mots sont transmis &agrave; la suite.
- Cela garanti que l'&eacute;metteur et le r&eacute;cepteur
- peuvent resynchroniser leurs horloges,
- ind&eacute;pendamment du contenu des bits de donn&eacute;es en
- train d'&ecirc;tre transmis.</para>
-
- <para>Le temps d'inactivit&eacute; entre les bits de
- d&eacute;part et d'arr&ecirc;t n'ont pas &agrave; &ecirc;tre exactement
- multiple (en incluant z&eacute;ro) de la vitesse de
- transmission de bits sur le lien de
- communication, mais la plupart des UART sont
- con&ccedil;us de cette mani&egrave;re pour que cela soit plus
- simple.</para>
-
- <para>Dans la RS232-C, le signal "marquant"
- (un <literal>1</literal>) est repr&eacute;sent&eacute; par
- un voltage entre -2 VDC (tension en courant
- continu) et -12 VDC, et un
- signal "d'espace" (un <literal>0</literal>)
- est repr&eacute;sent&eacute; par un voltage entre 0 et +12 VDC.
- L'&eacute;metteur est suppos&eacute; envoyer du +12 VDC ou
- -12 VDC, et le r&eacute;cepteur, et le r&eacute;cepteur est
- suppos&eacute; supporter une perte de voltage sur les
- longs c&acirc;bles.
- Certains &eacute;metteurs avec des p&eacute;riph&eacute;riques de
- basse &eacute;nergie (comme les ordinateurs portables)
- utilisent souvent seulement +5 VDC et -5 VDC,
- mais ces valeurs sont toujours acceptables
- par un r&eacute;cepteur RS232-C, du moment que la
- longueur du c&acirc;ble soit courte.</para>
- </sect5>
-
- <sect5>
- <title>Signal de rupture RS232-C (Break Signal)</title>
-
- <para>La RS232-C sp&eacute;cifie aussi un signal
- appel&eacute; <literal>rupture</literal> (break),
- qui est caus&eacute; en envoyant en continu des valeurs
- d'espacement (ni de d&eacute;part, ni d'arr&ecirc;t).
- Quand iul n'y a pas d'&eacute;lectricit&eacute; pr&eacute;sent sur le
- circuit de donn&eacute;es, la ligne est consid&eacute;r&eacute;e en
- train d'envoyer une <literal>Rupture</literal>.</para>
-
- <para>Le signal <literal>Rupture</literal> peut
- &ecirc;tre plus long que le temps mis pour envoyer un
- octet complet plus les bits de d&eacute;part, d'arr&ecirc;t
- et de parit&eacute;. La plupart des UART peuvent
- distinguer une erreur de fen&ecirc;tre et une
- rupture, mais si l'UART ne peut pas le
- faire, la d&eacute;tection de fen&ecirc;tre peut &ecirc;tre
- utilis&eacute;e pour identifier les
- ruptures.</para>
-
- <para>Aux jours du teleprinter, lorsque
- plusieurs imprimantes &agrave; travers le monde &eacute;taient
- c&acirc;bl&eacute;es en s&eacute;rie (comme les services de news),
- toute unit&eacute; pouvait causer une
- <literal>Rupture</literal> en ouvrant
- temporairement le circuit complet.
- Cela &eacute;tait utilis&eacute; pour pouvoir autoriser un emplacement
- avec des nouvelles importante d'interrompre un autre
- emplacement en train de transmettre des informations.</para>
-
- <para>Dans les syst&egrave;mes modernes, il y a deux types de
- signal de rupture. Si la rupture est plus longue
- que 1.6 secondes, on le consid&egrave;re comme une
- "rupture de modem", et certains modems
- peuvent &ecirc;tre programm&eacute;s pour terminer la conversation
- et pour raccrocher ou entrer dans le mode de commande du
- modem quand le modem d&eacute;tecte ce signal.
- Si l'rupture est plus courte que 1.6 secondes, cela
- signifie une rupture de donn&eacute;es et il appartient &agrave;
- l'ordinateur distant de r&eacute;pondre &agrave; ce signal.
- Parfois cette forme de rupture est utilis&eacute;e comme
- signal d'attention ou d'interruption et est parfois
- accept&eacute;e comme remplacement pour le caract&egrave;re
- ASCII CONTROL-C.</para>
-
- <para>Les marques et espaces sont &eacute;quivalents aux
- &ldquo;trous&rdquo; et &ldquo;non trou&rdquo; dans les
- syst&egrave;mes &agrave; cartes perfor&eacute;es.</para>
-
- <note>
- <para>Les ruptures ne peuvent &ecirc;tre g&eacute;n&eacute;r&eacute;es depuis des
- cartes perfor&eacute;es ou n'importe auelle autre valeur
- d'octet, puisque les octets sont toujours envoy&eacute;s avec
- un bit de d&eacute;part et un bit d'arr&ecirc;t.
- L'UART est habituellement capable de produire du signal
- d'espacement en r&eacute;ponse &agrave; une commande sp&eacute;ciale
- du processeur h&ocirc;te.</para>
- </note>
- </sect5>
-
- <sect5>
- <title>P&eacute;riph&eacute;riques RS232-C DTE et DCE</title>
-
- <para>Les sp&eacute;cifications de RS232-C d&eacute;finit deux types de
- mat&eacute;riel : le terminal informatique (DTE) et le p&eacute;riph&eacute;rique
- de transport de donn&eacute;es (DCE). Habituellement, le
- p&eacute;riph&eacute;rique DTE est un terminal (ou un ordinateur) et le
- DCE est un modem. A l'autre extr&eacute;mit&eacute; de la conversation &agrave;
- travers la ligne t&eacute;l&eacute;phonique, le modem de r&eacute;ception est
- aussi un p&eacute;riph&eacute;rique DCE et l'ordinateur qui est reli&eacute; &agrave;
- ce modem est un p&eacute;riph&eacute;rique DTE.
- Le p&eacute;riph&eacute;rique DCE re&ccedil;oit des signaux sur les broches que
- le p&eacute;riph&eacute;rique de DTE transmet, et vice versa.</para>
-
- <para>Lorsque deux p&eacute;riph&eacute;riques qui sont tous deux DTE
- ou tous deux DCE doivent &ecirc;tre connect&eacute;s ensemble sans un
- modem ou un interm&eacute;diaire similaire entre eux, un NULL
- modem doit &ecirc;tre utilis&eacute;. Le NULL modem r&eacute;organize
- &eacute;lectriquement le c&acirc;blage de telle sorte que la sortie
- de l'&eacute;metteur soit reli&eacute;e au r&eacute;cepteur sur l'autre
- p&eacute;riph&eacute;rique et vice versa.
- Des traductions semblables sont ex&eacute;cut&eacute;es sur tous les
- signaux de contr&ocirc;le de sorte que chaque p&eacute;riph&eacute;rique
- voit ce qu'il pense &ecirc;tre du signal DCE (ou DTE) depuis
- l'autre p&eacute;riph&eacute;rique.</para>
-
- <para>Le nombre de signaux produits par les p&eacute;riph&eacute;riques
- DTE et DCE ne sont pas sym&eacute;triques.
- Le p&eacute;riph&eacute;rique DTE produit moins de signaux pour le
- p&eacute;riph&eacute;rique DCE que le p&eacute;riph&eacute;rique DTE re&ccedil;oit depuis le
- DCE.</para>
- </sect5>
-
- <sect5>
- <title>Assignation des broches RS232-C</title>
-
- <para>Les sp&eacute;cifications EIA RS232-C (et l'&eacute;quivalent ITU,
- V.24) d&eacute;signe un connecteur 25 broches (habituellement un
- DB25) et d&eacute;finit le but de la plupart des broches dans ce
- connecteur.</para>
-
- <para>Dans l'IBM PC et les syst&egrave;mes
- semblables, un sous-ensemble de signaux de
- RS232-C est fourni par l'interm&eacute;diaire de neuf
- connecteurs &agrave; broches (DB9). Les signaux qui ne
- sont pas inclus sur le connecteur PC, travaille
- principalement avec l'ex&eacute;cution synchrone, et ce
- mode de transmission n'est pas support&eacute;s par
- l'UART qu'IBM a choisi pour l'usage dans l'IBM
- PC.</para>
-
- <para>Selon le constructeur, un DB25, un
- DB9, ou les deux types de connecteur peuvent
- &ecirc;tre utilis&eacute;s pour des transmissions de RS232-C.
- (l'IBM PC utilise &eacute;galement un connecteur
- DB25 pour l'interface parall&egrave;le pour
- imprimante ce qui pr&ecirc;te &agrave; certaines
- confusions).</para>
-
- <para>Ci-dessous, une table des affectations de signaux
- des connecteurs DB25 et DB9 dans RS232-C</para>
-
- <informaltable frame="none">
- <tgroup cols="7">
- <thead>
- <row>
- <entry>Broche DB25 RS232-C</entry>
- <entry>Broche DB9 IBM PC</entry>
- <entry>EIA Circuit Symbol</entry>
- <entry>CCITT Circuit Symbol</entry>
- <entry>Common Name</entry>
- <entry>Signal Source</entry>
- <entry>Description</entry>
- </row>
- </thead>
-
- <tbody>
- <row>
- <entry>1</entry>
- <entry>-</entry>
- <entry>AA</entry>
- <entry>101</entry>
- <entry>PG/FG</entry>
- <entry>-</entry>
- <entry>Frame/Protective Ground</entry>
- </row>
-
- <row>
- <entry>2</entry>
- <entry>3</entry>
- <entry>BA</entry>
- <entry>103</entry>
- <entry>TD</entry>
- <entry>DTE</entry>
- <entry>Transmission donn&eacute;es</entry>
- </row>
-
- <row>
- <entry>3</entry>
- <entry>2</entry>
- <entry>BB</entry>
- <entry>104</entry>
- <entry>RD</entry>
- <entry>DCE</entry>
- <entry>Reception donn&eacute;es</entry>
- </row>
-
- <row>
- <entry>4</entry>
- <entry>7</entry>
- <entry>CA</entry>
- <entry>105</entry>
- <entry>RTS</entry>
- <entry>DTE</entry>
- <entry>Request to Send</entry>
- </row>
-
- <row>
- <entry>5</entry>
- <entry>8</entry>
- <entry>CB</entry>
- <entry>106</entry>
- <entry>CTS</entry>
- <entry>DCE</entry>
- <entry>Clear to Send</entry>
- </row>
-
- <row>
- <entry>6</entry>
- <entry>6</entry>
- <entry>CC</entry>
- <entry>107</entry>
- <entry>DSR</entry>
- <entry>DCE</entry>
- <entry>Data Set Ready</entry>
- </row>
-
- <row>
- <entry>7</entry>
- <entry>5</entry>
- <entry>AV</entry>
- <entry>102</entry>
- <entry>SG/GND</entry>
- <entry>-</entry>
- <entry>Signal Ground</entry>
- </row>
-
- <row>
- <entry>8</entry>
- <entry>1</entry>
- <entry>CF</entry>
- <entry>109</entry>
- <entry>DCD/CD</entry>
- <entry>DCE</entry>
- <entry>Data Carrier Detect</entry>
- </row>
-
- <row>
- <entry>9</entry>
- <entry>-</entry>
- <entry>-</entry>
- <entry>-</entry>
- <entry>-</entry>
- <entry>-</entry>
- <entry>Reserved for Test</entry>
- </row>
-
- <row>
- <entry>10</entry>
- <entry>-</entry>
- <entry>-</entry>
- <entry>-</entry>
- <entry>-</entry>
- <entry>-</entry>
- <entry>Reserved for Test</entry>
- </row>
-
- <row>
- <entry>11</entry>
- <entry>-</entry>
- <entry>-</entry>
- <entry>-</entry>
- <entry>-</entry>
- <entry>-</entry>
- <entry>Reserved for Test</entry>
- </row>
-
- <row>
- <entry>12</entry>
- <entry>-</entry>
- <entry>CI</entry>
- <entry>122</entry>
- <entry>SRLSD</entry>
- <entry>DCE</entry>
- <entry>Sec. Recv. Line Signal Detector</entry>
- </row>
-
- <row>
- <entry>13</entry>
- <entry>-</entry>
- <entry>SCB</entry>
- <entry>121</entry>
- <entry>SCTS</entry>
- <entry>DCE</entry>
- <entry>Secondary Clear to Send</entry>
- </row>
-
- <row>
- <entry>14</entry>
- <entry>-</entry>
- <entry>SBA</entry>
- <entry>118</entry>
- <entry>STD</entry>
- <entry>DTE</entry>
- <entry>Secondary Transmit Data</entry>
- </row>
-
- <row>
- <entry>15</entry>
- <entry>-</entry>
- <entry>DB</entry>
- <entry>114</entry>
- <entry>TSET</entry>
- <entry>DCE</entry>
- <entry>Trans. Sig. Element Timing</entry>
- </row>
-
- <row>
- <entry>16</entry>
- <entry>-</entry>
- <entry>SBB</entry>
- <entry>119</entry>
- <entry>SRD</entry>
- <entry>DCE</entry>
- <entry>Secondary Received Data</entry>
- </row>
-
- <row>
- <entry>17</entry>
- <entry>-</entry>
- <entry>DD</entry>
- <entry>115</entry>
- <entry>RSET</entry>
- <entry>DCE</entry>
- <entry>Receiver Signal Element Timing</entry>
- </row>
-
- <row>
- <entry>18</entry>
- <entry>-</entry>
- <entry>-</entry>
- <entry>141</entry>
- <entry>LOOP</entry>
- <entry>DTE</entry>
- <entry>Local Loopback</entry>
- </row>
-
- <row>
- <entry>19</entry>
- <entry>-</entry>
- <entry>SCA</entry>
- <entry>120</entry>
- <entry>SRS</entry>
- <entry>DTE</entry>
- <entry>Secondary Request to Send</entry>
- </row>
-
- <row>
- <entry>20</entry>
- <entry>4</entry>
- <entry>CD</entry>
- <entry>108.2</entry>
- <entry>DTR</entry>
- <entry>DTE</entry>
- <entry>Data Terminal Ready</entry>
- </row>
-
- <row>
- <entry>21</entry>
- <entry>-</entry>
- <entry>-</entry>
- <entry>-</entry>
- <entry>RDL</entry>
- <entry>DTE</entry>
- <entry>Remote Digital Loopback</entry>
- </row>
-
- <row>
- <entry>22</entry>
- <entry>9</entry>
- <entry>CE</entry>
- <entry>125</entry>
- <entry>RI</entry>
- <entry>DCE</entry>
- <entry>Ring Indicator</entry>
- </row>
-
- <row>
- <entry>23</entry>
- <entry>-</entry>
- <entry>CH</entry>
- <entry>111</entry>
- <entry>DSRS</entry>
- <entry>DTE</entry>
- <entry>Data Signal Rate Selector</entry>
- </row>
-
- <row>
- <entry>24</entry>
- <entry>-</entry>
- <entry>DA</entry>
- <entry>113</entry>
- <entry>TSET</entry>
- <entry>DTE</entry>
- <entry>Trans. Sig. Element Timing</entry>
- </row>
-
- <row>
- <entry>25</entry>
- <entry>-</entry>
- <entry>-</entry>
- <entry>142</entry>
- <entry>-</entry>
- <entry>DCE</entry>
- <entry>Test Mode</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </sect5>
- </sect4>
-
- <sect4>
- <title>Bits, Baud et symboles</title>
-
- <para>Le baud est une mesure de vitesse de transmission dans la
- liaison asynchrone. En raison de l'avance en technologie
- de transmission par modem, ce terme est fr&eacute;quemment
- employ&eacute; abusivement pour d&eacute;signer le d&eacute;bit dans les nouveaux
- p&eacute;riph&eacute;riques.</para>
-
- <para>Traditionnellement, un d&eacute;bit en baud repr&eacute;sente le
- nombre de bits qui sont envoy&eacute;s r&eacute;ellement
- par le m&eacute;dia, pas la quantit&eacute; des donn&eacute;es qui sont
- d&eacute;plac&eacute;es r&eacute;ellement d'un dispositif de
- DTE &agrave; l'autre. Le comptage en baud inclut les bits
- suppl&eacute;mentaires de d&eacute;part, d'arr&ecirc;t et de parit&eacute; qui sont
- produits par l'UART d' envoi et retir&eacute;s par l'UART de
- r&eacute;ception. Ceci signifie que les mots de sept bits
- de donn&eacute;es prennent r&eacute;ellement 10 bits &agrave; transmettre.
- Par cons&eacute;quent, un modem
- capable de d&eacute;placer 300 bits par seconde d'un endroit &agrave;
- l'autre peut normalement seulement
- d&eacute;placer 30 mots de 7 bit si la parit&eacute; est utilis&eacute;e et un bit
- d'arr&ecirc;t et de de d&eacute;but sont pr&eacute;sent.</para>
-
- <para>Si des mots contenant des donn&eacute;es de 8 bits sont
- utilis&eacute;s et si des bits de parit&eacute; sont &eacute;galement
- utilis&eacute;s, le d&eacute;bit tombe &agrave; 27.27 mots par seconde, parce que
- cela prend maintenant 11 bits pour envoyer les mots
- de 8 bits, et le modem envoie toujours seulement
- 300 bits par seconde.</para>
-
- <para>La formule pour convertir des octets par seconde
- en une vitesse baud et vice versa &eacute;tait
- simple jusqu'&agrave; ce que les modems correcteurs d'erreurs
- soient arriv&eacute;s. Ces modems re&ccedil;oivent
- une s&eacute;rie de bits de l'UART dans l'ordinateur
- h&ocirc;te (m&ecirc;me lorsque des modems internes
- sont utilis&eacute;s les donn&eacute;es sont encore
- fr&eacute;quemment arrang&eacute;s en s&eacute;rie) et convertissent les bits de
- nouveau en octets. Ces octets sont alors combin&eacute;s dans
- des paquets et envoy&eacute;s par
- de la ligne t&eacute;l&eacute;phonique en utilisant une m&eacute;thode de
- transmission synchrone. Ceci signifie que les
- bits de parit&eacute;, d'arr&ecirc;t, de d&eacute;but, ajout&eacute;s par l'UART dans
- le DTE (l'ordinateur) ont &eacute;t&eacute; retir&eacute;s par le
- modem avant transmission par le modem d' envoi. Quand ces
- octets sont re&ccedil;us par le modem distant, le modem
- distant ajoute des bits de parit&eacute;, de d&eacute;but, d'arr&ecirc;t
- aux mots, les convertit en format s&eacute;quentiel et puis
- les envoie &agrave; l'UART de r&eacute;ception
- dans l'ordinateur distant, qui &eacute;limine
- alors les bits de d&eacute;but, d'arr&ecirc;t et
- de parit&eacute;.</para>
-
- <para>La raison pour laquelle toutes ces conversions
- suppl&eacute;mentaires sont effectu&eacute;es est de faire de la sorte
- que les deux modems
- puissent ex&eacute;cuter les corrections d'erreurs, qui signifie que
- le modem de r&eacute;ception peut demander au
- modem d'envoi de renvoyer un bloc de donn&eacute;es qui n'aurait
- pas &eacute;t&eacute; re&ccedil;u avec un total de
- contr&ocirc;le correct. Ce contr&ocirc;le est manipul&eacute; par les
- modems, et les p&eacute;riph&eacute;riques DTE sont ignorant du processus
- qui s'est produit.</para>
-
- <para>En sautant les bits de parit&eacute;, de d&eacute;but et d'arr&ecirc;t,
- les bits suppl&eacute;mentaires des donn&eacute;es - que les deux
- modems doivent partager entre eux pour effectuer des
- corrections d'erreurs - sont le plus souvent cach&eacute;s lors du calcul
- du d&eacute;bit de transmission effectivement vu par le mat&eacute;riel
- DTE d'envoi et de r&eacute;ception.
- Par exemple, si un modem envoie dix mots de 7 bit &agrave; un
- autre modem sans compter les bits de
- parit&eacute;, de d&eacute;but et d'arr&ecirc;t, le modem d' envoi pourra
- ajouter 30 bits d'information que le
- modem de r&eacute;ception pourra employer pour faire de correction
- d'erreurs, ceci sans influencer la vitesse de
- transmission des vraies donn&eacute;es.</para>
-
- <para>L'utilisation du terme baud est rendu
- encore confus
- par les modems ex&eacute;cutant une compression.
- Un mot simple de 8 bits &agrave; travers une ligne
- t&eacute;l&eacute;phonique pourrait en r&eacute;alit&eacute; &ecirc;tre une douzaine de mots
- qui ont &eacute;t&eacute; transmis au modem d'envoi. Le modem de r&eacute;ception
- se chargera ensuite de le d&eacute;compresser et lui rendre son
- contenu inital qu'il passera au DTE de r&eacute;ception.</para>
-
- </para>
- Modern modems also include buffers that allow the rate that
- bits move across the phone line (DCE to DCE) to be a different
- speed than the speed that the bits move between the DTE and DCE on
- both ends of the conversation. Normally the speed between the DTE
- and DCE is higher than the DCE to DCE speed because of the use of
- compression by the modems.</para>
-
- <para>Because the number of bits needed to describe a byte varied
- during the trip between the two machines plus the differing
- bits-per-seconds speeds that are used present on the DTE-DCE and
- DCE-DCE links, the usage of the term Baud to describe the overall
- communication speed causes problems and can misrepresent the true
- transmission speed. So Bits Per Second (bps) is the correct term
- to use to describe the transmission rate seen at the DCE to DCE
- interface and Baud or Bits Per Second are acceptable terms to use
- when a connection is made between two systems with a wired
- connection, or if a modem is in use that is not performing
- error-correction or compression.</para>
-
- <para>Modern high speed modems (2400, 9600, 14,400, and 19,200bps)
- in reality still operate at or below 2400 baud, or more
- accurately, 2400 Symbols per second. High speed modem are able to
- encode more bits of data into each Symbol using a technique called
- Constellation Stuffing, which is why the effective bits per second
- rate of the modem is higher, but the modem continues to operate
- within the limited audio bandwidth that the telephone system
- provides. Modems operating at 28,800 and higher speeds have
- variable Symbol rates, but the technique is the same.</para>
- </sect4>
-
-
- <sect4>
- <title>The IBM Personal Computer UART</title>
-
- <para>Starting with the original IBM Personal Computer, IBM selected
- the National Semiconductor INS8250 UART for use in the IBM PC
- Parallel/Serial Adapter. Subsequent generations of compatible
- computers from IBM and other vendors continued to use the INS8250
- or improved versions of the National Semiconductor UART
- family.</para>
-
- <sect5>
- <title>National Semiconductor UART Family Tree</title>
-
- <para>There have been several versions and subsequent generations
- of the INS8250 UART. Each major version is described
- below.</para>
-
- <programlisting>
-INS8250 -&gt; INS8250B
- \
- \
- \-&gt; INS8250A -&gt; INS82C50A
- \
- \
- \-&gt; NS16450 -&gt; NS16C450
- \
- \
- \-&gt; NS16550 -&gt; NS16550A -&gt; PC16550D</programlisting>
-
- <variablelist>
- <varlistentry>
- <term>INS8250</term>
-
- <listitem>
- <para>This part was used in the original IBM PC and IBM
- PC/XT. The original name for this part was the INS8250
- ACE (Asynchronous Communications Element) and it is made
- from NMOS technology.</para>
-
- <para>The 8250 uses eight I/O ports and has a one-byte send
- and a one-byte receive buffer. This original UART has
- several race conditions and other flaws. The original IBM
- BIOS includes code to work around these flaws, but this
- made the BIOS dependent on the flaws being present, so
- subsequent parts like the 8250A, 16450 or 16550 could not
- be used in the original IBM PC or IBM PC/XT.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>INS8250-B</term>
-
- <listitem>
- <para>This is the slower speed of the INS8250 made from NMOS
- technology. It contains the same problems as the original
- INS8250.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>INS8250A</term>
-
- <listitem>
- <para>An improved version of the INS8250 using XMOS
- technology with various functional flaws corrected. The
- INS8250A was used initially in PC clone computers by
- vendors who used &ldquo;clean&rdquo; BIOS designs. Because
- of the corrections in the chip, this part could not be
- used with a BIOS compatible with the INS8250 or
- INS8250B.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>INS82C50A</term>
-
- <listitem>
- <para>This is a CMOS version (low power consumption) of the
- INS8250A and has similar functional
- characteristics.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>NS16450</term>
-
- <listitem>
- <para>Same as NS8250A with improvements so it can be used
- with faster CPU bus designs. IBM used this part in the
- IBM AT and updated the IBM BIOS to no longer rely on the
- bugs in the INS8250.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>NS16C450</term>
-
- <listitem>
- <para>This is a CMOS version (low power consumption) of the
- NS16450.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>NS16550</term>
-
- <listitem>
- <para>Same as NS16450 with a 16-byte send and receive buffer
- but the buffer design was flawed and could not be reliably
- be used.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>NS16550A</term>
-
- <listitem>
- <para>Same as NS16550 with the buffer flaws corrected. The
- 16550A and its successors have become the most popular
- UART design in the PC industry, mainly due it its ability
- to reliably handle higher data rates on operating systems
- with sluggish interrupt response times.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>NS16C552</term>
-
- <listitem>
- <para>This component consists of two NS16C550A CMOS UARTs in
- a single package.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>PC16550D</term>
-
- <listitem>
- <para>Same as NS16550A with subtle flaws corrected. This is
- revision D of the 16550 family and is the latest design
- available from National Semiconductor.</para>
- </listitem>
- </varlistentry>
- </variablelist>
- </sect5>
-
- <sect5>
- <title>The NS16550AF and the PC16550D are the same thing</title>
-
- <para>National reorganized their part numbering system a few years
- ago, and the NS16550AFN no longer exists by that name. (If you
- have a NS16550AFN, look at the date code on the part, which is a
- four digit number that usually starts with a nine. The first
- two digits of the number are the year, and the last two digits
- are the week in that year when the part was packaged. If you
- have a NS16550AFN, it is probably a few years old.)</para>
-
- <para>The new numbers are like PC16550DV, with minor differences
- in the suffix letters depending on the package material and its
- shape. (A description of the numbering system can be found
- below.)</para>
-
- <para>It is important to understand that in some stores, you may
- pay &#36;15(US) for a NS16550AFN made in 1990 and in the next
- bin are the new PC16550DN parts with minor fixes that National
- has made since the AFN part was in production, the PC16550DN was
- probably made in the past six months and it costs half (as low
- as &#36;5(US) in volume) as much as the NS16550AFN because they
- are readily available.</para>
-
- <para>As the supply of NS16550AFN chips continues to shrink, the
- price will probably continue to increase until more people
- discover and accept that the PC16550DN really has the same
- function as the old part number.</para>
- </sect5>
-
- <sect5>
- <title>National Semiconductor Part Numbering System</title>
-
- <para>The older NS<replaceable>nnnnnrqp</replaceable> part
- numbers are now of the format
- PC<replaceable>nnnnnrgp</replaceable>.</para>
-
- <para>The <replaceable>r</replaceable> is the revision field. The
- current revision of the 16550 from National Semiconductor is
- <literal>D</literal>.</para>
-
- <para>The <replaceable>p</replaceable> is the package-type field.
- The types are:</para>
-
- <informaltable frame="none">
- <tgroup cols="3">
- <tbody>
- <row>
- <entry>"F"</entry>
- <entry>QFP</entry>
- <entry>(quad flat pack) L lead type</entry>
- </row>
-
- <row>
- <entry>"N"</entry>
- <entry>DIP</entry>
- <entry>(dual inline package) through hole straight lead
- type</entry>
- </row>
-
- <row>
- <entry>"V"</entry>
- <entry>LPCC</entry>
- <entry>(lead plastic chip carrier) J lead type</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
-
- <para>The <replaceable>g</replaceable> is the product grade field.
- If an <literal>I</literal> precedes the package-type letter, it
- indicates an &ldquo;industrial&rdquo; grade part, which has
- higher specs than a standard part but not as high as Military
- Specification (Milspec) component. This is an optional
- field.</para>
-
- <para>So what we used to call a NS16550AFN (DIP Package) is now
- called a PC16550DN or PC16550DIN.</para>
- </sect5>
- </sect4>
-
- <sect4>
- <title>Other Vendors and Similar UARTs</title>
-
- <para>Over the years, the 8250, 8250A, 16450 and 16550 have been
- licensed or copied by other chip vendors. In the case of the
- 8250, 8250A and 16450, the exact circuit (the
- &ldquo;megacell&rdquo;) was licensed to many vendors, including
- Western Digital and Intel. Other vendors reverse-engineered the
- part or produced emulations that had similar behavior.</para>
-
- <para>In internal modems, the modem designer will frequently emulate
- the 8250A/16450 with the modem microprocessor, and the emulated
- UART will frequently have a hidden buffer consisting of several
- hundred bytes. Because of the size of the buffer, these
- emulations can be as reliable as a 16550A in their ability to
- handle high speed data. However, most operating systems will
- still report that the UART is only a 8250A or 16450, and may not
- make effective use of the extra buffering present in the emulated
- UART unless special drivers are used.</para>
-
- <para>Some modem makers are driven by market forces to abandon a
- design that has hundreds of bytes of buffer and instead use a
- 16550A UART so that the product will compare favorably in market
- comparisons even though the effective performance may be lowered
- by this action.</para>
-
- <para>A common misconception is that all parts with
- &ldquo;16550A&rdquo; written on them are identical in performance.
- There are differences, and in some cases, outright flaws in most
- of these 16550A clones.</para>
-
- <para>When the NS16550 was developed, the National Semiconductor
- obtained several patents on the design and they also limited
- licensing, making it harder for other vendors to provide a chip
- with similar features. Because of the patents, reverse-engineered
- designs and emulations had to avoid infringing the claims covered
- by the patents. Subsequently, these copies almost never perform
- exactly the same as the NS16550A or PC16550D, which are the parts
- most computer and modem makers want to buy but are sometimes
- unwilling to pay the price required to get the genuine
- part.</para>
-
- <para>Some of the differences in the clone 16550A parts are
- unimportant, while others can prevent the device from being used
- at all with a given operating system or driver. These differences
- may show up when using other drivers, or when particular
- combinations of events occur that were not well tested or
- considered in the Windows driver. This is because most modem
- vendors and 16550-clone makers use the Microsoft drivers from
- Windows for Workgroups 3.11 and the Microsoft MSD utility as the
- primary tests for compatibility with the NS16550A. This
- over-simplistic criteria means that if a different operating
- system is used, problems could appear due to subtle differences
- between the clones and genuine components.</para>
-
- <para>National Semiconductor has made available a program named
- <application>COMTEST</application> that performs compatibility
- tests independent of any OS drivers. It should be remembered that
- the purpose of this type of program is to demonstrate the flaws in
- the products of the competition, so the program will report major
- as well as extremely subtle differences in behavior in the part
- being tested.</para>
-
- <para>In a series of tests performed by the author of this document
- in 1994, components made by National Semiconductor, TI, StarTech,
- and CMD as well as megacells and emulations embedded in internal
- modems were tested with COMTEST. A difference count for some of
- these components is listed below. Because these tests were
- performed in 1994, they may not reflect the current performance of
- the given product from a vendor.</para>
-
- <para>It should be noted that COMTEST normally aborts when an
- excessive number or certain types of problems have been detected.
- As part of this testing, COMTEST was modified so that it would not
- abort no matter how many differences were encountered.</para>
-
- <informaltable frame="none">
- <tgroup cols="3">
- <thead>
- <row>
- <entry>Vendor</entry>
- <entry>Part Number</entry>
- <entry>Errors (aka "differences" reported)</entry>
- </row>
- </thead>
-
- <tbody>
- <row>
- <entry>National</entry>
- <entry>(PC16550DV)</entry>
- <entry>0</entry>
- </row>
-
- <row>
- <entry>National</entry>
- <entry>(NS16550AFN)</entry>
- <entry>0</entry>
- </row>
-
- <row>
- <entry>National</entry>
- <entry>(NS16C552V)</entry>
- <entry>0</entry>
- </row>
-
- <row>
- <entry>TI</entry>
- <entry>(TL16550AFN)</entry>
- <entry>3</entry>
- </row>
-
- <row>
- <entry>CMD</entry>
- <entry>(16C550PE)</entry>
- <entry>19</entry>
- </row>
-
- <row>
- <entry>StarTech</entry>
- <entry>(ST16C550J)</entry>
- <entry>23</entry>
- </row>
-
- <row>
- <entry>Rockwell</entry>
- <entry>Reference modem with internal 16550 or an
- emulation (RC144DPi/C3000-25)</entry>
- <entry>117</entry>
- </row>
-
- <row>
- <entry>Sierra</entry>
- <entry>Modem with an internal 16550
- (SC11951/SC11351)</entry>
- <entry>91</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
-
- <note>
- <para>To date, the author of this document has not found any
- non-National parts that report zero differences using the
- COMTEST program. It should also be noted that National has had
- five versions of the 16550 over the years and the newest parts
- behave a bit differently than the classic NS16550AFN that is
- considered the benchmark for functionality. COMTEST appears to
- turn a blind eye to the differences within the National product
- line and reports no errors on the National parts (except for the
- original 16550) even when there are official erratas that
- describe bugs in the A, B and C revisions of the parts, so this
- bias in COMTEST must be taken into account.</para>
- </note>
-
- <para>It is important to understand that a simple count of
- differences from COMTEST does not reveal a lot about what
- differences are important and which are not. For example, about
- half of the differences reported in the two modems listed above
- that have internal UARTs were caused by the clone UARTs not
- supporting five- and six-bit character modes. The real 16550,
- 16450, and 8250 UARTs all support these modes and COMTEST checks
- the functionality of these modes so over fifty differences are
- reported. However, almost no modern modem supports five- or
- six-bit characters, particularly those with error-correction and
- compression capabilities. This means that the differences related
- to five- and six-bit character modes can be discounted.</para>
-
- <para>Many of the differences COMTEST reports have to do with
- timing. In many of the clone designs, when the host reads from
- one port, the status bits in some other port may not update in the
- same amount of time (some faster, some slower) as a
- <emphasis>real</emphasis> NS16550AFN and COMTEST looks for these
- differences. This means that the number of differences can be
- misleading in that one device may only have one or two differences
- but they are extremely serious, and some other device that updates
- the status registers faster or slower than the reference part
- (that would probably never affect the operation of a properly
- written driver) could have dozens of differences reported.</para>
-
- <para>COMTEST can be used as a screening tool to alert the
- administrator to the presence of potentially incompatible
- components that might cause problems or have to be handled as a
- special case.</para>
-
- <para>If you run COMTEST on a 16550 that is in a modem or a modem is
- attached to the serial port, you need to first issue a ATE0&amp;W
- command to the modem so that the modem will not echo any of the
- test characters. If you forget to do this, COMTEST will report at
- least this one difference:</para>
-
- <screen>Error (6)...Timeout interrupt failed: IIR = c1 LSR = 61</screen>
- </sect4>
-
- <sect4>
- <title>8250/16450/16550 Registers</title>
-
- <para>The 8250/16450/16550 UART occupies eight contiguous I/O port
- addresses. In the IBM PC, there are two defined locations for
- these eight ports and they are known collectively as COM1 and
- COM2. The makers of PC-clones and add-on cards have created two
- additional areas known as COM3 and COM4, but these extra COM ports
- conflict with other hardware on some systems. The most common
- conflict is with video adapters that provide IBM 8514
- emulation.</para>
-
- <para>COM1 is located from 0x3f8 to 0x3ff and normally uses IRQ 4
- COM2 is located from 0x2f8 to 0x2ff and normally uses IRQ 3 COM3
- is located from 0x3e8 to 0x3ef and has no standardized IRQ COM4 is
- located from 0x2e8 to 0x2ef and has no standardized IRQ.</para>
-
- <para>A description of the I/O ports of the 8250/16450/16550 UART is
- provided below.</para>
-
- <informaltable frame="none">
- <tgroup cols="3">
- <thead>
- <row>
- <entry>I/O Port</entry>
- <entry>Access Allowed</entry>
- <entry>Description</entry>
- </row>
- </thead>
-
- <tbody>
- <row>
- <entry>+0x00</entry>
- <entry>write (DLAB==0)</entry>
- <entry><para>Transmit Holding Register
- (THR).</para><para>Information written to this port are
- treated as data words and will be transmitted by the
- UART.</para></entry>
- </row>
-
- <row>
- <entry>+0x00</entry>
- <entry>read (DLAB==0)</entry>
- <entry><para>Receive Buffer Register (RBR).</para><para>Any
- data words received by the UART form the serial link are
- accessed by the host by reading this
- port.</para></entry>
- </row>
-
- <row>
- <entry>+0x00</entry>
- <entry>write/read (DLAB==1)</entry>
- <entry><para>Divisor Latch LSB (DLL)</para><para>This value
- will be divided from the master input clock (in the IBM
- PC, the master clock is 1.8432MHz) and the resulting
- clock will determine the baud rate of the UART. This
- register holds bits 0 thru 7 of the
- divisor.</para></entry>
- </row>
-
- <row>
- <entry>+0x01</entry>
- <entry>write/read (DLAB==1)</entry>
- <entry><para>Divisor Latch MSB (DLH)</para><para>This value
- will be divided from the master input clock (in the IBM
- PC, the master clock is 1.8432MHz) and the resulting
- clock will determine the baud rate of the UART. This
- register holds bits 8 thru 15 of the
- divisor.</para></entry>
- </row>
-
- <row>
- <entry>+0x01</entry>
- <entry>write/read (DLAB==0)</entry>
- <entrytbl cols="2">
- <colspec colnum="1" colname="col1">
- <colspec colnum="2" colname="col2">
- <spanspec namest="col1" nameend="col2" spanname="1to2">
-
- <tbody>
- <row>
- <entry spanname="1to2"><para>Interrupt Enable Register
- (IER)</para><para>The 8250/16450/16550 UART
- classifies events into one of four categories.
- Each category can be configured to generate an
- interrupt when any of the events occurs. The
- 8250/16450/16550 UART generates a single external
- interrupt signal regardless of how many events in
- the enabled categories have occurred. It is up to
- the host processor to respond to the interrupt and
- then poll the enabled interrupt categories
- (usually all categories have interrupts enabled)
- to determine the true cause(s) of the
- interrupt.</para></entry>
- </row>
-
- <row>
- <entry>Bit 7</entry>
- <entry>Reserved, always 0.</entry>
- </row>
-
- <row>
- <entry>Bit 6</entry>
- <entry>Reserved, always 0.</entry>
- </row>
-
- <row>
- <entry>Bit 5</entry>
- <entry>Reserved, always 0.</entry>
- </row>
-
- <row>
- <entry>Bit 4</entry>
- <entry>Reserved, always 0.</entry>
- </row>
-
- <row>
- <entry>Bit 3</entry>
- <entry>Enable Modem Status Interrupt (EDSSI). Setting
- this bit to "1" allows the UART to generate an
- interrupt when a change occurs on one or more of the
- status lines.</entry>
- </row>
-
- <row>
- <entry>Bit 2</entry>
- <entry>Enable Receiver Line Status Interrupt (ELSI)
- Setting this bit to "1" causes the UART to generate
- an interrupt when the an error (or a BREAK signal)
- has been detected in the incoming data.</entry>
- </row>
-
- <row>
- <entry>Bit 1</entry>
- <entry>Enable Transmitter Holding Register Empty
- Interrupt (ETBEI) Setting this bit to "1" causes the
- UART to generate an interrupt when the UART has room
- for one or more additional characters that are to be
- transmitted.</entry>
- </row>
-
- <row>
- <entry>Bit 0</entry>
- <entry>Enable Received Data Available Interrupt
- (ERBFI) Setting this bit to "1" causes the UART to
- generate an interrupt when the UART has received
- enough characters to exceed the trigger level of the
- FIFO, or the FIFO timer has expired (stale data), or
- a single character has been received when the FIFO
- is disabled.</entry>
- </row>
- </tbody>
- </entrytbl>
- </row>
-
- <row>
- <entry>+0x02</entry>
- <entry>write</entry>
- <entrytbl cols="4">
- <colspec colnum="1" colname="col1">
- <colspec colnum="2" colname="col2">
- <colspec colnum="3" colname="col3">
- <colspec colnum="4" colname="col4">
- <spanspec namest="col1" nameend="col4" spanname="1to4">
- <spanspec namest="col2" nameend="col4" spanname="2to4">
-
- <tbody>
- <row>
- <entry spanname="1to4">FIFO Control Register (FCR)
- (This port does not exist on the 8250 and 16450
- UART.)</entry>
- </row>
-
- <row>
- <entry>Bit 7</entry>
- <entry spanname="2to4">Receiver Trigger Bit #1</entry>
- </row>
-
- <row>
- <entry>Bit 6</entry>
- <entry spanname="2to4"><para>Receiver Trigger Bit
- #0</para><para>These two bits control at what
- point the receiver is to generate an interrupt
- when the FIFO is active.</para></entry>
- </row>
-
- <row>
- <entry colname="col2">7</entry>
- <entry colname="col3">6</entry>
- <entry colname="col4">How many words are received
- before an interrupt is generated</entry>
- </row>
-
- <row>
- <entry colname="col2">0</entry>
- <entry colname="col3">0</entry>
- <entry colname="col4">1</entry>
- </row>
-
- <row>
- <entry colname="col2">0</entry>
- <entry colname="col3">1</entry>
- <entry colname="col4">4</entry>
- </row>
-
- <row>
- <entry colname="col2">1</entry>
- <entry colname="col3">0</entry>
- <entry colname="col4">8</entry>
- </row>
-
- <row>
- <entry colname="col2">1</entry>
- <entry colname="col3">1</entry>
- <entry colname="col4">14</entry>
- </row>
-
- <row>
- <entry>Bit 5</entry>
- <entry spanname="2to4">Reserved, always 0.</entry>
- </row>
-
- <row>
- <entry>Bit 4</entry>
- <entry spanname="2to4">Reserved, always 0.</entry>
- </row>
-
- <row>
- <entry>Bit 3</entry>
- <entry spanname="2to4">DMA Mode Select. If Bit 0 is
- set to "1" (FIFOs enabled), setting this bit changes
- the operation of the -RXRDY and -TXRDY signals from
- Mode 0 to Mode 1.</entry>
- </row>
-
- <row>
- <entry>Bit 2</entry>
- <entry spanname="2to4">Transmit FIFO Reset. When a
- "1" is written to this bit, the contents of the FIFO
- are discarded. Any word currently being transmitted
- will be sent intact. This function is useful in
- aborting transfers.</entry>
- </row>
-
- <row>
- <entry>Bit 1</entry>
- <entry spanname="2to4">Receiver FIFO Reset. When a
- "1" is written to this bit, the contents of the FIFO
- are discarded. Any word currently being assembled
- in the shift register will be received
- intact.</entry>
- </row>
-
- <row>
- <entry>Bit 0</entry>
- <entry spanname="2to4">16550 FIFO Enable. When set,
- both the transmit and receive FIFOs are enabled.
- Any contents in the holding register, shift
- registers or FIFOs are lost when FIFOs are enabled
- or disabled.</entry>
- </row>
- </tbody>
- </entrytbl>
- </row>
-
- <row>
- <entry>+0x02</entry>
- <entry>read</entry>
- <entrytbl cols="6">
- <colspec colnum="1" colname="col1">
- <colspec colnum="2" colname="col2">
- <colspec colnum="3" colname="col3">
- <colspec colnum="4" colname="col4">
- <colspec colnum="5" colname="col5">
- <colspec colnum="6" colname="col6">
- <spanspec namest="col1" nameend="col6" spanname="1to6">
- <spanspec namest="col2" nameend="col6" spanname="2to6">
-
- <tbody>
- <row>
- <entry spanname="1to6">Interrupt Identification
- Register</entry>
- </row>
-
- <row>
- <entry>Bit 7</entry>
- <entry spanname="2to6">FIFOs enabled. On the
- 8250/16450 UART, this bit is zero.</entry>
- </row>
-
- <row>
- <entry>Bit 6</entry>
- <entry spanname="2to6">FIFOs enabled. On the
- 8250/16450 UART, this bit is zero.</entry>
- </row>
-
- <row>
- <entry>Bit 5</entry>
- <entry spanname="2to6">Reserved, always 0.</entry>
- </row>
-
- <row>
- <entry>Bit 4</entry>
- <entry spanname="2to6">Reserved, always 0.</entry>
- </row>
-
- <row>
- <entry>Bit 3</entry>
- <entry spanname="2to6">Interrupt ID Bit #2. On the
- 8250/16450 UART, this bit is zero.</entry>
- </row>
-
- <row>
- <entry>Bit 2</entry>
- <entry spanname="2to6">Interrupt ID Bit #1</entry>
- </row>
-
- <row>
- <entry>Bit 1</entry>
- <entry spanname="2to6">Interrupt ID Bit #0.These three
- bits combine to report the category of event that
- caused the interrupt that is in progress. These
- categories have priorities, so if multiple
- categories of events occur at the same time, the
- UART will report the more important events first and
- the host must resolve the events in the order they
- are reported. All events that caused the current
- interrupt must be resolved before any new interrupts
- will be generated. (This is a limitation of the PC
- architecture.)</entry>
- </row>
-
- <row>
- <entry colname="col2">2</entry>
- <entry colname="col3">1</entry>
- <entry colname="col4">0</entry>
- <entry colname="col5">Priority</entry>
- <entry colname="col6">Description</entry>
- </row>
-
- <row>
- <entry colname="col2">0</entry>
- <entry colname="col3">1</entry>
- <entry colname="col4">1</entry>
- <entry colname="col5">First</entry>
- <entry colname="col6">Received Error (OE, PE, BI, or
- FE)</entry>
- </row>
-
- <row>
- <entry colname="col2">0</entry>
- <entry colname="col3">1</entry>
- <entry colname="col4">0</entry>
- <entry colname="col5">Second</entry>
- <entry colname="col6">Received Data Available</entry>
- </row>
-
- <row>
- <entry colname="col2">1</entry>
- <entry colname="col3">1</entry>
- <entry colname="col4">0</entry>
- <entry colname="col5">Second</entry>
- <entry colname="col6">Trigger level identification
- (Stale data in receive buffer)</entry>
- </row>
-
- <row>
- <entry colname="col2">0</entry>
- <entry colname="col3">0</entry>
- <entry colname="col4">1</entry>
- <entry colname="col5">Third</entry>
- <entry colname="col6">Transmitter has room for more
- words (THRE)</entry>
- </row>
-
- <row>
- <entry colname="col2">0</entry>
- <entry colname="col3">0</entry>
- <entry colname="col4">0</entry>
- <entry colname="col5">Fourth</entry>
- <entry colname="col6">Modem Status Change (-CTS, -DSR,
- -RI, or -DCD)</entry>
- </row>
-
- <row>
- <entry>Bit 0</entry>
- <entry spanname="2to6">Interrupt Pending Bit. If this
- bit is set to "0", then at least one interrupt is
- pending.</entry>
- </row>
- </tbody>
- </entrytbl>
- </row>
-
- <row>
- <entry>+0x03</entry>
- <entry>write/read</entry>
- <entrytbl cols="5">
- <colspec colnum="1" colname="col1">
- <colspec colnum="2" colname="col2">
- <colspec colnum="3" colname="col3">
- <colspec colnum="4" colname="col4">
- <colspec colnum="5" colname="col5">
- <spanspec namest="col1" nameend="col5" spanname="1to5">
- <spanspec namest="col2" nameend="col5" spanname="2to5">
- <spanspec namest="col4" nameend="col5" spanname="4to5">
-
- <tbody>
- <row>
- <entry spanname="1to5">Line Control Register
- (LCR)</entry>
- </row>
-
- <row>
- <entry>Bit 7</entry>
- <entry spanname="2to5">Divisor Latch Access Bit
- (DLAB). When set, access to the data
- transmit/receive register (THR/RBR) and the
- Interrupt Enable Register (IER) is disabled. Any
- access to these ports is now redirected to the
- Divisor Latch Registers. Setting this bit, loading
- the Divisor Registers, and clearing DLAB should be
- done with interrupts disabled.</entry>
- </row>
-
- <row>
- <entry>Bit 6</entry>
- <entry spanname="2to5">Set Break. When set to "1",
- the transmitter begins to transmit continuous
- Spacing until this bit is set to "0". This
- overrides any bits of characters that are being
- transmitted.</entry>
- </row>
-
- <row>
- <entry>Bit 5</entry>
- <entry spanname="2to5">Stick Parity. When parity is
- enabled, setting this bit causes parity to always be
- "1" or "0", based on the value of Bit 4.</entry>
- </row>
-
- <row>
- <entry>Bit 4</entry>
- <entry spanname="2to5">Even Parity Select (EPS). When
- parity is enabled and Bit 5 is "0", setting this bit
- causes even parity to be transmitted and expected.
- Otherwise, odd parity is used.</entry>
- </row>
-
- <row>
- <entry>Bit 3</entry>
- <entry spanname="2to5">Parity Enable (PEN). When set
- to "1", a parity bit is inserted between the last
- bit of the data and the Stop Bit. The UART will
- also expect parity to be present in the received
- data.</entry>
- </row>
-
- <row>
- <entry>Bit 2</entry>
- <entry spanname="2to5">Number of Stop Bits (STB). If
- set to "1" and using 5-bit data words, 1.5 Stop Bits
- are transmitted and expected in each data word. For
- 6, 7 and 8-bit data words, 2 Stop Bits are
- transmitted and expected. When this bit is set to
- "0", one Stop Bit is used on each data word.</entry>
- </row>
-
- <row>
- <entry>Bit 1</entry>
- <entry spanname="2to5">Word Length Select Bit #1
- (WLSB1)</entry>
- </row>
-
- <row>
- <entry>Bit 0</entry>
- <entry spanname="2to5">Word Length Select Bit #0
- (WLSB0)</entry>
- </row>
-
- <row>
- <entry colname="col2" spanname="2to5">Together these
- bits specify the number of bits in each data
- word.</entry>
- </row>
-
- <row>
- <entry colname="col2">1</entry>
- <entry colname="col3">0</entry>
- <entry colname="col4" spanname="4to5">Word
- Length</entry>
- </row>
-
- <row>
- <entry colname="col2">0</entry>
- <entry colname="col3">0</entry>
- <entry colname="col4" spanname="4to5">5 Data
- Bits</entry>
- </row>
-
- <row>
- <entry colname="col2">0</entry>
- <entry colname="col3">1</entry>
- <entry colname="col4" spanname="4to5">6 Data
- Bits</entry>
- </row>
-
- <row>
- <entry colname="col2">1</entry>
- <entry colname="col3">0</entry>
- <entry colname="col4" spanname="4to5">7 Data
- Bits</entry>
- </row>
-
- <row>
- <entry colname="col2">1</entry>
- <entry colname="col3">1</entry>
- <entry colname="col4" spanname="4to5">8 Data
- Bits</entry>
- </row>
- </tbody>
- </entrytbl>
- </row>
-
- <row>
- <entry>+0x04</entry>
- <entry>write/read</entry>
- <entrytbl cols="2">
- <colspec colnum="1" colname="col1">
- <colspec colnum="2" colname="col2">
- <spanspec namest="col1" nameend="col2" spanname="1to2">
-
- <tbody>
- <row>
- <entry spanname="1to2">Modem Control Register
- (MCR)</entry>
- </row>
-
- <row>
- <entry>Bit 7</entry>
- <entry>Reserved, always 0.</entry>
- </row>
-
- <row>
- <entry>Bit 6</entry>
- <entry>Reserved, always 0.</entry>
- </row>
-
- <row>
- <entry>Bit 5</entry>
- <entry>Reserved, always 0.</entry>
- </row>
-
- <row>
- <entry>Bit 4</entry>
- <entry>Loop-Back Enable. When set to "1", the UART
- transmitter and receiver are internally connected
- together to allow diagnostic operations. In
- addition, the UART modem control outputs are
- connected to the UART modem control inputs. CTS is
- connected to RTS, DTR is connected to DSR, OUT1 is
- connected to RI, and OUT 2 is connected to
- DCD.</entry>
- </row>
-
- <row>
- <entry>Bit 3</entry>
- <entry>OUT 2. An auxiliary output that the host
- processor may set high or low. In the IBM PC serial
- adapter (and most clones), OUT 2 is used to
- tri-state (disable) the interrupt signal from the
- 8250/16450/16550 UART.</entry>
- </row>
-
- <row>
- <entry>Bit 2</entry>
- <entry>OUT 1. An auxiliary output that the host
- processor may set high or low. This output is not
- used on the IBM PC serial adapter.</entry>
- </row>
-
- <row>
- <entry>Bit 1</entry>
- <entry>Request to Send (RTS). When set to "1", the
- output of the UART -RTS line is Low
- (Active).</entry>
- </row>
-
- <row>
- <entry>Bit 0</entry>
- <entry>Data Terminal Ready (DTR). When set to "1",
- the output of the UART -DTR line is Low
- (Active).</entry>
- </row>
- </tbody>
- </entrytbl>
- </row>
-
- <row>
- <entry>+0x05</entry>
- <entry>write/read</entry>
- <entrytbl cols="2">
- <colspec colnum="1" colname="col1">
- <colspec colnum="2" colname="col2">
- <spanspec namest="col1" nameend="col2" spanname="1to2">
-
- <tbody>
- <row>
- <entry spanname="1to2">Line Status Register
- (LSR)</entry>
- </row>
-
- <row>
- <entry>Bit 7</entry>
- <entry>Error in Receiver FIFO. On the 8250/16450
- UART, this bit is zero. This bit is set to "1" when
- any of the bytes in the FIFO have one or more of the
- following error conditions: PE, FE, or BI.</entry>
- </row>
-
- <row>
- <entry>Bit 6</entry>
- <entry>Transmitter Empty (TEMT). When set to "1",
- there are no words remaining in the transmit FIFO
- or the transmit shift register. The transmitter is
- completely idle.</entry>
- </row>
-
- <row>
- <entry>Bit 5</entry>
- <entry>Transmitter Holding Register Empty (THRE).
- When set to "1", the FIFO (or holding register) now
- has room for at least one additional word to
- transmit. The transmitter may still be transmitting
- when this bit is set to "1".</entry>
- </row>
-
- <row>
- <entry>Bit 4</entry>
- <entry>Break Interrupt (BI). The receiver has
- detected a Break signal.</entry>
- </row>
-
- <row>
- <entry>Bit 3</entry>
- <entry>Framing Error (FE). A Start Bit was detected
- but the Stop Bit did not appear at the expected
- time. The received word is probably
- garbled.</entry>
- </row>
-
- <row>
- <entry>Bit 2</entry>
- <entry>Parity Error (PE). The parity bit was
- incorrect for the word received.</entry>
- </row>
-
- <row>
- <entry>Bit 1</entry>
- <entry>Overrun Error (OE). A new word was received
- and there was no room in the receive buffer. The
- newly-arrived word in the shift register is
- discarded. On 8250/16450 UARTs, the word in the
- holding register is discarded and the newly- arrived
- word is put in the holding register.</entry>
- </row>
-
- <row>
- <entry>Bit 0</entry>
- <entry>Data Ready (DR) One or more words are in the
- receive FIFO that the host may read. A word must be
- completely received and moved from the shift
- register into the FIFO (or holding register for
- 8250/16450 designs) before this bit is set.</entry>
- </row>
- </tbody>
- </entrytbl>
- </row>
-
- <row>
- <entry>+0x06</entry>
- <entry>write/read</entry>
- <entrytbl cols="2">
- <colspec colnum="1" colname="col1">
- <colspec colnum="2" colname="col2">
- <spanspec namest="col1" nameend="col2" spanname="1to2">
-
- <tbody>
- <row>
- <entry spanname="1to2">Modem Status Register
- (MSR)</entry>
- </row>
-
- <row>
- <entry>Bit 7</entry>
- <entry>Data Carrier Detect (DCD). Reflects the state
- of the DCD line on the UART.</entry>
- </row>
-
- <row>
- <entry>Bit 6</entry>
- <entry>Ring Indicator (RI). Reflects the state of the
- RI line on the UART.</entry>
- </row>
-
- <row>
- <entry>Bit 5</entry>
- <entry>Data Set Ready (DSR). Reflects the state of
- the DSR line on the UART.</entry>
- </row>
-
- <row>
- <entry>Bit 4</entry>
- <entry>Clear To Send (CTS). Reflects the state of the
- CTS line on the UART.</entry>
- </row>
-
- <row>
- <entry>Bit 3</entry>
- <entry>Delta Data Carrier Detect (DDCD). Set to "1"
- if the -DCD line has changed state one more more
- times since the last time the MSR was read by the
- host.</entry>
- </row>
-
- <row>
- <entry>Bit 2</entry>
- <entry>Trailing Edge Ring Indicator (TERI). Set to
- "1" if the -RI line has had a low to high transition
- since the last time the MSR was read by the
- host.</entry>
- </row>
-
- <row>
- <entry>Bit 1</entry>
- <entry>Delta Data Set Ready (DDSR). Set to "1" if the
- -DSR line has changed state one more more times
- since the last time the MSR was read by the
- host.</entry>
- </row>
-
- <row>
- <entry>Bit 0</entry>
- <entry>Delta Clear To Send (DCTS). Set to "1" if the
- -CTS line has changed state one more more times
- since the last time the MSR was read by the
- host.</entry>
- </row>
- </tbody>
- </entrytbl>
- </row>
-
- <row>
- <entry>+0x07</entry>
- <entry>write/read</entry>
- <entry>Scratch Register (SCR). This register performs no
- function in the UART. Any value can be written by the
- host to this location and read by the host later
- on.</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </sect4>
-
- <sect4>
- <title>Beyond the 16550A UART</title>
-
- <para>Although National Semiconductor has not offered any components
- compatible with the 16550 that provide additional features,
- various other vendors have. Some of these components are
- described below. It should be understood that to effectively
- utilize these improvements, drivers may have to be provided by the
- chip vendor since most of the popular operating systems do not
- support features beyond those provided by the 16550.</para>
-
- <variablelist>
- <varlistentry>
- <term>ST16650</term>
-
- <listitem>
- <para>By default this part is similar to the NS16550A, but an
- extended 32-byte send and receive buffer can be optionally
- enabled. Made by Startech.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>TIL16660</term>
-
- <listitem>
- <para>By default this part behaves similar to the NS16550A,
- but an extended 64-byte send and receive buffer can be
- optionally enabled. Made by Texas Instruments.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>Hayes ESP</term>
-
- <listitem>
- <para>This proprietary plug-in card contains a 2048-byte send
- and receive buffer, and supports data rates to
- 230.4Kbit/sec. Made by Hayes.</para>
- </listitem>
- </varlistentry>
- </variablelist>
-
- <para>In addition to these &ldquo;dumb&rdquo; UARTs, many vendors
- produce intelligent serial communication boards. This type of
- design usually provides a microprocessor that interfaces with
- several UARTs, processes and buffers the data, and then alerts the
- main PC processor when necessary. Because the UARTs are not
- directly accessed by the PC processor in this type of
- communication system, it is not necessary for the vendor to use
- UARTs that are compatible with the 8250, 16450, or the 16550 UART.
- This leaves the designer free to components that may have better
- performance characteristics.</para>
- </sect4>
--->
-
- </sect3>
-
- <sect3 id="sio">
- <title>*** Configurer le pilote de p&eacute;riph&eacute;rique
- <devicename>sio</devicename></title>
- &sgml.todo;
-
-<!--
- <para>The <devicename>sio</devicename> driver provides support for
- NS8250-, NS16450-, NS16550 and NS16550A-based EIA RS-232C (CCITT
- V.24) communications interfaces. Several multiport cards are
- supported as well. See the &man.sio.4;
- manual page for detailed technical documentation.</para>
-
- <sect4>
- <title>Digi International (DigiBoard) PC/8</title>
-
- <para><emphasis>Contributed by &a.awebster;. 26 August
- 1995.</emphasis></para>
-
- <para>Here is a config snippet from a machine with a Digi
- International PC/8 with 16550. It has 8 modems connected to these
- 8 lines, and they work just great. Do not forget to add
- <literal>options COM_MULTIPORT</literal> or it will not work very
- well!</para>
-
- <programlisting>
-device sio4 at isa? port 0x100 tty flags 0xb05
-device sio5 at isa? port 0x108 tty flags 0xb05
-device sio6 at isa? port 0x110 tty flags 0xb05
-device sio7 at isa? port 0x118 tty flags 0xb05
-device sio8 at isa? port 0x120 tty flags 0xb05
-device sio9 at isa? port 0x128 tty flags 0xb05
-device sio10 at isa? port 0x130 tty flags 0xb05
-device sio11 at isa? port 0x138 tty flags 0xb05 irq 9 vector siointr</programlisting>
-
- <para>The trick in setting this up is that the MSB of the flags
- represent the last SIO port, in this case 11 so flags are
- 0xb05.</para>
- </sect4>
-
- <sect4>
- <title>Boca 16</title>
-
- <para><emphasis>Contributed by &a.whiteside;. 26 August
- 1995.</emphasis></para>
-
- <para>The procedures to make a Boca 16 port board with FreeBSD are
- pretty straightforward, but you will need a couple things to make
- it work:</para>
-
- <orderedlist>
- <listitem>
- <para>You either need the kernel sources installed so you can
- recompile the necessary options or you will need someone else
- to compile it for you. The 2.0.5 default kernel does
- <emphasis>not</emphasis> come with multiport support enabled
- and you will need to add a device entry for each port
- anyways.</para>
- </listitem>
-
- <listitem>
- <para>Two, you will need to know the interrupt and IO setting
- for your Boca Board so you can set these options properly in
- the kernel.</para>
- </listitem>
- </orderedlist>
-
- <para>One important note &mdash; the actual UART chips for the Boca
- 16 are in the connector box, not on the internal board itself. So
- if you have it unplugged, probes of those ports will fail. I have
- never tested booting with the box unplugged and plugging it back
- in, and I suggest you do not either.</para>
-
- <para>If you do not already have a custom kernel configuration file
- set up, refer to <link linkend="kernelconfig">Kernel
- Configuration</link> for general procedures. The following are
- the specifics for the Boca 16 board and assume you are using the
- kernel name MYKERNEL and editing with vi.</para>
-
- <procedure>
- <step>
- <para>Add the line
-
- <programlisting>
-options COM_MULTIPORT</programlisting>
-
- to the config file.</para>
- </step>
-
- <step>
- <para>Where the current <literal>device
- sio<replaceable>n</replaceable></literal> lines are, you
- will need to add 16 more devices. Only the last device
- includes the interrupt vector for the board. (See the
- &man.sio.4; manual page for detail as
- to why.) The following example is for a Boca Board with an
- interrupt of 3, and a base IO address 100h. The IO address
- for Each port is +8 hexadecimal from the previous port, thus
- the 100h, 108h, 110h... addresses.</para>
-
- <programlisting>
-device sio1 at isa? port 0x100 tty flags 0x1005
-device sio2 at isa? port 0x108 tty flags 0x1005
-device sio3 at isa? port 0x110 tty flags 0x1005
-device sio4 at isa? port 0x118 tty flags 0x1005
-&hellip;
-device sio15 at isa? port 0x170 tty flags 0x1005
-device sio16 at isa? port 0x178 tty flags 0x1005 irq 3 vector siointr</programlisting>
-
- <para>The flags entry <emphasis>must</emphasis> be changed from
- this example unless you are using the exact same sio
- assignments. Flags are set according to
- 0x<replaceable>M</replaceable><replaceable>YY</replaceable>
- where <replaceable>M</replaceable> indicates the minor number
- of the master port (the last port on a Boca 16) and
- <replaceable>YY</replaceable> indicates if FIFO is enabled or
- disabled(enabled), IRQ sharing is used(yes) and if there is an
- AST/4 compatible IRQ control register(no). In this example,
- <programlisting> flags 0x1005</programlisting> indicates that
- the master port is sio16. If I added another board and
- assigned sio17 through sio28, the flags for all 16 ports on
- <emphasis>that</emphasis> board would be 0x1C05, where 1C
- indicates the minor number of the master port. Do not change
- the 05 setting.</para>
- </step>
-
- <step>
- <para>Save and complete the kernel configuration, recompile,
- install and reboot. Presuming you have successfully installed
- the recompiled kernel and have it set to the correct address
- and IRQ, your boot message should indicate the successful
- probe of the Boca ports as follows: (obviously the sio
- numbers, IO and IRQ could be different)</para>
-
- <screen>sio1 at 0x100-0x107 flags 0x1005 on isa
-sio1: type 16550A (multiport)
-sio2 at 0x108-0x10f flags 0x1005 on isa
-sio2: type 16550A (multiport)
-sio3 at 0x110-0x117 flags 0x1005 on isa
-sio3: type 16550A (multiport)
-sio4 at 0x118-0x11f flags 0x1005 on isa
-sio4: type 16550A (multiport)
-sio5 at 0x120-0x127 flags 0x1005 on isa
-sio5: type 16550A (multiport)
-sio6 at 0x128-0x12f flags 0x1005 on isa
-sio6: type 16550A (multiport)
-sio7 at 0x130-0x137 flags 0x1005 on isa
-sio7: type 16550A (multiport)
-sio8 at 0x138-0x13f flags 0x1005 on isa
-sio8: type 16550A (multiport)
-sio9 at 0x140-0x147 flags 0x1005 on isa
-sio9: type 16550A (multiport)
-sio10 at 0x148-0x14f flags 0x1005 on isa
-sio10: type 16550A (multiport)
-sio11 at 0x150-0x157 flags 0x1005 on isa
-sio11: type 16550A (multiport)
-sio12 at 0x158-0x15f flags 0x1005 on isa
-sio12: type 16550A (multiport)
-sio13 at 0x160-0x167 flags 0x1005 on isa
-sio13: type 16550A (multiport)
-sio14 at 0x168-0x16f flags 0x1005 on isa
-sio14: type 16550A (multiport)
-sio15 at 0x170-0x177 flags 0x1005 on isa
-sio15: type 16550A (multiport)
-sio16 at 0x178-0x17f irq 3 flags 0x1005 on isa
-sio16: type 16550A (multiport master)</screen>
-
- <para>If the messages go by too fast to see,
-
- <screen>&prompt.root; <userinput>dmesg | more</userinput></screen>
- will show you the boot messages.</para>
- </step>
-
- <step>
- <para>Next, appropriate entries in <filename>/dev</filename> for
- the devices must be made using the
- <filename>/dev/MAKEDEV</filename> script. After becoming
- root:</para>
-
- <screen>&prompt.root; <userinput>cd /dev</userinput>
-&prompt.root; <userinput>./MAKEDEV tty1</userinput>
-&prompt.root; <userinput>./MAKEDEV cua1</userinput>
-<emphasis>(everything in between)</emphasis>
-&prompt.root; <userinput>./MAKEDEV ttyg</userinput>
-&prompt.root; <userinput>./MAKEDEV cuag</userinput></screen>
-
- <para>If you do not want or need callout devices for some
- reason, you can dispense with making the
- <filename>cua*</filename> devices.</para>
- </step>
-
- <step>
- <para>If you want a quick and sloppy way to make sure the
- devices are working, you can simply plug a modem into each
- port and (as root)
-
- <screen>&prompt.root; <userinput>echo at &gt; ttyd*</userinput></screen>
- for each device you have made. You
- <emphasis>should</emphasis> see the RX lights flash for each
- working port.</para>
- </step>
- </procedure>
- </sect4>
--->
-
- </sect3>
- <sect3 id="cy">
- <title>*** Configurer le pilote de p&eacute;riph&eacute;rique
- <devicename>cy</devicename></title>
- &sgml.todo;
-
-<!--
- <para><emphasis>Contributed by &a.alex;. 6 June
- 1996.</emphasis></para>
-
- <para>The Cyclades multiport cards are based on the
- <devicename>cy</devicename> driver instead of the usual
- <devicename>sio</devicename> driver used by other multiport cards.
- Configuration is a simple matter of:</para>
-
- <procedure>
- <step>
- <para>Add the <devicename>cy</devicename> device to your <link
- linkend="kernelconfig-config">kernel configuration</link>
- (note that your irq and iomem settings may differ).</para>
-
- <programlisting>
-device cy0 at isa? tty irq 10 iomem 0xd4000 iosiz 0x2000 vector cyintr</programlisting>
- </step>
-
- <step>
- <para><link linkend="kernelconfig-building">Rebuild and
- install</link> the new kernel.</para>
- </step>
-
- <step>
- <para>Make the <link linkend="kernelconfig-nodes">device
- nodes</link> by typing (the following example assumes an
- 8-port board):</para>
-
- <screen>&prompt.root; <userinput>cd /dev</userinput>
-&prompt.root; <userinput>for i in 0 1 2 3 4 5 6 7;do ./MAKEDEV cuac$i ttyc$i;done</userinput></screen>
- </step>
-
- <step>
- <para>If appropriate, add <link linkend="dialup">dialup</link>
- entries to <link linkend="dialup-ttys">/etc/ttys</link> by
- duplicating serial device (<literal>ttyd</literal>) entries and
- using <literal>ttyc</literal> in place of
- <literal>ttyd</literal>. For example:</para>
-
- <programlisting>
-ttyc0 "/usr/libexec/getty std.38400" unknown on insecure
-ttyc1 "/usr/libexec/getty std.38400" unknown on insecure
-ttyc2 "/usr/libexec/getty std.38400" unknown on insecure
-&hellip;
-ttyc7 "/usr/libexec/getty std.38400" unknown on insecure</programlisting>
- </step>
-
- <step>
- <para>Reboot with the new kernel.</para>
- </step>
- </procedure>
-
--->
- </sect3>
- </sect2>
-
- <sect2>
- <title>* Ports parall&egrave;les</title>
- <para></para>
- </sect2>
-
- <sect2>
- <title>* Modems</title>
- <para></para>
- </sect2>
-
- <sect2>
- <title>* Cartes r&eacute;seau</title>
- <para></para>
- </sect2>
-
- <sect2>
- <title>* Claviers</title>
- <para></para>
- </sect2>
-
- <sect2>
- <title>* Souris</title>
- <para></para>
- </sect2>
-
- <sect2>
- <title>* Autres</title>
- <para></para>
- </sect2>
- </sect1>
-
- <sect1 id="hw-storage">
- <title>** M&eacute;moires de masse</title>
- &trans.a.haby;
-
- <sect2 id="esdi">
- <title>Utiliser des disques durs ESDI</title>
-
- <para><emphasis>Copyright &copy; 1995, &a.wilko;. 24 Septembre
- 1995.</emphasis></para>
-
- <para>ESDI est l'abr&eacute;viation de <foreignphrase>Enhanced Small
- Device Interface</foreignphrase>&nbsp;-&nbsp;Interface
- Am&eacute;lior&eacute;e pour les P&eacute;riph&eacute;riques
- L&eacute;gers. Elle se base plus ou moins sur la bonne vieille interface
- ST506/412, initialement con&ccedil;ue par Seagate Technology, le
- fabricant du premier disque Winchester 5.25" bon march&eacute;.</para>
-
- <para>L'abr&eacute;viation pr&eacute;cise &agrave; juste titre
- &rdquo;&eacute;tendue&ldquo;. Pour commencer, l'interface est plus
- rapide, 10 ou 15 Mbits/seconde au lieu des 5 Mbits/seconde des disques
- &agrave; interface ST412s. Il y a de plus de nouvelles commandes de plus
- haut niveau, qui font que l'interface ESDI est en quelque sorte plus
- &ldquo;intelligente&rdquo; que les pilotes de
- p&eacute;riph&eacute;riques du syst&egrave;me d'exploitation. Elle n'est
- cependant pas comparable aux interfaces SCSI. L'ESDI est un standard
- ANSI.</para>
-
- <para>La capacit&eacute; de disques est accrue parce qu'il y a plus de
- secteurs par piste. Il y a g&eacute;n&eacute;ralement 35 secteurs par
- pistes, mais j'ai vu des disques de grande capacit&eacute; avec 54
- secteurs par piste.</para>
-
- <para>Bien que l'IDE et le SCSI ait rendu l'ESDI largement
- obsol&egrave;te, la possibilit&eacute; de se procurer gratuitement ou
- &agrave; peu de frais des disques d'occasion les rend
- int&eacute;ressants pour les syst&egrave;mes &agrave; budget
- r&eacute;duit (ou nul).</para>
-
- <sect3>
- <title>Concepts ESDI</title>
-
- <sect4>
- <title>Connexions</title>
-
- <para>L'interface ESDI utilise deux c&acirc;bles par disque. Le
- premier est une nappe &agrave; 54 broches qui v&eacute;hicule les
- signaux de commandes et d'&eacute;tat entre le contr&ocirc;leur et
- le disque. Les disques sont cha&icirc;n&eacute;s en s&eacute;rie sur
- ce c&acirc;ble. C'est donc un bus auquel tous les disques sont
- reli&eacute;s.</para>
-
- <para>Le second c&acirc;ble est une nappe &agrave; 20 broches qui
- v&eacute;hicule les donn&eacute;es de et vers le disque. Ce
- c&acirc;blage est en &eacute;toile, chaque disque est donc
- directement reli&eacute; au contr&ocirc;leur.</para>
-
- <para>Autant que je sache, on ne peut mettre que deux disques par
- contr&ocirc;leur ESDI sur un PC. Cela pour des raisons de
- compatibilit&eacute; (?) avec le standard WD1003 qui n'utilise
- qu'un seul bit pour l'adresse des
- p&eacute;riph&eacute;riques.</para>
- </sect4>
-
- <sect4>
- <title>Adresses des p&eacute;riph&eacute;riques</title>
-
- <para>Sur chaque c&acirc;ble de commande, il peut y avoir au plus 7
- p&eacute;riph&eacute;riques et 1 contr&ocirc;leur. Pour que le
- contr&ocirc;leur puisse identifier l'adresse de chaque disque, il y
- a sur chaque p&eacute;riph&eacute;rique ESDI des cavaliers ou des
- interrupteurs pour d&eacute;finir l'adresse du
- p&eacute;riph&eacute;rique.</para>
-
- <para>Sur les contr&ocirc;leurs de PC, le premier disque a l'adresse
- 0, et le second l'adresse 1. <emphasis>V&eacute;rifiez
- toujours</emphasis> que l'adresse de chaque disque est
- diff&eacute;rente&nbsp;! Sur les PC, o&ugrave; il y a au plus deux
- disques par contr&ocirc;leur, le premier disque est le disque 0 et
- le second le disque 1.</para>
- </sect4>
-
- <sect4>
- <title>Terminaison</title>
-
- <para>Le c&acirc;ble s&eacute;rie de commande (rapellez-vous, celui
- &agrave; 34 broches) doit &ecirc;tre termin&eacute; sur le dernier
- disque de la cha&icirc;ne. Il y a donc sur les disques ESDI une
- r&eacute;sistance de terminaison qui peut &ecirc;tre enlev&eacute;e
- ou d&eacute;sactiv&eacute;e par un cavalier si elle ne doit pas
- servir.</para>
-
- <para>Il n'y a donc qu'un <emphasis>seul</emphasis> disque, celui
- en fin du c&acirc;ble de commande, dont le terminateur doit
- &ecirc;tre install&eacute; ou activ&eacute;. Le contr&ocirc;leur
- termine automatiquement l'autre extr&eacute;mit&eacute; du
- c&acirc;ble. Notez bien, s'il vous pla&icirc;t, que cela implique
- que le contr&ocirc;leur soit &agrave; une extr&eacute;mit&eacute; du
- c&acirc;ble, et <emphasis>non</emphasis> au milieu.</para>
- </sect4>
- </sect3>
-
- <sect3>
- <title>Utiliser les disques ESDI avec FreeBSD</title>
-
- <para>Pourquoi est-il si difficile d'arriver &agrave; utiliser des
- disques ESDI&nbsp;?</para>
-
- <para>On dit que ceux qui ont essay&eacute; d'utiliser des disques ESDI
- avec FreeBSD ont d&eacute;velopp&eacute; un sentiment de profonde
- frustration. Divers facteurs oeuvrent contre vous et produisent des
- r&eacute;sultats difficiles &agrave; comprendre si vous n'y avez
- jamais &eacute;t&eacute; confront&eacute;.</para>
-
- <para>D'o&ugrave; la l&eacute;gende populaire qui veut que l'ESDI et
- FreeBSD soient d&eacute;finitivement incompatibles. Ce qui suit tente
- de recenser les difficult&eacute;s et leurs solutions.</para>
-
- <sect4>
- <title>Les diff&eacute;rences de vitesse de l'ESDI</title>
-
- <para>Comme on y a d&eacute;j&agrave; fait allusion, il y a deux
- versions &agrave; vitesse diff&eacute;rente de l'ESDI. Les disques
- et les contr&ocirc;leurs plus anciens transf&egrave;rent les
- donn&eacute;es &agrave; 10 Mbits/seconde. Les plus r&eacute;cents le
- font &agrave; 15 Mbits/seconde.</para>
-
- <para>Il est facile d'imaginer qu'utiliser des disques &agrave;
- 15 Mbits/seconde pose des probl&egrave;mes avec des
- contr&ocirc;leurs &agrave; 10 Mbits/seconde. Consultez toujours,
- comme d'habitude, la documentation de votre contr&ocirc;leur
- <emphasis>et</emphasis> celle de votre disque pour v&eacute;rifier
- qu'ils sont compatibles.</para>
- </sect4>
-
- <sect4>
- <title>Restez en piste</title>
-
- <para>Les disques ESDI standards ont de 34 &agrave; 36 secteurs par
- piste. La plupart des (anciens) contr&ocirc;leurs n'acceptent pas
- plus de secteurs que cela. Les disques plus r&eacute;cents, de plus
- grande capacit&eacute;, ont un plus grand nombre de secteurs par
- piste. Je poss&egrave;de par exemple un disque de 670 Mo qui a 54
- secteurs par piste.</para>
-
- <para>Dans mon cas, le contr&ocirc;leur ne peut pas g&eacute;rer
- autant de secteurs. Cela fonctionne en utilisant que 35 secteurs par
- piste. D'o&ugrave; un perte important d'espace disque.</para>
-
- <para>Consultez encore une fois les documentations de votre
- mat&eacute;riel pour plus d'informations. Ne pas respecter les
- sp&eacute;cifications, comme dans mon cas, marchera ou ne marchera
- pas. Essayez ou procurez-vous un contr&ocirc;leur qui r&egrave;gle
- le probl&egrave;me.</para>
- </sect4>
-
- <sect4>
- <title>Secteurs mat&eacute;riels ou logiciels</title>
-
- <para>La plupart des disques ESDI permettent de choisir avec un
- cavalier entre des secteurs mat&eacute;riels ou logiciels. Si les
- secteurs sont mat&eacute;riels, le disque &eacute;mettera une
- impulsion de d&eacute;but de secteur &agrave; chaque nouveau
- secteur. Le contr&ocirc;leur utilisera cette impulsion pour savoir
- quand commencer &agrave; lire ou &agrave; &eacute;crire.</para>
-
- <para>Il est possible de choisir la taille des secteurs
- mat&eacute;riels (habituellement 256, 512 ou 1024 octets par
- secteur format&eacute;). FreeBSD utilise des secteurs de 512
- octets. Le nombre de secteurs par piste varie aussi, bien qu'on
- utilise toujours le m&ecirc;me nombre d'octets par secteur
- format&eacute;. Le nombre d'octets <emphasis>non
- format&eacute;s</emphasis> par secteur varie, selon que votre
- contr&ocirc;leur a besoin de plus ou moins d'octets
- suppl&eacute;mentaires pour fonctionner correctement. Avec plus de
- secteurs par piste, vous aurez bien s&ucirc;r plus d'espace
- disponible, mais vous pouvez avoir des probl&egrave;mes si votre
- contr&ocirc;leur a besoin de plus d'octets que le disque ne peut
- lui en laisser &agrave; disposition.</para>
-
- <para>Avec des secteurs logiciels, le contr&ocirc;leur
- d&eacute;termine lui-m&ecirc;me quand commencer et cesser de lire ou
- &eacute;crire. Pour les disques ESDI, les secteurs sont
- mat&eacute;riels par d&eacute;faut (au moins pour tous ceux que je
- connais). Je n'ai jamais eu besoin d'essayer d'utiliser des secteurs
- logiciels.</para>
-
- <para>Exp&eacute;rimentez avec les secteurs avant d'installer FreeBSD,
- parce que vous devrez refaire un formatage de bas niveau &agrave;
- chaque fois.</para>
- </sect4>
-
- <sect4>
- <title>Formatage de bas niveau</title>
-
- <para>Il faut faire un formatage de bas niveau des disques ESDI avant
- de pouvoir les utiliser. Il faut les reformater &agrave; chaque
- fois que vous modifier la position des cavaliers qui
- d&eacute;terminent le nombre de secteurs par piste ou l'orientation
- (horizontale, verticale) du disque. R&eacute;fl&eacute;chissez donc
- d'abord, puis formatez. Ne sous-estimez pas le temps
- n&eacute;cessaire&nbsp;; pour de gros disques, cela peut prendre des
- heures.</para>
-
- <para>Evitez les utilitaires de formatage de bas niveau qui marquent
- une piste inutilisable d&egrave;s qu'ils trouvent un secteur
- endommag&eacute;. Non seulement cela gaspille de l'espace disque,
- mais cela vous posera peut-&ecirc;tre aussi des probl&egrave;mes
- avec <literal>bad144</literal> (voyez plus bas la section sur le
- sujet).</para>
- </sect4>
-
- <sect4>
- <title>Correspondances</title>
-
- <para>Les correspondances, bien que ce ne soit pas un probl&egrave;me
- exclusivement r&eacute;serv&eacute; &agrave; l'ESDI, peuvent vous
- poser de vraies difficult&eacute;s. Il y a diff&eacute;rentes sortes
- de correspondances. Elles ont en commun d'essayer de contourner les
- limites impos&eacute;es &agrave; la g&eacute;om&eacute;trie des
- disques par l'architecture d'origine de l'IBM PC/AT (merci
- IBM&nbsp;!).</para>
-
- <para>Il y a tout d'abord la limite bien connue du 1024&egrave;me
- cylindre pour le d&eacute;marrage. Pour qu'un syst&egrave;me (quel
- qu'il soit) d&eacute;marre, le code de d&eacute;marrage doit se
- trouver quelque part sur les 1024 premiers cylindres. Il n'y a que
- 10 bits disponibles pour coder le num&eacute;ro de cylindre. Le
- nombre de secteurs est limit&eacute; &agrave; 64 (0-63). Quand vous
- y ajoutez la limite de 16 t&ecirc;tes (aussi li&eacute;e &agrave;
- l'architecture), cela vous donne des disques de taille relativement
- faible.</para>
-
- <para>Pour contourner ce probl&egrave;me, les fabricants de
- contr&ocirc;leurs ESDI pour PC ont ajout&eacute; une extension au
- BIOS en PROM. Cette extension g&egrave;re les entr&eacute;es/sorties
- disque au d&eacute;marrage. (et pour certains syst&egrave;mes
- d'exploitation, toutes les entr&eacute;es/sorties) en utilisant des
- correspondances. Par exemple, un gros disque pourra &ecirc;tre
- d&eacute;crit au syst&egrave;me comme ayant 32 t&ecirc;tes et 64
- secteurs par piste. De la sorte, le nombre de cylindres sera
- inf&eacute;rieur &agrave; 1024, ce qui pourra &ecirc;tre
- exploit&eacute; sans probl&egrave;me. Il faut noter que FreeBSD
- n'utilise le BIOS qu'apr&egrave;s que le noyau ait pris le
- contr&ocirc;le. Nous en dirons plus &agrave; ce sujet plus
- loin.</para>
-
- <para>Il faut aussi &eacute;tablir des correspondances avec la plupart
- des BIOS anciens qui ne peuvent g&eacute;rer que des disques avec
- 17 secteurs par piste (le vieux standard ST412). Les BIOS plus
- r&eacute;cents premettent de d&eacute;finir le type de disque (c'est
- habituellement le type de disque 47).</para>
-
- <note>
- <para>Quoique vous fassiez des correspondances apr&egrave;s avoir lu
- ce document, n'oubliez pas que si vous avez plusieurs
- syst&egrave;mes d'exploitation sur le m&ecirc;me disque, ils
- doivent tous utiliser les m&ecirc;mes correspondances.</para>
- </note>
-
- <para>Pendant que nous en sommes aux correspondances, j'ai vu un
- mod&egrave;le de contr&ocirc;leur (mais il y en a probablement
- d'autres) qui permet de diviser un disque en plusieurs partitions
- &agrave; l'aide d'une option du BIOS. J'avais choisi 1 disque = 1
- partition, parce que ce contr&ocirc;leur &eacute;crivait cette
- information sur le disque. A la mise sous tension, il la relit et
- transmet au syst&egrave;me les informations bas&eacute;es sur ce
- qu'il y a sur le disque.</para>
- </sect4>
-
- <sect4>
- <title>Secteurs en r&eacute;serve</title>
-
- <para>La plupart des contr&ocirc;leurs ESDI offrent la
- possibilit&eacute; de r&eacute;affecter les secteurs
- d&eacute;fectueux. Pendant ou apr&egrave;s le formatage de bas
- niveau du disque, les secteurs d&eacute;fectueux sont marqu&eacute;s
- comme tels, et des secteurs de remplacement prennent (logiquement
- bien s&ucirc;r) leur place.</para>
-
- <para>Dans la plupart des cas, c'est fait en utilisant N-1 secteurs de
- chaque piste pour les donn&eacute;es et le secteur N lui-m&ecirc;me
- comme secteur de secours. N est le nombre de secteurs physiquement
- disponibles sur la piste. L'id&eacute;e est que le syst&egrave;me
- d'exploitation voie un disque &rdquo;parfait&ldquo; sans secteur
- d&eacute;fectueux. Ce n'est pas exploitable dans le cas de
- FreeBSD.</para>
-
- <para>Le probl&egrave;me est que la correspondance entre les
- <emphasis>mauvaix</emphasis> et les <emphasis>bons</emphasis>
- secteurs est effectu&eacute;e par le BIOS du contr&ocirc;leur ESDI.
- FreeBSD, qui est un vrai syst&egrave;me d'exploitation 32 bits,
- n'utilise pas le BIOS avant d'avoir d&eacute;marr&eacute;. Il
- dispose &agrave; la place de pilotes de p&eacute;riph&eacute;rique
- qui dialoguent directement avec le mat&eacute;riel.</para>
-
- <para>Donc, n'utilisez pas les secteurs de r&eacute;serve,
- la r&eacute;affectation des secteurs d&eacute;fectueux, quel que
- soit le nom que lui donne le fabricant de votre contr&ocirc;leur, si
- vous voulez vous servir du disque avec FreeBSD.</para>
- </sect4>
-
- <sect4>
- <title>Gestion des blocs d&eacute;fectueux</title>
-
- <para>La section pr&eacute;c&eacute;dente nous a laiss&eacute; sur un
- probl&egrave;me. La gestion des blocs d&eacute;fectueux par le
- contr&ocirc;leur n'est pas exploitable, et FreeBSD suppose
- malgr&eacute; tout que les supports sont sans d&eacute;faut. Pour
- r&eacute;soudre ce probl&egrave;me, FreeBSD utilise l'outil
- <command>bad144</command>. <command>bad144</command> (dont le nom
- vient du standard de gestion des blocs d&eacute;fectueux de Digital
- Equipment) examine une
- tranche&nbsp;-&nbsp;<foreignphrase>slice</foreignphrase>&nbsp;-&nbsp;FreeBSD
- pour d&eacute;tecter les blocs d&eacute;fectueux. Quand il les a
- trouv&eacute;s, il remplit une table avec les num&eacute;ros de ces
- blocs &agrave; la fin de la tranche.</para>
-
- <para>Quand le disque est en service, les num&eacute;ros des blocs
- acc&eacute;d&eacute;s sont compar&eacute;s &agrave; ceux
- stock&eacute;s dans la table lue sur le disque. Quand un bloc
- demand&eacute; est dans la liste de <command>bad144</command>, on
- utilise un bloc de remplacement (aussi en fin de tranche). De cette
- fa&ccedil;on, c'est un support &rdquo;parfait&ldquo; qui est vu par
- les syst&egrave;mes de fichiers de FreeBSD.</para>
-
- <para>L'utilisation de <command>bad144</command> pr&eacute;sente un
- certain nombre d'inconv&eacute;nients. En premier lieu, la tranche
- ne peut comporter plus de 126 secteurs d&eacute;fectueux. Si votre
- disque pr&eacute;sente un gand nombre de secteurs d&eacute;fectueux,
- vous devrez peut-&ecirc;tre le diviser en plusieurs tranches dont
- chacune aura moins de 126 secteurs d&eacute;fectueux. Evitez les
- programmes de formatage de bas niveau qui marquent d&eacute;fectueux
- tous les secteurs d'une piste, d&egrave;s qu'il y a un
- probl&egrave;me avec la piste. Vous comprennez bien que la limite
- de 126 secteurs est rapidement atteinte avec de tels
- programmes.</para>
-
- <para>En second lieu, si la tranche contient le syst&egrave;me de
- fichiers racine, il faut qu'elle soit &agrave; l'int&eacute;rieur
- des 1024 premiers cylindres. La liste <command>bad144</command> est
- lue au d&eacute;marrage, en utilisant le BIOS, et cela ne peut
- se faire que si la liste est avant le
- 1025&egrave;me cylindre.</para>
-
- <note>
- <para>Ce n'est pas seulement le <emphasis>syst&egrave;me</emphasis>
- de fichiers racine qui doit se trouver dans les 1024 premiers
- cylindres, mais toute la <emphasis>tranche</emphasis> qui le
- contient.</para>
- </note>
- </sect4>
-
- <sect4>
- <title>Configuration du noyau</title>
-
- <para>Les disques ESDI sont g&eacute;r&eacute;s par le m&ecirc;me
- pilote <literal>wd</literal> que les disques IDE et ST412 MFM. Le
- pilote <literal>wd</literal> devrait fonctionner avec toutes les
- interfaces compatibles WD1003.</para>
-
- <para>La plupart des mat&eacute;riels ont des cavaliers pour
- d&eacute;finir les plages d'adresses d'entr&eacute;es/sorties et les
- lignes IRQ. Cela vous permet de mettre deux contr&ocirc;leurs de
- type <literal>wd</literal> sur un m&ecirc;me syst&egrave;me.</para>
-
- <para>si votre mat&eacute;riel permet des red&eacute;finition
- non-standard, vous pouvez les utiliser avec FreeBSD, d&egrave;s lors
- que vous donnez les informations correctes dans le fichier de
- configuration du noyau. Voici une extrait de fichier de
- configuration du noyau ( au fait, ils sont dans
- <filename>/sys/i386/conf</filename>)&nbsp;:</para>
-
- <programlisting>
-# Premier contr&ocirc;leur compatible WD
-controller wdc0 at isa? port "IO_WD1" bio irq 14 vector wdintr
-disk wd0 at wdc0 drive 0
-disk wd1 at wdc0 drive 1
-# Second contr&ocirc;leur compatible WD
-controller wdc1 at isa? port "IO_WD2" bio irq 15 vector wdintr
-disk wd2 at wdc1 drive 0
-disk wd3 at wdc1 drive 1
- </programlisting>
- </sect4>
- </sect3>
-
- <sect3>
- <title>Sp&eacute;cificit&eacute;s de certains mat&eacute;riels ESDI</title>
-
- <sect4>
- <title>Contr&ocirc;leurs Adaptec 2320</title>
-
- <para>J'ai r&eacute;ussi &agrave; installer FreeBSD sur un disque ESDI
- avec un contr&ocirc;leur ACB-2320. Il n'y avait pas d'autre
- syst&egrave;me d'exploitation sur le disque.</para>
-
- <para>Pour cela, j'ai effectu&eacute; un formatage de bas niveau du
- disque avec <command>NEFMT.EXE</command>
- (t&eacute;l&eacute;chargeable par <command>ftp</command> depuis
- <hostid role="fqdn">www.adaptec.com</hostid>) et r&eacute;pondu
- <literal>NO</literal> &agrave; la question qui me demandait si le
- disque devait &ecirc;tre format&eacute; en laissant un secteur de
- secours par piste. Le BIOS de l'ACD-2320 &eacute;tait
- d&eacute;sactiv&eacute; et j'ai utilis&eacute; l'option de
- configuration
- libre&nbsp;-&nbsp;<literal>free configurable</literal>&nbsp;-&nbsp;du
- BIOS du syst&egrave;me pour permettre au BIOS de d&eacute;marrer
- avec.</para>
-
- <para>Avant de me servir de <command>NEFMT.EXE</command>, j'avais
- essay&eacute; de formater le disque avec l'utilitaire inclus dans
- le BIOS de l'ACB-2320. Cela s'est av&eacute;r&eacute; inutilisable,
- parce qu'il ne m'a pas propos&eacute; de d&eacute;sactiver la
- r&eacute;servation du secteur de secours. Avec ces derniers,
- l'installation de FreeBSD &eacute;choue &agrave; l'ex&eacute;cution
- de <command>bad144</command>.</para>
-
- <para>V&eacute;rifiez avec soin de quelle variante
- ACB-232<replaceable>xy</replaceable> vous disposez. Le
- <replaceable>x</replaceable> vaut <literal>0</literal> ou
- <literal>2</literal>, selon que le contr&ocirc;leur ne dispose pas
- ou inclut un contr&ocirc;leur de lecteur de disquettes.</para>
-
- <para>Le <literal>y</literal> est plus int&eacute;ressant. C'est un
- blanc, un <literal>A-8</literal> ou un <literal>D</literal>. Le
- blanc indique un contr&ocirc;leur &agrave; 10 Mo/seconde. Le
- <literal>A-8</literal> indique un contr&ocirc;leur &agrave; 15
- Mo/seconde capable de g&eacute;rer 52 secteurs par piste. Le
- <literal>D</literal> est un contr&ocirc;leur &agrave; 15 Mo/seconde
- qui peut aussi g&eacute;rer des disques avec plus de 36 secteurs
- par piste (52 aussii&nbsp;?).</para>
-
- <para>Toutes ces variantes peuvent g&eacute;rer l'entrelacement 1:1.
- Employez-le, FreeBSD est assez rapide pour s'en accommoder.</para>
- </sect4>
-
- <sect4>
- <title>Contr&ocirc;leurs Western Digital WD1007</title>
-
- <para>J'ai r&eacute;ussi &agrave; installer FreeBSD sur un disque ESDI
- avec un contr&ocirc;leur WD1007. Pour &ecirc;tre pr&eacute;cis,
- c'&eacute;tait un contr&ocirc;leur WD1007-WA2. Il y en a d'autres
- variantes.</para>
-
- <para>Pour qu'il fonctionne, j'ai d&eacute;sactiv&eacute; la
- correspondance entre secteurs et le BIOS du WD1007. Ce qui signifie que je n'ai pas pu me servir de l'utilitaire de formatage de bas
- niveau de ce BIOS. J'ai r&eacute;cup&eacute;r&eacute;
- <command>WDFMT.EXE</command> sur
- <hostid role="fqdn">www.wdc.com</hostid>. Il m'a permis de formater
- le disque sans probl&egrave;me.</para>
- </sect4>
-
- <sect4>
- <title>Contr&ocirc;leurs Ultrastor U14F</title>
-
- <para>Selon de nombreux retours sur le r&eacute;seau, les cartes
- Ultrastor ESDI fonctionnent avec FreeBSD. Je n'ai pas plus
- d'informations sur leur configuration.</para>
- </sect4>
- </sect3>
-
- <sect3 id="esdi-further-reading">
- <title>Lectures compl&eacute;mentaires</title>
-
- <para>Si vous avez l'intention d'utiliser s&eacute;rieusement l'ESDI,
- vous devriez avoir la norme officielle &agrave; port&eacute;e de
- main&nbsp;:</para>
-
- <para>Le document le plus r&eacute;cent du comit&eacute; ANSI X3T10
- est&nbsp;: &rdquo;Enhanced Small Device Interface (ESDI)
- [X3.170-1990/X3.170a-1991] [X3T10/792D Rev 11]&ldquo;.</para>
-
- <para>Le forum Usenet
- <ulink URL="news:comp.periphs">comp.periphs</ulink> est un bon endroit
- ou avoir plus d'informations.</para>
-
- <para>Le <foreignphrase>World Wide Web</foreignphrase> (WWW) est aussi
- une excellente source d'informations&nbsp;: Pour les contr&ocirc;leurs
- Adaptec, consultez
- <ulink URL="http://www.adaptec.com/">http://www.adaptec.com/</ulink>.
- Pour les contr&ocirc;leurs Western Digital, voyez
- <ulink URL="http://www.wdc.com/">http://www.wdc.com/</ulink>.</para>
-
- </sect3>
-
- <sect3>
- <title>Remerciements &agrave; ...</title>
-
- <para>Andrew Gordon pour m'avoir envoy&eacute; un contr&ocirc;leur
- Adaptec 2320 et un disque ESDI pour faire des tests.</para>
- </sect3>
- </sect2>
-
- <sect2 id="scsi">
- <title>Qu'est-ce que le SCSI&nbsp;?</title>
- &trans.a.brive;
-
- <para><emphasis>Copyright &copy; 1995, &a.wilko;. July 6,
- 1996.</emphasis></para>
-
- <para>SCSI est un acronyme pour Small Computer Systems Interface. C'est
- un standard ANSI qui est devenu l'un des premiers bus d'E/S de
- l'industrie informatique. Les bases du standard SCSI proviennent
- de Shugart Associates (les m&ecirc;mes personnes qui ont donn&eacute; au monde les
- premiers mini-disques floppy) quand ils ont introduit le bus SASI
- (Shugart Associates Standard Interface).</para>
-
- <para>Un effort industriel a d&eacute;marr&eacute; quelque temps plus tard pour
- arriver &agrave; un standard plus strict, permettant &agrave; des p&eacute;riph&eacute;riques de
- diff&eacute;rents vendeurs de travailler ensemble. Cet effort fut reconnu
- par l'ANSI avec le standard SCSI-1. Ce standard (approx. 1985) devient
- rapidement obsol&egrave;te. Le standard courant est SCSI-2 (cf <link
- linkend="scsi-further-reading">Lecture compl&eacute;mentaire</link>),
- avec SCSI-3 en cours de conception.</para>
-
- <para>En plus d'un standard pour l'interconnexion physique, SCSI d&eacute;finit
- un standard logique (jeu de commandes) auxquels les disques doivent
- adh&eacute;rer. Ce standard "commun" est appell&eacute; le Common Command Set (CCS)
- et a &eacute;t&eacute; d&eacute;velopp&eacute; plus ou moins en parall&egrave;le avec le SCSI-1 ANSI.
- SCSI-2 int&egrave;gre le CCS (r&eacute;vis&eacute;) dans son standard. Les commandes
- d&eacute;pendent du type de p&eacute;riph&eacute;rique&nbsp;; il ne serait pas logique bien
- s&ucirc;r de d&eacute;finir une commande "Ecriture" pour un scanner.</para>
-
- <para>Le bus SCSI est un bus parall&egrave;le, qui supporte plusieurs
- variantes. La plus ancienne et plus utilis&eacute;e est un bus de 8 bits
- de large, avec des signaux en collecteur ouvert (single-ended),
- transport&eacute;s sur 50 fils. (Si vous ne savez pas ce que veut dire
- "collecteur ouvert", ne vous en faites pas; c'est justement le sujet
- de ce document). Les architectures modernes utilisent aussi les bus
- de 16 bits avec des signaux diff&eacute;rentiels. Cela permet d'obtenir
- des taux de transferts de 20Mo/s, sur des c&acirc;bles atteignant 25 m&egrave;tres.
- SCSI-2 permet une largeur maximum du bus de 32 bits en utilisant un
- c&acirc;ble suppl&eacute;mentaire. Rapidement, l'Ultra SCSI (appel&eacute; aussi Fast-20)
- et l'Ultra2 (appel&eacute; aussi Fast-40) arrivent. Fast-20 correspond &agrave;
- 20 millions de transferts par seconde (20Mo/s sur un bus de 8 bits)
- et Fast-40 correspond &agrave; 40 millions de transferts par seconde
- (40Mo/s sur un bus de 8 bits). La majorit&eacute; des disques vendus
- aujourd'hui sont des Ultra SCSI (8 ou 16 bits) en collecteur
- ouvert.</para>
-
- <para>Bien s&ucirc;r, le bus SCSI n'a pas que des fils de donn&eacute;es, mais
- aussi un certain nombre de signaux de contr&ocirc;le. Un protocole tr&egrave;s
- &eacute;labor&eacute; fait partie du standard pour permettre &agrave; plusieurs
- p&eacute;riph&eacute;riques de se partager le bus de mani&egrave;re efficace.
- En SCSI-2, les donn&eacute;es sont toujours v&eacute;rifi&eacute;es avec un fil s&eacute;par&eacute;
- pour la parit&eacute;. Dans l'architecture pr&eacute;-SCSI-2, la parit&eacute; &eacute;tait
- optionnelle.</para>
-
- <para>En SCSI-3, des types de bus encore plus rapides sont introduits,
- dont les bus SCSI s&eacute;rie qui r&eacute;duisent l'overhead du cabl&acirc;ge
- (consommation? d&eacute;lai de propagation?)
- et permettent une longueur de bus maximale plus importante.
- Vous pourriez voir des noms comme SSA et FiberChannel dans ce contexte.
- Aucun de ces bus s&eacute;rie n'est aujourd'hui d'usage courant (et
- sp&eacute;cialement pas dans l'environnement typique de FreeBSD).
- Pour cette raison, les types de bus s&eacute;rie ne seront plus abord&eacute;s.</para>
-
- <para>Comme vous auriez pu le deviner de la description pr&eacute;c&eacute;dente, les
- p&eacute;riph&eacute;riques SCSI sont intelligents. Ils doivent l'&ecirc;tre pour adh&eacute;rer
- au standard SCSI (qui est &eacute;pais de plus de 5 cm). Ainsi, pour un
- disque dur par exemple, vous ne sp&eacute;cifiez pas un t&ecirc;te/cylindre/secteur
- pour adresser un bloc particulier, mais simplement le num&eacute;ro du
- bloc que vous voulez.
- Des sch&eacute;mas &eacute;labor&eacute;s de cache, des remplacements automatiques de blocs
- d&eacute;fecteux, etc, sont tous rendus possibles par cette approche de
- &ldquo;p&eacute;riph&eacute;rique intelligent&rdquo;.</para>
-
- <para>Sur un bus SCSI, chaque paire possible d'abonn&eacute;s peut communiquer.
- Que leur fonction le leur permette est une autre chose, mais le
- standard ne le restreint pas. Pour &eacute;viter le conflit de signaux,
- les deux abonn&eacute;s doivent passer par une phase d'arbitrage de bus
- avant de l'utiliser.</para>
-
- <para>La philosophie du SCSI est d'avoir un standard qui permette
- &agrave; des p&eacute;riph&eacute;riques ancien-standard de travailler avec des
- nouveaux-standard. Ainsi, un vieux p&eacute;riph&eacute;rique SCSI-1 devrait
- normalement fonctionner sur un bus SCSI-2. Je dis normalement, car il
- n'est pas absolument s&ucirc;r que l'impl&eacute;mentation d'un ancien p&eacute;riph&eacute;rique
- suive le (vieux) standard de mani&egrave;re assez proche pour &ecirc;tre acceptable
- sur un nouveau bus. Les p&eacute;riph&eacute;riques modernes se comportent bien
- g&eacute;n&eacute;ralement, car la standardisation est devenue plus stricte et
- est mieux respect&eacute;e par les fabriquants de p&eacute;riph&eacute;riques.</para>
-
- <para>D'une mani&egrave;re g&eacute;n&eacute;rale, les chances de faire fonctionner
- correctement un ensemble de p&eacute;riph&eacute;riques sur un seul bus, sont
- meilleures quand tous les abonn&eacute;s sont SCSI-2 ou plus r&eacute;cents.
- Cela implique que vous n'avez pas besoin de supprimer tous vos vieux
- mat&eacute;riels quand vous venez d'avoir ce magnifique disque de 2Go&nbsp;:
- je poss&egrave;de un syst&egrave;me sur lequel un disque pr&eacute;-SCSI-1, un
- lecteur de cartouche QIC en SCSI-2, un lecteur de cartouches
- h&eacute;lico&iuml;dal SCSI-1 et 2 disques SCSI-1 fonctionnent assez
- bien ensemble. D'un point de vue des performances, vous
- pourriez toutefois vouloir s&eacute;parer vos plus vieux p&eacute;riph&eacute;riques
- des plus nouveaux (=plus rapides).</para>
-
-
- <sect3>
- <title>Composants SCSI</title>
-
- <para>Comme nous l'avons dit pr&eacute;c&eacute;demment, les p&eacute;riph&eacute;riques SCSI sont
- intelligents. L'id&eacute;e est de mettre les connaissances sur les d&eacute;tails
- intimes du mat&eacute;riel dans le p&eacute;riph&eacute;rique SCSI lui-m&ecirc;me. De cette
- fa&ccedil;on, le syst&egrave;me h&ocirc;te n'a pas besoin de se pr&eacute;occuper de savoir,
- par exemple, combien de t&ecirc;tes poss&egrave;de le disque, ou combien de pistes
- poss&egrave;de tel d&eacute;rouleur de bandes. Si vous &ecirc;tes curieux, le standard
- sp&eacute;cifie des commandes avec lesquelles vous pouvez interroger les
- p&eacute;riph&eacute;riques sur leurs sp&eacute;cificit&eacute;s mat&eacute;rielles. FreeBSD utilise
- cette possibilit&eacute; pendant le d&eacute;marrage pour d&eacute;terminer quels sont
- les p&eacute;riph&eacute;riques connect&eacute;s et s'ils ont besoin d'un traitement
- sp&eacute;cial.</para>
-
- <para>L'avantage d'avoir des p&eacute;riph&eacute;riques intelligents est
- &eacute;vident&nbsp;: le pilote de p&eacute;riph&eacute;rique dans l'h&ocirc;te peut &ecirc;tre
- con&ccedil;u de mani&egrave;re beaucoup plus g&eacute;n&eacute;rique, il n'y a plus besoin de
- modifier (et valider&nbsp;!) les pilotes pour chaque nouveau
- p&eacute;riph&eacute;rique bizarre qui est introduit.</para>
-
- <para>Pour les c&acirc;bles et les connecteurs, il y a une r&egrave;gle d'or&nbsp;:
- prenez de la qualit&eacute;. Avec des vitesses de bus augmentant tout
- le temps, vous vous &eacute;pargnerez beaucoup de peine en utilisant du
- bon mat&eacute;riel.</para>
-
- <para>Aussi, utilisez des connecteurs plaqu&eacute;s or, des c&acirc;bles blind&eacute;s
- et des connecteurs robustes et bien v&eacute;rrouill&eacute;s, etc.
- Deuxi&egrave;me r&egrave;gle d'or&nbsp;: n'utilisez pas des c&acirc;bles plus longs que
- n&eacute;cessaires. J'ai une fois perdu 3 jours &agrave; pourchasser un probl&egrave;me
- sur une machine instable, juste pour d&eacute;couvrir que raccourcir
- le bus SCSI d'un m&egrave;tre r&eacute;solvait le probl&egrave;me. Et la longueur
- originale du bus respectait bien les sp&eacute;cifications SCSI.</para>
-
- </sect3>
-
- <sect3>
- <title>Types de bus SCSI</title>
-
- <para>D'un point de vue &eacute;lectrique, il existe deux types de bus
- incompatibles&nbsp;: collecteur ouvert (<foreignphrase>single-ended
- </foreignphrase>) et diff&eacute;rentiel. Cela signifie qu'il existe deux
- principaux groupes de p&eacute;riph&eacute;riques et contr&ocirc;leurs SCSI qui ne peuvent
- &ecirc;tre m&eacute;lang&eacute;s sur le m&ecirc;me bus. Il est toutefois possible d'utiliser
- un convertisseur mat&eacute;riel sp&eacute;cial pour transformer un bus collecteur
- ouvert en diff&eacute;rentiel (et vice versa). Les diff&eacute;rences entre les
- types de bus sont expliqu&eacute;es dans les sections suivantes.</para>
-
- <para>Dans beaucoup de documentation &agrave; propos du SCSI, il existe une
- sorte de jargon en usage pour abr&eacute;ger les diff&eacute;rents types de bus.
- Une petite liste&nbsp;:</para>
-
- <itemizedlist>
- <listitem>
- <para>FWD&nbsp;: Fast Wide Differential (diff&eacute;rentiel large rapide)</para>
- </listitem>
-
- <listitem>
- <para>FND&nbsp;: Fast Narrow Differential (diff&eacute;rentiel &eacute;troit rapide)</para>
- </listitem>
-
- <listitem>
- <para>SE&nbsp;: Single Ended (collecteur ouvert)</para>
- </listitem>
-
- <listitem>
- <para>FN&nbsp;: Fast Narrow (rapide &eacute;troit)</para>
- </listitem>
-
- <listitem>
- <para>etc.</para>
- </listitem>
- </itemizedlist>
-
-
- <para>Avec un minimun d'imagination, on peut bien imaginer ce que
- cela veut dire.</para>
-
- <para>Large est un peu ambigu, il peut indiquer des bus de 16 ou
- 32 bits. A ma connaissance, la variante en 32 bits n'est pas (encore)
- utilis&eacute;e, donc normalement large veut dire 16 bits.</para>
-
- <para>Rapide signifie que la cadence sur le bus est un peu diff&eacute;rente,
- pour qu'un bus &eacute;troit (8 bits) supporte 10 Mo/s au lieu de 5 Mo/s
- pour un SCSI 'lent'. Comme indiqu&eacute; pr&eacute;c&eacute;demment, des vitesses de
- bus de 20 et 40 millions de transferts/seconde &eacute;mergent aussi
- (Fast-20 = Ultra SCSI et Fast40 = Ultra2 SCSI).</para>
-
- <note>
- <para>Les lignes de donn&eacute;es &gt; 8 ne sont utilis&eacute;es que pour les
- transferts de donn&eacute;es et l'adressage des p&eacute;riph&eacute;riques. Les
- transferts des commandes, messages d'&eacute;tat, etc. n'ont lieu que sur
- les 8 bits de poids faibles. Le standard permet aux p&eacute;riph&eacute;riques
- &eacute;troits de fonctionner sur un bus large. La largeur de bus
- utilisable est n&eacute;goci&eacute;e entre les abonn&eacute;s. Vous devez regarder
- pr&eacute;cis&eacute;ment l'adressage des abonn&eacute;s lorsque vous m&eacute;langez larges
- et &eacute;troits.</para>
- </note>
-
-<!--
- <sect4>
- <title>Single ended buses</title>
- &sgml.todo;
-
- <para>A single-ended SCSI bus uses signals that are either 5 Volts
- or 0 Volts (indeed, TTL levels) and are relative to a COMMON
- ground reference. A singled ended 8 bit SCSI bus has
- approximately 25 ground lines, who are all tied to a single `rail'
- on all devices. A standard single ended bus has a maximum length
- of 6 meters. If the same bus is used with fast-SCSI devices, the
- maximum length allowed drops to 3 meters. Fast-SCSI means that
- instead of 5Mbytes/sec the bus allows 10Mbytes/sec
- transfers.</para>
-
- <para>Fast-20 (Ultra SCSI) and Fast-40 allow for 20 and 40 million
- transfers/second respectively. So, F20 is 20 Mbytes/second on a 8
- bit bus, 40 Mbytes/second on a 16 bit bus etc. For F20 the max
- bus length is 1.5 meters, for F40 it becomes 0.75 meters. Be
- aware that F20 is pushing the limits quite a bit, so you will
- quickly find out if your SCSI bus is electrically sound.</para>
-
- <note>
- <para>If some devices on your bus use 'fast' to communicate your
- bus must adhere to the length restrictions for fast
- buses!</para>
- </note>
-
- <para>It is obvious that with the newer fast-SCSI devices the bus
- length can become a real bottleneck. This is why the differential
- SCSI bus was introduced in the SCSI-2 standard.</para>
-
- <para>For connector pinning and connector types please refer to the
- SCSI-2 standard (see <link linkend="scsi-further-reading">Further
- reading</link>) itself, connectors etc are listed there in
- painstaking detail.</para>
-
- <para>Beware of devices using non-standard cabling. For instance
- Apple uses a 25pin D-type connecter (like the one on serial ports
- and parallel printers). Considering that the official SCSI bus
- needs 50 pins you can imagine the use of this connector needs some
- 'creative cabling'. The reduction of the number of ground wires
- they used is a bad idea, you better stick to 50 pins cabling in
- accordance with the SCSI standard. For Fast-20 and 40 do not even
- think about buses like this.</para>
- </sect4>
-
- <sect4>
- <title>Differential buses</title>
-
- <para>A differential SCSI bus has a maximum length of 25 meters.
- Quite a difference from the 3 meters for a single-ended fast-SCSI
- bus. The idea behind differential signals is that each bus signal
- has its own return wire. So, each signal is carried on a
- (preferably twisted) pair of wires. The voltage difference
- between these two wires determines whether the signal is asserted
- or de-asserted. To a certain extent the voltage difference
- between ground and the signal wire pair is not relevant (do not
- try 10 kVolts though).</para>
-
- <para>It is beyond the scope of this document to explain why this
- differential idea is so much better. Just accept that
- electrically seen the use of differential signals gives a much
- better noise margin. You will normally find differential buses in
- use for inter-cabinet connections. Because of the lower cost
- single ended is mostly used for shorter buses like inside
- cabinets.</para>
-
- <para>There is nothing that stops you from using differential stuff
- with FreeBSD, as long as you use a controller that has device
- driver support in FreeBSD. As an example, Adaptec marketed the
- AHA1740 as a single ended board, whereas the AHA1744 was
- differential. The software interface to the host is identical for
- both.</para>
- </sect4>
-
- <sect4>
- <title>Terminators</title>
-
- <para>Terminators in SCSI terminology are resistor networks that are
- used to get a correct impedance matching. Impedance matching is
- important to get clean signals on the bus, without reflections or
- ringing. If you once made a long distance telephone call on a bad
- line you probably know what reflections are. With 20Mbytes/sec
- traveling over your SCSI bus, you do not want signals echoing
- back.</para>
-
- <para>Terminators come in various incarnations, with more or less
- sophisticated designs. Of course, there are internal and external
- variants. Many SCSI devices come with a number of sockets in
- which a number of resistor networks can (must be!) installed. If
- you remove terminators from a device, carefully store them. You
- will need them when you ever decide to reconfigure your SCSI bus.
- There is enough variation in even these simple tiny things to make
- finding the exact replacement a frustrating business. There are
- also SCSI devices that have a single jumper to enable or disable a
- built-in terminator. There are special terminators you can stick
- onto a flat cable bus. Others look like external connectors, or a
- connector hood without a cable. So, lots of choice as you can
- see.</para>
-
- <para>There is much debate going on if and when you should switch
- from simple resistor (passive) terminators to active terminators.
- Active terminators contain slightly more elaborate circuit to give
- cleaner bus signals. The general consensus seems to be that the
- usefulness of active termination increases when you have long
- buses and/or fast devices. If you ever have problems with your
- SCSI buses you might consider trying an active terminator. Try to
- borrow one first, they reputedly are quite expensive.</para>
-
- <para>Please keep in mind that terminators for differential and
- single-ended buses are not identical. You should <emphasis>not
- mix</emphasis> the two variants.</para>
-
- <para>OK, and now where should you install your terminators? This is
- by far the most misunderstood part of SCSI. And it is by far the
- simplest. The rule is: <emphasis>every single line on the SCSI
- bus has 2 (two) terminators, one at each end of the
- bus.</emphasis> So, two and not one or three or whatever. Do
- yourself a favor and stick to this rule. It will save you endless
- grief, because wrong termination has the potential to introduce
- highly mysterious bugs. (Note the &ldquo;potential&rdquo; here;
- the nastiest part is that it may or may not work.)</para>
-
- <para>A common pitfall is to have an internal (flat) cable in a
- machine and also an external cable attached to the controller. It
- seems almost everybody forgets to remove the terminators from the
- controller. The terminator must now be on the last external
- device, and not on the controller! In general, every
- reconfiguration of a SCSI bus must pay attention to this.</para>
-
- <note>
- <para>Termination is to be done on a per-line basis. This means
- if you have both narrow and wide buses connected to the same
- host adapter, you need to enable termination on the higher 8
- bits of the bus on the adapter (as well as the last devices on
- each bus, of course).</para>
- </note>
-
- <para>What I did myself is remove all terminators from my SCSI
- devices and controllers. I own a couple of external terminators,
- for both the Centronics-type external cabling and for the internal
- flat cable connectors. This makes reconfiguration much
- easier.</para>
-
- <para>On modern devices, sometimes integrated terminators are used.
- These things are special purpose integrated circuits that can be
- dis/en-abled with a control pin. It is not necessary to
- physically remove them from a device. You may find them on newer
- host adapters, sometimes they are software configurable, using
- some sort of setup tool. Some will even auto-detect the cables
- attached to the connectors and automatically set up the
- termination as necessary. At any rate, consult your
- documentation!</para>
- </sect4>
-
- <sect4>
- <title>Terminator power</title>
-
- <para>The terminators discussed in the previous chapter need power
- to operate properly. On the SCSI bus, a line is dedicated to this
- purpose. So, simple huh?</para>
-
- <para>Not so. Each device can provide its own terminator power to
- the terminator sockets it has on-device. But if you have external
- terminators, or when the device supplying the terminator power to
- the SCSI bus line is switched off you are in trouble.</para>
-
- <para>The idea is that initiators (these are devices that initiate
- actions on the bus, a discussion follows) must supply terminator
- power. All SCSI devices are allowed (but not required) to supply
- terminator power.</para>
-
- <para>To allow for un-powered devices on a bus, the terminator power
- must be supplied to the bus via a diode. This prevents the
- backflow of current to un-powered devices.</para>
-
- <para>To prevent all kinds of nastiness, the terminator power is
- usually fused. As you can imagine, fuses might blow. This can,
- but does not have to, lead to a non functional bus. If multiple
- devices supply terminator power, a single blown fuse will not put
- you out of business. A single supplier with a blown fuse
- certainly will. Clever external terminators sometimes have a LED
- indication that shows whether terminator power is present.</para>
-
- <para>In newer designs auto-restoring fuses that 'reset' themselves
- after some time are sometimes used.</para>
- </sect4>
-
- <sect4>
- <title>Device addressing</title>
-
- <para>Because the SCSI bus is, ehh, a bus there must be a way to
- distinguish or address the different devices connected to
- it.</para>
-
- <para>This is done by means of the SCSI or target ID. Each device
- has a unique target ID. You can select the ID to which a device
- must respond using a set of jumpers, or a dip switch, or something
- similar. Some SCSI host adapters let you change the target ID
- from the boot menu. (Yet some others will not let you change the
- ID from 7.) Consult the documentation of your device for more
- information.</para>
-
- <para>Beware of multiple devices configured to use the same ID.
- Chaos normally reigns in this case. A pitfall is that one of the
- devices sharing the same ID sometimes even manages to answer to
- I/O requests!</para>
-
- <para>For an 8 bit bus, a maximum of 8 targets is possible. The
- maximum is 8 because the selection is done bitwise using the 8
- data lines on the bus. For wide buses this increases to the
- number of data lines (usually 16).</para>
-
- <note>
- <para>A narrow SCSI device can not communicate with a SCSI device
- with a target ID larger than 7. This means it is generally not
- a good idea to move your SCSI host adapter's target ID to
- something higher than 7 (or your CD-ROM will stop
- working).</para>
- </note>
-
- <para>The higher the SCSI target ID, the higher the priority the
- devices has. When it comes to arbitration between devices that
- want to use the bus at the same time, the device that has the
- highest SCSI ID will win. This also means that the SCSI host
- adapter usually uses target ID 7. Note however that the lower 8
- IDs have higher priorities than the higher 8 IDs on a wide-SCSI
- bus. Thus, the order of target IDs is: [7 6 .. 1 0 15 14 .. 9 8]
- on a wide-SCSI system. (If you you are wondering why the lower 8
- have higher priority, read the previous paragraph for a
- hint.)</para>
-
- <para>For a further subdivision, the standard allows for Logical
- Units or LUNs for short. A single target ID may have multiple
- LUNs. For example, a tape device including a tape changer may
- have LUN 0 for the tape device itself, and LUN 1 for the tape
- changer. In this way, the host system can address each of the
- functional units of the tape changer as desired.</para>
- </sect4>
-
- <sect4>
- <title>Bus layout</title>
-
- <para>SCSI buses are linear. So, not shaped like Y-junctions, star
- topologies, rings, cobwebs or whatever else people might want to
- invent. One of the most common mistakes is for people with
- wide-SCSI host adapters to connect devices on all three connecters
- (external connector, internal wide connector, internal narrow
- connector). Don't do that. It may appear to work if you are
- really lucky, but I can almost guarantee that your system will
- stop functioning at the most unfortunate moment (this is also
- known as &ldquo;Murphy's law&rdquo;).</para>
-
- <para>You might notice that the terminator issue discussed earlier
- becomes rather hairy if your bus is not linear. Also, if you have
- more connectors than devices on your internal SCSI cable, make
- sure you attach devices on connectors on both ends instead of
- using the connectors in the middle and let one or both ends
- dangle. This will screw up the termination of the bus.</para>
-
- <para>The electrical characteristics, its noise margins and
- ultimately the reliability of it all are tightly related to linear
- bus rule.</para>
-
- <para><emphasis>Stick to the linear bus rule!</emphasis></para>
- </sect4>
--->
-
- </sect3>
-
-
- <sect3>
- <title>*** Utiliser le SCSI avec FreeBSD</title>
- &sgml.todo
- <!--
- <sect4>
- <title>About translations, BIOSes and magic...</title>
-
- <para>As stated before, you should first make sure that you have a
- electrically sound bus.</para>
-
- <para>When you want to use a SCSI disk on your PC as boot disk, you
- must aware of some quirks related to PC BIOSes. The PC BIOS in
- its first incarnation used a low level physical interface to the
- hard disk. So, you had to tell the BIOS (using a setup tool or a
- BIOS built-in setup) how your disk physically looked like. This
- involved stating number of heads, number of cylinders, number of
- sectors per track, obscure things like precompensation and reduced
- write current cylinder etc.</para>
-
- <para>One might be inclined to think that since SCSI disks are smart
- you can forget about this. Alas, the arcane setup issue is still
- present today. The system BIOS needs to know how to access your
- SCSI disk with the head/cyl/sector method in order to load the
- FreeBSD kernel during boot.</para>
-
- <para>The SCSI host adapter or SCSI controller you have put in your
- AT/EISA/PCI/whatever bus to connect your disk therefore has its
- own on-board BIOS. During system startup, the SCSI BIOS takes
- over the hard disk interface routines from the system BIOS. To
- fool the system BIOS, the system setup is normally set to No hard
- disk present. Obvious, isn't it?</para>
-
- <para>The SCSI BIOS itself presents to the system a so called
- <emphasis>translated</emphasis> drive. This means that a fake
- drive table is constructed that allows the PC to boot the drive.
- This translation is often (but not always) done using a pseudo
- drive with 64 heads and 32 sectors per track. By varying the
- number of cylinders, the SCSI BIOS adapts to the actual drive
- size. It is useful to note that 32 * 64 / 2 = the size of your
- drive in megabytes. The division by 2 is to get from disk blocks
- that are normally 512 bytes in size to Kbytes.</para>
-
- <para>Right. All is well now?! No, it is not. The system BIOS has
- another quirk you might run into. The number of cylinders of a
- bootable hard disk cannot be greater than 1024. Using the
- translation above, this is a show-stopper for disks greater than 1
- GB. With disk capacities going up all the time this is causing
- problems.</para>
-
- <para>Fortunately, the solution is simple: just use another
- translation, e.g. with 128 heads instead of 32. In most cases new
- SCSI BIOS versions are available to upgrade older SCSI host
- adapters. Some newer adapters have an option, in the form of a
- jumper or software setup selection, to switch the translation the
- SCSI BIOS uses.</para>
-
- <para>It is very important that <emphasis>all</emphasis> operating
- systems on the disk use the <emphasis>same translation</emphasis>
- to get the right idea about where to find the relevant partitions.
- So, when installing FreeBSD you must answer any questions about
- heads/cylinders etc using the translated values your host adapter
- uses.</para>
-
- <para>Failing to observe the translation issue might lead to
- un-bootable systems or operating systems overwriting each others
- partitions. Using fdisk you should be able to see all
- partitions.</para>
-
- <para>You might have heard some talk of &ldquo;lying&rdquo; devices?
- Older FreeBSD kernels used to report the geometry of SCSI disks
- when booting. An example from one of my systems:</para>
-
- <screen>aha0 targ 0 lun 0: &lt;MICROP 1588-15MB1057404HSP4&gt;
-sd0: 636MB (1303250 total sec), 1632 cyl, 15 head, 53 sec, bytes/sec 512</screen>
-
- <para>Newer kernels usually do not report this information.
- e.g.</para>
-
- <screen>(bt0:0:0): "SEAGATE ST41651 7574" type 0 fixed SCSI 2
-sd0(bt0:0:0): Direct-Access 1350MB (2766300 512 byte sectors)</screen>
-
- <para>Why has this changed?</para>
-
- <para>This info is retrieved from the SCSI disk itself. Newer disks
- often use a technique called zone bit recording. The idea is that
- on the outer cylinders of the drive there is more space so more
- sectors per track can be put on them. This results in disks that
- have more tracks on outer cylinders than on the inner cylinders
- and, last but not least, have more capacity. You can imagine that
- the value reported by the drive when inquiring about the geometry
- now becomes suspect at best, and nearly always misleading. When
- asked for a geometry , it is nearly always better to supply the
- geometry used by the BIOS, or <emphasis>if the BIOS is never going
- to know about this disk</emphasis>, (e.g. it is not a booting
- disk) to supply a fictitious geometry that is convenient.</para>
- </sect4>
-
- <sect4>
- <title>SCSI subsystem design</title>
-
- <para>FreeBSD uses a layered SCSI subsystem. For each different
- controller card a device driver is written. This driver knows all
- the intimate details about the hardware it controls. The driver
- has a interface to the upper layers of the SCSI subsystem through
- which it receives its commands and reports back any status.</para>
-
- <para>On top of the card drivers there are a number of more generic
- drivers for a class of devices. More specific: a driver for tape
- devices (abbreviation: st), magnetic disks (sd), CD-ROMs (cd) etc.
- In case you are wondering where you can find this stuff, it all
- lives in <filename>/sys/scsi</filename>. See the man pages in
- section 4 for more details.</para>
-
- <para>The multi level design allows a decoupling of low-level bit
- banging and more high level stuff. Adding support for another
- piece of hardware is a much more manageable problem.</para>
- </sect4>
-
- <sect4>
- <title>Kernel configuration</title>
-
- <para>Dependent on your hardware, the kernel configuration file must
- contain one or more lines describing your host adapter(s). This
- includes I/O addresses, interrupts etc. Consult the man page for
- your adapter driver to get more info. Apart from that, check out
- <filename>/sys/i386/conf/LINT</filename> for an overview of a
- kernel config file. <filename>LINT</filename> contains every
- possible option you can dream of. It does
- <emphasis>not</emphasis> imply <filename>LINT</filename> will
- actually get you to a working kernel at all.</para>
-
- <para>Although it is probably stating the obvious: the kernel config
- file should reflect your actual hardware setup. So, interrupts,
- I/O addresses etc must match the kernel config file. During
- system boot messages will be displayed to indicate whether the
- configured hardware was actually found.</para>
-
- <note>
- <para>Note that most of the EISA/PCI drivers (namely
- <devicename>ahb</devicename>, <devicename>ahc</devicename>,
- <devicename>ncr</devicename> and <devicename>amd</devicename>
- will automatically obtain the correct parameters from the host
- adapters themselves at boot time; thus, you just need to write,
- for instance, <literal>controller ahc0</literal>.</para>
- </note>
-
- <para>An example loosely based on the FreeBSD 2.2.5-Release kernel
- config file <filename>LINT</filename> with some added comments
- (between []):</para>
-
- <programlisting>
-# SCSI host adapters: `aha', `ahb', `aic', `bt', `nca'
-#
-# aha: Adaptec 154x
-# ahb: Adaptec 174x
-# ahc: Adaptec 274x/284x/294x
-# aic: Adaptec 152x and sound cards using the Adaptec AIC-6360 (slow!)
-# amd: AMD 53c974 based SCSI cards (e.g., Tekram DC-390 and 390T)
-# bt: Most Buslogic controllers
-# nca: ProAudioSpectrum cards using the NCR 5380 or Trantor T130
-# ncr: NCR/Symbios 53c810/815/825/875 etc based SCSI cards
-# uha: UltraStore 14F and 34F
-# sea: Seagate ST01/02 8 bit controller (slow!)
-# wds: Western Digital WD7000 controller (no scatter/gather!).
-#
-
-[For an Adaptec AHA274x/284x/294x/394x etc controller]
-controller ahc0
-
-[For an NCR/Symbios 53c875 based controller]
-controller ncr0
-
-[For an Ultrastor adapter]
-controller uha0 at isa? port "IO_UHA0" bio irq ? drq 5 vector uhaintr
-
-# Map SCSI buses to specific SCSI adapters
-controller scbus0 at ahc0
-controller scbus2 at ncr0
-controller scbus1 at uha0
-
-# The actual SCSI devices
-disk sd0 at scbus0 target 0 unit 0 [SCSI disk 0 is at scbus 0, LUN 0]
-disk sd1 at scbus0 target 1 [implicit LUN 0 if omitted]
-disk sd2 at scbus1 target 3 [SCSI disk on the uha0]
-disk sd3 at scbus2 target 4 [SCSI disk on the ncr0]
-tape st1 at scbus0 target 6 [SCSI tape at target 6]
-device cd0 at scbus? [the first ever CD-ROM found, no wiring]</programlisting>
-
- <para>The example above tells the kernel to look for a ahc (Adaptec
- 274x) controller, then for an NCR/Symbios board, and so on. The
- lines following the controller specifications tell the kernel to
- configure specific devices but <emphasis>only</emphasis> attach
- them when they match the target ID and LUN specified on the
- corresponding bus.</para>
-
- <para>Wired down devices get &ldquo;first shot&rdquo; at the unit
- numbers so the first non &ldquo;wired down&rdquo; device, is
- allocated the unit number one greater than the highest
- &ldquo;wired down&rdquo; unit number for that kind of device. So,
- if you had a SCSI tape at target ID 2 it would be configured as
- st2, as the tape at target ID 6 is wired down to unit number
- 1.</para>
-
- <note>
- <para>Wired down devices need not be found to get their unit
- number. The unit number for a wired down device is reserved for
- that device, even if it is turned off at boot time. This allows
- the device to be turned on and brought on-line at a later time,
- without rebooting. Notice that a device's unit number has
- <emphasis>no</emphasis> relationship with its target ID on the
- SCSI bus.</para>
- </note>
-
- <para>Below is another example of a kernel config file as used by
- FreeBSD version &lt; 2.0.5. The difference with the first example
- is that devices are not &ldquo;wired down&rdquo;. &ldquo;Wired
- down&rdquo; means that you specify which SCSI target belongs to
- which device.</para>
-
- <para>A kernel built to the config file below will attach the first
- SCSI disk it finds to sd0, the second disk to sd1 etc. If you ever
- removed or added a disk, all other devices of the same type (disk
- in this case) would 'move around'. This implies you have to
- change <filename>/etc/fstab</filename> each time.</para>
-
- <para>Although the old style still works, you are
- <emphasis>strongly</emphasis> recommended to use this new feature.
- It will save you a lot of grief whenever you shift your hardware
- around on the SCSI buses. So, when you re-use your old trusty
- config file after upgrading from a pre-FreeBSD2.0.5.R system check
- this out.</para>
-
- <programlisting>
-[driver for Adaptec 174x]
-controller ahb0 at isa? bio irq 11 vector ahbintr
-
-[for Adaptec 154x]
-controller aha0 at isa? port "IO_AHA0" bio irq 11 drq 5 vector ahaintr
-
-[for Seagate ST01/02]
-controller sea0 at isa? bio irq 5 iomem 0xc8000 iosiz 0x2000 vector seaintr
-
-controller scbus0
-
-device sd0 [support for 4 SCSI harddisks, sd0 up sd3]
-device st0 [support for 2 SCSI tapes]
-
-[for the CD-ROM]
-device cd0 #Only need one of these, the code dynamically grows</programlisting>
-
- <para>Both examples support SCSI disks. If during boot more devices
- of a specific type (e.g. sd disks) are found than are configured
- in the booting kernel, the system will simply allocate more
- devices, incrementing the unit number starting at the last number
- &ldquo;wired down&rdquo;. If there are no &ldquo;wired
- down&rdquo; devices then counting starts at unit 0.</para>
-
- <para>Use <command>man 4 scsi</command> to check for the latest info
- on the SCSI subsystem. For more detailed info on host adapter
- drivers use eg <command>man 4 ahc</command> for info on the
- Adaptec 294x driver.</para>
- </sect4>
-
- <sect4>
- <title>Tuning your SCSI kernel setup</title>
-
- <para>Experience has shown that some devices are slow to respond to
- INQUIRY commands after a SCSI bus reset (which happens at boot
- time). An INQUIRY command is sent by the kernel on boot to see
- what kind of device (disk, tape, CD-ROM etc) is connected to a
- specific target ID. This process is called device probing by the
- way.</para>
-
- <para>To work around the 'slow response' problem, FreeBSD allows a
- tunable delay time before the SCSI devices are probed following a
- SCSI bus reset. You can set this delay time in your kernel
- configuration file using a line like:</para>
-
- <programlisting>
-options SCSI_DELAY=15 #Be pessimistic about Joe SCSI device</programlisting>
-
- <para>This line sets the delay time to 15 seconds. On my own system
- I had to use 3 seconds minimum to get my trusty old CD-ROM drive
- to be recognized. Start with a high value (say 30 seconds or so)
- when you have problems with device recognition. If this helps,
- tune it back until it just stays working.</para>
- </sect4>
-
- <sect4 id="scsi-rogue-devices">
- <title>Rogue SCSI devices</title>
-
- <para>Although the SCSI standard tries to be complete and concise,
- it is a complex standard and implementing things correctly is no
- easy task. Some vendors do a better job then others.</para>
-
- <para>This is exactly where the &ldquo;rogue&rdquo; devices come
- into view. Rogues are devices that are recognized by the FreeBSD
- kernel as behaving slightly (...) non-standard. Rogue devices are
- reported by the kernel when booting. An example for two of my
- cartridge tape units:</para>
-
- <screen>Feb 25 21:03:34 yedi /kernel: ahb0 targ 5 lun 0: &lt;TANDBERG TDC 3600 -06:&gt;
-Feb 25 21:03:34 yedi /kernel: st0: Tandberg tdc3600 is a known rogue
-
-Mar 29 21:16:37 yedi /kernel: aha0 targ 5 lun 0: &lt;ARCHIVE VIPER 150 21247-005&gt;
-Mar 29 21:16:37 yedi /kernel: st1: Archive Viper 150 is a known rogue </screen>
-
- <para>For instance, there are devices that respond to all LUNs on a
- certain target ID, even if they are actually only one device. It
- is easy to see that the kernel might be fooled into believing that
- there are 8 LUNs at that particular target ID. The confusion this
- causes is left as an exercise to the reader.</para>
-
- <para>The SCSI subsystem of FreeBSD recognizes devices with bad
- habits by looking at the INQUIRY response they send when probed.
- Because the INQUIRY response also includes the version number of
- the device firmware, it is even possible that for different
- firmware versions different workarounds are used. See e.g.
- <filename>/sys/scsi/st.c</filename> and
- <filename>/sys/scsi/scsiconf.c</filename> for more info on how
- this is done.</para>
-
- <para>This scheme works fine, but keep in mind that it of course
- only works for devices that are known to be weird. If you are the
- first to connect your bogus Mumbletech SCSI CD-ROM you might be
- the one that has to define which workaround is needed.</para>
-
- <para>After you got your Mumbletech working, please send the
- required workaround to the FreeBSD development team for inclusion
- in the next release of FreeBSD. Other Mumbletech owners will be
- grateful to you.</para>
- </sect4>
-
- <sect4>
- <title>Multiple LUN devices</title>
-
- <para>In some cases you come across devices that use multiple
- logical units (LUNs) on a single SCSI ID. In most cases FreeBSD
- only probes devices for LUN 0. An example are so called bridge
- boards that connect 2 non-SCSI harddisks to a SCSI bus (e.g. an
- Emulex MD21 found in old Sun systems).</para>
-
- <para>This means that any devices with LUNs != 0 are not normally
- found during device probe on system boot. To work around this
- problem you must add an appropriate entry in /sys/scsi/scsiconf.c
- and rebuild your kernel.</para>
-
- <para>Look for a struct that is initialized like below:</para>
-
- <programlisting>
-{
- T_DIRECT, T_FIXED, "MAXTOR", "XT-4170S", "B5A",
- "mx1", SC_ONE_LU
-}</programlisting>
-
- <para>For you Mumbletech BRIDGE2000 that has more than one LUN, acts
- as a SCSI disk and has firmware revision 123 you would add
- something like:</para>
-
- <programlisting>
-{
- T_DIRECT, T_FIXED, "MUMBLETECH", "BRIDGE2000", "123",
- "sd", SC_MORE_LUS
-}</programlisting>
-
- <para>The kernel on boot scans the inquiry data it receives against
- the table and acts accordingly. See the source for more
- info.</para>
- </sect4>
-
- <sect4>
- <title>Tagged command queueing</title>
-
- <para>Modern SCSI devices, particularly magnetic disks,
- support what is called tagged command queuing (TCQ).</para>
-
- <para>In a nutshell, TCQ allows the device to have multiple I/O
- requests outstanding at the same time. Because the device is
- intelligent, it can optimise its operations (like head
- positioning) based on its own request queue. On SCSI devices
- like RAID (Redundant Array of Independent Disks) arrays the TCQ
- function is indispensable to take advantage of the device's
- inherent parallelism.</para>
-
- <para>Each I/O request is uniquely identified by a &ldquo;tag&rdquo;
- (hence the name tagged command queuing) and this tag is used by
- FreeBSD to see which I/O in the device drivers queue is reported
- as complete by the device.</para>
-
- <para>It should be noted however that TCQ requires device driver
- support and that some devices implemented it &ldquo;not quite
- right&rdquo; in their firmware. This problem bit me once, and it
- leads to highly mysterious problems. In such cases, try to
- disable TCQ.</para>
- </sect4>
-
- <sect4>
- <title>Busmaster host adapters</title>
-
- <para>Most, but not all, SCSI host adapters are bus mastering
- controllers. This means that they can do I/O on their own without
- putting load onto the host CPU for data movement.</para>
-
- <para>This is of course an advantage for a multitasking operating
- system like FreeBSD. It must be noted however that there might be
- some rough edges.</para>
-
- <para>For instance an Adaptec 1542 controller can be set to use
- different transfer speeds on the host bus (ISA or AT in this
- case). The controller is settable to different rates because not
- all motherboards can handle the higher speeds. Problems like
- hangups, bad data etc might be the result of using a higher data
- transfer rate then your motherboard can stomach.</para>
-
- <para>The solution is of course obvious: switch to a lower data
- transfer rate and try if that works better.</para>
-
- <para>In the case of a Adaptec 1542, there is an option that can be
- put into the kernel config file to allow dynamic determination of
- the right, read: fastest feasible, transfer rate. This option is
- disabled by default:</para>
-
- <programlisting>
-options "TUNE_1542" #dynamic tune of bus DMA speed</programlisting>
-
- <para>Check the man pages for the host adapter that you use. Or
- better still, use the ultimate documentation (read: driver
- source).</para>
- </sect4>
- -->
- </sect3>
-
-
-
- <sect3>
- <title>*** R&eacute;soudre les probl&egrave;mes</title>
- &sgml.todo
-
- <!--
- <para>The following list is an attempt to give a guideline for the
- most common SCSI problems and their solutions. It is by no means
- complete.</para>
-
- <itemizedlist>
- <listitem>
- <para>Check for loose connectors and cables.</para>
- </listitem>
-
- <listitem>
- <para>Check and double check the location and number of your
- terminators.</para>
- </listitem>
-
- <listitem>
- <para>Check if your bus has at least one supplier of terminator
- power (especially with external terminators.</para>
- </listitem>
-
- <listitem>
- <para>Check if no double target IDs are used.</para>
- </listitem>
-
- <listitem>
- <para>Check if all devices to be used are powered up.</para>
- </listitem>
-
- <listitem>
- <para>Make a minimal bus config with as little devices as
- possible.</para>
- </listitem>
-
- <listitem>
- <para>If possible, configure your host adapter to use slow bus
- speeds.</para>
- </listitem>
-
- <listitem>
- <para>Disable tagged command queuing to make things as simple as
- possible (for a NCR hostadapter based system see man
- ncrcontrol)</para>
- </listitem>
-
- <listitem>
- <para>If you can compile a kernel, make one with the
- <literal>SCSIDEBUG</literal> option, and try accessing the
- device with debugging turned on for that device. If your device
- does not even probe at startup, you may have to define the
- address of the device that is failing, and the desired debug
- level in <filename>/sys/scsi/scsidebug.h</filename>. If it
- probes but just does not work, you can use the
- &man.scsi.8; command to dynamically set a debug level to
- it in a running kernel (if <literal>SCSIDEBUG</literal> is
- defined). This will give you <emphasis>copious</emphasis>
- debugging output with which to confuse the gurus. See
- <command>man 4 scsi</command> for more exact information. Also
- look at <command>man 8 scsi</command>.</para>
- </listitem>
- </itemizedlist>
- -->
- </sect3>
-
-
- <sect3 id="scsi-further-reading">
- <title>*** Lectures compl&eacute;mentaires</title>
- &sgml.todo
-
- <!--
- <para>If you intend to do some serious SCSI hacking, you might want to
- have the official standard at hand:</para>
-
- <para>Approved American National Standards can be purchased from
- ANSI at
-
- <address>
- <otheraddr>13th Floor</otheraddr>
- <street>11 West 42nd Street</street>
- <city>New York</city>
- <state>NY</state> <postcode>10036</postcode>
- Sales Dept: <phone>(212) 642-4900</phone>
- </address>
- </para>
-
- <para>You can also buy many ANSI
- standards and most committee draft documents from Global
- Engineering Documents,
-
- <address>
- <street>15 Inverness Way East</street>
- <city>Englewood</city>
- <state>CO</state>, <postcode>80112-5704</postcode>
- Phone: <phone>(800) 854-7179</phone>
- Outside USA and Canada: <phone>(303) 792-2181</phone>
- Fax: <fax>(303) 792- 2192</fax>
- </address>
- </para>
-
- <para>Many X3T10 draft documents are available electronically on the
- SCSI BBS (719-574-0424) and on the <hostid
- role="fqdn">ncrinfo.ncr.com</hostid> anonymous ftp site.</para>
-
- <para>Latest X3T10 committee documents are:</para>
-
- <itemizedlist>
- <listitem>
- <para>AT Attachment (ATA or IDE) [X3.221-1994]
- (<emphasis>Approved</emphasis>)</para>
- </listitem>
-
- <listitem>
- <para>ATA Extensions (ATA-2) [X3T10/948D Rev 2i]</para>
- </listitem>
-
- <listitem>
- <para>Enhanced Small Device Interface (ESDI)
- [X3.170-1990/X3.170a-1991]
- (<emphasis>Approved</emphasis>)</para>
- </listitem>
-
- <listitem>
- <para>Small Computer System Interface &mdash; 2 (SCSI-2)
- [X3.131-1994] (<emphasis>Approved</emphasis>)</para>
- </listitem>
-
- <listitem>
- <para>SCSI-2 Common Access Method Transport and SCSI Interface
- Module (CAM) [X3T10/792D Rev 11]</para>
- </listitem>
- </itemizedlist>
-
- <para>Other publications that might provide you with additional
- information are:</para>
-
- <itemizedlist>
- <listitem>
- <para>&ldquo;SCSI: Understanding the Small Computer System
- Interface&rdquo;, written by NCR Corporation. Available from:
- Prentice Hall, Englewood Cliffs, NJ, 07632 Phone: (201) 767-5937
- ISBN 0-13-796855-8</para>
- </listitem>
-
- <listitem>
- <para>&ldquo;Basics of SCSI&rdquo;, a SCSI tutorial written by
- Ancot Corporation Contact Ancot for availability information at:
- Phone: (415) 322-5322 Fax: (415) 322-0455</para>
- </listitem>
-
- <listitem>
- <para>&ldquo;SCSI Interconnection Guide Book&rdquo;, an AMP
- publication (dated 4/93, Catalog 65237) that lists the various
- SCSI connectors and suggests cabling schemes. Available from
- AMP at (800) 522-6752 or (717) 564-0100</para>
- </listitem>
-
- <listitem>
- <para>&ldquo;Fast Track to SCSI&rdquo;, A Product Guide written by
- Fujitsu. Available from: Prentice Hall, Englewood Cliffs, NJ,
- 07632 Phone: (201) 767-5937 ISBN 0-13-307000-X</para>
- </listitem>
-
- <listitem>
- <para>&ldquo;The SCSI Bench Reference&rdquo;, &ldquo;The SCSI
- Encyclopedia&rdquo;, and the &ldquo;SCSI Tutor&rdquo;, ENDL
- Publications, 14426 Black Walnut Court, Saratoga CA, 95070
- Phone: (408) 867-6642</para>
- </listitem>
-
- <listitem>
- <para>&ldquo;Zadian SCSI Navigator&rdquo; (quick ref. book) and
- &ldquo;Discover the Power of SCSI&rdquo; (First book along with
- a one-hour video and tutorial book), Zadian Software, Suite 214,
- 1210 S. Bascom Ave., San Jose, CA 92128, (408) 293-0800</para>
- </listitem>
- </itemizedlist>
-
- <para>On Usenet the newsgroups <ulink
- URL="news:comp.periphs.scsi">comp.periphs.scsi</ulink> and <ulink
- URL="news:comp.periphs">comp.periphs</ulink> are noteworthy places
- to look for more info. You can also find the SCSI-Faq there, which
- is posted periodically.</para>
-
- <para>Most major SCSI device and host adapter suppliers operate ftp
- sites and/or BBS systems. They may be valuable sources of
- information about the devices you own.</para>
- -->
- </sect3>
- </sect2>
-
- <sect2 id="hw-storage-controllers">
- <title>* Contr&ocirc;leurs de disques/bandes</title>
- <sect3>
- <title>* SCSI</title>
- <para></para>
- </sect3>
- <sect3>
- <title>* IDE</title>
- <para></para>
- </sect3>
- <sect3>
- <title>* Disquettes</title>
- <para></para>
- </sect3>
- </sect2>
-
- <sect2>
- <title>*** Disques durs</title>
-
- <sect3>
- <title>*** Disques durs SCSI</title>
- &sgml.todo;
-<!--
- <para><emphasis>Contributed by &a.asami;. 17 February
- 1998.</emphasis></para>
-
- <para>As mentioned in the <link linkend="scsi">SCSI</link> section,
- virtually all SCSI hard drives sold today are SCSI-2 compliant and
- thus will work fine as long as you connect them to a supported SCSI
- host adapter. Most problems people encounter are either due to
- badly designed cabling (cable too long, star topology, etc.),
- insufficient termination, or defective parts. Please refer to the
- <link linkend="scsi">SCSI</link> section first if your SCSI hard
- drive is not working. However, there are a couple of things you may
- want to take into account before you purchase SCSI hard drives for
- your system.</para>
-
- <sect4>
- <title>Rotational speed</title>
-
- <para>Rotational speeds of SCSI drives sold today range from around
- 4,500RPM to 10,000RPM. Most of them are either 5,400RPM or
- 7,200RPM. Even though the 7,200RPM drives can generally transfer
- data faster, they run considerably hotter than their 5,400RPM
- counterparts. A large fraction of today's disk drive malfunctions
- are heat-related. If you do not have very good cooling in your PC
- case, you may want to stick with 5,400RPM or slower drives.</para>
-
- <para>Note that newer drives, with higher areal recording densities,
- can deliver much more bits per rotation than older ones. Today's
- top-of-line 5,400RPM drives can sustain a throughput comparable to
- 7,200RPM drives of one or two model generations ago. The number
- to find on the spec sheet for bandwidth is &ldquo;internal data
- (or transfer) rate&rdquo;. It is usually in megabits/sec so
- divide it by 8 and you'll get the rough approximation of how much
- megabytes/sec you can get out of the drive.</para>
-
- <para>(If you are a speed maniac and want a 10,000RPM drive for your
- cute little peecee, be my guest; however, those drives become
- extremely hot. Don't even think about it if you don't have a fan
- blowing air <emphasis>directly at</emphasis> the drive or a
- properly ventilated disk enclosure.)</para>
-
- <para>Obviously, the latest 10,000RPM drives and 7,200RPM drives can
- deliver more data than the latest 5,400RPM drives, so if absolute
- bandwidth is the necessity for your applications, you have little
- choice but to get the faster drives. Also, if you need low
- latency, faster drives are better; not only do they usually have
- lower average seek times, but also the rotational delay is one
- place where slow-spinning drives can never beat a faster one.
- (The average rotational latency is half the time it takes to
- rotate the drive once; thus, it's 3 milliseconds for 10,000RPM
- drives, 4.2ms for 7,200RPM drives and 5.6ms for 5,400RPM drives.)
- Latency is seek time plus rotational delay. Make sure you
- understand whether you need low latency or more accesses per
- second, though; in the latter case (e.g., news servers), it may
- not be optimal to purchase one big fast drive. You can achieve
- similar or even better results by using the ccd (concatenated
- disk) driver to create a striped disk array out of multiple slower
- drives for comparable overall cost.</para>
-
- <para>Make sure you have adequate air flow around the drive,
- especially if you are going to use a fast-spinning drive. You
- generally need at least 1/2" (1.25cm) of spacing above and below a
- drive. Understand how the air flows through your PC case. Most
- cases have the power supply suck the air out of the back. See
- where the air flows in, and put the drive where it will have the
- largest volume of cool air flowing around it. You may need to seal
- some unwanted holes or add a new fan for effective cooling.</para>
-
- <para>Another consideration is noise. Many 7,200 or faster drives
- generate a high-pitched whine which is quite unpleasant to most
- people. That, plus the extra fans often required for cooling, may
- make 7,200 or faster drives unsuitable for some office and home
- environments.</para>
- </sect4>
-
- <sect4>
- <title>Form factor</title>
-
- <para>Most SCSI drives sold today are of 3.5" form factor. They
- come in two different heights; 1.6" (&ldquo;half-height&rdquo;) or
- 1" (&ldquo;low-profile&rdquo;). The half-height drive is the same
- height as a CD-ROM drive. However, don't forget the spacing rule
- mentioned in the previous section. If you have three standard
- 3.5" drive bays, you will not be able to put three half-height
- drives in there (without frying them, that is).</para>
- </sect4>
-
- <sect4>
- <title>Interface</title>
-
- <para>The majority of SCSI hard drives sold today are Ultra or
- Ultra-wide SCSI. The maximum bandwidth of Ultra SCSI is 20MB/sec,
- and Ultra-wide SCSI is 40MB/sec. There is no difference in max
- cable length between Ultra and Ultra-wide; however, the more
- devices you have on the same bus, the sooner you will start having
- bus integrity problems. Unless you have a well-designed disk
- enclosure, it is not easy to make more than 5 or 6 Ultra SCSI
- drives work on a single bus.</para>
-
- <para>On the other hand, if you need to connect many drives, going
- for Fast-wide SCSI may not be a bad idea. That will have the same
- max bandwidth as Ultra (narrow) SCSI, while electronically it's
- much easier to get it &ldquo;right&rdquo;. My advice would be: if
- you want to connect many disks, get wide SCSI drives; they usually
- cost a little more but it may save you down the road. (Besides,
- if you can't afford the cost difference, you shouldn't be building
- a disk array.)</para>
-
- <para>There are two variant of wide SCSI drives; 68-pin and 80-pin
- SCA (Single Connector Attach). The SCA drives don't have a
- separate 4-pin power connector, and also read the SCSI ID settings
- through the 80-pin connector. If you are really serious about
- building a large storage system, get SCA drives and a good SCA
- enclosure (dual power supply with at least one extra fan). They
- are more electronically sound than 68-pin counterparts because
- there is no &ldquo;stub&rdquo; of the SCSI bus inside the disk
- canister as in arrays built from 68-pin drives. They are easier
- to install too (you just need to screw the drive in the canister,
- instead of trying to squeeze in your fingers in a tight place to
- hook up all the little cables (like the SCSI ID and disk activity
- LED lines).</para>
- </sect4>
- -->
- </sect3>
-
- <sect3>
- <title>* Disques durs IDE</title>
- <para></para>
- </sect3>
- </sect2>
-
- <sect2>
- <title>*** Contr&ocirc;leurs de bande</title>
-<!--
- <para><emphasis>Contributed by &a.jmb;. 2 July
- 1996.</emphasis></para>
--->
- <sect3>
- <title>*** Commandes g&eacute;n&eacute;rales d'acc&egrave;s aux bandes</title>
-
- &sgml.todo
- <!--
- <para>&man.mt.1; provides generic access to the tape drives. Some of
- the more common commands are <command>rewind</command>,
- <command>erase</command>, and <command>status</command>. See the
- &man.mt.1; manual page for a detailed description.</para>
- &sgml.todo;
- -->
- </sect3>
- <sect3>
- <title>*** Interfaces et contr&ocirc;leurs</title>
- &sgml.todo
- <!--
- <para>There are several different interfaces that support tape drives.
- The interfaces are SCSI, IDE, Floppy and Parallel Port. A wide
- variety of tape drives are available for these interfaces.
- Controllers are discussed in <link
- linkend="hw-storage-controllers">Disk/tape
- controllers</link>.</para>
- -->
- </sect3>
- <sect3>
- <title>*** Lecteurs SCSI</title>
- &sgml.todo
- <!--
-
- <para>The &man.st.4; driver provides support for 8mm (Exabyte), 4mm
- (DAT: Digital Audio Tape), QIC (Quarter-Inch Cartridge), DLT
- (Digital Linear Tape), QIC Minicartridge and 9-track (remember the
- big reels that you see spinning in Hollywood computer rooms) tape
- drives. See the &man.st.4; manual page for a detailed
- description.</para>
-
- <para>The drives listed below are currently being used by members of
- the FreeBSD community. They are not the only drives that will work
- with FreeBSD. They just happen to be the ones that we use.</para>
-
- <sect4>
- <title>4mm (DAT: Digital Audio Tape)</title>
-
- <para><link linkend="hw-storage-python">Archive Python</link></para>
-
- <para><link linkend="hw-storage-hp1533a">HP C1533A</link></para>
-
- <para><link linkend="hw-storage-hp1534a">HP C1534A</link></para>
-
- <para><link linkend="hw-storage-hp35450a">HP 35450A</link></para>
-
- <para><link linkend="hw-storage-hp35470a">HP 35470A</link></para>
-
- <para><link linkend="hw-storage-hp35480a">HP 35480A</link></para>
-
- <para><link linkend="hw-storage-sdt5000">SDT-5000</link></para>
-
- <para><link linkend="hw-storage-wangtek6200">Wangtek
- 6200</link></para>
- </sect4>
-
- <sect4>
- <title>8mm (Exabyte)</title>
-
- <para><link linkend="hw-storage-exb8200">EXB-8200</link></para>
-
- <para><link linkend="hw-storage-exb8500">EXB-8500</link></para>
-
- <para><link linkend="hw-storage-exb8505">EXB-8505</link></para>
- </sect4>
-
- <sect4>
- <title>QIC (Quarter-Inch Cartridge)</title>
-
- <para><link linkend="hw-storage-anaconda">Archive Ananconda
- 2750</link></para>
-
- <para><link linkend="hw-storage-viper60">Archive Viper
- 60</link></para>
-
- <para><link linkend="hw-storage-viper150">Archive Viper
- 150</link></para>
-
- <para><link linkend="hw-storage-viper2525">Archive Viper
- 2525</link></para>
-
- <para><link linkend="hw-storage-tandberg3600">Tandberg TDC
- 3600</link></para>
-
- <para><link linkend="hw-storage-tandberg3620">Tandberg TDC
- 3620</link></para>
-
- <para><link linkend="hw-storage-tandberg4222">Tandberg TDC
- 4222</link></para>
-
- <para><link linkend="hw-storage-wangtek5525es">Wangtek
- 5525ES</link></para>
- </sect4>
-
- <sect4>
- <title>DLT (Digital Linear Tape)</title>
-
- <para><link linkend="hw-storage-dectz87">Digital TZ87</link></para>
- </sect4>
-
- <sect4>
- <title>Mini-Cartridge</title>
-
- <para><link linkend="hw-storage-ctms3200">Conner CTMS
- 3200</link></para>
-
- <para><link linkend="hw-storage-exb2501">Exabyte 2501</link></para>
- </sect4>
-
- <sect4>
- <title>Autoloaders/Changers</title>
-
- <para><link linkend="hw-storage-hp1553a">Hewlett-Packard HP C1553A
- Autoloading DDS2</link></para>
- </sect4>
-
- -->
- </sect3>
- <sect3>
- <title>* Lecteurs IDE</title>
- <para></para>
- </sect3>
- <sect3>
- <title>* Lecteurs sur contr&ocirc;leur de disquette</title>
- &sgml.todo
-<!--
- o&ugrave; est pass&eacute; le source ?????
--->
-
-
-
- </sect3>
- <sect3>
- <title>* Lecteurs sur port parall&egrave;le</title>
- <para></para>
- </sect3>
- <sect3>
- <title>*** Informations d&eacute;taill&eacute;es</title>
- &sgml.todo
- <!--
- <sect4 id="hw-storage-anaconda">
- <title>Archive Anaconda 2750</title>
-
- <para>The boot message identifier for this drive is <literal>ARCHIVE
- ANCDA 2750 28077 -003 type 1 removable SCSI 2</literal></para>
-
- <para>This is a QIC tape drive.</para>
-
- <para>Native capacity is 1.35GB when using QIC-1350 tapes. This
- drive will read and write QIC-150 (DC6150), QIC-250 (DC6250), and
- QIC-525 (DC6525) tapes as well.</para>
-
- <para>Data transfer rate is 350kB/s using
- &man.dump.8;. Rates of 530kB/s have been reported when using
- <link linkend="backups-programs-amanda">Amanda</link></para>
-
- <para>Production of this drive has been discontinued.</para>
-
- <para>The SCSI bus connector on this tape drive is reversed from
- that on most other SCSI devices. Make sure that you have enough
- SCSI cable to twist the cable one-half turn before and after the
- Archive Anaconda tape drive, or turn your other SCSI devices
- upside-down.</para>
-
- <para>Two kernel code changes are required to use this drive. This
- drive will not work as delivered.</para>
-
- <para>If you have a SCSI-2 controller, short jumper 6. Otherwise,
- the drive behaves are a SCSI-1 device. When operating as a SCSI-1
- device, this drive, &ldquo;locks&rdquo; the SCSI bus during some
- tape operations, including: fsf, rewind, and rewoffl.</para>
-
- <para>If you are using the NCR SCSI controllers, patch the file
- <filename>/usr/src/sys/pci/ncr.c</filename> (as shown below).
- Build and install a new kernel.</para>
-
- <programlisting>
-*** 4831,4835 ****
- };
-
-! if (np-&gt;latetime&gt;4) {
- /*
- ** Although we tried to wake it up,
-Remplacer les '*' par des '-'
-*** 4831,4836 ****
- };
-
-! if (np-&gt;latetime&gt;1200) {
- /*
- ** Although we tried to wake it up,</programlisting>
-
- <para>Reported by: &a.jmb;</para>
- </sect4>
-
- <sect4 id="hw-storage-python">
- <title>Archive Python</title>
-
- <para>The boot message identifier for this drive is <literal>ARCHIVE
- Python 28454-XXX4ASB</literal> <literal>type 1 removable SCSI
- 2</literal> <literal>density code 0x8c, 512-byte
- blocks</literal></para>
-
- <para>This is a DDS-1 tape drive.</para>
-
- <para>Native capacity is 2.5GB on 90m tapes.</para>
-
- <para>Data transfer rate is XXX.</para>
-
- <para>This drive was repackaged by Sun Microsystems as model
- 411.</para>
-
- <para>Reported by: Bob Bishop <email>rb@gid.co.uk</email></para>
- </sect4>
-
- <sect4 id="hw-storage-viper60">
- <title>Archive Viper 60</title>
-
- <para>The boot message identifier for this drive is <literal>ARCHIVE
- VIPER 60 21116 -007</literal> <literal>type 1 removable SCSI
- 1</literal></para>
-
- <para>This is a QIC tape drive.</para>
-
- <para>Native capacity is 60MB.</para>
-
- <para>Data transfer rate is XXX.</para>
-
- <para>Production of this drive has been discontinued.</para>
-
- <para>Reported by: Philippe Regnauld
- <email>regnauld@hsc.fr</email></para>
- </sect4>
-
- <sect4 id="hw-storage-viper150">
- <title>Archive Viper 150</title>
-
- <para>The boot message identifier for this drive is <literal>ARCHIVE
- VIPER 150 21531 -004</literal> <literal>Archive Viper 150 is a
- known rogue</literal> <literal>type 1 removable SCSI
- 1</literal>. A multitude of firmware revisions exist for this
- drive. Your drive may report different numbers (e.g
- <literal>21247 -005</literal>.</para>
-
- <para>This is a QIC tape drive.</para>
-
- <para>Native capacity is 150/250MB. Both 150MB (DC6150) and 250MB
- (DC6250) tapes have the recording format. The 250MB tapes are
- approximately 67% longer than the 150MB tapes. This drive can
- read 120MB tapes as well. It can not write 120MB tapes.</para>
-
- <para>Data transfer rate is 100kB/s</para>
-
- <para>This drive reads and writes DC6150 (150MB) and DC6250 (250MB)
- tapes.</para>
-
- <para>This drives quirks are known and pre-compiled into the scsi
- tape device driver (&man.st.4;).</para>
-
- <para>Under FreeBSD 2.2-current, use <command>mt blocksize
- 512</command> to set the blocksize. (The particular drive had
- firmware revision 21247 -005. Other firmware revisions may behave
- differently) Previous versions of FreeBSD did not have this
- problem.</para>
-
- <para>Production of this drive has been discontinued.</para>
-
- <para>Reported by: Pedro A M Vazquez
- <email>vazquez@IQM.Unicamp.BR</email></para>
-
- <para>Mike Smith
- <email>msmith@atrad.adelaide.edu.au</email></para>
- </sect4>
-
- <sect4 id="hw-storage-viper2525">
- <title>Archive Viper 2525</title>
-
- <para>The boot message identifier for this drive is <literal>ARCHIVE
- VIPER 2525 25462 -011</literal> <literal>type 1 removable SCSI
- 1</literal></para>
-
- <para>This is a QIC tape drive.</para>
-
- <para>Native capacity is 525MB.</para>
-
- <para>Data transfer rate is 180kB/s at 90 inches/sec.</para>
-
- <para>The drive reads QIC-525, QIC-150, QIC-120 and QIC-24 tapes.
- Writes QIC-525, QIC-150, and QIC-120.</para>
-
- <para>Firmware revisions prior to <literal>25462 -011</literal> are
- bug ridden and will not function properly.</para>
-
- <para>Production of this drive has been discontinued.</para>
- </sect4>
-
- <sect4 id="hw-storage-conner420r">
- <title>Conner 420R</title>
-
- <para>The boot message identifier for this drive is <literal>Conner
- tape</literal>.</para>
-
- <para>This is a floppy controller, minicartridge tape drive.</para>
-
- <para>Native capacity is XXXX</para>
-
- <para>Data transfer rate is XXX</para>
-
- <para>The drive uses QIC-80 tape cartridges.</para>
-
- <para>Reported by: Mark Hannon
- <email>mark@seeware.DIALix.oz.au</email></para>
- </sect4>
-
- <sect4 id="hw-storage-ctms3200">
- <title>Conner CTMS 3200</title>
-
- <para>The boot message identifier for this drive is <literal>CONNER
- CTMS 3200 7.00</literal> <literal>type 1 removable SCSI
- 2</literal>.</para>
-
- <para>This is a minicartridge tape drive.</para>
-
- <para>Native capacity is XXXX</para>
-
- <para>Data transfer rate is XXX</para>
-
- <para>The drive uses QIC-3080 tape cartridges.</para>
-
- <para>Reported by: Thomas S. Traylor
- <email>tst@titan.cs.mci.com</email></para>
- </sect4>
-
- <sect4 id="hw-storage-dectz87">
- <title><ulink
- URL="http://www.digital.com/info/Customer-Update/931206004.txt.html">DEC TZ87</ulink></title>
-
- <para>The boot message identifier for this drive is <literal>DEC
- TZ87 (C) DEC 9206</literal> <literal>type 1 removable SCSI
- 2</literal> <literal>density code 0x19</literal></para>
-
- <para>This is a DLT tape drive.</para>
-
- <para>Native capacity is 10GB.</para>
-
- <para>This drive supports hardware data compression.</para>
-
- <para>Data transfer rate is 1.2MB/s.</para>
-
- <para>This drive is identical to the Quantum DLT2000. The drive
- firmware can be set to emulate several well-known drives,
- including an Exabyte 8mm drive.</para>
-
- <para>Reported by: &a.wilko;</para>
- </sect4>
-
- <sect4 id="hw-storage-exb2501">
- <title><ulink
- URL="http://www.Exabyte.COM:80/Products/Minicartridge/2501/Rfeatures.html">Exabyte EXB-2501</ulink></title>
-
- <para>The boot message identifier for this drive is <literal>EXABYTE
- EXB-2501</literal></para>
-
- <para>This is a mini-cartridge tape drive.</para>
-
- <para>Native capacity is 1GB when using MC3000XL
- minicartridges.</para>
-
- <para>Data transfer rate is XXX</para>
-
- <para>This drive can read and write DC2300 (550MB), DC2750 (750MB),
- MC3000 (750MB), and MC3000XL (1GB) minicartridges.</para>
-
- <para>WARNING: This drive does not meet the SCSI-2 specifications.
- The drive locks up completely in response to a SCSI MODE_SELECT
- command unless there is a formatted tape in the drive. Before
- using this drive, set the tape blocksize with</para>
-
- <screen>&prompt.root; <userinput>mt -f /dev/st0ctl.0 blocksize 1024</userinput></screen>
-
- <para>Before using a minicartridge for the first time, the
- minicartridge must be formated. FreeBSD 2.1.0-RELEASE and
- earlier:</para>
-
- <screen>&prompt.root; <userinput>/sbin/scsi -f /dev/rst0.ctl -s 600 -c "4 0 0 0 0 0"</userinput></screen>
-
- <para>(Alternatively, fetch a copy of the
- <command>scsiformat</command> shell script from FreeBSD
- 2.1.5/2.2.) FreeBSD 2.1.5 and later:</para>
-
- <screen>&prompt.root; <userinput>/sbin/scsiformat -q -w /dev/rst0.ctl</userinput></screen>
-
- <para>Right now, this drive cannot really be recommended for
- FreeBSD.</para>
-
- <para>Reported by: Bob Beaulieu
- <email>ez@eztravel.com</email></para>
- </sect4>
-
- <sect4 id="hw-storage-exb8200">
- <title>Exabyte EXB-8200</title>
-
- <para>The boot message identifier for this drive is <literal>EXABYTE
- EXB-8200 252X</literal> <literal>type 1 removable SCSI
- 1</literal></para>
-
- <para>This is an 8mm tape drive.</para>
-
- <para>Native capacity is 2.3GB.</para>
-
- <para>Data transfer rate is 270kB/s.</para>
-
- <para>This drive is fairly slow in responding to the SCSI bus during
- boot. A custom kernel may be required (set SCSI_DELAY to 10
- seconds).</para>
-
- <para>There are a large number of firmware configurations for this
- drive, some have been customized to a particular vendor's
- hardware. The firmware can be changed via EPROM
- replacement.</para>
-
- <para>Production of this drive has been discontinued.</para>
-
- <para>Reported by: Mike Smith
- <email>msmith@atrad.adelaide.edu.au</email></para>
- </sect4>
-
- <sect4 id="hw-storage-exb8500">
- <title>Exabyte EXB-8500</title>
-
- <para>The boot message identifier for this drive is <literal>EXABYTE
- EXB-8500-85Qanx0 0415</literal> <literal>type 1 removable SCSI
- 2</literal></para>
-
- <para>This is an 8mm tape drive.</para>
-
- <para>Native capacity is 5GB.</para>
-
- <para>Data transfer rate is 300kB/s.</para>
-
- <para>Reported by: Greg Lehey <email>grog@lemis.de</email></para>
- </sect4>
-
- <sect4 id="hw-storage-exb8505">
- <title><ulink
- URL="http://www.Exabyte.COM:80/Products/8mm/8505XL/Rfeatures.html">Exabyte EXB-8505</ulink></title>
-
- <para>The boot message identifier for this drive is
- <literal>EXABYTE EXB-85058SQANXR1 05B0</literal> <literal>type 1
- removable SCSI 2</literal></para>
-
- <para>This is an 8mm tape drive which supports compression, and is
- upward compatible with the EXB-5200 and EXB-8500.</para>
-
- <para>Native capacity is 5GB.</para>
-
- <para>The drive supports hardware data compression.</para>
-
- <para>Data transfer rate is 300kB/s.</para>
-
- <para>Reported by: Glen Foster
- <email>gfoster@gfoster.com</email></para>
- </sect4>
-
- <sect4 id="hw-storage-hp1533a">
- <title>Hewlett-Packard HP C1533A</title>
-
- <para>The boot message identifier for this drive is <literal>HP
- C1533A 9503</literal> <literal>type 1 removable SCSI
- 2</literal>.</para>
-
- <para>This is a DDS-2 tape drive. DDS-2 means hardware data
- compression and narrower tracks for increased data
- capacity.</para>
-
- <para>Native capacity is 4GB when using 120m tapes. This drive
- supports hardware data compression.</para>
-
- <para>Data transfer rate is 510kB/s.</para>
-
- <para>This drive is used in Hewlett-Packard's SureStore 6000eU and
- 6000i tape drives and C1533A DDS-2 DAT drive.</para>
-
- <para>The drive has a block of 8 dip switches. The proper settings
- for FreeBSD are: 1 ON; 2 ON; 3 OFF; 4 ON; 5 ON; 6 ON; 7 ON; 8
- ON.</para>
-
- <informaltable frame="none">
- <tgroup cols="3">
- <thead>
- <row>
- <entry>switch 1</entry>
- <entry>switch 2</entry>
- <entry>Result</entry>
- </row>
- </thead>
-
- <tbody>
- <row>
- <entry>On</entry>
- <entry>On</entry>
- <entry>Compression enabled at power-on, with host
- control</entry>
- </row>
-
- <row>
- <entry>On</entry>
- <entry>Off</entry>
- <entry>Compression enabled at power-on, no host
- control</entry>
- </row>
-
- <row>
- <entry>Off</entry>
- <entry>On</entry>
- <entry>Compression disabled at power-on, with host
- control</entry>
- </row>
-
- <row>
- <entry>Off</entry>
- <entry>Off</entry>
- <entry>Compression disabled at power-on, no host
- control</entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
-
- <para>Switch 3 controls MRS (Media Recognition System). MRS tapes
- have stripes on the transparent leader. These identify the tape
- as DDS (Digital Data Storage) grade media. Tapes that do not have
- the stripes will be treated as write-protected. Switch 3 OFF
- enables MRS. Switch 3 ON disables MRS.</para>
-
- <para>See <ulink URL="http://www.hp.com/tape/c_intro.html">HP
- SureStore Tape Products</ulink> and <ulink
- URL="http://www.impediment.com/hp/hp_technical.html">Hewlett-Packard
- Disk and Tape Technical Information</ulink> for more information
- on configuring this drive.</para>
-
- <para><emphasis>Warning:</emphasis> Quality control on these drives
- varies greatly. One FreeBSD core-team member has returned 2 of
- these drives. Neither lasted more than 5 months.</para>
-
- <para>Reported by: &a.se;</para>
- </sect4>
-
- <sect4 id="hw-storage-hp1534a">
- <title>Hewlett-Packard HP 1534A</title>
-
- <para>The boot message identifier for this drive is <literal>HP
- HP35470A T503</literal> <literal>type 1 removable SCSI
- 2</literal> <literal>Sequential-Access density code 0x13,
- variable blocks</literal>.</para>
-
- <para>This is a DDS-1 tape drive. DDS-1 is the original DAT tape
- format.</para>
-
- <para>Native capacity is 2GB when using 90m tapes.</para>
-
- <para>Data transfer rate is 183kB/s.</para>
-
- <para>The same mechanism is used in Hewlett-Packard's SureStore
- <ulink URL="http://www.dmo.hp.com/tape/sst2000.htm">2000i</ulink>
- tape drive, C35470A DDS format DAT drive, C1534A DDS format DAT
- drive and HP C1536A DDS format DAT drive.</para>
-
- <para>The HP C1534A DDS format DAT drive has two indicator lights,
- one green and one amber. The green one indicates tape action:
- slow flash during load, steady when loaded, fast flash during
- read/write operations. The amber one indicates warnings: slow
- flash when cleaning is required or tape is nearing the end of its
- useful life, steady indicates an hard fault. (factory service
- required?)</para>
-
- <para>Reported by Gary Crutcher
- <email>gcrutchr@nightflight.com</email></para>
- </sect4>
-
- <sect4 id="hw-storage-hp1553a">
- <title>Hewlett-Packard HP C1553A Autoloading DDS2</title>
-
- <para>The boot message identifier for this drive is "".</para>
-
- <para>This is a DDS-2 tape drive with a tape changer. DDS-2 means
- hardware data compression and narrower tracks for increased data
- capacity.</para>
-
- <para>Native capacity is 24GB when using 120m tapes. This drive
- supports hardware data compression.</para>
-
- <para>Data transfer rate is 510kB/s (native).</para>
-
- <para>This drive is used in Hewlett-Packard's SureStore <ulink
- URL="http://www.dmo.hp.com/tape/sst12000.htm">12000e</ulink>
- tape drive.</para>
-
- <para>The drive has two selectors on the rear panel. The selector
- closer to the fan is SCSI id. The other selector should be set to
- 7.</para>
-
- <para>There are four internal switches. These should be set: 1 ON;
- 2 ON; 3 ON; 4 OFF.</para>
-
- <para>At present the kernel drivers do not automatically change
- tapes at the end of a volume. This shell script can be used to
- change tapes:</para>
-
- <programlisting>
-#!/bin/sh
-PATH="/sbin:/usr/sbin:/bin:/usr/bin"; export PATH
-
-usage()
-{
- echo "Usage: dds_changer [123456ne] raw-device-name
- echo "1..6 = Select cartridge"
- echo "next cartridge"
- echo "eject magazine"
- exit 2
-}
-
-if [ $# -ne 2 ] ; then
- usage
-fi
-
-cdb3=0
-cdb4=0
-cdb5=0
-
-case $1 in
- [123456])
- cdb3=$1
- cdb4=1
- ;;
- n)
- ;;
- e)
- cdb5=0x80
- ;;
- ?)
- usage
- ;;
-esac
-
-scsi -f $2 -s 100 -c "1b 0 0 $cdb3 $cdb4 $cdb5"</programlisting>
- </sect4>
-
- <sect4 id="hw-storage-hp35450a">
- <title>Hewlett-Packard HP 35450A</title>
-
- <para>The boot message identifier for this drive is <literal>HP
- HP35450A -A C620</literal> <literal>type 1 removable SCSI
- 2</literal> <literal>Sequential-Access density code
- 0x13</literal></para>
-
- <para>This is a DDS-1 tape drive. DDS-1 is the original DAT tape
- format.</para>
-
- <para>Native capacity is 1.2GB.</para>
-
- <para>Data transfer rate is 160kB/s.</para>
-
- <para>Reported by: mark thompson
- <email>mark.a.thompson@pobox.com</email></para>
- </sect4>
-
- <sect4 id="hw-storage-hp35470a">
- <title>Hewlett-Packard HP 35470A</title>
-
- <para>The boot message identifier for this drive is <literal>HP
- HP35470A 9 09</literal> <literal>type 1 removable SCSI
- 2</literal></para>
-
- <para>This is a DDS-1 tape drive. DDS-1 is the original DAT tape
- format.</para>
-
- <para>Native capacity is 2GB when using 90m tapes.</para>
-
- <para>Data transfer rate is 183kB/s.</para>
-
- <para>The same mechanism is used in Hewlett-Packard's SureStore
- <ulink URL="http://www.dmo.hp.com/tape/sst2000.htm">2000i</ulink>
- tape drive, C35470A DDS format DAT drive, C1534A DDS format DAT
- drive, and HP C1536A DDS format DAT drive.</para>
-
- <para><emphasis>Warning:</emphasis> Quality control on these drives
- varies greatly. One FreeBSD core-team member has returned 5 of
- these drives. None lasted more than 9 months.</para>
-
- <para>Reported by: David Dawes
- <email>dawes@rf900.physics.usyd.edu.au</email> (9 09)</para>
-
- </sect4>
-
- <sect4 id="hw-storage-hp35480a">
- <title>Hewlett-Packard HP 35480A</title>
-
- <para>The boot message identifier for this drive is <literal>HP
- HP35480A 1009</literal> <literal>type 1 removable SCSI
- 2</literal> <literal>Sequential-Access density code
- 0x13</literal>.</para>
-
- <para>This is a DDS-DC tape drive. DDS-DC is DDS-1 with hardware
- data compression. DDS-1 is the original DAT tape format.</para>
-
- <para>Native capacity is 2GB when using 90m tapes. It cannot handle
- 120m tapes. This drive supports hardware data compression.
- Please refer to the section on <link
- linkend="hw-storage-hp1533a">HP C1533A</link> for the proper
- switch settings.</para>
-
- <para>Data transfer rate is 183kB/s.</para>
-
- <para>This drive is used in Hewlett-Packard's SureStore <ulink
- URL="http://www.dmo.hp.com/tape/sst5000.htm">5000eU</ulink> and
- <ulink URL="http://www.dmo.hp.com/tape/sst5000.htm">5000i</ulink>
- tape drives and C35480A DDS format DAT drive..</para>
-
- <para>This drive will occasionally hang during a tape eject
- operation (<command>mt offline</command>). Pressing the front
- panel button will eject the tape and bring the tape drive back to
- life.</para>
-
- <para>WARNING: HP 35480-03110 only. On at least two occasions this
- tape drive when used with FreeBSD 2.1.0, an IBM Server 320 and an
- 2940W SCSI controller resulted in all SCSI disk partitions being
- lost. The problem has not be analyzed or resolved at this
- time.</para>
- </sect4>
-
- <sect4 id="hw-storage-sdt5000">
- <title><ulink
- URL="http://www.sel.sony.com/SEL/ccpg/storage/tape/t5000.html">Sony SDT-5000</ulink></title>
-
- <para>There are at least two significantly different models: one is
- a DDS-1 and the other DDS-2. The DDS-1 version is
- <literal>SDT-5000 3.02</literal>. The DDS-2 version is
- <literal>SONY SDT-5000 327M</literal>. The DDS-2 version has a 1MB
- cache. This cache is able to keep the tape streaming in almost
- any circumstances.</para>
-
- <para>The boot message identifier for this drive is <literal>SONY
- SDT-5000 3.02</literal> <literal>type 1 removable SCSI
- 2</literal> <literal>Sequential-Access density code
- 0x13</literal></para>
-
- <para>Native capacity is 4GB when using 120m tapes. This drive
- supports hardware data compression.</para>
-
- <para>Data transfer rate is depends upon the model or the drive. The
- rate is 630kB/s for the <literal>SONY SDT-5000 327M</literal>
- while compressing the data. For the <literal>SONY SDT-5000
- 3.02</literal>, the data transfer rate is 225kB/s.</para>
-
- <para>In order to get this drive to stream, set the blocksize to 512
- bytes (<command>mt blocksize 512</command>) reported by Kenneth
- Merry ken@ulc199.residence.gatech.edu</para>
-
- <para><literal>SONY SDT-5000 327M</literal> information reported by
- Charles Henrich henrich@msu.edu</para>
-
- <para>Reported by: &a.jmz;</para>
- </sect4>
-
- <sect4 id="hw-storage-tandberg3600">
- <title>Tandberg TDC 3600</title>
-
- <para>The boot message identifier for this drive is
- <literal>TANDBERG TDC 3600 =08:</literal> <literal>type 1
- removable SCSI 2</literal></para>
-
- <para>This is a QIC tape drive.</para>
-
- <para>Native capacity is 150/250MB.</para>
-
- <para>This drive has quirks which are known and work around code is
- present in the scsi tape device driver (&man.st.4;).
- Upgrading the firmware to XXX version will fix the quirks and
- provide SCSI 2 capabilities.</para>
-
- <para>Data transfer rate is 80kB/s.</para>
-
- <para>IBM and Emerald units will not work. Replacing the firmware
- EPROM of these units will solve the problem.</para>
-
- <para>Reported by: Michael Smith
- <email>msmith@atrad.adelaide.edu.au</email></para>
- </sect4>
-
- <sect4 id="hw-storage-tandberg3620">
- <title>Tandberg TDC 3620</title>
-
- <para>This is very similar to the <link
- linkend="hw-storage-tandberg3600">Tandberg TDC 3600</link>
- drive.</para>
-
- <para>Reported by: &a.joerg;</para>
- </sect4>
-
- <sect4 id="hw-storage-tandberg4222">
- <title>Tandberg TDC 4222</title>
-
- <para>The boot message identifier for this drive is
- <literal>TANDBERG TDC 4222 =07</literal> <literal>type 1 removable
- SCSI 2</literal></para>
-
- <para>This is a QIC tape drive.</para>
-
- <para>Native capacity is 2.5GB. The drive will read all cartridges
- from the 60 MB (DC600A) upwards, and write 150 MB (DC6150)
- upwards. Hardware compression is optionally supported for the 2.5
- GB cartridges.</para>
-
- <para>This drives quirks are known and pre-compiled into the scsi
- tape device driver (&man.st.4;) beginning with FreeBSD
- 2.2-current. For previous versions of FreeBSD, use
- <command>mt</command> to read one block from the tape, rewind the
- tape, and then execute the backup program (<command>mt fsr 1; mt
- rewind; dump ...</command>)</para>
-
- <para>Data transfer rate is 600kB/s (vendor claim with compression),
- 350 KB/s can even be reached in start/stop mode. The rate
- decreases for smaller cartridges.</para>
-
- <para>Reported by: &a.joerg;</para>
- </sect4>
-
- <sect4 id="hw-storage-wangtek5525es">
- <title>Wangtek 5525ES</title>
-
- <para>The boot message identifier for this drive is <literal>WANGTEK
- 5525ES SCSI REV7 3R1</literal> <literal>type 1 removable SCSI
- 1</literal> <literal>density code 0x11, 1024-byte
- blocks</literal></para>
-
- <para>This is a QIC tape drive.</para>
-
- <para>Native capacity is 525MB.</para>
-
- <para>Data transfer rate is 180kB/s.</para>
-
- <para>The drive reads 60, 120, 150, and 525MB tapes. The drive will
- not write 60MB (DC600 cartridge) tapes. In order to overwrite 120
- and 150 tapes reliably, first erase (<command>mt erase</command>)
- the tape. 120 and 150 tapes used a wider track (fewer tracks per
- tape) than 525MB tapes. The &ldquo;extra&rdquo; width of the
- previous tracks is not overwritten, as a result the new data lies
- in a band surrounded on both sides by the previous data unless the
- tape have been erased.</para>
-
- <para>This drives quirks are known and pre-compiled into the scsi
- tape device driver (&man.st.4;).</para>
-
- <para>Other firmware revisions that are known to work are:
- M75D</para>
-
- <para>Reported by: Marc van Kempen <email>marc@bowtie.nl</email>
- <literal>REV73R1</literal> Andrew Gordon
- <email>Andrew.Gordon@net-tel.co.uk</email>
- <literal>M75D</literal></para>
- </sect4>
-
- <sect4 id="hw-storage-wangtek6200">
- <title>Wangtek 6200</title>
-
- <para>The boot message identifier for this drive is <literal>WANGTEK
- 6200-HS 4B18</literal> <literal>type 1 removable SCSI
- 2</literal> <literal>Sequential-Access density code
- 0x13</literal></para>
-
- <para>This is a DDS-1 tape drive.</para>
-
- <para>Native capacity is 2GB using 90m tapes.</para>
-
- <para>Data transfer rate is 150kB/s.</para>
-
- <para>Reported by: Tony Kimball <email>alk@Think.COM</email></para>
- </sect4>
- -->
- </sect3>
- <sect3>
- <title>* Lecteurs posant probl&egrave;me</title>
- <para></para>
- </sect3>
- </sect2>
-
- <sect2>
- <title>*** Contr&ocirc;leurs de CD-ROMs</title>
-
- &sgml.todo
- <!--
-
- <para><emphasis>Contribution de &a.obrien;. 23 Novembre
- 1997.</emphasis></para>
-
- <para>Comme mentionn&eacute; dans
- <link linkend="hw-jordans-picks-cdrom">Jordan's Picks</link>
- Generally speaking those in <emphasis>The FreeBSD
- Project</emphasis> prefer SCSI CDROM drives over IDE CDROM drives.
- However not all SCSI CDROM drives are equal. Some feel the quality of
- some SCSI CDROM drives have been deteriorating to that of IDE CDROM
- drives. Toshiba used to be the favored stand-by, but many on the SCSI
- mailing list have found displeasure with the 12x speed XM-5701TA as
- its volume (when playing audio CDROMs) is not controllable by the
- various audio player software.</para>
-
- <para>Another area where SCSI CDROM manufacturers are cutting corners is
- adhearance to the <link linkend="scsi-further-reading">SCSI
- specification</link>. Many SCSI CDROMs will respond to <link
- linkend="scsi-rogue-devices">multiple LUNs</link> for its target
- address. Known violators include the 6x Teac CD-56S 1.0D.</para>
- <para></para>
-
- -->
- </sect2>
-
- <sect2>
- <title>* Autres</title>
- <para></para>
- </sect2>
-
- <sect2>
- <title>* Ajouter et reconfigurer des disques</title>
- <para></para>
- </sect2>
-
- </sect1>
-
- <sect1 id="hw-other">
- <title>* Autres</title>
-
- <sect2>
- <title>* PCMCIA</title>
- <para></para>
- </sect2>
- </sect1>
- </chapter>
-<!--
- Local Variables:
- mode: sgml
- sgml-declaration: "../chapter.decl"
- sgml-indent-data: t
- sgml-omittag: nil
- sgml-shorttag: nil
- sgml-always-quote-attributes: t
- sgml-minimize-attributes: max
- sgml-parent-document: ("../handbook.sgml" "part" "chapter")
- End:
--->