SAF-C164SM Infineon Technologies, SAF-C164SM Datasheet - Page 425
![no-image](/images/manufacturer_photos/0/3/327/infineon_technologies_sml.jpg)
SAF-C164SM
Manufacturer Part Number
SAF-C164SM
Description
16-Bit CMOS Microcontroller
Manufacturer
Infineon Technologies
Datasheet
1.SAF-C164SM.pdf
(470 pages)
- Current page: 425 of 470
- Download datasheet (6Mb)
22.1
The C164CM supports two types of stacks: the system stack and the user stack. The
system stack is used implicitly by the controller and is located in the internal RAM. The
user stack provides stack access to the user in either the internal or external memory.
Both stack types grow from high memory addresses to low memory addresses.
Internal System Stack
A system stack is provided to store return vectors, segment pointers, and processor
status for procedures and interrupt routines. A system Stack Pointer register, SP, points
to the top of the stack. This pointer is decremented when data is pushed onto the stack,
and incremented when data is popped.
The internal system stack can also be used to temporarily store data or pass it between
subroutines or tasks. Instructions are provided to push or pop registers on/from the
system stack. However, in most cases, the register banking scheme provides the best
performance for passing data between multiple tasks.
Note: The system stack allows the storage of words only. Bytes must either be
Detection of stack overflow/underflow is supported by two registers, STKOV (Stack
Overflow Pointer) and STKUN (Stack Underflow Pointer). Specific system traps (Stack
Overflow trap, Stack Underflow trap) will be entered whenever the SP reaches either
boundary specified in these registers.
The contents of the stack pointer are compared to the contents of the overflow register,
whenever the SP is DECREMENTED either by a CALL, PUSH, or SUB instruction. An
overflow trap will be entered when the SP value is less than the value in the stack
overflow register.
The contents of the stack pointer are compared to the contents of the underflow register,
whenever the SP is INCREMENTED either by a RET, POP, or ADD instruction. An
underflow trap will be entered when the SP value is greater than the value in the stack
underflow register.
Note: When a value is MOVED into the stack pointer, NO check against the overflow/
In many cases, the user will place a software reset instruction (SRST) into the stack
underflow and overflow trap service routines. This is an easy approach which does not
require special programming. However, this approach assumes that the defined internal
stack is sufficient for the current software and that exceeding its upper or lower boundary
represents a fatal error.
User’s Manual
converted to words or the respective other byte must be disregarded.
Register SP can be loaded with even byte addresses only (The LSB of SP is
always ‘0’).
underflow registers is performed.
Stack Operations
22-4
System Programming
C164CM/C164SM
Derivatives
V1.0, 2002-02
Related parts for SAF-C164SM
Image
Part Number
Description
Manufacturer
Datasheet
Request
R
![SAF-C161S-L25M AA](/photos/12/22/122291/saf-c161s-l25m_aa_tmb.jpg)
Part Number:
Description:
IC MCU 16BIT ROM/LESS MQFP-80-7
Manufacturer:
Infineon Technologies
Datasheet:
![SAF-C161S-LM 3V AA](/images/manufacturer_photos/0/3/327/infineon_technologies_tmb.jpg)
Part Number:
Description:
IC MCU 16BIT ROM/LESS MQFP-80-7
Manufacturer:
Infineon Technologies
Datasheet:
![SAF-XC164TM-4F40F AA](/images/manufacturer_photos/0/3/327/infineon_technologies_tmb.jpg)
Part Number:
Description:
IC MCU 16BIT 32KB TQFP-64-8
Manufacturer:
Infineon Technologies
Datasheet:
![SAF-C161O-LM 3V HA](/photos/12/23/122301/saf-c1610-lm_3v_ha_tmb.jpg)
Part Number:
Description:
IC MCU 16BIT ROM/LESS MQFP-80-1
Manufacturer:
Infineon Technologies
Datasheet:
![SAF-C161K-LM 3V HA](/images/manufacturer_photos/0/3/327/infineon_technologies_tmb.jpg)
Part Number:
Description:
IC MCU 16BIT ROM/LESS MQFP-80-1
Manufacturer:
Infineon Technologies
Datasheet:
![SAF-C161PI-LM CA](/photos/12/23/122304/saf-c161pi-lm_ca_tmb.jpg)
Part Number:
Description:
IC MCU 16BIT ROM/LESS MQFP-100-2
Manufacturer:
Infineon Technologies
Datasheet:
![SAF-C165-LF HA](/images/manufacturer_photos/0/3/327/infineon_technologies_tmb.jpg)
Part Number:
Description:
IC MCU 16BIT ROM/LESS TQFP-100
Manufacturer:
Infineon Technologies
Datasheet:
![SAF-C161PI-LF 3V CA](/photos/12/23/122317/saf-c161pi-lf-_3v_ca_tmb.jpg)
Part Number:
Description:
IC MCU 16BIT ROM/LESS TQFP-100-1
Manufacturer:
Infineon Technologies
Datasheet:
![SAF-C165-LM 3V HA](/photos/30/99/309970/qfp100_tmb.jpg)
Part Number:
Description:
IC MCU 16BIT ROM/LESS MQFP-100
Manufacturer:
Infineon Technologies
Datasheet:
![SAF-C161PI-L25M CA](/photos/12/23/122321/saf-c161pi-l25m_ca_tmb.jpg)
Part Number:
Description:
IC MCU 16BIT ROM/LESS MQFP-100-2
Manufacturer:
Infineon Technologies
Datasheet:
![SAF-C164CI-8EM CB](/photos/12/23/122343/saf-c164ci-8em_cb_tmb.jpg)
Part Number:
Description:
IC MCU 16BIT OTP MQFP-80-1
Manufacturer:
Infineon Technologies
Datasheet:
![SAF-C161PI-L25F CA](/photos/30/99/309970/qfp100_tmb.jpg)
Part Number:
Description:
IC MCU 16BIT ROM/LESS TQFP-100-1
Manufacturer:
Infineon Technologies
Datasheet:
![SAF-C161PI-LF CA](/images/manufacturer_photos/0/3/327/infineon_technologies_tmb.jpg)
Part Number:
Description:
IC MCU 16BIT ROM/LESS TQFP-100-1
Manufacturer:
Infineon Technologies
Datasheet:
![SAF-C161PI-LM 3V CA](/images/manufacturer_photos/0/3/327/infineon_technologies_tmb.jpg)
Part Number:
Description:
IC MCU 16BIT ROM/LESS MQFP-100-2
Manufacturer:
Infineon Technologies
Datasheet:
![SAF-C165-L25F HA](/images/manufacturer_photos/0/3/327/infineon_technologies_tmb.jpg)
Part Number:
Description:
IC MCU 16BIT ROM/LESS TQFP-100
Manufacturer:
Infineon Technologies
Datasheet: