存储系统的制作方法

文档序号:8395823阅读:412来源:国知局
存储系统的制作方法
【技术领域】
[0001] 本发明有关于存取缓冲数据(例如,高速缓存数据),特别是有关于具有不同数据 存储线尺寸(例如,不同的高速缓存线尺寸)的数据存储线(例如,高速缓存线)的存储系统。
【背景技术】
[0002] 高速缓存器(cachememory)是用于暂时保存容量较大和速度较慢的存储器(例 如,主存储器)的部分内容以用于重复存取的高速缓冲器。大多数现有的高速缓存(cache) 由一组条目(entry)组成。每一个条目由数据块(或数据线)和地址标记(addresstag) 组成;地址标记与容量较大的主存储器中的数据的位置相关联。高速缓存器是存取相关联 的一对于高速缓存器的关键不是高速缓存器中的位置,而是主存储器中的位置。为加速存 储,高速缓存器可能不是全相联,而可能是组相联、直接映射或哈希的(hashed)。大多数的 高速缓存器包括多个高速缓存线,每一个高速缓存线具有固定的高速缓存线尺寸。在稍复 杂的设计中,使用扇区高速缓存(sectorcache)。扇区高速缓存由一组扇区组成,并且有一 个地址标记与每一个扇区相关联。扇区本身被分为多个子扇区(subsectors)。每一个子扇 区具有有效位(validbit),因此仅需要呈现扇区的一部分子扇区。当对于一个扇区高速缓 存缺失(cachemiss)时,常驻(resident)扇区被移出(evict),将地址标记设置为新扇区 的地址,并抓取一个子扇区。当对于子扇区存在高速缓存缺失,但包括该子扇区的扇区已经 出现在高速缓存中,仅抓取需要的子扇区。
[0003] 使用扇区高速缓存的最初原因是利用非连续(discrete)的晶体管在不同时间运 作的逻辑使得扇区设计比具有数据传输(transfer)和寻址的单元作为"块"或"线"的现有 的普通的非扇区(non-sectored)设计更加容易构建。通常情况下,对于非扇区高速缓存, 用相对少数目的标记位而具有较强的高速缓存容量的唯一方法是使得高速缓存块(高速缓 存线)较大。然而,这种情况下的问题是,每一个高速缓存缺失需要完全地抓取一个较大块。 利用扇区高速缓存,有可能仅抓取块(或扇区)的一部分,并因此处理高速缓存缺失的时间 和总线流量均可以显著的降低。因此,与其他高速缓存相比,尽管扇区高速缓存具有较高的 高速缓存缺失率(cachemissratios),但是当考虑时间因素的时候,有可能扇区缓存具有 更优的性能。然而,扇区设计的问题是,在一个扇区的所有的子扇区被载入数据之前,该扇 区通常会从高速缓存中移出,因此,高速缓存容量的很大一部分没有被使用。具体地,扇区 高速缓存具有的特征是,大量的字节可以利用相对较小的数目的标记位来标记,而当缺失 发生时,仍然仅传输较小的块。然而,一个标记会对应于许多字节。当高速缓存线被频繁替 代时,剩余的字节可能仍然为空。这可能消耗高速缓存器的宝贵空间。

【发明内容】

