Difference between revisions of "M9312 ROM"

From Computer History Wiki
Jump to: navigation, search
(PROM variants: rm dup info)
m (External links: +FMPS; better term link)
 
(8 intermediate revisions by the same user not shown)
Line 1: Line 1:
The '''M9312 [[Read-only memory|ROM]]''' card was a [[UNIBUS]] card for the [[PDP-11]] series of computers. It contained 512 words of [[Read-only memory|ROM]] memory, all readable directly from the UNIBUS (i.e. not windowed). The M9312 also provided [[termination]] for the UNIBUS.
+
[[Image:M9312.jpg|250px|thumb|right|M9312 card]]
 +
 
 +
The '''M9312 ROM''' card was a [[UNIBUS]] [[read-only memory|ROM]] card for the [[PDP-11]] series of computers. It contained 512 [[word]]s of ROM, all readable directly from the UNIBUS (i.e. not windowed). The M9312 also provided [[UNIBUS and QBUS termination|termination]] for the UNIBUS.
  
 
It was a [[DEC card form factor|dual]] format card, intended for use in the [[DEC edge connector contact identification|two top (AB) sections]] of a [[Modified UNIBUS Device|MUD]] slot, or in a UNIBUS in/out slot.
 
It was a [[DEC card form factor|dual]] format card, intended for use in the [[DEC edge connector contact identification|two top (AB) sections]] of a [[Modified UNIBUS Device|MUD]] slot, or in a UNIBUS in/out slot.
  
The board occupied addresses 773000-773776 (high ROM) and 765000-765776 (low ROM); a configuration jumper allowed the lower block to be disabled.
+
The board occupied [[address]]es 773000-773776 (high ROM) and 765000-765776 (low ROM); a configuration jumper allowed the lower block to be disabled.
  
 
==ROMs==
 
==ROMs==
  
The contents of the standard PROMs from [[Digital Equipment Corporation|DEC]] provided a console emulator, basic [[Central Processing Unit|CPU]] and [[main memory]] diagnostics, and the ability to [[bootstrap]] the machine from [[disk]], [[magnetic tape]], etc; a command to boot the machine could be given in the emulator, using a symbolic [[DEC bootstrap device codes|device code]]. However, the board could be used for any purpose.
+
The contents of the standard PROMs from [[Digital Equipment Corporation|DEC]] provided a virtual [[front panel]] emulator over the console [[asynchronous serial line]], basic [[Central Processing Unit|CPU]] and [[main memory]] diagnostics, and the ability to [[bootstrap]] the machine from [[disk]], [[magnetic tape]], etc; a command to boot the machine could be given in the emulator, using a symbolic [[DEC bootstrap device codes|device code]]. However, the board could be used for any purpose.
  
The board used five 4-bit wide PROMs to hold the data; the DEC-supplied pre-programmed PROMs included the console emulator and diagnostics in one ROM, and the other four to hold the selected bootstraps (selected from a large set available from DEC, see below).
+
The board used five 4-bit wide PROMs to hold the data; the DEC-supplied pre-programmed PROMs included the console emulator and diagnostics in one ROM, and used the other four to hold the selected bootstraps (selected from a large set available from DEC, see below).
  
 
The diagnostics include i) primary CPU tests, ii) secondary CPU tests, and a memory test. The primary tests are performed before entering the console emulator; if a failure is detected, the processor goes into an infinite loop at the failing test. The secondary tests and memory test are run when a boot command is given from the console emulator.
 
The diagnostics include i) primary CPU tests, ii) secondary CPU tests, and a memory test. The primary tests are performed before entering the console emulator; if a failure is detected, the processor goes into an infinite loop at the failing test. The secondary tests and memory test are run when a boot command is given from the console emulator.
Line 17: Line 19:
 
==Configuration==
 
==Configuration==
  
The board was configured using both a single 10-switch [[Dual Inline Package|DIP]] switch, S1, and a number of jumpers, together with they control the board's behaviour.
+
The board was configured using both a single 10-switch [[Dual Inline Package|DIP]] switch, S1, and a number of [[jumper]]s, together with they control the board's behaviour.
  
 
===Switches===
 
===Switches===
Line 23: Line 25:
 
Configuration switches control which address the CPU jumps to on power on.
 
Configuration switches control which address the CPU jumps to on power on.
  
