国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      緩存控制設(shè)備和方法

      文檔序號:6779146閱讀:119來源:國知局
      專利名稱:緩存控制設(shè)備和方法
      技術(shù)領(lǐng)域
      —個或多個示例實施例涉及緩存控制設(shè)備和方法,更具體地,涉及用于任意形狀
      塊中的存儲器數(shù)據(jù)訪問的緩存控制設(shè)備和方法。
      背景技術(shù)
      現(xiàn)在,由于多媒體技術(shù)的發(fā)展,可以以各種方式向用戶提供大量內(nèi)容。 已經(jīng)對各種視頻處理技術(shù)進行了很多研究以控制由于與提供服務(wù)的內(nèi)容的視頻
      數(shù)據(jù)編解碼器相關(guān)的大量視頻數(shù)據(jù)導(dǎo)致的過多的存儲器訪問。當視頻的數(shù)量不大時,可執(zhí)
      行實時處理。然而,由于對高分辨率視頻的需求增加,視頻的數(shù)量可能增加。因此,對視頻
      處理的存儲器訪問是關(guān)注的重點。 具體地,由于可存儲大量視頻數(shù)據(jù)的動態(tài)隨機訪問存儲器(DRAM :Dynamic Random Access Memory)的物理特性,在對DRAM中的數(shù)據(jù)進行讀取和寫入時會發(fā)生特定數(shù)量的延 遲。雖然延遲時間段取決于DRAM的類型、制造商、輸入頻率等而改變,但是其可大于幾個周期。 當訪問大量數(shù)據(jù)時,延遲可作為重要負載。通常,可使用可同時訪問所有鄰近數(shù)據(jù) 的突發(fā)訪問,從而降低初始延遲。 然而,即使應(yīng)用突發(fā)訪問,當完成單個突發(fā)操作時、或當訪問新數(shù)據(jù)時,例如,當要 訪問的行改變時,也會發(fā)生初始延遲。 也就是說,在視頻編解碼器的塊級訪問中,由于鄰近數(shù)據(jù)的數(shù)量有限制,所以每次 行發(fā)生改變都會發(fā)生延遲。

      發(fā)明內(nèi)容
      示例實施例可提供一種緩存控制設(shè)備和方法,所述設(shè)備和方法使用塊級緩存提高 圖像數(shù)據(jù)的塊級訪問效率,從而可提高緩存命中率。 示例實施例可提供一種緩存控制設(shè)備和方法,所述設(shè)備和方法可提高包括多個幀 的圖像數(shù)據(jù)的塊級訪問的效率。 根據(jù)示例實施例,可提供一種緩存控制設(shè)備。所述緩存控制設(shè)備可包括參數(shù)輸入 單元,接收與主存儲器中的塊級緩存相應(yīng)的第一參數(shù);緩存索引提取單元,從所述第一參數(shù) 提取緩存索引;緩存標簽提取單元,從所述第一參數(shù)提取緩存標簽;以及比較單元,使用所 述緩存索引和所述緩存標簽確定是否發(fā)生緩存命中。 所述第一參數(shù)可包括用于主存儲器中的塊級緩存的行信息區(qū)域和列信息區(qū)域。
      所述行信息區(qū)域可包括行緩存標簽、行緩存索引和行字節(jié)偏移,所述列信息區(qū)域 可包括列緩存標簽、列緩存索引和列字節(jié)偏移。 所述行緩存標簽和所述列緩存標簽可包括從主存儲器中的多個塊中識別第一塊 的信息。所述多個塊可與緩存器中的相同緩存行相應(yīng)。此外,行緩存索引和列緩存索引可 包括從緩存器中的多個緩存行中識別第一緩存行的信息。所述第一緩存行可存儲第一塊。
      所述行字節(jié)偏移和列字節(jié)偏移可包括從多條數(shù)據(jù)中識別第一數(shù)據(jù)的信息,所述多條數(shù)據(jù)同時存儲在緩存器中的相同緩存行中。 根據(jù)另一示例實施例,所述第一參數(shù)還可包括用于主存儲器中的幀級緩存的幀信息區(qū)域。在本示例中,所述行信息區(qū)域可包括行緩存標簽、行緩存索引和行字節(jié)偏移,所述列信息區(qū)域可包括列緩存標簽、列緩存索引和列字節(jié)偏移,所述幀信息區(qū)域可包括幀緩存標簽、幀緩存索引和幀字節(jié)偏移。 在本示例中,所述幀緩存標簽、行緩存標簽和列緩存標簽可包括從主緩存器中的多個塊中識別第一塊的信息。所述多個塊可與緩存器中的相同緩存行相應(yīng)。
      所述幀緩存索引、行緩存索引和列緩存索引可包括從緩存器中的多個緩存行中識別第一緩存行的信息,所述第一緩存行存儲第一塊。 根據(jù)另一示例實施例,所述緩存控制設(shè)備還可包括處理單元,當比較單元確定發(fā)生緩存命中時,所述處理單元提取和提供與第一參數(shù)相應(yīng)的緩存數(shù)據(jù)。 根據(jù)另一示例實施例,提供一種緩存控制方法。所述緩存控制方法包括接收與主存儲器中的塊級緩存相應(yīng)的第一參數(shù);從所述第一參數(shù)提取緩存索引和緩存標簽;以及使用所述緩存索引和所述緩存標簽確定是否發(fā)生緩存命中。 本發(fā)明的附加方面和/或優(yōu)點將在下面的描述中部分闡明,并且從描述中部分是清楚的,或者可通過實施本發(fā)明的實施例被理解。


      通過下面結(jié)合附圖進行的對實施例的描述,本發(fā)明的上述和/或其他方面和優(yōu)點將會變得更加清楚和更容易理解,其中 圖1示出根據(jù)示例實施例的緩存控制設(shè)備的配置; 圖2概念性地示出根據(jù)示例實施例的塊級緩存; 圖3示出根據(jù)示例實施例的二維(2D)緩存參數(shù); 圖4示出根據(jù)示例實施例的從緩存參數(shù)提取的緩存索引; 圖5示出根據(jù)示例實施例的從緩存參數(shù)提取的緩存標簽; 圖6概念性地示出根據(jù)示例實施例的塊級緩存; 圖7示出圖6的塊級緩存的緩存參數(shù); 圖8概念性地示出根據(jù)另一示例實施例的塊級緩存; 圖9示出圖8的塊級緩存的緩存參數(shù); 圖10示出根據(jù)另一示例實施例的緩存參數(shù); 圖11概念性地示出根據(jù)示例實施例的塊級緩存和幀級緩存; 圖12示出圖11的塊級緩存和幀級緩存的緩存參數(shù);以及 圖13示出根據(jù)示例實施例的緩存控制方法的流程圖。
      具體實施例方式
      現(xiàn)在將詳細描述示例實施例,其示例在附圖中示出,其中,相同的標號始終表示相同的部件。下面通過參照附圖來描述這些示例實施例以解釋本發(fā)明的公開。
      圖1示出根據(jù)示例實施例的緩存控制設(shè)備100的配置。
      參數(shù)輸入單元110可從中央處理單元(CPU)接收第一參數(shù)。所述第一參數(shù)可包括 關(guān)于將由CPU訪問的數(shù)據(jù)的信息。根據(jù)示例實施例,所述第一參數(shù)可與將參照圖3和圖10 詳細描述的二維(2D)塊緩存或包括幀的三維(3D)塊緩存相應(yīng)。 緩存索引提取單元120可從第一參數(shù)提取Y緩存索引和X緩存索引。此外,當?shù)?一參數(shù)與3D塊緩存相應(yīng)時,緩存索引提取單元120可提取幀緩存索引。在此示例中,可將 第一參數(shù)的預(yù)定部分提取為Y緩存索引或X緩存索引。 緩存標簽提取單元130可從第一參數(shù)提取Y緩存標簽和X緩存標簽。此夕卜,當?shù)?br> 一參數(shù)與3D塊緩存相應(yīng)時,緩存標簽提取單元130可提取幀緩存標簽。 后面將參照圖4和圖5詳細描述緩存索引提取單元120和緩存標簽提取單元130
      的操作。 比較單元140將在緩存器的多個緩存行中與從第一參數(shù)提取的緩存索引相應(yīng)的 緩存行中存儲的緩存標簽信息與提取的第一參數(shù)的緩存標簽進行比較。當所有緩存標簽信 息都相同時,比較單元140可確定發(fā)生緩存命中,當緩存標簽信息不相同時,比較單元140 可確定發(fā)生緩存失配。 當發(fā)生緩存命中時,處理單元150可通過參照字節(jié)偏移信息從存儲在緩存行中的 數(shù)據(jù)提取與第一參數(shù)相應(yīng)的數(shù)據(jù)。當發(fā)生緩存失配時,處理單元150可向CPU報告該緩存 失配。 后面將參照圖6到圖10詳細描述比較單元140和處理單元150的操作。
      圖2概念性地示出根據(jù)示例實施例的塊級緩存。 緩存器220可臨時地存儲主存儲器210中的一部分數(shù)據(jù)。緩存器220可在數(shù)據(jù)提 取和傳輸速度方面超過主存儲器210。因此,可補償主存儲器210相對較低的提取和傳輸速 度,從而可提高命令處理速度。 然而,通常緩存器220的單位容量成本會高于主存儲器210的單位容量成本。因 此,將主存儲器210中的數(shù)據(jù)存儲在緩存器220中的方法可影響命令處理的效率。
      也就是說,當"緩存命中"(即,要被訪問的數(shù)據(jù)存儲在緩存器220中的狀態(tài))的概 率增加時,可提高處理的效率。因此,很多關(guān)于緩存控制的研究集中在提高緩存命中(即, 將由緩存系統(tǒng)訪問的數(shù)據(jù)被存儲在緩存器220中的概率)和降低將由緩存系統(tǒng)訪問的數(shù)據(jù) 未被存儲在緩存器220中的概率(以下,稱為"緩存失配")。 主存儲器210的大小相對較大,然而緩存器220的大小相對較小。因此,可將主存 儲器210劃分為多個部分,并可將一些部分存儲在緩存器220中。 根據(jù)行緩存方案,可將緩存器220劃分為多個緩存行221、222等,可將主存儲器 210的一部分數(shù)據(jù)存儲在多個緩存行221、222等中。在本示例中,可被存儲在緩存器220中 的單個緩存行中的數(shù)據(jù)可以是主存儲器210的一個或多個行線。 例如,可將存儲在主存儲器210中的數(shù)據(jù)劃分為行,并將存儲在區(qū)域201中的數(shù)據(jù) 存儲在緩存器220的緩存行221 、222等中的任意一行中。 然而,雖然可將行緩存方案應(yīng)用到可被同時訪問的數(shù)據(jù)存在于相同行的應(yīng)用中, 但是行緩存方案對可被同時訪問的數(shù)據(jù)被存儲在預(yù)定塊(諸如主存儲器210中的空間相鄰 塊)中的應(yīng)用不合適。 根據(jù)示例實施例,主存儲器210中的被設(shè)置為與緩存器220的相同緩存行相應(yīng)的數(shù)據(jù)可相對于行線具有任意的塊單元。 具體地,在行緩存方案中,緩存器220的單個緩存行中存儲的數(shù)據(jù)是主存儲器210的一個或多個行的數(shù)據(jù)(例如,區(qū)域201的數(shù)據(jù))。然而,根據(jù)示例實施例,將被存儲在單個緩存行中的數(shù)據(jù)單元可被確定為2D塊(諸如第一塊211)。每個2D塊可具有大小為2m比特(或字節(jié))的列和2n比特(或字節(jié))的行。這里,m和n可以是自然數(shù)。
      此外,如上所述,由于主存儲器210的大小大于緩存器220的大小,可控制將主存儲器210的多個塊的部分與緩存器220的相同緩存行相應(yīng)。 根據(jù)示例實施例,2D塊的第一塊211和第二塊212可分別與緩存行(0) 221和緩存行(1)222相應(yīng)。 此外,第一塊211和塊213可與緩存行(0)221相應(yīng)。在本示例中,當將存儲在第一塊211中的數(shù)據(jù)存儲在緩存行(0)221時,存儲在塊213中的數(shù)據(jù)不可存儲在緩存行(0)221中。 相似地,第二塊212和塊214可與緩存行(1)222相應(yīng)。在本示例中,當將存儲在第二塊212中的數(shù)據(jù)存儲在緩存行(1)222時,存儲在塊214中的數(shù)據(jù)不可存儲在緩存行(1)222中。 圖3示出根據(jù)示例實施例的2D緩存參數(shù)。 根據(jù)示例實施例,由圖1的參數(shù)輸入單元110從系統(tǒng)接收的第一參數(shù)300可包括
      行信息區(qū)域310和列信息區(qū)域320。以下,"Y"可指示行,"X"可指示列。 Y信息區(qū)域310可包括Y緩存標簽311、 Y緩存索引312和Y字節(jié)偏移313。 X信
      息區(qū)域320可包括X緩存標簽321、X緩存索引322和X字節(jié)偏移323。 根據(jù)示例實施例,可由圖1的緩存標簽提取單元130從第一參數(shù)300提取Y緩存
      標簽311和X緩存標簽321。此外,可由圖1的緩存索引提取單元120從第一參數(shù)300提取
      Y緩存索引312和X緩存索引322。 Y緩存標簽311和X緩存標簽321可包括從主存儲器中的多個塊中識別第一塊的信息,其中所述第一塊與緩存器中的緩存行相應(yīng)。在本示例中,第一塊可以是當前將要被訪問的塊。例如,Y緩存標簽311和X緩存標簽321可包括在主存儲器210中從與圖2的緩存器220的緩存行(0)221相應(yīng)的第一塊211和塊213中指示第一塊的信息。也就是說,Y緩存標簽和X緩存標簽可包括從與緩存器中的相同緩存行相應(yīng)的多個塊中識別將被訪問的第一塊的信息。在本示例中,與相同緩存行相應(yīng)的多個塊可具有相同的緩存索引信息。
      此外,Y緩存索引312和X緩存索引322可包括從緩存器220中的多個緩存行中識別緩存行的信息。在本示例中,緩存行可與包括通過第一參數(shù)300將要被訪問的數(shù)據(jù)的塊相應(yīng)。 此外,Y字節(jié)偏移313和X字節(jié)偏移323可包括識別通過第一參數(shù)300將要被訪問
      的數(shù)據(jù)的信息。根據(jù)示例實施例,關(guān)于Y字節(jié)偏移313和X字節(jié)偏移323的信息可不用于
      確定緩存命中或緩存失配。在緩存命中中,可將關(guān)于Y字節(jié)偏移313和X字節(jié)偏移323的
      信息用于識別存儲數(shù)據(jù)的精確位置,所述數(shù)據(jù)將要通過第一參數(shù)300被訪問。 圖4示出根據(jù)示例實施例的從緩存參數(shù)提取的緩存索引400。 根據(jù)示例實施例,緩存索引提取單元120可從第一參數(shù)提取Y緩存索引410和X
      緩存索引420。
      參照圖3,可將第一參數(shù)300劃分為Y信息區(qū)域310和X信息區(qū)域320。此外,Y緩存索引312和X緩存索引322可分別被包括在Y信息區(qū)域310和X信息區(qū)域320中。在本示例中,緩存索引提取單元120可從第一參數(shù)300中的預(yù)定位置提取比特作為緩存索引。
      雖然Y信息區(qū)域310和X信息區(qū)域320如圖3所示被配置,但是Y信息區(qū)域310和X信息區(qū)域320的配置(即,緩存標簽、緩存索引和字節(jié)偏移)可變。例如,可將Y緩存索引與X緩存索引相鄰放置。 圖5示出根據(jù)示例實施例的從緩存參數(shù)提取的緩存標簽500。 參照圖3,Y緩存標簽311和X緩存標簽321可分別被包括在Y信息區(qū)域310和X
      信息區(qū)域320中。在本示例中,緩存標簽提取單元130可提取第一參數(shù)300中的預(yù)定位置
      的比特作為緩存標簽。 此外,雖然Y信息區(qū)域310和X信息區(qū)域320如圖3所示被配置,但是Y信息區(qū)域310和X信息區(qū)域320的配置可變。如圖5所示,可在提取前將Y緩存標簽510與X緩存標簽520彼此相鄰放置。 圖6概念性地示出根據(jù)示例實施例的塊級緩存。 可將主存儲器600劃分為128塊。具體地,可將主存儲器600在垂直方向上劃分為8塊,水平方向上劃分為16塊。單個塊可具有能存儲在緩存器(未示出)的單個緩存行中的大小。此外,緩存器可具有從緩存行0到緩存行15的16個緩存行。
      單個塊可具有水平方向2m比特(或字節(jié))和垂直方向2n比特(或字節(jié))的大小。
      例如,當m和n都是4時,單個塊可包括256比特(或字節(jié))的單元數(shù)據(jù)。
      在本示例中,由于主存儲器600包括128個塊,所以主存儲器600可具有能存儲32768比特(或字節(jié))的單元數(shù)據(jù)的大小。此外,由于緩存器可存儲16塊數(shù)據(jù),所以緩存器可具有能存儲4096比特(或字節(jié))的單元數(shù)據(jù)的大小。 雖然主存儲器600如圖6所示被配置,但是主存儲器600不限于上述示例。
      在主存儲器600的多個塊的每一個中指定的數(shù)字可指示可存儲每個塊的緩存索引。 當從CPU接收到與訪問數(shù)據(jù)611的訪問命令相關(guān)的第一參數(shù)時,緩存控制設(shè)備100可確定塊610是否存儲在緩存器中,從而可確定發(fā)生緩存命中還是緩存失配。
      將參照圖7詳細描述與數(shù)據(jù)611的訪問命令相關(guān)的第一參數(shù)。
      圖7示出圖6的塊級緩存的第一參數(shù)。 主存儲器600可包括128個塊。128個塊的16個塊的數(shù)據(jù)可被同時存儲在緩存器中。 此外,具有相同緩存索引的塊可同時存儲在緩存器中。因此,當塊611的數(shù)據(jù)被存儲在緩存器的緩存行11中時,具有緩存索引"ll"的剩余15個塊的數(shù)據(jù)不能被存儲在緩存器中。 以下,可假設(shè)數(shù)據(jù)611位于垂直方向的第二位置和水平方向的第二位置。
      根據(jù)現(xiàn)有的行緩存方案,單個緩存行在垂直方向可存儲一比特且在水平方向可存儲2m*2n = 2(m+n)比特(或字節(jié))。在本示例中,因為用緩存器的緩存行的數(shù)字"16"除數(shù)據(jù)611的行編號"17"得到的余數(shù)可以是1,所以與數(shù)據(jù)611的訪問命令相關(guān)的包括在地址中的緩存索引可以是"0001"。
      此夕卜,由于數(shù)據(jù)611可以在具有緩存索引"0001"的8個行中的第二行,所以包括在地址中的緩存標簽可以是"001"。 由于數(shù)據(jù)611可以是緩存索引為"0001"和緩存標簽是"001"的行中的256條數(shù)據(jù)的數(shù)據(jù)的第50條,所以字節(jié)偏移可以是"00110001"。 因此,根據(jù)現(xiàn)有行緩存方案,當接收到15比特地址"001000100110001"(基于緩存
      標簽-緩存索引-字節(jié)偏移的順序)時,緩存控制設(shè)備ioo可確定緩存索引是"oooi"和緩
      存標簽是"001"的行數(shù)據(jù)是否存儲在緩存器中。當所述行數(shù)據(jù)存儲在緩存器中時,緩存控制設(shè)備100可確定發(fā)生緩存命中,并且提取具有"00110001"的字節(jié)偏移的數(shù)據(jù)。
      然而,根據(jù)示例實施例,由于可在緩存器中執(zhí)行塊級緩存,所以當塊610的數(shù)據(jù)存儲在緩存器中時,發(fā)生關(guān)于數(shù)據(jù)611的緩存命中。 根據(jù)示例實施例,數(shù)據(jù)611的訪問命令可與第一參數(shù)700 —起接收。 參照圖6,可在垂直方向每兩行和水平方向每八列重復(fù)緩存索引。因此,Y緩存索
      引可具有1比特,X緩存索引可具有3比特。塊610可在上述模式中與垂直方向的第二塊
      和水平方向的第四塊相應(yīng),從而Y緩存索引可以是"l", X緩存索引可以是"011"。 此外,塊610可與垂直方向的四塊的第一塊和水平方向的兩塊的第一塊相應(yīng),并
      且與緩存行11相應(yīng)。因此,Y緩存標簽可以是"OO", X緩存標簽可以是"O"。 此外,由于數(shù)據(jù)611可以是塊610中垂直方向的第二位置和水平方向的第二位置,
      所以Y字節(jié)偏移可以是"0001 ",X字節(jié)偏移也可以是"0001"。 因此,當由參數(shù)輸入單元110接收到與數(shù)據(jù)611的訪問命令相應(yīng)的第一參數(shù)700時,緩存索引提取單元120可提取Y緩存索引"l"和X緩存索引"011",緩存標簽提取單元130可提取Y緩存標簽"00"和X緩存標簽"0"。 此外,比較單元140可讀取存儲在緩存行11中的數(shù)據(jù)的緩存標簽,所述緩存行11與提取的Y緩存索引是"1"和提取的X緩存索引是"011"的塊610相應(yīng)。此外,當比較單元140將緩存行11的Y緩存標簽與第一參數(shù)700的Y緩存標簽"OO"進行比較并確定它們彼此相同,并且將緩存行11的X緩存標簽與第一參數(shù)700的X緩存標簽"O"進行比較并確定它們彼此相同時,可確定發(fā)生緩存命中。 在本示例中,處理單元150可提取Y字節(jié)偏移和X字節(jié)偏移都是"0001"的數(shù)據(jù)作為數(shù)據(jù)611。 作為緩存標簽的比較結(jié)果,當Y緩存標簽或X緩存標簽不相同時,比較單元140可確定發(fā)生緩存失配。 圖8概念性地示出根據(jù)另一示例實施例的塊級緩存。 可將主存儲器800劃分為128塊。具體地,可將主存儲器800在垂直方向上劃分為8塊,水平方向上劃分為16塊(與圖6的示例相同)。主存儲器800的單個塊可具有水平方向2m比特(或字節(jié))和垂直方向2n比特(或字節(jié))的大小。例如,當m禾P n都是四時,單個塊可包括256比特(或字節(jié))的單元數(shù)據(jù)。 雖然將圖8中的主存儲器800配置為與圖6中的主存儲器600相同,但是確定塊級緩存的緩存索引的操作可不同于圖6。 根據(jù)示例實施例,主存儲器800中可存在分別在垂直方向和水平方向具有相同緩存索引的兩個塊和四個塊。因此,這里描述的緩存標簽和緩存索引的配置可不同于參照圖6所述的緩存標簽和緩存索引的配置。 當接收到與數(shù)據(jù)811的訪問命令相關(guān)的第一參數(shù)時,將參照圖9詳細描述緩存控
      制設(shè)備ioo的操作。 圖9示出圖8的塊級緩存的第一參數(shù)。 根據(jù)示例實施例,可假設(shè)數(shù)據(jù)811位于塊810的垂直方向的第二位置和水平方向的第二位置。 根據(jù)現(xiàn)有的行緩存方案,包括在與數(shù)據(jù)811的訪問命令相關(guān)的地址中的緩存索引可以是"0001"、緩存標簽可以是"001"(與參照圖7所述的示例相似)。此外,字節(jié)偏移可以是"00110001"。 根據(jù)示例實施例,數(shù)據(jù)811的訪問命令可與第一參數(shù)900 —起接收。 參照圖8,可在垂直方向每四行和水平方向每四列重復(fù)緩存索引。因此,Y緩存索
      引可具有兩比特,X緩存索引也可具有兩比特。塊810可在上述模式中與垂直方向的第二
      塊和水平方向的第四塊相應(yīng),從而Y緩存索引可以是"01",X緩存索引可以是"11"。 此外,塊810可與垂直方向的兩塊中的第一塊和水平方向的四塊中的第一塊相
      應(yīng),并且與緩存行7相應(yīng)。因此,Y緩存標簽可以是"0", X緩存標簽可以是"00"。 此外,由于數(shù)據(jù)811可以是塊810中垂直方向的第二位置和水平方向的第二位置,
      所以Y字節(jié)偏移可以是"0001 ",X字節(jié)偏移可以是"0001"。 因此,當由參數(shù)輸入單元110接收到與數(shù)據(jù)811的訪問命令相應(yīng)的第一參數(shù)900時,緩存索引提取單元120可提取Y緩存索引"01"和X緩存索引"11",緩存標簽提取單元130可提取Y緩存標簽"0"和X緩存標簽"00"。 此夕卜,比較單元140可讀取存儲在緩存行7中的數(shù)據(jù)的緩存標簽,所述緩存行7與提取的Y緩存索引是"01"和提取的X緩存索引是"11"的塊810相應(yīng)。此外,當比較單元140將緩存行7的Y緩存標簽與第一參數(shù)900的Y緩存標簽"O"進行比較并確定它們彼此相同,并且將緩存行7的X緩存標簽與第一參數(shù)900的X緩存標簽"OO"進行比較并確定它們彼此相同時,可確定發(fā)生緩存命中。 在本示例中,處理單元150可提取Y字節(jié)偏移和X字節(jié)偏移都是"0001"的數(shù)據(jù)作為數(shù)據(jù)811。 作為緩存標簽的比較結(jié)果,當Y緩存標簽或X緩存標簽不相同時,比較單元140可確定發(fā)生緩存失配。 圖10示出根據(jù)另一示例實施例的第一參數(shù)。 圖像數(shù)據(jù)可包括多個幀。此外,用于圖像數(shù)據(jù)處理的數(shù)據(jù)提取會需要對多個幀的塊數(shù)據(jù)的訪問。 因此,當多個幀的數(shù)據(jù)以塊的形式或作為3D數(shù)據(jù)被存儲在緩存器的緩存行中時,可提高緩存命中的概率。3D數(shù)據(jù)可以是塊集合。 在本示例中,第一參數(shù)1000可與訪問數(shù)據(jù)的訪問命令一起接收。第一參數(shù)1000可包括幀信息區(qū)域1010、 Y信息區(qū)域1020和X信息區(qū)域1030。 幀信息區(qū)域1010可包括幀緩存標簽1011、幀緩存索引1012和幀字節(jié)偏移1013。Y信息區(qū)域1020可包括Y緩存標簽1021、 Y緩存索引1022和Y字節(jié)偏移1023。 X信息區(qū)域1030可包括X緩存標簽1031、 X緩存索引1032和X字節(jié)偏移1033。
      緩存標簽、緩存索引和字節(jié)偏移的每一個的概念可被理解為參照圖3描述的從2D 緩存參數(shù)擴展的3D緩存參數(shù)。 將參照圖11詳細描述包括幀信息區(qū)域1010的第一參數(shù)1000。 圖11概念性地示出根據(jù)示例實施例的塊級緩存和幀級緩存。 可將主存儲器1100劃分為256塊。具體地,可將主存儲器1100在垂直方向上劃
      分為16塊,水平方向上劃分為16塊。主存儲器1100的單個塊可具有水平方向2m比特(或
      字節(jié))和垂直方向2n比特(或字節(jié))的大小。例如,當m和n都是四時,單個塊可包括256
      比特(或字節(jié))的單元數(shù)據(jù)。 根據(jù)示例實施例,可將與多個幀相應(yīng)的數(shù)據(jù)存儲在緩存器中。例如,可將與幀0相 應(yīng)的數(shù)據(jù)塊存儲在緩存器中的緩存行0到緩存行7。此外,可將與幀1 (可以是幀0的鄰近 幀)相應(yīng)的數(shù)據(jù)塊存儲在緩存器中的緩存行8到緩存行15。 將參照圖12詳細描述當主存儲器1100中的塊1110的數(shù)據(jù)1111的提取命令與第
      一參數(shù)一起接收時緩存控制設(shè)備100的操作。 圖12示出圖11的塊級緩存和幀級緩存的緩存參數(shù)。 根據(jù)示例實施例,可假設(shè)數(shù)據(jù)1111位于塊1110的垂直方向的第二位置和水平方 向的第二位置。 根據(jù)現(xiàn)有的行緩存方案,由于數(shù)據(jù)1111可與16個緩存行中的第二緩存行相應(yīng),所 以包括在地址中的緩存索引可以是"0001"。此外,由于數(shù)據(jù)1111可被包括在主存儲器1100 中的具有緩存索引是"0001"的16個數(shù)據(jù)行中的第二行,所以包括在地址中的緩存標簽可 以是"0001"。此外,與數(shù)據(jù)1111相應(yīng)的字節(jié)偏移可以是"00110001"。因此,與數(shù)據(jù)llll 的訪問命令相應(yīng)的地址可以是基于緩存標簽、緩存索引和字節(jié)偏移的順序的16比特地址 "0001000100110001"。 然而,根據(jù)示例實施例,數(shù)據(jù)1111的訪問命令可與第一參數(shù)1200 —起接收。
      參照圖11,可在垂直方向每兩行和水平方向每四列重復(fù)緩存索引。此外,可每兩幀 重復(fù)緩存索引。因此,幀緩存索引、Y緩存索引和X緩存索引可分別具有一比特、一比特和 兩比特。塊1110可與第一幀(S卩,幀0)相應(yīng)。此外,塊1110可在上述模式中與垂直方向 的第二塊和水平方向的第四塊相應(yīng)。因此,幀緩存索引可以是"0"、Y緩存索引可以是"1", X緩存索引可以是"ll"。 此外,塊1110可以是幀0中的垂直方向中的兩塊中的第一塊和水平方向中的四塊 中的第一塊,并且與緩存行7相應(yīng)。這里,幀0可以是與相同緩存行相應(yīng)的幀0和幀2中的 第一幀。因此,幀緩存標簽、Y緩存標簽和X緩存標簽可分別是"0"、"0"和"00"。
      此外,由于數(shù)據(jù)1111可以是塊1110中垂直方向的第二位置和水平方向的第二位 置,所以Y字節(jié)偏移可以是"0001 ",X字節(jié)偏移也可以是"0001"。 因此,當由參數(shù)輸入單元110接收到與數(shù)據(jù)1111的訪問命令相應(yīng)的第一參數(shù)1200 時,緩存索引提取單元120可提取幀緩存索引"0"、 Y緩存索引"1"和X緩存索引"11",緩 存標簽提取單元130可提取幀緩存標簽"0"、 Y緩存標簽"0"和X緩存標簽"00"。
      此外,比較單元140可讀取存儲在緩存行7中的數(shù)據(jù)的緩存標簽,所述緩存行7與 提取的幀緩存索引是"0"、提取的Y緩存索引是"1"和提取的X緩存索引是"11"的塊1110 相應(yīng)。此外,當比較單元140將緩存行7的幀緩存標簽與第一參數(shù)1200的幀緩存標簽"0"進行比較并確定它們彼此相同,將緩存行7的Y緩存標簽與第一參數(shù)1200的Y緩存標簽 "O"進行比較并確定它們彼此相同,并且將緩存行7的X緩存標簽與第一參數(shù)1200的X緩 存標簽"00"進行比較并確定它們彼此相同時,可確定發(fā)生緩存命中。 在本示例中,處理單元150可從存儲在緩存行7中的數(shù)據(jù)中提取Y字節(jié)偏移和X 字節(jié)偏移都是"0001"的數(shù)據(jù)作為數(shù)據(jù)1111。 作為緩存標簽的比較結(jié)果,當幀緩存標簽、Y緩存標簽或X緩存標簽不相同時,比 較單元140可確定發(fā)生緩存失配。 圖13示出根據(jù)示例實施例的緩存控制方法的流程圖。 操作1310中,可接收第一參數(shù)。根據(jù)示例實施例,第一參數(shù)可與上面參照圖3和 圖10描述的2D塊緩存或包括幀的3D塊緩存相應(yīng)。 操作1320中,提取緩存索引和緩存標簽。根據(jù)示例實施例,當?shù)谝粎?shù)與2D塊緩 存相應(yīng)時,Y信息區(qū)域和X信息區(qū)域的特定部分的比特可被提取為緩存索引或緩存標簽。
      已經(jīng)參照圖4和圖5在上文進行了詳細描述。 操作1330中,可將提取的緩存標簽與存儲在緩存器中的與提取的緩存索引相應(yīng) 的緩存行中的緩存標簽進行比較,從而可確定是否發(fā)生緩存命中。 當緩存標簽彼此相同時,可確定發(fā)生緩存命中。在這種情況下,在操作1340中可
      通過參照字節(jié)偏移信息從存儲在緩存行中的數(shù)據(jù)提取與第一參數(shù)相應(yīng)的數(shù)據(jù)。 當確定未發(fā)生緩存命中時,在操作1350中可確定發(fā)生緩存失配。在本示例中,緩
      存控制設(shè)備可將緩存失配報告給CPU。根據(jù)另一示例實施例,可直接提取與第一參數(shù)相應(yīng)的
      數(shù)據(jù)并將其發(fā)送到CPU。此外,可更新緩存數(shù)據(jù)(即,與第一參數(shù)相應(yīng)的數(shù)據(jù))。 可將根據(jù)上述示例實施例的緩存控制方法記錄在計算機可讀介質(zhì)中,所述計算機
      可讀介質(zhì)包括執(zhí)行各種由計算機實施的操作的程序指令。所述介質(zhì)還可單獨或組合包括程
      序指令、數(shù)據(jù)文件、數(shù)據(jù)結(jié)構(gòu)等。計算機可讀介質(zhì)的示例包括磁性介質(zhì)(諸如,硬盤、軟盤
      和磁帶);光學介質(zhì)(如CD-ROM盤或DVD);磁光介質(zhì)(諸如光盤);和專門構(gòu)造以存儲和執(zhí)
      行程序指令的硬件裝置(諸如只讀存儲器(R0M)、隨機存取存儲器(RAM)、閃存等)。程序指
      令的示例包括如由匯編器產(chǎn)生的機器代碼和包含可由計算機使用解釋器執(zhí)行的更高級代
      碼的文件。所述硬件裝置可以被設(shè)置為擔當一個或多個軟件模塊以執(zhí)行上述示例實施例的
      操作,反之亦然。軟件模塊可在包括緩存控制設(shè)備或系統(tǒng)的任意處理器、通用計算機或?qū)S?br> 計算機上執(zhí)行。 雖然顯示和描述了本發(fā)明的幾個示例實施例,但是本領(lǐng)域技術(shù)人員應(yīng)該理解,在 不脫離范圍由權(quán)利要求及其等同物限定的本發(fā)明的原理和精神的情況下,可對其進行各種 改變。
      權(quán)利要求
      一種緩存控制設(shè)備,包括參數(shù)輸入單元,接收與主存儲器中的塊級緩存相應(yīng)的第一參數(shù);緩存索引提取單元,從所述第一參數(shù)提取緩存索引;緩存標簽提取單元,從所述第一參數(shù)提取緩存標簽;以及比較單元,使用所述緩存索引和所述緩存標簽確定是否發(fā)生緩存命中。
      2. 如權(quán)利要求1所述的緩存控制設(shè)備,其中,所述第一參數(shù)包括用于主存儲器中的塊 級緩存的行信息區(qū)域和列信息區(qū)域。
      3. 如權(quán)利要求2所述的緩存控制設(shè)備,其中,所述行信息區(qū)域包括行緩存標簽、行緩存 索引和行字節(jié)偏移,所述列信息區(qū)域包括列緩存標簽、列緩存索引和列 字節(jié)偏移。
      4. 如權(quán)利要求3所述的緩存控制設(shè)備,其中,所述行緩存標簽和所述列緩存標簽包括 從主存儲器中的多個塊中識別第一塊的信息,所述多個塊與緩存器中的相同緩存行相應(yīng)。
      5. 如權(quán)利要求3所述的緩存控制設(shè)備,其中,所述行緩存索引和所述列緩存索引包括 從緩存器中的多個緩存行中識別第一緩存行的信息,所述第一緩存行存儲第一塊。
      6. 如權(quán)利要求3所述的緩存控制設(shè)備,其中,所述行字節(jié)偏移和所述列字節(jié)偏移包括 從多條數(shù)據(jù)中識別第一數(shù)據(jù)的信息,所述多條數(shù)據(jù)同時存儲在緩存器中的相同緩存行中。
      7. 如權(quán)利要求2所述的緩存控制設(shè)備,其中,所述第一參數(shù)還包括用于主存儲器中的幀級緩存的幀信息區(qū)域。
      8. 如權(quán)利要求7所述的緩存控制設(shè)備,其中,所述行信息區(qū)域包括行緩存標簽、行緩存 索引和行字節(jié)偏移,所述列信息區(qū)域包括列緩存標簽、列緩存索引和列字節(jié)偏移,所述幀信 息區(qū)域包括幀緩存標簽、幀緩存索引和幀字節(jié)偏移。
      9. 如權(quán)利要求8所述的緩存控制設(shè)備,其中,所述幀緩存標簽、行緩存標簽和列緩存標 簽包括從主緩存器中的多個塊中識別第一塊的信息,所述多個塊與緩存器中的相同緩存行 相應(yīng)。
      10. 如權(quán)利要求8所述的緩存控制設(shè)備,其中,所述幀緩存索引、行緩存索引和列緩存 索引包括從緩存器中的多個緩存行中識別第一緩存行的信息,所述第一緩存行存儲第一 塊。
      11. 如權(quán)利要求l所述的緩存控制設(shè)備,還包括處理單元,當所述比較單元確定發(fā)生緩存命中時,所述處理單元提取和提供與所述第 一參數(shù)相應(yīng)的緩存數(shù)據(jù)。
      12. —種緩存控制方法,包括接收與主存儲器中的塊級緩存相應(yīng)的第一參數(shù); 從所述第一參數(shù)提取緩存索引和緩存標簽;以及 使用所述緩存索引和所述緩存標簽確定是否發(fā)生緩存命中。
      13. 如權(quán)利要求12所述的緩存控制方法,其中,所述第一參數(shù)包括用于主存儲器中的 塊級緩存的行信息區(qū)域和列信息區(qū)域。
      14. 如權(quán)利要求13所述的緩存控制方法,其中,所述行信息區(qū)域包括行緩存標簽、行緩 存索引和行字節(jié)偏移,所述列信息區(qū)域包括列緩存標簽、列緩存索引和列字節(jié)偏移。
      15. 如權(quán)利要求13所述的緩存控制方法,其中,所述行緩存索引和所述列緩存索引包 括從緩存器中的多個緩存行中識別第一緩存行的信息,所述第一緩存行存儲第一塊。
      16.如權(quán)利要求13所述的緩存控制方法,其中,所述第一參數(shù)還包括用于主存儲器中 的幀級緩存的幀信息區(qū)域。
      全文摘要
      提供一種緩存控制設(shè)備和方法。所述緩存控制設(shè)備可包括參數(shù)輸入單元,接收與主存儲器中的塊級緩存相應(yīng)的第一參數(shù);緩存索引提取單元,從所述第一參數(shù)提取緩存索引;緩存標簽提取單元,從第一參數(shù)提取緩存標簽;以及比較單元,使用所述緩存索引和緩存標簽確定是否發(fā)生緩存命中。
      文檔編號G11C11/4063GK101751993SQ200910177618
      公開日2010年6月23日 申請日期2009年9月24日 優(yōu)先權(quán)日2008年12月16日
      發(fā)明者宋準鎬, 金斗炫 申請人:三星電子株式會社
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1