数据处理器、方法、装置及芯片制造方法及图纸

技术编号:29010370 阅读:22 留言:0更新日期:2021-06-26 05:10
本申请提供一种数据处理器、方法、装置及芯片,数据处理器包括第一乘法运算电路、第二乘法运算电路以及部分积交换电路,第一乘法运算电路包括第一改进正则有符号数CSD编码支路、第一选择支路及第一改进压缩支路,第二乘法运算电路包括第二改进CSD编码支路、第二选择支路及第二改进压缩支路;第一改进压缩支路和第二改进压缩支路均包括4-2压缩器,4-2压缩器包括选择电路及全加器;该数据处理器不仅能够实现乘法运算,还能够实现乘累加运算,从而提高了数据处理器的通用性;另外,该数据处理器并不需要对乘法运算结果再进行一次累加运算才能完成乘累加运算操作,仅通过一次运算过程就可以直接实现乘累加或乘法运算操作,从而降低了数据处理器的功耗。降低了数据处理器的功耗。降低了数据处理器的功耗。

【技术实现步骤摘要】
数据处理器、方法、装置及芯片


[0001]本申请涉及计算机
,特别是涉及一种数据处理器、方法、装置及芯片。

技术介绍

[0002]随着数字电子技术的不断发展,各类人工智能(Artificial Intelligence,AI)芯片的快速发展对于高性能数据处理器的要求也越来越高,其中,数据处理器为乘法器、加法器或乘累加器。神经网络算法作为智能芯片广泛应用的算法之一,通过乘累加器进行乘累加运算在神经网络算法中是一种常见的操作。
[0003]通常,数据处理器是采用多个相同输入数据位宽或不同数据位宽的乘法器先进行并行乘法运算,得到多个乘法运算结果,再通过加法器对多个乘法运算结果进行累加运算,得到目标乘累加结果。但是,现有的数据处理器仅能够对相同位宽的数据进行乘累加运算,降低了数据处理器的通用性。另外,现有技术中对多个乘法运算结果还需要单独进行一次累加运算才能实现乘累加操作,从而增大了数据处理器的功耗。

技术实现思路

