首页 / 专利库 / 人工智能 / 语音触发器 / 用于在硬件人工神经网络中神经元值无同步传输的系统,方法和制品

用于在硬件人工神经网络中神经元值无同步传输的系统,方法和制品

阅读:210发布:2020-05-16

专利汇可以提供用于在硬件人工神经网络中神经元值无同步传输的系统,方法和制品专利检索,专利查询,专利分析的服务。并且人工神经网络 (ANN)中的计算是使用称为神经元的简单处理单元完成的,其中数据由神经元之间的连接(称为突触)以及这些连接的强度(突触权重)体现。交叉 开关 阵列可用于表示在每个交叉点处具有非易失性 存储器 (NVM)元件的ANN的一层,其中NVM元件的电导可用于编码突触权重,并且阵列上的高度并行 电流 求和实现代表输出神经元值的加权和运算。概述了一种方法,以将这样的神经元值从一个阵列的输出传递到第二阵列的输入,而不需要全局时钟同步,而不管阵列之间的距离,并且在下一个阵列处使用这样的值,和/或将这些值过渡为下一阵列的数字位。,下面是用于在硬件人工神经网络中神经元值无同步传输的系统,方法和制品专利的具体信息内容。

1.一种用于将信号从芯片上的一个区域传输到芯片上的另一个区域而不使用全局时钟或其他全局同步装置的方法,所述方法包括:
通过在公共初始化触发和随后的唯一终止触发之间的延迟中对每个信号编码,在多个传输信道上传输多个模拟信号,所有传输信道共享公共初始化触发,以便使用有限数量的传输信道远程精确地数字化每个信号。
2.如权利要求1所述的方法,其中寻址方案允许在多位数据总线上的到达信号确定数据必须指向的特定目的地电路节点
3.如权利要求1所述的方法,其中附加级别的编码避免了由两个或更多信号几乎同时到达引起的冲突,其中到达地址和相关的附加延迟两者确定数据必须指向的特定目的地电路节点。
4.如权利要求1所述的方法,其中多个模拟信号在所述另一个区域以模拟方式使用,而不将所述模拟信号转换为数字化形式。
5.如权利要求1所述的方法,其在人工神经网络(ANN)中实施,ANN包括以层排列的多个神经元,所述层包括至少一个上游神经元层和至少一个下游神经元层,至少一个上游神经元层的输出连接到至少一个下游神经元层的输入,其中芯片上的一个区域是上游神经元层以及芯片上的另一个区域是下游神经元层,所述方法包括:
(a)基于在上游神经元层中产生的启动信号在上游神经元层中开始电容器的放电,电容器具有代表上游神经元层的输出的初始值;
(b)将(a)中的启动信号共享到位于下游神经元层的数字计数器的输入,其中计数器在接收到启动信号时,使用下游神经元层本地的时钟开始计数;
(c)监测电容器的输出模拟电压;和
(d)当在监测的输出模拟电压中检测到电压过渡时,
(e)将电压过渡信号传输到下游神经元层,
其中,下游神经元层在接收到电压过渡信号时存计数器的当前值,锁存的当前值等于表示上游神经元层的输出的初始值,并且其中输出值在上游神经元层和下游神经元层之间通信,而上游神经元层和下游神经元层之间的时钟没有全局同步。
6.如权利要求5所述的方法,其中监视电容器的输出模拟电压的步骤包括在比较器处接收电容器的输出模拟电压和参考电压的输入,其中比较器输出表示监测的电容器输出模拟电压的信号。
7.如权利要求6所述的方法,其中直接施加表示输出模拟电压的电压宽度以在位于下游神经元的更下游的多个突触元件内产生电流信号。
8.如权利要求6所述的方法,其中电压过渡信号由下游神经元层中的多个触发器接收。
9.如权利要求6所述的方法,其中位于下游神经元层的数字计数器与位于另一上游神经元层中的至少一个其他比较器共享,其中来自不同比较器的上升沿根据相应的瞬时计数器值在不同时间被锁存。
10.如权利要求9所述的方法,其中来自不同比较器的每个上升沿由下游神经元层中的不同触发器集合接收。
11.如权利要求5所述的方法,其中过渡信号是以下中的任何一个:(1)从低'0'过渡到高'1'的信号,并且(d)中的计数器的当前值在接收到过渡信号的上升沿时被锁存,和(2)从高“1”过渡到“0”的信号,以及(d)中的计数器的当前值在接收到过渡信号的下降沿时被锁存。
12.如权利要求5所述的方法,其中每个上游和下游神经元层中的神经元经由突触彼此连接,每个突触具有编码两个连接的神经元之间的连接强度的突触权重,使用非易失性存储器(NVM)实现ANN中的突触权重。
13.如权利要求12所述的方法,其中NVM选自电阻随机存取存储器(RRAM)和相变存储器(PCM)组成的组。
14.如权利要求12所述的方法,其中使用CMOS电路表示ANN中的神经元。
15.如权利要求12所述的方法,其中所述ANN用作应用的一部分,应用选自包括以下各项的组:模式识别应用,图像识别应用,语音识别应用和语言处理应用。
16.如权利要求1所述的方法在人工神经网络(ANN)中实现,ANN包括以层排列的多个神经元,所述层包括至少一个上游神经元层和至少一个下游神经元层,至少一个上游神经元层的输出连接到至少一个下游神经元层的输入,其中芯片上的一个区域是上游神经元层以及芯片上的另一个区域是下游神经元层,所述方法包括:
(a)基于在上游神经元层中产生的启动信号开始斜坡上升阈值电压以与上游神经元层中的电容器相关联的输出模拟电压比较,其中与电容器相关联的电压的初始值表示上游神经元层的输出;
(b)将(a)中的启动信号共享到位于下游神经元层的数字计数器的输入,其中计数器在接收到启动信号时,使用下游神经元层本地的时钟开始计数;
(c)监测(a)中的斜坡阈值电压并检测斜坡阈值电压通过上游神经元层中电容器的输出模拟电压的过渡;以及
(d)当在监测的输出模拟电压中检测到电压过渡时,
(e)将电压过渡信号传输到下游神经元层,
其中下游神经元层在接收到电压过渡信号时锁存计数器的当前值,锁存的当前值等于表示上游神经元层的输出的初始值,并且其中输出值在上游神经元层和下游神经元层之间通信,而没有上游神经元层和下游神经元层之间的时钟的全局同步。
17.如权利要求16所述的方法,其中监视电容器的输出模拟电压的步骤包括在比较器接收电容器的输出模拟电压和参考电压的输入,其中比较器输出表示监测的电容器输出模拟电压的信号。
18.如权利要求16所述的方法,其中直接施加表示输出模拟电压的电压宽度,以在位于下游神经元的更下游的多个突触元件内产生电流信号。
19.如权利要求16所述的方法,其中所述电压过渡信号由下游神经元层中的多个触发器接收。
20.如权利要求16所述的方法,其中位于下游神经元层的数字计数器与位于另一上游神经元层中的至少一个其他比较器共享,其中来自不同比较器的上升沿根据相应的瞬时计数器值在不同时间被锁存。
21.如权利要求20所述的方法,其中来自不同比较器的每个上升沿由下游神经元层中的不同触发器集合接收。
22.如权利要求16所述的方法,其中,过渡信号是以下中的任何一个:(1)从低'0'过渡到高'1'的信号,并且(d)中的计数器的当前值在接收到过渡信号的上升沿时被锁存,和(2)从高'1'过渡到低'0'的信号,并且(d)中的计数器的当前值在接收到过渡信号的下降沿时被锁存。
23.如权利要求16所述的方法,其中每个上游和下游神经元层中的神经元经由突触彼此连接,每个突触具有编码两个连接的神经元之间的连接强度的突触权重,使用非易失性存储器(NVM)实现ANN中的突触权重。
24.如权利要求23所述的方法,其中NVM选自电阻随机存取存储器(RRAM)和相变存储器(PCM)组成的组。
25.如权利要求23所述的方法,其中使用CMOS电路表示ANN中的神经元。
26.一种在人工神经网络(ANN)中实现的系统,ANN包括分层排列的多个神经元,所述系统包括:
(a)下游神经元层中的第一电路,下游神经元层的输入连接到上游神经元层的输出,第一电路包括数字计数器和多个触发器;
(b)上游神经元层中的第二电路,第二电路包括:
(i)产生用于使电容器放电的启动信号的第三电路,电容器具有代表上游神经元层的输出的初始值;
(ii)将产生的启动信号共享到数字计数器的输入的第四电路,其中计数器在接收到启动信号时,使用下游神经元层的本地时钟开始计数;
(iii)监视电容器的输出模拟电压的第五电路,以及
(iv)当在监视的输出模拟电压中检测到电压过渡时,将电压过渡信号传输到下游神经元层中的第一电路中的多个触发器的第六电路,其中,下游神经元层在接收到电压过渡信号时锁存计数器的当前值,锁存的当前值等于表示上游神经元层的输出的初始值,其中输出值在上游神经元层和下游神经元层之间通信,而上游神经元层和下游神经元层之间的时钟没有全局同步。
27.如权利要求26所述的系统,其中第五电路包括比较器,其接收电容器的输出模拟电压和参考电压作为输入,其中比较器输出表示电容器的所监视的输出模拟电压的信号。
28.如权利要求26所述的系统,其中位于下游神经元层的数字计数器与位于另一上游神经元层中的至少一个其他比较器共享,其中来自不同比较器的上升沿根据相应的瞬时计数器值在不同时间被锁存。
29.如权利要求26所述的系统,其中来自不同比较器的每个上升沿由下游神经元层中的不同触发器集合接收。
30.如权利要求26所述的系统,其中每个上游和下游神经元层中的神经元经由突触彼此连接,每个突触具有编码两个连接的神经元之间的连接强度的突触权重,ANN中的突触权重使用非易失性存储器(NVM)实现。
31.如权利要求30所述的系统,其中NVM选自电阻随机存取存储器(RRAM)和相变存储器(PCM)组成的组。
32.如权利要求30所述的系统,其中ANN中的神经元使用CMOS电路表示。
33.如权利要求30所述的系统,其中ANN用作从由以下各项组成的组中选择的应用的一部分:模式识别应用,图像识别应用,语音识别应用和语言处理应用。

