Dual Processors
The PDS-1's display processor and its minicomputer ran simultaneously, out of the same memory.
Instructions for the display processor consisted of 1-byte short-stroke instructions for letters and curves, and 6-byte long vector instructions, and 2-byte unconditional jumps. The display processor had no conventional ALU instructions and never modified memory. Jumps supported subroutine calls for repeated objects like letters and symbols. Jumps also supported arranging displayed objects into linked lists for quick editing. XY positions were in integer form only. There was no support for rotations or arbitrary scaling on the fly. If a symbol crossed over an edge of the screen, the beam wrapped around to the other side rather than being clipped, making a smear. So higher levels of the application had to do the clipping test, using separate data structures. (This was fixed in later models.) Programming the letter font subroutines was via assembler language. Code for line drawings and overall layout was generated on the fly, by programs running on the local minicomputer or on a large remote computer.
The PDS-1's built-in minicomputer was needed for responding to user keyboard and light pen interactions quickly, without delays in talking to a remote timeshared large computer for help. The minicomputer's main task was to build and modify the display list as needed for the next refresh cycle. For text and 2-D line graphics this was easy and did not involve much computing. To minimize costs, Imlac designed their own simple minicomputer with as few registers and logic gates as possible. It was a single-accumulator machine much like a DEC PDP-8, except using 16-bit instructions and data instead of 12 bits. There were no integer multiply/divide instructions, no floating point instructions, no microprogramming, no virtual addressing, and no cache. The single form of address modification was via indirect address pointers held in memory. Certain pointer cells would auto-increment when used. Stack operations were not supported.
Programming of this minicomputer was via assembler language. It was not object code compatible with anything else and so had limited tool support. Imlac eventually added a self-hosted Fortran compiler (using an interpreter?) with hour-long compiles due to the cramped memory. Some PDS models had an optional IBM 2310 cartridge disk drive or 8-inch floppy drive. These ran a rudimentary disk OS supporting program overlays. The disks were dropped from later products.
The PDS-1 electronics were built from 7400 series low-density TTL integrated circuits, with only a dozen logic gates or 4 register bits per DIP chip. Small printed circuit cards held up to 12 chips each. The shallow desk pedestal held three racks or rows of cards, with 25 cards per row, and a wire wrap backplane connecting all cards. There was no uniform backplane bus. Customer documentation included complete schematics down to the gate level, so that customers could design their own interface boards. It was possible to see, touch, and understand every detail of how the whole system worked. Cycle time for the core memory was 2.0 microseconds for the PDS-1, and 1.8 microseconds for PDS-1D. TTL logic ran 10x faster, with 10 timing pulses per core memory cycle.
The basic PDS-1 did not include the optional hardware cards for long vectors. Instead, the minicomputer created a long sequence of short-stroke display instructions. The software used a quick Breshenham method to compute intermediate points for sloped lines without doing multiplies or divides. The long vector hardware similarly needed only an add/subtract circuit. If a long vector program was mistakenly run on a basic machine without that option, the display processor could go wild and potentially burn the monitor phosphor or deflection amplifiers.
Read more about this topic: Imlac PDS-1
Famous quotes containing the words dual and/or processors:
“Thee for my recitative,
Thee in the driving storm even as now, the snow, the winter-day
declining,
Thee in thy panoply, thy measurd dual throbbing and thy beat
convulsive,
Thy black cylindric body, golden brass and silvery steel,”
—Walt Whitman (18191892)
“The information links are like nerves that pervade and help to animate the human organism. The sensors and monitors are analogous to the human senses that put us in touch with the world. Data bases correspond to memory; the information processors perform the function of human reasoning and comprehension. Once the postmodern infrastructure is reasonably integrated, it will greatly exceed human intelligence in reach, acuity, capacity, and precision.”
—Albert Borgman, U.S. educator, author. Crossing the Postmodern Divide, ch. 4, University of Chicago Press (1992)