nel fails to accept a byte on an input operation, the
following data in main storage are shifted to fill the
gap. On an output operation, overrun indicates that
data recorded at the device may be invalid. The over­
run bit is also turned on when the device receives the
new command too late during command chaining.
All information significant to the use of the device
normally is provided in the first two bytes. Any bit
positions following those used for programming in­
formation contain diagnostic information, which may
extend to as many bytes as needed. The amount and
the meaning of the status information are peculiar to
the type of I/O device and are specified in the SRL publication for the device.
The sense information pertaining to the last I/O op­
eration is reset by the next command, other than
sense, addressed to the control unit. The sense com­
mand cannot cause the command-reject, intervention­
required, data-check, or overrun bits to be turned on.
If the control unit detects an equipment error or in­
valid parity of the sense command code, the equip­
ment-check or bus-out-check bits are turned on, and
unit check is sent with the channel end.
A ccw used in a sense operation is inspected for
everyone of the five flags -CD, CC, SLI, skip, and PCI. Bit positions 0-3 of the ccw contain modifier bits.
Transfer In Channel
The next ccw is fetched from the location designated
by the data-address field of the ccw specifying trans-
fer in channel. The transfer-in-channel command does
not initiate any I/O operation at the channel, and the I/O device is not signaled of the execution of the com­
mand. The purpose of the transfer in channel com­
mand is to provide chaining between ccw's not lo­
cated in adjacent double-word locations in an ascend­
ing order of addresses. The command can occur in
both data and command chaining.
The first ccw designated by the CAW may not specify
transfer in channel. When this restriction is violated,
no I/O operation is initiated, and the program-check
condition is generated. The error causes the status por­
tion of the csw with the program-check indication to
be stored during the execution of START I/O. To address a ccw on integral boundaries for double
words, a ccw specifying transfer in channel must con­
tain zeros in bit positions 29-31. Furthermore, a ccw
specifying a transfer in channel may not be fetched
from a location designated by an immediately preced­
ing transfer in channel. When either of these errors is
detected or when an invalid address is specified in
transfer in channel, the program-check condition is
generated. Detection of these errors during data chain­
ing causes the operation at the I/O device to be ter­
minated, whereas during command chaining they
cause an interruption condition to be generated.
The contents of the second half of the ccw, bit po­
sitions 32-63, are ignored. Similarly, the contents of bit
positions 0-3 of the ccw are ignored.
Input/Output Operations 103
Termination of Input/Output Operations
When the operation or sequence of operations initiated
by START I/O is terminated, the channel and the device
generate status conditions. These conditions can be
brought to the attention of the program by the I/O interruption mechanism, by TEST I/O, or, in certain
cases, by START I/O. The status conditions, as well as
an address and a count indicating the extent of the op­
eration sequence, are presented to the program in the
form of a csw.
Types of Termination
Normally an I/O operation at the subchannellasts until
the device signals channel end. The channel-end con­
dition can be signaled during the sequence initiating
the operation, or later. When the channel detects
equipment malfunctioning or a system reset is per­
formed, the channel disconnects the device without
receiving channel end. The program can force a de­
vice on the selector channel to be disconnected pre­
maturely by issuing HALT I/O. Termination at Operation Initiation
After the addressed channel and subchannel have been
verified to be in a state where START I/O can be exe­
cuted, certain tests are performed on the validity of
the information specified by the program and on the
availability of the addressed control unit and I/O de­
vice. This testing occurs both during the execution of START I/O and during command chaining.
A data-transfer operation is initiated at the subchan­
nel and device only when no programming or equip­
ment errors are detected by the channel and when the
device responds with zero status during the initiation
sequence. When the channel detects or the device sig­
nals any unusual condition during the initiation of an
operation, but channel end is off, the command is said
to be rejected.
Rejection of the command during the execution of START I/O is indicated by the setting of the condition
code in the psw. Unless the device is not operational,
the conditions that precluded the initiation are de­
tailed by the portion of the csw stored by START I/O. The device is not started, no interruption conditions
are generated, and the subchannel is not tied up be­
yond the initiation sequence. The device is immedi­
ately available for the initiation of another operation,
104
provided the command was not rejected because of
the busy or non-operational condition.
When an unusual condition causes a command to be
rejected during initiation of an I/O operation by com­
mand chaining, an interruption condition is generated,
and the subchannel is not available until the condition
is cleared. The not-operational state on command
chaining is indicated by means of interface control
check; the other conditions are identified by the cor­
responding status bits in the associated csw. The new
operation at the I/O device is not started.
Immediate Operations
Instcad of accepting or rejecting a command, the I/O device can signal the channel-end condition immedi­
atcly upon receipt of the command code. An I/O op­
eration causing the channel-end condition to be sig­
nalcd during the initiation sequence is called an "immediate operation." When the first ccw designated by the CAW initiates
an immediate operation, no interruption condition is
generated. If no command chaining occurs, the chan­
nel-end condition is brought to the attention of the
program by causing START I/O to store the csw status
portion, and the subchannel is immediately made avail­
able to the program. The I/O operation, however, is
initiated, and, if channel-end is not accompanied by
device end, the devicc remains busy. Device end, when
subsequently provided by the device, causes an inter­
ruption condition to be generated.
When command chaining is specified after an im­
mediate operation and no unusual conditions have
been detected during the execution, START I/O does not
cause storing of csw status. The subsequent commands
in the chain are handled normally, and the channel-end
condition for the last operation generates an inter­
ruption condition even if the device provides the sig­
nal immediately upon receipt of the command code.
Whenever immediate completion of an I/O oper­
ation is signaled, no data have been transferred to or
from the device. The data address in the ccw is not
checked for validity, except that it may not exceed
the addressing capacity of the model. Since a count of zero is not valid, any ccw specifying
an immediate operation must contain a nonzero count.
When an immediate operation is executed, however,
incorrect length is not indicated to the program, and
command chaining is not suppressed.
Previous Page Next Page