自适应节流的制作方法

文档序号:19816919发布日期:2020-01-31 19:33
自适应节流的制作方法

本发明大体上涉及半导体存储器及方法,且更具体来说,涉及自适应控制系统。



背景技术:

存储器装置通常经提供为计算机或其它电子装置中的内部半导体集成电路及/或外部可卸除装置。存在包含易失性和非易失性存储器的许多不同类型存储器。易失性存储器可需要电力来维持其数据且可包含随机存取存储器(ram)、动态随机存取存储器(dram)、静态随机存取存储器(sram)和同步动态随机存取存储器(sdram)等等。非易失性存储器可在未被供电时保持经存储的数据,且可包含nand快闪存储器、nor快闪存储器、相变随机存取存储器(pcram)、电阻式随机存取存储器(rram)和磁性随机存取存储器(mram)等等。

可将存储器装置组在合一起以形成固态驱动器(ssd)。ssd可包含非易失性存储器(例如,nand快闪存储器和nor快闪存储器)及/或可包含易失性存储器(例如,dram及/或sram)等各种其它类型的非易失性及易失性存储器。快闪存储器装置可包含在电荷存储结构(例如,浮动栅极)中存储数据的存储器单元,且可对于广泛范围的电子应用用作非易失性存储器。通常,快闪存储器装置使用一个晶体管存储器单元,其允许高存储器密度、高可靠性和低功耗。

可使用ssd来替换硬盘驱动器作为计算机的主要存储卷,因为固态驱动器可在性能、大小、重量、耐用性、操作温度范围和功率消耗方面优于硬盘驱动器。例如,当与磁盘驱动器比较时,ssd可归因于其没有移动零件而具有更好性能,此可避免查找时间、延时和与磁盘驱动器相关联的其它机电延迟。

阵列架构中的存储器单元可经编程到目标(例如,预期)状态。例如,电荷可放置在存储器单元的电荷存储结构(例如,浮动栅极)上或从所述结构移除以将所述单元编程到特定数据状态。存储器单元的电荷存储结构上的存储电荷可指示单元的阈值电压(vt),且可通过感测所述单元的存储电荷(例如,vt)确定单元的状态。

例如,单电平单元(slc)可经编程到两个不同数据状态的一个目标状态,所述状态可由二进制单位1或0表示。一些快闪存储器单元可经编程到超过两个数据状态的一个目标状态(例如,1111、0111、0011、1011、1001、0001、0101、1101、1100、0100、0000、1000、1010、0010、0110和1110),使得其表示超过一个数字(例如,超过一个比特)。经配置用于编程到超过两个数据状态的单元可称为额外电平单元(xlc)。例如,多电平单元(mlc)、三电平单元(tlc)及/或四电平单元(qlc)可在本文中通称为xlc。xlc可提供给定数量个存储器单元的更高密度存储器;但是,与slc相比较,xlc可具有更低耐久及/或数据保持能力。例如,slc的预期寿命可为50,000到100,000个循环(例如,编程-擦除循环),而xlc的预期寿命可为1,000到5,000个循环。

附图说明

图1是根据本发明的若干实施例的呈包括存储器系统的计算系统的形式的设备的功能框图。

图2说明根据本发明的若干实施例的自适应控制架构的框图。

图3说明根据本发明的若干实施例的可耦合到控制器的传感器网络。

图4说明根据本发明的若干实施例的自适应控制架构的反向自适应滤波器。

图5说明根据本发明的若干实施例的自适应控制架构的部分。

图6说明根据本发明的若干实施例的自适应控制架构的部分。

图7说明根据本发明的若干实施例的自适应控制架构的正向自适应滤波器。

图8说明一些先前方法与根据本发明的若干实施例的自适应控制架构的图形性能比较。

图9说明根据本发明的若干实施例的来自控制器的模拟结果。

具体实施方式

提供自适应节流的设备和方法。存储器系统(例如ssd)可用于数据中心和企业中。ssd可承受沉重的工作负荷,其可增加ssd的操作温度使其超过热节流限制。过度控制(例如,过度节流)可导致ssd的性能降低,而不足控制(例如,不足节流)可增大系统级冷却的功耗。例如,考虑具有70℃的操作温度的ssd。假设,阈值操作温度为60℃。过度热节流可使操作温度从70℃下降到55℃。因为操作温度将比阈值操作温度低5℃,所以与和60℃的阈值操作温度相关联的ssd的性能相比较,ssd可具有与将操作温度改变到55℃相关联的较低性能。相比来说,不足热节流可使操作温度仅从70℃降低到65℃。因为操作温度将比阈值操作温度高5℃,所以系统级冷却系统可消耗更多电力,以便使在比阈值操作温度高5度的温度下操作的ssd冷却。可有利地具有可精确控制(例如,精确节流)的存储器系统(例如,ssd)。

与高性能或时间临界应用相关的工作负荷需求及/或性能模式可以更高操作温度为代价需要高性能ssd。相比来说,与成本敏感应用相关联的工作负荷需求及/或性能模式可需要中等性能ssd,使得高操作温度可能是不必要的。ssd可包含可测量及/或指示ssd的操作温度的多个传感器。ssd可包含多个控制量度,可通过控制量度控制操作温度。控制量度可包含但不限于活动跟踪的数量、定序器延迟、处理器频率和电压调节。在下文中与图6相关联地进一步详细论述控制量度。如本文使用,“活动跟踪的数量”是指当前活动的存储器系统的平面数量。例如,ssd可包含十六个nand裸片,nand裸片中的每一者包含两个平面。每一平面可包含一万六千个字节的数据。存储器系统的平面可在对所述平面执行运算(例如,nand运算)时为活动的;例如,在从平面读取、编程(写入)及/或擦除数据时。ssd的控制器可是指定义可从ssd的dram传送到ssd的nand的最大数量的数据的寄存器,反之亦然。为了编程两页数据,可需要四个活动跟踪,而为了编程四页数据,可需要六个活动跟踪。

在一些先前方法中,可花费时间和资源来调节且优化ssd的节流控制算法以仅满足一组要求。例如,可仅针对高性能或时间临界应用调节且优化节流控制算法,或可仅针对成本敏感应用调节且优化节流控制算法;而非同时针对高性能或时间临界应用和成本敏感应用两者调节且优化节流控制算法。先前ssd节流控制算法无法满足与多个工作负荷需求及/或性能模式相关的要求。

接口(例如,外围组件互连高速(pcie)或非易失性存储器高速(nvme))可使ssd能够放置为靠近中央处理单元(cpu)。此可通过降低事务开销而对物理链路层有益。因为ssd可具有比硬盘驱动器(hhd)的带宽大十到一百倍的带宽,所以ssd可处置与多个应用相关的工作负荷需求。为了满足这些工作负荷需求,ssd可包含具有增大的处理能力和硬件模块数量的控制器。高性能数据流可完全经由硬件管理使得硬件驱动的数据流中的中断可为灾难性的。

本发明的实施例可配合多个工作负荷需求及/或性能模式使用。至少一个实施例可包含可经由硬件实施的自适应控制架构。自适应控制架构可动态调整控制信号的量值以实现与当前工作负荷需求及/或性能模式相关的预期性能。与可倒转正向自适应滤波器(例如,前馈估计器)的一些先前方法相反,至少一个实施例包含与正向自适应滤波器分离且不同的反向自适应滤波器。因此,至少一个实施例可降低或甚至消除与倒转正向自适应滤波器相关联的稳定性风险。至少一个实施例可包含有限脉冲响应(fir)滤波器,其可比由一些先前方法使用的比例微分(pd)滤波器、比例积分(pi)滤波器及/或比例积分微分(pid)滤波器更稳定。

至少一个实施例可包含热节流能力,其可通过使算法适应于多个性能模式中的当前模式的要求来配合多个性能模式使用。至少一个实施例可在不手动调节的情况下实现在任何环境工作条件及/或工作负荷需求下的最佳性能等级。在一些先前方法中,如果不适当地调节热节流算法,那么存储器系统的性能可为次优的。至少一个实施例可在每一自适应滤波器中实施单个适应算法。单个适应算法可在硬件中实施。至少一个实施例可控制多个控制量度。至少一个实施例可确定传感器网络的哪一传感器最适用于实现阈值操作温度。

在本发明的一或多个实施例中,设备可包含多个自适应滤波器来确定施加控制信号的节流速率。设备可包含反向自适应滤波器,其经配置以基于经测量的操作温度确定与特定控制量度相关联的控制信号的估计量值。如本文使用,“控制量度”是指可通过其控制系统的操作特性的系统的机制。如本文使用,“操作温度”是指操作存储器或存储器系统的存储器或存储器系统的温度。设备可包含正向自适应滤波器,其经配置以基于控制信号的量值确定估计操作温度。设备可包含自适应滤波器,其经配置以基于控制信号的改变量值确定施加控制信号的节流速率。如本文使用,“控制信号的改变量值”是指控制信号的当前量值将改变多少。例如,如果控制信号的当前量值为五且控制信号的量值将为二,那么控制信号的改变量值是负三。正向自适应滤波器、反向自适应滤波器及自适应滤波器可经配置以使用同一自适应算法。设备可包含经配置以基于经测量操作温度与阈值操作温度之间的差确定控制信号的改变量值的滤波器。

如本文使用,“若干”某物可指代一或多个此类事物。例如,若干存储器单元可指代一或多个存储器单元。另外,如本文使用的指示符“n”、“b”、“r”和“s”(尤其相对于图中的元件符号)指示如此指定的若干特定特征可包含在本发明的若干实施例内。

本文的图遵循编号惯例,其中第一位或前几位数字对应于图号且剩余数字识别图中的元件或组件。不同图之间的类似元件或组件可通过使用类似数字识别。例如,234可指代图2中的元件“34”,且类似元件可在图7中指代为734。图内的类似元件可用连字符和额外数字或字母指代。例如,参见图3中的元件350-1、350-2、350-3、350-4和350-5。此类类似元件可在没有连字符和额外数字或字母的情况下大体上指代。例如,元件350-1、350-2、350-3、350-4和350-5可统称为350。

图1是根据本发明的若干实施例的呈包括存储器系统104的计算系统101的形式的设备的功能框图。如本文使用,“设备”可指代但不限于各种结构或结构组合中的任一者,例如,电路或若干电路、裸片或若干裸片、模块或若干模块、装置或若干装置或系统或若干系统。

