发明内容
针对现有技术中存在的技术问题,本申请提出了一种神经网络,包括多个神经元电路,以及多个电子突触电路,其中所述电子突触电路中的至少一个配置为从一个突触前神经元电路接收输入和控制信号,并接收一个突触后神经元电路的反馈信号;其中,所述电子突触电路至少包括开关单元,耦合到所述突触前神经元电路和所述突触后神经元电路,配置为在来自于突触前神经元电路的控制信号的影响下控制所述电子突触电路与所述突触后神经元电路的连接状态;输入单元,耦合到所述突触前神经元电路和所述突触后神经元电路,配置为在来自于所述突触后神经元电路的第一和第二反馈信号的控制下接收来自所述突触前神经元电路的输入信号;权值计算单元,耦合在所述开关单元和地之间,并与所述输入单元耦合,所述权值计算单元至少包括铁电晶体管,所述铁电晶体管配置为从所述输入单元接收所述输入信号和所述第二反馈信号,以更新所述铁电晶体管的沟道电阻。
特别的,所述突触后神经元电路包括比较器,其正输入端耦合到所述电子突触电路的开关单元,所述比较器的负输入端配置为接收预设恒定信号,所述比较器的输出端耦合到所述电子突触电路的输入单元;电阻,其耦合在所述比较器的正输入端和电源之间;电容,其耦合在所述比较器的正输入端和地之间;当所述开关单元将所述突触后神经元电路与所述电子突触电路相连,且所述铁电晶体管导通,所述比较器的正输入端电压下降,当该电压下降到低于所述预设恒定信号时,所述比较器配置为输出所述第一和第二反馈信号。
特别的,所述开关单元包括第一晶体管,其控制极配置为接收所述控制信号,其第一极耦合到所述比较器的正输入端,其第二极耦合到所述铁电晶体管的第一极。
特别的,所述输入单元包括第二晶体管,其控制极配置为接收所述第一反馈信号,其第一极配置为接收所述输入信号,其第二极耦合到所述铁电晶体管的控制极;第三晶体管,其具有与所述第二晶体管互补的类型,其控制极配置为接收所述第一反馈信号,其第一极接地,第二极耦合到所述铁电晶体管的控制极;第四晶体管,其具有与第二晶体管相同的类型,其控制极配置为接收所述控制信号,其第一极耦合到所述铁电晶体管的第二极,其第二极配置为接收所述第二反馈信号。
特别的,所述铁电晶体管的控制极配置为接收所述输入信号,所述铁电晶体管的第二极配置为接收所述第二反馈信号;所述控制信号和所述输入信号周期相同,所述输入信号的有效电平在所述有效电平脉冲时间的前一半由第一预设幅值逐渐降低,所述输入信号的有效电平在所述有效电平脉冲时间的后一半由第二预设幅值逐渐降低,其中所述第二预设幅值大于所述第一预设幅值。
特别的,所述第一反馈信号的有效电平幅值大于所述第二预设幅值。
特别的,所述第二反馈信号的有效电平幅值大于所述第一预设幅值,小于所述第二预设幅值。
本申请提出了一种电子突触电路,配置为从一个突触前神经元电路接收输入和控制信号,并接收一个突触后神经元电路的反馈信号;其中,所述电子突触电路至少包括开关单元,耦合到所述突触前神经元电路和所述突触后神经元电路,配置为在来自于突触前神经元电路的控制信号的影响下控制所述电子突触电路与所述突触后神经元电路的连接状态;输入单元,耦合到所述突触前神经元电路和所述突触后神经元电路,配置为在来自于所述突触后神经元电路的第一和第二反馈信号的控制下将接收来自所述突触前神经元电路的输入信号;权值计算单元,耦合在所述开关单元和地之间,并与所述输入单元耦合,所述权值计算单元至少包括铁电晶体管,所述铁电晶体管配置为从所述输入单元接收所述输入信号和所述第二反馈信号,以更新所述铁电晶体管的沟道电阻。
特别的,所述电子突触电路的开关单元包括第一晶体管,其控制极配置为接收所述控制信号,其第一极耦合到所述突触后神经元的输入端,其第二极耦合到所述铁电晶体管的第一极。
特别的,所述电子突触电路的输入单元包括第二晶体管,其控制极配置为接收所述第一反馈信号,其第一极配置为接收所述输入信号,其第二极耦合到所述铁电晶体管的控制极;第三晶体管,其具有与第二晶体管互补的类型,其控制极配置为接收所述第一反馈信号,其第一极接地,第二极耦合到所述铁电晶体管的控制极;第四晶体管,其具有与第二晶体管相同的类型,其控制极配置为接收所述控制信号,其第一极耦合到所述铁电晶体管的第二极,其第二极配置为接收所述第二反馈信号。
特别的,如前述的电子突触电路中所述铁电晶体管的控制极配置为接收所述输入信号,所述铁电晶体管的第二极配置为接收所述第二反馈信号;所述控制信号和所述第二输入信号周期相同;所述输入信号的有效电平在所述有效电平脉冲时间的前一半由第一预设幅值逐渐降低,所述第一输入信号的有效电平在所述有效电平脉冲时间的后一半由第二预设幅值逐渐降低,其中所述第二预设幅值大于所述第一预设幅值。
特别的,如前述的电子突触电路中所述第一反馈信号的有效电平幅值大于所述第二预设幅值。
特别的,如前述的电子突触电路中所述第二反馈信号的有效电平幅值大于所述第一预设幅值,小于所述第二预设幅值。
本申请还提出了一种电子系统,包括如前述的神经网络。
本申请还提出了一种电子设备,包括如前述的神经网络。
采用本申请的方案,一方面由于本方案从电路的物理结构出发对神经元进行模拟,可以获得低功耗、高计算性能的优势;一方面使用STDP机制对神经元形态电路的信号传输进行优化,可以进一步缩短电路处理耗费时间。在电路设计上使用铁电晶体管可以通过其非易失特性等特点再一次降低电路的功耗,提升处理速度。本申请所提供的电子突触电路所使用的晶体管数量更少,应用到神经网络中可以大规模的降低芯片面积。本方案提出的新型神经网络结构也对推动神经形态电路的发展具有积极的意义。
具体实施方式
在以下实施例的具体描述中,将参考构成本申请一部分的所附的附图。所附的附图通过示例的方式示出了能够实现本申请的特定的实施例。示例的实施例并不旨在穷尽根据本申请的所有实施例。可以理解,在不偏离本申请的范围的前提下,可以利用其他实施例,也可以进行结构性或者逻辑性的修改。因此,以下的具体描述并非限制性的,且本申请的范围由所附的权利要求所限定。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。对于附图中的各单元之间的连线,仅仅是为了便于说明,其表示至少连线两端的单元是相互通信的,并非旨在限制未连线的单元之间无法通信。另外,两个单元之间线条的数目旨在表示该两个单元之间通信至少所涉及的信号数或至少具备的输出端,并非用来限定该两个单元之间只能如图中所示的信号来进行通信。
在以下的详细描述中,可以参看作为本申请一部分用来说明本申请的特定实施例的各个说明书附图。在附图中,相似的附图标记在不同图式中描述大体上类似的组件。本申请的各个特定实施例在以下进行了足够详细的描述,使得具备本领域相关知识和技术的普通技术人员能够实施本申请的技术方案。应当理解,还可以利用其它实施例或者对本申请的实施例进行结构、逻辑或者电性的改变。
晶体管可指任何结构的晶体管,例如场效应晶体管(FET)或者双极型晶体管(BJT)。当晶体管为场效应晶体管时,根据沟道材料不同,可以是氢化非晶硅、金属氧化物、低温多晶硅、有机晶体管等。根据载流子是电子或空穴,可以分为N型晶体管和P型晶体管。其控制极是指场效应晶体管的栅极,第一极可以为场效应晶体管的漏极或源极,对应的第二极可以为场效应晶体管的源极或漏极;当晶体管为双极型晶体管时,其控制极是指双极型晶体管的基极,第一极可以为双极型晶体管的集电极或发射极,对应的第二极可以为双极型晶体管的发射极或集电极。
在以下的详细描述中,有效电平根据电路不同可以是高电平,也可以是低电平。在下列实施例中,为便于理解,将高电平作为有效电平,低电平作为无效电平进行描述。
在以下的详细描述中,为便于理解,将电位为0的电平作为低电平进行描述,在下文中,地电位与低电平的电位是相同的。
传统的计算机架构将设备分成计算单元和存储单元,完成一次计算需调用计算单元对要处理的数据进行计算,之后将计算结果存入存储单元。在面对较大的数据和较为复杂的计算过程时,传统的计算机架构需要将计算过程拆分成多个简单的计算,多次重复上述步骤,在得到最终计算结果之前会产生多个中间值并存入存储单元,计算时再调用这些中间值完成最终结果的计算。
本申请提出的人工神经网络(下简称神经网络),可以有效简化复杂的计算过程,同时可以避免存算分离带来的问题。
图1是根据本申请的一个实施例的神经网络模型示意图。在神经网络中包括多个节点又称神经元,两个神经元之间可以通过电子突触相连接。突触将电信号从电子突触前神经元传递至突触后神经元,传递的路径取决于神经元之间电子突触的权值。权值越高代表两个神经元之间的连接更加紧密。
如图1所示,根据本申请的一个实施例,神经网络中的神经元可以与多个神经元相连接,两个神经元之间通过电子突触连接并传递信号。需要完成的计算可以被转化为在神经网络中的多次循环计算,单次的计算过程可以被转化为在神经网络中从用户设置的初始神经元开始传递信号,途径多个神经元和电子突触,最终传输至用户设置的目标神经元的过程。神经网络基于预设的学习机制自行调整神经元之间的权值,从而实现不同问题的计算过程。
各电子突触可以至少从一个神经元接收信号(相对于该突触称为突触前神经元),和/或可以至少向一个神经元发送信号(相对于该突触称为突触后神经元)。
图2所示为一种电子突触的STDP学习机制特性曲线示意图。其中,横轴的时间Δt代表突触后神经元发射信号的时刻与突触前神经元发射信号时刻之间的时间差,纵轴的ΔW代表电子突触的权值变化率。由图2可知,针对这种电子突触,当Δt为正的时候,电子突触的权值变化率会随着Δt的增大而减小。
为了制备具有如上的STDP学习机制特性曲线的电子突触,本申请提供了一种电子突触电路。特别的,这种电子突触电路中包括铁电晶体管(FeFET)。
随着半导体器件技术的发展,一些具有电阻可调节以及非易失特性的新型器件被提出,包括阻变存储器、相变存储器、铁电晶体管(FeFET)等。其中,FeFET具有低功耗和高运行速度等优点,因此受到了科研界和产业界的广泛关注。
FeFET是一种在传统的MOSFET的栅极和栅氧化层之间加入了一层铁电材料的新型晶体管,通过改变施加在FeFET栅极上电压的幅值和持续时间可以调制在栅氧化层上感应出的电荷量的大小,从而可以改变FeFET的阈值电压及沟道电阻。当向FeFET的栅源施加了特定的电压,铁电材料的晶体结构中形成的电偶极子会与电场方向保持一致,即便撤掉其栅极电压,其上述导通特性并不会发生改变,即便在去除电场后,铁电材料的晶体结构中形成的电偶极子将保持这种极化状态,从而使FeFET的阈值电压和沟道电阻保持不变,直至其栅源电压发生改变从而再次对其阈值电压及沟道电阻进行设定。
图3A所示为根据本申请的一个实施例的电子突触电路和部分突触后神经元电路示意图。图3B所示为图3A所示的电路的工作时序图。
如图3A所示,电子突触电路20与其突触后神经元电路30耦合,同时电子突触电路20也与突触前神经元电路(未示出)耦合。根据一个实施例,突触前神经元电路可以具有与突触后神经元电路类似的电路结构。
根据一个实施例,每一个神经元电路在发射信号的时候可以至少发射四个信号,包括IP_1和CL_1,这两个信号可以通过在后突触提供给后方神经元电路作为输入信号和控制信号;这四个信号还包括FB_1和FB_2,可以被提供给在前突触作为反馈信号,该在前突触连接在该神经元电路和前方的神经元电路之间。这里所谓的“前”或者“后”都是相对于在用户输入的信号传输路径中,相对来说更靠近最起始的神经元电路的就成为“前”,相对来说更远离最起始的神经元电路的就成为“后”。
针对一个特定的电子突触电路来说,CL_1为突触前神经元电路提供的控制信号,决定了电子突触电路与突触后神经元电路的连接状态。IP_1为突触前神经元电路提供的输入信号,决定了电子突触电路权值的更新值。反馈信号FB_1和FB_2由突触后神经元电路提供,决定了将电子突触电路的当前权值修改为更新值的时机,FB_2的幅值还决定了电子突触电路权值的更新值。
根据一个实施例,如图3A所示,电子突触电路20可以至少包括开关单元201、输入单元202和权值计算单元203。
根据一个实施例,开关单元201可以至少包括例如NMOS晶体管M21,其栅极可以配置为接收来自于突触前神经元电路的控制信号CL_1。如图3B所示,CL_1包括多个高电平长脉冲,当CL_1为高电平时,电子突触电路20被启动工作,与突触后神经元电路30的电连接导通。
根据一个实施例,输入单元202可以至少包括例如NMOS晶体管M23和M25,以及PMOS晶体管M24。
根据一个实施例,M23的漏极可以配置为接收来自一个突触前神经元电路的输入信号IP_1,源极可以耦合到权值计算单元203,栅极可以配置为接收来自于突触后神经元电路的反馈信号FB_1。
根据一个实施例,M24的源极可以耦合到M23的源极以及权值计算单元203,其漏极可以接地,其栅极可以配置为接收来自于突触后神经元电路的反馈信号FB_1。
根据一个实施例,M25的源极可以配置为接收来自突触后神经元电路的反馈信号FB_2,漏极可以耦合到权值计算单元203,栅极可以配置为接收来自于突触前神经元电路的控制信号CL_1。
根据一个实施例,权值计算单元203可以至少包括FeFET晶体管M22。根据一个实施例,M22的栅极可以耦合到M23的源极以及M24的源极,M22的源极可以耦合到M25的漏极,M22的漏极可以耦合到M21的源极。
如图3A所示,神经元电路例如突触后神经元电路30可以至少包括,比较器301、电阻302以及电容303。比较器301正输入端可以与电子突触电路20耦合(例如可以与晶体管M21的漏极耦合),同时还通过电阻302耦合到电源。比较器301的负输入端配置为接收预设参考电压Vth。一旦比较器301正输入端电压Vout低于负输入端电压Vth,则该神经元会输出输出信号Y(其中包括FB_1和FB_2,以及提供给其后方神经元的CL_1’和IP_1’)。
根据本申请的一个实施例,突触后神经元电路30还可以包括信号处理单元304,配置为对输出信号Y进行处理输出反馈信号FB_1和FB_2,确保输出的反馈信号FB_2与FB_1同时发出,有效电平持续时间相同,并使FB_1的幅值小于FB_2的幅值,且FB_2的高电平幅值控制在符合电路设计需要的范围内。
根据本申请的一个实施例,对M21、M22、M23、M24、M25的栅长、掺杂浓度和栅绝缘层厚度等器件参数不做限制,可由实际需要进行调整。
根据一个实施例,如图3B所示,当Vout高于Vth时,突触后神经元电路不会输出信号Y,因此FB_1和FB_2也是低电平。在这种情况下,输入单元202中的晶体管M23断开,晶体管M24导通,若CL_1为高电平,则M25导通,M25的漏极接收FB_2的低电平,相当于FeFET晶体管M22的栅极和源极都被接地。在这种情况下,FeFET晶体管M22的阈值电压和沟道电阻不变。根据一个实施例,M22可以在栅源电压为0时仍然导通。
当CL_1的高电平来临时,电容303中的电荷会通过电子突触电路中M22所在的通路泄放。当Vout降低到低于Vth的水平,则突触后神经元电路30发射信号Y,FB_1和FB_2跳转到高电平。
根据一个实施例,一个神经元电路会有多个在前电子突触电路与其耦合。当这些电子突触电路中的任何一个首先能够使Vout降低到低于Vth的水平,该神经元电路都会发射信号Y,并且所有与其耦合的在前电子突触电路都会收到FB_1和FB_2的高电平。
但如果经过CL_1的一次高电平脉冲期间的泄放,Vout无法降低到低于Vth的水平,并且其他的在前电子突触电路也没有实现这个目标,则在CL_1高电平过后电源会继续给电容303充电,并且在下一次CL_1高电平来临的时候再次对电容303中的电荷进行泄放。经过数次的泄放或者积分,就可能达到Vout降低到低于Vth的水平的目标。
在CL_1为高电平期间,M21和M25导通。当FB_1和FB_2高电平来临时,M24断开,M23导通,M23将IP_1提供到M22的栅极,M25将FB_2提供到M22的源极,从而对M22的阈值电压和沟道电阻进行改变,更新该电子突触电路的权值。当然,如上所述,FB_1和FB_2高电平的到来可能是该电子突触电路自己引发的,也可能是其他与该神经元电路30耦合的电子突触电路引发的。但是无论是哪个电子突触电路引发,神经元电路30都会发射FB_1和FB_2,从而所有的与其耦合的在前电子突触电路的权值都会发生改变。
根据本申请的实施例,由于每个电子突触电路接收到由突触前神经元提供的输入信号IP_1的时间可能有所不同,每个电子突触电路中的M22的阈值电压和沟道电阻改变值不同,每个电子突触电路改变后的权值也可能不同,或者说FeFET晶体管的阈值电压和沟道电阻被设置的值可能有所不同。但是无论是哪个电子突触电路引发,神经元电路30都会发射FB_1和FB_2,从而所有的与其耦合的在前电子突触电路的权值都可能发生改变。
当控制信号CL_1高电平持续或者再次来临时,权值更新后的电子突触电路20将以更新后的沟道电阻对电容303中的电荷进行泄放。
为了实现图2所示的电子突触属性,根据一个实施例,针对图3A所示的电路,如图3B所示,在每个时钟周期内,CL_1的高电平Vhh持续时间段与IP_1的高电平的脉冲时间段完全重合,或者说CL_1与IP_1周期相同。根据一个实施例,CL_1和IP_1的高电平最大值可以不同。根据不同的实施例,CL_1的高电平最大值可以大于IP_1的高电平最大值,也可以小于或等于IP_1的高电平最大值。
根据一个实施例,在高电平脉冲时间段的前一半时间内,IP_1高电平的幅值由第一预设幅值V1随时间逐渐降低,其斜率可以确保电子突触具有与图2中第三象限中突触的特性曲线基本相同的特性曲线;在IP_1高电平脉冲时间段内的后一半时间内,IP_1高电平脉冲的幅值先从低电平跳变为第二预设幅值V2并随时间逐渐降低,其斜率可以确保电子突触具有与图2中第一象限中突触的特性曲线基本相同的特性曲线。根据一个实施例V1小于V2。
根据不同的实施例,本文中的前一半时间和后一半时间可以是相同或者不相同的时间段。
根据一个实施例,为了满足M23和M25的导通规则,FB_1高电平脉冲幅值即Vhh应大于IP_1的高电平脉冲的幅值的最大值即第二预设幅值V2,以便M23可以导通;FB_2高电平脉冲幅值即V3应大于IP_1的第一预设幅值V1,且小于IP_1在高电平脉冲时间段的后一半中的最小值,以确保实现与图2所示突触属性曲线基本相同的电子突触属性。
图4所示为根据本申请的一个实施例的电子突触电路的归一化后的电导随时间变化的变化曲线。如图4所示,横轴的Δt为突触后神经元发射信号Y的时刻与预设的时刻(预设的时刻即IP_1高电平脉冲时间段中两个前后两段之间衔接的时刻,或IP_1高电平脉冲时间段中前后两个脉冲切换的时刻)之间的时间差(也可以相对其他的时刻计算Δt,但是产生的变化曲线与图4就会有差别,无法实现图2所示特性曲线的机制)。纵轴的ΔW/W表示电子突触电路中M22的电导率变化百分比。为使曲线更加直观,对电导率的变化曲线针对Δt进行归一化处理。
如果FB_1和FB_2的高电平落在IP_1的高电平脉冲时间段的后一半中,则Δt为正,在这个阶段IP_1为正且由第二预设幅值V2逐渐降低,M22的电导率(以及对应的电子突触的权值变化率)会随着Δt的增大而变小(电子突触的权值变化率与M22的电导率呈正相关)。如果FB_1和FB_2的高电平落在IP_1的高电平脉冲时间段的前一半中,则Δt为负,在这个阶段IP_1为正且由第一预设幅值V1逐渐降低,M22的电导率以及对应的电子突触的权值变化率会随着Δt的增加而变小。M22的电导变化幅度大小受到IP_1的高电平最大幅值的影响。
当然,根据不同的电子突触的STDP机制曲线,也可以采用不同的输入和控制信号。
本申请的方案中利用FeFET的记忆特性和非易失特性,将其应用到电子突触中,通过调整施加在FeFET栅极的电压值来设置FeFET的阈值电压和沟道电阻,从而设定突触的特定的权值,可以在一定程度上简化电路设计的同时实现多个元件的功能。同时由于其低功耗和高运行速度的优点,可以进一步降低电路及设备的功耗,提升运行效率。将其运用在神经形态计算的网络设计中,可以实现低功耗、高计算性能的神经形态计算。
在计算和优化过程中,电路无需将计算的权值和其他输入信号的中间值进行存储,也无需在下一次计算前再次调用中间值,减少了线路的使用次数,提高了计算速度,降低了电路功耗。
本申请所提供的电子突触电路所使用的晶体管数量更少,应用到神经网络中可以大规模的降低芯片面积。
上述实施例仅供说明本申请之用,而并非是对本申请的限制,有关技术领域的普通技术人员,在不脱离本申请范围的情况下,还可以做出各种变化和变型,因此,所有等同的技术方案也应属于本申请公开的范畴。