目前,在人工智能领域,信息技术正在开发基于非脉冲神经元和脉冲神经元的相关人工神经网络及其硬件实现[[1], [2], [3], [4], [5]]。脉冲神经网络实现了类似生物学的自学习机制,而这种机制在传统的点神经元网络中较难实现[6]。与点神经元网络相比,脉冲神经网络在准确性和计算能力上更具优势,并且由于其“积分-放电”工作原理,更适合硬件实现[7]。
为了使硬件脉冲神经网络正常运行,需要使用编码设备将输入信息转换为脉冲表示;随后需要使用解码设备将神经网络处理后的结果从脉冲表示转换回二进制数字代码,以便与标准数字电子设备兼容。
大多数已知的编码设备[[8], [9], [10], [11], [12], [13], [14], [15], [16], [17], [18], [19]]均基于漏电积分-放电(LIF)神经元电路。LIF神经元通过积分RC电路和阈值元件(通常是CMOS反相器)来工作,RC电路电容上的电压与输入电流的时间积分成正比。当电压超过阈值时,电容放电并产生输出脉冲。脉冲频率取决于电容的充电速率,而充电速率又与输入电流成正比。因此,LIF神经元电路能够将输入的模拟信号值编码为脉冲频率(FR)。此外,LIF神经元还可以将输入值编码为首次脉冲的时间(TTFS)。在某些研究中,输入值还被编码为脉冲间隔(ISI)。在所有这些研究中,输出脉冲频率和首次脉冲时间与LIF神经元输入电流的依赖关系通常是单调的且线性的。最高效的LIF神经元实现是基于CMOS技术的集成电路。LIF神经元电路中的晶体管工作在模拟模式下,导致功耗较高;使用电容会显著增加芯片面积,且输出频率范围和脉冲宽度在制造过程中固定,后期无法调整。仅通过调节电容的漏电流可实现小幅频率调整。
与LIF神经元相比,使用忆阻器的编码设备在元件数量上更为高效。这类设备的实现基于由忆阻器和RC电路组成的振荡器[[20], [21], [22]]。然而,在这些电路中,忆阻器在每次产生脉冲时都会切换,导致其性能迅速下降。也有使用忆阻器-二极管阵列的编码设备实现[[23,24]],但这些设备的延迟电路仍存在与LIF神经元相同的问题。
已知的将脉冲解码为数字代码的输出设备采用多种方法。在某些研究中,解码过程由基于LIF神经元的经过训练的神经网络完成;该方法需要长时间记录脉冲事件,因此无法实时进行。
另一种方法是直接使用LIF神经元作为解码器,从生物神经元的电信号记录中提取脉冲事件并将其转换为数字[18,19,27]。使用LIF神经元的主要缺点已在编码设备的讨论中提及。
构建输出解码器的另一种方法是同时使用单个忆阻器和忆阻器阵列[28,27]。这类方案的主要缺点是忆阻器频繁切换,导致其性能迅速下降。虽然电路[24]可以实现单个神经元的TTFS解码,但其解码效果受脉冲起始时间选择的影响较大。对于典型的生物神经网络群体,使用该电路会导致编码冗余,从而影响解码效果。
相关研究的总结见表1。
在编码和解码设备中使用忆阻器交叉开关阵列更为合适,因为它们能提高能效和元件集成度,并允许重新配置输入信息到脉冲的转换功能。
除了忆阻器阵列外,编码和解码设备还需包含额外的控制电路,用于信号的输入/输出以及选定忆阻器状态的读写。这些控制电路在编码和解码操作中起着关键作用,同时也能实现忆阻器状态的调整与评估。
本文的目标是开发完整的可编程编码和解码电路,包括忆阻器-二极管交叉开关及用于信息输入/输出和忆阻器状态控制的外围控制电路。解码设备将从神经元群体中获取的信息解码出来。这些电路的基础可以是基于忆阻器-二极管阵列和所需控制外围电路的可编程逻辑矩阵[30]。