ARM Cortex-M底层技术(十)KEIL MDK 分散加载示例2-代码加载到片内SRAM中运行以及部分规则

本文通过实例详细介绍了如何在KEIL MDK中进行分散加载,将代码加载到片内SRAM中运行,以提高程序运行速度。讨论了分散加载的限制和规则,并展示了如何解决加载域与执行域不一致导致的问题,确保程序在SRAM中正确运行。
摘要由CSDN通过智能技术生成

 KEIL MDK 分散加载示例2-代码加载到片内SRAM中运行&部分规则

    小编我一向主张在实战中学习,不主张直接去去学习规则&定义,太枯燥,在实际应用中去摸索,才会真正理解具体的技术细节,下面我们就通过实际的简单用例来搞清楚分散加载。   

简单示例

    这个功能是非常有用的,这个小编我之前的文章提过,是一种可以显著增加程序运算速度的方法,所以比较常用,可以把核心算法相关的文件分散加载到SRAM区域上去以加快程序运行速度。

    按照上个示例的方式修改分散加载,只是这次我们要把加载域以及RO运行域放到片内SRAM上。代码加载到SRAM上运行就意味着RO、RW、ZI都要放到SRAM上,这种用法显然对片内SRAM的大小是一个重大考验,当然我们的示例比较简单,重点在于展示用法,我们先来看把所有代码都加载到片内SRAM上的操作。当然这种用法比较暴力,小编我并不推荐这种玩法,只把对时间要求最高的部分代码加载到SRAM上才是真实会经常用到的玩法,这里我们先来看简单暴力的:把所有代码加载到SRAM上的玩法。

LPC824有8KB SRAM,我们简单点把前4KB作为程序的加载域以及RO运行域,后4KB作为RW+ZI的运行域,如下:

    

  • 21
    点赞
  • 40
    收藏
    觉得还不错? 一键收藏
  • 16
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值