CN111695683B - 可执行人工智能运算的存储器芯片及其运算方法 - Google Patents
可执行人工智能运算的存储器芯片及其运算方法 Download PDFInfo
- Publication number
- CN111695683B CN111695683B CN201910198357.8A CN201910198357A CN111695683B CN 111695683 B CN111695683 B CN 111695683B CN 201910198357 A CN201910198357 A CN 201910198357A CN 111695683 B CN111695683 B CN 111695683B
- Authority
- CN
- China
- Prior art keywords
- subsets
- weight
- data
- subset
- artificial intelligence
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Neurology (AREA)
- Combined Controls Of Internal Combustion Engines (AREA)
Abstract
本发明提供一种可执行人工智能运算的存储器芯片及其运算方法。存储器芯片包括存储器阵列以及人工智能引擎。存储器阵列用以存储输入特征值数据以及多个权重数据。输入特征值数据包括多个第一子集,各权重数据包括多个第二子集。人工智能引擎包括多个特征值检测器,且用以存取存储器阵列,以取得输入特征值数据以及权重数据。每个特征值检测器根据权重索引分别从对应的权重数据中选择至少一个第二子集作为选中子集,并且特征值检测器依据选中子集与对应的第一子集来执行神经网络运算。
Description
技术领域
本发明涉及一种存储器架构,尤其涉及一种可执行人工智能(ArtificialIntelligence,AI)运算的存储器芯片及其运算方法。
背景技术
随着人工智能(Artificial Intelligence,AI)运算的演进,人工智能运算的应用范围越来越广泛,除了可用于配备高速图形处理器(Graphics Processing Unit,GPU)的云端伺服器之外,也可用于例如手机、平板电脑以及物联网(Internet of Things,IoT)装置等小型可携式电子装置上。藉此,可在装置上经由神经网络模型来进行图像(image)分析等卷积神经网络运算,提高运算的效能。
对于可携式电子装置而言,降低能耗是众所周知的一大课题。然而,在可携式电子装置上进行卷积神经网络运算会产生相当大的能耗,这是由于许多卷积神经网络的所需的参数量非常庞大。在小型可携式电子装置中,处理芯片上的快取存储器并不足以存放这么多的参数量,因此每进行一次运算这些参数都要从人工智能运算引擎外部的动态随机存取存储器(Dynamic Random Access Memory,DRAM)搬移到处理芯片内一次,导致高能耗的产生。大致来说,从外部的动态随机存取存储器搬移数据至处理芯片所产生的能耗是读取处理芯片内静态随机存取存储器(Static Random-Access Memory,SRAM)所产生的能耗的大约130倍,更是一般加法运算所产生的能耗的大约6400倍。
发明内容
本发明提供一种可执行人工智能(Artificial Intelligence,AI)运算的存储器芯片及其运算方法,可从权重(Weight)数据中仅选择重要的子集来进行神经网络运算,以减少需从人工智能引擎外部的存储器搬移的参数量。
本发明的可执行人工智能运算的存储器芯片包括存储器阵列以及人工智能引擎。存储器阵列用以存储输入特征值数据以及多个权重数据。输入特征值数据包括多个第一子集,各权重数据包括多个第二子集。人工智能引擎耦接存储器阵列,且包括多个特征值检测器。人工智能引擎用以存取存储器阵列,以取得输入特征值数据以及权重数据。每个特征值检测器根据权重索引分别从对应的权重数据中选择至少一个第二子集作为选中子集,并且特征值检测器依据选中子集与对应的第一子集来执行神经网络运算。
在本发明的一实施例中,在低能耗模式下,上述的每个特征值检测器根据权重索引分别从对应的权重数据中选择至少一个第二子集作为选中子集,以执行神经网络运算。
本发明的可执行人工智能运算的存储器芯片的运算方法包括提供输入特征值数据以及多个权重数据,输入特征值数据包括多个第一子集,各权重数据包括多个第二子集;根据权重索引分别从各权重数据中选择至少一个第二子集作为选中子集;以及依据选中子集与对应的第一子集来执行神经网络运算。
基于上述,本发明的存储器芯片及其运算方法能够以一种近似内积运算的方式,从权重数据中选择重要的子集来进行神经网络运算。藉此,由于运算所需的参数量大幅减少,可减少需从人工智能引擎外部的存储器进行搬移的参数量与次数,从而达到降低能耗的目的。
为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合所附附图作详细说明如下。
附图说明
图1是依照本发明一实施例的存储器芯片的方块示意图。
图2是依照本发明一实施例的可执行人工智能运算的存储器芯片的运算方法的操作示意图。
图3是依照本发明一实施例的特征值检测器的电路示意图。
图4是依照本发明一实施例的存储器芯片的方块示意图。
图5是依照本发明一实施例的可执行人工智能运算的存储器芯片的运算方法的范例。
图6是依照本发明一实施例的可执行人工智能运算的存储器芯片的运算方法的流程图。
【符号说明】
100、400:存储器芯片
110、410:存储器阵列
120、420:人工智能引擎
122_1~122~6、422_1、422_2:特征值检测器
124、424:控制电路
126、426:温度传感器
128、428:电池电量传感器
310:权重索引判断器
320:反及闸
330:开关
340:及闸
350:乘法器
360:累加器
370、380:缓冲器
430、440:多工器
CLK:时脉信号
FD、FD1:输入特征值数据
L1、L2:阶层
R1~R5、R2’、R5’:内积结果
S1_1~S1_N:第一子集
S2_1~S2_N:第二子集
SL1:权重索引判断信号
SL2:低能耗判断信号
Vcc:动作电压
WD_1~WD_6、WD1_1~WD1_5:权重数据
WI:权重索引
S610~S630:步骤
具体实施方式
以下请参照图1,图1是依照本发明一实施例的存储器芯片的方块示意图。存储器芯片100包括存储器阵列110以及人工智能引擎120。在本实施例中,存储器阵列110例如是由动态随机存取存储器等易失性存储器元件所构成。在其他实施例中,存储器阵列110亦可由快闪存储器、相变化存储器、电阻式存储器等非易失性存储器元件所构成。存储器阵列110包括多个存储器区域,以存储输入特征值数据FD以及6笔权重数据WD_1~WD_6。本领域技术人员可以视其实际需求而决定权重数据的个数,本发明实施例并不以此为限。
如图1所示,特征值数据FD包括N个第一子集S1_1~S1_N,每个权重数据WD_1~WD_6也包括N个第二子集S2_1~S2_N。其中N为大于1的正整数。第一子集S1_1~S1_N例如是将特征值数据FD中的参数向量分为N等份所形成。每个权重数据WD_1~WD_6中的第二子集S2_1~S2_N也例如是将每个权重数据WD_1~WD_6中的参数向量分为N等份所形成。N例如介于4~16之间。需说明的是,在其他实施例中,每个第一子集S1_1~S1_N的大小可不相同,每个第二子集S2_1~S2_N的大小也可不相同,本发明实施例并不以此为限。
在存储器阵列110中存储有权重索引WI。权重索引WI用以提供权重数据WD_1~WD_6中的选中子集的信息。在本发明中,由于权重数据WD_1~WD_6是依照所使用的运算模型事先训练(train)出来的数据,因此能够预先对权重数据WD_1~WD_6中的第二子集S2_1~S2_N进行分析,以选择出较重要的子集作为选中子集。举例来说,可分别将权重数据WD_1的第二子集S2_1~S2_N中的向量数值取绝对值后相加总和后,选择总和结果大于一预定值的第二子集作为权重数据WD_1的选中子集,并且将选中子集的索引值记录于权重索引WI中。以此类推,即可将每笔权重数据WD_1~WD_6的选中子集的索引值皆记录于权重索引WI中,以建立完整的权重索引WI。并且,将权重索引WI存储于存储器阵列110中。除了上述方法之外,也可例如将第二子集S2_1~S2_N中的数值取平方和后相加总和来进行比较,以获得选中子集。特别说明的是,本发明可能从每笔权重数据中选择出一个或多个选中子集。此外,本发明亦可能直接将选中子集存储于权重索引WI中。在一实施例中,权重索引WI例如是一个查找表。
人工智能引擎120耦接存储器阵列110。人工智能引擎120包括6个特征值检测器122_1~122~6。特征值检测器122_1~122~6可视为神经网络运算中的神经元。人工智能引擎120用以存取存储器阵列110,以取得输入特征值数据FD以及权重数据WD_1~WD_6。如图1所示,特征值检测器122_1~122~3配置于第一阶层L1,特征值检测器122_4~122~6配置于第二阶层L2。人工智能引擎120可将每笔权重数据WD_1~WD_6传送到对应的特征值检测器122_1~122~6。人工智能引擎120可例如是由控制逻辑、运算逻辑以及快取(cache)存储器等诸如此类的电路元件所建构而成的存储器内运算(Processing In Memory,PIM)架构或近存储器运算(Near Memory Processing,NMP)架构。此外,本领域技术人员可以视其实际需求而决定人工智能引擎120中阶层的分配情况,本发明实施例并不以此为限。此外,在本实施例中,虽然是将人工智能引擎120整合于存储器芯片100中,但本发明并不以此为限,在其他实施例中,人工智能引擎120也可以配置于一独立的芯片上,并通过外部连接的方式对存储器芯片100中的数据(例如输入特征值数据FD、权重数据WD_1~WD_6及权重索引WI等数据)进行处理。
需说明的是,在本实施例中,特征值检测器122_1~122~6的个数与权重数据WD_1~WD_6的个数相同,但在其他实施例中特征值检测器的个数可少于权重数据的个数,请参考后述实施例。
人工智能引擎120还包括控制电路124、温度传感器126以及电池电量传感器128。控制电路124可以例如是利用多个逻辑门所组成的逻辑电路。温度传感器126可以是任何类型的温度量测元件与电路,电池电量传感器128可以是任何类型的电池电量量测元件与电路,本发明实施例并不以此为限。
图2是依照本发明一实施例的可执行人工智能运算的存储器芯片的运算方法的操作示意图。在图2中,每个特征值检测器122_1~122~6可根据权重索引WI分别对应的权重数据WD_1~WD_6中选择第二子集S2_1~S2_N中的至少一个作为选中子集。藉此,特征值检测器122_1~122~6可仅读取选中子集,并且依据选中子集与特征值数据FD的第一子集S1_1~S1_N中对应的第一子集来执行神经网络运算。以下搭配存储器芯片100中的各项元件来具体说明本发明的存储器芯片的运算方法。
首先,控制电路124可依据各种环境条件来判断是否进入低能耗模式。举例来说,当温度传感器126感测到温度大于一个温度门槛值时,温度传感器126可通知控制电路124来使人工智能引擎120进入低能耗模式。另一方面,当电池电量传感器128感测到安装有存储器芯片100的可携式电子装置的电池电量小于一个电量门槛值时,温度传感器128也可通知控制电路124来使人工智能引擎120进入低能耗模式。在其他实施例中,也可在人工智能运算的准确率低于一个门槛值时进入低能耗模式,本发明实施例并不以此为限。
当判断为要进入低能耗模式时,控制电路124可向存储器阵列110发出命令来从存储器阵列110中的存储器区域取得权重索引WI,并且将权重索引WI传送到特征值检测器122_1~122~6中。
当人工智能引擎120执行神经网络运算时,人工智能引擎120可存取存储器阵列110,以取得输入特征值数据FD以及权重数据WD_1~WD_6,并将各权重数据WD_1~WD_6传送到对应的特征值检测器122_1~122~6。如图2所示,人工智能引擎120将权重数据WD_1传送到特征值检测器122_1,将权重数据WD_2传送到特征值检测器122_2,以此类推。
在低能耗模式下,各个特征值检测器122_1~122~6可根据权重索引WI而分别从权重数据WD_1~WD_6中选择第二子集S2_1~S2_N中的至少一个作为选中子集。举例来说,如图2所示,特征值检测器122_1根据权重索引WI而选择权重数据WD_1中较重要的第二子集S2_3作为选中子集,特征值检测器122_2根据权重索引WI而选择权重数据WD_2中较重要的第二子集S2_4作为选中子集,特征值检测器122_3根据权重索引WI而选择权重数据WD_3中较重要的第二子集S2_N作为选中子集,特征值检测器122_4根据权重索引WI而选择权重数据WD_4中较重要的第二子集S2_2作为选中子集,特征值检测器122_5根据权重索引WI而选择权重数据WD_5中较重要的第二子集S2_N作为选中子集,特征值检测器122_6根据权重索引WI而选择权重数据WD_6中较重要的第二子集S2_1作为选中子集。
然后,在图2中,特征值检测器122_1~122~6可仅读取各自所选择的选中子集,并且依据各自所选择的选中子集与特征值数据FD的第一子集S1_1~S1_N中对应的第一子集来执行神经网络运算。举例来说,在阶层L1中,特征值检测器122_1可仅读取权重数据WD_1中作为选中子集的第二子集S2_3,并将其与特征值数据FD中对应的第一子集S1_3进行内积运算。特征值检测器122_2可仅读取权重数据WD_2中作为选中子集的第二子集S2_4,并将其与特征值数据FD中对应的第一子集S1_4进行内积运算。特征值检测器122_3可仅读取权重数据WD_3中作为选中子集的第二子集S2_N,并将其与特征值数据FD中对应的第一子集S1_N进行内积运算。在阶层L2中,特征值检测器122_4可仅读取权重数据WD_4中作为选中子集的第二子集S2_2,并将其与阶层L1的运算结果中对应的子集进行内积运算。特征值检测器122_5可仅读取权重数据WD_5中作为选中子集的第二子集S2_N,并将其与阶层L1的运算结果中对应的子集进行内积运算。特征值检测器122_6可仅读取权重数据WD_6中作为选中子集的第二子集S2_1,并将其与阶层L1的运算结果中对应的子集进行内积运算。并且,人工智能引擎120可将神经网络运算的结果输出至存储器阵列110中,以完成运算。
基于上述运算方法,特征值检测器122_1~122~6可根据权重索引WI而只读取权重数据WD_1~WD_6中的一部分重要的子集,而非读取全部的子集。因此可降低从存储器阵列110搬移数据至人工智能引擎120的参数量,从而降低能耗。
本实施例中的神经网络运算可例如为全连接层(Fully Connected Layer)运算,但本发明实施例并不以此为限。
另外需说明的是,在本发明实施例中,各个特征值检测器122_1~122~6皆是分别从权重数据WD_1~WD_6的第二子集S2_1~S2_N中选择一个第二子集作为选中子集,但本发明实施例并不以此为限。在其他实施例中,各个特征值检测器122_1~122~6也可根据权重索引WI而分别从权重数据WD_1~WD_6的第二子集S2_1~S2_N中选择多个第二子集作为选中子集。
在选择多个第二子集作为选中子集的实施例中,各特征值检测器122_1~122~6例如可根据权重索引WI而选择连续排列在一起的多个第二子集作为选中子集,但本发明实施例并不以此为限。在其他实施例中,也可选择分散排列的多个第二子集作为选中子集。
图3是依照本发明一实施例的特征值检测器的电路示意图。请参照图3,以特征值检测器122_1为例,特征值检测器122_1包括权重索引判断器310、反及闸320、开关330、及闸340、乘法器350、累加器360、缓冲器370以及缓冲器380。
权重索引判断器310例如是利用多个逻辑门所组成的逻辑电路。权重索引判断器310从存储器阵列110取得权重索引WI,以输出权重索引判断信号SL1。
反及闸320的第一输入端耦接权重索引判断信号SL1,反及闸320的第二输入端耦接人工智能引擎120中的控制电路124,以接收低能耗判断信号SL2。
开关330可例如由晶体管构成。开关330的第一端耦接动作电压Vcc。开关330的控制端耦接反及闸320的输出端。
及闸340的第一输入端耦接反及闸320的输出端。及闸340的第二输入端耦接时脉信号CLK。
乘法器350耦接开关330的第二端以及及闸340的输出端,以接收动作电压Vcc并反应于时脉信号CLK进行动作。并且,乘法器350通过缓冲器370及380接收输入特征值数据FD以及权重数据WD_1进行乘法运算。
累加器360耦接反及闸320的输出端、乘法器350的输出端以及及闸340的输出端。累加器360依据权重索引判断信号SL1以及低能耗判断信号SL2对乘法器的运算结果进行累加。
以下对图3所示的特征值检测器122_1进行操作说明。当人工智能引擎120中的控制电路124判断未进入低能耗模式时,控制电路124可将低能耗判断信号SL2降低至低逻辑电平。此时,反及闸320会保持输出高逻辑电平,因此开关330会保持导通而将动作电压Vcc传送至乘法器350。并且,及闸340也会将时脉信号CLK传送至乘法器350以及累加器360。在这样的情况下,乘法器350以及累加器360可依序对接收输入特征值数据FD中的所有第一子集S1_1~S1_N以及权重数据WD_1中的所有第二子集S2_1~S2_N进行内积运算。
另一方面,当人工智能引擎120中的控制电路124判断进入了低能耗模式时,控制电路124可将低能耗判断信号SL2拉高至高逻辑电平,并且将权重索引WI传送到权重索引判断器310。
权重索引判断器310可根据权重索引WI调整权重索引判断信号SL1的逻辑电平。举例来说,在乘法器350以及累加器360依序对接收输入特征值数据FD中的第一子集S1_1~S1_N以及权重数据WD_1中的第二子集S2_1~S2_N进行内积运算的期间,当轮到权重索引WI中所记录的选中子集时,权重索引判断器310可将权重索引判断信号SL1拉低至低逻辑电平。此时,反及闸320会输出高逻辑电平,乘法器350以及累加器360可对权重数据WD_1中的选中子集以及第一子集S1_1~S1_N中对应的第一子集进行内积运算。
相反地,当轮到选中子集以外的其他第二子集时,权重索引判断器310可将权重索引判断信号SL1拉高至高逻辑电平。此时,反及闸320会输出低逻辑电平,因此开关330会断开而停止将动作电压Vcc传送至乘法器350。并且,及闸340也会停止将时脉信号CLK传送至乘法器350以及累加器360。在这样的情况下,乘法器350、累加器360、缓冲器370以及缓冲器380皆会禁能而不会读取选中子集以外的其他第二子集。藉此,可降低芯片的能耗。
图4是依照本发明一实施例的存储器芯片的方块示意图。请参照图4,存储器芯片400包括存储器阵列410以及人工智能引擎420。存储器阵列410包括多个存储器区域,以存储输入特征值数据FD以及6笔权重数据WD_1~WD_6。人工智能引擎420包括控制电路424、温度传感器426以及电池电量传感器428。
与前述实施例不同的是,人工智能引擎420包括2个特征值检测器422_1、特征值检测器422_2、多工器430以及多工器440。在本发明实施例中,控制电路424可控制多工器430、440以依序将权重数据WD_1~WD_6传送到特征值检测器422_1、特征值检测器422_2来进行神经网络运算。藉此,与前述实施例相比较,能够以较少的特征值检测器来处理同样数量的权重数据,并进行相同的神经网络运算。
在一实施例中,可采用两阶段的内积运算来进行神经网络运算,以减少误差的产生。举例来说,图5是依照本发明一实施例的可执行人工智能运算的存储器芯片的运算方法的范例。在图5中,将内积运算分为两个阶段。在第一阶段中,将输入特征值数据FD1与权重数据WD1_1~WD1_5中的选中子集进行内积运算。如图5所示,权重数据WD1_1~WD1_5分别以连续排列在一起的3个第二子集作为选中子集。在将权重数据WD1_1~WD1_5中的选中子集与输入特征值数据FD1中对应的第一子集进行内积运算而产生内积结果R1~R5之后,在第二阶段中,针对内积结果R1~R5中为正数的任一个内积结果R2与R5,将输入特征值数据FD1中所有第一子集以及对应的权重数据WD1_2、WD1_5中的所有第二子集重新进行内积运算,以产生新的内积结果R2’与R5’。据此,将内积结果R2与R5更新为新的内积结果R2’与R5’,以减少近似内积运算产生的误差。
图6是依照本发明一实施例的可执行人工智能运算的存储器芯片的运算方法的流程图。请参照图6,在本实施例中存储器芯片的运算方法包括下列步骤。提供输入特征值数据以及多个权重数据,输入特征值数据包括多个第一子集,各权重数据包括多个第二子集(步骤S610)。接着,根据权重索引分别从各权重数据中选择至少一个第二子集作为选中子集(步骤S620)。最后,依据选中子集与对应的第一子集来执行神经网络运算(步骤S630)。其中,上述步骤S610、S620及S630的顺序为用以说明,本发明实施例不以此为限。并且,上述步骤S610、S620及S630的细节可参照图1至图5的实施例,在此则不再赘述。
综上所述,本发明能够以一种近似内积运算的方式,从权重数据中选择重要的子集来进行神经网络运算。藉此,当在电子装置上执行参数量非常庞大的神经网络运算时,可大幅减少需从处理引擎外部的存储器进行搬移的参数量与次数,从而达到降低能耗的目的。
虽然本发明已以实施例揭示如上,然其并非用以限定本发明,任何所属技术领域中的技术人员,在不脱离本发明的精神和范围内,当可作些许的更改与润饰,故本发明的保护范围当视权利要求所界定的为准。
Claims (11)
1.一种可执行人工智能运算的存储器芯片,包括:
存储器阵列,用以存储输入特征值数据以及多个权重数据,所述输入特征值数据包括多个第一子集,所述多个权重数据的每一个包括多个第二子集;以及
人工智能引擎,耦接所述存储器阵列,包括多个特征值检测器,所述人工智能引擎用以存取所述存储器阵列,以取得所述输入特征值数据以及所述多个权重数据,
其中,在低能耗模式下,所述多个特征值检测器的每一个根据权重索引分别从对应的所述权重数据中仅选择至少一个重要的所述第二子集作为至少一个选中子集,所述多个特征值检测器依据所述至少一个选中子集与对应的至少一个所述第一子集来执行神经网络运算,所述至少一个选中子集是根据所述多个第二子集中的向量数值取绝对值后进行相加总和、或取平方和后进行相加总和的总和结果选择出来的,
其中,所述人工智能引擎包括控制电路,所述多个特征值检测器的每一个包括:
权重索引判断器,从所述存储器阵列取得所述权重索引,以输出权重索引判断信号;
反及闸,其第一输入端耦接所述权重索引判断信号,其第二输入端耦接所述控制电路以接收低能耗判断信号;
开关,其第一端耦接动作电压,其控制端耦接所述反及闸的输出端;
及闸,其第一输入端耦接所述反及闸的输出端,其第二输入端耦接时脉信号;
乘法器,耦接所述开关的第二端以及所述及闸的输出端,其接收所述输入特征值数据以及对应的所述权重数据并进行乘法运算;以及
累加器,耦接所述反及闸的输出端、所述乘法器的输出端以及所述及闸的输出端,依据所述权重索引判断信号以及所述低能耗判断信号对所述乘法器的运算结果进行累加。
2.根据权利要求1所述的存储器芯片,其中,所述多个特征值检测器的每一个根据所述权重索引选择连续排列在一起的多个第二子集作为选中子集。
3.根据权利要求1所述的存储器芯片,其中,在所述多个特征值检测器将所述至少一个选中子集与对应的所述多个第一子集进行内积运算而产生多个内积结果后,针对所述多个内积结果中为正数的任一个内积结果,与正数的内积结果对应的所述特征值检测器将所述输入特征值数据的所有第一子集以及与正数的内积结果对应的所述权重数据中的所有第二子集重新进行内积运算来更新内积结果。
4.根据权利要求1所述的存储器芯片,其中,所述人工智能引擎包括温度传感器,当所述温度传感器感测到温度大于温度门槛值时,所述人工智能引擎进入所述低能耗模式。
5.根据权利要求1所述的存储器芯片,其中,所述人工智能引擎包括电池电量传感器,当所述电池电量传感器感测到电池电量小于电量门槛值时,所述人工智能引擎进入所述低能耗模式。
6.根据权利要求1所述的存储器芯片,其中,所述人工智能引擎配置于所述存储器芯片外的独立芯片上。
7.一种可执行人工智能运算的存储器芯片的运算方法,包括:
提供输入特征值数据以及多个权重数据,所述输入特征值数据包括多个第一子集,所述多个权重数据的每一个包括多个第二子集;
根据权重索引分别从所述多个权重数据的每一个中选择至少一个所述第二子集作为至少一个选中子集;以及
依据所述至少一个选中子集与对应的至少一个所述第一子集来执行一神经网络运算,所述至少一个选中子集是根据所述多个第二子集中的向量数值取绝对值后进行相加总和、或取平方和后进行相加总和的总和结果选择出来的,
其中,根据所述权重索引分别从所述多个权重数据的每一个中选择至少一个所述第二子集作为所述至少一个选中子集的步骤包括:
判断是否进入低能耗模式;以及
当判断为要进入所述低能耗模式时,从存储器区域取得所述权重索引,并且根据所述权重索引分别从所述多个权重数据的每一个中仅选择至少一个重要的所述第二子集作为所述至少一个选中子集,
所述存储器芯片包括存储器阵列以及人工智能引擎,所述人工智能引擎包括多个特征值检测器以及控制电路,
其中,所述多个特征值检测器的每一个包括:
权重索引判断器,从所述存储器阵列取得所述权重索引,以输出权重索引判断信号;
反及闸,其第一输入端耦接所述权重索引判断信号,其第二输入端耦接所述控制电路以接收低能耗判断信号;
开关,其第一端耦接动作电压,其控制端耦接所述反及闸的输出端;
及闸,其第一输入端耦接所述反及闸的输出端,其第二输入端耦接时脉信号;
乘法器,耦接所述开关的第二端以及所述及闸的输出端,其接收所述输入特征值数据以及对应的所述权重数据并进行乘法运算;以及
累加器,耦接所述反及闸的输出端、所述乘法器的输出端以及所述及闸的输出端,依据所述权重索引判断信号以及所述低能耗判断信号对所述乘法器的运算结果进行累加。
8.根据权利要求7所述的运算方法,其中,根据所述权重索引分别从所述多个权重数据的每一个中选择至少一个第二子集作为选中子集的步骤包括:
根据所述权重索引选择所述多个权重数据的每一个中连续排列在一起的多个第二子集作为选中子集。
9.根据权利要求7所述的运算方法,其中,依据所述至少一个选中子集与对应的所述多个第一子集来执行所述神经网络运算的步骤包括:
将所述至少一个选中子集与对应的所述多个第一子集进行内积运算而产生多个内积结果;以及
针对所述多个内积结果中为正数的任一个内积结果,将所述输入特征值数据的所有第一子集以及与正数的内积结果对应的所述权重数据中的所有第二子集重新进行内积运算来更新内积结果。
10.根据权利要求7所述的运算方法,还包括:
当感测到的温度大于温度门槛值时,进入所述低能耗模式。
11.根据权利要求7所述的运算方法,还包括:
当感测到电池电量小于电量门槛值时,进入所述低能耗模式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910198357.8A CN111695683B (zh) | 2019-03-15 | 2019-03-15 | 可执行人工智能运算的存储器芯片及其运算方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910198357.8A CN111695683B (zh) | 2019-03-15 | 2019-03-15 | 可执行人工智能运算的存储器芯片及其运算方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111695683A CN111695683A (zh) | 2020-09-22 |
CN111695683B true CN111695683B (zh) | 2023-09-01 |
Family
ID=72475417
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910198357.8A Active CN111695683B (zh) | 2019-03-15 | 2019-03-15 | 可执行人工智能运算的存储器芯片及其运算方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111695683B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107516132A (zh) * | 2016-06-15 | 2017-12-26 | 耐能有限公司 | 人造神经网络的简化装置和简化方法 |
CN107918794A (zh) * | 2017-11-15 | 2018-04-17 | 中国科学院计算技术研究所 | 基于计算阵列的神经网络处理器 |
CN107977704A (zh) * | 2017-11-10 | 2018-05-01 | 中国科学院计算技术研究所 | 权重数据存储方法和基于该方法的神经网络处理器 |
CN108960414A (zh) * | 2018-07-20 | 2018-12-07 | 中国人民解放军国防科技大学 | 一种基于深度学习加速器实现单广播多运算的方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11157441B2 (en) * | 2017-07-24 | 2021-10-26 | Tesla, Inc. | Computational array microprocessor system using non-consecutive data formatting |
-
2019
- 2019-03-15 CN CN201910198357.8A patent/CN111695683B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107516132A (zh) * | 2016-06-15 | 2017-12-26 | 耐能有限公司 | 人造神经网络的简化装置和简化方法 |
CN107977704A (zh) * | 2017-11-10 | 2018-05-01 | 中国科学院计算技术研究所 | 权重数据存储方法和基于该方法的神经网络处理器 |
CN107918794A (zh) * | 2017-11-15 | 2018-04-17 | 中国科学院计算技术研究所 | 基于计算阵列的神经网络处理器 |
CN108960414A (zh) * | 2018-07-20 | 2018-12-07 | 中国人民解放军国防科技大学 | 一种基于深度学习加速器实现单广播多运算的方法 |
Non-Patent Citations (1)
Title |
---|
蔡瑞初 等.面向"边缘"应用的卷积神经网络量化与压缩方法.计算机应用.2018,38(09),第2449-2453页. * |
Also Published As
Publication number | Publication date |
---|---|
CN111695683A (zh) | 2020-09-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10558935B2 (en) | Weight benefit evaluator for training data | |
US11216716B2 (en) | Memory chip capable of performing artificial intelligence operation and operation method thereof | |
US7603638B2 (en) | Method and system for modeling statistical leakage-current distribution | |
US20240095510A1 (en) | Systems and Methods of Sparsity Exploiting | |
US20190065962A1 (en) | Systems And Methods For Determining Circuit-Level Effects On Classifier Accuracy | |
CN113841165A (zh) | 用于训练人工神经网络的系统和方法 | |
US20190026629A1 (en) | Systems and Methods for Overshoot Compensation | |
US10318696B1 (en) | Efficient techniques for process variation reduction for static timing analysis | |
WO2022012233A1 (zh) | 一种量化校准方法、计算装置和计算机可读存储介质 | |
Reis et al. | A fast and energy efficient computing-in-memory architecture for few-shot learning applications | |
Huang et al. | Sensor-based approximate adder design for accelerating error-tolerant and deep-learning applications | |
CN111695683B (zh) | 可执行人工智能运算的存储器芯片及其运算方法 | |
Afzali-Kusha et al. | X-nvdla: Runtime accuracy configurable nvdla based on applying voltage overscaling to computing and memory units | |
US20220318572A1 (en) | Inference Processing Apparatus and Inference Processing Method | |
US10997497B2 (en) | Calculation device for and calculation method of performing convolution | |
US20230100328A1 (en) | Delta predictions for page scheduling | |
US20200193282A1 (en) | System and Method for Training Artificial Neural Networks | |
CN116522834A (zh) | 时延预测方法、装置、设备及存储介质 | |
US12021523B2 (en) | Integrated circuit and computing system performing dynamic voltage and frequency scaling and method of operating integrated circuit | |
US11748607B2 (en) | Systems and methods for partial digital retraining | |
Choi et al. | An efficient convolutional neural networks design with heterogeneous SRAM cell sizing | |
KR20210103383A (ko) | 멀티 레벨 셀 메모리의 데이터 프로그래밍을 검증하는 디바이스, 시스템 및 방법 | |
US20220335280A1 (en) | Artificial intelligence semiconductor processor and operating method of artificial intelligence semiconductor processor | |
WO2024087185A1 (en) | Memory access adaptive self-attention mechanism for transformer model | |
US20240028213A1 (en) | System, method and/device for managing memory devices |
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 |