具有非易失性逻辑存储器的处理设备的通过功率损耗硬件方法的计算

文档序号:34035 发布日期:2021-09-24 浏览:47次 >En<

阅读说明:本技术 具有非易失性逻辑存储器的处理设备的通过功率损耗硬件方法的计算 (Computation by power-loss hardware method for processing device with non-volatile logic memory ) 是由 M·茨韦格 S·C·巴特林 S·汉纳 于 2016-12-28 设计创作,主要内容包括:本公开涉及具有非易失性逻辑存储器的处理设备的通过功率损耗硬件方法的计算。计算设备装置(100)促进深度低功率模式的使用,其包括响应于进入低功率模式,通过包括触发将来自设备(100)的易失性存储元件(110、125)的数据存储在非易失性存储器(115)中的硬件实施的过程来使设备(100)的CPU(105)断电。基于硬件的功率管理单元(140)控制包括中断CPU(105)的正常处理顺序并且触发将数据存储在非易失性存储器(115)中的过程。响应于唤醒事件,在执行用于CPU(105)从低功率模式的唤醒过程之前,触发设备(100)以将存储在非易失性存储器(115)中的数据恢复到易失性存储器(110,125)。设备(100)包括功率存储元件(130)诸如电容器,所述功率存储元件(130)保持充足的能量以在进入低功率模式之前完成非易失性数据存储任务。(The present disclosure relates to computation by a power-consuming hardware method for a processing device having non-volatile logic memory. The computing device apparatus (100) facilitates use of a deep low power mode that includes powering down a CPU (105) of the device (100) in response to entering a low power mode by a hardware-implemented process that includes triggering storage of data from volatile storage elements (110, 125) of the device (100) in non-volatile memory (115). The hardware-based power management unit (140) controls a process that includes interrupting the normal processing sequence of the CPU (105) and triggering the storage of data in the non-volatile memory (115). In response to a wake event, the device (100) is triggered to restore data stored in the non-volatile memory (115) to the volatile memory (110, 125) prior to performing a wake process for the CPU (105) from the low power mode. The device (100) includes a power storage element (130), such as a capacitor, the power storage element (130) retaining sufficient energy to complete non-volatile data storage tasks prior to entering the low power mode.)

具有非易失性逻辑存储器的处理设备的通过功率损耗硬件方 法的计算

本申请是申请日为2016年12月28日的名称为“具有非易失性逻辑存储器的处理设备的通过功率损耗硬件方法的计算”的中国专利申请201611250636.7的分案申请。

相关申请

本申请要求2015年12月29日提交的美国临时专利申请号62/272,473的权益,该申请的内容通过引用以其整体并入本文。

技术领域

本发明总体涉及具有非易失性存储器的处理设备,并且特别涉及用于此类处理设备的功率损耗操作。

背景技术

电子设备持续面对性能压力,所述性能压力包括提供增加的计算能力和提供变化的控制性能。该性能压力还包括需要不断增加的能力以延长电池寿命或者总体提高计算设备的操作的功率效率。因此,各种类型的计算设备包括允许给定设备使用较少功率的进入低功率模式的不同方式。低功率模式通常包括停止各种特征的使用或者使用于设备的某些外围设备掉电。

最低的低功率模式包括实际上从设备的中央处理单元(“CPU”)去除功率。然而,进入最低功率模式通常导致此类设备不保持CPU的状态。因此,设备在唤醒时必须被复位,以恢复CPU和相关外围设备的操作状态。在此类设备上运行的应用程序的程序员被迫处置该复位条件,并且手动地将应用程序的状态恢复到在设备进入到深度低功率模式(即,CPU的掉电)之前的应用程序的状态。当更复杂的软件(此类软件包括图形显示应用程序、具有复杂协议栈的射频通信)被用于嵌入式系统或实时操作系统时,尤其是如此。此类应用程序在设备启动时可能需要几千个CPU周期以在预期任务开始之前初始化软件变量。在一个示例中,运行C-Init和User-Init过程(分别用于CPU和用户应用程序的初始化过程)可能分别需要多达101毫秒和298微秒。除了时间延迟之外,该重新启动过程还对可适用的电池资源进行进一步耗散。这对于使用此类计算设备或处理设备的客户经受可中断电源和/或使用深度低功率模式是痛苦的过程。

发明内容

一般来说,依照这些各种实施例,计算设备装置促进低功率模式的使用,其包括响应于进入低功率模式,通过包括触发将来自设备的易失性存储元件的数据(诸如各种状态信息)存储在非易失性存储器中的硬件实施的过程来使设备的CPU断电。基于硬件的功率管理单元被配置为控制包括中断CPU的正常处理顺序并且触发将数据存储在非易失性存储器中的过程。响应于唤醒事件,在执行用于CPU从低功率模式的唤醒过程之前,触发设备以将存储在非易失性存储器中的数据恢复到易失性存储器。设备包括功率存储元件诸如电容器,所述功率存储元件保持充足的能量以在进入低功率模式之前完成非易失性数据存储任务。可选地,设备的功率管理单元被配置为防止设备启动,除非在能量存储单元上存在足够的能量以完成往返恢复和保存操作。

如此配置,在从深度低功率模式唤醒期间设备不需要执行CPU的完全复位。相反,CPU和相关联的外围设备的稳定操作状态参数容易从非易失性存储装置获得并恢复,该非易失性存储装置能够存储此类信息而不消耗功率。此外,硬件实施方式可以被配置为在所施加的足以保证CPU的和/或相关联的外围设备的状态的存储的足够的功率的可用性(即使在总功率损耗事件中)的功率水平下触发存储过程。另外,在状态存储过程期间可以选择性地忽略并不存储在突然掉电事件期间已知为易破坏的状态信息,从而仅允许有限的唤醒过程,所述有限的唤醒过程比用于CPU的完全唤醒例程更快且消耗更少的功率。通过研究以下的描述和附图,这些和其他益处将变得显而易见。

附图简述

图1是如根据本发明的各种实施例配置的示例计算设备的框图;

图2是如根据本发明的各种实施例配置的具有与易失性存储元件相邻设置的NVL存储器的示例计算设备的框图;

图3是根据如根据本发明的各种实施例配置的可用功率示出计算设备的不同操作状态的图;

图4是将现有技术方法的启动、低功率事件和唤醒周期与如根据本发明的各种实施例配置的计算设备的启动、低功率事件和唤醒周期进行比较的图;

图5是如根据本发明的各种实施例配置的另一个示例计算设备的框图;

图6是如根据本发明的各种实施例配置的计算设备的示例操作方法的流程图。

本领域技术人员将认识到,附图中的元件为了简单和清楚被示出并且不一定按比例绘制。例如,附图中的一些元件的尺寸和/或相对位置可以相对于其他元件被扩大,以有助于提高对本发明的各种实施例的理解。另外,通常未描绘在商业上可行的实施例中有用或必要的普通但很好理解的元件,以便促进对这些各种实施例的较少遮挡的观察。将进一步理解,可以以特定的发生顺序描述或描绘某些动作和/或步骤,同时本领域技术人员将理解,关于序列的此类特殊性实际上不是必需的。还将理解,除非本文另外阐述的不同的特定含义,本文中使用的术语和表达具有如由以上阐述的技术领域中的技术人员赋予此类术语和表达的普通技术含义。

具体实施方式

现在转到附图,尤其是图1,现在将描述与这些教导中的许多教导兼容的示例计算设备装置100。计算设备100包括中央处理单元(“CPU”)105、第一非易失性存储器107、易失性通用和状态寄存器存储器110、第二非易失性存储器115和多个外围设备或设备模块120。第一非易失性存储器107被连接以存储软件相关的信息诸如程序和可变数据。存储器110和配置寄存器125是易失性存储元件,该易失性存储元件被配置用于存储用于计算设备100或与计算设备100相关联的外围设备120的当前活动(active)设置的配置简档数据。存储用于CPU 105的数据的存储器110可以嵌入在CPU 105内,或者存储器110可以与CPU 105分离并且与CPU 105相关联。能量存储单元130被连接以向计算设备装置100提供功率。通常,能量存储单元130是电容器,尽管可以使用其他合适的设备。功率管理单元140被配置为检测CPU105的多个可用功率水平,并且被配置为实现对CPU 105接通功率或切断功率。这些元件中的每个元件在本领域中是单独已知的,使得没有必要进行进一步的描述。

第二非易失性存储器115被配置为存储硬件(逻辑)状态信息。该存储器115是非易失性子系统150的一部分,该非易失性子系统150包括非易失性控制器151,所述非易失性控制器151被配置为控制非易失性存储器115,并且直接访问易失性存储元件110、125,所述易失性存储元件110、125被嵌入在中央处理单元中,或者与中央处理单元或者一个或多个外围设备中的一个或多个相关联。NVL存储器115本身可以是闪存型存储器、基于状态保留技术的铁磁体随机存取存储器(“FRAM”),所述铁磁体随机存取存储器(“FRAM”)将FRAM存储器的特性与当前数据保留方法或具有类似特征的其它技术组合,诸如自旋力矩(spin-torque)磁阻随机存取存储器(“MRAM”)或电阻式存取存储器(“RRAM”)。此类存储器技术在本领域中是已知的并且不需要进一步描述;参见,例如,关于FRAM美国专利申请公开号2014/0075088,该专利申请通过引用以其整体并入本文。通常,非易失性存储器115将具有1010或更高的高写入周期耐久性(endurance),以能够在正常使用期间为设备100的预期周期提供充足的保存期限。

