CN104487953B - 用于层次型存储器系统的存储器管理 - Google Patents
用于层次型存储器系统的存储器管理 Download PDFInfo
- Publication number
- CN104487953B CN104487953B CN201380038489.5A CN201380038489A CN104487953B CN 104487953 B CN104487953 B CN 104487953B CN 201380038489 A CN201380038489 A CN 201380038489A CN 104487953 B CN104487953 B CN 104487953B
- Authority
- CN
- China
- Prior art keywords
- memory
- memory address
- management system
- address
- storage
- 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.)
- Active
Links
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/10—Address translation
- G06F12/1009—Address translation using page tables, e.g. page table structures
-
- 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/10—Address translation
- G06F12/1027—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
-
- 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
- G06F12/123—Replacement control using replacement algorithms with age lists, e.g. queue, most recently used [MRU] list or least recently used [LRU] list
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0647—Migration mechanisms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0653—Monitoring storage devices or systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0685—Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays
-
- 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/1008—Correctness of operation, e.g. memory ordering
-
- 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/65—Details of virtual memory and virtual address translation
- G06F2212/657—Virtual address space management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本发明披露用于管理存储器的系统及方法。存储器管理系统可包含具有多个虚拟存储器地址的表。每一虚拟存储器地址可对应于物理存储器地址且对应于识别对应于所述物理存储器地址的存储器装置类型的数据。所述物理存储器地址可用以在发生表命中时存取所述存储器装置。
Description
技术领域
本发明的实施例大体上涉及存储器管理。更具体地说,本发明的实施例可提供用于层次型存储器系统中的存储器管理的一或多种技术。
背景技术
计算机系统一般用于数种配置中以提供多种计算功能。被分派开发计算机系统及系统组件的任务的设计工程师通常考虑处理速度、系统灵活性、功耗及大小约束。计算机系统一般包含多个存储器装置(例如,双列直插存储器模块(DIMM)可含有8个、16个或更多个存储器装置,堆叠式NAND闪存包可含有2个、4个或8个NAND裸片),及可用以存储数据(例如,程序及用户数据)且可由例如处理器或外围装置的其它系统组件存取的多个存储器类型(即,可具有不同性能及/或电力特性的存储器装置)。这些存储器装置可包含易失性及非易失性存储器装置。
通常,由存储器管理系统管理计算系统的存储器地址空间。在某些计算系统中,存储器管理系统可将存储器地址空间的部分动态地分配到由处理器执行的程序,且可将存储器地址空间的单独部分分配到由这个程序使用的数据。相反地,当处理器不再执行程序时,存储器管理系统可从程序解除分配存储器地址空间的部分。存储器管理系统可包含用以将由处理器使用的虚拟存储器地址映射到物理存储器地址空间的表。这些表可包含主存储器翻译表(MMXT)及翻译后备缓冲器(TLB)。通常,TLB含有用于使用频率大于MMXT中的存储器地址的存储器地址的存储器映射。在MMXT及/或TLB中搜索存储器映射可耗费时间,从而导致延迟数据检索。
存储器系统通常布置有存储器层次。例如,可在寄存器、高速缓冲存储器(例如,级别1、级别2、级别3)、主存储器(例如,RAM)、磁盘存储装置等等中找到某些存储器。可了解,一些存储器系统包含具有不同操作特性(例如,以不同速度操作)的存储器类型。然而,存储器管理系统一般不区分存储器系统中的存储器类型(例如,主存储器)。因此,这些存储器管理系统可以相同方式处置所有类型的存储器。此外,存储器系统中的一些存储器装置可被存取(例如,从一些存储器装置读取及/或写入到一些存储器装置)的次数大于存储器系统中的其它存储器装置。因而,存储器管理系统可能难以识别(例如,确定)存储器系统内以特定速度操作的存储器装置。同样地,存储器管理系统可能难以识别存取次数大于其它存储器装置的存储器装置。
因此,本发明的实施例可有关于上文所陈述的一或多个问题。
附图说明
图1说明根据本发明的实施例的基于处理器的系统的方框图;
图2说明根据本发明的实施例的存储器管理系统的方框图;
图3说明根据本发明的实施例的翻译后备缓冲器的方框图;
图4说明根据本发明的实施例的翻译装置的方框图;
图5说明根据本发明的实施例的用于在存储器管理系统接收虚拟存储器地址时存取物理存储器地址的方法的流程图;及
图6说明根据本发明的实施例的用于管理计算系统的物理存储器地址空间的方法的流程图。
具体实施方式
一些随后论述的实施例可促进具有较大通用性的存储器系统,例如使用多个不同类型的存储器装置的存储器系统,及动态地重新布置存储在所述不同类型的存储器装置上的数据的存储器系统。如下文详细地所描述,存储器管理系统可包含使物理存储器地址与存储器装置类型相关的表。例如,存储器管理系统可包含具有多个虚拟存储器地址的表。每一虚拟存储器地址可对应于物理存储器地址且对应于识别对应存储器装置类型的数据。物理存储器地址可用以在发生表命中时存取存储器装置。因而,下列论述描述根据本技术的实施例的装置及方法。
现在参考图式且最初参考图1,说明描绘基于处理器的系统(整体上由参考数字10指定)的方框图。系统10可为多种类型中的任一者,例如计算机、寻呼机、蜂窝电话、个人备忘记事本、控制电路等等。在典型基于处理器的装置中,例如微处理器的一或多个处理器12控制系统10中的系统功能及请求的处理。应了解,处理器12可包含用于将组件耦合到处理器12的嵌入式北桥或南桥(未展示)。替代地,系统10可包含耦合在处理器12与系统10的各种组件之间的单独桥。如所说明,处理器12可包含高速缓冲存储器13(例如,CPU高速缓冲存储器)以减小处理器12存取存储器所花费的平均时间。
各种装置可取决于系统10执行的功能而耦合到处理器12。例如,用户接口可耦合到处理器12。用户接口可包含(例如)按钮、开关、键盘、光笔、鼠标、显示器及/或语音辨识系统。显示器可包含(例如)触摸屏显示器、LCD显示器、CRT、LED及/或音频显示器。一或多个通信端口还可耦合到处理器12。例如,通信端口可适应于耦合到例如调制解调器、打印机、计算机的一或多个外围装置,或耦合到例如局域网、远程区域网、企业内部网或互联网的网络。
因为处理器12一般通过实施软件程序控制系统10的运行,所以存储器可操作地耦合到处理器12以存储各种程序且促进各种程序的执行。因此,层次型存储器系统14经由系统总线16可操作地耦合到处理器12。层次型存储器系统14包含存储器管理系统18及任何数目个存储器装置。例如,层次型存储器系统14可包含memory_020(例如,属于第一类型)、memory_122(例如,属于第二类型),及由memory_N 24(例如,属于第n类型)表示的任何额外存储器装置。
存储器管理系统18可执行多种存储器管理功能。例如,存储器管理系统18可管理虚拟存储器地址到物理存储器地址翻译、存储器重新分配、存储器组织、存储器使用等等。如所说明,存储器管理系统18由相应数据总线PA_026、PA_128及PA_N 30可操作地耦合到存储器装置20、22及24。应了解,PA_N 30可表示对应于存储器装置memory_N 24的数个数据总线。
存储器装置20、22及24中的一或多者可为易失性存储器,其可包含动态随机存取存储器(DRAM)及/或静态随机存取存储器(SRAM)。易失性存储器可包含数个存储器模块,例如单列直插存储器模块(SIMM)、双列直插存储器模块(DIMM)及/或混合存储器立方体(HMC)。应了解,易失性存储器可被简称为“系统存储器”。易失性存储器通常相当大,使得其可存储经动态加载的应用程序及数据。
此外,存储器装置20、22及24中的一或多者可为非易失性存储器,其可包含例如EPROM的只读存储器(ROM)、闪存存储器(例如,NOR及/或NAND),及/或待结合易失性存储器而使用的相变存储器(PCM)。ROM的大小通常经选择为足够大以存储任何必要的操作系统、应用程序及固定数据。另外,非易失性存储器可包含高容量存储器,例如磁带或磁盘驱动器存储器。因此,存储器装置20、22及24无须为块存储装置。
因而,层次型存储器系统14通用于允许许多类型的存储器装置20、22及24可操作地耦合到处理器12。因此,存储器管理系统18可适应于层次型存储器系统14以优化存储器装置20、22及24的性能。图2到4中说明适应于供层次型存储器系统14中使用的存储器管理系统18的一些实例。具体地说,图2说明具有翻译(XLAT)翻译装置及翻译后备缓冲器的存储器管理系统18,且图3及4分别进一步说明翻译后备缓冲器及XLAT翻译装置。图5及6说明可由存储器管理系统18用来管理存储器装置20、22及24的方法。
现在参考图2,说明存储器管理系统18的方框图。在操作期间,存储器管理系统18接收虚拟存储器地址32(例如,从处理器12)。存储器管理系统18识别映射到虚拟存储器地址32且用以存取存储器装置20、22及24中的一者的物理存储器地址34。如果存储器管理系统18不能够识别映射到虚拟存储器地址32的物理存储器地址34,那么存储器管理系统18生成(例如,产生)可传输到处理器12的页面错误36。
为了识别映射到虚拟存储器地址32的物理存储器地址34,存储器管理系统18使用XLAT翻译装置38及翻译后备缓冲器(TLB)40。XLAT翻译装置38及TLB 40可各自存储将虚拟存储器地址映射到物理存储器地址的相应表。虽然单独地说明XLAT翻译装置38及TLB 40,但是在某些实施例中,XLAT翻译装置38及TLB 40可合并在单一装置内。应了解,XLAT翻译装置38及TLB 40可含有非重叠数据。例如,XLAT翻译装置38可含有用于虚拟存储器地址的第一部分的表条目,而TLB 40含有用于虚拟存储器地址的第二部分的表条目。
通常,TLB 40含有用于存取频率大于存储在XLAT翻译装置38中的虚拟存储器地址的虚拟存储器地址的表条目。在某些实施例中,可在XLAT翻译装置38及TLB 40中同时发生对虚拟存储器地址32的搜索。在其它实施例中,在XLAT翻译装置38中发生对虚拟存储器地址32的搜索之前,可在TLB 40中发生所述搜索。然而,在识别(例如,定位)包含虚拟存储器地址32的表条目之后,XLAT翻译装置38及TLB 40两者均停止搜索虚拟存储器地址32。
在本实施例中,XLAT翻译装置38及TLB 40可各自存储与存取特定虚拟存储器地址及/或物理存储器地址的频率有关的数据。此外,XLAT翻译装置38及TLB 40可各自存储识别对应于物理存储器地址的存储器装置类型的数据。如下文详细地所解释,在使用这种额外数据的情况下,存储器管理系统18可优化存储器使用,及/或优化存储在XLAT翻译装置38及TLB 40中的表映射数据。
因此,图3说明TLB 40的方框图,TLB 40可存储与存取特定虚拟存储器地址及/或物理存储器地址的频率有关的数据,且可存储识别对应于所述特定物理存储器地址的存储器装置类型的数据。在某些实施例中,TLB 40可为内容可寻址存储器(CAM)装置或n路关联存储器装置。具体地说,TLB 40存储具有行44及列(46到52)的表42。在本实施例中,每一行44与单独表条目有关。因而,每一行44包含虚拟存储器地址列46、物理存储器地址列48、最近最少使用(LRU)列50,及装置识别(TYPE)列52。
虚拟存储器地址列46包含TLB 40中含有的所有虚拟存储器地址的列表。此外,物理存储器地址列48包含每一行44中对应于相应行44的虚拟存储器地址列46中的虚拟存储器地址的物理存储器地址。LRU列50包含与存取相应物理存储器地址的频率有关的数据(例如,存取或使用数据)。例如,LRU列50可包含表示已存取其对应虚拟存储器地址及/或物理存储器地址的总次数的值。因而,LRU列50可用以识别是否应从表42移除表条目。例如,可从表42移除存取频率最少(例如,在LRU列50中存储有最低值)的行44。
TYPE列52包含每一行44中识别对应于相应行44的物理存储器地址列48中的物理存储器地址的装置类型的装置识别数据。使用物理存储器地址存取所述装置(例如,当发生表命中时)。例如,装置识别数据可为对应于装置类型的值。应了解,存储器管理系统18可包含对应于每一装置的数据。例如,存储器管理系统18可包含例如以下项的数据:每一装置的名称、每一装置的操作速度、指派到每一装置的总线、每一装置相对于其它物理装置的相对速度的指示、每一装置的耐久性等等。在操作期间,物理地址可用以直接存取存储器装置20、22及24,由此快速地存取存储在存储器装置20、22及24上的数据。
参考图4,说明XLAT翻译装置38的方框图。XLAT翻译装置38包含翻译表(XT)54,XT54可存储与存取特定虚拟存储器地址及/或物理存储器地址的频率有关的数据,且可存储识别对应于每一物理存储器地址的存储器装置类型的数据。此外,XLAT翻译装置38包含用于控制XLAT翻译装置38的各种操作的控制单元56(例如,混合存储器立方体的逻辑裸片)。具体地说,XT 54存储具有行58及列(60到66)的表。在本实施例中,每一行58与单独表条目有关。因而,每一行58包含虚拟存储器地址列60、物理存储器地址列62、LRU列64,及TYPE列66。
虚拟存储器地址列60包含XT 54中含有的所有虚拟存储器地址的列表。此外,物理存储器地址列62包含每一行58中对应于相应行58的虚拟存储器地址列60中的虚拟存储器地址的物理存储器地址。LRU列64包含与存取相应物理存储器地址的频率有关的数据(例如,存取或使用数据)。例如,LRU列64可包含表示已存取其相应虚拟存储器地址及/或物理存储器地址的总次数的值。因而,可使用LRU列64(例如,由翻译装置38的控制单元56使用)以识别是否应将表条目从XT 54移动到TLB 40。例如,至少在一些条件中,可将以最高频率存取(例如,在LRU列64中存储有最高值)的行58从XT 54移动到TLB 40中。
TYPE列66包含每一行58中识别对应于相应行58的物理存储器地址列62中的物理存储器地址的装置类型的装置识别数据。使用物理存储器地址存取所述装置(例如,当发生表命中时)。例如,装置识别数据可为对应于装置类型的值。在操作期间,物理存储器地址可用以直接存取存储器装置20、22及24,由此快速地存取存储在存储器装置20、22及24上的数据。
XLAT翻译装置38可为多种不同装置中的任一者,例如混合存储器立方体(HMC),或例如美国公开案第2010/0138575号中所披露的样式辨识装置。此外,硬件(例如,处理器)及/或软件可用以执行XT 54的搜索。应了解,尤其在存储在主存储器中的情况下(例如,其中翻译装置38自身用作主存储器,具体化在HMC装置中的情况可能如此),延长对XT 54的存取可导致显著性能损失。因此,除了存储器单元以外,某些翻译装置38还可包含硬件及/或软件逻辑。例如,XT 54可存储在高性能存储器阵列(HPMA)(例如,HMC)或辅助搜索存储器装置(例如先前所提及的样式辨识装置)上。这些装置可经配置以搜索XT 54内的虚拟存储器地址(例如,执行表审核(table walk))。应注意,TLB 40还可存储在HPMA或辅助搜索存储器装置上。在某些实施例中,TLB 40及XT 54可存储在同一装置上。通过使用HPMA或辅助搜索存储器装置,可实现改善的性能。在某些实施例中,控制单元56可用以执行多种功能。例如,控制单元56可控制页面表审核、TLB更新、LRU计算、LRU更新、用于页面移动的直接存储器存取、动态地重新布置指派到所述装置的数据、动态地改变虚拟存储器地址到物理存储器地址的映射等等。
控制单元56可包含软件及/或硬件以辅助存储器管理系统18的功能。因而,图5说明用于在存储器管理系统18接收虚拟存储器地址时存取物理存储器地址的方法68的流程图。在方框70处,存储器管理系统18接收虚拟存储器地址。然后,在方框72处,存储器管理系统18搜索TLB 40中的虚拟存储器地址(例如,执行查找)。紧接着,在方框74处,确定存储器管理系统18是否已识别(例如,找到)TLB 40中的虚拟存储器地址。如果存在TLB“未命中”,那么在方框76处,存储器管理系统18搜索XT 54中的虚拟存储器地址(例如,执行查找或表审核)。然后,在方框78处,确定存储器管理系统18是否已识别XT 54中的虚拟存储器地址。如果存在XT“未命中”,那么在方框80处,存储器管理系统18产生发送到处理器12的页面错误36。
如果存在XT“命中”,那么在方框82处,存储器管理系统将XT表条目移动到TLB40。此外,在方框82处,存储器管理系统18将最少使用的TLB 40条目移动到XT 54。紧接着,在方框84处,存储器管理系统18将虚拟存储器地址翻译为物理存储器地址。这发生在方框82之后,或响应于按方框74发生的TLB“命中”而发生。应了解,将虚拟存储器地址翻译为物理存储器地址可包含存取与虚拟存储器地址有关的条目中的所有数据。例如,存储器管理系统18可从用于存取存储器装置的表条目检索TYPE列数据。在方框86处,更新(例如,修改)用于所存取表条目的LRU数据。例如,可使存储在LRU列中的值增加1。紧接着,在方框88处,存取物理存储器地址。
现在参考图6,说明用于管理计算系统的存储器地址空间的方法的流程图90。在方框92处,存储器管理系统18可使用LRU数据以对表条目进行排序,例如基于存取表条目的虚拟存储器地址及/或物理存储器地址的次数而对所述表条目进行排序。紧接着,在方框94处,存储器管理系统18可识别使用量大于其它表条目的表条目,及/或存储器管理系统18可识别使用量小于其它表条目的表条目。然后,在方框96处,存储器管理系统18可比较被分配到所识别条目的存储器装置的类型与存储器装置的可用类型。例如,存储器管理系统18可识别使用量较大(例如,存取速率较高)的表条目是否被分配到优于使用量较小的表条目的存储器类型(例如,较快存储器、改善的耐久性)。在方框98处,存储器管理系统18可识别是否存在存取物理存储器地址的次数与对应于物理存储器地址的存储器装置类型之间的失配。
如果不存在失配,那么方法可返回到方框92。然而,如果存在存取物理存储器地址的次数与对应于物理存储器地址的存储器装置类型之间的失配,那么存储器管理系统18可按方框100识别是否可执行存储器交换。在某些实施例中,存储器交换可包含使存储在第一类型的存储器中的第一组数据与存储在第二类型的存储器中的第二组数据互换。例如,存储器管理系统18可将存储在第一类型的存储器中的第一组数据移动到第二类型的存储器,且将存储在第二类型的存储器中的第二组数据移动到第一类型的存储器。此外,移动第一组数据及第二组数据可同时发生。例如,某些类型的存储器可支持在两个方向上同时发生的数据移动,例如DRAM DIMM及HMC,以及DRAM DIMM及PCM。如果无法执行存储器交换,那么存储器管理系统18可按方框102识别是否存在可用于移动失配数据的任何存储器。如果不存在任何可用存储器,那么方法可返回到方框100。
如果存在可用存储器,那么存储器管理系统18可按方框104将数据从所识别条目的存储器移动到可用存储器。例如,存储器管理系统18可使对应于所识别表条目的数据移动到不同类型的存储器装置以移除存取物理存储器地址的次数与对应于物理存储器地址的存储器类型之间的失配。返回到方框100,如果存储器管理系统18能够执行存储器交换,那么存储器管理系统18可按方框106在存储器装置之间交换数据。在方框104或方框106之后,存储器管理系统18更新TLB 40及/或XT 54表条目。例如,存储器管理系统18可使用虚拟存储器地址与物理存储器地址之间的经修订映射、经修订装置数据及/或经更新LRU数据来更新TLB 40及/或XT 54。
虽然方框92到108被描述为由存储器管理系统18执行,但是应注意,存储器管理系统18的任何部分(例如,硬件及/或软件)可执行所描述的项目。例如,可由控制单元56执行方框92到108中的任一者。在某些实施例中,存储器管理系统18及/或控制单元56可经配置以基于存储器类型的耐久性或速度动态地改变虚拟存储器地址到物理存储器地址的映射。在使用本文中描述的技术的情况下,存储器管理系统18可最大化系统10的性能及/或最小化软件开销。
虽然本发明可容许各种修改及替代形式,但是已在图式中作为实例而展示且在本文中详细地描述特定实施例。然而,应理解,本发明并不希望限于所披露的特定形式。实情是,本发明将涵盖属于如由所附权利要求书定义的本发明的精神及范围的所有修改、等效者及替代。
Claims (27)
1.一种存储器管理系统,其包括:
第一存储器翻译表,其经配置以使第一虚拟存储器地址与第一物理存储器地址、指示存取所述第一物理存储器地址的频率的第一数据、及识别包括所述第一物理存储器地址的第一存储器装置的第一存储器类型的第二数据相关;
第二存储器翻译表,其经配置以使第二虚拟存储器地址与第二物理存储器地址、指示存取所述第二物理存储器地址的频率的第三数据、及识别包括所述第二物理存储器地址的第二存储器装置的第二存储器类型的第四数据相关;及
控制单元,其经配置以至少部分基于所述第一存储器翻译表和所述第二存储器翻译表控制所述第一存储器装置和所述第二存储器装置的操作。
2.根据权利要求1所述的存储器管理系统,其中:
第一存储器翻译表存储在翻译装置中;且
所述第二存储器翻译表存储在翻译后备缓冲器中。
3.根据权利要求1所述的存储器管理系统,其中:
所述第一存储器翻译表经配置以使所述第一虚拟存储器地址与指示存取所述第一虚拟存储器地址的频率的第五数据相关联;及
所述第二存储器翻译表经配置以使所述第二虚拟存储器地址与指示存取所述第二虚拟存储器地址的频率的第六数据相关联。
4.根据权利要求1所述的存储器管理系统,其中所述第一存储器翻译表经配置以至少部分地基于所述第一数据、所述第二数据、所述第三数据、及所述第四数据来将所述第一虚拟存储器地址的关联从所述第一物理存储器地址改变到所述第二物理存储器地址。
5.根据权利要求1所述的存储器管理系统,其中所述存储器管理系统经配置以至少部分地基于所述第一数据和所述第三数据来:
将第一表条目从所述第一存储器翻译表移动到所述第二存储器翻译表,所述第一表条目将所述第一虚拟存储器地址与所述第一物理存储器地址、所述第一数据、及所述第二数据相关联;及
将第二表条目从所述第二存储器翻译表移动到所述第一存储器翻译表,所述第二表条目将所述第二虚拟存储器地址与所述第二物理存储器地址、所述第三数据、及所述第四数据相关联。
6.一种存储器管理系统,其包括:
翻译装置,其经配置以存储第一存储器翻译表,其中所述第一存储器翻译表经配置以:
将第一多个虚拟存储器地址映射到第一多个物理存储器地址;并
将第一多个虚拟存储器地址映射到第一数据和第二数据,所述第一数据指示所述第一多个物理存储器地址中的每一者被存取的频繁性,所述第二数据指示包括所述第一多个物理存储器地址中的每一者的存储装置的类型;及翻译后备缓冲器TLB,其经配置以存储第二存储器翻译表,其中所述第二存储器翻译表经配置以:
将第二多个虚拟存储器地址映射到第二多个物理存储器地址;并
将第二多个虚拟存储器地址映射到第三数据和第四数据,所述第三数据指示所述第二多个物理存储器地址中的每一者被存取的频繁性,所述第四数据指示包括所述第二多个物理存储器地址中的每一者的存储装置的类型;
其中所述第一存储器翻译表及所述第二存储器翻译表是非重叠的;及
控制单元,其经配置以至少部分基于所述第一存储器翻译表及所述第二存储器翻译表控制包括所述第一多个物理存储器地址或所述第二多个物理存储器地址中的至少一个物理存储器地址的存储器装置的操作。
7.根据权利要求6所述的存储器管理系统,其中所述控制单元经配置以搜索所述第一存储器翻译表以识别第一虚拟存储器地址。
8.根据权利要求7所述的存储器管理系统,其中所述控制单元经配置以独立于所述存储器管理系统外部的处理装置而搜索所述第一存储器翻译表。
9.根据权利要求6所述的存储器管理系统,其中所述翻译装置包括高性能存储器阵列。
10.根据权利要求9所述的存储器管理系统,其中所述高性能存储器阵列包括混合存储器立方体。
11.根据权利要求10所述的存储器管理系统,其中所述混合存储器立方体经配置以执行所述第一存储器翻译表的表审核。
12.根据权利要求6所述的存储器管理系统,其中所述翻译装置经配置以将主存储器提供到计算机系统。
13.根据权利要求6所述的存储器管理系统,其中所述翻译装置包括辅助搜索存储器装置。
14.根据权利要求6所述的存储器管理系统,其中所述TLB包括内容可寻址存储器。
15.根据权利要求6所述的存储器管理系统,其中所述TLB包括n路关联存储器装置。
16.根据权利要求6所述的存储器管理系统,其中所述TLB及所述翻译装置合并在单一装置内。
17.根据权利要求6所述的存储器管理系统,其中所述TLB合并在第一装置内且所述翻译装置合并在第二装置内。
18.根据权利要求6所述的存储器管理系统,其中所述控制单元经配置以指示基于关于所述虚拟存储器被存取的频繁性的数据,将使虚拟存储器地址与物理存储器地址相关联的表条目从所述第一存储器翻译表移动到所述第二存储器翻译表。
19.根据权利要求6所述的存储器管理系统,其中所述控制单元经配置以同时搜索所述第一存储器翻译表和所述第二存储器翻译表。
20.根据权利要求6所述的存储器管理系统,其中所述控制单元经配置以在所述第一存储器翻译表之前搜索所述第二存储器翻译表。
21.根据权利要求6所述的存储器管理系统,其中在所述第一存储器翻译表或所述第二存储器翻译表中找到包含虚拟存储器地址的表条目之后,所述控制单元经配置以停止在所述第一存储器翻译表或所述第二存储器翻译表中的搜索。
22.根据权利要求6所述的存储器管理系统,其中所述第一数据和所述第三数据中的每一者都包括最近使用的LRU数据。
23.根据权利要求6所述的存储器管理系统,其中所述存储器管理系统经配置以在第一虚拟存储器地址被存取的频繁性高于映射到第二物理存储器地址的第二虚拟存储器地址时,更新所述第二存储器翻译表以将所述第二多个虚拟存储器地址的所述第一虚拟存储器地址从所述第二多个物理存储器地址的第一物理存储器地址映射到第二物理存储器地址,其中:
第一存储器装置包括所述第一物理存储器地址;且
第二存储器装置包括所述第二物理存储器地址,其中所述第二存储器装置比所述第一存储器装置包括更高的速度或更长的耐久性、或同时包括更高的速度及更长的耐久性。
24.根据权利要求23所述的存储器管理系统,其中所述存储管理器系统经配置以:
将第一组数据从所述第一物理存储器地址移动到所述第二物理存储器地址;及将第二组数据从所述第二物理存储器地址移动到所述第一物理存储器地址。
25.一种计算机系统,其包括:
处理器;及
存储器系统,其通信地耦合到所述处理器,其中所述存储器系统包括:
第一存储器装置,其包括第一物理存储器地址,其中所述第一存储器装置为第一存储器类型;
第二存储器装置,其包括第二物理存储器地址,其中所述第二存储器装置为第二存储器类型;及
存储器管理系统,其包括控制单元,所述控制单元经配置以至少部分地基于第一存储器翻译表和第二存储器翻译表来管理所述第一存储器装置和所述第二存储器装置的操作,所述第一存储器翻译表和所述第二存储器翻译表将虚拟存储器地址映射到物理存储器地址,其中所述存储器管理系统经配置以至少部分基于所述第一存储器类型、所述第二存储器类型及关于存取虚拟存储器地址的频率的数据,将虚拟存储器地址的映射动态地从所述第一物理存储器地址改变到所述第二物理存储器地址。
26.根据权利要求25所述的系统,其中所述存储器管理系统经配置以至少部分地基于所述第一存储器装置的耐久性及所述第二存储器装置的耐久性动态地将所述虚拟存储器地址的映射改变到所述第二物理存储器地址。
27.根据权利要求25所述的系统,其中所述存储器管理系统经配置以至少部分地基于所述第一存储器装置的速度及所述第二存储器装置的速度动态地将所述虚拟存储器地址的映射改变到所述第二物理存储器地址。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/552,491 US9524248B2 (en) | 2012-07-18 | 2012-07-18 | Memory management for a hierarchical memory system |
US13/552,491 | 2012-07-18 | ||
PCT/US2013/049753 WO2014014711A1 (en) | 2012-07-18 | 2013-07-09 | Memory management for a hierarchical memory system |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104487953A CN104487953A (zh) | 2015-04-01 |
CN104487953B true CN104487953B (zh) | 2018-04-17 |
Family
ID=49947568
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380038489.5A Active CN104487953B (zh) | 2012-07-18 | 2013-07-09 | 用于层次型存储器系统的存储器管理 |
Country Status (7)
Country | Link |
---|---|
US (4) | US9524248B2 (zh) |
EP (1) | EP2875432B1 (zh) |
JP (1) | JP6367797B2 (zh) |
KR (1) | KR102144491B1 (zh) |
CN (1) | CN104487953B (zh) |
TW (1) | TWI515563B (zh) |
WO (1) | WO2014014711A1 (zh) |
Families Citing this family (48)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100138575A1 (en) | 2008-12-01 | 2010-06-03 | Micron Technology, Inc. | Devices, systems, and methods to synchronize simultaneous dma parallel processing of a single data stream by multiple devices |
US20100174887A1 (en) | 2009-01-07 | 2010-07-08 | Micron Technology Inc. | Buses for Pattern-Recognition Processors |
US9323994B2 (en) | 2009-12-15 | 2016-04-26 | Micron Technology, Inc. | Multi-level hierarchical routing matrices for pattern-recognition processors |
US9524248B2 (en) | 2012-07-18 | 2016-12-20 | Micron Technology, Inc. | Memory management for a hierarchical memory system |
US9703574B2 (en) | 2013-03-15 | 2017-07-11 | Micron Technology, Inc. | Overflow detection and correction in state machine engines |
US9448965B2 (en) | 2013-03-15 | 2016-09-20 | Micron Technology, Inc. | Receiving data streams in parallel and providing a first portion of data to a first state machine engine and a second portion to a second state machine |
US9507563B2 (en) | 2013-08-30 | 2016-11-29 | Cavium, Inc. | System and method to traverse a non-deterministic finite automata (NFA) graph generated for regular expression patterns with advanced features |
US9904630B2 (en) | 2014-01-31 | 2018-02-27 | Cavium, Inc. | Finite automata processing based on a top of stack (TOS) memory |
US10002326B2 (en) * | 2014-04-14 | 2018-06-19 | Cavium, Inc. | Compilation of finite automata based on memory hierarchy |
US10110558B2 (en) * | 2014-04-14 | 2018-10-23 | Cavium, Inc. | Processing of finite automata based on memory hierarchy |
US9558143B2 (en) | 2014-05-09 | 2017-01-31 | Micron Technology, Inc. | Interconnect systems and methods using hybrid memory cube links to send packetized data over different endpoints of a data handling device |
US9501222B2 (en) * | 2014-05-09 | 2016-11-22 | Micron Technology, Inc. | Protection zones in virtualized physical addresses for reconfigurable memory systems using a memory abstraction |
JP6394062B2 (ja) * | 2014-05-20 | 2018-09-26 | 富士通株式会社 | 情報処理装置およびバス制御方法 |
US9792227B2 (en) * | 2014-08-19 | 2017-10-17 | Samsung Electronics Co., Ltd. | Heterogeneous unified memory |
US9760488B2 (en) * | 2014-12-01 | 2017-09-12 | Macronix International Co., Ltd. | Cache controlling method for memory system and cache system thereof |
US10083131B2 (en) * | 2014-12-11 | 2018-09-25 | Ampere Computing Llc | Generating and/or employing a descriptor associated with a memory translation table |
US10769099B2 (en) | 2014-12-30 | 2020-09-08 | Micron Technology, Inc. | Devices for time division multiplexing of state machine engine signals |
WO2016109570A1 (en) | 2014-12-30 | 2016-07-07 | Micron Technology, Inc | Systems and devices for accessing a state machine |
US11366675B2 (en) | 2014-12-30 | 2022-06-21 | Micron Technology, Inc. | Systems and devices for accessing a state machine |
CN105808455B (zh) | 2014-12-31 | 2020-04-28 | 华为技术有限公司 | 访问内存的方法、存储级内存及计算机系统 |
US10162762B2 (en) * | 2015-04-22 | 2018-12-25 | Arm Limited | Managing memory based on hint data generated from mapping data entries |
JP6429197B2 (ja) * | 2015-05-12 | 2018-11-28 | 東芝情報システム株式会社 | 論理物理アドレス変換テーブルの制御方法及びメモリ装置 |
US10007435B2 (en) | 2015-05-21 | 2018-06-26 | Micron Technology, Inc. | Translation lookaside buffer in memory |
US10846103B2 (en) | 2015-10-06 | 2020-11-24 | Micron Technology, Inc. | Methods and systems for representing processing resources |
US10977309B2 (en) | 2015-10-06 | 2021-04-13 | Micron Technology, Inc. | Methods and systems for creating networks |
US10691964B2 (en) | 2015-10-06 | 2020-06-23 | Micron Technology, Inc. | Methods and systems for event reporting |
JP6485320B2 (ja) * | 2015-10-23 | 2019-03-20 | 富士通株式会社 | キャッシュメモリおよびキャッシュメモリの制御方法 |
KR102532581B1 (ko) * | 2016-03-17 | 2023-05-17 | 에스케이하이닉스 주식회사 | 메모리 장치를 포함하는 메모리 시스템 및 그의 동작 방법 |
CN107807839B (zh) * | 2016-09-09 | 2022-01-28 | 阿里巴巴集团控股有限公司 | 一种修改虚拟机内存数据的方法、装置及电子设备 |
US10019311B2 (en) | 2016-09-29 | 2018-07-10 | Micron Technology, Inc. | Validation of a symbol response memory |
US10268602B2 (en) | 2016-09-29 | 2019-04-23 | Micron Technology, Inc. | System and method for individual addressing |
US10592450B2 (en) | 2016-10-20 | 2020-03-17 | Micron Technology, Inc. | Custom compute cores in integrated circuit devices |
US10929764B2 (en) | 2016-10-20 | 2021-02-23 | Micron Technology, Inc. | Boolean satisfiability |
WO2018182473A1 (en) * | 2017-03-31 | 2018-10-04 | Telefonaktiebolaget Lm Ericsson (Publ) | Performance manager and method performed thereby for managing the performance of a logical server of a data center |
US10503892B2 (en) * | 2017-06-25 | 2019-12-10 | Microsoft Technology Licensing, Llc | Remote attestation for multi-core processor |
US11102127B2 (en) | 2018-04-22 | 2021-08-24 | Mellanox Technologies Tlv Ltd. | Load balancing among network links using an efficient forwarding scheme |
US10649909B2 (en) * | 2018-06-14 | 2020-05-12 | Western Digital Technologies, Inc. | Logical block addressing range collision crawler |
TWI693516B (zh) * | 2018-11-13 | 2020-05-11 | 群聯電子股份有限公司 | 映射表更新方法、記憶體控制電路單元與記憶體儲存裝置 |
US10848458B2 (en) * | 2018-11-18 | 2020-11-24 | Mellanox Technologies Tlv Ltd. | Switching device with migrated connection table |
US11183266B2 (en) * | 2019-06-26 | 2021-11-23 | Micron Technology, Inc. | Apparatuses and methods for repairing defective memory cells based on a specified error rate for certain memory cells |
US10996975B2 (en) | 2019-08-22 | 2021-05-04 | Micron Technology, Inc. | Hierarchical memory systems |
US11494311B2 (en) * | 2019-09-17 | 2022-11-08 | Micron Technology, Inc. | Page table hooks to memory types |
US11650742B2 (en) * | 2019-09-17 | 2023-05-16 | Micron Technology, Inc. | Accessing stored metadata to identify memory devices in which data is stored |
US11269780B2 (en) * | 2019-09-17 | 2022-03-08 | Micron Technology, Inc. | Mapping non-typed memory access to typed memory access |
US10963396B1 (en) | 2019-09-17 | 2021-03-30 | Micron Technology, Inc. | Memory system for binding data to a memory namespace |
KR102355374B1 (ko) | 2019-09-27 | 2022-01-25 | 에스케이하이닉스 주식회사 | 이종 메모리를 이용하여 메모리 주소 변환 테이블을 관리하는 메모리 관리 유닛 및 이의 메모리 주소 관리 방법 |
JP2021179672A (ja) * | 2020-05-11 | 2021-11-18 | ソニーセミコンダクタソリューションズ株式会社 | メモリモジュール |
US11422944B2 (en) * | 2020-08-10 | 2022-08-23 | Intel Corporation | Address translation technologies |
Family Cites Families (189)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
IL38603A (en) | 1972-01-21 | 1975-10-15 | Bar Lev H | Automatic pattern recognition method and apparatus particularly for optically recognizing alphanumeric characters |
JPS4891935A (zh) | 1972-03-08 | 1973-11-29 | ||
US4011547A (en) | 1972-07-17 | 1977-03-08 | International Business Machines Corporation | Data processor for pattern recognition and the like |
GB1518093A (en) | 1974-10-04 | 1978-07-19 | Mullard Ltd | Mark detection apparatus |
JPS51112236A (en) | 1975-03-28 | 1976-10-04 | Hitachi Ltd | Shape position recognizer unit |
JPS5313840A (en) | 1976-07-23 | 1978-02-07 | Hitachi Ltd | Analogy calculator |
US4204193A (en) | 1978-11-03 | 1980-05-20 | International Business Machines Corporation | Adaptive alignment for pattern recognition system |
US4414685A (en) | 1979-09-10 | 1983-11-08 | Sternberg Stanley R | Method and apparatus for pattern recognition and detection |
US4748674A (en) | 1986-10-07 | 1988-05-31 | The Regents Of The University Of Calif. | Pattern learning and recognition device |
JPS63244152A (ja) * | 1987-03-30 | 1988-10-11 | Fujitsu Ltd | 拡張記憶装置アクセス制御装置 |
US5014327A (en) | 1987-06-15 | 1991-05-07 | Digital Equipment Corporation | Parallel associative memory having improved selection and decision mechanisms for recognizing and sorting relevant patterns |
US5216748A (en) | 1988-11-30 | 1993-06-01 | Bull, S.A. | Integrated dynamic programming circuit |
US6253307B1 (en) | 1989-05-04 | 2001-06-26 | Texas Instruments Incorporated | Data processing device with mask and status bits for selecting a set of status conditions |
JP2833062B2 (ja) | 1989-10-30 | 1998-12-09 | 株式会社日立製作所 | キャッシュメモリ制御方法とこのキャッシュメモリ制御方法を用いたプロセッサおよび情報処理装置 |
US5028821A (en) | 1990-03-01 | 1991-07-02 | Plus Logic, Inc. | Programmable logic device with programmable inverters at input/output pads |
US5377129A (en) | 1990-07-12 | 1994-12-27 | Massachusetts Institute Of Technology | Particle interaction processing system |
DE69029390T2 (de) | 1990-09-15 | 1997-06-12 | Ibm | Programmierbare Schaltung für eine neurale Logik |
US5287523A (en) | 1990-10-09 | 1994-02-15 | Motorola, Inc. | Method for servicing a peripheral interrupt request in a microcontroller |
IL100370A (en) | 1990-12-24 | 1994-11-11 | Ball Corp | Method for analyzing integrated computer systems |
US6400996B1 (en) | 1999-02-01 | 2002-06-04 | Steven M. Hoffberg | Adaptive pattern recognition based control system and method |
JP3219826B2 (ja) * | 1992-02-21 | 2001-10-15 | 日本電気株式会社 | 情報処理装置 |
US5300830A (en) | 1992-05-15 | 1994-04-05 | Micron Semiconductor, Inc. | Programmable logic device macrocell with an exclusive feedback and exclusive external input lines for registered and combinatorial modes using a dedicated product term for control |
US5331227A (en) | 1992-05-15 | 1994-07-19 | Micron Semiconductor, Inc. | Programmable logic device macrocell with an exclusive feedback line and an exclusive external input line |
US5291482A (en) | 1992-07-24 | 1994-03-01 | At&T Bell Laboratories | High bandwidth packet switch |
US5357512A (en) | 1992-12-30 | 1994-10-18 | Intel Corporation | Conditional carry scheduler for round robin scheduling |
US5825921A (en) | 1993-03-19 | 1998-10-20 | Intel Corporation | Memory transfer apparatus and method useful within a pattern recognition system |
US5459798A (en) | 1993-03-19 | 1995-10-17 | Intel Corporation | System and method of pattern recognition employing a multiprocessing pipelined apparatus with private pattern memory |
CA2145363C (en) | 1994-03-24 | 1999-07-13 | Anthony Mark Jones | Ram interface |
US20050251638A1 (en) | 1994-08-19 | 2005-11-10 | Frederic Boutaud | Devices, systems and methods for conditional instructions |
JP3345515B2 (ja) | 1994-08-31 | 2002-11-18 | アイワ株式会社 | ピークシフト補正回路およびそれを使用した磁気記録媒体再生装置 |
US5615237A (en) | 1994-09-16 | 1997-03-25 | Transwitch Corp. | Telecommunications framer utilizing state machine |
JPH0887462A (ja) | 1994-09-20 | 1996-04-02 | Fujitsu Ltd | ステートマシン及び通信制御方式 |
US5790531A (en) | 1994-12-23 | 1998-08-04 | Applied Digital Access, Inc. | Method and apparatus for determining the origin of a remote alarm indication signal |
US6279128B1 (en) | 1994-12-29 | 2001-08-21 | International Business Machines Corporation | Autonomous system for recognition of patterns formed by stored data during computer memory scrubbing |
US5794062A (en) | 1995-04-17 | 1998-08-11 | Ricoh Company Ltd. | System and method for dynamically reconfigurable computing using a processing unit having changeable internal hardware organization |
US5659551A (en) | 1995-05-31 | 1997-08-19 | International Business Machines Corporation | Programmable computer system element with built-in self test method and apparatus for repair during power-on |
US5723984A (en) | 1996-06-07 | 1998-03-03 | Advanced Micro Devices, Inc. | Field programmable gate array (FPGA) with interconnect encoding |
US5680640A (en) | 1995-09-01 | 1997-10-21 | Emc Corporation | System for migrating data by selecting a first or second transfer means based on the status of a data element map initialized to a predetermined state |
US5754878A (en) | 1996-03-18 | 1998-05-19 | Advanced Micro Devices, Inc. | CPU with DSP function preprocessor having pattern recognition detector that uses table for translating instruction sequences intended to perform DSP function into DSP macros |
JPH10111862A (ja) | 1996-08-13 | 1998-04-28 | Fujitsu Ltd | 再帰型ニューラルネットワークに基づく時系列解析装置および方法 |
JPH1069459A (ja) | 1996-08-29 | 1998-03-10 | Hitachi Ltd | シリアルインタフェース制御装置およびその制御方法 |
US6034963A (en) | 1996-10-31 | 2000-03-07 | Iready Corporation | Multiple network protocol encoder/decoder and data processor |
JP2940496B2 (ja) | 1996-11-05 | 1999-08-25 | 日本電気株式会社 | パタンマッチング符号化装置及び方法 |
US6317427B1 (en) | 1997-04-24 | 2001-11-13 | Cabletron Systems, Inc. | Method and apparatus for adaptive port buffering |
US6011407A (en) | 1997-06-13 | 2000-01-04 | Xilinx, Inc. | Field programmable gate array with dedicated computer bus interface and method for configuring both |
US6195150B1 (en) | 1997-07-15 | 2001-02-27 | Silverbrook Research Pty Ltd | Pseudo-3D stereoscopic images and output device |
US6097212A (en) | 1997-10-09 | 2000-08-01 | Lattice Semiconductor Corporation | Variable grain architecture for FPGA integrated circuits |
US6041405A (en) | 1997-12-18 | 2000-03-21 | Advanced Micro Devices, Inc. | Instruction length prediction using an instruction length pattern detector |
DE19861088A1 (de) | 1997-12-22 | 2000-02-10 | Pact Inf Tech Gmbh | Verfahren zur Reparatur von integrierten Schaltkreisen |
US6219776B1 (en) | 1998-03-10 | 2001-04-17 | Billions Of Operations Per Second | Merged array controller and processing element |
EP0943995A3 (en) | 1998-03-20 | 2000-12-06 | Texas Instruments Incorporated | Processor having real-time external instruction insertion for debug functions without a debug monitor |
US6151644A (en) | 1998-04-17 | 2000-11-21 | I-Cube, Inc. | Dynamically configurable buffer for a computer network |
US6052766A (en) | 1998-07-07 | 2000-04-18 | Lucent Technologies Inc. | Pointer register indirectly addressing a second register in the processor core of a digital processor |
US9195784B2 (en) | 1998-08-31 | 2015-11-24 | Cadence Design Systems, Inc. | Common shared memory in a verification system |
US7430171B2 (en) | 1998-11-19 | 2008-09-30 | Broadcom Corporation | Fibre channel arbitrated loop bufferless switch circuitry to increase bandwidth without significant increase in cost |
US7899052B1 (en) | 1999-01-27 | 2011-03-01 | Broadcom Corporation | Memory structure for resolving addresses in a packet-based network switch |
US6412057B1 (en) * | 1999-02-08 | 2002-06-25 | Kabushiki Kaisha Toshiba | Microprocessor with virtual-to-physical address translation using flags |
US6636483B1 (en) | 1999-02-25 | 2003-10-21 | Fairchild Semiconductor Corporation | Network switch with zero latency flow control |
US6317849B1 (en) | 1999-04-28 | 2001-11-13 | Intel Corporation | Method and apparatus for controlling available capabilities of a device |
JP2000347708A (ja) | 1999-06-02 | 2000-12-15 | Nippon Telegr & Teleph Corp <Ntt> | ニューラルネットよる動的システムの制御方法及び装置及びニューラルネットよる動的システムの制御プログラムを格納した記憶媒体 |
US6880087B1 (en) | 1999-10-08 | 2005-04-12 | Cisco Technology, Inc. | Binary state machine system and method for REGEX processing of a data stream in an intrusion detection system |
AU2574501A (en) | 1999-11-24 | 2001-06-04 | Z-Force Corporation | Configurable state machine driver and methods of use |
US6640262B1 (en) | 1999-12-20 | 2003-10-28 | 3Com Corporation | Method and apparatus for automatically configuring a configurable integrated circuit |
US6614703B2 (en) | 2000-01-13 | 2003-09-02 | Texas Instruments Incorporated | Method and system for configuring integrated systems on a chip |
US6625740B1 (en) | 2000-01-13 | 2003-09-23 | Cirrus Logic, Inc. | Dynamically activating and deactivating selected circuit blocks of a data processing integrated circuit during execution of instructions according to power code bits appended to selected instructions |
US7080359B2 (en) | 2002-01-16 | 2006-07-18 | International Business Machines Corporation | Stack unique signatures for program procedures and methods |
US6240003B1 (en) | 2000-05-01 | 2001-05-29 | Micron Technology, Inc. | DRAM content addressable memory using part of the content as an address |
US6977897B1 (en) | 2000-05-08 | 2005-12-20 | Crossroads Systems, Inc. | System and method for jitter compensation in data transfers |
US6510508B1 (en) * | 2000-06-15 | 2003-01-21 | Advanced Micro Devices, Inc. | Translation lookaside buffer flush filter |
US6476636B1 (en) | 2000-09-02 | 2002-11-05 | Actel Corporation | Tileable field-programmable gate array architecture |
US6888371B2 (en) | 2001-10-29 | 2005-05-03 | Leopard Logic, Inc. | Programmable interface for field programmable gate array cores |
US7333580B2 (en) | 2002-01-28 | 2008-02-19 | Broadcom Corporation | Pipelined parallel processing of feedback loops in a digital circuit |
US6925510B2 (en) | 2002-02-22 | 2005-08-02 | Winbond Electronics, Corp. | Peripheral or memory device having a combined ISA bus and LPC bus |
US7146643B2 (en) | 2002-10-29 | 2006-12-05 | Lockheed Martin Corporation | Intrusion detection accelerator |
JP4199519B2 (ja) * | 2002-11-05 | 2008-12-17 | パナソニック株式会社 | メモリ管理装置及びメモリ管理方法 |
US7349416B2 (en) | 2002-11-26 | 2008-03-25 | Cisco Technology, Inc. | Apparatus and method for distributing buffer status information in a switching fabric |
US7292572B2 (en) | 2002-12-11 | 2007-11-06 | Lsi Corporation | Multi-level register bank based configurable ethernet frame parser |
US7089352B2 (en) | 2002-12-23 | 2006-08-08 | Micron Technology, Inc. | CAM modified to be used for statistic calculation in network switches and routers |
US6944710B2 (en) | 2002-12-30 | 2005-09-13 | Micron Technology, Inc. | Multiple category CAM |
US6880146B2 (en) | 2003-01-31 | 2005-04-12 | Hewlett-Packard Development Company, L.P. | Molecular-wire-based restorative multiplexer, and method for constructing a multiplexer based on a configurable, molecular-junction-nanowire crossbar |
US7305047B1 (en) | 2003-03-12 | 2007-12-04 | Lattice Semiconductor Corporation | Automatic lane assignment for a receiver |
US7366352B2 (en) | 2003-03-20 | 2008-04-29 | International Business Machines Corporation | Method and apparatus for performing fast closest match in pattern recognition |
CA2526467C (en) | 2003-05-20 | 2015-03-03 | Kagutech Ltd. | Digital backplane recursive feedback control |
WO2004104841A1 (ja) | 2003-05-21 | 2004-12-02 | Fujitsu Limited | アドレス変換バッファの電力制御方法及びその装置 |
US7010639B2 (en) | 2003-06-12 | 2006-03-07 | Hewlett-Packard Development Company, L.P. | Inter integrated circuit bus router for preventing communication to an unauthorized port |
US6906938B2 (en) | 2003-08-15 | 2005-06-14 | Micron Technology, Inc. | CAM memory architecture and a method of forming and operating a device according to a CAM memory architecture |
US7117290B2 (en) * | 2003-09-03 | 2006-10-03 | Advanced Micro Devices, Inc. | MicroTLB and micro tag for reducing power in a processor |
DE102004045527B4 (de) | 2003-10-08 | 2009-12-03 | Siemens Ag | Konfigurierbare Logikschaltungsanordnung |
US7849119B2 (en) | 2003-12-29 | 2010-12-07 | Xilinx, Inc. | Digital signal processing circuit having a pattern detector circuit |
US7860915B2 (en) | 2003-12-29 | 2010-12-28 | Xilinx, Inc. | Digital signal processing circuit having a pattern circuit for determining termination conditions |
US7243165B2 (en) | 2004-01-14 | 2007-07-10 | International Business Machines Corporation | Parallel pattern detection engine |
US7487542B2 (en) | 2004-01-14 | 2009-02-03 | International Business Machines Corporation | Intrusion detection using a network processor and a parallel pattern detection engine |
GB0415850D0 (en) | 2004-07-15 | 2004-08-18 | Imagination Tech Ltd | Memory management system |
US7716455B2 (en) | 2004-12-03 | 2010-05-11 | Stmicroelectronics, Inc. | Processor with automatic scheduling of operations |
US7176717B2 (en) | 2005-01-14 | 2007-02-13 | Velogix, Inc. | Programmable logic and routing blocks with dedicated lines |
US7358761B1 (en) | 2005-01-21 | 2008-04-15 | Csitch Corporation | Versatile multiplexer-structures in programmable logic using serial chaining and novel selection schemes |
US7392229B2 (en) | 2005-02-12 | 2008-06-24 | Curtis L. Harris | General purpose set theoretic processor |
US7499464B2 (en) | 2005-04-06 | 2009-03-03 | Robert Ayrapetian | Buffered crossbar switch with a linear buffer to port relationship that supports cells and packets of variable size |
US7672529B2 (en) | 2005-05-10 | 2010-03-02 | Intel Corporation | Techniques to detect Gaussian noise |
US7804719B1 (en) | 2005-06-14 | 2010-09-28 | Xilinx, Inc. | Programmable logic block having reduced output delay during RAM write processes when programmed to function in RAM mode |
US7276934B1 (en) | 2005-06-14 | 2007-10-02 | Xilinx, Inc. | Integrated circuit with programmable routing structure including diagonal interconnect lines |
US20080126690A1 (en) | 2006-02-09 | 2008-05-29 | Rajan Suresh N | Memory module with memory stack |
US7376782B2 (en) | 2005-06-29 | 2008-05-20 | Intel Corporation | Index/data register pair for indirect register access |
FR2891075B1 (fr) | 2005-09-21 | 2008-04-04 | St Microelectronics Sa | Circuit de memoire pour automate de reconnaissance de caracteres de type aho-corasick et procede de memorisation de donnees dans un tel circuit |
US7913255B2 (en) * | 2005-10-20 | 2011-03-22 | Qualcomm Incorporated | Background thread processing in a multithread digital signal processor |
US7360063B2 (en) | 2006-03-02 | 2008-04-15 | International Business Machines Corporation | Method for SIMD-oriented management of register maps for map-based indirect register-file access |
JP2007304747A (ja) * | 2006-05-10 | 2007-11-22 | Nec Corp | 計算機システム及びメモリアクセス方法 |
US7512634B2 (en) | 2006-06-05 | 2009-03-31 | Tarari, Inc. | Systems and methods for processing regular expressions |
US7725510B2 (en) | 2006-08-01 | 2010-05-25 | Alcatel-Lucent Usa Inc. | Method and system for multi-character multi-pattern pattern matching |
JP2008090554A (ja) * | 2006-09-29 | 2008-04-17 | Toshiba Corp | 情報処理装置、制御装置およびメモリ管理方法 |
US8065249B1 (en) | 2006-10-13 | 2011-11-22 | Harris Curtis L | GPSTP with enhanced aggregation functionality |
US7774286B1 (en) | 2006-10-24 | 2010-08-10 | Harris Curtis L | GPSTP with multiple thread functionality |
WO2008055272A2 (en) * | 2006-11-04 | 2008-05-08 | Virident Systems, Inc. | Integrating data from symmetric and asymmetric memory |
US7890923B2 (en) | 2006-12-01 | 2011-02-15 | International Business Machines Corporation | Configurable pattern detection method and apparatus |
US8051022B2 (en) | 2006-12-08 | 2011-11-01 | Pandya Ashish A | Embedded programmable intelligent search memory (PRISM) that simultaneously performs regular expression based search and signature pattern based search |
KR100866604B1 (ko) | 2007-01-23 | 2008-11-03 | 삼성전자주식회사 | 전원제어 장치 및 전원제어 방법 |
US7797521B2 (en) | 2007-04-12 | 2010-09-14 | International Business Machines Corporation | Method, system, and computer program product for path-correlated indirect address predictions |
KR20080097573A (ko) | 2007-05-02 | 2008-11-06 | 삼성전자주식회사 | 가상 메모리 접근 방법 |
US20080320053A1 (en) | 2007-06-21 | 2008-12-25 | Michio Iijima | Data management method for accessing data storage area based on characteristic of stored data |
WO2009048707A1 (en) * | 2007-10-12 | 2009-04-16 | Rambus Inc. | Managing flash memory in computer systems |
US8417893B2 (en) | 2008-02-04 | 2013-04-09 | Apple Inc. | Memory mapping techniques |
US7886089B2 (en) | 2008-02-13 | 2011-02-08 | International Business Machines Corporation | Method, system and computer program product for enhanced shared store buffer management scheme for differing buffer sizes with limited resources for optimized performance |
US20110004578A1 (en) | 2008-02-22 | 2011-01-06 | Michinari Momma | Active metric learning device, active metric learning method, and program |
US7735045B1 (en) | 2008-03-12 | 2010-06-08 | Xilinx, Inc. | Method and apparatus for mapping flip-flop logic onto shift register logic |
US8787060B2 (en) * | 2010-11-03 | 2014-07-22 | Netlist, Inc. | Method and apparatus for optimizing driver load in a memory package |
US8051271B2 (en) | 2008-07-01 | 2011-11-01 | Arm Limited | Translation of virtual to physical addresses |
US8015530B1 (en) | 2008-08-05 | 2011-09-06 | Xilinx, Inc. | Method of enabling the generation of reset signals in an integrated circuit |
US8938590B2 (en) | 2008-10-18 | 2015-01-20 | Micron Technology, Inc. | Indirect register access method and system |
US8209521B2 (en) | 2008-10-18 | 2012-06-26 | Micron Technology, Inc. | Methods of indirect register access including automatic modification of a directly accessible address register |
US9639493B2 (en) | 2008-11-05 | 2017-05-02 | Micron Technology, Inc. | Pattern-recognition processor with results buffer |
US7970964B2 (en) | 2008-11-05 | 2011-06-28 | Micron Technology, Inc. | Methods and systems to accomplish variable width data input |
US7917684B2 (en) | 2008-11-05 | 2011-03-29 | Micron Technology, Inc. | Bus translator |
US8402188B2 (en) | 2008-11-10 | 2013-03-19 | Micron Technology, Inc. | Methods and systems for devices with a self-selecting bus decoder |
US20100118425A1 (en) | 2008-11-11 | 2010-05-13 | Menachem Rafaelof | Disturbance rejection in a servo control loop using pressure-based disc mode sensor |
US10007486B2 (en) | 2008-12-01 | 2018-06-26 | Micron Technology, Inc. | Systems and methods to enable identification of different data sets |
US20100138575A1 (en) | 2008-12-01 | 2010-06-03 | Micron Technology, Inc. | Devices, systems, and methods to synchronize simultaneous dma parallel processing of a single data stream by multiple devices |
US9348784B2 (en) | 2008-12-01 | 2016-05-24 | Micron Technology, Inc. | Systems and methods for managing endian mode of a device |
US9164945B2 (en) | 2008-12-01 | 2015-10-20 | Micron Technology, Inc. | Devices, systems, and methods to synchronize parallel processing of a single data stream |
DE102008060719B4 (de) | 2008-12-05 | 2018-09-20 | Siemens Healthcare Gmbh | Verfahren zur Steuerung des Aufnahmebetriebs einer Magnetresonanzeinrichtung bei der Aufnahme von Magnetresonanzdaten eines Patienten sowie zugehörige Magnetresonanzeinrichtung |
US8966181B2 (en) * | 2008-12-11 | 2015-02-24 | Seagate Technology Llc | Memory hierarchy with non-volatile filter and victim caches |
US20100169602A1 (en) * | 2008-12-29 | 2010-07-01 | Jared E Hulbert | Method and Apparatus for Efficient Memory Placement |
US8140780B2 (en) | 2008-12-31 | 2012-03-20 | Micron Technology, Inc. | Systems, methods, and devices for configuring a device |
US8214672B2 (en) | 2009-01-07 | 2012-07-03 | Micron Technology, Inc. | Method and systems for power consumption management of a pattern-recognition processor |
US20100174887A1 (en) | 2009-01-07 | 2010-07-08 | Micron Technology Inc. | Buses for Pattern-Recognition Processors |
US8281395B2 (en) | 2009-01-07 | 2012-10-02 | Micron Technology, Inc. | Pattern-recognition processor with matching-data reporting module |
US8843523B2 (en) | 2009-01-12 | 2014-09-23 | Micron Technology, Inc. | Devices, systems, and methods for communicating pattern matching results of a parallel pattern search engine |
US8180981B2 (en) | 2009-05-15 | 2012-05-15 | Oracle America, Inc. | Cache coherent support for flash in a memory hierarchy |
US8146040B1 (en) | 2009-06-11 | 2012-03-27 | Xilinx, Inc. | Method of evaluating an architecture for an integrated circuit device |
US20100325352A1 (en) | 2009-06-19 | 2010-12-23 | Ocz Technology Group, Inc. | Hierarchically structured mass storage device and method |
US9836555B2 (en) | 2009-06-26 | 2017-12-05 | Micron Technology, Inc. | Methods and devices for saving and/or restoring a state of a pattern-recognition processor |
US9208084B2 (en) * | 2009-06-29 | 2015-12-08 | Oracle America, Inc. | Extended main memory hierarchy having flash memory for page fault handling |
TWI460588B (zh) * | 2009-07-17 | 2014-11-11 | Toshiba Kk | Memory management device and memory information processing device |
US8159900B2 (en) | 2009-08-06 | 2012-04-17 | Unisyn Medical Technologies, Inc. | Acoustic system quality assurance and testing |
US8543863B2 (en) * | 2009-11-18 | 2013-09-24 | Microsoft Corporation | Efficiency of hardware memory access using dynamically replicated memory |
US9323994B2 (en) | 2009-12-15 | 2016-04-26 | Micron Technology, Inc. | Multi-level hierarchical routing matrices for pattern-recognition processors |
US9501705B2 (en) | 2009-12-15 | 2016-11-22 | Micron Technology, Inc. | Methods and apparatuses for reducing power consumption in a pattern recognition processor |
US8489534B2 (en) | 2009-12-15 | 2013-07-16 | Paul D. Dlugosch | Adaptive content inspection |
US20110161620A1 (en) | 2009-12-29 | 2011-06-30 | Advanced Micro Devices, Inc. | Systems and methods implementing shared page tables for sharing memory resources managed by a main operating system with accelerator devices |
US20110208900A1 (en) | 2010-02-23 | 2011-08-25 | Ocz Technology Group, Inc. | Methods and systems utilizing nonvolatile memory in a computer system main memory |
GB2478727B (en) | 2010-03-15 | 2013-07-17 | Advanced Risc Mach Ltd | Translation table control |
US8914581B2 (en) * | 2010-05-20 | 2014-12-16 | Telefonaktiebolaget L M Ericsson (Publ) | Method and apparatus for accessing cache memory |
US8766666B2 (en) | 2010-06-10 | 2014-07-01 | Micron Technology, Inc. | Programmable device, hierarchical parallel machines, and methods for providing state information |
US8601013B2 (en) | 2010-06-10 | 2013-12-03 | Micron Technology, Inc. | Analyzing data using a hierarchical structure |
US9195623B2 (en) | 2010-06-23 | 2015-11-24 | International Business Machines Corporation | Multiple address spaces per adapter with address translation |
US8379350B2 (en) | 2010-06-30 | 2013-02-19 | Tdk Corporation | CPP-type magnetoresistive element including spacer layer |
US8335908B2 (en) | 2010-07-01 | 2012-12-18 | Arm Limited | Data processing apparatus for storing address translations |
US8495318B2 (en) * | 2010-07-26 | 2013-07-23 | International Business Machines Corporation | Memory page management in a tiered memory system |
US8294490B1 (en) | 2010-10-01 | 2012-10-23 | Xilinx, Inc. | Integrated circuit and method of asynchronously routing data in an integrated circuit |
US8726253B2 (en) | 2011-01-25 | 2014-05-13 | Micron Technology, Inc. | Method and apparatus for compiling regular expressions |
US8843911B2 (en) | 2011-01-25 | 2014-09-23 | Micron Technology, Inc. | Utilizing special purpose elements to implement a FSM |
WO2012103148A2 (en) | 2011-01-25 | 2012-08-02 | Micron Technology, Inc. | Unrolling quantifications to control in-degree and/or out degree of automaton |
KR101551045B1 (ko) | 2011-01-25 | 2015-09-07 | 마이크론 테크놀로지, 인크. | 요소 이용을 위한 상태 그룹화 |
US9443156B2 (en) | 2011-12-15 | 2016-09-13 | Micron Technology, Inc. | Methods and systems for data analysis in a state machine |
US8593175B2 (en) | 2011-12-15 | 2013-11-26 | Micron Technology, Inc. | Boolean logic in a state machine lattice |
US8782624B2 (en) | 2011-12-15 | 2014-07-15 | Micron Technology, Inc. | Methods and systems for detection in a state machine |
US8680888B2 (en) | 2011-12-15 | 2014-03-25 | Micron Technologies, Inc. | Methods and systems for routing in a state machine |
US8648621B2 (en) | 2011-12-15 | 2014-02-11 | Micron Technology, Inc. | Counter operation in a state machine lattice |
US20130275709A1 (en) | 2012-04-12 | 2013-10-17 | Micron Technology, Inc. | Methods for reading data from a storage buffer including delaying activation of a column select |
US8536896B1 (en) | 2012-05-31 | 2013-09-17 | Xilinx, Inc. | Programmable interconnect element and method of implementing a programmable interconnect element |
US9389841B2 (en) | 2012-07-18 | 2016-07-12 | Micron Technology, Inc. | Methods and systems for using state vector data in a state machine engine |
US9304968B2 (en) | 2012-07-18 | 2016-04-05 | Micron Technology, Inc. | Methods and devices for programming a state machine engine |
US9524248B2 (en) | 2012-07-18 | 2016-12-20 | Micron Technology, Inc. | Memory management for a hierarchical memory system |
US9235798B2 (en) | 2012-07-18 | 2016-01-12 | Micron Technology, Inc. | Methods and systems for handling data received by a state machine engine |
US9063532B2 (en) | 2012-08-31 | 2015-06-23 | Micron Technology, Inc. | Instruction insertion in state machine engines |
US9075428B2 (en) | 2012-08-31 | 2015-07-07 | Micron Technology, Inc. | Results generation for state machine engines |
US9501131B2 (en) | 2012-08-31 | 2016-11-22 | Micron Technology, Inc. | Methods and systems for power management in a pattern recognition processing system |
KR102029055B1 (ko) | 2013-02-08 | 2019-10-07 | 삼성전자주식회사 | 고차원 데이터의 시각화 방법 및 장치 |
US9448965B2 (en) | 2013-03-15 | 2016-09-20 | Micron Technology, Inc. | Receiving data streams in parallel and providing a first portion of data to a first state machine engine and a second portion to a second state machine |
US10007435B2 (en) * | 2015-05-21 | 2018-06-26 | Micron Technology, Inc. | Translation lookaside buffer in memory |
-
2012
- 2012-07-18 US US13/552,491 patent/US9524248B2/en active Active
-
2013
- 2013-07-09 EP EP13819365.1A patent/EP2875432B1/en active Active
- 2013-07-09 KR KR1020157001783A patent/KR102144491B1/ko active IP Right Grant
- 2013-07-09 JP JP2015523126A patent/JP6367797B2/ja active Active
- 2013-07-09 WO PCT/US2013/049753 patent/WO2014014711A1/en active Application Filing
- 2013-07-09 CN CN201380038489.5A patent/CN104487953B/zh active Active
- 2013-07-18 TW TW102125808A patent/TWI515563B/zh active
-
2016
- 2016-12-06 US US15/371,044 patent/US10089242B2/en active Active
-
2018
- 2018-08-21 US US16/107,662 patent/US10831672B2/en active Active
-
2020
- 2020-10-28 US US17/082,924 patent/US20210042238A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
US9524248B2 (en) | 2016-12-20 |
US10089242B2 (en) | 2018-10-02 |
WO2014014711A1 (en) | 2014-01-23 |
US20140025923A1 (en) | 2014-01-23 |
TW201411345A (zh) | 2014-03-16 |
KR102144491B1 (ko) | 2020-08-18 |
EP2875432B1 (en) | 2021-03-24 |
JP6367797B2 (ja) | 2018-08-01 |
US20210042238A1 (en) | 2021-02-11 |
EP2875432A1 (en) | 2015-05-27 |
KR20150036165A (ko) | 2015-04-07 |
CN104487953A (zh) | 2015-04-01 |
JP2015522886A (ja) | 2015-08-06 |
EP2875432A4 (en) | 2016-03-23 |
US20170083452A1 (en) | 2017-03-23 |
TWI515563B (zh) | 2016-01-01 |
US20180357177A1 (en) | 2018-12-13 |
US10831672B2 (en) | 2020-11-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104487953B (zh) | 用于层次型存储器系统的存储器管理 | |
US10402331B2 (en) | Systems and methods for implementing a tag-less shared cache and a larger backing cache | |
CN102498477B (zh) | Tlb预取 | |
US9384134B2 (en) | Persistent memory for processor main memory | |
Gupta et al. | DFTL: a flash translation layer employing demand-based selective caching of page-level address mappings | |
Ma et al. | LazyFTL: A page-level flash translation layer optimized for NAND flash memory | |
US8935484B2 (en) | Write-absorbing buffer for non-volatile memory | |
US20130091331A1 (en) | Methods, apparatus, and articles of manufacture to manage memory | |
US20060212654A1 (en) | Method and apparatus for intelligent instruction caching using application characteristics | |
Wang et al. | Observational wear leveling: an efficient algorithm for flash memory management | |
CN109815165A (zh) | 用于存储和处理高效压缩高速缓存行的系统和方法 | |
US8468297B2 (en) | Content addressable memory system | |
US20110055482A1 (en) | Shared cache reservation | |
Jin et al. | Write-aware buffer management policy for performance and durability enhancement in NAND flash memory | |
TW201202929A (en) | Apparatus and methods to reduce duplicate line fills in a victim cache | |
US9760488B2 (en) | Cache controlling method for memory system and cache system thereof | |
Wu et al. | ZeroCost-LLC: Shared LLCs at No Cost to WCL | |
Mittal et al. | Cache performance improvement using software-based approach |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |