【技术实现步骤摘要】
一种支撑基于RRAM的神经网路训练的外围电路及系统
本专利技术涉及神经网络训练领域,尤其涉及用于支持基于RRAM的神经网路训练的外围电路。
技术介绍
近些年,神经网络尤其是深度神经网络在计算视觉、语音识别、智能控制等领域得到了广泛应用。深度神经网络训练计算具备两个典型特点:访存密集和计算密集。对于访存密集的特性,首先,神经网络训练往往需要依赖海量的训练数据,如imagenet2012包含1400万幅图片;其次,深度神经网络包含上亿级的神经元的连接参数,尤其在训练过程中需要频繁更新;再者,深度神经网络在运算过程中会产生大量的中间结果,如梯度信息。训练数据、连接权重、中间结果等大量数据的访存开销对于数据存储结构和计算性能优化提出迫切要求。对于计算密集的特性,深度神经网络的典型运算为多维矩阵乘法(运算复杂度为O(N3))及图优化;例如,22层的googlenet网络需要6GFLOPS的计算量,因此对计算硬件和性能优化提出了较高要求。阻变存储器(ResistiveRandomAccessMemory,RRAM)被认为是提升神经网络计算能效的器件之一。首先,RRAM具备非常 ...
【技术保护点】
1.一种外围电路,用于支撑基于阻变存储器RRAM交叉阵列的神经网络训练,其特征在于,包括:数据准备电路,用于将输入所述数据准备电路的第一数据进行第一预处理,且根据第一控制信号选择地将经所述第一预处理后得到的预处理数据导入所述RRAM交叉阵列的行或列中,所述第一数据包括用于所述神经网络训练的样本数据;数据选择电路,用于根据第二控制信号选择地从所述RRAM交叉阵列的行或列中导出第二数据,且对所述第二数据进行第二预处理得到第三数据;其中,所述第二数据为所述预处理数据在所述RRAM交叉阵列中经计算后得到的数据;所述第一控制信号与所述第二控制信号存在对应关系,所述对应关系用于指示:所 ...
【技术特征摘要】
1.一种外围电路,用于支撑基于阻变存储器RRAM交叉阵列的神经网络训练,其特征在于,包括:数据准备电路,用于将输入所述数据准备电路的第一数据进行第一预处理,且根据第一控制信号选择地将经所述第一预处理后得到的预处理数据导入所述RRAM交叉阵列的行或列中,所述第一数据包括用于所述神经网络训练的样本数据;数据选择电路,用于根据第二控制信号选择地从所述RRAM交叉阵列的行或列中导出第二数据,且对所述第二数据进行第二预处理得到第三数据;其中,所述第二数据为所述预处理数据在所述RRAM交叉阵列中经计算后得到的数据;所述第一控制信号与所述第二控制信号存在对应关系,所述对应关系用于指示:所述数据准备电路根据所述第一控制信号将所述第一数据进行第一预处理后导入所述RRAM交叉阵列的行中对应于所述数据选择电路根据所述第二控制信号从所述RRAM交叉阵列的列中导出所述第二数据,和,所述数据准备电路根据所述第一控制信号将所述第一数据进行第一预处理后导入所述RRAM交叉阵列的列中对应于所述数据选择电路根据所述第二控制信号从所述RRAM交叉阵列的行中导出所述第二数据;数据读取电路,用于权值更新控制操作和根据输入所述数据读取电路的第四数据进行最大池化操作得到第五数据,所述第四数据包括所述第三数据;反向训练计算电路,用于根据输入所述反向训练计算电路中的第六数据进行误差计算和求导计算,所述第六数据包括包括所述第五数据。2.如权利要求1所述的外围电路,其特征在于,还包括:存储介质;存储介质,用于存储所述样本数据及所述数据准备电路、所述数据选择电路、所述数据读取电路和所述反向训练计算电路中至少一个存入的数据。3.如权利要求2所述的外围电路,其特征在于,所述存储介质包括:缓冲寄存单元和样本数据存储单元;所述样本数据存储单元用于存储所述样本数据;所述缓冲寄存单元用于存储所述数据准备电路、所述数据选择电路、所述数据读取电路和所述反向训练计算电路中至少一个存入的数据;其中,所述数据准备电路、所述数据选择电路、所述数据读取电路和所述反向训练计算电路均通过高数据带宽与所述缓冲寄存单元进行数据的读取和写入。4.如权利要求1-3任选一所述的外围电路,其特征在于,所述数据准备电路包括:字线驱动和解码器WDD、两个第一传输门TG;所述WDD用于接收所述第一数据,且将所述第一数据进行所述第一预处理得到预处理;所述两个第一TG并联,且与所述WDD的输出端口连接;其中,所述两个第一TG包括第一行TG和第一列TG,且所述第一行TG和所述第一列TG不在同一时刻导通;所述第一行TG用于根据所述第一控制信号导通所述WDD连接所述RRAM交叉阵列的各行的通路,且将所述WDD输出的预处理数据导入所述RRAM交叉阵列的各行;所述第一列TG用于根据所述控制信号导通所述WDD连接所述RRAM交叉阵列的各列的通路,且将所述所述WDD输出的预处理数据导入所述RRAM交叉阵列的各列。5.如权利要求3所述的外围电路,其特征在于,所述数据选择电路包括:预处理电路、多路选择器和两个第二TG;所述两个第二TG并联,且与所述多路选择器的输入端口连接;其中,所述第二TG包括第二行TG和第二列TG,且所述第二行TG和所述第二列TG不在同一时刻导通;所述第二行TG用于根据所述第二控制信号导通所述多路选择器连接所述RRAM交叉阵列的各行的通路;所述第二列TG用于根据所述第二控制信号导通所述多路选择器连接所述RRAM交叉阵列的各列的通路;所述多路选择器用于通过所述两个第二TG中导通的通路从所述RRAM交叉阵列导出所述第二数据;所述预处理电路用于对所述多路选择器导出的所述第二数据进行所述第二预处理得到所述第三数据,且将所述第三数据存入所述缓冲寄存单元中。6.如权利要求3任选一所述的外围电路,其特征在于,所述数据读取电路包括:读取放大电路、最大池化操作电路;所述读取放大电路用于从所述缓冲寄存单元或所述数据选择电路中读取所述第四数据;所述最大池化操作电路用于根据所述读取放大电路读取的所述第四数据进行最大池化操作得到所述第五数据,且将所述第五数据存入所述缓冲寄存单元中,所述第五数据为前向计算的值;其中,所述最大池化操作电路包括至少一个第一寄存器;所述至少一个第一寄存器中的每个第一寄存器的输入端口连接一个第一选择器,所述第一选择器用于根据第三控制信号选择地读取0或从所述缓冲寄存单元中读取待最大池化操作的操作数,且将所述操作数输入相应的所述第一寄存器。7.如权利要求6所述的外围电路,其特征在于,所述最大池化操作电路还包括:四个第二寄存器;所述第二寄存器用于从所述缓冲寄存单元中读取待最大...
【专利技术属性】
技术研发人员:刘武龙,姚骏,汪玉,成铭,
申请(专利权)人:华为技术有限公司,清华大学,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。