高速缓存存储器及包含其的存储系统及其操作方法

文档序号:1112806 发布日期:2020-09-29 浏览:15次 >En<

阅读说明:本技术 高速缓存存储器及包含其的存储系统及其操作方法 (Cache memory, memory system including the same, and method of operating the same ) 是由 郑承奎 于 2019-12-11 设计创作,主要内容包括:高速缓存存储器包括:对应于偶地址的第一高速缓存区域;和对应于奇地址的第二高速缓存区域,其中第一高速缓存区域和第二高速缓存区域中的每一个包括多个高速缓存组,并且每个高速缓存组包括:数据组字段,其适用于储存与偶地址和奇地址之中的地址相对应的数据;以及配对字段,其适用于储存关于位置的信息,该位置储存对应于相邻地址的数据,所述相邻地址与对应于被存储数据的地址相邻。(The cache memory includes: a first cache region corresponding to an even address; and a second cache region corresponding to an odd address, wherein each of the first cache region and the second cache region includes a plurality of cache sets, and each cache set includes: a data group field adapted to store data corresponding to an address among even and odd addresses; and a pair field adapted to store information about a location storing data corresponding to an adjacent address adjacent to an address corresponding to the stored data.)

高速缓存存储器及包含其的存储系统及其操作方法

相关申请的交叉引用

本申请要求于2019年3月22日提交的申请号为10-2019-0032906的韩国专利申请的优先权,其全部内容通过引用合并于此。

技术领域

本公开总体上涉及一种包括高速缓存存储器的存储系统。

背景技术

近来,正在积极地研究诸如电阻式随机存取存储器(RRAM)、相变随机存取存储器(PCRAM)、磁性随机存取存储器(MRAM)和铁电随机存取存储器(FRAM)的下一代存储器。但是,下一代存储器的操作速度没有达到期望的速度,并且下一代存储器的缺陷率没有达到期望的水平。此外,下一代存储器在耐久性方面存在问题。因此,当多次访问下一代存储器时,下一代存储器的寿命迅速减小。提出了一种高速缓存存储器以支持下一代存储器的操作速度并减少访问次数。

此外,下一代存储器应该能够与各种类型的主机一起操作。每个主机可能具有不同的数据块(data chunk)尺寸。为了在主机的数据块尺寸与存储器的数据块尺寸不同时允许主机与存储器之间的通信,提出了高速缓存存储器。

发明内容

本发明的各种实施例针对用于存储系统的结构和功能性得到改进的高速缓存存储器。

高速缓存存储器可以用于具有不同数据块尺寸的主机与存储系统的存储设备之间的通信。

高速缓存存储器可以提高采用该高速缓存存储器的存储系统的操作速度。

高速缓存存储器可以减少存储系统的存储设备被访问的次数。

在一个实施例中,一种高速缓存存储器包括:与偶地址相对应的第一高速缓存区域;与奇地址相对应的第二高速缓存区域,其中,第一高速缓存区域和第二高速缓存区域中的每一个包括多个高速缓存组,并且每个高速缓存组包括:数据组字段,其适用于储存与偶地址和奇地址之中的地址相对应的数据;以及配对字段,其适用于储存关于位置的信息,与被储存数据所对应的地址相邻的相邻地址所对应的数据储存在所述位置。

在一个实施例中,一种存储系统包括:第一高速缓存区域,其包括多个第一高速缓存组并且适用于储存与偶地址相对应的第一数据;第二高速缓存区域,其包括多个第二高速缓存组并且适用于储存与奇地址相对应的第二数据;检查电路,其适用于针对每个第一高速缓存组和每个第二高速缓存组来检查输入数据的命中或未命中;检测电路,其适用于检测输入数据是第一数据还是第二数据;以及控制电路,其适用于根据检查结果和检测结果而将输入数据分配给在多个第一高速缓存组和第二高速缓存组之中的一个。

