BES平台笔记4——.lds.S文件与内存分配

本文详细描述了嵌入式系统中的BES存储器,包括ROM、RAM和SIPflash的功能分配,以及ITCM和DTCM的逻辑地址映射。同时介绍了linker脚本如best1000_1306_lds.S的作用,以及内存分区的相关宏定义来源。
摘要由CSDN通过智能技术生成

随笔简述嵌入式内存

在这里插入图片描述

BES存储器部分

在这里插入图片描述各存储器功能分配:
ROM:用于关键常数和代码的嵌入式ROM,比如片上引导程序。
RAM:用于关键数据和代码,比如音频解码,算法,数据传输,编译等。
SIP flash:用于自定义程序,OTA引导程序,提示音文件,TWS和移动设备配对信息、音量等,烧录工具的BT name、BT addres、工厂信息存储,音频EQ数据,ANC数据等。
(注意DMA是直接存储器访问,是一个总线结构功能,BES主要用于音频/语音数据传输,并不是存储器。)

从map文件中,我们可以看到这样的逻辑地址映射打印:
在这里插入图片描述name中有X集成了ITCM(指令内存),没有X的集成了DTCM(数据内存)

lds.S文件

在BES的软件包文件结构中,scripts/目录主要存放,编译和链接器脚本模板。例如BES2700IHC的链接器脚本best1000_1306_lds.S,存放在…/scripts/link/…目录下。
链接脚本是模板文件通过编译生成的。存放在…/out/best1306_ibrt_anc/目录下的_best1000_1306.lds文件中。

best1000_1306_lds.S文件功能很强大,包括了内存映射,配置内存区域链接器脚本映射,库配置,引导程序配置等。

另外关于内存分区的一些宏定义,需要参考plat_addr_map.h 和common.mk 文件。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值