Difference between revisions of "RK11-C disk controller"
m (→Module Utilization charts: typo) |
m (→External links: Vonada's Maxim #12 at work on an RK11-C) |
||
(13 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
− | + | [[Image:DBRK11C.jpg|350px|thumb|right|RK11-C disk controller, Double Buffered version]] | |
− | + | The '''RK11-C''' is the earliest known version of the [[RK11 disk controller]]. (Nothing is known of the -A and -B, if they ever existed as products, although see [[RK11 disk controller#Early RK11 version|here]] for more about the RK11-C's predecessor). It is mostly [[program compatible]] with the replacement [[RK11 disk controller#RK11-D|RK11-D]]. | |
− | The backplane is wired for connection to a standard [[DEC indicator panel]], but no inlay for such has even been sighted, although the RK11-C Engineering Drawings allow one to work out exactly what such an inlay would have looked like. It does however appear than | + | Although the drive interface is slightly different between the RK11-C and RK11-D, the RK11-C can handle both the earlier [[RK02/03 disk drive]]s, and the later [[RK05 disk drive|RK05s]] (the latter primarily intended for use with the RK11-D - see below). |
+ | |||
+ | Like many of the earlier large [[device controller]]s for the [[PDP-11]], it was a large custom [[wire-wrap]]ped [[backplane]] which bolted into the front or back of a 19 inch rack, such as an [[H960 rack|H950]]; into it plugged about 40 small M-Series [[FLIP CHIP]]s. | ||
+ | |||
+ | The backplane is wired for connection to a standard [[DEC indicator panel]], but no inlay for such has even been sighted, although the RK11-C Engineering Drawings allow one to work out exactly what such an inlay would have looked like. It does however appear than the hypothesized earlier version (above) did have such an indicator panel. | ||
+ | |||
+ | ==Drive buses and RK05 compatibility== | ||
+ | |||
+ | The RK11-C has two different drive buses, each which can handle up to four drives. (The buses are not independent - most lines are shared between the two; so only one can be active at a time.) The only lines not in common are the 'drive select' lines (A-D on bus 1 - slot 12 on the backplane, and E-F, H, J on bus 2 - slot 10). Each select line is assigned to one drive; to select that drive, the corresponding line is asserted. | ||
+ | |||
+ | RK11-D's use a different, but upwardly compatible drive select mechanism, and RK05's can detect whether they are connected to an RK11-C or RK11-D, and respond appropriately. | ||
==Double Buffered RK11-C== | ==Double Buffered RK11-C== | ||
− | [[Image:RK11-C-DB_DataPaths.jpg|295px|right|thumb|RK11-C-DB data paths]] | + | [[Image:RK11-C-DB_DataPaths.jpg|295px|right|thumb|RK11-C-DB data paths (from the last page of the engineering drawings)]] |
− | There is also a rare variant of the RK11-C, the 'Double Buffer' RK11-C. It adds two 16-bit buffer registers (ABUF and BBUF), which are chained in an <!-- | + | There is also a rare variant of the RK11-C, the 'Double Buffer' RK11-C. It adds two 16-bit buffer registers (ABUF and BBUF), which are chained in an alternate data path to the RKDB buffer register from the two sources that can feed it (the UNIBUS and the DSB - Data Serial Buffer<!-- DEC docs also give 'Disk SB' expansion -->, where data to/from the disk is serialized). |
− | The motivation is not explicitly known (no documentation other than the engineering drawings is now extant), but it likely prevented under-run | + | The motivation is not explicitly known (no documentation other than the engineering drawings is now extant), but it likely prevented under-run/over-run errors when there was considerable competing UNIBUS [[Direct Memory Access|DMA]] traffic. |
===Engineering drawings=== | ===Engineering drawings=== | ||
Line 22: | Line 32: | ||
* 24 - DSB/Bus -> ABuf Controls | * 24 - DSB/Bus -> ABuf Controls | ||
− | * 25 - ABuf/ | + | * 25 - ABuf/BBuf Reg |
* 26 - Interbuffer Transfer Control | * 26 - Interbuffer Transfer Control | ||
* 27 - Buffer Control | * 27 - Buffer Control | ||
Line 56: | Line 66: | ||
| M002 || 1 || 3 || 15 Loads | | M002 || 1 || 3 || 15 Loads | ||
|- | |- | ||
− | | M105 || 1 || 1 || Address selector | + | | M105 || 1 || 1 || [[M105 Address Selector|Address selector]] |
|- | |- | ||
| M111 || 2 || 5 || Inverter | | M111 || 2 || 5 || Inverter | ||
Line 114: | Line 124: | ||
| M623 || 3 || 3 || Bus driver | | M623 || 3 || 3 || Bus driver | ||
|- | |- | ||
− | | M782 || 1 || 1 || Interrupt control | + | | M782 || 1 || 1 || [[M782 Interrupt Control|Interrupt control]] |
|- | |- | ||
| M784 || 3 || 3 || UNIBUS receivers | | M784 || 3 || 3 || UNIBUS receivers | ||
Line 129: | Line 139: | ||
* M795 - Word Count and Current Memory Address | * M795 - Word Count and Current Memory Address | ||
− | ==Module Utilization | + | ==Module Utilization chart== |
− | The following | + | The following table gives the FLIP CHIP locations in the backplane for the RK11-C and the Double-Buffered RK11-C (added FLIP CHIPs for the latter are in ''italics''). The Flip Chip module utilization chart is as follows (* = Connector): |
− | |||
− | |||
− | |||
− | The Flip Chip module utilization chart | ||
{| class="wikitable" | {| class="wikitable" | ||
! Slot !! A !! B !! C !! D | ! Slot !! A !! B !! C !! D | ||
|- | |- | ||
− | | 1 || colspan="2" style="text-align:center;" | UNIBUS in | + | | 1 || colspan="2" style="text-align:center;" | UNIBUS in || ''M606'' || ''M113'' |
|- | |- | ||
− | | 2 || colspan="2" style="text-align:center;" | UNIBUS out | + | | 2 || colspan="2" style="text-align:center;" | UNIBUS out || ''M115'' || ''M002'' |
|- | |- | ||
− | | 3 | + | | 3 || ''M149'' || ''M149'' || ''M208'' || ''M208'' |
|- | |- | ||
− | | 4 | + | | 4 || ''M111'' || ''M002'' || ''M205'' || ''M113'' |
|- | |- | ||
− | | 5 || M105 || M784 | + | | 5 || M105 || M784 || ''M208'' || ''M208'' |
|- | |- | ||
− | | 6 || M782 || | + | | 6 || M782 || M796 || ''M304'' || ''M304'' |
|- | |- | ||
− | | 7 || colspan="2" style="text-align:center;" | M795 | + | | 7 || colspan="2" style="text-align:center;" | M795 || ''M606'' || ''M112'' |
|- | |- | ||
− | | 8 || M784 || M784 | + | | 8 || M784 || M784 || ''M112'' || ''M111'' |
|- | |- | ||
− | | 9 || | + | | 9 || ''M117'' || ''M111'' || M623 || M307 |
|- | |- | ||
| 10 || colspan="2" style="text-align:center;" | Disk bus 2* || M623 || M307 | | 10 || colspan="2" style="text-align:center;" | Disk bus 2* || M623 || M307 | ||
|- | |- | ||
− | | 11 || || | + | | 11 || || ''M113'' || M623 || M307 |
|- | |- | ||
| 12 || colspan="2" style="text-align:center;" | Disk bus 1* || M207 || M163 | | 12 || colspan="2" style="text-align:center;" | Disk bus 1* || M207 || M163 | ||
Line 205: | Line 211: | ||
|} | |} | ||
− | W130 = Maintenance board | + | W130 = Maintenance board (optional) |
<br> | <br> | ||
6775 = Cable to indicator panel | 6775 = Cable to indicator panel | ||
− | + | In the ordinary RK11-C, slots C08 and D08 hold pass-through connectors, which allow [[KM11-A Maintenance Set]]s to be plugged in and used from the outside of the rack holding the RK11-C. A pair of [[Flexprint cable]]s connect them to the 'usual' KM11 locations, in slots A30 and B30. | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | == | + | ==External links== |
− | * [http:// | + | * [http://www.bitsavers.org/pdf/dec/unibus/RK11-C_manual1971.pdf RK11-C moving head disk drive controller manual] (DEC-11-HRKA-D) |
− | * [http:// | + | * [http://www.bitsavers.org/pdf/dec/unibus/RK11-C_schemFeb1971.pdf RK11-C moving head disk drive controller engineering drawings] |
+ | * [http://ana-3.lcs.mit.edu/~jnc/tech/pdp11/dload/RK11-C-DB_EngrDrws_Dec72.pdf RK11-C-DB Double Buffer Disk Control Engineering Drawings] | ||
+ | * [https://fritzm.github.io/unix-v6-trouble-1.html PDP-11/45: V6 Unix Troubleshooting, Part I] [https://fritzm.github.io/unix-v6-trouble-2.html Part II] - a wonderful, lengthy and painful example of [[Vonada's Engineering Maxims|Vonada's Maxim #12]] at work on an RK11-C | ||
− | [[Category:UNIBUS Storage Controllers]] | + | [[Category: UNIBUS Storage Controllers]] |
Latest revision as of 13:44, 26 March 2023
The RK11-C is the earliest known version of the RK11 disk controller. (Nothing is known of the -A and -B, if they ever existed as products, although see here for more about the RK11-C's predecessor). It is mostly program compatible with the replacement RK11-D.
Although the drive interface is slightly different between the RK11-C and RK11-D, the RK11-C can handle both the earlier RK02/03 disk drives, and the later RK05s (the latter primarily intended for use with the RK11-D - see below).
Like many of the earlier large device controllers for the PDP-11, it was a large custom wire-wrapped backplane which bolted into the front or back of a 19 inch rack, such as an H950; into it plugged about 40 small M-Series FLIP CHIPs.
The backplane is wired for connection to a standard DEC indicator panel, but no inlay for such has even been sighted, although the RK11-C Engineering Drawings allow one to work out exactly what such an inlay would have looked like. It does however appear than the hypothesized earlier version (above) did have such an indicator panel.
Contents
Drive buses and RK05 compatibility
The RK11-C has two different drive buses, each which can handle up to four drives. (The buses are not independent - most lines are shared between the two; so only one can be active at a time.) The only lines not in common are the 'drive select' lines (A-D on bus 1 - slot 12 on the backplane, and E-F, H, J on bus 2 - slot 10). Each select line is assigned to one drive; to select that drive, the corresponding line is asserted.
RK11-D's use a different, but upwardly compatible drive select mechanism, and RK05's can detect whether they are connected to an RK11-C or RK11-D, and respond appropriately.
Double Buffered RK11-C
There is also a rare variant of the RK11-C, the 'Double Buffer' RK11-C. It adds two 16-bit buffer registers (ABUF and BBUF), which are chained in an alternate data path to the RKDB buffer register from the two sources that can feed it (the UNIBUS and the DSB - Data Serial Buffer, where data to/from the disk is serialized).
The motivation is not explicitly known (no documentation other than the engineering drawings is now extant), but it likely prevented under-run/over-run errors when there was considerable competing UNIBUS DMA traffic.
Engineering drawings
The engineering drawings for the Double Buffer RK11-C are very similar to those of the standard RK11-C. The differences are listed below.
(The engineering drawings available online for the original RK11-C have slightly different numbering for some pages, due to a change involving page 18, 'Disk Cable and Termination'. The Double Buffer set includes that page, but numbered it 21. The re-numbering of that first drawing from 18 to 21 caused the prints numbered from 19 to 21 in the original RK11-C set to be numbered one lower in the Double Buffer set; e.g. 'RKDB Data Paths' was 21 in the original RK11-C set, and is 20 in the Double Buffer set, and 'Bus "D" Drvrs and Rcvrs' changed from 19 to 18.)
New prints:
- 24 - DSB/Bus -> ABuf Controls
- 25 - ABuf/BBuf Reg
- 26 - Interbuffer Transfer Control
- 27 - Buffer Control
Major changes:
- 10 - RKDB and Control
- 11B - Reg Sel, NPR & Int Control
Minor changes:
- 13 - Adder Control (Adder Control #2 flop set input logic)
- 15 - RKBA - RKWC - RKMR (logic lower left corner)
- 16 - Errors (logic center driving DLT flop)
- 17 - Cable Drivers (hand-written gate lower left)
- 20 - RKDB Data Paths (replace 'BUS D' with 'BBUF' on all data bits)
Module count table
The following table gives a listing of the FLIP CHIPs used in the RK11-C and the Double-Buffered RK11-C. (Drawn from module utilization drawings, confirmed in module count charts.)
Single height boards:
Type | RK11-C | Double-Buffered | Function |
---|---|---|---|
G736 | 1 | 1 | Jumper |
G740 | 1 | 1 | Disk selection |
M002 | 1 | 3 | 15 Loads |
M105 | 1 | 1 | Address selector |
M111 | 2 | 5 | Inverter |
M112 | 5 | 7 | NOR gate |
M113 | 7 | 10 | 10 x 2-Input NAND gates |
M115 | 3 | 4 | 8 x 3-Input NAND gates |
M116 | 3 | 3 | 6 x 4-Input NOR gates |
M117 | 3 | 4 | 6 x 4-Input NAND gates |
M119 | 2 | 2 | 3 x 8-Input NAND gates |
M121 | 3 | 3 | AND/NOR gates |
M141 | 2 | 2 | NAND/NOR gates |
M149 | 10 | 12 | 9 x 2-NAND wired OR matrix |
M161 | 1 | 1 | Binary to octal/decimal decoder |
M163 | 1 | 1 | Dual binary to decimal decoder |
M203 | 4 | 4 | 8 x SR flip-flops |
M205 | 3 | 4 | 5 x 'D' flip-flops |
M207 | 1 | 1 | J-K Flip-flops (3-3 configuration) |
M208 | 2 | 6 | 8-bit buffer shift register |
M214 | 3 | 3 | 6-bit register |
M216 | 5 | 5 | 6 x flip-flops |
M236 | 1 | 1 | 12-bit binary up/down counter |
M238 | 1 | 1 | Synchronous 4-bit up/down counter |
M239 | 2 | 2 | 3 x 4-bit up/down counter/register |
M304 | 3 | 5 | One shot delay |
M307 | 3 | 3 | Integrating one shot |
M405 | 1 | 1 | Crystal clock |
M606 | 0 | 2 | Pulse generator |
M611 | 1 | 1 | High speed power inverter |
M617 | 1 | 1 | 6 x 4-input NAND buffers |
M623 | 3 | 3 | Bus driver |
M782 | 1 | 1 | Interrupt control |
M784 | 3 | 3 | UNIBUS receivers |
M796 | 1 | 1 | UNIBUS master control |
M797 | 1 | 1 | Register select |
M798 | 1 | 1 | UNIBUS drivers |
Double height boards:
- M795 - Word Count and Current Memory Address
Module Utilization chart
The following table gives the FLIP CHIP locations in the backplane for the RK11-C and the Double-Buffered RK11-C (added FLIP CHIPs for the latter are in italics). The Flip Chip module utilization chart is as follows (* = Connector):
Slot | A | B | C | D |
---|---|---|---|---|
1 | UNIBUS in | M606 | M113 | |
2 | UNIBUS out | M115 | M002 | |
3 | M149 | M149 | M208 | M208 |
4 | M111 | M002 | M205 | M113 |
5 | M105 | M784 | M208 | M208 |
6 | M782 | M796 | M304 | M304 |
7 | M795 | M606 | M112 | |
8 | M784 | M784 | M112 | M111 |
9 | M117 | M111 | M623 | M307 |
10 | Disk bus 2* | M623 | M307 | |
11 | M113 | M623 | M307 | |
12 | Disk bus 1* | M207 | M163 | |
13 | M798 | G736 | G740 | M405 |
14 | M149 | M149 | M116 | M161 |
15 | M149 | M149 | M304 | M119 |
16 | M149 | M149 | M113 | M113 |
17 | M239 | M238 | M216 | M141 |
18 | M239 | M214 | M115 | M115 |
19 | M214 | M214 | M121 | M112 |
20 | M208 | M208 | M111 | M111 |
21 | M203 | M203 | M112 | M112 |
22 | M149 | M149 | M205 | M117 |
23 | M149 | M149 | M203 | M203 |
24 | M121 | M002 | M116 | M115 |
25 | M216 | M797 | M611 | M617 |
26 | M141 | M119 | M113 | M304 |
27 | M304 | M112 | M112 | M113 |
28 | M236 | M121 | M216 | M216 |
29 | M205 | M117 | M117 | |
30 | W130* | M113 | M113 | |
31 | 6775* | M113 | M205 | |
32 | 6775* | M116 | M216 |
W130 = Maintenance board (optional)
6775 = Cable to indicator panel
In the ordinary RK11-C, slots C08 and D08 hold pass-through connectors, which allow KM11-A Maintenance Sets to be plugged in and used from the outside of the rack holding the RK11-C. A pair of Flexprint cables connect them to the 'usual' KM11 locations, in slots A30 and B30.
External links
- RK11-C moving head disk drive controller manual (DEC-11-HRKA-D)
- RK11-C moving head disk drive controller engineering drawings
- RK11-C-DB Double Buffer Disk Control Engineering Drawings
- PDP-11/45: V6 Unix Troubleshooting, Part I Part II - a wonderful, lengthy and painful example of Vonada's Maxim #12 at work on an RK11-C