While researching the Compaq Intelligent Drive Array (IDA), a circa 1990 EISA-based IDE RAID controller, I quickly established that there’s very little surviving information about it, and most of what there is can be found in two or three patents that Compaq filed around 1989.
The most relevant of the patents was filed as “Bus master command protocol”, but somehow ended up getting renamed to “Method for controlling disk array operations by receiving logical disk requests and translating the requests to multiple physical disk specific commands”, now US Patent 5,249,279. The text includes an interesting statement: “The EISA specification Version 3.1 is incorporated as Appendix 1 to U.S. Pat. No. 5,101,492 to Schultz et al., and is hereby incorporated by reference”. Only US Patent 5,101,492 is nowhere to be found.
But further searching led to European Patent EP0426184 titled “Bus master command protocol”, which does in fact include the entire 435-page EISA 3.1 specification as an appendix.
The patent is long expired, the information within it is now in the public domain, so I took the liberty of extracting the appendix and making the EISA Specification version 3.1 available as a separate PDF. The scan quality is not great but the text is legible. Please note that the printed page numbers are off because they are page numbers of the patent. However, I fixed up the PDF page numbers to correspond to the original document. This was made slightly complicated by the fact that there are several pages missing; page 173 in the PDF explains why — due to a misprint in an earlier edition, some pages were re-numbered and pages 173-180 no longer exist in the corrected edition.
Note that the EISA specification, being a superset of ISA, also includes a specification of the ISA bus. And I really wish I’d found this earlier.
One question about DMA:
are all these extra EISA specific features (upper page registers etc.) also supported on today’s PCs ? Or where they only implemented on the EISA PCs back at the day?
… and if they are supported, would it be possible to use ISA compatible settings but still be able to use the upper page registers and, more importantly, will the address autoincrement without the 64kByte/128kByte wraparound?
If the DMA controller can do it, I don’t see why it wouldn’t work with ISA devices. The system memory addressing is entirely up to the DMA controller, not the device.
The reality is/was that there wasn’t an “ISA specification”. The Gang of Nine decided to standardize the behavior, and most importantly, the clock speed of the AT-bus when drafting the EISA standard. If made their life (and the rest of the expansion card industry) very happy to have something to target hardware designs to.
You can use most of the EISA DMA controller’s features with ordinary ISA devices. The only things that definitely won’t work are 32-bit transfers and burst transfers, since both require signals that aren’t available in an ISA slot.
Of course, this assumes you have an EISA DMA controller. As far as I can tell, most PCs don’t have one of those. There were even some EISA PCs that didn’t include an EISA DMA controller!
Sure there was a specification — the IBM PC, PC/XT, and PC/AT Technical Reference, including complete schematics. Which is not an ideal kind of specification, but it’s not like people were building ISA adapters in a vacuum for the first 10 years of the PC’s life. The EISA specification and the attempted IEEE standardization (IEEE P996) were certainly much easier to work with. Even then you had very variable ISA bus speeds because of course why make the bus run at 8.33 MHz when you have a 20 MHz CPU and it’s much easier to make the bus run at 10 MHz.
I wonder why they did not make 10Mhz and 12Mhz EISA buses at least an option. (Sure, it broke some ISA cards, but…)
It does seem a little odd. Maybe they just figured that with 33 MB/s bandwidth, who needs more? I mean this was 1989 or so…
EISA target markets were focused on stability not absolute maximum performance. ISA had issues with interference at 10 MHz. The double decker EISA connector should be even worse from an EMI perspective.
(Even MCA which was specifically designed to reduce interference ran at only 10 Mhz initially)
Thinking about it, if one was willing to break old ISA cards, a new connector with more ground and power pins would probably have helped reduce interference at 12Mhz, and it would have been trivial to adapt capable ISA cards to the new connector.
Ah, memories.
I still have a dual processor (486-dx4’s I think) Compaq System Pro with the IDA raid controller and original Conner drives purchased in 1990.
That’s very cool. Could you please tell me what those Conner drives are exactly?
I’m asking because I could not find anywhere what those drives were; I suspect it might have been CP3204F “Rambo”, but it could also have been some “off the books” Compaq only model that Conner was known for.
Does the IDA RAID controller really have 50-pin connectors for the IDE drives? Finding detailed information is extremely difficult, it was a short-lived product that never sold in any kind of significant numbers. I could not find any Compaq technical documentation, even though it certainly existed.
I did a quick look, but the drives would have to be removed for me to see what they are exactly and that’s not a simple thing in the old SystemPro.
The drives are 210MB I do remember. The IDA controller does have 50-pin connectors, 4 of them. Each connector can run two drives. The cable splits after leaving the controller into 40pin and 10-pin segments. The main drive connector is 40pin with a regular 4-pin molex for power. I don’t know where the 10pin segment goes. I can’t see without removing the drives.
Ah, gotcha. Thanks for checking. In a normal IDE system, you could run some utility that executes IDENTIFY DRIVE to show the drive information, but I believe that won’t really work in the SystemPro as it will only “see” the RAID controller. That said, if you could run something that captures the identify data (e.g. Seagate’s FIND-ATA.EXE which can save to file) that would be very cool, as it would be interesting to see what the RAID controller reports itself as.
Anyway I’m almost certain the drives are CP3204F, possibly in some machines CP3201G. Both of those drives have a very distinct shape.
Somewhere I saw hints that the extra 10 wires were used for some kind of monitoring.
All roads lead to os2museum 🙂
At the museum we are restoring a Compaq Systempro/LT server, a beautiful EISA system from early 90s, which was used to run one of the most popular BBSs here in Slovenia, ABM BBS. It contains the IDA card with 4 Conner CP3541 (IDE, 540 MB) drives connected to it.
There is not much info online (especially the manual is missing for the array controller card), but luckily I found the correct floppy software for configuring the Systempro
and the “Drive Array Advanced Diagnostics” floppy that is optionally needed to gain more info about the array configuration – seems to be RAID 4.
As far as restoration goes, 3 drives worked and we imaged them, the 4th one was very broken mechanically inside but successfully imaged by a foreign service company which still has the skills for these early IDE drives (and they also service MFM drives!).
I tried to use the image on a replacement drive (tried multiple IDE ones raging from 800 MB to 4 GB, and a SD-to-IDE adapter using 1GB-8GB cards) but the array
diagnostics just doesn’t accept such drives and complains about a missing drive. So I have now ordered two same refurbished Conner models from a parts recycler and will try that way.
As far as data goes, all 4 drives have the DISCO header and the first byte seems to be the drive number – it goes from 0x00 to 0x03. (This might be a useful Google keyword for someone following in our steps :D)
Oh, very cool! I found some information about the Compaq IDA but very little detail. It seems that it didn’t really last very long and Compaq soon switched to SCSI RAID solution. I think the early IDA versions used 200MB-ish Conner drives.
Will you have some pictures of the drives and controller? I’ve never been able to find any real photos of the IDA controller board, and especially what chips might have been on it.
Sure, will make some nice ones and send it your way!
BTW, there is one currently on sale on ebay for a pittance and it looks quite like the one we have. Also the seller took some nice pics of it. If you wonder what the button on the port side of the card does – it silences the alarm beeper if there is aproblem with the array 😀