This the stack pointer.
It is 16 bits wide, being composed of two 8 bit registers, SPL and SPH.
The stack can reside anywhere in the Unified Memory space. That is, anywhere in the RF, IOF or DM. It can even begin, for example, in RF and continue in IOF. However, placing the stack pointer in the IOF is likely to be a programming error, as the IOF registers have dedicated functions. Quasi-random values from stack written into IOF could result, for example, in an unpredictably trigerring any interrupt, and in general, in unpredictable behavior of the controller.
Requests to this port
pavr_s5_inc_spwr_rq
Increment SP (SPH & SPL) with 1.
Needed by POP.
pavr_s5_dec_spwr_rq
Increment SP with 1.
Needed by PUSH.
pavr_s5_calldec_spwr_rq
Decrement SP with 1.
Needed by RCALL, ICALL, EICALL, CALL, interrupt implicit CALL.
pavr_s51_calldec_spwr_rq
Decrement SP with 1.
Needed by RCALL, ICALL, EICALL, CALL, interrupt implicit CALL.
pavr_s52_calldec_spwr_rq
Decrement SP with 1.
Needed by RCALL, ICALL, EICALL, CALL, interrupt implicit CALL.
pavr_s5_retinc2_spwr_rq
Increment SP with 2.
Needed by RET, RETI.
pavr_s51_retinc_spwr_rq
Increment SP with 1.
Needed by RET, RETI.
Generated on Tue Dec 31 20:26:30 2002 for Pipelined AVR microcontroller by
1.2.16
@
1.1.1.1
log
@Importing into repository the new directory structure.
@
text
@@