在一个实施例中,一种存储系统的操作方法,该存储系统包括高速缓存存储器,该高速缓存存储器在具有不同数据块尺寸的主机与存储器之间且包括第一高速缓存区域和第二高速缓存区域,第一高速缓存区域和第二高速缓存区域中的每一个包括多个缓存组,该操作方法包括:基于输入地址,检查第一高速缓存区域的命中或未命中;当第一高速缓存区域的第三高速缓存组被检查为命中并且输入数据对应于第一高速缓存区域时,将输入数据储存在第三高速缓存组中;并且当第三高速缓存组被检查为命中并且输入数据对应于第二高速缓存区域时,生成第三高速缓存组的位置信息。

在一个实施例中,一种存储系统包括:主机,其适用于提供多块的主机数据和主机地址,所述主机地址包括偶地址和奇地址,所述主机数据的每块具有第一尺寸;存储设备,其适用于储存多块的存储器数据,每块的存储器数据具有大于所述第一尺寸的第二尺寸;和控制器,其包括高速缓存存储器,所述高速缓存存储器包括:对应于所述偶地址的第一高速缓存区域和对应于所述奇地址的第二高速缓存区域,所述第一高速缓存区域和所述第二高速缓存区域中的每一个分别包括多个偶高速缓存组和奇高速缓存组,其中,所述第一高速缓存区域的第一高速缓存组包括:第一字段,其适用于储存与所述主机地址之中的第一地址相对应的第一块的主机数据;和第二字段,其适用于储存关于第二高速缓存组的信息,第二块的主机数据储存在所述第二高速缓存组中,所述第二块对应于所述主机地址之中的与所述第一地址相邻的第二地址,其中,所述第一高速缓存组对应于所述偶地址中的一个偶地址,而所述第二高速缓存组对应于所述奇地址中的一个奇地址。

结合附图通过以下详细描述,本发明的这些以及其他特征和优点对于本发明领域的技术人员将变得显而易见。

附图说明

图1是示出根据实施例的存储系统的框图。

图2是示出图1的高速缓存存储器的示图。

图3是示出根据实施例的高速缓存组的示图。

图4和图5是示出根据实施例的存储系统的操作的流程图。

具体实施方式

将参考附图更详细地描述本发明的各种实施例。尽管将示出和描述本发明的一些实施例,但是本领域普通技术人员将理解的是,在不脱离本发明的原理和精神的情况下可以对这些实施例进行改变。

应该理解的是,附图是所描述的设备的简化示意图,并且为了避免使本发明的特征模糊而可以不包括众所周知的细节。

还应注意的是,在不脱离本发明的范围的情况下,一个实施例中存在的特征可以与另一实施例的一个或更多个特征一起使用。

图1是示出根据实施例的存储系统100的框图。

参照图1,存储系统100可以包括存储器控制器110和存储器120。存储系统100可以与主机1一起操作。

主机1可以向存储器控制器110发送请求REQ,以请求对存储器120的读取和/或写入(读取/写入)操作。当请求读取/写入操作时,主机1可以向存储器控制器110传送地址ADD_HOST。地址ADD_HOST可以指定要执行读取/写入操作的位置。当请求写入操作时,主机1可以将写入数据DATA_HOST传送到存储器控制器110。此外,在请求读取操作之后,主机1可以从存储器控制器110接收读取数据DATA_HOST。在主机1和存储器控制器110之间传送的地址和数据可以分别通过ADD_HOST和DATA_HOST来表示,以便与在存储器控制器110和存储器120之间传送的地址ADD和数据DATA区分开。

在一个实施例中,地址ADD_HOST具有20比特位。此外,主机1的数据尺寸(即,数据块尺寸)是64比特位。即,响应于读取和/或写入请求一次处理的数据DATA_HOST的尺寸为64比特位。然而,本实施例不限于此。

存储器120可以在存储器控制器110的控制下执行读取和/或写入操作。存储器120可以从存储器控制器110接收命令CMD和地址ADD,并且向存储器控制器110传送数据DATA和从存储器控制器110接收数据DATA。命令CMD可以用于指示将由存储器120执行的操作。地址ADD可以用于指定在存储器120中将要被访问的区域。在写入操作期间,数据DATA从存储器控制器110被传送到存储器120。在读取操作期间,数据DATA可以从存储器120被传送到存储器控制器110。

尽管在图1中未示出,存储器控制器110可以执行错误校正码(ECC)操作以检测在数据DATA中发生的错误。对于该操作,存储器控制器110可以处理具有与主机1所请求的数据DATA_HOST不同的块尺寸的数据DATA。即,存储器控制器110和存储器120之间的数据块尺寸可以是主机1和存储器控制器110之间的数据块尺寸的N倍大,其中,N是大于或等于2的整数。这里,N可以被设定为2,这意味着在读取/写入操作期间一次处理的数据DATA的尺寸为128比特位。

由于存储器120的数据块尺寸是主机1的数据块尺寸的两倍大,因此要被寻址的区域数量可以减半。因此,存储器120使用的地址ADD中的比特位数可以比主机1的地址ADD_HOST中的比特位数少一位。即,存储器120使用的地址ADD可以具有19比特位。存储器120可以是各种类型的存储器之一,诸如动态随机存取存储器(DRAM)、NAND闪存、电阻式随机存取存储器(RRAM)、相变随机存取存储器(PCRAM)、磁性随机存取存储器(MRAM)和铁电随机存取存储器(FRAM)。

存储器控制器110可以根据主机1的请求来控制存储器120。存储器控制器110可以包括高速缓存存储器111、检查电路113、检测电路115和控制电路117。

高速缓存存储器111可以用作主机1与存储器120之间的通信中的高速缓存。高速缓存存储器111可以以比存储器120更高的速度操作,并且具有比存储器120小的储存容量。由于主机1具有与存储器120不同的数据块尺寸,高速缓存存储器111可以具有用于支持数据块尺寸的结构。

当主机1的数据块尺寸是64比特位并且存储器120的数据块尺寸是128比特位时,高速缓存存储器111可以包括多个第一高速缓存组和多个第二高速缓存组。多个第一高速缓存组可以储存与地址ADD_HOST中的偶数位地址(在本文中也简称为偶地址)相对应的数据。多个第二高速缓存组可以储存与地址ADD_HOST中的奇数位地址(在本文中也简称为奇地址)相对应的数据。将参考图2和图3详细描述高速缓存存储器111的结构。

当主机1请求读取/写入操作时,检查电路113可以检查高速缓存存储器111的命中(hit)或未命中(miss)。在高速缓存命中的情况下,可以不访问存储器120,而可以访问以高速操作的高速缓存存储器111。因此,对主机的读取/写入操作的请求可以得到快速处理。在高速缓存未命中的情况下,需要访问存储器120。因此,相比于高速缓存命中的情况,对主机1的读取/写入操作的请求可以被以较低的速度处理。在一个实施例中,检查电路113可以针对高速缓存存储器111的第一高速缓存组和第二高速缓存组中的每一个来检查数据DATA_HOST的命中或未命中。

检测电路115可以检测从主机1请求的数据DATA_HOST是对应于偶数位地址还是奇数位地址的数据。对于该操作,检测电路115可以检查地址ADD_HOST的最低有效位(LSB)。例如,当数据块尺寸为64比特位时,可以忽略地址ADD_HOST的第一至第六比特位,因为第一至第六比特位对应于一次处理的数据DATA_HOST。即,检测电路115可以检查地址ADD_HOST的第七比特位作为LSB。

当地址ADD_HOST的LSB对应于偶数(即,值“0”)时,检测电路115可以将数据DATA_HOST检测作为与偶数位地址相对应的数据,并且,控制电路117可以将数据DATA_HOST储存在第一高速缓存组中。当地址ADD_HOST的LSB对应于奇数(即,值“1”)时,检测电路115可以将数据DATA_HOST检测作为与奇数位地址相对应的数据,并且控制电路117可以将数据DATA_HOST储存在第二高速缓存组中。

根据检查电路113的命中/未命中检查结果,控制电路117可以将数据DATA_HOST分配给在第一高速缓存组和第二高速缓存组中的一个。即,根据检查电路113和检测电路115的检查结果和检测结果,控制电路117可以将数据DATA_HOST分配给高速缓存存储器111的第一高速缓存组和第二高速缓存组之一。

