For a while I've wanted to make a video series on the history of PC hardware, charting the development of hardware standards since the first PC, The IBM model 5150. The PC is approaching its 40th birthday and, at the rate the project is going, it will probably be finished when that date comes in 2021! What's amazing is how little things have really changed in that time, as there has been a common theme throughout it all: speed.
Compatibility, Compatibility, Compatibility
While most people associate the speed of a CPU as the defining mark of how fast a computer is, that's not the whole story. How the CPU interacts with the other components in the PC is just as important. This includes the cache, RAM, bus, I/O cards and storage devices among others. Although the development of PC hardware has been defined largely by compatibility, this is dependent mostly on the ability to run software. So long as the hardware was compatible with Intel's instruction set, PC makers could pretty much do what they wanted, while remembering that although some customers will pay a premium for the fastest system, most would prefer something that's future-proofed in some way or the ability to re-use existing RAM and expansion cards.
The Performance Revolution
This all went to pot in the late '80s and early '90s with the dawn of the PC GUI (aka Windows 3) and the realisation that the ISA bus was woefully inadequate for high-bandwidth applications. It was still only 16-bits wide and ran at 8.33MHz, matching IBM's 286-based PC AT. Although EISA and MCA were developed to take advantage of the 32-bit 386 and 486 CPUs, they still ran at around the same frequency as ISA. PCI and AGP eventually established themselves as the new standard in the mid-'90s but, before then, all the big manufacturers came up with their own 'local bus' that could run at the same speed as the CPU: Compaq's QVision (Mar '92), V-Com's 486 Local Bus (Mar '92), NEC's ImageVideo (Sep '91), Epson's Wingine (Feb '93), Swan's Direct Bus (May '92) and Opti's Local Bus (< Dec '92) among others.
The problem with proprietary buses is that you can't take a QVision card and put it in an Epson machine, so potentially expensive components become obsolete within a couple of years. In response to this, VESA (Video Electronics Standards Association) developed their own local bus standard, which was widely adopted by the industry and can be seen on many 486-era boards. For high-end workstations, which prioritise bandwidth over speed, VLB on an ISA system was still inadequate - . Running more than one high bandwidth card on VLB often caused compatibility issues. So what was the ideal solution in these pre-PCI times of choice and uncertainty? EISA + VLB. And that's exactly what I inherited this week when the technicians upstairs where I work were having a clear-out:
According to the specs, this motherboard has the following features:
Socket 2 supporting 486 CPUs up to DX2 + Overdrive
CPU speeds of 20MHz to 50MHz (plus clock-doubled models)
OPTI 82C682 chipset
7x EISA slots, 2x VLB connectors
Up to 128MB of RAM in 30-pin or 72-pin parity SIMMs
Up to 512KB of cache RAM
For those unfamiliar with old motherboards, you may have noticed that there are no ports at all aside from the keyboard. While modern motherboards tend to have everything built in, doing the same on early-1990s technology would have a) been massively expensive and b) been impossible to fit onto a standard motherboard size. Also consider that PCs were still predominantly business machines at the time, so there was zero need for decent graphics performance or sound. USB didn't even exist yet. So the following parts would be required in order to get this system up and running:
CPUIt only makes sense in a system like this to make it as high-end and kick-ass as possible. The fastest CPU this motherboard will support is probably AMD's 486DX2/80, which has an internal speed of 80MHz and runs on a 40-MHz bus. I don't think I own one of these. I do have a DX2/50 or 66 though, but what I'm most curious about is the DX/50. While this was a short-lived CPU (many PC makers had issues producing stable systems), it was at the centre of the fastest pre-clock-doubling PCs. While the DX2/66 was technically a faster CPU, it ran at 66MHz internally but the other components such as the cache, RAM and expansion cards, ran at 33MHz. With the DX/50, all these components run at 50Mhz (that's a 50% increase). Theoretically a DX/50 system should be faster than a DX2/66 system. Obviously CPU-centric benchmarks would show the latter to be faster, but real-world, fully rounded tests should show the DX/50 coming out on top.
CacheSome kind soul clearly stripped this board of all of all useful parts. Fortunately I have a good stock of SRAM chips to go in this thing, and I can probably fit the total 512KB possible. Interestingly the tag chips have been left on the board, and they are 15ns. This is actually great because tag chips are generally quicker than the actual cache chips, and 20ns would be sufficient for a 50MHz system.
RAMAs illustrated, the board supports 30-pin SIMMs (to be installed in pairs, because they are 16-bit wide each and the CPU is 32-bit) or 72 pin SIMMs. This was usually a cost-saving measure, as RAM was damn pricey back then, and people obviously wanted to carry over what RAM they had already purchase. I've never tested out the difference in speed between the two types of RAM so it could be interesting to do a comparison. I love boards like this that include two different types of technology.
Graphics cardAs there are 3 buses available here (ISA, EISA, VLB) there are technically 3 ways to approach this. But not really. With graphics, bandwidth is all important and the VLB slots provide the highest bandwidth. With a 50MHz CPU in the socket, that means 50MHz graphics, too. Although graphics cards were produced for the EISA bus, they were expensive and hard to find (and still are) and while they were 32-bit, they only ran at 8.33MHz. VLB really was the way to go with graphics and, on a 50MHz system, should theoretically outperform a similar PCI-based system, as that ran at only 33MHz. Still, this board presents a good opportunity to benchmark and compare just how big the performance difference is between ISA, EISA and VLB cards.
I/O cardAs I'll be using Windows 3.11 on this system, I will need at least one serial port for the mouse, but I probably don't need the parallel port. ISA is fine for this as the bandwidth requirement is low.
At least one storage controllerI will need an interface card for the hard disk and floppy drive (CD-ROM not required). Choices for HDD are IDE (possibly EIDE) or SCSI and I could technically do either, but there is a choice to be made over which bus is used with which interface technology. So let's try to find the best solution on paper:
ISA: 16-bit, 16MB/s
EISA: 32-bit, 30MB/s
VLB: 32-bit, 190MB/s (@ 50MHz)
For SCSI I have both an ISA and an EISA card:
The Adaptec AHA-2742AT
The pictured model is the EISA SCSI card, is apparently SCSI-2 and supports 2 floppy drives with up to 10MB/s data transfer rate. That's not very fast. Theoretically the ISA bus is 16MB/s, so I don't know how much of an advantage EISA presents. Most of the benefit will come from the bus being able to push 32-bit transfers to the CPU.
For IDE I have caching controllers in both ISA and VLB so I will probably have to test out all configurations to find out which one is actually fastest. I'd be interested to see the performance difference between EISA + SCSI and VLB + IDE.
As you can see, there is no battery on this board. That is mostly an excellent thing because, typically, a board of this age would have had a rechargeable barrel-style battery on it, which have a habit of leaking corrosive fluid all over the board and destroying any traces it encounters. It's happened to me more than once. The empty socket above the BIOS chip accommodates a Dallas real-time clock, but not your run-of-the-mill DS1287, no. EISA boards have to save information regarding the expansion cards in memory, so this board came with a DS1387, a RAMified version containing 4K SRAM. While you can buy a DS12887A to replace a standard RTC, the EISA one is no longer manufactured in any form. I can apparently buy one relatively cheaply from China, but it may be more worthwhile to perform the popular coin cell battery mod:
I haven't tested the RTC or the board yet so I don't know if either works. That's the end of part one. The next chapter will be dealing with the build itself.