Microelectronics | 16-BIT ATX ISA BACKPLANE


I was thinking about restarting experiments with vintage computing hardware. Thus, I decided to start working on an 8 slot, 16-bit ISA backplane that will fit either AT or ATX computer cases and will accept power from a modern ATX supply. Well, I would've preferred to design it so that it could accept either AT or ATX power supplies. But I just couldn't find an on-line parts supplier for P8 and P9 male connectors to fit on the printed circuit board. Thus, ATX it is.

I always wanted to experiment with option and boot ROMs. Back in the very early 1990s when I was routinely using an 80386SX / 25 MHz machine, 27C series UV EPROMs were expensive and difficult to find. These days, I have access to a lot of ROM integrated circuits at low prices from the local and online electronics stores. Needless to say that, over time, I have recovered quite a few ROM ICs from vintage computer boards. I can erase and reprogram them for my experiments. Thus, this backplane implements support for one 64 Kbit option ROM of type 27C64 or 28C64. Address range decoding for the ROM is implemented as well.

Adjacent circuitry is also carried on this backplane. Think reset and ATX power control circuits, and indicator LEDs. I have even made provisions for the case LEDs and cooling fans. If you don't like the noise of a 12 V cooling fan, then just plug it into the 5 V fan header. I decided not to include a 5-pin DIN keyboard connector because this backplane will mostly be used with ATX cases. These don't align the back bracket with the keyboard connector that well. I know there are metal brackets already milled for an AT-style keyboard. But then again, this system backplane will most certainly use the keyboard socket on the CPU ISA card. Thus, I omitted it from this design.

This ISA system backplane should handle 8088, 80286, 80386, 80486, and Pentium CPU boards as well as any 8-bit or 16-bit ISA expansion card. So a complete computer can be easily built.

The design of such a backplane is no secret and despite all the many apparently complicated connection points, overall, the circuitry is fairly simple to understand and implement. Regarding the printed circuit board layout, I have manually routed all tracks in order to fulfill the best digital design constraints and -- why not -- looks.

A historical fun fact: Back in the 1990s I was spending hours looking at computer printed circuit boards, observing the wire routing design, the choice of electronic parts, and the overall layout. I was seeing this as some kind of abstract art. In fact, I was mesmerized by computer PCBs. I remember a few notable ones: an Adaptec AHA-1542CF SCSI ISA controller, ATI VGA WONDER-16 ISA video controller, an old 1989 CHIPS & TECHNOLOGIES 256K VGA controller, an unknown model NCR MFM ISA controller, a beautiful Western Digital WD-1004A-27X MFM ISA controller, a UNiSYS 80286-10 mainboard, and countless other that forgot the model numbers. Looking at those PCBs, I dreamed about creating my own one day. So here I am, designing my own ISA backplane. I am planning other ISA designs in the upcoming couple of years.

Disclaimer: I reserve the right to change the schematic diagram, the PCB layout, or the implementation without further notice. This is an entirely hobby do-it-yourself design and I am not responsible for any damage made by any possible mistake in any version or revision of the schematic diagrams or PCB layouts. Since it is an advanced microelectronics project, it requires very good assembly and debugging skills. In addition, I cannot offer any further technical support other than the contents of this article.

This project is in its final stage.
Current iteration of ASSY. 2486-SBP-001 is VER. 1.6 REV. B

* * *

Laudatur ab his, culpatur ab illis. This project is provided as-is and is not for commercial purposes. It reflects my experimental work in microcomputer system design and should be treated as such. I release the schematic diagram and circuit board layouts to the public for educational purposes. I did all this at my own expense and in my free time. If you like my work, please consider making a donation. It helps me continue these kind of projects.

Schematic Diagram

Fig. 1: Electrical Schematic Diagram

Printed Circuit Board

Fig. 2: Top Silkscreen

Fig. 3: Top Layer Printed Circuit Board

Fig. 4: Bottom Layer Printed Circuit Board

