As we all know, i.MX RT MCU has two TCMs (Tightly-Coupled Memory): D-TCM and I-TCM, although in fact they are both FlexRAM. In theory, data should be placed in D-TCM, and code/instructions should be placed in I-TCM.
In Using the i.MX RT FlexRAM, Application Note, Rev. 3, 01/2021, section 3.1.2.1.Code memory footprint, the example places the interrupt vector table and related routines in the I-TCM:
3.1.2.1.Code memory footprint
The interrupt vector table and a couple of critical interrupt service routines must be placed in the ITCM (a 64-bit single-cycle access memory can pre-fetch 64-bit, 4 x 16-bit, or 2 x 32-bit instructions) to speed up its execution time. The interrupt vectors and corresponding interrupt service routines take 46 kB of memory.
I'm wondering about this because I think the interrupt vector table should be classified as data, which would be more appropriate in the D-TCM. I can't understand why the example arranges memory this way. Is my thinking wrong?