存储器系统104可(例如)为ssd。在图1中说明的实施例中,存储器系统104包含主机接口106、存储器(例如,若干存储器装置110-1、110-2、…、110-n)(例如,固态存储器装置)和控制器108(例如,ssd控制器),控制器108耦合到物理主机接口106和存储器装置110-1、110-2、…110-n。

存储器装置110-1、110-2、…110-n可包含(例如)若干非易失性存储器阵列(例如,非易失性存储器单元阵列)。例如,存储器装置110-1、110-2、…110-n可包含若干存储器阵列。

在一些实施例中,存储器装置110-1、110-2、…、110-n可包含若干存储器单元(例如,非易失性存储器单元)阵列。阵列可为(例如)具有nand架构的快闪存储器阵列。然而,实施例不限于特定类型的存储器阵列或阵列架构。如上文结合图1描述,存储器单元可(例如)分组成包含存储器单元的若干物理页的若干块。在若干实施例中,块是指作为单元一起擦除的一组存储器单元。若干块可包含在存储器单元的平面中,且阵列可包含若干平面。如一个实例,存储器装置可经配置以每页存储8kb(千字节)的用户数据、每块存储128页的用户数据、每平面存储2048个块和每装置存储16个平面。存储器单元的若干物理块可包含在存储器单元的平面中,且存储器单元的若干平面可包含在裸片上。每一物理块可为单个裸片的部分。

在操作中,数据可(例如)作为一页数据写入到存储器系统的存储器装置(例如,存储器系统104的存储器装置110-1、110-2…110-n)及/或从所述装置读取。因而,数据页可称为存储器系统的数据传送大小。数据可以称为扇区(例如,主机扇区)的数据区段传送到主机102/从主机102传送。因而,数据扇区可称为主机的数据传送大小。在一些实施例中,nand块可称为擦除块,其中块为擦除单位且页为读取及/或写入的量度。

主机接口106可用于在存储器系统104与另一装置(例如主机102)之间传送信息。主机102可包含存储器存取装置(例如,处理器)。如本文使用,“处理器”可意指若干处理器,例如,并行处理系统、若干协处理器等。实例主机可包含个人膝上型计算机、桌面计算机、数码相机、数字记录和播放装置、移动(例如,智能)电话、pda、存储卡读取器、接口集线器等。

主机接口106可呈标准化物理接口的形式。例如,当存储器系统104用于计算系统101中的信息存储时,主机接口106可为串行高级技术附件(sata)物理接口、外围组件互连高速(pcie)物理接口或通用串行总线(usb)物理接口以及其它物理连接器及/或接口。然而,一般来说,主机接口106可提供用于在存储器系统104与具有对主机接口106的兼容接收器的主机(例如,主机102)之间传递控制、地址、信息(例如,数据)和其它信号的接口。

控制器108可包含(例如)控制电路及/或逻辑(例如,硬件和固件)。控制器108可包含在与存储器装置110-1、110-2、…110-n相同的物理装置(例如,同一裸片)上。例如,控制器108可为耦合到印刷电路板的专用集成电路(asic),所述印刷电路板包含物理主机接口106及存储器装置110-1、110-2、…110-n。或者,控制器108可包含在单独物理装置上,所述单独物理装置通信耦合到包含存储器装置110-1、110-2、…110-n的物理装置。在若干实施例中,控制器108的组件可散布在多个物理装置(例如,一些组件在与存储器相同的裸片上,且一些组件在不同裸片、模块或板上)作为分布式控制器。

控制器108可与存储器装置110-1、110-2、…110-n通信以感测(例如,读取)、编程(例如,写入)及/或擦除信息以及其它操作。控制器108可具有可为若干集成电路及/或离散组件的电路。在若干实施例中,控制器108中的电路可包含用于控制跨存储器装置110-1、110-2、…110-n的存取的控制电路及/或用于在主机102与存储器系统104之间提供转换层(例如,快闪转换层)的电路。

控制器108可包含第一自适应滤波器(例如,反向自适应滤波器),其经配置以基于来自传感器的信号的量值确定与特定控制量度相关的控制信号的估计量值,其中信号指示存储器系统的操作温度。控制器108可包含第二自适应滤波器(例如,正向自适应滤波器),其经配置以基于控制信号的量值确定估计操作温度。控制器108可包含第三自适应滤波器,其经配置以基于控制信号的改变量值确定控制信号的节流速率。控制器108可包含第四滤波器,其经配置以基于信号的量值与阈值操作温度之间的差确定控制信号的改变量值。第一自适应滤波器、第二自适应滤波器及第三自适应滤波器可经配置以使用同一自适应算法。滤波器可经由固件及/或硬件在控制器108中实施。

图1中说明的实施例可包含未说明其以免使本发明的实施例:?亩钔獾缏、逻辑及/或组件。例如,存储器装置104可包含锁定通过i/o电路在i/o连接器上提供的地址信号的地址电路。可由行解码器和列解码器接收且解码地址信号以存取存储器装置110-1、110-2、…、110-n。

