[发明专利]基于SPRAC V8指令集的指令分类多发射方法在审
申请号: | 201510762294.6 | 申请日: | 2015-11-10 |
公开(公告)号: | CN105426160A | 公开(公告)日: | 2016-03-23 |
发明(设计)人: | 赵元富;杨雪;于立新;彭和平;周海洋;庄伟 | 申请(专利权)人: | 北京时代民芯科技有限公司;北京微电子技术研究所 |
主分类号: | G06F9/30 | 分类号: | G06F9/30 |
代理公司: | 中国航天科技专利中心 11009 | 代理人: | 臧春喜 |
地址: | 100076 北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 基于SPRAC V8指令集的指令分类多发射方法。该方法将SPARC V8指令划分为四个类别,将SPRAC V8处理器划分为取指、译码、执行、访存、写回五个流水级,五个流水级之间通过公共数据总线连接,通过在取指级增加n-1条取指通路,在译码级增加n-1个译码单元,在译码级和执行级之间加入n组保留站,在执行级和访存级之间加入重排序缓冲区在执行级加入对应的执行单元,为SPRAC V8处理器建立了多发射五级流水线结构,通过保留站检测并行指令之间的冲突,通过不同的执行单元处理不同的指令,最后由重排序缓冲区对指令执行结果按序提交,实现了指令的并行执行,提高了SPRAC V8处理器的处理性能。 | ||
搜索关键词: | 基于 sprac v8 指令 分类 多发 方法 | ||
【主权项】:
基于SPRAC V8指令集的指令分类多发射方法,其特征在于包括如下步骤:(1)将SPRAC V8处理器划分为取指、译码、执行、访存、写回五个流水级,将SPRAC V8指令划分为分支指令、乘除法指令、加载存储指令和其他指令四类,五个流水级之间通过公共数据总线连接,在取指级增加n‑1条取指通路,在译码级增加n‑1个译码单元,在译码级和执行级之间加入n组保留站,每组保留站与一类指令相对应;在执行级和访存级之间加入重排序缓冲区;根据待执行指令的类别在执行级加入对应的执行单元,所述执行单元包括加法器、移位器、乘法器/除法器和算术逻辑单元;n为自然数,n大于等于1小于8;(2)取指级从指令缓存中同时取回n条指令,并通过公共数据总线将这n条指令分别发送给译码级n个译码单元,同时取指级将这n条指令在指令缓存中的顺序存放在重排序缓冲区;(3)译码级n个译码单元对这n条指令进行并行译码,译码的同时分别对每条指令进行跳转指令判断,将判断后得到的待执行指令对应的操作、源地址、目的地址或操作数通过公共数据总线发送给该指令相应的保留站;(4)各保留站根据指令地址对操作数进行预取,并判断各条指令之间是否存在相关冲突,对于存在相关冲突的指令,将其放在下一周期执行,将不存在相关冲突的m条指令分别通过公共数据总线发送给指令对应的执行单元执行,m为自然数,m小于等于n;(5)执行单元对m条指令并行执行后,分别将运算结果通过公共数据总线发送给重排序缓冲区;存在相关冲突的指令所在的保留站可通过公共数据总线从重排序缓冲区读取本周期指令的执行结果,作为下一周期指令执行时的操作数;(6)重排序缓冲区判断这m条指令是否按序排在存在相关冲突的指令之前,如果是,则将m条指令的执行结果通过公共数据总线同时写回对应的存储器或寄存器,否则,将按序排在相关冲突指令之前的指令执行结果同时提交,按序排在后面的指令等待存在相关冲突的指令执行之后写回对应的存储器或寄存器,从而实现了SPRAC V8处理器的多发射。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京时代民芯科技有限公司;北京微电子技术研究所,未经北京时代民芯科技有限公司;北京微电子技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201510762294.6/,转载请声明来源钻瓜专利网。