A clever kludge, controlled by one configuration switch, allowed the board to force the CPU to read its power-on [[Program Counter|PC]] and [[Processor Status Word|PS]] from the ROM, at a location set by other configuration switches, thereby allowing auto-boot on power-on. If S1-1 is set to 'off' (open), the new PS and PC loaded on power-on will point to the high ROM; if 'on' (closed), it will be in the low ROM.
+
A clever trick, controlled by one configuration switch, allowed the board to force the CPU to read its power-on [[Program Counter|PC]] and [[Processor Status Word|PS]] from the ROM, at a location set by other configuration switches, thereby allowing auto-boot on power-on.
  
If S1-2 is 'off', the system will power-up normally; if 'on', the CPU will obtain its new PC/PS pair from locations 173024 on the card, which contain a mixture of bits from the ROM (high bits) and the configuration switches (low bits), which can be used to force the CPU to start executing in the ROM on power-on.
+
If S1-2 is 'off', the system will power-up normally; if 'on', the CPU will obtain its new PC/PS pair from locations 173024 on the card, which contain a mixture of bits from the ROM (high bits) and the configuration switches (low bits), which can be used to force the CPU to start executing in the ROM on power-on. (This is done by asserting the appropriate high address lines on the UNIBUS for the first two bus cycles after power-up; a technique pioneered by the [[BM873 ROM]].)
  
Switches S1-3 through S1-10 contain bits 8 through 1 of the power-on PC (above).
+
If S1-1 is set to 'off' (open), the new PS and PC loaded on power-on will point to the high ROM; if 'on' (closed), it will be in the low ROM. Switches S1-3 through S1-10 contain bits 8 through 1 of the power-on PC (above).
  
 
===Jumpers===
 
===Jumpers===
Line 51: Line 53:
 
! ROM part # !! Device !! Controller
 
! ROM part # !! Device !! Controller
 
|-
 
|-
| 23-751A9 || [[RL01]]/[[RL02]] disk || [[RL11]]
+
| 23-751A9 || [[RL01/02 disk drive|RL01/RL02]] [[disk]] || [[RL11 disk controller|RL11]]
 
|-
 
|-
| 23-752A9 || [[RK06]]/[[RK07]] disk || [[RK611]]
+
| 23-752A9 || [[RK06/07 disk drive|RK06/RK07]] disk || [[RK611 disk controller|RK611]]
 
|-
 
|-
| 23-753A9 || [[RX01]] floppy || [[RX11]]
+
| 23-753A9 || [[RX01/02 floppy drive|RX01]] [[floppy disk|floppy]] || [[RX11 floppy disk controller|RX11]]
 
|-
 
|-
| 23-811A9 || [[RX02]] floppy || [[RX211]]
+
| 23-811A9 || [[RX01/02 floppy drive|RX02]] floppy || [[RX211 floppy disk controller|RX211]]
 
|-
 
|-
| 23-755A9 || [[RP02]]/[[RP03]] disk || [[RP11]]
+
| 23-755A9 || [[RP02 disk drive|RP02]]/[[RP03 disk drive|RP03]] disk || [[RP11 disk controller|RP11]]
 
|-
 
|-
| 23-755A9* || [[RP04]]/[[RP05]]/[[RP06]], [[RM02]]/[[RM03]] disk || [[RH11]], [[RH70]]
+
| 23-755A9* || [[RP04 disk drive|RP04]]/[[RP05 disk drive|RP05]]/[[RP05 disk drive|RP06]], [[RM02/03 disk drive|RM02/03]] disk || [[RH11 MASSBUS controller|RH11]], [[RH70 MASSBUS controller|RH70]]
 
|-
 
|-
| 23-756A9 || [[RK03]]/[[RK05]] disk || [[RK11]]
+
| 23-756A9 || [[RK02/03 disk drive|RK02-RK03]]/[[RK05 disk drive|RK05]] disk || [[RK11 disk controller|RK11]]
 
|-
 
|-
| 23-756A9* || [[TU55]]/[[TU56]] [[DECtape]] || [[TC11]]
+
| 23-756A9* || [[TU55 DECtape Transport|TU55]]/[[TU56 DECtape Transport|TU56]] [[DECtape]] || [[TC11 DECtape controller|TC11]]
 
|-
 