[0004] 有鉴于此,本发明提出一种存储系统。
[0005] 依据本发明第一实施方式,提供一种存储系统。该存储系统包括:数据存储器,具 有多个数据存储线;标记存储器,具有多个地址标记,该多个地址标记中的每一个与分配于 该数据存储器中的该多个数据存储线中的一个数据存储线相关联;以及控制器,耦接于该 数据存储器和该标记存储器之间,该控制器设置第一数目的多个地址标记,并配置第一数 目的多个数据存储线作为具有第一数据存储线尺寸的第一数据存储线;以及该控制器设置 第二数目的多个地址标记,并配置第二数目的多个数据存储线作为具有第二数据存储线尺 寸的第二数据存储线,其中该第二数据存储线尺寸不同于该第一数据存储线尺寸。
[0006]依据本发明第二实施方式,提供一种存储系统。该存储系统包括:数据存储器;标 记存储器;以及控制器,耦接于该数据存储器和该标记存储器之间,该控制器设置该标记存 储器并配置该数据存储器以分配具有第一数据存储线尺寸的第一数据存储线而用于存储 渲染目标纹理,以及控制器设置该标记存储器并配置该数据存储器以分配具有第二数据存 储线尺寸的第二数据存储线而用于存储非渲染目标纹理,其中该第二数据存储线尺寸不同 于该第一数据存储线尺寸。
[0007] 本发明所提出的存储系统,可以提高主存储器的存储效率。
【附图说明】
[0008] 图1为根据本发明实施方式的存储系统的示意图。
[0009] 图2为主存储器的存储效率与请求的数据尺寸之间关系的示意图。
[0010] 图3为图1所示的数据存储器的存储布置的示意图。
[0011] 图4为根据本发明实施方式的不同高速缓存线尺寸的动态分配的流程图。
[0012] 图5为根据本发明一实施方式的在高速缓存器中使用提出的动态高速缓存线尺 寸设计的示意图。
[0013] 图6为根据本发明另一实施方式的在高速缓存器中使用提出的动态高速缓存线 尺寸设计的示意图。
【具体实施方式】
[0014] 在说明书及权利要求书当中使用了某些词汇来指称特定的元件。本领域技术人员 应当理解,电子设备制造商可能会用不同的名词来称呼同样的元件。本说明书及权利要求 书并不以名称的差异作为区分元件的方式,而是以元件在功能上的差异作为区分的准则。 在通篇说明书及权利要求书当中所提及的"包含"为开放式的用语,故应解释成"包含但不 限定于"。另外,"耦接"一词在此为包含任何直接及间接的电气连接手段。因此,若文中描 述第一装置耦接于第二装置,则代表所述第一装置可直接电气连接于所述第二装置,或通 过其他装置或连接手段间接地电气连接至所述第二装置。
[0015] 本发明的概念是提出具有混合高速缓存线尺寸的高速缓存器(即,具有不同高速 缓存线尺寸的高速缓存线的高速缓存器),该高速缓存器可以有效利用高速缓存器的宝贵 空间,降低高速缓存缺失率,并提高主存储器(例如,动态随机存取存储器(DRAM))的存储效 率。具体细节将详述如下。
[0016] 请参考图1,图1为根据本发明实施方式的存储系统的示意图。存储系统100为 高速缓存器(例如,具有较快数据存取速度的存储器),该高速缓存器实现于在处理器和存 储器(例如,具有较慢数据存取速度的存储器)之间的请求快速信息处理的任意应用中。 在此实施方式中,存储系统100作为图形系统的高速缓存器。因此,除了存储系统100, 图形系统包括存储系统100外部的压缩器(compressor)101、纹理单元102、解压缩器(decompressor)103、长度高速缓存(length cache)104、以及数据存储器(例如,主存储器) 105。存储系统100包括数据存储器112、标记存储器114和控制器117。数据存储器112 包括多个数据存储线113。举例来说,数据存储器112利用用于储存高速缓存数据的静态随 机存取存储器(static random access memory,SRAM)来实现,以及每一个数据存储线113 为具有基本/默认的高速缓存线尺寸(例如,512比特)的高速缓存线。标记存储器114为 标记随机存取存储器(RAM),并且该标记随机存取存储器具有多个第一地址标记115和多 个第二地址标记116存储于其中。请注意,除地址标记之外,每一个标记条目包括额外的控 制信息,例如有效位、修改标志位(dirty bit)等。具体地,第一地址标记115可以为奇地址 标记(即,奇标记),以及第二地址标记116为偶地址标记(即,偶标记),其中一个奇标记和一 个偶标记来自标记存储器114中的一对相邻地址标记。数据存储器112和标记存储器114 可分配于同一存储器的不同存储空间中。根据本发明的另一实施方式,数据存储器112和 标记存储器114可分配于不同存储器中。
[0017]为简单和简洁起见,高速缓存器仅为存储系统100的一个实施方式,以描述本发 明的本质特征。因此,在下文中,术语"数据存储线"与"高速缓存线"是可互换的,以及术语 "存储系统"和"高速缓存系统"是可互换的。然而,提出的自适应高速缓存线尺寸设计并非 仅限于高速缓存应用。使用提出的设计概念的任意数据存储器/缓冲器均落入本发明的保 护范围。
[0018] 在此实施方式中,第一地址标记115和第二地址标记116中的每一个与分配于数 据存储器112中的一个数据存储线113 (例如,高速缓存线)相关联,以及第一地址标记115 和第二地址标记116中的每一个用于存储与该地址标记相关联的数据对应的一部分地址。 其中,与该地址标记相关联的数据存储于数据存储线113 (例如,高速缓存线)中。
[0019]控制器117耦接于数据存储器112和标记存储器114之间,以及控制器117控制 存储系统100的操作。举例来说,控制器117为探听(snoop)处理器(例如,本发明实施方 式中的纹理单元102)总线活动的高速缓存控制器,并且控制器117确定请求的数据DATAk 的地址ADDR是否引起高速缓存命中或高速缓存缺失。为简洁起见,数据传输路径用实线来 说明,地址传输路径用虚线来说明。当通过控制器117确定高速缓存命中时,控制器117从 一个数据存储线113 (例如,高速缓存线)中抓取请求的数据DATAk并返回请求的数据DATAk 至纹理单元102。当通过控制器117确定高速缓存缺失时,控制器117遵循替换规则而更新 一个数据存储线113 (例如,高速缓存线)和相关联的地址标记,并返回从数据存储器105 中抓取
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1