一种面向POSIT指令的旁路调度方法及处理器技术

技术编号:36203499 阅读:13 留言:0更新日期:2023-01-04 11:57
本发明专利技术公开了一种面向POSIT指令的旁路调度方法及处理器,本发明专利技术面向POSIT指令的旁路调度方法包括:S1,将发射流水站中不同POSIT指令的目的寄存器的标签、源寄存器的标签比较以确定POSIT指令的生产者和消费者;S2,在作为生产者的POSIT指令执行过程中,将生产者计算阶段或写回阶段所产生的计算结果不经打包直接通过旁路数据通路旁路给消费者以作为消费者的源操作数。本发明专利技术通过旁路机制能够避免存在依赖关系的POSIT指令之间数据的提取和重组操作,能够有效提升POSIT指令的执行效率、降低POSIT指令的执行功耗。POSIT指令的执行功耗。POSIT指令的执行功耗。

【技术实现步骤摘要】
一种面向POSIT指令的旁路调度方法及处理器


[0001]本专利技术属于微处理器中浮点向量单元的优化设计技术,具体涉及一种面向POSIT指令的旁路调度方法及处理器。

技术介绍

[0002]随着计算机技术的快速发展,科学计算和机器学习等对计算能力的需求不断提高。而浮点数据的常用格式IEEE754在某些方面已经不足以匹配对应的需求。因此研究人员们提出了多种新型的浮点数据格式来弥补IEEE754的不足。其中2017年John L.Gustafson等提出的POSIT数据格式即是一种前景可期的浮点数格式,POSIT数据格式包括四个字段:符号位、区域位、指数位和小数位。其中后三者的字段位宽均可动态变化。POSIT数据格式的字段位宽灵活,因而有更高的精度或更大的动态范围,能够满足高性能应用和深度学习应用的需求。同时它的还具有特殊值少,精度分布利于深度学习应用的优势。
[0003]但是,随着POSIT数据格式的研究逐渐深入,它自身存在的一些缺陷也使得它的收益不够明显,阻碍着它的进一步推广应用。例如,POSIT数据格式的字段位宽不定带来的提取和打包问题即是一大缺陷。由于POSIT数据格式的字段位宽不定,POSIT数据格式的指令(POSIT指令)在计算操作之前需额外增加较复杂的数据提取操作,此操作采用诸如前导一检测算法的算法来判断区域位的位宽,从而提取得出能用于浮点计算的指数和小数值;在计算完成后又需要额外增加重组操作将计算结果打包成POSIT数据格式,此操作将计算得出的实际指数转换区域值和指数值,随后再将各字段组合成POSIT数据格式。这两种新增操作导致POSIT数据格式的指令(简称POSIT指令)的总延迟增加,导致流水化POSIT数据格式的指令的周期数增加,极大地影响了POSIT数据格式的指令的执行效率。

技术实现思路

