[发明专利]一种双宽度指令系统的性能无损切换方法及其应用系统有效

专利信息
申请号: 200910163705.4 申请日: 2009-08-14
公开(公告)号: CN101676863A 公开(公告)日: 2010-03-24
发明(设计)人: 程旭;张吉豫;刘先华 申请(专利权)人: 北京北大众志微系统科技有限责任公司
主分类号: G06F9/30 分类号: G06F9/30;G06F9/38
代理公司: 北京律诚同业知识产权代理有限公司 代理人: 梁 挥;祁建国
地址: 100032北京市海淀*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 宽度 指令系统 性能 无损 切换 方法 及其 应用 系统
【权利要求书】:

1.一种双宽度指令系统的性能无损切换方法,其特征在于,该方法是在 双宽度指令系统中引入两个状态切换指令集合,该两个状态切换指令集合分别 是“宽-窄”状态切换指令集合和“窄-宽”状态切换指令集合,所述状态切换 指令集合中的指令在执行普通操作的同时,还执行切换处理器运行状态的功 能;

所述“宽-窄”状态切换指令集合中的指令是在32位指令的程序中频繁出 现,该指令在执行普通操作的同时,还执行切换处理器状态至窄指令状态的功 能;所述“窄-宽”状态切换指令集合中的指令是在可用16位指令表示的程序 片段最后频繁出现,在执行普通操作的同时,还执行切换处理器状态至宽指令 状态的功能;

进一步包括以下步骤:

状态切换指令的选取步骤,用于由代码分析工具依据设定的算法选择符合 设定条件的指令加入到状态切换指令集中;

微体系结构的设计步骤,用于在体系结构中引入状态切换指令集合以及双 宽度指令系统混合编码的结构设计;

混合编码生成步骤,用于在不破坏原有指令语义序列的基础上,将所有可 以转换的指令序列用状态切换指令和窄指令表示,生成最终的可执行目标文 件;

所述状态切换指令的选取步骤进一步包括:

步骤S101,分析工具维护两块存储空间来记录每个指令的权重;

步骤S102,选择出现频率最高的候选指令加入到相应状态切换指令集合 中;

步骤S103,对于程序中的每条候选指令,如果该候选指令与目前状态切 换集合中的一条指令有“可转换”关系,则存储空间中的相应项的值加一;

步骤S104,选择数组中值最大的项,并将它加入状态切换指令集合中, 如果状态切换指令集合中指令数少于给定总指令数,则转到步骤S103;否则, 结束;

所述步骤S103中,所述“可转换”关系的定义如下:当A是“宽-窄”状 态切换“候选指令”且B是“窄-宽”状态切换“候选指令”,且在程序二进 制代码中二者之间的所有指令都是“可被16位表示的”,则指令A与指令B 构成所述“可转换”关系。

2.根据权利要求1所述的双宽度指令系统的性能无损切换方法,其特征 在于,所述微体系结构的设计是对译码结构的设计,该译码结构的设计方式包 括统一译码和分离译码两种方式。

3.根据权利要求2所述的双宽度指令系统的性能无损切换方法,其特征 在于,所述统一译码方式是将从内存取到的32位指令首先通过16位解码器和 状态切换指令预解码器转换为相应的32位指令和状态设置信号,之后和原32 位指令一起通过多路选择器选择出当前指令,最后统一由32位译码器进行最 终的译码;所述分离译码方式,是将指令首先由16位、状态切换指令和32 位指令译码器分别译码,最后由多路选择器选择最终的译码结果。

4.根据权利要求1所述的双宽度指令系统的性能无损切换方法,其特征 在于,所述微体系结构的设计步骤中,混合编码指令序列是一条“宽-窄”状 态切换指令开始,中间有若干条16位指令,最后以一条“窄-宽”状态切换指 令作为结束。

5.根据权利要求1所述的双宽度指令系统的性能无损切换方法,其特征 在于,所述混合编码生成步骤进一步包括:

步骤S301,标记可以转换的指令;

步骤S302,将所述可以转换的指令相邻排列,标记确定要被转换的指令;

步骤S303,重新计算装载或跳转目标地址,输出最终的可执行目标文件。

6.一种实现上述权利要求1~5中任一项所述方法的应用系统,其特征在 于,包括一状态切换装置,该状态切换装置进一步包括:

一“宽-窄”状态切换模块,用于控制一“宽-窄”状态切换指令集合中的 指令在执行普通操作的同时,还执行切换处理器状态至窄指令状态的功能;及

一“窄-宽”状态切换模块,用于控制一“窄-宽”状态切换指令集合中的 指令在执行普通操作的同时,还执行切换处理器状态至宽指令状态的功能;

状态切换指令选取模块,用于由代码分析工具依据设定的算法选择符合设 定条件的指令加入到状态切换指令集中;

微体系结构设计模块,用于在体系结构中引入状态切换指令集合以及双宽 度指令系统混合编码的结构设计;

混合编码生成模块,用于在不破坏原有指令语义序列的基础上,将所有可 以转换的指令序列用状态切换指令和窄指令表示,生成最终的可执行目标文 件;

状态切换指令选取模块,进一步包括:

权重记录子模块,用于分析工具维护两块存储空间来记录每个指令的权 重;

指令加入子模块,用于选择出现频率最高的候选指令加入到相应状态切换 指令集合中;

指令处理子模块,用于对程序中的每条候选指令,如果该候选指令与目前 状态切换集合中的一条指令有“可转换”关系,则存储空间中的相应项的值加 一;

选择处理子模块,用于选择数组中值最大的项,并将它加入状态切换指令 集合中,如果状态切换指令集合中指令数少于给定总指令数,则转由所述指令 处理子模块处理;

所述“可转换”关系的定义如下:当A是“宽-窄”状态切换“候选指令” 且B是“窄-宽”状态切换“候选指令”,且在程序二进制代码中二者之间的 所有指令都是“可被16位表示的”,则指令A与指令B构成所述“可转换” 关系。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京北大众志微系统科技有限责任公司,未经北京北大众志微系统科技有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/200910163705.4/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top