乘法器、数据处理方法、芯片及电子设备技术

技术编号:24798755 阅读:23 留言:0更新日期:2020-07-07 20:55
本申请提供一种乘法器、数据处理方法、芯片及电子设备,该乘法器包括:乘法运算电路、寄存控制电路、寄存器电路、状态控制电路以及选择电路;或者所述乘法器包括:乘法运算电路和转数电路,上述乘法器可以对接收到的数据进行乘法运算得到运算结果,并根据运算结果得到目标运算结果,从而使得获得的运算结果的位宽,可以小于乘法器输入数据位宽的2倍,从而有效降低了乘法器对输入输出端口位宽的要求。

【技术实现步骤摘要】
乘法器、数据处理方法、芯片及电子设备
本专利技术涉及计算机
,特别是涉及一种乘法器、数据处理方法、芯片及电子设备。
技术介绍
随着数字电子技术的不断发展,各类人工智能(ArtificialIntelligence,AI)芯片的快速发展对于高性能数字乘法器的要求也越来越高。神经网络算法作为智能芯片广泛应用的算法之一,通过乘法器进行乘法运算在神经网络算法中是一种常见的操作。大部分传统的乘法器,是采用布斯算法求取部分积,通过华莱士树电路进行部分积的压缩,然后用一个对应位宽的加法器进行对压缩结果进行累计并输出运算结果。但是,现有的乘法器中输出端口的位宽必须要等于输入端口位宽的2倍,导致乘法器对输入输出端口位宽的要求较高。
技术实现思路
基于此,有必要针对上述技术问题,提供一种乘法器、数据处理方法、芯片及电子设备。本专利技术实施例提供一种乘法器,包括:乘法运算电路、寄存控制电路、寄存器电路、状态控制电路以及选择电路,所述乘法运算电路的输出端与所述寄存控制电路的第一输入端连接,所述寄存控制电路的输出端与所述寄存器电路的输入端连接,所述寄存器电路的输出端与所述选择电路的第一输入端连接,所述状态控制电路的第一输出端与所述寄存控制电路的第二输入端连接,所述状态控制电路的第二输出端与所述选择电路的第二输入端连接;其中,所述乘法运算电路用于对接收到的数据进行乘法运算得到乘法运算结果,所述状态控制电路用于获取存储指示信号以及读取指示信号,所述寄存控制电路用于根据所述状态控制电路输入的所述存储指示信号,确定存储所述乘法运算结果的所述寄存器电路,所述寄存器电路用于存储所述乘法运算结果,所述选择电路用于根据接收到的所述读取指示信号,读取所述寄存器电路中存储的所述乘法运算结果中的数据,作为运算结果。在其中一个实施例中,所述乘法运算电路包括:布斯编码处理子电路、部分积获取子电路以及累加子电路,所述布斯编码处理子电路的输出端与所述部分积获取子电路输入端连接,所述部分积获取子电路的输出端与所述累加子电路的输入端连接;其中,所述布斯编码处理子电路用于对接收到的数据进行布斯编码处理得到编码信号,所述部分积获取子电路用于根据编码信号得到原始部分积,并根据所述原始部分积进行逻辑运算处理,得到符号位扩展后的部分积,所述累加子电路用于对符号位扩展后的部分积进行修正累加处理。在其中一个实施例中,所述极值寄存器电路,该寄存器电路包括:寄存单元,所述寄存单元用于对不同存储指示信号对应的所述乘法运算结果进行存储。本实施例提供的一种乘法器,该乘法器可以对接收到的数据进行乘法运算得到运算结果,并根据运算结果得到目标运算结果,从而使得获得的运算结果的位宽,可以小于乘法器输入的数据位宽的2倍,从而有效降低了乘法器对输入输出端口位宽的要求。本专利技术实施例提供一种乘法器,包括:乘法运算电路和转数电路,所述乘法运算电路的输出端与所述转数电路的输入端连接,所述转数电路包括第一转换单元和第二转换单元;其中,所述乘法运算电路用于对接收到的数据进行乘法运算得到乘法运算结果,所述第一转换单元及第二转换单元分别用于对所述乘法运算结果进行转数处理,得到运算结果。在其中一个实施例中,所述转数电路中包括输入端口,用于接收数据转换信号;所述数据转换信号用于确定转数电路处理的数据转换类型。在其中一个实施例中,所述第一转换单元具体用于将所述乘法运算结果转换成浮点类型的运算结果,所述第二转换单元具体用于将所述乘法运算结果转换成定点类型的运算结果。本实施例提供的一种乘法器,该乘法器可以对接收到的数据进行乘法运算得到乘法运算结果,并通过转数电路将乘法运算结果,转换成位宽与乘法器输出端口位宽相等的数据后,输出运算结果,使得获得的运算结果的位宽,可以小于乘法器输入的数据位宽的2倍,从而有效降低了乘法器对输入输出端口位宽的要求。本专利技术实施例提供一种数据处理方法,所述方法包括:接收待处理数据;对所述待处理数据进行乘法运算处理得到乘法运算结果;获取存储指示信号以及读取指示信号;根据所述存储指示信号将多个所述乘法运算结果存储至不同的寄存单元中;根据所述读取指示信号,读取不同寄存单元中存储的对应所述乘法运算结果中的部分数据,得到运算结果。在其中一个实施例中,所述对所述待处理数据进行乘法处理得到乘法运算结果,包括:将所述待处理数据进行布斯编码处理,得到原始部分积;根据所述原始部分积进行逻辑运算处理,得到符号位扩展后的部分积;对所述符号位扩展后的部分积进行修正累加处理,得到乘法运算结果。在其中一个实施例中,所述将所述待处理数据进行布斯编码处理,得到原始部分积,包括:对所述待处理数据进行布斯编码处理,得到编码信号;根据所述待处理数据与所述编码信号,得到所述原始部分积。在其中一个实施例中,所述根据所述原始部分积进行逻辑运算处理,得到符号位扩展后的部分积,包括:对所述原始部分积的高两位数值进行异或,取反和与逻辑运算处理,得到符号位扩展后的部分积。在其中一个实施例中,所述根据所述存储指示信号将多个所述乘法运算结果存储至不同的寄存单元中,包括:将第一存储指示信号对应的第一乘法运算结果存储至第一寄存单元中;将第二存储指示信号对应的第二乘法运算结果存储至第二寄存单元中。在其中一个实施例中,所述根据所述读取指示信号,读取不同寄存单元中存储的对应所述乘法运算结果中的部分数据,得到运算结果,包括:根据第一读取指示信号,读取所述第一寄存单元中存储的第一乘法运算结果中的第一部分数据,得到第一运算结果;根据第二读取指示信号,读取所述第一寄存单元中存储的所述第一乘法运算结果中的第二部分数据,得到第二运算结果;根据第三读取指示信号,读取所述第二寄存单元中存储的第二乘法运算结果中的第一部分数据,得到第三运算结果;根据第四读取指示信号,读取所述第二寄存单元中存储的所述第二乘法运算结果中的第二部分数据,得到第四运算结果。本实施例提供的一种数据处理方法,该方法可以对接收到的数据进行乘法运算得到运算结果,使得获得的运算结果的位宽,可以小于乘法器输入的数据位宽的2倍,从而有效降低了乘法器对输入输出端口位宽的要求。本专利技术实施例提供一种数据处理方法,所述方法包括:接收数据转换信号以及待处理数据;对所述待处理数据进行乘法运算处理得到乘法运算结果;根据所述数据转换信号将所述乘法运算结果进行转数处理,得到运算结果。本实施例提供的一种数据处理方法,该方法在保证乘法器在符号位扩展处理的基础上,可以提高乘法运算结果的准确性,有效降低乘法器的功耗。本专利技术实施例提供的一种机器学习运算装置,该机器学习运算装置包括一个或者多个所述的乘法器;该机器学习运算装置用于从其它处理装置中获取待运算数据和控制信息,并执行指定的机器学习运算,将执行结果通过I/O接口传递给其它处理装置;当所述机器学习本文档来自技高网...

【技术保护点】
1.一种乘法器,其特征在于,所述乘法器包括:乘法运算电路、寄存控制电路、寄存器电路、状态控制电路以及选择电路,所述乘法运算电路的输出端与所述寄存控制电路的第一输入端连接,所述寄存控制电路的输出端与所述寄存器电路的输入端连接,所述寄存器电路的输出端与所述选择电路的第一输入端连接,所述状态控制电路的第一输出端与所述寄存控制电路的第二输入端连接,所述状态控制电路的第二输出端与所述选择电路的第二输入端连接;/n其中,所述乘法运算电路用于对接收到的数据进行乘法运算得到乘法运算结果,所述状态控制电路用于获取存储指示信号以及读取指示信号,所述寄存控制电路用于根据所述状态控制电路输入的所述存储指示信号,确定存储所述乘法运算结果的所述寄存器电路,所述寄存器电路用于存储所述乘法运算结果,所述选择电路用于根据接收到的所述读取指示信号,读取所述寄存器电路中存储的所述乘法运算结果中的数据,作为运算结果。/n

【技术特征摘要】
1.一种乘法器,其特征在于,所述乘法器包括:乘法运算电路、寄存控制电路、寄存器电路、状态控制电路以及选择电路,所述乘法运算电路的输出端与所述寄存控制电路的第一输入端连接,所述寄存控制电路的输出端与所述寄存器电路的输入端连接,所述寄存器电路的输出端与所述选择电路的第一输入端连接,所述状态控制电路的第一输出端与所述寄存控制电路的第二输入端连接,所述状态控制电路的第二输出端与所述选择电路的第二输入端连接;
其中,所述乘法运算电路用于对接收到的数据进行乘法运算得到乘法运算结果,所述状态控制电路用于获取存储指示信号以及读取指示信号,所述寄存控制电路用于根据所述状态控制电路输入的所述存储指示信号,确定存储所述乘法运算结果的所述寄存器电路,所述寄存器电路用于存储所述乘法运算结果,所述选择电路用于根据接收到的所述读取指示信号,读取所述寄存器电路中存储的所述乘法运算结果中的数据,作为运算结果。