[0004]本专利技术要解决的技术问题:针对现有技术的上述问题,提供一种面向POSIT指令的旁路调度方法及处理器,本专利技术通过旁路机制能够避免存在依赖关系的POSIT指令之间数据的提取和重组操作,能够有效提升POSIT指令的执行效率、降低POSIT指令的执行功耗。
[0005]为了解决上述技术问题,本专利技术采用的技术方案为:
[0006]一种面向POSIT指令的旁路调度方法,包括:
[0007]S1,将发射流水站中不同POSIT指令的目的寄存器的标签、源寄存器的标签比较以确定POSIT指令的生产者和消费者;
[0008]S2,在作为生产者的POSIT指令执行过程中,将生产者计算阶段或写回阶段所产生的计算结果不经打包直接通过旁路数据通路旁路给消费者以作为消费者的源操作数。
[0009]可选地,步骤S1中将发射流水站中不同POSIT指令的目的寄存器的标签、源寄存器的标签比较时,将发射流水站中不同POSIT指令的目的寄存器的标签、源寄存器的标签比较是指将已发射的POSIT指令的目的寄存器的标签、待发射的POSIT指令的源寄存器的标签进行比较,如果两者一致,则确定已发射的POSIT指令为生产者、待发射的POSIT指令为消费
者。
[0010]可选地,步骤S2中作为生产者的POSIT指令执行过程采用流水化设计,所述流水化设计的流水站包括发射流水站、提取流水站ex、计算流水站、打包流水站pa以及写回流水站,其中发射流水站包括流水站i0,i1,i2,i3其中流水站i0为一个或多个以用于将POSIT指令存储在发射队列中,流水站i1,i2,i3均为一个且从流水站i2时指令从寄存器读取源操作数;提取流水站ex用于提取POSIT指令中POSIT数据格式的各个字段;计算流水站包括流水站c1和c2,其中流水站c2得到计算结果;打包流水站pa用于将计算结果打包为POSIT数据格式,并暂存未经打包的计算结果;写回流水站包括流水站w1和w2,其中流水站w1用于将打包完成的计算结果写回至寄存器,同时也暂存未经打包的计算结果至写回周期的流水站w2。
[0011]可选地,步骤S2包括在作为生产者的POSIT指令执行至流水站c2得到计算结果时,将得到计算结果不经打包直接作为旁路数据通过旁路数据通路旁路给作为消费者的POSIT指令的提取流水站ex,以作为已提取的源操作数参与作为消费者的POSIT指令在流水站c1的计算操作。
[0012]可选地,所述将得到计算结果不经打包直接作为旁路数据通过旁路数据通路旁路给作为消费者的POSIT指令的提取流水站ex时还包括为旁路数据设置时序计数器的值,若作为消费者的POSIT指令每经过一个时钟周期未被发射执行则将时序计数器的值减1;若作为消费者的POSIT指令被发射执行时的时序计数器的值已经为0,则作为消费者的POSIT指令在流水站c1的计算操作时将旁路数据忽略、直接从寄存器中获取源操作数。
[0013]可选地,步骤S2包括在作为生产者的POSIT指令执行至打包流水站pa时,将上一时钟周期不经打包的计算结果直接作为写回流水站的流水站w2的旁路数据w0_data,通过旁路数据通路旁路给作为消费者的POSIT指令的提取流水站ex,以作为已提取的源操作数在下一个时钟周期参与作为消费者的POSIT指令在流水站c1的计算操作。
[0014]可选地,步骤S2包括在作为生产者的POSIT指令执行至打包流水站pa时,将上一时钟周期不经打包的计算结果直接作为写回流水站的流水站w2的旁路数据w0_data,通过旁路数据通路旁路给作为消费者的POSIT指令在发射流水站中的流水站i3,以作为已提取的源操作数直接寄存两个时钟周期至作为消费者的POSIT指令的流水站c1已参与计算操作。
[0015]可选地,步骤S2包括在作为生产者的POSIT指令执行至写回流水站的流水站w1时,将上一时钟周期不经打包的计算结果直接作为写回流水站的流水站w2的旁路数据w0_data,寄存一个时钟周期得到的旁路数据w1_data并在同一个时钟周期通过旁路数据通路旁路给作为消费者的POSIT指令在发射流水站中的流水站i3,以作为已提取的源操作数直接寄存两个时钟周期至作为消费者的POSIT指令的流水站c1以参与计算操作。
[0016]可选地,步骤S2包括在作为生产者的POSIT指令执行至写回流水站的流水站w2时,将上一时钟周期不经打包的计算结果w1_data寄存一个时钟周期得到的旁路数据w2_data,并在同一个时钟周期通过旁路数据通路旁路给作为消费者的POSIT指令在发射流水站中的流水站i3,以作为已提取的源操作数直接寄存两个时钟周期至作为消费者的POSIT指令的流水站c1以参与计算操作。
[0017]此外,本专利技术还提供一种处理器,该处理器中包含带有多条用于执行浮点向量指令的流水线的浮点向量单元,其特征在于,所述浮点向量单元的多条用于执行浮点向量指令的流水线的之间连接有旁路数据通路,所述处理器用于被编程或配置以执行前文所述面
向POSIT指令的旁路调度方法。
[0018]和现有技术相比,本专利技术主要具有下述优点:
[0019]本专利技术通过旁路机制,在两条或更多条P本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种面向POSIT指令的旁路调度方法,其特征在于,包括:S1,将发射流水站中不同POSIT指令的目的寄存器的标签、源寄存器的标签比较以确定POSIT指令的生产者和消费者;S2,在作为生产者的POSIT指令执行过程中,将生产者计算阶段或写回阶段所产生的计算结果不经打包直接通过旁路数据通路旁路给消费者以作为消费者的源操作数。2.根据权利要求1所述的面向POSIT指令的旁路调度方法,其特征在于,步骤S1中将发射流水站中不同POSIT指令的目的寄存器的标签、源寄存器的标签比较时,将发射流水站中不同POSIT指令的目的寄存器的标签、源寄存器的标签比较是指将已发射的POSIT指令的目的寄存器的标签、待发射的POSIT指令的源寄存器的标签进行比较,如果两者一致,则确定已发射的POSIT指令为生产者、待发射的POSIT指令为消费者。3.根据权利要求1所述的面向POSIT指令的旁路调度方法,其特征在于,步骤S2中作为生产者的POSIT指令执行过程采用流水化设计,所述流水化设计的流水站包括发射流水站、提取流水站ex、计算流水站、打包流水站pa以及写回流水站,其中发射流水站包括流水站i0,i1,i2,i3其中流水站i0为一个或多个以用于将POSIT指令存储在发射队列中,流水站i1,i2,i3均为一个且从流水站i2时指令从寄存器读取源操作数;提取流水站ex用于提取POSIT指令中POSIT数据格式的各个字段;计算流水站包括流水站c1和c2,其中流水站c2得到计算结果;打包流水站pa用于将计算结果打包为POSIT数据格式,并暂存未经打包的计算结果;写回流水站包括流水站w1和w2,其中流水站w1用于将打包完成的计算结果写回至寄存器,同时也暂存未经打包的计算结果至写回周期的流水站w2。4.根据权利要求3所述的面向POSIT指令的旁路调度方法,其特征在于,步骤S2包括在作为生产者的POSIT指令执行至流水站c2得到计算结果时,将得到计算结果不经打包直接作为旁路数据通过旁路数据通路旁路给作为消费者的POSIT指令的提取流水站ex,以作为已提取的源操作数参与作为消费者的POSIT指令在流水站c1的计算操作。5.根据权利要求4所述的面向POSIT指令的旁路调度方法,其特征在于,所述将得到计算结果不经打包直接作为旁路数据通过旁路数据通路旁路给作为消费者的POSIT指令的提取流水站ex时还包括为旁路数据设置时序计数器的值,若作为消费者的POSIT指令每经过一个时钟周期未被发射执行则将时序计数器的值减1;若作为消费...

【专利技术属性】
技术研发人员:邓全刘广发王永文雷国庆孙彩霞隋兵才唐集轩施嘉庚
申请(专利权)人:中国人民解放军国防科技大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1