基于延时链的阵列数据调度平衡电压调节电路及方法

申请号 CN202010190601.9 申请日 2020-03-18 公开(公告)号 CN113495610A 公开(公告)日 2021-10-12
申请人 南京伊笛雅特科技有限公司; 发明人 王镇; 孙煜昊; 黄乐朋; 沈泽昱; 朱文涛;
摘要 本 发明 公开了一种基于延时链的阵列数据调度平衡 电压 调节 电路 及方法。属于神经网络的技术领域。本发明通过分析评估计算阵列的计算规模和 存储器 的数据读写规模动态地提供计算阵列和存储器的工作电压,通过由延时链组成的电压调节模 块 将通过延时链控制移位寄存器存储比特数,再由移位寄存器来控制PMOS和NMOS的导通比例输出恒定的电压。恒定的电压将用于计算阵列和存储器,在满足电路工作性能的前提下降低电路的功耗。
权利要求

1.基于延时链的阵列数据调度平衡电压调节电路及方法,其特征在于,包括计算阵列、存储器、阵列数据调度平衡电压调节评估模和基于延时链的调节电压模块,增加的阵列数据调度平衡电压调节评估模块和基于延时链的调节电压模块评估计算阵列的计算规模和存储器的读取规模动态地选择计算阵列和存储器的工作电压,起到在满足工作性能的时候降低功耗。
2.根据权利要求1所述的基于延时链的阵列数据调度平衡电压调节电路及方法,其特征在于,所述的阵列数据调度平衡电压调节评估模块将读取计算阵列的计算规模和存储器的数据读取规模,判断是否有调节电压的必要性,将需要调节的电压输入基于延时链的调节电压模块,例如,在卷积层运算时存在不同尺寸和步长的卷积核运算,步长参数较小时,当步长参数较小时,数据吞吐量低,选取0.8V电压作为存储器的工作电压,在步长较大需要更新数据较多时,阵列数据吞吐量高,计算阵列工作电压采取1.1V,此外还有0.9V等几个电压可供调节使用,此外在不同使用场景下,也可以进行宽电压动态调节,当用户实时性要求高时,存储器工作电压较高;当处于低功耗应用场景下,存储器工作电压调低,阵列数据调度平衡电压调节评估模块可以根据用户需要进行灵活的动态调节,提高用户体验。
3.根据权利要求1所述的基于延时链的阵列数据调度平衡电压调节电路及方法,其特征在于,所述的基于延时链的调节电压模块由延时链、移位寄存器和PMOS和NMOS阵列组组成,开始时参考电压Vref被预充电到VDD,延时链1和2中每一个缓冲器的单元延时相等,接着,由于用来控制移位寄存器的ENABLE信号其脉冲宽度由延时链的长度决定,且延时链2的缓冲器个数大于延时链1,所以信号ENABLE2的脉冲宽度大于信号ENABLE1的脉冲宽度,而ENABLE信号的脉冲越宽,移位寄存器输出比特数越多,因此导通的NMOS数量大于导通的PMOS数量,也就是由NMOS开关控制的放电电流大于通过PMOS的充电电流,因此Vref下降,然后,随着Vref的下降,延时链1的延时逐渐增大,导致信号ENABLE1的脉冲宽度增加,通过移位寄存器和PMOS开关增大充电电流,直到充电电流等于放电电流,参考电压将达到恒定值。
4.基于延时链的阵列数据调度平衡电压调节电路及方法,其特征在于,所述的基于延时链的阵列数据调度平衡电压电路及方法,具体包括计算阵列、存储器、阵列数据调度平衡电压调节评估模块和基于延时链的调节电压模块;所述的基于延时链的阵列数据调度平衡电压调节电路及方法具体步骤如下:
101、阵列数据调度平衡电压调节评估模块将读取计算阵列的计算模块和存储器的读写规模,具体电压调节判断流程如下:创建数据访存地址关系用于存储如网络数据及卷积核规模;再启动调节thread_func,判断网络中规模参数是否有效及其需要调节的电压是否有必要;将判断后必要的电压传输到基于延时链的调节电压模块;
102、基于延时链的调节电压模块将阵列数据调度平衡电压调节评估模块输出的计算阵列电压和存储器电压通过不同的延时链输出不同的频率的使能信号,在不同频率的使能信号下,寄存器存储的比特数不同,不同的比特数影响PMOS和NMOS组的开启比例;根据PMOS和NMOS不同的开启比例将输出不用的电压;
103、基于延时链的调节电压模块输出的计算阵列电压和存储器电压,作用于计算阵列和存储器;当计算阵列和存储器都工作在合适的工作电压下,能够保证电路的工作性能同时能够合理的控制电路的功耗。

