支持标量复用的非全流水向量除法开方装置及方法.pdf

上传人:a1 文档编号:973598 上传时间:2018-03-22 格式:PDF 页数:10 大小:425.16KB
返回 下载 相关 举报
摘要
申请专利号:

CN201010133813.X

申请日:

2010.03.25

公开号:

CN101840323A

公开日:

2010.09.22

当前法律状态:

授权

有效性:

有权

法律详情:

授权|||实质审查的生效IPC(主分类):G06F 7/535申请日:20100325|||公开

IPC分类号:

G06F7/535; G06F9/38

主分类号:

G06F7/535

申请人:

北京龙芯中科技术服务中心有限公司

发明人:

刘宏伟; 郇丹丹; 张晓春

地址:

100080 北京市海淀区科学院南路10号

优先权:

专利代理机构:

北京市隆安律师事务所 11323

代理人:

史霞

PDF下载: PDF下载
内容摘要

本发明公开了一种支持标量复用的非全流水向量除法开方装置及方法。该装置包括控制模块和至少两个除法开方部件,其中控制模块包括:选择模块,用于产生选择信号以选择输入数据被送往哪个除法开方部件;标量和向量执行指令控制模块,用于根据所述除法开方部件的“忙”信号来进行标量和向量执行指令的控制;数据通路选择模块,用于根据所述选择信号来生成相应的通路;结果控制模块:用于根据配置,实现不同数据格式的结果。

权利要求书

1: 一种支持标量复用的非全流水向量除法开方装置, 包括控制模块和至少两个除法开 方部件, 其中 : 所述控制模块包括 : 选择模块, 用于产生选择信号以选择输入数据被送往哪个除法开方部件 ; 标量和向量执行指令控制模块, 用于根据所述除法开方部件的 “忙” 信号来进行标量和 向量执行指令的控制 ; 数据通路选择模块, 用于根据所述选择信号来生成相应的通路。 结果控制模块, 用于把从功能部件输出的结果, 整理成标准格式, 并可根据不同的配 置, 输出不同格式的结果。
2: 如权利要求 1 所述的支持标量复用的非全流水向量除法开方装置, 其中所述支持标 量复用的非全流水向量除法开方装置还包括一个指令发射部件, 用于发射指令至所述控制 模块。
3: 如权利要求 2 所述支持标量复用的非全流水向量除法开方装置, 所述指令包括至少 一个标量指令和至少一个向量指令。
4: 如权利要求 3 所述支持标量复用的非全流水向量除法开方装置, 所述控制模块还包 括计数器, 该计数器用于统计所述至少两个除法开方部件中 “忙” 的部件的数目。
5: 如权利要求 4 所述支持标量复用的非全流水向量除法开方装置, 所述至少两个除法 开方部件为相同的运算部件。
6: 如权利要求 5 所述支持标量复用的非全流水向量除法开方装置, 其中所述控制模块 还包括数据整理模块, 用于将所述选择信号的结果数据整理成标准格式。
7: 如权利要求 6 所述支持标量复用的非全流水向量除法开方装置, 其中所述的数据整 理模块还包括了对不同结果数据格式的选择模块及方法, 其可根据配置选择不同的结果数 据格式。
8: 如权利要求 7 所述支持标量复用的非全流水向量除法开方装置, 其所支持的结果数 据格式包括如下三种 : 清零模式, 保持模式和广播模式三种不同结果数据格式。
9: 如权利要求 8 所述支持标量复用的非全流水向量除法开方装置, 其中所述控制模块 还包括分配模块, 用于分配所述除法开方部件是否参加运算。
10: 一种支持标量复用的非全流水向量除法开方方法, 所述方法包括以下步骤 : S1 : 发射指令至控制模块的指令发射步骤 ; S2 : 产生选择信号以选择输入数据被送往哪个除法开方部件的选择步骤 ; S3 : 根据所述除法开方部件的 “忙” 信号来进行标量和向量执行指令的控制的标量和向 量执行指令控制步骤 ; S4 : 根据所述选择信号来生成相应的通路的数据通路选择步骤 ; S5 : 分配所述除法开方部件是否参加运算的分配步骤 ; S6 : 结果数据根据配置进行整理步骤。
11: 如权利要求 7 所述的支持标量复用的非全流水向量除法开方方法, 其中步骤 S1 中 的所述指令包括至少一个标量指令和至少一个向量指令。
12: 如权利要求 10 所述的支持标量复用的非全流水向量除法开方方法, 其中在步骤 S3 中, 利用计数器来统计所述除法开方部件中 “忙” 的部件的数目。 2
13: 如权利要求 12 所述的支持标量复用的非全流水向量除法开方方法, 其中步骤 S5 中 的分配步骤采用了优先级的分配策略。
14: 如权利要求 12 所述的支持标量复用的非全流水向量除法开方方法, 其中步骤 S6 中 的整理步骤采用了根据不同配置实现不同模式的策略。

