AnsweredAssumed Answered

imx6sx M4 run program at address < 0x20000000

Question asked by Jas Math on Mar 24, 2017
Latest reply on Mar 24, 2017 by igorpadykov

In the imx6sx reference manual it quotes the following:

 

Instruction fetch requests to the code bus are not registered. It is recommended that
performance critical code be located such that it fetches from the ICode bus interface as
defined by addresses < 0x2000_0000 (the system bus interface includes the addresses > =
0x2000_0000 and < 0xE000_0000 and the Private Peripheral Bus is used for addresses
>= 0xE000_0000).

 

This would imply TCM is the best place to run code from, however it restricts the application size to 64K. In the M4 memory map there is some memory below TCM, 256Mb (1000_0000 1FFF_7FFF) which is named as DDR Code alias (see below). Can this be used for application code? If yes what the address space on the A9 side to load the code into this space?

 

2000_0000 2000_7FFF 32 KB TCMU
1FFF_8000 1FFF_FFFF 32 KB TCML
1000_0000 1FFF_7FFF 256 MB -64 KB DDR Code alias

Outcomes