HOME

TheInfoList




Digital Equipment Corporation Digital Equipment Corporation (DEC ), using the Digital, was a major American company in the from the 1960s to the 1990s. The company was co-founded by and in 1957. Olsen was president until forced to resign in 1992, after the company had go ...
(DEC)'s PDP-10, later marketed as the DECsystem-10, is a
mainframe computer A pair of IBM mainframes. On the left is the IBM z Systems z13. On the right is the IBM LinuxONE Rockhopper.">IBM_LinuxONE.html" ;"title="IBM z Systems z13. On the right is the IBM LinuxONE">IBM z Systems z13. On the right is the IBM LinuxONE R ...
family manufactured beginning in 1966 and discontinued in 1983. 1970s models and beyond were marketed under the DECsystem-10 name, especially as the
TOPS-10 TOPS-10 System (''Timesharing / Total Operating System-10'') is a discontinued from (DEC) for the (or DECsystem-10) family. Launched in 1967, TOPS-10 evolved from the earlier "Monitor" software for the and PDP-10 computers; this was renamed t ...
operating system became widely used. The PDP-10's architecture is almost identical to that of DEC's earlier
PDP-6 The PDP-6 (''Programmed Data Processor-6'') is a computer model developed by Digital Equipment Corporation (DEC) in 1964. It was influential primarily as the prototype (effectively) for the later PDP-10; the instruction sets of the two machines ar ...
, sharing the same
36-bit 36-bit computers were popular in the early mainframe computer A mainframe computer, informally called a mainframe or big iron, is a computer A computer is a machine that can be programmed to carry out sequences of arithmetic or logical ...
word In linguistics, a word of a spoken language can be defined as the smallest sequence of phonemes that can be uttered in isolation with semantic, objective or pragmatics, practical meaning (linguistics), meaning. In many languages, words also cor ...
length and slightly extending the instruction set (but with improved hardware implementation). Some aspects of the
instruction set In computer science, an instruction set architecture (ISA), also called computer architecture, is an abstract model of a computer. A device that executes instructions described by that ISA, such as a central processing unit (CPU), is called an '' ...
are unusual, most notably the ''
byte The byte is a unit of digital information that most commonly consists of eight bit The bit is a basic unit of information in computing Computing is any goal-oriented activity requiring, benefiting from, or creating computing machinery. It ...
'' instructions, which operated on
bit field A bit field is a data structure Image:Hash table 3 1 1 0 1 0 0 SP.svg, 315px, A data structure known as a hash table. In computer science, a data structure is a data organization, management, and storage format that enables efficient access and ...
s of any size from 1 to 36 bits inclusive, according to the general definition of a byte as ''a contiguous sequence of a fixed number of bits''. The PDP-10 is the machine that made
time-sharing In computing Computing is any goal-oriented activity requiring, benefiting from, or creating computing machinery. It includes the study and experimentation of algorithmic processes and development of both computer hardware , hardware and softw ...
common, and this and other features made it a common fixture in many university computing facilities and research labs during the 1970s, the most notable being
Harvard University Harvard University is a private Private or privates may refer to: Music * "In Private "In Private" was the third single in a row to be a charting success for United Kingdom, British singer Dusty Springfield, after an absence of nearly tw ...

Harvard University
's Aiken Computation Laboratory,
MIT Massachusetts Institute of Technology (MIT) is a private land-grant research university A research university is a university A university ( la, universitas, 'a whole') is an educational institution, institution of higher education, hi ...
's AI Lab and
Project MAC MIT Computer Science and Artificial Intelligence Laboratory (CSAIL) is a research institute A research institute, research centre, or research center is an establishment founded for doing research. Research institutes may specialize in basic r ...
,
Stanford , mottoeng = "The wind of freedom blows" , type = Private university, Private research university , academic_affiliations = Association of American Universities, AAUNational Space Grant College and Fellowship Program, Space-grant , establishe ...