Fig. 5: Top Layer Printed Circuit Board - Simulation

Fig. 6: Bottom Layer Printed Circuit Board - Simulation

Gerber Files

Here are the Gerber files compressed in a .ZIP archive.
Please note that the file naming convention that I used is what OSHPark normally expects.
You can also order the printed circuit board directly from OSHPark by following the link in the bill of materials below.

Compressed Gerber Files: isa-backplane.zip

Bill of Materials (BOM)

The following list contains the parts that are required to assemble this ISA backplane.

IdentifierValueQtyNotesMouser Number
Printed Circuit BoardASSY. 2486-SBP-0011VER. 1.6 REV. BOrder from OSHPark
IC174LS6881Magnitude Comparer595-SN74LS688N
IC228C64164 Kbit ROM556-AT28C64B15PU
IC374LS141Hex Inverter (ST)595-SN74LS14N
IC474LS741Dual D Flip-Flop595-SN74LS74AN
IC6UA79051Negative Regulator595-UA7905CKCS
T12N22221Small Signal Transistor610-2N2222
D1-D41N41484Small Signal Diode78-1N4148
C1-C48, C6410 uF / 25 V49Tantalum Capacitor80-T350E106M025AT
C55-C5847 uF / 25 V4Tantalum Capacitor80-T350K476M025AT
C62, C65100 uF / 10 V2Tantalum Capacitor80-T350J107M010
C631 uF / 35 V1Tantalum Capacitor80-T350A105K035AT
C49-C54, C59-C61100nF / 50 V9MLCC80-C322C104M5R-TR
R1-R3, R6-R8, R12470 Ω7Carbon Resistor291-470-RC
R4, R51.2 kΩ2Carbon Resistor291-1.2K-RC
R9, R11, R1310 kΩ3Carbon Resistor291-10K-RC
R10, R141 kΩ2Carbon Resistor291-1K-RC
RN18 x 10 kΩ1Bussed Resistor Network652-4609X-1LF-10K
SW17-position1DIP Switch774-2067
LED15 mm Orange LED1Standby Indicator755-SLR-56DC3F
LED25 mm Red LED1+5 V Indicator755-SLR-56VC3F
LED35 mm Red LED1-5 V Indicator755-SLR-56VC3F
LED45 mm Red LED1+12 V Indicator755-SLR-56VC3F
LED55 mm Red LED1-12 V Indicator755-SLR-56VC3F
LED65 mm Green LED1CPU Activity Indicator755-SLR-56MC3F
IC Socket20-pin1IC1575-11044320
IC Socket28-pin1IC2575-11044628
IC Socket14-pin2IC3, IC4575-199314
IC Socket8-pin1IC5575-144308
J120-pin Connector1ATX Power Connector538-46015-2006
J23-pin Header1Header649-68001-203HLF
J3-J52-pin Header3Header649-68001-202HLF
J6, J722-23-20312Fan Connector538-22-23-2031
JP13-pin Header1Jumper649-68001-203HLF
ISA0-ISA7Card Edge Connectors8ISA Slot587-395-098-520-350

Alternatively you can use the following link to the Mouser project that I created for this backplane. It should make ordering of parts and removing typing faults pretty easy.

Mouser Project: 16-BIT ATX ISA BACKPLANE

Lately I have observed that Mouser discontinued some of the parts in the list above. If you decide to build this project, then you need to find alternatives. It is out of my scope to maintain the correctness of the parts list above.

Assembly Instructions and Notes

