addrmap S32K3XX_MiscellaneousSystemControlModule {

addrmap {
    desc = "Generated by RenodeModelsAnalyzer";
    reg {
        name="ProcessorXType";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } PersonalityOfCPprocessorSuffix[31:0];
    } ProcessorXType @ 0x0;
    reg {
        name="ProcessorXNumber";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Provider.";
                sw = rw;
            } ProcessorNumber[0:0];
    } ProcessorXNumber @ 0x4;
    reg {
        name="ProcessorXRevision";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } ProcessorRevision[7:0];
    } ProcessorXRevision @ 0x8;
    reg {
        name="ProcessorXConfiguration0";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } L1InstructionCacheSize[31:24];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } L1InstructionCacheWays[23:16];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } L1DataCacheSize[15:8];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } L1DataCacheWays[7:0];
    } ProcessorXConfiguration0 @ 0xc;
    reg {
        name="ProcessorXConfiguration1";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } L2CacheSize[31:24];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } L2CacheWays[23:16];
    } ProcessorXConfiguration1 @ 0x10;
    reg {
        name="ProcessorXConfiguration2";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } TightlyCoupledDataMemorySize[31:24];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } InstructionTightlyCoupledMemorySize[23:16];
    } ProcessorXConfiguration2 @ 0x14;
    reg {
        name="ProcessorXConfiguration3";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } Cryptography[4:4];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } CoreMemoryProtectionUnit[3:3];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } MemoryManagementUnit[2:2];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } NEONInstructionSupport[1:1];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } FloatingPointUnit[0:0];
    } ProcessorXConfiguration3 @ 0x18;
    reg {
        name="Processor0Type";
        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];
    } Processor0Type @ 0x20;
    reg {
        name="Processor0Number";
        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];
    } Processor0Number @ 0x24;
    reg {
        name="Processor0Count";
        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];
    } Processor0Count @ 0x28;
    reg {
        name="Processor0Configuration0";
        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];
    } Processor0Configuration0 @ 0x2c;
    reg {
        name="Processor0Configuration1";
        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];
    } Processor0Configuration1 @ 0x30;
    reg {
        name="Processor0Configuration2";
        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];
    } Processor0Configuration2 @ 0x34;
    reg {
        name="Processor0Configuration3";
        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];
    } Processor0Configuration3 @ 0x38;
    reg {
        name="Processor1Type";
        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];
    } Processor1Type @ 0x40;
    reg {
        name="Processor1Number";
        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];
    } Processor1Number @ 0x44;
    reg {
        name="Processor1Count";
        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];
    } Processor1Count @ 0x48;
    reg {
        name="Processor1Configuration0";
        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];
    } Processor1Configuration0 @ 0x4c;
    reg {
        name="Processor1Configuration1";
        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];
    } Processor1Configuration1 @ 0x50;
    reg {
        name="Processor1Configuration2";
        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];
    } Processor1Configuration2 @ 0x54;
    reg {
        name="Processor1Configuration3";
        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];
    } Processor1Configuration3 @ 0x58;
    reg {
        name="Processor2Type";
        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];
    } Processor2Type @ 0x60;
    reg {
        name="Processor2Number";
        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];
    } Processor2Number @ 0x64;
    reg {
        name="Processor2Count";
        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];
    } Processor2Count @ 0x68;
    reg {
        name="Processor2Configuration0";
        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];
    } Processor2Configuration0 @ 0x6c;
    reg {
        name="Processor2Configuration1";
        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];
    } Processor2Configuration1 @ 0x70;
    reg {
        name="Processor2Configuration2";
        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];
    } Processor2Configuration2 @ 0x74;
    reg {
        name="Processor2Configuration3";
        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];
    } Processor2Configuration3 @ 0x78;
    reg {
        name="Processor3Type";
        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];
    } Processor3Type @ 0x80;
    reg {
        name="Processor3Number";
        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];
    } Processor3Number @ 0x84;
    reg {
        name="Processor3Count";
        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];
    } Processor3Count @ 0x88;
    reg {
        name="Processor3Configuration0";
        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];
    } Processor3Configuration0 @ 0x8c;
    reg {
        name="Processor3Configuration1";
        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];
    } Processor3Configuration1 @ 0x90;
    reg {
        name="Processor3Configuration2";
        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];
    } Processor3Configuration2 @ 0x94;
    reg {
        name="Processor3Configuration3";
        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];
    } Processor3Configuration3 @ 0x98;
    reg {
        name="InterruptRouterCP0InterruptStatus0";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Write, Provider.";
                sw = rw;
            } CPn_INT[3:0];
    } InterruptRouterCP0InterruptStatus0 @ 0x200;
    reg {
        name="InterruptRouterCP0InterruptGeneration0";
        regwidth=0x20;
            field {
                desc = "This field has the following custom Renode callbacks: Write.";
                sw = w;
            } Int_En[0:0];
    } InterruptRouterCP0InterruptGeneration0 @ 0x204;
    reg {
        name="InterruptRouterCP0InterruptStatus1";
        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];
    } InterruptRouterCP0InterruptStatus1 @ 0x208;
    reg {
        name="InterruptRouterCP0InterruptGeneration1";
        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];
    } InterruptRouterCP0InterruptGeneration1 @ 0x20c;
    reg {
        name="InterruptRouterCP0InterruptStatus2";
        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];
    } InterruptRouterCP0InterruptStatus2 @ 0x210;
    reg {
        name="InterruptRouterCP0InterruptGeneration2";
        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];
    } InterruptRouterCP0InterruptGeneration2 @ 0x214;
    reg {
        name="InterruptRouterCP0InterruptStatus3";
        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];
    } InterruptRouterCP0InterruptStatus3 @ 0x218;
    reg {
        name="InterruptRouterCP0InterruptGeneration3";
        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];
    } InterruptRouterCP0InterruptGeneration3 @ 0x21c;
    reg {
        name="InterruptRouterCP1InterruptStatus0";
        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];
    } InterruptRouterCP1InterruptStatus0 @ 0x220;
    reg {
        name="InterruptRouterCP1InterruptGeneration0";
        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];
    } InterruptRouterCP1InterruptGeneration0 @ 0x224;
    reg {
        name="InterruptRouterCP1InterruptStatus1";
        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];
    } InterruptRouterCP1InterruptStatus1 @ 0x228;
    reg {
        name="InterruptRouterCP1InterruptGeneration1";
        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];
    } InterruptRouterCP1InterruptGeneration1 @ 0x22c;
    reg {
        name="InterruptRouterCP1InterruptStatus2";
        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];
    } InterruptRouterCP1InterruptStatus2 @ 0x230;
    reg {
        name="InterruptRouterCP1InterruptGeneration2";
        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];
    } InterruptRouterCP1InterruptGeneration2 @ 0x234;
    reg {
        name="InterruptRouterCP1InterruptStatus3";
        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];
    } InterruptRouterCP1InterruptStatus3 @ 0x238;
    reg {
        name="InterruptRouterCP1InterruptGeneration3";
        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];
    } InterruptRouterCP1InterruptGeneration3 @ 0x23c;
    reg {
        name="InterruptRouterCP2InterruptStatus0";
        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];
    } InterruptRouterCP2InterruptStatus0 @ 0x240;
    reg {
        name="InterruptRouterCP2InterruptGeneration0";
        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];
    } InterruptRouterCP2InterruptGeneration0 @ 0x244;
    reg {
        name="InterruptRouterCP2InterruptStatus1";
        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];
    } InterruptRouterCP2InterruptStatus1 @ 0x248;
    reg {
        name="InterruptRouterCP2InterruptGeneration1";
        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];
    } InterruptRouterCP2InterruptGeneration1 @ 0x24c;
    reg {
        name="InterruptRouterCP2InterruptStatus2";
        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];
    } InterruptRouterCP2InterruptStatus2 @ 0x250;
    reg {
        name="InterruptRouterCP2InterruptGeneration2";
        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];
    } InterruptRouterCP2InterruptGeneration2 @ 0x254;
    reg {
        name="InterruptRouterCP2InterruptStatus3";
        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];
    } InterruptRouterCP2InterruptStatus3 @ 0x258;
    reg {
        name="InterruptRouterCP2InterruptGeneration3";
        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];
    } InterruptRouterCP2InterruptGeneration3 @ 0x25c;
    reg {
        name="InterruptRouterCP3InterruptStatus0";
        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];
    } InterruptRouterCP3InterruptStatus0 @ 0x260;
    reg {
        name="InterruptRouterCP3InterruptGeneration0";
        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];
    } InterruptRouterCP3InterruptGeneration0 @ 0x264;
    reg {
        name="InterruptRouterCP3InterruptStatus1";
        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];
    } InterruptRouterCP3InterruptStatus1 @ 0x268;
    reg {
        name="InterruptRouterCP3InterruptGeneration1";
        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];
    } InterruptRouterCP3InterruptGeneration1 @ 0x26c;
    reg {
        name="InterruptRouterCP3InterruptStatus2";
        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];
    } InterruptRouterCP3InterruptStatus2 @ 0x270;
    reg {
        name="InterruptRouterCP3InterruptGeneration2";
        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];
    } InterruptRouterCP3InterruptGeneration2 @ 0x274;
    reg {
        name="InterruptRouterCP3InterruptStatus3";
        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];
    } InterruptRouterCP3InterruptStatus3 @ 0x278;
    reg {
        name="InterruptRouterCP3InterruptGeneration3";
        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];
    } InterruptRouterCP3InterruptGeneration3 @ 0x27c;
    reg {
        name="InterruptRouterConfiguration";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } Lock[31:31];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } CP3AsTrustedCore[3:3];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } CP2AsTrustedCore[2:2];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } CP1AsTrustedCore[1:1];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } CP0AsTrustedCore[0:0];
    } InterruptRouterConfiguration @ 0x400;
    reg {
        name="MemoryExecutionControl";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } HardLock[31:31];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } SoftLock[30:30];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } TransactionControlForCortex_M7_3DTCM[23:23];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } TransactionControlForCortex_M7_2DTCM[22:22];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } TransactionControlForCortex_M7_1DTCM[21:21];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } TransactionControlForCortex_M7_0DTCM[20:20];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } DisableD0andD1TCMExecutionForCortex_M7_3[19:19];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } DisableD0andD1TCMExecutionForCortex_M7_2[18:18];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } D0andD1TCMExecutionForCortex_M7_1[17:17];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } D0AndD1TCMExecutionForCortex_M7_0[16:16];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } TransactionControlForCortex_M7_3ITCM[15:15];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } TransactionControlForCortex_M7_2ITCM[14:14];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } TransactionControlForCortex_M7_1ITCM[13:13];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } TransactionControlForCortex_M7_0ITCM[12:12];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } ITCMExecutionForCortex_M7_3[11:11];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } ITCMExecutionForCortex_M7_2[10:10];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } ITCMExecutionForCortex_M7_1[9:9];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } ITCMExecutionForCortex_M7_0[8:8];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } TransactionControlForPRAM2[2:2];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } TransactionControlForPRAM1[1:1];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } TransactionControlForPRAM0[0:0];
    } MemoryExecutionControl @ 0x500;
    reg {
        name="EnableInterconnectErrorDetection0";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } AddressCheckForCortex_M7_1_TCM[29:29];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } WriteDataCheckForCortex_M7_1_TCM[28:28];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } AddressCheckForCortex_M7_0_TCM[27:27];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } WriteDataCheckForCortex_M7_0_TCM[26:26];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } AddressCheckForAIPS2[25:25];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } WriteDataCheckForAIPS2[24:24];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } AddressCheckForAIPS1[23:23];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } WriteDataCheckForAIPS1[22:22];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } AddressCheckForAIPS0[21:21];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } WriteDataCheckForAIPS0[20:20];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } AddressCheckForQuadSPI[19:19];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } WriteDataCheckForQuadSPI[18:18];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } AddressCheckForPRAM1[15:15];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } WriteDataCheckForPRAM1[14:14];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } AddressCheckForPRAM0[13:13];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } WriteDataCheckForPRAM0[12:12];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } EnableAddressCheckForPF2[11:11];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } AddressCheckForPF1[10:10];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } AddressCheckForPF0[9:9];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } ReadDataCheckForCortex_M7_1_AHBP[7:7];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } ReadDataCheckForCortex_M7_1_AHBM[6:6];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } ReadDataCheckForENET[5:5];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } ReadDataCheckForHSE_B[4:4];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } ReadDataCheckForeDMA[2:2];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } ReadDataCheckForCortex_M7_0_AHBP[1:1];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } ReadDataCheckForCortex_M7_0_AHBM[0:0];
    } EnableInterconnectErrorDetection0 @ 0x600;
    reg {
        name="EnableInterconnectErrorDetection1";
        regwidth=0x20;
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } TCMGasketAddressCheck[24:24];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } SlaveCheckAcceleratorResultM1GasketAddressCheck[23:23];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } SlaveCheckAcceleratorResultM1GasketWriteDataCheck[22:22];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } SlaveCheckAcceleratorAddress[21:21];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } MasterCheckAcceleratorFeed[20:20];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } MasterCheckAcceleratorResult[19:19];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } EnableReadDataCheckCortex_M7_3_AHBP[18:18];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } EnableReadDataCheckCortex_M7_3_AHBM[17:17];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } EnableAddressCheckCortex_M7_2_TCM[15:15];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } EnableWriteDataCheckCortex_M7_2_TCM[14:14];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } EnableAddressCheckCortex_M7_3_TCM[13:13];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } EnableWriteDataCheckCortex_M7_3_TCM[12:12];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } EnableAddressCheckPRAM2[11:11];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } EnableWriteDataCheckPRAM2[10:10];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } MasterCheckENET1[7:7];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } EnableAddressCheckeDMAS1[6:6];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } EnableAddressCheckeDMAS0[5:5];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } EnableAddressCheckPFlash3[4:4];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } EnableReadDataCheckCortex_M7_2_AHBP[3:3];
            field {
                desc = "The field is a Tag.";
                sw = rw;
            } EnableReadDataCheckCortex_M7_2_AHBM[2:2];
    } EnableInterconnectErrorDetection1 @ 0x604;
    reg {
        name="InterruptRouterSharedPeripheralRoutingControl0";
        regwidth=0x10;
            field {
                desc = "This field has the following custom Renode callbacks: Write.";
                sw = rw;
            } Lock[15:15];
    } InterruptRouterSharedPeripheralRoutingControl0 [240]@ 0x880 += 2;
} Registers_addrmap;


};