当前位置: 首页 > 专利查询>东南大学专利>正文

一种基于并行加法树的二值化卷积神经网络计算电路制造技术

技术编号:37994654 阅读:8 留言:0更新日期:2023-06-30 10:08
本发明专利技术提供一种基于并行加法树的二值化卷积神经网络计算电路,属于电路设计领域。本发明专利技术设计了基于并行加法树的专用计算单元对二值化卷积神经网络进行计算。计算单元电路中,使用0表示权重或者数据的1,使用1表示权重或者数据的

【技术实现步骤摘要】
一种基于并行加法树的二值化卷积神经网络计算电路


[0001]本专利技术属于电路设计领域,尤其涉及一种基于并行加法树的二值化卷积神经网络计算电路。

技术介绍

[0002]语音关键词唤醒(Keyword Spotting)任务常常被用作复杂的人工智能任务的开关,其常开(always on)的特性要求硬件实现具备低功耗、高能效的特征。语音关键词唤醒一般由语音特征提取和语音特征识别两部分组成,前者负责将语音信号转成特征数据送入识别系统中,后者则是通过神经网络对语音特征进行分类从而判断是否为正确的关键词。
[0003]随着人工智能的发展,用于关键词唤醒的神经网络也在不断发展和迭代。比如,感知线性预测特征(Perceptual Linear Predictive,PLP)和深度神经网络(Deep Neural Network,DNN)都曾被用来完成语音分类任务。后来,卷积神经网络(Convolutional Neural Network,CNN)在语音关键词唤醒任务上取得最佳效果,并且其灵活的结构使得硬件加速得到较多应用;循环卷积神经网络(Convolutional Recurrent Neural Network,CRNN)比卷积神经网络拥有更好的时间连接性,在较长的关键词分类以及上下文辅助判断的任务上有着更好的表现。
[0004]对于硬件电路设计来说,需要综合考虑准确率、参数量、计算量等指标,因此学术界和工业界对各种网络的硬件代价都有尝试和评估。综合考虑下,卷积神经网络可以灵活地改变网络层数、数据位宽等参数,并且具有较广的感受野,因此对于简单的语音关键词识别任务来说非常合适。另外,神经网络的硬件实现往往不能使用全精度的数据类型进行运算,因为全精度在硬件实现中会有很大的精度冗余,因此往往会对神经网络的权重数据进行量化,硬件上比较友好的是二值化权重的量化方式,将权重数据量化成单比特数值,仅用0和1表示。除了输入数据是多比特数据外,网络的权重和各层输出都是单比特数据。
[0005]对于常用的全精度神经网络的计算,其处理单元(Processing Element,PE)一般由乘累加(MAC)运算构成,权重和对应输入的乘积与偏置进行累加。对于权重和激活值不为二值化的网络,乘累加运算中乘法由复杂的乘法电路实现,但是二值化网络可以使用简单的门电路实现单比特权重和单比特数据的乘法,从而大大减小神经网络计算电路的功耗和面积。常见的二值化神经网络PE阵列中累加电路采用串行加法器链的方式,其优势在于使用较少的硬件单元,通过多周期计算,来实现累加和,因此它的劣势在于周期长,累加器存取寄存器次数多,累加和的翻转率高。
[0006]对于用于语音关键词识别的神经网络,语音特征提取电路的输出时序是固定的,即每N个时钟周期输出一组语音特征,因此,如果神经网络无法在N个周期内完成计算,神经网络模块将不得不采用更高的频率去运行。目前的设计都是采用多个时钟信号,使得神经网络模块工作在更高的频率下,从而在N个周期内完成计算。这将会使得整个电路需要多个时钟,在芯片后端实现时,多个时钟会导致多个时钟树生成,且两个时钟域之间需要使用异步先进先出存储器(First Input First Output,FIFO)去连接,从而增加外围的功耗。

技术实现思路

