CN110363292A - 一种混合信号二进制cnn处理器 - Google Patents

一种混合信号二进制cnn处理器 Download PDF

Info

Publication number
CN110363292A
CN110363292A CN201810321430.1A CN201810321430A CN110363292A CN 110363292 A CN110363292 A CN 110363292A CN 201810321430 A CN201810321430 A CN 201810321430A CN 110363292 A CN110363292 A CN 110363292A
Authority
CN
China
Prior art keywords
unit
binary system
output
neuron
input
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201810321430.1A
Other languages
English (en)
Inventor
刘洪杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Jiutian Ruixin Technology Co Ltd
Original Assignee
Shenzhen Jiutian Ruixin Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Jiutian Ruixin Technology Co Ltd filed Critical Shenzhen Jiutian Ruixin Technology Co Ltd
Priority to CN201810321430.1A priority Critical patent/CN110363292A/zh
Publication of CN110363292A publication Critical patent/CN110363292A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • General Physics & Mathematics (AREA)
  • Neurology (AREA)
  • Computing Systems (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Image Analysis (AREA)

Abstract

一种混合信号二进制CNN处理器,它包括神经元阵列单元、二进制温度译码单元、控制单元、输入图像单元、输出图像单元和存储单元,RGB图像通过二进制温度译码单元的输入端输入,二进制温度译码单元的输出端通过输入图像单元与神经元阵列单元的输入端相连接,神经元阵列单元的输出端与输出图像单元相连接,控制单元与神经元阵列单元相连接,控制指令通过控制单元的输入端输入,存储单元与神经元阵列单元相连接;通过二进制温度译码单元的Binary Net算法来完成工作,其权重和激活约束为+1/‑1,极大地简化了乘法运算(XNOR)并允许集成所有片上存储单元;执行中等复杂度的图像分类(CIFAR‑10中为86%),并采用近存储器计算来实现3.8μJ的分类能量,比TrueNorth提高40倍。

Description

一种混合信号二进制CNN处理器
技术领域
本发明涉及一种CNN处理器,特别涉及一种混合信号二进制CNN处理器。
背景技术
卷积神经网络(Convolutional Neural Network,CNN)是一种前馈神经网络,它的人工神经元可以响应一部分覆盖范围内的周围单元,对于大型图像处理有出色表现。它包括卷积层(convolutional layer)和池化层(pooling layer)。
由于对延迟,带宽和隐私的关注,将云深度学习推向边缘的趋势已经形成了对低能量深度卷积神经网络(CNN)的需求。
现有的单层分类器实现了sub-nJ操作,但仅限于在低复杂度任务(MNIST上的90%)实现中等精度。较大的CNN芯片为mJ能源的高复杂度任务(AlexNet)提供数据流计算,但由于片外DRAM访问能量的缘故,边缘部署仍然是一个挑战。
因此,特别需要一种混合信号二进制CNN处理器,以解决上述现有存在的问题。
发明内容
本发明的目的在于提供一种混合信号二进制CNN处理器,针对现有技术的不足,执行中等复杂度的图像分类(CIFAR-10中为86%),并采用近存储器计算来实现3.8μJ的分类能量,比TrueNorth提高40倍。
本发明所解决的技术问题可以采用以下技术方案来实现:
一种混合信号二进制CNN处理器,其特征在于,它包括神经元阵列单元、二进制温度译码单元、控制单元、输入图像单元、输出图像单元和存储单元,RGB图像通过二进制温度译码单元的输入端输入,二进制温度译码单元的输出端通过输入图像单元与神经元阵列单元的输入端相连接,神经元阵列单元的输出端与输出图像单元相连接,控制单元与神经元阵列单元相连接,控制指令通过控制单元的输入端输入,存储单元与神经元阵列单元相连接。
在本发明的一个实施例中,所述存储单元包括本地存储器、第一过滤器存储器和第二过滤器存储器,所述本地存储器、第一过滤器存储器和第二过滤器存储器分别与神经元阵列单元相连接。
进一步,第一过滤器存储器和第二过滤器存储器以乒乓方式交替输入和输出。
在本发明的一个实施例中,所述输入图像单元包括输入图像存储器和输入多路分配器,二进制温度译码单元的输出端依次通过输入图像存储器和输入多路分配器与神经元阵列单元的输入端相连接。
在本发明的一个实施例中,所述输出图像单元包括输出图像存储器和输出多路分配器,神经元阵列单元的输出端依次通过输出多路分配器和输出图像存储器输出。
本发明的混合信号二进制CNN处理器,与现有技术相比,通过二进制温度译码单元的Binary Net算法来完成工作,其权重和激活约束为+ 1 / -1,极大地简化了乘法运算(XNOR)并允许集成所有片上存储单元;神经元阵列单元为解决Binary Net宽矢量求和的挑战的高能效开关电容(SC)神经元;执行中等复杂度的图像分类(CIFAR-10中为86%),并采用近存储器计算来实现3.8μJ的分类能量,比TrueNorth提高40倍,实现本发明的目的。
本发明的特点可参阅本案图式及以下较好实施方式的详细说明而获得清楚地了解。
附图说明
图1为本发明的混合信号二进制CNN处理器的网络拓扑示意图;
图2为本发明的混合信号二进制CNN处理器的结构示意图;
图3为本发明的混合信号二进制CNN处理器局部性如何转化为减少的负载的示意图;
图4为本发明的混合信号二进制CNN处理器神经元原理的示意图;
图5是本发明的混合信号二进制CNN处理器室温下测量结果的示意图。
具体实施方式
为了使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,下面结合具体图示,进一步阐述本发明。
实施例
如图1至图5所示,本发明的混合信号二进制CNN处理器,它包括神经元阵列单元10、二进制温度译码单元20、控制单元30、输入图像单元40、输出图像单元50和存储单元60,RGB图像通过二进制温度译码单元20的输入端输入,二进制温度译码单元20的输出端通过输入图像单元40与神经元阵列单元10的输入端相连接,神经元阵列单元10的输出端与输出图像单元50相连接,控制单元30与神经元阵列单元10相连接,控制指令通过控制单元30的输入端输入,存储单元60与神经元阵列单元10相连接。
在本实施例中,神经元阵列单元10、二进制温度译码单元20、控制单元30、输入图像单元40和输出图像单元50的具体电路原路图参见附图,在此就不赘述了;存储单元60采用Hynix的HY62LF16806B。
在本实施例中,存储单元60包括本地存储器61、第一过滤器存储器62和第二过滤器存储器63,本地存储器61、第一过滤器存储器62和第二过滤器存储器63分别与神经元阵列单元10相连接。第一过滤器存储器62和第二过滤器存储器63以乒乓方式交替输入和输出。
在本实施例中,输入图像单元40包括输入图像存储器41和输入多路分配器42,二进制温度译码单元20的输出端依次通过输入图像存储器41和输入多路分配器42与神经元阵列单元10的输入端相连接。
在本实施例中,输出图像单元50包括输出图像存储器51和输出多路分配器52,神经元阵列单元10的输出端依次通过输出多路分配器52和输出图像存储器51输出。
如图1所示,说明了本发明的混合信号二进制CNN处理器的功能和网络拓扑结构。通过强制执行结构规则化,允许物理体系结构最大限度地利用CNN算法的局部性。每个CNN层执行多通道多过滤器卷积。每个卷积层中的过滤器数量限制为256,过滤器大小为2×2,通道数量为256;这种规律性带来的电路优点是短线路和阵列式低扇出分路器,使内存和逻辑之间路径负载最小化。
如图2所示,本发明的混合信号二进制CNN处理器最多可支持9层,并具有用于输入输出操作,CNN和全连接(FC)层的定制的指令集。本发明的混合信号二进制CNN处理器读取RGB图像,将通道通过二进制温度译码单元20转换为85级温度计代码,并将它们叠加成一个256通道的图像,作为本发明的混合信号二进制CNN处理器的输入。在输出端,通过本地存储器61以数字方式计算4个比特的类标签。对于CNN层,第一过滤器存储器62和第二过滤器存储器63以乒乓方式交替输入和输出角色。这些存储单元60宽度为256比特,每个字代表一个256通道像素。本发明的混合信号二进制CNN处理器的计算在神经元阵列单元10内完成,消除部分和。权重从SRAM传输到本地存储器61(锁存器)并被重新使用,而第一过滤器存储器62和第二过滤器存储器63则遍历图像。 64个数据并行阵列形式的神经元处理输入图像的一个片段,将输入图像存储器41处每个过滤器对应的读取能量分摊64倍。输入多路分配器42在输入图像存储器41(加载像素)和神经元阵列单元10(接收片段)之间的交互。对于FC层,权重一次从单独的SRAM库64个通道加载,乘法累加操作在数字域中顺序执行。
如图3所示,显示了局部性如何转化为减少的负载。输入多路分配器42是一组带有输出寄存器的1至4解复用器。输入图像的每个像素可以重用于处理两个重叠的片段,将每个过滤器计算的输入图像存储器41读取能量分摊2倍。一个2乘2的横杆在神经元阵列单元10的输入处交换像素对。过滤器权重通过每个神经元4比特的bus转移,分成北半部和南半部,以将权重传输的负荷降低2倍。为了使神经元阵列与存储器的接线最简化,每个神经元写入每个CNN层中相同的4个输出通道(每个过滤器组1个),允许将输出多路分配器52用1至4解复用器阵列来实现。通过首先读取输出图像存储器51中的一个位,然后用神经元输出写回其逻辑或,max pooling逐步发生在卷积过程中。
如图4所示,显示了神经元原理图,每个神经元计算过滤器在一个输入图像片段上的加权和。随着存储能量通过平行分配和再利用的降低,乘法减少到XNOR,高扇入加法成为主要瓶颈。然而,在所采用的SC神经元中,加法的的能量成本通过电荷保存节点处的小电压摆动而减小。相比之下,数字加法器树在其不同阶段将涉及到轨到轨的电压摆动并带来更大量的开关电容。神经元的主要噪声源是比较器,但其能量成本被1024个权重平摊,并且CNN可以承受一些噪声。因此SC神经元适用于低电压操作,并使用0.6V数字电源/模拟参考电压和0.8V比较器电源电压。由于SC神经元执行与数据相关的切换(除了比较器之外)的加权和,其能量随着活动而变化,像静态CMOS。SC神经元使用容性DAC(CDAC),分为四个部分:1024比特温度计部分,用于实现过滤器,神经元偏置的二进制加权部分,阈值部分(比较器)和共模(CM)设置部分,以补偿电荷存储处的寄生效应节点。比较器偏移量在启动时使用校准进行数字化,存储在本地寄存器中,并在权重传送期间从SRAM加载的偏差中减去。在大的温度变化可能引起显着的偏移漂移的环境中,可以对比每个分类和吞吐量的平均能量可忽略的成本周期性地(例如每秒一次)执行校准。通过行为蒙特卡罗模拟来确定CNN在不降低分类准确度的情况下可以承受的比较器噪声,偏移和单位电容失配的数量,得到为4.6mV失调而设计的比较器和1fF的单位电容。由于表示加权和的电压是在电荷存储节点产生的,因此顶部和底部的寄生参数不会影响线性度。在卷积期间,根据顶板泄漏的要求定期清除CDAC(采样0V)。为防止从电源汲取过量电荷,在顶部电容器通过CLRe放电之前,通过开关CLR对单元电容器底板节点放电。为防止非对称电荷注入,顶板开关在底板电压恢复由过滤器权重,图像输入和偏置设置的值之前打开。
如图5所示,显示了室温下的测量结果。测量了10个不同的芯片以评估由于SC神经元中的热噪声和不匹配导致的准确度差异。在标称电源电压(VDD = VMEM = 1.0V,VNEU =0.6V,VCOMP = 0.8V)时,芯片的运行速度高达380帧/秒(FPS),达到5.4μJ/分类。将VDD和VMEM降低到0.8V时,在237 FPS时可达到3.8μJ/分级(1.43×降低)。平均分类准确率为86.05%(见直方图),与完美数字模型中观察到的一样。直方图传播仅由SC神经元中的噪声和不匹配引起(这可能导致比完美数字模型更高的分类准确度)。平均分类准确度的95%置信区间为86.01%至86.10%,测量超过10个芯片,每个通过CIFAR-10测试集10,000图像30次。不包括在这些能量数字中的是1.8V芯片I / O能量,相当于0.43μJ(核心能量的一小部分)。
以上显示和描述了本发明的基本原理和主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内,本发明要求保护范围由所附的权利要求书及其等效物界定。

Claims (5)

1.一种混合信号二进制CNN处理器,其特征在于,它包括神经元阵列单元、二进制温度译码单元、控制单元、输入图像单元、输出图像单元和存储单元,RGB图像通过二进制温度译码单元的输入端输入,二进制温度译码单元的输出端通过输入图像单元与神经元阵列单元的输入端相连接,神经元阵列单元的输出端与输出图像单元相连接,控制单元与神经元阵列单元相连接,控制指令通过控制单元的输入端输入,存储单元与神经元阵列单元相连接。
2.如权利要求1所述的混合信号二进制CNN处理器,其特征在于,所述存储单元包括本地存储器、第一过滤器存储器和第二过滤器存储器,所述本地存储器、第一过滤器存储器和第二过滤器存储器分别与神经元阵列单元相连接。
3.如权利要求2所述的混合信号二进制CNN处理器,其特征在于,第一过滤器存储器和第二过滤器存储器以乒乓方式交替输入和输出。
4.如权利要求1所述的混合信号二进制CNN处理器,其特征在于,所述输入图像单元包括输入图像存储器和输入多路分配器,二进制温度译码单元的输出端依次通过输入图像存储器和输入多路分配器与神经元阵列单元的输入端相连接。
5.如权利要求1所述的混合信号二进制CNN处理器,其特征在于,所述输出图像单元包括输出图像存储器和输出多路分配器,神经元阵列单元的输出端依次通过输出多路分配器和输出图像存储器输出。
CN201810321430.1A 2018-04-11 2018-04-11 一种混合信号二进制cnn处理器 Pending CN110363292A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810321430.1A CN110363292A (zh) 2018-04-11 2018-04-11 一种混合信号二进制cnn处理器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810321430.1A CN110363292A (zh) 2018-04-11 2018-04-11 一种混合信号二进制cnn处理器

Publications (1)

Publication Number Publication Date
CN110363292A true CN110363292A (zh) 2019-10-22

Family

ID=68214344

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810321430.1A Pending CN110363292A (zh) 2018-04-11 2018-04-11 一种混合信号二进制cnn处理器

Country Status (1)

Country Link
CN (1) CN110363292A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021126706A1 (en) * 2019-12-19 2021-06-24 Qualcomm Incorporated Power efficient near memory analog multiply-and-accumulate (mac)
CN113314174A (zh) * 2021-05-06 2021-08-27 安徽大学 一种用于sram阵列的列移位多位乘法二进制分解运算的电路结构
US11823035B2 (en) 2020-07-07 2023-11-21 Qualcomm Incorporated Power-efficient compute-in-memory pooling

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002041246A2 (en) * 2000-11-15 2002-05-23 Magyar Tudományos Akadémia Számítástechnikai És Automatizálási Kutató Intézet Video signal processing computer, cellular chip and method
CN101572558A (zh) * 2009-05-11 2009-11-04 苏州通创微芯有限公司 一种中频收发芯片
CN105184366A (zh) * 2015-09-15 2015-12-23 中国科学院计算技术研究所 一种时分复用的通用神经网络处理器
CN105681628A (zh) * 2016-01-05 2016-06-15 西安交通大学 一种卷积网络运算单元及可重构卷积神经网络处理器和实现图像去噪处理的方法
CN105930903A (zh) * 2016-05-16 2016-09-07 浙江大学 一种数模混合神经网络芯片体系结构
US20160342891A1 (en) * 2015-05-21 2016-11-24 Google Inc. Neural Network Processor
CN209980298U (zh) * 2018-04-11 2020-01-21 深圳市九天睿芯科技有限公司 一种混合信号二进制cnn处理器

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002041246A2 (en) * 2000-11-15 2002-05-23 Magyar Tudományos Akadémia Számítástechnikai És Automatizálási Kutató Intézet Video signal processing computer, cellular chip and method
CN101572558A (zh) * 2009-05-11 2009-11-04 苏州通创微芯有限公司 一种中频收发芯片
US20160342891A1 (en) * 2015-05-21 2016-11-24 Google Inc. Neural Network Processor
CN105184366A (zh) * 2015-09-15 2015-12-23 中国科学院计算技术研究所 一种时分复用的通用神经网络处理器
CN105681628A (zh) * 2016-01-05 2016-06-15 西安交通大学 一种卷积网络运算单元及可重构卷积神经网络处理器和实现图像去噪处理的方法
CN105930903A (zh) * 2016-05-16 2016-09-07 浙江大学 一种数模混合神经网络芯片体系结构
CN209980298U (zh) * 2018-04-11 2020-01-21 深圳市九天睿芯科技有限公司 一种混合信号二进制cnn处理器

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
SHIMENG YU 等: ""Binary neural network with 16 Mb RRAM macro chip for classification and online training"", 2016 IEEE INTERNATIONAL ELECTRON DEVICES MEETING (IEDM), 2 February 2017 (2017-02-02) *
YOUCHANG KIM 等: ""A 4.9 mW neural network task scheduler for congestion-minimized network-on-chip in multi-core systems"", 2014 IEEE ASIAN SOLID-STATE CIRCUITS CONFERENCE (A-SSCC), 15 January 2015 (2015-01-15) *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021126706A1 (en) * 2019-12-19 2021-06-24 Qualcomm Incorporated Power efficient near memory analog multiply-and-accumulate (mac)
CN114830136A (zh) * 2019-12-19 2022-07-29 高通股份有限公司 功率高效的近存储器模拟乘法和累加(mac)
US11574173B2 (en) 2019-12-19 2023-02-07 Qualcomm Incorporated Power efficient near memory analog multiply-and-accumulate (MAC)
US11823035B2 (en) 2020-07-07 2023-11-21 Qualcomm Incorporated Power-efficient compute-in-memory pooling
CN113314174A (zh) * 2021-05-06 2021-08-27 安徽大学 一种用于sram阵列的列移位多位乘法二进制分解运算的电路结构
CN113314174B (zh) * 2021-05-06 2023-02-03 安徽大学 一种用于sram阵列的列移位多位乘法二进制分解运算的电路结构

Similar Documents

Publication Publication Date Title
US12061977B2 (en) Analog switched-capacitor neural network
He et al. Noise injection adaption: End-to-end ReRAM crossbar non-ideal effect adaption for neural network mapping
Wan et al. A compute-in-memory chip based on resistive random-access memory
Burr et al. Large-scale neural networks implemented with non-volatile memory as the synaptic weight element: Comparative performance analysis (accuracy, speed, and power)
US8676734B2 (en) Methods and systems for replaceable synaptic weight storage in neuro-processors
US20190102359A1 (en) Binary, ternary and bit serial compute-in-memory circuits
Gokmen et al. Training LSTM networks with resistive cross-point devices
CN110363292A (zh) 一种混合信号二进制cnn处理器
Kang et al. An energy-efficient memory-based high-throughput VLSI architecture for convolutional networks
CN104303160A (zh) 存储器及感测参数确定方法
CN109784483A (zh) 基于fd-soi工艺的二值化卷积神经网络内存内计算加速器
Fick et al. Analog matrix processor for edge AI real-time video analytics
US11817173B2 (en) Timing-based computer architecture systems and methods
CN110941185B (zh) 一种用于二值神经网络的双字线6tsram单元电路
Kaczorek Minimum energy control of positive fractional descriptor continuous‐time linear systems
US20220319596A1 (en) Compute-in-memory array and module, and data computing method
CN115080501A (zh) 基于局部电容电荷共享的sram存算一体芯片
CN113936717A (zh) 一种复用权重的存算一体电路
CN110311676B (zh) 一种采用开关电流技术的物联网视觉系统和数据处理方法
Houshmand et al. Benchmarking and modeling of analog and digital SRAM in-memory computing architectures
Cheon et al. A 2941-TOPS/W charge-domain 10T SRAM compute-in-memory for ternary neural network
US20200210822A1 (en) Multibit Neural Network
CN209980298U (zh) 一种混合信号二进制cnn处理器
CN113741857B (zh) 一种乘累加运算电路
CN111191776A (zh) 存储计算阵列及模组、数据计算方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination