condition, however, is not made available to the pro­
gram when a chain of commands is prematurely ter­
minated because of an unusual condition indicated
with control unit end or device end. The channel-end
condition is not generated when programming or
equipment errors are detected during initiation of the
operation.
The instant within an I/O operation when channel
end is generated depends on the operation and the
type of device. For operations such as writing on mag­
netic tape, the channel-end condition occurs when the
block has been written. On devices that verify the
writing, channel end mayor may not be delayed until
verification is performed, depending on the device.
When magnetic tape is being read, the channel-end
condition occurs when the gap on tape reaches the
read-write head. On devices equipped with buffers,
such as a line printer, the channel-end condition oc­
curs upon completion of data transfer between the
channel and the buffer. During control operations,
channel end is generated when the control information
has been transferred to the devices, although for short
operations the condition may be delayed until com­
pletion of the operation. Operations that do not cause
any data to be transferred can provide the channel­
end condition during the initiation sequence.
A channel-end condition pending in the control unit
causes the control unit to appear busy for initiation of
new operations. Unless the operation has been per­
formed on the selector channel and has been termi­
nated by HALT I/O, channel end causes the subchannel
to be in the interruption-pending state.
Device End
Device end is caused by the completion of an I/O op­
eration at the device or, on some devices, by manually
changing the device from the not-ready to the ready
state. The condition indicates that the I/O device has
become available for use for another operation.
Each I/O operation causes a device-end condition,
and there is only one device end to an operation.
When command chaining takes place, only the device
end of the last operation of the chain is made avail­
able to the program. The device-end condition is not
generated when any programming or equipment er­
rors are detected during initiation of the operation.
The device-end condition associated with an I/O operation is generated either simultaneously with the
channel-end condition or later. On data transfer op­
erations on devices such as magnetic tape units, the
device terminates the operation at the time channel
end is generated, and both device end and channel
end occur together. On buffered devices, such as a
line printer, the device-end condition occurs upon
completion of the mechanical operation. For control
operations, device end is generated at the completion
of the operation at the device. The operation may be
completed at the time channel end is generated or
later.
When command chaining in the current ccw is spe­
cified, receipt of the device-end signal, in the absence
of any unusual conditions, causes the channel to ini­
tiate a new I/O operation.
Unit Check Unit check is caused by any programming or equip­
ment errors detected by the I/O device or control unit.
The errors responsible for the unit check are detailed
by the information available to a sense command. The
unit-check bit provides a summary indication of the
errors identified by sense data.
The unit-check condition is generated only when
the error is detected during the execution of TEST I/O or a command. The device does not alert the program
of any equipment malfunction occurring at a time
when the device is not executing an operation and
does not have a pending interruption condition. Mal­
functioning detected at this time may cause the device
to become not ready; unit check in this case is sig­
naled to the program the next time the device is
selected.
If the device detects during the initiation sequence
that the command cannot be executed, unit check is
presented to the channel and appears in the csw with­
out channel end, control unit end, or device end. Such unit status indicates that no action has been taken at
the device in response to the command. If the con­
dition precluding proper execution of the operation
occurs after execution has been started, unit check is
accompanied by channel end, control unit end, or de­
vice end, depending on when the condition was de­
tected.
Termination of an operation with the unit-check
indication causes command chaining to be suppressed.
Unit Exception Unit exception is caused when the I/O device detects
a condition that usually does not occur. The condition
includes conditions such as recognition of a tape mark
and does not necessarily indicate an error. It has only
one meaning for any particular command and type of
device.
The unit-exception condition can be generated only
when the device is executing an I/O operation. If the
device detects during the initiation sequence that the
operation cannot be executed, unit exception is pre­
sented to the channel and appears in the csw without
Input/Output Operations III
channel end, control end, or device end. Such unit
status indicates that no action has bcen taken at the
device in response to the command. If the condition
precluding normal execution of the operation occurs
after the execution has been started, unit exception is
accompanied by channel end, control unit end, or de­
vice end, depending on when the condition was de­
tected.
Termination of an operation with the unit-exception
indication causes command chaining to be suppressed. Channel Status Conditions The following conditions are detected and indicated by
the channel. Except for the conditions caused by equip­
ment ma1functioning, they can occur only while the
subchannel is involved with the execution of an I/O operation.
Program-Controlled Interruption
The program-controlled-interruption condition is gen­
erated when the channel fetches a ccw with the pro­ gram-controlled-interruption (PCI) flag on. The inter­
ruption due to the PC! flag takes place as soon as
possible after fetching the ccw but may be delayed an
unpredictable amount of time because of masking of
the channel or other activity in the system.
Detection of the PCI condition does not affect the
progress of the I/O operation.
Incorrect Length
Incorrect length occurs when the number of bytes con­
tained in the storage areas assigned for the I/O oper­
ation is not equal to the number of bytes requested or
offered by the I/O device. Incorrect length is indicated
for one of the following reasons: l.Jong blocl( on Input: During a read, read-backward,
or sense operation, the device attempted to transfer
one or more bytes to storage after the assigned storage
areas were filled. The extra bytes have not been placed in main storage. The count in the csw is zero. IJong Block on Output: During a write or control
operation the device requested one or more bytes from
the channel after the assigned main-storage areas were
exhausted. The count in the csw is zero. Short Block on Input: The number of bytes trans­
ferred during a read, read hackward, or sense oper­
ation is insufficient to fill the storage areas assigned to
the operation. The count in the csw is not zero. Short Block on Output: The device terminated a
write or control operation before all information con­ tained in the assigned storage areas was transferred to
the device. The count in the csw is not zero.
The incorrect-length indication is suppressed when
112
the current ccw has the SLI flag and does not have the CD flag. The indication does not occur for immediate
operations and for operations rejected during the ini­
tiation sequence.
Presence of the incorrect-length condition suppresses
command chaining unless the SLI flag in the ccw is on
or unless the condition occurs in an immediate oper­
ation.
The following table lists the effect of the incorrect­
length condition for all combinations of the CD, CC, and SLI flags. It indicates for the two types of oper­
ations when the operation at the sub channel is termi­
nated (stop) and when the command chaining takes
place. The entry "incorrect length" (IL) means that
the indication is made available to the program; a
double hyphen (--) means that the indication is sup­
pressed. For all entries, the current operation is as­
sumed to have caused the incorrect-length condition.
FLAGS ACTION AND INDICATION
CD CC SLI HEGULAB OPEBA TION IMMEDIATE OPEHATION 0 0 0 Stop,IL Stop, -- 0 0 1 Stop, --Stop, -- 0 1 0 Stop,IL Chain command 0 1 1 Chain command Chain command
1 0 0 Stop,IL Stop, --
I 0 1 Stop,IL Stop, --
I 1 0 Stop,IL Stop, --
I 1 1 Stop,IL Stop, --
Program Check
Program check occurs when programming errors are
detected hy the channel. The condition can be due to
the following causes:
Invalid C CW Address Specification: The CAW or the
transfer-in-channel command does not designate the
ccw on integral boundaries for double words. The
three low-order bits of the ccw address are not zero.
Invalid CCW Address: The channel has attempted
to fetch a ccw from a location outside the main stor­
age of the particular installation. An invalid ccw ad­ dress can occur in the channel because the program
has specified an invalid address in the CAW or in the
transfer-in-channel command or because on chaining
the channel has stepped the address above the highest
available location.
Invalid Command Code: The command code in the
first ccw designated by the CAW or in a ccw fetched on
command chaining has four low-order zeros. The com­
mand code is not tested for validity during data chain­
ing.
Invalid Count: A ccw other than a ccw specifying
transfer in channel contains the value zero in bit po­ sitions 48-63.
Invalid Data Address: The channel has attempted
to transfer data to or from a location outside the main
storage of the particular installation. An invalid data
Previous Page Next Page