RT1051 BootLoader跳转进入用户代码,要求用户代码运行在内部RAM,如何修改icf和启动文件?

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

RT1051 BootLoader跳转进入用户代码,要求用户代码运行在内部RAM,如何修改icf和启动文件?

173 Views
coderick
Contributor I

项目需求:芯片RT1051,内部RAM512KB,外部Flash32MB,外部SDRAM16MB,基于以上配置,我自设计了一个BootLoader,在里面实现升级检测与升级功能,当没有升级时,从Flash拷贝加载用户代码(约400KB,含芯片驱动和一个实时系统)到SDRAM运行正常,但是系统运行速度较慢,为了提升系统运行速度,现在想把用户代码加载到内部RAM,但是对于链接文件和启动文件不知如何修改,请论坛大牛给予帮助,感谢!

附件包含BootLoader和用户主程序的链接文件,这两个链接文件适应于将用户代码全部加载到SDRAM运行,加载方式很简单,直接从Flash拷贝到SDRAM的0x80000000地址,加载后运行正常。

Labels (2)
0 Kudos
3 Replies

103 Views
Gavin_Jia
NXP TechSupport
NXP TechSupport

Hi @coderick ,

请问下你要实现的修改只是将原来运行在SDRAM改为运行在ITCM吗?其他部分功能保持不变是这样吗?你可以先参考下SDK Hello_world这个工程的MIMXRT1052xxxxx_ram_0x1400.icf这个文件

Best regards,
Gavin

0 Kudos

92 Views
coderick
Contributor I

Hi,@Gavin,

         SDK中MIMXRT1052xxxxx_ram_0x1400.icf链接文件支持的内部RAM空间有限,无法放下400KB的用户程序。我的问题是:从BootLoader如何加载用户程序到内部RAM运行,加载前是不是要重新配置内部RAM,比如把ITCRAM配置为448KB?然后再把用户程序拷贝加载到内部RAM中?这里对启动文件、中断向量表、readonly、readwrite部分如何分散加载?希望您能给我一些解决问题的方向,谢谢,如果需要我提供什么材料,我再提供。

 

0 Kudos

109 Views
coderick
Contributor I

顶一个

0 Kudos