A or I W Channel 2+
A Subchannel
2$
A N CU/ Device ¢ A Available
I Interruption pending = Interruption pending for a device other than the one
addressed I# = Interruption pending for the addressed device
W Working N Not operational * CSW stored ¢ When a nonimmediate I/O operation has been initiated and
the channel is proceeding with its execution, when an
immediate operation has been initiated and command
chaining takes place, or when command retry is signaled
in response to the first command and is honored by the
channel, condition code 0 is set. When an immediate operation has been initiated, and no
command chaining or command retry is taking place, or
the device is not ready, or an error has been detected
by the control unit or device, for the SIO function
condition code 1 is set, and the CSW is stored. Under
the same circumstances, for the SIOF function, condition
code 0 is set, and subsequently an I/O-interruption condition is generated. The CSW stored when the 1/0- interruption condition is cleared contains the same
information as the CSW stored during the SIO function
under the same conditions, plus the deferred-condition­
code-l indication. The SIOF function may cause condition code 0 to be set, in
which case the other condition code shown will be specified
as a deferred condition code.
& When the subchannel is interruption-pending because an I/O operation is concluded at the subchannel, condition code 2
is set. When the subchannel is interruption-pending for any
other reason, condition code 1 is set, and the status
portion of the CSW is stored with a one included in the
busy-bit position of the unit-status field.
$ The AIX state only occurs on the multiplexer channel.
+ With start-I/O-fast queuing, the channel-working state (WXX)
is normally treated the same as the available channel state for the purpose of performing the SIOF function and the
condition-code setting depends on the state of the subchan­
nel. When the working state of the channel precludes the
acceptance of the SIOF function, however, condition code 2
is set. When the block-multiplexing-control bit is zero, it
causes the SIO function to be performed instead of the SIOF function, so condition code 2 is set. When the SIOF function causes condition code 0 to be set and
the subchannel is provided with start-I/O-fast queuing, the I/O operation may remain pending at the subchannel instead
of being terminated.
Note: Underscored condition codes pertain to situations that can
occur only on the multiplexer channel.
Condition Codes Set by START I/O and START I/O FAST RELEASE
Programming Notes
1. The instruction START I/O FAST
RELEASE has the advantage over
START I/O that the CPU can be
released after the CAW is fetched, rather than after completion of a
possibly lengthy device-selection
procedure. Thus, the CPU is freed
for other activity earlier. A
disadvantage, however, is that if a
deferred condition code is
presented, the resultant CPU execution time may be greater than Chapter 13. Input/Output Operations 13-31
that required in executing START I/O. 2. When the channel detects a program­
ming error during execution of the 510 function, when the addressed
device contains an interruption
condition, and when the channel and
subchannel are available, the
instruction mayor may not clear
the interruption condition, depend­
ing on the type of error and the
system model. If the instruction
has caused the device to be inter­
rogated, as indicated by the
presence of the busy bit in the CSW, the interruption condition has
been cleared, and the CSW contains
program or protection check, as
well as the status from the device.
3. Two major differences exist between
the SIO and SIOF functions:
a. Unchained immediate commands on
certain channels (that is,
those which execute SIOF inde­
pendent of the device) result
in a condition code 0 for the SIOF function, whereas condi­
tion code 1 is set for the SIO function. See also programming
note 2 in the section "Command Retry" of this chapter.
b. Condition code 0 is set by
these certain channels for the SIOF function, even though the
addressed device is not avail­
able or the command is rejected
by the device. The device
information will be supplied by
means of an interruption condi­
tion.
4. Subsequent to an I/O interruption
signaling the conclusion of an I/O operat i on at t;,e subchannel but not
at the de\ice (as, for example,
when the device status contains
channel end without device end),
the subchannel is available while
the device remains working. With
start-I/O-fast queuing, START I/O FAST RELEASE addressed to the
device in this case causes the new I/O operation to be made pending at
the subchannel. The new I/O opera­
tion remains pending at the
subchannel until the device signals
the conclusion of the previous I/O operation by presenting status
containing the device-end indi­
cation. When this occurs, the
device end, either alone or with
control-unit end, may be interpret­
ed by the channel as a no-Ionger­
busy indication. If the status is
interpreted as a no-longer-busy
indication, the channel attempts to
initiate the new pending I/O opera­
tion at the device. In this case,
the device-end status or device-end
and control-unit-end status for the
13-32 System/370 Principles of Operation
previous operation is discarded by
the channel and is not made avail­
able to the program. Otherwise,
the device-end indication is inter­
preted by the channel as
unsolicited status, and an inter­
ruption condition is recognized. STORE CHANNEL 10 STIOC 02(B 2 ) [S]
'B203'
o 16 20 31
Information identifying the designated
channel is stored in the four-byte field
at real storage location 168.
Bits 16-23 of the second-operand address
identify the channel to which the
instruction applies. Bit positions
24-31 of the address are ignored.
The format of the information stored at
locations 168-171 is: ITypelChannel Modell Max rOEL Lengthl
o 4 16 31
Bits 0-3 specify the channel type. When a channel can operate as more than one
type, the code stored identifies the
channel type at the time the instruction
is executed. The following codes are
assigned:
Bits .9.. 1 2* Channel 0 0 0 0 Selector 0 0 0 1 Byte multiplexer 0 0 1 0 Block multiplexer * When STORE CHANNEL 10 is
executed, the setting of bit 2 is
unpredictable when bit 3 of the
channel type code is stored as
zero and bit 0 of control regis­
ter 0 is (1) currently set to
zero or (2) was set to zero when
a previous START I/O or START I/O FAST RELEASE was executed and at
least one subchannel is currently
in the working or interruption­
pending state because of execut­
ing the function of that previous
instruction.
Bits 4-15 identify the channel model.
When the channel model is implied by the
channel type and the CPU model, zeros
are stored in the field.
Bits 16-31 contain the length in bytes
of the longest I/O extended logout that
can be stored. If the channel never
Previous Page Next Page