欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

高速緩沖存儲器裝置、高速緩沖存儲器控制方法、程序及集成電路的制作方法

文檔序號:6348029閱讀:147來源:國知局
專利名稱:高速緩沖存儲器裝置、高速緩沖存儲器控制方法、程序及集成電路的制作方法
技術領域
本發(fā)明涉及一種再填充(refill)高速緩沖存儲器的數(shù)據(jù)的技術。
背景技術
高速緩沖存儲器是配置在處理器和主存儲器之間的、比主存儲器容量小但是可以 高速訪問的存儲裝置。在高速緩沖存儲器中,存在處理器請求的數(shù)據(jù)時稱為命中(hit),不存在處理器請 求的數(shù)據(jù)時稱為失敗(miss)。而且,失敗時,進行將高速緩沖存儲器上的數(shù)據(jù)替換的再填充 (refill, replacement)處理。一般來說,在存儲器領域中,已知有空間局部性(spatial locality,參照某項 目時,該項目附近的項目再次被參照的概率較高)這一性質(zhì),如果一定程度地增大作為再 填充對象的數(shù)據(jù)的大小(以下稱為“再填充大小”),則可以提高命中率(hit rate, hit ratio)ο但是,由于高速緩沖存儲器的容量受到限制,如果再填充大小過大,則有時連處理 器所需要的數(shù)據(jù)也被替換,于是命中率降低(失敗率(miss rate)變高)。特別是當高速緩 存失敗的數(shù)據(jù)的后續(xù)數(shù)據(jù)不立刻被程序使用時容易發(fā)生這樣的情況。作為與這種再填充大小的優(yōu)化相關的技術,已知有專利文獻1?,F(xiàn)有技術文獻專利文獻1 (日本)特開2004-259109號公報但是,高速緩沖存儲器有通過并行動作的多種多樣的程序來使用的趨勢。因此,即 使高速緩沖存儲器上的某個項目通過程序而被參照,是否繼續(xù)參照附近的項目也是難以預 測的。如果該預測錯誤而將很多行大小(line size)再填充的話,其結果是導致再填充的 數(shù)據(jù)的大部分不被使用,從而引起處理的延遲。

發(fā)明內(nèi)容
本發(fā)明是基于這種背景而提出的,其目的在于,提供一種根據(jù)程序的動作、將再填 充大小控制為可靈活利用空間局部性的大小的高速緩沖存儲器裝置。本發(fā)明的高速緩沖存儲器裝置,其特征在于,具備存儲單元,存儲高速緩存數(shù)據(jù);地址提取單元,若接收到包含地址的指定在內(nèi)的訪問請求,則從該地址提取標簽 和索引;命中/失敗判斷單元,基于地址提取單元提取的標簽和索引,對上述高速緩存數(shù) 據(jù)判斷是命中還是非命中;管理單元,對由排列了各個索引的值的多個行構成的多個行組,管理構成各行組 的每行的訪問次數(shù);
計數(shù)單元,在上述地址提取單元提取的索引示出上述管理單元管理的行的索引、 且由上述命中/非命中判斷單元對該索引判斷為命中時,將與該索引相對應的行的訪問次 數(shù)增加1次;確定單元,在上述地址提取單元提取的索引未示出上述管理單元管理的行的索 引、且由上述命中/失敗判斷單元對該索引判斷為失敗時,從上述管理單元管理的行之中 確定與該索引相對應的行組;決定單元,構成被確定的行組的全部行各自的訪問次數(shù)如果不全部一致則將應再 填充的行大小決定為第1行大小,如果全部一致則將應再填充的行大小決定為比上述第1 行大小大的第2行大小決;以及再填充單元,基于所決定的行大小,進行上述緩存數(shù)據(jù)的再填充。發(fā)明效果如果上述訪問次數(shù)一致,則推測為程序局部地參照了存儲器。根據(jù)本發(fā)明的高速 緩沖存儲器裝置,以該訪問次數(shù)的一致為條件,通過增大再填充大小,可以使命中率提高并 降低高速緩沖存儲器相關的數(shù)據(jù)傳送。因此可以提高程序的動作性能。


圖1為示出包含高速緩沖存儲器的信息處理裝置的結構的圖。圖2為示出高速緩沖存儲器裝置的結構的框圖。圖3為示出地址分析部所取得的地址信息的一例的圖。圖4為示出高速緩存數(shù)據(jù)存儲部所管理的高速緩存數(shù)據(jù)的一例的圖。圖5為示出讀寫次數(shù)管理部所管理的信息的一例的圖。圖6為示出高速緩沖存儲器裝置的動作的流程圖。圖7為示出與次數(shù)計數(shù)相關的動作的流程圖。圖8為示出與次數(shù)復位相關的動作的流程圖。圖9為示出與行大小決定相關的動作的流程圖。圖10為用于說明對管理對象行進行設定的例子的圖。符號說明1、11、12、13 處理器2存儲器裝置10高速緩沖存儲器裝置21 ROM22 RAM25 HDD26、35、41、46 接口 (I/F)31存儲介質(zhì)32讀取裝置33通信線路34通信裝置40輸入裝置
45顯示裝置50 總線51定時器電路55中斷控制器201地址分析部(地址提取部)202管理行判斷部203次數(shù)管理部204行大小決定部205命中/失敗判斷部206再填充部207高速緩存數(shù)據(jù)存儲部231外部存儲器
具體實施例方式以下參照

