AMD Am186TMER ユーザーズマニュアル

ページ / 196
Peripheral Control Block
4-1
CHAPTER
4
PERIPHERAL CONTROL BLOCK
4.1
OVERVIEW
The Am186ER and Am188ER microcontroller integrated peripherals are controlled by 
16-bit read/write registers. The peripheral registers are contained within an internal 
256-byte control block—the peripheral control block (PCB). Registers are physically located 
in the peripheral devices they control, but they are addressed as a single 256-byte block. 
Figure 4-1 shows a map of the peripheral control block registers.
Code that is intended to execute on the Am188ER microcontroller should perform all writes 
to the PCB registers as byte writes. These writes will transfer 16 bits of data to the PCB 
register even if an 8-bit register is named in the instruction. For example, 
out dx, al
 
results in the value of 
ax
 being written to the port address in 
dx
. Reads to the PCB should be 
done as word reads. Code written in this manner will run correctly on the Am188ER 
microcontroller and on the Am186ER microcontroller. Unaligned reads and writes to the PCB 
result in unpredictable behavior on both the Am186ER and Am188ER microcontrollers.
The peripheral control block can be mapped into either memory or I/O space. The base 
address of the control block must be on an even 256-byte boundary (i.e., the lower eight 
bits of the base address are 00h). Internal logic recognizes control block addresses and 
responds to bus cycles. During bus cycles to internal registers, the bus controller signals 
the operation externally (i.e., the RD, WR, status, address, and data lines are driven as in 
a normal bus cycle), but the data bus, SRDY, and ARDY are ignored. 
At reset, the Peripheral Control Block Relocation Register is set to 20FFh, which maps the 
control block to start at FF00h in I/O space. An offset map of the 256-byte peripheral control 
register block is shown in Figure 4-1. See section 4.1.1 on page 4-4 for a complete 
description of the Peripheral Control Block Relocation (RELREG) Register.