beautypg.com

3 memory mapping rules, 2 .5 .3 memory mapping rules -14 – Maxim Integrated MAXQ622 User Manual

Page 18

background image

MAXQ612/MAXQ622 User’s Guide

2-14

Maxim Integrated

2.5.3 Memory Mapping Rules

When executing program code in a particular memory segment, the same memory segment cannot be simultaneously
accessed as data .
The following is a summary of the memory mapping rules .
• When executing from the normal user code segment:
The lower 32KWords program space (P0 and P1) is always executable as program .
The upper half of the code segment (P2 and P3) is accessible as program when UPA is set to 1 .
The

utility ROM is an extension of the program space if the UPA bit is 0 .

The physical data memory is available for access as a code segment with offset at 0A000h if the UPA bit is 0 .
Load and store operations to data memory are executed normally when addressed to the physical data memory .
The

utility ROM can be read as data, starting at 08000h of the data space .

• When executing from the utility ROM (only when UPA bit is 0):
The lower 32KWords program space (P0 and P1) functions as normal program memory .
Data memory is available for access as a code segment at the upper half of the program memory map, immediately

following the utility ROM segment .

Load and store operations to data memory are executed normally when addressed to the physical data memory .
P0 can be accessed as data with offset at 08000h when CDA[1:0] = 00b in byte mode or CDA1 = 0 in word mode .
P1 can be accessed as data with offset at 08000h when CDA[1:0] = 01b in byte mode or at offset 0C000h when

CDA1 = 0 in word mode .

P2 can be accessed as data with offset at 00000h when CDA[1:0] = 10b in byte mode or CDA1 = 1 in byte mode .
P3 can be accessed as data with offset at 00000h when CDA[1:0] = 11b in byte mode or at offset 0C00h when CDA1

= 1 in word mode .

• When executing from the data memory (only when UPA is 0):
Program flows freely between the lower 32KWords user code (P0 and P1) and the utility ROM segment .
The

utility ROM can be accessed as data with offset at 08000h .

P0 can be accessed as data with offset at 0000h when CDA[1:0] = 00b in byte mode or CDA1 = 0 in word mode .
P1 can be accessed as data with offset at 0000h when CDA[1:0] = 01b in byte mode or at offset 04000h when CDA1

= 0 in word mode .

P2 can be accessed as data with offset at 00000h when CDA[1:0] = 10b in byte mode or CDA1 = 1 in byte mode .
P3 can be accessed as data with offset at 00000h when CDA[1:0] = 11b in byte mode or at offset 0C00h when CDA1

= 1 in word mode .

This manual is related to the following products: