Skip to content

Snitch Cluster peripherals

This section documents the registers exposed by the Snitch cluster to interface with various cluster-level peripherals, including the performance counters.

snitch_cluster_peripheral_reg address map

  • Absolute Address: 0x0
  • Base Offset: 0x0
  • Size: 0x1C0
Offset Identifier Name
0x000 perf_regs —
0x180 scratch[0] —
0x188 scratch[1] —
0x190 scratch[2] —
0x198 scratch[3] —
0x1A0 cl_clint_set —
0x1A8 cl_clint_clear —
0x1B0 icache_prefetch_enable —
0x1B8 unused —

perf_regs register file

  • Absolute Address: 0x0
  • Base Offset: 0x0
  • Size: 0x180
Offset Identifier Name
0x000 perf_cnt_en[0] —
0x008 perf_cnt_en[1] —
0x010 perf_cnt_en[2] —
0x018 perf_cnt_en[3] —
0x020 perf_cnt_en[4] —
0x028 perf_cnt_en[5] —
0x030 perf_cnt_en[6] —
0x038 perf_cnt_en[7] —
0x040 perf_cnt_en[8] —
0x048 perf_cnt_en[9] —
0x050 perf_cnt_en[10] —
0x058 perf_cnt_en[11] —
0x060 perf_cnt_en[12] —
0x068 perf_cnt_en[13] —
0x070 perf_cnt_en[14] —
0x078 perf_cnt_en[15] —
0x080 perf_cnt_sel[0] —
0x088 perf_cnt_sel[1] —
0x090 perf_cnt_sel[2] —
0x098 perf_cnt_sel[3] —
0x0A0 perf_cnt_sel[4] —
0x0A8 perf_cnt_sel[5] —
0x0B0 perf_cnt_sel[6] —
0x0B8 perf_cnt_sel[7] —
0x0C0 perf_cnt_sel[8] —
0x0C8 perf_cnt_sel[9] —
0x0D0 perf_cnt_sel[10] —
0x0D8 perf_cnt_sel[11] —
0x0E0 perf_cnt_sel[12] —
0x0E8 perf_cnt_sel[13] —
0x0F0 perf_cnt_sel[14] —
0x0F8 perf_cnt_sel[15] —
0x100 perf_cnt[0] —
0x108 perf_cnt[1] —
0x110 perf_cnt[2] —
0x118 perf_cnt[3] —
0x120 perf_cnt[4] —
0x128 perf_cnt[5] —
0x130 perf_cnt[6] —
0x138 perf_cnt[7] —
0x140 perf_cnt[8] —
0x148 perf_cnt[9] —
0x150 perf_cnt[10] —
0x158 perf_cnt[11] —
0x160 perf_cnt[12] —
0x168 perf_cnt[13] —
0x170 perf_cnt[14] —
0x178 perf_cnt[15] —

perf_cnt_en register

  • Absolute Address: 0x0
  • Base Offset: 0x0
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80
Bits Identifier Access Reset Name
0 enable rw 0x1 enable

enable field

Enable a particular performance counter to start tracking.

perf_cnt_en register

  • Absolute Address: 0x8
  • Base Offset: 0x0
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80
Bits Identifier Access Reset Name
0 enable rw 0x1 enable

enable field

Enable a particular performance counter to start tracking.

perf_cnt_en register

  • Absolute Address: 0x10
  • Base Offset: 0x0
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80
Bits Identifier Access Reset Name
0 enable rw 0x1 enable

enable field

Enable a particular performance counter to start tracking.

perf_cnt_en register

  • Absolute Address: 0x18
  • Base Offset: 0x0
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80
Bits Identifier Access Reset Name
0 enable rw 0x1 enable

enable field

Enable a particular performance counter to start tracking.

perf_cnt_en register

  • Absolute Address: 0x20
  • Base Offset: 0x0
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80
Bits Identifier Access Reset Name
0 enable rw 0x1 enable

