一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

高性能持久存储器的制作方法

2021-10-24 06:38:00 来源:中国专利 TAG:存储器 持久 申请 高性能 本案

高性能持久存储器
1.本案为分案申请。其母案的发明名称为“高性能持久存储器”,申请日为2017年11月24日,申请号为201680030358.6。
技术领域
2.本文所描述的实施例通常涉及电子设备的领域,并且更具体地涉及具有易失性存储器性能的持久存储器解决方案。


背景技术:

3.在不同类型的操作中可能需要计算处理,并且可以取决于特定的操作而选择不同类型的计算机存储器。在某些操作中,除了诸如dram(动态随机存取存储器)之类的易失性存储器之外或者作为其替代物,在针对操作存储器的至少一部分而利用非易失性存储器方面还存在优点。
4.计算系统通常包括易失性和非易失性存储器二者。由于易失性存储器在没有电力的情况下不保留内容,所以当从易失性存储设备移除电力时,易失性存储器的内容不再可用。通常在检测到电力丢失时,就将易失性存储器的内容移动到非易失性存储器。易失性和非易失性存储器类型二者都被提供,因为访问易失性存储器比访问非易失性存储器更快。
5.诸如双列直插存储器模块(dimm)的存储器模块包括多个存储器设备。存储器设备可以包括易失性和非易失性存储器设备。
附图说明
6.这里所描述的实施例在附图中的各图通过示例而非限制的方式图示出,其中相同的附图标号指代相似的元件。
7.图1是具有脱机(off)模块储存器的能量后备混合存储器模块的实施例的图示;图2是nvdimm存储设备的图示;图3是具有脱机模块加强储存器的能量后备混合存储器模块的实施例的图示;图4是包括具有脱机模块加强储存器的能量后备混合存储器模块的系统的实施例的图示;图5是利用nvdimm设备的系统的图示;图6是包括具有脱机设备加强储存器的能量后备混合存储器模块的系统的实施例的图示;图7是根据实施例利用来图示用于恢复操作的过程的流程图;图8是根据实施例的用于图示针对电力丢失情况下的存储器操作的过程的流程图;和图9是包括具有脱机模块储存器的能量后备混合存储器模块的电子装置或系统的实施例的图示。
设备(在本文中也被称为“超级电容器”)是高容量电化学电容器,并且其也可以被称为“超电容器”。在一些实施例中,一个或多个能量源可以可替代地包括可再充电电池或其他可再生能量源、或能量源的组合。
18.在一些实施例中,用户或制造商可以选择由能量后备混合存储器模块100进行电力保护(保存和恢复)的存储器的部分范围。以这种方式,例如在用户或制造商希望利用较小的储存元件而不需要更换混合存储器模块100以匹配储存容量的情况下,脱机模块数据储存器可以具有比存储器110更小的容量。
19.图2是nvdimm设备的图示。如图2中所示的nvdimm 200在存储器模块的一侧上包含dram集成电路215,被图示为nvdimm前侧210,并且包括nand存储器(或其他非易失性存储器)225(其可以包括nand控制器),以及在存储器模块的另一侧上的存储器控制器230(其可以是fpga、现场可编程门阵列、asic、专用集成电路或其他控制器),被图示为nvdimm后侧220。nvdimm还包括到备用电源的连接,诸如提供电力端口的超级电容器连接器250,其被图示为包括两个接地引脚和两个电力(例如12伏)连接器。
20.在操作中,存储器控制器230可以检测电力故障,并且响应于电力故障进行操作以将dram 215的数据内容复制到nand 225。此外,在操作期间对超级电容器电源进行充电,并且旨在提供足够的电力以允许将数据从dram存储器储存到nand储存器。
21.在电力接通事件期间,在mrc(存储器参考代码)对dram进行初始化之后,mrc请求存储器控制器230从nand 225恢复dram内容。bios(基本输入/输出系统)表示由作为持久存储器的nvdimm所占据的系统物理地址(spa)(在e820/uefi获取存储器映射和nvdimm固件接口表(nfit)acpi表中),并通过asl代码将nvdimm表示为nvm(非易失性存储器)设备。os(操作系统)将这些spa范围理解为持久或易失性存储器,并相应地暴露给应用/工作负载。
22.目前可用的nvdimm设备包含在dimm的一侧上的dram设备以及在dimm的另一侧上的nand设备和存储器控制器。nvdimm与超级电容器相连,超级电容器作为dimm电力故障时的临时电源。当系统电力操作失灵时,将dram内容存储在nand中,在包含nvdimm的系统的下一次启动的存储器初始化期间将这些内容恢复到dram。
23.然而,如图2中所图示的装置的问题可以包括:(1)如图2中所图示,nvdimm在前侧210上具有dram集成电路,并且在后侧220上具有nand储存器225和存储器控制器230。因此,由于nand 225和存储器控制器230所占据的空间,降低了设备的总容量,这限制了dram存储器的可用量。
24.(2)存储在nand 225中的数据是存储在dram中的数据。然而,由于信号完整性变化,地址/数据加扰种子在系统的启动之间改变。为此原因,nvdimm通常不提供地址或数据加扰,使用地址/数据加扰禁止模式,这因此会导致存储器中的热点(其中特定存储器位置始终被用于储存)或存储器子系统中的更多错误——如果存储器的某些部分容易出错的话。
25.(3)与可用于较大储存设备的管理相比,nand设备管理通常是初步的,这导致低质量的ras(可靠性、可用性和可服务性)。
26.(4)当dram ic215或nand ic225都失败时,这要求更换整个设备200,从而增加了拥有的成本。
27.(5)关于制造成本,nvdimm解决方案的总体成本约为类似尺寸的dram dimm的成本
的三到四倍。
28.(6)存储在nvdimm 200上的数据通常不受保护,因为在电源故障中数据被简单地从dram 215复制到nand 225,结果,将nvdimm从一个系统移动到另一个系统可能无意中使存储在nand 225上的数据是可访问的。
29.图3是具有脱机模块加强储存器的能量后备混合存储器模块的实施例的图示。在一些实施例中,存储器设备的实施例包括具有如图3中所图示的后备储存介质脱机nvdimm的混合存储器模块300。在一些实施例中,混合存储器模块300包括具有第一组dram集成电路315的前侧310和具有第二组dram集成电路335的后侧320。如所图示,后侧320还包括提供电力端口的超级电容器连接器350和io启动器340。虽然该实施例中的连接器被指定为超级电容器连接器,但是实施例不限于该能量源,并且可以可替代地包括到可再充电电池或其他可再生能量源或能量源组合的连接。
30.在一些实施例中,混合存储器模块的结构允许制造高容量持久存储器以保留数据值而不会妥协容量,因为混合存储器模块上的额外空间可用于在后备存储器是脱机模块情况下的dram。
31.在一些实施例中,如图3中所图示的能量后备元件可以包括在计算系统的每个dimm中,其中系统可以选择是否实现设备的备份功能。因此,根据系统中的实现,每个这样的存储设备可以被用作能量后备的混合存储器模块或用作dram dimm。
32.图4是包括具有脱机模块加强储存器的能量后备混合存储器模块的装置或系统的实施例的图示。如所图示,装置或系统400包括被图示为cpu(中央处理单元)405的一个或多个处理器,其经由ddr(双倍数据速率)链路来与耦合的一个415耦合。混合存储器模块410

