FlexRAM configuration for RT1024 - may I increase DTCM to 192k?

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

FlexRAM configuration for RT1024 - may I increase DTCM to 192k?

1,921 Views
ping1
Contributor V

Dear All

This means disable ITCM, as OCRAM cannot be disabled. I tried and ends up a hard fault, any idea please? I am using EVK_RT1024.

Regards!

Ping

 

Tags (1)
0 Kudos
Reply
6 Replies

1,908 Views
mjbcswitzerland
Specialist V

Hi Ping

It is possible to configure ITC from 0k to 256k (in 32k steps)
Also DTC from 0k to 256k

As long as (ITC + DTC + OCRAM) <= 256k

OCRAM can also be set to 0k to maximise DTC and ITC sizes.

 

See the chapter "RAM and Cache" in the uTasker i.MX RT 1024 Developer's document: https://www.utasker.com/docs/iMX/i.MX_RT_1024_uTasker.pdf

Regards

Mark
[uTasker project developer for Kinetis and i.MX RT]
Contact me by personal message or on the uTasker web site to discuss professional training, solutions to problems or rapid product development requirements

For professionals searching for faster, problem-free Kinetis and i.MX RT 10xx developments the uTasker project holds the key: https://www.utasker.com/iMX/RT1024.html

0 Kudos
Reply

1,895 Views
ping1
Contributor V

Thanks, Mark

But the options of 256K DTCM is not listed in AN12077. 0k OCRAM is not listed neither, does it mean it needs to have some OCRAM at least?

Regards!

Ping

0 Kudos
Reply

1,874 Views
victorjimenez
NXP TechSupport
NXP TechSupport

Hello Ping, 

The ROM bootloader uses 64KB of OCRAM. This is why there isn't any configuration with the fuses with 0 OCRAM. 

Regards,
Victor 

0 Kudos
Reply

1,864 Views
ping1
Contributor V

Hi, Victor

Thanks for reply, what is the minimum requirement for ITCM? I noticed there is always ~5k bytes there, which is not my user variable. What are they used by? May I use it for my user variables?

Regards!

Ping 

0 Kudos
Reply

1,836 Views
victorjimenez
NXP TechSupport
NXP TechSupport

Hello Ping, 

ITCM and DTCM don't have a restriction as OCRAM. You could leave these two with a size of 0, and you won't have any problems.

Regards,
Victor 

0 Kudos
Reply

1,889 Views
mjbcswitzerland
Specialist V

Hi Ping

AN12077 lists the possible eFUSE settings and is not a complete list - there are many more ways to configure the FlexRAM (I think 512 different ways in total).

At https://www.utasker.com/iMX/RT1024.html you can find a binary file for the EVK which uses OCRAM set to 0 in order to maximise closely coupled RAM size (which is 4x faster than OCRAM).

The ROM Loader uses 64k of OCRAM for its operation and this is probably why there is no standard eFUSE setting for less that 64k. However it is easy to work-around this and use 0k OCRAM:
- before commanding a software reset set the FlexRAM back to its default layout
- catch WDOG resets (using its SW interrupt) to set the FlexRAM back to its default layout before the watchdog reset completes

If this is not done the ROM Loader fails since the FlexRAM setting is retained across warm resets (so it can't use stack). If these simple work-arounds are not done one needs to accept that 64k of OCRAM is needed and so performance potentially reduced.

Regards

Mark