Avanti Indietro Indice

2. Perche' PCI ?

2.1 Panoramica generale

L'architettura dei PC ha diverse possibilita' di scelta se si parla del BUS da usare:

ISA

16 od 8 bit, economico, lento (di solito 8Mhz), standard, molte schede disponibili>

EISA

32 bit, caro, veloce, poche schede disponibili, sta scomparendo>

MCA

32 o 16 bit, ex-proprietario-IBM, veloce, sta diventando raro>

VESA-Local-Bus

32 bit, basato sull'architettura 486, economico, veloce, molte scheda disponibili>

PCI-Local-Bus

32 bit (i 64 stanno arrivando), economico, veloce, molte schede disponibili, lo standard odierno>

L'architettura MCA funzionava bene, ma non ha mai avuto molto mercato, essendo usata solo su alcune tra le prime macchine IBM PS/2. C'erano veramente poche schede disponibili.

EISA era affidabile ma piuttosto caro e inteso piu' per utenti evoluti e per i servers che per l'utente medio. E' quello che ha meno schede disponibili tra questi bus dopo l'MCA.

ISA/VESA-Local-Bus ha avuto qualche problema con elevate velocita' del bus e non e' stato sempre affidabile ma, principalmente a causa del suo basso prezzo e delle sue prestazioni, se comparato con l'ISA, ha venduto molto. La maggioranza delle motherboards VESA dovrebbe essere stabile adesso. All'inizio del 1996 molte motherboards 486 supportano ancora questo standard ma PCI sta crescendo. I bus VESA sono legati alla velocita' del bus della memoria per i 486 e alla meta' di essa per i Pentium

PCI ora e' in vantaggio. Come l'EISA non e' propietario. E' piu' veloce di EISA ed MCA ed e' meno costoso. La stragrande maggioranza delle motherboards Pentium attualmente disponibili usa il bus PCI; il VESA sta scomparendo. Praticamente tutte le motherboards e le schede vendute all'inizio del 1996 sono a 32 bit e viaggiano a frequenze da 0 a 33MHz.

Oggigiorno la maggioranza delle motherboards Pentium fanno andare il bus PCI a una frequenza pari alla meta' di quella impiegata per il bus della memoria (i.e.: 33MHz dai 66MHz del bus della memoria per i P66, P100, P133, P166 e P200; 30MHz dai 60MHz del bus della memoria per i P60, P90, P120, P150 e P180; 25MHz dai 50MHz del bus della memoria per i P75). Questo dovrebbe valere anche per le motherboards Cyrix 6x86. L'implementazione del NexGen 5x86 non e' conosciuta. Le specifiche PCI permettono alla frequenza del bus di essere slegata da quella del processore ( ad ex. 33MHz con un P75) ma questo tipo di soluzione non e' ancora molto comune.

E' stato definito lo standard PCI 2.1 che permette i 64bit e frequenze da 0 a 66MHz ma per ora nessun chipset x86 lo supporta ( che io sappia, invece, molte motherboards Alpha lo supportano pienamente. N.d.T.). il PCI a 64bit probabilmente apparira' per primo in slot 32/64bit cosi' da preservare la compatibilita' con le schede esistenti a 32bit. Probabilmente per i 66MHz ci sara' da aspettare di piu' dato che l'implementazione e' piuttosto complicata: infatti non dovrebbe supportare piu' di due slots per bridge e puo' anche darsi che non riesca a lavorare bene con le schede a 33MHz

Lo standard PCI non e' dipendente dalla famiglia del processore: questo significa che posso benissimo usare la stessa scheda video PCI sia su un Alpha/PCI che su un 486/PCI (ovviamente entrambi con un appropriati BIOS e drivers ). Oltre ad Intel ed Alpha, anche alcune motherboards PowerPC impiegano il bus PCI.

