国产精品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>

      用于優(yōu)化轉(zhuǎn)換后備緩沖器條目的方法及系統(tǒng)的制作方法

      文檔序號:6567417閱讀:203來源:國知局
      專利名稱:用于優(yōu)化轉(zhuǎn)換后備緩沖器條目的方法及系統(tǒng)的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明大體而言涉及轉(zhuǎn)換后備緩沖器,且更具體而言,涉及用于優(yōu)化轉(zhuǎn)換后備緩 沖器條目的方法及系統(tǒng)。
      背景技術(shù)
      當(dāng)今,很多現(xiàn)有的計(jì)算機(jī)系統(tǒng)使用虛擬存儲器。虛擬存儲器是將存儲器抽象為大 型、統(tǒng)一的虛擬存儲陣列的技術(shù),其超出處理器現(xiàn)成可用的存儲器。當(dāng)只有比較小的 物理存儲器(通常是在下文中簡稱"存儲器"的半導(dǎo)體存儲器(例如但不限于RAM或DRAM)可使用時,這種劃分允許為程序員提供大型虛擬存儲器,從而使程序員免于顧慮存儲器存儲限制。因此,可以通過將許多應(yīng)用程序的部分從較高延時的硬盤驅(qū) 動器存儲載入至較低延時的存儲器來啟動所述許多應(yīng)用程序,即使較低延時的存儲器 不夠大,無法存儲全部應(yīng)用程序。這可通過識別存儲器最近尚未使用的部分且將其復(fù) 制回至硬盤驅(qū)動器來實(shí)現(xiàn)。這釋放了存儲器中的空間以載入新的存儲器部分供較緊急 情況下使用。
      當(dāng)今,在很多處理系統(tǒng)中,中央處理單元(cpu)使用虛擬存儲器來執(zhí)行程序。在這類處理系統(tǒng)中,將虛擬地址映射到對應(yīng)的物理地址。通常,轉(zhuǎn)換后備緩沖器
      ("tlb")實(shí)施這種映射,所述轉(zhuǎn)換后備緩沖器僅僅是將最經(jīng)常用到的虛擬存儲器頁 面地址映射到其對應(yīng)的物理存儲器頁面地址的存儲器。
      通常,每一 tlb條目將存儲器中的一個頁面映射到一虛擬存儲器頁面地址。這 限制了可由每一tlb條目表示的地址的數(shù)量。由于tlb的維護(hù)需要系統(tǒng)資源,因此 需要提供用于通過將多個鄰接頁面條目合并為單個條目來優(yōu)化tlb條目的更有效率 的方法及系統(tǒng)。

      發(fā)明內(nèi)容
      本發(fā)明揭示一種處理系統(tǒng)。所述處理系統(tǒng)包括轉(zhuǎn)換后備緩沖器(tlb),其經(jīng) 配置以將虛擬存儲器的鄰接塊映射到物理存儲器,且提供指示虛擬存儲器的所述鄰接 塊的大小的大小屬性;及處理器,其經(jīng)配置以更改虛擬存儲器的所述鄰接塊及所述對 應(yīng)物理存儲器的大小,且相應(yīng)地更改所述大小屬性。
      下面揭示所述處理系統(tǒng)的另一方面。所述處理系統(tǒng)包括轉(zhuǎn)換后備緩沖器(tlb),
      其經(jīng)配置以存儲多個條目,每一條目將虛擬存儲器的鄰接塊映射到物理存儲器,且每一條目具有指示虛擬存儲器的其各自的塊的大小的大小屬性;及處理器,其經(jīng)配置以 更改用于所述條目中的一者的虛擬存儲器的所述鄰接塊及所述對應(yīng)物理存儲器的所述 大小,且其中所述處理器進(jìn)一步經(jīng)配置以更改用于所述條目中的所述一者的所述大小屬性。
      本發(fā)明揭示一種用于在轉(zhuǎn)換后備緩沖器中存儲多個條目的方法。所述方法包括 映射鄰接虛擬存儲器塊到物理存儲器,提供指示虛擬存儲器的所述鄰接塊的大小的大 小屬性;更改虛擬存儲器的所述鄰接塊及所述對應(yīng)物理存儲器的所述大??;及更改所 述大小屬性以反映虛擬存儲器的所述鄰接塊及所述對應(yīng)物理存儲器中的改變。
      下面揭示一種在轉(zhuǎn)換后備緩沖器中存儲多個條目的方法的另一方面。所述方法包 括識別虛擬存儲器的新塊;在具有與虛擬存儲器的所述新塊相鄰接的虛擬存儲器的 現(xiàn)有塊的TLB中定位條目,所述TLB條目含有虛擬存儲器的所述現(xiàn)有塊與物理存儲 器之間的映射;及將虛擬存儲器的所述新塊及現(xiàn)有塊及其對應(yīng)物理存儲器合并在所述 TLB條目中,所述虛擬存儲器的所述新塊及現(xiàn)有塊的合并進(jìn)一步包含調(diào)節(jié)大小屬性 以反映從虛擬存儲器的所述現(xiàn)有塊的大小到虛擬存儲器的合并塊大小的大小改變。
      應(yīng)了解,根據(jù)下文的詳細(xì)說明,本發(fā)明的其它實(shí)施例對所屬領(lǐng)域的技術(shù)人員將顯 而易見;其中本發(fā)明的各種實(shí)施例均以圖解說明的方式加以顯示及闡述。應(yīng)了解,本 發(fā)明能夠具有其它的、不同的實(shí)施例,且能夠在各其它方面對其幾個細(xì)節(jié)進(jìn)行修改, 此并不違背本發(fā)明的精神及范圍。因此,應(yīng)將圖式及詳細(xì)說明視為舉例說明性的,而 非限制性的。


      圖1是簡化方塊圖,其圖解說明根據(jù)本發(fā)明的用于優(yōu)化轉(zhuǎn)換后備表格的系統(tǒng);
      圖2是簡化示意圖,其顯示根據(jù)本發(fā)明的TLB條目;及
      圖3是簡化示意圖,其顯示根據(jù)本發(fā)明的供圖解說明使用的TLB條目及建議條目。
      具體實(shí)施例方式
      下文結(jié)合附圖所闡述的詳細(xì)說明意在說明本發(fā)明的各種實(shí)施例,而非意在表示本 發(fā)明僅可實(shí)施為這些實(shí)施例。此詳細(xì)說明包括具體細(xì)節(jié),其用于提供對本發(fā)明的透徹
      了解。然而,對所屬領(lǐng)域的技術(shù)人員而言,顯然無需這些具體細(xì)節(jié)也可實(shí)施本發(fā)明。 在某些例示中,以方塊圖的形式顯示各已知結(jié)構(gòu)及組件,以免淡化對本發(fā)明的說明。
      圖1是概念性方塊圖,其圖解說明數(shù)據(jù)處理系統(tǒng)100的實(shí)例。數(shù)據(jù)處理系統(tǒng)100可以是獨(dú)立的系統(tǒng),或者嵌入裝置中例如有線或無線電話、個人數(shù)字助理(PDA)、個 人計(jì)算機(jī)(PC)、膝上型計(jì)算機(jī)、數(shù)字照相機(jī)、游戲控制臺、尋呼機(jī)、調(diào)制解調(diào)器、 視頻會議設(shè)備,或任一其他合適的裝置。數(shù)據(jù)處理系統(tǒng)100可包括處理器102,例如
      6
      微處理器或其他處理實(shí)體。處理器102可用作用于運(yùn)行任一數(shù)量的應(yīng)用程序的平臺, 舉例來說,操作系統(tǒng)、網(wǎng)頁瀏覽器、電子郵件系統(tǒng)、字處理程序,以及支持視頻、電 話及諸如此類的其他軟件程序。
      處理系統(tǒng)100還可包括存儲器104,其保存處理器102實(shí)施其功能所需的程序指 令及數(shù)據(jù)。存儲器104可構(gòu)建有隨機(jī)存取存儲器("RAM")或其他合適的存儲器,且 可用作處理器的主存儲器、L2高速緩沖存儲器,或其組合。可將用于由處理器102啟 動的各種程序的程序指令自非易失性存儲裝置106(如硬盤驅(qū)動器)載入至存儲器104。
      TLB 108可用于將106 (其可出于例示目的包含非易失性存儲裝置)中的存儲器 頁面地址映射到存儲器104中對應(yīng)的頁面地址。TLB可以是相當(dāng)小的、速度高的高速 緩沖存儲器,其集成于處理器102中,但出于圖解說明的目的顯示為與處理器102分 開。當(dāng)處理器102需要對存儲器104進(jìn)行存取時,其在TLB108中搜索虛擬存儲器頁 面地址。如果存儲器102在TLB 108中找到虛擬存儲器頁面地址,則出現(xiàn)"TLB命中"。 在TLB命中中,處理器102檢索TLB 108中的對應(yīng)物理存儲器頁面且通過地址總線 110將其提供至存儲器104。處理器102隨后可對存儲器104中這個地址的內(nèi)容進(jìn)行存 取以通過數(shù)據(jù)總線112實(shí)施讀取或?qū)懭氩僮鳌?br> 假如處理器無法在TLB 108中找到虛擬存儲器頁面地址,則出現(xiàn)"TLB未命中"。 用于處理TLB未命中的各種技術(shù)在所屬技術(shù)領(lǐng)域中已眾所周知,因此本文中將不做進(jìn) 一步的論述,但除此之外還應(yīng)指出的是,處理器102可調(diào)用某些處理功能以確定其實(shí) 施其當(dāng)前操作所需的物理存儲器頁面地址。 一旦處理器確定物理存儲器頁面地址,則 其可對處理器104進(jìn)行存取,所述處理器104可能或可能不需要在存儲器104與非易 失性存儲裝置106之間傳遞程序指令。可在TLB 108中生成新的TLB條目以處理將來 對同一物理存儲器頁面地址的存取。
      處理器102可經(jīng)配置以動態(tài)地管理在單個TLB條目中可存儲的頁面的數(shù)量。如 圖2所示,在TLB 108中的每一 TLB條目200可包括虛擬存儲器頁面地址202及物理 存儲器頁面地址204。如上文所述,將虛擬存儲器頁面地址202映射到對應(yīng)于存儲器 中的頁面(未顯示)的物理存儲器頁面地址204??蔀樘摂M存儲器頁面地址202附加 大小屬性206。大小屬性206可用于指示每一TLB條目表示的頁面的數(shù)量。
      在數(shù)據(jù)處理系統(tǒng)的至少一個實(shí)施例中,處理器可經(jīng)配置以動態(tài)地調(diào)節(jié)用于給定的 TLB條目的大小屬性。這可通過多種方式來實(shí)現(xiàn)?;氐綀Dl,當(dāng)TLB未命中出現(xiàn)時, 處理器102調(diào)用某些處理功能以確定其實(shí)施其當(dāng)前操作所需的物理存儲器頁面地址。 然而,在處理器102生成新的TLB條目之前,其首先確定所建議的新條目是否與TLB 108中現(xiàn)有的條目相鄰接。如果虛擬存儲器頁面地址是鄰接的,且物理存儲器頁面地 址也是鄰接的,則認(rèn)為TLB108中的兩個條目為鄰接的。如果處理器102確定存在與 現(xiàn)有TLB條目的鄰接,則可將兩個虛擬存儲器頁面地址及兩個物理存儲器頁面地址合 并成TLB 108中的單個條目??稍黾哟笮傩?06 (見圖2)以指示虛擬存儲器頁 面地址及對應(yīng)的物理存儲器頁面地址表示存儲器104中的兩個頁面?;蛘撸绻幚砥?02確定不存在與現(xiàn)有TLB條目的鄰接,則可生成新的TLB條目。
      下文中為顯示處理器102如何優(yōu)化TLB 108中條目的圖解說明性實(shí)例。圖3顯示 TLB中的現(xiàn)有條目300及所建議的新條目302?,F(xiàn)有條目300可包括大小屬性、具有 最高有效位部分(XI)及最低有效位部分(Yl)的虛擬存儲器頁面地址、及具有最高 有效位部分(Al)及最低有效位部分(Bl)的對應(yīng)的物理存儲器頁面地址。大小屬性 經(jīng)設(shè)定以指示TLB條目表示存儲器的一個頁面。位13-31組成XI部分且位12組成 Yl部分。類似地,所建議的新條目302可包括具有最高有效位部分(X2)及最低有 效位部分(Y2)的虛擬存儲器頁面地址、及具有最高有效位部分(A2)及最低有效位 部分(B2)的對應(yīng)的物理存儲器頁面地址。應(yīng)注意的是,對于現(xiàn)有條目300及建議條 目302兩者,位O-ll均對應(yīng)于地址的偏移部分且因而并不是條目的一部分。
      處理器按如下所述確定是否可優(yōu)化現(xiàn)有條目300及建議條目302。首先,將現(xiàn)有 條目300與建議條目302的虛擬存儲器頁面地址進(jìn)行比較。如果X1=X2且Y1=Y2, 則視為TLB命中。如先前所述,處理器可隨后在TLB中檢索對應(yīng)的物理存儲器頁面 地址且將其放置于地址總線中以對存儲器進(jìn)行存取。另一方面,如果X1^X2或Yl ^Y2,則視為TLB未命中。假設(shè)處理器無法通過另一TLB條目獲得TLB命中,其調(diào) 用某些處理功能以確定對應(yīng)的物理存儲器頁面地址。然而,在生成新TLB條目之前, 將檢查建議條目302與TLB中現(xiàn)有條目的鄰接。
      在圖3所示的實(shí)例中,響應(yīng)于TLB未命中,檢查建議條目302與現(xiàn)有條目300 的鄰接性。這可通過四步驟的過程來實(shí)現(xiàn)。首先,通過比較XI與X2及Yl與Y2來 檢査虛擬存儲器頁面地址的鄰接。如果X^X2且Y1^Y2,則虛擬存儲器頁面地址去 掉一個最低有效位,且認(rèn)為在虛擬存儲器地址空間中是鄰接的。其次,通過比較Al 與A2及Bl與B2來檢査物理存儲器頁面地址的鄰接性。如果A1=A2且B1學(xué)B2,則 物理存儲器頁面地址也去掉一個最低有效位,且認(rèn)為在物理存儲器地址空間中是鄰接 的。再次,對現(xiàn)有條目及建議條目的虛擬及物理存儲器頁面地址進(jìn)行檢査以確保建議 條目的虛擬及物理存儲器頁面地址兩者均分別高于或低于現(xiàn)有條目的虛擬及物理存儲 器頁面地址。最后,在將現(xiàn)有及建議條目合并成一個較大的條目的時候,檢查所述較 大條目所覆蓋的虛擬及物理頁面地址范圍以確保兩種地址范圍均對準(zhǔn)在較大大小邊界 上。如果滿足了所有這些條件,則可將現(xiàn)有及建議條目合并成單個條目。假如用于建 議條目302的虛擬及物理存儲器頁面地址高于用于現(xiàn)有條目300的虛擬及物理存儲器 頁面地址,則可僅通過增加大小屬性來合并所述兩個條目以指示所合并的TLB條目 表示在存儲器中始于初始條目300的虛擬及物理存儲器頁面地址的兩個頁面?;蛘撸?假如用于建議條目302的虛擬及物理存儲器頁面地址低于用于現(xiàn)有條目300的虛擬及 物理存儲器頁面地址,則可通過用現(xiàn)有條目寫入建議虛擬及物理存儲器頁面地址并改 變所述大小屬性來合并所述兩個條目以指示所合并的TLB條目表示在存儲器中始于 新條目302的虛擬及物理存儲器頁面地址的兩個頁面。
      現(xiàn)將提供實(shí)例。假設(shè)現(xiàn)有條目300的虛擬存儲器頁面為4KB,開始于地址"0x0000_0000",且對應(yīng)的物理存儲器頁面是開始于地址"0x8000—0000"的4KB頁 面。如果建議條目302的虛擬存儲器頁面是開始于地址"0x0000—1000"的4KB頁面, 且對應(yīng)的物理存儲器地址是開始于地址"0x8000_1000"的4KB物理存儲器頁面,則 可將所述兩個條目合并成開始于與現(xiàn)有條目相同的地址的8KB區(qū)域。然而,如果現(xiàn)有 條目的虛擬區(qū)域開始于地址"0x0000—1000 "且其對應(yīng)物理區(qū)域開始于地址 "0x8000J000",建議條目的虛擬區(qū)域開始于地址"0x0000—2000"且其對應(yīng)物理區(qū)域 開始于地址"0x8000—2000",則無法組合現(xiàn)有及建議條目,因?yàn)樗贸龅?KB頁面將 不會開始于在8KB區(qū)域中對準(zhǔn)的邊界。
      因此,假設(shè)鄰接性檢查是令人滿意的,則將現(xiàn)有條目300中的大小屬性動態(tài)地改 變?yōu)?KB。 8KB的大小基于現(xiàn)有頁面是4KB且新頁面是4KB的事實(shí)。因此,合并或 組合新頁面及現(xiàn)有頁面將產(chǎn)生8KB頁面。如前述實(shí)例所說明,如果可在TLB中定位 與新頁面鄰接的現(xiàn)有頁面,則可僅修改用于現(xiàn)有頁面的條目且無需為用于新頁面的 TLB添加單獨(dú)的條目。
      此外,所修改的(8KB)條目可能需要在Yl及B1兩者還均未是"0"的情況下 將其均設(shè)定為"0"。實(shí)施此操作以便所修改的條目正確地反映新的8KB頁面的開始地 址(即,兩個鄰接4KB頁面中的低編號地址)。然而,應(yīng)注意的是,并不是所有實(shí)施 方案都要求這種改變?;旧希趯?KB條目轉(zhuǎn)換成8KB條目時,現(xiàn)有條目的位12 從作為虛擬頁面地址的最低有效位改變?yōu)橛行У刈鳛槠频淖罡哂行?未顯示)。偏 移用于形成用于對存儲器進(jìn)行存取的完整的物理頁面。偏移在虛擬頁面地址與物理頁 面地址之間的轉(zhuǎn)換或映射過程中并不重要。8KB (而不是4KB)條目的大小屬性指示 位12現(xiàn)己是偏移的一部分。這樣,不需要再將虛擬頁面地址的位12視為TLB條目的 一部分,且因此其無需參加用于確定匹配度的與后續(xù)地址的比較。某些實(shí)施方案可基 于大小屬性適當(dāng)且自動地在TLB條目的虛擬及物理頁面部分中忽略這種位位置。其他 實(shí)施方案可能需要這些位位置中的一者或另一者,或兩者以反映低編號頁面地址(換 句話說,當(dāng)所述位位置為0時)。
      基于本文提供的揭示內(nèi)容及教示,應(yīng)了解,可將前述內(nèi)容進(jìn)行擴(kuò)展以適應(yīng)較大頁 面大小的合并。用所修改的條目300做進(jìn)一步圖解說明,條目300現(xiàn)參考8KB頁面(因 為己將兩(2)個鄰接的4KB頁面合并)。處理器102 (見圖1)現(xiàn)可進(jìn)一步經(jīng)配置以 搜索在TLB 108中參考與由所修改的條目300參考的8K頁面相鄰接的另一8K頁面 .的條目。如果確定有另一8K頁面與由所修改的條目300參考的8K頁面相鄰接,則兩 個現(xiàn)有條目中的一者的大小屬性現(xiàn)可經(jīng)修改以反映此條目的頁面大小是16K且可消除 剩下的那個條目。結(jié)果,與兩(2)個不同條目參考兩(2)個鄰接的8K頁面相反的 是,現(xiàn)在一單個條目參考一16K頁面。進(jìn)一步擴(kuò)展前文所述,可將與新合并的16K頁 面相鄰接的另一現(xiàn)有16K頁面進(jìn)行合并以形成由單個條目參考的32K頁面??蓪⑶拔?所述進(jìn)行擴(kuò)展以將頁面合并成不斷增大的頁面大小。
      視情況,處理器102 (見圖1)也可經(jīng)配置以合并參考具有較小頁面大小的頁面
      的條目以生成參考具有所期望頁面大小的頁面的更新條目。隨后可將更新條目與參考 具有相同的所期望頁面大小的頁面的另一條目進(jìn)行合并。例如,再次用所修改的條目 300做圖解說明,條目300現(xiàn)參考8K頁面。處理器102 (見圖l)可首先合并兩(2) 個鄰接的4K頁面以生成由單個條目參考的8KB頁面?,F(xiàn)可將新生成的8KB頁面進(jìn)一 步與由條目300參考的8KB頁面進(jìn)行合并以形成由單個條目參考的一 16KB頁面。類 似地,處理器102可隨后合并四(4)個鄰接的4KB頁面以形成由另一條目參考的另 一 16KB頁面。然后,可將新形成的16KB頁面與先前形成的16KB頁面合并以形成 32KB頁面?;诒疚乃峁┑慕沂緝?nèi)容及教示,所屬領(lǐng)域的一般技術(shù)人員將了解如 何擴(kuò)展前文所述的內(nèi)容以根據(jù)本發(fā)明優(yōu)化TLB 108中的條目以覆蓋其他較大的頁面大 小。
      結(jié)合本文所揭示的實(shí)施例所闡述的各種圖解說明性邏輯塊、模塊、電路、元件及 /或組件可通過通用處理器、數(shù)字信號處理器(DSP)、專用集成電路(ASIC)、現(xiàn)場可 編程門陣列(FPGA)或其它可編程邏輯組件、離散門或晶體管邏輯、離散硬件組件、 或設(shè)計(jì)用于實(shí)施本文所述功能的其任何組合來構(gòu)建或?qū)嵤?。通用處理器可以是微處?器,或者,處理器也可以是任何常規(guī)處理器、控制器、微控制器或狀態(tài)機(jī)。處理器也 可構(gòu)建為計(jì)算組件的組合,例如DSP與微處理器的組合、若干個微處理器的組合、一 個或多個微處理器與DSP核心的組合、或任何其他這類配置。
      結(jié)合本文所揭示實(shí)施例所闡述的方法或算法可以以控制邏輯、編程指令或其他指 示的形式直接實(shí)施于硬件中、可由處理器執(zhí)行的軟件模塊中,或兩者的組合中。軟件 模塊可常駐于RAM存儲器、閃速存儲器、ROM存儲器、EPROM存儲器、EEPROM 存儲器、寄存器、硬盤、可移動磁盤、CD-ROM、或現(xiàn)有技術(shù)中已知的任一其它形式 的存儲媒體中。存儲媒體可耦合至處理器,以便處理器可自存儲媒體讀取信息或向存 儲媒體寫入信息?;蛘撸龃鎯γ襟w可以是處理器的組成部分。
      本文提供先前所述所揭示實(shí)施例的說明意在使任何所屬領(lǐng)域的技術(shù)人員都能夠 制作或使用本發(fā)明。所屬領(lǐng)域的技術(shù)人員將易于制作出這些實(shí)施例的各種修改,且本 文所界定的一般原理也可適用于其他實(shí)施例,此并不違背本發(fā)明的精神或范圍。因此, 本發(fā)明并非意在限定為本文所顯示的實(shí)施例,而是意在賦予其與權(quán)利要求書相一致的 全部范圍,其中除非明確指出,否則,以單數(shù)形式參考的元件并非意在表示"一個或 只有一個",而是"一個或多個"。所有為所述領(lǐng)域的一般技術(shù)人員所了解或此后將了 解的在本揭示內(nèi)容中通篇所述各實(shí)施例的元件的結(jié)構(gòu)及功能等效物均明確地以參考方 式并入本文中并意欲涵蓋于權(quán)利要求書的范圍內(nèi)。此外,本文所揭示的內(nèi)容均并非意 在奉獻(xiàn)給大眾,無論是否在權(quán)利要求書中明確地陳述此揭示內(nèi)容。權(quán)利要求書的要素 均不依據(jù)35 U.S.C. § 112第六段的規(guī)定加以解釋,除非使用短語"用于…的裝置"明 確描述此要素,或在方法項(xiàng)中使用短語"用于…的步驟"描述此要素。
      權(quán)利要求
      1、一種處理系統(tǒng),其包含轉(zhuǎn)換后備緩沖器(TLB),其經(jīng)配置以將虛擬存儲器的鄰接塊映射至物理存儲器,且提供指示虛擬存儲器的所述鄰接塊的大小的大小屬性;及處理器,其經(jīng)配置以更改虛擬存儲器的所述鄰接塊及對應(yīng)物理存儲器的大小,且相應(yīng)地更改所述大小屬性。
      2、 如權(quán)利要求1所述的處理系統(tǒng),其中所述處理器包括所述TLB。
      3、 如權(quán)利要求1所述的處理系統(tǒng),其中所述處理器進(jìn)一步經(jīng)配置以通過將虛擬 存儲器的第一塊與虛擬存儲器的第二塊合并來更改虛擬存儲器的所述鄰接塊的大小。
      4、 如權(quán)利要求3所述的處理系統(tǒng),其中所述處理器進(jìn)一步經(jīng)配置以響應(yīng)于確定虛擬存儲器的所述第一及第二塊兩者是鄰接的且物理存儲器的對應(yīng)者也是鄰接的而合并虛擬存儲器的所述第一及第二塊。
      5.如權(quán)利要求4所述的處理系統(tǒng),其中所處理器進(jìn)一步經(jīng)配置以通過將虛擬存儲器的所述第一塊的頁面地址映射到物理存儲器的其對應(yīng)塊的頁面地址而將虛擬存 儲器的所述第一及第二塊映射到物理存儲器的其對應(yīng)塊,虛擬存儲器的所述第一塊的 頁面地址低于虛擬存儲器的所述第二塊的頁面地址。
      6、 如權(quán)利要求5所述的處理系統(tǒng),其中所述處理器進(jìn)一步經(jīng)配置以通過更改所 述大小屬性但不改變所述頁面地址映射來合并虛擬存儲器的所述第一及第二塊。
      7、 如權(quán)利要求5所述的處理系統(tǒng),其中所述處理器進(jìn)一步經(jīng)配置以通過更改所 述地址屬性且將虛擬存儲器的所述第二塊的頁面地址改變?yōu)樘摂M存儲器的所述第一塊 的頁面地址且相應(yīng)地改變物理存儲器的所述塊的頁面地址來合并虛擬存儲器的所述第 一及第二塊。
      8、 一種處理系統(tǒng),其包含轉(zhuǎn)換后備緩沖器(TLB),其經(jīng)配置以存儲多個條目,所述條目中的每一者將虛 擬存儲器的鄰接塊映射到物理存儲器,且所述條目中的每一者具有指示虛擬存儲器的 其各自塊的大小的大小屬性;及處理器,其經(jīng)配置以更改虛擬存儲器中用于所述條目中的一者的所述鄰接塊及對 應(yīng)物理存儲器的大小,且其中所述處理器進(jìn)一步經(jīng)配置以更改用于所述條目中的所述 一者的所述大小屬性。
      9、 如權(quán)利要求8所述的處理系統(tǒng),其中所述處理器包括所述TLB。
      10、 如權(quán)利要求8所述的處理系統(tǒng),其中所述處理器進(jìn)一步經(jīng)配置以通過將虛擬 存儲器中用于所述條目中所述一者的所述塊與虛擬存儲器的新塊合并來更改虛擬存儲 器中用于所述條目中的所述一者的所述鄰接塊的大小。
      11、 如權(quán)利要求10所述的處理系統(tǒng),其中所述處理器進(jìn)一步經(jīng)配置以響應(yīng)于確定虛擬存儲器的所述兩個塊是鄰接的且物理存儲器的所述對應(yīng)塊也是鄰接的而合并用 于所述條目中的所述一者的所述虛擬存儲器塊及所述新的虛擬存儲器塊。
      12、 如權(quán)利要求11所述的處理系統(tǒng),其中所述處理器進(jìn)一步經(jīng)配置以通過將用 于所述條目中的所述一者的所述虛擬存儲器塊的頁面地址映射到物理存儲器的其對應(yīng) 塊的頁面地址而將虛擬存儲器的所述合并塊映射到物理存儲器。
      13、 如權(quán)利要求11所述的處理系統(tǒng),其中所述處理器進(jìn)一步經(jīng)配置以通過將所 述新虛擬存儲器塊的頁面地址映射到物理存儲器的其對應(yīng)塊的頁面地址而將虛擬存儲 器的所述合并塊映射到物理存儲器。
      14、 一種在轉(zhuǎn)換后備緩沖器(TLB)中存儲多個條目的方法,其包含 將鄰接虛擬存儲器塊映射到物理存儲器; 提供指示虛擬存儲器的所述鄰接塊的大小的大小屬性; 更改虛擬存儲器的所述鄰接塊及對應(yīng)物理存儲器的大小;及更改所述大小屬性以反映虛擬存儲器的所述鄰接塊及所述對應(yīng)物理存儲器中的 改變。
      15、 如權(quán)利要求14所述的方法,其中通過將虛擬存儲器的第一塊與虛擬存儲器的第二塊合并來更改虛擬存儲器的所述鄰接塊及所述對應(yīng)物理存儲器的大小。
      16、 如權(quán)利要求15所述的方法,其中響應(yīng)于確定虛擬存儲器的所述第一及第二 塊兩者是鄰接的且所述對應(yīng)物理存儲器也是鄰接的而合并虛擬存儲器的所述第一及第二塊。
      17、 如權(quán)利要求16所述的處理系統(tǒng),其中所述將虛擬存儲器的所述合并的第一 及第二塊映射到物理存儲器包含確定虛擬存儲器的所述第一塊的頁面地址低于虛擬 存儲器的所述第二塊的頁面地址,及將虛擬存儲器的所述第一塊的頁面地址映射到物 理存儲器的其對應(yīng)塊的頁面地址。
      18、 如權(quán)利要求17所述的方法,其中通過更改所述大小屬性但不改變所述頁面 地址映射來合并虛擬存儲器的所述第一及第二塊。
      19、 如權(quán)利要求17所述的方法,其中通過更改所述大小屬性及將虛擬存儲器的 所述第二塊的頁面地址改變?yōu)樘摂M存儲器的所述第一塊的頁面地址并相應(yīng)地改變對應(yīng) 物理存儲器的頁面地址來合并虛擬存儲器的所述第一及第二塊。
      20、 一種在轉(zhuǎn)換后備緩沖器(TLB)中存儲多個條后的方法,其包含 識別虛擬存儲器的新塊;在具有虛擬存儲器的現(xiàn)有塊的所述TLB中定位條目,虛擬存儲器的所述現(xiàn)有塊 與虛擬存儲器的所述新塊鄰接,所述TLB條目包含虛擬存儲器的所述現(xiàn)有塊與物理存 儲器之間的映射;及將虛擬存儲器的所述新塊及現(xiàn)有塊及其對應(yīng)物理存儲器合并在所述TLB條目中, 虛擬存儲器的所述新塊及現(xiàn)有塊的所述合并進(jìn)一步包含調(diào)節(jié)大小屬性以反映從虛擬 存儲器的所述現(xiàn)有塊大小到虛擬存儲器的所述合并塊大小的大小改變。
      21、 如權(quán)利要求21所述的方法,其進(jìn)一步包含確定虛擬存儲器的所述現(xiàn)有塊 的所述對應(yīng)物理存儲器與所述虛擬存儲器的所述新塊的所述對應(yīng)存儲器是鄰接的。
      22、 如權(quán)利要求22所述的方法,其進(jìn)一步包含確定虛擬存儲器的所述合并塊映射到由對應(yīng)于虛擬存儲器的所述現(xiàn)有塊及新塊的物理存儲器表示的物理存儲器的 塊。
      23、 如權(quán)利要求21所述的方法,其中通過將虛擬存儲器的所述現(xiàn)有塊的頁面地 址映射到其對應(yīng)物理存儲器的頁面地址而將虛擬存儲器的所述現(xiàn)有塊映射到其對應(yīng)物 理存儲器。
      24、 如權(quán)利要求23所述的方法,其進(jìn)一步包含確定虛擬存儲器的所述現(xiàn)有塊 的頁面地址低于虛擬存儲器的所述新塊的頁面地址,且其中虛擬存儲器的所述新塊及現(xiàn)有塊的所述合并進(jìn)一步包含調(diào)節(jié)所述大小屬性但不改變所述條目中的頁面映射。
      25、 如權(quán)利要求23所述的方法,其進(jìn)一步包含確定虛擬存儲器的所述現(xiàn)有塊的頁面地址高于虛擬存儲器的所述新塊的頁面地址,且其中虛擬存儲器的所述新塊及現(xiàn)有塊的所述合并進(jìn)一步包含調(diào)節(jié)所述大小屬性且將虛擬存儲器的所述新塊的頁面地址映射到其對應(yīng)物理存儲器的頁面地址。
      全文摘要
      本發(fā)明提供一種用于優(yōu)化轉(zhuǎn)換后備緩沖器條目的系統(tǒng)。所述系統(tǒng)包括轉(zhuǎn)換后備緩沖器,其經(jīng)配置以存儲若干個條目,每一條目具有大小屬性,每一條目參考對應(yīng)頁面;及控制邏輯,其經(jīng)配置以在新頁面與現(xiàn)有條目所參考的現(xiàn)有頁面相鄰接的情況下在轉(zhuǎn)換后備緩沖器中修改現(xiàn)有條目的大小屬性。所述現(xiàn)有條目在已使其大小屬性被修改后參考包含所述現(xiàn)有頁面及所述新頁面的合并頁面。
      文檔編號G06F12/10GK101176078SQ200680016065
      公開日2008年5月7日 申請日期2006年3月17日 優(yōu)先權(quán)日2005年3月17日
      發(fā)明者托馬斯·安德魯·薩托里烏斯, 杰弗里·托德·布里奇斯, 維克托·羅伯茨·奧格斯堡, 詹姆斯·諾里斯·迪芬德爾費(fèi)爾 申請人:高通股份有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
      1