Stacking architectures such as PC/104 and computer-on-module (COM) rule when it comes to customizing compact, rugged systems. With standardization, boards from one vendor can plug into another, providing a host of options. As a result, developers can seize processing power from vendors with single-board computers (SBCs) and I/O boards from another vendor.
The typical stacking system, such as PC/104, paves the way for simple expansion and offers ruggedization even without a case or rack mount. This is possible due to the support that is provided by the connectors in addition to four mounting holes for bolting boards together.
Greater diversity among stacking architectures can be traced to the use of new point-to-point interconnect technologies. Still, maintaining backward compatibility leads to some interesting configurations, such as the venerable PC/104-Plus. It retains the Industry Standard Architecture (ISA) bus found in PC/104 and employs a Peripheral Component Interconnect (PCI) bus.
With its speed and functionality, designers might think that the move to the PCI bus would be complete by now. Not so. ISAbased PC/104 interface cards remain in front in terms of variety thanks to their simplicity and cost. The two tend to be related as ISA support was initially very easy to build. Cost is likely to keep ISA a major player in the future, though other factors will affect its position.
One reason for moving to PCI was speed. PCI is significantly faster than ISA, and it has more features such as better interrupt support. The host can recognize PCI devices, and the operating system can configure the system accordingly. The programmer must configure ISA devices.
Speed is also the reason for the latest crop of stackable solutions that incorporate PCI Express, which is even faster. PCI Express is a point-to-point interface, so the stacks look a bit different electrically from the bus-based PC/104-Plus counterparts that include ISA and PCI buses (Fig. 1). The diagram shows the logical bus versus point-to-point connectivity. It is possible to mix and match.
STACKING THE DECK
In the bus approach, each device that’s logically connected to the bus will have a set of transceivers attached to the bus, though the diagram may seem to indicate that the transceivers terminate bus segments.
The point-to-point approach starts with a set of interfaces. A device uses one interface and passes on the others, which requires a major change in the connectors utilized. Comparatively, the bus approach typically passes through the board using a single connector, while the point-to-point approach requires a pair of connectors.
Using one interface is easy. Shifting the remaining signals allows the next board on the stack to grab the first interface signals. In this case, though, it won’t be the first interface from the host. Rather, it’s one of the remaining interfaces. This implementation doesn’t require any jumpers for connection configuration purposes.
Position in the bus-oriented stack is irrelevant. This is advantageous for designers because devices that dissipate lots of heat can be placed on the ends of the stack, where passive or active cooling mechanisms are easily added.
Position in the point-to-point stack is important but not necessarily critical based on the implementation of the shifting mechanism to realign the interface signals. Figure 1 shows how a device interface is connected to the first bottom connection and the last top connection. This would permit stacking above and below a host. Otherwise, stacking could only proceed up the stack.
The position within a point-to-point stack will affect which interface is employed only relative to other boards using the same kind of interface. For example, assume a system stack starting with a host board, two USB device boards, and two x1 PCI Express device boards.
The USB and PCI Express boards can be rearranged arbitrarily, and the USB boards will always use the first two USB interfaces and likewise for the PCI Express boards. The USB board closest to the host will use the first USB interface because all interfaces not used in a point-to-point stack are passed up the stack.
Boards designed to work in a mixed environment, such as a PCI or ISA bus system and a PCI Express system, typically need a pair of connections. However, one of those connections will simply pass the signals of the other through without modification or connections. It’s also possible to have a device that connects to both. The advantage here is that a single board could be used in either environment, though the added cost and complexity will likely make these types of boards rare.
In practice, stacking architectures are either bus-oriented or bus and point-to-point, although a point-to-point-only implementation is possible. In fact, some interfaces such as the Serial Peripheral Interface (SPI) utilize both approaches. With SPI, the clock and data are bus-oriented while the select lines are point-to-point. For example, Versalogic’s SPX architecture is based on SPI.