415的每一个(hmm1和hmm2,其中hmm是指混合存储器模块)可以是如图3中所图示的混合存储器模块300。
33.hmm1和hmm2模块耦合到储存控制器420,储存控制器420针对在电力故障时在装置400中数据的储存提供控制操作。如所图示,储存控制器420包括多路复用器422和多路复用器控制器,用于一次一个地选择混合存储器模块,以将数据从每个模块储存到脱机模块储存器450。在一些实施例中,储存控制器420可以是数据和电力控制单元的一部分或子系统。
34.在一些实施例中,包括储存控制器420和储存器450的混合存储器模块410

415和脱机模块储存器与备用能量源耦合,备用能量源可以包括但不限于超级电容器子系统(包括一个或多个超级电容器)460,以提供将存储在混合存储器模块410

415上的数据保存到储存器450所需的电力。通过将储存介质从混合存储器模块410

415移动到储存器450,装置400允许多个混合存储器模块共享储存器450的储存容量,这从而能够降低混合存储器模块解决方案的总体成本。
35.在一些实施例中,装置或系统400包括:(1)在每个混合存储器模块410

415上的控制器,用于在电力故障时复制其dram介质的内容,诸如图3中所图示的io启动器340。
36.(2)储存控制器420,其后面具有用作脱机模块储存器的储存介质450。
37.(3)超级电容器子系统460或其他能量源,以在系统电力丢失状况下向混合存储器模块和脱机模块储存器二者提供能量。
38.(4)由多路复用逻辑和排序器组成的加强储存解决方案,其允许多个混合存储器
模块共享储存介质。排序逻辑确保在给定时间只有一个混合存储器模块能够写入储存介质。
39.再次参考图4,在系统电力故障时,经由save_n信号(或其他通知)向系统400上的混合存储器模块410

415上的控制器通知电力故障。在一些实施例中,响应于save_n信号,混合存储器模块控制器进行仲裁以获得对储存控制器的访问以开始针对混合存储器模块的保存操作。排序逻辑一次提供对一个混合存储器模块的访问。混合存储器模块序列的选择可以基于分配给每个模块的优先级,但是实施例不限于优先级排序,并且可以使用其他因素来确定存储器模块单元的排序。在仲裁中成功的混合存储器模块(本例中为hmm1)开始针对设备的保存操作。一旦hmm1完成它的保存,hmm1放弃对多路复用器的访问,允许hmm2赢得它的仲裁。在一些实施例中,超级电容器子系统460向储存控制器420提供足够的电力以允许所有供应的混合存储器模块完成它们的保存操作。在一些实施例中,使用允许储存控制器420将保存的图像与对应的混合存储器模块相关联的元数据来标记每个混合存储器模块保存。在一些实施例中,在平台上电时,混合存储器模块410

