20.23 RAM Capacity Estimation
- BRI_RAM section: The RI600PX's management data, data queue area created by the system configuration file, message buffer area created by the system configuration file without specifying section
- BURI_HEAP section: Fixed-sized memory pool area and variable-sized memory pool area created by the system configuration file without specifying section
- SURI_STACK section: User stack area of tasks created by the system configuration file without specifying section
The Table 20-11 shows the size calculation method for the BRI_RAM and RRI_RAM section (unit: bytes). In addition, actual size may become larger than the value computed by Table 20-11 for boundary adjustment.
TMAX_TPRI: The TMAX_TPRI represents maximum task priority.
The cfg600px outputs the macro TMAX_TPRI which defines the value set as Maximum task priority (priority) in System Information (system) to the system information header file kernel_id.h.
The cfg600px outputs the macro TMAX_TPRI which defines the value set as Maximum task priority (priority) in System Information (system) to the system information header file kernel_id.h.
VTMAX_TSK: The VTMAX_TSK represents the maximum task ID.
The cfg600px outputs the macro of VTMAX_TSK to the system information header file kernel_id.h. For details, refer to "Maximum task ID (max_task)".
The cfg600px outputs the macro of VTMAX_TSK to the system information header file kernel_id.h. For details, refer to "Maximum task ID (max_task)".
VTMAX_SEM: The VTMAX_SEM represents the maximum semaphore ID.
The cfg600px outputs the macro of VTMAX_SEM to the system information header file kernel_id.h. For details, refer to "Maximum semaphore ID (max_sem)".
The cfg600px outputs the macro of VTMAX_SEM to the system information header file kernel_id.h. For details, refer to "Maximum semaphore ID (max_sem)".
VTMAX_FLG: The VTMAX_FLG represents the maximum eventflag ID.
The cfg600px outputs the macro of VTMAX_FLG to the system information header file kernel_id.h. For details, refer to "Maximum eventflag ID (max_flag)".
The cfg600px outputs the macro of VTMAX_FLG to the system information header file kernel_id.h. For details, refer to "Maximum eventflag ID (max_flag)".
VTMAX_DTQ: The VTMAX_DTQ represents the maximum data queue ID.
The cfg600px outputs the macro of VTMAX_DTQ to the system information header file kernel_id.h. For details, refer to "Maximum data queue ID (max_dtq)".
The cfg600px outputs the macro of VTMAX_DTQ to the system information header file kernel_id.h. For details, refer to "Maximum data queue ID (max_dtq)".
DTQ_ALLSIZE: Total of size of data queue area created in the system configuration file. Concretely, it is calculated by the following expressions.
dataqueue[].buffer_size * 4
Note, DTQ_ALLSIZE is 4 when this calculation result is 0.
dataqueue[].buffer_size * 4
Note, DTQ_ALLSIZE is 4 when this calculation result is 0.
VTMAX_MBX: The VTMAX_MBX represents the maximum mailbox ID.
The cfg600px outputs the macro of VTMAX_MBX to the system information header file kernel_id.h. For details, refer to "Maximum mailbox ID (max_mbx)".
The cfg600px outputs the macro of VTMAX_MBX to the system information header file kernel_id.h. For details, refer to "Maximum mailbox ID (max_mbx)".
VTMAX_MTX: The VTMAX_MTX represents the maximum mutex ID.
The cfg600px outputs the macro of VTMAX_MTX to the system information header file kernel_id.h. For details, refer to "Maximum mutex ID (max_mtx)".
The cfg600px outputs the macro of VTMAX_MTX to the system information header file kernel_id.h. For details, refer to "Maximum mutex ID (max_mtx)".
VTMAX_MBF: The VTMAX_MBF represents the maximum message buffer ID.
The cfg600px outputs the macro of VTMAX_MBF to the system information header file kernel_id.h. For details, refer to "Maximum message buffer ID (max_mbf)".
The cfg600px outputs the macro of VTMAX_MBF to the system information header file kernel_id.h. For details, refer to "Maximum message buffer ID (max_mbf)".
MBF_ALLSIZE: Total of size of message buffer area created in the system configuration file without specifying "mbf_section". Concretely, it is calculated by the following expressions.
message_buffer[].mbf_size * 4
message_buffer[].mbf_size * 4
VTMAX_MPF: The VTMAX_MPF represents the maximum fixed-sized memory pool ID.
The cfg600px outputs the macro of VTMAX_MPF to the system information header file kernel_id.h. For details, refer to "Maximum fixed-sized memory pool ID (max_mpf)".
The cfg600px outputs the macro of VTMAX_MPF to the system information header file kernel_id.h. For details, refer to "Maximum fixed-sized memory pool ID (max_mpf)".
VTMAX_MPL: The VTMAX_MPL represents the maximum variable-sized memory pool ID.
The cfg600px outputs the macro of VTMAX_MPL to the system information header file kernel_id.h. For details, refer to "Maximum variable-sized memory pool ID (max_mpl)".
The cfg600px outputs the macro of VTMAX_MPL to the system information header file kernel_id.h. For details, refer to "Maximum variable-sized memory pool ID (max_mpl)".
VTMAX_CYH: The VTMAX_CYH represents the maximum cyclic handler ID.
The cfg600px outputs the macro of VTMAX_CYH to the system information header file kernel_id.h. For details, refer to "Maximum cyclic handler ID (max_cyh)".
The cfg600px outputs the macro of VTMAX_CYH to the system information header file kernel_id.h. For details, refer to "Maximum cyclic handler ID (max_cyh)".
VTMAX_ALH: The VTMAX_ALH represents the maximum alarm handler ID.
The cfg600px outputs the macro of VTMAX_ALH to the system information header file kernel_id.h. For details, refer to "Maximum alarm handler ID (max_alh)".
The cfg600px outputs the macro of VTMAX_ALH to the system information header file kernel_id.h. For details, refer to "Maximum alarm handler ID (max_alh)".
VTMAX_DOMAIN: The VTMAX_DOMAIN represents the maximum domain ID.
The cfg600px outputs the macro of VTMAX_DOMAIN to the system information header file kernel_id.h. For details, refer to "Maximum domain ID (max_domain)".
The cfg600px outputs the macro of VTMAX_DOMAIN to the system information header file kernel_id.h. For details, refer to "Maximum domain ID (max_domain)".
The fixed-sized memory pool area and variable-sized memory pool area are located in the BURI_HEAP section. Note, when a fixed-sized memory pool and variable-sized memory pool are defined, the area can be located into the user-specific section.
The size of the BURI_HEAP section is calculated by the total of following. In addition, when user specific data is generated in the BURI_HEAP section, the size should be added.
- Total size of fixed-sized memory pool area
This is calculated about the definition of Fixed-sized Memory Pool Information (memorypool[]) that omits to specify "section" by the following expressions.
This is calculated about the definition of Fixed-sized Memory Pool Information (memorypool[]) that omits to specify "section" by the following expressions.
- Total size of variable-sized memory pool area
This is calculated about the definition of Variable-sized Memory Pool Information (variable_memorypool[]) that omits to specify "mpl_section" by the following expressions.
This is calculated about the definition of Variable-sized Memory Pool Information (variable_memorypool[]) that omits to specify "mpl_section" by the following expressions.
The user stack area is located in the SURI_STACK section. Note, when a task is defined, the user stack area can be located into the user-specific section.
The size of the SURI_STACK section is calculated about the definition of Task Information (task[]) that omits to specify "stack_section" by the following expressions. In addition, when user specific data is generated in the SURI_STACK section, the size should be added.
The system stack size is the same as a set value for System stack size (stack_size) in System Information (system).