根据特定的实施方式,NVL子系统150可以包括各种方面中的任何方面。此类系统通常包括NVL时钟152。可选地,输入多路复用器154和输出多路复用器156控制单独的易失性存储元件125、110到一个NVL阵列115的单独的一行或多行的连接。在此类实施方式中,与系统总线165分离的专用总线160将(多个)非易失性逻辑阵列115连接到配置寄存器125和存储器110。专用总线160允许直接连接到配置寄存器125和存储器110以在NVL子系统150的控制下操作。类似地,可以实施另一个分离总线167以将配置寄存器125和存储器110直接连接到输入多路复用器154,从而连接到(多个)NVL阵列115。因此,数据从易失性存储装置到NVL存储装置的传输可以在NVL子系统的硬件控制下被完成。

在图2所示的另一个方法中,分离NVL阵列215、分离NVL阵列216、分离NVL阵列217被设置物理上靠近对应的易失性存储元件(诸如触发器组)。在示出的示例中,触发器易失性存储元件225和触发器易失性存储元件227、触发器易失性存储元件231和触发器易失性存储元件233、触发器易失性存储元件235和触发器易失性存储元件237被布置在对应于特定外围设备或CPU子系统的触发器云210、触发器云220、触发器云230中。NVL控制器251控制阵列215、阵列216、阵列217中的每个的功能,以存储来自它们各自相关联的触发器的数据并且将数据恢复到它们各自相关联的触发器。

再次转到图1,功率管理单元140被配置为中断CPU 105的正常处理顺序以实现使CPU 105进入低功率模式。响应于检测到由功率管理单元140由于功率损耗情况的检测而发起或由CPU 105主动发起的功率损耗事件,可以触发进入低功率模式以节省能量。因此,响应于功率损耗事件或为功率节省简单地肯定进入低功率模式,功率管理单元140能够发起该过程。

能量存储单元130被配置为在从计算设备装置100去除正常操作功率之后保持足够的能量以操作计算设备装置100。响应于进入低功率模式,功率管理单元140进而使用存储在能量存储设备130中的能量触发非易失性存储器控制器151,以将存储在易失性存储元件110、易失性存储元件125中的数据存储在非易失性存储器115中。在数据被保存在非易失性存储器115中之后,作为进入低功率模式的一部分,功率管理单元140实现切断到至少CPU105的供电。可选地,功率管理单元140被配置为防止计算设备装置100的启动,除非能量存储单元130上存在足够的能量以完成往返恢复和保存操作以确保设备的稳定性。可以参考图3所示的示例实施方式理解此类方法的一个优点。

图3示出在各种操作条件的过程中设备可用的功率量。该示例的设备使用电源电压监控器(SVS)操作,电源电压监控器(SVS)指示可用功率何时在特定范围内。使用标记VSVS-ON、VSVM和VSVS-OFF示出可用功率,VSVS-OFF示出相对于设备的操作的功率的截止值。这里,VSVS-ON表示正常操作的设备的典型正常功率水平,例如2.5伏。VSVM表示可用的最小功率水平,例如2.2伏,使得如果断开外部功率,则能量存储单元130保持充足的功率以完成到NVL存储器115的数据存储操作。VSVS-OFF表示允许在进入低功率模式期间操作的最小功率中的截止,例如,1.8伏。在操作中,功率管理单元140将使用已知的方法诸如外部电源上的模拟比较器来监测可用功率。如果可用功率下降到VSVM水平以下,则功率管理单元140中断CPU105的操作(中断服务例程ISR)以开始进入低功率模式,进入低功率模式包括将数据从易失性存储元件110和易失性存储元件125保存到NVL存储器115。在典型的实施方式中,中断和数据保存操作仅花费大约100微秒,所以存储在能量存储单元130中的能量的量不需要是大的。也就是说,能量存储单元130的尺寸可以被定制为特定的设备设计,由此在预期用于进入低功率模式的更加耗费功率的过程的情况下,可以使用更大的能量存储装置。