415再一次仲裁对储存控制器420的访问,以将其各自保存的图像从储存器460恢复到每个混合存储器模块的dram。
40.虽然上面描述了多个存储器模块进行仲裁以开始保存操作从而将数据推送到储存器,但是实施例不限于这种实现。在其他实施例中,系统可以被实现反而从混合存储器模块拉取数据,其中储存控制向混合存储器模块提供指令来以某个序列从这些模块获得数据。
41.在一些实施例中,系统400可以在完成将数据从混合存储器模块储存到储存器450中时从每个混合存储器模块中移除电力来提供额外的电力效率。例如,在电力故障时,电力由超级电容器460提供到hmm1 410和hmm2 415。如果所选择的序列使得选择hmm1在hmm2之前,则在完成将数据从hmm1储存到储存器450时,从hmm1移除电力,并且然后在完成将数据从hmm2储存到储存器450时从hmm2移除电力。在一些实施例中,通过在电力丢失时将混合存储器模块与任何其它连接进行隔离来提供额外的电力效率。
42.在一些实施例中,可以通过在电力故障时压缩来自每个混合存储器模块的数据来实现电力的额外节省,使得减少将数据备份到储存器所需的时间。
43.图5是利用nvdimm设备的系统的图示。图5图示出了具有带有两个集成存储器控制器(imc)的cpu 505的计算系统500,其具有坐落于imc0 532上的两个nvdimm设备,被图示为nvdimm1 520和nvdimm2 522;和坐落于imc1 530上的两个dram dimm,被图示为dram

dimm1 510和dram

dimm2 512。dram

dimm1和nvdimm 1在通道1上,并且dram

dimm1和nvdimm1在通道2上。还图示了集成io、iio 534、以及与pcie(快速外围组件互连)连接耦合。
44.如进一步所图示,将每个nvdimm附接到超级电容器,其中nvdimm 1 520与超级电容器1 540耦合,并且nvdimm 1 522与超级电容器2 542耦合。在平台上电期间对超级电容器进行充电,并且可以在电力故障时为每个nvdimm供应电力。
45.图6是包括具有脱机模块加强储存器的能量后备混合存储器模块的系统的实施例的图示。在一些实施例中,具有cpu 605的计算系统600包括两个集成存储器控制器(imc),其具有坐落于imc0 632上的两个混合存储器设备,被图示为hmm1 620和hmm2 622;和坐落于imcl 630上的两个dram dimm,被图示为dram

dimm1 610和dram

dimm2 612。dram

dimm1和hmm1位于通道1上,并且dram

dimm2和hmm2位于通道2上。虽然dram

dimm和混合存储器设
备在计算系统600中被不同地实现和处理,但是在一些实施例中,dram

dimm设备代替传统dram设备,也包括诸如图1和图3中所图示的能量后备元件,其中dimm设备的实现可以确定设备被视为易失性存储器还是持久的能量后备存储器。因此,dram

dimm1 610和dram

dimm2 612可以在物理上等同于hmm1 620和hmm2 622。
46.在一些实施例中,hmm1 620和hmm2 622各自与i2c以及诸如到sata多路复用器644的sata(串行ata)链路的串行接口进行耦合,sata多路复用器644与诸如ssd 650的储存元件进行耦合。此外,cpu 605与集成io(iio)634耦合,该集成io(iio)634进一步与pch(平台控制器集线器)660耦合,pch 660进一步与i2c和到sata多路复用器644的sata链路耦合。虽然提供sata链路用于图6中的图示,但是实施例不限于此实现,并且储存接口可以可替代地为pcie(快速外围组件互连),其中pcie可以与cpu 605的iio 634或其他合适的高速串行接口耦合,诸如usb(通用串行总线)3.0

、firewire

或与pch 660、iio 634耦合的其他接口、或与cpu 605耦合的io设备。
47.在一些实施例中,每个hmm 620

622和ssd 650与可以包括但不限于超级电容器子系统的备用能量源耦合,以提供用于在电力故障状况下保存数据的电力,这被图示为hmm1 620、hmm2 622和ssd 650分别与超级电容器640、642和644耦合,其中超级电容器1表示可以包括一个或多个超级电容器(或其他能量源)的备用电力装置或子系统。在一些实施例中,超级电容器1在平台上电期间充电,并且在计算系统600的电力丢失时向每个混合存储器设备和ssd储存器提供备用电力。
48.在一些实施例中,计算系统600提供数据容量和数据持久性,从而使能量后备混合存储器模块能够被用于诸如例如存储器数据库的目的。此外,通过在多个混合存储器模块上提供加强储存解决方案,该系统可以实现降低用于多个混合存储器模块环境的持久存储器解决方案的总体成本。
49.在一些实施例中,包括能量后备存储器的装置或系统600的实施例提供以下内容:(1)用于混合存储器模块620

