[发明专利]处理器指令集的完备性检测方法、装置与电子设备有效
申请号: | 201910813443.5 | 申请日: | 2019-08-30 |
公开(公告)号: | CN110688304B | 公开(公告)日: | 2021-04-27 |
发明(设计)人: | 孟丹;李丹萍;朱子元;史岗 | 申请(专利权)人: | 中国科学院信息工程研究所 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京路浩知识产权代理有限公司 11002 | 代理人: | 马瑞 |
地址: | 100093 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 处理器 指令 完备 检测 方法 装置 电子设备 | ||
1.一种处理器指令集的完备性检测方法,其特征在于,包括:
获取处理器指令集中所有的已定义指令编码和未定义指令编码,并基于所述已定义指令编码和所述未定义指令编码,分别计算所述处理器指令集的预期指令总条数和理论实际指令总条数;
其中,预期指令总条数表示目标处理器指令集包含的指令总条数,是由指令位数或最长指令位数决定的确定的值;理论实际指令总条数表示对根据指令集手册收集到的所有的指令编码所包含的指令条数进行求和计算得到的指令总条数;
若所述理论实际指令总条数与所述预期指令总条数不相等,则对所有所述已定义指令编码和所述未定义指令编码进行重叠性聚类处理,并通过计算每个类中的重叠指令条数,计算被重复计算的指令总条数;
基于所述理论实际指令总条数和所述被重复计算的指令总条数,计算真实实际指令总条数,并判断所述真实实际指令总条数与所述预期指令总条数是否相等,若是,则判定所述处理器指令集是完备的,否则,判定所述处理器指令集不完备;
所述对所有所述已定义指令编码和所述未定义指令编码进行重叠性聚类处理的步骤具体包括:
根据所有所述已定义指令编码和所述未定义指令编码,生成指令编码文件,并创建一个类库,所述类库中存放所有的类;
依次从所述指令编码文件中读取任一指令编码,并对所述任一指令编码执行如下操作,直至检测到所述指令编码文件为空,所述如下操作包括:
将所述任一指令编码与所述类库中所有类中的指令编码进行重叠关系判断,若所述任一指令编码与任一类中的指令编码存在重叠关系,则将所述任一指令编码归入所述任一类中,并将所述任一指令编码从所述指令编码文件中删除,否则,新建一个类,并将所述任一指令编码归入新建的类中,并将所述任一指令编码从所述指令编码文件中删除;
其中,将所述任一指令编码与所述类中的指令编码进行重叠关系判断的步骤具体包括:对于任一类,依次计算所述任一类中的每一指令编码与所述任一指令编码的交集,若所述交集均为空,则判定所述任一指令编码与所述任一类中的指令编码间不存在重叠关系,否则判定所述任一指令编码与所述任一类中的指令编码间存在重叠关系;
所述通过计算每个类中的重叠指令条数,计算被重复计算的指令总条数的步骤具体包括:
对于任一类,计算所述任一类中所有指令编码的并集指令总条数,并基于所述并集指令总条数与所述理论实际指令总条数,计算所述任一类中的重叠指令条数;
对所有类中的所述重叠指令条数进行求和运算,获取所述被重复计算的指令总条数。
2.根据权利要求1所述的处理器指令集的完备性检测方法,其特征在于,计算所述处理器指令集的理论实际指令总条数的步骤具体包括:
通过遍历所有所述已定义指令编码和所述未定义指令编码,依次计算每条指令编码所表示的指令条数,计算的公式为:指令编码所表示的指令条数=2^指令编码中不确定位数;
对所有指令编码所表示的指令条数进行求和运算,获取所述理论实际指令总条数。
3.根据权利要求1所述的处理器指令集的完备性检测方法,其特征在于,计算所述处理器指令集的预期指令总条数的步骤具体包括:
根据指令集手册,判断所述处理器指令集是否为定长指令集,若是,则按下式计算所述预期指令总条数:
预期指令总条数=2^指令位数;
否则,按下式计算所述预期指令总条数:
预期指令总条数=2^最长指令位数。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院信息工程研究所,未经中国科学院信息工程研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910813443.5/1.html,转载请声明来源钻瓜专利网。