说明书全文

用于在硬件人工神经网络中神经元值无同步传输的系统,方

法和制品

技术领域

[0001] 本发明一般涉及人工神经网络(ANNs)领域。更具体地,本发明涉及用于在硬件人工神经网络中神经元值无需同步(synchronization-free)传输的系统,方法和制品。

背景技术

[0002] 人工神经网络(ANNs)是分布式计算系统,其由通过称为突触(synapse)的连接点互连的若干神经元组成。每个突触都编码一个神经元的输出和另一个神经元的输入之间的连接强度。每个神经元的输出由从与其连接的其他神经元接收的聚合输入确定,并且因此由这些“上游”连接的神经元的输出和由突触权重确定的连接的强度确定。训练ANN以通过调整突触的权重来解决特定问题(例如,模式识别),使得特定类别的输入产生期望的输出。权重调整过程被称为“学习”。在ANN文献中有许多用于执行学习的算法,这些算法适用于各种任务,例如图像识别语音识别,语言处理等。理想情况下,这些算法导致突触权重模式,其在学习过程中,收敛于给定问题的最优解。
[0003] ANN的有吸引的实现使用一些(例如,CMOS)电路来表示神经元,其功能是对来自与特定神经元连接的上游神经元的聚合输入进行积分或求和,并应用输入的一些非线性函数以导出该神经元的输出。因为一般来说,每个神经元都连接到其他神经元的一大部分,突触(连接)的数量远远大于神经元的数量;因此,使用可以在神经形态计算芯片上实现非常高密度的突触的一些实现是有利的。一个有吸引力的选择是非易失性存储器(NVM)技术,例如电阻随机存取存储器(RRAM)或相变存储器(PCM)。另一个有吸引力的选择是电容器-晶体管对。应当注意,虽然以下文献将讨论基于NVM的突触,但是技术、方法和实施例与基于基于电容的突触元件的系统同样相关。由于需要正负(即兴奋和抑制)权重,一种方案使用一对NVM(或两个电容-晶体管对)来表示权重,作为两者之间电导的差异(参见M.Suri等人,《IEDM技术文摘》,4.4(2011年))。该方案如图1所示。图1示出了在交叉开关阵列上实现的ANN层,其中NVM电导对充当突触权重。上游Ni神经元的输出通过成对的NVM电导平行地加到下游Mi神经元的正输入和负输入中。这种并行性对于有效计算非常有利。应当注意,虽然在该方案中示出了非线性2端子访问设备,但是3端子晶体管访问设备与该讨论同样相关。
[0004] 累积的电流可以被镜像并且集成到输出电容器上,使得最终的模拟电压代表一个神经元的输出值。虽然该电容器对于该特定阵列是“本地的”并且是其输出的模拟表示,但是输出神经元激活的这个值必须在第二交叉开关(crossbar)阵列上实现的另一个“下游”神经网络层的输入处,优选地以数字格式提供。该第二阵列可以在远离源/上游第一交叉开关阵列的任意距离处,并且优选地,CMOS芯片将被设计为使得阵列输出集合和后续阵列输入集合之间的映射可以是用户在运行时而不是在制造期间选择。
[0005] 图2示出了用于将交叉开关中的瞬时电流复制到输出级上的电流镜(Current Mirrors),使得这些电流被集成到输出电容上,其最终电压表示神经元Mi的模拟激活。
[0006] 将模拟电压过渡为数字值的简化近似方法包括以恒定电流放电所存储的电荷,并计数时钟脉冲的数量直到电容器完全放电。虽然本地数字化然后传输到下游阵列是可能的并且可能是准确的,但这需要在整个系统中非常仔细地同步时钟信号(具有最小的时钟偏差),如果不是不可能,这可能被证明是昂贵且耗电的。传递N个这样的数字值(其中N可以是100-1000)的过程然后需要qN个单独的总线用于并行传输,或者需要串行化以在较少的总线线路上进行较慢的传输。这种方法还需要仔细的数字化数据信号的重新缓冲,以避免与互连引起的转换(slew)相关的问题(输入信号的上升沿和下降沿由于电阻和电容效应而变得不那么“尖锐”的现象,因为它们沿着金属线传播)这会带来额外的区域损失。
[0007] 因此,本领域需要一种技术,给定在多个电容上编码为电压的一个或多个模拟值,以将这些值传送到跨越芯片的任意距离的数字缓冲器组。
[0008] 本发明的实施例是对现有技术系统和方法的改进。