622的dram内容在系统电力丢失(诸如系统故障或系统掉电)时被备份到ssd 650,并且在平台上电期间恢复回到dram。为了实现这一点,混合存储器模块包含用于dram数据的电力保护的sata(串行ata)接口(或其他串行接口)、i2c接口和超级电容器连接器。sata和i2c接口通过sata多路复用器644来与被图示为ssd 650的电力保护的sata驱动器耦合,所述sata多路复用器644通过i2c接口连接。sata多路复用器644允许将多个混合存储器模块连接到单个sata驱动器,使得可以将驱动器用作所有混合存储器模块的公共储存器。在一些实施例中,多路复用器644还包括允许由主机平台控制器集线器660访问sata驱动器的端口。
50.(2)当平台电力发生故障时,将hmm的dram内容与元数据一起保存到sata驱动器,其中可以一次一个混合存储器模块地顺序实现保存操作。当平台返回上电时,存储器初始化代码或dimm sata控制器从ssd储存器恢复每个混合存储器模块的内容,其中也可以一次一个混合存储器模块地顺序地执行从ssd储存器恢复数据。
51.注意,虽然本文所提供的示例使用sata ssd和i2c多路复用器,但是实施例不限于该特定实现,并且可以包括任何能量后备储存器设备,包括任何点对点、总线或基于网络的储存器。
52.在一些实施例中,装置或系统可以提供优于现有的基于nvdimm的解决方案的以下
优点:(1)更持久的dram容量:传统系统中可用的nvdimm容量由于需要折中大部分dram容量(通常是dram容量的一半,dimm设备一侧上的容量)以在相同的dimm形状因子上容纳nand储存器和存储器控制器而显著地减少。因此,整个os可见存储器容量通常减少一半,导致降低了工作负载性能。在一些实施例中,通过将非易失性储存器移位到模块之外的位置,混合存储器模块上的可用空间更有效地应用于dram。与nvdimm设备相比,重新分区的易失性和非易失性存储器可以有效使得os可见持久存储器大小翻倍,导致改进的工作负载性能。
53.(2)低tco(总体拥有成本):nvdimm解决方案通常花费购买dram的成本的三到四倍。相比之下,实施能量后备持久存储器的实施例的成本是dram的成本加上ssd的成本(假设处理器支持从dram到ssd的电力故障拷贝特征)。大容积ssd的成本显著小于(约十分之一)类似容积的dram的成本。在示例中,实施例中的持久存储器的总体成本可能仅为dram的成本的大约1.2倍(假设针对ssd供应的双倍dram容量)。
54.(3)低服务成本:在nvdimm中,dram和nand设备在同一dimm上。如果任何一个故障/降级,则需要更换整个nvdimm。相比之下,在包括能量后备混合存储器模块的装置或系统的实施例中,dram和储存设备是在装置或系统中的分开的元件,并且因此如果这些元件中的任何一个发生故障或降级,则可以更换故障或降级的设备而与另一个设备无关,从而降低了服务成本/tco。
55.(4)支持数据加扰:数据加扰特征对于降低由于存储器热点引起的信号完整性噪声而言是重要的,其中用地址对从存储器控制器(mc)到dram的数据进行加扰以减少存储器中的热点。对于现有的nvdimm,来自dram设备的数据被存储到nand,并在下一次上电时被恢复。然而,nand控制器通常对mc如何对数据进行加扰不具有可见性。现有的nvdimm可以通过禁用数据加扰来规避这个问题,因此继而失去了数据加扰的益处。
56.相比之下,存储在能量后备混合存储器的实施例中的数据提供了对数据加扰的支持。在一些实施例中,混合存储器模块上的sata接口将内容存储到具有为bios分派的dram区域的sata ssd,以存储诸如dimm交错信息和数据加扰签名之类的元数据。
57.在一些实施例中,当重新启动平台时,存储器初始化代码读取sata ssd内容并确定加扰模式并转换为实际数据并存储到dram。bios还将基于ecc(纠错码)检测未校正的错误,并染毒存在错误的存储器位置。因此,存储在ssd中的数据不受地址/数据加扰特征的影响。因此,与现有的nvdimm解决方案相比,可以实现提供改进的ras的实施例。
58.(5)存储器交错变化:对于nvdimm,如果nvdimm交错变化,那么应用十分难以获得先前的数据。为此原因,通常需要在任何nvdimm位置更改之前备份nvdimm持久数据并恢复数据。在一些实施例中,由于bios从脱机的dimm储存器恢复数据,所以只要存在足够的dram容量,bios就可以重新组装数据而不管新的交错或dram dimm变化。
59.(6)高ras(可靠性、可用性和可服务性):在现有的nvdimm设备中,向nand控制器添加诸如坏块重映射、磨损均衡、死机故障等特征增加了fpga的大小或者需要额外的nand设备,并且从而增加了成本。为此原因,nvdimm通常不提供高ras能力。相比之下,实施例利用标准ssd用于脱机模块储存器,其中ssd通常包含诸如坏块重新映射、磨损均衡、死机故障等的特征。
60.(7)持久数据安全:nvdimm实现通常不提供对存储数据的保护。为此原因,用户能够将nvdimm从一个系统移动到另一个系统,并且然后在没有数据作者提供任何授权的情况下就能够读取数据。在一些实施例中,利用ssd或类似储存器来用于存储持久数据,并且因此可以利用当今在ssd上可用的诸如文件加密之类的安全机制。
61.在一些实施例中,装置或系统的实施例包括以下平台级解决方案,其提供具有持久存储器功能性的dram类似的性能:(1)混合存储器模块每个都包含sata(或其他串行接口)控制器、i2c控制器和超级电容器(或其他能量源)连接器,其中dram内容在平台电力故障时被电力保护。
62.(2)使用超级电容器或其他能量源对sata ssd和sata多路复用器逻辑进行电力保护。
63.(3)混合存储器模块和sata驱动器通过sata多路复用器来连接,这可以通过i2c端口来控制,以切换到特定的混合存储器模块或通过pch sata端口切换到主机。
64.(4)当平台被上电时,bios正常地对包括混合存储器模块的dimm设备进行初始化,并通过与dimm控制器通信来了解哪些dimm包含sata端口。
65.(a)包括sata端口的每个混合存储器模块都默认被编程为不将数据存储到ssd,该功能仅在bios将数据完全恢复到dram之后才能被启用。
66.(5)bios通过i2c发出命令,经由具有i2c控制接口的sata多路复用器将ssd引导到适当的dimm sata接口或到pch。
67.(6)bios读取ssd的内容及其元数据。如果存在dram内容,则bios将内容恢复到适当的dram。
68.(a)bios检查元数据以确定dram大小交错信息,并确定系统物理地址(spa)范围以复制数据。bios检查元数据以确定数据加扰模式,并使用该模式来将数据从ssd恢复到dram。
69.(b)如果禁用加扰,则bios可以请求每个混合存储器模块sata控制器恢复dram数据,或者bios可以恢复数据。
70.(c)bios检查数据的ecc(纠错码),并且如果检测到任何未校正的错误或毒物,则bios可以使用错误注入机制将错误注入未校正的错误或毒物位置。
71.(d)bios检查ssd的健康状况,并为os创建s.m.a.r.t数据,以知晓dimm备份介质的健康状况。
72.(e)如果启用sata安全性,则需要bios首先提供适当的密码短语以访问sata数据。在一些实施例中,可以将密码短语存储在诸如tpm(可信平台模块)的安全容器中以提供附加的安全性。
73.(7)一旦从ssd到dram的数据恢复操作完成,bios就对混合存储器模块进行编程,以将dram内容存储到ssd,并且bios将多路复用器切换到第一混合存储器模块。此过程导致ssd对于os而言是不可见的。
74.(8)在一些实施例中,当多个混合存储器模块共享ssd时,bios可以将为混合存储器模块选择到ssd的存储顺序,并且可以将该顺序与电力故障看门狗定时器一起编程到混合存储器模块。
75.(9)bios向os报告持久存储器范围。
76.(10)在电力故障时,pch接收到电力故障状况并生成smi(系统管理中断)。
77.(11)在一些实施例中,smm(系统管理模式)代码冲刷cpu高速缓存并冲刷imc写入待定队列。
78.(12)在一些实施例中,bios指引pch向混合存储器模块发信号通知电力故障。
79.(13)一旦混合存储器模块接收到电力故障信号,则第一混合存储器模块依次开始将内容存储到ssd。一旦存储完成,它写入sata多路复用器以切换到混合存储器模块的序列中的下一个混合存储器模块。
80.(14)下一个混合存储器模块,一旦这种混合存储器模块检测到它拥有sata端口,就将sata多路复用器切换到其端口并开始保存dram内容。此时,混合存储器模块将存储过程转移到序列中的下一个后续混合存储器模块,以此类推,直到所有混合存储器模块都被处理。
81.图7是根据实施例利用来图示用于恢复操作的过程的流程图。图7示出了具有脱机设备加强储存器的能量后备混合存储器模块的操作中的平台启动流程。在一些实施例中,在平台电力接通700时,读取混合存储器模块的spd(串行存在检测)702,并且对混合存储器模块初始化704。
82.如果在系统中没有提供能量后备和sata支持706,那么将系统启动为正常系统708。否则,如果系统中提供了能量后备和sata(或其他串行接口)支持706(其中系统包括能量后备混合存储器模块),则将i2c多路复用器编程到pch ssd 710。能量后备ssd容量可用性被确定712,其中用于使ssd能够进行读取和写入操作的任何凭证被提交714。此外,分派作为持久性的dram的量被确定716,其中能量后备hmm持久存储器小于或等于能量后备ssd容量的容量718。
83.在一些实施例中,如果能量后备hmm元数据在ssd中不可用720,则创建元数据以指示写入备份数据和进一步信息的位置722。当存在元数据并且验证检查通过时,将数据从该ssd恢复到混合存储器模块724。
84.在一些实施例中,要等待直到一个或多个超级电容器(或其他能量源)被充分充电以支持从混合存储器模块到ssd的dram数据备份728。此外,针对新的备份更新元数据,并且针对备份区域和其他要求对混合存储器模块进行编程730。对能量后备sata驱动器禁用pch可见性732,诸如通过acpi表将易失性/持久存储器映射(指示哪些存储器模块提供持久存储器)呈现给操作系统734,并且启动736操作系统以开始操作。
85.图8是根据实施例的用于图示针对电力丢失情况下的存储器操作的处理的流程图。图8图示出了具有脱机模块加强储存器的能量后备混合存储器模块的系统或装置的实施例的平台电力故障/掉电流程。
86.在一些实施例中,在平台电力故障或平台停机800时,混合存储器模块检测电力丢失(电力故障或平台停机)800,比如通过接收信号来检测电力丢失,并且dimm等待sata端口准备好将数据从混合存储器模块的dram写入脱机模块储存器ssd 802。在一些实施例中,用户或制造商可以指明要被能量后备非易失性存储器进行电力保护(保存和恢复)的部分存储器范围,并且数据的写入可以被限制到此部分存储器范围。在一些实施例中,在平台电源具有足够电力的情况下,可以将pch编程为在电力故障时断言smi,并且在向dram dimm断言adr/电力故障之前允许smm冲刷高速缓存和存储器控制器写入待定队列。
87.在一些实施例中,在启动期间,向每个混合存储器模块提供用于在故障时写入sata驱动器的优先级顺序。在这样的实施例中,具有最高优先级的混合存储器模块首先写入储存器,并且然后通知储存过程何时完成。然后该过程以优先级顺序继续混合存储器模块,直到储存过程完成806。在一些实施例中,在完成对于这种混合存储器模块的储存过程时,移除到每个混合存储器模块的电力。
88.在一些实施例中,hmm sata控制器存储元数据以指示复制操作过程以使恢复软件能够检测故障状况808。
89.在所有混合存储器模块完成到脱机模块储存器的存储操作时,系统进入最终平台断电810。
90.图9是包括具有脱机模块储存器的能量后备混合存储器的电子装置或系统的实施例的图示。在该图示中,未示出与本说明书无关的某些标准和公知的组件。可以对被示出为单独元件的元件进行组合,包括例如在单个芯片上组合多个元件的soc(片上系统)。该装置或系统(通常被称为系统900)可以包括但不限于计算系统。
91.在一些实施例中,系统900可以包括诸如耦合到一个或多个总线或互连以用于处理信息的一个或多个处理器910的处理装置,总线一般被示为总线905。处理器910可以包括一个或多个物理处理器和一个或多个逻辑处理器。在一些实施例中,处理器可以包括一个或多个通用处理器或专用处理器处理器。
92.总线905是用于传输数据的通信装置。总线905为了简化而被图示为单个总线,但是可以表示多个不同的互连或总线,并且到这些互连或总线的组件连接可以不同。图9中所示的总线905是一种抽象概念,其表示通过适当的桥接器、适配器或控制器连接的任何一个或多个单独的物理总线、点对点连接或二者。
93.在一些实施例中,系统900还包括随机存取存储器(ram)或其他动态储存设备或作为用于存储由处理器910执行的信息和指令的主存储器915的元件。主存储器915可以包括但不是限于动态随机存取存储器(dram)。
94.在一些实施例中,除了主存储器915之外或者作为主存储器915的一部分,系统900还包括一个或多个能量后备混合存储器模块,其中这种混合存储器模块可以是如图1和图3中所图示。在一些实施例中,实现混合存储器模块以利用诸如ssd 930之类的脱机模块储存器。在一些实施例中,ssd 930为多个混合存储器模块920中的每一个提供加强储存,例如图4和6中所图示。
95.在一些实施例中,混合存储器模块和ssd 930由能量源925进行电力保护,能量源925可以包括但不限于包括一个或多个超级电容器的超级电容器子系统。在一些实施例中,能量源925在系统900上电时被充电,并且能量源925在系统900的电力故障或停机时提供用于备份存储在混合存储器模块920上的数据的电力。
96.系统900还可以包括只读存储器(rom)935或用于为处理器910存储静态信息和指令的其他静态储存设备。
97.在一些实施例中,系统900包括耦合到总线905的一个或多个发射机或接收机940。在一些实施例中,系统900可以包括用于使用无线发射机、接收机或两者经由无线通信发射和接收数据的诸如偶极或单极天线的一个或多个天线944以及用于经由有线通信发射和接收数据的一个或多个端口942。无线通信包括但不限于wi

