combination of the many kinds of external memory available today.
RAM (random access memory) is semiconductor memory that can
be both read and written into. ROM (read
only
memory) is a pro-
duction-type memory that contains a program or data or both which
can be read but not altered. PROM (programmable read only
memory) may be
programmed
in the field with inexpensive equip-
ment, but may not be altered once programmed. EPROM (erasable
programmable read
only
memory) may be programmed for a read
only operation, but may be periodically erased under ultraviolet
light. Many wags have suggested another type, a WOM or write
only
memory, but in most cases the former memory types are com-
monly used.
The Z-80 microprocessor and associated CPU circuitry interface
to I/O
device controllers
along with external memory. I/O device
controllers perform several functions. Firstly, the I/.O device con-
trollers
buffer
data passing between the Z-80 CPU registers or ex-
ternal memory and the I/O device. The buffering matches the high-
speed data-transfer rate of the Z-80 CPU to the relatively low-speed
rate of the I/O device. It is important for the CPU not to have to
wait until the I/O device accepts data, as the wait time may repre-
sent tens of thousands of Z-80 instructions. A Teletype Corporation
ASR-33 Teletype, for example, accepts data at the rate of 10 bytes
per second. While waiting for the Teletype to accept a byte of data,
the Z-80 microprocessor could be executing 1/10 second worth of
instructions or about 30,000 instructions. The Teletype controller
allows the Z-80 to pass a byte in several microseconds and signals
the Z-80 when the Teletype is done processing the data from the
Teletype device controller.
Another function performed by the I/O device controller is for-
matting of the data. A floppy disc transmits data as
a serial
bit
stream. The floppy disc controller, among other functions, converts
the serial bit stream into 8-bit
parallel
bytes in proper format for
transmission to the Z-80 CPU over the data bus.
A third function of the I/O device controller is that of
level con-
version.
Data from CPU logic is in TTL (or Transistor-Transistor
Logic) signal levels, which are nominally 0 volts and 5 volts. A Se-
lectric I/O typewriter may require 24 to 48 volts to drive the sole-
noids of the Teletypes and obviously some voltage level conversion
is required.
Other functions of the I/O device controller are timing, synchro-
nization, control-signal
handshaking,
and transmission of device
status. A wide range of I/O devices interface to the Z-80 through
their respective device controllers, ranging from 5 character-per-
second Teletype equipment, audio cassette equipment, analog-to-
digital converters, and 100,000 byte-per-second graphic display
24