[发明专利]一种指令执行方法以及顺序处理器有效
申请号: | 201410239150.8 | 申请日: | 2014-05-30 |
公开(公告)号: | CN105446700B | 公开(公告)日: | 2018-01-02 |
发明(设计)人: | 张立新;苏东锋;陈凯;柴琳 | 申请(专利权)人: | 华为技术有限公司;中国科学院计算技术研究所 |
主分类号: | G06F9/30 | 分类号: | G06F9/30;G06F9/38 |
代理公司: | 深圳市深佳知识产权代理事务所(普通合伙)44285 | 代理人: | 王仲凯 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 指令 执行 方法 以及 顺序 处理器 | ||
1.一种指令执行方法,其特征在于,包括:
当顺序处理器的一条流水线内有预置数目个串行在一起的功能单元时,所述顺序处理器确定所述预置数目为每个指令组合的最大执行拍数;
所述顺序处理器按照指令顺序依次将多条指令融合成指令组合,其中,所述多条指令的执行拍数之和不大于所述最大执行拍数;
所述顺序处理器依次发射融合出的各指令组合,顺序执行所述各指令组合中的指令;
所述顺序处理器按照指令顺序依次将多条指令融合成指令组合,其中,所述多条指令的执行拍数之和不大于所述最大执行拍数具体包括:
所述顺序处理器依次读取所述指令顺序中下一条指令作为待融合指令,对所述待融合指令执行如下操作:
所述顺序处理器判断所述待融合指令的执行拍数是否不大于当前指令组合的剩余拍数,所述当前指令组合为当前正在融合指令的指令组合,所述剩余拍数为所述最大执行拍数与组合拍数的差值,所述组合拍数为加入所述当前指令组合中所有指令的执行拍数之和;
若大于所述剩余拍数,则更新所述当前指令组合并触发所述顺序处理器判断所述待融合指令的执行拍数是否不大于当前指令组合的剩余拍数的步骤;其中,更新当前指令组合包括结束并保存当前指令组合,新建下一个指令组合作为更新后的当前指令组合;
若不大于所述剩余拍数,则将所述待融合指令加入所述当前指令组合,触发所述顺序处理器依次读取所述指令顺序中下一条指令作为待融合指令的步骤。
2.根据权利要求1所述的方法,其特征在于,所述若大于所述剩余拍数,则更新所述当前指令组合并触发所述顺序处理器判断所述待融合指令的执行拍数是否不大于当前指令组合的剩余拍数具体包括:
若大于所述剩余拍数,则更新所述当前指令组合,判断所述待融合指令的执行拍数是否大于所述最大执行拍数;
若大于所述最大执行拍数,则将所述待融合指令单独加入更新后的当前指令组合,再次更新所述更新后的当前指令组合,触发所述顺序处理器依次读取所述指令顺序中下一条指令作为待融合指令的步骤;
若不大于所述最大执行拍数,则触发所述顺序处理器判断所述待融合指令的执行拍数是否不大于当前指令组合的剩余拍数的步骤。
3.根据权利要求1或2所述的方法,其特征在于,若不大于所述剩余拍数,则将所述待融合指令加入所述当前指令组合,触发所述顺序处理器依次读取所述指令顺序中下一条指令作为待融合指令的步骤具体包括:
若不大于所述剩余拍数,则判断所述待融合指令是否为第一特殊指令或第二特殊指令,所述第一特殊指令为必须单独成组的指令,所述第二特殊指令为不须单独成组但必须放在一个指令组合的最后一条的指令;
若所述待融合指令为第一特殊指令,则更新所述当前指令组合,将所述待融合指令单独加入更新后的当前指令组合,再次更新所述更新后的当前指令组合,触发所述顺序处理器依次读取所述指令顺序中下一条指令作为待融合指令的步骤;
若所述待融合指令为第二特殊指令,则将所述待融合指令加入所述当前指令组合再更新所述当前指令组合,触发所述顺序处理器依次读取所述指令顺序中下一条指令作为待融合指令的步骤;
若所述待融合指令不为第一特殊指令且不为第二特殊指令,则将所述待融合指令加入所述当前指令组合后直接触发所述顺序处理器依次读取所述指令顺序中下一条指令作为待融合指令的步骤。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
当所述顺序处理器准备好的指令都加入了指令组合时,所述顺序处理器更新所述当前指令组合。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司;中国科学院计算技术研究所,未经华为技术有限公司;中国科学院计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410239150.8/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种信息处理方法及电子设备
- 下一篇:一种FIFO存储器控制方法