[0007]本专利技术目的在于提供一种基于并行加法树的二值化卷积神经网络计算电路,设计了专用的PE计算单元,由一个并行加法树、若干全加器和若干寄存器组成,其中的并行加法树由n(n为3的倍数)个异或门、若干加法器和二输入选择器组成。同时该专利技术设计了一个同权值累加模块,多比特数据的累加也可以复用上述并行加法树。整个神经网络电路计算过程中涉及的卷积计算和全连接计算通过一次或多次调用上述加法树,实现计算单元的复用,从而降低了神经网络计算电路的复杂度,相比于传统不经优化的乘累加单元,节省了计算单元的电路代价,大大减小了神经网络计算电路的功耗和面积。并行累加的操作减少了二值化神经网络的计算周期数,在面向语音关键词唤醒的应用中,需要在两帧语音特征的计算时间之内完成神经网络部分的计算,因此本专利技术可以降低神经网络电路所需要的计算频率。
[0008]为解决上述技术问题,本专利技术的具体技术方案如下:
[0009]一种基于并行加法树的二值化卷积神经网络计算电路,包括并行加法树和同权值累加模块;
[0010]并行加法树,用于完成神经网络的单比特数据累加,并行加法树的输出端连接同权值累加模块的输入端;
[0011]同权值累加模块,用于在移位累加时选择移位的位数,并将移位结果相加,具体功能是将n个m比特数据的累加转换成若干个n比特的累加,其中n为3的倍数,m为大于2的正整数,n>m。
[0012]进一步的,并行加法树包含n个异或门、若干压缩器、加法器和一个二输入选择器;n个权重数据和n个特征数据经过n个异或门得到n个异或结果,然后连接到若干个压缩器上;压缩器的输出连接加法器的输入端,压缩器和加法器用来获得n个异或结果的累加值;加法器的输出端和第一个压缩器的输出端连接到二输入选择器的输入端,用来在输入只有3个1比特数据时直接输出这三个数据的累加结果。
[0013]进一步的,同权值累加模块包含一个数据分配器,若干全加器和寄存器,数据分配器的输入端连接并行加法树的输出端,数据分配器的输出端连接若干个全加器的输入端,每个全加器的输出端连接寄存器的输入端;所述数据分配器有四位选通信号,决定输入数据向左移位的位数;最终移位之后的数据再相加得到最终结果。
[0014]作为一种基于并行加法树的二值化卷积神经网络计算电路,相对于普通的二值化卷积神经网络计算电路,有如下改进:
[0015]一种基于并行加法树的二值化卷积神经网络计算电路,相较于普通的二值化卷积神经网络计算电路,采用可复用的基于并行加法树的PE单元完成所有网络层的计算。并行加法树由若干个3

2压缩器、若干个多比特加法器组成,并且可以通过选择器直接输出3个输入数据经过3

2压缩器的结果。
[0016]一种基于并行加法树的二值化卷积神经网络计算电路,相较于普通的二值化卷积神经网络计算电路,设计了同权值累加模块,通过加法树和移位器将n个m比特的数据累加转换成若干个n比特数据的累加,从而达到对于多比特数据也可以复用并行加法树的目的。
[0017]本专利技术的基于并行加法树的二值化卷积神经网络计算电路,具有以下优点:
[0018](1)相较于传统的神经网络计算电路,本专利技术的计算单元利用并行加法树、门电
路、压缩器等实现,相比于以往的由乘法器、加法器等构成的乘累加计算单元来说,只需要通过加法树就能得到完全正确的计算结果,具有小面积、低功耗的特点。
[0019](2)相较于传统的神经网络计算电路,本专利技术设计的同权值累加模块,可以将n个m比特的数据累加转换成若干个n比特数据的累加,使得对于多比特的输入数据和权重的计算也可以复用并行加法树,实现计算单元对网络所有层的复用本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于并行加法树的二值化卷积神经网络计算电路,其特征在于,所述电路包括并行加法树和同权值累加模块;并行加法树,用于完成神经网络的单比特数据累加,并行加法树的输出端连接同权值累加模块的输入端;同权值累加模块,用于在移位累加时选择移位的位数,并将移位结果相加,具体功能是将n个m比特数据的累加转换成若干个n比特的累加,其中n为3的倍数,m为大于2的正整数,n>m。2.根据权利要求1所述的基于并行加法树的二值化卷积神经网络计算电路,其特征在于,所述并行加法树包含n个异或门、若干压缩器、加法器和一个二输入选择器;n个权重数据和n个特征数据经过n个异或门得到n个异或结果,然后连...

【专利技术属性】
技术研发人员:李才杨凯悦钱俊逸单伟伟
申请(专利权)人:东南大学
类型:发明
国别省市:

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

1