存储器管理的制作方法

文档序号:10697579阅读:345来源:国知局
存储器管理的制作方法【专利摘要】本公开涉及存储器管理。数据处理系统4包括存储有映射数据条目10的转换后备缓冲器6,该映射数据条目10指示不同物理地址区域的虚拟到物理地址映射。耦合至转换后备缓冲器6的提示生成器20依赖于转换后备缓冲器6之内存储的映射数据条目来生成提示数据。提示生成器20从转换后备缓冲器6追踪映射数据条目的加载和映射数据条目的回收。提示数据被提供至存储器控制器8,该存储器控制器8控制与相应的不同物理地址区域相对应的数据是如何被存储在异构存储器系统之内的,例如,存储不同区域的存储器的不同部分的功率状态,哪一类型的存储器被用来存储不同区域。【专利说明】存储器管理
技术领域
[0001]本公开涉及数据处理系统领域。更具体地,本公开涉及存储器系统的控制。【
背景技术
】[0002]已知提供了生成虚拟地址的数据处理系统,其中虚拟地址被转换为物理地址,这些物理地址然后被用来寻址存储器系统。在这样的系统之内,已知提供了转换后备缓冲器(TLB),该转换后备缓冲器在以下的可能性下存储最近使用的用于执行这样的虚拟到物理地址转换的转换指定数据:在另外的转换将要求相同转换指定数据、并且该转换指定数据可以被从转换后备缓冲器提供而不是要求在描述整个存储器地址空间的虚拟到物理地址映射的一组页表之内进行页表查找(pagetablewalk)。【
发明内容】[0003]从本公开的一个方面来看提供了用于处理数据的装置,包括:[0004]映射电路,该映射电路存储相应地指示虚拟地址空间之内的虚拟地址区域与物理地址空间之内的物理地址区域之间的映射的一个或多个映射数据条目,并且执行从虚拟地址区域之内的虚拟地址到物理地址区域之内的物理地址的映射;[0005]提示生成电路,该提示生成电路被耦合至映射电路,从而依赖于映射电路之内存储的映射数据条目来生成提示数据;以及[0006]存储控制电路,该存储控制电路依赖于提示数据来控制与相应的不同物理地址区域相对应的数据是如何被存储在存储器系统之内的。[0007]从本公开的另一方面来看提供了用于处理数据的装置,包括:[0008]映射装置,该映射装置用于存储相应地指示虚拟地址空间之内的虚拟地址区域与物理地址空间之内的物理地址区域之间的映射的一个或多个映射数据条目,并且用于执行从虚拟地址区域之内的虚拟地址到物理地址区域之内的物理地址的映射;[0009]提示生成装置,该提示生成装置被耦合至映射装置,用于依赖于映射装置之内存储的映射数据条目来生成提示数据;以及[0010]存储控制装置,该存储控制装置用于依赖于提示数据来控制与相应的不同物理地址区域相对应的数据是如何被存储在存储器系统之内的。[0011]从本公开的进一步的方面来看提供了处理数据的方法,包括:[0012]存储相应地指示虚拟地址空间之内的虚拟地址区域与物理地址空间之内的物理地址区域之间的映射的一个或多个映射数据条目[0013]使用一个或多个映射数据条目中的至少一个映射数据条目来执行从虚拟地址区域之内的虚拟地址到物理地址区域之内的物理地址的映射;[0014]依赖于存储的映射数据条目来生成提示数据;以及[0015]依赖于提示数据来控制与相应的不同物理地址区域相对应的数据是如何被存储在存储器系统之内的。[0016]从以下将结合附图被阅读的说明性的实施例的详细描述中,本公开的上述和其他对象、特征、和优点将是显而易见的。【附图说明】[0017]图1示意性地示出了具有异构存储系统并且采用虚拟到物理地址转换的数据处理系统;[0018]图2示意性地示出了可以被存储在转换后备缓冲器之内的映射数据条目;[0019]图3示意性地示出了可以依赖于存储的映射数据条目被生成的提示数据;[0020]图4是示意性地示出依赖于接收到的提示数据的DRAM存储体(Bank)功率控制的流程图;[0021]图5是示意性地示出依赖于接收到的提示数据控制存储器类型和访问电路功率的流程图;[0022]图6是示意性地示出页表查找如何可以触发提示生成的流程图;[0023]图7是示意性地示出时效受害者(victim)列表的生成的流程图;[0024]图8是示意性地示出时效受害者监视器的操作的流程图;[0025]图9示意性地示出了其中提示生成器基于多个转换后备缓冲器来执行监听请求的数据处理系统;以及[0026]图10示意性地示出了其中提示生成器使用共享存储器来追踪多个转换后备缓冲器之内的映射数据条目的数据处理系统。【具体实施方式】[0027]图1用图表示出了合并处理器核心4的数据处理系统2,该处理器核心4执行程序指令流。这些程序指令中的一些可以是加载指令或存储指令,它们指定使用虚拟地址(VA)进行访问的数据的地址。这个虚拟地址被提供至转换后备缓冲器6,其中该虚拟地址进行虚拟到物理地址转换以生成物理地址(PA),该物理地址然后被提供至存储器控制器8。转换后备缓冲器6存储多个映射数据条目10。映射数据条目10是从存储在系统中别的地方的页表数据12使用页表查找(类似于这个
技术领域
中的那些页表查找技术)来读取的。页表数据12描述了与整个存储器地址空间相关联的虚拟到物理地址映射,以及其他存储器属性。独立的映射数据条目10指定虚拟到物理地址转换和针对存储器页(为虚拟地址空间(例如,4kB页)之内的虚拟地址区域和物理地址空间之内的物理地址区域)的存储器属性,以及其他存储器属性(例如,访问权限(读/写/可执行)、可缓存性、和有关的存储器页的其他属性)。[0028]如果由转换后备缓冲器6接收到的虚拟地址不具有已经存储在转换后备缓冲器6之内的相应的映射数据条目10,则对页表数据12进行的页表查找被初始化以读取适当的映射数据条目,以便该映射数据条目可以被存储在转换后备缓冲器6之内以用于将来使用,并且对页表数据12进行的页表查找被用于触发将映射数据条目加载至转换后备缓冲器6的存储器访问。转换后备缓冲器6相应地可以被考虑用来缓存通过对全部页表数据12进行页表查找所读取的一组最近使用的映射数据条目。如果转换后备缓冲器6之内针对新读取的映射数据条目没有足够的存储空间,则当前存储的映射数据条目10将被回收,从而使得空间对于新条目是可用的。转换后备缓冲器6是服务以存储一个或多个映射数据条目(相应地指示虚拟地址空间之内的虚拟地址区域与物理地址空间之内的物理地址区域之间的映射)的映射电路的示例形式。[0029]存储器控制器8用作存储控制电路,控制到异构存储器系统的访问,在这个示例实施例中,该存储器控制器8包括第一DRAM存储器(DRAMO)14、第一非易失性存储器(NVMO)16、第二非易失性存储器(NVM1)17、和第二DRAM存储器(DRAM1)18。这些不同形式的存储器具有不同性能特征,例如,存储数据的功率消耗、存储数据的能量消耗、访问数据的能量消耗、访问数据的功率消耗、访问延迟、易失性和损耗率。作为示例,第一DRAM存储器14可以是要求定期刷新的高度易失的,由此具有相对高的存储数据的功率消耗,但是相比于其他形式的存储器在服务数据时提供最低的访问延迟。DRAM存储器14也可以不受损耗影响。相比之下,第二DRAM存储器18可以具有较低的存储数据的功率消耗,但是相比于第一DRAM存储器14具有较高的访问延迟。非易失性存储器16和17相比于第一DRAM存储器14和第二DRAM存储器18可以具有较低的存储数据的功率消耗,但是具有较高的访问延迟,并且还可能受损耗影响,因此数据到存储器的重复写入将最终导致至少部分的闪存16的故障。[0030]可见,异构存储器系统的不同组件的不同性能特征可以具有使这些不同组件将更好地适于存储不同类型的数据的效果。例如,第一DRAM存储器14可以很好地适于存储通过如下方式被操作的数据值:可能期望频繁地以低延迟读取和写入访问这些数据值,并且调整与DRAM存储器18相关联的功率和/或能量花费。第二DRAM存储器16可以适于存储大量低延迟敏感数据。非易失性存储器16可以很好地适于存储可以被读取但是不能被写入的常量参数。如果存储器控制器18能够利用适当形式的存储器来存储来自物理地址区域的数据以便该数据的访问特征和使用与被利用来存储该数据的异构存储器系统的部分的性能特征相匹配,则可以实现能量节省和性能增益。[0031]被耦合至转换后备缓冲器6和存储器控制器8的提示生成器20服务以生成提示数据,该操作依赖于转换后备缓冲器6之内存储的映射数据条目10。该提示数据被提供至存储器控制器8,存储器控制器8使用该提示数据来控制与相应的不同物理地址区域相对应的数据是如何被存储在异构存储器系统(在这个示例中,包括第一DRAM存储器14、第二DRAM存储器18、和非易失性存储器16和17)之内的。在更高水平处,使用提示生成器20和提示数据的示例将是,如果提示生成器20检测到物理地址区域的映射数据条目已经从转换后备缓冲器6中被回收,则由转换后备缓冲器6使用的受害者选择算法很可能已经将该物理地址区域识别为相对不频繁地访问的,并且相应地存储器控制器8可以对包括该存储器区域的第一DRAM存储器14之内的位单元的存储体进行去电从而节省功率,并且所节省的功率将多于对在用于访问该数据的延迟中的增加的补偿,该延迟中的增加由后续需要对位单元的存储体进行加电从而获得到该物理地址区域的访问所导致。此外,因为映射数据条目将已经从转换后备缓冲器6中被回收,所以将需要进行相对慢的页表查找从而重新加载再次访问该数据所必要的映射数据条目,并且执行这个页表查找所用的时间将是足够的,因为对位单元的存储体进行加电所用的时间将少于用于完成页表查找的时间,所以对位单元的存储体进行加电所用的时间可以被隐藏。提示数据可以如何被使用的另一示例是,提示数据可以向存储器控制器8指示特定的物理地址区域是最适于(在相比于第一DRAM存储器14和第二DRAM存储器18具有较长的访问延迟但具有更低的能量消耗的存储器(例如,非易失性存储器16)之内)进行存储的一个。[0032]图1同样示出了访问电路22和23,该访问电路22和23被分别提供以控制/协调到第一非易失性存储器16和第二非易失性存储器17的数据访问。如果从提示生成器20被提供至存储器控制器8的提示数据指示存储在第一非易失性存储器16和第二非易失性存储器17中的相应的一个非易失性存储器之内的物理地址区域没有是当前活跃的(如由转换后备缓冲器6之内不存在任意相应的映射数据条目所指示的),则可以通过多适当的访问电路22和23进行去电来节省功率。这可能增加访问延迟,但是能量中的节省可以调整访问延迟的增加。[0033]图2示意性地示出了映射数据条目10。在这个示例中,映射数据条目10包括虚拟TAG26和物理TAG28。虚拟TAG26和物理TAG28被用来提供虚拟到物理地址映射。将接收到的虚拟地址与存储在转换后备缓冲器6之内的映射数据条目10的虚拟TAG26进行比较来确定适当的映射数据条目是否存在。如果出现命中(Mt),则来自命中的映射数据条目的物理TAG28提供接收到的虚拟地址的部分的转换,以便可以生成适当的物理地址。映射数据条目10还包括访问权限数据30(例如,读取权限、写入权限、执行权限等等)。可缓存性标志32可以被用来指示来自存储器区域的数据是否可以被存储在处理器核心4的缓存之内。可以理解的是,数据处理系统2还可以包括用物理虚拟地址或虚拟地址寻址的一个或多个缓存存储器(未示出,例如,数据缓存、指令缓存、统一二级缓存等等),由于它们处于转换后备缓冲器6的下游或与转换后备缓冲器6并行。映射数据条目10包括使用计数34,使用计数34被转换后备缓冲器6用来追踪映射数据条目10要多久一次来执行虚拟到物理地址转换,并且因此在要求回收映射数据条目时协助选择适当的受害者。[0034]图3示意性地出了可以由提示生成器20生成的并且被提供至存储器控制器8的提示数据38的一个示例形式。在这个示例中,提示数据38包括映射数据条目10之内的数据的所有字段,该映射数据条目10已经从转换后备缓冲器6被回收或已经被加载至转换后备缓冲器6。除了这些字段,提示数据38包括标志36,该标志36指定提示数据是否涉及已经从转换后备缓冲器6被回收的映射数据条目或已经被加载至转换后备缓冲器6的映射数据条目。[0035]因此,当转换后备缓冲器6未满时,错过(miss)的转换后备缓冲器将产生页表查找的触发和新映射数据条目10的加载以及与该加载的映射数据条目10相对应的提示数据的生成(在回收/加载标志36被设置为指示提示数据涉及映射数据条目加载的情况下)。当映射数据条目的加载发生并且转换后备缓冲器6已经被充满时,已经存储在转换后备缓冲器6之内的映射数据条目10将被选择为受害者以用于被替代,并且除了新加载的映射数据条目10的提示数据,关于被回收的映射数据条目的提示数据将被生成(在回收/加载标志36被设置为指示提示数据涉及映射数据条目回收的情况下)。[0036]在一些示例实施例中,提示生成器20之内的受害者缓存40可以服务以在关于映射数据条目回收的提示数据被传送至存储器控制器8之前暂时存储这样的提示数据,这将在下文中被进一步描述。因此,受害者缓存40可以在使用提示数据38的存储器控制器8通知回收映射数据条目时中引入延时(或潜在地取消)。[0037]图4是示意性示出存储器控制器8如何可以被用来执行DRAM存储器14之内的不同位单元的存储体的功率控制的流程图。图4的简单流程图假定了这样的示例实施例,其中仅存在DRAM存储器14,并且物理地址区域的大小与DRAM存储器14之内的位单元的存储体大小相对应。在步骤42处,该过程等待直到提示数据被接收。步骤44然后确定提示数据是否涉及映射数据条目回收。如果提示数据涉及映射数据条目回收,则步骤46服务以将存储有物理地址区域(针对该物理地址区域的映射数据条目已经从转换后备缓冲器6被回收)的DRAM存储体切换至低功率状态。如果步骤44处的确定是提示数据不涉及回收,则其假定涉及加载并且相应地传递至步骤48,其中存储有物理地址区域(针对该物理地址区域的映射数据条目已经被加载至转换后备缓冲器6)的DRAM存储体被切换至高功率状态。DRAM存储器14由位单元的多个存储体形成。每个存储体具有变量操作参数(以功率信号的形式被提供至每个存储体),该变量操作参数指示该存储体是应当处于它的低功率状态(高延时,但是低存储功率消耗)还是应当处于它的高功率状态(低延时,但是高存储功率消耗)。[0038]图5是示意性示出可以由存储器控制器8(存储控制电路)执行的另一形式的控制的流程图。具体地,存储器控制器8可以控制哪种存储器类型被用于存储特定物理地址区域,以及可以控制用于访问存储器系统的不同部分的访问电路的功率状态。[0039]在步骤50处,该过程等待直到提示数据被接收。步骤52然后确定提示数据是否指定已经被加载至转换后备缓冲器6的映射数据条目。如果提示数据涉及加载,则过程进行至步骤54,其中从提示数据的访问权限作出物理地址区域是否是只读区域的确定。如果访问权限指示物理地址区域(针对该物理地址区域的映射数据条目已经被新加载至转换后备缓冲器6)是只读区域,则步骤56服务以将有关的物理地址区域的数据从慢速第二NVM存储器17移动至快速第一NVM存储器16。例如,数据可以是将被执行的处理操作中使用的数据常量。[0040]如果步骤54处的确定是数据的区域不是只读的,则过程进行至步骤58,其中数据被移动至快速DRAM存储器14。这假定物理地址区域正在存储数据值,例如,该数据值是在下面的过程期间将被频繁地访问(读和写两者)的操作数值。[0041]应当理解的是,何处的特定物理地址区域将被存储(由存储器控制器8来映射)至异构存储器系统的选择将在不同实现方式之间变化并且取决于该实现方式的优先级。上述示例仅通过说明性的方式给出。[0042]如果步骤52处的确定是提示数据不涉及被加载至转换后备缓冲器6的映射数据条目,则假定提示数据涉及回收。因此,过程递进至步骤64,其中与回收的映射数据条目相对应的物理地址区域的数据被从其当前位置移动至非易失性存储器17。在步骤66处,是否存在由存储器控制器8映射至第一NVM存储器16的任何物理地址区域(针对该物理地址区域,当前在转换后备缓冲器之内存在相应的映射数据条目)的确定被做出。如果不存在这样的区域,则步骤68服务以对第一非易失性存储器16的访问电路22进行去电。访问电路22可以随后也对第一非易失性存储器16本身进行去电。如果步骤66的确定是存在由存储器控制器8映射至闪存16的至少一个物理地址区域(针对该物理地址区域,当前在转换后备缓冲器6之内存在映射数据条目1),则跳过步骤68。[0043]应当理解的是,图5中示出的控制可以取决于形成存储器系统的组件和这些组件的性能特征而变化。[0044]图6示意性地示出了页表查找如何可以被用来触发提示生成的流程图。步骤74确定页表查找是否必要。由于转换后备缓冲器6之内的错过(由于适当的映射数据条目不可用来基于接收到的虚拟地址来执行必要的虚拟到物理转换),页表查找可能是必要的。当页表查找是必要的时,步骤76初始化页表查找。专用电路(未示出)可以被用来以类似于本
技术领域
这些页表查找的方式执行这样的页表查找。步骤78然后等待直到完成页表查找的最后阶段。页表查找的最后阶段是其中虚拟到物理地址转换被完成并且存储器区域的其他属性被读取的阶段。当已经完成页表查找的最后阶段时,步骤80服务以将区域属性数据(虚拟到物理地址映射、访问权限、可缓存性等等)发送至转换后备缓冲器6从而形成映射数据条目10。步骤82然后将该区域属性数据发送至提示生成器20,在该提示生成器29中该区域属性数据被用来形成由提示数据生成器20发送至存储器控制器8的提示数据38。[0045]图7是示意性地示出存储在形成提示生成器20的一部分的受害者缓存40之内的时效受害者列表的生成的流程图。步骤84确定自从步骤84最后一次被执行是否已经存在映射数据条目回收。如果已经存在这样的回收,则步骤86服务以将映射数据条目添加至存储在受害者缓存40之内的受害者数据。如果步骤84处的确定是自从步骤84的最后一次执行不存在映射数据条目回收,则处理进行至步骤88,其中有关自从步骤88的最后一次执行是否已经存在映射数据条目加载的确定被做出。如果不存在这样的映射数据条目加载,则处理返回至步骤84。如果存在这样的映射数据条目加载,则步骤90确定该映射数据条目加载是否与存储在受害者缓存之内的映射数据条目(即,最近从转换后备缓冲器6中被回收的映射数据条目)相匹配。如果存在这样的匹配,则步骤92服务以从存储在受害者缓存40之内的这些映射数据条目中清除有关的映射数据条目,并且过程返回至步骤84。因此,如果在预定周期之内映射数据条目再次被访问,则在映射数据条目已经触发提示数据的生成之前,可以从受害者列表中移除映射数据条目。(在其他实施例中,该条目的存储时间可以由访问来重新设置)。如果步骤90确定不存在这样的匹配,则映射数据条目加载是新映射数据条目的加载,该新映射数据条目既没有先前被存储在转换后备缓冲器6之内也没有在一段时间之前从转换后备缓冲器6中被回收,由此在受害者数据之内不存在相应的条目(下面将结合图8进行描述)。在这种情况下,步骤94服务以生成关于映射数据条目加载的提示数据。步骤90的动作可以被视为是当这些映射数据条目被存储在受害者数据之内时抑制映射数据条目加载的提示数据的生成,并且相反当受害者存活至适当的点时删除被存储在受害者数据之内的映射数据条目从而抑制关于该受害者的提示数据的生成(如结合图8所讨论的)。[0046]图8是示意性示出时效受害者监视器生成关于映射数据条目回收的提示数据的流程图。在步骤96处,过程等待监视器时间达到被存储在受害者缓存40之内的受害者数据响应于监视器被要求的下一个更新的时间。步骤98服务以增加针对受害者缓存40之内的相应的受害者数据条目所记录的存储时间。受害者缓存之内的每个条目与指示该条目已经被存储在受害者缓存40之内多长时间的数据相关联。因此,随着条目处于受害者缓存40之内,它们存储在受害者缓存之内的存活时间将逐渐地增加。[0047]在步骤100处,做出受害者缓存40中的任意受害者数据条目是否已经达到它们已经被存储在受害者缓存40之内的阈值时间的确定。如果不存在受害者数据条目已经达到该阈值,则过程返回至步骤96以等待下一个监视器时间。如果存在任意这样的条目,则步骤102服务以生成这些受害者数据条目的回收提示数据,并且从受害者缓存40中清除这些受害者数据条目。在整体水平,可以发现,当映射数据回收发生在转换后备缓冲器6之内时,给出该映射数据回收的细节的受害者数据被暂时存储在受害者缓存40之内,并且如果该映射数据条目没有被重新加载并且映射数据条目保持被存储在受害者数据缓存之内大于阈值时间段,则提示数据然后由提示生成器20生成并且被发送至存储器控制器18。该行为服务以有效地阻止生成关于来自转换后备缓冲器6的映射数据条目的回收的提示数据,从而避免物理数据区域是如何被存储中的(由于被重新加载的映射数据条目相对快速地跟随的回收而出现的)不适当的变化。其中回收数据的生成被阻止并且一旦回收发生没有受害者缓存被提供给或被用于将回收提示数据发送至存储器控制器的其他实施例是可能的。[0048]图9示出了数据处理系统104的另一示例实施例。该数据处理系统104包括多个处理器核心106、108、110、和112,该多个处理器核心106、108、110、和112各自具有相应的用于执行至少虚拟到物理地址转换的转换后备缓冲器114、116、118、和120。提示生成器122被耦合至转换后备缓冲器114、116、118、和120,并且服务以依赖于存储在各种转换后备缓冲器114、116、118、和120之内的映射数据条目来生成将被提供至存储控制器124的提示数据。存储控制器124服务以控制与不同相应的物理地址区域相对应的数据是如何被存储在耦合到存储控制器124的异构存储器系统之内的。[0049]在这个示例实施例中,当映射数据条目从转换后备缓冲器114、116、118、和120中的一个转换后备缓冲器中被回收时,这将由有关的转换后备缓冲器114、116、118、和120通知给提示生成器122。提示生成器122然后生成被发送至转换后备缓冲器114、116、118、和120中(没有发送回收通知)的其他转换后备缓冲器的监听请求,从而确定这些其他转换后备缓冲器114、116、118、和120是否包括有关的映射数据条目的副本。如果返回的监听响应指示其他转换后备缓冲器114、116、118、和120中的任意转换后备缓冲器包括映射数据条目,则抑制生成与被通知的回收相对应的提示数据。相反地,如果监听响应指示其他转换后备缓冲器114、116、118、和120中没有一个包括针对其已经接收到回收的通知的映射数据条目的副本,则生成与该回收相对应的提示数据被允许进行,并且该提示数据被提供至存储器控制器124。存储器控制器124然后可以控制与相应的不同物理地址区域相对应的数据是如何依赖于该提示数据被存储在存储器系统之内的(例如,如先前所讨论的)。[0050]图10示意性地示出了数据处理系统126的另外的示例实施例。在这个实施例中,多个处理器128、130、132、和134被各自提供有它们自己的转换后备缓冲器136、138、140、和142以执行至少虚拟到物理地址转换。提示生成器144服务以从转换后备缓冲器136、138、140、和142接收映射数据条目回收和加载的通知。提示生成器144具有相关联的共享存储器146,在该共享存储器146中提示生成器144追踪存储在转换后备缓冲器136、138、140、和142中的任意转换后备缓冲器之内的所有映射数据条目。在共享存储器146之内,识别每个映射数据条目,并且关于每个转换后备缓冲器136、138、140、和142的、与其相关联的标志位指示该映射数据条目的副本是否被存储在相应的转换后备缓冲器136、138、140、和142之内。[0051]当提示生成器144被通知回收映射数据条目时,则提示生成器144从共享存储器146之内的相应的条目来确定在该回收之后其他转换后备缓冲器136、138、140、和142中的任意转换后备缓冲器是否正在存储该映射数据的条目的副本,并且如果没有存储,则生成对应于该回收的提示数据。如果映射数据条目的其他副本被存储在转换后备缓冲器136、138、140、和142中的其他转换后备缓冲器之内(如由存储在共享存储器146之内的数据所指示的),则抑制生成与该回收相对应的提示数据。提示生成器144还通过在共享存储器146之内设置标志/条目来追踪映射数据条目加载。[0052]如上可见,存在各种不同的可能的方式,其中可以使用指示在映射数据条目在映射电路之内存储的提示数据来实现对与相应的不同物理地址区域相对应的数据是如何被存储在存储器系统之内的控制。例如,存储控制电路可以服务以控制在给定的时间异构存储器系统的哪些部分是加电状态或去电状态,和/或控制哪些不同物理地址区域被映射在该异构存储器系统之内以便将所使用的异构存储器系统的部分的性能特征与使用该区域(可以从映射电路之内存储的相应的映射数据条目来确定)的特征相匹配。[0053]提示数据可以采用多种不同的形式。例如,通过追踪所有加载和回收、或通过在给定时间点定期性地提供指示映射电路之内的映射数据条目的全部内容的数据,提示数据可以指示映射数据条目何时已经被从映射电路中移除、指示映射数据条目何时已经被存储在映射电路之内、或指示哪些映射数据条目被存储在映射电路之内。[0054]在前述示例中,映射电路已经采用了转换后备缓冲器的形式。使用不同形式的映射电路也是可能的。[0055]在上述示例实施例中,映射数据条目已经从使用页表数据查找所访问的页表数据中被读取。映射数据以其他方式(例如,数据被存储在配置寄存器等等之内)被导出的其他实施例也是可能的。[0056]上述关于对与相应的不同物理地址区域相对应的数据是如何可以被执行的控制的方式的各种技术仅是示例,这些或其他技术可以根据本文的教导以不同组合和子组合被利用(如适于本技术的特定实现的)。[0057]虽然本文已经参考附图详细描述了说明性的实施例,但是应当理解的是,权利要求不受这些明确的实施例的限制,并且在不偏离所附权利要求的范围和精神的情况下本领域的技术人员可以在其中实现各种变化、附加、和修改。例如,可以用独立权利要求的特征做出从属权利要求的特征的各种组合。【主权项】1.一种用于处理数据的装置,包括:映射电路,所述映射电路存储相应地指示虚拟地址空间之内的虚拟地址区域与物理地址空间之内的物理地址区域之间的映射的一个或多个映射数据条目,并且执行从所述虚拟地址区域之内的虚拟地址到所述物理地址区域之内的物理地址的映射;提示生成电路,所述提示生成电路被耦合至所述映射电路,从而依赖于所述映射电路之内存储的映射数据条目来生成提示数据;以及存储控制电路,所述存储控制电路依赖于所述提示数据来控制与相应的不同物理地址区域相对应的数据是如何被存储在存储器系统之内的。2.如权利要求1所述的装置,其中,所述提示数据指示映射数据条目在何时已经从所述映射电路中被移除。3.如权利要求1所述的装置,其中,所述提示数据指示映射数据条目在何时已经被存储至所述映射电路。4.如权利要求1所述的装置,其中,所述提示数据指示哪些映射数据条目被存储在所述映射电路中。5.如权利要求1所述的装置,其中,所述提示数据指定以下中的一个或多个:至少一个物理地址区域;至少一个虚拟地址区域;访问权限数据;可缓存性说明数据;以及计数值,所述计数值指示映射数据条目当被存储在所述映射电路中时已经被用来从虚拟地址映射至物理地址的次数。6.如权利要求1所述的装置,其中,所述控制数据是如何被存储的指定所述存储器系统之内的至少一个区域的变量操作参数的值。7.如权利要求6所述的装置,其中,所述变量操作参数是所述至少一个区域的功率状??τO8.如权利要求7所述的装置,其中:当所述提示数据指示映射数据条目已经被从所述映射电路中移除时,所述存储控制电路将由所述映射数据条目映射的所述存储器系统的区域切换至第一功率状态;以及当所述提示数据指示映射数据条目已经被存储在所述映射电路中时,所述存储控制电路将由所述映射数据条目映射的所述存储器系统的所述区域切换至第二功率状态,所述第二功率状态具有比所述第一功率状态更高的功率消耗。9.如权利要求1所述的装置,其中,所述控制数据是如何被存储的指定所述存储器系统之内的、具有不同性能特征的多个不同区域中的哪一个区域被用来存储与给定物理地址区域相对应的数据。10.如权利要求9所述的装置,其中,所述不同性能特征包括以下中的一个或多个:存储数据的功率消耗;存储数据的能量消耗;访问数据的功率消耗;访问数据的能量消耗;访问延迟;易失性;以及损耗率。11.如权利要求1所述的装置,其中,所述存储器系统包括多个访问电路,以访问存储在所述存储器系统的相应的不同部分之内的数据,并且所述控制数据是如何被存储的控制所述多个访问电路中的哪些访问电路是第一功率状态以及所述多个访问电路中的哪些访问电路是第二功率状态,所述第一功率状态具有比所述第二功率状态更高的功率消耗。12.如权利要求1所述的装置,其中,所述映射电路包括转换后备缓冲器。13.如权利要求12所述的装置,其中,所述映射数据条目由通过页表查找所访问的页表数据来指定。14.如权利要求13所述的装置,其中,基于达到作为将映射数据条目存储至所述映射电路的一部分的所述页表查找之内的预定阶段,所述提示生成电路生成与所述映射数据条目相对应的提示数据。15.如权利要求1所述的装置,其中,所述提示生成电路包括存储识别被从所述映射电路回收的映射数据的受害者数据的受害者缓存。16.如权利要求15所述的装置,其中,所述受害者数据指示从所述映射电路中被回收的给定映射数据条目,并且如果有所述给定映射数据条目映射的存储器访问在大于阈值时间的时间中没有发生,则与所述给定映射数据条目相对应的提示数据被生成。17.如权利要求1所述的装置,包括多个处理器,所述多个处理器执行程序指令的相应的流,并且每个处理器具有存储一个或多个映射数据条目的映射电路的实例,其中,基于将映射数据条目从所述映射电路的实例中移除,一个或多个监听请求被发送至所述映射电路的其他实例,从而确定是否没有所述映射电路的实例正在存储所述映射数据条目,并且如果没有所述映射电路的实例正在存储所述映射数据条目,则生成提示数据。18.如权利要求1所述的装置,包括多个处理器,所述多个处理器执行程序指令的相应的流,每个处理器具有存储一个或多个映射数据条目的映射电路的实例,和存储指示所述映射电路的实例中的哪一个映射电路的实例正在存储哪些映射数据条目的数据的共享电路,其中,基于将映射数据条目从所述映射电路的实例中移除,如果所述共享存储器指示没有所述映射电路的实例正在存储所述映射数据条目,则生成提示数据。19.一种用于处理数据的装置,包括:映射装置,所述映射装置用于存储相应地指示虚拟地址空间之内的虚拟地址区域与物理地址空间之内的物理地址区域之间的映射的一个或多个映射数据条目,并且用于执行从所述虚拟地址区域之内的虚拟地址到所述物理地址区域之内的物理地址的映射;提示生成装置,所述提示生成装置被耦合至所述映射装置,用于依赖于所述映射装置之内存储的映射数据条目来生成提示数据;以及存储控制装置,所述存储控制装置用于依赖于所述提示数据来控制与相应的不同物理地址区域相对应的数据是如何被存储在存储器系统之内的。20.一种处理数据的方法,包括:存储相应地指示虚拟地址空间之内的虚拟地址区域与物理地址空间之内的物理地址区域之间的映射的一个或多个映射数据条目使用所述一个或多个映射数据条目中的至少一个映射数据条目来执行从所述虚拟地址区域之内的虚拟地址到所述物理地址区域之内的物理地址的映射;依赖于存储的映射数据条目来生成提示数据;以及依赖于所述提示数据来控制与相应的不同物理地址区域相对应的数据是如何被存储在存储器系统之内的。【文档编号】G06F12/1027GK106066831SQ201610237412【公开日】2016年11月2日【申请日】2016年4月15日公开号201610237412.6,CN106066831A,CN106066831A,CN201610237412,CN-A-106066831,CN106066831A,CN106066831A,CN201610237412,CN201610237412.6【发明人】杰弗里·布雷克,阿里·格哈森·赛迪,米切尔·哈延加【申请人】Arm有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1