addrmap OpenTitan_AES {

addrmap {
    desc = "Generated by RenodeModelsAnalyzer";
    reg {
        name="AlertTest";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Write.";
                sw = w;
            } recov_ctrl_update_err[0:0];
            field {
                desc = "This field has the following custom Renode callbacks: Write.";
                sw = w;
            } fatal_fault[1:1];
    } AlertTest @ 0x0;
    reg {
        name="InitialKeyShare0_0";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Write.";
                sw = w;
            } key_share_0_part[31:0];
    } InitialKeyShare0_0 [8]@ 0x4 += 4;
    reg {
        name="InitialKeyShare1_0";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Write.";
                sw = w;
            } key_share_1_part[31:0];
    } InitialKeyShare1_0 [8]@ 0x24 += 4;
    reg {
        name="InitializationVector_0";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Write.";
                sw = w;
            } iv_part[31:0];
    } InitializationVector_0 [4]@ 0x44 += 4;
    reg {
        name="InputData_0";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Write.";
                sw = w;
            } data_in_part[31:0];
    } InputData_0 [4]@ 0x54 += 4;
    reg {
        name="OutputData_0";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Provider.";
                sw = r;
            } data_out_part[31:0];
    } OutputData_0 [4]@ 0x64 += 4;
    reg {
        name="Control";
        desc = "This register has the following custom Renode callbacks: Write";
        regwidth=0x20;
            field {
                sw = rw;
            } OPERATION[1:0];
            field {
                sw = rw;
                reset=6'b110000;
            } MODE[7:2];
            field {
                sw = rw;
            } KEY_LEN[10:8];
            field {
                sw = rw;
            } SIDELOAD[11:11];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } PRNG_RESEED_RATE[14:12];
            field {
                sw = rw;
            } MANUAL_OPERATION[15:15];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } FORCE_ZERO_MASKS[16:16];
    } Control @ 0x74;
    reg {
        name="AuxiliaryControl";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
                reset=1'b1;
            } KEY_TOUCH_FORCES_RESEED[0:0];
    } AuxiliaryControl @ 0x78;
    reg {
        name="AuxiliaryControlWriteEnable";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
                reset=1'b1;
            } CTRL_AUX_REGWEN[0:0];
    } AuxiliaryControlWriteEnable @ 0x7c;
    reg {
        name="Trigger";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Write.";
                sw = w;
            } START[0:0];
            field {
                desc = "This field has the following custom Renode callbacks: Write.";
                sw = w;
                reset=1'b1;
            } KEY_IV_DATA_IN_CLEAR[1:1];
            field {
                desc = "This field has the following custom Renode callbacks: Write.";
                sw = w;
                reset=1'b1;
            } DATA_OUT_CLEAR[2:2];
            field {
                desc = "The field is a Tag.";
                sw = rw;
                reset=1'b1;
            } PRNG_RESEED[3:3];
    } Trigger @ 0x80;
    reg {
        name="Status";
        regwidth=0x20;
            field {
                sw = r;
                reset=1'b1;
            } IDLE[0:0];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } STALL[1:1];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } OUTPUT_LOST[2:2];
            field {
                sw = r;
            } OUTPUT_VALID[3:3];
            field {
                desc = "This field has the following custom Renode callbacks: Provider.";
                sw = r;
            } INPUT_READY[4:4];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } ALERT_RECOV_CTRL_UPDATE_ERR[5:5];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } ALERT_FATAL_FAULT[6:6];
    } Status @ 0x84;
} Registers_addrmap;


};