
ML66517 Family User’s Manual
Chapter 17
Bus Port Functions
17 – 8
17.5 Notes Regarding Usage of Bus Port Function
17.5.1 Dummy Read Strobe Output
The ML66517 family of microcontrollers utilize the nX-8/500S, Oki’s proprietary 16-bit CPU core.
The instruction code of the nX-8/500S uses 8 bits as its basic unit and consists of 1 to 6 bytes. Instructions are
classified as NATIVE instructions for commonly performed operations or as COMPOSIT instructions to realize
a wide range of addressing. NATIVE instructions consist of 1 to 4 bytes and are used to achieve high coding and
processing efficiency.
COMPOSIT instructions consist of a 1 to 3 byte address field (PREFIX) and a 1 to 3 byte operation field
(SUFFIX). The PREFIX and SUFFIX are combined to realize a wide range of addressing.
If instructions accompanying a write to external data memory are to be executed, an unnecessary
RD signal
(dummy RD) will be output before the actual access (
WR signal) if some of those instructions are COMPOSIT
instructions, (This is limited to cases where the PREFIX specifies an external data memory area.) For byte and
bit accesses, a dummy RD signal is output once.
For word accesses, a dummy RD signal is output twice.
Some considerations must be exercised in cases where the above mentioned read strobe affects the internal
operation of peripheral devices.
Using the bus port function, the specific example of connecting and accessing the 8251 serial interface LSI chip
as a peripheral device will be described.
[Example]
When the microcomputer writes to the transmit buffer of the 8251, if COMPOSIT instructions are used with the
above conditions, output of the dummy read strobe will cause data in the receive buffer to be read. If receive data
exists in the receive buffer, the 8251 will determine that the CPU has finished reading data, and the receive ready
output signal will be reset.
Some considerations must be exercised in cases where peripheral devices operate differently when read and
write operations are performed at the same address.
These types of problems can be avoided by using NATIVE instructions.
For example, a dummy strobe is not output if load and store instructions (L, LB, ST, STB) are used to read from
and write to the accumulator (ACC). (If programming in C language, these sections can be written as assembler
functions.)
If general-purpose memory (RAM or ROM) is connected to a bus port, the problems described above should not
occur.
Problems only occur if a connected peripheral device (functional device) is accessed using COMPOSIT
instructions as described above and the read strobe affects the internal operation of the peripheral device.
Connect peripheral devices to bus ports based on an understanding of the operation described herein and the
function and operation of peripheral devices.
Tables 17-3 and 17-4 list PREFIX and SUFFIX combinations (instructions) that output a dummy RD when an
external data memory area is accessed.
In the tables, PREFIX addressing is inserted at the “*” in the SUFFIX column.