Here is a list of things you need to pay attention to should you decide to build such ISA system backplane.

  • Inspect the printed circuit board once you receive it. Normally OSHPark produces very good quality boards but one never knows. There must be absolutely no short circuits on the printed tracks. If the PCB is faulty then it can damage other ISA cards that you might install in the system.
  • Carefully observe polarity of the tantalum electrolytic capacitors on the silkscreen. I made sure there is no error on the printout so even if it appears weird (think C40, for instance), please do respect the markings. Tantalum capacitors will violently explode and burst in fire if mounted in reverse, possibly injuring you.
  • Take your time to solder all the components on the board. There are a lot of solder points and if you don't have patience in general, then this project might not be for you.
  • Use a temperature-controlled soldering station and quality solder. Take care not to leave solder bridges as any short circuit will most likely lead to failures.
  • In order to ease-up the PCB assembly, I would suggest mounting parts in the following order: diodes, resistors, IC sockets, resistor networks, transistors, MLCC capacitors, tantalum capacitors, switches, LEDs, ISA sockets, connectors, jumpers.
  • It is recommended -- but not mandatory -- to use a small aluminum heatsink on the -5 V regulator integrated circuit.
  • At the end, clean any flux residues with isopropyl alcohol.
  • If your power supply does not have a -5 V supply rail then configure JP1 to generate -5 V from the -12 V rail. There aren't that many ISA cards using -5 V but if you happen to have one then you need to make sure it will receive the expected negative voltage.
  • Test the ISA system backplane only with the power supply cord attached. If the power supply rail indicator LEDs light-up properly and the power-on circuit works as expected then you can proceed to the next step: insert CPU board, adjacent ISA cards, and so on. Should the fuse blow on the power supply then it is almost certain that there is a short circuit somewhere.
  • In case you decide to experiment with option ROMs then make sure you configure the ROM address range accordingly. It must not interfere with other ROMs installed in the system.

Interface Connectors Description

The following section describes all the interface connectors and their respective pinouts.

J1ATX POWERATX Power Connector1 - NC
2 - NC
3 - Ground
4 - +5 V
5 - Ground
6 - +5 V
7 - Ground
8 - NC
9 - +5 V StandBy
10 - +12 V
11 - NC
12 - -12 V
13 - Ground
14 - Power Supply ON
15 - Ground
16 - Ground
17 - Ground
18 - -5 V
19 - +5 V
20 - +5 V
J2PWR/STB-LPower/StandBy LED1 - Power LED Anode
2 - LED Cathode
3 - StandBy LED Anode
J3PWR-LPower LED1 - LED Anode
2 - LED Cathode
J4STB-LStandBy LED1 - LED Anode
2 - LED Cathode
J5PWRPower Switch1 - Power Signal
2 - Ground
J65V FAN5 V Cooling Fan1 - Ground
2 - +5 V
3 - NC
J712V FAN12 V Cooling Fan1 - Ground
2 - +12 V
3 - NC
JP1-5 V Selector1 - -5 V Rail (local)
2 - -5 V Rail (board)
3 - -5 V Rail (PSU)

The Power On Circuit

ATX power supplies are turned on and off through a momentary push button. This circuit does exactly that: sends a /PS_ON signal to the power supply to turn it either on (active low) or off (active high). This circuit is designed by Sergey Kiselev.

The Standby Circuit

This circuit section will provide some visual feedback through the STDBY LED once the system is powered off. A repetitive breathing-like fade in and out effect will signal that the system is standing by. Once you press the power button to turn the system on, the STDBY LED will remain off.

The CPU Activity Circuit

Once the CPU will start putting addresses on the address bus, A7 signal will provide a visual feedback through the CPUACT LED. This is a spartan indication that the CPU is actively working on something.

This circuit is, again, based on Sergey Kiselev's idea of a CPU activity indicator. I have further adapted it in a way that it is only active when the system is powered on. In the original circuit, there was a big chance that the LED will remain lit once power is removed from the system. This is because 74LS74 is powered through +5VSB rail which is always on. Section A of 74LS74 will store and reflect the previous state of A7 signal. And if this signal was high upon powering the system off, the LED will remain lit indicating false CPU activity.

Option ROM Configuration

