CN108513042A - 用于图像处理的装置 - Google Patents

用于图像处理的装置 Download PDF

Info

Publication number
CN108513042A
CN108513042A CN201710105815.XA CN201710105815A CN108513042A CN 108513042 A CN108513042 A CN 108513042A CN 201710105815 A CN201710105815 A CN 201710105815A CN 108513042 A CN108513042 A CN 108513042A
Authority
CN
China
Prior art keywords
computing unit
physical computing
circuit
oxide
semiconductor
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.)
Granted
Application number
CN201710105815.XA
Other languages
English (en)
Other versions
CN108513042B (zh
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.)
Tsinghua University
Huawei Technologies Co Ltd
Original Assignee
Tsinghua University
Huawei Technologies 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 Tsinghua University, Huawei Technologies Co Ltd filed Critical Tsinghua University
Priority to CN201710105815.XA priority Critical patent/CN108513042B/zh
Priority to PCT/CN2017/106574 priority patent/WO2018153112A1/zh
Publication of CN108513042A publication Critical patent/CN108513042A/zh
Priority to US16/529,116 priority patent/US10827102B2/en
Application granted granted Critical
Publication of CN108513042B publication Critical patent/CN108513042B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N3/00Scanning details of television systems; Combination thereof with generation of supply voltages
    • H04N3/10Scanning details of television systems; Combination thereof with generation of supply voltages by means not exclusively optical-mechanical
    • H04N3/14Scanning details of television systems; Combination thereof with generation of supply voltages by means not exclusively optical-mechanical by means of electrically scanned solid-state devices
    • H04N3/15Scanning details of television systems; Combination thereof with generation of supply voltages by means not exclusively optical-mechanical by means of electrically scanned solid-state devices for picture signal generation
    • H04N3/1581Scanning details of television systems; Combination thereof with generation of supply voltages by means not exclusively optical-mechanical by means of electrically scanned solid-state devices for picture signal generation using linear image-sensor
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05FSYSTEMS FOR REGULATING ELECTRIC OR MAGNETIC VARIABLES
    • G05F3/00Non-retroactive systems for regulating electric variables by using an uncontrolled element, or an uncontrolled combination of elements, such element or such combination having self-regulating properties
    • G05F3/02Regulating voltage or current
    • G05F3/08Regulating voltage or current wherein the variable is dc
    • G05F3/10Regulating voltage or current wherein the variable is dc using uncontrolled devices with non-linear characteristics
    • G05F3/16Regulating voltage or current wherein the variable is dc using uncontrolled devices with non-linear characteristics being semiconductor devices
    • G05F3/20Regulating voltage or current wherein the variable is dc using uncontrolled devices with non-linear characteristics being semiconductor devices using diode- transistor combinations
    • G05F3/26Current mirrors
    • G05F3/262Current mirrors using field-effect transistors only
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L29/00Semiconductor devices adapted for rectifying, amplifying, oscillating or switching, or capacitors or resistors with at least one potential-jump barrier or surface barrier, e.g. PN junction depletion layer or carrier concentration layer; Details of semiconductor bodies or of electrodes thereof  ; Multistep manufacturing processes therefor
    • H01L29/40Electrodes ; Multistep manufacturing processes therefor
    • H01L29/43Electrodes ; Multistep manufacturing processes therefor characterised by the materials of which they are formed
    • H01L29/49Metal-insulator-semiconductor electrodes, e.g. gates of MOSFET
    • H01L29/51Insulating materials associated therewith
    • H01L29/517Insulating materials associated therewith the insulating material comprising a metallic compound, e.g. metal oxide, metal silicate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N3/00Scanning details of television systems; Combination thereof with generation of supply voltages
    • H04N3/10Scanning details of television systems; Combination thereof with generation of supply voltages by means not exclusively optical-mechanical
    • H04N3/14Scanning details of television systems; Combination thereof with generation of supply voltages by means not exclusively optical-mechanical by means of electrically scanned solid-state devices
    • H04N3/15Scanning details of television systems; Combination thereof with generation of supply voltages by means not exclusively optical-mechanical by means of electrically scanned solid-state devices for picture signal generation
    • H04N3/1506Scanning details of television systems; Combination thereof with generation of supply voltages by means not exclusively optical-mechanical by means of electrically scanned solid-state devices for picture signal generation with addressing of the image-sensor elements
    • H04N3/1512Scanning details of television systems; Combination thereof with generation of supply voltages by means not exclusively optical-mechanical by means of electrically scanned solid-state devices for picture signal generation with addressing of the image-sensor elements for MOS image-sensors, e.g. MOS-CCD
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/14Picture signal circuitry for video frequency region

Abstract

本申请提供一种用于图像处理的装置,该装置包括:第一物理计算单元,用于接收图像传感器输出的多个第一模拟信号,并对该多个第一模拟信号进行卷积运算,以得到第二模拟信号,该多个第一模拟信号与待识别图像的多个像素数据一一对应,其中,第一物理计算单元由至少一个乘法电路阵列和至少一个减法电路组成,该至少一个乘法电路阵列与该至少一个减法电路一一对应,每个乘法电路阵列中的乘法电路由差分对管构成,每个乘法电路阵列通过该多个乘法电路和所对应的减法电路实现对该多个第一模拟信号的卷积运算,其中,每个乘法电路阵列中包括的多个差分对管的差模输入电压作为该乘法电路阵列进行卷积运算的卷积核,该至少一个乘法电路阵列的卷积核互异。

Description

