CN100370440C - 处理器系统及其数据操作方法 - Google Patents

处理器系统及其数据操作方法 Download PDF

Info

Publication number
CN100370440C
CN100370440C CNB2005101208116A CN200510120811A CN100370440C CN 100370440 C CN100370440 C CN 100370440C CN B2005101208116 A CNB2005101208116 A CN B2005101208116A CN 200510120811 A CN200510120811 A CN 200510120811A CN 100370440 C CN100370440 C CN 100370440C
Authority
CN
China
Prior art keywords
buffer
processor
address
data
read operation
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.)
Expired - Fee Related
Application number
CNB2005101208116A
Other languages
English (en)
Other versions
CN1851673A (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CNB2005101208116A priority Critical patent/CN100370440C/zh
Publication of CN1851673A publication Critical patent/CN1851673A/zh
Application granted granted Critical
Publication of CN100370440C publication Critical patent/CN100370440C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明公开了一种处理器系统及其数据操作方法。本发明处理器系统的数据操作方法包括:在处理器读操作地址不可高速缓存时,或者在处理器读操作地址可高速缓存但读所述高速缓冲存储器未命中时,比较所述处理器读操作地址与写缓存器内的数据地址;写缓存器内有与所述读操作地址对应的数据地址时,处理器读取写缓存器内所述数据地址对应的最近一次写入的数据。本发明的处理器系统扩大了写缓存器的使用限制,在几乎不增加任何硬件代价的情况下增加了读缺失但写缓存器命中以及不可高速缓存但写缓存器命中两种操作,直接从写缓存器内的相应地址回读,减少了等待写缓存器清空以及读操作总线延迟的时间,提高了处理器的处理能力。

Description

处理器系统及其数据操作方法
技术领域
本发明涉及处理器技术,更具体地说,涉及一种处理器系统及其数据操作方法。
背景技术
在处理器与主存储器之间嵌入一个高速缓冲存储器(Cache),可以提高该处理器的处理能力,减少CPU对主存储器访问的等待时间。高速缓冲存储器与主存储器以块为单位进行数据交换。当CPU读取数据或者指令时,同时将读取到的数据或指令保存到一个高速缓冲存储器存储块中。根据程序的空间局部性和时间局部性,当CPU第二次需要读取相同或相近的数据时,可以从相应的高速缓冲存储器存储块中获得。因为高速缓冲存储器的速度远大于主存储器的速度,处理器系统整体性能就得到了很大的提高。
写缓存器(Write Buffer)由一些高速存储器构成,当CPU向主存储器执行写入操作时,先将数据写入到写缓存器中,由于写缓存器的访问速度很高,这种写入的速度也很高。然后写缓存器再在适当的时候以较低的速度将数据写入主存储器中相应的位置。
通常,使用高速缓冲存储器和写缓存器可以提高处理器的性能,但是由于高速缓冲存储器和写缓存器的使用可能会改变访问存储器的数量、类型和时间,因此这些技术的使用都必须遵从特定的限制条件。
普通的处理器中使用通用的高速缓冲存储器和写缓存结构,该结构符合通用的限制条件。Cache的使用限制条件为:
(1)读操作返回最后一次写入的内容,而且没有其他的副作用;
(2)写操作除了影响目标单元的内容外,没有其他副作用;
(3)对同一目标单元的两次连续读操作将得到相同的结果;
(4)对同一目标单元的两次连续写操作将把第二次写操作的值写入目标单元,第一次写操作无意义。
写缓存器的使用限制条件为:
(1)写操作延迟除了影响目标单元的内容外,没有其他副作用。
普通的处理器为了符合通用标准,保证在正常情况下使用安全、稳定,只将写缓存器作为数据写入主存储器的数据存放单元,虽然数据在写缓存器中保持有效,但是该数据没有被再次使用,这对系统的存储资源造成了浪费。
处理器在写缓存和读操作先读后写时会出现数据冲突。跟踪高速缓冲存储器的如下访问:处理器执行第一条指令,向可缓存的R2地址写入数据R1,该数据R1写入写缓存器内;处理器执行第二条指令,从R2地址读取数据,若Cache发生读缺失,CPU直接读取主存储器。为了保证处理器不被停止,该读操作优于写操作立即执行,这时该读操作将主存储器内以前的错误值R3读入,导致R1和R3数据不相同。
WR1,[R2];
RR3,[R2];
解决这个问题的通用方法是在发生读缺失时,将读操作地址与写缓存器中的数据地址进行比较。如果写缓存器内没有相关的地址,读操作优先进行;如果出现地址冲突(即写缓存器内有相关的数据地址),则读操作等待,直到写缓存器清空,这便造成了CPU处理性能的下降。
发明内容
本发明要解决的技术问题在于,针对上述现有技术的不足,提供一种处理器系统及其数据操作方法,通过扩大写缓存器的使用限制,采用读操作时对写缓存器内的相关地址回读的策略减少处理器的等待时间。
本发明解决其技术问题所采用的技术方案是:提供一种处理器系统的数据操作方法,包括:
a、在处理器读操作地址不可高速缓存时,比较所述处理器读操作地址与写缓存器内的数据地址;
b、写缓存器内有与所述读操作地址对应的数据地址时,处理器读取写缓存器内所述数据地址对应的最近一次写入的数据。
本发明所述的处理器系统的数据操作方法中,所述步骤a进一步包括:
a1、判断写缓存器是否为空;
a2、所述写缓存器不为空时,比较所述处理器读操作地址与写缓存器内的数据地址。
本发明解决其技术问题采用的另一技术方案是:提供一种处理器系统的数据操作方法,其特征在于,包括:
c、在处理器读操作地址可高速缓存但读所述高速缓冲存储器未命中时,比较所述处理器读操作地址与写缓存器内的数据地址;
d、所述写缓存器内有与所述读操作地址对应的数据地址时,处理器读取写缓存器内所述数据地址对应的最近一次写入的数据。
本发明还提供一种处理器系统,包括处理器以及位于处理器和主存储器之间的写缓存器、高速缓冲存储器,还包括控制逻辑模块,所述控制逻辑模块在处理器读操作地址不可高速缓存时比较所述写缓存器内是否有与所述处理器的读操作地址对应的数据地址,并输出比较结果信息;所述处理器接收所述控制逻辑模块的比较结果信息,当所述比较结果信息表示写缓存器内有与所述处理器读操作地址对应的数据地址时,所述处理器将写缓存器内所述数据地址对应的最后一次写入的数据读回。
本发明所述的处理器系统中,所述控制逻辑模块判断所述处理器的读操作地址是否可高速缓存,在处理器读操作地址可高速缓存时,进一步判断写缓存器是否为空,在所述写缓存器不为空时,比较所述处理器读操作地址与所述写缓存器内的数据地址。
本发明所述的处理器系统中,所述处理器接收所述控制逻辑模块的比较结果信息,当所述比较结果信息表示写缓存器内没有与所述处理器读操作地址对应的数据地址时,所述处理器读取主存储器内所述读操作地址对应的数据。
本发明所述的处理器系统中,还包括复用器,对所述处理器和写缓存器的总线传输请求进行优先级判定,在请求冲突时寄存优先级较低的操作。
本发明所述的处理器系统中,还包括封装器,用以桥接处理器总线和系统总线。
本发明还提供一种处理器系统,包括处理器以及位于处理器和主存储器之间的写缓存器、高速缓冲存储器,还包括控制逻辑模块,在处理器读操作地址可高速缓存但读所述高速缓冲存储器未命中时,比较所述写缓存器内是否有与所述处理器的读操作地址对应的数据地址,并输出比较结果信息;所述处理器接收所述控制逻辑模块的比较结果信息,当所述比较结果信息表示写缓存器内有与所述处理器读操作地址对应的数据地址时,所述处理器将写缓存器内所述数据地址对应的最后一次写入的数据读回。
本发明所述的处理器系统中,所述控制逻辑模块包括:
处理逻辑单元,对所述处理器读操作地址是否可高速缓存进行判断;
高速缓存控制逻辑单元,在所述处理器读操作地址可高速缓存时对所述高速缓冲存储器是否命中进行判断,所述高速缓冲存储器未命中时,执行所述处理器读操作地址与所述写缓存器内数据地址的比较。
实施本发明的处理器系统及其数据操作方法,具有以下有益效果:本发明的处理器系统扩大了写缓存器的使用限制,在几乎不增加任何硬件代价的情况下增加了读缺失但写缓存器命中以及不可高速缓存但写缓存器命中两种操作,直接从写缓存器内的相应地址回读,减少了等待写缓存器清空以及读操作总线延迟的时间,提高了处理器的处理能力;回读写缓存器的操作使得写缓存器部分实现了牺牲高速缓存的功能,这可以减少因有太多块映射到同一个地址而造成的一个块被放弃后又重新调用的冲突缺失,提高高速缓冲存储器的命中率。
附图说明
图1是本发明一个实施例的处理器系统的结构框图;
图2是本发明一个实施例中采用写回策略的处理器系统读操作流程图;
图3是本发明一个实施例中采用写通策略的处理器系统读操作流程图;
图4是采用本发明处理器系统数据操作方法的写缓存器中数据存取的示意图。
具体实施方式
以下将结合附图及实施例对本发明作进一步详细说明:
本发明处理器系统的数据操作方法,在处理器读操作地址不可高速缓存和/或读高速缓冲存储器未命中(即缺失)时,将所述读操作地址与写缓存器内的数据地址进行比较。如果写缓存器内没有相对应的数据地址,执行正常的处理器读操作,读取主存储器内对应的数据;如果写缓存器内有对应的数据地址,则处理器读取写缓存器中与该数据地址对应的最近一次写入的数据。
图1是本发明一个实施例的处理器系统的结构框图。如图1所示,该处理器系统包括有处理器101、处理逻辑单元(PU)102、高速缓存控制逻辑单元103、高速缓冲存储器104、写缓存器105、复用器(MUX)106和封装器(Wrapper)107。处理器101通过系统总线108对主存储器进行存取。处理器101可以是中央处理器(CPU)或者一般的微处理器、数字信号处理器等。高速缓冲存储器104位于处理器101与外部主存储器之间,存储处理器从主存储器中读出的可高速缓存的数据,为处理器提供数据的高速存取。写缓存器105位于处理器101与主存储器之间,主要存储处理器101的可缓存写数据,并在总线108空闲时再将数据写入主存储器内。处理逻辑单元102为组合逻辑,在处理器有效操作的一个周期内返回该操作地址是否可高速缓存、是否可缓存以及该操作地址是否被保护。高速缓存控制逻辑单元103用来处理所有处理器101的操作请求。高速缓存控制逻辑单元103执行高速缓冲存储器104是否命中的判断,并在读操作时判断写缓存器105内是否有与该读操作地址对应的数据地址,然后向处理器101返回相关的判断信息。处理逻辑单元102和高速缓存控制逻辑单元103可以单独存在,也可以合并为一个控制逻辑模块。读操作地址不可高速缓存和/或读高速缓冲存储器缺失时,如果写缓存器105内有对应该读操作地址的数据地址,则写缓存器105内相应地数据被直接读回给处理器101,以减少处理器101的等待周期。MUX 106对高速缓存控制逻辑单元103和写缓存器105的总线传输请求进行优先级判定,在数据请求冲突时寄存优先级比较低的操作。封装器107为处理器外嵌模块,用以桥接处理器总线和系统总线108。MUX 106和封装器107为现有技术,因而在此不作详细描述。
本发明采用写缓存器回读策略的处理器系统读操作流程如图2和图3所示。图2是高速缓冲存储器采用写回策略时的处理器系统读操作流程图。如图2所示,CPU发出读操作指令(步骤201)后,步骤202中,PU将进行操作地址判定,以确定CPU读操作地址是否可缓存、是否可高速缓存或者该地址是否被保护。如果该地址被保护,PU将返回错误信息(步骤203)。CPU读操作时,不管PU判定该操作地址是否可缓存,CPU都会忽略该判定结果,因为是否可缓存对于CPU读操作来说没有任何意义。
步骤204中,如果CPU读操作不可高速缓存,高速缓存控制逻辑将判断写缓存器是否为空(步骤205)。如果写缓存器为空,说明写缓存器内所有的写数据都已经写入主存储器,主存储器内的数据为最新状态,步骤208中,AHB总线执行读操作,从主存储器内读取该操作地址对应的数据提供给CPU,完成此次CPU读操作(步骤218)。步骤205中,如果判定写缓存器不为空,高速缓存控制逻辑将处理器读操作地址与写缓存器内的数据地址进行比较(步骤206),如果写缓存器内存在与该读操作地址对应的数据地址(即命中),CPU直接从写缓存器中读回该地址对应的数据(步骤207);如果写缓存器内没有与该读操作地址对应的数据地址(即未命中),则AHB接口执行主存储器读操作,将主存储器内对应的数据提供给CPU,然后,此次读操作完成(218)。
如果PU判定CPU读操作为可高速缓存的读操作,步骤209中,高速缓存控制逻辑进行高速缓冲存储器命中判定(即将读操作地址与高速缓冲存储器内的标签进行比较)。如果读高速缓冲存储器命中,即该读操作地址与高速缓冲存储器内的某个标签相匹配,步骤217中,直接读取高速缓冲存储器,对应的命中数据块被读出并提供给CPU,此次读操作完成。
如果读高速缓冲存储器缺失,步骤210中,高速缓存控制逻辑将比较读操作地址与写缓存器内的数据地址。如果写缓存器内有与该读操作地址对应的数据地址,步骤216中,CPU将直接从写缓存器中读取该地址对应的数据,完成此次读操作(步骤218)。如果写缓存器内没有与该读操作地址对应的数据地址,CPU将直接读取主存储器,高速缓冲存储器内将执行正常替换操作。步骤211中,高速缓存控制逻辑将判断高速缓冲存储器内将被替换的数据块是否是脏块。如果不是脏块,则丢弃被替换的数据块,步骤212中,高速缓存控制逻辑驱动AHB总线从主存储器内连续读取CPU读操作地址对应的数据块,并将其写回高速缓冲存储器内确定被替换的数据块内。如果是脏块,步骤213中,高速缓存控制逻辑将进一步判断写缓存器是否为空(步骤213),如果写缓存器为空,则将被替换的脏块写入写缓存器内(步骤215),否则先等待写缓存器清空(步骤214)后再将脏块写入写缓存器,然后执行步骤212,驱动AHB总线从主存储器内连续读取CPU读操作地址对应的数据块,并将其写回高速缓冲存储器内确定被替换的数据块内,完成此次读操作(步骤218)。
本发明处理器系统的数据操作方法中,写缓存器回读策略仅应用于读操作中,因而处理器系统的写操作流程与现有的写操作方法完全一样,对于不司局速缓存(不可Cache)不可缓存的写操作,处理器直接读取主存储器,对于可缓存的写操作,处理器将数据写入写缓存器内,对于可Cache的写操作,高速缓冲存储器命中时直接写入高速缓冲存储器内,高速缓冲存储器缺失时,驱动AHB总线将对应数据块从主存储器内读回高速缓冲存储器。
本发明处理器系统的数据操作方法中,写操作时不检查写缓存器内是否有与处理器写操作地址对应的数据地址,而直接将数据写入写缓存器,因此多个相同地址的数据可能同时存在于写缓存器内并且均有效,如图4所示。如果读高速缓冲存储器缺失或者读操作不可高速缓存时检测到写缓存器内有与读操作地址对应的数据地址,可能对应该数据地址存在多个数据,这时,在CPU回读写缓存器时只读取写缓存器内对应该操作地址的最近一次写入的(即最新的)数据。如图4中,写缓存器内存在与读操作地址“A=1”相对应的三个数据地址“A=1”,且该数据地址各自对应的数据不同,这时只将最近一次写入地址“A=1”的数据“D=1”读出给CPU,这样便可以避免写缓存和读操作的先读后写可能会出现的数据冲突。
此外,本发明处理器系统的数据操作方法也适用于高速缓冲存储器采用写通策略的处理器系统。图3所示为采用写通策略的处理器系统读操作流程图。如图3所示,CPU发出读操作指令(步骤301)后,步骤302中,PU将进行操作地址判定,以确定CPU读操作地址是否可缓存、是否可高速缓存或者该地址是否被保护。如果该地址被保护,PU将返回错误信息(步骤303)。CPU读操作时,不管PU判定该操作地址是否可缓存,CPU都会忽略该判定结果,因为是否可缓存对于CPU读操作来说没有任何意义。
步骤304中,如果CPU读操作不可高速缓存,高速缓存控制逻辑将判断写缓存器是否为空(步骤305)。如果写缓存器为空,步骤308中,AHB总线执行读操作,从主存储器内读取该操作地址对应的数据提供给CPU,完成此次CPU读操作(步骤315)。步骤305中,如果判定写缓存器不为空,高速缓存控制逻辑将处理器读操作地址与写缓存器内的数据地址进行比较(步骤306),如果写缓存器内存在与该读操作地址对应的数据地址,CPU直接从写缓存器中读回该地址对应的最近一次写入的数据(步骤307);如果写缓存器内没有与该读操作地址对应的数据地址,则AHB接口执行主存储器读操作,将主存储器内对应的数据提供给CPU,然后,此次读操作完成(315)。
如果PU判定CPU读操作为可高速缓存的读操作,步骤309中,高速缓存控制逻辑进行高速缓冲存储器命中判定。如果读高速缓冲存储器命中,步骤314中,直接读取高速缓冲存储器,对应的命中数据块被读出并提供给CPU,此次读操作完成。如果读高速缓冲存储器缺失,步骤310中,高速缓存控制逻辑将比较读操作地址与写缓存器内的数据地址。如果写缓存器内有与该读操作地址对应的数据地址,步骤313中,CPU将直接从写缓存器中读取该地址对应的最近一次写入的数据,完成此次读操作(步骤315)。如果写缓存器内没有与该读操作地址对应的数据地址,CPU将直接读取主存储器,步骤311中,高速缓冲存储器执行正常替换,然后步骤312中,AHB总线执行读操作,从主存储器内读取该操作地址对应的数据,并写回至高速缓冲存储器内。此次读操作即完成(步骤315)。
采用本发明的处理器系统数据操作方法后,CPU的不同读操作请求及其对应的等待周期如下表-1所示:
  编号   CPU读操作   CPU等待周期
  1   读命中  0
  2   读缺失且地址不可写缓存  1+N
  3   地址不可Cache且不可写缓存  1+N
  4   读缺失且地址可写缓存,写缓存命中  1
  5   读缺失且地址可写缓存,写缓存不命中  1+L*(b%)+N+7*S
  6   地址不可Cache但可写缓存,且写缓存命中  1
  7   地址不可Cache但可写缓存,且写缓存不命中  1+N
表-1CPU不同读操作的等待周期
其中,1+为判定高速缓冲存储器是否命中的判定周期以及写缓存器中是否有对应地址的判定周期,N为AHB总线单次操作消耗的周期数,S为AHB总线连续操作中一次读写消耗的周期数,L为等待写缓存器清空所需的平均时间(该操作发生的概率假设为b%,该概率较低)。
由上表可知,本发明的处理器系统数据操作方法在几乎不增加硬件代价的情况下增加了第四种操作,避免了读缺失且有写缓存器地址相对应时需要等待写缓存器清空的周期和该读操作的总线操作周期,比较第四种操作和第五种操作可以看出,本方法节省了L*(b%)+N+7*S个时钟周期的等待。
此外,本发明的处理器系统数据操作方法在几乎不增加硬件代价的情况下增加了第六种操作。对于不可Cache可写缓存的读操作,写缓存器内有对应的数据地址时,本发明减少了等待写缓存器清空的周期L以及读操作总线延迟的N个周期,使处理器的性能得到明显提升。
使用本发明的处理器系统数据操作方法,在读操作时应用写缓存器回读策略,读取读操作地址对应的写缓存器内的数据为最后一次写入该地址的数据,且该地址的读操作不会在总线上产生实际动作。这样的话,如果仅遵循现有的写缓存器使用限制条件,可能会造成某些错误。例如,I/O端口的数据读写共用一个地址,写发送的数据,读收到的数据,这时读操作读取最后一次写入的数据时可能会造成错误。又例如,某些中断寄存器的读清操作中,数据读取后就自动清零,而写缓存器回读时读操作实际不会在总线上产生,因而会产生错误。因此,本发明处理器系统的数据操作方法需要对写缓存器的使用限制条件进行扩大,本发明的写缓存器使用限制条件为:
(1)写操作延迟除了影响目标单元的内容外,没有其他副作用。写入写缓存器后,CPU的写操作已经收到完成的信息,但该操作实际没有完成,而是在若干时间后才完成。这样便至少造成两个系统误差,一个是目标单元产生误差,即外设目标单元没有能够即时获得数据,二是CPU以为写操作状态为完成,但实际系统中写操作状态为未完成。第一个误差通常是无法避免的,而第二个误差在某些地址上对系统没有影响(例如,外设访问时),在某些时候会对系统产生影响(例如,清零中断),因而在使用写缓存器时必须设置可写缓存的地址为对系统不会产生影响的地址。
(2)读操作返回最后一次写入的内容,而且没有其他副作用。采用写缓存器回读策略,读操作实际没有在系统上真实执行,这便会产生系统误差。这种误差在某些地址上不会影响系统的状态,因而该地址读入的数据确实就是最后一次写出的数据。但是在某些地址上读入的数据并不是最后写入的数据,而可能是以前写入的数据或者是完全无关的数据,这便会影响系统的状态,因而这样的地址就必须设置为不可写缓存的地址。
(3)读操作不会使目标单元产生操作。与第(2)条限制一样,采用写缓存器回读策略时,在总线上没有实际的读操作产生。但某些地址的读操作实际上是期望外设产生某些操作的,例如读清中断、读清数据段等操作地址,由于总线上没有读操作产生,外设的操作也不会产生,这时系统便会出错。因此,必须设置这些需要产生某种操作的地址为不可写缓存的地址。

Claims (9)

1.一种处理器系统的数据操作方法,其特征在于,包括:
a、在处理器读操作地址不可高速缓存时,比较所述处理器读操作地址与写缓存器内的数据地址;
b、写缓存器内有与所述读操作地址对应的数据地址时,处理器读取写缓存器内所述数据地址对应的最近一次写入的数据。
2.根据权利要求1所述的处理器系统的数据操作方法,其特征在于,所述步骤a进一步包括:
a1、判断写缓存器是否为空;
a2、所述写缓存器不为空时,比较所述处理器读操作地址与写缓存器内的数据地址。
3.一种处理器系统的数据操作方法,其特征在于,包括:
c、在处理器读操作地址可高速缓存但读所述高速缓冲存储器未命中时,比较所述处理器读操作地址与写缓存器内的数据地址;
d、所述写缓存器内有与所述读操作地址对应的数据地址时,处理器读取写缓存器内所述数据地址对应的最近一次写入的数据。
4.一种处理器系统,包括处理器以及位于处理器和主存储器之间的写缓存器、高速缓冲存储器,其特征在于,
还包括控制逻辑模块,所述控制逻辑模块在处理器读操作地址不可高速缓存时比较所述写缓存器内是否有与所述处理器的读操作地址对应的数据地址,并输出比较结果信息;
所述处理器接收所述控制逻辑模块的比较结果信息,当所述比较结果信息表示写缓存器内有与所述处理器读操作地址对应的数据地址时,所述处理器将写缓存器内所述数据地址对应的最后一次写入的数据读回。
5.根据权利要求4所述的处理器系统,其特征在于,所述控制逻辑模块判断所述处理器的读操作地址是否可高速缓存,在处理器读操作地址不可高速缓存时,进一步判断写缓存器是否为空,在所述写缓存器不为空时,比较所述处理器读操作地址与所述写缓存器内的数据地址。
6.根据权利要求4所述的处理器系统,其特征在于,所述处理器接收所述控制逻辑模块的比较结果信息,当所述比较结果信息表示写缓存器内没有与所述处理器读操作地址对应的数据地址时,所述处理器读取主存储器内所述读操作地址对应的数据。
7.根据权利要求4所述的处理器系统,其特征在于,还包括复用器,对所述控制逻辑模块和写缓存器的总线传输请求进行优先级判定,在请求冲突时寄存优先级较低的操作。
8.一种处理器系统,包括处理器以及位于处理器和主存储器之间的写缓存器、高速缓冲存储器,其特征在于,
还包括控制逻辑模块,在处理器读操作地址可高速缓存但读所述高速缓冲存储器未命中时,比较所述写缓存器内是否有与所述处理器的读操作地址对应的数据地址,并输出比较结果信息;
所述处理器接收所述控制逻辑模块的比较结果信息,当所述比较结果信息表示写缓存器内有与所述处理器读操作地址对应的数据地址时,所述处理器将写缓存器内所述数据地址对应的最后一次写入的数据读回。
9.根据权利要求8所述的处理器系统,其特征在于,所述控制逻辑模块包括:
处理逻辑单元,对所述处理器读操作地址是否可高速缓存进行判断;
高速缓存控制逻辑单元,在所述处理器读操作地址可高速缓存时对所述高速缓冲存储器是否命中进行判断,所述高速缓冲存储器未命中时,执行所述处理器读操作地址与所述写缓存器内数据地址的比较。
CNB2005101208116A 2005-12-13 2005-12-13 处理器系统及其数据操作方法 Expired - Fee Related CN100370440C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2005101208116A CN100370440C (zh) 2005-12-13 2005-12-13 处理器系统及其数据操作方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2005101208116A CN100370440C (zh) 2005-12-13 2005-12-13 处理器系统及其数据操作方法

Publications (2)

Publication Number Publication Date
CN1851673A CN1851673A (zh) 2006-10-25
CN100370440C true CN100370440C (zh) 2008-02-20

Family

ID=37133152

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005101208116A Expired - Fee Related CN100370440C (zh) 2005-12-13 2005-12-13 处理器系统及其数据操作方法

Country Status (1)

Country Link
CN (1) CN100370440C (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101464839B (zh) * 2009-01-08 2011-04-13 中国科学院计算技术研究所 一种访存缓冲装置及方法
CN102103549A (zh) * 2009-12-18 2011-06-22 上海华虹集成电路有限责任公司 一种缓存替换方法
US8793442B2 (en) * 2012-02-08 2014-07-29 International Business Machines Corporation Forward progress mechanism for stores in the presence of load contention in a system favoring loads
CN102646071B (zh) * 2012-02-17 2014-07-30 中国科学院微电子研究所 单周期执行高速缓存写命中操作的装置及方法
CN103902470B (zh) * 2012-12-25 2017-10-24 华为技术有限公司 读缺失时的处理方法、设备和系统
US9501418B2 (en) 2014-06-26 2016-11-22 HGST Netherlands B.V. Invalidation data area for cache
CN108228470B (zh) * 2016-12-21 2021-05-18 北京忆恒创源科技有限公司 一种处理向nvm写入数据的写命令的方法和设备
CN108459826B (zh) * 2018-02-01 2020-12-29 杭州宏杉科技股份有限公司 一种处理io请求的方法及装置
US11113213B2 (en) * 2019-12-30 2021-09-07 Micron Technology, Inc. Determining write commands for deletion in a host interface
CN111831587A (zh) * 2020-04-17 2020-10-27 北京奕斯伟计算技术有限公司 数据写入方法、装置和电子设备
CN112463658B (zh) * 2021-02-03 2021-05-28 鹏城实验室 加载存储单元的实现方法、装置和计算机存储介质
CN113157606A (zh) * 2021-04-21 2021-07-23 上海燧原科技有限公司 一种缓存器实现方法、装置和数据处理设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1226704A (zh) * 1998-02-17 1999-08-25 国际商业机器公司 包括多层次分级存储器体系的数据处理系统的高速缓存相关性协议
CN1357837A (zh) * 2000-12-12 2002-07-10 智原科技股份有限公司 适用于处理器的存储器数据存取装置及其存取方法
WO2003091820A2 (en) * 2002-04-26 2003-11-06 Freescale Semiconductor, Inc. Instruction cache and method for reducing memory conflicts
EP1580665A2 (en) * 2004-03-22 2005-09-28 Hitachi Global Storage Technologies B. V. Data storage device, control method thereof and magnetic disk storage device

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1226704A (zh) * 1998-02-17 1999-08-25 国际商业机器公司 包括多层次分级存储器体系的数据处理系统的高速缓存相关性协议
CN1357837A (zh) * 2000-12-12 2002-07-10 智原科技股份有限公司 适用于处理器的存储器数据存取装置及其存取方法
WO2003091820A2 (en) * 2002-04-26 2003-11-06 Freescale Semiconductor, Inc. Instruction cache and method for reducing memory conflicts
EP1580665A2 (en) * 2004-03-22 2005-09-28 Hitachi Global Storage Technologies B. V. Data storage device, control method thereof and magnetic disk storage device

Also Published As

Publication number Publication date
CN1851673A (zh) 2006-10-25

Similar Documents

Publication Publication Date Title
CN100370440C (zh) 处理器系统及其数据操作方法
CN100419715C (zh) 嵌入式处理器系统及其数据操作方法
CN111177030B (zh) 混合存储器管理
US6681293B1 (en) Method and cache-coherence system allowing purging of mid-level cache entries without purging lower-level cache entries
EP2430551B1 (en) Cache coherent support for flash in a memory hierarchy
JP4128878B2 (ja) キャッシュ中のラインを投機的に無効にする方法とシステム
JP3281893B2 (ja) キャッシュ・メモリ階層内で利用するキャッシュ・コヒーレンシ機構を実施するための方法およびシステム
US5561783A (en) Dynamic cache coherency method and apparatus using both write-back and write-through operations
US6434672B1 (en) Methods and apparatus for improving system performance with a shared cache memory
JP2717752B2 (ja) プロセッサ
US20100064107A1 (en) Microprocessor cache line evict array
CN100440174C (zh) 使用锁定高速缓冲存储器用于直接存入的系统和方法
US6751705B1 (en) Cache line converter
JP2000305842A (ja) ダイレクト・メモリ・アクセスおよびキャッシュ性能を改善する方法および装置
US5918069A (en) System for simultaneously writing back cached data via first bus and transferring cached data to second bus when read request is cached and dirty
JPH10154100A (ja) 情報処理システム及び装置及びその制御方法
CN113853589A (zh) 高速缓冲存储器大小改变
US10540283B2 (en) Coherence de-coupling buffer
WO2005066798A1 (en) A protocol for maitaining cache coherency in a cmp
US6345320B1 (en) DMA address buffer and cache-memory control system
US5420994A (en) Method for reading a multiple byte data element in a memory system with at least one cache and a main memory
JP4106664B2 (ja) データ処理システムにおけるメモリ・コントローラ
US5287512A (en) Computer memory system and method for cleaning data elements
EP1030243A1 (en) Optimized hardware cleaning function for virtual index virtual tag data cache
JPH11328106A (ja) グラフィックス・バスにアクセスするために多重のバス・マスタを可能とするアービトレーション機構を備えたコンピュータ・システム

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: 20080220

Termination date: 20201213

CF01 Termination of patent right due to non-payment of annual fee