addrmap DWT {

addrmap {
    desc = "Generated by RenodeModelsAnalyzer";
    reg {
        name="Control";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Write, Provider.";
                sw = rw;
            } CYCCNTENA[0:0];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } POSTPRESET[4:1];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } POSTCNT[8:5];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } CYCTAP[9:9];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } SYNCTAP[11:10];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } PCSAMPLEENA[12:12];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } EXCTRCENA[16:16];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } CPIEVTENA[17:17];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } EXCEVTENA[18:18];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } SLEEPEVTENA[19:19];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } LSUEVTENA[20:20];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } FOLDEVTENA[21:21];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } CYCEVTEN[22:22];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } NUMCOMP[31:28];
    } Control @ 0x0;
    reg {
        name="CycleCounter";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Write, Provider.";
                sw = rw;
            } CYCCNT[31:0];
    } CycleCounter @ 0x4;
    reg {
        name="Count";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } CPICNT[7:0];
    } Count @ 0x8;
    reg {
        name="ExceptionOverheadCounter";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } EXCCNT[7:0];
    } ExceptionOverheadCounter @ 0xc;
    reg {
        name="SleepCounter";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } SLEEPCNT[7:0];
    } SleepCounter @ 0x10;
    reg {
        name="LoadStoreUnitCounter";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } LSUCNT[7:0];
    } LoadStoreUnitCounter @ 0x14;
    reg {
        name="FoldCounter";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } FOLDCNT[7:0];
    } FoldCounter @ 0x18;
    reg {
        name="ProgramCounterSample";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } EIASAMPLE[31:0];
    } ProgramCounterSample @ 0x1c;
    reg {
        name="Comparator0";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } COMP[31:0];
    } Comparator0 @ 0x20;
    reg {
        name="Mask0";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } MASK[3:0];
    } Mask0 @ 0x24;
    reg {
        name="Function0";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } FUNCTION[0:0];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } EMITRANGE[5:5];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } CYCMATCH[7:7];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } DATAVMATCH[8:8];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } LNK1ENA[9:9];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } DATAVSIZE[11:10];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } DATAVADDR0[15:12];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } DATAVADDR1[19:16];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } MATCHED[24:24];
    } Function0 @ 0x28;
    reg {
        name="Comparator1";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } COMP[31:0];
    } Comparator1 @ 0x30;
    reg {
        name="Mask1";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } MASK[3:0];
    } Mask1 @ 0x34;
    reg {
        name="Function1";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } FUNCTION[0:0];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } EMITRANGE[5:5];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } CYCMATCH[7:7];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } DATAVMATCH[8:8];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } LNK1ENA[9:9];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } DATAVSIZE[11:10];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } DATAVADDR0[15:12];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } DATAVADDR1[19:16];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } MATCHED[24:24];
    } Function1 @ 0x38;
    reg {
        name="Comparator2";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } COMP[31:0];
    } Comparator2 @ 0x40;
    reg {
        name="Mask2";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } MASK[3:0];
    } Mask2 @ 0x44;
    reg {
        name="Function2";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } FUNCTION[0:0];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } EMITRANGE[5:5];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } CYCMATCH[7:7];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } DATAVMATCH[8:8];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } LNK1ENA[9:9];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } DATAVSIZE[11:10];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } DATAVADDR0[15:12];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } DATAVADDR1[19:16];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } MATCHED[24:24];
    } Function2 @ 0x48;
    reg {
        name="Comparator3";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } COMP[31:0];
    } Comparator3 @ 0x50;
    reg {
        name="Mask3";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } MASK[3:0];
    } Mask3 @ 0x54;
    reg {
        name="Function3";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } FUNCTION[0:0];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } EMITRANGE[5:5];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } CYCMATCH[7:7];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } DATAVMATCH[8:8];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } LNK1ENA[9:9];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } DATAVSIZE[11:10];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } DATAVADDR0[15:12];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } DATAVADDR1[19:16];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } MATCHED[24:24];
    } Function3 @ 0x58;
    reg {
        name="PeripheralID4";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
                reset=32'b100;
            } PID[31:0];
    } PeripheralID4 @ 0xfd0;
    reg {
        name="PeripheralID5";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } PID[31:0];
    } PeripheralID5 @ 0xfd4;
    reg {
        name="PeripheralID6";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } PID[31:0];
    } PeripheralID6 @ 0xfd8;
    reg {
        name="PeripheralID7";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } PID[31:0];
    } PeripheralID7 @ 0xfdc;
    reg {
        name="PeripheralID0";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
                reset=32'b10;
            } PID[31:0];
    } PeripheralID0 @ 0xfe0;
    reg {
        name="PeripheralID1";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
                reset=32'b10110000;
            } PID[31:0];
    } PeripheralID1 @ 0xfe4;
    reg {
        name="PeripheralID2";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
                reset=32'b11011;
            } PID[31:0];
    } PeripheralID2 @ 0xfe8;
    reg {
        name="PeripheralID3";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } PID[31:0];
    } PeripheralID3 @ 0xfec;
    reg {
        name="ComponentID0";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
                reset=32'b1101;
            } CID[31:0];
    } ComponentID0 @ 0xff0;
    reg {
        name="ComponentID1";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
                reset=32'b11100000;
            } CID[31:0];
    } ComponentID1 @ 0xff4;
    reg {
        name="ComponentID2";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
                reset=32'b101;
            } CID[31:0];
    } ComponentID2 @ 0xff8;
    reg {
        name="ComponentID3";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
                reset=32'b10110001;
            } CID[31:0];
    } ComponentID3 @ 0xffc;
} Registers_addrmap;


};