Difference between revisions of "LSI-11 chip set"

From Computer History Wiki
Jump to: navigation, search
(Move content to ODT page)
m (External links: +CPU of the Day: DEC LSI-11 Chipset)
 
(9 intermediate revisions by the same user not shown)
Line 1: Line 1:
The '''LSI-11 chip set''' [[Central Processing Unit|CPU]] [[integrated circuit|chip]] set is used in the [[LSI-11 CPUs]] - the original [[LSI-11]], and the later [[LSI-11/2]]. It is the Western Digital WD16/CP1600 (alternative designations); Western Digital later turned this into a product which was used in other systems.
+
The '''LSI-11 chip set''' [[Central Processing Unit|CPU]] [[integrated circuit|chip]] set is used in the [[LSI-11 CPUs]] - the original [[LSI-11]], and the later [[LSI-11/2]].
  
==ODT==
+
It is the Western Digital WD16/CP1600 (alternative designations); Western Digital later turned this into a product which was used in other systems.
  
The LSI-11's were the first PDP-11 models to not have a [[front panel]] to control them; instead, as a cost-reduction measure, the main [[asynchronous serial line|serial line]] is used as a operating console, using the [[QBUS CPU ODT|ODT functionality]].
+
==Chips==
 +
 
 +
The chip set consists of a [[data path]] chip, a control chip, and two or three [[microcode]] [[Read-only memory|ROMs]] (each holding 512 microwords, which are 22 bits wide). (The microcode is thus more 'vertical' than 'horizontal'.)
 +
 
 +
The data path chip contains data paths, [[register]]s, and logic to perform [[micro-instruction]]s. The control chip contains micro-instruction sequencing, and control for the QBUS.
  
Note that ODT will not function correctly in the LSI-11s unless there is [[main memory]] on the [[QBUS]]. The reason for this restriction is unknown: the [[KDF11 CPUs]] and [[KDJ11 CPUs]], which also use ODT, do not have this limitation; e.g. a system consisting only of a [[KDF11-A CPU]] and a serial console will run ODT.
+
The uROMs all have the same pinout, and are wired in parallel, so they can be placed in any of the three uROM positions. The first two uROMs contain the basic [[PDP-11]] [[instruction set]]; the third uROM is optional, and a number of different choices are available.
  
==Chips==
+
One is the [[KEV11-A floating point|KEV11-A]], for the [[PDP-11 Extended Instruction Set|EIS]]/[[FIS floating point|FIS]] [[instruction]]s; the [[KEV11-B Extended Instruction Set|KEV11-B]] provides EIS without FIS; the [[KEV11-C Commercial Instruction Set‎|KEV11-C]] provides a subset of the PDP-11 [[PDP-11 Commercial Instruction Set|CIS]] (it also apparently includes the EIS, but not the FIS).
 +
 
 +
Some versions of the CPU boards also support the optional [[KUV11 Writeable Control Store]].
  
The chip set consists of a [[data path]] chip, a control chip, and two or three [[microcode]] [[Read-only memory|ROMs]] (each holding 512 words which are 22 bits wide). (The microcode is thus more 'vertical' than 'horizontal'.)
+
===Internal details===
  
The data path chip contains data paths, [[register]]s, and logic to perform [[micro-instruction]]s; it includes a register file, the [[Arithmetic logic unit|ALU]], condition flags logic, and a data port which gives access to the [[QBUS]]' data/[[address]] lines.
+
The data path chip includes a [[register file]] and the [[Arithmetic logic unit|ALU]]; all are 8 bits wide (so PDP-11 word operations two [[microcycle]]s). The register file contains 26 entries (paired into 16-bit composites).
  