State attenti ad alcune piccole variazioni sul tema: alcune implementazioni (tipicamente le motherboards piu' decenti N.d.T.) supportano il Bus Mastering su tutti gli slot PCI, altre solo su uno e altre ancora su nessuno; alcune supportano il bridging sulle schede e altre no.

2.2 Prestazioni

preso dalla prima propaganda a favore di PCI di Craig Sutphin

Al contrario di alcuni bus che sono mirati solo alla velocizzazione della grafica, il local bus PCI e' una soluzione per tutto il sistema, una soluzione che provvede maggiori prestazioni per le reti, per i dischi, per il video full-motion e per tutta la gamma di periferiche ad alte prestazioni. A 33MHz il bus PCI sincrono trasferisce 32bit di dati che equivalgono a una frequenza massima di 132MBytes/sec. Una estensione trasparente a 64bit dei bus dati e indirizzi puo' raddoppiare la larghezza di banda del bus stesso (264MBytes/sec) e offrire compatibilita' verso le periferiche sia a 32bit che a 64bit. A causa del fatto che e' indipendente dal processore, il bus PCI e' ottimizzato per le funzioni di I/O, permettendo che il local bus operi concorrentemente al sottosistema processore/memoria. Peri gli utenti di PC di alta gamma, il PCI porta alta affidabilita', alte prestazioni e facilita' di uso con costi ora piu' bassi di quanto non lo siano mai stati prima; questo non e' sicuramente un compito semplice con delle frequenze di clock sul bus di 33MHz. Modalita' di accesso lineare a lunghezza variabile o di accesso burst per entrambe le operazioni di lettura e scrittura migliora le prestazioni di sistemi grafici dipendenti dalla velocita' di scrittura. Grazie all'integrazione dei requisiti di caricamento e di frequenza del local bus a livello di componenti i buffers e la glue logic sono eliminati.

Vedetevi il capitolo sui Benchmarks per qualche numero ( forse senza significato ) sulle mainboards ASUS PCI con 486 e 586

2.3 Il chip SCSI-II NCR53c810 on board

Una caratteristica molto piacevole di alcune motherboards PCI e' il chip SCSI-II NCR53c810 on board che si dice che sia veloce come l'EISA Adaptec-1742, ma molto piu' economico. I drivers per DOS e OS2 sono disponibili. Drew Eckard ha rilasciato la sua versione del driver per NCR53c810 che e' contenuta direttamente nel kernel dalla versione 1.2.

E funziona cosi' bene che ho venduto la mia scheda adaptec-1542B-ISA appena ho comprato la motherboard ASUS SP3 (chipset Saturn): infatti il suo controller SCSI integrato NCR e' molto piu' veloce.

Il chip NCR53c810 e' on board su qualche motherboard PCI. Sono disponibili anche delle schede aggiuntive per circa US$ 70.00.

C'e' solo una cosa che non funzionava con i drivers per l'NCR quando li ho provati: Disconnect/Reconnect ( e' una funzione che dovrebbe servire a 'sconnettere' un device dal bus SCSI in caso di lunghe operazioni, cosi' da poterlo usare per qualche cosa d'altro: e' vitale se avete dei tapeDAT che dir si voglia, altrimenti ogni volta che chiedete un riavvolgimento vi si blocca tutto... N.d.T.)/ non funzionava e quindi usare una unita' a nastro SCSI poteva essere frustrante: usando comandi del tipo "mt erase" si verificava un bloccaggio della catena SCSI fino a quanto l'operazione veniva completata. Dato che questa situazione era molto insoddisfacente per me, ho comprato uno dei costosi controllers della DPT e non ho avuto piu' problemi da allora.

Comunque mi e' stato riferito the questo problema e' stato risolto.

FreeBSD supporta il NCR53c810 da molto tempo ormai; questo supporto include le Tagged Command Queues, FAST, WIDE e il Disconnect per gli NCR53c810, 815, 825. Drew ha detto che dovrebbe essere possibile adattare il driver per Linux. Da quanche parte ho visto delle patches per fare esattamente questo, qualcuno mi sa dire dove ? (se non vado errato nei kernel 2.0.x si puo' scegliere se usare appunto il driver BSD o quello standard. Personalmente io uso il driver BSD e non ho ancora avuto problemi. N.d.T.)

Io personalmente ho l'impressione che ci sia stata scoperta piu' volte la stessa acqua calda a causa delle differenti evoluzioni di FreeBSD e di Linux. Un po' piu' di cooperazione potrebbe fare del bene a entrambi i sistemi...

2.4 Drew Eckhardt sul PCI-SCSI:

Drew ha detto queste cose alla fine del marzo 95 a proposito dello SCSI sul PCI: (leggermente modificate per aumentare la chiarezza nel presente contesto)

Le schede Adaptec 2940, Buslogic BT946, BT946W, DPT PCI boards, Future Domain 3260, NCR53c810, NCR53c815, NCR53c820, e NCR53c825 funzionano tutte per qualche definizione della parola "funzionano"

2.5 Nuove versioni Alfa del driver NCR

Versioni Alfa (pre-pre-release (N.d.T.)) del driver che fanno il disconnect/reconnect e altre belle cose come i trasferimenti sincroni sono ora disponibili al pubblico. Chiunque sia interessato a sperimentare con queste ultime dovrebbe:

2.6 Il driver EATA-DMA e i controllers SCSI per PCI della DPT

Il driver scsi EATA-DMA e' stato sottoposto a grandi cambiamenti e ora supporta anche controllers SCSI PCI, controllers multipli e tutti i canali SCSI sulle schede multicanake SmartCache/Raid in tutte le combinazioni di WIDE, FAST-20 (ULTRA) e DIFFERENZIALE

Il driver ora supporta tutti i controllers SCSI che rispettano il protocollo EATA-DMA ( documento CAM CAM/89-004 rev. 2.0c) ed e' stato testato con molti di questi controllers in varie combinazioni.

Essi sono:             (ISA)  (EISA)  (PCI)
      DPT Smartcache: PM2011  PM2012B
                              PM2012B
      Smartcache III: PM2021  PM2022  PM2024
                              PM2122  PM2124
                              PM2322
      Smartcache IV:  PM2041  PM2042  PM2044
                              PM2142  PM2144
                              PM2322
      SmartRAID:      PM3021  PM3122
                              PM3222  PM3224
                                      PM3334
      e qualche controller della NEC, AT & T, SNI, AST, Olivetti e Alphatronix.

Su una scheda DPT in configurazione base ( niente caching o moduli RAID ), un MC680x0 controlla i(l) chip bus mastering e il chip controller SCSI. La scheda SCSI DPT lavora piu' o meno come un coprocessore SCSI.

La scheda DPT puo' anche emulare un binomio drive/controller IDE ( interfaccia ST506), la qual cosa vi permette di usarlo con tutti i sistemi operativi anche se non avete dei drivers EATA.

Su una scheda con il modulo cache, il 680x0 mantiene e controlla la cache on board. La scheda DPT supporta fino a 64MB RAM di cache per i dischi.

Su una scheda con il modulo RAID il 680x0 e' impegnato anche nel controllo del RAID: facendo il mirroring nel RAID-1, facendo lo stripping e la generazione di informazioni ECC nel RAID-5 ecc. ecc.

La scheda entry level usa un Motorola 68000, quelle di classe piu' elevata, piu' specifiche per il RAID, usano dei processori Motorola 68020, 68030 o 68040/40MHz.

I prezzi di listino variano da $ 265 a $ 1645 ( 18 Gennaio 1996)

Dato che mi e' stato chiesto piu' volte dove si possono comprare queste schede ho chiesto alla DPT di mandarmi una lista dei loro distributori ufficiali Europei. Eccone una piccola parte:

Austria: Macrotron GmbH             Tel:+43 1 408 15430   Fax:+43 1 408 1545
Denmark: Tallgrass Technologies A/S Tel:+45 86 14 7000    Fax:+45 86 14 7333
Finland: Computer 2000 Finnland OY  Tel:+35 80 887 331    Fax:+35 80 887 333 43
France : Chip Technologies          Tel:+33 1 49 60 1011  Fax:+33 1 49 599350
Germany: Akro Datensysteme GmbH     Tel:+49 (0)89 3178701 Fax:+49 (0)89 31787299
Russia : Soft-tronik                Tel:+7 812 315 92 76  Fax:+7 812 311 01 08
U.K.   : Ambar Systems Ltd.         Tel:+44 1296 311 300  Fax:+44 296 479 461

"Secondo me le DPT sono le schede SCSI meglio disegnate disponibili per il PC. E io ho scritto codice per piu' o meno qualsiasi tipo di scheda SCSI per PC. (anche se, ripensandoci, non so perche' ) ;-)" Jon R. Taylor (jtaylor@magicnet.net) Presidente, Visionix, Inc.

L'ultima versione del driver EATA-DMA e un bootdisk Slackware sono disponibili su ftp.i-connect.net:/pub/Local/EATA

Dalla versione 1.1.81 il driver e' incluso nella distribuzione standard del kernel.

L'autore puo' essere contattato a questi indirizzi: neuffer@mail.uni-mainz.de o mike@i-connect.net

2.7 Il BT-964C e' supportato pienamente dai kernel 1.3.x e oltre

C'e' un driver nei kernel 1.3.x ( disponibile come patch per chi usa l' 1.2.13 ), scritto da una persona connessa alla Buslogic, che supporta pienamente il 964C e TUTTE le sue functioni incluse (le lascio in inglese ovviamente... N.d.T.) strict round robin, tagged queueing, multiple scatter-gather, multiple mailboxes, IRQ sharing, e 15 devices su FastWide. Non e' piu' necessario usare la minima emulazione ISA con il driver ( ad ex. niente canale DMA, niente indirizzo ISA ), e il driver e' /veloce/ e /stabile/ ( non e' piu' BETA ed e' stata rilasciata la sua versione definitiva).

Il driver e' disponibile su ftp.dandelion.com ( la nuova versione si puo' sempre avere facendo "get BusLogic*" (credo solo se usate ncftp, altrimenti fate una dir... N.d.T.) ). Supporta TUTTI i controller BusLogic con l'eccezione del FlashPoint LT che usa una diversa interfaccia. Il driver e' incluso nei kernel 1.3.x come driver standard per i prodotti BusLogic.

2.8 Future Domain TMC-3260 PCI SCSI

Rik Faith (faith@cs.unc.edu) mi ha informato mercoledi' 1 Feb 1995 che la scheda PCI Future Domain TMC-3260 SCSI e' supportata dal driver SCSI Future Domain 16x0. Informazioni piu' aggiornate possono essere contenute nello SCSI-HOWTO.

2.9 altre notizie sullo scsi

James Soutter (J.K.Soutter1@lut.ac.uk) mi ha chiesto di aggiungere le seguenti informazioni sullo SCSI-2 Fast Wide:

Lo SCSI-2 Fast Wide e' talvolta chiamato scorrettamente SCSI-3. Esso differisce dallo SCSI-2 Fast ( come l'Adaptec 15428? ) perche' usa un bus dati di 16 bit invece dei soliti 8. Questo migliora la massima velocita' di trasferimento dati da 10MB/s a 20MB/s ma richiede l'utilizzo di speciali dischi SCSI-2 Fast Wide.

Le migliori prestazioni dello SCSI-2 Fast Wide non necessariamente renderanno il vostro sistema piu' veloce. La stragrande maggioranza dei dischi rigidi hanno una velocita' di trasferimento dati massima di meno di 10MB/s e pertanto un disco usato da solo non puo' sovraccaricare un bus SCSI-2 Fast.

Nella ricerca di mercato della Seagate fatta nell'Ottobre 1993 solo un disco SCSI-2 Fast Wide ha mostrato una velocita' di trasferimento dati di piu' di 10MB/s ( lo ST12450W ). La maggior parte ha viaggiato a un massimo di 6MB/s o meno anche se lo ST12450 non e' la sola eccezione. In conclusione lo SCSI-2 Fast Wide e' stato progettato per il mercato dei file servers e non necessariamente portera' benefici ai sistemi singolo utente.

Invece di comprare un sistema PCI con una interfaccia SCSI sulla motherboard o aspettare un driver per l'NCR, potreste comprare una scheda separata PCI SCSI. Secondo Drew l'unica possibilita' che ha una chance di funzionare e' la Buslogic 946. Essa intende essere compatibile con l'Adaptec 1540 come le schede EISA/VESA/ISA nella serie.

Drew ha anche commentato che e' improbabile che altri controllers SCSI PCI siano supportati sotto Linux o BSD perche' quelli basati sull'NCR sono piu' economici e diffusi.

Secondo broom@ocean.fit.qut.edu.au (Bradley Broom):

La scheda Buslogic BT-946C PCI SCSI funziona se disabilitate l'opzione "enable Disconnection" con il programma DOS AUTOSCSI che e' fornito con la scheda stessa.

Ernst Kloecker (ernst@cs.tu-berlin.de) ha detto: (modificato)

La Talus Corporation ha completato un driver NS/FIP per le schede PCI con la SCSI NCR. Sara' distribuito molto presto e puo' anche darsi che sia gratis perche' una terza parte potrebbe pagare per il lavoro e donare il driver alla NeXT.

Non tutte le motherboards PCI hanno il chip. Le vecchie ASUS lo hanno come pure una delle J-Bond. (La maggior parte delle schede oggigiorno (6/95) si aspettano che voi compriate l'NCR53c810 a parte.) Alcuni rivenditori rendono disponibile un'alternativa come potere leggere nell'articolo di Drew...

Il chip NCR e' abbastanza intelligente da lavorare con dischi fissi formattati da altri controllers e non dovrebbe causarvi problemi.


Avanti Indietro Indice

Hosting by: hurra.com
Generated: 2007-01-26 17:56:16