Difference between revisions of "UNIBUS"
(→Cables: add alt line grounds) |
m (→See Also: add EUB) |
||
Line 219: | Line 219: | ||
% For forward compatibility, use the first pin rather than the second | % For forward compatibility, use the first pin rather than the second | ||
− | == See | + | == See also == |
+ | * [[Extended UNIBUS]] | ||
* [[Small Peripheral Controller]] | * [[Small Peripheral Controller]] | ||
* [[Modified UNIBUS Device]] | * [[Modified UNIBUS Device]] |
Revision as of 18:11, 22 July 2016
The UNIBUS (or Unibus - the capitalization style changed over time) was the earliest of two bus technologies used with PDP-11s manufactured by Digital Equipment Corporation; it was first seen in the PDP-11/20, in 1970. Later, early VAX systems from that company used the UNIBUS as an I/O bus.
It was the only bus in most PDP-11 systems, and thus supported several capabilities: the ability of the processor to read and write main memory, and device registers; and the ability for devices to do DMA transfers to memory, and interrupt the CPU.
It could exist on a cable (the original mode of operation), and later, within a backplane (in 'Small Peripheral Controller (SPC)' or 'Modified UNIBUS Device (MUD)' slots). Up to 20 nodes (devices) could be connected to a single UNIBUS segment; additional segments could be connected via a bus repeater.
The UNIBUS contained 16 data lines, and 18 address lines; the 18 address lines allowed the addressing of a maximum of 256 KBytes. Typically, the top 8 KBytes of address space was reserved for the registers of the memory mapped IO devices used in the PDP-11 architecture. (The limit of 18 address lines was to prove a severe handicap in the later phases of the UNIBUS' operational life.)
The bus was completely asynchronous, allowing a mixture of fast and slow devices. It allowed the overlapping of arbitration (selection of the next bus master) while the current bus master was still performing data transfers.
The design deliberately minimized the amount of redundant logic required in the system. For example, a system always contained more slave devices than master devices, so most of the complex logic required to implement asynchronous data transfers was forced into the relatively few master devices. For interrupts, only the interrupt-fielding processor needed to contain the complicated timing logic.
The end result was that most I/O controllers could be implemented with very simple logic; most of the critical logic was later implemented as a custom MSI IC.
Technical details
Two control lines (C0 and C1) allowed the selection of four different data transfer cycle types in normal master/slave cycles:
- DATI (Data In, a read)
- DATIP (Data In/Pause, the first portion of a Read-Modify-Write operation. A DATO or DATOB operation completes this.)
- DATO (Data Out, a word write)
- DATOB (Data Out/Byte, a byte write)
During an interrupt cycle, a fifth style of transfer was used to convey an interrupt vector from the interrupting device to the interrupt-fielding processor.
Lines
The UNIBUS is usually described as containing 56 lines. In its initial BC11A cable instantiation, the UNIBUS was composed of 72 wires (2 standard DEC board edge connectors, with 36 lines per connector); when not counting the power and ground lines, this was reduced to the canonical 56.
Among the UNIBUS signals are:
- BR4-BR7 - Bus (Interrupt) Requests at priorities 4 (lowest) through 7 (highest)
- BG4-BG7 - Bus (Interrupt) Grants at priorities 4 (lowest) through 7 (highest)
- NPR - Non Processor (DMA) Request
- NPG - Non Processor (DMA) Grant
- MSYNC - Master Sync
- SSYNC - Slave Sync
- BBSY - Bus Busy
- SACK - Selection Acknowledge
- PA, PB - Parity control
- C0, C1 - Cycle Control
Cables
For many years, the cable used to carry the UNIBUS from one backplane to another was the BC11A cable, a pair of wide (3-3/4 inch) white flexible printed circuit flat cables, separated by a thin foam layer, with small printed circuit boards with edge connector fingers on each end of the cable. The latter plugged into 'UNIBUS In' and 'UNIBUS out' slots in backplanes. The flat cables actually contained 64 connectors each; every other trace was grounded, to prevent cross-talk between the signal lines.
DEC later developed a series of cards (the M9014, an extended height dual card, and the M9042 short dual card) which plug into the same slots, and contain three 2x20 headers for 40-conductor flat cables (known as H854 cables in DEC parlance); a pair of these, and three cables, perform the same role as a BC11A cable. Both of these cards use the same header pinout, so they may be used interchangeably.
Pinout
The following table gives the pinout for the flat cable form and SPC slot form. Pins are identified in the standard DEC manner; there are two connectors, A and B; pins on the component side are 1, those on the solder side are 2. Pins are identified by the 'DEC alphabet', A-V, with G, I, O and Q dropped.
Signal | Assertion | Termination | Cable Pin | SPC Pin |
---|---|---|---|---|
Initialization and Shutdown | ||||
DC LO | L | Slow | BF2 | CN1 |
AC LO | L | Slow | BF1 | CV1 |
INIT | L | Fast | AA1 | DL1 |
Arbitration | ||||
NPR | L | Fast | AS2 | FJ1 |
BR7 | L | Fast | AT2 | DD2 |
BR6 | L | Fast | AU2 | DE2 |
BR5 | L | Fast | BC1 | DF2 |
BR4 | L | Fast | BD2 | DH2 |
NPG | H | Grant | AU1 | In-CA1; Out-CB1 |
BG7 | H | Grant | AV1 | In-DK2; Out-DL2 |
BG6 | H | Grant | BA1 | In-DM2; Out-DN2 |
BG5 | H | Grant | BB1 | In-DP2; Out-DR2 |
BG4 | H | Grant | BE2 | In-DS2; Out-DT2 |
SACK | L | Fast | AR2 | FT2 |
Addressing | ||||
A00 | L | Fast | BH2 | EH2 |
A01 | L | Fast | BH1 | EH1 |
A02 | L | Fast | BJ2 | EF1 |
A03 | L | Fast | BJ1 | EV2 |
A04 | L | Fast | BK2 | EU2 |
A05 | L | Fast | BK1 | EV1 |
A06 | L | Fast | BL2 | EU1 |
A07 | L | Fast | BL1 | EP2 |
A08 | L | Fast | BM2 | EN2 |
A09 | L | Fast | BM1 | ER1 |
A10 | L | Fast | BN2 | EP1 |
A11 | L | Fast | BN1 | EL1 |
A12 | L | Fast | BP2 | EC1 |
A13 | L | Fast | BP1 | EK2 |
A14 | L | Fast | BR2 | EK1 |
A15 | L | Fast | BR1 | ED2 |
A16 | L | Fast | BS2 | EE2 |
A17 | L | Fast | BS1 | ED1 |
Data | ||||
D00 | L | Fast | AC1 | CS2 |
D01 | L | Fast | AD2 | CR2 |
D02 | L | Fast | AD1 | CU2, FE2% |
D03 | L | Fast | AE2 | CT2, FL1% |
D04 | L | Fast | AE1 | CN2, FN2% |
D05 | L | Fast | AF2 | CP2, FF1% |
D06 | L | Fast | AF1 | CV2, FF2% |
D07 | L | Fast | AH2 | CM2, FH1% |
D08 | L | Fast | AH1 | CL2, FK1% |
D09 | L | Fast | AJ2 | CK2 |
D10 | L | Fast | AJ1 | CJ2 |
D11 | L | Fast | AK2 | CH1 |
D12 | L | Fast | AK1 | CH2 |
D13 | L | Fast | AL2 | CF2 |
D14 | L | Fast | AL1 | CE2 |
D15 | L | Fast | AM2 | CD2 |
Control | ||||
C0 | L | Fast | BU2 | EJ2 |
C1 | L | Fast | BT2 | EF2 |
PA | L | Fast | AM1 | CC1 |
PB | L | Fast | AN2 | CS1 |
BBSY | L | Fast | AP2 | FD1 |
MSYN | L | Fast | BV1 | EE1 |
INTR | L | Fast | AB1 | FM1 |
SSYN | L | Fast | BU1 | EJ1, FC1% |
Power | ||||
Ground | N/A | N/A | AB2 | |
Ground | N/A | N/A | AC2 | xC2 |
Ground | N/A | N/A | AN1 | |
Ground | N/A | N/A | AP1 | |
Ground | N/A | N/A | AR1 | |
Ground | N/A | N/A | AS1 | |
Ground | N/A | N/A | AT1 | xT1 |
Ground | N/A | N/A | AV2 | |
Ground | N/A | N/A | BB2 | |
Ground | N/A | N/A | BC2 | |
Ground | N/A | N/A | BD1 | |
Ground | N/A | N/A | BE1 | |
Ground | N/A | N/A | BT1 | |
Ground | N/A | N/A | BV2 | |
+5 | N/A | N/A | AA2 | xA2 |
+5 | N/A | N/A | BA2 | |
-15 | N/A | N/A | N/A | xB2 (except 1A, 1B, 4A, 4B) |
Entries of the form 'xYN' mean that that is available on all 4 connectors (A, B, C and D) in each slot.
% For forward compatibility, use the first pin rather than the second
See also
v • d • e PDP-11 Computers and Peripherals |
---|
UNIBUS PDP-11s - PDP-11/20 • PDP-11/15 • PDP-11/35 • PDP-11/40 • PDP-11/45 • PDP-11/50 • PDP-11/55 • PDP-11/70 PDP-11/05 • PDP-11/10 • PDP-11/04 • PDP-11/34 • PDP-11/60 • PDP-11/44 • PDP-11/24 • PDP-11/84 • PDP-11/94 QBUS PDP-11s - PDP-11/03 • PDP-11/23 • PDP-11/23+ • MicroPDP-11/73 • MicroPDP-11/53 • MicroPDP-11/83 • MicroPDP-11/93 QBUS CPUs: LSI-11 • LSI-11/2 • KDF11-A • KDF11-B • KDJ11-A • KDJ11-B • KDJ11-D • KDJ11-E Buses: UNIBUS • UNIBUS map • SPC • MUD • EUB • QBUS • CD interconnect • PMI Also: PDP-11 architecture • PDP-11 Extended Instruction Set • FP11 floating point • PDP-11 Memory Management |
UNIBUS CPUs: KA11 • KC11 • KB11-A • KB11-B • KB11-C • KB11-D • KD11-A • KD11-B • KD11-D • KD11-E • KD11-EA • KD11-K • KD11-Z • KDF11-U
Co-processors: FP11-A • FP11-B • FP11-C • FP11-E • FP11-F • KE44-A • FPF11 Chips: LSI-11 • KEV11-A • KEV11-B • KEV11-C • F-11 • KEF11-A • KTF11-A • T-11 • J-11 • FPJ11 CPU options: KE11-E • KE11-F • KJ11-A • KT11-C • KT11-D • KK11-A • KK11-B • KT24 • KTJ11-B Rare CPU options: KS11 Memory Protection and Relocation option • KT11-B Paging Option • KUV11 Writeable Control Store Front panels: KY11-A • KY11-D • KY11-J • KY11-LA • KY11-LB • KY11-P More on buses: UNIBUS and QBUS termination • Bus Arbitration on the Unibus and QBUS • CTI BUS PDT-11s - PDT-11/110 • PDT-11/130 • PDT-11/150 CTI PDP-11s - PRO-325 • PRO-350 • PRO-380 Other: FIS floating point • PDP-11 Commercial Instruction Set • PDP-11 stacks • PDP-11 family differences |