[发明专利]用于向量运算的数据读取、写入及读写调度器及保留站有效
申请号: | 201810455211.2 | 申请日: | 2016-01-20 |
公开(公告)号: | CN108595371B | 公开(公告)日: | 2019-11-19 |
发明(设计)人: | 韩栋;刘少礼;陈云霁;陈天石 | 申请(专利权)人: | 北京中科寒武纪科技有限公司 |
主分类号: | G06F15/78 | 分类号: | G06F15/78 |
代理公司: | 11606 北京华进京联知识产权代理有限公司 | 代理人: | 王程<国际申请>=<国际公布>=<进入国 |
地址: | 100190 北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 调度器 数据读取 向量运算 写入 预处理模块 数据读写 指令 冲突 读取控制模块 向量运算部件 写入控制模块 调度 读取指令 写入指令 暂停指令 重新执行 写冲突 保留 读写 探测 时机 申请 保证 | ||
本申请提供了一种用于向量运算的数据读取调度器、数据写入调度器、数据读写调度器、保留站以及用于向量运算的数据读取调度方法及数据写入调度方法。在该数据读写调度器中,通过设置读取指令预处理模块、读取控制模块、写入指令预处理模块及写入控制模块,并通过相互探测冲突指令,在存在冲突的情况下,暂停指令的执行,待时机满足后重新执行指令,从而解决指令之间的读后写冲突和写后读冲突,保证提供给向量运算部件正确的数据。
本申请是申请日为2016年01月20日、申请号为201610038178.4、专利名称为“用于向量运算的数据读写调度器及保留站”的分案申请。
技术领域
本申请涉及计算机技术领域,尤其涉及一种用于向量运算的数据读取调度器、数据写入调度器、数据读写调度器、保留站及用于向量运算的数据读取调度方法及写入调度方法。
背景技术
向量运算尤其是矩阵运算,被广泛用于机器学习、模式识别、图像处理、图计算等领域。特别是近年来发展起来的深度学习算法,由于这些深度学习算法具有较高的识别准确度以及较好的可并行性,受到日益增多的关注。
向量读写指令会在单个指令内部同时读写多个数据,多个向量读写指令之间往往由于算法的原因,存在相互依赖关系,一方面向量读写指令之后可能会存在与之读取地址有交叠的向量写入指令,即读后写冲突,另一方面向量写入指令之后可能会存在与之写入地址有交叠的向量读取指令,即写后读冲突。
目前的常用的图形处理器可以支持各种复杂的向量运算,通过通用寄存器堆和通用流处理单元执行通用的SIMD(Single Instruction Multiple Data,单指令多数据流)指令来支持向量运算。但是,由于其主要执行图形图像运算,而且通过大量的额外寄存器来缓存读取数据,以及大量的计算部件来并行读取与执行计算,因而,其不仅需要RAM(RandomAccess Memory,随机存储器)支持多个读写通道,增加了片上RAM的大小限制,同时,在计算部件有限,需要进行大量数据运算时,仍然需要较多的指令,增加了前段译码工作的开销。
对于通用处理器来说,其使用SISD(Single Instruction Single Data stream,单指令流单数据流)指令进行复杂的向量运算。这样,不仅需要较多的指令用于处理向量运算,同样在处理读后写相关和写后读相关时,需要更多的寄存器组来记录相关信息,这样大幅增加了向量运算的开销。
发明内容
鉴于上述技术问题,本申请提供了一种用于向量运算的数据读写调度器及保留站,以克服现有向量计算中读后写冲突和写后读冲突。
在一个实施例中,本申请提供了一种用于向量运算的数据读取调度器。该数据读取调度器包括读取指令预处理模块和读取控制模块,其中,读取指令预处理模块包括读取指令预处理单元,所述读取指令预处理单元用于接收向量读取指令,检测所述向量读取指令与数据写入调度器中存放的向量写入指令之间是否存在写后读冲突,如果是,则将与所述向量读取指令存在写后读冲突的向量写入指令作为所述向量读取指令依赖的向量写入指令;
读取控制模块包括读取控制单元,所述读取控制单元用于根据接收到的所述向量读取指令解析出一个或多个单个读取请求,并根据所述向量读取指令依赖的向量写入指令的状态决定是否满足执行所述读取请求的时机;在满足执行所述单个读取请求的时机时,向片上RAM发送所述单个读取请求,从所述片上RAM接收输入数据。
在一个实施例中,本申请提供了一种用于向量运算的数据写入调度器。该数据写入调度器包括写入指令预处理单元和写入控制模块,其中,写入指令预处理单元用于接收向量写入指令,检测所述向量写入指令和数据读取调度器中存放的向量读取指令之间是否存在读后写冲突,如果是,则将与所述向量写入指令存在读后写冲突的向量读取指令作为所述向量写入指令依赖的向量读取指令;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京中科寒武纪科技有限公司,未经北京中科寒武纪科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810455211.2/2.html,转载请声明来源钻瓜专利网。