enable field

Enable a particular performance counter to start tracking.

perf_cnt_en register

  • Absolute Address: 0x28
  • Base Offset: 0x0
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80
Bits Identifier Access Reset Name
0 enable rw 0x1 enable

enable field

Enable a particular performance counter to start tracking.

perf_cnt_en register

  • Absolute Address: 0x30
  • Base Offset: 0x0
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80
Bits Identifier Access Reset Name
0 enable rw 0x1 enable

enable field

Enable a particular performance counter to start tracking.

perf_cnt_en register

  • Absolute Address: 0x38
  • Base Offset: 0x0
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80
Bits Identifier Access Reset Name
0 enable rw 0x1 enable

enable field

Enable a particular performance counter to start tracking.

perf_cnt_en register

  • Absolute Address: 0x40
  • Base Offset: 0x0
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80
Bits Identifier Access Reset Name
0 enable rw 0x1 enable

enable field

Enable a particular performance counter to start tracking.

perf_cnt_en register

  • Absolute Address: 0x48
  • Base Offset: 0x0
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80
Bits Identifier Access Reset Name
0 enable rw 0x1 enable

enable field

Enable a particular performance counter to start tracking.

perf_cnt_en register

  • Absolute Address: 0x50
  • Base Offset: 0x0
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80
Bits Identifier Access Reset Name
0 enable rw 0x1 enable

enable field

Enable a particular performance counter to start tracking.

perf_cnt_en register

  • Absolute Address: 0x58
  • Base Offset: 0x0
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80
Bits Identifier Access Reset Name
0 enable rw 0x1 enable

enable field

Enable a particular performance counter to start tracking.

perf_cnt_en register

  • Absolute Address: 0x60
  • Base Offset: 0x0
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80
Bits Identifier Access Reset Name
0 enable rw 0x1 enable

enable field

Enable a particular performance counter to start tracking.

perf_cnt_en register

  • Absolute Address: 0x68
  • Base Offset: 0x0
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80
Bits Identifier Access Reset Name
0 enable rw 0x1 enable

enable field

Enable a particular performance counter to start tracking.

perf_cnt_en register

  • Absolute Address: 0x70
  • Base Offset: 0x0
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80
Bits Identifier Access Reset Name
0 enable rw 0x1 enable

enable field

Enable a particular performance counter to start tracking.

perf_cnt_en register

  • Absolute Address: 0x78
  • Base Offset: 0x0
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80
Bits Identifier Access Reset Name
0 enable rw 0x1 enable

enable field

Enable a particular performance counter to start tracking.

perf_cnt_sel register

  • Absolute Address: 0x80
  • Base Offset: 0x80
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80

Select the metric that is tracked for each performance counter.

Bits Identifier Access Reset Name
15:0 hart rw — hart
31:16 metric rw — metric

hart field

Select from which hart in the cluster, starting from 0, the event should be counted. For each performance counter the cores can be selected individually. If a hart greater than the cluster's total hart size is selected the selection will wrap and the hart corresponding to hart_select % total_harts_in_cluster will be selected.

metric field

Select the metric that is tracked for each performance counter

perf_cnt_sel register

  • Absolute Address: 0x88
  • Base Offset: 0x80
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80

Select the metric that is tracked for each performance counter.

Bits Identifier Access Reset Name
15:0 hart rw — hart
31:16 metric rw — metric

hart field

Select from which hart in the cluster, starting from 0, the event should be counted. For each performance counter the cores can be selected individually. If a hart greater than the cluster's total hart size is selected the selection will wrap and the hart corresponding to hart_select % total_harts_in_cluster will be selected.

metric field

Select the metric that is tracked for each performance counter

perf_cnt_sel register

  • Absolute Address: 0x90
  • Base Offset: 0x80
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80

Select the metric that is tracked for each performance counter.

Bits Identifier Access Reset Name
15:0 hart rw — hart
31:16 metric rw — metric

