对存储器层次结构中的闪存的高速缓存一致性支持制造技术

技术编号:8026940 阅读:249 留言:0更新日期:2012-11-29 13:21
利用存储器层次结构中的闪速存储器的系统和方法。计算机系统包括经存储器控制器与存储器层次结构耦接的处理器。存储器层次结构包括高速缓存存储器,经第一缓冲器耦接到存储器控制器的随机存取存储器的第一存储器区域,和经闪存控制器耦接到存储器控制器的闪速存储器的辅助存储器区域。第一缓冲器和闪存控制器经单一接口耦接到存储器控制器。存储器控制器接收访问第一存储器区域中的特定页面的请求。处理器检测与所述请求对应的寻页缺失,作为响应,使高速缓存存储器中对应于所述特定页面的高速缓存行无效,清洗无效的高速缓存行,把页面从辅助存储器区域交换到第一存储器区域。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术涉及计算机系统,更具体地说,涉及支持闪速存储器的存储器子系统硬件。
技术介绍
为了提高计算机系统的性能,系统设计人员可利用存储设备的分层布置,以利用计算机程序一般表现出的存储器局部性。这里使用的存储器局部性指的是计算机程序在较短的时间段内,或者在接近的范围内,频繁访问相同或者相关的存储位置的倾向。例如,在虚拟存储器实现中可以使用分页,以便每次一页地把频繁访问的数据从辅助存储设备调入主存储器中。认为访问主存储器比访问辅助设备快,尽管辅助设备能以每个存储单元较低的成本保存数据。另一方面或者另外,频繁被访问的数据的副本可被保存在由更快的具有较小总容量的设备构成的高速缓存中。数据可以每次一个高速缓存行地保存在高速缓存中,高速缓存行一般小于页面。 一般来说,现代计算机系统利用存储设备的层次结构,所述层次结构包括其中每次一个高速缓存行地复制数据的一层或多层高速缓冲存储器,主存储器的其中每次一页地保存数据的区域,和不同级别的辅助存储器。高速缓冲存储器可以与处理单元紧密耦接,和/或包括在处理单元内。主存储器一般经快速系统总线,直接耦接到一个或多个处理单元。辅助存储器可以作为I/o系统层次结构的一部分,而不是直接耦接的存储设备,经通用I/O接口系统,比如并行ATA (PATA),串行ATA (SATA),小型计算机系统接口(SCSI),通用串行总线(USB),外设组件互连(PCI)等,耦接到一个或多个处理单元。当在主存储器内没有找到所需的页面(称为寻页缺失)时,可以利用称为直接存储器访问(DMA)的技术,从辅助存储器取回该页面。在DMA中,辅助设备可以直接访问存储器,从而独立于其它处理单元地往来于主存储器传送页面。不过,存储器层次结构内的多数数据传送要求中央处理单元的介入。除了上述考虑之外,通过在系统内设置多个处理单元(也称为多核芯处理器),或者通过借助网络或者另一种互联把多个离散系统或子系统结合在一起,从而形成更复杂的并行系统,计算机系统可实现各种并行处理。在提供对共享存储器的访问的多核芯系统中,存在两个以上独立的同时执行的处理器任务可试图同时访问存储器中的相同可寻址位置的可能性。例如,一项任务试图写入该位置,而同时另一项任务试图读取该位置。缺少可预测地安排或调整这种同时的存储器访问的某种技术(通常称为一致性协议),会导致不可预测或者错误的执行行为。例如,取决于写入相对于读取的发生顺序,上面提及的两项任务可能产生不同的计算结果,这以其他方式也可能是完全随机的。如果多核芯系统中的不同处理单元试图本地高速缓存共享数据,那么会出现类似问题。当辅助设备可以借助DMA或者以其它方式访问存储器时,也存在一致性问题。当处理单元访问特定的存储器位置时,它把所述特定位置的当前值保存在高速缓存中。如果对高速缓存的更新未被传送给辅助设备,那么下次访问所述特定位置时,会从辅助设备载入陈旧版本的数据,从而更新被重写。计算机系统利用各种一致性协议来确保没有处理单元在使用数据的过时副本。在DMA实现中,可在清洗已因DMA访问而变得无效的高速缓存行的硬件或软件中保持高速缓存一致性。和诸如硬盘存储器之类的辅助设备对比,可取的是在计算机系统的存储器层次结构中增加低成本的存储设备(比如闪速存储器)以降低系统总成本和提高性能。不幸的是,在这些存储设备和主存储器之间没有DMA访问的情况下,会出现高速缓存一致性问题。另夕卜,这些存储设备需要专门的多指令访问操作。利用中央处理单元实现这些访问操作效率低。从而,需要的是在计算机系统的存储器层次结构中,加入解决这些问题的闪速存储器式存储设备的系统和方法。
技术实现思路
公开了计算机系统和方法的各个实施例。在一个实施例中,计算机系统包括经存储器控制器与存储器层次结构耦接的处理器。所述存储器层次结构包括随机存取存储器的第一存储器区域和闪速存储器的辅助存储器区域。存储器控制器经第一缓冲器与第一存储器区域耦接,辅助存储器区域经闪存控制器与存储器控制器耦接。存储器控制器接收访问第一存储器区域中的特定页面的请求。处理器检测与所述请求对应的寻页缺失,并且响应检测到寻页缺失,把一个页面从辅助存储器区域交换(swap)到第一存储器区域。在另一个实施例中,处理器包括配置成在辅助存储器区域和第一存储器区域之间移动数据的命令定序器。为了在辅助存储器区域和第一存 储器区域之间移动数据,命令定序器执行保存在第一存储器区域中的微命令序列。在又一个实施例中,计算机系统包括高速缓存存储器,处理器包括一致性引擎。一致性引擎检测与请求对应的寻页缺失,并且响应检测到寻页缺失,使高速缓存存储器中对应于特定页面的高速缓存行无效,然后清洗无效的高速缓存行。在又一个实施例中,在命令定序器在辅助存储器区域和第一存储器区域之间移动数据之前,一致性引擎清洗高速缓存行。在又一个实施例中,第一存储器区域和辅助存储器区域通过高速缓存缓冲器互连。为了把数据从第一存储器区域移动到辅助存储器区域,处理器把数据从第一存储器区域读取到高速缓存缓冲器,并把数据从高速缓存缓冲器写入辅助存储器区域。为了把数据从辅助存储器区域移动到第一存储器区域,处理器把数据从辅助存储器区域读取到高速缓存缓冲器,并把数据从高速缓存缓冲器写入第一存储器区域。在又一个实施例中,计算机系统中的双列直插存储器模块(dual in-line memorymodule)包括第一存储器区域,辅助存储器区域,第一缓冲器,和闪存控制器。在另一个实施例中,计算机系统还包括共享第一存储器区域和辅助存储器区域的至少两个处理器。结合下面的说明和附图,这些和其它实施例将变得明显。附图说明图I是可与包括闪速存储器的各种存储设备耦接的处理器的一个实施例的一般方框图。图2是图解说明与处理器耦接的存储系统的一个实施例的方框图。图3是存储系统的一部分的一个实施例的更详细方框图。图4图解说明可在存储系统内实现的存储器映像的一个实施例。图5图解说明可用于对付寻页缺失的处理的一个实施例。图6图解说明可用于在闪速存储器和DRAM之间移动数据的处理的一个实施例。尽管本专利技术可以有各种修改和备选形式,不过,在附图中举例表示了各个具体实施例,并在这里详细说明了所述各个具体实施例。然而,应明白附图和对附图的详细说明并不意图把本专利技术局限于公开的特定形式,相反,本专利技术覆盖在由附加的权利要求限定的本专利技术的精神和范围内的所有修改、等同方案和替换方案。具体实施方式 多线程处理器架构的概述图I中表示了图解说明多线程处理器10的一个实施例的方框图。在图解说明的实施例中,处理器10包括也被命名为“核芯0” “核芯n”的许多处理器核芯100a-n。处理器10的各个实施例可包括变化数目的核芯100,比如8,16或者任何其它适当的数目。每个核芯100与对应的L2高速缓存105a-n耦接,L2高速缓存105a_n再经交叉开关110与L3高速缓存120耦接。核芯100a-n和L2高速缓存105a_n —般整体或单独地分别称为核芯100和L2高速缓存105。经交叉开关110和L3高速缓存120,核芯100可与位于处理器10之外的多个设备耦接。在图解说明的实施例中,一个或多个存储器接口 130可被配置成耦接系统存储器的一个或多个存储体(未示出)。一个或多个一致性处理器接口 1本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:S·卡皮尔R·C·赫瑟林顿
申请(专利权)人:甲骨文美国公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1