图2说明根据本发明的若干实施例的自适应控制架构的框图230。图2中说明的自适应控制架构可在图1中展示的控制器108中实施或由控制器108实施。自适应控制架构可包含三个自适应滤波器:正向自适应滤波器234、反向自适应滤波器236及自适应滤波器270。正向自适应滤波器234可验证:操作温度是响应于与控制量度相关联的控制信号的改变。在下文中与图7相关联地进一步详细论述正向自适应滤波器234。

图2到7中说明的实线表示自适应控制架构的组件之间的硬互连或硬接口。相比之下,图2、5和6中说明的虚线表示自适应控制架构的组件之间的软互连或软接口。软互连或接口可由自适应控制架构视需要开启且关闭,而不对存储器系统的性能产生负面影响。例如,如下文与图3相关联地进一步详细论述,互相关矩阵242可用于基于传感器与调整存储器系统的操作温度的相关性加权来自传感器网络232的信号。在已经加权信号之后,互相关矩阵与传感器网络232之间的软互连可被关闭直到其再次被需要。

反向自适应滤波器236可基于经测量的操作温度确定与特定控制量度相关联的控制信号的估计量值。在下文中与图4相关联地进一步详细论述反向自适应滤波器236。经测量操作温度可从传感器网络232获得。虽然图2将传感器网络232展示为框图230的组件,但是传感器网络232可不是控制器的组件。而是,传感器网络232可耦合到控制器,使得指示操作温度的信号可由自适应控制架构使用。在下文中与图3相关联地进一步详细论述传感器网络232。

滤波器238可基于经测量操作温度与阈值操作温度之间的差确定控制信号的改变量值。滤波器238可使用由反向自适应滤波器236使用的权重。在下文中与图5相关联地进一步详细论述由反向自适应滤波器236和滤波器238提供的反向自适应控制。

由框图230说明的自适应控制架构可用于在不同性能模式中操作存储器系统。由线272的群组表示不同性能模式。自适应滤波器270可确定将控制信号的改变量值施加到控制量度的节流速率。在下文中与图6相关联地进一步详细论述性能模式和自适应滤波器270。

如在框图230中展示,自适应控制架构可包含互相关矩阵242。互相关矩阵242可为两个信号之间的时域互相关。可在时域互相关的乘数较高时指示两个信号之间的强相关。时域互相关可指示两个信号之间的时间延迟。在存储器系统内的操作温度较高时,时域互相关可指示传感器信号较高。互相关矩阵242可将与性能模式相关联的权重提供到传感器网络232。虽然图2将互相关矩阵242展示为框图230的组件,但是互相关矩阵242的权重可存储在控制器上或控制器外。例如,权重可存储在sram中,使得每一权重对应于sram中的位置。

图3说明根据本发明的若干实施例的可耦合到控制器的传感器网络332。传感器网络332可类似于图2中说明的传感器网络232。传感器网络332可包含多个传感器350-1、350-2、350-3、350-4和350-5。虽然图2和3展示五个传感器,但是传感器网络332可包含任何数量个传感器。一或多个传感器350可耦合到存储器系统,例如图1中说明的存储器系统104。一或多个传感器350可耦合到包含存储器系统的系统的组件。分别来自传感器350-1、350-2、350-3、350-4和350-5的信号w1、w2、w3、w4和w5可指示存储器系统的操作温度,但未必直接测量操作温度。传感器350可包含但不限于印刷电路板组合件(pcba)上的温度传感器、裸片中间温度传感器(例如,裸片中间热敏电阻)、耦合到nand及/或dram的温度传感器、耦合到nand及/或dram的电压传感器、过温中断、耦合到主机接口(例如,图1中说明的主机接口106)的温度传感器和缓冲计数器。缓冲计数器可指示传入主机业务的数量。例如,如果来自主机的命令按高速率节流,那么传入主机业务的数量(例如,传入扇区的数量)将在一段时间内增大。如本文使用,“过温中断”是指装置在加热到特定温度时中断电流。传感器350可包含多个类型的传感器。例如,传感器350-1可为耦合到主机(例如图1中说明的主机102)的风扇或存储器系统(例如,存储器系统104)的风扇的风扇速度传感器。如果信号w1指示风扇的快速,那么信号w1可指示存储器装置及/或存储器系统的高操作温度。

传感器网络332可包含求和节点352。求和节点可在固件或硬件中实施且用于使两个信号(包含带正负号信号)相加。来自两个或两个以上传感器的信号(例如,信号w1和w2)可在求和节点352加在一起。控制器和自适应控制架构可将信号的和用作表示经测量的操作温度的信号,其可为图2中说明的反向自适应滤波器236的输入。可在求和节点352产生来自两个或两个以上传感器的信号的加权和。可在求和节点352产生来自所有可用传感器的信号的加权和。权重(例如,来自图2中说明的互相关矩阵242的所述权重)可用于产生加权和。

传感器350可基于传感器与调整存储器装置或存储器系统的操作温度的相关性进行加权。例如,直接测量存储器系统的操作温度的传感器可比(例如)风扇速度传感器与实现及/或维持阈值操作温度更相关。来自互相关矩阵的权重可确保来自特定传感器的信号响应于与控制量度相关的控制信号中的改变。例如,如上文论述,来自主机的风扇速度传感器的信号可指示存储器系统的操作温度。因此,可控制风扇速度以影响存储器系统的操作温度。但是,确定主机的图形处理单元(gpu)的操作温度的来自传感器的信号可能不响应于控制信号中的改变。

来自互相关矩阵的权重可用于响应于相关控制信号中的改变确定来自传感器的信号(例如,信号w1)中的改变之间的时间延迟。例如,控制量度可为存储器系统的活动跟踪的数量。如果活动跟踪的数量从十个活动跟踪增加到十二个活动跟踪,那么将活动跟踪的数量从十个改变到十二个与来自传感器的信号(例如,经测量的操作温度)的改变之间的时间。

图4说明根据本发明的若干实施例的控制器的反向自适应滤波器436。反向自适应滤波器436可类似于图2中说明的反向自适应滤波器236。反向自适应滤波器436可经配置以适应经测量的操作温度与和控制量度相关的控制信号的估计量值之间的转移函数。例如,反向自适应滤波器436可适应经测量的操作温度与活动跟踪的估计数量之间的转移函数。反向自适应滤波器436可基于或根据经测量的操作温度确定控制信号的估计量值(例如,活动跟踪的估计数量)。反向自适应滤波器可用作自适应控制器。

反向自适应滤波器436可为有限脉冲响应(fir)滤波器。反向自适应滤波器436可使用最小均方(lms)算法或归一化最小均方(nlms)算法。反向自适应滤波器436可使用通过施加来自互相关矩阵的权重到上文联合图3中说明的传感器网络332描述的传感器网络发现的时间延迟。由反向自适应滤波器436输出的控制信号的估计量值可输入到求和节点460,如由线435表示。在求和节点460,可比较控制信号的量值与控制信号的估计量值。可将控制信号的量值与控制信号的估计量值之间的差反馈到反向自适应滤波器436,如由线433表示。

下列伪代码是可由反向自适应滤波器436使用的自适应算法的实例:

以上伪代码定义lms自适应算法。到自适应算法的输入为时间延迟(line_delay)、来自传感器的信号与控制信号(y)之间的转移函数的结果、滤波器的(若干)权重(wt)、滤波器的输出(pred)、滤波器的输出与滤波器的预期输出之间的差(err)、滤波器的预期输出(un)和到滤波器的输入(rd)。权重可对应于控制量度及/或性能模式。滤波器自适应速率可依据到滤波器的输入(rd)而变化。滤波器自适应速率控制自适应多快或多慢地发生。滤波器自适应速率越。?允视υ铰。滤波器自适应速率可独立地控制,而不是依据到滤波器的输入(rd)而变化。

自适应算法可配合与多个控制量度相关的多个控制信号使用。自适应算法可保持多个控制信号同步,使得一个控制量度不会主导其它控制量度。自适应算法可在存储器系统的持续操作期间配合与多个性能模式相关联的权重使用。性能模式可在存储器的持续操作期间改变,而不必停止且针对每一不同性能模式手动调节算法。

与一些先前方法(例如pid滤波器)相反,至少一个实施例可实施多个pid算法。可手动调节多个pid算法,使得多个pid算法在各种操作条件中充分执行。

例如,假设控制量度为活动跟踪的数量。上文描述的自适应算法伪代码可由反向自适应滤波器436使用下列伪代码调用:

adaptivelms(active_inverse,y_inv,wti,ssdinversepred,ssdinverseerr,temp,adie)

基于时间延迟(active_inverse)和权重(wti)(其初始化为一),可确定活动跟踪(y_inv=y_inv+active_inverse[idx]*wti[idx]和ssdinversepred.append(y_inv))的估计数量。时间延迟和权重可累加以产生自适应算法的输出(ssdinversepred)。差(ssdinverseerr)可反馈到反向自适应滤波器436。每一权重可用活动跟踪的实际数量(adie)与活动跟踪的估计数量(y_inv)之间的差(ssdinverseerr)与经测量的操作温度(temp)的相乘来更新。时间延迟可取决于存储器系统。例如,只要时间延迟大于十五微秒,反向自适应滤波器436就可实施自适应算法。低于十五微秒的时间延迟可表明操作温度快速响应控制信号中的对应改变。在不同存储器系统中,时间延迟可为十五纳秒或十五微秒。接着,可使用控制信号的估计量值确定基于控制信号的量值改变的操作温度中的估计改变。

图5说明根据本发明的若干实施例的自适应控制架构的部分。图5中说明的自适应控制架构的部分展示可如何将反向自适应滤波器536用作控制算法。节点560和反向自适应滤波器536可类似于图4中说明的节点460和反向自适应滤波器436。在反向自适应滤波器536适应来自传感器网络的信号(例如,经测量的操作温度)与控制信号的估计量值(例如,活动跟踪的估计数量)之间的转移函数之后,可将阈值操作温度引入到自适应控制架构。如本文使用,“阈值操作温度”是指与特定性能模式相关联的最大操作温度。例如,高性能模式可具有比低性能模式的阈值操作温度更高的阈值操作温度。在下文中与图6关联而进一步详细论述性能模式。

下列伪代码可由滤波器537使用:

到自适应算法的输入为来自传感器网络的信号(例如,经测量的操作温度)与阈值操作温度之间的差(error_signal)、滤波器537的结果(y)、权重(wc)和滤波器537的输出(control)(例如,控制信号的改变量值)。上文描述的伪代码可由滤波器537使用下列伪代码调用:

