[发明专利]提高内存利用效率的方法在审
申请号: | 201410843544.4 | 申请日: | 2014-12-25 |
公开(公告)号: | CN105786613A | 公开(公告)日: | 2016-07-20 |
发明(设计)人: | 徐文强 | 申请(专利权)人: | 联芯科技有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50;G06F17/30;G06F12/02 |
代理公司: | 上海专利商标事务所有限公司 31100 | 代理人: | 骆希聪 |
地址: | 200233 上海市徐*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 提高 内存 利用 效率 方法 | ||
技术领域
本发明涉及嵌入式系统,尤其是涉及提高内存利用效率的方法。
背景技术
嵌入式芯片平台上,主要的存储器有TCM(ITCM指令/DTCM数据)、 SHRAM和DDR等。TCM在芯片上,芯片核心有专门总线访问它,所以访问 TCM的时延最小。SHRAM和DDR是通过公共总线访问,访问时延受总线时 钟、访问冲突以及RAM自身属性影响,访问时延比较大。访问时延越小,执 行效率越高,所以总是希望代码能在访问时延小、高效的RAM上运行。但是 这样的RAM空间有限,所以需要根据业务等需要动态的调整代码的运行空间。
嵌入式系统中,传统的做法是同一程序段只能在固定的运行空间中运行。 这一方式的缺点是不能根据当前业务等需要动态调整程序运行在不同等级的 空间上。
采用OVERLAY方式可以支持不同的程序段分时运行在同一运行空间。采 用OVERLAY方式分时复用时,只有一套程序段加载了可运行,其它程序这时 是不可运行的;这使得可以用来复用的程序段范围窄,且若执行了未加载的程 序段则导致跑飞,不便于实现和维护。
还有一种做法是根据不同环境生成多个二进制程序文件,然后根据需要加 载不同二进制程序文件。这种做法支持在不同的环境中,同一功能的程序段在 不同运行空间中运行,但是生成文件的实现复杂,且不便于管理。
发明内容
本发明所要解决的技术问题是提供一种提高内存利用效率的方法,实现同 一程序段可在不同的运行空间中运行,可根据业务等需要动态调整程序段的运 行空间,同时实现在复用高速运行空间时,未加载的程序段也可正常运行。
本发明为解决上述技术问题而采用的技术方案是一种提高内存利用效率 的方法,包括以下步骤:a.为至少两个不同功能对应的至少两套代码分配相同 的内存空间;b.为需要运行在多个等级的内存空间的一个功能配置多套代码, 每一套代码能够运行在一个对应等级的内存空间;以及c.分别为对应同一功能 的多套代码中每一套代码配置一函数跳转向量表,该函数跳转向量表指向该套 代码的运行地址。
在本发明的一实施例中,上述方法还包括为一功能配置一调用跳转向量表, 该调用跳转向量表在该功能对应的一套代码运行时,被赋予对应的函数跳转向量 表。
在本发明的一实施例中,步骤b是通过OVERLAY的链接脚本导致链接器, 在链接时给各套代码分配相同的运行地址。
在本发明的一实施例中,该函数跳转向量表由一个跳转指令组成。
在本发明的一实施例中,该步骤a通过INLINE函数实施。
在本发明的一实施例中,该多个等级的内存空间包括TCM、SHRAM和 DDR。
本发明还提出一种提高内存利用效率的方法,包括以下步骤:确定要执行 的功能将要运行的内存空间等级,该功能具有多套对应的代码,每一套代码能 够运行在一个对应等级的内存空间,且每一套代码配置一函数跳转向量表,该 函数跳转向量表指向该套代码的运行地址;将与该等级对应的一套代码加载到 该等级的内存空间;以及将与该套代码对应的函数跳转向量表赋值给调用跳转 向量表,该调用调整向量表用于从外部调用该功能。
在本发明的一实施例中,确定要执行的功能将要运行的内存空间等级的步 骤包括:当至少两个要执行的不同功能对应的至少两套代码分配相同的内存空 间时,按照至少两个不同功能的优先级决定各个功能将要运行的内存空间等 级。
在本发明的一实施例中,该多个等级的内存空间包括TCM、SHRAM和 DDR。
在本发明的一实施例中,该函数跳转向量表由一个跳转指令组成。
本发明由于采用以上技术方案,使之与现有技术相比,由于实现了代码运 行空间可变和代码运行空间复用,减小了对高效运行空间整体的需求量,并且 提高高效运行空间的复用,从而提高了系统总体执行效率。
附图说明
为让本发明的上述目的、特征和优点能更明显易懂,以下结合附图对本发 明的具体实施方式作详细说明,其中:
图1示出本发明一实施例的提高内存利用效率的设计方法流程。
图2示出本发明一实施例的提高内存利用效率的运行方法流程。
图3示出本发明一实施例的提高内存利用效率的运行示意图。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于联芯科技有限公司,未经联芯科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410843544.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:用于提供需求响应服务的系统
- 下一篇:一种参数配置系统及配置方法