fi、bluetooth
tm
、近场通信以及其
他无线通信标准。
98.在一些实施例中,系统900包括用于输入数据的一个或多个输入设备950,包括硬和软按钮、操纵杆、鼠标或其他指示设备、键盘、语音命令系统或手势识别系统。
99.在一些实施例中,系统900包括输出显示器955,其中显示器955可以包括液晶显示器(lcd)或用于向用户显示信息或内容的任何其他显示技术。在一些环境中,显示器955可以包括也用作输入设备950的至少一部分的触摸屏。输出显示器955还可以包括音频输出,其包括一个或多个扬声器、音频输出插孔或其他音频、以及向用户的其他输出。
100.系统900还可以包括电池或其他电源960,其可以包括太阳能电池、燃料电池、充电电容器、近场感应耦合或用于在系统900中提供或生成电力的其它系统或装置。由电源960提供的电力可以根据需要分发到系统900的元件。在一些实施例中,系统900的电力结构还包括一个或多个超级电容器925。
101.在上面的描述中,为了解释的目的,阐述了许多具体细节以便提供对所描述的实施例的透彻理解。然而,对于本领域技术人员显而易见的是,可以在没有这些具体细节中的一些的情况下对实施例进行实践。在其他情形下,公知的结构和设备以框图的形式示出。在所图示的组件之间可以存在中间结构。本文描述或图示出的组件可以具有未图示出或描述的附加输入或输出。
102.各种实施例可以包括各种过程。 这些过程可以由硬件组件执行,或者可以体现在计算机程序或机器可执行指令中,该指令可用于使通用或专用处理器或用指令编程的逻辑电路执行该过程。可替代地,可以通过硬件和软件的组合来执行该过程。
103.可以将各种实施例的各部分提供为计算机程序产品,其可以包括其上存储有计算机程序指令的计算机可读介质,其可以用于对计算机(或其他电子设备)进行编程以由一个或多个处理器执行从而执行根据某些实施例的过程。计算机可读介质可以包括但不限于磁盘、光盘、光盘只读存储器(cd

rom)和磁光盘、只读存储器(rom)、随机存取存储器(ram)、可擦除可编程只读存储器(eprom)、电可擦除可编程只读存储器(eeprom)、磁盘或光卡、闪存或适用于存储电子指令的其他类型的计算机可读介质。此外,实施例也可以作为计算机程序产品进行下载,其中该程序可以从远程计算机传送到请求计算机。
104.许多方法以其最基本的形式进行描述,但是可以在不脱离本实施例的基本范围的情况下从任何方法删除或添加过程,并且可以从任何所描述的消息中添加或减少信息。对于本领域技术人员显而易见的是,可以进行许多进一步的修改和适配。提供特定实施例不是限制概念而是为了说明它。实施例的范围不是由上面所提供的具体示例来确定,而仅由下列权利要求来确定。
105.如果说元件“a”耦合到元件“b”或与元件“b”耦合,则元件a可以直接耦合到元件b,或者通过例如元件c而间接耦合。当说明书或权利要求书声称组件、特征、结构、过程或特性a“导致”组件、特征、结构、过程或特性b,这意味着“a”至少是“b”的部分原因,但也可能存在有助于导致“b”的至少另一个组件、特征、结构、过程或特性。如果说明书指出“可以”、“可能”或“或许”包括组件、特征、结构、过程或特性,则不需要包括该特定组件、特征、结构、过程或特性。如果说明书或权利要求涉及“一”或“一个”元件,则这并不意味着仅存在一个所描述的元件。
106.实施例是实现或示例。说明书中对“实施例”、“一实施例”、“一个实施例”,“一些实
施例”或“其他实施例”的引用意味着结合实施例描述的特定特征、结构或特性包括在至少一些实施例中,但是不一定包括在所有实施例中。“实施例”、“一实施例”,“一个实施例”或“一些实施例”的各种出现不一定全部指代相同的实施例。应当理解,在示例性实施例的前述描述中,为了简化本公开和帮助理解各种新颖方面中的一个或多个的目的,各种特征有时在单个实施例、附图或其描述中被归组在一起。然而,公开的该方法不应被解释为反映所要求保护的实施例需要比每个权利要求中明确叙述的特征更多的特征的意图。相反,如以下权利要求所反映的那样,新颖方面在于单个前述公开实施例的小于所有特征。因此,权利要求特此被明确地并入本说明书中,其中每个权利要求独自地作为单独的实施例。
107.在一些实施例中,存储器设备包括安装在电路板上的多个易失性存储器芯片;控制器,其提供用于在电力丢失状况下将所述多个易失性存储器芯片的内容备份到与所述存储器模块分离的非易失性储存设备。
108.在一些实施例中,所述电路板包括第一侧和第二侧,并且其中所述多个存储器芯片包括安装在所述电路板的第一侧中的第一组存储器芯片以及安装在所述电路板的第二侧中的第二组存储器芯片。
109.在一些实施例中,到所述备用能量源的连接被并入第一连接器中。
110.在一些实施例中,到所述备用能量源的连接包括到一个或多个超级电容器的连接。
111.在一些实施例中,所述存储器模块是双列直插存储器模块(dimm)。
112.在一些实施例中,备份所述多个存储器芯片的内容包括基于设置来将要备份的内容限制到部分存储器范围。
113.在一些实施例中,系统包括用于处理数据的处理器;用于发射数据的天线;多个存储器模块,每个存储器模块包括动态随机存取存储器(dram)和用于控制所述dram的内容的备份的控制器;数据储存设备,用于存储针对所述多个存储器模块中的至少第一组存储器模块的数据;储存控制器,在针对所述系统的电力丢失状况下针对在所述数据储存设备中储存所述存储器模块的数据提供控制操作;以及备用能量源,用于为所述第一组存储器模块、所述数据储存设备和所述储存控制器中的每一个提供电力。
114.在一些实施例中,所述备用能量源是包括一个或多个超级电容器的超级电容器子系统。
115.在一些实施例中,所述数据储存设备是ssd。
116.在一些实施例中,所述储存控制器包括用于选择所述第一组存储器模块之一的多路复用器。
117.在一些实施例中,所述多个存储器模块包括被实现为持久存储器的所述第一组存储器模块和被实现为易失性存储器的第二组存储器模块。
118.在一些实施例中,针对将所述存储器模块的数据储存在所述数据储存设备中而提供控制操作的所述储存控制器包括用于基于设置而将数据储存限制到部分存储器范围的所述储存控制。
119.在一些实施例中,一种方法包括检测计算系统中的电力丢失,所述计算系统包括多个存储器模块;将能量从备用能量源施加到所述多个存储器模块、储存控制器和数据储存设备;以及将数据从多个存储器模块中的每一个备份到所述数据储存设备,其中备份所
述数据包括所述储存控制器按序选择所述多个存储器模块,以储存来自所述多个存储器模块中的每一个的数据。
120.在一些实施例中,该方法还包括在所述计算系统上电时将所述数据从所述数据储存设备恢复到所述多个存储器模块中的每一个。
121.在一些实施例中,从所述多个存储器模块中的每一个备份所述数据包括存储关于所述数据储存设备中的每个存储器模块的数据备份的元数据。
122.在一些实施例中,按序选择所述多个存储器模块包括根据针对每个存储器模块的优先级来选择所述多个存储器模块。
123.在一些实施例中,该方法还包括在从每个存储器模块的数据备份完成时从所述多个存储器模块中的每一个中移除所述备用能量源的能量。
124.在一些实施例中,将数据从多个存储器模块中的每一个备份到所述数据储存设备包括基于设置来备份来自多个存储器模块的部分范围的数据。
125.在一些实施例中,一种在其上存储有表示指令序列的数据的非瞬时计算机可读储存介质,所述指令序列在由处理器执行时使得处理器执行操作,所述操作包括:检测计算系统中的电力丢失,所述计算系统包括多个存储器模块;将能量从备用能量源施加到所述多个存储器模块、储存控制器和数据储存设备;以及将数据从多个存储器模块中的每一个备份到所述数据储存设备,其中备份所述数据包括所述储存控制器按序选择所述多个存储器模块,以储存来自所述多个存储器模块中的每一个的数据。
126.在一些实施例中,介质还包括用于在所述计算系统上电时将所述数据从所述数据储存设备恢复到所述多个存储器模块中的每一个的指令。
127.在一些实施例中,从所述多个存储器模块中的每一个备份所述数据包括存储关于所述数据储存设备中的每个存储器模块的数据备份的元数据。
128.在一些实施例中,按序选择所述多个存储器模块包括根据针对每个存储器模块的优先级来选择所述多个存储器模块。
129.在一些实施例中,介质还包括在从每个存储器模块备份数据完成时从所述多个存储器模块中的每一个移除所述备用能量源的能量的指令。
130.在一些实施例中,将数据从多个存储器模块中的每一个备份到所述数据储存设备包括基于设置来备份来自多个存储器模块的部分范围的数据。
131.在一些实施例中,装置包括:用于检测计算系统中的电力丢失的装置,所述计算系统包括多个存储器模块;用于将能量从备用能量源施加到所述多个存储器模块、储存控制器和数据储存设备的装置;以及用于将数据从多个存储器模块中的每一个备份到所述数据储存设备的装置,其中用于备份所述数据的装置包括用于按序选择所述多个存储器模块以用于储存来自所述多个存储器模块的每一个的数据的装置。
132.在一些实施例中,该装置还包括用于在所述计算系统上电时将所述数据从所述数据储存设备恢复到所述多个存储器模块中的每一个的装置。
133.在一些实施例中,用于从所述多个存储器模块中的每一个备份所述数据的装置包括用于存储关于所述数据储存设备中的每个存储器模块的数据备份的元数据的装置。
134.在一些实施例中,用于按序选择所述多个存储器模块的装置包括用于根据针对每个存储器模块的优先级来选择所述多个存储器模块的装置。
135.在一些实施例中,装置还包括用于在从每个存储器模块备份数据完成时从所述多个存储器模块中的每一个移除所述备用能量源的能量的装置。
136.在一些实施例中,用于将数据从多个存储器模块中的每一个备份到所述数据储存设备的装置包括用于基于设置来备份来自所述多个存储器模块中的部分范围的数据的装置。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