imx RT1176 non-xip

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

imx RT1176 non-xip

Jump to solution
3,061 Views
Kris_chao
Contributor III

遇到两个问题请教各位大神们:

1,使用non-xip启动,程序下载到nor-flexspi flash里,链接到0x20240000 开始的OCRAM里,感觉工作不了,而且Jlink也连不上,但链接到ITCM里,就可以工作。

2,使用non-xip启动,如果程序超过ITCM的大小,那必须分段链接,但是boot_data里就只能定义一个连续的image,那我这个boot image的头部信息要怎么配置,才能让程序上电后从flash拷贝到不同的ram里。

感谢!

0 Kudos
Reply
1 Solution
3,054 Views
Kris_chao
Contributor III

您好,多谢帮助,但还是有疑惑:

1,使用non-xip启动,程序下载到nor-flexspi flash里,链接到0x20240000 开始的OCRAM里,感觉工作不了,而且Jlink也连不上,但链接到ITCM里,就可以工作。

=》Answer: 你下周到flash, 然后链接到OCRAM, 你把OCRAM地址偏移个0X2000, 然后再试下。也就是放到0X20242000.

就像这个SDRAM一样:

https://community.nxp.com/t5/i-MX-RT-Knowledge-Base/RT1050-SDRAM-app-code-boot-from-SDcard-burn-with...

然后你再下载,应该可以了。

2,使用non-xip启动,如果程序超过ITCM的大小,那必须分段链接,但是boot_data里就只能定义一个连续的image,那我这个boot image的头部信息要怎么配置,才能让程序上电后从flash拷贝到不同的ram里。

=》Answer: 如果你需要用较大ITCM,你完全可以重新分配flexRAM, 把ITCM搞大一点,其他OCRAM, DTCM搞小一点,这样就可以。

具体参考这个应用笔记:

https://www.nxp.com/docs/en/application-note/AN12077.pdf

 

=》Question: RT1176 Flexram最大只有512KB吗,ITCM,DTCM,OCRAM三个加起来只能用512KB吗?我的程序有600多K,是不是就不能通过non-xip这种方式全部放到ram里执行了。

View solution in original post

0 Kudos
Reply
3 Replies
3,057 Views
kerryzhou
NXP TechSupport
NXP TechSupport

Hi @Kris_chao ,

   回答你的两个问题:

1,使用non-xip启动,程序下载到nor-flexspi flash里,链接到0x20240000 开始的OCRAM里,感觉工作不了,而且Jlink也连不上,但链接到ITCM里,就可以工作。

=》Answer: 你下周到flash, 然后链接到OCRAM, 你把OCRAM地址偏移个0X2000, 然后再试下。也就是放到0X20242000.

就像这个SDRAM一样:

https://community.nxp.com/t5/i-MX-RT-Knowledge-Base/RT1050-SDRAM-app-code-boot-from-SDcard-burn-with...

然后你再下载,应该可以了。

 

2,使用non-xip启动,如果程序超过ITCM的大小,那必须分段链接,但是boot_data里就只能定义一个连续的image,那我这个boot image的头部信息要怎么配置,才能让程序上电后从flash拷贝到不同的ram里。

=》Answer: 如果你需要用较大ITCM,你完全可以重新分配flexRAM, 把ITCM搞大一点,其他OCRAM, DTCM搞小一点,这样就可以。

具体参考这个应用笔记:

https://www.nxp.com/docs/en/application-note/AN12077.pdf

 

希望能帮到你!

Best Regards,

Kerry

 

0 Kudos
Reply
3,055 Views
Kris_chao
Contributor III

您好,多谢帮助,但还是有疑惑:

1,使用non-xip启动,程序下载到nor-flexspi flash里,链接到0x20240000 开始的OCRAM里,感觉工作不了,而且Jlink也连不上,但链接到ITCM里,就可以工作。

=》Answer: 你下周到flash, 然后链接到OCRAM, 你把OCRAM地址偏移个0X2000, 然后再试下。也就是放到0X20242000.

就像这个SDRAM一样:

https://community.nxp.com/t5/i-MX-RT-Knowledge-Base/RT1050-SDRAM-app-code-boot-from-SDcard-burn-with...

然后你再下载,应该可以了。

2,使用non-xip启动,如果程序超过ITCM的大小,那必须分段链接,但是boot_data里就只能定义一个连续的image,那我这个boot image的头部信息要怎么配置,才能让程序上电后从flash拷贝到不同的ram里。

=》Answer: 如果你需要用较大ITCM,你完全可以重新分配flexRAM, 把ITCM搞大一点,其他OCRAM, DTCM搞小一点,这样就可以。

具体参考这个应用笔记:

https://www.nxp.com/docs/en/application-note/AN12077.pdf

 

=》Question: RT1176 Flexram最大只有512KB吗,ITCM,DTCM,OCRAM三个加起来只能用512KB吗?我的程序有600多K,是不是就不能通过non-xip这种方式全部放到ram里执行了。

0 Kudos
Reply
3,052 Views
kerryzhou
NXP TechSupport
NXP TechSupport

Hi @Kris_chao 

 

Question: RT1176 Flexram最大只有512KB吗,ITCM,DTCM,OCRAM三个加起来只能用512KB吗?我的程序有600多K,是不是就不能通过non-xip这种方式全部放到ram里执行了。

=>Answer:  用OCRAM吧, 你看下SDK和RT1170RM就明白了。

kerryzhou_0-1661929789277.pngkerryzhou_1-1661929794886.png

 

OCRAM1, OCRAM2地址连续,512K+512K, 够你用了。

你可以试试看。

Best Regards,

Kerry

 

0 Kudos
Reply