iflen(ssdinversepred)>0:

error_signal.append(ssdinversepred[-1]-50)

adaptivecontrol(error_signal,y_cont,wti,control)

由反向自适应滤波器使用的权重(wti)可由滤波器537使用。error_signal.append(ssdinversepred[-1]-50)表示延迟线。在以上伪代码中,延迟线使数据移位以消除最旧的数(例如,最大索引)且将最新的数输入到索引0。

由线545表示的测量操作温度和由线543表示的阈值操作温度可输入到求和节点562。求和节点562可输出阈值操作温度与经测量的操作温度之间的差,其可输入到滤波器537。来自用反向自适应滤波器536适应转移函数的权重可输入到滤波器537,如由虚线538表示。在权重已经输入到滤波器537之后,反向自适应滤波器536与滤波器537之间的软互连或接口可关闭。使用这些权重,滤波器537可基于阈值操作温度与经测量操作温度之间的差确定控制信号的改变量值。来自反向自适应滤波器536的经适应转移函数可用于确定调整操作温度使其低于或等于阈值操作温度所必需的控制信号的改变量值。

图6说明根据本发明的若干实施例的自适应控制架构的部分。图6展示由线672表示的多个性能模式,其可类似于图2中说明的由线272表示的多个性能模式。性能模式可影响阈值操作温度、互相关矩阵的权重及/或节流速率。性能模式的实例可包含但不限于高性能模式、低性能模式、低功耗模式和模式控制。模式控制可将活动跟踪或快闪存储器信贷的预算分配到不同线程和过程。高性能模式可与高阈值操作温度相关。高阈值操作温度(例如,70℃)可允许存储器系统按高带宽操作。例如,如果控制量度为活动跟踪的数量,那么高阈值操作温度可允许更大数量的跟踪同时活动,借此增加存储器系统的带宽。相比来说,低功耗模式可与低阈值操作温度(例如,55℃)相关联。例如,如果控制量度是活动跟踪的数量,那么低阈值操作温度可允许更少数量的跟踪同时活动,借此降低存储器系统的功耗。

性能模式可确定控制量度。例如,如果存储器系统将在高性能模式中操作,那么可使用更可能确保存储器系统在高性能模式中操作的控制量度。本发明的实施例可配合不同类型的控制量度使用。核心电压可为控制量度。核心电压可为存储器系统的控制器(例如图1中说明的控制器108)的核心电压。核心电压可经由可在时域中实施的自适应电压调节(avs)控制。时钟频率可为控制量度。时钟频率可经由可在时域中实施的自适应频率调节(afs)控制。例如,存储器系统的时钟频率可为控制量度。活动跟踪的数量可为控制量度。快闪存储器信贷的数量可为控制量度。快闪存储器信贷可类似于基于信贷的系统中的活动跟踪。时钟电压可为控制量度。时钟电压可经由动态电压调节(dvs)控制。存储器块的数量可(例如)经由随机数生成器或时钟光栅作为控制量度关闭。存储器系统的组件(例如,模块)可作为控制量度闲置。例如,可使dram或存储器控制器闲置。存储器系统的dram可作为控制量度被置于更低功耗状态中。与时钟相关联的处理带宽可作为控制量度节流。例如,处理带宽可通过节流误差校正单元(ecu)或定序器节流。活动核心的数量可为控制量度。例如,可控制包含存储器系统的主机的中央处理单元(cpu)的活动核心的数量。风扇(例如,系统级集成的风扇)的速度可为控制量度。工作负荷的混合可为控制量度。例如,增加循序传入主机数据的数量可降低存储器系统内的垃圾收集活动的数量,借此降低活动跟踪或所需的快闪存储器信贷的数量。传入命令速率可为控制量度。例如,主机可节流发送到存储器系统的命令。存储器系统可降低给予主机的命令信贷的数量。总线频率可为控制量度。例如,可控制开放式nand快闪存储器接口(onfi)、dram总线及/或芯片上总线的频率。芯片上总线的实例包含但不限于高级微控制器总线架构(amba)高性能总线(ahb)或amba外围总线(apb)。命令可作为控制量度延迟。可将延迟添加到命令以使发送到存储器系统的命令减速。例如,可将延迟添加到发送到nand的写入、读取或擦除命令。存储器系统的存储器单元的编程模式可作为控制量度改变。例如,qlc编程模式或tlc编程模式可改变到slc编程模式。slc编程模式可具有比qlc编程模式或tlc编程模式更短的编程时间,此可降低存储器系统的功耗。写入到存储器系统的元数据或日志数据的数量可为控制量度。降低写入到存储器系统的元数据或日志数据的数量可降低活动跟踪或所需快闪存储器信贷的数量。存储器系统的存储器单元的擦除模式可作为控制量度改变。例如,与mlc擦除模式相比,可在slc擦除模式中擦除slc数据。slc擦除模式可具有比mlc擦除模式更短的擦除时间,此可降低存储器系统的功耗。动态任务先进先出(fifo)的大小可为控制量度。各种任务中的活动命令的数量可降低,此可降低总系统并行性。实时操作系统的(rtos)调度器的优先级可作为控制量度改变。例如,可用固件(fw)执行降低高功耗任务的优先级。在至少一个实施例中,控制量度可为前述控制量度中的任一者的组合。

