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

技术编号:24459009 阅读:32 留言:0更新日期:2020-06-10 16:25
本申请提供一种数据选择器、数据处理方法、芯片和电子设备,数据选择器包括:数据读入电路、循环比较电路、结束判断电路和极值寄存电路;数据读入电路的第一输出端与循环比较电路的第一输入端及结束判断电路的输入端连接,结束判断电路的第一输出端与数据读入电路的第一输入端及极值寄存电路的第一输入端连接,极值寄存电路的第一输出端与循环比较电路的第二输入端连接,循环比较电路的输出端与极值寄存电路的第二输入端连接,该数据选择器可以对多个数据进行循环比较,得到其中的极大值和极小值,节省运算时间;另外,数据选择器能够根据循环比较电路接收到的不同功能选择模式信号处理多种不同位宽的数据比较运算,有效减小了数据选择器占用AI芯片的面积。

Data selector, data processing method, chip and electronic equipment

【技术实现步骤摘要】
数据选择器、数据处理方法、芯片及电子设备
本专利技术涉及计算机
,特别是涉及一种数据选择器、数据处理方法、芯片及电子设备。
技术介绍
随着数字电子技术的不断发展,各类人工智能(ArtificialIntelligence,AI)芯片的快速发展对于高性能数字比较器的要求也越来越高。神经网络算法作为智能芯片广泛应用的算法之一,从多个数据中选取极值的运算在神经网络算法中是一种常见的操作。通常,由于大量的各种数据都需要输入到数据比较器进行比较,而现有的数据比较器每一次只能对两个数据进行比较,导致数据比较器的运算量过大,运算时间较长,影响了数据比较器的处理效率。另外,不同位宽的多个数据运算时,相同位宽的数据采用对应位数现有的数据选择器进行运算,而不同位宽的数据需要采用多个不同位宽现有的数据选择器进行运算。但是,针对不同位宽的数据采用不同的数据选择器进行比较运算,导致数据选择器占用AI芯片的面积较大。
技术实现思路
基于此,有必要针对上述技术问题,提供一种数据选择器、数据处理方法、芯片及电子设备。本专利技术实施例提供一种数据选择器,所述数据选择器包括:数据读入电路、循环比较电路、结束判断电路和极值寄存电路;其中,所述数据读入电路的第一输出端与所述循环比较电路的第一输入端及所述结束判断电路的输入端连接,所述结束判断电路的第一输出端与所述数据读入电路的第一输入端及所述极值寄存电路的第一输入端连接,所述极值寄存电路的第一输出端与所述循环比较电路的第二输入端连接,所述循环比较电路的输出端与所述极值寄存电路的第二输入端连接;所述数据读入电路用于接收数据的个数N,并根据寄存器中N个存储区间的首地址和所述数据的个数N读入所述数据,所述循环比较电路用于循环比较接收到的N个所述数据的大小,所述结束判断电路用于判断循环比较处理是否结束,所述极值寄存电路用于输出比较运算的结果。在其中一个实施例中,所述循环比较电路中包括功能选择模式输入端口,用于接收输入的功能选择模式信号;所述功能选择模式信号用于确定数据选择器处理的数据的位宽。在其中一个实施例中,所述数据读入电路包括:地址计数器和标量数据读取单元,所述地址计数器的输出端与所述标量数据读取单元的输入端连接,所述地址计数单元用于接收所述数据的个数N,根据寄存器中N个存储区间的首地址和所述数据的个数N读入所述数据,并累加记录比较运算时寄存器中存储区间对应的地址移位数据,所述标量数据读取单元用于根据每一次比较运算时当前寄存器存储区间的地址读取一个所述数据输入到所述循环比较电路。在其中一个实施例中,所述数据读入电路中的所述地址计数器包括:数据个数输入端口,数据输入端口,地址计数数值输出端口和数据输出端口,所述数据个数输入端口用于接收读入所述数据的个数N,所述数据输入端口用于根据寄存器中N个存储区间的首地址和所述数据的个数N读入所述数据,所述地址计数数值输出端口用于输出累加记录比较运算读入数据时,寄存器中存储区间对应的地址移位数据,所述数据读入端口用于读入寄存器存储区间中存储的数据,所述数据输出端口用于输出读取的数据;所述数据读入电路中的所述标量数据读取单元包括:逻辑信号输入端口,数据读取端口和数据输出端口,所述逻辑信号输入端口用于接收所述结束判断电路的判断结果,所述数据读取端口用于读取每一次比较运算时所述地址计数器接收的所述数据,所述数据输出端口用于将读取的所述数据输入到所述循环比较电路中。在其中一个实施例中,所述循环比较电路包括:第一复用比较器和第二复用比较器,所述第一复用比较器用于对两个数据进行比较得到最大的数据,所述第二复用比较器用于对两个数据进行比较得到最小的数据;所述第一复用比较器或第二复用比较器包括:功能选择模式信号输入端口,数据输入端口,调用极值输入端口,极大值输出端口,极小值输出端口和判断信号输出端口;所述功能选择模式信号输入端口用于接收需要处理不同位宽的数据对应的功能选择模式信号,所述数据输入端口用于接收输入的所述数据,所述调用极值输入端口用于接收每一次数据比较运算结束后所述极值寄存电路中存储的极值,所述极大值输出端口用于输出每一次数据比较运算后的极大值,所述极小值输出端口用于输出每一次数据比较运算后的极小值,所述判断信号输出端口用于输出是否停止采用所述第二复用比较器进行比较运算的逻辑信号。在其中一个实施例中,所述结束判断电路包括:判断单元,所述判断单元用于判断地址计数器累加记录的寄存器中存储区间对应的地址移位数值,与比较N个数据总共需要的地址移位数值的大小;所述判断单元包括:地址计数数值输入端口和判断结果输出端口,地址计数数值输入端口用于接收地址计数器输出的累加记录比较运算读入数据时,寄存器存储区间对应的地址移位数据,所述判断结果输出端口用于输出累加记录比较运算读入数据时,寄存器中存储区间对应的地址移位数据,与比较N个数据寄存器总共需要的地址移位数值的比较结果。在其中一个实施例中,所述极值寄存单元包括:极大值寄存单元和极小值寄存单元;所述极大值寄存单元用于存储所述第一复用比较器每一次比较运算后得到的极大值,所述极小值寄存单元用于存储所述第二复用比较器每一次比较运算后得到的极小值。在其中一个实施例中,所述极值寄存单元中的所述极大值寄存单元包括:极大值调用输出端口,极大值输入端口,极大值输出端口和第一判断信号输入端口,所述极大值调用输出端口用于每一次比较运算时,输出所述极大值寄存单元中存储的极大值,所述极大值输入端口用于接收每一次比较运算后得到的极大值,所述极大值输出端口用于循环比较结束后输出N个所述数据中的极大值,所述第一判断信号输入端口用于接收所述结束判断电路输出的逻辑判断信号;所述极值寄存单元中的所述极小值寄存单元包括:极小值调用输出端口,极小值输入端口,极小值输出端口和第二判断信号输入端口,所述极小值调用输出端口用于每一次比较运算时,输出所述极小值寄存单元中存储的极小值,所述极小值输入端口用于接收每一次比较运算后得到的极小值,所述极小值输出端口用于循环比较结束后输出N个所述数据中的极小值,所述第二判断信号输入端口用于接收所述结束判断电路输出的逻辑判断信号。本实施例提供的一种数据选择器,通过数据读入电路读入多个数据,循环比较电路循环比较数据读入电路读入的多个数据,当比较完多个数据时,结束判断单元的结果为是,并通过极值寄存电路输出比较运算结果,从而可以对多个待处理的数据进行循环比较,得到其中的极大值和极小值,节省运算时间;另外,数据选择器能够根据循环比较电路接收到的不同功能选择模式信号处理多种不同位宽的数据比较运算,有效减小了数据选择器占用AI芯片的面积。本专利技术实施例提供一种数据处理方法,所述方法包括:接收待处理的数据;对待处理的所述数据进行循环比较运算;获取当前寄存器存储区间对应的地址移位数据;根据当前寄存器存储区间对应的所述地址移位数据,判断是否满足结束所述循环比较运算的条件;若满足结束所述循环比较运算的条件,则输出向量极值。在其中一个实施例中本文档来自技高网...

