Four-Machine TTL_PAPERS

H. Dietz, T. Mattox, T. Muhammad, et al.
School of Electrical and Computer Engineering, Purdue University

The TTL_PAPERS (TTL implementation of Purdue's Adapter for Parallel Execution and Rapid Synchronization) that was released at Supercomputing '94 is simple hardware that supports use of a group of four unmodified PCs or workstations as a fine-grain parallel computer. In fact, the hardware is disturbingly simple: connecting four machines through their parallel ports to a unit containing just eight TTL chips on a single-sided circuit board creates a tightly-coupled parallel machine. These eight chips implement four subsystems: barrier synchronization, parallel signaling, data communication, and LED display control.

The barrier mechanism allows any set of machines to synchronize with each other within just two I/O port operations (a few microseconds); it is implemented as two NAND trees and a latching ready signal, using just a 74LS20 and half a 74LS74. The parallel signaling hardware allows any machine to signal all the machines, and provides a special barrier to confirm that all machines have processed the signal; this uses another 74LS20 and the other half of the 74LS74. Because the standard parallel input port does not provide enough inputs for separate ready and parallel signal lines, 74LS125 and 74LS126 tri-state buffers are used to allow each machine to select which signal is visible to its input port.

The data communication mechanism consists of two 74LS40 NAND drivers, which effectively broadcast the bitwise NAND of nybbles of data from all machines. Because data is transmitted only as a side-effect of a barrier, all machines can work together to synthesize the desired communication function. For example, broadcast is accomplished by having all machines except the sender output nybbles with all bits logic 1. Likewise, a bit vector summarizing boolean values collected from all machines can be collected in a single operation by simply having each machine i output a nybble with 1 in each bit position except bit i, which would be set to that machine's boolean value. This ability to rapidly collect global information makes a wide variety of sophisticated communication operations efficient; thus, TTL_PAPERS often outperforms much "fancier" network hardware.

The remaining chip is a 74LS244 used to drive a bi-color LED to be: black (no parallel job), green (parallel job running), red (parallel job waiting), or yellow/orange (parallel OS running).

The reverse side of this sheet gives the board layout and circuit diagram. Full information is available from http://garage.ecn.purdue.edu/~papers

Alternatively, contact Prof. Hank Dietz, School of Electrical and Computer Engineering, Purdue University, West Lafayette, IN, 47907-1285, phone: (317) 494 3357, fax: (317) 494 3371, email: [email protected]