
MM912_634 Advance Information, Rev. 10.0
Freescale Semiconductor
172
The fixed 16 kB page from 0x0000 to 0x3FFF is the page number 0x0C. Parts of this page are covered by Registers, D-Flash
and RAM space. See SoC Guide for details.
The fixed 16 kB page from 0x4000–0x7FFF is the page number 0x0D.
The reset value of 0x0E ensures that there is linear Flash space available between addresses 0x0000 and 0xFFFF out of reset.
The fixed 16 kB page from 0xC000-0xFFFF is the page number 0x0F.
5.29.4
Functional Description
The S12PMMC block performs several basic functions of the S12I sub-system operation: MCU operation modes, priority control,
address mapping, select signal generation and access limitations for the system. Each aspect is described in the following
subsections.
5.29.4.1
MCU Operating Modes
Normal single chip mode
This is the operation mode for running application code. There is no external bus in this mode.
Special single chip mode
This mode is generally used for debugging operation, boot-strapping or security related operations. The active
background debug mode is in control of the CPU code execution and the BDM firmware is waiting for serial commands
sent through the BKGD pin.
5.29.4.2
Memory Map Scheme
5.29.4.2.1
CPU and BDM Memory Map Scheme
The BDM firmware lookup tables and BDM register memory locations share addresses with other modules; however they are not
visible in the memory map during user’s code execution. The BDM memory resources are enabled only during the READ_BD
and WRITE_BD access cycles to distinguish between accesses to the BDM memory area and accesses to the other modules.
(Refer to BDM Block Guide for further details).
When the MCU enters active BDM mode, the BDM firmware lookup tables and the BDM registers become visible in the local
memory map in the range 0xFF00-0xFFFF (global address 0x3_FF00 - 0x3_FFFF) and the CPU begins execution of firmware
commands or the BDM begins execution of hardware commands. The resources which share memory space with the BDM
module will not be visible in the memory map during active BDM mode.
Please note that after the MCU enters active BDM mode the BDM firmware lookup tables and the BDM registers will also be
visible between addresses 0xBF00 and 0xBFFF if the PPAGE register contains value of 0x0F.
5.29.4.2.1.1
Expansion of the Local Address Map
Expansion of the CPU Local Address Map
The program page index register in S12PMMC allows accessing up to 256 kB of P-Flash in the global memory map by using the
four index bits (PPAGE[3:0]) to page 16x16 kB blocks into the program page window located from address 0x8000 to address
0xBFFF in the local CPU memory map.
The page value for the program page window is stored in the PPAGE register. The value of the PPAGE register can be read or
Control registers, vector space and parts of the on-chip memories are located in unpaged portions of the 64 kB local CPU address
space.
The starting address of an interrupt service routine must be located in unpaged memory unless the user is certain that the PPAGE
register will be set to the appropriate value when the service routine is called. However an interrupt service routine can call other
routines that are in paged memory. The upper 16 kB block of the local CPU memory space (0xC000–0xFFFF) is unpaged. It is
Table 254. PPAGE Field Descriptions
Field
Description
3–0
PIX[3:0]
Program Page Index Bits 3–0 — These page index bits are used to select which of the 256 P-Flash or ROM array pages is to
be accessed in the Program Page Window.