專利名稱::虛擬存儲(chǔ)器系統(tǒng)中段處理的方法和裝置的制作方法
技術(shù)領(lǐng)域:
:所公開的實(shí)施例涉及計(jì)算機(jī)系統(tǒng)中的虛擬存儲(chǔ)系統(tǒng)。
背景技術(shù):
:計(jì)算機(jī)系統(tǒng)性能的不斷增長推動(dòng)了加大存儲(chǔ)器大小和速度的需求。然而,由于包括成本和結(jié)構(gòu)因素的多重限制,存儲(chǔ)器的物理大小不能是無限的。為了通過給定大小的存儲(chǔ)器來獲取可能的最佳性能,開發(fā)了多種用于管理可用存儲(chǔ)器的系統(tǒng)和方法。這樣的系統(tǒng)或者方法的一個(gè)例子為虛擬尋址,所述虛擬尋址允許計(jì)算機(jī)程序如同計(jì)算機(jī)的存儲(chǔ)器遠(yuǎn)大于實(shí)際可用的物理隨機(jī)存取存儲(chǔ)器(RAM)那樣運(yùn)行。多余的數(shù)據(jù)被存儲(chǔ)在硬盤上并且在需要時(shí)被復(fù)制到RAM中。虛擬存儲(chǔ)器通常遠(yuǎn)遠(yuǎn)大于物理存儲(chǔ)器,這樣可以運(yùn)行整體代碼加上數(shù)據(jù)大小后大于可用RAM的大小的應(yīng)用程序。該虛擬存儲(chǔ)器被稱為"按需分頁虛擬存儲(chǔ)器"。當(dāng)做出訪問頁面的請(qǐng)求并且該頁面并非已經(jīng)存在于RAM時(shí),該頁面被從硬盤復(fù)制到RAM中("分頁取入")。該分頁通常通過中央處理器(CPU)、存儲(chǔ)器管理單元(MMU)以及操作系統(tǒng)(OS)內(nèi)核之間的協(xié)作而自動(dòng)執(zhí)行。所述應(yīng)用程序并不會(huì)注意到虛擬存儲(chǔ)器,它所見到的僅僅是巨大的地址空間,在某一時(shí)刻僅有部分地址對(duì)應(yīng)到物理存儲(chǔ)器。所述虛擬地址空間被劃分為頁面。CPU輸出的各個(gè)虛擬地址被劃分為(虛擬)頁面號(hào)(多位最高位)和頁面內(nèi)的偏移(N位最低位)。因此各個(gè)頁面包括2"字節(jié)。所述偏移不變,而所述MMU將所述虛擬頁面號(hào)映射到物理頁面號(hào)。該物理頁面號(hào)與偏移進(jìn)行重組以得到物理地址,該物理地址表示物理存儲(chǔ)器(RAM)中的位置。應(yīng)用程序的性能在很大程度上依賴于該程序的存儲(chǔ)器訪問模式如何結(jié)合分頁機(jī)制。如果訪問展現(xiàn)出了很多的引用的局部性,即,各個(gè)訪問趨向于接近前一次的訪問,則該性能會(huì)優(yōu)于如果訪問被隨機(jī)分布在程序的地址空間并且因此需要更多的分頁的情況。在多任務(wù)系統(tǒng)中,物理存儲(chǔ)器可以包含屬于多個(gè)程序的頁面。如果沒有按需分頁,OS可能需耍為每個(gè)活動(dòng)的程序及其數(shù)據(jù)的整體分配物理存儲(chǔ)空間,該方式效率很低。當(dāng)前的計(jì)算機(jī)系統(tǒng),即使是相對(duì)較小規(guī)模的個(gè)人計(jì)算機(jī)系統(tǒng),均包括多個(gè)子系統(tǒng)和/或協(xié)處理器,其與CPU和OS共同工作以執(zhí)fi^定的功能。例如,圖形協(xié)處理器(或者圖形處理單元(GPU))、浮點(diǎn)協(xié)處理器、網(wǎng)絡(luò)處理器以及其他類型的協(xié)處理器均被耍求用來以盡可能快的速度處理大量數(shù)據(jù)并且需要大量的存儲(chǔ)空間。一致的規(guī)則組有必耍對(duì)訪問霜要這樣訪問的所有系統(tǒng)元件或者子系統(tǒng)的物理存儲(chǔ)器進(jìn)行管理。例如,所述OS可以指定各個(gè)子系統(tǒng)必須面對(duì)的頁面(page)大小和頁表(pagetable)格式以進(jìn)行虛擬存儲(chǔ)器訪問。通常的,虛擬存儲(chǔ)器/頁表轉(zhuǎn)換系統(tǒng)的整體性能由轉(zhuǎn)換后備緩沖器(TLB)中的命中率所決定。TLB是列有與各個(gè)虛擬地址頁面號(hào)相關(guān)聯(lián)的物理地址頁面號(hào)的表格。TLB通常被用作一級(jí)(LI)高速緩存,其標(biāo)記基于虛擬地址。所述虛擬地址被同時(shí)提供給TLB和高速緩存以使髙速緩存訪問和虛擬地址到物理地址的轉(zhuǎn)換可以并行進(jìn)行("同時(shí)"完成所述轉(zhuǎn)換)。如果所請(qǐng)求的地址沒有被緩沖存儲(chǔ),則所述物理地址被用來對(duì)在所述髙速緩存外部的存儲(chǔ)器中的數(shù)據(jù)進(jìn)行定位。這被稱為髙速緩存"未命中"。如果所述地址被緩沖存儲(chǔ),則被稱為高速緩存"命中"。虛擬存儲(chǔ)系統(tǒng)中的頁表為數(shù)組,該數(shù)組包括用于各個(gè)當(dāng)前虛擬地址到物理地址轉(zhuǎn)換的項(xiàng)。頁表中的頁表項(xiàng)(PTE)通常包括物理頁面號(hào)和標(biāo)志位。頁面的大小相同,且所述頁面越小,在對(duì)特定頁面的引用中高速緩存命中的可能性越小。頁面還可以被結(jié)合為存儲(chǔ)器中的連續(xù)部分,所述連續(xù)部分被稱為段(ftagment)。段為連續(xù)的一系列物理頁面。存儲(chǔ)器的100%分段意味著每段一個(gè)頁面。隨著段的平均大小的增大,或者分段的減少,所述命中率會(huì)顯著提高。訪問物理存儲(chǔ)器的虛擬存儲(chǔ)系統(tǒng)需要使用增大命中率的技術(shù)。在設(shè)計(jì)這樣的虛擬存儲(chǔ)系統(tǒng)所面臨的挑戰(zhàn)包括虛擬存儲(chǔ)器必須面對(duì)的存儲(chǔ)器結(jié)構(gòu)所施加的限制,所述限制包括固定的頁面大小和指定的頁表項(xiàng)格式。還需要一種能夠使所增加開銷(例如在大小和速度方面)最小化的技術(shù)。還需要一-種技術(shù),該技術(shù)可以在給定存儲(chǔ)器結(jié)構(gòu)所提出的所有限制中工作井且使存儲(chǔ)器客戶端口J以通過虛擬存儲(chǔ)系統(tǒng)透明訪問物理存儲(chǔ)器。
發(fā)明內(nèi)容根據(jù)本發(fā)明的第一方面,提供一種用于創(chuàng)建存儲(chǔ)器地址分配的數(shù)據(jù)結(jié)構(gòu)的方法,該方法包括確定段,所述段包括邏輯地址空間和物理地址空間中的一個(gè)或者多個(gè)頁面,其中,物理地址空間以固定大小頁面的形式而被分配;以及產(chǎn)生數(shù)據(jù)結(jié)構(gòu),該數(shù)據(jù)結(jié)構(gòu)包括多個(gè)項(xiàng),其中,各個(gè)項(xiàng)包含可以被用來執(zhí)行可變數(shù)量的從邏輯地址到物理地址轉(zhuǎn)換的信息。根據(jù)本發(fā)明的第二方面,提供一種用于處理存儲(chǔ)器請(qǐng)求的方法,該方法包括執(zhí)行對(duì)數(shù)據(jù)結(jié)構(gòu)的訪問,該數(shù)據(jù)結(jié)構(gòu)包括多個(gè)項(xiàng),其中各個(gè)項(xiàng)包含可以被用來執(zhí)行可變數(shù)量的邏輯地址到物理地址轉(zhuǎn)換的信息使用項(xiàng)的字段(field)中的信息執(zhí)行邏輯地址到物理地址的轉(zhuǎn)換使用從所述項(xiàng)獲取的信息執(zhí)行后續(xù)的邏輯地址到物理存儲(chǔ)器地址的轉(zhuǎn)換,所述項(xiàng)包含所述字段。根據(jù)本發(fā)明的另一方面,提供一種計(jì)算機(jī)程序,該程序可選地存儲(chǔ)在計(jì)箅機(jī)可讀介質(zhì)中,該程序包括指令,當(dāng)該指令被執(zhí)行時(shí),使計(jì)算機(jī)系統(tǒng)執(zhí)行本發(fā)明第一或者第二方面的方法。在一方面,提供存儲(chǔ)有指令的計(jì)算機(jī)可讀介質(zhì),當(dāng)所述指令被執(zhí)行時(shí),使計(jì)算機(jī)系統(tǒng)中的存儲(chǔ)器請(qǐng)求被處理,其中所述處理包括掃描頁表以確定段,所述段包括邏輯地址空間和物理地址空間中連續(xù)的頁面,其中物理地址空間以固定大小的頁面進(jìn)行分配;以及產(chǎn)生頁表項(xiàng)(PTTE),所述頁表項(xiàng)包括指示物理存儲(chǔ)器頁面在所述段中連續(xù)的段字段。在本發(fā)明的另一方面中,提供一種系統(tǒng),所述系統(tǒng)包括稱合到總線的中央處理器耦合到所述總線的至少一個(gè)存儲(chǔ)器件,其中,所述至少--個(gè)存儲(chǔ)器件可以通過按需分頁而被訪問,以及其中,各個(gè)存儲(chǔ)器頁面具有固定的大小耦合到所述總線的協(xié)處理器,所述協(xié)處理器還包括至少一個(gè)存儲(chǔ)器控制器,用于為多個(gè)存儲(chǔ)器客戶端控制對(duì)所述至少一個(gè)存儲(chǔ)器件的訪問;以及至少一個(gè)頁表單元,用于處理所述多個(gè)存儲(chǔ)器客戶端和所述存儲(chǔ)器控制器之間的通信,其中,所述至少一個(gè)頁表單元實(shí)現(xiàn)按需分頁,包括將邏輯地址空間和物理地址空間分割成連續(xù)且兼容的段,其中,所述連續(xù)且兼容的段包括多個(gè)頁面。在本發(fā)明的又另一方面,提供一種用-T在電子系統(tǒng)中執(zhí)行特定功能的協(xié)處理裝置,包括用于為多個(gè)存儲(chǔ)器客戶端控制對(duì)存儲(chǔ)器件進(jìn)行訪問的裝置;以及用于處理所述多個(gè)存儲(chǔ)器客戶端之間通信的裝置和用于控制對(duì)至少一個(gè)存儲(chǔ)器件進(jìn)行訪問的裝置,其中,用于處理通信的所述裝置實(shí)現(xiàn)按需分頁,包括將邏輯地址空間和物理地址空間分割成連續(xù)且兼容的段,其中,所述連續(xù)且兼容的段包括多個(gè)頁面.圖1為在一個(gè)實(shí)施例中包括協(xié)處理器的計(jì)算機(jī)系統(tǒng)的結(jié)構(gòu)圖2為在一個(gè)實(shí)施例中協(xié)處理器的結(jié)構(gòu)圖3為在一個(gè)實(shí)施例中頁表項(xiàng)(PTE)的圖示圖4A、4B和4C形成了在一個(gè)實(shí)施例中頁表掃描算法的流程圖,所述算法用于確定頁表的分段,以及用于寫入頁表項(xiàng);圖5為在一個(gè)實(shí)施例中顯示在應(yīng)用圖4的算法后存儲(chǔ)器地址布置的結(jié)構(gòu)圖圖6為在一個(gè)實(shí)施例中協(xié)處理器的元件的結(jié)構(gòu)圖,所述協(xié)處理器包括一個(gè)存儲(chǔ)通道圖7為在一個(gè)實(shí)施例中協(xié)處理器的元件的結(jié)構(gòu)圖,所述協(xié)處理器包括多個(gè)存儲(chǔ)通道圖8為在一個(gè)實(shí)施例中協(xié)處理器的元件的結(jié)構(gòu)圖,所述協(xié)處理器包括兩個(gè)頁表單元;圖9為在一個(gè)實(shí)施例中頁目錄項(xiàng)(PDE)格式的結(jié)構(gòu)圖。具體實(shí)施例方式本發(fā)明的實(shí)施例包括協(xié)處理器,該協(xié)處理器包括用于訪問物理存儲(chǔ)器的虛擬存儲(chǔ)系統(tǒng)。所述協(xié)處理器包括頁表邏輯和段處理邏輯,所述段處理邏輯掃描具有固定且相對(duì)較小頁面大小的頁表。將頁表分成多個(gè)段,所述段由在物理地址空間和邏輯存儲(chǔ)空間連續(xù)且具有相似屬性的頁面所構(gòu)成。邏輯存儲(chǔ)器中的段以已知的邊界開始,因此,該邊界表示了段的起始地址和段大小。物理地址空間中的對(duì)應(yīng)段可以在任何地方開始,因此使所述處理對(duì)物理存儲(chǔ)器透明。所述頁表邏輯和段處理邏輯將頁表項(xiàng)寫入頁表中,該頁表包括段字段。在各個(gè)頁表項(xiàng)(PTE)中,所述段字段向頁表單元提供與所指定的頁面處于的段的大小相關(guān)的指示。在一個(gè)實(shí)施例中,所述指示為2的幕,因此值0表示段的大小為1個(gè)頁面或者4kb、值1對(duì)應(yīng)2個(gè)頁面或者8kb的段、值2表示4個(gè)頁面或者16kb的段等等,利用段字段表示在該段中的物理頁面是連續(xù)的,而且所述該段的邏輯起始地址被對(duì)齊到對(duì)應(yīng)的段大小邊界。因此,對(duì)于段值為3來說,該段的大小為32kb或者8個(gè)頁面,并且該段開始于邏輯(并不一定為物理)地址空間的32kb邊界。本發(fā)明的實(shí)施例有效地允許了高速緩存中的通配符,所述通配符在高速緩存査找中有助于提髙效率,雖然這里描述了相關(guān)聯(lián)髙速緩存中的通配符,但本發(fā)明并不限于此。這里描述的通配符可以被延伸應(yīng)用到直接映射的高速緩存和N路相關(guān)聯(lián)髙速緩存。本發(fā)明的實(shí)施例因此有效地允許較少的頁表項(xiàng)被讀取,即使其具有固定且相對(duì)小的頁面大小。當(dāng)以通常的連續(xù)模式分配物理地址空間時(shí),頁表單元可以使用該現(xiàn)有知識(shí)而有效地減小TLB未命中的Ll的數(shù)量。例如,段字段中的值20表示整個(gè)4Gb邏輯地址空間在物理上是連續(xù)的并且為了所述整個(gè)4Gb空間僅僅只霜要讀取一個(gè)PTE。這里描述的實(shí)施例的另一個(gè)優(yōu)點(diǎn)在于PTE中的一個(gè)字段表示了段的起始位置和段大小,因此無滯將大小字段和起始地址字段相區(qū)分。這里將參考包括虛擬存儲(chǔ)系統(tǒng)、具有特定頁面大小的頁表以及其他細(xì)節(jié)的系統(tǒng)的具體實(shí)施例來描述本發(fā)明的實(shí)施例,但本發(fā)明并不限于此。在這里被用來示出本發(fā)明實(shí)施例的示例性系統(tǒng)中,虛擬存儲(chǔ)系統(tǒng)與圖形處理單元(GPU)相連,該GPU與指定頁表配置的操作系統(tǒng)進(jìn)行交互。然而,所描述的實(shí)施例并不限于包括GPU的系統(tǒng)或者具有所描述的特定細(xì)節(jié)的系統(tǒng),而是可以應(yīng)用到任何系統(tǒng)中,在所述系統(tǒng)中,虛擬存儲(chǔ)系統(tǒng)與頁表結(jié)構(gòu)進(jìn)行交互。圖1為根據(jù)實(shí)施例的計(jì)算機(jī)系統(tǒng)100的結(jié)構(gòu)圖。系統(tǒng)100包括中央處理器(CPU)102以及系統(tǒng)存儲(chǔ)器104。通常所述系統(tǒng)存儲(chǔ)器104存儲(chǔ)有可以被系統(tǒng)100中任何部件訪問的數(shù)據(jù)。協(xié)處理器110和協(xié)處理器112通過總線114與CPU102和系統(tǒng)存儲(chǔ)器進(jìn)行通信??偩€114可以為在計(jì)算機(jī)系統(tǒng)中使用的任何類型的總線,該總線包括外圍部件接口(PCI)總線、加速圖形接口(AGP)總線以及PC正(PCIExpress)總線。所述協(xié)處理器110和112通過執(zhí)行某些特定功能來幫助主處理器(CPU102),其速度通常要比主處理器在軟件中執(zhí)行這些特定功能來得更快。在某些情況下,協(xié)處理器110和112與主處理器并行對(duì)指令進(jìn)行解碼并且僅僅執(zhí)行應(yīng)由協(xié)處理器執(zhí)行的那些指令。協(xié)處理器110和112中任何一個(gè)可以為,或者可以包括,浮點(diǎn)協(xié)處理器、圖形協(xié)處理器(GPU)、網(wǎng)絡(luò)協(xié)處理器以及其他類型的協(xié)處理器和處理器。所述系統(tǒng)100還包括本地存儲(chǔ)器106和本地存儲(chǔ)器108。所述本地存儲(chǔ)器106耦合到協(xié)處理器110并且還耦合到總線114。所述本地存儲(chǔ)器108耦合到協(xié)處理器112并且還耦合到總線114。所述本地存儲(chǔ)器106和108分別可以被協(xié)處理器110和112使用,以相對(duì)于數(shù)據(jù)被存儲(chǔ)在系統(tǒng)存儲(chǔ)器104中,提供對(duì)特定數(shù)據(jù)進(jìn)行更快速的訪問,所述特定數(shù)據(jù)頻繁或者最近被相應(yīng)的協(xié)處理器使用。圖2為一個(gè)實(shí)施例的結(jié)構(gòu)圖,其中的協(xié)處理器110包括圖形處理單元(GPU)功能。所述協(xié)處理器110包括存儲(chǔ)器控制器120以及頁表單元118。所述頁表單元118包括頁表邏輯/段處理邏輯(PTTL/FPL)122、存儲(chǔ)器客戶端接口124、一級(jí)(LI)TLB126以及二級(jí)(L2)髙速緩存128。所述TLB126既可以用作L1高速緩存又可以用作L1高速緩存的轉(zhuǎn)換后備緩沖器(TLB)。在一個(gè)實(shí)施例中,所述協(xié)處理器110可以從超過30個(gè)對(duì)存儲(chǔ)器控制器120做出讀寫請(qǐng)求的存儲(chǔ)器客戶端接收存儲(chǔ)器訪問請(qǐng)求。大部分存儲(chǔ)器客戶端為運(yùn)行在邏輯存儲(chǔ)空間中的虛擬客戶端??蛻舳私涌?24、PTL/FPL122以及存儲(chǔ)器控制器120代表那些存儲(chǔ)器客戶端來幫助對(duì)數(shù)據(jù)進(jìn)行訪問。在下述的其他功能中,所述PTL/FPL122執(zhí)行邏輯地址到物理地址的轉(zhuǎn)換并且訪問頁表。在一個(gè)實(shí)施例中,物理頁表存在于本地存儲(chǔ)器106中,并且寄存器利用物理存儲(chǔ)器地址指定他們的位置。所述頁表的結(jié)構(gòu)由CPU102的操作系統(tǒng)指定。某些存儲(chǔ)器客戶端可以僅僅為物理上的,因?yàn)樗麄兺耆@開了虛擬存儲(chǔ)器邏輯并且可以直接向本地存儲(chǔ)器108發(fā)出請(qǐng)求和從本地存儲(chǔ)器108直接獲取數(shù)據(jù)。所述存儲(chǔ)器客戶端接口124接收并且響應(yīng)來自存儲(chǔ)器客戶端的請(qǐng)求。所述TLB126和L2髙速緩存128存儲(chǔ)特定數(shù)據(jù)并且相比于將所述數(shù)據(jù)存儲(chǔ)在其他地方,可以提供對(duì)所述數(shù)據(jù)進(jìn)行更快速的訪問。下面將進(jìn)一步對(duì)其進(jìn)行描述。圖3為根據(jù)實(shí)施例的頁表項(xiàng)(PTE)302的圖示。在一個(gè)實(shí)施例中,頁表中的各個(gè)頁面的大小為4kb。在圖3的實(shí)施例中,每一PTE302為64位(8個(gè)字節(jié))的字。對(duì)于可尋址的存儲(chǔ)器中的每一個(gè)4kb邏輯頁面均存在一個(gè)PTE302.這允許頁表邏輯對(duì)于給定的32位輸入地址產(chǎn)生多達(dá)40位的輸出。所述64位PTE302中的低40位被用于轉(zhuǎn)換的目的。所述PTE302包括28位物理頁面地址字段,該字段包含映射頁面的物理4Kb對(duì)齊基地址。V(alid,有效)位表示給定PTE302是否包括有效映射。如果向無效頁面做出請(qǐng)求,則發(fā)生有效保護(hù)錯(cuò)誤。依賴于在多個(gè)實(shí)施例中頁表控制寄存器如何被編程,該情況可以致使放棄寫入并且可以從默認(rèn)頁面進(jìn)行讀取?;蛘撸鲰摫韱卧梢园才胖袛嘀鳈C(jī)并且可能發(fā)起協(xié)處理器上下文切換。在這里描述的實(shí)施例中,上下文表示頁表和用于操作所述頁表的寄存器組。各個(gè)上下文具有自己的頁表??梢酝瑫r(shí)存在多個(gè)獨(dú)立的頁表處于活動(dòng)中。在一個(gè)實(shí)施例中,-級(jí)頁表可以被使用。在其他實(shí)施例中,多級(jí)頁表或者多級(jí)頁表和--級(jí)頁表的一些組合可以被使用。頁表為虛擬空間到物理空間的映射。在多種實(shí)施例中,存在至多8個(gè)不同的映射。各個(gè)映射可以獨(dú)立于所有其他的映射而被管理。上下文切換包括將一個(gè)頁表換出以獲取另一個(gè)頁表。這樣就必須存儲(chǔ)非當(dāng)前上下文的狀態(tài)。當(dāng)一個(gè)頁表被修改時(shí),上下文切換避免了低效的中斷時(shí)間。一起運(yùn)行的客戶端可以被分組以使上下文轉(zhuǎn)換更髙效。在多種實(shí)施例中,上下文字段(未示出)允許基于每次存儲(chǔ)器訪問請(qǐng)求(per-memory-access-request)來指定上下文。S(ystem,系統(tǒng))位表示頁面位于本地存儲(chǔ)器中還是位于系統(tǒng)存儲(chǔ)器中。該位表示數(shù)據(jù)通過PC正總線讀取或者寫入的時(shí)間。C(ache,高速緩存)監(jiān)聽位表示對(duì)頁面的讀^/寫入訪問必須通過使用監(jiān)聽循環(huán)而進(jìn)行。當(dāng)向存儲(chǔ)器頁面中寫入時(shí),該髙速緩存監(jiān)聽位是很有用的,因?yàn)樗梢蕴嵝芽偩€上的處理器高速緩存的數(shù)據(jù)可能是無效的。提供三個(gè)可用的訪問保護(hù)位。W(rite,寫入)位表示給定的頁面可以被寫入。R(ead,讀取)位表示給定的頁面可以被讀取。P(rivileged,特權(quán))位表示只有當(dāng)上下文請(qǐng)求訪問在特權(quán)模式下進(jìn)行操作時(shí)頁面才可以被訪問。段字段向頁表單元118提供關(guān)于物理地址空間的分段程度的指示并且當(dāng)分段程度較低(也就是,段相對(duì)較大)時(shí),實(shí)現(xiàn)TLB124命中率的顯著優(yōu)化。PTE302中剩余的比特位被保留,然而在某些實(shí)施例中,這些剩余比特位被設(shè)置為0。在各個(gè)PTE302中,所述5位的段字段向頁表單元118提供關(guān)于所指定的頁面處于的段大小的指示。段的大小為2的冪,因此值0表示段的大小為1個(gè)頁面或者4kb、值1對(duì)應(yīng)2個(gè)頁面或者8kb的段、值2表示4個(gè)頁面或者16kb的段等等。通常,邏輯段或者物理段的字節(jié)大小可以像如下所示這樣來表示。公式l邏輯/物理段的宇節(jié)大小=2('"R>利用段字段表示在該段中物理頁面是連續(xù)的,并且該段的邏輯起始地址與對(duì)應(yīng)段大小的邊界對(duì)齊。因此,段值為3,段大小為3汰b或者8個(gè)頁面,并且該段在邏輯地址空間上起始于32kb邊界,而在物理地址空間上不必為該邊界。在一個(gè)實(shí)施例中,相應(yīng)頁面范圍中的各個(gè)PTE302必須被編程有相同的段值,還具有相同的W、R、P、S、C以及V屬性。當(dāng)所述物理地址空間以大部分連續(xù)的模式被分配時(shí),所述頁表單元118可以使用現(xiàn)有知識(shí)而有效地減小TLB126未命中的數(shù)量。在一個(gè)4Gb邏輯地址空間的實(shí)施例中,段字段中的值20表示整個(gè)4Gb邏輯地址空間在物理上連續(xù)并且僅僅只有一個(gè)PTE320需要被讀取。在一個(gè)實(shí)施例中,主驅(qū)動(dòng)器負(fù)責(zé)構(gòu)建各個(gè)PTE320中的段值。如果該主驅(qū)動(dòng)器選擇不作任何特別的段處理,則所述段值為0,并且從頁表單元118的觀點(diǎn)來看,物理存儲(chǔ)器被處理為全部分段為4kb頁面。當(dāng)包含非零段大小的FIE302被引入到TLB126中時(shí),存儲(chǔ)在PTE302中的表示邏輯基地址和物理基地址的標(biāo)記被對(duì)齊以匹配指定段的開頭,如下所示。公式211^物理段=1116物理頁面-(邏輯頁面&(2,**-1))公式3邏輯段=邏輯頁面在~(2*^-1〉當(dāng)在TLB126中尋找匹配時(shí),標(biāo)記比較器還將段大小考慮在內(nèi)。當(dāng)尋找各項(xiàng)匹配時(shí),所述比較將標(biāo)記地址字段的低段位當(dāng)作是O。給定頁面在段中的邏輯地址,則當(dāng)計(jì)算該頁面的物理地址時(shí),適用以下計(jì)箅。公式4物理頁面=PTE物理段+(邏輯頁面&p***-l))在一個(gè)實(shí)施例中,在CPU進(jìn)行物理頁面分配后,P1L/FPL122計(jì)算頁表中的段值。圖4A、4B和4C為顯示確定頁表分段以及計(jì)算寫入到PTE中的段值的處理的流程圖。如下面將詳細(xì)描述的,所述處理將存儲(chǔ)器分割成對(duì)齊的片段,包括尋找在邏輯存儲(chǔ)器空間中的給定大小的邊界上可以對(duì)齊的最大段,并且所述處理相應(yīng)地更新段大小。在圖4A中,所述處理開始于定義PTE字段,如404所示。這包括定義W、R、P、C、S、V、段以及無符號(hào)整數(shù)的基地址字段。定義FTE字段進(jìn)一步包括字段指定值(l或O)以指示W(wǎng)、R、P、C、S和V字段為"真"。對(duì)于V字段,"真"表示PTE包含有效映射。如果對(duì)無效頁面發(fā)出請(qǐng)求,則產(chǎn)生有效保護(hù)錯(cuò)誤。依賴于頁表控制寄存器如何被編程,使放棄寫入并且可以從默認(rèn)頁面進(jìn)行讀取?;蛘?,所述頁表單元118可以安排中斷主機(jī)并且可能發(fā)起GPU上下文切換。對(duì)于"S"字段,"真"表示頁面位于系統(tǒng)存儲(chǔ)器而非本地存儲(chǔ)器中。當(dāng)PC正GART被禁用且頁表被啟用時(shí),S位表示數(shù)據(jù)必須通過PC正總線而被讀取或者寫入。對(duì)于C字段,"真"表示必須使用監(jiān)聽循環(huán)以對(duì)該頁面做出讀/寫訪問。該比特位非常有用,例如,當(dāng)對(duì)系統(tǒng)存儲(chǔ)器頁面進(jìn)行寫入時(shí),它可以提醒總線上的其他處理器所緩沖的數(shù)據(jù)可能是無效的。對(duì)于P字段,"真"表示只有當(dāng)頁表單元118在特權(quán)模式下被操作時(shí),才可以被訪問的頁面。對(duì)于R字段,"真"表示頁面可以被讀取。對(duì)于"W"字段,"真"表示可以被寫入的頁面。定義PTE字段進(jìn)一步包括定義5位字段的段字段和28位字段的基地址字段。兩個(gè)保留字段分別被定義為具有1位大小和24位大小。在406中,稱為"兼容"的函數(shù)被定義。該函數(shù)可以被用來比較頁面并且確定頁面是否具有相匹配的W、R、P、C、S和V字段。對(duì)于屬于相同段的頁面組,他們必須兼容,因此他們?cè)谥付ㄗ侄尉哂邢嗤闹?。?08中,索引i被初始化為表示頁表開頭的值。在410中,通過將i與表示頁面末端的值進(jìn)行比較來確定是否到達(dá)了頁表的末端。如果沒有到達(dá)頁表的末端,執(zhí)行循環(huán)A,所述循環(huán)A顯示在圖4B中。參考圖4B,顯示了標(biāo)記為循環(huán)A的處理過程。本質(zhì)上,循環(huán)A通過查找全部連續(xù)并且都具有相同的屬性的索引范圍來創(chuàng)建物理地址空間列表。然后它會(huì)停止。循環(huán)A找尋到了連續(xù)并且相互兼容(所有屬性均相同)字段。循環(huán)A開始于在418中將索引j設(shè)置為等于i+l。在420中,確定j是否小于頁表大小。如果j小于頁表大小,將頁表項(xiàng)pte[i]與頁表項(xiàng)pte[j]進(jìn)行比較以確定兩個(gè)頁表項(xiàng)是否兼容并且連續(xù)。如果pte[i]和pte[j]兼容且連續(xù),則通過設(shè)置j-j+l而增加j,并且該處理返回到420以確定j是否小于頁表大小。如果pte[i]和pte[j]不兼容且連續(xù),則該處理中斷。只要j小于頁表大小,則繼續(xù)找尋連續(xù)且兼容的PTE,所述處理繼續(xù)聚集連續(xù)和兼容范圍的頁面。如果j不小于頁表大小,所述處理中斷。再次參考圖4A,當(dāng)圖4B的循環(huán)A處理中斷時(shí),如圖4C所示,執(zhí)行循環(huán)B。圖4C中的處理為將連續(xù)且兼容范圍的頁面分割成對(duì)齊的部分。也就是說,連續(xù)且兼容的頁面組被對(duì)齊到起始于2的冪的邊界,并且該頁面組包含2的冪的數(shù)量的頁面。例如,如果段大小為2,則該段為一個(gè)4個(gè)頁面(16kb)的段。這意味著在邏輯地址空間中,該段以16kb的邊界對(duì)齊。這樣使協(xié)處理器能夠通過僅僅知道段大小就可以知曉在哪里尋找當(dāng)前段的起始地址。然而,在物理地址空間中,對(duì)頁面或者段從何處開始沒有限制。在物理地址空間中,僅有的限制為段必須連續(xù),就如同他們?cè)谶壿嬁臻g中那樣。通過在426中確定i是否小于j而開始圖4C的處理。如果i小于j,則在428中,變量mim_pages被設(shè)定為POW(2,INT(LOG(j-i)))。然后,在430中,變量max』ages被設(shè)定為給定pte[i]對(duì)齊的最大段大小。段可以包括至多但不超過2的冪的邊界所指示的頁面數(shù)量。例如,16kb邊界可以使段開始于一個(gè)、兩個(gè)或者四個(gè)連續(xù)且兼容的頁面。在432中,稱為fiag_pages的變量被設(shè)定為MIN(num_pages,maxjpages)。然后,在434中,設(shè)定段大小為16[1...1+60^堪68-1]。在436中,i被設(shè)定為i+fragjages。428到436的處理一直繼續(xù)直到i不小于j,此時(shí)處理中斷??偨Y(jié)循環(huán)B,循環(huán)B找尋其當(dāng)前處于何種邊界并且試圖找到具有此種大小的段.例如,如果其處于8kb邊界(意味著2個(gè)頁面),則其試圖在當(dāng)前段中找尋至多兩個(gè)頁面。如果其找到所述兩個(gè)頁面,則在這種情況下,其將他們分配到具有段大小為1(2')的相同段中。其會(huì)隨著它的運(yùn)行通過寫出所述段來更新段大小。如果該段中有更多的頁面需要處理,則所述循環(huán)B會(huì)再次循環(huán),并且它會(huì)增加下一個(gè)邊界。例如,如果最后的邊界為8k邊界,貝IJ下—個(gè)將會(huì)是l汰邊界。循環(huán)B的處理試圖找尋所述段上次處于的最大邊界。例如,已經(jīng)處于汰邊界了,則可以得知它不處于l汰邊界;因此如果該處理能夠填滿所述8k段,則可以得知下次它將會(huì)處于16k邊界。然后該處理會(huì)試圖尋找4個(gè)連續(xù)的頁面。所述處理輪換進(jìn)行這樣的步驟,也就是它會(huì)找尋16k,然后32k等等。所述處理繼續(xù)試圖創(chuàng)建越來越大的段。當(dāng)所述處理接近尾端時(shí),它將會(huì)在最后面臨過大的段,意味著剩余的頁面不足以填滿他們。可用的頁面然后被分割成2'大小的塊并且被放置在相同大小的邊界上。大于所述段所處的邊界大小的塊將不會(huì)被創(chuàng)建。但是即使在該處理的最后階段,頁面仍然可以在某些中間邊界而被結(jié)合.可能在某些情況中,例如,循環(huán)B能夠填滿2個(gè)頁面的段,但是在下一個(gè)循環(huán)中僅能夠找到3個(gè)連續(xù)的頁面。所述處理然后將部分分割成片段,將2個(gè)頁面(8k)的段放置到l汰邊界上,并且再回來將單獨(dú)的頁面(4k)放置到下一個(gè)8k邊界。即使使用這些小的段,系統(tǒng)的性能仍然可以得到改善。伴隨著段的增大,系統(tǒng)性能可以得到顯著的改善。再次參考圖4A,當(dāng)循環(huán)B中斷時(shí),所述處理返冋到410以確定i是否小于page—table—end。如果i不小于page—table—end,在416中,結(jié)合剩余的段,更具體地,在圖4A的處理開始前和圖4A的處理結(jié)束后的段被結(jié)合到一起。在一個(gè)可選的實(shí)施例屮,以固定的2的冪大小的塊的相同大小的邊界在邏輯空間中分配存儲(chǔ)器。在這種情況下,段火小在分配時(shí)間上被指定好,而無需對(duì)其進(jìn)行重新計(jì)算。然而,如果部分相同大小的塊被解除分配,則例如參考圖4A、4B和4C描述的處理將會(huì)再次對(duì)段進(jìn)行計(jì)算??赡軙?huì)將執(zhí)行所述處理的存儲(chǔ)空間限制在已被改變的那些部分的存儲(chǔ)空間中。在一個(gè)實(shí)施例中,向協(xié)處理器告知對(duì)所述頁表的修改,當(dāng)所述頁表被分配或者改變時(shí),所述協(xié)處理器還具有對(duì)所述頁表的最后訪問,并且所述協(xié)處理器實(shí)際上將所述頁表寫出。在多個(gè)實(shí)施例中,前述的動(dòng)作可以通過任何協(xié)處理器、處理器或者通過任何驅(qū)動(dòng)器來執(zhí)行。圖5為顯示在通過圖4A、4B和4C處理后的存儲(chǔ)器地址布置的圖示。在所述圖示的右側(cè)顯示了物理存儲(chǔ)映射504。存儲(chǔ)映射504被分割成段,該段具有連續(xù)且兼容的頁面。如前所述,對(duì)段在物理存儲(chǔ)器中的何處(在什么物理地址)起始并沒有限制。物理存儲(chǔ)器地址在所示的存儲(chǔ)位置中被指出。例如,在所述圖示頂部的地址42表示具有起始地址42的一個(gè)頁面的段。地址42的下面為具有起始地址7的一個(gè)頁面的段。地址7的下面為具有起始地址8的兩個(gè)頁面的段,等等。在所述圖示的左側(cè)顯示了對(duì)應(yīng)的邏輯地址502。參考圖5的底部,概要指出了邏輯段的起始地址506、對(duì)應(yīng)段長508以及對(duì)應(yīng)的物理段起始頁面地址510。邏輯地址邊界0意味著長度至多為2"個(gè)頁面的長度的段,其中w-int(tog:存儲(chǔ)器大小)。如圖所示,所述段對(duì)應(yīng)著起始于42的物理頁面。下一個(gè)段起始于邏輯地址1并且具有2個(gè)頁面或者一個(gè)頁面的長度,并且對(duì)應(yīng)于起始于7的物理段。如上所述,處于2'邊界的段可能具有的頁面長度至多為2"但不超過2"。下一個(gè)段起始于邏輯地址2并且具有2'個(gè)頁面或者2個(gè)頁面的長度,并且對(duì)應(yīng)于起始于8的物理段。下一個(gè)段起始于邏輯地址4并且具有2'個(gè)頁面或者4個(gè)頁面的長度,并且對(duì)應(yīng)于起始于10的物理段。下一個(gè)段起始于邏輯地址8并且具有23個(gè)頁面或者8個(gè)頁面的長度,并且對(duì)應(yīng)于起始于14的物理段。列512顯示了最低有效位的數(shù)量,在給定不同起始邏輯地址的査找中該最低有效位可以被忽略。標(biāo)為"X"的位表示"不考慮"。這說明了當(dāng)段被對(duì)齊以使得段邊界表示該段的起始地址和該段的大小時(shí),通配符如何成為了可能。相對(duì)于使用對(duì)齊段的另一個(gè)選擇為使用理想段,該理想段可以開始于任何邊界。為了使用理想段,需要使用PTE中的附加字段來指示起始地址。在使用對(duì)齊段和理想段之間的字段和速度方面存在著權(quán)衡。對(duì)于理想段,起始地址字段可能需要具有與物理地址字段相同的大小,或者可預(yù)想地為相對(duì)于PTE所指的邏輯頁面的偏移。但是該字段需要隨著最大段大小的增大而增大。該字段的大小可以被限制,但是如果任何大小的段可以起始于任何邊界,則起始地址字段必須具有與物理頁面地址相同的大小。如果所述段大小被限制,則可以使用較少量位作為起始地址字段。所述字段然后可以被用作相對(duì)于PTE所指的物理地址的偏移。這樣可能會(huì)利用到其自身的約束,因?yàn)閷?duì)段大小進(jìn)行限制可能會(huì)限制或者消除一定的配置。影響決定使用對(duì)齊段或理想段的一個(gè)因素為期望分段的程度。0%分段意味著對(duì)于整個(gè)存儲(chǔ)空間只有一個(gè)段,而100%分段意味著每段一頁。實(shí)現(xiàn)為分段減少函數(shù)的加速(或命中率的增長)是具有理想段的線性函數(shù)。實(shí)現(xiàn)為分段減少函數(shù)的加速是具有對(duì)齊段的對(duì)數(shù)函數(shù).圖6到圖8為進(jìn)一步顯示協(xié)處理器的實(shí)施例的結(jié)構(gòu)圖,所述協(xié)處理器實(shí)現(xiàn)上述描述且在圖4A到4C中顯示的方法。圖6為協(xié)處理器的實(shí)施例中元件600的結(jié)構(gòu)圖,該協(xié)處理器與協(xié)處理器110大致相同。元件600為一個(gè)存儲(chǔ)通道中的元件。除了別的功能外,該存儲(chǔ)通道執(zhí)行存儲(chǔ)器客戶端所看到的邏輯地址到存儲(chǔ)器控制器所看到的物理地址之間轉(zhuǎn)換??蛻舳私涌诨蛘?客戶端"602為單個(gè)存儲(chǔ)器客戶端與存儲(chǔ)器控制器620之間的接口。存儲(chǔ)器客戶端可以為需要對(duì)物理存儲(chǔ)器進(jìn)行訪問的任何應(yīng)用程序。例如,GPU中的紋理單元為做出只讀請(qǐng)求的存儲(chǔ)器客戶端。位于圖6中協(xié)處理器外部的客戶端也可以通過所述客戶端接口602訪問存儲(chǔ)器,包括運(yùn)行在任何主機(jī)上的任何其他進(jìn)程,所述主機(jī)通過公共總線與圖6中的協(xié)處理器進(jìn)行通信。所述客戶端接口602使客戶端能夠通過專用的LITLBTLB604做出請(qǐng)求。通常的,本地基于存儲(chǔ)在TLB604中的信息,或者當(dāng)TLB未命中的情況下通過L2髙速緩存610,所述TLB604根據(jù)所述請(qǐng)求執(zhí)行操作,例如進(jìn)行地址轉(zhuǎn)換。所述TLB604包括頁表邏輯/段處理邏輯(PTL/FPL)606。所述PTL/FPL606很清楚邏輯頁面處于的段的大小。所述PTL/FPL606可以在大于例如八個(gè)單頁面項(xiàng)的很大范圍內(nèi)執(zhí)行比較,所述范圍僅僅由所述段的大小所限定。所述協(xié)處理器的存儲(chǔ)器控制器620包括連接到TLB604的接口。所述L2髙速緩存610自身具有連接到存儲(chǔ)器控制器620的接口。所述L2離速緩存610對(duì)存儲(chǔ)器進(jìn)行物理訪問而無需虛擬存儲(chǔ)器或者地址轉(zhuǎn)換。如圖所示,所述存儲(chǔ)器控制器620和客戶端接口602通過直線路線進(jìn)行通信。該線路可以被使用,例如,當(dāng)向客戶端返回?cái)?shù)據(jù)的時(shí)候。該線路還可以用于寫入確認(rèn)或者實(shí)際數(shù)據(jù)的讀取。這樣的返回?cái)?shù)據(jù)不需要通過TLB604。所述TLB604對(duì)地址執(zhí)行L1高速緩存査詢,所述地址與從其客戶端接收到的輸A/輸出(I/O)請(qǐng)求相關(guān)聯(lián)。如果可以基于TLB604中已經(jīng)存在的數(shù)據(jù)執(zhí)行轉(zhuǎn)換,則通過將先前的邏輯地址替換為物理地址而將所述相關(guān)聯(lián)的I/O請(qǐng)求轉(zhuǎn)發(fā)到存儲(chǔ)器控制器620。如果所述轉(zhuǎn)換未被執(zhí)行,更新所述TLB604的個(gè)別請(qǐng)求會(huì)被轉(zhuǎn)到所述L2髙速緩存610中。如果所請(qǐng)求的數(shù)據(jù)已經(jīng)存在于L2髙速緩存610中,該數(shù)據(jù)將會(huì)被發(fā)送到請(qǐng)求的TLB604中,和先前的情況一樣,轉(zhuǎn)換處理將會(huì)在該TLB604中執(zhí)行。如果所請(qǐng)求的數(shù)據(jù)不存在,所述L2髙速緩存610必須通過其自身的到存儲(chǔ)器控制器620的接口從本地存儲(chǔ)器(未顯示)中獲取部分的存儲(chǔ)器駐留頁表。依賴于所請(qǐng)求的映射數(shù)據(jù)的最終位置,在TLB604和L2髙速緩存610中可能存在多種級(jí)別的延遲》因此,實(shí)施例還可以包括多個(gè)延遲補(bǔ)償數(shù)據(jù)結(jié)構(gòu),當(dāng)轉(zhuǎn)換數(shù)據(jù)無序返回時(shí),將請(qǐng)求數(shù)據(jù)暫時(shí)存儲(chǔ)在該延遲補(bǔ)償數(shù)據(jù)結(jié)構(gòu)中。在一個(gè)實(shí)施例中,所述客戶端接口602、TLB604以及L2高速緩存610為頁表單元的組成部分,但是本發(fā)明并不限于此。圖7為協(xié)處理器的另一個(gè)實(shí)施例中元件700的結(jié)構(gòu)圖。在所示的實(shí)施例中,多個(gè)存儲(chǔ)通道為多個(gè)客戶端提供存儲(chǔ)器訪問,客戶端接口7(^和客戶端接UJ702,到702,包括超過30個(gè)客戶端接口。各個(gè)客戶端接口702為單個(gè)客戶端到存儲(chǔ)器控制器720的接口。各個(gè)客戶端接口702與專用的TLB704進(jìn)行通信。顯示了TLB704,到TLB704,。各個(gè)TLB704包括PTL/FPL706。顯示了PTL/FPL706,到706,。各個(gè)1LB704被連接到所述存儲(chǔ)器控制器720。各個(gè)TLB706被進(jìn)一步連接到L2高速緩存710以對(duì)TLB未命中進(jìn)行處理。所述L2髙速緩存710具有自身的到存儲(chǔ)器控制器720的接口。所述L2髙速緩存710可以對(duì)存儲(chǔ)器進(jìn)行物理訪問而不需要虛擬存儲(chǔ)器或者地址轉(zhuǎn)換。如圖所示,所述存儲(chǔ)器控制器720和客戶端接口702通過直接線路進(jìn)行通信,例如,當(dāng)向客戶端返回?cái)?shù)據(jù)時(shí),該線路可以被使用。該線路還可以用于寫入確認(rèn)或者實(shí)際數(shù)據(jù)的讀取。這樣的返回?cái)?shù)據(jù)不需要必須通過所述TLB704'圖8為協(xié)處理器的一個(gè)實(shí)施例中元件800的結(jié)構(gòu)圖,所述協(xié)處理器中使用有兩個(gè)頁表單元,因此復(fù)制了L2髙速緩存的功能.下面參考圖8詳細(xì)描述該實(shí)施例及其元件。頁表單元818A和頁表單元818B包括相似的元件并且通過各自的L2高速緩存810A和810B相互進(jìn)行通信。每一頁表單元大致處理一半的存儲(chǔ)器客戶端。當(dāng)各個(gè)L2髙速緩存810可以將另一個(gè)L2髙速緩存810作為有效的L3髙速緩存訪問時(shí),多個(gè)頁表單元配置的外延的性能模型顯示了顯著的性能提升。這可以通過最小數(shù)量的導(dǎo)線來實(shí)現(xiàn),因此是很高效的設(shè)計(jì)。各個(gè)頁表單元818的功能為代表向存儲(chǔ)器控制器做出請(qǐng)求的存儲(chǔ)器客戶端執(zhí)行邏輯地址到物理地址的轉(zhuǎn)換。該轉(zhuǎn)換基于位于本地存儲(chǔ)器屮的頁表數(shù)據(jù)。所述轉(zhuǎn)換在頁面上基于固定的4K(4096)字節(jié)頁面大小。它支持至多4G(4,294,967,296)字節(jié)或者1M(1,048,567)頁面的邏輯地址空間。各個(gè)頁面被表示為物理頁表中的64位頁表項(xiàng)(PTE)。在-個(gè)實(shí)施例中,40位用于實(shí)際地址的產(chǎn)生。因此,在一個(gè)實(shí)施例中,通過使用稀疏分配(sparseallocation),所支持的物理地址空間范圍可以跨越1T(1,099,511,627,776)字節(jié)。如上所述,各個(gè)PTE包括28位頁面基地址、有效位、系統(tǒng)位、髙速緩存監(jiān)聽位、讀取位、寫入位、特權(quán)訪問位以及5位段大小字段。其他所有位均被保留。所述頁表單元818同時(shí)支持至多8個(gè)活動(dòng)的物理頁表上下文。第—頁表上下文O為所謂的系統(tǒng)上下文保留。剩下的可以隨意分配,但是在一個(gè)實(shí)施例中,多個(gè)客戶端程序各自具有他們自己的獨(dú)立管理的頁表上下文??蛻舳说念愋涂梢园ɡ缫曨l、多媒體以及3D圖像客戶端。在一個(gè)實(shí)施例中,多媒體客戶端使用與所述3D圖像客戶端上下文相獨(dú)立的上下文。所述頁表單元818A包括客戶端接口802A,和802A,到802A.,所述客戶端接口802A從各個(gè)存儲(chǔ)器客戶端接收存儲(chǔ)器訪問請(qǐng)求并且將所述請(qǐng)求傳送到相應(yīng)的TLB804A,到804A,。所述多個(gè)TLB804A各自訪問存儲(chǔ)器控制器820。各個(gè)TLB8M^到804包括PTL/FPL806^到806A,中對(duì)應(yīng)的一個(gè)PTL/FPL。所述頁表單元818A進(jìn)一步包括L2高速緩存810A,該L2髙速緩存810A具有自身的到存儲(chǔ)器控制器820的接口。如下面將進(jìn)一步描述的,所述L2髙速緩存810A被用作TLB804A的L2髙速緩存,并且用作頁表單元818B中TLB804B的L3高速緩存。所述頁表單元818B包括客戶端接口802B1和802B2到802Bn。所述客戶端接口802B從各個(gè)存儲(chǔ)器客戶端接收存儲(chǔ)器訪問請(qǐng)求井且將所述請(qǐng)求傳送到相應(yīng)的TLB804B,到804B1。所述TLB804B訪問存儲(chǔ)器控制器820。各個(gè)TLB804Bl到804Bn包括PTL/FPL806B1到806Bn中相應(yīng)的一個(gè)PTL/FPL。所述頁表單元818B進(jìn)一步包括L2髙速緩存810B,該L2高速緩存810B具有自身的到存儲(chǔ)器控制器820的接口。如下面將進(jìn)一步描述的,所述L2髙速緩存810B被用作TLB804B的L2髙速緩存,并且用作頁表單元818A中TLB804A的L3高速緩存。在一個(gè)實(shí)施例中,(頁表單元818A和818B中)各個(gè)TLB804為相對(duì)較小的全相聯(lián)高速緩存,該高速緩存可以實(shí)現(xiàn)非??斓牡刂忿D(zhuǎn)換。可使用各種大小的TLB804,例如以適應(yīng)多個(gè)客戶端的性能需求。在一個(gè)實(shí)施例中,兩種大小的TLB804被用于不同等級(jí)的客戶端,相對(duì)較大的TLB804用于較高性能的客戶端,而相對(duì)較小的TLB804被用于較低性能的客戶端。這兩種大小被適當(dāng)分配給不同等級(jí)的客戶端。由于PTL/FPL806知道邏輯頁面處于的段的大小,該P(yáng)TL/FPL806可以在大于TLB804中項(xiàng)的數(shù)量的很大范圍內(nèi)執(zhí)行比較,所述范圍僅僅由所述段的大小所限定。從而可以在很大的搜索空間中執(zhí)行比較。如果頁表模式?jīng)]有被激活,來自存儲(chǔ)器客戶端的請(qǐng)求被直接轉(zhuǎn)發(fā)到存儲(chǔ)器控制器820,而不存在任何附加的延遲。當(dāng)頁表模式被激活時(shí),每個(gè)請(qǐng)求的轉(zhuǎn)換信號(hào)連同上下文字段確定如何實(shí)行査找。如果轉(zhuǎn)換開啟,則所述每個(gè)請(qǐng)求的上下文字段選擇相關(guān)的頁表上下文。如果轉(zhuǎn)換關(guān)閉,則將該地址首先與掩碼孔(aperture)范圍進(jìn)行核對(duì),并且如果所述地址在所述范圍內(nèi),則使用系統(tǒng)上下文0査找所述地址。如果所述地址超出所述范圍,則依賴于寄存器的設(shè)置而將所述地址作為物理地址對(duì)待或者甚至可以忽略該地址。在實(shí)際地址査找處理中的第一歩驤,將與來自存儲(chǔ)器客戶端的請(qǐng)求相關(guān)的地址與TLB804中的項(xiàng)進(jìn)行核對(duì)。如果所述地址已經(jīng)與TLB804中的某個(gè)項(xiàng)相匹配,所述地址請(qǐng)求被從邏輯地址空間轉(zhuǎn)換到物理地址空間并且所述請(qǐng)求被轉(zhuǎn)發(fā)到存儲(chǔ)器控制器820。為了進(jìn)行讀取,各個(gè)請(qǐng)求中的相關(guān)標(biāo)記允許發(fā)起請(qǐng)求的存儲(chǔ)器客戶端識(shí)別所返回的數(shù)據(jù),該數(shù)據(jù)不受從邏輯地址到物理地址的轉(zhuǎn)變的影響。類似的,寫入索引字段也允許寫入提示。如果所述地址無法被所述TLB804所轉(zhuǎn)換,則所述頁面地址的高20位以及頁表上下文字段(來自客戶端)被傳送到L2商速緩存810。這里可能會(huì)產(chǎn)生較長的延遲,因此根據(jù)缺失命中(hit-undewniss)方案,請(qǐng)求(包括任何寫入數(shù)據(jù))中相關(guān)的數(shù)據(jù)被保存到延遲補(bǔ)償隊(duì)列中。在多個(gè)實(shí)施例中,缺失未命中(miss"und枕-miss)方案也被實(shí)現(xiàn)以進(jìn)行延遲補(bǔ)償。用于識(shí)別隊(duì)列項(xiàng)的索引也被傳遞到所述L2髙速緩存810以使得返回?cái)?shù)據(jù)可以和原始請(qǐng)求相關(guān)聯(lián)。在一個(gè)實(shí)施例中,所述返回?cái)?shù)據(jù)為28位物理頁面地址、5位段字段、l個(gè)系統(tǒng)位、一個(gè)監(jiān)聽位、一個(gè)錯(cuò)誤位以及原始請(qǐng)求索引。如果在L2髙速緩存810中進(jìn)行轉(zhuǎn)換時(shí)發(fā)生錯(cuò)誤,則所述TLB804客戶端將會(huì)放棄寫入或者以從默認(rèn)頁面進(jìn)行讀取來替代。當(dāng)沒冇錯(cuò)誤發(fā)生時(shí),新的PTE數(shù)據(jù)會(huì)替代那些已經(jīng)存在于TLB804中的PTE數(shù)據(jù)之一,并且繼續(xù)進(jìn)行如上述最初命中情況時(shí)的處理。各個(gè)L1TLB延遲補(bǔ)償隊(duì)列項(xiàng)包含下列數(shù)據(jù)上下文字段、存儲(chǔ)器地址、字節(jié)序(endian)模式字段、大小字段(僅僅進(jìn)行讀取的客戶端)、標(biāo)記字段(僅僅進(jìn)行讀取的客戶端)、索引/標(biāo)記的標(biāo)記字段(僅僅進(jìn)行寫入的客戶端)、掩碼字段(僅僅進(jìn)行寫入的客戶端)以及寫入數(shù)據(jù)字段(僅僅進(jìn)行寫入的客戶端)。段大小檢測通過PTL/FPL806進(jìn)行控制。這涉及到基于除了指定標(biāo)記數(shù)據(jù)之外的段字段中的內(nèi)容進(jìn)行地址匹配。這提供了潛在地顯著減少未命中率的優(yōu)點(diǎn)。通常,響應(yīng)于存儲(chǔ)器請(qǐng)求的控制流S1循這樣的順序如果頁表被禁用,將具有假定物理地址的請(qǐng)求提交到存儲(chǔ)器控制器(MC)(完成)如果轉(zhuǎn)換被禁用以及邏輯地址在系統(tǒng)掩碼孔之外,則通過放棄寫入或者提交默認(rèn)讀取來將所述地址視為是物理地址或者忽略該地址(完成);如果轉(zhuǎn)換被禁用以及在系統(tǒng)掩碼孔之內(nèi),則使用系統(tǒng)上下文0代替在接口處所選擇的上下文;如果轉(zhuǎn)換啟用,使用在存儲(chǔ)器客戶端接口處指定的上下文;檢査邏輯地址以確定該地址是否與使用頁面和段處理的TLB中的標(biāo)記相匹配;如果找到匹配標(biāo)記,則計(jì)箅物理地址并且將請(qǐng)求提交到MC(完成)否則,保存請(qǐng)求數(shù)據(jù)并且將上下文、頁面地址、請(qǐng)求ID傳遞到L2以獲取PTE;當(dāng)PTTE返回且沒有錯(cuò)誤時(shí),則在調(diào)整段基地址后將PTE存儲(chǔ)到TLB中;如果發(fā)生錯(cuò)誤,放棄寫入或者從默認(rèn)頁面屮讀取以進(jìn)行替代(完成)否則,傳遞所返回的物理地址并且向MC提交請(qǐng)求(完成)。在多種實(shí)施例中,存在多個(gè)讀取存儲(chǔ)器的客戶端和多個(gè)寫入存儲(chǔ)器的客戶端,并不是所有這些客戶端都需要頁表接口。例如,在一個(gè)實(shí)施例中,存在大于20個(gè)讀取存儲(chǔ)器的客戶端以及大于10個(gè)寫入存儲(chǔ)器的客戶端。如上所述,存在多種等級(jí)的客戶端以及多種TLB大小。相比于相對(duì)較小的TLB,相對(duì)較大的TLB具有較大的延遲補(bǔ)償結(jié)構(gòu)。頁表單元的客戶端分配被設(shè)計(jì)為反映出芯片的物理布置,并且導(dǎo)致兩個(gè)單元之間的客戶端等級(jí)的相對(duì)數(shù)量可能變得有些不平衡。在某些情況下,虛設(shè)客戶端會(huì)被插入以使對(duì)應(yīng)于各個(gè)頁表單元818A和818B的各個(gè)等級(jí)的客戶端的數(shù)量保持相等。所述L2高速緩存810以及相關(guān)邏輯的功能為從多個(gè)TLB804中接收PTE的第二請(qǐng)求。另外,各個(gè)L2高速緩存810還用作另一個(gè)頁表單元的L2高速緩存的無故降L3髙速緩存。這意味著,如果L3未命中,它將不會(huì)試圖將所述請(qǐng)求經(jīng)由其接口提供給存儲(chǔ)器控制器。在—個(gè)實(shí)施例中,各個(gè)L2高速緩存810具有下列規(guī)格32字節(jié)(256位)高速緩存行(cacheline)大小128個(gè)高速緩存行(4k字節(jié)或者32K位)各個(gè)髙速緩存行保存有4個(gè)頁表項(xiàng)(可以在任何給定時(shí)間將512個(gè)頁表項(xiàng)存儲(chǔ)到各個(gè)L2高速緩存中)4路組相聯(lián)LRU置換以及27位標(biāo)記(髙速緩存行的物理存儲(chǔ)器地址)。如果頁表模式被禁用,所述L2髙速緩存810將沒有工作要做,因?yàn)樗麄儾粫?huì)接收到來自TLB804的請(qǐng)求。否則,L2高速緩存810每周期邏輯處理來自一個(gè)TLB804的請(qǐng)求。每個(gè)請(qǐng)求包括頁面請(qǐng)求的加個(gè)最髙有效位(MSB)、3位頁表上下文以及4位請(qǐng)求ID。假定為平(flat)頁表模型并且給定頁面地址、頁表選擇位以及頁表寄存器,所述L2高速緩存810邏輯計(jì)算包含所需PTE的高速緩存行的物理存儲(chǔ)器地址。它首先檢査所述高速緩存行是否已經(jīng)存在于L2髙速緩存810中。如果所需的高速緩存行存在,在將所關(guān)聯(lián)的PTB數(shù)據(jù)返回到請(qǐng)求TLB804的客戶端之前,在L2布速緩存810中進(jìn)行錯(cuò)誤處理和檢測,所述全部PTE并非以其原始形式返回,相反該FTE被分割為28位物理頁面地址、5位段字段、一個(gè)系統(tǒng)位、一個(gè)髙速緩存監(jiān)聽位以及一個(gè)錯(cuò)誤位。請(qǐng)求索引被連同提取的PTE數(shù)據(jù)一起返回到TLB804,如果所述高速緩存行不存在,貝IJ所述L2高速緩存810使用27位高速緩存行地址對(duì)其他頁表單元中的其他L2髙速緩存810做出作為L3請(qǐng)求的請(qǐng)求。在這種情況下,結(jié)果(命中或未命中)連同256位高速緩存行數(shù)據(jù)一起在固定數(shù)量的循環(huán)中返回。如果存在L3命中,則所述離速緩存行數(shù)據(jù)會(huì)替代已經(jīng)存在的髙速緩存行并且如以前一樣繼續(xù)進(jìn)行請(qǐng)求處理'如果L3未命中,則所述L2髙速緩存810邏輯通過其自身的存儲(chǔ)器控制器接口發(fā)出256位存儲(chǔ)器控制器的讀取請(qǐng)求。該請(qǐng)求就像來自任何其他存儲(chǔ)器讀取客戶端的存儲(chǔ)器讀取請(qǐng)求。因?yàn)樽x取請(qǐng)求可能會(huì)有較長的延遲,在等待讀取數(shù)據(jù)返回時(shí),所述L2高速緩存810邏輯具有其自身的延遲補(bǔ)償隊(duì)列以存儲(chǔ)讀取請(qǐng)求數(shù)據(jù)。描述了隊(duì)列存儲(chǔ)位置的8位索引被連同讀取請(qǐng)求一起被提交以用于后續(xù)的識(shí)別。一旦數(shù)據(jù)被返回,它就會(huì)替代己經(jīng)存在的髙速緩存行并且如以前-樣繼續(xù)進(jìn)行請(qǐng)求處理。在圖8中顯示的實(shí)施例的替代性實(shí)施例中,兩個(gè)頁表單元810實(shí)際上共享了一個(gè)存儲(chǔ)器控制器820的公共接口。這具有將可用索引地址空間除以二的作用。因此,各個(gè)頁表單元能夠在停止之前管理至多128個(gè)到所述MC的顯著的讀取請(qǐng)求。在一個(gè)實(shí)施例中,各個(gè)項(xiàng)包括下列數(shù)據(jù)5位存儲(chǔ)器客戶端的L1ID:27位髙速緩存行地址20位邏輯地址3位上下文;以及4位L1請(qǐng)求索引。在平(flat)頁表模型中,整個(gè)頁表在存儲(chǔ)器中被線性布置。給定頁表在物理存儲(chǔ)器中的基地址以及在邏輯存儲(chǔ)器中的起始映射地址和結(jié)束映射地址,所述頁表單元810計(jì)算與邏輯PTE相對(duì)應(yīng)的物理地址。所述頁表基地址必須處于4Kb(4,096字節(jié))邊界,伹是所述起始和結(jié)束映射地址必須處于2Mb(2,097,152)邊界并且指定包括的范圍。如果最后的映射地址中的髙11位在算術(shù)上小于第-映射地址的高11位,則所有的映射將被視為無效。所述PTE地址可以如公式5所示而被表述。公式5PTE地址={BASE_ADDR[31:12],12"bO}+({LOG_ADDR[31:12],12"bO}-{START_ADDR[31:21],21"b0})9通常,在平頁表模式中,響應(yīng)于TLB804請(qǐng)求的控制流諶循這樣的順序給定上下文和頁面地址加上頁表的描述,計(jì)算PTE髙速緩存行在物理存儲(chǔ)器中的地址;如果高速緩存行巳經(jīng)存在于L2髙速緩存中,提取PTE,執(zhí)行錯(cuò)誤處理并且將數(shù)據(jù)返回到請(qǐng)求的LITLB(完成);否則,將高速緩存行地址傳送到L3高速緩存并且在固定數(shù)量次循環(huán)后核査命中/未命中如果L3命中,獲取L3高速緩存行數(shù)據(jù),將該數(shù)據(jù)存儲(chǔ)在L2中,提取PTE,處理錯(cuò)誤并且返回到請(qǐng)求的LITLB(完成)。否則,保存請(qǐng)求數(shù)據(jù)并向MC發(fā)出高速緩存行的讀取請(qǐng)求;當(dāng)MC讀取數(shù)據(jù)返回時(shí),將其存儲(chǔ)在L2中,提取PTE,處理錯(cuò)誤并且返回到請(qǐng)求的L1TXB(完成)。一個(gè)協(xié)處理器的實(shí)施例支持多級(jí)頁表。任何與多級(jí)頁表相關(guān)的特定處理被通過L2髙速緩存810邏輯來執(zhí)行。所述L2髙速緩存810邏輯計(jì)算來自頁面目錄的PDE的地址并且仔細(xì)檢查對(duì)于L1TLB請(qǐng)求的相同類型的讀取請(qǐng)求處理。一旦所述PDE存在于L2髙速緩存中,所述L2邏輯從頁表中計(jì)算PTE的高速緩存行地址。雖然所示實(shí)施例包括的商速緩存體系包括Ll、L2以及L3高速緩存,但是其他實(shí)施例可以包括具有額外層級(jí)的高速緩存體系,該體系可以包括L4髙速緩存、L5商速緩存等等。所述多級(jí)頁表模型提供間接層級(jí)以支持頁表物理布置中更大的靈活性。不同于指向物理存儲(chǔ)器中線性連續(xù)頁表的基地址,這種模型具有指針指向稱為頁面目錄的特定頁面。所述頁面目錄包括1024個(gè)頁面目錄項(xiàng)(PDE),所述各個(gè)頁面目錄項(xiàng)均折向第二層級(jí)的4kb頁表。各個(gè)第二級(jí)別的4kb頁表包括512個(gè)64位PTE。圖9為根據(jù)實(shí)施例的PDE卯0的格式的圖示。第二級(jí)頁表可以不連續(xù)分配,或者如果不使用給定地址范圍,該頁表甚至可以被省去。所述PDE卯0中的20個(gè)最髙有效位包括所述第二級(jí)頁表的物理基地址。未使用的項(xiàng)被標(biāo)記為O個(gè)V(alid,有效)位,意味著所述對(duì)應(yīng)范圍內(nèi)的所有地址都是無效的。這些無效范圍內(nèi)頁面的參考會(huì)導(dǎo)致有效保護(hù)錯(cuò)誤,該有效保護(hù)錯(cuò)誤可以如同參考上面PTE描述的那樣而被處理。所述PDE被很好地高速緩存,并且通常,所述多級(jí)頁表模型相對(duì)于使用所述平頁表模型僅有些許的性能損耗。當(dāng)通過多級(jí)頁表執(zhí)行請(qǐng)求時(shí),可能存在至多兩個(gè)存儲(chǔ)器請(qǐng)求循環(huán)。然而,性能模型顯示該事件相對(duì)較少。所述多級(jí)頁表情況遵循以下大致的流程給定上下文和頁面地址加上頁表寄存器,計(jì)算PDE髙速緩存行在物理存儲(chǔ)器中的地址;如果髙速緩存行已經(jīng)存在丁-L2高速緩存巾,從PDE中提取頁表地址并且繼續(xù)使用平頁表流(完成)否則,將高速緩存行地址傳送到L3髙速緩存并且在固定數(shù)量次循環(huán)后核査命中/未命中如果L3命中,獲取L3高速緩存行數(shù)據(jù),將該數(shù)據(jù)存儲(chǔ)在L2中,從PDE中提取頁表地址并且繼續(xù)使用平頁表流(完成)否則,存儲(chǔ)請(qǐng)求數(shù)據(jù)并且向MC發(fā)送高速緩存行讀取請(qǐng)求;當(dāng)MC讀取的數(shù)據(jù)返回時(shí),將所述數(shù)據(jù)存儲(chǔ)在L2中,從PDE中提取頁表地址并且繼續(xù)使用平頁表流(完成)。提供全套性能計(jì)數(shù)器以用來監(jiān)視各個(gè)頁表單元的效率。通常所監(jiān)視的性能包括每個(gè)L1TLB:請(qǐng)求的數(shù)i頁面命中的數(shù)量L2髙速緩存L2請(qǐng)求的數(shù)量L2命中的數(shù)量頁目錄請(qǐng)求的數(shù)量頁目錄命中的數(shù)量外發(fā)的L3請(qǐng)求的數(shù)量外發(fā)的L3命中的數(shù)量進(jìn)入的L3請(qǐng)求的數(shù)量進(jìn)入的L3命中的數(shù)量頁表請(qǐng)求的表面探測的數(shù)量失敗的表面探測的數(shù)量通過的表面探測的數(shù)量忽略的表面探測的數(shù)量當(dāng)其計(jì)數(shù)器屮的一個(gè)計(jì)滿時(shí),每一單個(gè)功能單元中的所有計(jì)數(shù)停止。這里所描述的頁表的接U包括轉(zhuǎn)換字段和.匕卜—文字段。所述轉(zhuǎn)換字段通過使用上下文字段所選擇的上下文來指示頁表單元執(zhí)行邏輯地址到物理地址的轉(zhuǎn)換。如果所述轉(zhuǎn)換信號(hào)被解斷言(deassert),其指示頁表單元在處于所提供的掩碼孔之外時(shí)將所提供的地址視為物理地址,或者如果在所述掩碼孔之內(nèi)時(shí),在特定的系統(tǒng)上下文0中査找所述地址。各個(gè)頁表單元都支持多個(gè)頁表上下文。各個(gè)客戶端可以被編程以使得所述上下文字段中的值選自可用頁表上下文。所述上下文字段中的值可以經(jīng)由每個(gè)客戶端寄存器的可編程位字段而被靜態(tài)覆蓋。以上所述的本發(fā)明的各個(gè)方面可以被實(shí)現(xiàn)為編程到多種電路中任意一個(gè)的功能中。所述多種電路包括但不限于可編程邏輯設(shè)備(PLD),例如現(xiàn)場可編程門陣列(FPGA)、可編程陣列邏輯(PAL)器件、電可編程邏輯以及存儲(chǔ)器件和標(biāo)準(zhǔn)基于單元的器件,以及特定用途集成電路(ASIC)和全定制集成電路。一些其他用于實(shí)現(xiàn)本發(fā)明各方面的可能還包括具有存儲(chǔ)器(例如電可擦除可編程只讀存儲(chǔ)器(EEPROM))的微控制器、嵌入式微處理器、固件、軟件等等。而且,本發(fā)明的各個(gè)方面可以實(shí)現(xiàn)到微處理器中,所述微處理器具有基于軟件的電路仿真、離散邏輯(連續(xù)的以及組合的)、定制裝置、模糊(神經(jīng)系統(tǒng)的)邏輯、量子裝置以及任何以上裝置類型的組合。當(dāng)然潛在的裝置技術(shù)也可以被提供到各種部件類型中,例如,類似互補(bǔ)金屬氧化物半導(dǎo)體(CMOS)的金屬氧化物半導(dǎo)體場效應(yīng)晶體管(MOSFET)技術(shù)、類似射極耦合邏輯(ECL)的雙極技術(shù)、聚合物技術(shù)(例如,結(jié)合硅的聚合物以及結(jié)合金屬的金屬聚合物結(jié)構(gòu))以及模擬數(shù)字的混合等等。除非出現(xiàn)其他清楚的上下文,否則在說明書和權(quán)利要求書中,所述詞語"包括"、"包含"等等應(yīng)該被解釋為包括的意思而非排他的或者窮舉的意思。也就是說,為"包括但不限于"的意思。使用單數(shù)或者復(fù)數(shù)的詞語還分別包括復(fù)數(shù)或者單數(shù)。另外,詞語"這里"、"下文"、"以上"、"以下"以及類似的引入詞語,當(dāng)在本申請(qǐng)中使用時(shí),是將本申請(qǐng)作為-個(gè)整體提及而不是指本申請(qǐng)中的任何特定部分。當(dāng)詞語"或者"被使用以意指兩個(gè)或者多個(gè)項(xiàng)目的列表時(shí),所述詞語包括所述詞語的下述所有的解釋列表中的任何項(xiàng)、列表屮的所有項(xiàng)以及列表中項(xiàng)目的任何組合。本發(fā)明的圖示實(shí)施例的上述描述并不是為了窮盡或者限制本發(fā)明為所公開的確定形式。這里描述的本發(fā)明的特定實(shí)施例或者示例是出丁示意性的目的,本領(lǐng)域技術(shù)人員可以意識(shí)到在本發(fā)明的范圍內(nèi)的各種同等的修改也是可以的。這里提供的本發(fā)明的教示可以被應(yīng)用到其他處理系統(tǒng)和系統(tǒng),而不僅僅是用于上述的計(jì)算機(jī)系統(tǒng)和協(xié)處理器系統(tǒng)。上述多個(gè)實(shí)施例中的元素和動(dòng)作可以被組合以提供進(jìn)一步的實(shí)施例??梢愿鶕?jù)上述詳細(xì)描述對(duì)本發(fā)明做出這些和其他修改。通常,在所附權(quán)利要求書中,所使用的術(shù)語不能被解釋為用于將段處理方法和系統(tǒng)限制為說明書和權(quán)利要求書中公開的特定實(shí)施例,而是應(yīng)該解釋為包括可以在權(quán)利要求書下實(shí)現(xiàn)以提供段處理的任何處理系統(tǒng).因此,所述段處理方法和系統(tǒng)并不限于所公開的內(nèi)容,取而代之的是,段處理方法和系統(tǒng)的范圍完全由權(quán)利要求書來界定。雖然下面以特定權(quán)利要求書的形式顯示了用于段處理的系統(tǒng)和裝置的一些特定方面,但發(fā)明人設(shè)想到了以任何數(shù)量的權(quán)利要求形式進(jìn)行段處理的方法和裝置的多個(gè)特定方面。例如,雖然用于段處理的方法和裝置的僅僅一個(gè)方面可以通過實(shí)現(xiàn)在計(jì)算機(jī)可讀介質(zhì)中而被闡述,但其他方面也可以同樣地被實(shí)現(xiàn)到計(jì)算機(jī)可讀介質(zhì)中。因此,發(fā)明人保留了在提交本申請(qǐng)后添加附加權(quán)利要求的權(quán)利以為用于段處理的方法和裝置的其他方面尋求這樣的附加權(quán)利要求的形式。權(quán)利要求1、一種用于創(chuàng)建在存儲(chǔ)器地址轉(zhuǎn)換中使用的數(shù)據(jù)結(jié)構(gòu)的方法,包括確定段,所述段包括邏輯地址空間和物理地址空間中的一個(gè)或者多個(gè)頁面,其中,以固定大小的頁面來分配物理地址空間;以及產(chǎn)生數(shù)據(jù)結(jié)構(gòu),所述數(shù)據(jù)結(jié)構(gòu)包括多個(gè)項(xiàng),其中,各個(gè)項(xiàng)包含可以被用來執(zhí)行可變數(shù)量的從邏輯地址到物理地址轉(zhuǎn)換的信息。2、根據(jù)權(quán)利要求1所述的方法,其中,所述信息包括段大小。3、根據(jù)權(quán)利要求1或2所述的方法,其中,邏輯地址空間中的所述段起始于對(duì)齊的地址邊界,以及其中,所述對(duì)齊的地址邊界由所述信息來表示。4、根據(jù)權(quán)利要求3所述的方法,其中,所述對(duì)齊的地址邊界是2的冪的邊界。5、根據(jù)上述權(quán)利要求中任意一項(xiàng)權(quán)利要求所述的方法,其中,所述確定步驟進(jìn)一步包括定義頁表項(xiàng)(PTE)字段定義"兼容"函數(shù),其中,兼容是指邏輯地址空間和物理地址空間中頁面的相似屬性具有相同的值;在頁表中査找連續(xù)且兼容的頁面組;以及將所述連續(xù)且兼容的頁面組對(duì)齊到連續(xù)且兼容的段中,邏輯地址空間中的各個(gè)所述段起始于一種類型的地址邊界,其中,所述地址邊界與段的頁面的大小相關(guān)。6、根據(jù)權(quán)利要求5所述的方法,其中,物理地址空間中的段起始于任何類型的地址邊界。7、根據(jù)權(quán)利要求5或6所述的方法,其中,所述類型的地址邊界是2的冪的邊界,以使得邏輯地址空間中的所述邊界與(2'WM")x(頁而大小)相關(guān)。8、根據(jù)權(quán)利要求7所述的方法,其中,段中的頁面數(shù)量是9、根據(jù)上述權(quán)利要求中任意一項(xiàng)權(quán)利要求所述的方法,包括處理來自存儲(chǔ)器客戶端的存儲(chǔ)器訪問請(qǐng)求,所述方法包括在轉(zhuǎn)換后備緩沖器(TLB)中執(zhí)行標(biāo)記比較,包括將所述信息中所指示的段大小考慮在內(nèi)以搜索一個(gè)或多個(gè)頁面的區(qū)域?qū)㈨摫眄?xiàng)(PTE)取入所述TLB;以及調(diào)整存儲(chǔ)在所述PTE中的、表示邏輯基地址和物理基地址的標(biāo)記以匹配指定段的開頭。10、根據(jù)上述權(quán)利要求中任意一項(xiàng)權(quán)利要求所述的方法,包括設(shè)定所述數(shù)據(jù)結(jié)構(gòu)的至少一部分以指示主驅(qū)動(dòng)器選擇不執(zhí)行段處理,其中,出于頁表訪問的目的,將所述物理地址空間以固定大小的頁面完全分段。11、根據(jù)上述權(quán)利要求中任意一項(xiàng)權(quán)利耍求所述的方法,包括處理來自存儲(chǔ)器客戶端的存儲(chǔ)器訪問請(qǐng)求,所述方法包括嘗試執(zhí)行地址轉(zhuǎn)換,所述地址轉(zhuǎn)換包括在轉(zhuǎn)換后備緩沖器(TLB)中執(zhí)行標(biāo)記比較,包括將所述信息中所指示的段大小考慮在內(nèi)以搜索比一個(gè)頁面更大的區(qū)域;以及如果地址不能被所述TLB轉(zhuǎn)換,則將來自所述請(qǐng)求的數(shù)據(jù)傳遞到二級(jí)高速緩存。12、根據(jù)權(quán)利要求11所述的方法,其中,所述二級(jí)髙速緩存使用缺失命中方案,所述方案包括當(dāng)?shù)刂忿D(zhuǎn)換數(shù)據(jù)無序返回時(shí),將請(qǐng)求數(shù)據(jù)臨時(shí)存儲(chǔ)在延遲補(bǔ)償隊(duì)列中,并且將索弓l傳遞到所述二級(jí)高速緩存,其中,所述索引被用作將返回的轉(zhuǎn)換與所述請(qǐng)求相關(guān)聯(lián)。13、一種系統(tǒng),包括耦合到總線的中央處理器耦合到所述總線的至少一個(gè)存儲(chǔ)器件,其中,所述至少一個(gè)存儲(chǔ)器件可以通過按需分頁而被訪問,以及其中,各個(gè)存儲(chǔ)器頁面具有固定的大小耦合到所述總線的協(xié)處理器,所述協(xié)處理器還包括至少一個(gè)存儲(chǔ)器控制器,用于為多個(gè)存儲(chǔ)器客戶端控制對(duì)所述至少一個(gè)存儲(chǔ)器件的訪問;以及至少一個(gè)頁表單元,用于處理所述多個(gè)存儲(chǔ)器客戶端和所述存儲(chǔ)器控制器之間的通信,其中,所述至少一個(gè)頁表單元實(shí)現(xiàn)按需分頁,包括將邏輯地址空間和物理地址空間分割成連續(xù)且兼容的段,其中,所述連續(xù)且兼容的段包括多個(gè)頁面。14、根據(jù)權(quán)利要求13所述的系統(tǒng),其中,頁面中的段大小與所述段的起始地址相關(guān)。15、根據(jù)權(quán)利要求13或14所述的系統(tǒng),其中,所述至少一個(gè)頁表單元還包括至少一個(gè)客戶端接口,其中,各個(gè)客戶端接口從一個(gè)存儲(chǔ)器客戶端接收存儲(chǔ)器請(qǐng)求;以及至少一個(gè)一級(jí)轉(zhuǎn)換后備緩沖器(TLB),包括頁表邏衝段處理邏輯(PTL/FPL),其中,所述TLB被耦合到一個(gè)或者多個(gè)客戶端接口,以及其中,所述PTL/FPL被配置為通過以下歩驟將所述邏輯地址空間和所述物理地址空間分割為連續(xù)且兼容的段,所述步驟包括掃描頁表以確定邏輯地址空間和物理地址空間中連續(xù)且兼容的段,其中,兼容是指不同頁面的相似屬性具有相同的值以及產(chǎn)生包括段字段的頁表項(xiàng)(PTE)。16、根據(jù)權(quán)利要求15所述的系統(tǒng),其中,所述段字段指示所述段的大小。17、根據(jù)權(quán)利要求15或16所述的系統(tǒng),其中,所述段字段指示所述物理存儲(chǔ)器頁面在所述段中連續(xù)并且所述段的邏輯起始地址被對(duì)齊到對(duì)應(yīng)的段大小邊界上。18、根據(jù)權(quán)利要求17所述的系統(tǒng),其中,所述對(duì)應(yīng)的段大小邊界是2的幕的邊界。19、根據(jù)權(quán)利要求15至18屮任意一項(xiàng)權(quán)利要求所述的系統(tǒng),其中,所述至少一個(gè)頁表單元包括至少一個(gè)存儲(chǔ)器控制器接口,其中,存儲(chǔ)器控制器接口被耦合到各個(gè)TLB以接收轉(zhuǎn)換的地址,并且還耦合到各個(gè)存儲(chǔ)器客戶端以返回存儲(chǔ)器數(shù)據(jù)。20、根據(jù)權(quán)利要求15至19屮任意一項(xiàng)權(quán)利耍求所述的系統(tǒng),其中,所述至少一個(gè)頁表單元包括至少一個(gè)二級(jí)(L2)髙速緩存,其中,各個(gè)L2高速緩存被耦合到多個(gè)TLB以在TLB未命中的情況下接收存儲(chǔ)器請(qǐng)求數(shù)據(jù)。21、根據(jù)權(quán)利要求20所述的系統(tǒng),其中,所述至少一個(gè)頁表單元還包括耦合到所述L2高速緩存的存儲(chǔ)器控制器接口。22、根據(jù)權(quán)利要求13至21中任意一項(xiàng)權(quán)利要求所述的系統(tǒng),其中,所述PTL/FPL被配置為基于所述段字段中的內(nèi)容以及指定的標(biāo)記數(shù)據(jù)來匹配地址,因此在固定頁面大小之上增加了搜索空間。23、根據(jù)權(quán)利要求20或者引用該權(quán)利要求的任意一項(xiàng)權(quán)利要求所述的系統(tǒng),包括兩個(gè)頁表單元,其中,多個(gè)存儲(chǔ)器客戶端被在所述兩個(gè)頁表單元之間劃分,以及其中,各個(gè)所述頁表單元包括L2高速緩存。24、根據(jù)權(quán)利要求23所述的系統(tǒng),其中,各個(gè)L2高速緩存用作另一個(gè)L2髙速緩存的L3高速緩存。25、根據(jù)權(quán)利要求24所述的系統(tǒng),還包括多個(gè)附加級(jí)髙速緩存,所述多個(gè)附加級(jí)高速緩存至少包括4級(jí)高速緩存和5級(jí)高速緩存。26、根據(jù)權(quán)利要求24所述的系統(tǒng),其中,各個(gè)L2髙速緩存包括延遲補(bǔ)償隊(duì)列,用于在等待讀取數(shù)據(jù)返回時(shí)存儲(chǔ)讀取請(qǐng)求數(shù)據(jù),其中.將描述隊(duì)列存儲(chǔ)位置的索引連同所述讀取請(qǐng)求一起提交以用于后續(xù)的識(shí)別,以及其中,當(dāng)所述讀取數(shù)據(jù)返回時(shí),所述讀取數(shù)據(jù)替換已經(jīng)存在的高速緩存行并且請(qǐng)求處理恢復(fù)。27、根據(jù)權(quán)利要求20或引用該權(quán)利要求的任意一項(xiàng)權(quán)利要求所述的系統(tǒng),其中,所述兩個(gè)L2髙速緩存被耦合到公共存儲(chǔ)器控制器接口。28、根據(jù)權(quán)利要求20或引用該權(quán)利要求的任意一項(xiàng)權(quán)利要求所述的系統(tǒng),其中,所述存儲(chǔ)器客戶端包括超過20個(gè)讀取存儲(chǔ)器客戶端以及超過10個(gè)寫入存儲(chǔ)器客戶端,并非每個(gè)所述客戶端均需要與所述頁表單元進(jìn)行通信。29、根據(jù)權(quán)利要求28所述的系統(tǒng),其中,所述存儲(chǔ)器客戶端還包括由所述頁表單元識(shí)別的多種等級(jí)的存儲(chǔ)器客戶端,其中,不同等級(jí)的存儲(chǔ)器客戶端與不同大小的1TLB相關(guān)。30、根據(jù)權(quán)利要求29所述的系統(tǒng),其中,具有相對(duì)較髙性能需求的存儲(chǔ)器客戶端等級(jí)與具有相對(duì)較多項(xiàng)的TLB相關(guān)聯(lián),以及具有相對(duì)較低性能需求的存儲(chǔ)器客戶端等級(jí)與具有相對(duì)較少項(xiàng)的TLB相關(guān)聯(lián)。31、根據(jù)權(quán)利要求30所述的系統(tǒng),其中,所述頁表單元被配置為以多級(jí)頁表結(jié)構(gòu)進(jìn)行工作,包括從頁面目錄項(xiàng)(PDE)中提取頁表地址以確定要使用的頁表。32、根據(jù)權(quán)利要求13至31中任意一項(xiàng)權(quán)利要求所述的系統(tǒng),其中,所述至少一個(gè)頁表單元被配置為以平頁表結(jié)構(gòu)進(jìn)行工作。33、根據(jù)權(quán)利要求15或引用該權(quán)利要求的任意--項(xiàng)權(quán)利要求所述的系統(tǒng),其中,所述至少一個(gè)頁表單元包括上下文字段,其屮所述上下文字段被用來選擇多個(gè)頁表上下文中的一個(gè)以用于地址轉(zhuǎn)換。34、根據(jù)權(quán)利要求33所述的系統(tǒng),其中,各個(gè)存儲(chǔ)器客戶端可以使用所述上下文字段從多個(gè)可用頁表上下文中進(jìn)行選擇。35、一種存儲(chǔ)有指令的計(jì)算機(jī)可讀介質(zhì),當(dāng)所述指令被執(zhí)行時(shí),使計(jì)算機(jī)系統(tǒng)中的存儲(chǔ)器請(qǐng)求被處理,其中,所述處理包括掃描頁表以確定段,所述段包括邏輯地址空間和物理地址空間中連續(xù)的頁面,其中,物理地址空間被以固定大小的頁面進(jìn)行分配;以及產(chǎn)生頁表項(xiàng)(PTE),所述頁表項(xiàng)包括段字段,所述段宇段指示物理存儲(chǔ)器頁面在所述段中連續(xù)。36、根據(jù)權(quán)利要求35所述的計(jì)算機(jī)可讀介質(zhì),其中,所述段字段指示所述段的大小。37、根據(jù)權(quán)利要求35或36所述的計(jì)算機(jī)可讀介質(zhì),其中,邏輯地址空間中的所述段起始于對(duì)齊的地址邊界,以及其中,所述對(duì)齊的地址邊界由所述段字段來表示。38、根據(jù)權(quán)利要求37所述的計(jì)箅機(jī)可讀介質(zhì),其中,所述對(duì)齊的地址邊界是2的冪的邊界。39、根據(jù)權(quán)利要求35至38中任意一項(xiàng)權(quán)利要求所述的計(jì)算機(jī)可讀介質(zhì),其中,所述掃描還包括定義PTE字段定義"兼容"函數(shù),其中,兼容是指邏輯地址空間和物理地址空間中頁面的相似屬性具有相似的值查找連續(xù)且兼容的頁面組以及將所述連續(xù)且兼容的頁面組對(duì)齊到連續(xù)且兼容的段中,邏輯地址空間中的各個(gè)所述段起始于一種類型的地址邊界,其中,所述地址邊界與段的頁面的大小相關(guān)。40、根據(jù)權(quán)利要求39所述的計(jì)算機(jī)可讀介質(zhì),其中,物理地址空間中的段起始于任何類型的地址邊界。41、根據(jù)權(quán)利要求39或40所述的計(jì)算機(jī)可讀介質(zhì),其中,所述類型的地址邊界是2的冪的邊界,以使得邏輯地址空間中的所述邊界與(2限字段的值)x(頁面大小)相關(guān)。42、根據(jù)權(quán)利要求41所述的計(jì)算機(jī)可讀介質(zhì),其中,段中的頁面數(shù)量是2(限字段的值)。43、根據(jù)權(quán)利要求35至42中任意一項(xiàng)權(quán)利要求所述的計(jì)算機(jī)可讀介質(zhì),其中,所述處理包括處理來自存儲(chǔ)器客戶端的存儲(chǔ)器訪問請(qǐng)求,包括在轉(zhuǎn)換后備緩沖器(TLB)中執(zhí)行標(biāo)記比較,包括將所述段字段中所指示的段大小考慮在內(nèi)以搜索一個(gè)或多個(gè)頁面的區(qū)域;將PTE取入所述TLB;以及調(diào)整存儲(chǔ)在所述PTE中的、表示邏輯基地址和物理基地址的標(biāo)記以匹配指定段的開頭。44、根據(jù)權(quán)利要求35至43中任意一項(xiàng)權(quán)利要求所述的計(jì)算機(jī)可讀介貭,其中,所述處理包括當(dāng)主驅(qū)動(dòng)器選擇不執(zhí)行段處理時(shí),將所述段字段的值設(shè)定為0,其中,出于頁表訪問的目的,將所述物理地址空間以固定大小的頁面完全分段。45、根據(jù)權(quán)利要求35至44中任意一項(xiàng)權(quán)利要求所述的計(jì)箅機(jī)可讀介質(zhì),其中,所述處理包括處理來自存儲(chǔ)器客戶端的存儲(chǔ)器訪問請(qǐng)求,包括嘗試執(zhí)行地址轉(zhuǎn)換,所述地址轉(zhuǎn)換包括在轉(zhuǎn)換后備緩沖器(TLB)中執(zhí)行標(biāo)記比較,包括將所述段字段中所指示的段大小考慮在內(nèi)以搜索比一個(gè)頁面更大的區(qū)域;以及如果地址不能被所述TXB轉(zhuǎn)換,則將來自所述請(qǐng)求的數(shù)據(jù)傳遞到二級(jí)布速緩存。46、根據(jù)權(quán)利要求45所述的計(jì)算機(jī)可讀介貭,其中,所述二級(jí)髙速緩存使用缺失命中方案,所述方案包括當(dāng)?shù)刂忿D(zhuǎn)換數(shù)據(jù)無序返回時(shí),將請(qǐng)求數(shù)據(jù)臨時(shí)存儲(chǔ)在延遲補(bǔ)償隊(duì)列中,并且將索引傳遞到所述二級(jí)高速緩存,其中,所述索引被用作將返回的轉(zhuǎn)換與所述請(qǐng)求相關(guān)聯(lián)。47、一種用于在電子系統(tǒng)中執(zhí)行特定功能的協(xié)處理裝置,包括用于為多個(gè)存儲(chǔ)器客戶端控制對(duì)存儲(chǔ)器件進(jìn)行訪問的裝置;以及用于處理所述多個(gè)存儲(chǔ)器客戶端之間通信的裝置和用于控制對(duì)至少一個(gè)存儲(chǔ)器件進(jìn)行訪問的裝置,其中,用于處理通信的所述裝置實(shí)現(xiàn)按需分頁,包括將邏輯地址空間和物理地址空間分割成連續(xù)且兼容的段,其中,所述連續(xù)且兼容的段包括多個(gè)頁面。48、根據(jù)權(quán)利要求47所述的協(xié)處理裝置,其中,頁面中的段大小與邏輯地址空間中的所述段的起始地址相關(guān)。49、根據(jù)權(quán)利要求47或48所述的協(xié)處理裝置,其中,PTE中的段字段提供與所述段的起始地址和大小相關(guān)的信息。50、根據(jù)權(quán)利要求47至49中任意一項(xiàng)權(quán)利要求所述的協(xié)處理裝置,其中,用于處理通信的所述裝置包括頁表單元裝置,以及其中,所述頁表單元裝置包括客戶端接口裝置,其中,所述客戶端接U裝置從存儲(chǔ)器客戶端接收存儲(chǔ)器請(qǐng)求;以及—級(jí)轉(zhuǎn)換后各緩沖器(TLB),包括頁表邏輯/段處理邏輯裝置(PTL/FPL裝置),其中,所述TLB被耦合到所述客戶端接U裝置,以及其中,所述PTL/FPL裝置被配置為通過以下步驟將所述邏輯地址空間和所述物理地址空間分割為連續(xù)且兼容的段,所述步驟包括掃描頁表以確定邏輯地址空間和物理地址空間中連續(xù)且兼容的段,其中,兼容是指不同頁面的相似屬性具有相似的值;以及產(chǎn)生包括段字段的頁表項(xiàng)(PTE),所述段字段指示物理存儲(chǔ)器頁面在所述段中連續(xù)。51、根據(jù)權(quán)利要求50所述的協(xié)處理裝置,其中,所述段可以起始于任何類型的地址邊界。52、根據(jù)權(quán)利要求50或51所述的協(xié)處理裝置,其中,所述段字段還指示所述段的邏輯起始地址被對(duì)齊到對(duì)應(yīng)的段大小邊界.53、根據(jù)權(quán)利要求50到52中任意一項(xiàng)權(quán)利要求所述的協(xié)處理裝置,其中,所述頁表單元裝置包括存儲(chǔ)器控制器接口裝置,所述接口裝置被耦合到所述TLB以接收轉(zhuǎn)換的地址,并且還耦合到所述存儲(chǔ)器客戶端以返回存儲(chǔ)器數(shù)據(jù)。54、根據(jù)權(quán)利要求50至53中任意一項(xiàng)權(quán)利要求所述的協(xié)處理裝置,其中,所述頁表單元裝置包括二級(jí)(L2)髙速緩存,其中,所述L2髙速緩存被耦合到所述TLB以在TLB未命中的情況下接收存儲(chǔ)器請(qǐng)求數(shù)據(jù)。55、根據(jù)權(quán)利要求54所述的協(xié)處理裝置,其中,所述頁表單元裝置包括耦合到所述L2髙速緩存的存儲(chǔ)器控制器接口裝置。56、根據(jù)權(quán)利要求47至55屮任意一項(xiàng)權(quán)利要求所述的協(xié)處理裝置,其中,所述PTL/FPL裝置被配置為基于所述段字段中的內(nèi)容以及指定的標(biāo)記數(shù)據(jù)來匹配地址,因此在固定頁面大小之.卜.增加了搜索空間。57、根據(jù)權(quán)利要求54或者引用該權(quán)利要求的任意--項(xiàng)權(quán)利要求所述的協(xié)處理裝置,包括多個(gè)頁表單元裝置,其中,多個(gè)存儲(chǔ)器客戶端被在所述多個(gè)頁表單元裝置之間劃分,以及其中,各個(gè)所述頁表單元裝置包括L2高速緩存。58、根據(jù)權(quán)利要求57所述的協(xié)處理裝置,其中,各個(gè)L2高速緩存用作另一個(gè)L2髙速緩存的L3商速緩存。59、根據(jù)權(quán)利要求58所述的協(xié)處理裝置,其中,各個(gè)L2高速緩存包括延遲補(bǔ)償隊(duì)列,用于在等待讀取數(shù)據(jù)返回時(shí)存儲(chǔ)讀取請(qǐng)求數(shù)據(jù),其中,將描述隊(duì)列存儲(chǔ)位置的索引字段連同所述讀取請(qǐng)求一起提交以用于后續(xù)的識(shí)別,以及其中,當(dāng)所述讀取數(shù)據(jù)返回時(shí),所述讀取數(shù)據(jù)替換己經(jīng)存在的髙速緩存行并且請(qǐng)求處理恢復(fù)。60、根據(jù)權(quán)利要求57至59中任意一項(xiàng)權(quán)利要求所述的協(xié)處理裝置,其中,所述多個(gè)L2高速緩存被耦合到公共存儲(chǔ)器控制器接口裝置。61、根據(jù)權(quán)利要求57至60中任意一項(xiàng)權(quán)利要求所述的協(xié)處理裝置,其中,所述多個(gè)存儲(chǔ)器客戶端包括超過20個(gè)讀取存儲(chǔ)器客戶端以及超過10個(gè)寫入存儲(chǔ)器客戶端,并非每個(gè)所述客戶端均需要與所述頁表單元裝置進(jìn)行通信。62、根據(jù)權(quán)利要求61所述的協(xié)處理裝置,其中,所述多個(gè)存儲(chǔ)器客戶端還包括具有相對(duì)較高性能需求的存儲(chǔ)器客戶端的等級(jí)以及具有相對(duì)較低性能需求的存儲(chǔ)器客戶端的等級(jí)。63、根據(jù)權(quán)利要求62所述的協(xié)處理裝置,其中,所述具有相對(duì)較髙性能需求的存儲(chǔ)器客戶端等級(jí)與相對(duì)較大的TLB相關(guān)聯(lián),以及所述具有相對(duì)較低性能需求的存儲(chǔ)器客戶端等級(jí)與相對(duì)較小的TLB相關(guān)聯(lián)。64、根據(jù)權(quán)利要求63所述的協(xié)處理裝置,其中,所述頁表單元裝置被配置為以多級(jí)頁表結(jié)構(gòu)進(jìn)行工作,包括從頁面目錄項(xiàng)(PDE)中提取頁表地址以確定要使用的頁表。65、根據(jù)權(quán)利要求47至64中任意一項(xiàng)權(quán)利要求所述的協(xié)處理裝置,其中,所述頁表單元裝置被配置為以平頁表結(jié)構(gòu)進(jìn)行工作。66、根據(jù)權(quán)利要求50或基于該權(quán)利要求的任意一項(xiàng)權(quán)利要求所述的協(xié)處理裝置,其中,所述頁表單元裝置還包括上下文字段,其中所述上下文字段被用來選擇多個(gè)頁表上下文中的一個(gè)以用于地址轉(zhuǎn)換.67、根據(jù)權(quán)利要求66所述的協(xié)處理裝置,其中,所述頁表單元裝置支持多個(gè)頁表上下文,以及其中,存儲(chǔ)器客戶端可以使用所述上下文字段從所述多個(gè)頁表上下文的可用頁表上下文中進(jìn)行選擇。68、一種用于在電子系統(tǒng)中處理存儲(chǔ)器請(qǐng)求的方法,包括對(duì)包含有多個(gè)項(xiàng)的數(shù)據(jù)結(jié)構(gòu)進(jìn)行訪問,其中,各個(gè)項(xiàng)包含可以被用來執(zhí)行可變數(shù)量的邏輯地址到物理地址的轉(zhuǎn)換的信息使用項(xiàng)的字段中的信息來執(zhí)行邏輯地址到物理地址的轉(zhuǎn)換;使用從所述項(xiàng)中得到的信息執(zhí)行后續(xù)的邏輯地址到物理存儲(chǔ)器地址的轉(zhuǎn)換,所述項(xiàng)包括所述字段。全文摘要描述了一種用于虛擬存儲(chǔ)系統(tǒng)中的段處理的方法和裝置。本發(fā)明的實(shí)施例包括協(xié)處理器,該協(xié)處理器包括用于訪問物理存儲(chǔ)器的虛擬存儲(chǔ)系統(tǒng)。頁表邏輯和段處理邏輯掃描具有固定且相對(duì)較小頁面大小的頁表。該頁表被分離成段,該段由在物理地址空間和邏輯地址空間中連續(xù)且具有相似的屬性的頁面組成。邏輯地址空間中的段起始于已知的地址邊界以使得所述邊界指示出段的起始地址和該段的大小。物理地址空間中的對(duì)應(yīng)段可以起始于任何地方,因此使得該處理可以對(duì)物理存儲(chǔ)器透明。頁表中的段字段表達(dá)了段大小和邊界信息。文檔編號(hào)G06F12/10GK101203837SQ200680018972公開日2008年6月18日申請(qǐng)日期2006年4月6日優(yōu)先權(quán)日2005年4月7日發(fā)明者R·A·德賓,W·F·克魯格,W·K·史密斯申請(qǐng)人:Ati技術(shù)公司