Difference between revisions of "PDP-10"
m (→External links: +1) |
(Add hdw details - busses, devices, front ends) |
||
Line 1: | Line 1: | ||
− | [[Image:PDP-10 1090.jpg|300px|rightt|thumb|A PDP-10 1090]] | + | [[Image:PDP-10 1090.jpg|300px|rightt|thumb|A PDP-10 KL10 Model 1090]] |
A series of large, [[List of 36-bit computers|36-bit]] [[word]] [[mainframe]]-like systems built by [[Digital Equipment Corporation|DEC]]. They were basically a re-implementation of the earlier [[PDP-6]] [[architecture]], whose [[hardware]] engineering had been a failure. (The machines were so similar at the programming level that PDP-6 [[object code]] could run on a PDP-10.) | A series of large, [[List of 36-bit computers|36-bit]] [[word]] [[mainframe]]-like systems built by [[Digital Equipment Corporation|DEC]]. They were basically a re-implementation of the earlier [[PDP-6]] [[architecture]], whose [[hardware]] engineering had been a failure. (The machines were so similar at the programming level that PDP-6 [[object code]] could run on a PDP-10.) | ||
− | DEC sold 4 different generations of PDP-10 processors: the [[KA10]], the [[KI10]], the [[KL10]], and the [[KS10]]. The first three were marketed as the [[DECsystem-10]], running the [[TOPS-10]] [[operating system]]; the third was also sold as the [[DECSYSTEM-20]], running [[TOPS-20]]. (The varying capitalization was the result of a trademark infringment suit.) | + | DEC sold 4 different generations of PDP-10 processors: the [[KA10]], the [[KI10]], the [[KL10]], and the small [[KS10]]. |
+ | |||
+ | PDP-10s were very important machines on the early [[Internet]], being one of the few (relatively!) cheaply available machines which could run a full [[Network Control Program|NCP]] and later [[TCP/IP]] stack as a multi-user environment at the time. | ||
+ | |||
+ | They still have a large following today. There are several good [[simulator]]s available, notably [[SIMH]] and [[KLH10]]. | ||
+ | |||
+ | ==Hardware== | ||
+ | |||
+ | DEC-10's supported a number of different [[bus]]ses; there are different types of busses for [[main memory]] and [[peripheral]]s. | ||
+ | |||
+ | There were three generations of main memory bus, and memory systems to attach to them: the first two were the so-called 'external memory bus', in 18- and 22-bit [[address]] forms (for the KA10, and KI10 and early KL10, respectively), and the last with the 'internal memory bus', the 'S-Bus'. (For the later KL10, a later version of the S-Bus, the X-Bus, differed only in the [[logic family]] it interfaced to). There were minor differences between the two external bus types, requiring a [[KI10-M Memory Bus Adapter]] if 18-bit units are to be attached to a KI10. Similarly, 22-bit units could be attached to the S-Bus using a [[DMA20 Memory Bus Controller]]. | ||
+ | |||
+ | For peripherals, on the KA10 and KI10 an 'I/O bus' was provided. It allowed peripherals to [[interrupt]] the [[Central Processing Unit|CPU]], and supported [[programmed I/O]]; for [[Direct Memory Access|DMA]], [[mass storage]] peripherals connected directly to memories ([[PDP-10 memories]] are generally [[multi-port memory|multi-port]]). On the KL10, [[RH20 MASSBUS controller]]s supported mass storage devices; a [[DIA20 In/Out Bus Controller]] could be attached, to provide a KA10/KI10 compatible I/O bus. | ||
+ | |||
+ | The KS10, which was ''sui generis'', had its own custom memory bus, which appeared only on the main [[backplane]]. For I/O, it used the [[UNIBUS]] and (via [[RH11 MASSBUS controller|RH11]]'s) the [[MASSBUS]]. | ||
+ | |||
+ | ===Devices=== | ||
+ | |||
+ | In the KA10 and KI10, high-speed mass storage peripherals generally connected via a [[channel]], the [[DF10 Data Channel]], which attached (as noted above) to both an external memory bus, and the I/O bus. It connected mass storage [[device controller]]s, such as: | ||
+ | |||
+ | * [[RP10 disk controller]] - [[RP01 disk drive|RP01]], [[RP02 disk drive|RP02]] and [[RP03 disk drive]]s | ||
+ | * [[TM10 Magnetic Tape Control]] - [[TU10 magtape drive|TU10]] and others | ||
+ | |||
+ | The [[RH10 MASSBUS controller]], for MASSBUS mass storage devices, which appeared toward the end of the KI10 period, was similarly connected. On the KL10, up to 8 [[RH20 MASSBUS controller]]s could be connected. | ||
+ | |||
+ | ===Front ends=== | ||
+ | |||
+ | PDP-10's made use of [[front end]] computers from an early stage. | ||
+ | |||
+ | The [[DL10]], also connected to an external memory bus, and the I/O bus, allowed the PDP-10 CPU to control up to four [[PDP-11]]'s | ||
+ | |||
+ | On the KL10, up to 4 [[DTE20 Interface]]s, each of which allowed the connection of one PDP-11, could be attached (one PDP-11, the 'master', would [[bootstrap]] the KL10, including loading the [[microcode]], but it could also be used for other 'normal' front end activities, such as driving groups of [[asynchronous serial line]]s). | ||
+ | |||
+ | ==Software== | ||
+ | |||
+ | The first three generations of PDP-10's were marketed as the [[DECsystem-10]], running the [[TOPS-10]] [[operating system]]; the third was also sold as the [[DECSYSTEM-20]], running [[TOPS-20]]. (The varying capitalization was the result of a trademark infringment suit.) | ||
Two other very important operating systems also ran on PDP-10's: MIT's [[Incompatible Timesharing System|ITS]] (a very advanced system, from whence came [[EMACS]], and much more besides), and [[TENEX]], which DEC later turned into TOPS-20. | Two other very important operating systems also ran on PDP-10's: MIT's [[Incompatible Timesharing System|ITS]] (a very advanced system, from whence came [[EMACS]], and much more besides), and [[TENEX]], which DEC later turned into TOPS-20. | ||
+ | |||
+ | ==Others== | ||
[[Image:DECsystem-10 ad.jpg|150px|left|thumb|PDP-10 ad]] | [[Image:DECsystem-10 ad.jpg|150px|left|thumb|PDP-10 ad]] | ||
− | PDP- | + | The 36-bit line was cancelled by DEC many times. The PDP-6 was difficult to manufacture and maintain, and only 23 were sold; it was cancelled not long after its introduction. However, it made a comeback as the PDP-10, which was a success. This uncertain future allowed a number of small vendors to sell PDP-10 'clones'. |
− | |||
− | |||
− | |||
− | |||
− | + | ===Cancelled DEC projects=== | |
* KXF10 "Dolphin", cancelled around 1978. | * KXF10 "Dolphin", cancelled around 1978. | ||
Line 22: | Line 55: | ||
* KD10 | * KD10 | ||
− | ==Clones== | + | ===Clones=== |
+ | |||
+ | Two PDP-10 clones were built at [[Xerox PARC]], since that was easier than trying to convince [[Xerox]] top management to allow the purchase of a relatively expensive machine from a direct competitor. | ||
− | * | + | * [[MAXC]] |
===Commercial=== | ===Commercial=== | ||
Line 34: | Line 69: | ||
* XKL: TOAD-1, TOAD-2 | * XKL: TOAD-1, TOAD-2 | ||
− | ==Hobbyist recreations== | + | ===Hobbyist recreations=== |
* David Conroy: [http://www.fpgaretrocomputing.org/pdp10x/ PDP-10/X] | * David Conroy: [http://www.fpgaretrocomputing.org/pdp10x/ PDP-10/X] | ||
Line 57: | Line 92: | ||
* Jeff Parsons: [http://github.com/jeffpar/pcjs PCjs] | * Jeff Parsons: [http://github.com/jeffpar/pcjs PCjs] | ||
* Mark Garrett: [http://github.com/gcsgithub/titan TITAN] | * Mark Garrett: [http://github.com/gcsgithub/titan TITAN] | ||
− | + | <!-- | |
==See also== | ==See also== | ||
− | * [[ | + | * [[]] |
− | + | --> | |
==External links== | ==External links== | ||
Revision as of 21:19, 9 April 2021
A series of large, 36-bit word mainframe-like systems built by DEC. They were basically a re-implementation of the earlier PDP-6 architecture, whose hardware engineering had been a failure. (The machines were so similar at the programming level that PDP-6 object code could run on a PDP-10.)
DEC sold 4 different generations of PDP-10 processors: the KA10, the KI10, the KL10, and the small KS10.
PDP-10s were very important machines on the early Internet, being one of the few (relatively!) cheaply available machines which could run a full NCP and later TCP/IP stack as a multi-user environment at the time.
They still have a large following today. There are several good simulators available, notably SIMH and KLH10.
Contents
Hardware
DEC-10's supported a number of different busses; there are different types of busses for main memory and peripherals.
There were three generations of main memory bus, and memory systems to attach to them: the first two were the so-called 'external memory bus', in 18- and 22-bit address forms (for the KA10, and KI10 and early KL10, respectively), and the last with the 'internal memory bus', the 'S-Bus'. (For the later KL10, a later version of the S-Bus, the X-Bus, differed only in the logic family it interfaced to). There were minor differences between the two external bus types, requiring a KI10-M Memory Bus Adapter if 18-bit units are to be attached to a KI10. Similarly, 22-bit units could be attached to the S-Bus using a DMA20 Memory Bus Controller.
For peripherals, on the KA10 and KI10 an 'I/O bus' was provided. It allowed peripherals to interrupt the CPU, and supported programmed I/O; for DMA, mass storage peripherals connected directly to memories (PDP-10 memories are generally multi-port). On the KL10, RH20 MASSBUS controllers supported mass storage devices; a DIA20 In/Out Bus Controller could be attached, to provide a KA10/KI10 compatible I/O bus.
The KS10, which was sui generis, had its own custom memory bus, which appeared only on the main backplane. For I/O, it used the UNIBUS and (via RH11's) the MASSBUS.
Devices
In the KA10 and KI10, high-speed mass storage peripherals generally connected via a channel, the DF10 Data Channel, which attached (as noted above) to both an external memory bus, and the I/O bus. It connected mass storage device controllers, such as:
- RP10 disk controller - RP01, RP02 and RP03 disk drives
- TM10 Magnetic Tape Control - TU10 and others
The RH10 MASSBUS controller, for MASSBUS mass storage devices, which appeared toward the end of the KI10 period, was similarly connected. On the KL10, up to 8 RH20 MASSBUS controllers could be connected.
Front ends
PDP-10's made use of front end computers from an early stage.
The DL10, also connected to an external memory bus, and the I/O bus, allowed the PDP-10 CPU to control up to four PDP-11's
On the KL10, up to 4 DTE20 Interfaces, each of which allowed the connection of one PDP-11, could be attached (one PDP-11, the 'master', would bootstrap the KL10, including loading the microcode, but it could also be used for other 'normal' front end activities, such as driving groups of asynchronous serial lines).
Software
The first three generations of PDP-10's were marketed as the DECsystem-10, running the TOPS-10 operating system; the third was also sold as the DECSYSTEM-20, running TOPS-20. (The varying capitalization was the result of a trademark infringment suit.)
Two other very important operating systems also ran on PDP-10's: MIT's ITS (a very advanced system, from whence came EMACS, and much more besides), and TENEX, which DEC later turned into TOPS-20.
Others
The 36-bit line was cancelled by DEC many times. The PDP-6 was difficult to manufacture and maintain, and only 23 were sold; it was cancelled not long after its introduction. However, it made a comeback as the PDP-10, which was a success. This uncertain future allowed a number of small vendors to sell PDP-10 'clones'.
Cancelled DEC projects
- KXF10 "Dolphin", cancelled around 1978.
- KT20 "Minnow", cancelled around 1979.
- KC10 "Jupiter", cancelled 1983.
- KD10
Clones
Two PDP-10 clones were built at Xerox PARC, since that was easier than trying to convince Xerox top management to allow the purchase of a relatively expensive machine from a direct competitor.
Commercial
- Foonly: F-1, F2, F3, F4, F5 (unfinished)
- Systems Concepts: SC-30M, SC-40
- Tymshare: System 26, System 26KL.
- CompuServe: JRG-1 (unfinished)
- XKL: TOAD-1, TOAD-2
Hobbyist recreations
- David Conroy: PDP-10/X
- Neil Franklin: (unfinished)
- Rob Doyle: KS10 FPGA
- David Bridgham: KV10 (in progress)
- Angelo Papenhoff: FPDPGA, PDP-6 and KA10 FPGA.
Software simulators
- S W Galley: virtual machine PDP-10
- Megan Gentry: sim10
- Stu Grossman: kx10
- Ken Harrenstien: KLH10
- Eric Smith: (unfinished)
- Daniel Seagraves: e10
- Tim Stark: ts10, MSE
- Bob Supnik: KS10 simulator for SIMH.
- Richard Cornwell: PDP-6, KA10, KI10, and KL10 simulators for SIMH
- Angelo Papenhoff: PDP-6 simulator
- Bruce Baumgart: WAITS reenactment
- Jeff Parsons: PCjs
- Mark Garrett: TITAN