hart field

Select from which hart in the cluster, starting from 0, the event should be counted. For each performance counter the cores can be selected individually. If a hart greater than the cluster's total hart size is selected the selection will wrap and the hart corresponding to hart_select % total_harts_in_cluster will be selected.

metric field

Select the metric that is tracked for each performance counter

perf_cnt_sel register

  • Absolute Address: 0x98
  • Base Offset: 0x80
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80

Select the metric that is tracked for each performance counter.

Bits Identifier Access Reset Name
15:0 hart rw — hart
31:16 metric rw — metric

hart field

Select from which hart in the cluster, starting from 0, the event should be counted. For each performance counter the cores can be selected individually. If a hart greater than the cluster's total hart size is selected the selection will wrap and the hart corresponding to hart_select % total_harts_in_cluster will be selected.

metric field

Select the metric that is tracked for each performance counter

perf_cnt_sel register

  • Absolute Address: 0xA0
  • Base Offset: 0x80
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80

Select the metric that is tracked for each performance counter.

Bits Identifier Access Reset Name
15:0 hart rw — hart
31:16 metric rw — metric

hart field

Select from which hart in the cluster, starting from 0, the event should be counted. For each performance counter the cores can be selected individually. If a hart greater than the cluster's total hart size is selected the selection will wrap and the hart corresponding to hart_select % total_harts_in_cluster will be selected.

metric field

Select the metric that is tracked for each performance counter

perf_cnt_sel register

  • Absolute Address: 0xA8
  • Base Offset: 0x80
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80

Select the metric that is tracked for each performance counter.

Bits Identifier Access Reset Name
15:0 hart rw — hart
31:16 metric rw — metric

hart field

Select from which hart in the cluster, starting from 0, the event should be counted. For each performance counter the cores can be selected individually. If a hart greater than the cluster's total hart size is selected the selection will wrap and the hart corresponding to hart_select % total_harts_in_cluster will be selected.

metric field

Select the metric that is tracked for each performance counter

perf_cnt_sel register

  • Absolute Address: 0xB0
  • Base Offset: 0x80
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80

Select the metric that is tracked for each performance counter.

Bits Identifier Access Reset Name
15:0 hart rw — hart
31:16 metric rw — metric

hart field

Select from which hart in the cluster, starting from 0, the event should be counted. For each performance counter the cores can be selected individually. If a hart greater than the cluster's total hart size is selected the selection will wrap and the hart corresponding to hart_select % total_harts_in_cluster will be selected.

metric field

Select the metric that is tracked for each performance counter

perf_cnt_sel register

  • Absolute Address: 0xB8
  • Base Offset: 0x80
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80

Select the metric that is tracked for each performance counter.

Bits Identifier Access Reset Name
15:0 hart rw — hart
31:16 metric rw — metric

hart field

Select from which hart in the cluster, starting from 0, the event should be counted. For each performance counter the cores can be selected individually. If a hart greater than the cluster's total hart size is selected the selection will wrap and the hart corresponding to hart_select % total_harts_in_cluster will be selected.

metric field

Select the metric that is tracked for each performance counter

perf_cnt_sel register

  • Absolute Address: 0xC0
  • Base Offset: 0x80
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80

Select the metric that is tracked for each performance counter.

Bits Identifier Access Reset Name
15:0 hart rw — hart
31:16 metric rw — metric

hart field

Select from which hart in the cluster, starting from 0, the event should be counted. For each performance counter the cores can be selected individually. If a hart greater than the cluster's total hart size is selected the selection will wrap and the hart corresponding to hart_select % total_harts_in_cluster will be selected.

metric field

Select the metric that is tracked for each performance counter

perf_cnt_sel register

  • Absolute Address: 0xC8
  • Base Offset: 0x80
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80

Select the metric that is tracked for each performance counter.

Bits Identifier Access Reset Name
15:0 hart rw — hart
31:16 metric rw — metric