说明书


支持标量复用的非全流水向量除法开方装置及方法

    技术领域 本发明涉及微处理器体系结构技术领域, 并且具体涉及一种支持标量复用的非全 流水向量除法开方装置及方法。
     背景技术 随着处理器技术的不断发展, 其应用的领域也不断拓展。 尤其随着多媒体运算, 科 学运算等各种运算的增加, 各种通用处理器都在添加单指令流多数据流的指令集。这种单 指令流多数据流的指令集的向量指令都会为有相应的标量指令, 因为, 并不是所有的程序 都是可以向量化的。
     这种向量化扩展, 为增加其运算峰值, 需要并行的增加其功能运算部件。如, 一个 有 256 位宽运算能力的功能部件, 其 64 位的双精度运算部件就需要四个。
     大多数的运算常常是全流水的, 所以其执行标量指令的时候, 其未使用的其它运 算部件不会产生浪费。 而除法开方部件却是非全流水的, 并且其执行拍数不确定, 所以其执 行标量指令时若阻塞其它标量除法开方指令发射, 就会形成对其它几除法开方指令执行部
     件的浪费。
     目前, 国内外尚没有发现支持标量复用的非全流水向量除法开方的相关技术。 发明内容 本发明目的在于提供一种支持标量复用的非全流水向量除法开方装置及方法, 在 其执行标量指令时, 仍可以发射其它的标量除法开方指令, 从而可以大大增加除法开方部 件的利用率。 同时由于除法开方运算是非流水的, 常常阻塞整个功能部件, 这样也增加了其 除法运算能力, 从而大大减少流水线的阻塞, 提高了处理器的运行效率。
     为实现本发明的目的而提供一种支持标量复用的非全流水向量除法开方装置。 该 装置包括控制模块和至少两个除法开方部件, 其中控制模块包括 : 选择模块, 用于产生选择 信号以选择输入数据被送往哪个除法开方部件 ; 标量和向量执行指令控制模块, 用于根据 所述除法开方部件的 “忙” 信号来进行标量和向量执行指令的控制 ; 数据通路选择模块, 用 于根据所述选择信号来生成相应的通路 ; 结果控制模块 : 用于根据配置, 实现不同数据格 式的结果。
     为实现本发明的目的还提供一种支持标量复用的非全流水向量除法开方方法。 该 方法包括以下步骤 : S1 : 发射指令至控制模块的指令发射步骤 ; S2 : 产生选择信号以选择输 入数据被送往哪个除法开方部件的选择步骤 ; S3 : 根据所述除法开方部件的 “忙” 信号来进 行标量和向量执行指令的控制的标量和向量执行指令控制步骤 ; S4 : 根据所述选择信号来 生成相应的通路的数据通路选择步骤 ; S5 : 分配所述除法开方部件是否参加运算的分配步 骤; S6 : 结果数据根据配置进行整理步骤。 。
     本发明的有益效果 : 在本发明的支持标量复用的非全流水向量除法开方装置和方 法中, 对于标量指令复用其子功能部件的结构。 这种结构, 可以使其在保持基本的向量结构
     下, 对标量除法开方指令进行子模块的复用, 也大大提高了功能部件的利用率, 且其硬件代 价不大。 附图说明
     图 1 是依据本发明的一个具体实施例的支持标量复用的非全流水向量除法开方 装置的结构示意图 ;
     图 2 是依据本发明的一个具体实施例的支持标量复用的非全流水向量除法开方 方法的流程图 ;
     图 3 是以向量运算为 256 位宽度时, 单双精度浮点结果的表示方式示意图。 具体实施方式
     为了使本发明的目的、 技术方案及优点更加清楚明白, 以下结合附图及实施例, 对 本发明的提高微处理器部件利用率和运算效率的装置和方法进行进一步详细说明。 应当理 解, 此处所描述的具体实施例仅仅用以解释本发明而不是对本发明的限制。
     下面结合附图和具体实施方式对本发明作进一步详细描述。
     图 1 是依据本发明的一个具体实施例的支持标量复用的非全流水向量除法开方 装置的结构示意图。在这里需要说明的是, 附图中的四个除法开方部件只是一种优选的实 施方式, 该部件可以为二个, 三个, 五个……, 并且这些部件为相同的运算部件。
     指令发射部件可以用于发射指令至控制模块, 该指令可以是一种指令码。 具体地, 每周期一条指令被发射到功能部件, 它的操作数是 256 位的。对于其中的标量指令, 则高位 处的 192 位是无效的。所以, 数据通路为最低的 64 位是可以到达四个除法开方部件中的任 意一个。至于到达其中的哪一个部件, 由控制模块生成的 sel 信号来控制。对于向量运算, 其 256 位的操作数都是有意义的, 所以每个 64 位的操作数都相应地传送到相应的除法功能 模块中去。
     而且, 对于结果也有相应的选择, 只是通路方向反过来, 从四个部件都要有到最低 位的数据通路。 结果的选择信号 res_control 来控制。 最终结果的高位可以做补零等操作。
     在标量和向量指令执行控制中, 控制模块中有一个计数器, 来统计四个模块中忙 的部件的数目。对于每周期发射得到指令, 处理如下 :
     (1)、 如果是一条向量指令, 只要 counter 非零, 则通知上一级除法开方部件 “忙” , 整个功能部件阻塞, 否则这个条向量指令可以发射到四个部件中去并行执行。
     (2)、 若其收到的为标量指令, 则检查 counter 数值, 仅当其值为 4 时, 向上一级反 馈除法开方部件 “忙” 信号。否则, 为其分配一个部件, 进行运算。分配策略也可多样化, 这 里举一种例子, 固定优先级, 即从低到高依次找, 直到找到一个非 “忙” 子部件, 把操作数相 应发送过去, 参与运算。
     在结果选择中, 由于除法开方部件为不定拍数的迭代运算, 所以, 结果的产生可能 不同于发射序, 也会存在竞争。对于结果的竞争, 也可以使用固定优先级。
     例如可以通过连续发射的两个标量指令的情况, 以及若干条向量指令, 紧跟一条 标量指令这两种情况, 来说明这种支持标量复用的非全流水向量除法开方部件的工作方 式。依据本发明的另一具体实施例, 连续发射标量指令。 部件 “忙” 信号共有两组五条, 第一组四个为每个子部件的 “忙” 信号, 另一组为向量除法部件的 “忙” 信号, 它为第一组四 个 “忙” 信号的或 : 表示除法部件中有运算但还未提交到结果总线上的指令。在这种结构 上, 第一条标量指令, 在发射时, 所有的忙信号都未置起, 便从低到高选取, 则生成的子部件 号为 0, 这个部件号作为多路选择器的选择端信号, 送到入口端的多路器中去, 于是, 0 号子 部件收到这条指令, 进行运算, 其子部件 “忙” 信号置起 ; 向量部件忙信号, 也被置起。
     第二条指令发射, 它检查自己的 op 和 fmt 可以确认为一条标量指令, 这时, 控制模 块检查四个子部件忙信号, 从低到高地选择最低且没有置起忙信号的部件号, 这时得到的 子部件号应为 1, 即对应的 sel 信号也为 1 则指令中有效的 64 位数据, 送到 1 号除法开方子 部件, 相应子部件 “忙” 信号置起, 运算开始。
     结果提交时, 由于除法开方指令的执行拍数是不定的。所以常常先发射的指令后 提交, 也有可能同一拍, 多个不同的运算同时提交指令。对于结果的输出, 采用总线竞争的 方式, 一个周期只输出一个结果, 仲裁策略也使用固定优先级, 即 0 号的优先级最高, 其余 依次递减。
     依据本发明的又一具体实施例, 对于若干条标量指令后接一条向量指令。如之前 所述的内容, 第一条指令, 会分配到 0 号子部件。并置起子部 0“忙” 信号和向量除法 “忙” 信号。 后续指令发射时, 控制模块通过 op 和 fmt 判定收到发射的指令是否为向量指令, 并查看向量部件 “忙” 信号。因之前发射了若干条标量指令, 他们在部件中执行, 且可能有 多条都未提交到结果总线上。所以在向量部件 “忙” 置起时, 整个部件阻塞, 即通知前级流 水以功能部件 “满” 信号, 以停止向功能部件发射运算指令。
     阻塞会一直持续, 直到所有的在功能部件里的指令, 都执行完毕, 并通过结果总线 提交后, 所有的子部件 “忙” 信号都会复位到 0, 即此时向量部件 “忙” 也复位到 0。则向量 除法开方指令发射, 阻塞解除, 流水线继续。
     图 2 是依据本发明的一个具体实施例的支持标量复用的非全流水向量除法开方 方法的流程图, 如图 2 所示, 首先, 发射指令至控制模块, 被发射的指令包括至少一个标量 指令和至少一个向量指令。然后产生选择信号以选择输入数据被送往哪个除法开方部件, 接着, 根据所述除法开方部件的 “忙” 信号来进行标量和向量执行指令的控制, 其后, 根据上 面的选择信号来生成相应的通路的数据通路, 并且分配所述除法开方部件是否参加运算, 该分配步骤采用了优先级的分配策略。
     图 3 是对本发明所述的结果格式的说明。根据 IEEE754 标准, 单精度浮点数据为 32 位, 双精度浮点数为 64 位。Result_ 开头的数据表示由灵数据通路经过选择后, 送出的 结果 ; rd_ 开头的表示目的寄存器的原值。这里以 256 位向量宽度为例, 对这三种模式进行 说明。同时对不同格式的支持, 并在此基础上实现了对其的灵活配置。对于不同的场合的 应用提供了很大的便利。
     从前面的具体实施例可以看出, 这种工作方式的优势是很明显的。这种方法相比 于每条指令都提交后再发射下一条的方法, 在指令中多为的标量指令的时候, 效率会大大 提高。而且这种情况比较常见, 因向量处理器, 也常常需要兼容一些已经编译好的, 非向量 化的程序, 这里所有除法运算都是标量的。这种情况下, 效率的提高将更为明显。
     另一方面, 这种方法硬件代价很少, 在面积时序要求不太苛刻的时候, 可以用这种 方法提高运算部件的利用率, 以提高运算效率。
     尽管参照优选实施例已经描述了本发明, 本领域熟练技术人员将认识到, 可以进 行形式和细节上的改变, 只要不脱离本发明的精神和范围。本发明试图不局限于被公开的 具体实施例, 如预期用于实施本发明的最佳模式, 相反, 本发明将包括落入附加权利要求的 范围的全部实施例。

支持标量复用的非全流水向量除法开方装置及方法.pdf_第1页
第1页 / 共10页
支持标量复用的非全流水向量除法开方装置及方法.pdf_第2页
第2页 / 共10页
支持标量复用的非全流水向量除法开方装置及方法.pdf_第3页
第3页 / 共10页
点击查看更多>>
资源描述

《支持标量复用的非全流水向量除法开方装置及方法.pdf》由会员分享,可在线阅读,更多相关《支持标量复用的非全流水向量除法开方装置及方法.pdf(10页珍藏版)》请在专利查询网上搜索。

本发明公开了一种支持标量复用的非全流水向量除法开方装置及方法。该装置包括控制模块和至少两个除法开方部件,其中控制模块包括:选择模块,用于产生选择信号以选择输入数据被送往哪个除法开方部件;标量和向量执行指令控制模块,用于根据所述除法开方部件的“忙”信号来进行标量和向量执行指令的控制;数据通路选择模块,用于根据所述选择信号来生成相应的通路;结果控制模块:用于根据配置,实现不同数据格式的结果。 。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1