说明书全文

基于延时链的阵列数据调度平衡电压调节电路及方法

技术领域

[0001] 本发明涉及一种基于延时链的阵列数据调度平衡电压调节电路及方法,属于人工智能领域。

背景技术

[0002] 近几年,随着人工智能的不断兴起,在人工智能芯片中存在着大量的乘法加法计算及大量的存储器数据读写操作。这些加法乘法操作需要读取和存储大量的数据,将消耗大量的功耗。若存储器和计算阵列的工作电压相同,则必将影响电路的工作性能,同时会产生不必要的功耗,因此要降低功耗则要提供合适的电压。
[0003] 本申请提出了一种基于延时链的阵列数据调度平衡电压调节电路及其方法,可以合适的控制计算阵列和存储器的工作电压,来达到满足性能和降低功耗的效果。

发明内容

[0004] 本发明的发明目的是针对上述背景技术的不足,提供了多噪声场景下语音特征提取方法及可重构语音特征提取装置,能在保持精度的前提下动态地选择语音特征提取方式来减少功耗,解决了现有语音端点检测模低功耗低精度或高功耗高精度的技术问题。
[0005] 本发明为实现上述发明目的采用如下技术方案:基于延时链的阵列数据调度平衡电压调节电路及方法,是通过分析评估计算阵列的计算规模及其存储器的读写规模,给出合理的计算阵列电压和存储器电压;给出的电压值在经过验证后通过延时链输出不同频率的使能信号,改变寄存器里的比特数进而改变PMOS和NMOS组的开启比列从而得到合适的工作电压。
[0006] 进一步的,基于延时链的阵列数据调度平衡电压调节方法中,将创建数据访存地址关系用于存储如网络数据及卷积核规模,即计算阵列计算规模和存储器的读写规模。
[0007] 进一步的,基于延时链的阵列数据调度平衡电压调节方法中,再启动调节thread_func,判断网络中规模参数是否有效。
[0008] 进一步的,基于延时链的阵列数据调度平衡电压调节方法中,分析网络规模中的参数后得出调节电压,验证需要调节的电压是否有必要。
[0009] 进一步的,基于延时链的阵列数据调度平衡电压调节方法中,将判断后必要的电压传输到基于延时链的调节电压模块。
[0010] 进一步的,基于延时链的阵列数据调度平衡电压调节方法中,基于延时链的调节电压模块将阵列数据调度平衡电压调节评估模块输出的计算阵列电压和存储器电压通过不同的延时链输出不同的频率的使能信号。
[0011] 进一步的,基于延时链的阵列数据调度平衡电压调节方法中,由于不同的延时链输出不同频率的使能信号,因此存进寄存器存储的比特数不同。
[0012] 进一步的,基于延时链的阵列数据调度平衡电压调节方法中,寄存器存储不同的比特数将影响PMOS和NMOS组的开启比例;根据PMOS和NMOS不同的开启比例将输出指定的目标电压;再进一步的,基于延时链的阵列数据调度平衡电压调节方法中,基于延时链的调节电压模块输出的计算阵列电压和存储器电压,作用于计算阵列和存储器。当计算阵列和存储器都工作在合适的工作电压下,能够保证电路的工作性能同时能够合理的控制电路的功耗。
[0013] 基于延时链的阵列数据调度平衡电压调节电路包括:计算阵列和存储器,用于提供计算阵列计算规模和存储器的读写规模,同时采用最后合适的工作电压。
[0014] 阵列数据调度平衡电压调节评估模块,用于分析评估计算阵列的计算规模和存储器的读写规模通过内置的算法得到合理的调节电压,并通过一系列的验证方法确保所调节的电压为合适的电压。
[0015] 基于延时链的调节电压模块,将阵列数据调度平衡电压调节评估模块所输出的电压值通过配置合适的延时链,不同的延时链输出的使能信号的频率不同,故而在不同的使能信号频率下寄存器里储存的比特数不同,寄存器里不同的比特数将影响PMOS和NMOS组的开启比例。在PMOS和NMOS不同的开启比例下输出的电压值将有所不同,这样便能输出合适的电压值给计算阵列和存储器使用。
[0016] 本发明采用上述技术方案,具有以下有益效果:(1)针对不同的计算规模,采用不同的电压能提高计算阵列的工作性能,与固定的电压情况下相比,同时还有控制功耗的效果。如果计算阵列需要处理大量的计算操作,则采用大电压,提高工作性能效率;如果计算阵列需要处理的计算操作较小,则只需要采用小电压,可以降低电路的功耗。
[0017] (2)针对不同的存储器读写规模,采用不同的电压同样能提高其读写效率,动态地控制存储器的功耗,同时满足电路所需要的工作性能。
[0018] (3)动态地匹配计算阵列和存储器的工作电压,做到使得计算和读写速率相平衡。在计算多于读写时计算阵列的电压大于存储器的电压;当读写操作大于计算操作数时,存储器的工作电压要高于计算阵列的工作电压。
附图说明
[0019] 图1为本发明的整体架构。
[0020] 图2为本发明的电压调节判断流程图
[0021] 图3为本发明的延时链调节电压。
[0022] 图4为本发明的整体工作流程图。