In order for the microcode in the option ROM to be actually reachable, a valid start address needs to be supplied to the ROM decoder circuit. This is done by configuring the SW1 switch array. First of all, to enable the option ROM, SW1.1 needs to be set to ON. The 74LS688 magnitude comparator will be active once the CPU has control of the address and data bus. In other words /G signal will be active when AEN is not asserted (low). Then SW1.2 needs to be set to OFF. That means ROM /WE signal is not active. Which is normal since we don't want to provide writing capabilities to a non-writable memory. However, this switch is useful for programming empty ROMs directly in-place.

A combination of SW1.3, SW1.4, SW1.5, SW1.6, and SW1.7 will dictate the start address for the option ROM. Some combinations will generate conflicts with System BIOS or other option ROMs that might be present in the system. So double check their actual address range before configuring the on-board option ROM start address.

CombinationSW1.3SW1.4SW1.5SW1.6SW1.7Start AddressEnd AddressConflict

Construction and Pictures

Let's proceed to the actual construction then.

This is the bare 2-layer printed circuit board (PCB), component side.

And a view of the solder side.

Here are some detailed pictures of the PCB. I really like the evenness of the soldermask.

The quality of execution is very good, but those dents have to be filled away.

I kept all pin headers on the edge of the PCB for convenient cable management. Now that I better think about it, I should've provided two additional fan headers for a total of four.

I also think it would've been a good idea to provide support for 27C256 EEPROMs.

I began by soldering the smallest components first.

Followed by the MLCCs and the tantalum capacitors.

All these tantalum capacitors are largely unnecessary and can be easily substituted by standard electrolytic capacitors. Or even better, aluminum organic polymer capacitors. For this initial implementation, I just went crazy with an all-tantalum approach.

It surely does look retro.

Next, I soldered the eight card edge connectors, followed by some other components such as the LEDs, IC sockets, small-signal transistor, switch array, and ATX power connector.

In my opinion, retro computer-class PCBs must have shiny indicator LEDs.

And metal can transistors, wherever possible.

As I previously said, additional fan headers would've been good to have. While it's true that old hardware doesn't generate that much heat, it's also true that such a system backplane could also accommodate a dual Pentium III SBC. Thus, additional case fans can improve airflow for sure. Point taken for a future revision.

The silkscreen is of very good quality. As a side note, the machine screw holes are of M3 type. I think these are a bit smaller in diameter than standard mainboard fixing holes. While most of the small computer case machine screws do fit, neither of the plastic clamps used in some computer cases will fit.

The Molex connector that I used for the ATX power interface does not have additional side plastic tabs. While of less importance, I should update the board layout accordingly.

Here is the printed circuit board assembly (PCBA) with all the components soldered.

There are a few minor updates that I'd like to implement in future revisions, but overall I like the end result.

Again, the flashing stand-by indicator LED reservoir capacitors can easily be replaced by standard electrolytic capacitors. But the tantalum parts give that classic industrial look of the '80s.

Solder side. It was fun to solder all these many terminals but it was not so fun at all to clean the flux residues.

Eventually, the flux cleaned up really well with IPA, but it took a lot of time.

The bench testing phase followed up next. I am using a modern Corsair power supply rated at 450 W. It is absolutely overkill for my project, but it is all I could find around with a fair price-tag and from a reputable manufacturer.

All good now, so the PCBA is mounted in the PC case that I prepared for this project.

Can you spot the mismatched machine screws that I used to fix the backplane in the case? I will order some screws.

The first ISA card is installed; a Tseng Labs ET4000/W32i equipped with 2 Mb RAM.

I got this video card from Ted Allen, owner and designer at Micro-Labs, Inc. He is a very nice person and, at least as of 2019, he still has some of these fine cards for sale. Ted has other ISA video graphics cards as well, so please take a look since it is worth if you're into 1990s PCs.


Next, comes the testing phase with real hardware. I used the following ISA cards.

  • Single Board Computer Card based on Intel Pentium 100 MHz with 96 Mb RAM
  • Tseng Labs ET4000/W32i Video Graphics Array with 2 Mb RAM
  • Intel EtherExpress 16TP LAN
  • AZTECH 16 Sound Blaster Clone