在实施例中,在高速缓存存储器111的多个第一高速缓存组和第二高速缓存组之中,控制电路117可以生成其中储存对应于与对应于数据DATA_HOST的地址ADD_HOST相邻的地址的数据的高速缓存组的位置信息。控制电路117可以将生成的位置信息和数据DATA_HOST储存在被分配的高速缓存组中。基于储存在高速缓存存储器111的多个第一高速缓存组和第二高速缓存组中的位置信息,控制电路117可以将储存在多个第一高速缓存组和第二高速缓存组中的数据之中与彼此相邻的地址相对应的数据一起逐出。

图2是示出图1的高速缓存存储器111的示图。

参照图2,高速缓存存储器111可以包括多个高速缓存组CACHE SET。举例来说,高速缓存存储器111包括128个高速缓存组CACHE SET。128个高速缓存组CACHE SET可以被归类到32个索引INDEX。即,四个高速缓存组CACHE SET可以对应于一个索引INDEX。

这样,高速缓存存储器111的四个高速缓存组CACHE SET共享一个索引值,高速缓存存储器111的结构可以被称为4路组关联结构。如果不考虑索引INDEX,则该结构可能成为全关联结构。共享索引值的高速缓存组CACHE SET的数量可以大于或等于4。本实施例不限于此,而是根据实施例高速缓存存储器111可以具有各种结构。

通常,地址ADD_HOST包括多个比特位。多个比特位之中的一些低阶位可以用作对高速缓存组CACHE SET进行寻址的索引INDEX。多个比特位之中的其他比特位可以作为标签信息储存在高速缓存组CACHE SET中。根据地址ADD_HOST与索引INDEX和标签TAG之间的比较结果,可以检查数据DATA_HOST的高速缓存命中/未命中。将参考图4更详细地描述该过程。

高速缓存存储器111可以被划分为偶高速缓存区域EVEN CACHE AREA和奇高速缓存区域ODD CACHE AREA。偶高速缓存区域EVEN CACHE AREA可以包括多个第一高速缓存组EVEN0至EVEN63。奇高速缓存区域ODD CACHE AREA可以包括多个第二高速缓存组ODD0至ODD63。多个第一高速缓存组EVEN0至EVEN63可以储存与偶数位地址相对应的第一数据。多个第二高速缓存组ODD0至ODD63可以储存与奇数位地址相对应的第二数据。

如上所述,根据地址ADD_HOST的LSB,地址ADD_HOST可以被归类到偶数位地址或奇数位地址。即,地址ADD_HOST的LSB可以确定将数据DATA_HOST分配给多个第一高速缓存组EVEN0至EVEN63还是多个第二高速缓存组ODD0至ODD63。因此,地址ADD_HOST的一些低阶位中除了LSB以外的其他低阶位可以被归类到索引INDEX。

当第一高速缓存组EVEN0至EVEN63和第二高速缓存组ODD0至ODD63被归类到32个索引时,地址ADD_HOST的五个低阶位可以用于寻址。此时,除了LSB之外,地址ADD_HOST的五个低阶位中的其他第二至第五个低阶位可以被归类到索引INDEX。即,索引“0”和“1”可以对应于其中地址ADD_HOST的第二至第五低阶位是“0000”的相同的值。因此,当其中第二至第五低阶位为'0000'的地址ADD_HOST输入时,检查电路113不仅可以访问第一高速缓存组EVEN0至EVEN3,而且可以访问第二高速缓存组ODD0至ODD3。检测电路115可以检查地址ADD_HOST的LSB,使得数据DATA_HOST被分配给第一高速缓存组EVEN0至EVEN3和第二高速缓存组ODD0至ODD3之一。

图3是示出了高速缓存组CACHE SET的示图。图2的第一高速缓存组EVEN0至EVEN63和第二高速缓存组ODD0至ODD63中的每一个可以如图3所示地配置。

如图3所示,高速缓存组CACHE SET可以包括用于标签TAG的字段、用于数据组DATASET的字段、用于有效位VALID的有效字段和用于配对位PAIR的配对字段。

标签TAG可以指示与地址ADD_HOST的除了LSB和与索引INDEX相对应的低阶位之外的其他比特位相对应的信息。例如,当数据块尺寸为64比特位时,可以忽略地址ADD_HOST的第一至第六比特位,因为第一至第六比特位对应于一次被处理的数据DATA_HOST。在图2的实施例中,地址ADD_HOST的第7至第11比特位可以对应于LSB和索引INDEX。因此,标签TAG可以对应于从第12比特位开始的地址ADD_HOST的其他高阶位。当地址ADD_HOST由20比特位组成时,标签TAG可以包括9比特位信息。

主机1所请求的数据DATA_HOST可以被储存在数据组DATA SET中。数据组DATA SET可以储存具有与主机1的数据块尺寸相同的尺寸的数据,例如64比特位数据。

有效位VALID可以包括标志位,该标志位指示数据是否已经从存储器120更新到相应的高速缓存组中。当标志位被激活并且因此有效位VALID被储存为值“1”时,其可以指示数据已经从存储器120更新到相应的高速缓存组中。当标志位被去激活并且因此有效位VALID被储存为值“0”时,其可以指示数据尚未从存储器120更新到相应的高速缓存组中。即,有效位VALID可以包括相应的高速缓存组的有效信息。

配对位PAIR可以指示关于位置的信息,在该位置储存对应于与对应于储存在数据组DATA SET中的数据DATA_HOST的地址ADD_HOST相邻的地址的数据。基于储存在配对位PAIR中的位置信息,与储存在数据组DATA SET中的数据DATA_HOST相邻的数据可以一起被逐出。配对位PAIR可以被配置为2比特位,以指示包括在一个索引INDEX中的四个高速缓存组CACHE SET的位置信息。然而,取决于高速缓存存储器111的配置,配对位PAIR可以被配置为各种数量的比特位。

图4和图5是示出根据实施例的存储系统100的操作的流程图。

随着主机1向存储器控制器110传送用于写入操作的请求REQ、地址ADD_HOST和数据DATA_HOST,存储系统100的写入操作可以开始。作为响应,存储器控制器110可以检查向高速缓存存储器111的偶高速缓存区域EVEN CACHE AREA和奇高速缓存区域ODD CACHEAREA中的每一个输入的数据DATA_HOST的命中或未命中。

图4示出了其中存储器控制器110针对高速缓存存储器111的偶高速缓存区域EVENCACHE AREA来检查数据DATA_HOST的命中或未命中的操作。即,在步骤S401中当主机1请求写入操作时,在步骤S403中,检查电路113可以基于输入地址ADD_HOST来检查高速缓存存储器111的第一高速缓存组EVEN0至EVEN63的命中或未命中。检查电路113可以将地址ADD_HOST的低阶位之中的除LSB之外的其他低阶位与第一高速缓存组EVEN0至EVEN63的索引INDEX进行比较。

当地址ADD_HOST的第二至第五低阶位与为“0”(即,“0000”)的索引INDEX一致时,检查电路113可以访问与为'0'的索引INDEX相对应的四个第一高速缓存组EVEN0至EVEN3。检查电路113可以将地址ADD_HOST的除LSB和与索引INDEX相对应的低阶位之外的其他比特位与四个第一高速缓存组EVEN0至EVEN3的标签TAG进行比较。当比较结果指示四个第一高速缓存组EVEN0至EVEN3中的第三高速缓存组具有与地址ADD_HOST的其他比特位一致的标签值时,检查电路113可以将第三高速缓存组检查为命中(步骤S403中为HIT)。当比较结果指示在四个第一高速缓存组EVEN0至EVEN3之中不存在具有与地址ADD_HOST的其他比特位一致的标签值的高速缓存组时,检查电路113可以将四个第一高速缓存组EVEN0至EVEN3检查为未命中(步骤S403中为MISS)。

在步骤S405和步骤S411中,检测电路115可以基于地址ADD_HOST来检测数据DATA_HOST是偶数据还是奇数据。当地址ADD_HOST的LSB对应于偶数时,检测电路115可以将数据DATA_HOST检测为偶数据,并且数据DATA_HOST可以对应于第一高速缓存组EVEN0至EVEN63。当地址ADD_HOST的LSB对应于奇数时,检测电路115可以将数据DATA_HOST检测为奇数据,并且数据DATA_HOST可以对应于第二高速缓存组ODD0至ODD63。