用于图像处理的装置
技术领域
本申请涉及图像处理领域,并且更具体地,涉及一种用于图像处理的装置。
背景技术
随着人工智能的发展,机器学习(Machine Learning,ML)相关算法及理论广泛应用到各个领域,并取得令人惊讶的效果。在众多的机器学习算法中,神经网络算法模仿生物神经系统的行为特征对原始信息进行处理,并提取出高维特征,在模式识别领域受到了广泛的关注。自从1957年前馈神经网络——感知机提出以来,经过半个多世纪的发展,神经算法在不同的领域发展出很多不同结构的算法。例如,深度神经网络算法(Deep NeuralNetwork,DNN)、递归神经网络(Recurrent neural Network,RNN)以及卷积神经网路(Convolutional Neural Network,CNN)等,它们各自在不同的领域发挥着越来越重要的作用。
卷积神经网络算法由于其算法结构更接近于生物视觉系统的网络结构、独特的卷积运算以及良好的分类效果,已逐渐发展成为图像识别领域关注的焦点。不同的学者在不同的图像识别领域发展出了不同结构的CNN网络模型。例如,用于手写字符识别的lenet-5、用于人脸识别的CFF、用于文本识别的convNN等。它们将图片分类的精度推到了传统算法无法达到的高度。
随着深度学习训练方法的不断优化改进,CNN网络深度越来越深,网络结构越来越复杂,使得CNN在各种图片分类器上的准确率越来越高。然而,随着CNN识别准确率的不断提升,其运算代价也随之不算增大。传统的运算平台已经无法满足卷积神经网络对于运算速度和功耗的要求。
发明内容
本申请提供一种用于图像处理的装置,能够实现卷积神经网络算法在模拟域的加速,并能够满足卷积神经网络对于运算速度和功耗的要求。
第一方面,本申请提供一种识别图像的装置,该装置包括:第一物理计算单元,用于接收图像传感器输出的多个第一模拟信号,并对该多个第一模拟信号进行卷积运算,以得到第二模拟信号,该多个第一模拟信号与待识别图像的多个像素数据一一对应,其中,第一物理计算单元由至少一个乘法电路阵列和至少一个减法电路组成,该至少一个乘法电路阵列与该至少一个减法电路一一对应,每个乘法电路阵列中包括多个乘法电路,每个乘法电路由差分对管构成,每个乘法电路阵列通过该多个乘法电路和所对应的减法电路实现对该多个第一模拟信号的卷积运算,其中,每个乘法电路阵列中包括的多个差分对管的差模输入电压作为该乘法电路阵列进行卷积运算的卷积核,该至少一个乘法电路阵列的卷积核互异;识别单元,用于对第二模拟信号进行识别处理,以得到待识别图像的识别结果信息。
在一种可能的实现方式中,每个差分对管包括第一金属氧化物半导体MOS管和第二MOS管,第一MOS管和第二MOS管工作在亚阈值区。
在一种可能的实现方式中,该减法电路包括两个输入接口和一个输出接口,每个差分对管包括的第一MOS管的漏极作为所对应的乘法电路的第一输出接口,每个差分对管包括的第二MOS管的漏极作为所对应的乘法电路的第二输出接口,该乘法电路阵列中所有乘法电路的第一输出接口连接至该减法电路中的一个输入接口,该乘法单元阵列中的所有乘法电路的第二输出接口连接至该减法电路中的另一个输入接口,以及,该减法电路包括两个P沟道电流镜PMIR和一个N沟道电流镜NMIR,该减法电路的一个输入接口通过该两个PMIR中的一个PMIR连接至该减法电路的输出接口,该减法电路的另一个输入接口通过该两个PMIR中的另一个PMIR和该NMIR连接至该减法电路的输出接口。
在一种可能的实现方式中,该装置还包括:第二物理计算单元,用于对该第二模拟信号进行池化运算,得到第三模拟信号,该第二物理计算单元由电流镜电路组成。
在一种可能的实现方式中,该第二模拟信号为多个,以及,第二物理计算单元由至少一个电流镜电路组成,该至少一个电流镜电路与该至少一个乘法电路阵列一一对应,每个电流镜电路用于对所对应的乘法电路阵列输出的第二模拟信号作池进行运算。
在一种可能的实现方式中,该装置还包括:第三物理计算单元,该第三物理计算单元的输入接口与该第一物理计算单元的输出接口相连接,以对该第二模拟信号进行非线性映射处理,得到第四模拟信号;第四物理计算单元,该第四物理计算单元的输入接口与该第三物理计算单元的输出接口相连接,以对该第四模拟信号进行池化运算,该第四物理计算单元由电流镜电路组成。
在一种可能的实现方式中,第三物理计算单元由包括第三MOS管和第四MOS管的电路组成,第三MOS管和第四MOS管工作在亚阈值区。
在一种可能的实现方式中,该装置还包括:第五物理计算单元,该第五物理计算单元输入接口与该第二物理计算单元的输出接口相连接,以对该第三模拟信号进行非线性映射处理。
在一种可能的实现方式中,第五物理计算单元由包括第五MOS管和第六MOS管的电路组成,第五MOS管和第六MOS管工作在亚阈值区。
在一种可能的实现方式中,该池化运算为均值池化。
根据本申请实施例提供的用于图像处理的装置,通过按照卷积神经网络的结构组织而成的物理计算单元,实现了在模拟域对图像进行卷积运算、池化运算等相关处理。能够在实现对卷积神经算法加速的同时,满足卷积神经网络对实时性和低功耗的要求。
附图说明
图1为卷积神经网络的基本架构图。
图2为卷积运算过程的示意图。
图3为本申请实施例提供的第一物理计算单元的示意性框图。
图4为本申请实施例提供的乘法电路阵列与减法电路的连接关系示意图。
图5为本申请实施例提供的用于图像处理的装置100的示意性架构图。
图6为待识别图像的像素数据构成的矩阵的示意图。
图7为本申请实施例提供的乘法电路和电流镜电路的结构示意图。
图8为本申请实施例提供的用于池化运算的电路结构示意图。
图9为本申请实施例提供的用于非线性映射处理的电路结构示意图。
具体实施方式
下面将结合附图,对本申请中的技术方案进行描述。
卷积神经网络(Convolutional Neural Network,CNN)是一种深度学习的架构。由于卷积神经网络算法结构更接近于生物视觉系统的网络结构,自60年代被提出以来,已经逐渐发展成为图像识别领域的焦点。特别是在模式分类领域,由于卷积神经网络避免了对图像复杂的前期预处理,可以直接输入原始图像,因而得到了更广泛的应用。
随着深度学习训练方法的不断优化改进,CNN网络的深度越来越深,网络结构越来越复杂,使得CNN在各种图片分类上的准确率越来越高。然而,随着,CNN识别准确率的不断提升,CNN算法代价也随之不断增大,传统的中央处理器(Central Processing Unit,CPU)平台已经无法满足其对运算速度和功耗的要求。
为此,本申请实施例提供一种用于识别图像的装置,能够对卷积神经网络算法在模拟域进行加速,满足了卷积神经网络对于运算速度和功耗的要求。
首先,对本申请实施例中涉及的有关卷积神经网络的相关概念作简单介绍。
卷积神经网络一般由卷积层(convolution layer)、池化层(pooling layer)和全连接层(full-connection layer)组成。
图1为卷积神经网络的基本框架图。参见图1,卷积神经网络包括卷积层、池化层和全连接层。其中,多个卷积层与多个池化层交替排列,卷积层之后可以为卷积层,也可以为池化层。卷积层主要用于对待识别图像的像素数据构成的输入矩阵作卷积运算,以提取待识别图像的特征。池化层通常紧随卷积层之后使用,主要用于对前一层的输出矩阵作池化运算,通常的处理方式包括最大值池化和均值池化。池化层也可称为子采样层,是对卷积层提取的特征进行采样的过程,因此,也可以认为是对卷积层的输出矩阵作简化。在卷积神经网络的最后接上几层全连接层,最终输出对待识别图像的分类结果。
为了便于理解,下面对卷积神经网络执行卷积运算的过程作简单说明。
图2为卷积运算过程的示意图。参见图2,图2中以输入矩阵为(记作矩阵#A)5×5的矩阵,卷积核为3×3的矩阵(记作矩阵#B),步长(记作S)为1作为示例。其中,滑动窗口的大小代表的是卷积核的大小。在作卷积运算时,滑动窗口从矩阵#A的左上角位置为起始位置,按照步长从左往右、从上往下进行滑动。按照图2中所示的方式执行9此卷积操作,即可得到输出矩阵。
池化操作(或者说,池化运算)用于降低输入矩阵的维度,通过池化操作,一方面可以降低计算的复杂度,另一方面,对卷积层提取的特征进行采样,以提取待识别图像的主要特征。池化操作的类型主要包括最大值池化和均值池化等。平均池化是将滑动窗口中的所有元素取平均。最大池化是计算滑动窗口中的所有元素的最大值。池化过程与卷积过程大致类似,不同之处在于滑动窗口中的数据元素的运算方式不同,具体过程可以参考现有技术,本文不作详述。
根据前文所述,卷积神经网络包括多个层,每个层对获取的待识别图像的像素数据执行对应的操作(或者说运算)。例如,卷积层执行卷积运算、池化层执行池化运算等。本申请实施例参照卷积神经网络的组成结构,将模拟运算单元(也即,物理计算单元)按照卷积神经网络的算法流程进行布置,以使每个模拟运算单元可以执行所对应的神经网络层的运算或操作。
需要说明的是,本申请实施例中所说的物理计算单元可以集成在一起,也可以相互分离,本申请实施例对此不作任何限定。
本申请实施例中的模拟计算单元采用模拟电路的形式实现,通过借助于电子元器件,本身的特性,构建模拟电路来实现特性的数学运算。
可以理解的是,一方面,模拟电路结构简单、硬件消耗小、功耗低、运算速度快,与数字域的运算相比,可以在消耗更低功耗的情况下实现更高的运算并行度。另一方面,机器学习算法本身的容错性能可以抵消部分模拟电路的计算误差,因此,在模拟域执行卷积神经网络算法,可以满足其在实际应用中对于实时性和低能耗的需求。
下面结合图3至图9,对本申请实施例提供的用于图像处理的装置进行详细说明。
图3为本申请实施例提供的第一物理计算单元的示意性框图。参见图3,第一物理计算单元由至少一个乘法电路阵列和至少一个减法电路组成,该至少一个乘法电路阵列与该至少一个减法电路一一对应,每个乘法电路阵列中包括多个乘法电路,每个乘法电路由差分对管构成,每个乘法电路阵列通过该多个乘法电路和所对应的减法电路实现对该多个第一模拟信号的卷积运算,其中,每个乘法电路阵列中包括的多个差分对管的差模输入电压作为该乘法电路阵列进行卷积运算的卷积核,该至少一个乘法电路阵列的卷积核互异。
实际上,第一物理计算单元即为实现卷积运算的模拟电路,因此,也可以称为卷积单元。
可选地,作为一个实施例,该减法电路包括两个输入接口和一个输出接口,每个差分对管包括的第一MOS管的漏极作为所对应的乘法电路的第一输出接口,每个差分对管包括的第二MOS管的漏极作为所对应的乘法电路的第二输出接口,该乘法电路阵列中所有乘法单元的第一输出接口连接至该减法电路中的一个输入接口,该乘法电路阵列中的所有乘法电路的第二输出接口连接至该减法电路中的另一个输入接口,以及,
该减法电路包括两个P沟道电流镜PMIR和一个N沟道电流镜NMIR,该减法电路的一个输入接口通过所述两个PMIR中的一个PMIR连接至该减法电路的输出接口,该减法电路的另一个输入接口通过该两个PMIR中的另一个PMIR和该NMIR连接至该减法电路的输出接口。
应理解,文中的MOS管是指金属氧化物半导体(Metal Oxide Semiconductor,MOS)管。PMIR是指P沟道电流镜(Mirror),NMIR是指N沟道电流镜(PMIR)。
图4为本申请实施例提供的乘法电路阵列与减法电路的连接关系示意图。参见图4,每个乘法电路包括两个输出接口(即,第一输出接口和第二输出接口),其中,所有乘法电路的第一输出接口连接至节点B,所有的第二输出接口连接至节点A。减法电路包括两个输入接口(如图4中所示的输入接口#1和输入接口#2)和一个输出接口。其中,节点B连接至输入接口#1,节点A连接至输入接口#2。
在本申请实施例中,第一物理计算单元包含至少一个上述乘法电路阵列和至少一个减法电路,可以实现对模拟信号的卷积运算。具体实现过程后文会作详细说明。
可选地,作为一个实施例,该装置还包括:
第二物理计算单元,用于对所述第二模拟信号进行池化运算,得到第三模拟信号,第二物理计算单元由电流镜电路组成。
第二物理计算单元的输入接口与第一物理单元的输出接口相连接,用于对进行卷积运算后的模拟信号(即,第二模拟信号)进行池化运算。
具体地,第二物理计算单元可以通过电流镜电路实现均值池化操作。
可选地,作为一个实施例,该装置还包括:
第三物理计算单元,所述第三物理计算单元的输入接口与所述第一物理计算单元的输出接口相连接,以对第二模拟信号进行非线性映射处理,得到第四模拟信号;
第四物理计算单元,第四物理计算单元的输入接口与第三物理计算单元的输出接口相连接,以对第四模拟信号进行均值池化运算,第四物理计算单元由电流镜电路组成。
其中,第三物理计算单元由包括第三MOS管和第四MOS管的电路组成,第三MOS管和第四MOS管工作在亚阈值区。
需要说明的是,前文中所述的第一物理计算单元的输出接口与第二物理计算单元的输入接口连接,即是在对模拟信号进行卷积运算之后,直接进行池化运算。
而在一种可能的实现方式中,第三物理计算单元的输入接口与第一物理计算单元的输出接口相连接,是对模拟信号进行卷积运算之后,进行非线性映射处理。之后,再通过第四物理计算单元,对经过非线映射处理的模拟信号进行池化运算。
可以理解的,在卷积神经网络中,非线性映射可以在卷积运算或池化运算之后执行,或者,也可以不执行。相对应地,在本申请实施例中,若是在对模拟信号进行卷积运算之后,直接执行池化操作,即可在第一物理计算单元之后连接第二物理计算单元。若是在对模拟信号进行卷积之后,需要进行非线性映射,即可以在第一物理计算单元之后,依次连接第三物理计算单元和第四物理计算单元,以对卷积之后的模拟信号进行非线性映射处理、池化运算。
应理解,本申请实施例中的编号“第一”、“第二”仅仅为了区分不同的对象,例如,为了区分不同的物理计算单元。不应对本申请实施例的保护范围造成任何限定。
因此,这里的第二物理计算单元与第四物理计算单元实际上均是用于对模拟信号进行池化操作的模拟电路,可以相同,也可以不同。本申请实施例对此不作任何限定。
可选地,作为一个实施例,该装置还包括:
第五物理计算单元,所述第五物理计算单元输入接口与所述第二物理计算单元的输出接口相连接,以对第三模拟信号进行非线性映射处理。
其中,第五物理计算单元由包括第五MOS管和第六MOS管的电路组成,第五MOS管和第六MOS管工作在亚阈值区。
与前文类似,这里的第五物理计算单元,用于在对模拟信号进行池化操作之后,再进行非线性映射处理。因此,第五物理计算单元可以与第三物理计算单元的电路构成相同,也可以不同。
以下,对本请实施例提供的用于图像处理的装置100实现卷积神经网络算法的过程进行说明。
图5为本申请实施例提供的用于图像处理的装置的示意性架构图。参见图5所示,图像传感器首先获取待识别图像的像素数据,并将获取的像素数据转换为模拟信号输入至模拟计算单元(即,物理计算单元),从这里开始,待识别图像的像素数据转至模拟域进行卷积、池化等运算。其中,图像传感器获取待识别图像的像素数据,可以通过现有技术实现,这里不作说明。
为了便于说明,以下将图像传感器将像素数据转换为模拟电流信号输出作为示例。
可以理解的是,图像传感器获取的是待识别图像的不仅一个像素数据,因此,转换得到的模拟电流信号也是多个,并且,这多个电流信号与这些像素数据是一一对应的。即,每一个电流信号对应一个像素数据。这里的像素数据构成的矩阵可以参见图6。图6为待识别图像的像素数据构成的矩阵的示意图。应理解,这个像素数据构成的矩阵即是对应前文图2中所示的卷积运算的输入矩阵。只不过,这些像素数据转换为模拟电流信号的形式,进入了本申请实施例提供的物理计算单元,以由这些物理计算单元对这些模拟电流信号执行与卷积神经网络的各层相对应的运算(例如,卷积、池化等)处理。
这里,我们假设像素数据构成的作为卷积运算的输入矩阵的大小为5×5。这样,这5×5个像素数据经过图像传感器的处理,相对应地转换为5×5个模拟电流信号,文中依次记作I0-I24。以下对模拟电流I0-I24在物理计算单元中的处理流程进行详细说明。当输入矩阵的大小改变时,在模拟域处理的流程是类似的。
电流I0-I24首先会被进行复制,进入与卷积神经网络的第一个卷积层相对应的物理计算单元(以下记作卷积单元#1)。应理解,图5中所示的卷积单元#1即为本申请实施例中所说的第一物理计算单元。
在本申请实施例中,采用电流镜对电流I0-I24进行复制。
应理解,电流镜(Current Mirror)即为镜像电流源。当在一个电流镜的输入端输入一个参考电流时,电流镜的输出端将会输出一个大小和方向都与该参考电流一致的输出电流。即,该输出电流为该参考电流的完全复制。
本申请实施例对于电流镜的具体实现形式不作任何限定,只要能够实现对电流I0-I24的完全复制即可。
在本申请实施例中,卷积单元#1中包括多个不同的卷积通道,每个卷积通道对一个卷积模板。实际上,这里的每一个卷积模板对应一个卷积运算时的卷积核。而一个卷积核是通过前文所述的一个乘法电路阵列来实现的。
应理解,图5中仅以卷积通道为4个作为示例而非限定,一个卷积单元中应该包括多少个卷积通道与要提取的待识别图像的特征的数量有关。根据卷积神经网络识别图像时的原理可知,每个卷积核用于提取图像的一个特征。并且,同一个卷积核共享权重。
模拟电流I0-I24进入卷积单元#1中,实际上是分别进入各个卷积通道。
基于前文所描述的卷积运算的过程可知,卷积运算即是对输入矩阵和卷积核的元素之间的运算过程。而在本申请实施例中,进行卷积运算的输入矩阵即为由待识别图像的像素数据转换成的模拟电流信号组成的矩阵,卷积核为卷积通道对应的卷积模板。
因此,输入矩阵中的像素数据对应的电流I0-I24依次被复制后进入卷积单元中的各个卷积通道,各个卷积通道对应的卷积模板对这些电流信号进行卷积运算。
以下,以一个卷积模板为例,对各个卷积通道内执行卷积运算的模拟电路结构进行说明。
图7为本申请实施例提供的乘法电路和电流镜电路的结构示意图。如图7所示,一个乘法电路由一个包括差分对管的电路组成,其中,该差分对管包括两个MOS管(以下分别记作MOS管#A和MOS管#B,简记作MA和MB)。
其中,MA和MB的栅极之间的差模输入电压记作Vω,MA和MB的漏极电流分别记作IA和IB,MA和MB的源极相互连接并接地。需要说明的是,在本申请实施中,这里的差分对管MA和MB的源极的接地电流即为模拟电流I0-I24
可以理解的是,每个乘法电路对应一个模拟电流,以对该模拟电流与该乘法电路的差分对管的差模输入电压作乘法运算。
以电流I0为例,其中,IA和IB可以分别根据式(1)和式(2)计算得到:
其中,式中的参数VΤ为MOS管的开启电压。
可以理解的是,当MA和MB的栅极之间的差模输入电压Vω很小时,MA和MB的漏极电流之间的差值可以表达为式(3):
在本申请实施例中,通过控制MA和MB的栅极之间的差模输入电压Vω,可以设置一个乘法电路阵列中构成每个乘法电路的差分对管的差模输入电压,从而构建不同的卷积核。换句话说,每个卷积通道对应一个卷积模板,而每个卷积模板实际上由一个乘法电路阵列组成,每个乘法电路阵列对应该卷积模板的卷积核。卷积核由矩阵构成,该矩阵中的每一个元素即为该乘法电路阵列中构成每个乘法电路的差分对管的差模输入电压。为了便于说明,以下,假设卷积核的大小为3×3,即,乘法单元阵列为一个3×3的阵列。
因此,当待识别图像的像素数据对应的模拟电流I0-I24被复制进入每一个卷积模板时,每个模拟电流都通过该卷积模板对应的乘法电路阵列中的乘法电路实现了乘法运算。
根据卷积运算的过程可知,每个卷积通道会输出3×3个模拟电流,该3×3个模拟电流为该卷积通道进行卷积运算得到的输出矩阵(应为3×3)中的元素。
在本申请实施例中,MA的漏极和MB的漏极分别作为乘法电路的两个输出接口,并且,我们将漏极IA记作每个乘法电路的第一输出接口,将漏极IB记作每个乘法电路的第二输出接口。结合前文图4可知,每个乘法电路的第一输出接口连接至电路中的同一个节点(如图4中的节点A),以实现该多个乘法电路的第一输出接口输出电流IA之间的累加,并且,每个乘法电路的第二输出接口连接至电路中的同一个节点(如图4中的节点B),以实现该多个乘法电路的第二输出接口输出电流IB之间的累加。
同时,卷积运算单元通过一个减法电路,对节点A输出的电流(记作IA+)与节点B输出的电流(记作IB+)实现减法运算。具体地,本申请实施例对于实现电流IA+与电流IB+相减的减法电路的具体结构形式不做任何限定。应理解,图4中所示的减法电路仅是作为一种示例。本领域技术人员也可以通过简单置换,设计出实现相同作用的其它电路结构。
同样的,PMIR和NMIR的电路结构可以参见图7所示。关于PMIR和NMIR的工作原理可以参见现有技术,这里不作说明。
应理解,电流IA+为一个乘法电路阵列中所有乘法电路的第一输出接口的电流IA之和,电流IB+为一个乘法电路阵列中所有乘法电路的第二输出接口的电流IB之和。
结合前文图4,节点A和节点B分别连接一个P沟道的电流镜PMIR。其中,PMIR#1与节点B连接,实现对电流IB+的复制。PMIR#2与节点A连接,实现对电流IA+的复制。并且,PMIR#1与N沟道电流镜NMIR连接,这样,电流IB+在经过PMIR#1和NMIR后,电流IB+的参考方向发生改变,从而在节点C,实现了与经过节点A的电流IA+的相减,输出电流Iout=IA+-IB+
至此,我们得到了卷积单元#1对待识别图像的像素数据转换得到的电流信号执行卷积运算的结果。
本领域技术人员通过改变本申请实施例提供的乘法电路阵列的大小及组织形式,可以得到不同大小的卷积模板,能够构建不同维度的卷积单元。
需要说明的是,N沟道的电流镜NMIR与P沟道的电流镜PMIR的具体电路形式可以如图7中所示。显然,图7中所示的电流镜结构仅作为示例进行说明。
继续参见图5,卷积通道#1至卷积通道#4各自输出3×3个模拟电流信号。
下面以卷积通道#1为例,对其输出的模拟电流信号的后续处理作说明。为了便于说明,以下将卷积通道#1输出的3×3个模拟电流信号记作IC1-IC9
假设,与卷积单元#1相连接的物理计算单元为池化单元#1。每个卷积通道对应一个池化通道。卷积通道#1至卷积通道#4输出的模拟电流分别送入池化单元#1中所对应的池化通道#1至池化通道#4。每个池化通道采用均值池化的方式,对进入该池化通道的模拟电流作池化处理。
图8为本申请实施例提供的用于池化运算的电路结构示意图。具体地,在本申请实施例中,通过一个电流镜电路实现均值池化。以池化单元#1为例,其输出的模拟电流即为:
应理解,这里的n为该池化通道的池化窗口大小。例如,当池化窗口大小为3×3时,n=9。在前文的示例中,卷积通道#1输出的模拟电流为9个,其大小分别为IC1-IC9,因此,若池化窗口大小为3×3,池化通道#1对电流IC1-IC9作均值池化操作后,输出电流Iout=(IC1+IC2+…IC8+IC9)/9。
其它池化通道内的池化运算是类似的,这里不再赘述。
至此,第一次池化运算完成。
根据现有技术中的卷积神经网络算法可知,通常,在卷积层或池化层之后会相对应地,对卷积层输出的信号或池化层输出的信号作非线性映射处理。
应理解,池化单元可以对应本申请实施例中的用于进行池化运算的物理计算单元。例如,第二物理计算单元。
可选地,作为一个实施例,本申请实施例提供一个非线性映射单元,该非线性映射单元可以连接在卷积单元之后,以对卷积单元输出的模拟电流进行非线性映射处理。和/或,该非线性映射单元连接在池化单元之后,以对池化单元输出的模拟电流进行非线性映射处理。
图9为本申请实施例提供的用于非线性映射处理的电路结构示意图。在本申请实施例中采用的非线性映射函数为Sigmoid函数。实现Sigmoid函数功能的电路结构如图9中虚线圈内的结构所示。两个晶体管MS1和MS2构成一个差分对管。并且,MS1和MS2处于工作状态时,MS1和MS2均工作在亚阈值区,输出Sigmoid函数形式的电流。图9中虚线圈之外的外围电路为接口电路,实现信号模式转换,从而能够直接接收前级输出。
这里,MOS管工作在亚阈值区的相关说明,可以参见现有技术,此处不作详述。
应理解,前文所述的第三物理计算单元和第五物理计算单元均是用于对模拟信号进行非线性映射操作。因此,第三物理计算单元和第五物理计算单元可以采用图9所示的电路结构实现。
通过本申请实施例提供的各物理单元(即,模拟电路)能够在实现卷积神经网络算法的同时,对卷积神经网络算法进行加速。之后,从装置100输出的模拟信号,可以通过模拟数字转换器(Analog to Digital Converter,ADC)被采样转换到数字域,得到待识别图像的识别结果(或者说,分类结果)。
需要说明的是,本申请实施例提供的装置100在模拟域进行信号处理时,所需要的神经网络参数可以通过固定偏执给出,或者,通过数字模拟转换器(Digital To AnalogConverter,DAC)转换给出。再或者,可以采用非易失模拟存储手段,例如,浮栅(FloatingGate)给出。
根据本申请实施例提供的各物理计算单元,以一个卷积层、一个池化层和一个全连接层、特征图数量为1,组建的模拟电路为例,在高性能集成电路性能分析的电路模拟程序(High Simulation Program with Integrated Circuit Emphasis,HSPICE)仿真环境下,采用Matlab训练的参数对大小为28×28的MNIST数据集图片进行分类测试实验。在仿真中所用的电路采用SMIC 0.18μm工艺设计时,实验结果表明,电路的建立时间为50ns左右。在对分类结果采样输出频率为10M的情况下,该样例分类一张图片的平均能耗为1.47nJ,能效可达22T操作数每秒每瓦。相对于英特尔的双核CPU,能效有4个数量级的提升。在精度方面,相比于中央处理器(Central Processing Unit,CPU),分类精度仅下降0.73%。模数转换带宽下降为原来的1.3%。
根据本申请实施例提供的用于图像处理的装置,可以通过按照卷积神经网络的结构组织而成的物理计算单元,实现在模拟域对图像进行卷积运算、池化运算等相关处理,能够在实现对卷积神经算法加速的同时,满足卷积神经网络对实时性和低功耗的要求。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。

Claims (10)

1.一种用于图像处理的装置,其特征在于,所述装置包括:
第一物理计算单元,用于接收图像传感器输出的多个第一模拟信号,并对所述多个第一模拟信号进行卷积运算,以得到第二模拟信号,所述多个第一模拟信号与待识别图像的多个像素数据一一对应,
其中,所述第一物理计算单元由至少一个乘法电路阵列和至少一个减法电路组成,所述至少一个乘法电路阵列与所述至少一个减法电路一一对应,每个乘法电路阵列中包括多个乘法电路,每个乘法电路由差分对管构成,每个乘法电路阵列通过所述多个乘法电路和所对应的减法电路实现对所述多个第一模拟信号的卷积运算,其中,每个乘法电路阵列中包括的多个差分对管的差模输入电压作为所述乘法电路阵列进行卷积运算的卷积核,所述至少一个乘法电路阵列的卷积核互异。
2.根据权利要求1所述的装置,其特征在于,每个差分对管包括第一金属氧化物半导体MOS管和第二MOS管,所述第一MOS管和所述第二MOS管工作在亚阈值区。
3.根据权利要求2所述的装置,其特征在于,所述减法电路包括两个输入接口和一个输出接口,每个差分对管包括的第一MOS管的漏极作为所对应的乘法电路的第一输出接口,每个差分对管包括的第二MOS管的漏极作为所对应的乘法电路的第二输出接口,所述乘法电路阵列中所有乘法电路的第一输出接口连接至所述减法电路中的一个输入接口,所述乘法电路阵列中的所有乘法电路的第二输出接口连接至所述减法电路中的另一个输入接口,以及,
所述减法电路包括两个P沟道电流镜PMIR和一个N沟道电流镜NMIR,所述减法电路的一个输入接口通过所述两个PMIR中的一个PMIR连接至所述减法电路的输出接口,所述减法电路的另一个输入接口通过所述两个PMIR中的另一个PMIR和所述NMIR连接至所述减法电路的输出接口。
4.根据权利要求1至3中任一项所述的装置,其特征在于,所述装置还包括:
第二物理计算单元,用于对所述第二模拟信号进行池化运算,得到第三模拟信号,所述第二物理计算单元由电流镜电路组成。
5.根据权利要求4所述的装置,其特征在于,所述第二模拟信号为多个,以及,
所述第二物理计算单元由至少一个电流镜电路组成,所述至少一个电流镜电路与所述至少一个乘法电路阵列一一对应,每个电流镜电路用于对所对应的乘法电路阵列输出的第二模拟信号进行池化运算。
6.根据权利要求1至3中任一项所述的装置,其特征在于,所述装置还包括:
第三物理计算单元,所述第三物理计算单元的输入接口与所述第一物理计算单元的输出接口相连接,以对所述第二模拟信号进行非线性映射处理,得到第四模拟信号;
第四物理计算单元,所述第四物理计算单元的输入接口与所述第三物理计算单元的输出接口相连接,以对所述第四模拟信号进行池化运算,所述第四物理计算单元由电流镜电路组成。
7.根据权利要求6所述的装置,其特征在于,所述第三物理计算单元由包括第三MOS管和第四MOS管的电路组成,所述第三MOS管和所述第四MOS管工作在亚阈值区。
8.根据权利要求4或5所述的装置,其特征在于,所述装置还包括:
第五物理计算单元,所述第五物理计算单元输入接口与所述第二物理计算单元的输出接口相连接,以对所述第三模拟信号进行非线性映射处理。
9.根据权利要求8所述的装置,其特征在于,所述第五物理计算单元由包括第五MOS管和第六MOS管的电路组成,所述第五MOS管和所述第六MOS管工作在亚阈值区。
10.根据权利要求4-9中任一项所述的装置,其特征在于,所述池化运算为均值池化运算。
CN201710105815.XA 2017-02-24 2017-02-24 用于图像处理的装置 Active CN108513042B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201710105815.XA CN108513042B (zh) 2017-02-24 2017-02-24 用于图像处理的装置
PCT/CN2017/106574 WO2018153112A1 (zh) 2017-02-24 2017-10-17 用于图像处理的装置
US16/529,116 US10827102B2 (en) 2017-02-24 2019-08-01 Image processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710105815.XA CN108513042B (zh) 2017-02-24 2017-02-24 用于图像处理的装置

Publications (2)

Publication Number Publication Date
CN108513042A true CN108513042A (zh) 2018-09-07
CN108513042B CN108513042B (zh) 2020-03-10

Family

ID=63254112

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710105815.XA Active CN108513042B (zh) 2017-02-24 2017-02-24 用于图像处理的装置

Country Status (3)

Country Link
US (1) US10827102B2 (zh)
CN (1) CN108513042B (zh)
WO (1) WO2018153112A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110311676A (zh) * 2019-06-24 2019-10-08 清华大学 一种采用开关电流技术的物联网视觉系统和数据处理方法
CN112396171A (zh) * 2019-08-15 2021-02-23 杭州智芯科微电子科技有限公司 人工智能计算芯片、信号处理系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1916959A (zh) * 2006-08-29 2007-02-21 中国航天时代电子公司第七七一研究所 可缩放大规模二维卷积电路
CN1987928A (zh) * 2005-12-21 2007-06-27 北京航空航天大学 一种实时快速实现高斯模板卷积的装置
US20150309961A1 (en) * 2014-04-28 2015-10-29 Denso Corporation Arithmetic processing apparatus
CN105825484A (zh) * 2016-03-23 2016-08-03 华南理工大学 一种基于深度学习的深度图像去噪及增强方法
CN105979174A (zh) * 2016-05-05 2016-09-28 清华大学 一种滤波网络及图像处理系统

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06187472A (ja) 1991-04-02 1994-07-08 Wacom Co Ltd アナログニューラルネットワーク
US5537512A (en) 1993-05-26 1996-07-16 Northrop Grumman Corporation Neural network elements
US5717833A (en) 1996-07-05 1998-02-10 National Semiconductor Corporation System and method for designing fixed weight analog neural networks
US7734674B2 (en) * 2005-08-08 2010-06-08 Freescale Semiconductor, Inc. Fast fourier transform (FFT) architecture in a multi-mode wireless processing system
CN100405004C (zh) * 2006-08-25 2008-07-23 北京航空航天大学 光条图像特征高精度快速提取装置及方法
CN102646262B (zh) * 2012-02-28 2014-07-02 西安交通大学 一种可重构的视觉前处理器和视觉处理系统
CN105976024B (zh) * 2016-06-03 2018-12-25 福州大学 基于rbf的模式分类器及其工作方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1987928A (zh) * 2005-12-21 2007-06-27 北京航空航天大学 一种实时快速实现高斯模板卷积的装置
CN1916959A (zh) * 2006-08-29 2007-02-21 中国航天时代电子公司第七七一研究所 可缩放大规模二维卷积电路
US20150309961A1 (en) * 2014-04-28 2015-10-29 Denso Corporation Arithmetic processing apparatus
CN105825484A (zh) * 2016-03-23 2016-08-03 华南理工大学 一种基于深度学习的深度图像去噪及增强方法
CN105979174A (zh) * 2016-05-05 2016-09-28 清华大学 一种滤波网络及图像处理系统

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110311676A (zh) * 2019-06-24 2019-10-08 清华大学 一种采用开关电流技术的物联网视觉系统和数据处理方法
CN110311676B (zh) * 2019-06-24 2020-10-16 清华大学 一种采用开关电流技术的物联网视觉系统和数据处理方法
CN112396171A (zh) * 2019-08-15 2021-02-23 杭州智芯科微电子科技有限公司 人工智能计算芯片、信号处理系统

Also Published As

Publication number Publication date
US10827102B2 (en) 2020-11-03
CN108513042B (zh) 2020-03-10
WO2018153112A1 (zh) 2018-08-30
US20190356821A1 (en) 2019-11-21

Similar Documents

Publication Publication Date Title
JP6946572B2 (ja) 加速された量子化積和演算
Kugele et al. Efficient processing of spatio-temporal data streams with spiking neural networks
Ozcan et al. Transfer learning-based convolutional neural networks with heuristic optimization for hand gesture recognition
Linsley et al. Learning long-range spatial dependencies with horizontal gated recurrent units
Zhou et al. Rethinking bottleneck structure for efficient mobile network design
Lin et al. Exploring context with deep structured models for semantic segmentation
CN107358293B (zh) 一种神经网络训练方法及装置
JP7325158B2 (ja) ニューラル・ネットワーク・コアにおける動的精度のためのデータ表現
Yousefzadeh et al. On practical issues for stochastic STDP hardware with 1-bit synaptic weights
Kim et al. Beyond classification: Directly training spiking neural networks for semantic segmentation
KR102558300B1 (ko) 신경망 및 신경망 트레이닝 방법
Ye et al. 3d depthwise convolution: Reducing model parameters in 3d vision tasks
CN108171701B (zh) 基于u网络和对抗学习的显著性检测方法
CN109816009A (zh) 基于图卷积的多标签图像分类方法、装置及设备
CN107636697A (zh) 基于浮点神经网络量化的定点神经网络
CN108475348A (zh) 卷积神经网络
CN105981055A (zh) 神经网络对当前计算资源的自适应
CN107016437A (zh) 用于核基神经形态系统中的随机尖峰模式的有效生成的方法、系统和计算机可读存储介质
CN106951875A (zh) 一种基于二进制卷积的人体姿态估计和人脸对齐的方法
Chervyakov et al. Residue number system-based solution for reducing the hardware cost of a convolutional neural network
CN108229300A (zh) 视频分类方法、装置、计算机可读存储介质和电子设备
CN114792378B (zh) 一种量子图像识别方法及装置
KR20210154502A (ko) 부동 소수점 연산을 수행하는 뉴럴 네트워크 장치 및 그의 동작 방법
CN114821217B (zh) 一种基于量子经典混合神经网络的图像识别方法及装置
CN109376763A (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
GR01 Patent grant
GR01 Patent grant