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

一种卷积神经网络最大池化层电路制造技术

技术编号:28038586 阅读:81 留言:0更新日期:2021-04-09 23:21
本发明专利技术公开了一种卷积神经网络最大池化层电路,包含两个选通器、一个模拟数字转化器和一个阻值变化单元,阻值变化单元的两端分别连接两个选通器的输出端,其中第一选通器的一输入端接外部输入信号r1,另一输入端接地,控制端接外部控制信号c1;第二选通器的一输入端接前端电路的阻值变化单元交叉阵列中一根位线的输出,另一输入端接地,控制端接外部控制信号c1的逻辑取反信号;所述模拟数字转化器的模拟输入端与第二选通器的输出端相连,输出为数字信号,控制端连外部控制信号c2。该最大池化层电路利用阻值变化单元的内在机理完成小阵列中最大值的寻找,相比传统CMOS电路结构得到极大的简化,能够极大提升神经网络加速芯片的速度并降低能耗。

【技术实现步骤摘要】
一种卷积神经网络最大池化层电路
本专利技术属于半导体(semiconductor)、人工智能(artificialintelligence)和CMOS混合集成电路
,具体涉及一种利用阻值变化单元和CMOS混合集成的最大池化层电路(Max-poolingcircuit)。
技术介绍
RRAM是一种新型非易失存储器件,在当前对神经网络加速芯片中的研究中,RRAM阵列常被用来加速矩阵向量积(vectormatrixmultiplication,VMM)。卷积神经网络(Convolutionalneuralnetwork,CNN)被广泛应用在各种人工智能应用中,目前为止,已有多种基于阻值变化单元的人工智能芯片问世,相比于传统的CPU和GPU,它们在进行神经网络计算时有着更高的计算速度和更低的能耗。但是这些芯片都面临着一个重要的问题,它们实际用于矩阵向量积的能耗并不高,大部分能量耗散在数据传输路径和片上存储上。最大池化层是卷积神经网络中的一个重要步骤,它的功能是从一个小矩阵(通常是2×2或者3×3)中寻找最大值并输出,并对不同小矩阵重复多次这样的操作,包含了大量的数据传输和片上缓存。当前的神经网络加速芯片通常使用复杂CMOS电路来完成最大池化层的功能,加剧了数据传输路径中的能量耗散和运行速度问题。
技术实现思路
本专利技术的目的是提出一种基于阻值变化单元的新型最大池化层电路,以代替传统的完全使用CMOS的最大池化层电路。本专利技术提供的卷积神经网络最大池化层电路,包含两个选通器、一个模拟数字转化器(Analog-to-digitalconverter,ADC)和一个阻值变化单元,所述阻值变化单元的两端分别连接两个选通器的输出端,其中第一选通器至少具有两个输入端,一端接外部输入信号r1,另一端接地,而其控制端接外部控制信号c1;第二选通器至少具有两个输入端,一端接前端电路的阻值变化单元交叉阵列中一根位线的输出,另一端接地,其控制端接外部控制信号c1的逻辑取反信号;所述模拟数字转化器的模拟输入端与第二选通器的输出端相连,输出为数字信号o,模拟数字转化器的控制端连外部控制信号c2。上述最大池化层电路中,两个选通器的控制信号互为反相,可以通过在两个选通器的控制端之间连入一个反相器来实现,该反相器的输入外接控制信号c1,输出连接第二选通器的控制端;或者,不使用反相器,直接向两个选通器的控制端输入反相的控制信号。所述第一选通器和第二选通器可以是2选1选通器,也可以是4选1选通器等具有更多个输入端的选通器,但仅需要使用其中的2个输入端。所述模拟数字转化器的精度优选为4bit到16bit,但是并不限定其具体精度。所述阻值变化单元是指可以用外部输入电流来调控其电阻大小的器件或电路,包括但不仅限于:相变存储器(PCM)、电阻式RAM(ReRAM)(包括基于金属氧化物或氧空位的ReRAM和基于灯丝的ReRAM(filament-basedReRAM))、导电桥接RAM(CBRAM)、铁电RAM(FeRAM)、铁电晶体管RAM(Fe-TRAM)、磁阻RAM(MRAM)(包括就地写入非易失性MRAM(NVMRAM)和自旋转移扭矩(STT)存储器)、磁隧道结(MTJ)等,或者其他能够实现通过外加电流调控其阻抗的器件或电路。图1给出的本专利技术的一个具体电路结构,其中:由阻值变化单元构成的交叉阵列1由多根字线(图中横向连线)和位线(图中纵向连线)组成,在字线和位线的交叉点上生长有阻值变化单元,需要说明的是,该阻值变化单元构成的交叉阵列不属于本专利技术要保护的结构,仅用于示意本专利技术的最大池化层电路的应用目的和与前端电路的连接关系;第一选通器3是一个2选1选通管,输入端的一端接外部信号r1,另一端接地,输出端接阻值变化单元5的一端,控制端接外部控制信号c1;第二选通器2是一个2选1选通管,输入端的一端接阻值变化单元构成的交叉阵列1中一根位线的输出,另一端接地,输出端接阻值变化单元5与第一选通器3输出端相异的一端,控制端接外部输入的控制信号c1的逻辑取反信号。需要注意的是,图1仅示意了电路中各器件的基本连接关系,并不限定具体电路中的实现方式,例如选通器也可以使用4选1选通器,但仅使用其2个输入端,也同样应视为本专利技术的内容;图1中该最大池化层电路仅连接阻值变化单元交叉阵列中的一根位线,但是通过选通装置,使得一个电路连接多根位线也同样应视为本专利技术的内容。本专利技术通过在传统CMOS电路中创新性地引入阻值变化单元,形成了新型器件-传统CMOS协同工作的结构,这种基于阻值变化单元的新型最大池化层电路,利用阻值变化单元的内在机理完成小阵列中最大值的寻找,相比传统CMOS电路结构得到极大的简化,用很小的电路代价完成卷积神经网络中最大池化层所要完成的复杂功能,这一专利技术为神经网络加速芯片的设计与优化提供了新的方式,能够极大提升神经网络加速芯片的速度并降低能耗,因此具有重要意义。附图说明图1是本专利技术实施例的最大池化层电路的结构示意图,其中:1-阻值变化单元构成的交叉阵列,2-第二选通器,3-第一选通器,4-模拟数字转化器(ADC),5-阻值变化单元,6-反相器。图2是图1所示电路一次示例操作的时钟周期。图3是本专利技术实施例电路对图像的识别结果。具体实施方式为进一步说明本电路能够实现的功能,提供该电路的一次操作作为示例加以进一步说明。如图1所示建立一个最大池化层电路,包括第一选通器3、第二选通器2、模拟数字转化器(ADC)4、阻值变化单元5和反相器6。为说明该最大池化层电路的应用目的和与前端电路的连接关系,将该最大池化层电路与阻值变化单元构成的交叉阵列1如图1所示连接,所述阻值变化单元构成的交叉阵列1采用基于TaOx的阻变存储器阵列,大小为4×1。最大池化层电路中的第一选通器3和第二选通器2均采用2选1选通器,模拟数字转化器4的精度定位8bit,最大池化层电路中的阻值变化单元5采用基于Al掺杂的TaOx的阻变存储器,两个选通器的控制信号之间采用一个反相器6来保证两个选通器的控制信号必定互为逻辑反向。图2显示了一次示例操作的时钟周期:在第一个时钟周期,输入信号r1被置为高电平,第二选通器2的控制信号c1为高电平,此时第一选通器3控制的信号c1的逻辑反信号为低电平,第二选通器2选通r1,第一选通器3选通地,使得阻值变化单元5上端接地,下端接高电平,其阻值被初始化为高阻态。在第二到第五个时钟周期,第二选通器2的控制信号c1为低电平,此时第一选通器3控制的信号c1的逻辑反信号为高电平,第二选通器2选通地,第一选通器3选通阻值变化单元构成的交叉阵列1的位线,使得阻值变化单元5上端位线输出,下端接地,其阻值受到位线电流大小所影响。同时,阻值变化单元构成的交叉阵列1中字线输入端i1-i4上加上了具有模拟电平的电压,通过欧姆定律和基尔霍夫定律,转化成了不同的位线电流输出,经过阻值变化单元5流向地。当第五个时钟周期结束后,阻值变化单元5通过其本文档来自技高网...