当多个第一高速缓存组EVEN0至EVEN63中的第三高速缓存组被检查为命中(步骤S403中为“HIT”)并且数据DATA_HOST对应于第一高速缓存组EVEN0至EVEN63(步骤S405中为“EVEN”)时,在步骤S407中控制电路117可以将数据DATA_HOST储存在第三高速缓存组中。当多个第一高速缓存组EVEN0至EVEN63中的第三高速缓存组被检查为命中(步骤S403中为HIT)并且数据DATA_HOST对应于第二高速缓存组ODD0至ODD63(步骤S405中为ODD)时,在步骤S409中控制电路117可以生成第三高速缓存组的位置信息。

当多个第一高速缓存组EVEN0至EVEN63之中的与地址ADD_HOST的其他低阶位相对应的四个第一高速缓存组EVEN0至EVEN3被检查为未命中(步骤S403中为MISS)并且数据DATA_HOST对应于在第一高速缓存组EVEN0至EVEN63(步骤S411中为EVEN)时,在步骤S413中,控制电路117可以向四个第一高速缓存组EVEN0至EVEN3分配数据DATA_HOST。基于四个第一高速缓存组EVEN0至EVEN3的有效信息,即有效位VALID,控制电路117可以检查四个第一高速缓存组EVEN0至EVEN3之中的有效的或空的第一高速缓存组。控制电路117可以将数据DATA_HOST储存在有效的第一高速缓存组中。

图5示出了其中存储器控制器110针对高速缓存存储器111的奇高速缓存区域ODDCACHE AREA来检查数据DATA_HOST的命中或未命中的操作。在图4和图5中,可以以类似的方式执行存储器控制器110检查数据DATA_HOST的命中或未命中的详细操作。因此,这里将省略其重复的描述。

在步骤S501中当主机1请求写入操作时,在步骤S503中,检查电路113可以基于输入的地址ADD_HOST来检查高速缓存存储器111的第二高速缓存组ODD0至ODD63的命中或未命中。检查电路113可以将地址ADD_HOST的低阶位中的除了LSB之外的其他低阶位与第二高速缓存组ODD0至ODD63的索引INDEX进行比较。

如在前述示例中,当地址ADD_HOST的第二至第五低阶位与为'1'(即,'0000')的索引INDEX一致时,检查电路113可以访问对应于索引INDEX'1'的四个第二高速缓存组ODD0至ODD3。检查电路113可以将地址ADD_HOST的除LSB和与索引INDEX相对应的低阶位之外的其他比特位与四个第二高速缓存组ODD0至ODD3的标签TAG进行比较。当比较结果指示四个第二高速缓存组ODD0至ODD3中的第四高速缓存组具有与地址ADD_HOST的其他比特位一致的标签值时,检查电路113可以将第四高速缓存组检查为命中(步骤S503中为HIT)。当比较结果指示在四个第二高速缓存组ODD0至ODD3之中不存在具有与地址ADD_HOST的其他比特位一致的标签值的高速缓存组时,检查电路113可以将四个第二高速缓存组ODD0至ODD3检查为未命中(步骤S503中为MISS)。

类似地,在步骤S505和S511中,检测电路115可以基于地址ADD_HOST来检测数据DATA_HOST是偶数据还是奇数据。当多个第二高速缓存组ODD0至ODD63中的第四高速缓存组被检查为命中(步骤S503中为HIT)并且数据DATA_HOST对应于第二高速缓存组ODD0至ODD63(步骤S505中为ODD)时,在步骤S507中,控制电路117可以将数据DATA_HOST储存在第四高速缓存组中。当多个第二高速缓存组ODD0至ODD63中的第四高速缓存组被检查为命中(步骤S503中为HIT)并且数据DATA_HOST对应于第一高速缓存组EVEN0至EVEN63(步骤S505中为偶)时,在步骤S509中,控制电路117可以生成第四高速缓存组的位置信息。当多个第二高速缓存组ODD0至ODD63之中的与地址ADD_HOST的其他低阶位相对应的四个第二高速缓存组ODD0至ODD3被检查为未命中(步骤S503中为MISS)并且数据DATA_HOST对应于第二高速缓存组ODD0至ODD63(步骤S511中为ODD)时,则在步骤S513中控制电路117可以向四个第二高速缓存组ODD0至ODD3分配数据DATA_HOST。

