Hello @DaveG1
Let me show the steps that I tipically do. This is my way to purposely place variables on a desired section of the flash.
1 Split the flash. You can modify the size and adress to your desired preference, I only made a simple spit.

2 Provide a meaningfull name to the flash area, I used DATA_FLASH.
3 Create an extra linker section. I created CustomSection in the DATA_FLASH area I created earlier. The type is rodata, as I will place a constant array there.

4 Use a macro to place this variable.
__attribute__((section("CustomSection"))) uint8_t array_4_davie[1024] ={1,2,3,4,5,6 };
5 Re-compile and verify that the macro does works.

As you can see in the debug output the array_4_davie is placed in Custom section, which belongs to DATA_FLASH section.
The IDE does this whevener you want to place a variable in NON_CACHE area.
AT_NONCACHEABLE_SECTION_ALIGN(static USHORT frame_buffer[2][FRAME_BUFFER_PIXELS], FRAME_BUFFER_ALIGN);
But there are more methods, like using cr section macros library ( we have some posts for this already in the NXP community )
Diego.