KEIL MDK 分散加载示例2-代码加载到片内SRAM中运行&部分规则
小编我一向主张在实战中学习,不主张直接去去学习规则&定义,太枯燥,在实际应用中去摸索,才会真正理解具体的技术细节,下面我们就通过实际的简单用例来搞清楚分散加载。
简单示例
这个功能是非常有用的,这个小编我之前的文章提过,是一种可以显著增加程序运算速度的方法,所以比较常用,可以把核心算法相关的文件分散加载到SRAM区域上去以加快程序运行速度。
按照上个示例的方式修改分散加载,只是这次我们要把加载域以及RO运行域放到片内SRAM上。代码加载到SRAM上运行就意味着RO、RW、ZI都要放到SRAM上,这种用法显然对片内SRAM的大小是一个重大考验,当然我们的示例比较简单,重点在于展示用法,我们先来看把所有代码都加载到片内SRAM上的操作。当然这种用法比较暴力,小编我并不推荐这种玩法,只把对时间要求最高的部分代码加载到SRAM上才是真实会经常用到的玩法,这里我们先来看简单暴力的:把所有代码加载到SRAM上的玩法。
LPC824有8KB SRAM,我们简单点把前4KB作为程序的加载域以及RO运行域,后4KB作为RW+ZI的运行域,如下: