PDP-11

This article is about the PDP-11 series of minicomputers. For the PDP-11 processor architecture, see PDP-11 architecture.
PDP-11/40. The processor is at the bottom. A TU56 dual DECtape drive is installed above it.

The PDP-11 is a series of 16-bit minicomputers sold by Digital Equipment Corporation (DEC) from 1970 into the 1990s, one of a succession of products in the PDP series.[1][2] The PDP-11 had several uniquely innovative features,[3] and was easier to program than its predecessors through the additional general-purpose registers. The PDP-11 replaced the PDP-8 in many real-time applications, although both product lines lived in parallel for more than 10 years. In total, around 600,000 PDP-11s of all models were sold, making it one of DEC's most successful product lines.[4] Its successor in the mid-range minicomputer niche was the 32-bit VAX-11, named as a nod to the PDP-11's popularity.[5]

The PDP-11 is considered by some experts[6][7][8] to be the most popular minicomputer ever. Design features of the PDP-11 influenced the design of most late-1970s computer systems including the Intel x86[6] and the Motorola 68000.

Design features of PDP-11 operating systems, as well as other operating systems from Digital Equipment, influenced the design of other operating systems such as CP/M[9] and hence also MS-DOS.[10] For a decade, the PDP-11 was the smallest system that could run Unix;[11] the first officially named version ran on the PDP-11/20 in 1970. It is commonly stated that the C programming language took advantage of several low-level PDP-11–dependent programming features,[12] albeit not originally by design.[13]

History

In 1967–68, DEC engineers designed a 16-bit, word-addressed machine. Management cancelled the project and some of the engineers later left DEC and produced it as the Data General Nova. A subsequent effort, code-named "Desk Calculator", looked at a variety of options before choosing what became the 16-bit PDP-11;[14] DEC's previous PDP-8 and PDP-9 had 12- and 18-bit words, respectively. The PDP-11 family was announced in January 1970 and shipments began early that year. DEC sold over 170,000 PDP-11s in the 1970s.[15] Initially manufactured of small-scale transistor–transistor logic, a single-board large scale integration version of the processor was developed in 1975. A two-or-three-chip processor, the J-11 was developed in 1979. The last models of the PDP-11 line were the PDP-11/94 and -11/93 introduced in 1990.[2]

Innovative features

Instruction set orthogonality

The PDP-11 processor architecture has a mostly orthogonal instruction set. For example, instead of instructions such as load and store, the PDP-11 has a move instruction for which either operand (source and destination) can be memory or register. There are no specific input or output instructions; the PDP-11 uses memory-mapped I/O and so the same move instruction is used; orthogonality even enables moving data directly from an input device to an output device. More complex instructions such as add likewise can have memory, register, input, or output as source or destination.

Most operands can apply any of eight addressing modes to eight registers. The addressing modes provide register, immediate, absolute, relative, deferred (indirect), and indexed addressing, and can specify autoincrementation and autodecrementation of a register by one (byte instructions) or two (word instructions). Use of relative addressing lets a machine-language program be position-independent.

No dedicated I/O instructions

Early models of the PDP-11 had no dedicated bus for input/output, but only a system bus called the Unibus, as input and output devices were mapped to memory addresses.

An input/output device determined the memory addresses to which it would respond, and specified its own interrupt vector and interrupt priority. This flexible framework provided by the processor architecture made it unusually easy to invent new bus devices, including devices to control hardware that had not been contemplated when the processor was originally designed. DEC openly published the basic Unibus specifications, even offering prototyping bus interface circuit boards, and encouraging customers to develop their own Unibus-compatible hardware.

The Unibus made the PDP-11 suitable for custom peripherals. One of the predecessors of Alcatel-Lucent, the Bell Telephone Manufacturing Company, developed the BTMC DPS-1500 packet-switching (X.25) network and used PDP-11s in the regional and national network management system, with the Unibus directly connected to the DPS-1500 hardware.

Higher-performance members of the PDP-11 family, starting with the PDP-11/45 Unibus and 11/83 Q-bus systems, departed from the single-bus approach. Instead, memory was interfaced by dedicated circuitry and space in the CPU cabinet, while the Unibus continued to be used for I/O only. In the PDP-11/70, this was taken a step further, with the addition of a dedicated interface between disks and tapes and memory, via the Massbus. Although input/output devices continued to be mapped into memory addresses, some additional programming was necessary to set up the added bus interfaces.

Interrupts

The PDP-11 supports hardware interrupts at four priority levels. Interrupts are serviced by software service routines, which could specify whether they themselves could be interrupted (achieving interrupt nesting). The event that causes the interrupt is indicated by the device itself, as it informs the processor of the address of its own interrupt vector.

