2294|4

60

帖子

1

TA的资源

一粒金砂(中级)

楼主
 

求救:RSL10 RAM只能用24KB,剩下的6x8KB怎么用不了?-问题解决 [复制链接]

  本帖最后由 xujinxi 于 2021-7-8 19:24 编辑

RSL10规格书中宣称有3x8KB + 6x8KB + 2x8KB,前面的3x8KB + 6x8KB应该可以给M3使用,为什么编译最大只能用到24KB,

多一点就编译报错,超出RAM范围。中间的6x8KB怎样才能使用哦?

规格书:

The data memory used for storing data and intermediate variables of the Arm Cortex-M3 processor, the
LPDSP32, and/or the Bluetooth protocol baseband hardware. This segment of the RSL10 memory map
contains:
Three 8 KB data RAM instances dedicated to the Arm Cortex-M3 processor
Six 8 KB data RAM instances accessible to either the LPDSP32 DSP or the Arm Cortex-M3 processor
• Two 8 KB baseband data RAM instances acting as exchange memory between the Bluetooth protocol
baseband hardware and the Arm Cortex-M3 processor

 

 

感谢cruelfox和just do两位热心网友,以上问题可以通过如下方法解决。

修改section.ld文档,配置DRAM空间由24KB变为64KB。 

/*
MEMORY
{
  ROM  (r) : ORIGIN = 0x00000000, LENGTH = 4K   
  FLASH (xrw) : ORIGIN = 0x00100000, LENGTH = 380K
  PRAM (xrw) : ORIGIN = 0x00200000, LENGTH = 32K

  DRAM (xrw) : ORIGIN = 0x20000000, LENGTH = 32K
  DRAM_DSP (xrw) : ORIGIN = 0x20008000, LENGTH = 40K
  DRAM_BB (xrw) : ORIGIN = 0x20012000, LENGTH = 16K
}*/

MEMORY
{
  ROM  (r) : ORIGIN = 0x00000000, LENGTH = 4K   
  FLASH (xrw) : ORIGIN = 0x00100000, LENGTH = 380K
  PRAM (xrw) : ORIGIN = 0x00200000, LENGTH = 32K

  DRAM (xrw) : ORIGIN = 0x20000000, LENGTH = 64K
  DRAM_DSP (xrw) : ORIGIN = 0x20010000, LENGTH = 8K
  DRAM_BB (xrw) : ORIGIN = 0x20012000, LENGTH = 16K
}

 

 

sections.ld

6.35 KB, 下载次数: 1

替换section.ld文档

最新回复

这个是在工程里面设的。我不用ON的IDE, 没法告诉你这个文件存在哪里。 你在你的工程目录下搜索后缀是 .ld 的文件,找到进去看 MEMORY 那里 DRAM 的 LENGTH. 缺省大约就是 24K 要小心,可能后面的 SRAM 块上电时没有开启。如果把堆栈了指到没有启用的 SRAM 里,程序马上就挂了。   详情 回复 发表于 2021-7-4 19:00
点赞 关注
 
 

回复
举报

1381

帖子

2

TA的资源

五彩晶圆(初级)

沙发
 

linker script 里面写的24kB,所以链接时候只按24kB处理。

你可以自己写指针指到其它RAM的地址里面去用啊,但要确保那块RAM是开启状态。

点评

现在的linker script是指向什么地址,你知道在哪里看么? 领你会修改linker script么,如果可以的话麻烦指导下。  详情 回复 发表于 2021-7-4 18:48
 
 
 

回复

60

帖子

1

TA的资源

一粒金砂(中级)

板凳
 
cruelfox 发表于 2021-7-4 18:12 linker script 里面写的24kB,所以链接时候只按24kB处理。 你可以自己写指针指到其它RAM的地址里面去用 ...

现在的linker script是指向什么地址,你知道在哪里看么?

领你会修改linker script么,如果可以的话麻烦指导下。

 
 
 

回复

1381

帖子

2

TA的资源

五彩晶圆(初级)

4
 

这个是在工程里面设的。我不用ON的IDE, 没法告诉你这个文件存在哪里。

你在你的工程目录下搜索后缀是 .ld 的文件,找到进去看 MEMORY 那里 DRAM 的 LENGTH. 缺省大约就是 24K

要小心,可能后面的 SRAM 块上电时没有开启。如果把堆栈了指到没有启用的 SRAM 里,程序马上就挂了。

点评

通过修改section.ld文档,可以搞定,tks   详情 回复 发表于 2021-7-4 20:07
 
 
 

回复

60

帖子

1

TA的资源

一粒金砂(中级)

5
 
cruelfox 发表于 2021-7-4 19:00 这个是在工程里面设的。我不用ON的IDE, 没法告诉你这个文件存在哪里。 你在你的工程目录下搜索后缀是 .l ...

通过修改section.ld文档,可以搞定,tks 

 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表