addrmap OpenTitan_BigNumberAccelerator {

addrmap {
    desc = "Generated by RenodeModelsAnalyzer";
    reg {
        name="InterruptState";
        desc = "This register has the following custom Renode callbacks: Write";
        regwidth=0x20;
            field {
                sw = rw;
                onwrite = woclr;
            } done[0:0];
    } InterruptState @ 0x0;
    reg {
        name="InterruptEnable";
        desc = "This register has the following custom Renode callbacks: Write";
        regwidth=0x20;
            field {
                sw = rw;
            } done[0:0];
    } InterruptEnable @ 0x4;
    reg {
        name="InterruptTest";
        desc = "This register has the following custom Renode callbacks: Write";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Write.";
                sw = w;
            } done[0:0];
    } InterruptTest @ 0x8;
    reg {
        name="AlertTest";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Write.";
                sw = w;
            } fatal[0:0];
            field {
                desc = "This field has the following custom Renode callbacks: Write.";
                sw = w;
            } recov[1:1];
    } AlertTest @ 0xc;
    reg {
        name="Command";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Write.";
                sw = w;
            } cmd[7:0];
    } Command @ 0x10;
    reg {
        name="Control";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Write.";
                sw = rw;
            } software_errs_fatal[0:0];
    } Control @ 0x14;
    reg {
        name="Status";
        regwidth=0x20;
            field {
                sw = r;
            } status[7:0];
    } Status @ 0x18;
    reg {
        name="OperationResult";
        desc = "This register has the following custom Renode callbacks: Write";
        regwidth=0x20;
            field {
                sw = rw;
            } bad_data_addr[0:0];
            field {
                sw = rw;
            } bad_insn_addr[1:1];
            field {
                sw = rw;
            } call_stack[2:2];
            field {
                sw = rw;
            } illegal_insn[3:3];
            field {
                sw = rw;
            } loop[4:4];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } key_invalid[5:5];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } rnd_rep_chk_fail[6:6];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } rnd_fips_chk_fail[7:7];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } imem_intg_violation[16:16];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } dmem_intg_violation[17:17];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } reg_intg_violation[18:18];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } bus_intg_violation[19:19];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } bad_internal_state[20:20];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } illegal_bus_access[21:21];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } lifecycle_escalation[22:22];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } fatal_software[23:23];
    } OperationResult @ 0x1c;
    reg {
        name="FatalAlertCause";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } imem_intg_violation[0:0];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } dmem_intg_violation[1:1];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } reg_intg_violation[2:2];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } bus_intg_violation[3:3];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } bad_internal_state[4:4];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } illegal_bus_access[5:5];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } lifecycle_escalation[6:6];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } fatal_software[7:7];
    } FatalAlertCause @ 0x20;
    reg {
        name="InstructionCount";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Provider.";
                sw = r;
            } insn_cnt[31:0];
    } InstructionCount @ 0x24;
    reg {
        name="A32bitCRCchecksumofdatawrittentomemory";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } checksum[31:0];
    } A32bitCRCchecksumofdatawrittentomemory @ 0x28;
    reg {
        name="InstructionMemoryAccess";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Write, Provider.";
                sw = rw;
            } InstructionMemoryAccessregId[31:0];
    } InstructionMemoryAccess [1024]@ 0x4000 += 4;
    reg {
        name="DataMemoryAccess";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Write, Provider.";
                sw = rw;
            } DataMemoryAccessregId[31:0];
    } DataMemoryAccess [1024]@ 0x8000 += 4;
} Registers_addrmap;


};