Specifications
Data Memory
3-12
3.5 Data Memory
Data memory space addresses up to 64K of 16-bit words. 32K words are inter-
nal memory (0000h to 7FFFh). Internal data memory includes memory-
mapped registers, DARAM, and peripheral memory-mapped registers. The
remaining 32K words of memory (8000h to FFFFh) form part of the external
data memory. Note that addresses 8000h–FFFFh are not accessible in ’2406,
’2404, and ’2402.
Figure 3–8 shows the data memory map for the ’2407. Each device has three
on-chip DARAM blocks: B0, B1, and B2. B0 is configurable as data memory
or program memory. It is the same memory block accessible either as data
memory or program memory, depending on the CNF bit. Blocks B1 and B2 are
available for data memory only. External data memory is available only on the
’2407.
Data memory can be addressed with either of two addressing modes: direct-
addressing or indirect-addressing.
When direct addressing is used, data memory is addressed in blocks of
128 words called data pages. Figure 3–9 shows how these blocks are ad-
dressed. The entire 64K of data memory consists of 512 data pages labeled
0 through 511. The current data page is determined by the value in the 9-bit
data page pointer (DP) in status register ST0. Each of the 128 words on the
current page is referenced by a 7-bit offset taken from the instruction that is
using direct addressing. Therefore, when an instruction uses direct addres-
sing, you must specify both the data page (with a preceding instruction) and
the offset (in the instruction that accesses data memory).
An access to the following address spaces in the data memory is illegal and
generates a NMI. In addition to these addresses, an access to any of the re-
served addresses within the peripheral register maps is also illegal.
0080h–00FFh 710Fh–71FFh (inside CAN)
0500h–07FFh 7230h–73FFh (partly inside CAN)
1000h–700Fh 7440h–74FFh
7030h–703Fh 7540h–75FFh
7060h–706Fh 7600h–7FFFh
7080h–708Fh 8000h–FFFFh (on ’2406, ’2404, and ’2402 only)
70C0h–70FFh