具体实施方式

[0023] 下面结合具体实施例,进一步阐明本发明,应理解这些实施例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落于本申请所附权利要求所限定的范围。
[0024] 基于延时链的阵列数据调度平衡电压调节电路通过内置模块之间协调控制根据计算阵列的计算规模和储存器的读写规模,给出合适的调节电压值。调节电压值再由基于延时链的调节电压模块通过延时链组、寄存器和PMOS和NMOS组调节输出合适的电压值给计算阵列和存储器。图1为本发明的整体框架
[0025] 阵列数据调度平衡电压调节评估模块,用于分析评估计算阵列的计算规模和存储器的读写规模通过内置的算法得到合理的调节电压,并通过一系列的验证方法确保所调节的电压为合适的电压。具体的电压调节判断流程如图2,阵列数据调度平衡电压调节评估模块将创建数据访存地址关系用于存储如网络数据及卷积核规模,即计算阵列计算规模和存储器的读写规模。再启动调节thread_func,判断网络中规模参数是否有效。分析网络规模中的参数后得出调节电压,验证需要调节的电压是否有必要。将判断后必要的电压传输到基于延时链的调节电压模块。
[0026] 基于延时链的调节电压模块,如图3,将阵列数据调度平衡电压调节评估模块所输出的电压值通过配置合适的延时链,不同的延时链输出的使能信号的频率不同,故而在不同的使能信号频率下寄存器里储存的比特数不同,寄存器里不同的比特数将影响PMOS和NMOS组的开启比例。在PMOS和NMOS不同的开启比例下输出的电压值将有所不同,这样便能输出合适的电压值给计算阵列和存储器使用。
[0027] 本实施例基于延时链的阵列数据调度平衡电压调节电路及其方法如图4所示,具体的实施步骤如下:步骤101:阵列数据调度平衡电压调节评估模块将读取计算阵列的计算模块和存储器的读写规模,具体电压调节判断流程如下:创建数据访存地址关系用于存储如网络数据及卷积核规模;再启动调节thread_func,判断网络中规模参数是否有效及其需要调节的电压是否有必要;将判断后必要的电压传输到基于延时链的调节电压模块;
步骤102:基于延时链的调节电压模块将阵列数据调度平衡电压调节评估模块输出的计算阵列电压和存储器电压通过不同的延时链输出不同的频率的使能信号,在不同频率的使能信号下,寄存器存储的比特数不同。不同的比特数影响PMOS和NMOS组的开启比例;根据PMOS和NMOS不同的开启比例将输出不用的电压;
步骤103:基于延时链的调节电压模块输出的计算阵列电压和存储器电压,作用于计算阵列和存储器;当计算阵列和存储器都工作在合适的工作电压下,能够保证电路的工作性能同时能够合理的控制电路的功耗。
QQ群二维码
意见反馈