再次参考图1,响应于在功率损耗的事件下检测到功率的恢复,或响应于检测到当作为功率节省策略的一部分进入低功率模式时的唤醒请求,退出低功率模式。响应于检测到计算设备装置100的功率恢复或来自CPU 105的断电状态的唤醒请求,在执行用于CPU105从低功率模式的唤醒过程之前,功率管理单元140触发非易失性存储器控制器151以将数据从非易失性存储器115恢复到易失性存储元件110、易失性存储元件125。

在图3中示出此类唤醒过程,其中在当可用功率下降到VSVS-OFF水平以下时完成NVL保存操作之后,功率返回到VSVS-ON水平。在该示例中,该水平是完成往返恢复和存储操作所需要的最小功率。如图3所示,当可用功率达到VSVS-ON水平时,功率管理单元140触发将数据从NVL存储器115恢复到相应的易失性存储元件,并且用户应用程序从执行ISR之前的状态是连续的。假设当恢复过程开始时断开功率,在恢复和应用程序执行过程之后的可用功率大约是VSVM水平,在重新进入低功率模式期间VSVM水平触发另一个NVL存储操作。如此配置,因为用于重新启动所需的设备状态数据肯定被重新保存并且不会由于在重新启动设备后功率的立即损耗而被丢失,所以提高了设备的整体稳定性。

作为唤醒过程的一部分,CPU 105和功率管理单元被配置为响应于检测到功率恢复或唤醒请求而不自动触发冷启动初始化过程的执行。通过使用用于自动地恢复来自NVL存储器115的数据的硬件配置,计算设备可以通过执行冷启动处理被置于准备用于更快和更有效地执行加载应用程序的状态,该冷启动处理包括例如C-Init和用户-Init过程。

在图4的示例中示出通过应用这些概念获得的效率。在用于设备及其(多个)应用程序的初始启动序列(C-启动)和初始化序列之后,设备的(多个)应用程序正常运行。在功率损耗的情况下,能量存储单元提供充足的功率以执行作为进入对应的低功率模式的一部分的描述的NVL保存。当功率再次可用时,替代如现有技术过程中所示的重新运行启动序列和初始化序列,执行NVL恢复过程,随后是“内务处理”过程,这些过程与现有技术的上电过程相比在更短的时间量内完成。在图4所示的示例中,当在现有技术设备仍然完成其启动序列的时间点处使用NVL方法时,设备的应用程序能够开始,导致显着的时间节省和功率节省。进一步的优点被示出:因为相对短的唤醒过程,所以使用NVL方法的设备比现有技术设备更快地准备好用于另一个功率损耗事件。因此,描述的方法减少在启动序列的关键部分期间功率损耗的可能性,这进而提供设备操作的提高的整体稳定性。

再次参考图1,在进入低功率模式期间存储在NVL存储器115中的数据表示CPU 105或者一个或多个外围设备120中的一个或多个的状态。例如,NVL存储器控制器151被配置为通过存储CPU 105的程序计数器、堆栈指针、状况寄存器、通用寄存器或其它关键状态信息中的一个或多个来实现将CPU105的状态存储在NVL存储器115中。类似地,NVL存储器控制器151被配置为通过存储外围配置寄存器、外围状态寄存器、外围状况寄存器、外围数据缓冲器和其它关键外围状态信息中的一个或多个来实现将与CPU 105相关联的一个或多个外围设备120的状态存储在NVL存储器115中,所述其它关键外围状态信息可以被存储在与外围设备120相关联的活动设置配置寄存器125中。在每次系统复位或上电复位后,状态的静态图像可以被恢复,使得可以重新获得稳定和可重复的机器状态。

在已知存储在易失性存储装置110和易失性存储装置125中的某些数据在重新启动操作期间是不可靠的或无用的情况下,可以不以各种方法对此类数据进行存储。例如,非易失性存储器控制器可以被配置为响应于进入低功率模式,不存储用于CPU 105的总线接口状态信息、串行通信模块信息、状态机信息或流水线寄存器信息中的任何一个或组合。如果到深度低功率模式的转换来自第一低功率模式,其中这些方面中的各个方面已经处于空闲模式,则不需要此类信息。在上面提到的“内务处理”过程期间此类参数可以被复位,这类似于从中间低功率模式的典型唤醒以使这些有限参数复位。因为在有限再启动期间存在经受复位的相对少数量的此类参数,所以唤醒过程保持更短的持续时间,如图4所示。

转到图5,将讨论用于所描述的过程的系统的类型和交互的一个示例实施方式。这里,CPU 505以至少部分地由NVL控制器551控制的状态机包装器(wrapper)(在这里被示为硬件实施的状态机)的形式与功率管理单元540交互。高级外围总线(APB)连接CPU 505和功率管理单元以及NVL控制和状况寄存器(CSR)541。CPU 505进一步被配置为从NVL控制器551接收不可屏蔽的中断(NMI)请求信号以在进入低功率模式期间中断CPU的正常过程,诸如响应于功率损耗事件的检测。复位控制模块542与NVL控制器551交互以提供系统复位信号。停用(shut down)控制模块543从CPU 505接收触发信号并且响应于CPU的触发信号的接收与NVL控制器551交互以触发到低功率模式的转换。NVL控制器551控制包括NVL阵列556的NVL子系统555,以控制在转换到低功率模式期间信息从易失性存储元件到NVL阵列556的自动保存,并且在唤醒时将该信息恢复回到易失性存储元件。振荡器570和时钟分频器575为该系统提供各种时钟信号。如此配置,基于硬件的状态机控制状态机信息的存储和恢复,以从低功率模式提供提高的唤醒时间。

图6根据这些教导示出用于设备的操作的一个示例方法。具有CPU和外围设备的计算设备在活动应用程序步骤605处以正常操作模式操作。如果设备新近被启动,则设备将在复位条件610触发启动代码615以完成冷启动、初始化设备的C-Init 620以及初始化设备的应用程序的用户-Init过程625之后到达该活动应用程序步骤605。在另一种方法中,看门狗(watch dog)过程630可以触发C-Init 620和随后过程。

具有正常操作的活动应用程序605的设备使用包括功率管理单元的计算设备的硬件来检测用于处理设备的低功率事件。如图6所示,低功率事件可以由功率管理单元由于经由步骤635检测到功率损耗情况而发起,或者由中央处理单元经由活动中断640以节省能量而发起。在任一种情况下,响应于检测到低功率事件,设备使用存储在能量存储设备中的用于计算设备的能量来控制进入第一低功率模式645。在该示例中,在进入低功率模式645之后,设备可以转换到深度低功率模式。该转换包括在NVL保存步骤650处触发非易失性存储器控制器以将存储在易失性存储元件中的数据存储在非易失性存储器中,所述非易失性存储器直接物理访问易失性存储元件。在保存数据之后,在步骤655切断到至少CPU的供电,完成设备转换到深度低功率模式,即NVL低功率模式或功率损耗状态660。

在深度低功率模式状态660期间,功率管理单元检测计算设备装置在步骤665超过欠电压(brownout)水平的功率恢复,或检测来自中央计算单元的断电状态的唤醒请求。响应于检测到功率恢复或唤醒请求,在670上触发低压差稳压器,并且非易失性存储器控制器被触发以将数据从非易失性存储器恢复675到易失性存储元件。通过恢复的状态数据,设备回到低功率模式680,从所述低功率模式可以有效地执行用于中央处理单元的随后的唤醒过程685。唤醒过程685包括与典型的先前冷启动唤醒过程相比的最小清除操作,其中该最小清除操作通常针对不稳定的变量,该不稳定的变量在NVL存储器中的存储不会有助于设备的稳定操作。

如此配置,非易失性逻辑的该实施方式允许计算系统的构造,即,即使电源被中断,计算系统在其寿命中可以仅经历一次初始化周期。在进入深度低功率模式之前,当设备处于低功率模式时,可以保存设备状态(CPU和外围设备)。从在设备上操作的软件观点来看,下一个功率周期将看起来像来自低功率模式的简单唤醒,而不像设备启动,从而节约功率和时间。在低功率模式期间执行该过程的附加优点包括:因为系统不活动并且所有时钟被停止(固定状态),所以该过程可以使用已知和成熟的方法进入和退出低功率模式。此外,现有的软件支持当今的低功率模式操作,使得不需要学习新的概念以进行实施。而且,定义的状态允许不保存来自所有数据存储元件的所有数据,所有数据存储元件为例如,所有触发器(区域、功率、唤醒时间保存)。例如,总线接口是空闲的,使得不需要保存空闲状态,串行通信被停止,使得不需要保存串行器数据,状态机是空闲的,使得不需要保存空闲状态,在CPU和外围设备中的流水线寄存器被清空,因为鉴于用于存储该信息的单独的非易失性存储装置保存不被需要,并且经由低功率模式的受控停止/开启允许用于深度低功率模式NVL保存和恢复过程的干净进入和退出的软件交互。

本领域技术人员将认识到,在不背离本发明的范围的情况下,可以作出关于上述实施例的各种修改、改变和组合,并且此类修改、改变和组合被视为在本发明概念的范围内。

15页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:利用深度学习调整计算任务CPU频率的大型集群节能方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!