vided by an interruption during execution of the op­
eration.
Program-controlled interruption provides a means
of alerting the program of the progress of chaining
during an I/O operation. It permits programmed dy­
namic main-storage allocation. Commands The following table lists the command codes for the
six commands and indicates which Hags are defined
for each command. The Hags are ignored for all com­
mands for which they are not defined.
Write
Read
NAME
Read backward Control Sense
Transfer in channel NOTES FLAG CD CC SLI PCI CD CC SLI SKIP PCI CD CC SLI SKIP PCI CD CC SLI PCI CD CC SLI SKIP PCI CD Chain data CC Chain command SLI Suppress incorrect length SKIP Skip PCI Program-controlled interruption CODE MMMMMMOI MMMMMM10 MMMM 1100 MMMMMMII
MMMM 0100 x x x x 1000 All Hags have individual significance, except that
the cc and SLI Hags are ignored when the CD Hag is on.
The SLI Hag is ignored on immediate operations, in
which case the incorrect-length indication is sup­
pressed regardless of the setting of the Hag. The PCI Hag is ignored during initial program loading.
Write
A write operation is initiated at the I/O device, and the
subchannel is set up to transfer data from main storage
to the I/O device. Data in storage are fetched in an
ascending order of addresses, starting with the ad­
dress specified in the ccw.
A ccw used in a write operation is inspected for the CD, CC, SLI, and the PCI Hags. The setting of the skip
Hag is ignored. Bit positions 0-5 of the ccw contain
modifier bits.
Programming Note On writing magnetic tape, block-length is not defined,
and the amount of data written is controlled only by
the count in the ccw. Every operation terminated
under count control causes the incorrect-length indica­
tion, unless the indication is suppressed by the SLI Hag.
Read
A read operation is initiated at the I/O device, and the
subchannel is set up to transfer data from the device
to main storage. For devices such as magnetic tape
units, disk storage, and card equipment, the bytes of
data within a block are provided in the same sequence
as written by means of a write command. Data in
storage are placed in an ascending order of addresses,
starting with the address specified in the ccw.
A ccw used in a read operation is inspected for
every ·one of the five Hags -CD, CC, SLI, skip, and PCI. Bit positions 0-5 of the ccw contain modifier bits.
Read Backward
A read-backward operation is initiated at the I/O de­
vice, and the subchannel is set up to transfer data
from the device to main storage. On magnetic tape
units, read backward causes reading to be performed
with the tape moving backwards. The bytes of data
within a block are sent to the channel in a sequence
opposite to that on writing. The channel places the
bytes in storage in a descending order of address, start­
ing with the address specified in the ccw. The bits
within an eight-bit byte are in the same order as sent
to the device on writing.
A ccw used in a read-backward operation is in­
spected for everyone of the five Hags - CD, cc, SLI, skip, and PCI. Bit positions 0-3 of the ccw contain
modifier bits.
Programming Note
When data chaining is used during a read-backward
operation, the channel places data in storage in a de­
scending sequence but fetches ccw's in an ascending
sequence. Consequently, if a magnetic tape is to be
written so that it can be read in either the forward or
backward direction as a self-describing record, the
ccw must be written at both the beginning and the
end of the physical record. If more than one ccw is to
be used, the order of the ccw's must be reversed at the
end of the record since the storage areas associated
with the ccw's are used in reverse sequence. Further­
more, a ccw used for reading backward must describe
the associated storage area by specifying the highest
address of the area, whereas it normally cont ,IS the
lowest address.
Control
A control operation is initiated at the I/O device, and
the subchannel is set up to transfer data from main
storage to the device. The device interprets the data
as control information. The control information, if
any, is fetched from storage in an ascending order of
addresses, starting with the address specified in the
ccw. A control command is used to initiate at the I/O device an operation not involving transfer of data -
such as backspacing or rewinding magnetic tape or
positioning a disk access mechanism.
For most control functions, the entire operation is
specified by the modifier bits in the command code, Input/Output Operations 101
and the function is performed over the I/O interface
as an immediate operation (see "Immediate Opera­ tions" ). If the command code does not specify the
entire control function, the data-address field of the
ccw designates the required additional information for
the operation. This control information may include
an order code further specifying the operation to be
performed or an address, such as the disk address for
the seek function, and is transferred in response to re­
quests by the device.
A control command code containing zeros for the
six modifier bits is defined as no operation. The no­
operation order causes the addressed device to respond
with channel end and device end without causing any
action at the device. The order can be executed as an
immediate operation, or the device can delay the
status until after the initiation sequence is completed. Other operations that can be initiated by means of the
control command depend on the type of I/O device.
These operations and their codes are specified in the SRL publication for the device.
A ccw used in a control operation is inspected for
the CD, CC, SLI, and the PCI Rags. The setting of the
skip Rag is ignored. Bit positions 0-5 of the ccw con­
tain modiB.er bits.
Programming Note Since a count of zero is invalid, the program cannot
use the ccw count field to specify that no data be trans­
ferred to the I/O device. Any operation terminated
before data have been transferred causes the incorrcct­
length indication, provided the operation is not im­
mediate and has not been rejected during the initia­
tion sequence. The incorrect-length indication is sup­
pressed when the SLI Rag is on.
Sense
A sense operation is initiated at the I/O device, and
the subchannel is set up to transfer data from the de­
vice to main storage. The data are placed in storage
in an ascending order of addresses, starting with the
address specified in the ccw.
Data transferred during a sense operation provide
information concerning both unusual conditions de­
tected in the last operation and the status of the de­
vice. The status information provided by the sense
command is more detailed than that supplied by the
unit-status byte and may describe reasons for the unit­
check indication. It may also indicate, for example, if
the device is in the not-ready state, if the tape unit is
in the file-protected state, or if magnetic tape is posi­
tioned beyond the end-of-tape mark.
For most devices, the first six bits of the sense data
describe conditions detected during the last opera-
102
tion. These bits are common to all devices having this
type of information and are designated as follows:
BIT DESIGNATION
o Command reject
1 Intervention required
2 Bus-out check
3 Equipment check
4 Data check
5 Overrun The following is the meaning of the first six bits:
Command Reject: The device has detected a gramming error. A command has been received which
the device is not designed to execute, such as read is­
sued to a printer, or which the device cannot execute
bccause of its present state, such as backspace issued
to a tape unit with the tape at load point.
Intervention Required: The last operation could not
be executed because of a condition requiring some
type of intervention at the device. This bit indicates
conditions such as an empty hopper in a card punch
or the printer being out of paper. It is also turned on
when the addressed device is in the not-ready state, is
in test mode, or is not provided on the control unit.
Bus-Out Check: The device or the control unit has
received a data byte or a command code with an in­
valid parity over the I/O interface. During writing,
bus-out check indicates that incorrect data have been
recorded at the device, but the condition does not
cause the operation to be terminated prematurely.
Errors on command codes and control information
cause the operation to be immediately terminated.
Equipment Check: During the last operation, the
device or the control unit has detected equipment mal­
functioning, such as an invalid card hole count or
printer buffer parity error.
Data Check: The device or the control unit has de­
tected a data error other than those included in bus­
out check. Data check identifies errors associated with
thc recording medium and includes conditions such as
reading an invalid card code or detecting invalid par­
it yon data recorded on magnetic tape. On an input operation, data check indicates that
incorrect data may have been placed in main storage.
The control unit forces correct parity on data sent to
the channel. On writing, this condition indicates that
incorrect data may have been recorded at the device.
Data errors on reading and writing do not cause the
operation to be terminated prematurely.
Overrun: The channel has failed to respond on time
to a request for service from the device. Overrun can
occur when data are transferred to or from a non­
buffered control unit operating with a synchronous
medium, and the total activity initiated by the program
exceeds the capability of the channel. When the chan-
Previous Page Next Page