32-Byte Windowing Example - Intel 8XC196NT User Manual

Table of Contents

Advertisement

Appendix C includes a table of the windowable SFRs with the window selection register values
and direct addresses for each window size. The following examples explain how to determine the
WSR value and direct address for any windowable location. An additional example shows how
to set up a window by using the linker locator.
4.3.2.1

32-byte Windowing Example

Assume that you wish to access location 014BH (a location in the upper register file used for gen-
eral-purpose register RAM) with direct addressing through a 32-byte window. Table 4-11 on page
4-18 shows that you need to write 4AH to the window selection register. It also shows that the
base address of the 32-byte memory area is 0140H. To determine the offset, subtract that base ad-
dress from the address to be accessed (014BH – 0140H = 000BH). Add the offset to the base ad-
dress of the window in the lower register file (from Table 4-12). The direct address is 00EBH
(000BH + 00E0H).
4.3.2.2
64-byte Windowing Example
Assume that you wish to access the SFR at location 1F8CH with direct addressing through a 64-
byte window. Table 4-11 on page 4-18 shows that you need to write 3EH to the window selection
register. It also shows that the base address of the 64-byte memory area is 1F80H. To determine
the offset, subtract that base address from the address to be accessed (1F8CH – 1F80H = 000CH).
Add the offset to the base address of the window in the lower register file (from Table 4-12 on
page 4-19). The direct address is 00CCH (000CH + 00C0H).
4.3.2.3
128-byte Windowing Example
Assume that you wish to access the SFR at location 1F82H with direct addressing through a 128-
byte window. Table 4-12 on page 4-19 shows that you need to write 1FH to the window selection
register. It also shows that the base address of the 128-byte memory area is 1F80H. To determine
the offset, subtract that base address from the address to be accessed (1F82H – 1F80H = 0002H).
Add the offset to the base address of the window in the lower register file (from Table 4-12 on
page 4-19). The direct address is 0082H (0002H + 0080H).
Table 4-12. Windowed Base Addresses
WSR Windowed Base Address
Window Size
(Base Address in Lower Register File)
32-byte
64-byte
128-byte
MEMORY PARTITIONS
00E0H
00C0H
0080H
4-19

Advertisement

Table of Contents
loading

Table of Contents