![Freescale Semiconductor MCF54455 Скачать руководство пользователя страница 888](http://html1.mh-extra.com/html/freescale-semiconductor/mcf54455/mcf54455_reference-manual_2330541888.webp)
Debug Module
Freescale Semiconductor
34-46
34.4.1.5.12
BDM Accesses of the Stack Pointer Registers (A7: SSP and USP)
The ColdFire core supports two unique stack pointer (A7) registers: the supervisor stack pointer (SSP) and
the user stack pointer (USP). The hardware implementation of these two programmable-visible 32-bit
registers does not uniquely identify one as the SSP and the other as the USP. Rather, the hardware uses one
32-bit register as the currently-active A7; the other is named the OTHER_A7. Therefore, the contents of
the two hardware registers is a function of the operating mode of the processor:
if SR[S] = 1
then
A7 = Supervisor Stack Pointer
OTHER_A7 = User Stack Pointer
else
A7 = User Stack Pointer
OTHER_A7 = Supervisor Stack Pointer
The BDM programming model supports reads and writes to A7 and OTHER_A7 directly. It is the
responsibility of the external development system to determine the mapping of A7 and OTHER_A7 to the
two program-visible definitions (supervisor and user stack pointers), based on the SR[S] bit.
34.4.1.5.13
BDM Accesses of the EMAC Registers
The presence of rounding logic in the output datapath of the EMAC requires special care for
BDM-initiated reads and writes of its programming model. In particular, any result rounding modes must
be disabled during the read/write process so the exact bit-wise EMAC register contents are accessed.
For example, a BDM read of an accumulator (ACC
x
) must be preceded by two commands accessing the
MAC status register, as shown in the following sequence:
BdmReadACCx (
rcreg
macsr;
// read current macsr contents and save
wcreg
#0,macsr;
// disable all rounding modes
rcreg
ACCx;
// read the desired accumulator
wcreg
#saved_data,macsr;// restore the original macsr
)
Likewise, to write an accumulator register, the following BDM sequence is needed:
BdmWriteACCx (
rcreg
macsr;
// read current macsr contents and save
wcreg
#0,macsr;
// disable all rounding modes
wcreg
#data,ACCx;
// write the desired accumulator
wcreg
#saved_data,macsr;// restore the original macsr
)
0x80B
MAC Accumulator 3 (ACC3)
0x80E
0x80F
0xC05
RAM Base Address Register (RAMBAR)
1
If an RGPIO module is available on this device.
Table 34-26. Control Register Map (continued)
Rc
Register Definition
Содержание MCF54455
Страница 33: ...xxviii Freescale Semiconductor ...
Страница 67: ...Freescale Semiconductor 1 ...
Страница 125: ...Freescale Semiconductor 1 ...
Страница 145: ...Enhanced Multiply Accumulate Unit EMAC 5 21 Freescale Semiconductor ...
Страница 173: ...Cache 6 28 Freescale Semiconductor ...
Страница 179: ...Static RAM SRAM 7 6 Freescale Semiconductor ...
Страница 207: ...Power Management 9 16 Freescale Semiconductor ...
Страница 323: ...Reset Controller Module 13 8 Freescale Semiconductor ...
Страница 389: ...Pin Multiplexing and Control 16 44 Freescale Semiconductor ...
Страница 575: ...PCI Bus Controller 22 58 Freescale Semiconductor ...
Страница 600: ...Advanced Technology Attachment ATA Freescale Semiconductor 23 25 ...
Страница 601: ...Freescale Semiconductor 1 ...
Страница 842: ...I2 C Interface Freescale Semiconductor 33 16 ...
Страница 843: ...Freescale Semiconductor 1 ...
Страница 921: ...Revision History A 6 Freescale Semiconductor ...