Skip to content

Snitch Cluster Schema Schema

http://pulp-platform.org/snitch/snitch_cluster.schema.json

Base description of a Snitch cluster and its internal structure and configuration.

Abstract Extensible Status Identifiable Custom Properties Additional Properties Access Restrictions Defined In
Can be instantiated No Unknown status No Forbidden Allowed none snitch_cluster.schema.json

Snitch Cluster Schema Type

object (Snitch Cluster Schema)

Snitch Cluster Schema Properties

Property Type Required Nullable Defined by
name string Optional cannot be null Snitch Cluster Schema
boot_addr number Optional cannot be null Snitch Cluster Schema
cluster_base_addr number Optional cannot be null Snitch Cluster Schema
tcdm object Optional cannot be null Snitch Cluster Schema
addr_width number Required cannot be null Snitch Cluster Schema
data_width number Optional cannot be null Snitch Cluster Schema
dma_data_width number Optional cannot be null Snitch Cluster Schema
id_width_in number Optional cannot be null Snitch Cluster Schema
dma_id_width_in number Optional cannot be null Snitch Cluster Schema
hart_base_id number Optional cannot be null Snitch Cluster Schema
mode string Optional cannot be null Snitch Cluster Schema
vm string Optional cannot be null Snitch Cluster Schema
dma_axi_req_fifo_depth number Optional cannot be null Snitch Cluster Schema
dma_req_fifo_depth number Optional cannot be null Snitch Cluster Schema
timing object Optional cannot be null Snitch Cluster Schema
hives array Required cannot be null Snitch Cluster Schema

name

Optional name for the generated wrapper.

name

name Type

string

name Default Value

The default value is:

"snitch_cluster"

boot_addr

Address from which all harts of the cluster start to boot. The default setting is 0x8000_0000.

boot_addr

boot_addr Type

number

boot_addr Default Value

The default value is:

2147483648

cluster_base_addr

Base address of this cluster.

cluster_base_addr

cluster_base_addr Type

number

tcdm

Configuration of the Tightly Coupled Data Memory of this cluster.

tcdm

tcdm Type

object (Details)

tcdm Default Value

The default value is:

{
  "size": 128,
  "banks": 32
}

addr_width

Length of the address, should be greater than 30. If the address is larger than 34 the data bus needs to be 64 bits in size.

addr_width

addr_width Type

number

addr_width Default Value

The default value is:

48

data_width

Data bus size of the integer core (everything except the DMA), must be 32 or 64. A double precision FPU requires 64 bit data length.

data_width

data_width Type

number

data_width Default Value

The default value is:

64

dma_data_width

Data bus size of DMA. Usually this is larger than the integer core as the DMA is used to efficiently transfer bulk of data.

dma_data_width

dma_data_width Type

number

dma_data_width Default Value

The default value is:

512

id_width_in

Id width of the narrower AXI plug into the cluster.

id_width_in

id_width_in Type

number

id_width_in Default Value

The default value is:

2

dma_id_width_in

Id width of the wide AXI plug into the cluster.

dma_id_width_in

dma_id_width_in Type

number

dma_id_width_in Default Value

The default value is:

2

hart_base_id

Base hart id of the cluster. All cores get the respective cluster id plus their cluster position as the final hart_id.

hart_base_id

hart_base_id Type

number

mode

Supported mode by the processor, can be msu.

Currently ignored.

mode

mode Type

string

vm

Supported virtual memory mode, can be XSv32.

Currently ignored.

vm

vm Type

string

vm Constraints

enum: the value of this property must be equal to one of the following values:

Value Explanation
"Sv32"
"XSv48"

vm Default Value

The default value is:

"XSv48"

dma_axi_req_fifo_depth

Number of AXI FIFO entries of the DMA engine.

dma_axi_req_fifo_depth

dma_axi_req_fifo_depth Type

number

dma_axi_req_fifo_depth Default Value

The default value is:

3

dma_req_fifo_depth

Number of request entries the DMA can keep

dma_req_fifo_depth

dma_req_fifo_depth Type

number

dma_req_fifo_depth Default Value

The default value is:

3

timing

timing

timing Type

object (Timing and Latency Tuning Parameter)

hives

Cores in a hive share an instruction cache and other shared infrastructure such as the PTW or the multiply/divide unit.

hives

hives Type

object[] (Hive Description)

hives Constraints

minimum number of items: the minimum number of items for this array is: 1