Interrupt vectors are blocks of two 16-bit words in low kernel address space (which normally corresponded to low physical memory) between 0 and 776. The first word of the interrupt vector contains the address of the interrupt service routine and the second word the value to be loaded into the PSW (priority level) on entry to the service routine.

The article on PDP-11 architecture provides more details on interrupts.

Designed for mass production

The PDP-11 was designed for ease of manufacture by semiskilled labor. The dimensions of its pieces were relatively non-critical. It used a wire-wrapped backplane. That is, the printed circuit boards plugged into a backplane connector. The backplane connectors had square pins that could be connected to by wrapping wires around them. The corners of the pins would bite into the wire to form a gas-tight (i.e. corrosion-proof, therefore reliable) connection.

LSI-11

Q-Bus board with LSI-11/2 CPU
DEC "Fonz-11" (F11) Chipset
DEC "Jaws-11" (J11) Chipset

The LSI-11 (PDP-11/03), introduced in February 1975[2] is the first PDP-11 model produced using large-scale integration; the entire CPU is contained on four LSI chips made by Western Digital (the MCP-1600 chip set; a fifth chip can be added to extend the instruction set, as pictured on the right). It uses a bus which is a close variant of the Unibus called the LSI Bus or Q-Bus; it differs from the Unibus primarily in that addresses and data are multiplexed onto a shared set of wires, as opposed to having separate sets of wires, as in the Unibus. It also differs slightly in how it addresses I/O devices and it eventually allowed a 22-bit physical address (whereas the Unibus only allows an 18-bit physical address) and block-mode operations for significantly improved bandwidth (which the Unibus does not support).

The CPU microcode includes a debugger: firmware with a direct serial interface (RS-232 or current loop) to a terminal. This let the operator do debugging by typing commands and reading octal numbers, rather than operating switches and reading lights, the typical debugging method at the time. The operator can thus examine and modify the computer's registers, memory, and input/output devices, diagnosing and perhaps correcting failures in software and peripherals (unless a failure disables the microcode itself). The operator can also specify which disk to boot from.

Both innovations increased the reliability and decreased the cost of the LSI-11.

Later Q-Bus based systems such as the LSI-11/23, /73, and /83 are based upon chip sets designed in house by Digital Equipment Corporation. Later PDP-11 Unibus systems were designed to use similar Q-Bus processor cards, using a Unibus adapter to support existing Unibus peripherals, sometimes with a special memory bus for improved speed.

There were other significant innovations in the Q-Bus lineup. For example, a system variant of the PDP-11/03 introduced full system Power-on self-test (POST).

Decline

The basic design of the PDP-11 was flexible, and was continually updated to use newer technologies. However, the limited throughput of the Unibus and Q-bus started to become a system-performance bottleneck, and the 16-bit logical address limitation hampered the development of larger software applications. The article on PDP-11 architecture describes the hardware and software techniques used to work around address-space limitations.

DEC's 32-bit successor to the PDP-11, the VAX (for "Virtual Address eXtension") overcame the 16-bit limitation, but was initially a superminicomputer aimed at the high-end time-sharing market. The early VAXes provided a PDP-11 compatibility mode under which much existing software could be immediately used, in parallel with newer 32-bit software.

In the 1980s, the IBM PC and its clones largely took over the small computer market; BYTE in 1984 reported that Venix on the PC's Intel 8088 microprocessor outperformed the same operating system on the PDP-11/23.[16] Newer microprocessors such as the Motorola 68000 (1979) and Intel 80386 (1985) also included 32-bit logical addressing. The mass-production of those chips eliminated any cost advantage for the 16-bit PDP-11. A line of personal computers based on the PDP-11, the DEC Professional series, failed commercially, along with other non-PDP-11 PC offerings from DEC.

In 1994 DEC[17] sold the PDP-11 system-software rights to Mentec Inc., an Irish producer of LSI-11 based boards for Q-Bus and ISA architecture personal computers, and in 1997 discontinued PDP-11 production. For several years, Mentec produced new PDP-11 processors. Other companies found a niche market for replacements for legacy PDP-11 processors, disk subsystems, etc.

By the late 1990s, not only DEC but most of the New England computer industry which had been built around minicomputers similar to the PDP-11 collapsed in the face of microcomputer-based workstations and servers.

Models

The PDP-11 processors tend to fall into several natural groups depending on the original design upon which they are based and which I/O bus they use. Within each group, most models were offered in two versions, one intended for OEMs and one intended for end-users. Although all models share the same instruction set, later models added new instructions and interpreted certain instructions slightly differently. As the architecture evolved, there were also variations in handling of some processor status and control registers.