hart field

Select from which hart in the cluster, starting from 0, the event should be counted. For each performance counter the cores can be selected individually. If a hart greater than the cluster's total hart size is selected the selection will wrap and the hart corresponding to hart_select % total_harts_in_cluster will be selected.

metric field

Select the metric that is tracked for each performance counter

perf_cnt_sel register

  • Absolute Address: 0xD0
  • Base Offset: 0x80
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80

Select the metric that is tracked for each performance counter.

Bits Identifier Access Reset Name
15:0 hart rw — hart
31:16 metric rw — metric

hart field

Select from which hart in the cluster, starting from 0, the event should be counted. For each performance counter the cores can be selected individually. If a hart greater than the cluster's total hart size is selected the selection will wrap and the hart corresponding to hart_select % total_harts_in_cluster will be selected.

metric field

Select the metric that is tracked for each performance counter

perf_cnt_sel register

  • Absolute Address: 0xD8
  • Base Offset: 0x80
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80

Select the metric that is tracked for each performance counter.

Bits Identifier Access Reset Name
15:0 hart rw — hart
31:16 metric rw — metric

hart field

Select from which hart in the cluster, starting from 0, the event should be counted. For each performance counter the cores can be selected individually. If a hart greater than the cluster's total hart size is selected the selection will wrap and the hart corresponding to hart_select % total_harts_in_cluster will be selected.

metric field

Select the metric that is tracked for each performance counter

perf_cnt_sel register

  • Absolute Address: 0xE0
  • Base Offset: 0x80
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80

Select the metric that is tracked for each performance counter.

Bits Identifier Access Reset Name
15:0 hart rw — hart
31:16 metric rw — metric

hart field

Select from which hart in the cluster, starting from 0, the event should be counted. For each performance counter the cores can be selected individually. If a hart greater than the cluster's total hart size is selected the selection will wrap and the hart corresponding to hart_select % total_harts_in_cluster will be selected.

metric field

Select the metric that is tracked for each performance counter

perf_cnt_sel register

  • Absolute Address: 0xE8
  • Base Offset: 0x80
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80

Select the metric that is tracked for each performance counter.

Bits Identifier Access Reset Name
15:0 hart rw — hart
31:16 metric rw — metric

hart field

Select from which hart in the cluster, starting from 0, the event should be counted. For each performance counter the cores can be selected individually. If a hart greater than the cluster's total hart size is selected the selection will wrap and the hart corresponding to hart_select % total_harts_in_cluster will be selected.

metric field

Select the metric that is tracked for each performance counter

perf_cnt_sel register

  • Absolute Address: 0xF0
  • Base Offset: 0x80
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80

Select the metric that is tracked for each performance counter.

Bits Identifier Access Reset Name
15:0 hart rw — hart
31:16 metric rw — metric

hart field

Select from which hart in the cluster, starting from 0, the event should be counted. For each performance counter the cores can be selected individually. If a hart greater than the cluster's total hart size is selected the selection will wrap and the hart corresponding to hart_select % total_harts_in_cluster will be selected.

metric field

Select the metric that is tracked for each performance counter

perf_cnt_sel register

  • Absolute Address: 0xF8
  • Base Offset: 0x80
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80

Select the metric that is tracked for each performance counter.

Bits Identifier Access Reset Name
15:0 hart rw — hart
31:16 metric rw — metric

hart field

Select from which hart in the cluster, starting from 0, the event should be counted. For each performance counter the cores can be selected individually. If a hart greater than the cluster's total hart size is selected the selection will wrap and the hart corresponding to hart_select % total_harts_in_cluster will be selected.

metric field

Select the metric that is tracked for each performance counter

perf_cnt register

  • Absolute Address: 0x100
  • Base Offset: 0x100
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80

Performance counter. Set corresponding perf_cnt_sel register depending on what performance metric and hart you would like to track.

