none cache area in dtcm or in ocram on IMXRT1176

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

none cache area in dtcm or in ocram on IMXRT1176

1,774 Views
nxbg
Contributor I

Hi Team,

We are confused a little bit about default projects template, the none cache area is defined inside dtcm by default:

nxbg_0-1638186209962.png

 

as dtcm is very limited so we would like to move the none cache area to part of ocram which is much bigger(NCACHE_REGION):

nxbg_1-1638186242255.png

Here is my flash map:

nxbg_2-1638186270048.png

 

The dtcm is reaseved for high speed data in our application, and I saw that DTCM have cache setting actually. From my understanding DTCM area have the same speed with MCU, it does not need to have cache setting, correct?

nxbg_3-1638186806859.png

 

 

So the first problem is that we are merged ThreadX and NetX duo into our project, if we put none cache area into dtcm, everything works fine, but if we move it to ocram NCACHE_REGION, the ethernet interrupt(ENET_1G_IRQHandler) will not trigger, the code is exactly the same.

 

Btw: The default netx duo project template from SDK 2.10.1 does not meet this problem, but we indeed checked everything what we can do, but all failed.

 

Could you give me some suggestions about this? Maybe I forget something important to setting.

Thanks & Best Regards

 

0 Kudos
Reply
3 Replies

1,742 Views
jeremyzhou
NXP Employee
NXP Employee

Hi,
Thanks for your reply.
1) So even we already set these parameter, actually it does not have any effect, or we can delete them, or just leave it here, correct?
-- Yes, it's correct.
Have a great day,
TIC

-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!

 

- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------

 

0 Kudos
Reply

1,765 Views
jeremyzhou
NXP Employee
NXP Employee

Hi,
Thank you for your interest in NXP Semiconductor products and for the opportunity to serve you.
1) It does not need to have a cache setting, correct?
-- Yes.
2) Could you give me some suggestions about this? Maybe I forget something important to setting?
-- I'd like to know whether you ever modified the NCACHE_REGION on the default evkmimxrt1170_netx_duo_ping as the below figure shows, and did it still works well after modification?
Have a great day,
TIC

-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!

 

- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------

 

0 Kudos
Reply

1,762 Views
nxbg
Contributor I

Hi,

Regarding 1), it does not have any meaning to set cacheable to TCM area, so even we already set these parameter, actually it does not have any effect, or we can delete them, or just leave it here, correct?

 

Regarding 2), the original project evkmimxrt1170_netx_duo_ping works fine with *(NonCacheable) either located on NCACHE_REGION(OCRAM) or Default(DTCM), we build our own project and merge the imxrt driver inside  evkmimxrt1170_netx_duo_ping, then we find if *(NonCacheable) located on NCACHE_REGION(OCRAM), and the interrupt is not working.

As it is very hard to find a suitable workround to reproduce this issue. We will keep trac this strange issue. Now we will use DTCM as default NonCacheable area.

 

Thanks for your support!

0 Kudos
Reply