具體實施方式
。(結構)圖1為示出包含高速緩沖存儲器裝置的信息處理裝置1000的結構的圖。信息處理裝置1000例如由PC (Personal Computer)等通用的計算機構成。該信 息處理裝置1000具備處理器1、存儲器裝置2、通信裝置34、輸入裝置40、顯示裝置45、定 時器電路51及中斷控制器55。這些裝置通過總線50相互連接。此外,HDD (Hard Disk Drive : 1盤驅動器)25、讀取裝置32、輸入裝置40和顯示裝 置45分別通過I/F (接口 ) 26,35,41及46連接到總線50。處理器1由3個處理器11、12、13構成。各處理器是被稱作CPU (Central Processing Unit,中央運算處理裝置)的裝置。存儲器裝置2 具備 ROM (Read Only Memory) 21 禾口 RAM (Random Access Memory) 22。R0M21具有存儲對處理器1的動作進行規(guī)定的計算機程序和數(shù)據(jù)的功能,例如由 閃存R0M(flash ROM)這樣的可以寫入、且即使切斷電源也能夠保持存儲內(nèi)容的非易失性存 儲器構成。RAM22具有臨時存儲隨著處理器1執(zhí)行處理而產(chǎn)生的數(shù)據(jù)的功能,例如由切斷電 源后不保持存儲內(nèi)容的易失性存儲器構成。此外,取代R0M21地、計算機程序和數(shù)據(jù)也可以 存儲于HDD^。處理器1 一邊根據(jù)需要將R0M21或HDD25存儲的計算機程序和數(shù)據(jù)寫入RAM22,一 邊執(zhí)行計算機程序規(guī)定的處理。HDD25是存儲計算機程序、數(shù)據(jù)的裝置。讀取裝置32是讀取在存儲介質(zhì)31 (例如⑶、DVD、存儲卡等)上存儲的計算機程 序或數(shù)據(jù)的裝置。通信裝置34是通過電話線、網(wǎng)線、無線、紅外線通信等通信線33而在外部和自身 之間交換計算機程序、數(shù)據(jù)的裝置。輸入裝置40是通過用戶的操作來輸入數(shù)據(jù)等的裝置,由鍵盤、鼠標和各種輸入按 鈕構成。
顯示裝置45是將數(shù)據(jù)、圖像等顯示在畫面上、或者將數(shù)據(jù)等以聲音輸出的裝置, 例如包括19英寸的液晶顯示器(LCD :Liquid Crystal Display)和揚聲器。定時器電路51是以固定的周期輸出定時器中斷信號的裝置。中斷控制器55是將從定時器電路51、輸入裝置40、處理器1、作為網(wǎng)絡設備的通信 裝置34、HDD25、讀取裝置32等送來的中斷請求信號向處理器1中繼的裝置。來自各裝置 的中斷請求信號附有優(yōu)先級。該中斷控制器陽具有在同時從多個裝置發(fā)生中斷的情況下、 根據(jù)上述優(yōu)先級對這些要求進行仲裁(arbitration)的功能。圖2為示出高速緩沖存儲器裝置10的結構的框圖。高速緩沖存儲器裝置10與處 理器1、外部存儲器231協(xié)同動作。作為外部存儲器231,典型地采用圖1所示的存儲器裝 置2中包含的RAM22。高速緩沖存儲器裝置10具備地址分析部201、管理行判斷部202、次數(shù)管理部 203、行大小決定部204、命中/失敗判斷部205、再填充部206、高速緩存數(shù)據(jù)存儲部207。此 外,高速緩存數(shù)據(jù)按照被稱為高速緩存行(cache line)(以下簡稱為“行”)的、固定大小的 數(shù)據(jù)的每一個而被管理。此外,可以根據(jù)索引(index)的值來唯一地識別并訪問高速緩存 數(shù)據(jù)的各行。地址分析部201從處理器1接收表示請求的數(shù)據(jù)的存儲目的地的地址。地址分析 部201從接收到的地址中分離出用于判斷命中的標簽(tag)和表示高速緩存數(shù)據(jù)的存儲偏 移(offset)的索引。地址分析部201將分離得到的索引傳送給管理行判斷部202,將標簽 和索引傳送給命中/失敗判斷部205。管理行判斷部202具有如下功能判斷對處理器1請求的數(shù)據(jù)的訪問是否為對次 數(shù)管理部203 (如后述那樣、次數(shù)管理部203管理高速緩沖存儲器中全部行之中的一部分規(guī) 定的行)的管理對象的行的訪問。管理行判斷部202保持與管理對象行相對應的索引。管理行判斷部202若從地址 分析部201接收到索引,則判斷該索引是否與保持著的索引匹配(A tz 3 )。管理行判斷部 202的典型的結構為,具備如下電路即可,即作為高速緩沖存儲器裝置而事先決定管理對象 的索引,在以該索引發(fā)生了訪問的情況下,能夠進行斷言(assert)的電路。此外,管理行判斷部202若判斷為是管理對象的行,則通知次數(shù)管理部203是管理 對象的行這一情況。與此相對,若判斷為不是管理對象的行,則通知次數(shù)管理部203和行大 小決定部204不是管理對象的行這一情況。命中/失敗判斷部205具有如下功能判斷處理器1請求的數(shù)據(jù)是作為高速緩存 數(shù)據(jù)而存在(命中)還是不存在(失敗)。命中/失敗判斷部205若從地址分析部201接 收到標簽和索引,則將索引傳送給高速緩存數(shù)據(jù)存儲部207。接著,命中/失敗判斷部205 從高速緩存數(shù)據(jù)存儲部207接收與傳送的索引相對應的高速緩存數(shù)據(jù)的標簽。命中/失敗 判斷部205將從地址分析部201取得的標簽和詢問高速緩存數(shù)據(jù)存儲部207而取得的標簽 進行比較。然后,比較的結果為,若標簽彼此一致則判斷為命中,命中/失敗判斷部205從高 速緩存數(shù)據(jù)存儲部207取得相應行的數(shù)據(jù),傳送給處理器1。此外,命中/失敗判斷部205 向次數(shù)管理部203和行大小決定部204通知命中這一情況。與此相對,比較的結果為,若標 簽彼此不一致則判斷為失敗,命中/失敗判斷部205向次數(shù)管理部203和行大小決定部204通知失敗這一情況。此外,無論命中還是失敗,命中/失敗判斷部205都向次數(shù)管理部203和行大小決 定部204傳送從地址分析部201接收到的標簽和索引。次數(shù)管理部203具有如下功能對高速緩沖存儲器中全部行之中的一部分規(guī)定的 行的訪問次數(shù)(讀次數(shù)和寫次數(shù))進行存儲并管理。關于該作為管理對象的行的決定方法 在后面敘述。次數(shù)管理器203若從管理行判斷部202接收到是對管理對象的行的訪問的通知, 則接下來根據(jù)從命中/失敗判斷部205接收到的索引,確定相應的管理對象的行。次數(shù)管理部203連接有當存在來自處理器1的讀請求或寫請求時進行通知的線。 次數(shù)管理部203根據(jù)經(jīng)由該線而通知的讀請求或寫請求、以及來自命中/失敗判斷部205 的通知是命中還是失敗,對所管理的讀次數(shù)或寫次數(shù)進行更新。此外,次數(shù)管理部203在從命中/失敗判斷部205接收到是失敗的通知時,次數(shù)管 理部203將從地址分析部201接收到的標簽和索引傳送給再填充部206。此外,次數(shù)管理部 203將行大小傳送給再填充部206。此外,次數(shù)管理部203在從命中/失敗判斷部205接收到是失敗的通知時,如果接 收到判斷為不是管理對象的行的通知,則根據(jù)該不是管理對象的行的索引的值,確定作為 管理對象的行的替代的索引。然后,將確定后的索引通知給行大小決定部。行大小決定部204具有如下功能參照次數(shù)管理部203通知的索引的讀寫次數(shù),決 定使應再填充的行大小為單行大小還是為多行大小(例如4行)。在行大小決定部204從管理行判斷部202接收到不是管理對象的行的通知、且從 命中/失敗判斷部205接收到是失敗的通知時,進行該決定行的處理。如詳細敘述該處理,則行大小決定部204從次數(shù)管理部203取得管理對象的行的 索引。接著,行大小決定部204從高速緩存數(shù)據(jù)存儲部207取得與取得的全部索引相對應 的標簽。此外,行大小決定部204從次數(shù)管理部203取得與取得的全部索引相對應的讀寫 次數(shù)。在取得的標簽彼此、讀次數(shù)彼此和寫次數(shù)彼此全部一致的情況下,行大小決定部 204將應再填充的行大小決定為較大的4行大小。此外,任何一個不一致的情況下,將應再 填充的行大小決定為通常的單行大小。然后,將決定的行大小和再填充的數(shù)據(jù)的地址通知 給再填充部206。再填充部206從次數(shù)管理部203或行大小決定部204取得再填充對象所存在的數(shù) 據(jù)的地址和應再填充的行大小,按取得的行大小從外部存儲器231讀入取得的地址中存在 的數(shù)據(jù)。讀入后,再填充部206將讀入的數(shù)據(jù)、該數(shù)據(jù)的地址和數(shù)據(jù)的大小這三者傳送給 高速緩存數(shù)據(jù)存儲部207。此外,再填充部206也可以從次數(shù)管理部203、行大小決定部204 取得再填充的標簽和索引,來代替上述數(shù)據(jù)的地址和數(shù)據(jù)的大小傳送給高速緩存數(shù)據(jù)存儲 部 207。高速緩存數(shù)據(jù)存儲部207具有存儲、管理高速緩存的數(shù)據(jù)的功能。高速緩存數(shù)據(jù) 存儲部207以行單位對存儲的數(shù)據(jù)進行管理,根據(jù)索引可以唯一地確定各行是哪一行。此 外,高速緩存數(shù)據(jù)存儲部207按每個行,將表示各行中的數(shù)據(jù)是外部存儲器231中哪個地址的數(shù)據(jù)的標簽賦予關聯(lián)地進行管理。若高速緩存數(shù)據(jù)存儲部207從命中/失敗判斷部205接收到索引,則通過索引確 定行,將與該行對應起來進行管理的標簽返回給命中/失敗判斷部205。高速緩存數(shù)據(jù)存儲部207若從再填充部206接收到數(shù)據(jù)的大小,則根據(jù)所管理的 行大小來掌握該數(shù)據(jù)是幾行的數(shù)據(jù)。并且,若接收到來自再填充部206的數(shù)據(jù)的地址,則將 數(shù)據(jù)的地址傳送到地址分析部201并接收標簽和索引,根據(jù)接收到的索引確定行,將從再 填充部206接收到的數(shù)據(jù)作為確定了的行的數(shù)據(jù)來管理。此外,高速緩存數(shù)據(jù)存儲部207 將從地址分析部201接收到的標簽作為與確定的行相對應的標簽來管理。此外,高速緩存 數(shù)據(jù)存儲部207也可以取得再填充的標簽和索引并更新高速緩存數(shù)據(jù),來代替從再填充部 206取得數(shù)據(jù)的地址和數(shù)據(jù)的大小。高速緩存數(shù)據(jù)存儲部207在從再填充部206接收到多行量的數(shù)據(jù)時,與后續(xù)索引 的行相對應地管理行大小量的數(shù)據(jù)。高速緩存數(shù)據(jù)存儲部207將從地址分析部201接收到 的標簽作為與后續(xù)索引的行相對應的標簽來管理。高速緩存數(shù)據(jù)存儲部207對從再填充部 206接收到的全部行的數(shù)據(jù)進行上述的動作,從而管理高速緩存數(shù)據(jù)。接著,以處理器1向地址分析部201傳送的地址為例進行說明。圖3中作為一例 而示出了由32位構成的地址401。從0開始到31為止的數(shù)值402,是將構成地址401的各 個位方便地表示為從低位第0位開始到第31位為止的數(shù)值(第31位是最高位的位)。地址401包含從第15位到第31位的高位地址403和從第5位到第14位的低位 地址404。地址分析部201若接收到地址401,則根據(jù)行大小和高速緩存塊大小(cache block size),將高位地址403作為標簽從地址401取出(切>9出t ),將低位地址404作為 索引從地址401取出。圖3作為一例,示出了行大小為32字節(jié),高速緩存塊大小為32KB的情況。但是,例 舉的行大小及高速緩存塊大小只不過是一例,可以根據(jù)高速緩沖存儲器的結構進行變更。接著,對高速緩存數(shù)據(jù)存儲部207管理的高速緩存數(shù)據(jù)的例子進行說明。在圖4的例子中,高速緩存數(shù)據(jù)存儲部207管理“高速緩存數(shù)據(jù)”207c、表示該數(shù)據(jù) 的行的“索引” 207a、表示該數(shù)據(jù)在外部存儲器231中是哪一個地址的數(shù)據(jù)的“標簽” 207b。如上所述,該高速緩存數(shù)據(jù)存儲部207存儲的數(shù)據(jù)的行(索引)之中的一部分成 為次數(shù)管理部203管理的管理對象行。具體例如圖5所示。次數(shù)管理部203包含表示管理對象行的“索引” 203a、與索引相對應的“讀次 數(shù)” 20 、“寫次數(shù)” 203c。在圖5的例中,索引0x000 0x003的4行的“組1”和索引0x200 0x203的4 行的“組2”成為管理對象。如上所述,各組的開頭的索引0x000、0x200是在程序使用的頁 單位上索引成為開頭的行。(動作)以下,對實施方式的高速緩沖存儲器裝置的動作進行說明。如圖6所示,首先,地址分析部201若從處理器1接收到地址,則將該地址分離(提 取)為標簽和索引(步驟Sll)。接著,命中/失敗判斷部205,若從地址分析部201接收到標簽和索引,則詢問高速緩存數(shù)據(jù)存儲部207并判斷是命中還是失敗(步驟S12)。該判斷為,命中/失敗判斷部 205從高速緩存數(shù)據(jù)存儲部207取得與索引相對應的高速緩存數(shù)據(jù)的標簽,并與地址分析 部201所分離的標簽比較,如果兩個標簽一致,則判斷為命中(步驟S12 命中),如果不一 致則判斷為失敗(步驟S12 失敗)。若判斷為命中(步驟S12 命中),則命中/失敗判斷部205從高速緩存數(shù)據(jù)存儲 部207取得與在步驟Sll中分離的地址相對應的高速緩存數(shù)據(jù),并返還給處理器1 (步驟 S13)。然后,管理行判斷部202判斷在步驟Sll中分離的地址中包含的索引是否為管理 對象行的索引(步驟S14)。如果是管理對象行的索引(步驟S14:是),則轉移到次數(shù)計數(shù)的處理(步驟S15, 圖7)。如果不是管理對象行的索引(步驟S14:否),則結束處理。如圖7所示,次數(shù)計數(shù)處理中,次數(shù)管理部203確定訪問對象的行(步驟S31),如 果訪問是讀請求(步驟S32 讀),則將相應的管理對象行的讀次數(shù)增加1次(步驟S33)。如果訪問是寫請求(步驟S32 寫),則次數(shù)管理部203將相應的管理對象行的寫 次數(shù)增加1次(步驟S34)。具體舉例來說,如果訪問對象的行是“0x000”且訪問是讀請求,則次數(shù)管理部203 將管理對象行的索引“0x000”的讀次數(shù)2次(參照圖5)增加1次而將其更新為3次。此 外,如果訪問對象的行是“0x001”且訪問是寫請求,則次數(shù)管理部203將管理對象行的索引 “0x001”的寫次數(shù)0次(參照圖5)增加1次,從而將其更新為1次。這樣,如果高速緩存命中(步驟S12 命中)且是對管理對象行的訪問(步驟S14 是),則次數(shù)管理部203對相對應的管理對象行的次數(shù)進行計數(shù)(步驟S31 步驟S34)。接著,若命中/失敗判斷部205判斷為失敗(步驟S12 失敗),則管理行判斷部 202判斷在步驟Sll中分離的地址中包含的索引是否為管理對象行的索引(步驟S16)。如果是管理對象行的索引(步驟S16 是),則轉移到次數(shù)復位的處理(步驟S17, 圖8)。如圖8所示,次數(shù)復位處理中,次數(shù)管理部203將訪問對象的行的讀寫次數(shù)無效化 (復位)(步驟S41)。然后,如果訪問是讀請求(步驟S42 讀),則將相應的管理對象行的 讀次數(shù)設定為1次(步驟S43)。與此相對,如果訪問是寫請求(步驟S42 寫),則次數(shù)管理部203將相應的管理對 象行的寫次數(shù)設定為1次(步驟S44)。具體舉例來說,如果訪問對象的行是“0x000”且訪問是讀請求,則次數(shù)管理部203 將管理對象行的索引“0x000”的讀次數(shù)2次、寫次數(shù)3次(參照圖5)都復位為0次,然后 將讀次數(shù)再次設定為1次。這樣的次數(shù)的復位處理結束后,再填充部206從外部存儲器231取得相應行(與 步驟Sll中分離的地址中包含的索引相對應的行)的數(shù)據(jù),并再填充高速緩存數(shù)據(jù)存儲部 207的高速緩存數(shù)據(jù)(步驟S19)。具體來說,再填充部206從外部存儲器231讀入與從次數(shù)管理部203接收到的再 填充對象的地址相對應的數(shù)據(jù)。然后,再填充部206將讀入的數(shù)據(jù)傳送給高速緩存數(shù)據(jù)存 儲部207,并使其作為高速緩存數(shù)據(jù)而被存儲。接著,再填充部206將從外部存儲器231讀入的數(shù)據(jù)返還到處理器1。如果不是管理對象行的索引(步驟S16 否),則管理行判斷部202將這一情況通 知給管理次數(shù)部203。接收到通知的次數(shù)管理部203,從自己管理的管理對象行之中確定比 在步驟Sll中取得的索引小、且最接近的索引的組。例如,若設在步驟Sll中分離的地址中 包含的索引是“0x280” (圖4),則確定為比該索引“0U80”小、且最接近的索引的組2(圖 5 “0x200” “0x203” 的 4 行的組)(步驟 S20)。然后,轉移到行大小決定處理(步驟S21,圖9)行大小決定處理中,行大小決定部204若從管理行判斷部202接收到表示被確定 的組的信息,則從次數(shù)管理部203取得與接收到的組相對應的讀寫次數(shù),并且從高速緩存 數(shù)據(jù)存儲部207取得屬于取得的組的管理對象行的標簽(步驟S51)。然后,判斷取得的全部管理對象行的讀次數(shù)彼此、寫次數(shù)彼此是否全部一致(步 驟S52)。例如,如果索引的組被確定為組2,則屬于組2的“0x200” “0x203”的4行的讀 次數(shù)為0次、寫次數(shù)為2次,由于全部一致(參照圖5),所以做出肯定的判斷。與此相對,如 果索引的組被確定為組1,則屬于組1的“0x000” “0x003”的4行的讀次數(shù)為2次、2次、 0次、1次而各不相同(參照圖5),所以做出否定的判斷。若在步驟S52中判斷為一致(步驟S52 是),則接下來行大小決定部204判斷取 得的全部管理對象行的標簽彼此是否全部一致(步驟S5!3)。例如,如果索引的組被確定為 組2,則屬于組2的“0x200” “0x203”的4行的標簽全部一致,為“0x02000” (參照圖4), 所以作出肯定的判斷。與此相對,如果索引的組被確定為組1,則屬于組1的“0x000” “0x003”的4行的標簽為0x01c80、0x01c80、0xl0000、0x00040,僅僅其中的一部分即2個一 致,不是全部一致,因此作出否定的判斷。在取得的全部管理對象行的讀次數(shù)彼此、寫次數(shù)彼此全部一致(步驟S52 是)、且 取得的全部管理對象行的標簽彼此全部一致的情況下(步驟S53 是),行大小決定部204 將應再填充的行大小決定為4行的大小(步驟S54)。如果不滿足步驟S52、S53這兩個判斷中的任何一個(步驟S52 否,或步驟S53 否),則行大小決定部204將通常的應再填充的行大小決定為1行的大小。這樣的行大小決定處理結束后,再填充部206從外部存儲器231取得相應的行 (與步驟Sll中分離的地址中包含的索引相對應的行)的數(shù)據(jù),并再填充高速緩存數(shù)據(jù)存儲 部207的高速緩存數(shù)據(jù)(步驟S19)。特別是,如果再填充大小是4行(步驟S54),則再填充部206不僅對對應的行,對 索引為該行后續(xù)的3行也一起進行再填充。例如,如果在步驟Sll中分離的地址中包含的 索引是“0x280”,則再填充部206不僅將“0x280”、也將后續(xù)的“0x281” “0x283”這3行 合計4行作為再填充對象。一般來說,程序是以頁單位來使用并管理存儲器的。因此,如果與同一頁單位對應 的索引的讀次數(shù)和寫次數(shù)一致,則能夠推定為程序在做連續(xù)的(順序的)動作。因此,如果 以讀次數(shù)和寫次數(shù)的一致為條件而再填充比通常大的行大小,則可以期待該再填充的數(shù)據(jù) 在后面被使用的可能性變高(命中率變高)。使用本實施例來說明,管理對象行“0x200” “0x203”的讀次數(shù)、寫次數(shù)全部一 致(參照圖5),所以程序在做連續(xù)動作的可能性較高。因此,通過不僅對“0x280”而且對“0x281” “0U83”也進行再填充,從而再填充之后,對行“0x281” “0U83”也發(fā)生訪問 (程序參照“0x281” “0x283”),能夠提高成為高速緩存命中的概率。此外,關于某同一頁單位對應的索引,其開頭部分的索引最能體現(xiàn)程序的動作。因 此,將“0x200” “0x203”等這樣的開頭部分作為管理對象來觀察次數(shù)的一致,從而可以設 定準確地反映程序的動作的再填充大小。(補充1)以上對本實施方式進行了說明,但是本發(fā)明不限定于上述內(nèi)容,為達成本發(fā)明的 目的和與其相關聯(lián)或附隨的目的的各種實施方式也都可以實施,例如,也可以是以下的實 施方式。(1)圖9的例中,順序為判斷次數(shù)的一致之后再判斷標簽的一致,但是該順序不 限于此,也可以反過來(也可以步驟S52在步驟S53之后)。此外,步驟S53的處理為,判斷表示數(shù)據(jù)在外部存儲器231中是哪個地址的數(shù)據(jù)的 標簽彼此的一致。根據(jù)該判斷,可以排除標簽不一致而只是偶然地讀次數(shù)、寫次數(shù)一致的情 況,換言之可以排除不能鮮明地反映程序的動作的次數(shù)的一致,從而能夠對幫助決定更合 適的再填充大小做出貢獻。但是,步驟S53的處理不是必須的,也可以考慮跳過步驟S53。(2)雖然在實施方式中沒有詳細敘述,但是和通常的高速緩存技術相同,高速緩存 數(shù)據(jù)存儲部207中,也可以按照每行來管理表示數(shù)據(jù)的有效(valid)/無效(invalid)的有 效標簽、及用于保證數(shù)據(jù)的一貫性(consistency)的臟(dirty)標簽。此外,特別是管理有效標簽時,也可以是,命中/非命中判斷部205除判斷標簽的 一致以外,還以有效標簽表示有效的情況為條件來判斷為命中。(3)實施方式中,行大小決定部204在增大再填充的行大小時將行大小決定為與 管理對象行的1組中包含的行數(shù)相同的4行(圖9 步驟S54),但是不限于此。例如也可以 設為2行、8行。關鍵是,管理對象行的讀次數(shù)、寫次數(shù)一致時的行大小A如果比不一致時的行大 小B相對大(A > B),則能夠有助于行大小的優(yōu)化。(4)實施方式中,作為外部存儲器231列舉了 RAM22,但是作為外部存儲器231要 素,不限于RAM22,只要是與高速緩沖存儲器裝置10相比存儲層次(memory hierarchy)更 下位層的存儲器即可。例如,從HDD25及讀取裝置32讀入的存儲介質(zhì)31也可以用作外部 存儲器231。(5)對如何設定管理次數(shù)部203中的管理對象行進行敘述。如實施方式所示,構成 多組由索引的值連續(xù)的多個行構成的行組(line set),使行組彼此有一定間隔。該一定間 隔與程序使用的存儲器單位(存儲器中的程序的管理單位)的間隔相對應,各行組優(yōu)選設 置為,相當于存儲器單位的開頭。此外,為了高精度地推測程序的動作,雖然設置為開頭是 最好的,但是根據(jù)情況也可以使各行組位于存儲器單位的中部。管理對象行的進一步的具體例在圖10中示出。如圖10所示,如果程序使用的存儲 器單位為4千字節(jié),高速緩存行大小為32字節(jié),則以索引0x80 (1 )間隔來設置行組。然 后各行組將從索引0X000、0X080、0X100等分別后續(xù)的4行作為組。此外,被設為組的行數(shù),只要是多個(大于等于2行)即可,例如也可以是8行。(6)圖9的步驟S52的“是”,也可以是除去讀次數(shù)彼此全部為0次且寫次數(shù)彼此全部為0次的情況。理由是,如果兩者都為0次,則有時并不適合作為推測程序的動作的材 料。(7)實施方式中,將信息處理裝置1000作為PC而進行了說明,但是不限于此,也可 以是PDA (Personal Digital Assistance)及便攜電話等便攜通信終端。此外,信息處理裝 置1000可以自身作為供用戶使用的設備,也可以和各種電子設備組合在一起。(8)實施方式中,將處理器1作為CPU而進行了說明,但是不限于此,也可以是媒體 處理用或圖像處理用的處理器、DSP (Digital Signal I^rocessor)等,此外,處理器可以是 由單一的處理器構成,也可以由多個處理器構成。(9)圖2的各功能塊典型地作為處理器和外部存儲器之間存在的高速緩沖存儲器 來實現(xiàn),但是也可以是作為集成電路的LSI。它們可以分別地被單芯片化,也可以包括一 部分或者全部地被單芯片化。在此,雖然被稱為LSI,但是根據(jù)集成度的不同,有時也被稱 為IC、系統(tǒng)LSI、超級(super)LSI、特級(ultra)LSI。此外,集成電路化的方法不限于LSI, 也可以用專用電路或通用處理器來實現(xiàn)。也可以利用在LSI制造后,可編程的FPGA(Field Programmable Gate Array)、可對LSI內(nèi)部的電路單元的連接及設定進行重構的可重構處 理器(reconfigurable processer) 0進一步地,如果因半導體技術的進步或派生的其他技 術而出現(xiàn)取代LSI的集成電路化技術,當然也可以使用該技術來進行功能塊的集成化。(10)可以將由程序代碼構成的控制程序存儲在存儲介質(zhì)中,或者通過各種通信路 徑等使其流通并公布,該程序代碼用來使各種信息處理裝置的處理器、及連接于該處理器 的各種電路執(zhí)行實施方式中示出的動作等。這樣的存儲介質(zhì)包括IC卡、HDD、光盤、軟磁盤、 ROM等非暫時(non-transitory)存儲介質(zhì)。流通、公布的控制程序通過存儲于可由處理器 讀取的存儲器等中以供使用,該處理器通過執(zhí)行該控制程序來實現(xiàn)實施方式中示出的各種 功能。(11)實施方式和本補充1舉出的具體規(guī)格值(行大小,高速緩存塊大小等)不過 是一例,根據(jù)高速緩沖存儲器的結構可以適當變更。(補充2)本實施方式包括下面的形態(tài)。(1)本實施方式的高速緩沖存儲器裝置,其特征在于,具備存儲單元,存儲高速緩存數(shù)據(jù);地址提取單元,若接收到包含地址的指定在內(nèi)的訪問請求,則從該地址提取標簽 和索引;命中/失敗判斷單元,基于地址提取單元提取的標簽和索引,對上述高速緩存數(shù) 據(jù)判斷是命中還是非命中;管理單元,對由排列了各個索引的值的多個行構成的多個行組,管理構成各行組 的每行的訪問次數(shù);計數(shù)單元,在上述地址提取單元提取的索引示出上述管理單元管理的行的索引、 且由上述命中/非命中判斷單元對該索引判斷為命中時,將與該索引相對應的行的訪問次 數(shù)增加1次;確定單元,在上述地址提取單元提取的索引未示出上述管理單元管理的行的索 引、且由上述命中/失敗判斷單元對該索引判斷為失敗時,從上述管理單元管理的行之中確定與該索引相對應的行組;決定單元,構成被確定的行組的全部行各自的訪問次數(shù)如果不全部一致則將應再 填充的行大小決定為第1行大小,如果全部一致則將應再填充的行大小決定為比上述第1 行大小大的第2行大??;以及再填充單元,基于所決定的行大小,進行上述緩存數(shù)據(jù)的再填充。(2)也可以為,上述多個行組分別由索引以連續(xù)的值排列的多個行構成,上述確定 單元確定行組,該行組包含比上述地址提取單元提取的索引的值小、且為最接近的值的規(guī) 定索引。(3)也可以為,上述存儲單元存儲的高速緩存數(shù)據(jù)是,用于程序進行讀取和寫入 的、以頁單位管理的主存儲器的數(shù)據(jù),上述多個行組的每一個與上述主存儲器中的每一個頁單位一對一地對應,各行組 的開頭的索引的值是與上述主存儲器中的頁單位的開頭相對應的值。(4)也可以為,上述存儲單元將上述高速緩存數(shù)據(jù)與表示該數(shù)據(jù)在主存儲器中的 所在地的標簽賦予關系,并以行單位存儲上述高速緩存數(shù)據(jù),上述索引指定上述存儲單元 中的行,上述決定單元從上述存儲單元取得構成所確定的行組的全部行各自所對應的全部 標簽,在上述構成所確定的行組的全部行各自的訪問次數(shù)全部一致的情況下,如果取得的 全部標簽不完全一致,則將應再填充行大小決定為上述第1行大小,如果取得的全部標簽 完全一致,則將應再填充行大小決定為上述第2行大小。根據(jù)該結構,可以更可靠地推測程序的動作,決定合適的再填充大小。(5)也可以為,上述訪問請求有讀請求和寫請求2個種類,上述管理單元管理的上 述訪問次數(shù)包括讀次數(shù)和寫次數(shù),在由上述命中判斷單元判斷為命中的情況下,如果作為 該判斷的基礎的訪問請求是讀請求,則上述計數(shù)單元將對應的索引的讀次數(shù)增加1次,如 果作為該判斷的基礎的訪問請求是寫請求,則上述計數(shù)單元將對應的寫次數(shù)增加1次,在 構成被確定的行組的全部行各自的寫次數(shù)全部一致、且構成被確定的行組的全部行各自的 讀次數(shù)全部一致的情況下,上述決定單元將應再填充行大小決定為上述第2行大小,在構 成被確定的行組的全部行各自的寫次數(shù)不全部一致的情況下,或者在構成被確定的行組的 全部行各自的讀次數(shù)不全部一致的情況下,將應再填充行大小決定為上述第1行大小。(6)也可以為,若上述地址提取單元提取的索引示出上述管理單元管理的行的索 弓丨、且對該索引由上述命中/失敗判斷單元判斷為失敗,則上述計數(shù)單元將包含與上述訪 問請求中包含的索引相對應的行的讀次數(shù)和寫次數(shù)的訪問次數(shù)復位,復位之后根據(jù)訪問請 求是讀請求還是寫請求,將對應的索引的讀次數(shù)或寫次數(shù)增加1次。(7)也可以為,上述存儲單元將上述高速緩存數(shù)據(jù)與表示該數(shù)據(jù)在主存儲器中的 所在地的標簽賦予關系,并以行單位存儲上述高速緩存數(shù)據(jù),上述索引指定上述存儲單元 中的行,上述命中判斷單元從上述存儲單元所存儲的數(shù)據(jù)之中確定由上述地址提取單元提 取出的索引所對應的索引,將被與所確定的索引賦予了關系的標簽和由地址提取單元提取 的標簽相比較,如果兩個標簽一致則判斷為命中,如果不一致則判斷為失敗。(8)本發(fā)明的實施方式的高速緩沖存儲器控制方法,其特征在于,具備存儲步驟,存儲高速緩存數(shù)據(jù);地址提取步驟,若接收到包含地址的指定在內(nèi)的訪問請求,則從該地址提取標簽和索引;命中/失敗判斷步驟,基于地址提取步驟提取的標簽和索引,對上述高速緩存數(shù) 據(jù)判斷是命中還是非命中;管理步驟,對由排列了各個索引的值的多個行構成的多個行組,管理構成各行組 的每行的訪問次數(shù);計數(shù)步驟,在上述地址提取步驟提取的索引示出上述管理步驟管理的行的索引、 且由上述命中/非命中判斷步驟對該索引判斷為命中時,將與該索引相對應的行的訪問次 數(shù)增加1次;確定步驟,在上述地址提取步驟提取的索引未示出上述管理步驟管理的行的索 引、且由上述命中/失敗判斷步驟對該索引判斷為失敗時,從上述管理步驟管理的行之中 確定與該索引相對應的行組;決定步驟,構成被確定的行組的全部行各自的訪問次數(shù)如果不全部一致則將應再 填充的行大小決定為第1行大小,如果全部一致則將應再填充的行大小決定為比上述第1 行大小大的第2行大??;以及再填充步驟,基于所決定的行大小,進行上述緩存數(shù)據(jù)的再填充。(9)本實施方式的程序,使高速緩沖存儲器裝置執(zhí)行高速緩沖存儲器控制處理,其 特征在于,上述高速緩沖存儲器控制處理包括存儲步驟,存儲高速緩存數(shù)據(jù);地址提取步驟,若接收到包含地址的指定在內(nèi)的訪問請求,則從該地址提取標簽 和索引;命中/失敗判斷步驟,基于地址提取步驟提取的標簽和索引,對上述高速緩存數(shù) 據(jù)判斷是命中還是非命中;管理步驟,對由排列了各個索引的值的多個行構成的多個行組,管理構成各行組 的每行的訪問次數(shù);計數(shù)步驟,在上述地址提取步驟提取的索引示出上述管理步驟管理的行的索引、 且由上述命中/非命中判斷步驟對該索引判斷為命中時,將與該索引相對應的行的訪問次 數(shù)增加1次;確定步驟,在上述地址提取步驟提取的索引未示出上述管理步驟管理的行的索 引、且由上述命中/失敗判斷步驟對該索引判斷為失敗時,從上述管理步驟管理的行之中 確定與該索引相對應的行組;決定步驟,構成被確定的行組的全部行各自的訪問次數(shù)如果不全部一致則將應再 填充的行大小決定為第1行大小,如果全部一致則將應再填充的行大小決定為比上述第1 行大小大的第2行大小;以及再填充步驟,基于所決定的行大小,進行上述緩存數(shù)據(jù)的再填充。(10)本實施方式的集成電路,其特征在于,具備存儲單元,存儲高速緩存數(shù)據(jù);地址提取單元,若接收到包含地址的指定在內(nèi)的訪問請求,則從該地址提取標簽 和索引;命中/失敗判斷單元,基于地址提取單元提取的標簽和索引,對上述高速緩存數(shù)16據(jù)判斷是命中還是非命中;管理單元,對由排列了各個索引的值的多個行構成的多個行組,管理構成各行組 的每行的訪問次數(shù);計數(shù)單元,在上述地址提取單元提取的索引示出上述管理單元管理的行的索引、 且由上述命中/非命中判斷單元對該索引判斷為命中時,將與該索引相對應的行的訪問次 數(shù)增加1次;確定單元,在上述地址提取單元提取的索引未示出上述管理單元管理的行的索 引、且由上述命中/失敗判斷單元對該索引判斷為失敗時,從上述管理單元管理的行之中 確定與該索引相對應的行組;決定單元,構成被確定的行組的全部行各自的訪問次數(shù)如果不全部一致則將應再 填充的行大小決定為第1行大小,如果全部一致則將應再填充的行大小決定為比上述第1 行大小大的第2行大小;以及再填充單元,基于所決定的行大小,進行上述緩存數(shù)據(jù)的再填充。工業(yè)上利用的可能性本發(fā)明的高速緩沖存儲器裝置具有根據(jù)程序的動作即時變更再填充的行大小的 功能,作為信息處理裝置而是有用的。此外,在信息設備、AV設備、通信設備、家用電器等嵌 入設備等的搭載計算機的設備中有用。
權利要求
1.一種高速緩沖存儲器裝置,其特征在于,具備 存儲單元,存儲高速緩存數(shù)據(jù);地址提取單元,若接收到包含地址的指定在內(nèi)的訪問請求,則從該地址提取標簽和索引;命中/失敗判斷單元,基于地址提取單元提取的標簽和索引,對所述高速緩存數(shù)據(jù)判 斷是命中還是非命中;管理單元,對由排列了各個索引的值的多個行構成的多個行組,管理構成各行組的每 行的訪問次數(shù);計數(shù)單元,在所述地址提取單元提取的索引示出所述管理單元管理的行的索引、且由 所述命中/非命中判斷單元對該索引判斷為命中時,將與該索引相對應的行的訪問次數(shù)增 加1次;確定單元,在所述地址提取單元提取的索引未示出所述管理單元管理的行的索引、且 由所述命中/失敗判斷單元對該索引判斷為失敗時,從所述管理單元管理的行之中確定與 該索引相對應的行組;決定單元,構成被確定的行組的全部行各自的訪問次數(shù)如果不全部一致則將應再填充 的行大小決定為第1行大小,如果全部一致則將應再填充的行大小決定為比所述第1行大 小大的第2行大??;以及再填充單元,基于所決定的行大小,進行所述緩存數(shù)據(jù)的再填充。
2.如權利要求1所述的高速緩沖存儲器裝置,其特征在于, 所述多個行組分別由索引以連續(xù)的值排列的多個行構成,所述確定單元確定行組,該行組包含比所述地址提取單元提取的索引的值小、且為最 接近的值的規(guī)定索引。
3.如權利要求2所述的高速緩沖存儲器裝置,其特征在于,所述存儲單元存儲的高速緩存數(shù)據(jù)是用于程序進行讀取和寫入的、以頁單位管理的主 存儲器的數(shù)據(jù),所述多個行組的每一個與所述主存儲器中的每一個頁單位一對一地對應,各行組的開 頭的索引的值是與所述主存儲器中的頁單位的開頭相對應的值。
4.如權利要求1所述的高速緩沖存儲器裝置,其特征在于,所述存儲單元將所述高速緩存數(shù)據(jù)與表示該數(shù)據(jù)在主存儲器中的所在地的標簽建立 關系,并以行單位存儲所述高速緩存數(shù)據(jù),所述索引指定所述存儲單元中的行,所述決定單元從所述存儲單元取得構成所確定的行組的全部行各自所對應的全部標 簽,在所述構成所確定的行組的全部行各自的訪問次數(shù)全部一致的情況下,如果取得的全 部標簽不全部一致,則將應再填充的行大小決定為所述第1行大小,如果取得的全部標簽 全部一致,則將應再填充的行大小決定為所述第2行大小。
5.如權利要求1所述的高速緩沖存儲器裝置,其特征在于, 所述訪問請求有讀請求和寫請求2個種類,所述管理單元管理的所述訪問次數(shù)包括讀次數(shù)和寫次數(shù),在由所述命中判斷單元判斷為命中的情況下,如果作為該判斷的基礎的訪問請求是讀 請求,則所述計數(shù)單元將對應的索引的讀次數(shù)增加1次,如果作為判斷的基礎的訪問請求是寫請求,則所述計數(shù)單元將對應的寫次數(shù)增加1次,在構成被確定的行組的全部行各自的寫次數(shù)全部一致、且構成被確定的行組的全部行 各自的讀次數(shù)全部一致的情況下,所述決定單元將應再填充的行大小決定為所述第2行大在構成被確定的行組的全部行各自的寫次數(shù)不全部一致的情況下,或者在構成被確定 的行組的全部行各自的讀次數(shù)不全部一致的情況下,所述決定單元將應再填充的行大小決 定為所述第1行大小。
6.如權利要求5所述的高速緩沖存儲器裝置,其特征在于,若所述地址提取單元提取的索引示出所述管理單元管理的行的索引、且對該索引由所 述命中/失敗判斷單元判斷為失敗,則所述計數(shù)單元將包含與所述訪問請求中包含的索引 相對應的行的讀次數(shù)和寫次數(shù)的訪問次數(shù)復位,復位之后,根據(jù)訪問請求是讀請求還是寫請求,將對應的索引的讀次數(shù)或寫次數(shù)增加1次。
7.如權利要求1所述的高速緩沖存儲器裝置,其特征在于,所述存儲單元將所述高速緩存數(shù)據(jù)與表示該數(shù)據(jù)在主存儲器中的所在地的標簽建立 關系,并以行單位存儲所述高速緩存數(shù)據(jù),所述索引指定所述存儲單元中的行,所述命中判斷單元從所述存儲單元所存儲的數(shù)據(jù)之中確定由所述地址提取單元提取 出的索引所對應的索引,將與被確定的索引建立了關系的標簽和由地址提取單元提取的標 簽相比較,如果兩個標簽一致則判斷為命中,如果不一致則判斷為失敗。
8.一種高速緩沖存儲器控制方法,其特征在于,包括 存儲步驟,存儲高速緩存數(shù)據(jù);地址提取步驟,若接收到包含地址的指定在內(nèi)的訪問請求,則從該地址提取標簽和索引;命中/失敗判斷步驟,基于地址提取步驟提取的標簽和索引,對所述高速緩存數(shù)據(jù)判 斷是命中還是非命中;管理步驟,對由排列了各個索引的值的多個行構成的多個行組,管理構成各行組的每 行的訪問次數(shù);計數(shù)步驟,在所述地址提取步驟提取的索引示出所述管理步驟管理的行的索引、且由 所述命中/非命中判斷步驟對該索引判斷為命中時,將與該索引相對應的行的訪問次數(shù)增 加1次;確定步驟,在所述地址提取步驟提取的索引未示出所述管理步驟管理的行的索引、且 由所述命中/失敗判斷步驟對該索引判斷為失敗時,從所述管理步驟管理的行之中確定與 該索引相對應的行組;決定步驟,構成被確定的行組的全部行各自的訪問次數(shù)如果不全部一致則將應再填充 的行大小決定為第1行大小,如果全部一致則將應再填充的行大小決定為比所述第1行大 小大的第2行大??;以及再填充步驟,基于所決定的行大小,進行所述緩存數(shù)據(jù)的再填充。
9.一種程序,使高速緩沖存儲器裝置執(zhí)行高速緩沖存儲器控制處理,其特征在于,所述 高速緩沖存儲器控制處理包括存儲步驟,存儲高速緩存數(shù)據(jù);地址提取步驟,若接收到包含地址的指定在內(nèi)的訪問請求,則從該地址提取標簽和索引;命中/失敗判斷步驟,基于地址提取步驟提取的標簽和索引,對所述高速緩存數(shù)據(jù)判 斷是命中還是非命中;管理步驟,對由排列了各個索引的值的多個行構成的多個行組,管理構成各行組的每 行的訪問次數(shù);計數(shù)步驟,在所述地址提取步驟提取的索引示出所述管理步驟管理的行的索引、且由 所述命中/非命中判斷步驟對該索引判斷為命中時,將與該索引相對應的行的訪問次數(shù)增 加1次;確定步驟,在所述地址提取步驟提取的索引未示出所述管理步驟管理的行的索引、且 由所述命中/失敗判斷步驟對該索引判斷為失敗時,從所述管理步驟管理的行之中確定與 該索引相對應的行組;決定步驟,構成被確定的行組的全部行各自的訪問次數(shù)如果不全部一致則將應再填充 的行大小決定為第1行大小,如果全部一致則將應再填充的行大小決定為比所述第1行大 小大的第2行大??;以及再填充步驟,基于所決定的行大小,進行所述緩存數(shù)據(jù)的再填充。
10. 一種集成電路,其特征在于,具備 存儲單元,存儲高速緩存數(shù)據(jù);地址提取單元,若接收到包含地址的指定在內(nèi)的訪問請求,則從該地址提取標簽和索引;命中/失敗判斷單元,基于地址提取單元提取的標簽和索引,對所述高速緩存數(shù)據(jù)判 斷是命中還是非命中;管理單元,對由排列了各個索引的值的多個行構成的多個行組,管理構成各行組的每 行的訪問次數(shù);計數(shù)單元,在所述地址提取單元提取的索引示出所述管理單元管理的行的索引、且由 所述命中/非命中判斷單元對該索引判斷為命中時,將與該索引相對應的行的訪問次數(shù)增 加1次;確定單元,在所述地址提取單元提取的索引未示出所述管理單元管理的行的索引、且 由所述命中/失敗判斷單元對該索引判斷為失敗時,從所述管理單元管理的行之中確定與 該索引相對應的行組;決定單元,構成被確定的行組的全部行各自的訪問次數(shù)如果不全部一致則將應再填充 的行大小決定為第1行大小,如果全部一致則將應再填充的行大小決定為比所述第1行大 小大的第2行大??;以及再填充單元,基于所決定的行大小,進行所述緩存數(shù)據(jù)的再填充。
全文摘要
一種高速緩沖存儲器裝置,在高速緩沖失敗時進行的再填充處理之前,進行決定應再填充的行大小的行大小決定處理。該行大小決定處理中,取得屬于某個組的管理對象行的讀寫次數(shù)(步驟S51),當讀次數(shù)彼此以及寫次數(shù)彼此全部一致時(步驟S52是),將應再填充行大小決定為大大小(步驟54)。不完全一致時(步驟S52否),將應再填充行大小決定為小大小(步驟55)。
文檔編號G06F12/08GK102057359SQ201080001798
公開日2011年5月11日 申請日期2010年4月7日 優(yōu)先權日2009年4月10日
發(fā)明者加藤一臣 申請人:松下電器產(chǎn)業(yè)株式會社
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
通渭县| 无锡市| 彭水| 镇康县| 广丰县| 自贡市| 朝阳区| 鹰潭市| 宜阳县| 阿克| 二连浩特市| 修武县| 西昌市| 西安市| 江源县| 海兴县| 乡宁县| 修文县| 双辽市| 达日县| 灵川县| 油尖旺区| 遵义县| 华亭县| 林口县| 肃北| 永平县| 怀安县| 罗江县| 邓州市| 湟源县| 资阳市| 绵阳市| 常熟市| 通渭县| 衡山县| 曲水县| 佛山市| 怀宁县| 当阳市| 资中县|