Bits Identifier Access Reset Name
47:0 perf_counter rw, wclr — —

perf_counter field

Performance counter

perf_cnt register

  • Absolute Address: 0x108
  • Base Offset: 0x100
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80

Performance counter. Set corresponding perf_cnt_sel register depending on what performance metric and hart you would like to track.

Bits Identifier Access Reset Name
47:0 perf_counter rw, wclr — —

perf_counter field

Performance counter

perf_cnt register

  • Absolute Address: 0x110
  • Base Offset: 0x100
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80

Performance counter. Set corresponding perf_cnt_sel register depending on what performance metric and hart you would like to track.

Bits Identifier Access Reset Name
47:0 perf_counter rw, wclr — —

perf_counter field

Performance counter

perf_cnt register

  • Absolute Address: 0x118
  • Base Offset: 0x100
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80

Performance counter. Set corresponding perf_cnt_sel register depending on what performance metric and hart you would like to track.

Bits Identifier Access Reset Name
47:0 perf_counter rw, wclr — —

perf_counter field

Performance counter

perf_cnt register

  • Absolute Address: 0x120
  • Base Offset: 0x100
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80

Performance counter. Set corresponding perf_cnt_sel register depending on what performance metric and hart you would like to track.

Bits Identifier Access Reset Name
47:0 perf_counter rw, wclr — —

perf_counter field

Performance counter

perf_cnt register

  • Absolute Address: 0x128
  • Base Offset: 0x100
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80

Performance counter. Set corresponding perf_cnt_sel register depending on what performance metric and hart you would like to track.

Bits Identifier Access Reset Name
47:0 perf_counter rw, wclr — —

perf_counter field

Performance counter

perf_cnt register

  • Absolute Address: 0x130
  • Base Offset: 0x100
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80

Performance counter. Set corresponding perf_cnt_sel register depending on what performance metric and hart you would like to track.

Bits Identifier Access Reset Name
47:0 perf_counter rw, wclr — —

perf_counter field

Performance counter

perf_cnt register

  • Absolute Address: 0x138
  • Base Offset: 0x100
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80

Performance counter. Set corresponding perf_cnt_sel register depending on what performance metric and hart you would like to track.

Bits Identifier Access Reset Name
47:0 perf_counter rw, wclr — —

perf_counter field

Performance counter

perf_cnt register

  • Absolute Address: 0x140
  • Base Offset: 0x100
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80

Performance counter. Set corresponding perf_cnt_sel register depending on what performance metric and hart you would like to track.

Bits Identifier Access Reset Name
47:0 perf_counter rw, wclr — —

perf_counter field

Performance counter

perf_cnt register

  • Absolute Address: 0x148
  • Base Offset: 0x100
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80

Performance counter. Set corresponding perf_cnt_sel register depending on what performance metric and hart you would like to track.

Bits Identifier Access Reset Name
47:0 perf_counter rw, wclr — —

perf_counter field

Performance counter

perf_cnt register

  • Absolute Address: 0x150
  • Base Offset: 0x100
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80

Performance counter. Set corresponding perf_cnt_sel register depending on what performance metric and hart you would like to track.

Bits Identifier Access Reset Name
47:0 perf_counter rw, wclr — —

perf_counter field

Performance counter

perf_cnt register

  • Absolute Address: 0x158
  • Base Offset: 0x100
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80

Performance counter. Set corresponding perf_cnt_sel register depending on what performance metric and hart you would like to track.

Bits Identifier Access Reset Name
47:0 perf_counter rw, wclr — —

perf_counter field

Performance counter

perf_cnt register

  • Absolute Address: 0x160
  • Base Offset: 0x100
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80

Performance counter. Set corresponding perf_cnt_sel register depending on what performance metric and hart you would like to track.

Bits Identifier Access Reset Name
47:0 perf_counter rw, wclr — —

perf_counter field

Performance counter

perf_cnt register

  • Absolute Address: 0x168
  • Base Offset: 0x100
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80

