发明名称 基于GCC编译器的软件控制内存分拆和映射的方法及系统
摘要 本发明公开了基于GCC编译器的软件控制内存分拆和映射的方法,包括:S1、对程序中的不同函数分别配置BANK属性和NEAR属性;S2、若函数属性为NEAR,则编译方式不变;若函数属性为BANK,则将对BANK函数的调用改为调用BANK函数进入管理接口,并在后面紧跟真实函数地址的形式,将返回跳转改为跳转至BANK函数退出管理接口;S3、对芯片地址总线进行MASK处理;S4、设置程序空间,包括将对芯片地址总线MASK处理的部分设置为BANK号,剩余部分设置为直接映射到RAM空间的逻辑地址。还公开了基于GCC编译器的软件控制内存分拆和映射的系统。本发明在无需增加cache管理硬件模块的前提下,能够实现32位CPU对大程序的管理及运行,从而以较低成本实现较高性能MCU的开发及应用。
申请公布号 CN105739992A 申请公布日期 2016.07.06
申请号 CN201610108587.7 申请日期 2016.02.26
申请人 珠海煌荣集成电路科技有限公司 发明人 吴瀚平;何凯帆;张静
分类号 G06F9/44(2006.01)I;G06F9/45(2006.01)I 主分类号 G06F9/44(2006.01)I
代理机构 广州嘉权专利商标事务所有限公司 44205 代理人 张萍
主权项 基于GCC编译器的软件控制内存分拆和映射的方法,其特征在于,包括步骤:S1、对程序中的不同函数分别配置BANK属性和NEAR属性;S2、修改编译器,若函数属性为NEAR函数,则编译方式不变;若函数属性为BANK函数,则修改函数调用,将对BANK函数的调用改写为调用BANK函数进入管理接口,并在后面紧跟真实函数地址的形式,修改函数返回,将返回跳转改写为跳转至BANK函数退出管理接口;S3、对芯片地址总线进行MASK处理,使地址能够支持BANK号的记录;S4、设置程序空间,包括将对芯片地址总线MASK处理的部分设置为BANK号,剩余部分设置为直接映射到RAM空间的逻辑地址。
地址 519015 广东省珠海市吉大白莲路184号立体科技大厦3楼