2.根据权利要求1所述的乘法器,其特征在于,所述乘法运算电路包括:布斯编码处理子电路、部分积获取子电路以及累加子电路,所述布斯编码处理子电路的输出端与所述部分积获取子电路输入端连接,所述部分积获取子电路的输出端与所述累加子电路的输入端连接;
其中,所述布斯编码处理子电路用于对接收到的数据进行布斯编码处理得到编码信号,所述部分积获取子电路用于根据编码信号得到原始部分积,并根据所述原始部分积进行逻辑运算处理,得到符号位扩展后的部分积,所述累加子电路用于对符号位扩展后的部分积进行修正累加处理。


3.根据权利要求1所述的乘法器,其特征在于,所述寄存器电路,该寄存器电路包括:寄存单元,所述寄存单元用于将不同存储指示信号对应的所述乘法运算结果进行存储。


4.一种乘法器,其特征在于,所述乘法器包括:乘法运算电路和转数电路,所述乘法运算电路的输出端与所述转数电路的输入端连接,所述转数电路包括第一转换单元和第二转换单元;
其中,所述乘法运算电路用于对接收到的数据进行乘法运算得到乘法运算结果,所述第一转换单元及第二转换单元分别用于对所述乘法运算结果进行转数处理,得到运算结果。


5.根据权利要求4所述的乘法器,其特征在于,所述转数电路中包括输入端口,用于接收数据转换信号;所述数据转换信号用于确定转数电路处理的数据转换类型。


6.根据权利要求4所述的乘法器,其特征在于,所述第一转换单元具体用于将所述乘法运算结果转换成浮点类型的运算结果,所述第二转换单元具体用于将所述乘法运算结果转换成定点类型的运算结果。


7.一种数据处理方法,其特征在于,所述方法包括:
接收待处理数据;
对所述待处理数据进行乘法运算处理得到乘法运算结果;
获取存储指示信号以及读取指示信号;
根据所述存储指示信号将多个所述乘法运算结果存储至不同的寄存单元中;
根据所述读取指示信号,读取不同寄存单元中存储的对应所述乘法运算结果中的部分数据,得到运算结果。


8.根据权利要求7所述的方法,其特征在于,所述对所述待处理数据进行乘法处理得到乘法运算结果,包括:
将所述待处理数据进行布斯编码处理,得到原始部分积;
根据所述原始部分积进行逻辑运算处理,得到符号位扩展后的部分积;
对所述符号位扩展后的部分积进行修正累加处理,得到乘法运算结果。


9.根据权利要求8所述的方法,其特征在于,所述将所述待处理数据进行布斯编码处理,得到原始部分积,包括:
对所述待处理数据进行布斯编码处理,得到编码信号;
根据所述待处理数据与所述编码信号,得到所述原始部分积。


10.根据权利要求8所述的方法,其特征在于,所述根据所述原始部分积进行逻辑运算处理,得到符...

【专利技术属性】
技术研发人员:不公告发明人
申请(专利权)人:上海寒武纪信息科技有限公司
类型:发明
国别省市:上海;31

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

1