The control memory consists of 32 bit commands. Each command is divided into six fields. A command layout diagram with the name of each field and position (bit number) is shown in the table below, followed by a definition of each command field in Command Field Descriptions.
BIT # |
31 28 |
27 25 |
24 22 |
21 20 |
19 17 |
16 0 |
FIELD NAME |
I/O Groups Control |
Reserved (0) |
Operation Code |
Register |
Condition |
Address |
Command Layout Table
COMMAND FIELD |
DESCRIPTION |
I/O Groups Control |
These bits control the direction of the I/O bits 31-28 pin groups as described in I/O Groups Control Field Table. |
Reserved, bits 27-25 |
Reserved for future versions. Must be set to 0. |
Operation Code, bits 24-22 |
These bits provide the command code as described in Operation Code Field Table. |
Register, bits 21 and 20 |
Specifies the internal register used with either the related command or the external event line number (0-3) conditions (see Sequencer Commands), as described in Register Field Table |
Condition, bits 19-17 |
This field is the condition code for the related commands and the tree address MSBs for the JUMP FAR command (see Sequencer Commands). Condition codes are described in Command XXX Field. |
Address, bits 16-0 |
This field contains the address for branch commands: JUMP, LOOP, GOTO and CALL. When the Operations Code is set to the SET command, this field (bits 0-15) is used as data to be assigned to a register. |
Command Field Description
I/O pins |
Control word bit |
Direction for bit = 1 |
Direction for bit = 0 |
0-7 |
28 |
IN |
OUT |
8-15 |
29 |
IN |
OUT |
16-23 |
30 |
IN |
OUT |
23-32 |
31 |
IN |
OUT |
I/O Groups Control Field Table
Mnemonic |
Additional fields |
Value |
Bit 24 |
Bit 23 |
Bit 22 |
NOP |
None |
0 |
0 |
0 |
0 |
JUMP FAR |
Destination = Condition & Address |
1 |
0 |
0 |
1 |
JUMP NEAR |
Condition & Address |
2 |
0 |
1 |
0 |
LOOP |
Reg, Address & Condition |
3 |
0 |
1 |
1 |
SET |
Reg & Address |
4 |
1 |
0 |
0 |
CALL |
Condition & Address* |
5 |
1 |
0 |
1 |
RETURN |
Condition |
6 |
1 |
1 |
0 |
PAUSE |
Condition |
7 |
1 |
1 |
1 |
HALT |
Condition = 7 |
7 |
1 |
1 |
1 |
* Address in the CALL is divided by 8 (see the table Sequencer Commands).
Register |
External Event Line # B* |
Bit 21 |
Bit 20 |
A |
0 |
0 |
0 |
B |
1 |
0 |
1 |
C |
2 |
1 |
0 |
D |
3 |
1 |
1 |
* See Command XXX Field
Condition |
Bit17-19 |
Bit19 |
Bit18 |
Bit17 |
None |
0 |
0 |
0 |
0 |
External event lines value > Register value |
1 |
0 |
0 |
1 |
External event lines value < Register value |
2 |
0 |
1 |
0 |
External event lines value = Register value |
3 |
0 |
1 |
1 |
External event lines value <> Register value |
4 |
1 |
0 |
0 |
External event line # B is Low* |
5 |
1 |
0 |
1 |
External event line # B is High* |
6 |
1 |
1 |
0 |
HALT when combined with PAUSE command |
7 |
1 |
1 |
1 |
* B is determined by the Register field