Preliminary
STACK OPERATION EXAMPLE
SN8P1702A/SN8P1703A
8-bit micro-controller build-in 12-bit ADC
The two kinds of Stack-Save operations to reference the stack pointer (STKP) and write the program counter contents
(PC) into the stack buffer are CALL instruction and interrupt service. Under each condition, the STKP is decremented
and points to the next available stack location. The stack buffer stores the program counter about the op-code address.
The Stack-Save operation is as following table.
STKP Register
STKPB2 STKPB1
Stack Buffer
High Byte Low Byte
Stack Level
Description
STKPB3
STKPB0
1
1
1
1
1
1
1
1
-
1
1
1
0
1
0
1
0
1
0
-
STK0H
STK1H
STK2H
STK3H
STK4H
STK5H
STK6H
STK7H
-
STK0L
STK1L
STK2L
STK3L
STK4L
STK5L
STK6L
STK7L
-
0
1
2
3
4
5
6
7
>8
-
-
-
-
-
-
-
-
1
1
1
0
0
0
0
-
1
0
0
1
1
0
0
-
Stack Overflow
Table 3-1. STKP, STKnH and STKnL relative of Stack-Save Operation
The RETI instruction is for interrupt service routine. The RET instruction is for CALL instruction. When a Stack-Restore
operation occurs, the STKP is incremented and points to the next free stack location. The stack buffer restores the last
program counter (PC) to the program counter registers. The Stack-Restore operation is as following table.
STKP Register
STKPB2 STKPB1
Stack Buffer
High Byte Low Byte
Stack Level
Description
STKPB3
STKPB0
1
1
1
1
1
1
1
1
0
0
0
1
0
1
0
1
0
1
STK7H
STK6H
STK5H
STK4H
STK3H
STK2H
STK1H
STK0H
STK7L
STK6L
STK5L
STK4L
STK3L
STK2L
STK1L
STK0L
7
6
5
4
3
2
1
0
-
-
-
-
-
-
-
-
0
0
0
1
1
1
1
0
1
1
0
0
1
1
Table 3-2. STKP, STKnH and STKnL relative of Stack-Restore Operation
SONiX TECHNOLOGY CO., LTD
Page 31
Revision 0.5