Section 4 Exception Handling
Rev. 3.00 Mar. 14, 2006 Page 86 of 804
REJ09B0104-0300
4.9 Usage
Note
When performing stack-manipulating access, this LSI assumes that the lowest address bit is 0. The
stack should always be accessed by a word transfer instruction or a longword transfer instruction,
and the value of the stack pointer (SP: ER7) should always be kept even. Use the following
instructions to save registers:
•
PUSH.W Rn (or MOV.W Rn, @-SP)
•
PUSH.L ERn (or MOV.L ERn, @-SP)
Use the following instructions to restore registers:
•
POP.W Rn (or MOV.W @SP+, Rn)
•
POP.L ERn (or MOV.L @SP+, ERn)
Performing stack manipulation while SP is set to an odd value leads to an address error. Figure 4.3
shows an example of operation when the SP value is odd.
SP
CCR :
PC :
R1L :
SP :
Condition code register
Program counter
General register R1L
Stack pointer
CCR
SP
SP
R1L
H'FFFEFA
H'FFFEFB
H'FFFEFC
H'FFFEFD
H'FFFEFE
H'FFFEFF
PC
PC
TRAPA instruction executed
SP set to H'FFFEFF
Data saved above SP
MOV.B R1L, @-ER7 executed
Contents of CCR lost
Address
[Legend]
Note: This diagram illustrates an example in which the interrupt control mode is 0, in advanced mode.
(Address error occurred)
Figure 4.3 Operation when SP Value Is Odd
electronic components distributor
Содержание H8SX series
Страница 2: ...Rev 3 00 Mar 14 2006 Page ii of xxxviii Downloaded from Elcodis com electronic components distributor...
Страница 22: ...Rev 3 00 Mar 14 2006 Page xxii of xxxviii Downloaded from Elcodis com electronic components distributor...
Страница 32: ...Rev 3 00 Mar 14 2006 Page xxxii of xxxviii Downloaded from Elcodis com electronic components distributor...
Страница 38: ...Rev 3 00 Mar 14 2006 Page xxxviii of xxxviii Downloaded from Elcodis com electronic components distributor...
Страница 845: ...Downloaded from Elcodis com electronic components distributor...
Страница 846: ...H8SX 1520 Group Hardware Manual Downloaded from Elcodis com electronic components distributor...