I/o
subchannel (i.
e.,
data
transfers between the
device
and
data
buffers, updating the memory byte address and
byte count, and functions as specified by the control flags)
are
performed
ina
norma I manner.
For
input operations, the Skip flag (in conjunction with
data
chaining) provides the capabi
lity
to
selectively
read
portions
of
a record.
For output operations, the
lOP
wi"
generate
and transmit
zeros
(X1OOI)
unti I the byte
count
is reduced to zero. Thus,
for example,
if
the
lOCO
contains a Punch Binary order, a
byte count
of
120, and the S flag is coded as a 1, a blank
card may
be
punched without accessing main memory
for
data.
WRITE
KEY
This
four-bit
field (bit positions
40-43),
if required, may
be coded with
an
appropriate write key. During input
op-
erations and providing
the
Skip control flag is
coded
as aD,
the
lOP
will access main memory and furnish a memory unit
with
up
to four bytes of
data
or information accompanied
with a four-bit write key.
If
the
write key matches
the
preassigned write lock for
the
memory word location
ac-
cessed, or if
either
the key or lock has a
value
of 0000,
the memory unit
accepts
and stores
the
information.
If
the
write key does not match
the
write lock, and neither
the
key nor the lock has a value of 0000, the memory
unit
re-
jects
the
information, does not disturb the previous
content,
and transmits a Write Lock
Violation
(WLV)
signal
to
the
lOP.
The write
key/write
lock relationship
is
compared
every time a memory word location is accessed for storing
data
or information.
(Note:
The write
key/write
lock
re-
lationship may
change
during
an
input operation when the
byte address is incremented (or decremented) across a mem-
ory
page
boundary.)
As
long as the write key matches the write lock for
each
memory word location accessed, or the value of
either
the
lock or the key is 0000, the input operation
is
performed
as specified
by
the
other
parameters within this lOCO; or
the input operation is terminated by an
"unusual
end"
con-
dition
which
can
not
be
inhibited (i.
e.,
memory address
error, control
check
fault, or
lOP
memory error).
If
the
HTE
control flag is coded as a 1 when a
WLV
signal
is
received,
the
I/O
operation is terminated -immediately.
If
either
the
ICE
or
IUE
control flag is coded as a
1,
an
I/o
interrupt
is
requested.
If the
HTE
control flag
is
coded as a 0 when a
WLV
signal
is
received,
the
I/O
operation continues in a normal
man-
ner, even though the
data
or information may be
rejected
by a memory uni t.
When the
lOP
receives a
WLV
signal, the
WLV
bit
within
the status information register is set to 1 and remains
set
until a new
VO
operation is
initiated
within this
I/o
sub-
channel by an
SIO
instruction. Thus,
after
the first
WLV
signal has been recorded, subsequent
WLV
signals
have
no
further
effect
upon the
WLV
bit.
The status
of
the
WLV
bit
is
reported when the
BP
executes
an
SIO,
TIO, TDV,
HIO, or
AIO
instruction.
The
contents
of
the write key fie
Id
is
not
required and may
be ignored when the write
key/write
lock memory protection
feature is not
operative
(i.
e.,
during any
output
operation
or
during any input
operation,
if
the Skip control flag
of
the current lOCO is coded as a 1).
BYTE
COUNT
This
16-bit
field (bit positions
48-63),
if
required, may be
coded to specify the total number
of
data
or
information
bytes
that
are to be transmitted by the
current
lOCO.
The minimum number
of
bytes is 1 and the maximum is
65,356 bytes (16,384 words). When the
lOCO
is
fetched,
the
content
of
the
byte
count
field is loaded
into
a byte
count
register within the appropriate
I/o
subchannel.
Thereafter, the
content
of
the byte count register
is
decre-
mented by one for
each
byte
transmitted and then tested
for a zero byte
count
condition.
(Note:
As
a consequence
of
decrementi ng before testi ng for a zero byte
count
condi-
tion'
an
initial
byte
count
value
of
0
is
interpreted
as
65,356
bytes.)
Unless the
I/o
operation is terminated
(e.
g.,
as the result
of
detecting
an "unusual end
ll
),
data
is transmitted unti I the byte count is reduced to zero.
At
any time, the progress
of
the
I/O
operation
may
be
ascer-
tained
by
evaluating
the current byte count which is
furnished as status information when the
BP
executes
an
SIO,
no,
HIO, or
TDV
instruction. (That is, current byte
count
is equal to the number
of
bytes remaining to be
trans-
mitted and Inltlai byte
count
minus
current
byte
count
is
equal to the number
of
bytes
transmitted.)
When the byte
count
is reduced to
zero,
the MIOP may perform the
fol-
lowing functions:
1.
Transmit a
"count
done" signal to the
device
controller/
device
if
data
chaining
is
not specified.
2. Request an
I/O
interrupt,
if
the IZC flag is coded
as a 1.
3.
Fetch the
next
lOCO,
if
the
data
chain flag
is
coded
asa1.
Depending upon the
characteristics
of
the
I/O
device,
certain
I/O
orders (e.
g.,
Rewind for magnetic
tape
units)
may
nat
require a
byte
count
field.
In
such
case,
the byte
count
field is ignored. Refer to an appropriate Xerox
pe-
ripheral equipment
reference
manual for further
detai
Is.
CONTROL
IDeO
A control
lOCO
may
contain
either
a Transfer in Channel
or
a Stop command.
Input/Output
Processor (lOP) Fundamentals 129