The control chip contains micro-instruction sequencing, and control for the data port; it includes a 'programmable translation array', which decodes [[macro-instruction]]s to produce microcode addresses, the 'location counter' (micro-[[program counter]]), the 'return register' (microcode [[subroutine]] return), and [[interrupt]] logic.
+
5 pairs are directly addressable from the microcode, 6 pairs an only be addressed indirectly (via a 3-bit internal register, loadable from the [[PDP-11 architecture#Operands|register fields]] ), and 2 pairs support both:
  
The uROMs all have the same pinout, and are wired in parallel, so they can be placed in any of the three uROM positions. The first two uROMs contain the basic [[PDP-11]] [[instruction set]]; the third uROM is optional, and a number of different choices are available.
+
{| class="wikitable"
 +
! Registers !! Directly !! Indirectly !! Use
 +
|-
 +
| 0-1 ||   || x || R0
 +
|-
 +
| 2-3 ||   || x || R1
 +
|-
 +
| 4-5 ||   || x || R2
 +
|-
 +
| 6-7 ||   || x || R3
 +
|-
 +
| 10-11 ||   || x || R4
 +
|-
 +
| 12-13 ||   || x || R5
 +
|-
 +
| 14-15 || x || x || R6 ([[Stack Pointer|SP]])
 +
|-
 +
| 16-17 || x || x || R7 ([[Program Counter|PC]])
 +
|-
 +
| 20-21 || x ||   || [[Instruction Register|IR]]
 +
|-
 +
| 22-23 || x ||   || [[Bus Address Register|BAR]]
 +
|-
 +
| 24-25 || x ||   || Source
 +
|-
 +
| 26-27 || x ||   || Destination
 +
|-
 +
| 30-31 || x ||   || [[Processor Status Word|PS]]
 +
|}
  
One is the [[KEV11-A floating point|KEV11-A]], for the [[PDP-11 Extended Instruction Set|EIS]]/[[FIS floating point|FIS]] instructions; the [[KEV11-B Extended Instruction Set|KEV11-B]] provides EIS without FIS; the [[KEV11-C Commercial Instruction Set‎|KEV11-C]] provides a subset of the PDP-11 [[PDP-11 Commercial Instruction Set|CIS]] (it also apparently includes the EIS, but not the FIS).
+
The chip also contains [[condition codes]] logic, and a data port which gives access to the [[QBUS]]' data/[[address]] lines.
  
Some verions of the CPU boards also support the optional [[KUV11 Writeable Control Store]].
+
The control chip contains control for the data port; it includes a 'programmable translation array', which decodes [[macro-instruction]]s to produce microcode [[address]]es, the 11-bit 'location counter' (micro-program counter), the 'return register' (microcode [[subroutine]] return), and [[interrupt]] logic.
  
 
==Chip variants==
 
==Chip variants==
Line 25: Line 59:
 
There are a number of variants of all the various uROM chips in the base set; it is not known if all variants are completely inter-operable (i.e. any revision of any chip can be replaced with any other, and have the machine still work), so combinations will be listed.
 
There are a number of variants of all the various uROM chips in the base set; it is not known if all variants are completely inter-operable (i.e. any revision of any chip can be replaced with any other, and have the machine still work), so combinations will be listed.
  
Chip numbers of the form 23-xxxxx-rr, etc are DEC part numbers (where 'rr' seems to represent a revision number - 0, if not given); the corresponding Western Digital numbers are xxxxy, etc (where the 'x's are digits, and the 'y' a letter).
+
Chip numbers of the form 23-xxxxx-rr, etc are [[DEC part number]]s (where 'rr' seems to represent a revision number - 0, if not given); the corresponding Western Digital numbers are xxxxy, etc (where the 'x's are digits, and the 'y' a letter).
  
 
The Data Path chip is a 1611H (various DEC part numbers), and the Control chip is a 2007C (ditto); the uROM chips are all 30xxy.
 
The Data Path chip is a 1611H (various DEC part numbers), and the Control chip is a 2007C (ditto); the uROM chips are all 30xxy.
Line 38: Line 72:
 
The 3010D contains uROM addresses 0x000-0x1ff, and the 3007D 23-002B5 contains 0x200-0x3ff.
 
The 3010D contains uROM addresses 0x000-0x1ff, and the 3007D 23-002B5 contains 0x200-0x3ff.
  
==Links==
+
==External links==
  
 +
* Mark J. Sebern, [http://gordonbell.azurewebsites.net/Computer_Engineering/00000125.htm A Minicomputer-Compatible Microcomputer System: The DEC LSI-11], in C. Gordon Bell, J. Craig Mudge, John. E. McNamara, ''Computer Engineering: A DEC View of Hardware Systems Design'', Digital Press, Bedford, 1978
 +
* [http://www.bitsavers.org/pdf/dec/pdp11/1103/Titelbaum_LSI-11_1975.pdf The LSI-11 - A System Microcomputer]
 +
* [http://www.bitsavers.org/pdf/dec/pdp11/1103/EK-LSI11-TM-002.pdf LSI-11, PDP-11/03 user's manual] (EK-LSI11-TM-002)
 +
* [http://web.frainresearch.org:8080/projects/pdp-11/lsi-11.php LSI-11 Processors]
 
* [https://github.com/brouhaha/cp16dis Microcode disassembler]
 
* [https://github.com/brouhaha/cp16dis Microcode disassembler]
 
* [https://en.wikichip.org/wiki/dec/lsi-11 WikiChip LSI-11]
 
* [https://en.wikichip.org/wiki/dec/lsi-11 WikiChip LSI-11]
 +
* [https://www.cpushack.com/2017/11/22/cpu-of-the-day-dec-lsi-11-chipset/ CPU of the Day: DEC LSI-11 Chipset]
 
* [http://www.brouhaha.com/~eric/retrocomputing/wd/microengine/microcode/ Western Digital WD9000 Pascal Microengine Microcode]
 
* [http://www.brouhaha.com/~eric/retrocomputing/wd/microengine/microcode/ Western Digital WD9000 Pascal Microengine Microcode]
  
Line 47: Line 86:
  
 
[[Category: PDP-11 Processors]]
 
[[Category: PDP-11 Processors]]
[[Category: QBUS Processors]]
 

Latest revision as of 22:42, 20 December 2023

The LSI-11 chip set CPU chip set is used in the LSI-11 CPUs - the original LSI-11, and the later LSI-11/2.

It is the Western Digital WD16/CP1600 (alternative designations); Western Digital later turned this into a product which was used in other systems.

Chips

The chip set consists of a data path chip, a control chip, and two or three microcode ROMs (each holding 512 microwords, which are 22 bits wide). (The microcode is thus more 'vertical' than 'horizontal'.)

The data path chip contains data paths, registers, and logic to perform micro-instructions. The control chip contains micro-instruction sequencing, and control for the QBUS.

The uROMs all have the same pinout, and are wired in parallel, so they can be placed in any of the three uROM positions. The first two uROMs contain the basic PDP-11 instruction set; the third uROM is optional, and a number of different choices are available.

One is the KEV11-A, for the EIS/FIS instructions; the KEV11-B provides EIS without FIS; the KEV11-C provides a subset of the PDP-11 CIS (it also apparently includes the EIS, but not the FIS).

Some versions of the CPU boards also support the optional KUV11 Writeable Control Store.

Internal details

The data path chip includes a register file and the ALU; all are 8 bits wide (so PDP-11 word operations two microcycles). The register file contains 26 entries (paired into 16-bit composites).

5 pairs are directly addressable from the microcode, 6 pairs an only be addressed indirectly (via a 3-bit internal register, loadable from the register fields ), and 2 pairs support both:

Registers Directly Indirectly Use
0-1   x R0
2-3   x R1
4-5   x R2
6-7   x R3
10-11   x R4
12-13   x R5
14-15 x x R6 (SP)
16-17 x x R7 (PC)
20-21 x   IR
22-23 x   BAR
24-25 x   Source
26-27 x   Destination
30-31 x   PS

The chip also contains condition codes logic, and a data port which gives access to the QBUS' data/address lines.

The control chip contains control for the data port; it includes a 'programmable translation array', which decodes macro-instructions to produce microcode addresses, the 11-bit 'location counter' (micro-program counter), the 'return register' (microcode subroutine return), and interrupt logic.

Chip variants

There are a number of variants of all the various uROM chips in the base set; it is not known if all variants are completely inter-operable (i.e. any revision of any chip can be replaced with any other, and have the machine still work), so combinations will be listed.

Chip numbers of the form 23-xxxxx-rr, etc are DEC part numbers (where 'rr' seems to represent a revision number - 0, if not given); the corresponding Western Digital numbers are xxxxy, etc (where the 'x's are digits, and the 'y' a letter).

The Data Path chip is a 1611H (various DEC part numbers), and the Control chip is a 2007C (ditto); the uROM chips are all 30xxy.

The following sets (Data, Control, uROMs) have been observed (the first three on LSI-11/2 cards):

  • 1611H 21-11549-01, 2007C 23-002C4, 3010A 23-001B5, 3007D 23-002B5
  • 1611H 21-16890, 2007C 23-002C4, 3010D 23-001B5, 3007D 23-007B5
  • 1611H 21-16890, 2007C 23-003C4, 3010D 23-008B5, 3007D 23-007B5
  • unknown, unknown, 3010D 23-001B5, 3007D 23-002B5

The 3010D contains uROM addresses 0x000-0x1ff, and the 3007D 23-002B5 contains 0x200-0x3ff.

External links