NCACHE region in internal RAM IMXRT1021

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

NCACHE region in internal RAM IMXRT1021

跳至解决方案
1,730 次查看
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 项奖励
回复
1 解答
1,723 次查看
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 项奖励
回复
4 回复数
1,718 次查看
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 项奖励
回复
1,711 次查看
jingpan
NXP TechSupport
NXP TechSupport

Hi,

Yes, no problem.

 

Regards,

Jing

0 项奖励
回复
1,706 次查看
huy_tv
Contributor I

Thank you in advance.

0 项奖励
回复
1,724 次查看
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 项奖励
回复