Difference between revisions of "PDP-9"
(re-implementation of the PDP-7) |
(more info on inst set) |
||
Line 22: | Line 22: | ||
Its principal intended use was for [[real-time system]]s, including data recording and process control. A variety of models were offered; the basic system provided 8K words of [[main memory]], and the PDP-9/L was a cost-reduced system with cheaper peripherals and 4KW of memory. | Its principal intended use was for [[real-time system]]s, including data recording and process control. A variety of models were offered; the basic system provided 8K words of [[main memory]], and the PDP-9/L was a cost-reduced system with cheaper peripherals and 4KW of memory. | ||
− | [[Instruction]]s had a 4-bit opcode, 1 bit of indirect, and 13 bits of address. | + | It was a [[load-store architecture]], with a single [[accumulator]]. [[Instruction]]s had a 4-bit opcode, 1 bit of indirect, and 13 bits of address. Opcodes 000-054 were memory-reference instructions; for non-memory operations ('074' opcode), and [[input/output|I/O]] ('070'), bits in the 'address' field were used to specify details. '060' opcodes were for the optional [[Extended Arithmetic Element|EAE]]. |
− | Multiply/divide was a hardware option, the KE09A | + | For the high-speed [[read-only memory|ROM]] needed for a microcoded design, it used hard-wired [[core memory]], similar to that in the [[Apollo Guidance Computer]]. [[Microinstruction]]s were 36 bits wide, of which 6 were the 'control memory address', the [[address]] of the next one; there was no micro-[[Program Counter|PC]]. Conditional micro-branching was available by modifying the CMA during that microinstruction. |
+ | |||
+ | Multiply/divide was a hardware option, the KE09A EAE, which also performed shifting (it was installed in pre-wired slots in the CPU's [[backplane]]). Use of more than 8KW of main memory (all core in the PDP-9) required the Memory Extension Control, KG09A. A [[memory management]] option, the KX09A, which included a boundary [[register]] to set the boundary between protected and un-protected memory, and two modes for the CPU, was also available. | ||
The KF09A Automatic Priority Interrupt option provided 8 levels of [[interrupt]] priority, each of which could support up to 8 [[peripheral|devices]]. Each device could provide its own [[interrupt vector]]. The DM09 [[Direct Memory Access]] Channel Multiplexor Adapter provided high-speed devices with direct access to main memory for data transfers. | The KF09A Automatic Priority Interrupt option provided 8 levels of [[interrupt]] priority, each of which could support up to 8 [[peripheral|devices]]. Each device could provide its own [[interrupt vector]]. The DM09 [[Direct Memory Access]] Channel Multiplexor Adapter provided high-speed devices with direct access to main memory for data transfers. |
Revision as of 21:31, 14 March 2022
PDP-9 | |
Manufacturer: | Digital Equipment Corporation |
---|---|
Year First Shipped: | 1966 |
Form Factor: | minicomputer |
Word Size: | 18 bits |
Logic Type: | PNP Transistor FLIP CHIPs |
Design Type: | microcoded |
Memory Speed: | 1 μsec |
Physical Address Size: | 15 bits (32K words) |
Virtual Address Size: | 13 bits (direct), 15 bits (extended) |
Memory Management: | bounds register |
Predecessor(s): | PDP-7 |
Successor(s): | PDP-15 |
Price: | US$30K (8KW system) |
The PDP-9 was DEC's fourth 18-bit computer, and the first DEC CPU to use microcode. A little over 400 were built. It was a re-implementation of the PDP-7; the PDP-9 'Basic Software System' manual indicates that most PDP-7 software will run, un-modified.
Its principal intended use was for real-time systems, including data recording and process control. A variety of models were offered; the basic system provided 8K words of main memory, and the PDP-9/L was a cost-reduced system with cheaper peripherals and 4KW of memory.
It was a load-store architecture, with a single accumulator. Instructions had a 4-bit opcode, 1 bit of indirect, and 13 bits of address. Opcodes 000-054 were memory-reference instructions; for non-memory operations ('074' opcode), and I/O ('070'), bits in the 'address' field were used to specify details. '060' opcodes were for the optional EAE.
For the high-speed ROM needed for a microcoded design, it used hard-wired core memory, similar to that in the Apollo Guidance Computer. Microinstructions were 36 bits wide, of which 6 were the 'control memory address', the address of the next one; there was no micro-PC. Conditional micro-branching was available by modifying the CMA during that microinstruction.
Multiply/divide was a hardware option, the KE09A EAE, which also performed shifting (it was installed in pre-wired slots in the CPU's backplane). Use of more than 8KW of main memory (all core in the PDP-9) required the Memory Extension Control, KG09A. A memory management option, the KX09A, which included a boundary register to set the boundary between protected and un-protected memory, and two modes for the CPU, was also available.
The KF09A Automatic Priority Interrupt option provided 8 levels of interrupt priority, each of which could support up to 8 devices. Each device could provide its own interrupt vector. The DM09 Direct Memory Access Channel Multiplexor Adapter provided high-speed devices with direct access to main memory for data transfers.
A large range of peripherals were available, including DECtape (via the TC02 controller), magnetic tape (via the TC59), drum (RM09 controller) and fixed-head disk (RB09; and RS09, via the RF09 controller). The RM09 and RB09 use the DM09.
External links
- PDP-9 - Has manuals for KE09, KG09, KX09, KF09, etc