返回参照图4,当多个第一高速缓存组EVEN0至EVEN63中的第三高速缓存组被检查为命中(步骤S403中为HIT)并且数据DATA_HOST对应于第一高速缓存组EVEN0至EVEN63(步骤S405中为EVEN)时,在步骤S407中控制电路117可以将数据DATA_HOST储存在第三高速缓存组中。此时,当在多个第二高速缓存组ODD0至ODD63中出现第四高速缓存组(步骤S503中为HIT)被检查为命中时,数据DATA_HOST可以对应于第一高速缓存组EVEN0至EVEN63(步骤S505中为EVEN)。因此,在步骤S509中控制电路117可以生成第四高速缓存组的位置信息。

因此,控制电路117可以在将数据DATA_HOST储存在第三高速缓存组中期间储存第四高速缓存组的位置信息。控制电路117可以在将数据DATA_HOST储存在第三高速缓存组的数据组DATA SET中期间将第四高速缓存组的位置信息储存在第三高速缓存组的配对位PAIR中。即,控制电路117可以检查与相邻地址相对应的数据以及数据DATA_HOST的命中/未命中,并且根据检查结果将与相邻地址相对应的数据的位置信息与数据DATA_HOST一起储存。在一个实施例中,当逐出储存在第三高速缓存组的数据组DATA SET中的数据时,控制电路117可以基于储存在第三高速缓存组的配对位PAIR中的位置信息一起逐出第四高速缓存组的数据。

当在步骤S413中控制电路117向第一高速缓存组EVEN0至EVEN3分配数据DATA_HOST时,当未检查到有效的第一高速缓存组时可以逐出第一高速缓存组EVEN0至EVEN3的数据。控制电路117可以检查第一高速缓存组EVEN0至EVEN3的配对信息,即,配对位PAIR。基于该配对信息,控制电路117可以检查第一高速缓存组EVEN0至EVEN3之中的与第二高速缓存组ODD0至ODD63配对的第一高速缓存组。控制电路117可以检查第一高速缓存组EVEN0至EVEN3之中的在配对位PAIR中包括位置信息的第一高速缓存组,作为与第二高速缓存组ODD0至ODD63配对的第一高速缓存组。

也就是说,可以将在配对位PAIR中包括位置信息的第一高速缓存组与对应于该位置信息的第二高速缓存组配对为用于储存与相邻地址相对应的数据的高速缓存组。控制电路117可以将彼此配对的第一高速缓存组和第二高速缓存组的数据一起逐出。控制电路117可以将数据DATA_HOST储存在已经被逐出数据的第一高速缓存组中。

类似地,当将数据DATA_HOST储存在有效的第一高速缓存组或数据已被从中逐出的第一高速缓存组中时,多个第二高速缓存组ODD0至ODD63中的第四高速缓存组可以被检查为命中,并且位置信息可以生成。在这种情况下,控制电路117可以将数据DATA_HOST和第四高速缓存组的位置信息储存在有效的第一高速缓存组中或数据已被从中逐出的第一高速缓存组中。控制电路117可以在将数据DATA_HOST储存在数据已被从中逐出的第一高速缓存组或有效的第一高速缓存组的数据组DATASET中期间,将第四高速缓存组的位置信息储存在数据已被从中逐出的第一高速缓存组的配对位PAIR或有效的第一高速缓存组的配对位PAIR中。

根据本实施例,存储系统不仅可以有效地使用具有不同数据块尺寸的主机和存储器之间的高速缓存存储器的区域,而且还可以防止由于数据块尺寸的差异而导致的不必要执行的逐出操作。

尽管出于说明性目的已经描述了各种实施例,但是对于本领域技术人员而言显而易见的是,在不脱离如所附权利要求书所限定的本发明的精神和范围的情况下,可以进行各种改变和修改。

16页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种电子设备以及存储卡

网友询问留言

已有0条留言

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

精彩留言,会给你点赞!

技术分类