* set cpuif_data_width for non-external components * update tests to actually work now * version bump
98 lines
1.8 KiB
Plaintext
98 lines
1.8 KiB
Plaintext
reg status_reg_t {
|
|
regwidth = 64;
|
|
accesswidth = 32;
|
|
desc = "Status register capturing wide flags and sticky bits.";
|
|
|
|
field {
|
|
sw = r;
|
|
hw = w;
|
|
onread = rclr;
|
|
reset = 0x0;
|
|
} flags_low[31:0];
|
|
|
|
field {
|
|
sw = r;
|
|
hw = w;
|
|
onread = rclr;
|
|
reset = 0x0;
|
|
} flags_high[62:32];
|
|
|
|
field {
|
|
sw = rw;
|
|
hw = r;
|
|
reset = 0x1;
|
|
} sticky_bit[63:63];
|
|
};
|
|
|
|
reg metrics_reg_t {
|
|
regwidth = 64;
|
|
accesswidth = 32;
|
|
desc = "Metrics register pairing counters with thresholds.";
|
|
|
|
field {
|
|
sw = r;
|
|
hw = w;
|
|
reset = 0x0;
|
|
} count[31:0];
|
|
|
|
field {
|
|
sw = rw;
|
|
hw = rw;
|
|
reset = 0x0;
|
|
} threshold[63:32];
|
|
};
|
|
|
|
addrmap wide_status {
|
|
status_reg_t status_blocks[16] @ 0x0;
|
|
|
|
metrics_reg_t metrics[4] @ 0x400;
|
|
|
|
reg {
|
|
regwidth = 128;
|
|
accesswidth = 32;
|
|
field {
|
|
sw = rw;
|
|
hw = rw;
|
|
reset = 0x0;
|
|
} configuration_0[31:0];
|
|
|
|
field {
|
|
sw = rw;
|
|
hw = rw;
|
|
reset = 0x0;
|
|
} configuration_1[63:32];
|
|
|
|
field {
|
|
sw = rw;
|
|
hw = rw;
|
|
reset = 0x0;
|
|
} configuration_2[95:64];
|
|
|
|
field {
|
|
sw = rw;
|
|
hw = rw;
|
|
reset = 0x0;
|
|
} configuration_3[127:96];
|
|
} configuration @ 0x800;
|
|
|
|
reg {
|
|
field {
|
|
sw = rw;
|
|
hw = rw;
|
|
reset = 0x0;
|
|
} version_major[7:0];
|
|
|
|
field {
|
|
sw = rw;
|
|
hw = rw;
|
|
reset = 0x1;
|
|
} version_minor[15:8];
|
|
|
|
field {
|
|
sw = rw;
|
|
hw = rw;
|
|
reset = 0x0100;
|
|
} build[31:16];
|
|
} version @ 0x900;
|
|
};
|