The PC-architecture has several BUS-Systems to choose from:
cheap, slow (usually 8Mhz), standard, many cards available>
expensive, fast, some cards available>
ex-IBM-proprietary, fast but not very wide-spread>
based on ISA, cheap, fast, some cards available>
expensive, fast, some cards available, the upcoming standard>
ISA/VESA-Local-Bus had some problems with high bus-speeds, and was not very reliable, but mainly due to its low price and better-than-ISA performance, sold very well. Most VESA boards should be stable by now.
EISA was reliable, but rather expensive, and intended more for power-users and servers, than for the average user. It has fewer cards available than other busses.
PCI now has the advantage. Like EISA it is not proprietary. It is as fast as EISA (or even faster), and 64bits wide. This will be important with the i586 (That Intel would prefer we call the Pentium...).
PCI is not like ISA/Local-Bus processor-dependent. This means you can use the winner-1000-PCI in an Alpha-driven-PCI-board as well as in a i486/i586-driven PCI-Board, except for the BIOS, but the hardware should be about the same.)
PCI allows cheaper production of onboard components, and needs no glue-logic chips.
taken from Craig Sutphin's Pro-PCI-Propaganda
Unlike some local buses, which are aimed at speeding up graphics alone, the PCI Local Bus is a total system solution, providing increased performance for networks, disk drives, full-motion video, graphics and the full range of high-speed peripherals. At 33 MHz, the synchronous PCI Local Bus transfers 32 bits of data at up to 132 Mbytes/sec. A transparent 64-bit extension of the 32-bit data and address buses can double the bus bandwidth (264 Mbytes/sec) and offer forward and backwards compatibility for 32 and 64-bit PCI Local Bus peripherals. Because it is processor-independent, the PCI Local Bus is optimized for I/O functions, enabling the local bus to operate concurrent with the processor/memory subsystem. For users of high-end desktop PC's, PCI makes high reliability, high performance and ease of use more affordable than ever before; no trivial task at 33 MHz bus-clock rates. Variable length linear or toggle mode bursting for both reads and writes improves write dependent graphics performance. By comprehending the loading and frequency requirements of the local bus at the component level, buffers and glue logic are eliminated.
See the chapter about Benchmarks for some crude (and perhaps meaningless) benchmarks on ASUS PCI Boards with 486 and 586.
One very nice feature of some PCI mother boards is the NCR onboard-SCSI-II-chip, which is said to be as fast as the EISA-Adaptec-1742, but much cheaper. Drivers for DOS/OS2 are available. Drew Eckard has released version 3 of his NCR53c810-driver. I run kernel 1.1.78 at the moment (9JAN94).
This works so well I sold my adaptec-1542B-ISA months ago. :-)
The NCR53c810-chip is onboard on some PCI-motherboards. There are add-on-boards available too, for about US$ 70.00.
The NCR-patches and bootimages are available on tsx-11.mit.edu:/pub/linux/ALPHA/scsi/ncr (approximately). Newer releases of Slackware 2.0 have support for the ncr too. Newer versions of the test-kernels (1.1.41 for example) do not require any patches; they have the driver already included. Since Kernel 1.2 it is in the standard kernel.
There is only one thing I noticed does not work with the current NCR-drivers yet. Disconnect/Reconnect does not work, so using a SCSI-tape can be a pain especially when using "mt erase" or the like blocks the whole SCSI-bus until it has finished. This is very unsatisfying.
Drew has been working on it, read more below.
FreeBSD does support the NCR53c810 for quite a long time already, including Tagged Command Queues, FAST, WIDE and Disconnect for NCR 53c810, 815, 825. Drew said, it would be possible to adapt the FreeBSD driver to Linux. Any volunteers?
I personaly have the impression there are some important wheels invented more than once because of the differently evolving of FreeBSD and Linux. Some more cooperation could do both systems very well...
After waiting much too long, I dumped the NCR in favour of one of these nifty but expensive DPT-PCI-SCSI-Controllers mentioned in this article. Shortly after that I heard Drew was having a new version of his driver for testers, sigh :-)
Drew said on end of March about the SCSI on PCI: (slightly edited for clarity in context)
The Adaptec 2940, Buslogic BT946, BT946W, DPT PCI boards, Future Domain 3260, NCR53c810, NCR53c815, NCR53c820, and NCR53c825 all work for some definition of the word works.
Alpha versions of the NCR driver which do neat things like disconnect/reconnect and synchronous transfers are now publically available. Any one interested in playing with them should
The EATA-DMA scsi driver has undergone extensive changes and now also supports PCI SCSI controllers, multiple controllers and all SCSI channels on the multichannel SmartCache/Raid boards.
The driver supports all EATA-DMA Protocol (CAM document CAM/89-004 rev. 2.0c) compliant SCSI controllers and has been tested with many of those controllers in mixed combinations.
Those are: (ISA) (EISA) (PCI) DPT Smartcache: PM2011 PM2012A PM2012B Smartcache III: PM2021 PM2022 PM2024 PM2122 PM2124 PM2322 SmartRAID : PM3021 PM3122 PM3224 PM3222 and some controllers from NEC and ATT.
On a "base" DPT card (no caching or RAID module), a MC680x0 controls the bus-mastering DMA chip(s) and the SCSI controller chip. The DPT SCSI card almost works like a SCSI coprocessor.
The DPT card also will emulate an IDE controller/drive (ST506 interface), which enables you to use it with all operating systems even if they don't have an EATA driver.
On a card with the caching module, the 680x0 maintains and manages the on-board cacheing. The DPT card supports up to 64 MB RAM for disk-cacheing.
On a card with the RAID module, the 680x0 also performs the management of the RAID, doing the mirroring on RAID-1, doing the striping and ECC info generation on RAID-5, etc.
The entry level boards utilize a Motorola 68000, the high-end, more raid specific DPT cards use a 68020, 68030 or 68040/40MHz processor.
Official list prices range from $ 245 to $ 1995 (December 1, 1994)
Since I've been asked numerous times where you can buy those boards in Europe, I asked DPT to send me a list of their official European distributors. Here is a small excerpt:
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 296 435 511 Fax:+44 296 479 461
"IMHO, the DPT cards are the best-designed SCSI cards available for a PC. And I've written code for just about every type of SCSI card for the PC. (Although, in retrospect, I don't know why!) ;-)" Jon R. Taylor (jtaylor@magicnet.net) President, Visionix, Inc.
The latest version of the EATA-DMA driver and a Slackware bootdisk is available on: ftp.uni-mainz.de:/pub/Linux/Drivers/SCSI/EATA
Since patchlevel 1.1.81 the driver is included in the standard kernel distribution.
The author can be reached under these addresses: neuffer@goofy.zdv.uni-mainz.de or linux@uni-koblenz.de
Rik Faith (faith@cs.unc.edu) informed me on Wed, 1 Feb 1995 about the Future Domain TMC-3260 PCI SCSI card being supported by the Future Domain 16x0 SCSI driver. Newer information might be contained in the SCSI-HOWTO.
James Soutter (J.K.Soutter1@lut.ac.uk) asked me to add the following information on Fast-Wide-SCSI-2:
Fast Wide SCSI-2 is sometimes incorrectly called SCSI-3. It differs from the normal Fast SCSI-2 (like the Adapted 1542B?) because it uses a 16 bit data bus rather than the more usual 8 bit bus. This improves the maximum transfer rate from 10 MB/s to 20 MB/s but requires the use of special Fast Wide SCSI-2 drives.The added performance of Fast Wide SCSI-2 will not necessarily improve the speed of your system. Most hard disk drives have a maximum internal transfer rate of less than 10 MB/s and so one drive alone can not flood a FAST SCSI-2 bus.
In Seagate's Oct 1993 product overview, only one Fast Wide SCSI-2 drive has an internal transfer rate of more than 10 MB/s (the ST12450W). Most of the drives have a maximum internal transfer rate of 6 MB/s or less, although the ST12450W is not the only exception to the rule. In conclusion, Fast Wide SCSI is designed for the file server market and will not necessarily benefit a single user workstation style system.
Rather than buying a PCI system with a SCSI interface on the motherboard, or rather than waiting for the NCR driver, you could purchase a separate PCI based SCSI card. According to Drew, the only PCI SCSI option that stands a chance of working is the Buslogic 946. It purports to be Adaptec 1540 compatible, like the EISA/VESA/ISA boards in the series.
Drew commented that other PCI based SCSI controllers are unlikely to be supported under Linux or the BSD's because the NCR based controllers are cheaper and more prevalent.
According to broom@ocean.fit.qut.edu.au (Bradley Broom):
The Buslogic BT-946C PCI SCSI works if you disable the option "enable Disconnection" with the AUTOSCSI-program under DOS which comes with the card.
Ernst Kloecker (ernst@cs.tu-berlin.de) wrote: (edited)
Talus Corporation has finished a NS/FIP driver for PCI boards with NCR SCSI. It will be shipping very soon, might even be free because a third party might pay for the work and donate the driver to NeXT.
Not every PCI-Board has got the chip. The old ASUS do, and one of the J-Bond boards does, too. (Most of the boards nowadays (6/95) do expect you to buy the NCR53c810 seperately.) Some vendors provide an alternative as you can read in Drew's text...
The NCR-Chip is clever enough to work with drives formatted by other controllers, and should be no problem.
Next Chapter, Previous Chapter
Table of contents of this chapter, General table of contents
Top of the document, Beginning of this Chapter