addrmap Cadence_TTC {

addrmap {
    desc = "Generated by RenodeModelsAnalyzer";
    reg {
        name="ClockControl1";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } ExternalClockEdge[6:6];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } ClockSource[5:5];
            field {
                desc = "This field has the following custom Renode callbacks: Write, Provider.";
                sw = rw;
            } PrescalerValue[4:1];
            field {
                desc = "This field has the following custom Renode callbacks: Write, Provider.";
                sw = rw;
            } PrescalerEnable[0:0];
    } ClockControl1 @ 0x0;
    reg {
        name="ClockControl2";
        desc = "Could not determine register's width, guessed 8 bits.";
        regwidth=0x8;
            field {
                desc = "This is a dummy r/w field, generated just to show the register in specs";
                sw = rw;
            } DUMMY[7:0];
    } ClockControl2 @ 0x4;
    reg {
        name="ClockControl3";
        desc = "Could not determine register's width, guessed 8 bits.";
        regwidth=0x8;
            field {
                desc = "This is a dummy r/w field, generated just to show the register in specs";
                sw = rw;
            } DUMMY[7:0];
    } ClockControl3 @ 0x8;
    reg {
        name="CounterControl1";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } WaveformPolarity[6:6];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } WaveformOutputDisable[5:5];
            field {
                desc = "This field has the following custom Renode callbacks: Write, Provider.";
                sw = rw;
            } Reset[4:4];
            field {
                desc = "This field has the following custom Renode callbacks: Write, Provider.";
                sw = rw;
            } MatchEnable[3:3];
            field {
                desc = "This field has the following custom Renode callbacks: Write, Provider.";
                sw = rw;
            } CounterDecrement[2:2];
            field {
                desc = "This field has the following custom Renode callbacks: Write, Provider.";
                sw = rw;
            } CounterMode[1:1];
            field {
                desc = "This field has the following custom Renode callbacks: Write, Provider.";
                sw = rw;
            } Disable[0:0];
    } CounterControl1 @ 0xc;
    reg {
        name="CounterControl2";
        desc = "Could not determine register's width, guessed 8 bits.";
        regwidth=0x8;
            field {
                desc = "This is a dummy r/w field, generated just to show the register in specs";
                sw = rw;
            } DUMMY[7:0];
    } CounterControl2 @ 0x10;
    reg {
        name="CounterControl3";
        desc = "Could not determine register's width, guessed 8 bits.";
        regwidth=0x8;
            field {
                desc = "This is a dummy r/w field, generated just to show the register in specs";
                sw = rw;
            } DUMMY[7:0];
    } CounterControl3 @ 0x14;
    reg {
        name="CounterValue1";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Provider.";
                sw = r;
            } CounterValue[31:0];
    } CounterValue1 @ 0x18;
    reg {
        name="CounterValue2";
        desc = "Could not determine register's width, guessed 8 bits.";
        regwidth=0x8;
            field {
                desc = "This is a dummy r/w field, generated just to show the register in specs";
                sw = rw;
            } DUMMY[7:0];
    } CounterValue2 @ 0x1c;
    reg {
        name="CounterValue3";
        desc = "Could not determine register's width, guessed 8 bits.";
        regwidth=0x8;
            field {
                desc = "This is a dummy r/w field, generated just to show the register in specs";
                sw = rw;
            } DUMMY[7:0];
    } CounterValue3 @ 0x20;
    reg {
        name="CounterInterval1";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Write, Provider.";
                sw = rw;
            } IntervalCounter[31:0];
    } CounterInterval1 @ 0x24;
    reg {
        name="CounterInterval2";
        desc = "Could not determine register's width, guessed 8 bits.";
        regwidth=0x8;
            field {
                desc = "This is a dummy r/w field, generated just to show the register in specs";
                sw = rw;
            } DUMMY[7:0];
    } CounterInterval2 @ 0x28;
    reg {
        name="CounterInterval3";
        desc = "Could not determine register's width, guessed 8 bits.";
        regwidth=0x8;
            field {
                desc = "This is a dummy r/w field, generated just to show the register in specs";
                sw = rw;
            } DUMMY[7:0];
    } CounterInterval3 @ 0x2c;
    reg {
        name="Match1Counter1";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Write, Provider.";
                sw = rw;
            } Match1Value[31:0];
    } Match1Counter1 @ 0x30;
    reg {
        name="Match1Counter2";
        desc = "Could not determine register's width, guessed 8 bits.";
        regwidth=0x8;
            field {
                desc = "This is a dummy r/w field, generated just to show the register in specs";
                sw = rw;
            } DUMMY[7:0];
    } Match1Counter2 @ 0x34;
    reg {
        name="Match1Counter3";
        desc = "Could not determine register's width, guessed 8 bits.";
        regwidth=0x8;
            field {
                desc = "This is a dummy r/w field, generated just to show the register in specs";
                sw = rw;
            } DUMMY[7:0];
    } Match1Counter3 @ 0x38;
    reg {
        name="Match2Counter1";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Write, Provider.";
                sw = rw;
            } Match1Value[31:0];
    } Match2Counter1 @ 0x3c;
    reg {
        name="Match2Counter2";
        desc = "Could not determine register's width, guessed 8 bits.";
        regwidth=0x8;
            field {
                desc = "This is a dummy r/w field, generated just to show the register in specs";
                sw = rw;
            } DUMMY[7:0];
    } Match2Counter2 @ 0x40;
    reg {
        name="Match2Counter3";
        desc = "Could not determine register's width, guessed 8 bits.";
        regwidth=0x8;
            field {
                desc = "This is a dummy r/w field, generated just to show the register in specs";
                sw = rw;
            } DUMMY[7:0];
    } Match2Counter3 @ 0x44;
    reg {
        name="Match3Counter1";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Write, Provider.";
                sw = rw;
            } Match1Value[31:0];
    } Match3Counter1 @ 0x48;
    reg {
        name="Match3Counter2";
        desc = "Could not determine register's width, guessed 8 bits.";
        regwidth=0x8;
            field {
                desc = "This is a dummy r/w field, generated just to show the register in specs";
                sw = rw;
            } DUMMY[7:0];
    } Match3Counter2 @ 0x4c;
    reg {
        name="Match3Counter3";
        desc = "Could not determine register's width, guessed 8 bits.";
        regwidth=0x8;
            field {
                desc = "This is a dummy r/w field, generated just to show the register in specs";
                sw = rw;
            } DUMMY[7:0];
    } Match3Counter3 @ 0x50;
    reg {
        name="InterruptStatus1";
        desc = "This register has the following custom Renode callbacks: Read";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } EventTimerOverflowInterrupt[5:5];
            field {
                desc = "This field has the following custom Renode callbacks: Read, Provider.";
                sw = r;
                onread = rclr;
            } CounterInterrupt[4:4];
            field {
                desc = "This field has the following custom Renode callbacks: Read, Provider.";
                sw = r;
                onread = rclr;
            } Match3Interrupt[3:3];
            field {
                desc = "This field has the following custom Renode callbacks: Read, Provider.";
                sw = r;
                onread = rclr;
            } Match2Interrupt[2:2];
            field {
                desc = "This field has the following custom Renode callbacks: Read, Provider.";
                sw = r;
                onread = rclr;
            } Match1Interrupt[1:1];
            field {
                desc = "This field has the following custom Renode callbacks: Read, Provider.";
                sw = r;
                onread = rclr;
            } IntervalInterrupt[0:0];
    } InterruptStatus1 @ 0x54;
    reg {
        name="InterruptStatus2";
        desc = "Could not determine register's width, guessed 8 bits.";
        regwidth=0x8;
            field {
                desc = "This is a dummy r/w field, generated just to show the register in specs";
                sw = rw;
            } DUMMY[7:0];
    } InterruptStatus2 @ 0x58;
    reg {
        name="InterruptStatus3";
        desc = "Could not determine register's width, guessed 8 bits.";
        regwidth=0x8;
            field {
                desc = "This is a dummy r/w field, generated just to show the register in specs";
                sw = rw;
            } DUMMY[7:0];
    } InterruptStatus3 @ 0x5c;
    reg {
        name="InterruptEnable1";
        desc = "This register has the following custom Renode callbacks: Write";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } EventTimerOverflowInterruptEnable[5:5];
            field {
                desc = "This field has the following custom Renode callbacks: Write, Provider.";
                sw = rw;
            } CounterInterruptEnable[4:4];
            field {
                desc = "This field has the following custom Renode callbacks: Write, Provider.";
                sw = rw;
            } Match3InterruptEnable[3:3];
            field {
                desc = "This field has the following custom Renode callbacks: Write, Provider.";
                sw = rw;
            } Match2InterruptEnable[2:2];
            field {
                desc = "This field has the following custom Renode callbacks: Write, Provider.";
                sw = rw;
            } Match1InterruptEnable[1:1];
            field {
                desc = "This field has the following custom Renode callbacks: Write, Provider.";
                sw = rw;
            } IntervalInterruptEnable[0:0];
    } InterruptEnable1 @ 0x60;
    reg {
        name="InterruptEnable2";
        desc = "Could not determine register's width, guessed 8 bits.";
        regwidth=0x8;
            field {
                desc = "This is a dummy r/w field, generated just to show the register in specs";
                sw = rw;
            } DUMMY[7:0];
    } InterruptEnable2 @ 0x64;
    reg {
        name="InterruptEnable3";
        desc = "Could not determine register's width, guessed 8 bits.";
        regwidth=0x8;
            field {
                desc = "This is a dummy r/w field, generated just to show the register in specs";
                sw = rw;
            } DUMMY[7:0];
    } InterruptEnable3 @ 0x68;
    reg {
        name="EventControlTimer1";
        desc = "Could not determine register's width, guessed 8 bits.";
        regwidth=0x8;
            field {
                desc = "This is a dummy r/w field, generated just to show the register in specs";
                sw = rw;
            } DUMMY[7:0];
    } EventControlTimer1 @ 0x6c;
    reg {
        name="EventControlTimer2";
        desc = "Could not determine register's width, guessed 8 bits.";
        regwidth=0x8;
            field {
                desc = "This is a dummy r/w field, generated just to show the register in specs";
                sw = rw;
            } DUMMY[7:0];
    } EventControlTimer2 @ 0x70;
    reg {
        name="EventControlTimer3";
        desc = "Could not determine register's width, guessed 8 bits.";
        regwidth=0x8;
            field {
                desc = "This is a dummy r/w field, generated just to show the register in specs";
                sw = rw;
            } DUMMY[7:0];
    } EventControlTimer3 @ 0x74;
    reg {
        name="EventRegister1";
        desc = "Could not determine register's width, guessed 8 bits.";
        regwidth=0x8;
            field {
                desc = "This is a dummy r/w field, generated just to show the register in specs";
                sw = rw;
            } DUMMY[7:0];
    } EventRegister1 @ 0x78;
    reg {
        name="EventRegister2";
        desc = "Could not determine register's width, guessed 8 bits.";
        regwidth=0x8;
            field {
                desc = "This is a dummy r/w field, generated just to show the register in specs";
                sw = rw;
            } DUMMY[7:0];
    } EventRegister2 @ 0x7c;
    reg {
        name="EventRegister3";
        desc = "Could not determine register's width, guessed 8 bits.";
        regwidth=0x8;
            field {
                desc = "This is a dummy r/w field, generated just to show the register in specs";
                sw = rw;
            } DUMMY[7:0];
    } EventRegister3 @ 0x80;
} Registers_addrmap;


};