Stanford
's
SAIL A sail is a tensile structure by Vladimir Shukhov (during construction), Nizhny Novgorod, 1895 in Kings Domain, Melbourne A tensile structure is a construction of elements carrying only tension (physics), tension and no compression (physical ...
,
Computer Center CorporationThis small Washington state company offered time-sharing on a PDP-10. Its customers included Bill Gates and Paul Allen. Nicknamed C-Cubed, this company was founded in 1968 and closed in 1970. Misc Two other companies, both based in New Jersey, use ...
(CCC),
ETH Eth (, uppercase Letter case (or just case) is the distinction between the letters that are in larger uppercase or capitals (or more formally ''majuscule'') and smaller lowercase (or more formally ''minuscule'') in the written represe ...

ETH
(ZIR), and
Carnegie Mellon University Carnegie Mellon University (CMU) is a private university, private research university based in Pittsburgh, Pennsylvania. Founded in 1900, the university is a merger of the Carnegie Institute of Technology and the Mellon Institute of Industrial Re ...
. Its main
operating system An operating system (OS) is system software System software is software designed to provide a platform for other software. Examples of system software include operating systems like macOS macOS (; previously Mac OS X and later ...

operating system
s, TOPS-10 and TENEX, were used to build out the early
ARPANET The Advanced Research Projects Agency Network (ARPANET) was the first wide-area packet-switching In telecommunications, packet switching is a method of grouping data that is transmitted over a digital network into '' packets''. Packets are ...
. For these reasons, the PDP-10 looms large in early
hacker folklore
hacker folklore
. Projects to extend the PDP-10 line were eclipsed by the success of the unrelated
VAX VAX is a series of computers featuring a 32-bit 32-bit microcomputers are computers in which 32-bit microprocessor A microprocessor is a computer processor where the data processing logic and control is included on a single integrate ...
superminicomputer A superminicomputer, colloquially supermini, was a high-end minicomputer A minicomputer, or colloquially mini, is a class of smaller computers that was developed in the mid-1960s and sold for much less than mainframe and mid-size computers fro ...
, and the cancellation of the PDP-10 line was announced in 1983. By late 1980 DEC reportedly had sold "about 1500 DECsystem-10s."


Models and technical evolution

The original PDP-10 processor is the KA10, introduced in 1968. It uses discrete
transistor upright=1.4, gate A gate or gateway is a point of entry to or from a space enclosed by walls. The word derived from old Norse "gat" meaning road A road is a thoroughfare, route, or way on land between two Location (geography), places tha ...

transistor
s packaged in DEC's
Flip-Chip in a flip-chip BGA package (FCBGA-479); the silicon die appears dark blue Flip chip, also known as controlled collapse chip connection or its abbreviation, C4, is a method for interconnecting dies such as semiconductor device A semiconductor ...
technology, with backplanes
wire wrap Wire wrap is an electronic component assembly technique that was invented to wire telephone A telephone is a telecommunications Appliance (disambiguation), device that permits two or more users to conduct a conversation when they are too ...
ped via a semi-automated manufacturing process. Its cycle time is 1 μs and its add time 2.1 μs. In 1973, the KA10 was replaced by the KI10, which uses
transistor–transistor logic Transistor–transistor logic (TTL) is a logic family In computer engineering, a logic family may refer to one of two related concepts. A logic family of monolithic digital integrated circuit devices is a group of electronic logic gates constructed ...
(TTL) SSI. This was joined in 1975 by the higher-performance KL10 (later faster variants), which is built from
emitter-coupled logic In electronics, emitter-coupled logic (ECL) is a high-speed integrated circuit bipolar transistor logic family. ECL uses an overdriven bipolar junction transistor (BJT) differential amplifier with single-ended input and limited emitter current to a ...
(ECL),
microprogram Microcode is a processor design Processor design is the design engineerA design engineer is an engineer focused on the engineering design process in any of the various engineering disciplines (including civil engineer, civil, mechanical engineerin ...
med, and has
cache Cache, caching, or caché may refer to: Places * Cache (Aosta) Cache is a frazione of the city of Aosta, in the Aosta Valley region of Italy. Frazioni of Aosta Valley Aosta {{Aosta-geo-stub ..., a frazione in Italy * Cache Creek (disambig ...
memory. The KL10's performance was about 1 megaflops using 36-bit floating point numbers on matrix row reduction. It was slightly faster than the newer VAX-11/750, although more limited in memory. A smaller, less expensive model, the KS10, was introduced in 1978, using TTL and Am2901
bit-slice Bit slicing is a technique for constructing a central processing unit, processor from modules of processors of smaller bit width, for the purpose of increasing the word length; in theory to make an arbitrary n-bit CPU. Each of these component mod ...
components and including the
PDP-11 The PDP-11 is a series of 16-bit 16-bit microcomputers are computers in which 16-bit microprocessors were the norm. A 16-bit register can store 216 different values. The range (computer programming), range of integer values that can be stored i ...
Unibus The Unibus was the earliest of several computer bus trolleybus in Toronto Toronto is the capital city of the Provinces and territories of Canada, Canadian province of Ontario. With a recorded population of 2,731,571 in 2016, it is the ...

Unibus
to connect peripherals. The KS10 was marketed as the DECsystem-2020, part of the DECsystem-20 range; it was DEC's entry in the
distributed processing Distributed computing is a field of computer science Computer science deals with the theoretical foundations of information, algorithms and the architectures of its computation as well as practical techniques for their application. Comp ...
arena, and it was introduced as "the world's lowest cost mainframe computer system."


KA10

The KA10 has a maximum main memory capacity (both virtual and physical) of 256 kilowords (equivalent to 1152
kilobyte The kilobyte is a multiple of the unit byte The byte is a unit of digital information that most commonly consists of eight bit The bit is a basic unit of information in computing Computing is any goal-oriented activity requiring, benefi ...
s); the minimum main memory required is 16 kilowords. As supplied by DEC, it did not include
paging In computer A computer is a machine that can be programmed to carry out sequences of arithmetic or logical operations automatically. Modern computers can perform generic sets of operations known as Computer program, programs. These prog ...

paging
hardware;
memory management Memory management is a form of resource management In organizational studies, resource management is the efficient and effective development of an organization's resources when they are needed. Such resources may include the financial resource ...
consists of two sets of protection and relocation registers, called ''
base and bounds In computing base and bounds refers to a simple form of virtual memory where access to computer memory is controlled by one or a small number of sets of processor registers called ''base and bounds registers''. In its simplest form each user proces ...
'' registers. This allows each half of a user's
address space In computing Computing is any goal-oriented activity requiring, benefiting from, or creating computing machinery. It includes the study and experimentation of algorithm of an algorithm (Euclid's algorithm) for calculating the greatest common ...
to be limited to a set section of
main memory A spindle of DVD-RWs Computer data storage is a technology consisting of computer components and Data storage device, recording media that are used to retain digital data (computing), data. It is a core function and fundamental component of ...
, designated by the base physical address and size. This allows the model of separate read-only shareable code segment (normally the high segment) and read-write data/
stack
stack
segment (normally the low segment) used by
TOPS-10 TOPS-10 System (''Timesharing / Total Operating System-10'') is a discontinued from (DEC) for the (or DECsystem-10) family. Launched in 1967, TOPS-10 evolved from the earlier "Monitor" software for the and PDP-10 computers; this was renamed t ...
and later adopted by
Unix Unix (; trademarked as UNIX) is a family of multitasking, multiuser Multi-user software is computer software Software is a collection of Instruction (computer science), instructions and data (computing), data that tell a computer how to ...

Unix
. Some KA10 machines, first at MIT, and later at
Bolt, Beranek and Newman Raytheon BBN Technologies (originally Bolt Beranek and Newman Inc.) was an American research and development company, based next to Fresh Pond in Cambridge, Massachusetts Cambridge ( ) is a city in Middlesex County, Massachusetts, Middlesex C ...
(BBN), were modified to add
virtual memory In computing Computing is any goal-oriented activity requiring, benefiting from, or creating computing machinery. It includes the study and experimentation of algorithmic processes and development of both computer hardware , hardware and soft ...

virtual memory
and support for
demand paging In computer A computer is a machine that can be programmed to carry out sequences of arithmetic or logical operations automatically. Modern computers can perform generic sets of operations known as Computer program, programs. These programs ...
, and more physical memory. The KA10 weighs about . The 10/50 was the top-of-the-line Uni-processor KA machine at the time when the ''PA1050'' software package was introduced. Two other KA10 models were the uniprocessor 10/40, and the dual-processor 10/55.


KI10

The KI10 introduced support for paged memory management, and also support a larger physical address space of 4 megawords. KI10 models include 1060, 1070 and 1077, the latter incorporating two CPUs.


KL10

The original KL10 PDP-10 (also marketed as DECsystem-10) models (1080, 1088, etc.) use the original PDP-10 memory bus, with external memory modules. Module in this context meant a cabinet, dimensions roughly (WxHxD) 30 x 75 x 30 in. with a capacity of 32 to 256 kWords of
magnetic core memory Magnetic-core memory was the predominant form of random-access Random access (more precisely and more generally called direct access) is the ability to access an arbitrary element of a sequence in equal time or any datum from a population of ...
(the picture on the right hand side of the introduction shows six of these cabinets). The processors used in the
DECSYSTEM-20 The DECSYSTEM-20 was a 36-bit Digital Equipment Corporation PDP-10 mainframe computer running the TOPS-20 operating system (products introduced in 1977). PDP-10 computers running the TOPS-10 operating system were labeled ''DECsystem-10'' as a w ...
(2040, 2050, 2060, 2065), commonly but incorrectly called "KL20", use internal memory, mounted in the same cabinet as the
CPU A central processing unit (CPU), also called a central processor, main processor or just processor, is the electronic circuit File:PExdcr01CJC.jpg, 200px, A circuit built on a printed circuit board (PCB). An electronic circuit is composed of ...

CPU
. The 10xx models also have different packaging; they come in the original tall PDP-10 cabinets, rather than the short ones used later on for the DECsystem-20. The differences between the 10xx and 20xx models were primarily which operating system they ran, either TOPS-10 or TOPS-20. Apart from that, differences are more cosmetic than real; some 10xx systems have "20-style" internal memory and I/O, and some 20xx systems have "10-style" external memory and an I/O bus. In particular, all ARPAnet TOPS-20 systems had an I/O bus because the AN20
IMP An imp is a European mythological Myth is a folklore genre Folklore is the expressive body of culture shared by a particular group of people; it encompasses the traditions common to that culture, subculture or group. These include oral t ...
interface was an I/O bus device. Both could run either TOPS-10 or TOPS-20 microcode and thus the corresponding operating system.


Model B

The later Model B version of the 2060 processors removes the 256
kilo KILO (94.3 FM, 94.3 KILO) is a radio station broadcasting in Colorado Springs The City of Colorado Springs is the List of cities and towns in Colorado#Home rule municipality, Home Rule Municipality that is the county seat and the List of ci ...
word In linguistics, a word of a spoken language can be defined as the smallest sequence of phonemes that can be uttered in isolation with semantic, objective or pragmatics, practical meaning (linguistics), meaning. In many languages, words also co ...
limit on the virtual address space by supporting up to 32 "sections" of up to 256 kilowords each, along with substantial changes to the instruction set. The two versions are effectively different CPUs. The first operating system that takes advantage of the Model B's capabilities is TOPS-20 release 3, and user mode extended addressing is offered in TOPS-20 release 4. TOPS-20 versions after release 4.1 only run on a Model B. TOPS-10 versions 7.02 and 7.03 also use extended addressing when run on a 1090 (or 1091) Model B processor running TOPS-20 microcode.


MCA25

The final upgrade to the KL10 was the MCA25 upgrade of a 2060 to 2065 (or a 1091 to 1095), which gave some performance increases for programs which run in multiple sections.


Massbus

The I/O architecture of the 20xx series KL machines is based on a DEC bus design called the
MassbusThe Massbus is a high-performance computer A computer is a machine that can be programmed to carry out sequences of arithmetic or logical operations automatically. Modern computers can perform generic sets of operations known as Computer prog ...
. While many attributed the success of the PDP-11 to DEC's decision to make the PDP-11 Unibus an open architecture, DEC reverted to prior philosophy with the KL, making Massbus both unique and proprietary. Consequently, there were no aftermarket peripheral manufacturers who made devices for the Massbus, and DEC chose to price their own Massbus devices, notably the RP06 disk drive, at a substantial premium above comparable IBM-compatible devices.
CompuServe CompuServe (CompuServe Information Service, also known by its initialism CIS) was an American online service provider, the first major commercial one in the United States – described in 1994 as "the oldest of the Big Three information services ...
for one, designed its own alternative disk controller that could operate on the Massbus, but connect to IBM style 3330 disk subsystems.


Front-end processors

The KL class machines cannot be started without the assistance of a PDP-11/40 front-end processor installed in every system. The PDP-11 is booted from a dual-ported RP06 disk drive (or alternatively from an 8"
floppy disk A floppy disk or floppy diskette (sometimes casually referred to as a floppy or diskette) is a type of disk storage Disk storage (also sometimes called drive storage) is a general category of storage mechanisms where data is recorded by various ...

floppy disk
drive or
DECtape DECtape, originally called Microtape, is a medium used with many s, including the , , , , , , , and the . On DEC's 32-bit systems, support for it was implemented but did not become an official part of the product lineup. DECtapes are 3/4 inch ...

DECtape
), and then commands can be given to the PDP-11 to start the main processor, which is typically booted from the same RP06 disk drive as the PDP-11. The PDP-11 performs watchdog functions once the main processor is running. Communication with IBM mainframes, including
Remote Job EntryRemote job entry is the procedure for sending requests for non-interactive data processing tasks ( jobs) to mainframe computer A mainframe computer, informally called a mainframe or big iron, is a computer A computer is a machine that can ...
(RJE), were accomplished via a DN61 or DN-64 front-end processor, using a PDP-11/40or PDP-11/34a.


KS10

The KS10 is a lower-cost PDP-10 built using AMD 2901
bit-slice Bit slicing is a technique for constructing a central processing unit, processor from modules of processors of smaller bit width, for the purpose of increasing the word length; in theory to make an arbitrary n-bit CPU. Each of these component mod ...
chips, with an
Intel 8080A The Intel 8080 (''"eighty-eighty"'') is the second 8-bit In computer architecture, 8-bit integer (computer science), integers or other data#Uses of data in computing, data units are those that are 8 bits wide (1 octet). Also, 8-bit cent ...
microprocessor as a control processor. The KS10 design was crippled to be a Model A even though most of the necessary data paths needed to support the Model B architecture are present. This was no doubt intended to segment the market, but it greatly shortened the KS10's product life. The KS system uses a similar boot procedure to the KL10. The 8080 control processor loads the microcode from an RM03, RM80, or RP06 disk or magnetic tape and then starts the main processor. The 8080 switches modes after the operating system boots and controls the console and remote diagnostic serial ports.


Magnetic tape drives

Two models of
tape drive A tape drive is a that on a . is typically used for offline, archival data storage. Tape media generally has a favorable unit cost and a long archival stability. A tape drive provides storage, unlike a , which provides storage. A disk drive ...
s were supported by the TM10 Magnetic Tape Control subsystem: * TU20 Magnetic Tape Transport – 45 ips (inches/second) * TU30 Magnetic Tape Transport – 75 ips (inches/second) * TU45 Magnetic Tape Transport – 75 ips (inches/second) A mix of up to eight of these could be supported, providing seven-track &/or nine-track devices. The TU20 and TU30 each came in A (9 track) and B (7 track) versions, and all of the aforementioned tape drives could read/write from/to 200 BPI, 556 BPI and 800 BPI IBM-compatible tapes. The TM10 Magtape controller was available in two submodels: * TM10A did cycle-stealing to/from PDP-10 memory using the KA10 Arithmetic Processor * TM10B accessed PDP-10 memory using a DF10 Data Channel, without "cycle stealing" from the KA10 Arithmetic Processor


Instruction set architecture

From the first PDP-6s to the KL-10 and KS-10, the user-mode
instruction set architecture In computer science Computer science deals with the theoretical foundations of information, algorithms and the architectures of its computation as well as practical techniques for their application. Computer science is the study of Algo ...
is largely the same. This section covers that architecture. The only major change to the architecture is the addition of multi-section extended addressing in the KL-10; extended addressing, which changes the process of generating the effective address of an instruction, is briefly discussed at the end.


Addressing

The PDP-10 has 36-bit words and
18-bit 18 binary digits have (1000000 octal The octal numeral system, or oct for short, is the radix, base-8 number system, and uses the Numerical digit, digits 0 to 7. Octal numerals can be made from Binary numeral system, binary numerals by groupin ...
word addresses. In supervisor mode, instruction addresses correspond directly to physical memory. In user mode, addresses are translated to physical memory. Earlier models give a user process a "high" and a "low" memory: addresses with a 0 top bit used one base register, and higher addresses use another. Each segment is contiguous. Later architectures have paged memory access, allowing non-contiguous address spaces. The CPU's general-purpose registers can also be addressed as memory locations 0-15.


Registers

There are 16 general-purpose, 36-bit registers. The right half of these registers (other than register 0) may be used for indexing. A few instructions operate on pairs of registers. The "PC Word" consists of a 13-bit condition register (plus 5 always zero bits) in the left half and an 18-bit Program Counter in the right half. The condition register, which records extra bits from the results of arithmetic operations (''e.g.'' overflow), can be accessed by only a few instructions. In the original KA-10 systems, these registers are simply the first 16 words of main memory. The "fast registers" hardware option implements them as registers in the CPU, still addressable as the first 16 words of memory. Some software takes advantage of this by using the registers as an
instruction cache A CPU cache is a hardware cache In computing Computing is any goal-oriented activity requiring, benefiting from, or creating computing machinery. It includes the study and experimentation of algorithmic processes and development of both compu ...
by loading code into the registers and then jumping to the appropriate address; this is used, for example, in
Maclisp Maclisp (or MACLISP, sometimes styled MacLisp or MacLISP) is a programming language, a Dialect (computing), dialect of the language Lisp (programming language), Lisp. It originated at the Massachusetts Institute of Technology's (MIT) Project MAC (f ...
to implement one version of the garbage collector. Later models all have registers in the CPU.


Supervisor mode

There are two operational modes, supervisor and user mode. Besides the difference in memory referencing described above, supervisor-mode programs can execute input/output operations. Communication from user-mode to supervisor-mode is done through Unimplemented User Operations (UUOs): instructions which are not defined by the hardware, and are trapped by the supervisor. This mechanism is also used to emulate operations which may not have hardware implementations in cheaper models.


Data types

The major datatypes which are directly supported by the architecture are
two's complement Two's complement is a mathematical operation In mathematics, an operation is a Function (mathematics), function which takes zero or more input values (called ''operands'') to a well-defined output value. The number of operands is the arity of the ...
36-bit integer arithmetic (including bitwise operations), 36-bit floating-point, and halfwords. Extended, 72-bit, floating point is supported through special instructions designed to be used in multi-instruction sequences. Byte pointers are supported by special instructions. A word structured as a "count" half and a "pointer" half facilitates the use of bounded regions of memory, notably stacks.


Instructions

The instruction set is very symmetrical. Every instruction consists of a 9-bit opcode, a 4-bit register code, and a 23-bit effective address field, which consists in turn of a 1-bit indirect bit, a 4-bit register code, and an 18-bit offset. Instruction execution begins by calculating the effective address. It adds the contents of the given register (if not register zero) to the offset; then, if the indirect bit is 1, an "indirect word", containing an indirect bit, register code, and offset in the same positions as in instructions, is fetched at the calculated address and the effective address calculation is repeated using that word, adding the register (if not register zero) to the offset, until an indirect word with a zero indirect bit is reached. The resulting effective address can be used by the instruction either to fetch memory contents, or simply as a constant. Thus, for example, MOVEI A,3(C) adds 3 to the 18 lower bits of register C and puts the result in register A, without touching memory. There are three main classes of instruction: arithmetic, logical, and move; conditional jump; conditional skip (which may have side effects). There are also several smaller classes. The arithmetic, logical, and move operations include variants which operate immediate-to-register, memory-to-register, register-to-memory, register-and-memory-to-both or memory-to-memory. Since registers may be addressed as part of memory, register-to-register operations are also defined. (Not all variants are useful, though they are well-defined.) For example, the ADD operation has as variants ADDI (add an 18-bit ''I''mmediate constant to a register), ADDM (add register contents to a ''M''emory location), ADDB (add to ''B''oth, that is, add register contents to memory and also put the result in the register). A more elaborate example is HLROM (''H''alf ''L''eft to ''R''ight, ''O''nes to ''M''emory), which takes the Left half of the register contents, places them in the Right half of the memory location, and replaces the left half of the memory location with Ones. Halfword instructions are also used for linked lists: HLRZ is the Lisp CAR operator; HRRZ is CDR. The conditional jump operations examine register contents and jump to a given location depending on the result of the comparison. The mnemonics for these instructions all start with JUMP, JUMPA meaning "jump always" and JUMP meaning "jump never" – as a consequence of the symmetric design of the instruction set, it contains several no-ops such as JUMP. For example, JUMPN A,LOC jumps to the address LOC if the contents of register A is non-zero. There are also conditional jumps based on the processor's condition register using the JRST instruction. On the KA10 and KI10, JRST is faster than JUMPA, so the standard unconditional jump is JRST. The conditional skip operations compare register and memory contents and skip the next instruction (which is often an unconditional jump) depending on the result of the comparison. A simple example is CAMN A,LOC which compares the contents of register A with the contents of location LOC and skips the next instruction if they are not equal. A more elaborate example is TLCE A,LOC (read "Test Left Complement, skip if Equal"), which using the contents of LOC as a mask, selects the corresponding bits in the left half of register A. If all those bits are ''E''qual to zero, skip the next instruction; and in any case, replace those bits by their boolean complement. Some smaller instruction classes include the shift/rotate instructions and the procedure call instructions. Particularly notable are the stack instructions PUSH and POP, and the corresponding stack call instructions PUSHJ and POPJ. The byte instructions use a special format of indirect word to extract and store arbitrary-sized bit fields, possibly advancing a pointer to the next unit.


Extended addressing

In processors supporting extended addressing, the address space is divided into "sections". An 18-bit address is a "local address", containing an offset within a section, and a "global address" is 30 bits, divided into a 12-bit section number at the bottom of the upper 18 bits and an 18-bit offset within that section in the lower 18 bits. A register can contain either a "local index", with an 18-bit unsigned displacement or local address in the lower 18 bits, or a "global index", with a 30-bit unsigned displacement or global address in the lower 30 bits. An indirect word can either be a "local indirect word", with its uppermost bit set, the next 12 bits reserved, and the remaining bits being an indirect bit, a 4-bit register code, and an 18-bit displacement, or a "global indirect word", with its uppermost bit clear, the next bit being an indirect bit, the next 4 bits being a register code, and the remaining 30 bits being a displacement. The process of calculating the effective address generates a 12-bit section number and an 18-bit offset within that segment.


Software

The original PDP-10
operating system An operating system (OS) is system software System software is software designed to provide a platform for other software. Examples of system software include operating systems like macOS macOS (; previously Mac OS X and later ...

operating system
was simply called "Monitor", but was later renamed
TOPS-10 TOPS-10 System (''Timesharing / Total Operating System-10'') is a discontinued from (DEC) for the (or DECsystem-10) family. Launched in 1967, TOPS-10 evolved from the earlier "Monitor" software for the and PDP-10 computers; this was renamed t ...
. Eventually the PDP-10 system itself was renamed the DECsystem-10. Early versions of Monitor and TOPS-10 formed the basis of Stanford's
WAITS WAITS was a heavily modified variant of Digital Equipment Corporation Digital Equipment Corporation (DEC ), using the trademark Digital, was a major American company in the computer industry from the 1960s to the 1990s. The company was co-found ...
operating system and the
CompuServe CompuServe (CompuServe Information Service, also known by its initialism CIS) was an American online service provider, the first major commercial one in the United States – described in 1994 as "the oldest of the Big Three information services ...
time-sharing system. Over time, some PDP-10 operators began running operating systems assembled from major components developed outside DEC. For example, the main Scheduler might come from one university, the Disk Service from another, and so on. The commercial timesharing services such as
CompuServe CompuServe (CompuServe Information Service, also known by its initialism CIS) was an American online service provider, the first major commercial one in the United States – described in 1994 as "the oldest of the Big Three information services ...
, On-Line Systems (OLS), and Rapidata maintained sophisticated inhouse systems programming groups so that they could modify the operating system as needed for their own businesses without being dependent on DEC or others. There are also strong user communities such as
DECUS The Digital Equipment Computer Users' Society (DECUS) was an independent computer user group related to Digital Equipment Corporation Digital Equipment Corporation (DEC ), using the trademark Digital, was a major American company in the computer ...
through which users can share software that they have developed. BBN developed their own alternative operating system, TENEX, which fairly quickly became the de facto standard in the research community. DEC later ported TENEX to the KL10, enhanced it considerably, and named it
TOPS-20 The TOPS-20 operating system An operating system (OS) is system software System software is software designed to provide a platform for other software. Examples of system software include operating systems like macOS macOS (; previousl ...

TOPS-20
, forming the DECSYSTEM-20 line.
MIT Massachusetts Institute of Technology (MIT) is a private land-grant research university A research university is a university A university ( la, universitas, 'a whole') is an educational institution, institution of higher education, hi ...

MIT
, which had developed CTSS,
Compatible Time-Sharing System The Compatible Time-Sharing System (CTSS) was one of the first time-sharing In computing Computing is any goal-oriented activity requiring, benefiting from, or creating computing machinery. It includes the study and experimentation of algori ...
to run on their
IBM 709 The IBM 709 was a computer A computer is a machine that can be programmed to carry out sequences of arithmetic or logical operations automatically. Modern computers can perform generic sets of operations known as Computer program, programs. ...
(and later a modified
IBM 7094 The IBM 7090 is a second-generation transistorized upright=1.4, gate A gate or gateway is a point of entry to or from a space enclosed by walls. The word derived from old Norse "gat" meaning road A road is a thoroughfare, route, or way ...
system), also developed ITS,
Incompatible Timesharing System Incompatible Timesharing System (ITS) is a time-sharing operating system developed principally by the MIT Artificial Intelligence Laboratory, with help from Project MAC. The name is the jocular complement of the MIT Compatible Time-Sharing System ...
to run on their
PDP-6 The PDP-6 (''Programmed Data Processor-6'') is a computer model developed by Digital Equipment Corporation (DEC) in 1964. It was influential primarily as the prototype (effectively) for the later PDP-10; the instruction sets of the two machines ar ...
(and later a modified PDP-10); the naming was related, since the IBM and the DEC/PDP hardware were different, i.e. "incompatible" (despite each having a 36-bit CPU). The ITS name, selected by Tom Knight, "was a play on" the CTSS name.
Tymshare Tymshare, Inc. was a time-sharing In computing Computing is any goal-oriented activity requiring, benefiting from, or creating computing machinery. It includes the study and experimentation of algorithmic processes and development of both comp ...
developed , derived from
TOPS-10 TOPS-10 System (''Timesharing / Total Operating System-10'') is a discontinued from (DEC) for the (or DECsystem-10) family. Launched in 1967, TOPS-10 evolved from the earlier "Monitor" software for the and PDP-10 computers; this was renamed t ...
but using a page-based file system like
TOPS-20 The TOPS-20 operating system An operating system (OS) is system software System software is software designed to provide a platform for other software. Examples of system software include operating systems like macOS macOS (; previousl ...

TOPS-20
.


Clones

In 1971 to 1972, researchers at
Xerox PARC PARC (Palo Alto Research Center; formerly Xerox PARC) is a research and development company in Palo Alto, California. Founded in 1969 by Jack Goldman, Jacob E. "Jack" Goldman, Xerox Corporation's chief scientist, the company was originally a divis ...
were frustrated by top company management's refusal to let them buy a PDP-10. Xerox had just bought
Scientific Data SystemsScientific Data Systems (SDS), was an United States, American computer company founded in September 1961 by Max Palevsky and Robert Beck, veterans of Packard Bell Corporation and Bendix Corporation, Bendix, along with eleven other computer scientists ...
(SDS) in 1969, and wanted PARC to use an SDS machine. Instead, a group led by Charles P. Thacker designed and constructed two PDP-10 clone systems named MAXC (pronounced as Max, in honour of
Max PalevskyMax Palevsky (July 24, 1924 – May 5, 2010) was an American American(s) may refer to: * American, something of, from, or related to the United States of America, commonly known as the United States The United States of America (USA), commo ...
, who had sold SDS to Xerox) for their own use. MAXC was also a
backronym A backronym, or bacronym, is an acronym formed from a word that existed prior to the invention of the backronym. Unlike a typical acronym, in which a new word is constructed from a phrase, the phrase corresponding to the backronym is selected to fi ...
for Multiple Access Xerox Computer. MAXC ran a modified version of TENEX. Third-party attempts to sell PDP-10 clones were relatively unsuccessful; see
Foonly Foonly Inc. was an American computer A computer is a machine that can be programmed to carry out sequences of arithmetic or logical operations automatically. Modern computers can perform generic sets of operations known as Computer program, ...
, Systems Concepts, and
XKL Based in Redmond, Washington Redmond is a city in King County, Washington Washington commonly refers to: * Washington (state), United States * Washington, D.C., the capital of the United States ** Federal government of the United States (m ...
.


Use by CompuServe

One of the largest collections of DECsystem-10 architecture systems ever assembled was at
CompuServe CompuServe (CompuServe Information Service, also known by its initialism CIS) was an American online service provider, the first major commercial one in the United States – described in 1994 as "the oldest of the Big Three information services ...
, which, at its peak, operated over 200 loosely coupled systems in three data centers in Columbus, Ohio. CompuServe used these systems as 'hosts', providing access to commercial applications, and the CompuServe Information Service. While the first such systems were bought from DEC, when DEC abandoned the PDP-10 architecture in favor of the
VAX VAX is a series of computers featuring a 32-bit 32-bit microcomputers are computers in which 32-bit microprocessor A microprocessor is a computer processor where the data processing logic and control is included on a single integrate ...
, CompuServe and other PDP-10 customers began buying plug compatible computers from Systems Concepts. As of January 2007, CompuServe was operating a small number of PDP-10 architecture machines to perform some billing and routing functions. The main power supplies used in the KL-series machines were so inefficient that CompuServe engineers designed a replacement supply that used about half the energy. CompuServe offered to license the design for its KL supply to DEC for free if DEC would promise that any new KL bought by CompuServe would have the more efficient supply installed. DEC declined the offer. Another modification made to the PDP-10 by CompuServe engineers was replacing the hundreds of incandescent indicator lamps on the KI10 processor cabinet with LED lamp modules. The cost of conversion was easily offset by cost savings in electricity use, reduced heat, and labor needed to replace burned-out lamps. Digital followed this step all over the world. The picture on the right hand side shows the light panel of the MF10 memory which is contemporary with the KI10 CPU. This item is part of a computer museum, and was populated with LEDs in 2008 for demonstration purposes only. There were no similar banks of indicator lamps on KL and KS processors.


Cancellation and influence

The PDP-10 was eventually eclipsed by the
VAX VAX is a series of computers featuring a 32-bit 32-bit microcomputers are computers in which 32-bit microprocessor A microprocessor is a computer processor where the data processing logic and control is included on a single integrate ...
superminicomputer A superminicomputer, colloquially supermini, was a high-end minicomputer A minicomputer, or colloquially mini, is a class of smaller computers that was developed in the mid-1960s and sold for much less than mainframe and mid-size computers fro ...
machines (descendants of the
PDP-11 The PDP-11 is a series of 16-bit 16-bit microcomputers are computers in which 16-bit microprocessors were the norm. A 16-bit register can store 216 different values. The range (computer programming), range of integer values that can be stored i ...
) when DEC recognized that the PDP-10 and VAX product lines were competing with each other and decided to concentrate its software development effort on the more profitable VAX. The PDP-10 product line cancellation was announced in 1983, including cancelling the ongoing Jupiter project to produce a new high-end PDP-10 processor (despite that project being in good shape at the time of the cancellation) and the Minnow project to produce a desktop PDP-10, which may then have been at the prototyping stage. This event spelled the doom of Incompatible Timesharing System, ITS and the technical cultures that had spawned the original jargon file, but by the 1990s it had become something of a badge of honor among old-time hackers to have cut one's teeth on a PDP-10. The PDP-10 assembly language instructions LDB and DPB (load/deposit
byte The byte is a unit of digital information that most commonly consists of eight bit The bit is a basic unit of information in computing Computing is any goal-oriented activity requiring, benefiting from, or creating computing machinery. It ...
) live on as functions in the programming language Common Lisp. See Lisp (programming language)#References, the "References" section on the LISP article. The 36-bit word size of the PDP-6 and PDP-10 was influenced by the programming convenience of having 2 LISP pointers, each 18 bits, in one word. Will Crowther created ''Colossal Cave Adventure, Adventure'', the prototypical computer adventure game, for a PDP-10. Don Daglow created the first computer baseball game (1971) and ''Dungeon (video game), Dungeon'' (1975), the first role-playing video game on a PDP-10. Walter Bright originally created ''Empire (1977 video game), Empire'' for the PDP-10. Roy Trubshaw and Richard Bartle created the first MUD on a PDP-10. ''Zork'' was written on the PDP-10. Infocom used PDP-10s for game development and testing. Bill Gates and Paul Allen originally wrote Altair BASIC using an Intel 8080 simulator running on a PDP-10 at
Harvard University Harvard University is a private Private or privates may refer to: Music * "In Private "In Private" was the third single in a row to be a charting success for United Kingdom, British singer Dusty Springfield, after an absence of nearly tw ...

Harvard University
. Allen had modified the PDP-10 assembler to become a cross assembler for the 8080 chip. They founded Microsoft shortly after.


Emulation or simulation

The software for simulation of historical computers, SIMH, contains modules to emulate all the PDP-10 CPU models on a Windows or Unix-based machine. Copies of DEC's original distribution tapes are available as downloads from the Internet so that a running TOPS-10 or TOPS-20 system may be established. ITS and WAITS are also available for SIMH. Ken Harrenstien's KLH10 software for Unix-like systems emulates a KL10B processor with extended addressing and 4 MW of memory or a KS10 processor with 512 KW of memory. The KL10 emulation supports v.442 of the KL10 microcode, which enables it to run the final versions of both TOPS-10 and TOPS-20. The KS10 emulation supports both ITS v.262 microcode for the final version of KS10 ITS and DEC v.130 microcode for the final versions of KS TOPS-10 and TOPS-20.Tim Shopp
"Announcing KLH10"
November 10, 2001. Retrieved April 4, 2009.


See also

*Incompatible Timesharing System, ITS *
TOPS-10 TOPS-10 System (''Timesharing / Total Operating System-10'') is a discontinued from (DEC) for the (or DECsystem-10) family. Launched in 1967, TOPS-10 evolved from the earlier "Monitor" software for the and PDP-10 computers; this was renamed t ...
*
TOPS-20 The TOPS-20 operating system An operating system (OS) is system software System software is software designed to provide a platform for other software. Examples of system software include operating systems like macOS macOS (; previousl ...

TOPS-20
*
WAITS WAITS was a heavily modified variant of Digital Equipment Corporation Digital Equipment Corporation (DEC ), using the trademark Digital, was a major American company in the computer industry from the 1960s to the 1990s. The company was co-found ...


References


Sources


''DECsystem10 System Reference Manual'' (DEC, 1968, 1971, 1974)''DECsystem-10/DECSYSTEM-20 Processor Reference Manual'' (DEC, 1982)
*


Further reading

*C. Gordon Bell, Alan Kotok, Thomas N. Hastings, Richard Hill, "The Evolution of the DECsystem 10", ''Communications of the ACM'' 21:1:44 (January 1978)
reprint
in C. Gordon Bell, J. Craig Mudge, John E. McNamara, ''Computer Engineering: A DEC View of Hardware Systems Design''] (Digital Press, 1978, )


External links


36 Bits Forever!PDP-10 Models
— Shows CPUs and models
PDP-10 stuffPDP10 Miscellany PageLife in the Fast AC'sPanda Programming TOPS-20 pageLiving Computers: Museum + Labs
a portal into the Paul Allen collection of timesharing and interactive computers, including an operational PDP-10 (KL-10).
Request a login

Empire
for the PDP-10 (zip file of FORTRAN-10 source code download) fro
Classic EmpirePDP-10 software archive at Trailing EdgeThe Personal Mainframe ad
*Computer Worl
ad for Personal Mainframe

PDP-10 documentation at Bitsavers


Newsgroups

*[news:alt.sys.pdp10 alt.sys.pdp10] {{Authority control DEC hardware DEC mainframe computers Instruction set architectures 36-bit computers Computer-related introductions in 1966 Computers using bit-slice designs