[0004]基于此,有必要针对上述技术问题,提供了一种低功耗且通用性较高的数据处理器、方法、装置及芯片。
[0005]一种数据处理器,所述数据处理器包括:第一乘法运算电路、第二乘法运算电路以及部分积交换电路,所述第一乘法运算电路包括第一改进正则有符号数CSD编码支路、第一选择支路以及第一改进压缩支路,所述第二乘法运算电路包括第二改进CSD编码支路、第二选择支路以及第二改进压缩支路;所述第一改进压缩支路和所述第二改进压缩支路均包括4-2压缩器,所述4-2压缩器包括选择电路以及全加器;所述第一乘法运算电路的输出端与所述部分积交换电路的第一输入端连接,所述部分积交换电路的第一输出端与所述第一乘法运算电路的输入端连接,所述部分积交换电路的第二输出端与所述第二乘法运算电路的第一输入端连接,所述第二乘法运算电路的输出端与所述部分积交换电路的第二输入端连接;
[0006]其中,所述第一乘法运算电路和所述第二乘法运算电路均包括逻辑门单元,所述逻辑门单元的输入端用于接收功能模式选择信号,所述部分积交换电路中包括第三输入端,用于接收所述功能模式选择信号,所述功能模式选择信号用于确定所述数据处理器当前可处理的对应数据运算模式;所述第一改进CSD编码支路用于对接收到的第一数据进行正则有符号数编码处理得到第一目标编码,并根据所述第一目标编码得到第一符号位扩展后的部分积,所述第一选择支路用于从所述第一符号位扩展后的部分积中选择第一目标编码部分积,所述第一改进压缩支路用于对所述第一目标编码部分积进行压缩处理,得到第一目标运算结果,所述第二改进CSD编码支路用于对接收到的第二数据进行正则有符号数编码处理得到第二目标编码,并根据所述第二目标编码得到第二符号位扩展后的部分积,所述第二选择支路用于从所述第二符号位扩展后的部分积中选择第二目标编码部分积,所
述第二改进压缩支路用于对所述第二目标编码部分积进行压缩处理,得到第二目标运算结果,所述部分积交换电路用于根据所述功能模式选择信号,控制是否对所述第一符号位扩展后的部分积,以及所述第二符号位扩展后的部分积进行交换处理。
[0007]在其中一个实施例中,所述第一改进CSD编码支路包括:第一改进CSD编码单元、第一低位部分积获取单元、第一低位选择器组单元、第一低位与逻辑单元、第一高位部分积获取单元、第一高位选择器组单元以及第一高位与逻辑单元;所述第一改进CSD编码单元的第一输出端与所述第一低位部分积获取单元的第一输入端连接,所述第一低位选择器组单元的输出端与所述第一低位部分积获取单元的第二输入端连接,所述第一低位与逻辑单元的输出端与所述第一低位部分积获取单元的第三输入端连接,所述第一改进CSD编码单元的第二输出端与所述第一高位部分积获取单元的第一输入端连接,所述第一高位选择器组单元的输出端与所述第一高位部分积获取单元的第二输入端连接,所述第一高位与逻辑单元的输出端与所述第一高位部分积获取单元的第三输入端连接;
[0008]其中,所述第一改进CSD编码单元用于根据接收到的所述功能模式选择信号确定所述第一乘法运算电路当前可处理数据的位宽,并对接收到的所述第一数据进行正则有符号数编码处理,得到第一低位目标编码以及第一高位目标编码,所述第一低位部分积获取单元用于根据接收到的所述第一低位目标编码以及所述第一数据,得到第一符号位扩展后的低位部分积,所述第一低位选择器组单元用于选通所述第一符号位扩展后的低位部分积中的第一数值,所述第一低位与逻辑单元用于根据接收到的所述功能模式选择信号进行与逻辑运算,得到所述第一符号位扩展后的低位部分积中的第二数值,所述第一高位部分积获取单元用于根据接收到的所述第一高位目标编码以及所述第一数据,得到第一符号位扩展后的高位部分积,所述第一高位选择器组单元用于选通所述第一符号位扩展后的高位部分积中的第三数值,所述第一高位与逻辑单元用于根据接收到的所述功能模式选择信号进行与逻辑运算,得到所述第一符号位扩展后的高位部分积中的第四数值。
[0009]在其中一个实施例中,所述第一改进CSD编码支路中的第一改进CSD编码单元包括:第一数据输入端口、第一模式选择信号输入端口以及第一目标编码输出端口;所述第一数据输入端口用于接收所述第一数据,所述第一模式选择信号输入端口用于接收所述功能模式选择信号,所述第一目标编码输出端口用于输出对所述第一数据进行正则有符号数编码处理后,得到的所述第一低位目标编码和所述第一高位目标编码。
[0010]在其中一个实施例中,所述第一改进CSD编码支路中的第一低位部分积获取单元包括:第一低位目标编码输入端口、第一选通数值输入端口、第二选通数值输入端口、第一数据输入端口以及第一低位部分积输出端口;所述第一低位目标编码输入端口用于接收所述第一改进CSD编码单元输出的所述第一目标编码中的第一低位目标编码,所述第一选通数值输入端口用于接收所述第一低位选择器组单元选通后,输出的所述第一符号位扩展后的低位部分积中的第一数值,所述第二选通数值输入端口用于接收所述第一低位与逻辑单元输出的所述第一符号位扩展后的低位部分积中的第二数值,所述第一数据输入端口用于接收所述第一数据,所述第一低位部分积输出端口用于输出所有第一符号位扩展后的低位部分积。
[0011]在其中一个实施例中,所述第一改进CSD编码支路中的第一低位选择器组单元包括:第一低位选择器,所述第一低位选择器用于选通所述第一符号位扩展后的低位部分积
中的第一数值。
[0012]在其中一个实施例中,所述第一改进CSD编码支路中的第一低位与逻辑单元包括:第一模式选择信号输入端口、第一符号位数值输入端口以及第一结果输出端口;其中,所述第一模式选择信号输入端口用于接收所述功能模式选择信号,所述第一符号位数值输入端口用于接收所述符号位扩展后的低位部分积中的第一符号位数值,所述第一结果输出端口用于输出对所述功能模式选择信号与所述第一符号位数值进行与逻辑运算,得到的第二数值。
[0013]在其中一个实施例中,所述第一改进CSD编码支路中的第一高位选择器组单元包括:第一高本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据处理器,其特征在于,所述数据处理器包括:第一乘法运算电路、第二乘法运算电路以及部分积交换电路,所述第一乘法运算电路包括第一改进正则有符号数CSD编码支路、第一选择支路以及第一改进压缩支路,所述第二乘法运算电路包括第二改进CSD编码支路、第二选择支路以及第二改进压缩支路;所述第一改进压缩支路和所述第二改进压缩支路均包括4-2压缩器,所述4-2压缩器包括选择电路以及全加器;所述第一乘法运算电路的输出端与所述部分积交换电路的第一输入端连接,所述部分积交换电路的第一输出端与所述第一乘法运算电路的输入端连接,所述部分积交换电路的第二输出端与所述第二乘法运算电路的第一输入端连接,所述第二乘法运算电路的输出端与所述部分积交换电路的第二输入端连接;其中,所述第一乘法运算电路和所述第二乘法运算电路均包括逻辑门单元,所述逻辑门单元的输入端用于接收功能模式选择信号,所述部分积交换电路中包括第三输入端,用于接收所述功能模式选择信号,所述功能模式选择信号用于确定所述数据处理器当前可处理的对应数据运算模式;所述第一改进CSD编码支路用于对接收到的第一数据进行正则有符号数编码处理得到第一目标编码,并根据所述第一目标编码得到第一符号位扩展后的部分积,所述第一选择支路用于从所述第一符号位扩展后的部分积中选择第一目标编码部分积,所述第一改进压缩支路用于对所述第一目标编码部分积进行压缩处理,得到第一目标运算结果,所述第二改进CSD编码支路用于对接收到的第二数据进行正则有符号数编码处理得到第二目标编码,并根据所述第二目标编码得到第二符号位扩展后的部分积,所述第二选择支路用于从所述第二符号位扩展后的部分积中选择第二目标编码部分积,所述第二改进压缩支路用于对所述第二目标编码部分积进行压缩处理,得到第二目标运算结果,所述部分积交换电路用于根据所述功能模式选择信号,控制是否对所述第一符号位扩展后的部分积,以及所述第二符号位扩展后的部分积进行交换处理。2.根据权利要求1所述的数据处理器,其特征在于,所述第一改进CSD编码支路包括:第一改进CSD编码单元、第一低位部分积获取单元、第一低位选择器组单元、第一低位与逻辑单元、第一高位部分积获取单元、第一高位选择器组单元以及第一高位与逻辑单元;所述第一改进CSD编码单元的第一输出端与所述第一低位部分积获取单元的第一输入端连接,所述第一低位选择器组单元的输出端与所述第一低位部分积获取单元的第二输入端连接,所述第一低位与逻辑单元的输出端与所述第一低位部分积获取单元的第三输入端连接,所述第一改进CSD编码单元的第二输出端与所述第一高位部分积获取单元的第一输入端连接,所述第一高位选择器组单元的输出端与所述第一高位部分积获取单元的第二输入端连接,所述第一高位与逻辑单元的输出端与所述第一高位部分积获取单元的第三输入端连接;其中,所述第一改进CSD编码单元用于根据接收到的所述功能模式选择信号确定所述第一乘法运算电路当前可处理数据的位宽,并对接收到的所述第一数据进行正则有符号数编码处理,得到第一低位目标编码以及第一高位目标编码,所述第一低位部分积获取单元用于根据接收到的所述第一低位目标编码以及所述第一数据,得到第一符号位扩展后的低位部分积,所述第一低位选择器组单元用于选通所述第一符号位扩展后的低位部分积中的第一数值,所述第一低位与逻辑单元用于根据接收到的所述功能模式选择信号进行与逻辑运算,得到所述第一符号位扩展后的低位部分积中的第二数值,所述第一高位部分积获取单元用于根据接收到的所述第一高位目标编码以及所述第一数据,得到第一符号位扩展后
的高位部分积,所述第一高位选择器组单元用于选通所述第一符号位扩展后的高位部分积中的第三数值,所述第一高位与逻辑单元用于根据接收到的所述功能模式选择信号进行与逻辑运算,得到所述第一符号位扩展后的高位部分积中的第四数值。3.根据权利要求2所述的数据处理器,其特征在于,所述第一改进CSD编码支路中的第一改进CSD编码单元包括:第一数据输入端口、第一模式选择信号输入端口以及第一目标编码输出端口;所述第一数据输入端口用于接收所述第一数据,所述第一模式选择信号输入端口用于接收所述功能模式选择信号,所述第一目标编码输出端口用于输出对所述第一数据进行正则有符号数编码处理后,得到的所述第一低位目标编码和所述第一高位目标编码。4.根据权利要求2至3中任一项所述的数据处理器,其特征在于,所述第一改进CSD编码支路中的第一低位部分积获取单元包括:第一低位目标编码输入端口、第一选通数值输入端口、第二选通数值输入端口、第一数据输入端口以及第一低位部分积输出端口;所述第一低位目标编码输入端口用于接收所述第一改进CSD编码单元输出的所述第一目标编码中的第一低位目标编码,所述第一选通数值输入端口用于接收所述第一低位选择器组单元选通后,输出的所述第一符号位扩展后的低位部分积中的第一数值,所述第二选通数值输入端口用于接收所述第一低位与逻辑单元输出的所述第一符号位扩展后的低位部分积中的第二数值,所述第一数据输入端口用于接收所述第一数据,所述第一低位部分积输出端口用于输出所有第一符号位扩展后的低位部分积。5.根据权利要求2至4中任一项所述的数据处理器,其特征在于,所述第一改进CSD编码支路中的第一低位选择器组单元包括:第一低位选择器,所述第一低位选择器用于选通所述第一符号位扩展后的低位部分积中的第一数值。6.根据权利要求2至5中任一项所述的数据处理器,其特征在于,所述第一改进CSD编码支路中的第一低位与逻辑单元包括:第一模式选择信号输入端口、第一符号位数值输入端口以及第一结果输出端口;其中,所述第一模式选择信号输入端口用于接收所述功能模式选择信号,所述第一符号位数值输入端口用于接收所述符号位扩展后的低位部分积中的第一符号位数值,所述第一结果输出端口用于输出对所述功能模式选择信号与所述第一符号位数值进行与逻辑运算,得到的第二数值。7.根据权利要求2至6中任一项所述的数据处理器,其特征在于,所述第一改进CSD编码支路中的第一高位选择器组单元包括:第一高位选择器,所述第一高位选择器用于选通所述第一符号位扩展后的高位部分积中的第三数值。8.根据权利要求2至7中任一项所述的数据处理器,其特征在于,所述第一改进CSD编码支路中的第一高位与逻辑单元包括:第二模式选择信号输入端口、第二符号位数值输入端口以及第二结果输出端口;其中,所述第二模式选择信号输入端口用于接收所述功能模式选择信号,所述第二符号位数值输入端口用于接收所述符号位扩展后的高位部分积中的第二符号位数值,所述第二结果输出端口用于输出对所述功能模式选择信号与所述第二符号位数值进行与逻辑运算,得到的第四数值。9.根据权利要求2至8中任一项所述的数据处理器,其特征在于,所述第一改进CSD编码支路中的第一高位部分积获取单元包括:第一高位目标编码输入端口、第三选通数值输入端口、第四选通数值输入端口、第一数据输入端口以及第一高位部分积输出端口;所述第一
高位目标编码输入端口用于接收所述第一改进CSD编码单元输出的所述第一目标编码中的第一高位目标编码,所述第三选通数值输入端口用于接收所述第一高位选择器组单元选通后,输出的所述第一符号位扩展后的高位部分积中的第三数值,所述第四选通数值输入端口用于接收所述第一高位与逻辑单元输出的所述第一符号位扩展后的高位部分积中的第四数值,所述第一数据输入端口用于接收所述第一数据,所述第一高位部分积输出端口用于输出所有第一符号位扩展后的高位部分积。10.根据权利要求1至9中任一项所述的数据处理器,其特征在于,所述第一乘法运算电路中的第一选择支路包括:第一部分积选择子电路;其中,所述第一部分积选择子电路用于接收所述部分积交换电路输出的所述第二符号位扩展后的部分积,以及对所述第一符号位扩展后的部分积进行选择,并且将所述部分积交换电路输出的所述第二符号位扩展后的部分积,以及选择后得到的所述第一符号位扩展后的部分积,作为所述第一目标编码部分积输入至所述第一改进压缩支路。11.根据权利要求10所述的数据处理器,其特征在于,所述第一选择支路包括第一部分积选择子电路,所述第一部分积选择子电路包括:功能模式选择信号输入端口、第一部分积输入端口、第二部分积输入端口、第一部分积输出端口以及第一选通部分积输出端口;所述功能模式选择信号输入端口用于接收所述功能模式选择信号,所述第一部分积输入端口用于接收所述第一改进CSD编码支路得到的所有第一符号位扩展后的部分积,所述第二部分积输入端口用于接收所述部分积交换电路进行交换的所述第二符号位扩展后的低位部分积或者所述第二符号位扩展后的高位部分积,所述第一部分积输出端口用于输出需要所述部分积交换电路进行交换的所述第一符号位扩展后的低位部分积或者所述第一符号位扩展后的高位部分积,所述选通部分积输出端口用于输出未交换处理的所述第一符号位扩展后的高位部分积,以及接收到的所述第二符号位扩展后的低位部分积,或者输出未交换处理的所述第一符号位扩展后的低位部分积,以及接收到的所述第二符号位扩展后的高位部分积,或者未处理的所有第一符号位扩展后的部分积。12.根据权利要求1至11中任一项所述的数据处理器,其特征在于,所述第二改进CSD编码支路包括:第二改进CSD编码单元、第二低位部分积获取单元、第二低位选择器组单元、第二低位与逻辑单元、第二高位部分积获取单元、第二高位选择器组单元以及第二高位与逻辑单元;所述第二改进CSD编码单元的第一输出端与所述第二低位部分积获取单元的第一输入端连接,所述第二低位选择器组单元的输出端与所述第二低位部分积获取单元的第二输入端连接,所述第二低位与逻辑单元的输出端与所述第二低位部分积获取单元的第三输入端连接,所述第二改进CSD编码单元的第二输出端与所述第二高位部分积获取单元的第一输入端连接,所述第二高位选择器组单元的输出端与所述第二高位部分积获取单元的第二输入端连接,所述第二高位与逻辑单元的输出端与所述第二高位部分积获取单元的第三输入端连接;其中,所述第二改进CSD编码单元用于根据接收到的所述功能模式选择信号确定所述第二乘法运算电路当前可处理数据的位宽,并对接收到的所述第二数据进行正则有符号数编码处理得到第二低位目标编码以及第二高位目标编码,所述第二低位部分积获取单元用于根据接收到的所述第二低位目标编码以及所述第二数据,得到第二符号位扩展后的低位部分积,所述第二低位选择器组单元用于选通所述第二符号位扩展后的低位部分积中的第
五数值,所述第二低位与逻辑单元用于根据接收到的所述功能模式选择信号进行与逻辑运算,得到所述第二符号位扩展后的低位部分积中的第六数值,所述第二高位部分积获取单元用于根据接收到的所述第二高位目标编码以及所述第二数据,得到第二符号位扩展后的高位部分积,所述第二高位选择器组单元用于选通所述第二符号位扩展后的高位部分积中的第七数值,所述第二高位与逻辑单元用于根据接收到的所述功能模式选择信号进行与逻辑运算,得到所述第二符号位扩展后的高位部分积中的第八数值。13.根据权利要求1至12中任一项所述的数据处理器,其特征在于,所述数据处理器中的第二选择支路包括第二部分积选择子电路,所述第二部分积选择子电路包括:功能模式选择信号输入端口、第一部分积输入端口、第二部分积输入端口、第一部分积输出端口以及第二选通部分积输出端口;所述功能模式选择信号输入端口用于接收所述功能模式选择信号,所述第一部分积输入端口用于接收所述部分积交换电路进行交换的所述第一符号位扩展后的低位部分积或者所述第一符号位扩展后的高位部分积,所述第二部分积输入端口用于接收所述第二改进CSD编码支路得到的所有第二符号位扩展后的部分积,所述第一部分积输出端口用于输出需要所述部分积交换电路进行交换的所述第二符号位扩展后的低位部分积或者所述第二符号位扩展后的高位部分积,所述第二选通部分积输出端口用于输出未交换处理的所述第二符号位扩展后的高位部分积,以及接收到的所述第一符号位扩展后的低位部分积,或者输出未交换处理的所述第二符号位扩展后的低位部分积,以及接收到的所述第一符号位扩展后的高位部分积,或者未处理的所有第二符号位扩展后的部分积。14.根据权利要求1至13中任一项所述的数据处理器,其特征在于,所述数据处理器中的第一乘法运算电路包括第一改进压缩支路,所述第一改进压缩支路包括第一改进华莱士树单元以及第一改进累加单元,所述第一改进华莱士数单元的输出端与所述第一改进累加单元的输入端连...

【专利技术属性】
技术研发人员:ꢀ七四专利代理机构
申请(专利权)人:上海寒武纪信息科技有限公司
类型:发明
国别省市:

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

1