CN103019959A - 一种指令高速缓冲存储器 - Google Patents
一种指令高速缓冲存储器 Download PDFInfo
- Publication number
- CN103019959A CN103019959A CN2012104768764A CN201210476876A CN103019959A CN 103019959 A CN103019959 A CN 103019959A CN 2012104768764 A CN2012104768764 A CN 2012104768764A CN 201210476876 A CN201210476876 A CN 201210476876A CN 103019959 A CN103019959 A CN 103019959A
- Authority
- CN
- China
- Prior art keywords
- instruction
- bit
- address
- instruction cache
- zone bit
- 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.)
- Granted
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本发明涉及一种指令高速缓冲存储器(指令Cache),包括:标志缓冲器,其每一行用于存储一个指令地址标志位;多路存储单元,每一路存储单元对应所述标志缓冲器的每一行,每一路存储单元的每一行用于存储一个指令块及其对应的一个状态位;控制单元,用于将内核地址中的标志位与所述指令地址标志位相比较,按照内核地址中的索引位查询所述状态位,并且根据比较结果和查询结果对所述指令块的读取进行控制。本发明通过在指令Cache中增加标志缓冲器而消除标志存储器,使用标志缓冲器和状态位提前确定需要读取的指令Cache中数据存储器的路数,消除了冗余的读数据存储器的操作,减小了指令Cache的面积,有效降低了指令Cache的功耗。
Description
技术领域
本发明涉及一种指令高速缓冲存储器。
背景技术
降低嵌入式系统的功耗能够延长电池的使用寿命。作为提高处理器内核取指令速度的关键部件,指令高速缓冲存储器(指令Cache)占据了系统很大一部分功耗,因为内核取指令几乎在程序执行的每个周期都发生。因此,有效降低指令Cache的功耗对于低功耗处理器的设计有着重要意义。
传统的N路组相联方式的指令Cache结构如图1所示,每一路的结构都相同,主要由标志(tag)存储器、数据(da ta)存储器和状态位(st)组成。当内核访问指令Cache时,tag存储器根据内核地址的索引位(Index)作为地址读出标志位,并同时与内核地址中的Tag位进行比较,如果第i路读出的标志位与内核地址中的Tag位相等,则表示命中,将第i路读出的数据发送给处理器内核;如果全部不相等,则表示没有命中,这时会启动一个访问主存的操作。为了达到处理器内核高速访问指令Cache的目的,指令Cache中tag存储器的访问和data存储器的访问是同时进行的。
从N路组相联指令Cache的工作原理可以看出,内核的取指操作需要进行大量的读tag存储器操作和读冗余的data存储器操作,这个过程需要消耗大量的功耗。如果能够减少访问tag存储器的功耗和消除冗余的data存储器的访问,则可以有效降低指令Cache的功耗。
在2007年8月27-29号的低功耗电子学与设计(ISLPED)会议上ZhangMingming等人发表的文章《Reducing Cache Energy Consumption by TagEncoding in Embedded Processors》中提出了一种基于标志位编码的低功耗指令Cache设计方法,它在传统的Cache结构中增加了一个小的寄存器组来保存最近访问的内核地址中的标志位,同时为Cache的每一行增加了一个3bits的状态寄存器来记录每一行标志位的状态。它的工作原理是:在内核访问指令Cache的时候,通过检测指令Cache中该组的标志位的状态来确定应该访问哪一路,减少了冗余的读tag存储器操作和冗余的读data存储器操作,从而可以有效降低指令Cache的功耗。
在2011年8月1-3号的低功耗电子学与设计(ISLPED)会议上Jongmin Lee等人发表的文章《TLB Index-based Tagging for Cache Energy Reduction》中提出了一种基于TLB的低功耗指令Cache设计方法,它将TLB的索引作为指令Cache的标志位,这种方法可以将tag存储器的位宽减小到传统结构中tag存储器位宽的四分之一,从而减小了指令Cache的面积,降低了指令Cache的功耗。
Zhang Mingming等人提出的基于标志位编码的低功耗指令Cache设计方法有如下缺点:
(1)它需要为指令Cache的每一行增加一个3bits的状态寄存器来记录每一行标志位的状态,这样会增加指令Cache的面积,而且对这些状态寄存器的访问也需要消耗一部分功耗;
(2)对于检测出的那一路Cache单元仍然需要对tag存储器进行读操作,tag存储器仍然需要消耗一部分功耗。
Jongmin Lee等人提出的基于TLB的低功耗指令Cache设计方法有如下不足:
(1)对于多路组相联指令Cache,不能减少冗余的读tag存储器操作和冗余的读data存储器操作;
(2)tag存储器的位宽虽然可以减小到传统结构中tag存储器位宽的四分之一,但是它仍然需要消耗一部分功耗。
发明内容
本发明的目的是提供一种能解决上述缺陷的指令高速缓冲存储器。
本发明提供了一种指令高速缓冲存储器,包括:标志缓冲器,其每一行用于存储一个指令地址标志位;多路存储单元,每一路存储单元对应所述标志缓冲器的每一行,每一路存储单元的每一行用于存储一个指令块及其对应的一个状态位;以及控制单元,用于将内核地址中的标志位与所述指令地址标志位相比较,按照内核地址中的索引位查询所述状态位,并且根据比较结果和查询结果对所述指令块的读取进行控制。
优选地,所述比较结果是内核地址中的标志位与所述标志缓冲器中一个指令地址标志位相同,所述查询结果是所述状态位为有效,所述控制单元用于:根据所述索引位从所述多路存储单元中读取所述指令块。
优选地,所述比较结果是内核地址中的标志位与所述标志缓冲器中一个指令地址标志位相同,所述查询结果是所述状态位为无效,所述控制单元用于:根据所述内核地址从主存中读取指令块;以及根据所述索引位将读取的指令块写入所述多路存储单元中,并且将写入的指令块对应的状态位设置为有效。
优选地,所述比较结果是内核地址中的标志位与所述标志缓冲器中所有的指令地址标志位都不相同,所述控制单元用于:将所述内核地址中的标志位存入所述标志缓冲器中;根据所述内核地址从主存中读取指令块;以及根据所述索引位将读取的指令块写入所述多路存储单元中,并且将写入的指令块对应的状态位设置为有效。
优选地,将所述内核地址中的标志位存入所述标志缓冲器中的步骤包括:用所述内核地址中的标志位替换所述标志缓冲器中一行的指令地址标志位,并且将被替换行对应的一路存储单元中的状态位全部设置为无效。
优选地,所述标志缓冲器采用先入先出的写入方式。
优选地,所述标志缓冲器采用全相联方式,内核地址中的标志位同时与所述标志缓冲器中每一行的指令地址标志位进行比较。
本发明通过在指令Cache中增加标志缓冲器而消除标志存储器,并且使用标志缓冲器和状态位提前确定需要读取的指令Cache中数据存储器的路数,消除了冗余的读数据存储器的操作,减小了指令Cache的面积,有效降低了指令Cache的功耗。
附图说明
图1是传统的N路组相联的指令Cache的结构示意图;
图2是根据本发明实施例的指令Cache的结构示意图;
图3是根据本发明实施例的指令Cache的工作流程图;以及
图4是根据本发明实施例的指令代码在主存中的位置示意图。
具体实施方式
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
本发明提出了一种低功耗指令Cache结构,该结构相对传统的指令Cache结构增加了一个小的标志缓冲器,消除了传统结构中的tag存储器,在处理器内核访问该结构时可以消除冗余的读数据存储器操作。本发明可以减小指令Cache的面积,有效降低指令Cache的功耗。
图2是根据本发明实施例的指令Cache的结构示意图。
如图2所示,指令Cache包括标志缓冲器模块(tag buffer,TB)、N路结构相同的存储单元,以及控制电路。标志缓冲器用于存储指令地址标志位,其可以采用全相联方式,其深度为N,与指令Cache的路数相同,标志缓冲器的一行对应指令Cache中的一路;数据宽度可以根据指令Cache的容量和路数、内核地址宽度来确定。每一路的存储单元与传统结构不同,只包括数据存储器和状态位(例如,有效位),没有tag存储器,其中,数据存储器用于存储指令块,对应的状态位用于存储指令块的状态。
当处理器内核访问指令Cache时,内核地址中的标志位会去查询标志缓冲器(TB),即将内核地址中的标志位与TB中的每一行进行比较。如果内核地址中的标志位与TB中的某一行相等则表示TB命中,同时将对应路的命中信号置“1”;如果全部不相等则表示TB不命中。在TB采用全相联方式的情况下,内核地址中的标志位是同时与TB中的每一行进行比较操作的。
在内核地址中的标志位查询TB的同时,指令Cache会根据内核地址中的索引位读出指令Cache每一路中对应行的有效位,如果有效位为“1”,则表示对应行的数据有效;如果有效位为“0”,则表示对应行的数据无效。
每一路中读出的有效位与该路命中信号做与操作得到该路数据存储器的读使能信号。如果读使能信号为“1”,则表示可以对该路的数据存储器进行读操作,读地址为内核地址中的索引位。从图2中可以看出:
R_EN0=hit0 & V0;
R_EN1=hit1 & V1;...
R_ENN-1=hitN-1 & VN-1;
如果指令Cache中某一路的读使能信号为“1”,则表示指令Cache命中,内核直接从该路数据存储器中读取指令;如果指令Cache中所有路的数据存储器读使能信号都为“0”,则表示指令Cache不命中,这时将启动一个访问主存的操作。
下面具体分析一下指令Cache不命中的情况,指令Cache不命中可以分为如下两种情况:
(1)TB的第i行命中,但是第i路读出的有效位为“0”:
此时指令Cache会启动一个访问主存的操作,根据内核地址从主存中读取指令块。当从主存中读取的指令块返回时,指令Cache会根据内核地址中的索引位将该指令块写入第i路数据存储器中,同时将写入行的有效位置“1”。
(2)TB不命中:
指令Cache会将内核地址中的标志位存入TB中(假设存入第i行):
a.第i行为空:
指令Cache会启动一个访问主存的操作,根据内核地址从主存中读取指令块。当从主存中读取的指令块返回时,指令Cache会根据内核地址中的索引位将该指令块写入第i路数据存储器中,同时将该路对应行的有效位置“1”。
b.第i行保存有原来的标志位:
此时会出现TB替换操作,即将原来保存在第i行的标志位替换出去;TB可以采用“先入先出”的写入方式,即当TB的内容需要替换时会将最先写入TB的标志位替换。在进行替换操作时,指令Cache会将第i路数据存储器的全部有效位清零。同时指令Cache会启动一个访问主存的操作,根据内核地址从主存中读取指令块。当从主存中读取的指令块返回时,指令Cache会根据内核地址中的索引位将该指令块写入第i路的数据存储器中,同时将第i路中对应行的有效位置“1”。
图3是根据本发明实施例的指令Cache的工作流程图。
在步骤301,内核访问指令Cache,这时,内核地址中的标志位会查询标志缓冲器TB。换言之,内核地址中的标志位会与TB中的每一行存储的指令地址标志位进行比较。
在步骤302,判断TB是否命中。如果命中,则流程进行到303,否则流程进行到305。TB命中是指内核地址中的标志位与TB中某一行的指令地址标志位相等,TB不命中是指内核地址中的标志位与TB中所有行的指令地址标志位都不相等。
在步骤303,判断对应的有效位是否为“1”。如果为“1”,则流程进行到步骤304,否则流程进行到步骤307。在内核地址中的标志位查询TB的同时,指令Cache会根据内核地址中的索引位读出指令Cache每一路中对应行的有效位,从而可以判断有效位的状态。
在步骤305,将标志位存入TB。
在步骤306,判断是否需要进行TB替换。如果需要,则流程进行到步骤308,否则流程进行到步骤307。如果标志位存入的TB的一行已经存在指令地址标志位,则需要进行替换,否则直接存入即可。
在步骤307,启动访问主存的操作,根据内核地址从主存中读取指令块。
在步骤308,将相应路的有效位全部清零,同时启动访问主存操作。这样可以防止在后续操作中读出错误数据。
在步骤309,将返回的指令块写入相应路的相应行,并将相应行的有效位置“1”。返回的指令块根据内核地址索引位被存入相应路的数据存储器中。
图4是根据本发明实施例的指令代码在主存中的位置示意图。
下面结合图4举例说明本发明的具体应用。假设指令Cache容量为16KB,块大小为128bits,采用4路组相联方式。指令Cache带宽为128bits,处理器内核一次可以取回4条指令,内核地址为32bits。标志缓冲器的深度为4,与指令Cache的路数相同。由于指令Cache中每一路的容量为4KB,需要的索引位宽为8bits,因此标志缓冲器的数据位宽为20bits。程序的指令代码在主存中的位置如图4所示,指令代码的大小为20KB,在主存中分为5页,每页大小为4KB。指令的执行流程为:Page 0→Page 1→Page 2→Page 3→Page 4。
处理器内核在读取Page 0中的第一个指令块时,TB不命中,指令Cache会将内核地址0x00000000中的标志位0x00000存入TB的第0行,同时会启动一个访问主存的操作;当从主存中读取的指令块返回时,指令Cache会将该指令块写入第0路数据存储器的第0行,并将该行的有效位置“1”。在接下来读取Page 0中的其他指令块时,TB命中,如果根据内核地址中的索引位读出的第0路的有效位为“1”,则表示指令Cache命中,直接从第0路数据存储器中读取指令;如果根据内核地址中的索引位读出的第0路的有效位为“0”,则表示指令Cache不命中,此时会启动一个访问主存的操作,当从主存中读取的指令块返回时,指令Cache会将该指令块写入第0路数据存储器的相应行,并将该行的有效位置“1”。Page 0中的指令代码执行完成后,处理器内核开始执行Page 1中的指令代码。
处理器内核在读取Page 1中的第一个指令块时,TB不命中,指令Cache会将内核地址0x00001000中的标志位0x00001存入TB的第1行,同时会启动一个访问主存的操作;当从主存中读取的指令块返回时,指令Cache会将该指令块写入第1路数据存储器的第0行,并将该行的有效位置“1”。在接下来读取Page 1中的其他指令块时,TB命中,如果根据内核地址中的索引位读出的第1路的有效位为“1”,则表示指令Cache命中,直接从第1路数据存储器中读取指令;如果根据内核地址中的索引位读出的第1路的有效位为“0”,则表示指令Cache不命中,此时会启动一个访问主存的操作,当从主存中读取的指令块返回时,指令Cache会将该指令块写入第1路数据存储器的相应行,并将该行的有效位置“1”。Page 1中的指令代码执行完成后,处理器内核开始执行Page 2中的指令代码。
处理器内核在读取Page 2中的第一个指令块时,TB不命中,指令Cache会将内核地址0x00002000中的标志位0x00002存入TB的第2行,同时会启动一个访问主存的操作;当从主存中读取的指令块返回时,指令Cache会将该指令块写入第2路数据存储器的第0行,并将该行的有效位置“1”。在接下来读取Page 2中的其他指令块时,TB命中,如果根据内核地址中的索引位读出的第2路的有效位为“1”,则表示指令Cache命中,直接从第2路数据存储器中读取指令;如果根据内核地址中的索引位读出的第2路的有效位为“0”,则表示指令Cache不命中,此时会启动一个访问主存的操作,当从主存中读取的指令块返回时,指令Cache会将该指令块写入第2路数据存储器的相应行,并将该行的有效位置“1”。Page 2中的指令代码执行完成后,处理器内核开始执行Page 3中的指令代码。
处理器内核在读取Page 3中的第一个指令块时,TB不命中,指令Cache会将内核地址0x00003000中的标志位0x00003存入TB的第3行,同时会启动一个访问主存的操作;当从主存中读取的指令块返回时,指令Cache会将该指令块写入第3路数据存储器的第0行,并将该行的有效位置“1”。在接下来读取Page 3中的其他指令块时,TB命中,如果根据内核地址中的索引位读出的第3路的有效位为“1”,则表示指令Cache命中,直接从第3路数据存储器中读取指令;如果根据内核地址中的索引位读出的第3路的有效位为“0”,则表示指令Cache不命中,此时会启动一个访问主存的操作,当从主存中读取的指令块返回时,指令Cache会将该指令块写入第3路数据存储器的相应行,并将该行的有效位置“1”。Page 3中的指令代码执行完成后,处理器内核开始执行Page 4中的指令代码。
处理器内核在读取Page 4中的第一个指令块时,TB不命中,指令Cache需要将内核地址0x00004000中的标志位0x00004存入TB中,但是TB的4行中都存有原来的标志位,因此这时会出现TB替换操作。由于TB采用的是“先进先出”的写入方式,因此TB的第0行中的标志位0x00000将被替换出去。指令Cache将新的标志位0x00004存入TB的第0行,同时将第0路数据存储器的全部有效位清零,并启动一个访问主存的操作;当从主存中读取的指令块返回时,指令Cache会将该指令块写入第0路数据存储器的第0行,并将该行的有效位置“1”。在接下来读取Page 4中的其他指令块时,TB命中,如果根据内核地址中的索引位读出的第0路的有效位为“1”,则表示指令Cache命中,直接从第0路数据存储器中读取指令;如果根据内核地址中的索引位读出的第0路的有效位为“0”,则表示指令Cache不命中,此时会启动一个访问主存的操作,当从主存中读取的指令块返回时,指令Cache会将该指令块写入第0路数据存储器的相应行,并将该行的有效位置“1”。Page 4中指令代码执行完成后,程序执行完成。
在嵌入式系统中,应用程序的指令代码具有很好的空间局部性,因此本发明对程序的执行性能影响很小。
专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (7)
1.一种指令高速缓冲存储器,包括:
标志缓冲器,其每一行用于存储一个指令地址标志位;
多路存储单元,每一路存储单元对应所述标志缓冲器的每一行,每一路存储单元的每一行用于存储一个指令块及其对应的一个状态位;以及
控制单元,用于将内核地址中的标志位与所述指令地址标志位相比较,按照内核地址中的索引位查询所述状态位,并且根据比较结果和查询结果对所述指令块的读取进行控制。
2.根据权利要求1所述的指令高速缓冲存储器,其中,所述比较结果是内核地址中的标志位与所述标志缓冲器中一个指令地址标志位相同,所述查询结果是所述状态位为有效,所述控制单元用于:
根据所述索引位从所述多路存储单元中读取所述指令块。
3.根据权利要求1所述的指令高速缓冲存储器,其中,所述比较结果是内核地址中的标志位与所述标志缓冲器中一个指令地址标志位相同,所述查询结果是所述状态位为无效,所述控制单元用于:
根据所述内核地址从主存中读取指令块;以及
根据所述索引位将读取的指令块写入所述多路存储单元中,并且将写入的指令块对应的状态位设置为有效。
4.根据权利要求1所述的指令高速缓冲存储器,其中,所述比较结果是内核地址中的标志位与所述标志缓冲器中所有的指令地址标志位都不相同,所述控制单元用于:
将所述内核地址中的标志位存入所述标志缓冲器中;
根据所述内核地址从主存中读取指令块;以及
根据所述索引位将读取的指令块写入所述多路存储单元中,并且将写入的指令块对应的状态位设置为有效。
5.根据权利要求4所述的指令高速缓冲存储器,其中,将所述内核地址中的标志位存入所述标志缓冲器中的步骤包括:
用所述内核地址中的标志位替换所述标志缓冲器中一行的指令地址标志位,并且将被替换行对应的一路存储单元中的状态位全部设置为无效。
6.根据权利要求1所述的指令高速缓冲存储器,其中,所述标志缓冲器采用先入先出的写入方式。
7.根据权利要求1所述的指令高速缓冲存储器,其中,所述标志缓冲器采用全相联方式,内核地址中的标志位同时与所述标志缓冲器中每一行的指令地址标志位进行比较。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210476876.4A CN103019959B (zh) | 2012-11-21 | 2012-11-21 | 一种指令高速缓冲存储器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210476876.4A CN103019959B (zh) | 2012-11-21 | 2012-11-21 | 一种指令高速缓冲存储器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103019959A true CN103019959A (zh) | 2013-04-03 |
CN103019959B CN103019959B (zh) | 2016-05-04 |
Family
ID=47968584
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210476876.4A Expired - Fee Related CN103019959B (zh) | 2012-11-21 | 2012-11-21 | 一种指令高速缓冲存储器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103019959B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104516829A (zh) * | 2013-09-26 | 2015-04-15 | 晶心科技股份有限公司 | 微处理器及使用指令循环高速缓存的方法 |
CN104765698A (zh) * | 2015-03-17 | 2015-07-08 | 中国科学院声学研究所 | 一种高速缓冲存储器及路预测方法 |
CN105843360A (zh) * | 2016-03-23 | 2016-08-10 | 中国电子科技集团公司第三十八研究所 | 一种降低指令高速缓冲存储器功耗的装置及方法 |
CN105868126A (zh) * | 2016-03-23 | 2016-08-17 | 中国电子科技集团公司第三十八研究所 | 一种提高指令高速缓冲存储器命中率的装置及方法 |
CN113138657A (zh) * | 2020-01-17 | 2021-07-20 | 炬芯科技股份有限公司 | 一种降低cache访问功耗的方法和电路 |
CN117312192A (zh) * | 2023-11-29 | 2023-12-29 | 成都北中网芯科技有限公司 | 一种Cache存储系统及访问处理方法 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107291630B (zh) * | 2016-03-30 | 2020-08-25 | 华为技术有限公司 | 一种高速缓冲存储器处理方法及装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080147979A1 (en) * | 2006-12-15 | 2008-06-19 | Microchip Technology Incorporated | Configurable cache for a microprocessor |
US20080147990A1 (en) * | 2006-12-15 | 2008-06-19 | Microchip Technology Incorporated | Configurable Cache for a Microprocessor |
CN101533371A (zh) * | 2008-03-12 | 2009-09-16 | Arm有限公司 | 使用微标签的高速缓存存取 |
CN101571835A (zh) * | 2009-03-26 | 2009-11-04 | 浙江大学 | 基于程序的需求来改变Cache组相联度的实现方法 |
CN102016810A (zh) * | 2008-04-22 | 2011-04-13 | Nxp股份有限公司 | 具有允许写入未预先加载的高速缓存行的高速缓存电路的多处理电路 |
CN102341794A (zh) * | 2009-03-03 | 2012-02-01 | 高通股份有限公司 | 可配置高速缓冲存储器及其配置方法 |
CN102646071A (zh) * | 2012-02-17 | 2012-08-22 | 中国科学院微电子研究所 | 单周期执行高速缓存写命中操作的装置及方法 |
-
2012
- 2012-11-21 CN CN201210476876.4A patent/CN103019959B/zh not_active Expired - Fee Related
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080147979A1 (en) * | 2006-12-15 | 2008-06-19 | Microchip Technology Incorporated | Configurable cache for a microprocessor |
US20080147990A1 (en) * | 2006-12-15 | 2008-06-19 | Microchip Technology Incorporated | Configurable Cache for a Microprocessor |
CN101533371A (zh) * | 2008-03-12 | 2009-09-16 | Arm有限公司 | 使用微标签的高速缓存存取 |
CN102016810A (zh) * | 2008-04-22 | 2011-04-13 | Nxp股份有限公司 | 具有允许写入未预先加载的高速缓存行的高速缓存电路的多处理电路 |
CN102341794A (zh) * | 2009-03-03 | 2012-02-01 | 高通股份有限公司 | 可配置高速缓冲存储器及其配置方法 |
CN101571835A (zh) * | 2009-03-26 | 2009-11-04 | 浙江大学 | 基于程序的需求来改变Cache组相联度的实现方法 |
CN102646071A (zh) * | 2012-02-17 | 2012-08-22 | 中国科学院微电子研究所 | 单周期执行高速缓存写命中操作的装置及方法 |
Non-Patent Citations (1)
Title |
---|
张宇弘 等: "《标志访问和组选择历史相结合的低功耗指令cache》", 《电子学报》 * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104516829A (zh) * | 2013-09-26 | 2015-04-15 | 晶心科技股份有限公司 | 微处理器及使用指令循环高速缓存的方法 |
CN104516829B (zh) * | 2013-09-26 | 2017-07-21 | 晶心科技股份有限公司 | 微处理器及使用指令循环高速缓存的方法 |
CN104765698A (zh) * | 2015-03-17 | 2015-07-08 | 中国科学院声学研究所 | 一种高速缓冲存储器及路预测方法 |
CN104765698B (zh) * | 2015-03-17 | 2018-02-13 | 中国科学院声学研究所 | 一种高速缓冲存储器及路预测方法 |
CN105843360A (zh) * | 2016-03-23 | 2016-08-10 | 中国电子科技集团公司第三十八研究所 | 一种降低指令高速缓冲存储器功耗的装置及方法 |
CN105868126A (zh) * | 2016-03-23 | 2016-08-17 | 中国电子科技集团公司第三十八研究所 | 一种提高指令高速缓冲存储器命中率的装置及方法 |
CN105843360B (zh) * | 2016-03-23 | 2018-06-12 | 中国电子科技集团公司第三十八研究所 | 一种降低指令高速缓冲存储器功耗的装置及方法 |
CN105868126B (zh) * | 2016-03-23 | 2018-09-18 | 中国电子科技集团公司第三十八研究所 | 一种提高指令高速缓冲存储器命中率的装置及方法 |
CN113138657A (zh) * | 2020-01-17 | 2021-07-20 | 炬芯科技股份有限公司 | 一种降低cache访问功耗的方法和电路 |
CN117312192A (zh) * | 2023-11-29 | 2023-12-29 | 成都北中网芯科技有限公司 | 一种Cache存储系统及访问处理方法 |
CN117312192B (zh) * | 2023-11-29 | 2024-03-29 | 成都北中网芯科技有限公司 | 一种Cache存储系统及访问处理方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103019959B (zh) | 2016-05-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103425600B (zh) | 一种固态盘闪存转换层中的地址映射方法 | |
CN103019959A (zh) | 一种指令高速缓冲存储器 | |
KR101713051B1 (ko) | 하이브리드 메모리 시스템, 및 그 관리 방법 | |
CN102768645B (zh) | 混合缓存的固态硬盘预取方法和固态硬盘ssd | |
CN102981963B (zh) | 一种固态盘的闪存转换层的实现方法 | |
CN102662868B (zh) | 用于处理器的动态组相联高速缓存装置及其访问方法 | |
CN105243025B (zh) | 一种映射表的形成及加载方法、电子设备 | |
US6427188B1 (en) | Method and system for early tag accesses for lower-level caches in parallel with first-level cache | |
CN105095116A (zh) | 缓存替换的方法、缓存控制器和处理器 | |
TWI382426B (zh) | 預測快取記憶體之存取位置的方法及系統 | |
CN105786717A (zh) | 软硬件协同管理的dram-nvm层次化异构内存访问方法及系统 | |
KR20170026114A (ko) | 트랜잭션 기반 하이브리드 메모리 모듈 | |
CN103597455A (zh) | 用于大型数据缓存的有效标签存储 | |
CN104067246A (zh) | 通过物理地址进行的非分配存储器存取 | |
CN102253901B (zh) | 一种基于相变内存的读写区分数据存储替换方法 | |
WO2011049051A1 (ja) | キャッシュメモリおよびその制御方法 | |
Quan et al. | Prediction table based management policy for STT-RAM and SRAM hybrid cache | |
CN103198021B (zh) | 一种提高固态硬盘数据传输效率的方法 | |
Xiao et al. | P3Stor: A parallel, durable flash-based SSD for enterprise-scale storage systems | |
Kim et al. | Energy-efficient exclusive last-level hybrid caches consisting of SRAM and STT-RAM | |
Shi et al. | Cooperating write buffer cache and virtual memory management for flash memory based systems | |
CN103257850A (zh) | 一种基于标志位访问踪迹的指令高速缓冲存储器 | |
CN112148639B (zh) | 一种高效小容量高速缓冲存储器替换方法及系统 | |
CN102360339A (zh) | 一种提高tlb利用效率的方法 | |
Choi et al. | A dynamic adaptive converter and management for PRAM-based main memory |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20160504 Termination date: 20201121 |
|
CF01 | Termination of patent right due to non-payment of annual fee |