And some standard storage hardware.

  • 3.5" 1.44 Mb Floppy Disk Drive (Drive A:)
  • 5.25" 1.2 Mb Floppy Disk Drive (Drive B:)
  • Quantum Fireball CR 4.2 Gb IDE Hard Disk Drive (Partition C: and D:)

The classic problem with tall cases: cable management.

Now I think that the side panel could very well be made of glass so that all these LEDs could be seen. However, I won't be modifying a retro computer case anytime soon. But since I have three backplane PCBs, maybe I will build one in a modern case equipped with glass panels.

This case offers some kind of cable management support as it has some conveniently placed holes next to the left backplane edge.

Detailed view of the Intel Pentium 100 MHz CPU. It has a small fan, but I am pretty sure it can even work without one, if a bigger heat sink is used. TDP is about 8 W.

Games run smoothly. If you are too young -- good news for you, you have an entire life ahead -- to recognize the games below, here are their titles.

  • Doom (id Software, 1993)
  • Duke Nukem 3D (3D Realms, 1996)
  • Quake (id Software, 1996)

I played Doom a lot throughout the years. Somehow, I find the atmosphere in the original Doom more gloomy. But Doom II was more refined.

On the other hand, Duke Nukem 3D was pretty relaxed. Compared to Doom, there were very few moments where I was scared, or taken by surprise by a monster ambush. But it had its own charm.

Quake was revolutionary by all means. But I felt it was predictible. At least, if I compare it with the map complexity of the Heretic or Hexen games (which were based on the Doom engine).

I had a lot of fun designing and building this project. I fulfilled a small part of my dream from 26 years ago. This backplane laid the foundation for my x86 experiments, so I'd say it's time to move on to the next project.

Constructing a Second Backplane

Here I am in June 2020, already thinking into the future about my next project. So, still having some bare PCBs left from the initial order, I decided to build a second backplane. I will use this one with a new 80386 CPU-based server. More on this at a later point in time. (2023-edit) After experimenting for some time, I scrapped the server idea, and build another retro system instead.

For now, let's concentrate on the construction of this second backplane.

Again, the bare 2-layer printed circuit board.

This PCB has a minor scratch on the solder side between ISA Slot 4 and 5. Only the purple soldermask is scratched. The copper traces are not affected.

Soldering the components. Since Mouser was out of stock on 10 uF tantalum capacitors, I went with solid aluminum polymer capacitors instead. Which is how this project should be constructed, after all.

Capacitor array.

More capacitors.

I am missing a resistor array since it was not in stock at Mouser. Overall, with the polymer capacitors, the PCB assembly looks way more modern than the initial all-tantalum construction.

These LEDs are eye-catchy.

This design is already two years old. I can't believe how fast time flies by.

The solder side looks nice. This time I had fun both while soldering all these THD terminals and while cleaning the PCB, because I used pure acetone -- sic.

The backplane PCB assembly is mounted in an old AT case which I easily converted to ATX by slightly altering the internal mechanism of the power button. Then I soldered wires directly to the button terminals and made a small cable that connects to the backplane Power Switch header.

This old case has some weird looking plastic clamps for securing the mainboard (or backplane in my case) to the metal chassis. These posts don't fit the diameter of the holes that I designed. So, I had to improvise and make my own binding posts from some longer M3 machine screws, some washers, and a couple of nuts. This binding system looks good, is sturdy, and future-proof.

Testing with some random ISA cards that I have around.

I still have one bare PCB left waiting around. Maybe one day I will build another backplane.

Versions and Revisions

This section lists the project version and revision history.

VER. 1.6 REV. B

  • Replaced IC3 from 74LS04 to 74LS14

VER. 1.6 REV. A

  • Fully functional initial production version

Copyright © 2004- Alexandru Groza
All rights reserved.
VER. 1.0 | REV. A