NCACHE region in internal RAM IMXRT1021

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

NCACHE region in internal RAM IMXRT1021

Jump to solution
1,729 Views
huy_tv
Contributor I

Dear all,

In my project, instead of SDRAM, we only used 256KB internal FlexRAM for application.
I have a question, please help me to answer it.

1. Can we put NCACHE_REGION into internal RAM, instead of SDRAM?

2. How to config MPU to enable NCACHE_REGION  into FlexFRAM?

3. Can we put DMA buffer (such as UART, SPI...) into ITC RAM and define as NCACHE_REGION ?

Thank you.

0 Kudos
Reply
1 Solution
1,722 Views
jingpan
NXP TechSupport
NXP TechSupport

Hi @huy_tv ,

1. Yes, you can put NCACHE_REGION in OCRAM, but you can't put it in DTCM or ITCM. TCM is already noncacheable.

2. There is a BOARD_ConfigMPU() function at the beginning of main(). If you look into this function, you'll find it is easy to change noncacheable area.

3. Yes, you can put DMA buffer in ITCM/DTCM/OCRAM. It should be a noncacheable space. 

 

Regards,

Jing

View solution in original post

0 Kudos
Reply
4 Replies
1,717 Views
huy_tv
Contributor I

Thank @jingpan for your answer.
Can i split default OCRAM 64KB into two parts with difference size? One part is OCRAM, and another part is NCACHE?
For example, the first 60KB RAM for OCRAM, last 4KB for NCACHE?

0 Kudos
Reply
1,710 Views
jingpan
NXP TechSupport
NXP TechSupport

Hi,

Yes, no problem.

 

Regards,

Jing

0 Kudos
Reply
1,705 Views
huy_tv
Contributor I

Thank you in advance.

0 Kudos
Reply
1,723 Views
jingpan
NXP TechSupport
NXP TechSupport

Hi @huy_tv ,

1. Yes, you can put NCACHE_REGION in OCRAM, but you can't put it in DTCM or ITCM. TCM is already noncacheable.

2. There is a BOARD_ConfigMPU() function at the beginning of main(). If you look into this function, you'll find it is easy to change noncacheable area.

3. Yes, you can put DMA buffer in ITCM/DTCM/OCRAM. It should be a noncacheable space. 

 

Regards,

Jing

0 Kudos
Reply