【技术保护点】
1.一种卷积神经网络最大池化层电路,包含两个选通器、一个模拟数字转化器和一个阻值变化单元,所述阻值变化单元的两端分别连接两个选通器的输出端,其中第一选通器至少具有两个输入端,一端接外部输入信号r1,另一端接地,而其控制端接外部控制信号c1;第二选通器至少具有两个输入端,一端接前端电路的阻值变化单元交叉阵列中一根位线的输出,另一端接地,其控制端接外部控制信号c1的逻辑取反信号;所述模拟数字转化器的模拟输入端与第二选通器的输出端相连,输出为数字信号,模拟数字转化器的控制端连外部控制信号c2。/n

【技术特征摘要】
1.一种卷积神经网络最大池化层电路,包含两个选通器、一个模拟数字转化器和一个阻值变化单元,所述阻值变化单元的两端分别连接两个选通器的输出端,其中第一选通器至少具有两个输入端,一端接外部输入信号r1,另一端接地,而其控制端接外部控制信号c1;第二选通器至少具有两个输入端,一端接前端电路的阻值变化单元交叉阵列中一根位线的输出,另一端接地,其控制端接外部控制信号c1的逻辑取反信号;所述模拟数字转化器的模拟输入端与第二选通器的输出端相连,输出为数字信号,模拟数字转化器的控制端连外部控制信号c2。


2.如权利要求1所述的卷积神经网络最大池化层电路,其特征在于,在两...

【专利技术属性】
技术研发人员:蔡一茂凌尧天王宗巍鲍盛誉黄如
申请(专利权)人:北京大学
类型:发明
国别省市:北京;11

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

1