|-
| 23-757A9 || [[TU16]]/[[TE16]] magtape || [[TM02]], [[TM03]]
+
| 23-757A9 || [[TU16 magtape drive|TU16]]/[[TU16 magtape drive|TE16]] [[magnetic tape|magtape]] || [[TM02 magtape controller|TM02]], [[TM03 magtape controller|TM03]]
 
|-
 
|-
| 23-758A9 || [[TU10]]/[[TE10]]/[[TS03]] magtape || [[TM11]]
+
| 23-758A9 || [[TU10 magtape drive|TU10]]/[[TE10 magtape drive|TE10]]/[[TS03 magtape drive|TS03]] magtape || [[TM11 magtape controller|TM11]]
 
|-
 
|-
| 23-759A9 || [[RS03]]/[[RS04]] fixed disk || [[RH11]], [[RH70]]
+
| 23-759A9 || [[RS03/04 disk drive|RS03/04]] [[fixed-head disk]] || [[RH11 MASSBUS controller|RH11]], [[RH70 MASSBUS controller|RH70]]
 
|-
 
|-
| 23-760A9 || [[PC05]] high-speed reader || [[PC11]]
+
| 23-760A9 || [[PC04/PC05 High-Speed Paper-Tape Reader/Punch|PC05]] high-speed [[paper tape]] reader || [[PC11 High-Speed Paper-Tape Reader/Punch Control|PC11]]
 
|-
 
|-
| 23-760A9* || console low-speed reader || [[DL11]]
+
| 23-760A9* || console low-speed reader || [[DL11 asynchronous serial line interface|DL11]]
 
|-
 
|-
| 23-761A9 || [[TU60]] DECcassette || [[TA11]]
+
| 23-761A9 || [[TU60 DECasetteTape Transport|TU60]] DECcassette || [[TA11 Magnetic Tape Cassette controller|TA11]]
 
|-
 
|-
| 23-762A9 || [[RS11]] fixed disk || [[RF11]]
+
| 23-762A9 || [[RS11 disk drive|RS11]] fixed-head disk || [[RF11 disk controller|RF11]]
 
|-
 
|-
| 23-762A9* || [[RS64]] fixed disk || [[RC11]]
+
| 23-762A9* || [[RS64 disk drive|RS64]] fixed-head disk || [[RC11 disk controller|RC11]]
 
|-
 
|-
| 23-763A9 || card reader || [[CR11]]
+
| 23-763A9 || [[CR11 Card Readers|CR11 Card Reader]] [[punched card]] reader || [[CR11 Controller|CR11]]
 
|-
 
|-
 
| 23-764A9 || [[TS04]], [[TU80]] magtape || [[TS11]], [[TU80K]]
 
| 23-764A9 || [[TS04]], [[TU80]] magtape || [[TS11]], [[TU80K]]
 
|-
 
|-
| 23-765A9 || [[TU58]] DECtapeII || [[DL11]]
+
| 23-765A9 || [[TU58 DECtape II|TU58]] [[DECtape II]] || [[DL11 asynchronous serial line interface|DL11]]
 
|}
 
|}
  
Line 96: Line 98:
 
==External links==
 
==External links==
  
 +
