Runaway technology threatens our future
Praise the good old days of PC/104! The ISA bus was the expansion method of choice, processors consumed modest power levels, and chips boasted long life cycles. Nowadays, PC/104 technology advances quickly and in many different directions.
Praise the good old days of PC/104! The ISA bus was the expansion method of choice, processors consumed modest power levels, and chips boasted long life cycles. Board developers and their customers could count on a stable technology base, so they designed products with the confidence that they could recoup the cost of their investment and not spend too much time in redesign or requalification.
Then a certain pair of companies had a big idea: Advance technology as fast as possible to outrun the competition and keep customers coming back every two years when their current products become obsolete. In the consumer and office market, this concept caused enough headaches, with nonhomogeneous installed bases making it difficult to keep track of who had what, who needed to upgrade, and how to make everything work together. In the embedded market where longevity was critical to companies’ product life cycles and regulatory requirements such as FDA, this runaway technology philosophy spelled disaster.
Board developers have done a good job of keeping up by providing reasonable migration paths from old products to new. And to be fair the core technology suppliers (processors and operating systems) have done their share to make their new products largely backwards compatible with the old ones, minimizing upgrade difficulties. But today the situation is getting out of hand. By the time a CPU company comes to market with the latest Intel chipset, they are two generations behind. Core Duo, and now Core Quattro (what’s next: Core Centennial?) chips are already on the market, while many (if not most) PC/104 and PC/104-expandable CPU suppliers are still in the early stages of introducing their Pentium M/945 products. How can board suppliers keep up? And should they even try?
The beauty of PC/104 was that it isolated the system designer, and to a great extent the board designer as well, from changes in the underlying CPU technology. By designing to a common bus interface (ISA), I/O board makers could avoid worrying about what CPU would drive the system, and system designers could rely on the fact that virtually all I/O boards would work on virtually all CPUs. ISA was easy and cheap. A simple $1 PAL device was enough to implement a basic register-map interface for many I/O boards. Then came PCI with its higher bandwidth and corresponding complexity. PC/104 responded by adding a new connector for the new bus. But the interface required a larger and significantly more costly logic device. Now board vendors and customers had to choose between two buses, and the situation started to get more complex: My PC/104-Plus Ethernet card won’t work with your PC/104 CPU.
This two-bus complexity could be managed, but it was only a sign of things to come. Now, as technology vendors continue their push into the stratosphere, ISA and PCI are disappearing and a third bus, PCI Express, is taking their place. But the extremely high-frequency signaling of PCI Express places serious constraints on connector choices and board layout and interface logic design. Furthermore, with two connectors on the PC/104 board already, there isn’t room to add a third connector. In any case, why should we? Since when must PC/104 serve all customers in all applications and be compatible with all existing products?
And who needs PCI Express anyway, with its added cost in complex board design and layout as well as power-hungry processors that prevent I/O boards from being stacked on top due to the need for larger heat sinks and fans? Yes, many applications can use the higher bandwidth and processing power, but a huge market still exists of down-to-earth applications where an 8 MHz bus clock is more than enough still. (I know what you’re thinking: Didn’t someone once say, “Who could ever need more than 640K?”) Yes, but even on today’s latest processors we see the LPC bus, a de facto admission that PCI and PCI Express are not one size fits all. A low-cost, low-speed, simple address/data bus is still optimal for many functions on a CPU board.
So where does this line of inquiry lead us? Two conclusions:
First of all, as ISA disappears from almost all new processors, the very existence of PC/104 is threatened. A long-term solution is needed now to maintain the viability of this hugely successful market and integrate products that we have developed for the past 15 years. The PC/104 industry must consider how to address this threat head on to ensure the survival of PC/104, or we risk losing the momentum and spotlight we have justifiably earned. Secondly, a new approach is needed to incorporate the latest bus technology into a common platform for the future that can match PC/104 in its simplicity, reliability, and proliferation of vendors and products.
These two goals do not necessarily coincide. The best response to the current situation may be to split the market into two segments: Legacy and New Technology. The various proposals to combine ISA, PCI, and/or PCI Express on to a PC/104-like form factor all come with their own ideologies and corresponding trade-offs. We can argue day and night about which features are more important than others, and which compatibility must be maintained and which can be sacrificed. However the key issues to focus on are reliability (so that customers will accept the new technology), availability (multiple vendors designing to the same standard so that customers have a wide enough choice of products to attract them to the technology), and affordability (so that the concept of a mix-and-match multiboard solution is economically competitive).
That reminds me of another famous saying: “United we stand, divided we fall.” In reality the number one benefit of PC/104 was the fact that it was universal. All vendors designed to the same standard. The resulting selection of compatible products was so large that it provided a compelling reason to select PC/104 in spite of its many drawbacks. We will never have the perfect solution. But in order for any solution to succeed, we need unity.
Some people argue for evolution: Let the various solutions enter the market, and may the best one win. But evolution takes too long. I prefer intelligent design – vendors actively work together to create the best approach from day one, avoiding the cost and time that evolution exacts on us all. Isn’t that, after all, the true meaning of that term? And isn’t that one of the core purposes of the PC/104 Consortium?