Difference between revisions of "KE11-A Extended Arithmetic Element"
(rotate image) |
m (→Further reading: +KE11-A Technical Manual) |
||
| (15 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
| − | The '''KE11-A Extended Arithmetic Element''' is an autonomous [[UNIBUS]] [[peripheral]] | + | The '''KE11-A Extended Arithmetic Element''' is an [[Extended Arithmetic Element]] implemented as autonomous [[UNIBUS]] [[peripheral]]; it can perform a variety of arithmetic or logical [[operator|operations]]: |
* multiplication | * multiplication | ||
| Line 6: | Line 6: | ||
** logical shift | ** logical shift | ||
** arithmetic shift | ** arithmetic shift | ||
| − | ** normalization | + | ** [[normalization]] |
(The last is used for implementation of [[floating point]] in [[software]].) | (The last is used for implementation of [[floating point]] in [[software]].) | ||
| − | It is implemented as a four-slot [[system unit]] (details below). | + | It is implemented as several [[DEC card form factor|quad]] and dual [[printed circuit board|boards]], plugged into a custom four-slot [[system unit]] [[backplane]] (details below). |
| − | The KE11-A was originally produced for use with the [[PDP-11/20]], whose [[KA11 CPU]] did not have | + | The KE11-A was originally produced for use with the [[PDP-11/20]], whose [[KA11 CPU]] did not have multiply, divide, or multi-bit shift operations. As a UNIBUS peripheral, not integrated into the [[Central Processing Unit|CPU]], it was also usable with other models, e.g. the [[PDP-11/05]] and [[PDP-11/04]], which likewise did not implement multiplication in [[hardware]], etc. |
| − | The KE11-A can be operated with an optional [[KM11-A Maintenance Set]] in order to diagnose faults. | + | The KE11-A can be operated with an optional [[KM11-A Maintenance Set]] (plugged into [[DEC edge connector contact identification|slot B02]]) in order to diagnose faults. |
| + | |||
| + | It was replaced by the [[KE11-B Extended Arithmetic Element]], a [[program compatible]] re-implementation on a single hex card. | ||
| + | |||
| + | ==Registers== | ||
| + | |||
| + | The device has a number of [[register]]s, which can be configured to sequential locations in the I/O page; most are [[word]]s, but there are two [[byte]] registers. It is normally configured to [[address]]es 777300-777316; a second KE11-A, if present, is configured to addresses 777320-777336. The operation to be performed is selected by the register which data is written to. Registers which hold results are readable, but many of the operation selection registers are write-only. In the register table (below), those which are read/write are shown in normal font; those which are read-only are in ''italics''; those which are write-only in '''bold''' (these return '0' when read). | ||
| + | |||
| + | {| border=1 | ||
| + | ! Register !! Abbreviation !! Address || Size | ||
| + | |- | ||
| + | |'''Divide''' || '''DIV''' || 777300 || W | ||
| + | |- | ||
| + | |Accumulator || AC || 777302 || W | ||
| + | |- | ||
| + | |Multiplier-Quotient || MQ ||777304 || W | ||
| + | |- | ||
| + | |'''Multiply''' || '''MUL''' || 777306 || W | ||
| + | |- | ||
| + | |''Step Counter''$ || ''SC'' || 777310 || B | ||
| + | |- | ||
| + | |''Status Register''% || ''SR'' || 777311 || B | ||
| + | |- | ||
| + | |Normalize || NOR || 777312 || W | ||
| + | |- | ||
| + | |'''Logical Shift''' || '''LSH''' || 777314 || W | ||
| + | |- | ||
| + | |'''Arithmetic Shift''' || '''ASH''' || 777316 || W | ||
| + | |} | ||
| + | |||
| + | $ The SC is read-only as an individual byte, but can written as a word together with the SR.<br> | ||
| + | % The SR is read-only as an individual byte, but can written as a word together with the SC. | ||
| + | |||
| + | Division takes as one [[operand]] a 32-[[bit]] value held in the AC (high order) and MQ (low order); a remainder is left in the AC. Multiplication produces a 32-bit product in the AC (high order) and MQ (low order). Both arithmetic and logical shifts operate on a 32-bit value held in the AC (high order) and MQ (low order). | ||
| + | |||
| + | ===Status Register (SR)=== | ||
| + | {{8bit-header}} | ||
| + | | Overflow XOR Negative || Negative || AC = -1 || AC = 0 || MQ = 0 || AC = MQ = 0 || AC = MQ15 || Carry | ||
| + | {{8bit-bitout}} | ||
==Hardware== | ==Hardware== | ||
| − | The KE11-A consists of 3 | + | The KE11-A consists of 3 quad boards: |
* M7210 Data Control | * M7210 Data Control | ||
| Line 24: | Line 62: | ||
* M827 Clock and States | * M827 Clock and States | ||
| − | and a pair of M234 Register dual-height boards, plugged into | + | and a pair of M234 Register dual-height boards, plugged into the quad custom backplane. |
===Board locations=== | ===Board locations=== | ||
| Line 44: | Line 82: | ||
|} | |} | ||
| − | + | ==See also== | |
| + | |||
| + | * [[KE11-B Extended Arithmetic Element]] | ||
| + | |||
| + | ==Further reading== | ||
| + | |||
| + | * ''KE11-A User's Guide'' (EK-KE11A-OP ?) | ||
| + | * ''KE11-A Technical Manual'' (EK-KE11A-TM ?) | ||
| + | |||
| + | ==External links== | ||
| + | |||
| + | * [http://www.bitsavers.org/pdf/dec/pdp11/handbooks/PDP1120_Handbook_1972.pdf pdp11/20-15-r20 processor handbook] - the operation of the KE11-A is covered in Chapter 8 (pp. 155-162 of the PDF) | ||
| + | * [http://bitsavers.org/pdf/dec/pdp11/1120/KE11-A_ExtendedArithElem.pdf KE11-A extended arithmetic element] (DEC-11-HKEA-D) | ||
| + | * [http://www.bitsavers.org/pdf/dec/unibus/KE11-A__Extended_Arithmetic_Element_Engineering_Drawings__Nov71.pdf KE11-A extended arithmetic element engineering drawings] | ||
[[Category: PDP-11s]] | [[Category: PDP-11s]] | ||
| + | [[Category: UNIBUS]] | ||
Latest revision as of 19:17, 2 July 2023
The KE11-A Extended Arithmetic Element is an Extended Arithmetic Element implemented as autonomous UNIBUS peripheral; it can perform a variety of arithmetic or logical operations:
- multiplication
- division
- multi-bit shifts
- logical shift
- arithmetic shift
- normalization
(The last is used for implementation of floating point in software.)
It is implemented as several quad and dual boards, plugged into a custom four-slot system unit backplane (details below).
The KE11-A was originally produced for use with the PDP-11/20, whose KA11 CPU did not have multiply, divide, or multi-bit shift operations. As a UNIBUS peripheral, not integrated into the CPU, it was also usable with other models, e.g. the PDP-11/05 and PDP-11/04, which likewise did not implement multiplication in hardware, etc.
The KE11-A can be operated with an optional KM11-A Maintenance Set (plugged into slot B02) in order to diagnose faults.
It was replaced by the KE11-B Extended Arithmetic Element, a program compatible re-implementation on a single hex card.
Contents
Registers
The device has a number of registers, which can be configured to sequential locations in the I/O page; most are words, but there are two byte registers. It is normally configured to addresses 777300-777316; a second KE11-A, if present, is configured to addresses 777320-777336. The operation to be performed is selected by the register which data is written to. Registers which hold results are readable, but many of the operation selection registers are write-only. In the register table (below), those which are read/write are shown in normal font; those which are read-only are in italics; those which are write-only in bold (these return '0' when read).
| Register | Abbreviation | Address | Size |
|---|---|---|---|
| Divide | DIV | 777300 | W |
| Accumulator | AC | 777302 | W |
| Multiplier-Quotient | MQ | 777304 | W |
| Multiply | MUL | 777306 | W |
| Step Counter$ | SC | 777310 | B |
| Status Register% | SR | 777311 | B |
| Normalize | NOR | 777312 | W |
| Logical Shift | LSH | 777314 | W |
| Arithmetic Shift | ASH | 777316 | W |
$ The SC is read-only as an individual byte, but can written as a word together with the SR.
% The SR is read-only as an individual byte, but can written as a word together with the SC.
Division takes as one operand a 32-bit value held in the AC (high order) and MQ (low order); a remainder is left in the AC. Multiplication produces a 32-bit product in the AC (high order) and MQ (low order). Both arithmetic and logical shifts operate on a 32-bit value held in the AC (high order) and MQ (low order).
Status Register (SR)
| Overflow XOR Negative | Negative | AC = -1 | AC = 0 | MQ = 0 | AC = MQ = 0 | AC = MQ15 | Carry |
| 07 | 06 | 05 | 04 | 03 | 02 | 01 | 00 |
Hardware
The KE11-A consists of 3 quad boards:
- M7210 Data Control
- M7211 Register Control
- M827 Clock and States
and a pair of M234 Register dual-height boards, plugged into the quad custom backplane.
Board locations
These are the board locations for the KE11-A (as seen from the board side of the backplane):
| Connector | ||||||
|---|---|---|---|---|---|---|
| Slot | A | B | C | D | E | F |
| 1 | UNIBUS In | M7210 Data Control | ||||
| 2 | Unused | KM11-A | M234 Register (low byte) |
M234 Register (high byte) | ||
| 3 | G772 Power |
Reserved | M7211 Register Control | |||
| 4 | UNIBUS Out | M827 Clock & States | ||||
See also
Further reading
- KE11-A User's Guide (EK-KE11A-OP ?)
- KE11-A Technical Manual (EK-KE11A-TM ?)
External links
- pdp11/20-15-r20 processor handbook - the operation of the KE11-A is covered in Chapter 8 (pp. 155-162 of the PDF)
- KE11-A extended arithmetic element (DEC-11-HKEA-D)
- KE11-A extended arithmetic element engineering drawings