CN102541761B - 应用于嵌入式芯片的只读高速缓冲存储器 - Google Patents

应用于嵌入式芯片的只读高速缓冲存储器 Download PDF

Info

Publication number
CN102541761B
CN102541761B CN201210014126.5A CN201210014126A CN102541761B CN 102541761 B CN102541761 B CN 102541761B CN 201210014126 A CN201210014126 A CN 201210014126A CN 102541761 B CN102541761 B CN 102541761B
Authority
CN
China
Prior art keywords
cpu
data
label
address
state
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
Application number
CN201210014126.5A
Other languages
English (en)
Other versions
CN102541761A (zh
Inventor
郑茳
肖佐楠
匡启和
林雄鑫
吴凯祺
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
CCore Technology Suzhou Co Ltd
Original Assignee
CCore Technology Suzhou Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by CCore Technology Suzhou Co Ltd filed Critical CCore Technology Suzhou Co Ltd
Priority to CN201210014126.5A priority Critical patent/CN102541761B/zh
Publication of CN102541761A publication Critical patent/CN102541761A/zh
Application granted granted Critical
Publication of CN102541761B publication Critical patent/CN102541761B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

一种应用于嵌入式芯片的只读高速缓冲存储器,其创新在于:主要由标签数据阵列结构、控制逻辑、地址数据传输门这三个部分组成。本发明涉及一种只读高速缓冲存储器的设计方案,该方案以组相联地址映射方式进行资源配置,在片上处理器和只需要进行读操作缓存的外存之间提供了接口,并采用了改良的轮询算法进行标签和数据替换管理。该方案在保证高速缓冲存储器性能的同时,因地制宜,量体裁衣,有效优化了模块结构,减小了模块面积,降低了模块功耗,提高了高速缓冲存储空间的利用率。

Description

应用于嵌入式芯片的只读高速缓冲存储器
技术领域
本发明涉及高速缓冲存储器,特别涉及一种应用于嵌入式芯片的只读高速缓冲存储器,属于高速存储管理技术领域。所谓嵌入式芯片是指嵌入式系统中微处理器所在的芯片。
背景技术
随着嵌入式芯片设计水平和制作工艺的不断进步,片上处理器的处理速度也不断提升。然而,外部存储器由于本身结构和操作机制等原因,其响应速度远远低于处理器的速度。这种速度上的失衡正日益成为制约嵌入式芯片整体处理速度的瓶颈所在。为了应对这一问题,作为响应速度与处理器相当的高速缓冲存储器(CACHE)也逐渐集成到了嵌入式芯片上。这一技术一方面成了处理器与外部存储器之间的杠杆,显著提升了芯片的性能,但另一方面,高速缓冲存储器(CACHE)本身的资源有限,在带来了高速响应速度的同时也带来了复杂的结构和较大的功耗。这与嵌入式芯片的“小面积、低功耗”的要求是相违背的,这样就需要在用户需求的基础上优化结构和算法,设计适合嵌入式芯片的高速缓冲存储器。
在嵌入式芯片的某些应用中,往往需要对一些指令存储器(用来存储指令的存储器)和外部只读存储器进行读取指令或数据的操作。如果采用传统的读写操作均可缓存的高速缓冲存储器(CACHE),其冗余的写操作缓存控制会大大增加高速缓冲存储器(CACHE)的复杂度,这样不仅增加了芯片的面积和功耗,而且对用户的配置也会带来诸多不便。因此需要一种简化写操作缓存的只读高速缓冲存储器,在满足嵌入式芯片小巧、节能等要求的同时,为用户的使用带来方便。
发明内容
鉴于上述技术现状,本发明提出一种应用于嵌入式芯片的只读高速缓冲存储器,其目的是要通过简化高速缓冲存储器结构以及优化高速缓冲存储器算法等手段,来设计一种新的适用于嵌入式芯片的只读高速缓冲存储器,解决传统技术应用于嵌入式芯片所存在的一些问题。
为达到上述目的,本发明采用的技术方案是:一种应用于嵌入式芯片的只读高速缓冲存储器,其创新在于:由标签数据阵列结构、控制逻辑模块、地址数据传输门这三个部分组成;
所述标签数据阵列结构是指在SRAM存储体上定义的用于只读缓冲的标签数据阵列结构,该标签数据阵列结构由至少两路标签数据阵列组成,每路标签数据阵列由若干组标签数据组成,每组标签数据由标签和数据块组成,所有标签构成标签阵列,所有数据块构成数据阵列,数据阵列中的数据块用于存放来自外存的数据信息,每个数据块对应标签阵列中的一个标签,标签用于标识对应数据块中存放数据信息的属性,标签中设置有地址段和状态位,地址段用于存放缓存目标的高位地址,状态位用于记载有效或无效两种状态,其中,有效或无效分别表示该标签所对应的数据有用或无用,外存与标签之间的地址映射方式为组相联地址映射,即标签的低位物理地址映射外存的低位地址,而标签中地址段存放的高位地址映射外存的高位地址;
所述控制逻辑模块由状态机构成,当只读高速缓冲存储器功能使能时,状态机根据CPU读操作或CPU写操作进行状态切换并执行相应操作,从而完成整体逻辑控制;所述状态机有四个状态,它们分别是空闲状态、判定状态、外存状态和反馈状态,其中:
空闲状态,表示状态机的起始状态或者状态机在完成每次CPU读操作或CPU写操作后的状态,在空闲状态时,状态机处于等待状态不进行任何操作,但当状态机接收到CPU读操作时从空闲状态切换到判定状态,当状态机接收到CPU写操作时从空闲状态切换到外存状态;
判定状态,表示状态机判定CPU读操作是否命中的状态,在判定状态时,CPU读操作的目标地址将与标签阵列中的标签进行比对,当所述目标地址中的低位地址与标签阵列中的某个标签的低位物理地址匹配,同时目标地址中的高位地址也与该标签中保存的缓存目标的高位地址匹配时,判定为命中,否则判定为未命中;如果CPU读操作被判定为命中,则状态机从判定状态切换到反馈状态,如果CPU读操作被判定为未命中,则状态机从判定状态切换到外存状态;
外存状态,表示状态机判定CPU读操作未命中或者发生CPU写操作时,直接对外存进行操作的状态;在外存状态时,如果输入的条件是CPU读操作被判定为未命中,则CPU将直接对外存进行读操作;如果输入的条件是发生CPU写操作,则CPU将直接对外存进行写操作;在外存状态执行的操作完成后,状态机将切换到反馈状态;
反馈状态,表示状态机判定CPU读操作命中,或者CPU从外存获取数据,或者CPU对外存写操作后,向CPU反馈结果的状态;在反馈状态时,如果输入的条件是CPU读操作被判定为命中,则状态机将被命中标签所对应数据阵列中的数据反馈给CPU;如果输入的条件是CPU从外存获取数据,则状态机在向CPU反馈此数据的同时,将按照CPU从外存获取数据执行相应的标签和数据的替换操作;如果输入的条件是CPU对外存写操作,则状态机将会向CPU反馈由外存返回的表示写操作是否成功的信号;在反馈状态执行的操作完成后,状态机将切换到空闲状态;
所述地址数据传输门由地址传输门和数据传输门组成,地址传输门和数据传输门根据控制逻辑模块中状态机的不同状态进行下列传输动作:
(1)当状态机处于空闲状态时,地址传输门和数据传输门均关闭;
(2)当状态机处于判定状态时,数据传输门关闭,而地址传输门将提供标签与CPU读操作的目标地址进行比对;
(3)当状态机处于外存状态时,如果输入的条件是CPU读操作被判定为未命中,CPU将通过地址传输门和数据传输门直接对外存进行读操作;如果输入的条件是发生CPU写操作,CPU将通过地址传输门和数据传输门传输地址和数据给外存进行写操作;
(4)当状态机处于反馈状态时,如果输入的条件是CPU读操作被判定为命中,地址传输门关闭,数据传输门将被命中标签所对应数据阵列中的数据反馈给CPU;如果输入的条件是CPU从外存获取数据,地址传输门和数据传输门将按照CPU从外存获取数据执行相应的标签和数据的替换操作;如果输入的条件是CPU对外存写操作,地址传输门关闭,数据传输门将会向CPU反馈由外存返回的表示写操作是否成功的信号;
所述替换操作是:当需要进行标签和数据的替换操作时,先比较各路标签数据阵列中对应的标签状态位的状态是否一致,如果比较结果一致则采用现有轮询法来替换标签和数据;如果比较结果不一致则优先替换状态位为无效的一路中的标签和数据。
上述技术方案的有关内容解释如下:
1.上述方案中,所述“嵌入式芯片”是指嵌入式系统中微处理器所在的芯片。所述“外存”是指CPU以外的存储设备或存储器,包括RAM、ROM、FLASH等,但高速缓冲存储除外。
2.上述方案中,所述“只读高速缓冲存储器功能使能”是指当只读高速缓冲存储器使能时才对CPU发起的读操作起作用,当只读高速缓冲存储器禁用时,CPU发起的读操作将直接从外存中读取数据。
3.上述方案中,所述“组相联地址映射”是地址映射法的一种,组相联地址映射是直接映射法和全相联映射法的结合。在节省了高速缓冲存储器(CACHE)资源开销的同时,提高了高速缓冲存储器(CACHE)空间的利用率,并保证了命中率。
  由于上述技术方案运用,本发明与现有技术相比具有下列优点和效果:
1.本发明提供了一种只读高速缓冲存储器(RCACHE)的设计方案,在针对用户需求的前提下简化了传统读写高速缓冲存储器模块结构,优化了替换算法,加强了专用性,显著提高了高速缓冲存储器的性能和实用性,解决了传统技术中存在的一些问题。
2.本发明提供了一种对应于指令存储器和外部只读存储器等片上应用的只读高速缓冲存储结构,在保证命中率的同时去粗取精,适应了片上结构的需求,减小了片上结构模块面积,降低了模块功耗,也简化了用户的操作。
3.本发明提供了一种改良的轮询替换方法,在替换效率和资源开销中取得了平衡,有效地提高了本发明只读高速缓冲存储器空间的利用率。
附图说明
附图1为本发明只读高速缓冲存储器结构原理图;
附图2为本发明标签阵列和数据阵列示意图;
附图3为本发明标签和数据块示意图;
附图4为本发明状态机原理图;
附图5为本发明标签替换原理图;
附图6为现有轮询法替换流程图;
附图7为本发明改良的轮询法替换流程图。
具体实施方式
下面结合附图及实施例对本发明作进一步描述:
实施例:一种应用于嵌入式芯片的只读高速缓冲存储器
如图1所示,该只读高速缓冲存储器由标签数据阵列结构、控制逻辑模块、地址数据传输门三个部分组成。下面对这三个部分分别进行描述:
1.标签数据阵列结构
如图2和图3所示,标签数据阵列结构是指在SRAM存储体上定义的用于只读缓冲的标签数据阵列结构。该标签数据阵列结构由至少两路标签数据阵列组成,每路标签数据阵列由若干组标签数据组成,每组标签数据由标签和数据块组成。图2仅画出了某一路标签数据阵列的示意图(其它路与该路的示意图基本相同),其中,组0、组1和组511表示组,组0由标签0和数据块组成,数据块由数据0、数据1、数据2和数据3构成。
从图2可以看出,所有标签构成标签阵列,所有数据块构成数据阵列,数据阵列中的数据块用于存放来自外存的数据信息,每个数据块对应标签阵列中的一个标签,标签用于标识对应数据块中存放数据信息的属性。标签中设置有地址段和状态位,如图3所示,地址段用于存放缓存目标的高位地址,状态位用于记载有效或无效两种状态,其中,有效或无效分别表示该标签所对应的数据有用或无用,有用表示标签所对应的数据与外存一致,可以使用,反之为无用。外存与标签之间的地址映射方式为组相联地址映射,即标签的低位物理地址映射外存的低位地址,而标签中地址段存放的高位地址映射外存的高位地址。
2.控制逻辑模块
如图4所示,控制逻辑模块由状态机构成,当只读高速缓冲存储器功能使能时,状态机根据CPU读操作或CPU写操作进行状态切换并执行相应操作,从而完成整体逻辑控制。所述状态机有四个状态,它们分别是空闲状态、判定状态、外存状态和反馈状态,其中:
(1)空闲状态,表示状态机的起始状态或者状态机在完成每次CPU读操作或CPU写操作后的状态,在空闲状态时,状态机处于等待状态不进行任何操作,但当状态机接收到CPU读操作时从空闲状态切换到判定状态,当状态机接收到CPU写操作时从空闲状态切换到外存状态。
(2)判定状态,表示状态机判定CPU读操作是否命中的状态,在判定状态时,CPU读操作的目标地址将与标签阵列中的标签进行比对,当所述目标地址中的低位地址与标签阵列中的某个标签的低位物理地址匹配,同时目标地址中的高位地址也与该标签中保存的缓存目标的高位地址匹配时,判定为命中,否则判定为未命中;如果CPU读操作被判定为命中,则状态机从判定状态切换到反馈状态,如果CPU读操作被判定为未命中,则状态机从判定状态切换到外存状态。
(3)外存状态,表示状态机判定CPU读操作未命中或者发生CPU写操作时,直接对外存进行操作的状态;在外存状态时,如果输入的条件是CPU读操作被判定为未命中,则CPU将直接对外存进行读操作;如果输入的条件是发生CPU写操作,则CPU将直接对外存进行写操作;在外存状态执行的操作完成后,状态机将切换到反馈状态。
(4)反馈状态,表示状态机判定CPU读操作命中,或者CPU从外存获取数据,或者CPU对外存写操作后,向CPU反馈结果的状态;在反馈状态时,如果输入的条件是CPU读操作被判定为命中,则状态机将被命中标签所对应数据阵列中的数据反馈给CPU;如果输入的条件是CPU从外存获取数据,则状态机在向CPU反馈此数据的同时,将按照CPU从外存获取数据执行相应的标签和数据的替换操作;如果输入的条件是CPU对外存写操作,则状态机将会向CPU反馈由外存返回的表示写操作是否成功的信号;在反馈状态执行的操作完成后,状态机将切换到空闲状态。
3.地址数据传输门
如图1所示,地址数据传输门由地址传输门和数据传输门组成,地址传输门和数据传输门根据控制逻辑模块中状态机的不同状态进行下列传输动作:
(1)当状态机处于空闲状态时,地址传输门和数据传输门均关闭;
(2)当状态机处于判定状态时,数据传输门关闭,而地址传输门将提供标签与CPU读操作的目标地址进行比对;
(3)当状态机处于外存状态时,如果输入的条件是CPU读操作被判定为未命中,CPU将通过地址传输门和数据传输门直接对外存进行读操作;如果输入的条件是发生CPU写操作,CPU将通过地址传输门和数据传输门传输地址和数据给外存进行写操作;
(4)当状态机处于反馈状态时,如果输入的条件是CPU读操作被判定为命中,地址传输门关闭,数据传输门将被命中标签所对应数据阵列中的数据反馈给CPU;如果输入的条件是CPU从外存获取数据,地址传输门和数据传输门将按照CPU从外存获取数据执行相应的标签和数据的替换操作;如果输入的条件是CPU对外存写操作,地址传输门关闭,数据传输门将会向CPU反馈由外存返回的表示写操作是否成功的信号。
本实施例的有关内容说明如下:
1.标签数据阵列的路数可以扩展。本实施例中,标签数据阵列结构由至少两路标签数据阵列组成,换句话说标签数据阵列由两路或更多路数组成。路与路之间是并列关系,比如两路标签数据阵列第0路标签2与第1路标签2的低位物理地址是相同的。这两路中的两个标签2与外存映射地址是二对多关系。
2.标签地址与外存地址的关系。标签本身的低位物理地址与外存的低位地址对应,由于只读高速缓冲存储器(RCACHE)地址映射的是比它范围大的地址空间,因此一路中的一个标签的低位物理地址会对应多个外存的地址。对于一次可缓冲的CPU读操作,控制逻辑模块会依据CPU所访问的低位地址寻址到对应的标签,然后匹配访问的高位地址与该标签中保存的缓存目标的高位地址,若成功,则该缓存访问“命中”;否则为未命中。
3.保留了CPU写操作通道。如图1所示,由控制信号使能本发明只读高速缓冲存储器(RCACHE),CPU发起读操作,控制逻辑模块判定其地址是否命中标签阵列中的标签,若命中,则由数据阵列直接向CPU提供对应命中标签的数据;若未命中,则向外存请求数据,并替换标签阵列和数据阵列中的对应项目。此结构与传统的读写均可缓冲存储器的不同点在于:1、控制信号的简化,由于根据应用的需求删除了写操作的缓存功能,用户只需通过控制信号完成只读高速缓冲存储器(RCACHE)的使能即可使用本发明;2、依然保留了写操作通道,CPU可以直接向外存写入数据,这也是为了保证模块的扩展性。
4.关于本发明标签和数据替换方法的说明
本发明标签和数据替换指的是:当CPU读操作被判定为未命中时,CPU将直接对外存进行读操作的同时,将按照CPU从外存获取数据执行相应的标签和数据的替换操作,从而更新只读高速缓冲存储器(RCACHE)中相应的标签和数据。传统的替换方法有轮询法(round robin)和最近最少使用法(LRU)。其中轮询法方法简单,但存在无法考虑单个存储组特性的缺点;而最近最少使用法虽然充分考虑了单个存储组的特性,但需要最近最少使用判别堆栈的额外开销。本发明适用于所有现有替换方法,但为了提高缓冲的命中率,在本发明实施例中采用了改良的轮询法进行替换,即当需要进行标签和数据的替换操作时,先比较各路标签数据阵列中对应的标签状态位的状态是否一致,如果比较结果一致则采用现有轮询法来替换标签和数据;如果比较结果不一致则优先替换状态位为无效的一路中的标签和数据。这种替换方法在结构简洁、可控的同时又保证了替换效率。
下面就现有轮询法与本实施例改良的轮询法进行比较:
图5本发明标签替换原理图,从图5中可以看出,有第0路标签2和第1路标签2,替换指针指向第0路中的标签2,当一次缓存访问的低位地址与标签2所在的低位物理地址匹配,但是缓存访问的高位地址与标签2中存储的缓冲目标的高位地址02和12均不相同时,则此次缓存访问未命中,需要进行标签替换。
如图6所示,若使用现有轮询替换方法,由于在这种算法中,每一个标签被替换的几率是均等的,因此将不考虑标签本身的状态,直接替换上次未被替换的另一路中的标签,则在这一问题中,另一路中的标签2将会被替换。这种算法由于无法判别单个可能被替换的标签的状态有效性,因此可能出现当第0路中的标签2有效而第1路中的标签2无效时,依然是第0路被替换的情况。这样就会导致替换效率的低下,甚至可能影响命中率。
如图7所示,针对传统的轮询替换方法无法考虑各标签状态的缺点,本发明提出一种改良的轮询替换方法。在改良的轮询替换方法中,当发生缓存访问未命中时,先判断两路标签的状态是否一致,其中一致是指第0路的状态02与第1路中的状态12是一致的,即两者均为有效或者无效。若状态判定为一致,说明两路中的标签地位是一样的,那么它们被替换的几率也应该是均等的,则按照传统的轮询法处理,即替换另一路的标签;若状态判定为不一致,说明两路中必有一路状态有效,则被替换的应该是状态无效的那一路。此方法充分考虑到了每一路标签的状态,合理利用了高速缓冲存储器(CACHE)内资源,提高了命中率。总之“命中率”作为高速缓冲存储器的一项重要的性能指标,是整个CACHE设计的关键,其影响因素主要有:CACHE容量,地址映射方法,替换算法和程序特性。其中,地址映射方法和替换算法的选择往往成为了设计的关键。
上述实施例只为说明本发明的技术构思及特点,其目的在于让熟悉此项技术的人士能够了解本发明的内容并据以实施,并不能以此限制本发明的保护范围。凡根据本发明精神实质所作的等效变化或修饰,都应涵盖在本发明的保护范围之内。

Claims (1)

1.一种应用于嵌入式芯片的只读高速缓冲存储器,其特征在于:由标签数据阵列结构、控制逻辑模块、地址数据传输门这三个部分组成;
所述标签数据阵列结构是指在SRAM存储体上定义的用于只读缓冲的标签数据阵列结构,该标签数据阵列结构由至少两路标签数据阵列组成,每路标签数据阵列由若干组标签数据组成,每组标签数据由标签和数据块组成,所有标签构成标签阵列,所有数据块构成数据阵列,数据阵列中的数据块用于存放来自外存的数据信息,每个数据块对应标签阵列中的一个标签,标签用于标识对应数据块中存放数据信息的属性,标签中设置有地址段和状态位,地址段用于存放缓存目标的高位地址,状态位用于记载有效或无效两种状态,其中,有效或无效分别表示该标签所对应的数据有用或无用,外存与标签之间的地址映射方式为组相联地址映射,即标签的低位物理地址映射外存的低位地址,而标签中地址段存放的高位地址映射外存的高位地址;
所述控制逻辑模块由状态机构成,当只读高速缓冲存储器功能使能时,状态机根据CPU读操作或CPU写操作进行状态切换并执行相应操作,从而完成整体逻辑控制;所述状态机有四个状态,它们分别是空闲状态、判定状态、外存状态和反馈状态,其中:
空闲状态,表示状态机的起始状态或者状态机在完成每次CPU读操作或CPU写操作后的状态,在空闲状态时,状态机处于等待状态不进行任何操作,但当状态机接收到CPU读操作时从空闲状态切换到判定状态,当状态机接收到CPU写操作时从空闲状态切换到外存状态;
判定状态,表示状态机判定CPU读操作是否命中的状态,在判定状态时,CPU读操作的目标地址将与标签阵列中的标签进行比对,当所述目标地址中的低位地址与标签阵列中的某个标签的低位物理地址匹配,同时目标地址中的高位地址也与该标签中保存的缓存目标的高位地址匹配时,判定为命中,否则判定为未命中;如果CPU读操作被判定为命中,则状态机从判定状态切换到反馈状态,如果CPU读操作被判定为未命中,则状态机从判定状态切换到外存状态;
外存状态,表示状态机判定CPU读操作未命中或者发生CPU写操作时,直接对外存进行操作的状态;在外存状态时,如果输入的条件是CPU读操作被判定为未命中,则CPU将直接对外存进行读操作;如果输入的条件是发生CPU写操作,则CPU将直接对外存进行写操作;在外存状态执行的操作完成后,状态机将切换到反馈状态;
反馈状态,表示状态机判定CPU读操作命中,或者CPU从外存获取数据,或者CPU对外存写操作后,向CPU反馈结果的状态;在反馈状态时,如果输入的条件是CPU读操作被判定为命中,则状态机将被命中标签所对应数据阵列中的数据反馈给CPU;如果输入的条件是CPU从外存获取数据,则状态机在向CPU反馈此数据的同时,将按照CPU从外存获取数据执行相应的标签和数据的替换操作;如果输入的条件是CPU对外存写操作,则状态机将会向CPU反馈由外存返回的表示写操作是否成功的信号;在反馈状态执行的操作完成后,状态机将切换到空闲状态;
所述地址数据传输门由地址传输门和数据传输门组成,地址传输门和数据传输门根据控制逻辑模块中状态机的不同状态进行下列传输动作:
(1)当状态机处于空闲状态时,地址传输门和数据传输门均关闭;
(2)当状态机处于判定状态时,数据传输门关闭,而地址传输门将提供标签与CPU读操作的目标地址进行比对;
(3)当状态机处于外存状态时,如果输入的条件是CPU读操作被判定为未命中,CPU将通过地址传输门和数据传输门直接对外存进行读操作;如果输入的条件是发生CPU写操作,CPU将通过地址传输门和数据传输门传输地址和数据给外存进行写操作;
(4)当状态机处于反馈状态时,如果输入的条件是CPU读操作被判定为命中,地址传输门关闭,数据传输门将被命中标签所对应数据阵列中的数据反馈给CPU;如果输入的条件是CPU从外存获取数据,地址传输门和数据传输门将按照CPU从外存获取数据执行相应的标签和数据的替换操作;如果输入的条件是CPU对外存写操作,地址传输门关闭,数据传输门将会向CPU反馈由外存返回的表示写操作是否成功的信号;
所述替换操作是:当需要进行标签和数据的替换操作时,先比较各路标签数据阵列中对应的标签状态位的状态是否一致,如果比较结果一致则采用现有轮询法来替换标签和数据;如果比较结果不一致则优先替换状态位为无效的一路中的标签和数据。
CN201210014126.5A 2012-01-17 2012-01-17 应用于嵌入式芯片的只读高速缓冲存储器 Active CN102541761B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210014126.5A CN102541761B (zh) 2012-01-17 2012-01-17 应用于嵌入式芯片的只读高速缓冲存储器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210014126.5A CN102541761B (zh) 2012-01-17 2012-01-17 应用于嵌入式芯片的只读高速缓冲存储器

Publications (2)

Publication Number Publication Date
CN102541761A CN102541761A (zh) 2012-07-04
CN102541761B true CN102541761B (zh) 2014-10-22

Family

ID=46348699

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210014126.5A Active CN102541761B (zh) 2012-01-17 2012-01-17 应用于嵌入式芯片的只读高速缓冲存储器

Country Status (1)

Country Link
CN (1) CN102541761B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9824419B2 (en) 2015-11-20 2017-11-21 International Business Machines Corporation Automatically enabling a read-only cache in a language in which two arrays in two different variables may alias each other

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103207844B (zh) * 2013-04-18 2017-06-06 上海云间半导体科技有限公司 缓存系统及缓存访问方法
CN104932990B (zh) * 2015-06-03 2018-05-11 华为技术有限公司 一种高速缓冲存储器中数据块的替换方法和装置
US10606599B2 (en) * 2016-12-09 2020-03-31 Advanced Micro Devices, Inc. Operation cache
US10565121B2 (en) * 2016-12-16 2020-02-18 Alibaba Group Holding Limited Method and apparatus for reducing read/write contention to a cache
CN110545580B (zh) 2018-05-28 2023-04-07 华为技术有限公司 一种资源配置的方法、装置及系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101667837A (zh) * 2009-08-21 2010-03-10 苏州国芯科技有限公司 一种基于理德-所罗门码的ecc控制器

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8266409B2 (en) * 2009-03-03 2012-09-11 Qualcomm Incorporated Configurable cache and method to configure same
US8352683B2 (en) * 2010-06-24 2013-01-08 Intel Corporation Method and system to reduce the power consumption of a memory device

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101667837A (zh) * 2009-08-21 2010-03-10 苏州国芯科技有限公司 一种基于理德-所罗门码的ecc控制器

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
唐朔飞.《计算机组成原理》.《计算机组成原理》.高等教育出版社,2008,(第二版),第109-123页. *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9824419B2 (en) 2015-11-20 2017-11-21 International Business Machines Corporation Automatically enabling a read-only cache in a language in which two arrays in two different variables may alias each other
US10163189B2 (en) 2015-11-20 2018-12-25 International Business Machines Corporation Automatically enabling a read-only cache in a language in which two arrays in two different variables may alias each other

Also Published As

Publication number Publication date
CN102541761A (zh) 2012-07-04

Similar Documents

Publication Publication Date Title
CN105095116B (zh) 缓存替换的方法、缓存控制器和处理器
CN102541761B (zh) 应用于嵌入式芯片的只读高速缓冲存储器
CN102216914B (zh) 螺旋高速缓存电源管理、自适应大小调整和接口操作
CN106547703B (zh) 一种基于块组结构的ftl优化方法
CN102866957B (zh) 面向多核多线程微处理器的虚拟活跃页缓冲方法及装置
CN102693187B (zh) 用以减少多级高速缓冲存储器层级中的掷出的设备和方法
CN103246542B (zh) 智能缓存及智能终端
CN112558889B (zh) 一种基于SEDRAM的堆叠式Cache系统、控制方法和Cache装置
CN100478918C (zh) 微处理器中分段高速缓存的设计方法及分段高速缓存
US6427188B1 (en) Method and system for early tag accesses for lower-level caches in parallel with first-level cache
US8954672B2 (en) System and method for cache organization in row-based memories
CN104834607A (zh) 一种提高分布式缓存的命中率并减少固态硬盘磨损的方法
CN103246613A (zh) 缓存装置及用于缓存装置的缓存数据获取方法
CN102708190A (zh) 一种CC-NUMA系统中结点控制芯片目录Cache的方法
TWI652576B (zh) Memory system and processor system
CN109815167A (zh) 用于高效虚拟标记的高速缓存实现的系统和方法
US20100030966A1 (en) Cache memory and cache memory control apparatus
CN106569960A (zh) 一种混合主存的末级缓存管理方法
CN102541510A (zh) 一种指令缓存系统及其取指方法
CN101515295B (zh) 片上硬件数据库的高速缓冲器支持实现方法
CN100520739C (zh) 一种快速虚实地址转换装置及其方法
CN111124297B (zh) 一种堆叠dram缓存的性能提升方法
CN107506139A (zh) 一种面向相变存储器的写请求优化装置
CN104572499B (zh) 一种数据高速缓存的访问装置
CN100428200C (zh) 一种片上指令cache的实现方法

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
CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: Room C2031, Suzhou Pioneer Park, 209 Zhuyuan Road, Suzhou High-tech Zone, Jiangsu Province

Patentee after: Suzhou Guoxin Technology Co., Ltd.

Address before: Room C2031, Suzhou Pioneer Park, 209 Zhuyuan Road, Suzhou High-tech Zone, Jiangsu Province

Patentee before: C*Core Technology (Suzhou) Co., Ltd.