发明内容

[0009] 在一个实施例中,本发明提供了一种用于在不使用全局时钟或其他全局同步装置的情况下将信号从芯片上的一个区域传输到芯片上的另一个区域的方法,其中所述方法包括通过在公共初始化触发和随后的唯一终止触发之间的延迟中对每个信号编码,在多个传输信道上传输多个模拟信号,所有传输信道共享公共初始化触发,以便使用有限数量的传输信道,每个信号可以被远程精确地数字化,或被用于远程直接集成。
[0010] 在另一个实施例中,本发明提供了一种在人工神经网络(ANN)中实现的方法,ANN包括以层排列的多个神经元,所述层包括至少一个上游神经元层和至少一个下游神经元层,至少一个上游神经元层的输出连接到至少一个下游神经元层的输入,所述方法包括:(a)基于在上游神经元层中产生的启动信号(enable signal)在上游神经元层中开始电容器的放电,电容器具有代表上游神经元层的输出的初始值;(b)将(a)中的启动信号共享到位于下游神经元层的数字计数器的输入,其中计数器在接收到启动信号时,使用下游神经元层本地的时钟开始计数;(c)监测电容器的输出模拟电压;和(d)当在监测的输出模拟电压中检测到电压过渡时,(e)将电压过渡信号传输到下游神经元层,其中,下游神经元层在接收到电压过渡信号时存计数器的当前值,锁存的当前值等于表示上游神经元层的输出的初始值,并且其中输出值在上游神经元层和下游神经元层之间通信,而上游神经元层和下游神经元层之间的时钟没有全局同步。
[0011] 在本发明的一系列的替代实施例中,与上游神经元相关联的电容器实际上不通过放电而斜坡(ramp)下降,而是将其电压与稳定增加的斜坡进行比较,并且该斜坡的初始触发与斜坡电压通过电容器电压的时间之间的持续时间对模拟电压编码以传输到远程现场。
[0012] 在本发明的另一系列的替代实施例中,到达下游神经元的持续时间未被数字化,而是立即应用于该神经元处的突触装置的交叉开关阵列,导致在下一层神经元上集成到一系列电容器上,下一层神经元甚至更远离这个下游神经元的下游。其中输入持续时间信息被数字化并且直接应用于下游突触阵列的实施例也是可能的。
[0013] 在又一个实施例中,本发明提供了一种在人工神经网络(ANN)中实现的系统,ANN包括分层排列的多个神经元,所述系统包括:
[0014] (a)下游神经元层中的第一电路,下游神经元层的输入连接到上游神经元层的输出,第一电路包括数字计数器和多个触发器;(b)上游神经元层中的第二电路,第二电路包括:(i)产生用于使电容器放电的启动信号的第三电路,电容器具有代表上游神经元层的输出的初始值;(ii)将产生的启动信号共享到数字计数器的输入的第四电路,其中计数器在接收到启动信号时,使用下游神经元层的本地时钟开始从零开始向上计数;(iii)监视电容器的输出模拟电压的第五电路,和(iv)当在监视的输出模拟电压中检测到电压过渡(transition)时,将电压过渡信号传输到下游神经元层中的第一电路中的多个触发器的第六电路,其中下游神经元层在接收到电压过渡信号时锁存计数器的当前值,锁存的当前值等于表示上游神经元层的输出的初始值,其中输出值在上游神经元层和下游神经元层之间通信,而上游神经元层和下游神经元层之间的时钟没有全局同步。
[0015] 在另一个实施例中,本发明提供了一种在人工神经网络(ANN)中实现的方法,ANN包括以层排列的多个神经元,所述层包括至少一个上游神经元层和至少一个下游神经元层,至少一个上游神经元层的输出连接到至少一个下游神经元层的输入,所述方法包括:
[0016] (a)基于在上游神经元层中产生的启动信号开始斜坡上升阈值电压以与上游神经元层中的电容器相关联的输出模拟电压比较,其中与电容器相关联的电压的初始值表示上游神经元层的输出;
[0017] (b)将(a)中的启动信号共享到位于下游神经元层的数字计数器的输入,其中计数器在接收到启动信号时,使用下游神经元层本地的时钟开始计数;(c)监测(a)中的斜坡阈值电压并检测斜坡阈值电压通过上游神经元层中电容器的输出模拟电压的过渡;以及(d)当在监测的输出模拟电压中检测到电压过渡时,(e)将电压过渡信号传输到下游神经元层,其中下游神经元层在接收到电压过渡信号时锁存计数器的当前值,锁存的当前值等于表示上游神经元层的输出的初始值,并且其中输出值在上游神经元层和下游神经元层之间通信,而没有上游神经元层和下游神经元层之间的时钟的全局同步。附图说明
[0018] 关于以下附图详细描述了本发明的实施例。提供附图仅用于说明的目的,并且仅描绘了本发明的示例。提供这些附图是为了便于读者理解本发明,而不应视为限制本发明的广度,范围或适用性。应该注意,为了清楚和便于说明,这些附图不一定按比例绘制。
[0019] 图1示出了在交叉开关阵列上实现的ANN层,其中NVM电导对充当突触权重;
[0020] 图2示出了用于将交叉开关中的瞬时电流复制到输出级上的电流镜,使得这些电流被集成到输出电容上,其最终电压表示神经元Mi的模拟激活;
[0021] 图3示出了启动模拟放电的启动信号如何与与下游神经元层相关的计数器共享;以及
[0022] 图4示出了样本电路,其中下游交叉开关阵列处的单个计数器可以由多个数字化触发器共享。