【技术保护点】
1.一种数据选择器,其特征在于,所述数据选择器包括:数据读入电路、循环比较电路、结束判断电路和极值寄存电路;其中,所述数据读入电路的第一输出端与所述循环比较电路的第一输入端及所述结束判断电路的输入端连接,所述结束判断电路的第一输出端与所述数据读入电路的第一输入端及所述极值寄存电路的第一输入端连接,所述极值寄存电路的第一输出端与所述循环比较电路的第二输入端连接,所述循环比较电路的输出端与所述极值寄存电路的第二输入端连接;/n所述数据读入电路用于接收数据的个数N,并根据寄存器中N个存储区间的首地址和所述数据的个数N读入所述数据,所述循环比较电路用于循环比较接收到的N个所述数据的大小,所述结束判断电路用于判断循环比较处理是否结束,所述极值寄存电路用于输出比较运算的结果。/n

【技术特征摘要】
1.一种数据选择器,其特征在于,所述数据选择器包括:数据读入电路、循环比较电路、结束判断电路和极值寄存电路;其中,所述数据读入电路的第一输出端与所述循环比较电路的第一输入端及所述结束判断电路的输入端连接,所述结束判断电路的第一输出端与所述数据读入电路的第一输入端及所述极值寄存电路的第一输入端连接,所述极值寄存电路的第一输出端与所述循环比较电路的第二输入端连接,所述循环比较电路的输出端与所述极值寄存电路的第二输入端连接;
所述数据读入电路用于接收数据的个数N,并根据寄存器中N个存储区间的首地址和所述数据的个数N读入所述数据,所述循环比较电路用于循环比较接收到的N个所述数据的大小,所述结束判断电路用于判断循环比较处理是否结束,所述极值寄存电路用于输出比较运算的结果。


