物联网是指利用互联网和传统电信网络等信息载体,来实现诸多设备之间互联互通的网络。作为信息科技产业的第三次革命,物联网已经给我们的日常生活带来了翻天覆地的变化,各种各样的物联网嵌入式边缘设备在生产生活中已经随处可见[1]。传统的设备供能大多采用电池,通过消耗电池中的电能来支撑节点设备的运行。然而这种供能方式对于物联网边缘设备来说却存在很多隐患与不便,例如过大的电池体积无法在一些占用空间较小的边缘设备中安置;另外由于电池中的电能消耗殆尽之后必须更换,这在一些不能轻易拆卸的设备中也无法起到稳定循环的供能作用。因此,近年来自供能系统被广泛地应用于物联网边缘设备的能量供给,它能够采集周围环境中的能量来为系统提供能量[2-3],并且不需要进行充电、更换和维护。然而这种自供能系统所采集的能量受环境条件影响较大,在环境能量波动较大时系统采集能量也极不稳定[4],这在一定程度上也给边缘设备的供能引入了新的问题。
自供能系统的能量采集架构主可分为收集-使用和收集-存储-使用[3]。收集-使用架构中系统的采集功率直接提供给负载,结构较为简单。而收集-存储-使用架构中在储能电容和负载之间存在DC-DC转换器,结构相对复杂。储能电容的工作电压会影响DC-DC的转换效率,进而影响负载的供能,负载功耗则又决定了下个周期内的储能电容工作电压。因此对于收集-存储-使用架构,如何来平衡负载和供能之间的复杂关系,寻找最优的转换效率以使系统达到最优工作状态则是该架构的研究重点。
由于自供能系统中收集-存储-使用能量采集架构的DC-DC转换器转换效率直接影响着整个系统的性能和能效,因此,本文采用线性拟合的方法,离线拟合出每种升压比的转换效率,然后根据拟合的数据计算出每种升压比对应最佳转换效率的电压区间来指导开关电容切换升压比。从而提出了一种自供能存算一体系统中动态可配置的DC-DC转换器,并分析了储能电容放电电压和负载与DC-DC转换效率之间的量化关系。针对基于RRAM的卷积神经网络加速器作为负载和储能电容放电电压为0.255~0.480 V之间的实验场景进行了实验分析。本文对自供能系统中DC-DC转换效率的量化分析,可为负载端的任务优化策略提供理论依据。
随着科学技术的不断进步,物联网正在成为现代信息产业的主要驱动力量,各种各样的物联网设备也在生产、生活、学习中随处可见。根据相关产业发布的统计数据显示,近年来中国的物联网设备数量不断增长,到2020年中国物联网链接数量将会达到40亿[5]。很多物联网边缘设备或者嵌入式设备由于其工作场景的特殊性,如果采用电池供电的方式会极大地限制设备的性能。因此对于这类物联网边缘设备,研究者们提出利用自供能系统来给设备供能的方案。即通过将环境中的能量,如太阳能、热能、风能等转化为电能供给设备运行[6],这样有效地解决了电池体积过大、需要频繁充电和使用寿命较短等问题。图1为4种环境能量的采样踪迹,可见采集的能量存在较大的波动,具有间歇性和不稳定性的特征,这也会对系统的正常运行带来挑战。
图1 4种环境能量的采样踪迹
Figure 1 Power traces of four environmental energy sources
图2为自供能采集系统的架构,主要由能量采集模块、能量转换模块和传感器节点模块构成。能量采集模块负责采集环境能量,能量转换模块负责将环境能量转换为电能,传感器节点模块通过消耗转换的能量使整个系统运行。但是由于采用自供能系统的边缘设备工作环境变化,周围的环境能量也可能会存在较为明显的变化。当环境能量较为充裕时,系统所采集的能量能够维持设备的正常运行;但当环境能量较低甚至不足以达到支持设备运行的最低要求时,系统就需要备份相关数据和状态,并等待供能恢复。
图2 自供能系统架构
Figure 2 Energy harvesting system architecture
能量采集是指将能量从一种形式转换成电能。在物联网系统中,边缘设备可利用能量采集系统从外部获取能量来为节点供电,从而延长设备寿命和提升性能。能量采集架构可决定系统的工作方式。
如图3所示,能量采集架构[3]主要分为2类:收集-使用、收集-存储-使用。在第1种架构中,能源即时获取以供使用。如图3(a)所示,在这种架构下能量采集系统直接为传感器节点供电。因此要使该节点稳定运行,采集系统的功率输出必须高于最小工作点,如果没有足够的能量,那么这个节点将无法正常工作。
图3 2种能量采集架构
Figure 3 Energy harvesting architectures
在收集-存储-使用架构中,能源是获取并存储在电容器中供将来使用。图3(b)中的能量采集架构由一个存储组件构成,存储组件将采集的能量存储起来为传感器节点供电。当采集的能量超过当前使用量时,系统会将能量存储起来,在系统无法采集能量或者采集的能量不足时使用存储的能量为系统供能。
典型的收集-存储-使用架构一般由多个部分组成,如图4所示,该架构包括能量采集(EH)模块、带有最大功率点跟踪的功率升压器(MPPT助推器)、储能电容、DC-DC转换器和传感器节点。前2个组件可经过精心设计和优化,尽量从环境中获取最多的能量,并对储能电容进行充电。但即使是给定EH和MPPT模块的固定设计,储能电容、DC-DC转换器和传感器节点之间的相互作用和影响仍十分复杂。
图4 收集-存储-使用架构
Figure 4 Harvest-store-use architecture
随着人工智能的快速发展,学者们利用卷积神经网络在目标检测[7]和图像融合[8]领域取得了较大的进展。卷积神经网络中数据的计算主要是以卷积操作为主,而卷积操作以乘加运算为基本特征,研究表明,乘加操作占到了整个运算的90%以上[9]。在传统的冯诺依曼架构中,CPU与存储器会进行频繁的数据交换,由于CPU处理速度与存储器访问速度差距较大造成了存储墙问题,因此冯诺依曼架构不适用于神经网络运算。在诸多新型存储器件中,RRAM具有低功耗、不易失、速度快等优越特性,因此RRAM是实现存内运算的理想器件。
Shafiee等[10]提出了一个基于RRAM交叉阵列适用于卷积神经网络的矩阵向量乘法器。如图5所示,在RRAM交叉阵列电路中,RRAM节点流过的电流是通过节点的电压和电导的乘积,即I=I1+I2=V1×G1+V2×G2,该操作与卷积神经网络的乘加操作类似,非常适合模拟乘加操作。
图5 基于忆阻器交叉阵列的矩阵向量乘法器
Figure 5 Matrix vector multiplier based on RRAM crossbar
针对自供能系统中供能不稳定的特征,Qiu等[11]提出了一种基于RRAM交叉阵列的弹性智能加速器:ResiRCA。ResiRCA通过对RRAM交叉阵列负载进行切分和并行调度等方式来进行计算操作,从而实现系统在不同能级的高效运行。
如图6所示,不采取分级策略优化的情况下,如果系统的输入端功耗小于整个RRAM交叉阵列的满激活功耗时,系统处于无法工作状态;而如果此时采用分级优化策略让RRAM交叉阵列以部分激活的方式运行,即将RRAM交叉阵列分块为m×n大小(图6(b)激活大小为4×2),其中m代表激活的行,n代表激活的列。为了实现更灵活的计算,引入了RRAM副本d,以支持并行运算,根据输入功率大小,RRAM激活因子可表示为m×n×d,因此可以灵活调节负载功耗,使系统在供能波动的环境下运行。
图6 RRAM乘加操作的计算分解
Figure 6 Computational decomposition of RRAM multiplication and addition operation
Ma等[12]在基于动态机器学习的非易失性处理器微体系结构与能量分布匹配研究中提出了一种动态匹配体系结构。如图7所示,将负载的运行架构根据需求能量的不同分为了无序、无流水线和N级流水线,通过三者的动态微体系结构来适应不同的供能场景。由此可见,自供能系统的能量架构对负载的可配置性需求相较于传统固定负载更加严苛。
图7 能量预测
Figure 7 Energy prediction
由于DC-DC转换器的效率对整个自供能系统的能效有着至关重要的影响,所以学者们针对DC-DC转换器作了大量的研究,提出了可配置的DC-DC转换器设计,并且可配置DC-DC转换器的电路实现已比较成熟。例如,考虑1种1∶2的DC-DC转换器,1种2∶3的DC-DC转换器,和一种1∶2和2∶3混合升压比的DC-DC转换器,在电容的放电电压为0.305~0.480 V、DC-DC转换器的输出电压为0.6 V、负载固定的情况下的转换效率。
如图8和表1所示,通过模拟这3种DC-DC转换器得到其转换效率。可以观察到混合升压比的DC-DC转换器支持的输入电压范围最广,并且在0.30~ 0.48 V内平均转换效率约79.8%。而采用单个DC-DC转换器,图8中,2∶3的DC-DC适用区间的平均转换效率为75.01%。但是从整个区间看,在输入电压小于0.4 V时,由于2∶3的DC-DC转换效率会逐渐减小,因此在0.30~0.48 V内平均转换效率只有约36.3%。1∶2的DC-DC转换器输入电压在大于0.415 V时会比混合升压比的DC-DC转换器低20%左右,这种情况下的整体平均转换效率在0.30~ 0.48 V内大约在72.7%左右。相比2∶3的DC-DC转换器和1∶2的转换器,混合升压比的DC-DC转换器平均转换效率分别提升了约7.1%和43.4%。虽然相比2∶3的DC-DC转换效率提升只有7.1%,如果扩大DC-DC转换器的输入电压,从图8中可以看出,采用混合升压比的DC-DC转换效率有着更大的提升,其转换效率达到的峰值也是最高的。所以采用混合升压比的DC-DC转换器不仅可以提供较高的转换效率,还能适应更广的DC-DC输入电压范围。
表1 混合DC-DC与单个DC-DC转换效率
Table 1 Hybrid DC-DC and single DC-DC conversion efficiency
升压比0.300~0.320V0.325~3.400V0.345~3.600V0.360~0.380V0.385~0.400V0.400~0.420V0.420~0.440V0.440~0.460V0.465~0.480V峰值平均值2∶3&1∶20.82790.84890.81210.77320.73420.72320.83500.82410.80090.86300.79771∶20.82790.84890.81210.77320.73420.69580.65920.61470.58070.86300.72742∶300000.16030.64310.83500.82410.80090.84390.3626
图8 混合DC-DC与单个DC-DC的转换效率
Figure 8 Hybrid DC-DC and single DC-DC conversion efficiency
综上可知,混合DC-DC转换器转换效率比单个转换器效率要高,并且能提供更广的DC-DC输入电压范围。基于可配置DC-DC转换器设计的理论基础[11-13],本文设计一种自供能系统,负载为基于RRAM交叉阵列的存内计算加速器,其供电电压为0.6 V。针对该系统,结合3种升压比的DC-DC转换器,设计了一个混合升压比的DC-DC转换器。升压器的升压比分别为2∶3、1∶2、2∶5,混合这3种升压比的转换器可支持更广的输入电压范围。这3种升压比的转换器对应不同输入电压区间时会有不同的转换效率,为了使整个系统的转换效率更高,需要知道每一种升压比的转换效率,将3种升压比混合在一起时,在同一电压下选择最佳的转换效率。在文献[13]的基础上,首先采用曲线拟合的方法,离线拟合出每种升压比的转换效率,然后根据拟合的数据计算出每种升压比对应最佳转换效率的电压区间来指导转换效率的选取。该混合升压比DC-DC转换器可通过调节开关电容来实现[13]。开关电容可根据离线求出的升压比最佳转换效率区间和储能电容的放电电压大小切换到相应的升压比。
以基于RRAM的存内计算加速器作为负载为例,设置了5种不同的负载。同时,把能量划分为5个能级:第1个能级为166.6~277.9 μW;第2个能级为277.9~1 719.2 μW;第3个能级为1 719.2~4 580.1 μW;第4个能级为4 580.1~10 845.8 μW;第5个能级为10 845.8~+∞μW。图9为这5个能级区间的负载下DC-DC转换效率随输入电压的变化情况,红色椭圆标注了不同升压比转换器的转换效率曲线。把3种DC-DC转换器的输入电压区间规定如下:2∶5的DC-DC转换器的为0.255~0.305 V;1∶2的DC-DC转换器为0.305~0.415 V;2∶3的DC-DC转换器为0.415~0.480 V。这使得混合升压比的DC-DC总体转换效率得到较大提升。
图9 5种能级下的3种升压比的DC-DC转换效率
Figure 9 DC-DC conversion efficiency of three step-up ratios under five power levels
Biswas等[13]提出了一种具有3种升压比的可配置的DC-DC转换器,模拟了2∶3、1∶2、2∶5这3种升压比的转换效率,混合后得到了这3种升压比工作效率较高的输入电压区间,分别为:0.255~0.305、0.305~0.415和0.415~0.480 V。以基于RRAM神经网络加速器为负载,该加速器可以动态调节RRAM的激活因子以适应环境能量的不稳定性,其中负载分块的功率为:166.6~10 845.8 μW。
在实验中,对不同网络模型下电容放电电压大小和DC-DC转换效率之间的关系进行探究。
图10展示了FR、HG、LeNet和PV这4种网络模型(表2为4种网络模型的参数),在同一固定负载情况下不同电容放电电压所对应的DC-DC转换效率。FR、HG和LeNet这3种网络模型所选取的固定负载对应的激活因子均为25×1×1,而PV模型下所选取的激活因子为36×1×1。储能电容放电电压为0.255~0.480 V。
表2 卷积神经网络负载参数
Table 2 Parameters of CNN workloads
卷积神经网络卷积层卷积核RRAM规格RRAM激活功率/μW输入FR输入层Conv1Conv2—4@5×5×116@4×4×4—25×464×16— 377.41433.61@32×324@28×2816@10×10HG输入层Conv1Conv2—6@5×5×112@4×4×6—25×696×12— 539.71176.01@28×286@24×2412@8×8LeNet输入层Conv1Conv2—6@5×5×116@5×5×6—25×6150×16— 539.71614.21@32×324@28×2816@10×10PV输入层Conv1Conv2Conv3Conv4Conv5—8@6×6×112@3×3×816@3×3×1210@3×3×166@3×3×10—36×872×12108×16144×1090×6— 752.21125.61526.01114.0676.21@50×508@45×4512@20×2016@8×810@6×66@4×4
图10 不同储能电容放电电压的DC-DC转换效率
Figure 10 DC-DC conversion efficiency vs.different capacitor discharge voltages
观察在3种不同升压比的DC-DC转换器的各自输入电压范围内的折线图,如图10所示,可以得到如下结论:①转换效率明显根据3种不同的升压比划分成了3部分,每个部分都有各自对应的转换效率变化区间。②在固定升压比DC-DC转换器的输入电压范围中,转换效率总是存在最大值。③最大转换效率与输入电压的大小没有明确的线性关系,但最大转换效率值出现在电压较小的情况下偏多。④少数情况下转换效率会随着输入电压的增大而提升,而大多数区间内会出现负增长的情况,这种情况多出现在转换效率峰值之后的区间。
在实验中采用了RRAM部分激活策略对系统进行分级优化处理,这样系统的负载功耗也会随着分级策略的不同而产生变化。由于DC-DC的转换效率会受到负载的影响,在这部分对不同网络模型下负载大小和DC-DC转换效率之间的关系进行探究。如图11所示,可以得到如下结论:①同一种储能电容放电电压下,所有负载中可能存在一个转换效率峰值,也可能存在多个峰值,即存在多个负载对应转换效率相同的情况。②除PV之外的3种网络模型中,转换效率的整体变化趋势是随着负载增大而增大,3种网络模型在中间部分都出现了下降,而PV网络模型的转换效率相对其他网络模型来说波动较大。
图11 4种网络模型下的DC-DC转换效率
Figure 11 DC-DC conversion efficiency vs.different CNN workloads
由于储能电容的放电电压和负载共同影响着DC-DC的转换效率,模拟了采用LeNet网络模型在不同能级下的RRAM激活因子和放电电压在0.255~0.480 V之间的转换效率,图12所示为3种混合升压比的DC-DC转换器在不同输入电压和不同负载下的DC-DC转换效率。
图12 不同负载下随电压变化的混合DC-DC转换效率
Figure 12 Hybrid DC-DC conversion efficiency with voltage variation under different loads
从图12可以看出,混合升压比DC-DC转换器的转换效率都保持在60%以上,由于这种转换器会选择每个升压比工作最佳的输入电压区间使转换效率最高,因此图12中转换效率会呈现出在每种负载下都会在各升压比转换效率最高的区间内随着电压波动相似的曲线。在所有的分块情况下,随着DC-DC输入电压变化转换效率波动的范围保持在30%以内。这保证了系统的稳定性,减少了供能中断的情况。在不同的电压区间都会存在一个峰值,并且最高峰值达到了87.93%。在图中红色曲线代表了储能电容放电电压和不同负载对转换效率的平均水平,其平均转换效率也在78.49%以上。所以整体来说,针对储能电容放电电压不稳定的系统(如自供能系统)或者负载可变的系统(如基于RRAM部分激活策略的神经网络加速器),混合升压比的DC-DC转换器设计对提高系统的能效有着重要的意义。
针对自供能RRAM交叉阵列存算一体系统的应用场景,本文提出了一种支持3种升压比的动态可配置DC-DC转换器的设计,研究了储能电容放电电压、RRAM负载与DC-DC转换效率之间的量化关系。结果表明,该DC-DC转换器可以提供更广范围的输入电压和更高的转换效率,为自适应负载调度优化研究提供理论依据。在系统运行时,DC-DC转换器会根据储能电容放电电压和最佳转换效率的电压区间选择这3种升压比对应最高的转换效率。在未来的工作中,将进一步探索利用神经网络实时动态配置DC-DC转换器。
[1] LEE I,SOKOLSKY O.Medical cyber physical systems[C]//Proceedings of the 47th Design Automation Conference on-DAC′10.New York:ACM Press,2010:743-748.
[2] JIANG X,POLASTRE J,CULLER D.Perpetual environmentally powered sensor networks[C]//Fourth International Symposium on Information Processing in Sensor Networks,2005.Piscataway:IEEE,2005:463-468.
[3] SUDEVALAYAM S,KULKARNI P.Energy harvesting sensor nodes:survey and implications[C]//IEEE Communications Surveys &Tutorials.Piscataway:IEEE,:443-461.
[4] KANSAL A,HSU J,ZAHEDI S,et al.Power management in energy harvesting sensor networks[J].ACM transactions on embedded computing systems,2007,6(4):32.
[5] 前瞻产业研究院.2018年中国物联网行业发展现状与2019年前景预测[EB/OL].(2019-01-07)[2020-10-01].http://www.kaixian.tv/gd/2019/0107/37349_2.html.
[6] LI X Q,HEO U D,MA K S,et al.Rf-powered systems using steep-slope devices[C]//2014 IEEE 12th International New Circuits and Systems Conference.Piscataway:IEEE,2014:73-76.
[7] 黄文锋,徐珊珊,孙燚,等.基于多分辨率卷积神经网络的火焰检测[J].郑州大学学报(工学版),2019,40(5):80-84.
[8] 刘帅奇,王洁,安彦玲,等.基于CNN的非下采样剪切波域多聚焦图像融合[J].郑州大学学报(工学版),2019,40(4):36-41.
[9] XIA L X,TANG T Q,HUANGFU W Q,et al.Switched by input:power efficient structure for RRAM-based convolutional neural network[C]//2016 53rd ACM/EDAC/IEEE Design Automation Conference (DAC).Piscataway:IEEE,2016:1-6.
[10] SHAFIEE A,NAG A,MURALIMANOHAR N,et al.ISAAC:a convolutional neural network accelerator with in situ analog arithmetic in crossbars[C]//2016 ACM/IEEE 43rd Annual International Symposium on Computer Architecture (ISCA).Piscataway:IEEE,2016:14-26.
[11] QIU K N,JAO N,ZHAO M Y,et al.ResiRCA:a resilient energy harvesting ReRAM crossbar-based accelerator for intelligent embedded processors[C]//2020 IEEE International Symposium on High Performance Computer Architecture (HPCA).Piscataway:IEEE,2020:315-327.
[12] MA K S,LI X Q,LIU Y P,et al.Dynamic machine learning based matching of nonvolatile processor microarchitecture to harvested energy profile[C]//2015 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).Piscataway:IEEE,2015:670-675.
[13] BISWAS A,SINANGIL Y,CHANDRAKASAN A P.A 28 nm FDSOI integrated reconfigurable switched-capacitor based step-up DC-DC converter with 88% peak efficiency[J].IEEE journal of solid-state circuits,2015,50(7):1540-1549.