Difference between revisions of "KS10"

From Computer History Wiki
Jump to: navigation, search
(TYMCOM-XX (not a typo))
m (Internal details: note rh11-c in this machine)
(4 intermediate revisions by 2 users not shown)
Line 17: Line 17:
 
| memory speed = 0.9 μsec
 
| memory speed = 0.9 μsec
 
| memory mgmt = [[paging]], 512-word pages
 
| memory mgmt = [[paging]], 512-word pages
| operating system = [[TOPS-10]], [[TOPS-20]], [[Incompatible Timesharing System|ITS]], TYMCOM-XX
+
| operating system = [[TOPS-10]], [[TOPS-20]], [[Incompatible Timesharing System|ITS]], [[TYMCOM-XX]]
 
| predecessor = [[KL10]]
 
| predecessor = [[KL10]]
 
| successor = None
 
| successor = None
Line 25: Line 25:
 
The '''KS10''' was the fourth and last generation of [[PDP-10]] processors (themselves, exact re-implementations of the earlier [[PDP-6]] architecture). It was intended as a small, low-cost entry model, not as a replacement for the earlier [[KL10]] [[mainframe]].
 
The '''KS10''' was the fourth and last generation of [[PDP-10]] processors (themselves, exact re-implementations of the earlier [[PDP-6]] architecture). It was intended as a small, low-cost entry model, not as a replacement for the earlier [[KL10]] [[mainframe]].
  
8 different sets of CPU [[register]]s were provided, to speed up [[interrupt]] handling. The [[main memory]] used [[ECC]] for error detection (and possibly correction).
+
Its [[main memory]], specific to the KS10, used [[ECC]] for error detection (and possibly correction).
  
For I/O, it used a pair of [[UNIBUS]]es, driven by adapters which interfaced them to the KS10's internal bus. One was for the [[disk]]s only, the other for all other devices ([[magnetic tape]], [[asynchronous serial line]]s, etc). A separate page table mapped the UNIBUS [[address space]] into the KS10's main memory for [[Direct Memory Access|DMA]] operations.  
+
For I/O, it used a pair of [[UNIBUS]]es, driven by adapters which interfaced them to the KS10's internal bus. One was for the [[disk]]s only, the other for all other devices ([[magnetic tape]], [[asynchronous serial line]]s, etc).
  
The UNIBUS which is used for the disks was run in 18-bit mode (the two parity lines on that UNIBUS were recycled into two extra data lines). That UNIBUS had only an [[RH11 MASSBUS controller|RH11]], mounted in the main [[Central Processing Unit|CPU]] cabinet to drive the [[MASSBUS]] to the disks. (Only MASSBUS disks were supported, since an 18-bit data path was needed).
+
==Internal details==
  
==Internal details==
+
8 different sets of [[Central Processing Unit|CPU]] [[register]]s were provided, to speed up [[interrupt]] handling. Separate [[page table]]s mapped the UNIBUS [[address space]] into the KS10's main memory for [[Direct Memory Access|DMA]] operations.
 +
 
 +
