CN1375771A - 回写型高速缓冲存储器的装置与控制方法 - Google Patents
回写型高速缓冲存储器的装置与控制方法 Download PDFInfo
- Publication number
- CN1375771A CN1375771A CN 01111283 CN01111283A CN1375771A CN 1375771 A CN1375771 A CN 1375771A CN 01111283 CN01111283 CN 01111283 CN 01111283 A CN01111283 A CN 01111283A CN 1375771 A CN1375771 A CN 1375771A
- Authority
- CN
- China
- Prior art keywords
- cache memory
- write
- system storage
- inconsistent
- 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.)
- Pending
Links
Images
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
一种回写型高速缓冲存储器的装置与控制方法,可有效提高回写型高速缓冲存储器的效率。该装置包含检测单元,用来检测系统存储器是否处于空闲状态;选取识别单元,在系统存储器处于空闲状态时,选取一高速缓冲存储器块,并识别该块的状态是否为不一致;以及,回写单元,将所选取且状态为不一致的前述块的数据回写至系统存储器。利用系统存储器的空闲时间将状态为不一致的高速缓冲存储器块数据回写至系统存储器,可减少处理器等待高速缓冲存储器回写的时间,提高高速缓冲存储器的效率。
Description
本发明涉及回写型高速缓冲存储器的装置与控制方法,特别是涉及利用系统存储器的空闲时间将状态为不一致的高速缓冲存储器块数据回写至系统存储器的回写型高速缓冲存储器的装置与控制方法。
高速缓冲存储器为较快的存储器单元,并配置在较慢的系统存储器与中央处理器(CPU)之间,以供中央处理器直接存取,藉以提高中央处理器存取数据的速度。高速缓冲存储器一般均包含多个存储块,用来储存对应于系统存储器的数据。
当微处理器发出读取要求时,高速缓冲存储器的控制单元即进行地址比较,以决定所要求的数据地址是否存在于高速缓冲存储器。若存在于高速缓冲存储器,则直接由高速缓冲存储器内读取数据;此种事件被视为读取成功(Hit)。反之,若不存在于高速缓冲存储器,则从系统存储器取回数据至高速缓冲存储器,并同时提供数据给处理器;此种事件被视为读取失败(Miss)。另外,当微处理器发出写入要求时,高速缓冲存储器的控制单元即进行地址比较,以决定所要写入的数据地址是否存在于高速缓冲存储器。若存在于高速缓冲存储器,则将数据写入高速缓冲存储器内;此种事件被视为高速缓冲写入成功(Hit)。在大多数系统中,被写入数据的存储块的状态会被设定成不一致(Dirty)。反之,若不存在于高速缓冲存储器,则直接将数据写入系统存储器。
为了保持高速缓冲存储器与系统存储器之间的数据一致性,常用以下两种技术来实现。第一种技术是直接写入型(write-through)高速缓冲存储器,其控制方式是直接将数据同时写入高速缓冲存储器与系统存储器,因此高速缓冲存储器与系统存储器之间均能保持一致性,但却需花费较多的时间等待数据写入系统存储器。第二种技术是回写型(write-back)高速缓冲存储器,其控制方式是仅将处理器的数据写入高速缓冲存储器,并将该写入的块的状态设定成不一致(dirty)。此种方式需要额外操作来控制数据的一致性,但可节省等待数据写入系统存储器的时间。
但是,在上述回写型高速缓冲存储器中,若必须将数据写入到状态被设定成不一致的高速缓冲存储器块时,该高速缓冲存储器必须先进行复原操作(replacement operation),即将该高速缓冲存储器块的数据回写至系统存储器。因此,微处理器必须等待该复原操作完毕后才能进行写入操作,影响该高速缓冲存储器的效率。
鉴于上述问题,本发明的目的是提供一种利用系统存储器空闲期间进行复原操作的回写型高速缓冲存储器的装置及其控制方法。
本发明回写型高速缓冲存储器包含检测单元,用来检测系统存储器是否处于空闲状态;选取识别单元,在系统存储器处于空闲状态时,选取一高速缓冲存储器块,并识别该块的状态是否为不一致;以及,回写单元,将所选取且状态为不一致的前述块的数据回写至系统存储器。
本发明回写型高速缓冲存储器的控制方法,包含下列步骤:检测步骤,用于检测系统存储器空闲期间;选取识别步骤,在系统存储器处于空闲状态时,选取一高速缓冲存储器块,并识别该块的状态是否为不一致;以及,回写步骤,将所选取且状态为不一致的前述块的数据回写至系统存储器。
本发明回写型高速缓冲存储器的装置与控制方法,因利用系统存储器的空闲期间将高速缓冲存储器块的状态为不一致的数据回写至系统存储器,使高速缓冲存储器在大部分时间均与系统存储器保持一致性,减少微处理器等待高速缓冲存储器回写的时间,进而提高高速缓冲存储器的效率。
图1为使用本发明回写型高速缓冲存储器的系统架构图。
图2为本发明检测系统存储器的空闲状态的流程图。
图3为本发明复原操作的流程图。
以下参考附图,说明本发明回写型高速缓冲存储器的装置与控制方法。
图1为使用本发明回写型高速缓冲存储器的系统构成图。如该图所示,该系统包含处理器10、系统存储器控制器30、系统存储器40、外部装置50、以及系统总线60。处理器10通过系统总线60与系统存储器控制器30及外部装置50连接,而系统存储器40连接于系统存储器控制器30。回写型高速缓冲存储器20(以下简称高速缓冲存储器)配置于微处理器10内部,以提供微处理器10快速存取数据。微处理器10可为中央处理器(CPU)或是一般的图像微处理器。存储器控制器30还提供一空闲信号(Idle)至高速缓冲存储器20,以提供高速缓冲存储器20有关系统存储器40的空闲状态。
图2为本发明检测系统存储器的空闲状态的流程图。该流程图系用来判别系统存储器40是否处于空闲状态。如该图所示,其判别程序如下:
S100:开始;
S110:系统存储器控制器30将空闲信号Idle设定为非致能(Inactive)状态;
S120:将K值设定成0;
S130:检测是否有任何系统存储器存取的要求,若有则跳回步骤S110,若无则进行下一步骤;
S140:比较K值是否大于或等于参考值N,若是则进行步骤S150,若否则进行步骤S160;
S150:系统存储器控制器30将空闲信号Idle设定为致能(Aactive)状态,并返回步骤S130;
S160:将K值加1,并返回步骤S130。
在上述步骤S140中,利用K值是否大于参考值N的条件来判别系统存储器是否处于空闲状态,避免因短暂不存取系统存储器即被视为空闲,而中断正常的存取作业。其参考值N可依据实际需要设定适当值。上述的流程亦可使用一般的计时器(计数器)来实现。
图3为本发明回写操作的流程图。该流程图是高速缓冲存储器20利用系统存储器40的空闲期间,将状态为不一致的高速缓冲存储器块数据回写至系统存储器40的流程。
如该图所示,其程序如下:
S200:开始;
S210:检测空闲信号Idle是否被致能(Active),若是则进行下一步骤,若否则重复该步骤;
S220:选择一高速缓冲存储器块;
S230:判断该高速缓冲存储器块的状态是否为不一致(dirty),若是则进行下一步骤,若否则跳回步骤S210;
S240:将该高速缓冲存储器块的数据回写至系统存储器40;
S250:将该高速缓冲存储器块的状态设定为一致(clean),并跳回步骤S210。
其中,在上述步骤S220中,其选择高速缓冲存储器块的方式可为随机选择一块,或选择最近被存取过的块。因此,根据上述步骤,当空闲信号Idle被致能时,高速缓冲存储器控制器即会选择一高速缓冲存储器块,若该块的状态为一致,则选择另一块。若该块的状态为不一致,则进行该块数据的回写,并将回写完毕的块的状态设定成一致。
本发明回写型高速缓冲存储器,利用系统存储器控制器检测系统存储器空闲期间,并利用空闲信号Idle通知高速缓冲存储器控制器,高速缓冲存储器控制器即将高速缓冲存储器块的状态为不一致的数据回写至系统存储器,使高速缓冲存储器在大部分时间均与系统存储器保持一致性,减少微处理器等待高速缓冲存储器回写的时间,进而增加高速缓冲存储器的效率。
Claims (5)
1.一种回写型高速缓冲存储器的装置,包含:
检测单元,用来检测系统存储器是否处于空闲状态;
选取识别单元,在系统存储器处于空闲状态时,选取一高速缓冲存储器块,并识别该块的状态是否为不一致;以及,
回写单元,将所选取且状态为不一致的前述块的数据回写至系统存储器。
2.如权利要求1所记载的回写型高速缓冲存储器的装置,其中前述侦测单元系设置于系统存储器控制器,以检测前述系统存储器未被存取的期间。
3.如权利要求1所记载的回写型高速缓冲存储器的装置,其中前述回写单元还将回写后的块状态设定成一致。
4.一种回写型高速缓冲存储器的控制方法,包含下列步骤:
检测步骤,系检测系统存储器空闲期间;
选取识别步骤,在系统存储器处于空闲状态时,选取一高速缓冲存储器块,并识别该块的状态是否为不一致;以及,
回写步骤,将所选取且状态为不一致的前述块的数据回写至系统存储器。
5.如权利要求4所记载的回写型高速缓冲存储器的控制方法,还包含将回写后的块状态设定成一致。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 01111283 CN1375771A (zh) | 2001-03-16 | 2001-03-16 | 回写型高速缓冲存储器的装置与控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 01111283 CN1375771A (zh) | 2001-03-16 | 2001-03-16 | 回写型高速缓冲存储器的装置与控制方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1375771A true CN1375771A (zh) | 2002-10-23 |
Family
ID=4659022
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 01111283 Pending CN1375771A (zh) | 2001-03-16 | 2001-03-16 | 回写型高速缓冲存储器的装置与控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1375771A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100349139C (zh) * | 2004-02-19 | 2007-11-14 | 华为技术有限公司 | 一种快照过程中向源卷写数据的方法 |
CN101064193B (zh) * | 2006-04-28 | 2011-10-26 | 汤姆森许可贸易公司 | 用于向闪速存储器执行写入的方法和设备 |
CN101526896B (zh) * | 2009-01-22 | 2011-11-23 | 杭州中天微系统有限公司 | 嵌入式处理器的加载/存储单元 |
US8850153B2 (en) | 2011-09-30 | 2014-09-30 | International Business Machines Corporation | Enabling throttling on average write throughput for solid state storage devices |
US9569136B2 (en) | 2015-04-29 | 2017-02-14 | International Business Machines Corporation | Smart load balancing replication when adding or removing storage disks in a distributed storage system |
-
2001
- 2001-03-16 CN CN 01111283 patent/CN1375771A/zh active Pending
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100349139C (zh) * | 2004-02-19 | 2007-11-14 | 华为技术有限公司 | 一种快照过程中向源卷写数据的方法 |
CN101064193B (zh) * | 2006-04-28 | 2011-10-26 | 汤姆森许可贸易公司 | 用于向闪速存储器执行写入的方法和设备 |
CN101526896B (zh) * | 2009-01-22 | 2011-11-23 | 杭州中天微系统有限公司 | 嵌入式处理器的加载/存储单元 |
US8850153B2 (en) | 2011-09-30 | 2014-09-30 | International Business Machines Corporation | Enabling throttling on average write throughput for solid state storage devices |
US8868875B2 (en) | 2011-09-30 | 2014-10-21 | International Business Machines Corporation | Enabling throttling on average write throughput for solid state storage devices |
US9058114B2 (en) | 2011-09-30 | 2015-06-16 | International Business Machines Corporation | Enabling throttling on average write throughput for solid state storage devices |
US9367250B2 (en) | 2011-09-30 | 2016-06-14 | International Business Machines Corporation | Enabling throttling on average write throughput for solid state storage devices |
US9569136B2 (en) | 2015-04-29 | 2017-02-14 | International Business Machines Corporation | Smart load balancing replication when adding or removing storage disks in a distributed storage system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7266641B2 (en) | CPU, information processing device including the CPU, and controlling method of CPU | |
US5761715A (en) | Information processing device and cache memory with adjustable number of ways to reduce power consumption based on cache miss ratio | |
US8725953B2 (en) | Local cache power control within a multiprocessor system | |
US9208096B2 (en) | Cache pre-fetching responsive to data availability | |
US5339399A (en) | Cache controller that alternately selects for presentation to a tag RAM a current address latch and a next address latch which hold addresses captured on an input bus | |
US5499353A (en) | Cache address strobe control logic for stimulated bus cycle initiation | |
JP3512678B2 (ja) | キャッシュメモリ制御装置および計算機システム | |
CN100370440C (zh) | 处理器系统及其数据操作方法 | |
CN100419715C (zh) | 嵌入式处理器系统及其数据操作方法 | |
JP2509766B2 (ja) | キャッシュメモリ交換プロトコル | |
US6122692A (en) | Method and system for eliminating adjacent address collisions on a pipelined response bus | |
JPH10154098A (ja) | キャッシュを有するデータ処理システムおよびそのための方法 | |
KR101472967B1 (ko) | 라이트 백 동작을 수행하는 캐시 메모리, 이의 동작 방법, 및 이를 포함하는 시스템 | |
JP3236287B2 (ja) | マルチプロセッサシステム | |
JP3798049B2 (ja) | データメモリおよびその動作方法 | |
US20160195918A9 (en) | Method and Apparatus for Predictive and Adaptive Power Management of Memory Subsystem Based on memory access Information | |
US7899992B2 (en) | Cache circuit and control circuits of a cache memory | |
US6345320B1 (en) | DMA address buffer and cache-memory control system | |
US10509743B2 (en) | Transferring data between memory system and buffer of a master device | |
US20070204180A1 (en) | Method for power management of central processing unit and system thereof | |
EP1030243B1 (en) | Optimized hardware cleaning function for virtual index virtual tag data cache | |
CN1375771A (zh) | 回写型高速缓冲存储器的装置与控制方法 | |
US6725348B1 (en) | Data storage device and method for reducing write misses by completing transfer to a dual-port cache before initiating a disk write of the data from the cache | |
US6801982B2 (en) | Read prediction algorithm to provide low latency reads with SDRAM cache | |
US7500141B2 (en) | Saving state data in parallel in a multi-processor system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |