Interprocessor Communicate (IPC)/OP=8A

Format

OP AF BF A Syllable

OP = 8A

AF Unused and reserved. Indirect field length allowed. A literal flag will cause an Invalid Instruction (IEX = 21) fault. An implicit length of 16 is assumed.
BF is the IPC variant. May be specified as indirect.

BF Function
00 Stop This Processor
01 Start Selected Processors
02 Interrupt Selected Processors
03 Interrupt Idle Processors

All other BF values are reserved; use of any other BF value will cause an Invalid Instruction (IEX = 26) fault.

The A Syllable is the address of a Processor Mask field. Address may be indexed, indirect or extended. The final address controller must be UN or cause an Invalid Instruction (IEX = 07) fault.

Function

The Interprocessor Communicate instruction provides a mechanism for the MCP to control adding and deleting processors while the systme is running (BF = 00 and 01). It is also used to interrupt processors in EXECUTING mode (BF = 02) or IDLE mode (BF = 03).

Each digit of the Processor Mask pointeed to by the A Syllable corresponds to a particular central processor; the first digit refers to processor #1 and the last digit refers to processor #N. A non zero value in a processor mask selects the respective processor for the function specified by the BF field of this instruction.

This instruction may only be executed in KERNEL mode and with the Privileged Enable toggle set or the processor wlil halt.

BF = 00 Stop This Processor

The Processor Mask specified by the A Syllable is not used by this variant since it is addressed to the current processor only. This command forces the processor to relinquish the KERNEL MODE ACCESS LOCK and go into STOPPED mode with no further action performed.

BF = 01 Start Selected Processors

The Processor Mask specified by the A Syllable is read from memory. The system specific Start Yourself code is sent to all processors indicated by the mask. This command forces the processors specified to perform an Interrupt Procedure. See Compatibility Notes A.63 for the additional states loaded within a processor when it is started.

BF = 02 Interrupt Selected Processors

The Processor Mask specified by the A Syllable is read from memory. The system specific Interrupt Yourself code is sent to all processors indicated by the mask. If the specified processor is in the EXECUTING mode or IDLE mode, this forces it to perform an Interrupt Procedure. Any processor specified that is in any other mode (KERNEL, STOPPED, DEAD or INTERRUPTING) is not sensitive to this command.

BF = 03 Interrupt Idle Processor

The Processor Mask specified by the A Syllable is not used for this operation. This command is used to cause any and all processors of a multiprocessor system which are in IDLE mode only to perform an Interrupt Procedure. Any processor being in any other mode shall not be sensitive to this command.

Comparison Flags

The Comparison Flags are not affected by this instruction.

Overlap

Field overlap is not applicable to this instruction.

instructions/ipc.txt · Last modified: 2008/11/26 14:08 by scott
 
Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Noncommercial-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki