iverson@xstor.com (Tim Iverson) (06/07/91)
Recently, it has come to my attention that the current BIOS in the Always IN-2000 SCSI host adapter no longer disables interrupts during transfers. And, despite other problems, seems to be marginally useful as a host adapter for a DOS only system. Since my now out-of-date information on disabling interrupts seems to have caused Always some concern, I decided I owed them (and the net) an honest review of their current board. Consequently, below is the full story of my involvement with the Always board (including a mini-review). Please note that while the facts below are true, the opinions I express are my own and do not represent Storage Dimensions' official position (not unless there's something they're not telling me :-). A little over a year ago, Always gave SDI a board to eval saying it would make any disk run faster, just use CoreTest and see. So, we tested it with CoreTest and found that a drive capable of max. 200KB/s transfers was turning in >1MB/s transfers. I heard about it from one of the test engineers and dismissed it by saying, "Well, it must be a cacheing adapter." Wrong. Always has no cache. I was more than a little curious now, so I used soft-ice to track things down in the bios. I found a section of code like this: cli call ???? ; disk_xfer done here (verified with an Ancot trace) sti Pretty ugly, eh? It also seemed rather deliberate. It is especially odd when considering that their netware driver did not have to disable interrupts and that they claimed their board would speed up drives. So, point 1. - they knew their board caused drives to run faster on benchmarks. Point 2., the code is obviously deliberate. Conclusion? They (both their engineers and marketeers) tried to pull a fast one. My personal opinion? I will never, ever, do business with them because of their (apparent) complete lack of integrity on this one point. Now the story reaches the present day. Always contacted me re: the interrupt issue and my postings on the net, saying that they don't disable interrupts and that they never did and that I should post a retraction ("did you know that fraud is actionable?"). When I told him that I personally tracked down the cli/xfer/sti hack and witnessed it (fact not fraud), I was told, "Oh - we don't do that anymore, that was only in the beta copy we sent to SDI. We never actually released it." Hmmm. Well, I said, "If you send me a card, I'll tell the net the facts about it." Suprisingly, the next day (yesterday, actually) an Always card shows up on my doorstep. Here are my observations about the board that was sent to me (silkscreen 2001-01-2D, board sticker 2001-02-2D, bios sticker REV.3.33, pal sticker 2.5, s/n sticker 1180040): My initial impressions were good. The layout looks clean (no reworks), there's a switch block instead of jumpers, the internal connectors are keyed to help prevent cabling errors, and they included drivers for various flavors of Novell Netware and recent releases of SCO Unix and SCO Xenix, although SCSI-only with the Always is impossible under Xenix and Unix without a second non-SCSI Unix/Xenix system to perform the integration. There are some problems: first, the board uses the WD33C93A SCSI chip. According to the opinion of others here more experienced with protocol chips, this is "not a good chip" (stated slightly more colorfully :-). Could this chip be why the Always board didn't work with the 3280 I tried? Perhaps, but I don't know for sure. The second problem is much greater: the external connector is not an accepted SCSI-1 or SCSI-2 connector. It is a 25 pin Macintosh connector. This isn't so bad until you realize that the 25 pin SCSI connectors usually used for the PC have term power and ground swapped w.r.t. the Mac cable. Connect the wrong cable by accident (perhaps by asking a different supplier for a 25 pin SCSI cable for your *PC*), and you could short-out something important, like your drive or your host adapter. At first glance, the documentation appears sparse, but concise and to the point. There are a few discrepancies: differences between stated factory settings and actual, and it said SCO stood for "Santa Clara Operations" instead of "Santa Cruz Operations". The doc's also state that the board's FIFO uses dual-ported RAM for high performance and no 1st party DMA to avoid incompatibilities. This is 100% correct, but very misleading. Lack of "bus-mastering" ability does reduce incompatibility, but it also means this board is suitable only for DOS; it would introduce too much overhead on a multitasking system. Now the fun begins. I tried to attach a Maxtor 3280 (a very finicky drive) to it. The board would not recognize it and the BIOS format and inquiry routines behaved erratically - sometimes they hung, sometimes they returned immediately, they never printed anything and the drive light never lit. BTW, all the other SCSI boards I have work fine with the 3280 (Adaptec, BusTek, Future Domain, and SDC800). So, I tried a different drive (Maxtor 8380). This time the drive was recognized, but the BIOS routines at c800:5 and c800:8 were still no-go. Further, it insisted on trying to boot off the hard disk (yes, I did have a boot floppy in drive A). Undaunted, I used an Adaptec 1542 to boot up from floppy and install DOS on the hard drive. Upon reinstalling the Always board and booting up (off the 8380 - I had no choice), I found that I could not access the floppy at all. Well, I had disabled the floppy controller (sw9 off) on the Always board so I could use the motherboard floppy controller that was already connected. Maybe the doc's were wrong and sw9 needed to be on? No. With sw9 on, the machine failed POST. O.K. - no floppy, I could live with this long enough to get a few benchmarks, but it was very annoying. [ Later on I went back and checked it out on a different machine and the motherboard floppy did work - looks like an Always/Machine problem, since the floppy worked fine on the same machine with the Adaptec and BusTek boards. ] What do the benchies say? Well, mainly that Always is just a typical dumb SCSI board - low overhead, good transfer rate, good for DOS, bad for anything that multitasks. Here's how Always compares to Adaptec and BusTek: Overhead: Always is 1.8ms faster than Adaptec Always is 0.1ms faster than BusTek Max xfer rate: Always is 2% faster than Adaptec Always is 1% slower than BusTek N.B. The Always IN-2000 has no provisions for synchronous operation and the ISA bus transfer rate cannot be altered (they use programmed i/o), so the Adaptec 1542B and BusTek 540 were both set for asynchronous SCSI transfers with a 5MB/s ISA bus transfer rate. Synchronous operation and higher ISA bus rates are possible with both Adaptec and BusTek with some computers and some drives. Tests were performed under DOS. Also note that Always' overhead and transfer rate will vary greatly depending on processor and i/o bus speed (programmed i/o, remember), while the Adaptec and BusTek values will remain relatively stable. Due to lack of bus-mastering ability, I cannot honestly recomend the Always board for use outside of DOS. Even then, the problems I experienced with the floppy drive, the BIOS setup routines, and the 3280 suggest that integration of this board will be more difficult than the rather small performance increase is worth. Combine their average performance with poor integration and the sneaky interrupt disabling trick used in a previous BIOS, and I would call this the "Never IN-2000" instead of the "Always IN-2000". - Tim Iverson iverson@xstor.com -/- uunet!xstor!iverson