The UNIBUS which is used for the disks was run in [[UNIBUS parity#18-bit width|18-bit mode]] (the two [[parity]] lines on that UNIBUS were recycled into two extra data lines). That UNIBUS had only an [[RH11 MASSBUS controller|RH11-C]], mounted in the main CPU rack (although apparently on its own [[backplane]]) to drive the [[MASSBUS]] to the disks. (Only MASSBUS disks were supported on that RH11, apparently both for performance reasons, and since 18-bit data storage was needed).
 +
 
 +
The [[device controller]]s on the second UNIBUS were mounted in a [[BA11-K mounting box]], mounted in the main cabinet. These included a second RH11-C in DEC-supported systems, since [[Digital Equipment Corporation|DEC]] required a tape drive for loading [[diagnostic]]s; the usual choice was a [[TU45 magtape drive|TU45]] interfaced via a [[TM02 magtape controller|TM02]].
 +
 
 +
===CPU details===
  
 
It was built out of [[LS TTL]] [[chip]]s, along with [[AMD 2901]] 4-bit-wide bit slice chips. The CPU was on four [[DEC card form factor|super hex]] cards:
 
It was built out of [[LS TTL]] [[chip]]s, along with [[AMD 2901]] 4-bit-wide bit slice chips. The CPU was on four [[DEC card form factor|super hex]] cards:
  
* DPE data path
+
* M8620 DPE - data path
* DPM data path
+
* M8621 DPM - data path
* CRA control store
+
* M8622 CRA - control store
* CRM control store
+
* M8623 CRM - control store
  
 
Additional super hex cards held:
 
Additional super hex cards held:
  
* CSL - the console (driven by an [[Intel 8080|Intel 8080A]]), and bus arbitrator
+
* M8616 CSL - the console (driven by an [[Intel 8080|Intel 8080A]]), and bus arbitrator
* MMC - main memory controller
+
* M8618 MMC - main memory controller
* MMA - [[Dynamic RAM|DRAM]] memory array modules (2 to 8)
+
* M8629 MMA - [[Dynamic RAM|DRAM]] memory array modules (2 to 8)
* UBA - UNIBUS adapters (2, optionally 3)
+
* M8619 UBA - UNIBUS adapters (2, optionally 3)
 +
 
 +
The CPU and main memory mounted in a single backplane, consisting of two 9-slot [[system unit]]s [[wire-wrap]]ped together:
 +
 
 +
{| class="wikitable"
 +
! !! colspan="6" | Connector
 +
|-
 +
! Slot !! A !! B !! C !! D !! E !! F
 +
|-
 +
| 1 || colspan="6" style="text-align:center;" | Extra M8629 Memory
 +
|-
 +
| 2 || colspan="6" style="text-align:center;" | Extra M8629 Memory
 +
|-
 +
| 3 || colspan="6" style="text-align:center;" | Extra M8629 Memory
 +
|-
 +
| 4 || colspan="6" style="text-align:center;" | Extra M8629 Memory
 +
|-
 +
| 5 || colspan="6" style="text-align:center;" | Extra M8629 Memory
 +
|-
 +
| 6 || colspan="6" style="text-align:center;" | Extra M8629 Memory
 +
|-
 +
| 7 || colspan="6" style="text-align:center;" | M8629 Memory
 +
|-
 +
| 8 || colspan="6" style="text-align:center;" | M8629 Memory
 +
|-
 +
| 9 || colspan="6" style="text-align:center;" | M8618 Memory Controller
 +
|-
 +
| 10 || colspan="6" style="text-align:center;" | M8623 CRM Control Store
 +
|-
 +
| 11 || colspan="6" style="text-align:center;" | M8622 CRA Control Store
 +
|-
 +
| 12 || colspan="6" style="text-align:center;" | M8620 DPE Data Path
 +
|-
 +
| 13 || colspan="6" style="text-align:center;" | M8621 DPM Data Path
 +
|-
 +
| 14 || colspan="6" style="text-align:center;" | "Reserved for I/O"
 +
|-
 +
| 15 || colspan="6" style="text-align:center;" | M8619 UBA
 +
|-
 +
| 16 || colspan="6" style="text-align:center;" | M8619 Optional UBA
 +
|-
 +
| 17 || colspan="6" style="text-align:center;" | M8616 CSL Console
 +
|-
 +
| 18 || colspan="6" style="text-align:center;" | M8619 UBA
 +
|}
 +
 
 +
''Note:'' There appear to be several errors in the the 'disk' RH11 section of the 'Module Utilization' chart, Figure 1-5 (page 1-9, 18 of the PDF), in the KS10 Technical Manual (EK-OKS10-TM-002):
 +
 
 +
* The M9200 'thin' UNIBUS jumper used to connect together the two UNIBI (see [[RH11 MASSBUS controller#Backplane layout|here]] for the explanation of why this is needed) is mis-labelled "M9300" (the M9300 is a [[terminator]]).
 +
 
 +
* The "M8014" in the UNIBUS 'A' In slot must be an M9014 (UNIBUS to 3 [[flat cable]]s; the M8014 is an [[RL11 disk controller|RLV11]] board).
  
[[Category:DEC CPUs]]
+
[[Category: PDP-10 Processors]]

Revision as of 16:32, 23 November 2019


KS10
Manufacturer: Digital Equipment Corporation
Architecture: PDP-10
Year Introduced: 1978
Form Factor: small mainframe
Word Size: 36 bits
Logic Type: LS TTL ICs
Design Type: clocked synchronous microcoded
Microword Width: 96
Microcode Length: 2K
Clock Speed: 300 nsec (micro-cycle)
Cache Size: 512 words
Cache Speed: 300 nsec
Memory Speed: 0.9 μsec
Physical Address Size: 19 bits (some had 20)
Virtual Address Size: 18 bits
Memory Management: paging, 512-word pages
Operating System: TOPS-10, TOPS-20, ITS, TYMCOM-XX
Predecessor(s): KL10
Successor(s): None


The KS10 was the fourth and last generation of PDP-10 processors (themselves, exact re-implementations of the earlier PDP-6 architecture). It was intended as a small, low-cost entry model, not as a replacement for the earlier KL10 mainframe.

Its main memory, specific to the KS10, used ECC for error detection (and possibly correction).

For I/O, it used a pair of UNIBUSes, driven by adapters which interfaced them to the KS10's internal bus. One was for the disks only, the other for all other devices (magnetic tape, asynchronous serial lines, etc).

Internal details

8 different sets of CPU registers were provided, to speed up interrupt handling. Separate page tables mapped the UNIBUS address space into the KS10's main memory for DMA operations.

The UNIBUS which is used for the disks was run in 18-bit mode (the two parity lines on that UNIBUS were recycled into two extra data lines). That UNIBUS had only an RH11-C, mounted in the main CPU rack (although apparently on its own backplane) to drive the MASSBUS to the disks. (Only MASSBUS disks were supported on that RH11, apparently both for performance reasons, and since 18-bit data storage was needed).

The device controllers on the second UNIBUS were mounted in a BA11-K mounting box, mounted in the main cabinet. These included a second RH11-C in DEC-supported systems, since DEC required a tape drive for loading diagnostics; the usual choice was a TU45 interfaced via a TM02.

CPU details

It was built out of LS TTL chips, along with AMD 2901 4-bit-wide bit slice chips. The CPU was on four super hex cards:

  • M8620 DPE - data path
  • M8621 DPM - data path
  • M8622 CRA - control store
  • M8623 CRM - control store

Additional super hex cards held:

  • M8616 CSL - the console (driven by an Intel 8080A), and bus arbitrator
  • M8618 MMC - main memory controller
  • M8629 MMA - DRAM memory array modules (2 to 8)
  • M8619 UBA - UNIBUS adapters (2, optionally 3)

The CPU and main memory mounted in a single backplane, consisting of two 9-slot system units wire-wrapped together:

Connector
Slot A B C D E F
1 Extra M8629 Memory
2 Extra M8629 Memory
3 Extra M8629 Memory
4 Extra M8629 Memory
5 Extra M8629 Memory
6 Extra M8629 Memory
7 M8629 Memory
8 M8629 Memory
9 M8618 Memory Controller
10 M8623 CRM Control Store
11 M8622 CRA Control Store
12 M8620 DPE Data Path
13 M8621 DPM Data Path
14 "Reserved for I/O"
15 M8619 UBA
16 M8619 Optional UBA
17 M8616 CSL Console
18 M8619 UBA

Note: There appear to be several errors in the the 'disk' RH11 section of the 'Module Utilization' chart, Figure 1-5 (page 1-9, 18 of the PDF), in the KS10 Technical Manual (EK-OKS10-TM-002):

  • The M9200 'thin' UNIBUS jumper used to connect together the two UNIBI (see here for the explanation of why this is needed) is mis-labelled "M9300" (the M9300 is a terminator).
  • The "M8014" in the UNIBUS 'A' In slot must be an M9014 (UNIBUS to 3 flat cables; the M8014 is an RLV11 board).