Unibus models

Original PDP-11/20 front panel
Original PDP-11/70 front panel
Later PDP-11/70 with disks and tape

The following models use the Unibus as their principal bus:

Q-bus models

PDP-11/03, cover removed to show the CPU board, with memory board beneath. Two of the CPU chipset's four 40-pin packages have been removed, and the optional FPU is also missing.

The following models use the Q-Bus as their principal bus:

Models without standard bus

PDT-11/150

The PDT series were desktop systems marketed as "smart terminals". The /110 and /130 were housed in a VT100 terminal enclosure. The /150 was housed in a table-top unit which included two 8-inch floppy drives, three asynchronous serial ports, one printer port, one modem port and one synchronous serial port and required an external terminal. All three employed the same chipset as used on the LSI-11/03 and LSI-11/2 in four "microm"s. There is an option which combines two of the microms into one dual carrier, freeing one socket for an EIS/FIS chip. The /150 in combination with a VT105 terminal was also sold as MiniMINC, a budget version of the MINC-11.

The DEC Professional series are desktop PCs intended to compete with IBM's earlier 8088 and 80286 based personal computers. The models are equipped with 5¼ inch floppy disk drives and hard disks, except the 325 which has no hard disk. The original operating system was P/OS, which was essentially RSX-11M+ with a menu system on top. As the design was intended to avoid software exchange with existing PDP-11 models, their ill fate in the market was no surprise for anyone except DEC. The RT-11 operating system was eventually ported to the PRO series. A port of RSTS/E to the PRO series was also done internal to DEC, but it was not released. The PRO-325 and -350 units are based on the DCF-11 ("Fonz") chipset, the same as found in the 11/23, 11/23+ and 11/24. The PRO-380 is based on the DCJ-11 ("Jaws") chipset, the same as found in the 11/53,73,83 and others, though running only at 10 MHz because of limitations in the support chipset.

Models that were planned but never introduced

Special purpose versions

DEC GT40 running Lunar Lander
MINC-23

Unimation robot arm controller.

Unauthorized clones

The PDP-11 was sufficiently popular that many unauthorized PDP-11-compatible minicomputers and microcomputers were produced in Eastern Bloc countries. Some were pin-compatible with the PDP-11 and could use its peripherals and system software. These include:

Operating systems

Several operating systems were available for the PDP-11

From Digital

From third parties

Peripherals

TU10 9 track tape drive.

A wide range of peripherals were available; some of them were also used in other DEC systems like the PDP-8 or PDP-10. The following are some of the more common PDP-11 peripherals.

Use

The PDP-11 family of computers was used for many purposes. It was used as a standard minicomputer for general-purpose computing, such as timesharing, scientific, educational, medical, or business computing. Another common application was real-time process control and factory automation.

Some OEM models were also frequently used as embedded systems to control complex systems like traffic-light systems, medical systems, numerical controlled machining, or for network-management. An example of such use of PDP-11s was the management of the packet switched network Datanet 1. In the 1980s, the UK's air traffic control radar processing was conducted on a PDP 11/34 system known as PRDS – Processed Radar Display System at RAF West Drayton. The software for the Therac-25 medical linear particle accelerator also ran on a 32K PDP 11/23.[34] In 2013, it was reported that PDP-11 programmers would be needed to control nuclear power plants through 2050.[35]

Another use was for storage of test programs for Teradyne ATE equipment, in a system known as the TSD (Test System Director). As such, they were in use until their software was rendered inoperable by the Year 2000 problem. The U.S. Navy used a PDP-11/34 to control its Multi-station Spatial Disorientation Device, a simulator used in pilot training, until 2007, when it was replaced by a PC-based emulator that could run the original PDP-11 software and interface with custom Unibus controller cards.[36]

A PDP-11/45 was used for the experiment that discovered the J/ψ meson at the Brookhaven National Laboratory.[37] In 1976, Samuel C. C. Ting received the Nobel Prize for this discovery.

See also

