ParaNut SystemC Model
A SystemC Model of the ParaNut architecture

General options. More...

Collaboration diagram for General:

General options...

#define CFG_NUT_MIMPID   16777352
 Hardware version derived from git. More...
 
#define CFG_NUT_CPU_CORES_LD   2
 Number of cores overall as log2. More...
 
#define CFG_NUT_CPU_CORES   (1 << CFG_NUT_CPU_CORES_LD)
 Number of cores overall (derived). More...
 
#define CFG_NUT_CPU_GROUPS   ((CFG_NUT_CPU_CORES-1)/32)
 Number of cpu groups (derived). More...
 
#define CFG_NUT_CPU_CAP1_CORES   0
 Number of cores (ExUs) with mode capability = 1 (linked). More...
 
#define CFG_NUT_CPU_CAP2_CORES   (CFG_NUT_CPU_CORES - CFG_NUT_CPU_CAP1_CORES)
 Number of cores (ExUs) with mode capability >= 2 (thread) (derived). More...
 
#define CFG_EXU_PNM2CAP   ~(0xffffffff << CFG_NUT_CPU_CAP2_CORES)
 ParaNut mode 2 capability value (derived). More...
 
#define CFG_NUT_MEM_SIZE   (256 * MB)
 System memory size. More...
 
#define CFG_NUT_EX_INT   2
 Number of external interrupt lines. More...
 

Detailed Description

General options.

Macro Definition Documentation

◆ CFG_EXU_PNM2CAP

#define CFG_EXU_PNM2CAP   ~(0xffffffff << CFG_NUT_CPU_CAP2_CORES)

ParaNut mode 2 capability value (derived).

Contains a bitmask of all mode 2 capable cores. The configured value can be read from the pnm2cp CSR.

◆ CFG_NUT_CPU_CAP1_CORES

#define CFG_NUT_CPU_CAP1_CORES   0

Number of cores (ExUs) with mode capability = 1 (linked).

Defines the number of ParaNut cores (ExUs) that have a mode capability of 1 and thus can only operate in mode 1 (linked mode).

◆ CFG_NUT_CPU_CAP2_CORES

#define CFG_NUT_CPU_CAP2_CORES   (CFG_NUT_CPU_CORES - CFG_NUT_CPU_CAP1_CORES)

Number of cores (ExUs) with mode capability >= 2 (thread) (derived).

Defines the number of ParaNut cores (ExUs) that have a mode capability of >= 2 and thus can operate in mode 1 (linked mode) and mode 2 (thread mode).

◆ CFG_NUT_CPU_CORES

#define CFG_NUT_CPU_CORES   (1 << CFG_NUT_CPU_CORES_LD)

Number of cores overall (derived).

◆ CFG_NUT_CPU_CORES_LD

#define CFG_NUT_CPU_CORES_LD   2

Number of cores overall as log2.

Defines the log2 of the overall number of ParaNut cores (ExUs).

◆ CFG_NUT_CPU_GROUPS

#define CFG_NUT_CPU_GROUPS   ((CFG_NUT_CPU_CORES-1)/32)

Number of cpu groups (derived).

◆ CFG_NUT_EX_INT

#define CFG_NUT_EX_INT   2

Number of external interrupt lines.

Defines the number of external interrupt lines. Needs to be at least equal to 1.

◆ CFG_NUT_MEM_SIZE

#define CFG_NUT_MEM_SIZE   (256 * MB)

System memory size.

Defines the system memory size in Bytes. 8MB is recommended for simulation, otherwise needs to match the memory size of the used board. Also used to determine the cacheable memory addresses.

◆ CFG_NUT_MIMPID

#define CFG_NUT_MIMPID   16777352

Hardware version derived from git.

This Machine Architecture ID is storde in csr marchid.