Package: otbn_reg_pkg

Description

Copyright lowRISC contributors.
Licensed under the Apache License, Version 2.0, see LICENSE for details.
SPDX-License-Identifier: Apache-2.0

Register Package auto-generated by reggen containing data structure

Constants

Name Type Value Description
NumAlerts int 2
BlockAw int 16 Address widths within the block
BlockAw logic [BlockAw-1:0] undefined Register offsets
BlockAw logic [BlockAw-1:0] 4
BlockAw logic [BlockAw-1:0] 8
BlockAw logic [BlockAw-1:0] c
BlockAw logic [BlockAw-1:0] 10
BlockAw logic [BlockAw-1:0] 14
BlockAw logic [BlockAw-1:0] 18
BlockAw logic [BlockAw-1:0] c
BlockAw logic [BlockAw-1:0] 20
BlockAw logic [BlockAw-1:0] 24
OTBN_INTR_TEST_RESVAL logic [0:0] undefined Reset values for hwext registers and their fields
OTBN_INTR_TEST_DONE_RESVAL logic [0:0] undefined
OTBN_ALERT_TEST_RESVAL logic [1:0] undefined
OTBN_ALERT_TEST_FATAL_RESVAL logic [0:0] undefined
OTBN_ALERT_TEST_RECOV_RESVAL logic [0:0] undefined
OTBN_CMD_RESVAL logic [7:0] undefined
OTBN_CMD_CMD_RESVAL logic [7:0] undefined
OTBN_STATUS_RESVAL logic [7:0] undefined
OTBN_STATUS_STATUS_RESVAL logic [7:0] undefined
OTBN_INSN_CNT_RESVAL logic [31:0] undefined
OTBN_INSN_CNT_INSN_CNT_RESVAL logic [31:0] logic [BlockAw-1:0]
OTBN_IMEM_SIZE int unsigned 1000
BlockAw logic [BlockAw-1:0] 8000
OTBN_DMEM_SIZE int unsigned 1000
OTBN_PERMIT logic [3:0] undefined Register width information to check illegal writes

Types

Name Type Description
otbn_reg2hw_intr_state_reg_t struct packed {
logic q;
}
////////////////////////// Typedefs for registers // //////////////////////////
otbn_reg2hw_intr_enable_reg_t struct packed {
logic q;
}
otbn_reg2hw_intr_test_reg_t struct packed {
logic q;
logic qe;
}
otbn_reg2hw_alert_test_reg_t struct packed {
struct packed {
logic q;
logic qe;
} fatal;
struct packed {
logic q;
logic qe;
} recov;
}
otbn_reg2hw_cmd_reg_t struct packed {
logic [7:0] q;
logic qe;
}
otbn_reg2hw_start_addr_reg_t struct packed {
logic [31:0] q;
}
otbn_hw2reg_intr_state_reg_t struct packed {
logic d;
logic de;
}
otbn_hw2reg_status_reg_t struct packed {
logic [7:0] d;
}
otbn_hw2reg_err_bits_reg_t struct packed {
struct packed {
logic d;
logic de;
} bad_data_addr;
struct packed {
logic d;
logic de;
} bad_insn_addr;
struct packed {
logic d;
logic de;
} call_stack;
struct packed {
logic d;
logic de;
} illegal_insn;
struct packed {
logic d;
logic de;
} loop;
struct packed {
logic d;
logic de;
} fatal_imem;
struct packed {
logic d;
logic de;
} fatal_dmem;
struct packed {
logic d;
logic de;
} fatal_reg;
struct packed {
logic d;
logic de;
} fatal_illegal_bus_access;
struct packed {
logic d;
logic de;
} fatal_lifecycle_escalation;
}
otbn_hw2reg_fatal_alert_cause_reg_t struct packed {
struct packed {
logic d;
logic de;
} bus_integrity_error;
struct packed {
logic d;
logic de;
} imem_error;
struct packed {
logic d;
logic de;
} dmem_error;
struct packed {
logic d;
logic de;
} reg_error;
struct packed {
logic d;
logic de;
} illegal_bus_access;
struct packed {
logic d;
logic de;
} lifecycle_escalation;
}
otbn_hw2reg_insn_cnt_reg_t struct packed {
logic [31:0] d;
}
otbn_reg2hw_t struct packed {
otbn_reg2hw_intr_state_reg_t intr_state;
otbn_reg2hw_intr_enable_reg_t intr_enable;
otbn_reg2hw_intr_test_reg_t intr_test;
otbn_reg2hw_alert_test_reg_t alert_test;
otbn_reg2hw_cmd_reg_t cmd;
otbn_reg2hw_start_addr_reg_t start_addr;
}
Register -> HW type
otbn_hw2reg_t struct packed {
otbn_hw2reg_intr_state_reg_t intr_state;
otbn_hw2reg_status_reg_t status;
otbn_hw2reg_err_bits_reg_t err_bits;
otbn_hw2reg_fatal_alert_cause_reg_t fatal_alert_cause;
otbn_hw2reg_insn_cnt_reg_t insn_cnt;
}
HW -> register type
otbn_id_e enum int {
OTBN_INTR_STATE,
OTBN_INTR_ENABLE,
OTBN_INTR_TEST,
OTBN_ALERT_TEST,
OTBN_CMD,
OTBN_STATUS,
OTBN_ERR_BITS,
OTBN_START_ADDR,
OTBN_FATAL_ALERT_CAUSE,
OTBN_INSN_CNT }
Register index