Notes

  1. Bell; Gordon; Strecker, Bill (1975). "What We Learned From the PDP-11" (PDF). microsoft.com. p. 139. Retrieved September 10, 2008.
  2. 1 2 3 "16-bit Timeline". microsoft.com. Retrieved November 8, 2016.
  3. DEC. "PDP-11 Processor Handbook" (PDF). DEC. Retrieved 13 November 2015.
  4. Miller, David Donald (1997). Open VMS Operating System Concepts. Elsevier. p. 460. ISBN 978-1-55558-157-2. Retrieved 2014-04-14.
  5. O'Regan, Gerard (2012). A Brief History of Computing. Springer. p. 91. ISBN 978-1-4471-2359-0. Retrieved 2014-04-14.
  6. 1 2 Bob Supnik. "Simulators: Virtual Machines of the Past (and Future)". ACM Queue. 2004.
  7. Jeffrey R. Harrow. "My, How Far We've Come"
  8. Frank Rose. "Into the Heart of the Mind: An American Quest for Artificial Intelligence". 1985. p. 37.
  9. Ceruzzi, Paul (2003), A History of Modern Computing, MIT Press, p. 238, ISBN 978-0-262-53203-7, retrieved 5 August 2010
  10. Conner, Doug. "Father of DOS Still Having Fun at Microsoft". Micronews. Archived from the original on February 9, 2010. Retrieved 5 August 2010.
  11. 1 2 Fiedler, Ryan (October 1983). "The Unix Tutorial / Part 3: Unix in the Microcomputer Marketplace". BYTE. p. 132. Retrieved 30 January 2015.
  12. Bakyo, John. "DEC PDP-11, benchmark for the first 16/32 bit generation. (1970)" in Great Microprocessors of the Past and Present (V 13.4.0), Section Three, Part I. Accessed 2011-03-04
  13. "The Development of the C Language" in section More History, by Dennis M. Ritchie. Accessed August 5, 2011.
  14. McGowan, Larry. "How the PDP-11 Was Born". Retrieved 2015-01-22.
  15. Paul Cerruzi, A History of Modern Computing, MIT Press, 2003, ISBN 0-262-53203-4, page 199
  16. 1 2 Hinnant, David F. (Aug 1984). "Benchmarking UNIX Systems". BYTE. pp. 132–135, 400–409. Retrieved 23 February 2016.
  17. "Press Release re transfer of Operating Systems". Groups.google.com. Retrieved 2014-04-14.
  18. 1 2 Ritchie, Dennis M. (22 June 2002). "Odd Comments and Strange Doings in Unix". Bell Labs.
  19. "Development Project Report" (PDF). Retrieved 2014-04-14.
  20. Bruce Mitchell; Brian S. McCarthy (2005). "Multiprocessor FAQ". Machine Intelligence. Retrieved May 21, 2011.
  21. See, for example, Archived July 18, 2011, at the Wayback Machine.
  22. "Digital MINC-11". Binary Dinosaurs. Retrieved 2014-04-14.
  23. 1 2 EK-HSCMN-IN-002 HSC Controller Installation Manual
  24. VAX 8500/8550 System Hardware User's Guide. Digital Equipment Corporation. 1986. pp. 1–8.
  25. TPA-1140,
  26. Ákos Varga. "TPA-1148". Hampage.hu. Retrieved 2014-04-14.
  27. Ákos Varga. "TPA-11/440". Hampage.hu. Retrieved 2014-04-14.
  28. "CalData_brochure" (PDF). Retrieved 2014-04-14.
  29. Ion Glodeanu (coord.), Oscar Hoffman, Doina Dragomirescu (2003). Actorii sociali ai promovării tehnologiilor, informaţiei şi comunicaţiilor (in Romanian). Editura Mica Valahie. p. 122. ISBN 978-973-85884-4-8. Retrieved 2014-04-14.
  30. http://uknc.narod.ru/Doc/rt11book.txt
  31. 1 2 3 4 5 6 7 8 9 10 11 "The PDP-11 FAQ". Village.org. 2000-04-18. Retrieved 2014-04-14.
  32. Brinch Hansen, Per (1976), The Solo Operating System: A Concurrent Pascal Program (PDF), retrieved 22 June 2011
  33. "The History of Unix". BYTE. August 1983. p. 188. Retrieved 31 January 2015.
  34. Leveson, Nancy G., and Clark S. Turner. "An Investigation of the Therac-25 Accidents." Computer July 1993: 18-41.
  35. Richard Chirgwin (June 19, 2013). "Nuke plants to rely on PDP-11 code UNTIL 2050: Programmers and their walking sticks converge in Canada". Retrieved June 19, 2013.
  36. Claremont, Bruce (February 2008). "PDP-11 Replacement Keeps the Navy's MSDD Spinning" (PDF). Retrieved May 2012. Check date values in: |access-date= (help)
  37. Aubert, J.J.; et al. (November 1974). "Experimental Observation of a Heavy Particle J".

References

Further reading

Wikimedia Commons has media related to PDP-11.
This article is issued from Wikipedia - version of the 11/18/2016. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.