[发明专利]一种支持用规则记录变量访问专用寄存器组的处理方法有效
申请号: | 200510093279.3 | 申请日: | 2005-08-23 |
公开(公告)号: | CN1920771A | 公开(公告)日: | 2007-02-28 |
发明(设计)人: | 贾耀仓;桂剑;霍玮;谷晓铭;张兆庆;冯晓兵 | 申请(专利权)人: | 中国科学院计算技术研究所 |
主分类号: | G06F9/44 | 分类号: | G06F9/44;G06F9/45 |
代理公司: | 北京泛华伟业知识产权代理有限公司 | 代理人: | 高存秀 |
地址: | 100080北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种支持用规则记录变量访问专用寄存器组的处理方法。该方法包括:1)设计新的类型属性,以标识需要放入专用寄存器组的规则记录变量类型;2)设计规则记录变量的语法树结构,用递归算法实现计算规则记录变量各成员相对位置;3)设计规则记录变量的中间表示;4)生成利用规则记录变量访问专用寄存器组的代码。本发明的优点:1)保留高级语言开发的优点,又克服了高级语言难以对特殊硬件进行直接控制的缺点,提高编程效率,缩短开发周期;2)向程序员屏蔽了底层硬件的细节,能灵活的处理各种专用寄存器组的使用规范;3)向编译器暴露更多的优化机会,提高系统性能。 | ||
搜索关键词: | 一种 支持 规则 记录 变量 访问 专用 寄存器 处理 方法 | ||
【主权项】:
1、一种支持用规则记录变量访问专用寄存器组的处理方法,通过扩展编译器的功能,对于嵌入式处理器中普遍存在的专用寄存器组,在高级语言源程序中将专用寄存器组定义为具有一定属性的规则记录变量来进行访问,具体包括如下四点:1)定义一种类型属性,以标识需要放入专用寄存器组的规则记录变量类型;2)设计规则记录变量的语法树结构,用递归算法实现计算规则记录变量各成员相对位置;其中变量的名称、类型、成员域、大小和一般的变量语法树结构相同,增加表示步骤1)所述类型属性的特征比特位,并忽视规则记录变量以及其成员域的对齐要求信息;规则记录变量的成员域在语法树结构中用链表表示,成员是一般变量的语法树结构;3)设计规则记录变量的中间表示;该结构包括规则记录变量和它每个成员域对应的专用寄存器编号、大小、起始比特和结束比特;生成规则记录变量的中间表示的算法包括:遍历规则记录变量语法树结构的成员链,根据成员的相对位置和大小计算所占用的专用寄存器编号、起始比特和结束比特,同时指示编译器专用寄存器不参与寄存器分配;4)生成利用规则记录变量访问专用寄存器组的代码;所用算法分两模块:从专用寄存器组提取规则记录变量成员数据的数据提取模块和将规则记录变量成员数据存储到专用寄存器组的数据存储模块;其中,所述数据提取模块分三个过程:数据对齐、数据无关位屏蔽和专用寄存器读写;所述数据存储模块的过程为上述三个过程的逆过程;每个过程根据数据大小和位置选择合适的处理器指令或指令组合生成代码。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院计算技术研究所,未经中国科学院计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/200510093279.3/,转载请声明来源钻瓜专利网。