Gustavson and S-100 and IEEE-696

This page last updated Mar 02 2009. It's referenced from a Web page about the origins of the S-100 bus at this link.

The following text is taken from a draft by David B. Gustavson, "Computer Buses - A Tutorial", published in IEEE MICRO, August, 1984, pages 7-22. The draft was published by SLAC as PUB-3326 in April 1984. The entire paper can be obtained from the SLAC Web site at this Web Link, or the publication is part of IEEE Micro magazine. At the time, Gustavson was a member of the Stanford Linear Accelerator Center in California. The exerpt below is titled "Acknowledgements, and a bit of history". - Herb Johnson

The problems of the MITS Altair bus got me interested in this subject. I bought serial number nine of that first S-100 machine, and got actual blueprints in late 1974, so that I could start building interface boards and a useful memory in advance of hardware delivery in February 1975. The computer came with a 256-byte memory board, expandable to 1024 bytes! Still, it was a bargain at $495, assembled and tested, at a time when the 8080 CPU chip was selling for $350 by itself.

Len Shustek, who was then a graduate student at Stanford, and is now vice president of Nestar Systems, was helping me design a similar system when we learned about the Altair and abandoned our own design. He had built an earlier machine using the Intel 8008, with graphics display, three-voice music generator, and a lot of nice software. We noticed from the blueprints that there was no way to turn the r CPU's bus drivers off, so it would be impossible to have multiple bus controllers for DMA or multiprocessor systems. MITS responded to my anguished call by adding driver-disabling signals on the bus, further delaying hardware shipment. Unfortunately, none of us recognized the problems which would be caused by the inverted write signal -- when bus masters were changing and no one was driving it, it caused writes to memory -- and we did not understand the need for better grounding.

Bob Stewart, now vice president of the [IEEE] Computer Society, was annoyed by these problems in his Altair, and had the audacity to suggest that the situation could be improved if the IEEE would get involved in standardizing the Altair bus, [by] then called the S-100 because of its 100 pin connector. MITS got a good deal on those connectors, so used them even though they couldn't think what to do with all the pins. Every other manufacturer thought of lots of different things to do with them, though, and incompatibility and chaos reigned.

Bob's incredible energy and perseverence got the project rolling, and I joined up partly because I felt guilty for missing those bus problems which could have been fixed so easily in 1974. George Morrow (Thinker Toys), Howard Fullmer (Parasitic Engineering), Kells Elmquist ([Ithaca] InterSystems), Tim Paterson (Seattle Computer, now of MS-DOS fame), Mark Garetz (CompuPro) , Gary Feierbach (Inner Access), and numerous others made real contributions to that project, called IEEE-P696. One offshoot from this project was [IEEE-]P896, an effort to start fresh and do it right for 32-bit buses, in the hope of heading off another round of chaos in the industry. Now addicted to this punishment, I joined that project too and both the technical and sociological parts of the project were a real education for me. I benefited from the efforts of many contributors to that project, but I am particularly grateful to Paul Borrill, whose understanding of buses and many other things is both broad and deep, and to Matthew Taub, for his analysis of the performance of his arbitration scheme.

During the P696 work, I was invited to join the Fastbus design team, an effort sponsored by the Department of Energy. Fastbus was to deliver the maximum performance possible, while still being simple and inexpensive, to help handle the enormous data acquisition and computing needs of high-energy physics experiments. It had to be very flexible and general, because no one knew what future requirements might be. Though reality always requires compromises, Fastbus did a good job of meeting those goals, and I gained a lot from that design effort. My simultaneous work on 696 and 896 proved to be synergistic, as I se-rved as a conduit for ideas and experiences among the projects.

I am particularly glad that the Department of Energy enabled Bob Downing, of the University of Illinois at Urbana/Champaign, to spend a year at SLAC working on the system design. Discussions with Bob and with Leo Paffrath at SLAC were very stimulating and productive, and I think that year had a lot to do with the coherence of Fastbus. I do not mean to minimize the important contributions made by many other members of the design team, but good design requires more su5tained interaction than is r possible in committee. Ray Larson of SLAC was responsible for the design project, and was very helpful and generous in his support. I recall with special pleasure many discussions with Ed Barsotti of Fermilab, John Biggerstaff of Oak Ridge, Ken Dawson (Fastbus editor) of TRIUMF, and Don Machen of Los Alamo5 (now with Scientific Systems International).

Special mention is also due Louis Costrell of the National Bureau of Standards, chairman of the NIM committee. The NIM committee brought us the NIM module standard, which had no databus at all but is still widely used, and collaborated with the European ESONE committee to bring us CAMAC (IEEE 583), which has a 24-bit data bus. The NIM committee then sponsored Fastbus (IEEE P960) with support from the Department of Energy, responding to pressure from the user community. Lou got things started and kept them moving, finding trouble spots and maneuvering around them, handling the sociological problems as well as participating in the mechanical and thermal design, and handling the distribution of information in this multilaboratory, multinational project.


Contact information:
Herb Johnson
New Jersey, USA
To email @ me, see
see my ordering Web page.

Copyright © 2009 Herb Johnson except for exerpt as quoted.