I Transfer in Channel 1000
1
CCWAddress I : o 4 8 31 32 63
The next CCW is fetched from the location in abso­
lute main storage designated by the data-address
field of the CCW specifying transfer 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 command. The
purpose of the transfer-in-channel command is to
provide chaining between CCWs not located in adja­
cent doubleword locations in an ascending 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 portion of the CSW with the
program-check indication to be stored during the
execution of START I/O or ST ART I/O FAST RELEASE being executed as START I/O. When
ST ART I/O FAST RELEASE is executed inde­
pendently of the device, the error causes an I/O interruption condition to be generated.
To address a CCW on integral boundaries for
doublewords, a CCW specifying transfer in channel
must contain zeros in bit positions 29-31. Further­
more, a CCW specifying a transfer in channel may
not be fetched from a location designated by an
immediately preceding 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. When the
transfer-in-channel command designates a CCW in a
location protected against fetching, the protection­
check condition is generated. Detection of these
errors during data chaining causes the operation at
the I/O device to be terminated and an interruption
condition to be generated, whereas during command
chaining it causes only an interruption condition to
be generated.
The contents of the second half of the CCW, bit
positions 32-63, are ignored. Similarly, the contents
of bit positions 0-3 of the CCW are ignored.
Command Retry Some channels have the capability to perform com­
mand retry, a channel and control-unit procedure
that causes a command to be retried without requir­
ing an I/O interruption. This retry is initiated by the
control unit presenting either of two status-bit com­
binations by means of a special I/O interface se­
quence. When immediate retry can be performed, it
presents a channel-end, unit-check, and status­
modifier status bit combination, together with device
end. When immediate retry cannot be performed,
the presentation of device end is delayed until the
control unit is prepared. When the channel is not
capable of performing command retry, or when any
status bit other than device end accompanies the
requested command retry initiation, the retry is sup­
pressed, and an interruption condition is generated.
The CSW will contain the channel-end, unit-check,
and status-modifier status indications, along with
any other appropriate status.
During command retry, the channel action is simi­
lar to that taken when command chaining. Thus,
when command retry is performed, a START I/O initiating an immediate operation for which com­
mand chaining is not indicated in the CCW causes a
condition code 0, rather than condition code 1, to be
set. The subsequent termination of the command
execution causes an interruption condition to be
created.
Programming Notes
The following possible results of a command retry
must be anticipated by the program:
1. A CCW containing a PCI may, if reiried be­
cause of command retry, cause multiple PCI interruptions to occur.
2. A channel program consisting of a single, un­
chained CCW specifying an immediate com­
mand may cause a condition code 0 rather than
1 to be set. This setting of the condition code
occurs if the control unit signals command re­
try at the time initial status is presented to the
command. The channel program then causes a
later interruption upon completion of the oper­
ation.
3. If a CCW used in an operation is changed be­
fore that operation has been successfully com­
pleted, the results are unpredictable.
4. A CSW stored after the initiation of a retry but
prior to the presentation of device end, as
when a PCI interruption is taken, contains the
address of the command to be retried + 8.
5. If a HALT I/O, HALT DEVICE, or CLEAR I/O instruction is issued between the initiation
of a retry but prior to the presentation of de-
Input/Output Operations 221
vice end, the CSW contains the address of the
command to be retried + 8.
6. On a multiplexer channel, chained CCWs
which might ordinarily have been executed in a
burst, may, upon the occurrence of command
retry, cause multiplexing to occur, with the re­
sult that the channel becomes unexpectedly
available.
Conclusion of Input/Output Operations When the operation or sequence of operations initi­
ated by START I/O or START I/O FAST RE­ LEASE is ended, the channel and the device gener­
ate status conditions. These conditions can be brought to the attention of the program by means of
an I/O interruption, by TEST I/O or CLEAR I/O, or, in certain cases, by START I/O or START I/O FAST RELEASE. The status conditions, as well as
an address and a count indicating the extent of the
operation sequence, are presented to the program in
the form of a channel status word (CSW). Types (,/ Conclusion
Normally an I/O operation at the sub channel lasts
until the device signals channel end. The channel­
end condition can be signaled during the sequence
initiating the operation, or later. When the channel
detects equipment malfunctioning or an I/O system
reset is performed, the channel disconnects the de­
vice without receiving channel end. The program
can force a device to be disconnected prematurely
by issuing CLEAR I/O, HALT I/O, or HALT DE­
VICE.
Conclusion at Operation Initiation
After the addressed channel and sub channel have
been verified to be in a state where START I/O or START I/O FAST RELEASE can be executed, 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 device. This testing occurs both during the execu­
tion of START I/O, either during or subsequent to
the execution of START I/O FAST RELEASE, and
during command chaining.
A data-transfer operation is initiated at the sub­
channel and device only when no programming or equipment errors are detected by the channel and
when the device responds with zero status duting the
initiation sequence. When the channel detects or the
device signals any unusual condition during the initi­
ation of an operation, the command is said to be
rejected.
222 System/370 Principles of Operation Rejection of the command during the execution
of START I/O or START I/O FAST RELEASE is
indicated by the setting of the condition code in the PSW. Unless the device is not operational, the con­
ditions that precluded the initiation are detailed by
the portion of the CSW stored by START I/O or ST ART I/O FAST RELEASE. The device is not
started, no interruption conditions are generated,
and the subchannel is available subsequent to the
initiation sequence. The device is immediately avail­
able for the initiation of another operation, provided
the command was not rejected because of the busy
or not-operational condition.
When an unusual condition causes a command to
be rejected during initiation of an I/O operation by
command chaining, an interruption conditioIl: is gen­
erated, and the subchannel is not available until the
condition is cleared. The conditions are indicated to
the program by means of the corresponding status
bits in the CSW. The not-operational condition,
which during the execution of ST ART I/O and
sometimes during the execution of ST ART I/O FAST RELEASE causes condition code 3 to be set,
is indicated by means of the interface-control-check
bit. The new operation at the I/O device is not start­
ed.
When START I/O FAST RELEASE is executed
by a channel independently of the addressed device,
tests on most program-specified information, on
control-unit and device availability, on control-unit
and device status, and on most error conditions are
performed subsequent to the execution of START I/O FAST RELEASE. Some conditions which
would have caused a condition code 1 or 3 to be set
had the instruction been START I/O instead cause
an interruption condition to be generated. The CSW, when stored, indicates that the interruption condi­
tion is a deferred condition code 1 or 3.
Immediate Operations Instead of accepting or rejecting a command, the I/O device can signal the channel-end condition
immediately upon receipt of the command code. An I/O operation causing the channel-end condition to
be signaled during the initiation sequence is called an "immediate operation." When the first CCW designated by the CAW
during a START I/O or START I/O FAST RE­ LEASE executed as a START I/O initiates an im­
mediate operation with command chaining not indi­
cated and command retry not occurring, no interrup­
tion condition is generated. If no command chaining
occurs, the channel-end condition is brought to the
attention of the program by causing ST ART I/O or ST ART I/O FAST RELEASE to store the CSW
Previous Page Next Page