Memory Byte Address; Flags - Xerox Sigma 6 Reference Manual

Table of Contents

Advertisement

For example, assume that it is desired to present the same
card image twelve times to an unbuffered card punch. The
punch counts the number of times that a record is presented
to it and, when twelve rows have been punched, it causes
the lOP to sk ip the command it would be executing next.
Thus, a command list for punching two cards might look
I ike the following example.
Location
A
B
Command
Punch row for card 1, command chain
Transfer in Channel to A
Punch row for card 2, command chain
Transfer in Channel to B
Stop
The Transfer in Channel command a Iso can be used in con-
junction with data chaining. As one example, consider a
si tuation often encountered in data acquisition appl ications,
where data is transmitted in extremely long, continuous
streams. In this case, the data can be stored alternately in
two or more buffer storage areas so that computer processing
can be carried out on the data in one buffer whileadditional
data is being input into the other buffer. The command list
for such an application might look like the following example.
Location
A
Command
Read data, store in buffer 1, data chain
Store in buffer 2, data chain
Transfer in Channel to A
If the lOP encounters two successive Transfer in Channel
commands, this is considered an lOP control error, result-
ing in the lOP setting the lOP control error status bit and
issuing an "lOP halt" signal to the device controller. The
lOP then halts further servicing of this command list.
The Stop command doubleword is assumed to be in the fol-
lowing format:
Stop. The Stop command causes certain devices to stop,
generate a channel end condition, and also request an in-
terrupt at location X'5C' if bit 0 in the Stop command is a
1. An Ala instruction executed after the interrupt is ac-
knowledged results in a 1 in bit position 7 of register R, to
ind icate the reason for the interrupt. (Bit positions 32-39
of the command double~ord for Stop must be zero; bit posi-
tions 8-31 and 40-63 are ignored). The Stop command is
primarily used to terminate a command chain for an
unbuffered device, as illustrated in the example given for
Transfer in Channel.
MEMORY
am
ADDRESS
For all I/O commands (except Transfer in Channel and
Stop), bit positions 13-31 of the command doubleword
provide for a 19-bit core memory byte address, desig-
nating the memory location for the next byte of data.
For the Write, Read, and Control orders, this field (as
stored in an lOP register) is incremented by 1 as each
byte is transmitted to the I/o operation; for the Read
Backward order, the field is decremented by 1 as each
byte is transmitted.
FlAGS
For all I/o commands (except Transfer in Channel and
Stop) bit positions 32-39 of the command doubleword
provide the lOP with eight flags that specify how to
handle chaining, error, and interrupt situations. The
functions of these flags are:
Bit
Position
Function
32 (DC)
Data chain. If this flag is 1, data chaining is
called for when the current byte count is reduced
to
o.
The next command doub I eword is fetched
and loaded into the lOP register associated with
the device controller, but the new order code is
not passed out to the device controller; thus, the
operation called for by the previous order is con-
tinued. (Except for Transfer in Channel, the
new command doubleword is used only to supply
a new memory address, a new count, and new
flags.) If the data chain flag is 0, no further
data chaining is called for. Channel end is ini-
tiated either by the device running out of infor-
mation, or by the byte count being reduced to
O.
At channel end, the device may accept a
new SIO instruction, providing that a device
interrupt is not pending as a result of coding the
IZC (bit 33), ICE (bit 35), or IUE (bit 37) flags,
and no fault condition exists.
33 (IZC)
Interrupt at zero byte count. If th is flag is 1,
the lOP requests an interrupt at location X'5C'
when the byte count of th is command doub le-
word (as stored in the lOP register) is reduced
to
O.
An Ala instruction executed after the
interrupt is acknowledged results in a 1 in bit
position 10 of register R, to indicate the reason
for the interrupt.
34(CC)
Command chain. If this flag is 1, command
chaining is called for when channel end occurs.
If the previous operation did not terminate with
an "unusual end" condition, the next command
doubleword is fetched and loaded into the lOP
register associated with the device controller,
lOP Command Doublewords
91

Advertisement

Table of Contents
loading

Table of Contents