自适应滤波器670可为fir滤波器。自适应滤波器670可使用lms算法或nlms算法。自适应滤波器670可基于性能模式确定施加控制信号的改变量值的节流速率。自适应滤波器670可估计控制信号的改变量值对存储器系统的性能的影响。自适应滤波器670可实施与反向自适应滤波器和正向自适应滤波器相同的自适应算法。例如,自适应滤波器670可实施由上文与图4相关联地描述的伪代码定义的自适应算法。

来自图5中说明的滤波器537的控制信号的改变量值可输入到自适应滤波器670,如由线641表示。控制信号的改变量值可按节流速率施加到节点674。控制信号的改变量值可作为滑动函数或阶跃函数施加。控制信号的改变量值可作为齐平率的函数施加。如本文使用,“齐平率”是指分配活动跟踪的速率。齐平率可指示当前正执行的运算(例如,nand运算)的数量。齐平率可考虑当前将多少数据存储在存储器系统的dram上。性能模式可输入到节点674以确定将互相关矩阵的那个权重施加到传感器网络。在性能模式已经输入到互相关矩阵之后,节点674与互相关矩阵之间的软互连或接口(由虚线677表示)可关闭。在施加控制信号的改变量值之后,可将控制信号的量值可反馈到自适应滤波器670和多路分用器(图6中未展示),如由线645表示。节点674可为经配置以按节流速率将控制信号施加到控制量度的控制机制。控制机制可经配置以控制迟滞现象且防止从包含控制信号的节流的第一性能模式和不包含控制信号的节流的第二性能模式突然切换。

图7说明根据本发明的若干实施例的自适应控制架构的正向自适应滤波器734。正向自适应滤波器734可类似于图2中说明的正向自适应滤波器234。正向自适应滤波器734可经配置以适应控制信号的量值与经估计操作温度之间的转移函数。例如,正向自适应滤波器734可适应活动跟踪的数量与经估计操作温度之间的转移函数。正向自适应滤波器734可基于或依据控制信号的量值(例如,活动跟踪的数量)确定经估计的操作温度。因为正向自适应滤波器734可作为检查以验证操作温度是响应于与控制量度相关的控制信号的改变,所以正向自适应滤波器734可停用。可不必始终验证操作温度是响应于控制信号中的改变。正向自适应滤波器734可周期性停用。正向自适应滤波器734可停用。

因为反向自适应滤波器可使用与正向自适应滤波器734相同的时间延迟,所以不需要倒转正向自适应滤波器734。尽管反向自适应滤波器可确定控制信号的改变量值实现小于或等于阈值操作温度的操作温度,但正向自适应滤波器734可验证控制信号的改变量值使操作温度小于或等于阈值操作温度。

正向自适应滤波器734可为fir滤波器。正向自适应滤波器734可使用lms算法或nlms算法。正向自适应滤波器734可使用通过施加来自互相关矩阵的权重到上文与图3中说明的传感器网络332相关联地描述的传感器网络发现的时间延迟。由正向自适应滤波器734输出的估计操作温度可输入到求和节点756,如由线783表示。在求和节点756,可比较经测量的操作温度与经估计的操作温度。经测量操作温度与经估计操作温度之间的差可反馈到正向自适应滤波器734,如由线785表示。经测量操作温度与经估计操作温度之间的差可输出到计算系统的其它组件,如由线787表示。

可调谐从传感器网络到正向自适应滤波器734的信号的取样速率。如本文使用,“取样速率”是指从传感器网络接收信号之间的时间间隔(例如,操作温度测量之间的时间间隔)。可调谐正向自适应滤波器734的分接头数量。如本文使用,“滤波器的分接头的数量”是指滤波器的顺序。例如,简单的实施方案可包含每滤波器权重一个分接头。更复杂的实施方案可包含由滤波器使用的二十到三十个权重,其可取决于来自传感器网络的信号与控制信号之间的转移函数。分接头的数量可指代先前用于产生滤波器的输出的输入的数量。

正向自适应滤波器734可实施与图2中说明的反向自适应滤波器236和自适应滤波器270相同的自适应算法。例如,正向自适应滤波器734可实施由上文与图4相关联地描述的伪代码定义的自适应算法。例如,假设控制量度为活动跟踪的数量。上文描述的自适应算法伪代码可由正向自适应滤波器734使用下列伪代码调用:

adaptivelms(activ_delay,y_act,wta,ssdactivepred,ssdactiveerr,adie,temp)

基于时间延迟(activ_delay)和权重(wta)(其初始化为一),可确定经估计的操作温度(y_act=y_act+activ_delay[idx]*wta[idx]和ssdactivepred.append(y_act))。时间延迟和权重可累加以产生自适应算法的输出(ssdactivepred)。差(ssdactiveerr)可反馈到正向自适应滤波器734。每一权重可用来自求和节点756的经测量操作温度(temp)与经估计操作温度(y_act)之间的差(ssdactiveerr)与活动跟踪的数量(adie)的相乘来更新。

