Page 89 - Embedded Microprocessor Systems Real World Design
P. 89
control the interface using software; you need a processor that has a built-in 1%
interface. Since the total capacitance on the bus can reach 400pF, high-speed 1%
requires active pull-ups; fast-mode requires active pull-ups if the total capacitance
exceeds 200 pF.
1% also supports a multimaster mode that we’ll discuss in Chapter 8.
Micro wire
Microwire is a three-wire serial interface used by National Semiconductor in its
COPS processor family. The three signals are SI (serial input), SO (serial output),
and SK (serial clock). SI and SO are input to and output from the processor, respec-
tively. The processor clocks data to the peripheral on SO and receives data on SI.
Data in both directions is captured on the rising clock edge. Peripheral devices that
transfer data in only one direction (such as display drivers that are only written,
never read) may implement only one data line, SO or SI.
Unlike I%, the Microwire protocol has no device addressing built into the serial
bit stream. Microwire peripherals require a separate chip select input, one per
device. This allows data to be transferred more quickly since address information
is not needed. It requires more port bits, however, since one chip select, using one
port bit, is needed per peripheral.
Each Microwire peripheral has a unique protocol based on the application. The
number of bits and the meaning of each bit varies. National’s Microwire EEPROMs,
for example, have a 4bit command followed by an address (7 to 12 bits, depend-
ing on memory size), followed by data (8 or 16 bits). The commands are erase,
read, program, enable programming, and so on.
Microwire can transfer data faster than the original I%, typically at MHz rates.
The SPI bus, used by Motorola on its 68HC11 family, is similar to Microwire, and
many peripheral ICs are specified as being compatible with either.
Both SPI and Microwire are implemented in their respective processors with
hardware, which simplifies programming. However, peripherals using these buses
can be interfaced to any general-purpose microcontroller using software-controlled
I/O. Generally, the same types of peripherals available with the 1% interface also
are available with SPI or Microwire. A summary comparison between SPI/
Microwire and 1% is shown in Table 2.2.
Note that many Microwire devices have both data-in and data-out pins. In some
cases, clocking data into a Microwire device will also clock data out of the output
pin. On those devices, you must read the output bit after each bit is clocked into
the device; otherwise, the output bit will be lost. The Maxim MAX3100 UART is a
typical example.
Hardware Design 1 73