An input/output device ordinarily is
attached to one control unit and is
accessible from one channel. Switching
equipment is available to make some
devices accessible to two or more chan­
nels by switching devices between
control units and control units between
channels. The time required for switch­
ing occurs during device-selection time
and may be ignored. CONTROL UNITS
A control unit provides the logical
capabilities necessary to operate and
control an I/O device and adapts the
characteristics of each device to the
standard form of control provided by the
channel.
The control unit accepts control signals
from the channel, controls the timing of
data transfer, and provides indications
concerning the status of the device.
The I/O device attached to the control
unit may be designed to perform only
certain limited operations, or it may
perform many different operations. A
typical operation is moving the record­
ing medium and recording data. To
accomplish these functions, the device
needs detailed signal sequences peculiar
to the type of device. The control unit
decodes the commands received from the
channel, interprets them for the partic­
ular type of device, and provides the
signal sequence required for execution
of the operation.
A control unit may be housed separately,
or it may be physically and logically
integral with the I/O device or the CPU. In most electromechanical devices, a
well-defined interface exists between
the device and the control unit because
of the difference in the type of equip­
ment the control unit and the device
contain. These electromechanical
devices often are of a type where only
one device of a group attached to a
control unit is required to transfer
data at a time (magnetic-tape units or
disk-access mechanisms, for example),
and the control unit is shared among a
number of I/O devices. On the other
hand, in some electronic I/O devices
such as the channel-to-channel adapter,
the control unit does not have an iden­
tity of its own.
From the programmer's point of view,
most functions performed by the control
unit can be merged with those performed
by the I/O device. Therefore, this
publication normally does not make
specific mention of the control-unit
function; the execution of I/O oper­
ations is described as if the I/O devices communicated directly with the
channel. Reference is made to the
control unit only when emphasizing a
function performed by it or when
describing how sharing of the control
unit among a number of devices affects
the execution of I/O operations. CHANNELS A channel directs the flow of informa­
tion between I/O devices and main stor­
age. It relieves the CPU of the task of
communicating directly with the devices
and permits data processing to proceed
concurrently with I/O operations.
A channel provides a means for connect­
ing various types of I/O devices to the CPU and to storage. The channel accepts
control information from the CPU in the
format supplied by the program and
changes it into a sequence of signals
acceptable to a control unit and device.
Similarly, when an I/O device provides
signals that should be brought to the
attention of the program, the channel
transforms the signals to information
that can be used in the cpu.
A channel contains facilities for the
control of I/O operations. During
execution of an I/O operation involving
data transfer, the channel assembles or
disassembles data and synchronizes the
transfer of data bytes with storage
cycles. To accomplish this, the channel
maintains and updates an address and a
count that describe the destination or
source of data in storage. When the
channel facilities are provided in the
form of separate autonomous equipment
designed specifically to control I/O devices, I/O operations are completely
overlapped with the activity in the CPU. The only storage cycles required during I/O operations in such channels are
those needed to transfer data and
control information to or from the final
locations in storage. These cycles do
not delay the CPU program, except when
both the CPU and the channel concurrent­
ly attempt to refer to the same storage
area.
If separate equipment is not provided,
facilities of the CPU are used for
controlling I/O devices. When the CPU and channels, or the CPU, channels, and
control units, share common facilities, I/O operations cause interference to the CPU, varying in intensity from occa­
sional delay of a CPU cycle to a
complete lockout of CPU activity. The
intensity depends on the extent of shar­
ing and on the I/O data rate. The
sharing of the facilities, however, is
accomplished automatically, and the
program is not affected by CPU delays,
except for an increase in execution
time. Chapter 13. Input/Output Operations 13-3
Modes of Operation An I/O operation occurs in one of two
modes: burst or byte-multiplex.
In burst mode, the I/O device monopo­
lizes the channel and stays logically
connected to the channel for the trans­
fer of a burst of information. No other
device can communicate with the channel
during the time a burst is transferred.
The burst can consist of a few bytes, a
whole block of data, a sequence of
blocks with associated control and
status information (the block lengths
may be zero), or status information
which monopolizes the channel.
Some channels can tolerate an absence of
data transfer during a burst-mode opera­
tion, such as occurs when reading a long
gap on magnetic tape, for not more than
approximate!y 1/2 minute. Equipment
malfunction may be indicated when an
absence of data transfer exceeds this
time.
In byte-mu!tip!ex mode, the I/O device
stays logically connected to the channe!
only for a short interva! of time. The
facilities in a channel capable of oper­
ating in byte-multiplex mode may be
shared by a number of concurrent!y oper­
ating I/O devices. In this mode, all I/O operations are split into short
intervals of time during which only a
segment of information is transferred.
During such an interval, only one device
is logically connected to the channe!.
The intervals associated with the
concurrent operation of multiple I/O devices are sequenced in response to
demands from the devices. The channel
controls are occupied with anyone oper­ ation only for the time required to
transfer a segment of information. The
segment can consist of a single byte of
data, a few bytes of data, a status
report from the device, or a control
sequence used for initiation of a new
operation. Operation in burst and byte-multiplex
modes is differentiated because of the
way the channels respond to I/O instructions. A channel operating a
device in the burst mode may appear busy
to new I/O instructions, whereas a chan­
nel operating one or more devices in the
byte-multiplex mode is capable of initi­
ating an operation on another device.
If a channel that can operate in either
mode is communicating with an I/O device
at the instant a new I/O instruction is
issued, action on the instruction is
delayed by the channel until the current
mode of operation is established.
Furthermore, the new I/O operation is
initiated only after the channel has
serviced all outstanding requests from
devices previously placed in operation. 13-4 System/370 Principles of Operation The distinction between a short burst of
data occurring in the byte-multiplex
mode and an operation in the burst mode
is in the length of the bursts of data.
A channel that can operate in either
mode determines its mode of operation by
timeout. Whenever the burst causes the
device to be connected to the channel
for more than approximately 100 micro­
seconds, the channel is considered to be
operating in the burst mode. Ordinarily, devices with a high data­
transfer rate operate with the channel
in burst mode, and slower devices run in
byte-multiplex mode. Some control units
have a manual switch for setting the
mode of operation. of Channels
A system can be equipped with
types of channels: selector,
multiplexer, and block multiplexer.
three
byte
The channel facilities required for
sustaining a single I/O operation are
termed a subchannel. The subchannel
consists of internal storage used for
recording the addresses, count, and any
status and control information associ­
ated with the I/O operation. The
capability of a channel to permit multi­
plexing depends upon whether it has more
than one subchannel.
A selector channel, which contains a
minimum of facilities, has one subchan­
nel and always forces the I/O device to
transfer data in the burst mode. The
burst extends over the whole block of
data, or, when command chaining is spec­
ified, over the whole sequence of
blocks. A selector channel cannot
perform any multiplexing and therefore
can be invo!ved in only one I/O opera­
tion or chain of operations at a time.
In the meantime, other I/O devices
attached to the channel can be executing
previously initiated operations that do
not involve communication with the chan­
nel, such as backspacing tape. When the
selector channel is not executing an
operation or a chain of operations and
is not processing an interruption, it
monitors the attached devices for status
information.
A byte-multiplexer channel contains
multiple subchannels and can operate at
anyone time in either byte-multiplex or
burst mode. A byte-multiplexer channel
operates most efficiently with I/O devices that are designed to operate in
byte-multiplex mode. The mode of opera­
tion is determined by the I/O device,
and, during data transfer, the mode can
change at any time. Unless data trans­
fer is occurring, the mode of operation
has no meaning. The data transfer asso­
ciated with an operation can occur
Previous Page Next Page