CN110998548A - 高速缓冲存储器筛选器 - Google Patents
高速缓冲存储器筛选器 Download PDFInfo
- Publication number
- CN110998548A CN110998548A CN201880050678.7A CN201880050678A CN110998548A CN 110998548 A CN110998548 A CN 110998548A CN 201880050678 A CN201880050678 A CN 201880050678A CN 110998548 A CN110998548 A CN 110998548A
- Authority
- CN
- China
- Prior art keywords
- cache
- request
- data
- memory device
- controller
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0888—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using selective caching, e.g. bypass
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
- G06F12/0871—Allocation or management of cache space
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/12—Replacement control
- G06F12/121—Replacement control using replacement algorithms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1016—Performance improvement
- G06F2212/1024—Latency reduction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/21—Employing a record carrier using a specific recording technology
- G06F2212/214—Solid state disk
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/46—Caching storage objects of specific type in disk cache
- G06F2212/461—Sector or disk block
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/46—Caching storage objects of specific type in disk cache
- G06F2212/466—Metadata, control data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/60—Details of cache memory
- G06F2212/603—Details of cache memory of operating mode, e.g. cache mode or local memory mode
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本发明包含与包含筛选器的存储器系统有关的设备及方法。实例设备可包含用以存储若干旗标的筛选器,其中所述若干旗标中的每一者对应于高速缓冲存储条目,且所述若干旗标中的每一者识别所述存储器装置的部分,对应高速缓冲存储条目的数据在所述部分处存储于所述存储器装置中。
Description
技术领域
本发明大体上涉及存储器系统,且更特定来说,涉及具有具筛选器的存储器系统的设备及方法。
背景技术
存储器装置通常提供为运算装置或其它电子装置中的内部半导体集成电路。存在许多不同类型的存储器,包含易失性存储器及非易失性存储器。易失性存储器可需要电力来维持其数据(例如,用户数据、错误数据等),且包含随机存取存储器(RAM)、动态随机存取存储器(DRAM)及同步动态随机存取存储器(SDRAM)等等。非易失性存储器可通过在未被供电时保存所存储数据而提供永久性数据,且可包含NAND快闪存储器、NOR快闪存储器、只读存储器(ROM)、电可擦除可编程ROM(EEPROM)、可擦除可编程ROM(EPROM)及电阻可变存储器,例如相变随机存取存储器(PCRAM)、电阻式随机存取存储器(RRAM)及磁阻式随机存取存储器(MRAM),等等。
存储器系统可包含与系统的其它存储器(例如,DRAM、NAND、磁盘存储器、固态磁盘(SSD)等,其可称为主存储器)相比更小及/或更快的高速缓冲存储器。作为实例,高速缓冲存储器可包括DRAM存储器。存储器系统可高速缓冲存储数据以改进存储器系统的性能。因此,期望提供实现存储器系统的改进性能的高速缓冲存储器。改进高速缓冲存储器的延时及命中率是可提供存储器系统的改进性能的性能特性。
附图说明
图1是根据本发明的一或多个实施例的包含呈主机形式的设备及呈存储器系统形式的设备的运算系统的框图。
图2是根据本发明的若干实施例的呈存储器系统形式的设备的框图。
图3是根据本发明的若干实施例的呈包含筛选器的高速缓冲存储器控制器形式的设备的框图。
图4到5是说明根据本发明的若干实施例的高速缓冲存储器控制器的筛选器中的旗标的图。
具体实施方式
本发明包含与包含筛选器的存储器系统有关的设备及方法。实例设备可包含用以存储若干旗标的筛选器,其中若干旗标中的每一者对应于高速缓冲存储条目,且若干旗标中的每一者识别存储器装置的部分,对应高速缓冲存储条目的数据在所述部分处存储于存储器装置中。
在若干实施例中,高速缓冲存储器及/或高速缓冲存储器控制器上的筛选器可用于预测高速缓冲存储器控制器是否应使用高速缓冲存储器及/或存储器装置(例如,备份存储器)服务用以读取数据及/或将数据写入到存储器系统的请求。举例来说,筛选器可包含若干旗标,其中若干旗标中的每一者可具有高速缓冲存储器中的对应高速缓冲存储条目(例如,高速缓冲存储线),且其识别存储器装置的部分,对应高速缓冲存储条目的数据在所述部分处存储于所述存储器装置中。高速缓冲存储器控制器可使用来自请求的信息及筛选器中的旗标来确定是否可使用高速缓冲存储器中的数据服务请求,或是否使用存储器装置中的数据来服务请求。
在若干实施例中,旗标可包含若干位,所述位识别存储器装置的部分,对应高速缓冲存储条目的数据在所述部分处存储于所述存储器装置中。若干位还可指示对应高速缓冲存储条目的数据是有效还是无效及/或是已变更(dirty)还是未变更。举例来说,存储器装置可包含具特定大小的16个区,且高速缓冲存储器可为存储器装置的所述区中的一者的大小。筛选器可包含第一位,所述第一位可用于预测对应高速缓冲存储条目的数据是否在存储器装置的第一部分(在此实例中,存储器装置的前8个区)中或在存储器装置的第二部分(在此实例中,存储器装置的最后8个区)中。筛选器可包含第一位及第二位,其可用于预测对应高速缓冲存储条目的数据是否在存储器装置的第一部分(在此实例中,其对应于存储器装置的前4个区)中、在存储器装置的第二部分(在此实例中,其对应于存储器装置的第二4个区)中、在存储器装置的第三部分(在此实例中,其对应于存储器装置的第三4个区)中,或在存储器装置的第四部分(在此实例中,其对应于存储器装置的最后4个区)中。筛选器还可包含指示相关联高速缓冲存储条目中的数据是否有效或无效的位,及指示相关联高速缓冲存储条目中的数据是否已变更或未变更的位。
高速缓冲存储器控制器可接收具有例如地址信息的信息的请求。请求中的信息可指示筛选器中的哪一旗标与请求相关联、高速缓冲存储器中的哪一高速缓冲存储条目与请求相关联,及与请求相关联的数据定位于及/或将定位于存储器装置中的何处。高速缓冲存储器控制器可定位与请求相关联的旗标,且比较关于与请求相关联的数据定位于及/或将定位于存储器装置中何处的信息与识别存储器装置的部分的旗标中的所述位(例如,设置),对应高速缓冲存储条目的数据在所述部分处存储于存储器装置中。如果与请求相关联的数据定位于及/或将定位于存储器装置中之处的位置在如由旗标识别的存储器装置的所述部分(对应高速缓冲存储条目的数据在所述部分处存储于所述存储器装置中)中,那么高速缓冲存储器控制器可通过查询高速缓冲存储器以确定与请求相关联的数据是否定位于所述高速缓冲存储器中而尝试使用高速缓冲存储器服务所述请求。如果与请求相关联的数据定位于及/或将定位于存储器装置中之处的位置不在如由旗标识别的存储器装置的部分(对应高速缓冲存储条目的数据在所述部分处存储于存储器装置中)中,那么高速缓冲存储器控制器可使用存储器装置来服务所述请求。
在若干实施例中,可通过确定是否尝试使用高速缓冲存储器服务对数据的请求而使用筛选器来减少具有高速缓冲存储器的存储器系统的延时。筛选器可指示是否有机会可使用高速缓冲存储器中的数据来服务请求。如果筛选器指示请求将为高速缓冲存储器未中,那么高速缓冲存储器控制器可跳过尝试用处于所述高速缓冲存储器中的数据服务请求(例如,跳过在高速缓冲存储器中搜索与请求相关联的数据),因此减少与请求相关联的所述延时且减小高速缓冲存储器上的负载。
在本发明的以下详细描述中,参考形成本发明的部分且其中通过说明展示可如何实践本发明的一或多个实施例的附图。足够详细地描述这些实施例以使所属领域的一般技术人员能够实践本发明的实施例,且应了解,可利用其它实施例且可进行过程、电气及/或结构改变而不脱离本发明的范围。如本文中使用,标示符“M”、“N”及“X”(尤其是相对于图式中的元件符号的标示符)指示可包含如此指定的若干特定特征。如本文中使用,“若干”特定事物可指代此类事物中的一或多者(例如,若干存储器装置可指代一或多个存储器装置)。
本文中的图遵循编号惯例,其中第一数字或前几位数字对应于图式图号且其余数字识别图式中的元件或组件。可通过使用类似数字而识别不同图之间的类似元件或组件。举例来说,120可指涉图1中的元件“20”,且类似元件在图2中可指涉为220。如将明白,可添加、交换及/或消除在本文中的各种实施例中展示的元件以提供本发明的若干额外实施例。
图1是根据本发明的一或多个实施例的包含呈主机102形式的设备及呈存储器系统104形式的设备的运算系统100的功能框图。如本文中使用,“设备”可指代但不限于多种结构或结构组合中的任一者(例如(例如)电路或电路系统、一或多个裸片、一或多个模块、一或多个装置或者一或多个系统)。在图1A中说明的实施例中,存储器系统104可包含控制器108、高速缓冲存储器控制器120、高速缓冲存储器110及若干存储器装置111-1、…、111-X。高速缓冲存储器120及/或存储器装置111-1、…、111-X可包含易失性存储器及/或非易失性存储器。
如图1中说明,主机102可耦合到存储器系统104。在若干实施例中,存储器系统104可经由信道耦合到主机102。主机102可为膝上型计算机、个人计算机、数码相机、数字记录及播放装置、移动电话、PDA、存储卡读取器、接口集线器以及其它主机系统,且可包含存储器存取装置,举例来说,处理器。所属领域的一般技术人员将了解,“处理器”可意指一或多个处理器,例如平行处理系统、若干协同处理器等。
主机102可包含用以与存储器系统104通信的主机控制器。主机102可经由信道将命令发送到存储器系统104。主机102可与存储器系统104及/或存储器系统104上的控制器108通信以读取、写入及擦除数据以及进行其它操作。物理主机接口可提供用于在存储器系统104与主机102(其具有用于物理主机接口的兼容接受器)之间传递控制、地址、数据及其它信号的接口。信号可在若干总线(例如数据总线及/或地址总线)上例如经由信道在主机102与存储器系统104之间传递。
控制器108、主机控制器、高速缓冲存储器110上的控制器及/或高速缓冲存储器上的控制器可包含控制电路,举例来说,硬件、固件及/或软件。在一或多个实施例中,控制器108、主机控制器、高速缓冲存储器110上的控制器及/或高速缓冲存储器上的控制器可为耦合到包含物理接口的印刷电路板的专用集成电路(ASIC)。存储器系统104可包含高速缓冲存储器控制器120及高速缓冲存储器110。高速缓冲存储器控制器120及高速缓冲存储器110可用于缓冲及/或高速缓冲存储在执行读取命令及/或写入命令期间使用的数据。
高速缓冲存储器控制器120可包含具有筛选器122的缓冲器。缓冲器可包含可用作筛选器122的若干易失性存储器(例如,SRAM)阵列。高速缓冲存储器控制器上的缓冲器可经配置以存储信号、地址信号(例如,读取及/或写入命令)及/或数据(例如,元数据及/或写入数据)。缓冲器可在执行命令时暂时存储信号及/或数据。高速缓冲存储器110可包含用作高速缓冲存储器的存储器单元(例如,DRAM存储器单元)阵列,且可经配置以存储还存储于存储器装置中的数据。存储于高速缓冲存储器及存储器装置中的数据是由控制器寻址,且可在执行命令期间定位于高速缓冲存储器及/或存储器装置中。
存储器装置111-1、…、111-X可提供存储器系统的主存储器或可在整个存储器系统104中用作额外存储器或存储器。每一存储器装置111-1、…、111-X可包含一或多个存储器单元(例如,非易失性及/或易失性存储器单元)阵列。阵列可为例如具有NAND架构的快闪阵列。实施例不限于特定类型的存储器装置。举例来说,存储器装置可包含RAM、ROM、DRAM、SDRAM、PCRAM、RRAM及快闪存储器等等。
图1的实施例可包含额外电路,未说明额外电路以免使本发明的实施例不清楚。举例来说,存储器系统104可包含用以锁存通过I/O电路经由I/O连接提供的地址信号的地址电路。可通过行解码器及列解码器接收且解码地址信号以存取存储器装置111-1、…、111-X。所属领域的技术人员将了解,地址输入连接的数目可取决于存储器装置111-1、…、111-X的密度及架构。
图2是根据本发明的若干实施例的呈存储器系统形式的设备的框图。在图2中,存储器系统可经配置以高速缓冲存储数据且服务来自主机及/或存储器系统控制器的请求。存储器系统可包含具有包含筛选器222的缓冲器的高速缓冲存储器控制器220。举例来说,缓冲器可包含SRAM存储器。缓冲器可包含关于高速缓冲存储器210中的数据的信息,包含高速缓冲存储器中的数据的元数据及/或地址信息。存储器系统可包含耦合到高速缓冲存储器控制器220的存储器装置211。存储器装置211可包含非易失性存储器阵列及/或易失性存储器阵列,且可用作存储器系统的备份存储器。
存储器装置211可包含用于执行存储器装置211上的命令的控制器及/或控制电路(例如,硬件、固件及/或软件)。控制电路可从存储器系统控制器及/或高速缓冲存储器控制器220接收命令。控制电路可经配置以执行命令而读取存储器装置211中的数据及/或将数据写入于存储器装置211中。
图3是根据本发明的若干实施例的呈包含筛选器的高速缓冲存储器控制器形式的设备的框图。在图3中,筛选器322可包含于高速缓冲存储器控制器(例如(例如)图1中的高速缓冲存储器控制器120)上。筛选器322可包含若干条目(例如,旗标324-1、…、324-X)。旗标324-1、…、324-X中的每一者可对应于高速缓冲存储器(例如图1中的高速缓冲存储器110)中的条目(例如,高速缓冲存储器线)。举例来说,筛选器322中的旗标324-1可对应于高速缓冲存储器中的第一条目,筛选器322中的旗标324-2可对应于高速缓冲存储器中的第二条目,筛选器322中的旗标324-X可对应于高速缓冲存储器中的第X条目,等等。旗标324-1、…、324-X中的每一者可包含若干位326-0、…、236-Y。
在若干实施例中,旗标中的若干位326-0、…、236-Y可识别存储器装置(例如图1中的存储器111)的部分,对应高速缓冲存储条目的数据在所述部分处存储于存储器装置中。高速缓冲存储器控制器可接收请求且基于请求中的信息定位筛选器322中的旗标。请求可包含可识别筛选器322中的旗标及还高速缓冲存储器(例如图中的高速缓冲存储器110)中的高速缓冲存储条目(与请求相关联的数据可定位于其处)的地址信息。高速缓冲存储器控制器可定位由请求识别的旗标且确定旗标的若干位是否识别存储器装置的部分,对应高速缓冲存储条目的数据在所述部分处存储于存储器装置中。
如果请求的地址信息包含如由旗标的若干位指示的存储器装置的部分(对应高速缓冲存储条目的数据在所述部分处存储于存储器装置中)的地址,那么高速缓冲存储器控制器可在高速缓冲存储器中的对应高速缓冲存储条目中检查与请求相关联的数据。高速缓冲存储器控制器可使用旗标来确定是否在高速缓冲存储器中检查与请求相关联的数据。旗标可指示及/或预测与请求相关联的数据可定位于高速缓冲存储器中,且高速缓冲存储器控制器可继续检查高速缓冲存储器以确定与请求相关联的数据是高速缓冲存储器中的命中还是未中。如果请求的地址信息不包含如由旗标的若干位指示的存储器装置的部分(对应高速缓冲存储条目的数据在所述部分处存储于存储器装置中)的地址,那么高速缓冲存储器控制器可从存储器装置检索与请求相关联的数据。
图4到5是说明根据本发明的若干实施例的高速缓冲存储器控制器的筛选器中的旗标的图。在图4中,旗标424可在高速缓冲存储器控制器上的筛选器上,且对应于高速缓冲存储器的条目(例如,高速缓冲存储器线)。旗标424可用于确定与请求相关联的数据是否可在高速缓冲存储器中或是否未在高速缓冲存储器中。在图4中,旗标424可包含位426-0、426-1、426-2及426-3。在若干实施例中,旗标424可包含任何数目个位。位可对应于地址的至少一部分,对应高速缓冲存储条目中的数据存储于存储器装置中的所述至少一部分处。高速缓冲存储器控制器可通过比较请求中的地址信息与旗标中的位而确定与请求相关联的数据是否可定位于对应高速缓冲存储条目中。如果请求中的地址信息与旗标中的位之间存在匹配,那么高速缓冲存储器控制器可检查高速缓冲存储器以确定与请求相关联的数据是否在高速缓冲存储器中。如果请求中的地址信息与旗标中的位之间不存在匹配,那么高速缓冲存储器控制器可定位及/或从存储器装置检索与请求相关联的数据。
在若干实施例中,旗标324的位426-0、426-1、426-2及426-3可设置为逻辑值1或0,其中逻辑值0指示对应高速缓冲存储条目中的数据在存储器装置的第一部分中,且逻辑值1指示对应高速缓冲存储条目中的数据在存储器装置的第二部分中。
在若干实施例中,旗标424可包含一个位(位426-0)。当位426-0被设置为逻辑值0时,旗标424可指示对应高速缓冲存储条目中的数据在存储器装置的部分432-1中,部分432-1包含存储器装置的区430-0、…、430-7。当位426-0被设置为逻辑值1时,旗标424可指示对应高速缓冲存储条目中的数据在存储器装置的部分432-2中,部分432-2包含存储器装置的区430-8、…、430-15。
在若干实施例中,旗标424可包含两个位(位426-0及426-1)。当位426-0被设置为逻辑值0且位426-1被设置为逻辑值0时,旗标424可指示对应高速缓冲存储条目中的数据在存储器装置的部分434-1中,部分434-1包含存储器装置的区430-0、…、430-3。当位426-0被设置为逻辑值0且位426-1被设置为逻辑值1时,旗标424可指示对应高速缓冲存储条目中的数据在存储器装置的部分434-2中,部分434-2包含存储器装置的区430-4、…、430-7。当位426-0被设置为逻辑值1且位426-1被设置为逻辑值0时,旗标424可指示对应高速缓冲存储条目中的数据在存储器装置的部分434-3中,部分434-3包含存储器装置的区430-8、…、430-11。当位426-0被设置为逻辑值1且位426-1被设置为逻辑值1时,旗标424可指示对应高速缓冲存储条目中的数据在存储器装置的部分434-4中,部分434-4包含存储器装置的区430-12、…、430-15。
在若干实施例中,旗标424可包含三个位(位426-0、426-1及426-3)。当位426-0被设置为逻辑值0、位426-1被设置为逻辑值0且位426-2被设置为逻辑值0时,旗标424可指示对应高速缓冲存储条目中的数据在存储器装置的部分436-1中,部分436-1包含存储器装置的区430-0、…、430-1。当位426-0被设置为逻辑值0、位426-1被设置为逻辑值0且位426-2被设置为逻辑值1时,旗标424可指示对应高速缓冲存储条目中的数据在存储器装置的部分436-2中,部分436-2包含存储器装置的区430-2、…、430-3。当位426-0被设置为逻辑值0、位426-1被设置为逻辑值1且位426-2被设置为逻辑值0时,旗标424可指示对应高速缓冲存储条目中的数据在存储器装置的部分436-3中,部分436-3包含存储器装置的区430-4、…、430-5。当位426-0被设置为逻辑值0、位426-1被设置为逻辑值1且位426-2被设置为逻辑值1时,旗标424可指示对应高速缓冲存储条目中的数据在存储器装置的部分436-4中,部分436-4包含存储器装置的区430-6、…、430-7。当位426-0被设置为逻辑值0、位426-1被设置为逻辑值0且位426-2被设置为逻辑值0时,旗标424可指示对应高速缓冲存储条目中的数据在存储器装置的部分436-5中,部分436-5包含存储器装置的区430-8、…、430-9。当位426-0被设置为逻辑值1、位426-1被设置为逻辑值0且位426-2被设置为逻辑值1时,旗标424可指示对应高速缓冲存储条目中的数据在存储器装置的部分436-6中,部分436-6包含存储器装置的区430-10、…、430-11。当位426-0被设置为逻辑值1、位426-1被设置为逻辑值1且位426-2被设置为逻辑值0时,旗标424可指示对应高速缓冲存储条目中的数据在存储器装置的部分436-7中,部分436-7包含存储器装置的区430-12、…、430-13。当位426-0被设置为逻辑值1、位426-1被设置为逻辑值1且位426-2被设置为逻辑值1时,旗标424可指示对应高速缓冲存储条目中的数据在存储器装置的部分436-8中,部分436-8包含存储器装置的区430-14、…、430-15。
在若干实施例中,旗标424可包含四个位(位426-0、426-1、426-3及426-4)。当位426-0被设置为逻辑值0、位426-1被设置为逻辑值0、位426-2被设置为逻辑值0且位426-3被设置为逻辑值0时,旗标424可指示对应高速缓冲存储条目中的数据在存储器装置的部分438-1中,部分438-1包含存储器装置的区430-0。当位426-0被设置为逻辑值0、位426-1被设置为逻辑值0、位426-2被设置为逻辑值0且位426-4被设置为逻辑值1时,旗标424可指示对应高速缓冲存储条目中的数据在存储器装置的部分438-2中,部分438-2包含存储器装置的区430-1。当位426-0被设置为逻辑值0、位426-1被设置为逻辑值0、位426-2被设置为逻辑值1且位426-4被设置为逻辑值0时,旗标424可指示对应高速缓冲存储条目中的数据在存储器装置的部分438-3中,部分438-3包含存储器装置的区430-2。当位426-0被设置为逻辑值0、位426-1被设置为逻辑值0、位426-2被设置为逻辑值1且位426-4被设置为逻辑值1时,旗标424可指示对应高速缓冲存储条目中的数据在存储器装置的部分438-4中,部分438-4包含存储器装置的区430-3。当位426-0被设置为逻辑值0、位426-1被设置为逻辑值1、位426-2被设置为逻辑值0且位426-4被设置为逻辑值0时,旗标424可指示对应高速缓冲存储条目中的数据在存储器装置的部分438-5中,部分438-5包含存储器装置的区430-4。当位426-0被设置为逻辑值0、位426-1被设置为逻辑值1、位426-2被设置为逻辑值0且位426-4被设置为逻辑值1时,旗标424可指示对应高速缓冲存储条目中的数据在存储器装置的部分438-6中,部分438-6包含存储器装置的区430-5。当位426-0被设置为逻辑值0、位426-1被设置为逻辑值1、位426-2被设置为逻辑值1且位426-4被设置为逻辑值0时,旗标424可指示对应高速缓冲存储条目中的数据在存储器装置的部分438-7中,部分438-7包含存储器装置的区430-6。当位426-0被设置为逻辑值0、位426-1被设置为逻辑值1、位426-2被设置为逻辑值1且位426-4被设置为逻辑值1时,旗标424可指示对应高速缓冲存储条目中的数据在存储器装置的部分438-8中,部分438-8包含存储器装置的区430-7。当位426-0被设置为逻辑值0、位426-1被设置为逻辑值0、位426-2被设置为逻辑值0且位426-4被设置为逻辑值0时,旗标424可指示对应高速缓冲存储条目中的数据在存储器装置的部分438-9中,部分438-9包含存储器装置的区430-8。当位426-0被设置为逻辑值1、位426-1被设置为逻辑值0、位426-2被设置为逻辑值0且位426-4被设置为逻辑值1时,旗标424可指示对应高速缓冲存储条目中的数据在存储器装置的部分438-10中,部分438-10包含存储器装置的区430-9。当位426-0被设置为逻辑值1、位426-1被设置为逻辑值0、位426-2被设置为逻辑值1且位426-4被设置为逻辑值0时,旗标424可指示对应高速缓冲存储条目中的数据在存储器装置的部分438-11中,部分438-11包含存储器装置的区430-10。当位426-0被设置为逻辑值1、位426-1被设置为逻辑值0、位426-2被设置为逻辑值1且位426-4被设置为逻辑值1时,旗标424可指示对应高速缓冲存储条目中的数据在存储器装置的部分438-12中,部分438-12包含存储器装置的区430-11。当位426-0被设置为逻辑值1、位426-1被设置为逻辑值1、位426-2被设置为逻辑值0且位426-4被设置为逻辑值0时,旗标424可指示对应高速缓冲存储条目中的数据在存储器装置的部分438-13中,部分438-13包含存储器装置的区430-12。当位426-0被设置为逻辑值1、位426-1被设置为逻辑值1、位426-2被设置为逻辑值0及位426-4被设置为逻辑值1时,旗标424可指示对应高速缓冲存储条目中的数据在存储器装置的部分438-14中,部分438-14包含存储器装置的区430-13。当位426-0被设置为逻辑值1、位426-1被设置为逻辑值1、位426-2被设置为逻辑值1且位426-4被设置为逻辑值0时,旗标424可指示对应高速缓冲存储条目中的数据在存储器装置的部分438-15中,部分438-15包含存储器装置的区430-14。当位426-0被设置为逻辑值1、位426-1被设置为逻辑值1、位426-2被设置为逻辑值1且位426-4被设置为逻辑值1时,旗标424可指示对应高速缓冲存储条目中的数据在存储器装置的部分438-16中,部分438-16包含存储器装置的区430-15。
在图5中,旗标524可在高速缓冲存储器控制器上的筛选器上且对应于高速缓冲存储器的条目(例如,高速缓冲存储器线)。旗标524可用于确定与请求相关联的数据是否可在高速缓冲存储器中或是否未在高速缓冲存储器中。在图5中,旗标524可包含位526-0、…、526-15。在若干实施例中,旗标524可包含任何数目个位。位526-0、…、526-15可对应于存储器装置的部分,对应高速缓冲存储条目中的数据在所述部分处存储于存储器装置中。高速缓冲存储器控制器可通过比较请求中的地址信息与旗标中的位而确定与请求相关联的数据是否可定位于对应高速缓冲存储条目中。如果请求中的地址信息与旗标中的位之间存在匹配,那么高速缓冲存储器控制器可检查高速缓冲存储器以确定与请求相关联的数据是否在高速缓冲存储器中。如果请求中的地址信息与旗标中的位之间不存在匹配,那么高速缓冲存储器控制器可定位及/或从存储器装置检索与请求相关联的数据。
在图5中,存储器装置包含16个区(区530-0、…、530-15),且位526-0、…、526-15中的每一者可对应于特定区。位526-0可对应于区530-0,位526-1可对应于区530-1,位526-2可对应于区530-2,位526-3可对应于区530-3,位526-4可对应于区530-4,位526-5可对应于区530-5,位526-6可对应于区530-6,位526-7可对应于区530-7,位526-8可对应于区530-8,位526-9可对应于区530-9,位526-10可对应于区530-10,位526-11可对应于区530-11,位526-12可对应于区530-12,位526-13可对应于区530-13,位526-14可对应于区530-14,且位526-15可对应于区530-15。位526-0、…、526-15可设置为逻辑值1或0。设置为逻辑值1的位指示对应高速缓冲存储条目中的数据定位于对应于位的存储器装置的区中。设置为逻辑值0的位指示对应高速缓冲存储条目中的数据未定位于对应于位的存储器装置的区中。
尽管本文中已说明且描述特定实施例,但所属领域的一般技术人员将了解,经计算以实现相同结果的布置可取代所示的特定实施例。本发明希望涵盖本发明的各种实施例的调适或变化。应了解,已以阐释性方式而非限制性方式进行上文描述。所属领域的技术人员在检阅上文描述之后将明白上文实施例的组合及未在本文中明确描述的其它实施例。本发明的各种实施例的范围包含使用上述结构及方法的其它应用。因此,应参考所附权利要求书连同此权利要求书所授权的等效物的全范围确定本发明的各种实施例的范围。
在前述具体实施方式中,出于简化本发明的目的,将各种特征群组在单个实施例中。本发明的此方法不应解释为反映本发明的所揭示实施例必须使用多于在每一权利要求中明确叙述的特征的意图。而是,如所附权利要求书反映,发明标的物存在于少于单个所揭示实施例的全部特征。因此,所附权利要求书特此并入到具体实施方式中,其中每一权利要求独立地作为单独实施例。
Claims (21)
1.一种设备,其包括:
高速缓冲存储器控制器;及
高速缓冲存储器及存储器装置,其耦合到所述高速缓冲存储器控制器,其中所述高速缓冲存储器控制器包含筛选器,所述筛选器经配置以:
存储若干旗标,其中所述若干旗标中的每一者对应于高速缓冲存储条目,且所述若干旗标中的每一者识别所述存储器装置的一部分,对应高速缓冲存储条目的数据在所述部分处存储于所述存储器装置中。
2.根据权利要求1所述的设备,其中所述存储器装置是非易失性存储器装置,且所述高速缓冲存储器是DRAM存储器装置,所述DRAM存储器装置经配置以存储存储于所述存储器装置中的所述数据的一部分。
3.根据权利要求1所述的设备,其中所述若干旗标指示所述存储器装置的部分,对应于请求的数据定位于所述部分处。
4.根据权利要求1到3中任一权利要求所述的设备,其中所述若干旗标的设置指示所述高速缓冲存储器是否存储对应于请求的有效数据。
5.根据权利要求1到3中任一权利要求所述的设备,其中所述若干旗标中的每一者识别存储于对应高速缓冲存储条目的所述存储器装置中的数据的至少一部分位置。
6.一种设备,其包括:
高速缓冲存储器控制器;及
高速缓冲存储器及存储器装置,其耦合到所述高速缓冲存储器控制器,其中所述高速缓冲存储器控制器包含筛选器,其中所述筛选器包含对应于所述高速缓冲存储器中的若干高速缓冲存储条目的若干旗标,且其中所述高速缓冲存储器控制器经配置以基于所述若干旗标确定是否在所述高速缓冲存储器中搜索对应于请求的数据。
7.根据权利要求6所述的设备,其中所述高速缓冲存储器控制器经配置以响应于指示对应于所述请求的所述数据在所述高速缓冲存储器中的所述若干旗标中的一者而定位对应于所述请求的所述高速缓冲存储器中的数据。
8.根据权利要求6所述的设备,其中所述高速缓冲存储器控制器经配置以响应于指示对应于所述请求的所述数据未在所述高速缓冲存储器中的所述若干旗标中的一者而定位对应于所述请求的所述存储器装置中的数据。
9.根据权利要求6到8中任一权利要求所述的设备,其中所述若干旗标的第一位指示对应于所述请求的高速缓冲存储条目是否存储来自所述存储器装置的第一部分或第二部分的数据,且其中所述若干旗标的第二位指示对应于所述请求的高速缓冲存储条目是否存储来自所述存储器装置的第一部分、第二部分、第三部分或第四部分的数据。
10.一种设备,其包括:
控制器;及
存储器装置,其经由高速缓冲存储器控制器耦合到所述控制器,所述高速缓冲存储器控制器包含筛选器;
其中所述控制器经配置以接收对数据的若干请求;且查询所述高速缓冲存储器控制器以确定对应于对数据的所述若干请求的所述数据是否定位于高速缓冲存储器中;且
其中所述高速缓冲存储器控制器经配置以基于所述筛选器中的若干条目确定对应于对数据的所述若干请求的数据是否定位于所述高速缓冲存储器中,所述若干条目识别存储于对应高速缓冲存储条目的所述存储器装置中的数据的位置。
11.根据权利要求10所述的设备,其中对数据的所述若干请求包含对应于特定请求的所述数据所定位的所述存储器装置中的位置的指示。
12.根据权利要求10所述的设备,其中所述筛选器是所述高速缓冲存储器控制器上的SRAM,并且包含用于确定所述高速缓冲存储器是否经存取以定位对应于对数据的所述若干请求的数据的所述高速缓冲存储器的每一高速缓冲存储器的条目。
13.根据权利要求10到12中任一权利要求所述的设备,其中所述若干旗标识别对应于存储于特定高速缓冲存储条目中的所述数据的所述存储器装置的一部分。
14.一种方法,其包括:
在高速缓冲存储器控制器处接收对数据的请求;
基于所述请求中的信息定位所述高速缓冲存储器控制器上的筛选器中的条目;
基于所述请求中的所述信息匹配所述筛选器中的所述条目的旗标而确定与所述请求相关联的数据可定位于高速缓冲存储器中;及
基于所述请求中的所述信息不匹配所述筛选器中的所述条目而确定与所述请求相关联的数据未定位于所述高速缓冲存储器中。
15.根据权利要求14所述的方法,其中确定与所述请求相关联的数据可定位于所述高速缓冲存储器中包含:将与所述请求相关联的地址信息的一部分与所述筛选器中的所述条目的所述旗标进行匹配,所述旗标识别与所述请求相关联的数据可定位的所述高速缓冲存储器的一部分。
16.根据权利要求14所述的方法,其进一步包含响应于确定与所述请求相关联的数据可定位于所述高速缓冲存储器中而在所述高速缓冲存储器中搜索与所述请求相关联的所述数据。
17.根据权利要求14所述的方法,其中确定与所述请求相关联的数据未定位于所述高速缓冲存储器中包含:将与所述请求相关联的地址信息的一部分与所述筛选器中的所述条目的所述旗标进行匹配。
18.根据权利要求14所述的方法,其中确定与所述请求相关联的数据未定位于所述高速缓冲存储器中包含:在所述条目中定位与所述请求相关联的高速缓冲存储条目无效的指示。
19.一种方法,其包括:
在高速缓冲存储器控制器处接收对数据的请求;及
基于所述高速缓冲存储器控制器上的筛选器中的旗标确定与所述请求相关联的数据是否可在高速缓冲存储器中,其中所述旗标识别存储器装置的一部分,对应高速缓冲存储条目的数据在所述部分处存储于所述存储器装置中。
20.根据权利要求19所述的方法,其进一步包含通过查询所述高速缓冲存储器以确定与所述请求相关联的所述数据是否定位于所述高速缓冲存储器中而服务所述请求。
21.根据权利要求19所述的方法,其进一步包含使用所述存储器装置来服务所述请求,且不查询所述高速缓冲存储器以确定与所述请求相关联的所述数据是否定位于所述高速缓冲存储器中。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/668,016 US10402337B2 (en) | 2017-08-03 | 2017-08-03 | Cache filter |
US15/668,016 | 2017-08-03 | ||
PCT/US2018/044726 WO2019028092A1 (en) | 2017-08-03 | 2018-08-01 | CACHE MEMORY FILTER |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110998548A true CN110998548A (zh) | 2020-04-10 |
Family
ID=65229625
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880050678.7A Withdrawn CN110998548A (zh) | 2017-08-03 | 2018-08-01 | 高速缓冲存储器筛选器 |
Country Status (6)
Country | Link |
---|---|
US (3) | US10402337B2 (zh) |
EP (1) | EP3662377A4 (zh) |
KR (1) | KR102388667B1 (zh) |
CN (1) | CN110998548A (zh) |
TW (2) | TWI732128B (zh) |
WO (1) | WO2019028092A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10776281B2 (en) * | 2018-10-04 | 2020-09-15 | International Business Machines Corporation | Snoop invalidate filter for distributed memory management unit to reduce snoop invalidate latency |
US10783085B1 (en) * | 2019-03-01 | 2020-09-22 | Apple Inc. | Cache filtering |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1475917A (zh) * | 2002-07-12 | 2004-02-18 | 恩益禧电子股份有限公司 | 高速缓冲存储器及控制方法 |
US20070130426A1 (en) * | 2005-12-05 | 2007-06-07 | Fujitsu Limited | Cache system and shared secondary cache with flags to indicate masters |
US20090300293A1 (en) * | 2008-05-30 | 2009-12-03 | Advanced Micro Devices, Inc. | Dynamically Partitionable Cache |
US20100281221A1 (en) * | 2009-04-30 | 2010-11-04 | International Business Machines Corporation | Shared Data Prefetching with Memory Region Cache Line Monitoring |
US20130138894A1 (en) * | 2011-11-30 | 2013-05-30 | Gabriel H. Loh | Hardware filter for tracking block presence in large caches |
US20140289467A1 (en) * | 2013-03-22 | 2014-09-25 | Applied Micro Circuits Corporation | Cache miss detection filter |
CN106104499A (zh) * | 2014-06-02 | 2016-11-09 | 美光科技公司 | 高速缓冲存储器架构 |
Family Cites Families (56)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5058006A (en) * | 1988-06-27 | 1991-10-15 | Digital Equipment Corporation | Method and apparatus for filtering invalidate requests |
US5710906A (en) * | 1995-07-07 | 1998-01-20 | Opti Inc. | Predictive snooping of cache memory for master-initiated accesses |
US6412050B1 (en) * | 1999-12-30 | 2002-06-25 | Intel Corporation | Memory record update filtering |
US6560675B1 (en) * | 1999-12-30 | 2003-05-06 | Unisys Corporation | Method for controlling concurrent cache replace and return across an asynchronous interface |
US6725343B2 (en) * | 2000-10-05 | 2004-04-20 | Hewlett-Packard Development Company, L.P. | System and method for generating cache coherence directory entries and error correction codes in a multiprocessor system |
US6560690B2 (en) * | 2000-12-29 | 2003-05-06 | Intel Corporation | System and method for employing a global bit for page sharing in a linear-addressed cache |
FR2820850B1 (fr) * | 2001-02-15 | 2003-05-09 | Bull Sa | Controleur de coherence pour ensemble multiprocesseur, module et ensemble multiprocesseur a architecture multimodule integrant un tel controleur |
US6917954B2 (en) * | 2001-05-30 | 2005-07-12 | Mosaid Technologies, Inc. | Load balancing in IP address lookup |
US6880044B2 (en) * | 2001-12-31 | 2005-04-12 | Intel Corporation | Distributed memory module cache tag look-up |
US7296121B2 (en) * | 2002-11-04 | 2007-11-13 | Newisys, Inc. | Reducing probe traffic in multiprocessor systems |
KR100532417B1 (ko) | 2003-01-21 | 2005-11-30 | 삼성전자주식회사 | 디지털 신호 처리장치의 저전력 소비형 캐시 메모리 장치및 이에 대한 제어방법 |
US7228388B2 (en) * | 2004-11-19 | 2007-06-05 | International Business Machines Corporation | Enabling and disabling cache bypass using predicted cache line usage |
US8347034B1 (en) * | 2005-01-13 | 2013-01-01 | Marvell International Ltd. | Transparent level 2 cache that uses independent tag and valid random access memory arrays for cache access |
US7685372B1 (en) * | 2005-01-13 | 2010-03-23 | Marvell International Ltd. | Transparent level 2 cache controller |
US20070143546A1 (en) * | 2005-12-21 | 2007-06-21 | Intel Corporation | Partitioned shared cache |
US7606976B2 (en) * | 2006-10-27 | 2009-10-20 | Advanced Micro Devices, Inc. | Dynamically scalable cache architecture |
US20080155229A1 (en) * | 2006-12-21 | 2008-06-26 | Kevin Scott Beyer | System and method for generating a cache-aware bloom filter |
US7937535B2 (en) * | 2007-02-22 | 2011-05-03 | Arm Limited | Managing cache coherency in a data processing apparatus |
US8316190B2 (en) * | 2007-04-06 | 2012-11-20 | Waratek Pty. Ltd. | Computer architecture and method of operation for multi-computer distributed processing having redundant array of independent systems with replicated memory and code striping |
US7861041B2 (en) * | 2007-09-04 | 2010-12-28 | Advanced Micro Devices, Inc. | Second chance replacement mechanism for a highly associative cache memory of a processor |
US20090083495A1 (en) * | 2007-09-26 | 2009-03-26 | Khellah Muhammad M | Memory circuit with ecc based writeback |
US8041922B2 (en) * | 2008-01-11 | 2011-10-18 | International Business Machines Corporation | Enhanced dynamic address translation with load real address function |
US8127106B2 (en) * | 2008-04-18 | 2012-02-28 | International Business Machines Corporation | Access speculation predictor with predictions based on a domain indicator of a cache line |
US20100274960A1 (en) * | 2009-04-24 | 2010-10-28 | Lee Kun-Bin | Memory control method of memory device and memory control system thereof |
US8996826B2 (en) * | 2009-04-28 | 2015-03-31 | Symantec Corporation | Techniques for system recovery using change tracking |
US8244988B2 (en) * | 2009-04-30 | 2012-08-14 | International Business Machines Corporation | Predictive ownership control of shared memory computing system data |
US8489814B2 (en) * | 2009-06-23 | 2013-07-16 | Mediatek, Inc. | Cache controller, method for controlling the cache controller, and computing system comprising the same |
US8478942B2 (en) | 2010-09-27 | 2013-07-02 | Advanced Micro Devices, Inc. | Method and apparatus for reducing processor cache pollution caused by aggressive prefetching |
US9141527B2 (en) | 2011-02-25 | 2015-09-22 | Intelligent Intellectual Property Holdings 2 Llc | Managing cache pools |
JP5742362B2 (ja) * | 2011-03-28 | 2015-07-01 | 富士通株式会社 | 退避処理装置 |
US8949530B2 (en) * | 2011-08-02 | 2015-02-03 | International Business Machines Corporation | Dynamic index selection in a hardware cache |
US8935485B2 (en) | 2011-08-08 | 2015-01-13 | Arm Limited | Snoop filter and non-inclusive shared cache memory |
US9684601B2 (en) * | 2012-05-10 | 2017-06-20 | Arm Limited | Data processing apparatus having cache and translation lookaside buffer |
US9069684B2 (en) * | 2012-07-16 | 2015-06-30 | Nvidia Corporation | System, method, and computer program product for invalidatng cache lines |
US20140040561A1 (en) | 2012-07-31 | 2014-02-06 | Futurewei Technologies, Inc. | Handling cache write-back and cache eviction for cache coherence |
US9612960B2 (en) * | 2012-11-19 | 2017-04-04 | Florida State University Research Foundation, Inc. | Data filter cache designs for enhancing energy efficiency and performance in computing systems |
US9104593B2 (en) * | 2012-12-14 | 2015-08-11 | Advanced Micro Devices, Inc. | Filtering requests for a translation lookaside buffer |
US9864698B2 (en) | 2013-11-04 | 2018-01-09 | International Business Machines Corporation | Resolving cache lookup of large pages with variable granularity |
US9348704B2 (en) * | 2013-12-24 | 2016-05-24 | Hitachi, Ltd. | Electronic storage system utilizing a predetermined flag for subsequent processing of each predetermined portion of data requested to be stored in the storage system |
US9563251B2 (en) * | 2013-12-28 | 2017-02-07 | Intel Corporation | Representing a cache line bit pattern via meta signaling |
US9043538B1 (en) * | 2013-12-30 | 2015-05-26 | Nationz Technologies Inc. | Memory system and method for controlling nonvolatile memory |
US9740714B2 (en) | 2014-02-06 | 2017-08-22 | International Business Machines Corporation | Multilevel filters for cache-efficient access |
US9418013B2 (en) * | 2014-06-30 | 2016-08-16 | Intel Corporation | Selective prefetching for a sectored cache |
US9558127B2 (en) | 2014-09-09 | 2017-01-31 | Intel Corporation | Instruction and logic for a cache prefetcher and dataless fill buffer |
US10430328B2 (en) * | 2014-09-16 | 2019-10-01 | Sandisk Technologies Llc | Non-volatile cache and non-volatile storage medium using single bit and multi bit flash memory cells or different programming parameters |
US10089240B2 (en) * | 2014-12-26 | 2018-10-02 | Wisconsin Alumni Research Foundation | Cache accessed using virtual addresses |
US9720773B2 (en) * | 2015-03-04 | 2017-08-01 | Cavium, Inc. | Managing reuse information in caches |
US9910798B2 (en) | 2015-10-05 | 2018-03-06 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Storage controller cache memory operations that forego region locking |
US9734073B2 (en) * | 2015-10-30 | 2017-08-15 | Qualcomm Incorporated | System and method for flash read cache with adaptive pre-fetch |
US9971700B2 (en) * | 2015-11-06 | 2018-05-15 | Advanced Micro Devices, Inc. | Cache with address space mapping to slice subsets |
GB2546245B (en) | 2016-01-05 | 2020-08-19 | Advanced Risc Mach Ltd | Cache memory |
US10013357B2 (en) * | 2016-05-09 | 2018-07-03 | Cavium, Inc. | Managing memory access requests with prefetch for streams |
US20180004668A1 (en) * | 2016-06-30 | 2018-01-04 | Intel Corporation | Searchable hot content cache |
US10282294B2 (en) * | 2017-02-15 | 2019-05-07 | Samsung Electronics Co., Ltd. | Mitigating DRAM cache metadata access overhead with SRAM metadata cache and bloom filter |
GR20170100067A (el) * | 2017-02-16 | 2018-10-31 | Arm Limited | Προβλεψη χρησης τομεων κρυφης μνημης |
US10296457B2 (en) * | 2017-03-30 | 2019-05-21 | Intel Corporation | Reducing conflicts in direct mapped caches |
-
2017
- 2017-08-03 US US15/668,016 patent/US10402337B2/en active Active
-
2018
- 2018-07-30 TW TW107126262A patent/TWI732128B/zh active
- 2018-07-30 TW TW108140405A patent/TWI758654B/zh active
- 2018-08-01 KR KR1020207005812A patent/KR102388667B1/ko active IP Right Grant
- 2018-08-01 CN CN201880050678.7A patent/CN110998548A/zh not_active Withdrawn
- 2018-08-01 EP EP18841489.0A patent/EP3662377A4/en not_active Withdrawn
- 2018-08-01 WO PCT/US2018/044726 patent/WO2019028092A1/en unknown
-
2019
- 2019-08-16 US US16/542,892 patent/US11366762B2/en active Active
-
2022
- 2022-06-17 US US17/843,620 patent/US11853224B2/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1475917A (zh) * | 2002-07-12 | 2004-02-18 | 恩益禧电子股份有限公司 | 高速缓冲存储器及控制方法 |
US20070130426A1 (en) * | 2005-12-05 | 2007-06-07 | Fujitsu Limited | Cache system and shared secondary cache with flags to indicate masters |
US20090300293A1 (en) * | 2008-05-30 | 2009-12-03 | Advanced Micro Devices, Inc. | Dynamically Partitionable Cache |
US20100281221A1 (en) * | 2009-04-30 | 2010-11-04 | International Business Machines Corporation | Shared Data Prefetching with Memory Region Cache Line Monitoring |
US20130138894A1 (en) * | 2011-11-30 | 2013-05-30 | Gabriel H. Loh | Hardware filter for tracking block presence in large caches |
US20140289467A1 (en) * | 2013-03-22 | 2014-09-25 | Applied Micro Circuits Corporation | Cache miss detection filter |
CN106104499A (zh) * | 2014-06-02 | 2016-11-09 | 美光科技公司 | 高速缓冲存储器架构 |
Also Published As
Publication number | Publication date |
---|---|
TW201911314A (zh) | 2019-03-16 |
KR102388667B1 (ko) | 2022-04-20 |
US20190042450A1 (en) | 2019-02-07 |
US10402337B2 (en) | 2019-09-03 |
TW202025158A (zh) | 2020-07-01 |
US20220318150A1 (en) | 2022-10-06 |
TWI732128B (zh) | 2021-07-01 |
EP3662377A4 (en) | 2021-04-07 |
EP3662377A1 (en) | 2020-06-10 |
KR20200024350A (ko) | 2020-03-06 |
US20190370181A1 (en) | 2019-12-05 |
WO2019028092A1 (en) | 2019-02-07 |
TWI758654B (zh) | 2022-03-21 |
US11366762B2 (en) | 2022-06-21 |
US11853224B2 (en) | 2023-12-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10853238B2 (en) | Unaligned data coalescing | |
US11822790B2 (en) | Cache line data | |
US11886710B2 (en) | Memory operations on data | |
US20220398200A1 (en) | Memory protocol with programmable buffer and cache size | |
US11853224B2 (en) | Cache filter | |
US11586566B2 (en) | Memory protocol with command priority | |
US11237995B2 (en) | Transaction identification | |
EP3676715B1 (en) | Cache buffer | |
US12093565B2 (en) | Memory protocol | |
US20240028260A1 (en) | Memory module interfaces | |
CN113994430A (zh) | 存储器中的推测 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20200410 |