Performance counter. Set corresponding perf_cnt_sel register depending on what performance metric and hart you would like to track.

Bits Identifier Access Reset Name
47:0 perf_counter rw, wclr — —

perf_counter field

Performance counter

perf_cnt register

  • Absolute Address: 0x170
  • Base Offset: 0x100
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80

Performance counter. Set corresponding perf_cnt_sel register depending on what performance metric and hart you would like to track.

Bits Identifier Access Reset Name
47:0 perf_counter rw, wclr — —

perf_counter field

Performance counter

perf_cnt register

  • Absolute Address: 0x178
  • Base Offset: 0x100
  • Size: 0x8
  • Array Dimensions: [16]
  • Array Stride: 0x8
  • Total Size: 0x80

Performance counter. Set corresponding perf_cnt_sel register depending on what performance metric and hart you would like to track.

Bits Identifier Access Reset Name
47:0 perf_counter rw, wclr — —

perf_counter field

Performance counter

scratch register

  • Absolute Address: 0x180
  • Base Offset: 0x180
  • Size: 0x8
  • Array Dimensions: [4]
  • Array Stride: 0x8
  • Total Size: 0x20

Scratch registers. Used in the bootrom for various purposes.

Bits Identifier Access Reset Name
31:0 scratch rw 0x0 —

scratch field

Scratch register

scratch register

  • Absolute Address: 0x188
  • Base Offset: 0x180
  • Size: 0x8
  • Array Dimensions: [4]
  • Array Stride: 0x8
  • Total Size: 0x20

Scratch registers. Used in the bootrom for various purposes.

Bits Identifier Access Reset Name
31:0 scratch rw 0x0 —

scratch field

Scratch register

scratch register

  • Absolute Address: 0x190
  • Base Offset: 0x180
  • Size: 0x8
  • Array Dimensions: [4]
  • Array Stride: 0x8
  • Total Size: 0x20

Scratch registers. Used in the bootrom for various purposes.

Bits Identifier Access Reset Name
31:0 scratch rw 0x0 —

scratch field

Scratch register

scratch register

  • Absolute Address: 0x198
  • Base Offset: 0x180
  • Size: 0x8
  • Array Dimensions: [4]
  • Array Stride: 0x8
  • Total Size: 0x20

Scratch registers. Used in the bootrom for various purposes.

Bits Identifier Access Reset Name
31:0 scratch rw 0x0 —

scratch field

Scratch register

cl_clint_set register

  • Absolute Address: 0x1A0
  • Base Offset: 0x1A0
  • Size: 0x8

Set bits in the cluster-local CLINT. Writing a 1 at location i sets the cluster-local interrupt of hart i, where i is relative to the first hart in the cluster, ignoring the cluster base hart ID.

Bits Identifier Access Reset Name
31:0 cl_clint_set w — —

cl_clint_set field

Set cluster-local interrupt of hart i

cl_clint_clear register

  • Absolute Address: 0x1A8
  • Base Offset: 0x1A8
  • Size: 0x8

Clear bits in the cluster-local CLINT. Writing a 1 at location i clears the cluster-local interrupt of hart i, where i is relative to the first hart in the cluster, ignoring the cluster base hart ID.

Bits Identifier Access Reset Name
31:0 cl_clint_clear w — —

cl_clint_clear field

Set cluster-local interrupt of hart i

icache_prefetch_enable register

  • Absolute Address: 0x1B0
  • Base Offset: 0x1B0
  • Size: 0x8

Controls prefetching of the instruction cache.

Bits Identifier Access Reset Name
0 icache_prefetch_enable w 0x1 —

icache_prefetch_enable field

Enable instruction prefetching.

unused register

  • Absolute Address: 0x1B8
  • Base Offset: 0x1B8
  • Size: 0x8

Unused register added to print enum

Bits Identifier Access Reset Name
4:0 f r 0x0 —