RCA COSMAC Operator's Manual page 58

Microkit
Hide thumbs Also See for COSMAC:
Table of Contents

Advertisement

THE MODULE-ENABLE PHILOSOPHY AND TlVO-LEVEL I/O (cont'd)
Consider now the use of such enables in the case of pro-
grammed-I/O data transfers.
This subject is discussed in
detail on pages 50 to 54 of the COSMAC Microprocessor
Manual.
As pointed out there, the
(~l;~O)=(H,L)
CPU state
code indic'ates the execution of an I/O instruction.
At this
time, the information present on the four N lines and on the
eight Data Bus lines can be interpreted in anyone of several
ways.
In a "one-level" I/O system, the N code selects one
of a set of devices, while the Data Bus carries information
between that device and memory.
In this case, up to eight
input devices and up to eight output devices are possible
(since the most significant bit of N specifies the data
direction).
The I/O-Decoder Module is used to generate an
individual I/O command "strobe" to activate the selected
device.
Notice that, for this case, each of the I/O devices
is permanently "enabled".
The command strobe from the I/O
decoder causes it to put data on the I/O bus or to latch data
from it.
Notice also that a "sub-one level" I/O system could be used,
for a sufficiently simple system, in which (for example) one
bit of the N code (appropriately ANDed with a TP and with
~l·SC'O)
can act directly as a command strobe.
For that
matter, if only one I/O device exists, the
~1·SCO
code
itself can be useo-to activate it!
Now consider a more complex system containing more possible
I/O data paths than can be handled in the one-level arrangement.
All I/O modules in the COSHAC system are designed to easily
accommodate a two-level I/O
~ystem.
Each has an ENABLE
signal input which can be derived from the output of a decoder
whose input is a latched
~select
code.
Under these
conditions, a particular 01JT1:r' instructIon, say 60, would be
interpreted as a GROUP SELECT instruction.
The data byte
sent out during its execution would be latched, using an
additional special module whose contents drive a decoder
. whose outputs, in turn, can separately ENABLE any of the
I/O devices in the system.
Up to 256x15 devices can be
accommodated by this approach.
Alternatively, each group
might consist of just one "composite" device, with input
and output capability.
Then, after such a "device" is selected
(by 60), subsequent I/O instructions can be used to input data,
output data, or even to input status or output commands.
Some systems may be implemented best with a mixture of one-
level and two-level controllers.
In this case, some I/O
controllers would be strobed
directl~
by certain I/O in-
structions (for example, 61 to 64 an
68 to 6B
~o
directly
strobe four input and four output devices, all permanently
enabled -- i.e., ENABLE pin disconnected).
The other
I/O
instructions not yet used (i.e., 65 to 67 and 6C to
6F)
w.ould
- 52 -

Advertisement

Table of Contents
loading

Table of Contents