[发明专利]程序指令块处理方法及装置在审
| 申请号: | 202010925951.5 | 申请日: | 2020-09-07 |
| 公开(公告)号: | CN111796869A | 公开(公告)日: | 2020-10-20 |
| 发明(设计)人: | 费晓龙;王磊;李甜甜 | 申请(专利权)人: | 华夏芯(北京)通用处理器技术有限公司 |
| 主分类号: | G06F9/30 | 分类号: | G06F9/30 |
| 代理公司: | 北京康信知识产权代理有限责任公司 11240 | 代理人: | 周春枚 |
| 地址: | 100080 北京市海淀*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 程序 指令 处理 方法 装置 | ||
1.一种程序指令块处理方法,其特征在于,包括:
基于循环指令确定程序指令块进入循环模式,其中,所述循环指令中携带的参数包括:循环执行次数和循环执行指令数;
在所述循环模式下,将所述循环执行指令数与指令队列的目标参数进行比较,得到比较结果,其中,所述目标参数包括:所述指令队列的剩余指令数,所述指令队列的深度;
根据所述比较结果确定所述程序指令块的指令处理方式。
2.根据权利要求1所述的方法,其特征在于,基于所述循环指令确定所述程序指令块进入所述循环模式包括:
从所述循环指令中提取所述循环执行次数和所述循环执行指令数;
当所述循环执行次数大于第一数值并且所述循环执行指令数大于第二数值时,确定所述程序指令块进入所述循环模式。
3.根据权利要求1所述的方法,其特征在于,根据所述比较结果确定所述程序指令块的指令处理方式包括:
当根据所述比较结果确定所述循环执行指令数小于或等于所述指令队列的剩余指令数时,暂停执行取指令操作。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
当所述循环执行次数为第一数值并且所述指令队列的空闲空间大于或等于单次执行所述取指令操作的指令数时,顺序执行所述取指令操作。
5.根据权利要求1所述的方法,其特征在于,根据所述比较结果确定所述程序指令块的指令处理方式包括:
当根据所述比较结果确定所述循环执行指令数大于所述指令队列的剩余指令数并且所述循环执行指令数小于或等于所述指令队列的深度时,暂停执行取指令操作。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
当所述循环执行次数为第一数值并且所述指令队列的空闲空间大于或等于单次执行所述取指令操作的指令数时,顺序执行所述取指令操作。
7.根据权利要求1所述的方法,其特征在于,根据所述比较结果确定所述程序指令块的指令处理方式包括:
当根据所述比较结果确定所述循环执行指令数大于所述指令队列的剩余指令数并且所述循环执行指令数大于所述指令队列的深度时,循环执行取指令操作。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
记录第一指令地址和第二指令地址,其中,所述第一指令地址为所述程序指令块中循环体内第一条指令的地址,所述第二指令地址为所述循环体外第一条指令的地址。
9.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述程序指令块中循环体内发生加载未命中或者加载冲突时,清除在加载指令后的已派发指令,并基于所述已派发指令的派发时刻更新本次循环的剩余指令数和所述循环执行次数。
10.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述程序指令块中循环体内发生异常时,记录循环信息,其中,所述循环信息包括:本次循环的剩余指令数、所述循环执行次数、所述循环体内指令的第一条指令地址;
基于所述循环信息恢复本次循环的剩余指令数和所述循环执行次数。
11.一种程序指令块处理装置,其特征在于,包括:
确定模块,用于基于循环指令确定程序指令块进入循环模式,其中,所述循环指令中携带的参数包括:循环执行次数和循环执行指令数;
比较模块,用于在所述循环模式下,将所述循环执行指令数与指令队列的目标参数进行比较,得到比较结果,其中,所述目标参数包括:所述指令队列的剩余指令数,所述指令队列的深度;
处理模块,用于根据所述比较结果确定所述程序指令块的指令处理方式。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华夏芯(北京)通用处理器技术有限公司,未经华夏芯(北京)通用处理器技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010925951.5/1.html,转载请声明来源钻瓜专利网。