2.根据权利要求1所述的数据选择器,其特征在于,所述循环比较电路中包括功能选择模式输入端口,用于接收输入的功能选择模式信号;所述功能选择模式信号用于确定数据选择器处理的数据的位宽。


3.根据权利要求1所述的数据选择器,其特征在于,所述数据读入电路包括:地址计数器和标量数据读取单元,所述地址计数器的输出端与所述标量数据读取单元的输入端连接;
所述地址计数单元用于接收所述数据的个数N,根据寄存器中N个存储区间的首地址和所述数据的个数N读入所述数据,并累加记录比较运算时寄存器中存储区间对应的地址移位数据,所述标量数据读取单元用于根据每一次比较运算时当前寄存器存储区间的地址读取一个所述数据输入到所述循环比较电路。


4.根据权利要求3所述的数据选择器,其特征在于,所述数据读入电路中的所述地址计数器包括:数据个数输入端口,数据输入端口,地址计数数值输出端口和数据输出端口,所述数据个数输入端口用于接收读入所述数据的个数N,所述数据输入端口用于根据寄存器中N个存储区间的首地址和所述数据的个数N读入所述数据,所述地址计数数值输出端口用于输出累加记录比较运算读入数据时,寄存器中存储区间对应的地址移位数据,所述数据读入端口用于读入寄存器存储区间中存储的数据,所述数据输出端口用于输出读取的数据;
所述数据读入电路中的所述标量数据读取单元包括:逻辑信号输入端口,数据读取端口和数据输出端口,所述逻辑信号输入端口用于接收所述结束判断电路的判断结果,所述数据读取端口用于读取每一次比较运算时所述地址计数器接收的所述数据,所述数据输出端口用于将读取的所述数据输入到所述循环比较电路中。


5.根据权利要求1所述的数据选择器,其特征在于,所述循环比较电路包括:第一复用比较器和第二复用比较器,所述第一复用比较器用于对两个数据进行比较得到最大的数据,所述第二复用比较器用于对两个数据进行比较得到最小的数据;所述第一复用比较器或第二复用比较器包括:功能选择模式信号输入端口,数据输入端口,调用极值输入端口,极大值输出端口,极小值输出端口和判断信号输出端口;所述功能选择模式信号输入端口用于接收需要处理不同位宽的数据对应的功能选择模式信号,所述数据输入端口用于接收输入的所述数据,所述调用极值输入端口用于接收每一次数据比较运算结束后所述极值寄存电路中存储的极值,所述极大值输出端口用于输出每一次数据比较运算后的极大值,所述极小值输出端口用于输出每一次数据比较运算后的极小值,所述判断信号输出端口用于输出是否停止采用所述第二复用比较器进行比较运算的逻辑信号。


6.根据权利要求1所述的数据选择器,其特征在于,所述结束判断电路包括:判断单元,所述判断单元用于判断地址计数器累加记录的寄存器中存储区间对应的地址移位数值,与比较N个数据总共需要的地址移位数值的大小;所述判断单元包括:地址计数数值输入端口和判断结果输出端口,地址计数数值输入端口用于接收地址计数器输出的累加记录比较运算读入数据时,寄存器存储区间对应的地址移位数据,所述判断结果输出端口用于输出累加记录比较运算读入数据时,寄存器中存储区间对应的地址移位数据,与比较N个数据寄存器总共需要的地址移位数值的比较结果。


7.根据权利要求1所述的数据选择器,其特征在于,所述极值寄存单元包括:极大值寄存单元和极小值寄存单元;所述极大值寄存单元用于存储所述第一复用比较器每一次比较运算后得到的极大值,所述极小值寄存单元用于存储所述第二复用比较器每一次比较运算后得到的极小值。


8.根据权利要求7所述的数据选择器,其特征在于,所述极值寄存单元中的所述极大值寄存单元包括:极大值调用输出端口,极大值输入端口,极大值输出端口和第一判断信号输入端口,所述极大值调用输出端口用于每一次比较运算时,输出所述极大值寄存单元中存储的极大值,所述极大值输入端口用于接收每一次比较运算后得到的极大值,所述极大值输出端口用于循环比较结束后输出N个所述数据中...

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

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

1