【技术实现步骤摘要】
一种并行提取指令的方法与可读存储介质
本专利技术涉及处理器
,具体涉及一种并行提取指令的方法与可读存储介质。
技术介绍
微处理器经过50多年的发展,微处理器的架构伴随着半导体工艺经历了蓬勃的发展。从单核到物理多核及逻辑多核;从顺序执行到乱序执行;从单发射到多发射;尤其在服务器领域,不断的追求处理器的性能。目前,服务器芯片基本都是超标量乱序执行架构,处理器的处理带宽越来越高,达到每个时钟周期处理8条甚至更多的指令。在取指单元,同时取多条指令时,串行的依次提取每条指令,逻辑链路比较长。目前高性能处理器每个时钟周期需要提取8条甚至更高的带宽,并且时钟频率要求比较高。目前的实现方法无法满足要求。
技术实现思路
针对现有技术的不足,本专利技术公开了一种并行提取指令的方法与可读存储介质,用于解决在取指单元,同时取多条指令时,串行的依次提取每条指令,逻辑链路比较长。目前高性能处理器每个时钟周期需要提取8条甚至更高的带宽,并且时钟频率要求比较高。目前的实现方法无法满足要求的问题。本专利技术通 ...
【技术保护点】
1.一种并行提取指令的方法,其特征在于,所述方法根据指令的结束位置向量s_mark_end,产生提取指令有效向量,通过逻辑“与”和逻辑“或”运算,进行每个位置的指令并行译码、计算指令地址和分支指令目标地址运算,最终并行提取多条指令。/n
【技术特征摘要】
1.一种并行提取指令的方法,其特征在于,所述方法根据指令的结束位置向量s_mark_end,产生提取指令有效向量,通过逻辑“与”和逻辑“或”运算,进行每个位置的指令并行译码、计算指令地址和分支指令目标地址运算,最终并行提取多条指令。
2.根据权利要求1所述的并行提取指令的方法,其特征在于,所述方法中,首先判断第1条指令的低2bit,如果低2bit为00、01或者10时,那么第1条指令长度为16bit,如果低2bit为11时,那么第1条指令长度为32bit,然后从该条指令结束位置的下一个byte开始判断第2条指令,判断过程与判断第1条指令类似,得到第2条指令的长度,以此类推,得到cacheline中每条指令的长度,得到每条指令的长度后,得到每条指令在指令流中结束位置向量s_end_mark。
3.根据权利要求1所述的并行提取指令的方法,其特征在于,所述方法中,写指令时,计算得到每条指令的结束位置向量s_end_mark,从写入方返回的指令以cacheline为单位,每个cacheline为64byte,指令的高低32byte分别计算得到指令的结束位置向量,高32byte指令推测计算偏移为0和偏移为2的指令结束位置向量s_end_mark_0和s_end_mark_1,根据低32byte指令结束位置向量选择一个高32byte向量,作为高32byte指令最终的指令结束向量,指令的结束位置向量和指令同时写入。
4.根据权利要求1所述的并行提取指令的方法,其特征在于,所述方法中,当取指单元开始取指时,读取指令时同时读取指令结束位置向量,去进行校验BPU的预测信息和提取指令,指令结束位置向量s_mark_end,表示该位置是否为一条指令的结尾,为1时表示是一条指令的结束位置;为0表示不是一条指令的结束位置。
5.根据权利要求4所述的并行提取指令的方法,其特征在于,所述方法中,取指单元的带宽为32byte每个时钟周期,在取指令的同时,进行分支指令的跳转进行预测,根据分支指令的高2byte进行预测,如果预测分支指令发生跳转时,那么跳转到目标地址。当从目标地址的指令取回后,需要进行指令别名错误检查,即判定预测跳转的分支指令是否为一条分支指令,并且分支指令的类型也一致。
6...
【专利技术属性】
技术研发人员:刘权胜,余红斌,刘磊,
申请(专利权)人:广东赛昉科技有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。