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 | — |