图8说明根据本发明的若干实施例的一些先前方法与自适应控制架构的图形性能比较。图8中说明的图的横轴为时间,且竖轴为存储器系统(例如,图1中说明的存储器系统104)的带宽。例如,横轴的单位可(若干)秒,且竖轴的单位可为每秒兆位(mb/s)。线880表示根据一些先前方法控制的存储器系统的带宽。线882表示根据本发明的至少一个实施例控制的存储器系统的带宽。

在时间t1,性能模式改变,从而导致阈值操作温度改变。性能模式从初始性能模式改变到与降低功耗相关联的性能模式(例如,低功耗模式)。在图8的实例中,控制量度为活动跟踪的数量。为了降低操作温度使其小于或等于与低功耗模式相关的阈值操作温度,活动跟踪的数量减少。降低活动跟踪的数量降低存储器系统的带宽。

在时间t1,随着活动跟踪的数量减少,线880开始从带宽b0下降。带宽b0可为与初始性能模式相关联的稳态带宽。时间t1之后不久,线80在带宽b1达到稳态。在时间t2,性能模式改变从低功耗模式改变到初始性能模式。从时间t2到时间t3,随着活动跟踪的数量增大,线880从带宽b1上升到带宽b0。注意,从性能模式在时间t2改变时与带宽开始快速改变时存在延迟。此延迟归因于一些先前方法无法对性能模式改变做出快速反应。

在时间t1,随着活动跟踪的数量减少,线882开始从带宽b0下降。时间t1之后不久,线882在带宽b2达到稳态。带宽b2大于由一些先前方法实现的稳态带宽b1。与一些先前方法相比,至少一个实施例不过分控制存储器系统。精确控制活动跟踪的数量使得操作温度小于或等于阈值操作温度,而不牺牲额外带宽(带宽b2与带宽b1之间的差)。存储器系统的带宽可指示存储器系统的功耗。因此,相较于带宽b1更大的带宽b2意味着,至少一个实施例可允许存储器系统在更高功耗速率下操作,同时维持操作温度使其小于或等于阈值操作温度。

在时间t2,性能模式改变从低功耗模式改变到初始性能模式。从时间t2到时间t4,随着活动跟踪的数量增大,线882从带宽b2上升到带宽b0。注意,与一些先前方法相比,从性能模式在时间t2改变时与带宽开始快速改变时存在极少延迟或没有延迟。至少一个实施例可在一些先前方法的大约一半的时间内达到带宽b0(比较时间t3和时间t4)。至少一个实施例可对性能模式改变做出快速反应。由于控制量度的精确控制,至少一个实施例可具有比一些先前方法更少的稳态误差。如本文使用,“稳态误差”是指系统的输入(例如,与特定操作温度相关联的控制信号)与系统的输出(例如,经测量操作温度)之间的差。

图9说明根据本发明的若干实施例的来自自适应控制架构的模拟结果。图986、988和990说明根据本发明的若干实施例的来自自适应算法的误差。在图986的实例中,来自传感器网络的温度信号为输入,且功率为输出。在图988的实例中,经测量操作温度为输入,且经估计操作温度为输出。在图990的实例中,阈值操作温度为输入,且实际操作温度为输出。上文与图4相关联地描述自适应算法。图986、988和990的横轴为时钟周期。自适应算法的输出与来自传感器网络的信号之间存在误差(err)。图986展示存储器系统的估计功率与存储器系统的测量功率之间的功率误差。图988展示经估计操作温度与经测量操作温度之间的操作温度误差。图990展示活动跟踪的经估计数量与经测量操作系统之间的活动跟踪对于操作温度误差。

图992、994和996说明根据本发明的若干实施例的来自自适应算法的控制信号。上文与图4相关联地描述自适应算法。图992、994和996的横轴为时钟周期。图992展示来自正向自适应滤波器(例如图2中说明的正向自适应滤波器234)的经估计操作温度及活动跟踪的数量(控制信号的量值)。在图992的实例中,活动跟踪的数量为输入,且经估计操作温度为输出。图994展示来自反向自适应滤波器(例如图2中说明的反向自适应滤波器236)的活动nand裸片的估计数量及经测量的操作温度。在图994的实例中,活动nand裸片的数量为输入,且经估计操作温度为输出。图996展示来自自适应滤波器(例如图2中说明的自适应滤波器270)的控制信号的改变量值的节流速率。

虽然本文中已说明和描述了特定实施例,但所属领域的一般技术人员应了解,经计算以实现相同结果的布置可替换所展示的特定实施例。本发明期望涵盖本发明的数个实施例的调适或变化。应理解,以上描述已以说明性方式而非限制性方式进行。所属领域的一般技术人员将在审阅以上描述之后就会了解以上实施例及本文中未具体描述的其它实施例的组合。本发明的数个实施例的范围包含其中使用以上结构和方法的其它应用。因此,本发明的数个实施例的范围应参考所附权利要求书以及此类权利要求书所授权的等效物的整个范围来确定。

在前述具体实施方式中,出于使本发明条理化的目的,在单个实施例中将一些特征分组在一起。本发明的此方法并不应被视为反映本发明揭示内容所揭示的实施例意在必须使用比明确陈述于每一权利要求中的特征的更多特征。而是,如所附权利要求书所反映,本发明的标的物在于比单个揭示的实施例的所有的特征更少的特征。因此,所附权利要求书由此并入具体实施方式中,其中每一权利要求独立作为单独的实施例。

再多了解一些
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1