具体实施方式

[0023] 虽然在优选实施例中说明和描述了本发明,但是本发明可以以许多不同的配置来生产。附图中示出了本发明的优选实施例,并且在此将详细描述本发明的优选实施例,应理解,该描述被认为是本发明的原理的示例以及其结构的相关功能规范以及并非旨在将本发明限制于所示的实施例。本领域技术人员将设想在本发明的范围内的许多其他可能的变化。
[0024] 注意,在本说明书中,对“一个实施例”或“实施例”的引用意味着所引用的特征包括在本发明的至少一个实施例中。此外,在本说明书中对“一个实施例”的单独引用不一定指代相同的实施例;然而,除非如此陈述并且除非对于本领域普通技术人员显而易见,否则这些实施例也不是相互排斥的。因此,本发明可包括本文所述实施例的任何种类的组合和/或整合。
[0025] 这里描述的本发明的优选实施例可以通过将数据编码为模拟延迟并仅在目的地/下游交叉开关阵列处数字化来消除与时钟信号的同步和数据转换相关的挑战。本发明的优选实施例在源/上游交叉开关阵列处引入初始触发信号,该初始触发信号横穿与后续数据信号相同的距离。因此,至少对于第一顺序,触发和数据信号二者受到相同的转换效应和相同的延迟。这种方法非常适合于整体应用对传输数据中的小的,零均值误差(例如人工神经网络)具有弹性的环境。
[0026] 在本发明的优选实施例中,一旦上游神经元中的电容器上的电荷的集成(integration)操作完全完成,就由上游交叉开关阵列的控制逻辑产生启动信号。该启动信号用于开始存储在每个输出神经元中的电容器上的模拟电压的放电,或者可选地,开始斜坡电压,用于与这些模拟电压比较。启动信号也被传输到位于下游阵列的数字计数器的输入。当接收到时,计数器将使用时钟从零开始向上计数,该时钟只需要在下游目标阵列的本地区域中同步。
[0027] 图3示出了启动模拟放电的启动信号如何与输出级中的计数器共享。当比较器上升沿到达FFs时,捕获计数器的瞬时值。该值是上游输出电容器上的模拟电压的数字表示,并且本地存储在下游阵列中,因为两个到达的信号都经历相同的延迟。
[0028] 在某个时间点,电容器电压将下降到接近零的参考电压以下,或者静止的未放电的电容器电压将通过参考电压斜坡被传递。这将导致连接到输出电容节点和参考电压两者的比较器的输出经历“0”到“1”的过渡。该上升沿将被发送到下游阵列,其中一组触发器从本地计数器的输出并行接收输入,当接收到该上升沿时,可以锁存计数器位的当前值。虽然从比较器的输出(其是上游阵列的本地)和接收触发器(其是下游阵列的本地)两者存在不可忽略的传播延迟,该延迟与开始计数器操作的启动信号的延迟相当,并因此有效地抵消。因此,无需在芯片上全局同步时钟,有效地传输信息是可能的。
[0029] 该想法可以扩展到下游阵列处的单个共享计数器,其中来自不同比较器的多个上升沿在瞬时计数器值中锁存到各种时刻的不同触发器。如前所述,只要距离可比,则锁定值预计是“真实”模拟电压的合理近似估计。
[0030] 潜在地,触发器/启动信号和比较器信号两者可以在多线总线上传送,使得该总线上的数据模式对信号源自的电容器的地址编码,以及对应该在该数据模式到达的瞬间锁存的特定触发器的地址编码。与在源阵列处编码该地址以及在目的地解码该地址相关联的延迟仅需要对于每个电容器/触发器对是相同的,并且可以添加到与触发器信号的到达相关联的延迟中。如果这正确地完成,则在触发电容读出与比较器的过渡之间的源处的第一延迟以及在计数器的触发与相关联的触发器的锁存之间的目的地处的第二延迟将以恒定的值而不同,该恒定值可以如所期望的被设计为零或非零。但是,这种方法可能会导致某些数据值由于争用(太多的比较器在同一短时间窗口内跳闸)而被错误地传送。通过传输物理地址和在锁存之前施加的编码延迟(物理地址解码之后)两者,可以设计对争用的一些容忍度。因此,将使用适当的物理地址和若干不同的编码延迟来发送若干同时的比较器事件,使得目的地处的锁存事件几乎同时并以期望的延迟(例如,计数器值)发生。
[0031] 图4示出了样本电路,其中下游交叉开关阵列处的单个计数器可以由多个数字化触发器共享。取决于确切的到达时间,每个到达的上升沿将独立地捕获该计数器的不同瞬时值。
[0032] 在另一个实施例中,本发明提供了一种在人工神经网络(ANN)中实现的方法,所述ANN包括以层排列的多个神经元,所述层包括至少一个上游神经元层和至少一个下游神经元层,至少一个上游神经元层的输出连接到至少一个下游神经元层的输入,所述方法包括:(a)基于在上游神经元层中产生的启动信号在上游神经元层中开始电容器的放电,电容器具有代表上游神经元层的输出的初始值;(b)将(a)中的启动信号共享到位于下游神经元层的数字计数器的输入,其中计数器在接收到启动信号时,使用下游神经元层本地的时钟开始从零向上计数;(c)监测电容器的输出模拟电压;和当在监测的输出模拟电压中检测到电压过渡时,(d)将电压过渡信号传输到下游神经元层,以及其中下游神经元层在接收到电压过渡信号时锁存计数器的当前值,锁存的当前值等于表示上游神经元层的输出的初始值,并且其中输出值在上游神经元层和下游神经元层之间通信,而上游神经元层和下游神经元层之间的时钟没有全局同步。
[0033] 在本发明的一系列替代实施例中,与上游神经元相关联的电容器实际上不通过放电而斜坡下降,而是将其电压与稳定增加的斜坡进行比较,并且将初始触发之间的持续时间进行比较。该斜坡的初始触发和斜坡电压通过电容器电压的时间之间的持续时间对模拟电压编码以传输到远程现场。
[0034] 在本发明的另一系列的替代实施例中,到达下游神经元的持续时间未被数字化,而是立即应用于该神经元处的突触装置的交叉开关阵列,导致在下一层神经元上集成到一系列电容器上,下一层神经元甚至更远离这个下游神经元的下游。其中输入持续时间信息被数字化并且直接应用于下游突触阵列的实施例也是可能的。
[0035] 在又一个实施例中,本发明提供了一种在人工神经网络(ANN)中实现的系统,ANN包括按层排列的多个神经元,所述系统包括:(a)下游神经元层中的第一电路,下游神经元层的输入连接到上游神经元层的输出,第一电路包括数字计数器和多个触发器;(b)上游神经元层中的第二电路,第二电路包括:(i)第三电路,用于产生用于使电容器放电的启动信号,该电容器具有代表上游神经元层的输出的初始值;(ii)第四电路,用于将产生的启动信号共享到数字计数器的输入端,其中,计数器在接收到启动信号时,使用下游神经元层的本地时钟从零开始向上计数;(iii)第五电路,用于监视电容器的输出模拟电压,并且当在监视的输出模拟电压中检测到电压过渡时,(iv)第六电路,用于将电压过渡信号传输到下游神经元层中的第一电路中的多个触发器,其中下游神经元层在接收到电压过渡信号时锁存计数器的当前值,锁存的当前值等于表示上游神经元层的输出的初始值,并且其中输出值在上游神经元层和下游神经元层之间通信,而没有上游神经元层和下游神经元层之间的时钟的全局同步。
[0036] 在另一个实施例中,本发明提供了一种在人工神经网络(ANN)中实现的方法,ANN包括以层排列的多个神经元,所述层包括至少一个上游神经元层和至少一个下游神经元层,至少一个上游神经元层的输出连接到至少一个下游神经元层的输入,所述方法包括:(a)基于在上游神经元层中产生的启动信号开始斜坡上升阈值电压以与上游神经元层中的电容器相关联的输出模拟电压比较,其中与电容器相关联的电压的初始值表示上游神经元层的输出;(b)将(a)中的启动信号共享到位于下游神经元层的数字计数器的输入,其中计数器在接收到启动信号时,使用下游神经元层本地的时钟开始计数;(c)监测(a)中的斜坡阈值电压并检测斜坡阈值电压通过上游神经元层中电容器的输出模拟电压的过渡;以及(d)将电压过渡信号传输到下游神经元层,以及其中下游神经元层在接收到电压过渡信号时锁存计数器的当前值,锁存的当前值等于表示上游神经元层的输出的初始值,并且其中输出值在上游神经元层和下游神经元层之间通信,而没有上游神经元层和下游神经元层之间的时钟的全局同步。
[0037] 应理解,所公开的过程中的步骤的任何特定顺序或层次是示例方法的说明。基于设计偏好,应当理解,可以重新排列过程中的步骤的特定顺序或层次,或者执行所有示出的步骤。一些步骤可以同时进行。例如,在某些情况下,多任务处理和并行处理可能是有利的。
[0038] 以上描述的本发明的各种实施方案仅以说明的方式提供,且不应解释为限制本发明的范围。本领域技术人员将容易地认识到可以对本文描述的原理进行各种修改和改变,而不遵循这里示出和描述的示例实施例和应用,并且不脱离本发明的范围。
[0039] 结论
[0040] 在本发明的上述实施例中已经示出了一种系统和方法,用于有效地实现在硬件人工神经网络中用于神经元值的无同步传送的系统、方法和制品。虽然已经示出和描述了本发明的各种优选实施例,但是应该理解,并不意图通过这样的公开来限制本发明,而是旨在覆盖落入本发明范围内的所有修改,如在所附权利要求中所定义的。例如,本发明不应受软件/程序,计算环境或特定计算硬件的限制。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