* [http://www.bitsavers.org/www.computer.museum.uq.edu.au/pdf/EK-M9312-TM-002%20M9312%20Bootstrap-Terminator%20Module%20Technical%20Manual.pdf M9312 bootstrap/terminator module technical manual] (EK-M9312-TM-002)
 +
* [http://www.bitsavers.org/pdf/dec/unibus/MP00617_M9312.pdf M9312 Field Maintenance Print Set] (MP00617)
 
* [http://www.ak6dn.com/PDP-11/M9312/ M9312 PROM Files]
 
* [http://www.ak6dn.com/PDP-11/M9312/ M9312 PROM Files]
  
==Reference==
+
[[Category: UNIBUS ROMs]]
 
 
* EK-M9312-TM-003, ''M9312 bootstrap/terminator module technical manual''
 

Latest revision as of 11:42, 3 April 2022

M9312 card

The M9312 ROM card was a UNIBUS ROM card for the PDP-11 series of computers. It contained 512 words of ROM, all readable directly from the UNIBUS (i.e. not windowed). The M9312 also provided termination for the UNIBUS.

It was a dual format card, intended for use in the two top (AB) sections of a MUD slot, or in a UNIBUS in/out slot.

The board occupied addresses 773000-773776 (high ROM) and 765000-765776 (low ROM); a configuration jumper allowed the lower block to be disabled.

ROMs

The contents of the standard PROMs from DEC provided a virtual front panel emulator over the console asynchronous serial line, basic CPU and main memory diagnostics, and the ability to bootstrap the machine from disk, magnetic tape, etc; a command to boot the machine could be given in the emulator, using a symbolic device code. However, the board could be used for any purpose.

The board used five 4-bit wide PROMs to hold the data; the DEC-supplied pre-programmed PROMs included the console emulator and diagnostics in one ROM, and used the other four to hold the selected bootstraps (selected from a large set available from DEC, see below).

The diagnostics include i) primary CPU tests, ii) secondary CPU tests, and a memory test. The primary tests are performed before entering the console emulator; if a failure is detected, the processor goes into an infinite loop at the failing test. The secondary tests and memory test are run when a boot command is given from the console emulator.

There were two different emulator/diagnostic PROMs; one for the PDP-11/70 and PDP-11/60, which check the machine's cache, and one for all the other PDP-11 models.

Configuration

The board was configured using both a single 10-switch DIP switch, S1, and a number of jumpers, together with they control the board's behaviour.

Switches

Configuration switches control which address the CPU jumps to on power on.

A clever trick, controlled by one configuration switch, allowed the board to force the CPU to read its power-on PC and PS from the ROM, at a location set by other configuration switches, thereby allowing auto-boot on power-on.

If S1-2 is 'off', the system will power-up normally; if 'on', the CPU will obtain its new PC/PS pair from locations 173024 on the card, which contain a mixture of bits from the ROM (high bits) and the configuration switches (low bits), which can be used to force the CPU to start executing in the ROM on power-on. (This is done by asserting the appropriate high address lines on the UNIBUS for the first two bus cycles after power-up; a technique pioneered by the BM873 ROM.)

If S1-1 is set to 'off' (open), the new PS and PC loaded on power-on will point to the high ROM; if 'on' (closed), it will be in the low ROM. Switches S1-3 through S1-10 contain bits 8 through 1 of the power-on PC (above).

Jumpers

  • W1-W5 - When inserted, termination is provided for the bus grant lines of the UNIBUS.
  • W6 - In for machines with push-button boot capability
  • W7 - Always in
  • W8 - When inserted, the low bank of memory on the card (765000-765777) is disabled; when removed, it is enabled.
  • W9-W10 - Out for use with a PDP-11/60; in for all others
  • W11-W12 - In for use with a PDP-11/60; out for all others

Connector tabs

The board contains four connector tabs, which may be used with a pair of external switches, to control the board's behaviour.

Two, TP2 and TP3, are ground returns (for TP1 and TP4, respectively). TP1, when momemtarily grounded, forces the machine to execute a power-fail/restart sequence (by asserting UNIBUS line ACLO). TP4, when grounded, forces the machine to execute the on-board ROM on power on, no matter what the position of S1-2 (above).

PROM variants

The following table lists the DEC standard PROMs by part number, and the devices they support. When a particular PROM suppports more than one type of device, the second device type is indicated with a '*' after the part number.

ROM part # Device Controller
23-751A9 RL01/RL02 disk RL11
23-752A9 RK06/RK07 disk RK611
23-753A9 RX01 floppy RX11
23-811A9 RX02 floppy RX211
23-755A9 RP02/RP03 disk RP11
23-755A9* RP04/RP05/RP06, RM02/03 disk RH11, RH70
23-756A9 RK02-RK03/RK05 disk RK11
23-756A9* TU55/TU56 DECtape TC11
23-757A9 TU16/TE16 magtape TM02, TM03
23-758A9 TU10/TE10/TS03 magtape TM11
23-759A9 RS03/04 fixed-head disk RH11, RH70
23-760A9 PC05 high-speed paper tape reader PC11
23-760A9* console low-speed reader DL11
23-761A9 TU60 DECcassette TA11
23-762A9 RS11 fixed-head disk RF11
23-762A9* RS64 fixed-head disk RC11
23-763A9 CR11 Card Reader punched card reader CR11
23-764A9 TS04, TU80 magtape TS11, TU80K
23-765A9 TU58 DECtape II DL11

See also

External links