專(zhuān)利名稱(chēng)::繪圖處理單元及方法
技術(shù)領(lǐng)域:
:本發(fā)明有關(guān)于繪圖處理,且特別是有關(guān)于一種應(yīng)用零、以及/或者低幀緩沖器的預(yù)取頁(yè)表信息方法與裝置。
背景技術(shù):
:目前的計(jì)算機(jī)應(yīng)用更普遍地強(qiáng)調(diào)繪圖功能,且較以往更專(zhuān)注繪圖處理能力。諸如游戲的應(yīng)用,通常需要復(fù)雜且高度精細(xì)的繪圖能力,且需要進(jìn)行大量的運(yùn)算。為滿足客戶提升計(jì)算機(jī)應(yīng)用繪圖能力的需求,例如游戲,計(jì)算機(jī)配置亦隨之改變。當(dāng)計(jì)算機(jī)的設(shè)計(jì),特別是個(gè)人計(jì)算機(jī),用于滿足程序設(shè)計(jì)者對(duì)于娛樂(lè)與多媒體應(yīng)用日益增加的需求時(shí),例如高畫(huà)質(zhì)視頻與最新3D游戲,同樣地增加系統(tǒng)頻寬的高度需求。因此衍生出多種方法用以滿足此一極需頻寬應(yīng)用的需求,并且為未來(lái)的應(yīng)用提供額外的頻寬空間。除此之外,改善計(jì)算機(jī)繪圖處理單元(graphicsprocessingunit,GPU)的架構(gòu)不僅須與日于并進(jìn),更講求領(lǐng)先。圖l是顯示一計(jì)算機(jī)系統(tǒng)10的部分方塊圖,且為本領(lǐng)域普通技術(shù)人員所能了解。計(jì)算機(jī)系統(tǒng)10包括一中央處理單元12,經(jīng)由高速總線或通道18耦接至一系統(tǒng)控制器或北橋14。本領(lǐng)域普通技術(shù)人員應(yīng)了解,北橋14可作為一系統(tǒng)控制器,其透過(guò)高速數(shù)據(jù)通道22及25,例如外圍設(shè)備互連高速總線(peripheralcomponentinterconnectexpress,PCIe),耦接至系統(tǒng)存儲(chǔ)器20與繪圖處理單元(GPU)24。北橋14亦可經(jīng)由高速數(shù)據(jù)通道19耦接于一南橋16,以處理每個(gè)耦接元件間的通訊。舉例而言,南橋16可透過(guò)總線17耦接一或多個(gè)外圍設(shè)備21,例如一或多個(gè)輸入/輸出裝置。請(qǐng)繼續(xù)參考北橋14,如上所述其可經(jīng)由高速總線25耦接至繪圖處理單元24。繪圖處理單元24包括一區(qū)域幀緩沖器28,如圖l所示。本領(lǐng)域普通技術(shù)人員應(yīng)了解,區(qū)域幀緩沖器28的大小,于一非限定例子中,為512MB緩沖器或者其他配置。然而,區(qū)域幀緩沖器28可為某些小型緩沖器,或于某些配置中可完全省略。如圖1所示,繪圖處理單元24經(jīng)由北橋14與外圍設(shè)備互連高速總線22及25接收來(lái)自系統(tǒng)存儲(chǔ)器20的數(shù)據(jù)。如同本領(lǐng)域普通技術(shù)人員所了解,繪圖處理單元24依循自中央處理單元12所接收的指令來(lái)產(chǎn)生繪圖數(shù)據(jù),用以顯示于一耦接至計(jì)算機(jī)系統(tǒng)的顯示裝置上,其中,若區(qū)域幀緩沖器28存在且大小足夠的話,則繪圖數(shù)據(jù)可儲(chǔ)存于區(qū)域幀緩沖器28,或者,儲(chǔ)存于系統(tǒng)存儲(chǔ)器20。區(qū)域幀緩沖器28耦接至繪圖處理單元24,用以?xún)?chǔ)存部分甚至全部的顯示數(shù)據(jù)。如同本領(lǐng)域普通技術(shù)人員所了解,區(qū)域幀緩沖器28可用以?xún)?chǔ)存信息,例如紋理數(shù)據(jù)以及/或者暫時(shí)像素?cái)?shù)據(jù)。如圖1所示,繪圖處理單元24可透過(guò)區(qū)域數(shù)據(jù)總線29與區(qū)域幀緩沖器28交換信息。若區(qū)域幀緩沖器28沒(méi)有包含任何數(shù)據(jù),則繪圖處理單元24可執(zhí)行讀取存儲(chǔ)器的指令,經(jīng)由北橋14與數(shù)據(jù)通道22及25存取系統(tǒng)存儲(chǔ)器20。此作法的一潛在缺點(diǎn)為,繪圖處理單元24可能無(wú)法以足夠快的速度存取系統(tǒng)存儲(chǔ)器20。于一非限定例子中,當(dāng)數(shù)據(jù)通道22及25不是快速數(shù)據(jù)通道時(shí),則系統(tǒng)存儲(chǔ)器的存取將變慢。為了由系統(tǒng)存儲(chǔ)器20存取繪圖導(dǎo)向處理的數(shù)據(jù),繪圖處理單元24可4吏用一纟會(huì)圖地址再對(duì)映表(graphicsaddressremappingtable,GART)從系統(tǒng)存儲(chǔ)器20取得數(shù)據(jù)。此繪圖地址再對(duì)映表可儲(chǔ)存于系統(tǒng)存儲(chǔ)器20或區(qū)域幀緩沖器28,并提供對(duì)應(yīng)虛體地址的參考實(shí)體地址。若無(wú)區(qū)域幀緩沖器可以利用,繪圖地址再對(duì)映表可從而儲(chǔ)存于系統(tǒng)存儲(chǔ)器20。因此,繪圖處理單元24執(zhí)行一第一取得操作,自系統(tǒng)存儲(chǔ)器20的繪圖地址再對(duì)映表存取數(shù)據(jù),用以判斷數(shù)據(jù)儲(chǔ)存于系統(tǒng)存儲(chǔ)器20的實(shí)體地址。收到此信息后,繪圖處理單元24于第二取得操作中,取得實(shí)體存儲(chǔ)器的數(shù)據(jù)。因此,若區(qū)域幀緩沖器28不存在或過(guò)小,導(dǎo)致無(wú)法儲(chǔ)存繪圖地址再對(duì)映表,繪圖處理單元24會(huì)大量依賴(lài)系統(tǒng)存儲(chǔ)器20,且因?yàn)轫氝M(jìn)行多重存儲(chǔ)器存取操作,使得延遲時(shí)間增加。因此,為便利具有系統(tǒng)存儲(chǔ)器20的顯示單元有三種基本配置可供使用。第一種為使用連續(xù)存儲(chǔ)器地址,例如通過(guò)上述的繪圖地址再對(duì)映表來(lái)達(dá)成。有了繪圖地址再對(duì)映表,繪圖處理單元24能夠?qū)⑾到y(tǒng)存儲(chǔ)器20的相異非連續(xù)4KB系統(tǒng)存儲(chǔ)器的實(shí)體頁(yè)對(duì)應(yīng)至一較大的連續(xù)邏輯地址空間,而達(dá)成顯示或繪制的目的。許多繪圖卡系統(tǒng),例如圖I的計(jì)算機(jī)系統(tǒng)IO,會(huì)配備一16倍(xi6)的外圍設(shè)備互連高速總線以鏈接至北橋14,例如外圍設(shè)備互連高速總線25,因此,外圍設(shè)備互連高速總線通道25所提供的頻寬可以滿足對(duì)應(yīng)數(shù)量數(shù)據(jù)的傳輸。如上所述,于一繪圖系統(tǒng)中,如果區(qū)域幀存儲(chǔ)器28具有足夠的容量,繪圖地址再對(duì)映表實(shí)際上可以?xún)?chǔ)存于區(qū)域幀緩沖器28中。因此,可使用區(qū)域數(shù)據(jù)總線29來(lái)取得區(qū)域幀存儲(chǔ)器28的繪圖地址再對(duì)映表,以便繪圖處理單元24的顯示控制器執(zhí)行地址再對(duì)映。于此實(shí)例中(繪圖地址再對(duì)映表位于區(qū)域幀緩沖器28),顯示器的讀取延遲時(shí)間的總和是區(qū)域幀緩沖器28讀取時(shí)間,再加上轉(zhuǎn)譯過(guò)程所花費(fèi)的時(shí)間。如上所述,相較于存取系統(tǒng)存儲(chǔ)器20,存取區(qū)域幀緩沖器28會(huì)較快,由于此實(shí)例的繪圖地址再對(duì)映表是在原地取得,則讀取延遲時(shí)間的影響不會(huì)太大。然而,當(dāng)計(jì)算機(jī)系統(tǒng)10沒(méi)有區(qū)域幀緩沖器28時(shí),亦如同上述,則繪圖地址再對(duì)映表會(huì)位于系統(tǒng)存儲(chǔ)器20中。因此,為了執(zhí)行頁(yè)轉(zhuǎn)譯(由一虛體地址至一實(shí)體地址),繪圖處理單元24的一總線接口單元首先發(fā)出對(duì)映表的請(qǐng)求。然后轉(zhuǎn)譯此顯示讀取地址,最后發(fā)出此顯示數(shù)據(jù)本身的第二個(gè)讀取請(qǐng)求。此例是利用讀取兩個(gè)總線接口單元系統(tǒng)存儲(chǔ)器來(lái)實(shí)現(xiàn)單一顯示的讀取。以另一種方式說(shuō)明,讀取繪圖處理單元24的顯示控制器的延遲時(shí)間加倍了,而拖緩繪圖處理操作。因此,存在一個(gè)在此之前未曾被提及的需要,用以改善上述的不足與缺點(diǎn)。
發(fā)明內(nèi)容有鑒于此,本發(fā)明提供一種繪圖處理方法,使一繪圖處理單元(GPU)維持一區(qū)域快取存儲(chǔ)器,并將系統(tǒng)存儲(chǔ)器的存取減到最少。此繪圖處理單元具有一相對(duì)較小的區(qū)域幀緩沖器,或完全沒(méi)有區(qū)域幀緩沖器。于任一實(shí)例中,繪圖處理單元可用以維持執(zhí)行顯示列時(shí),所需實(shí)體地址的一區(qū)域快取存儲(chǔ)器,以減少繪圖處理單元試圖存取系統(tǒng)存儲(chǔ)器的情況。繪圖相關(guān)軟件會(huì)致使繪圖處理單元接收一顯示讀取請(qǐng)求與一邏輯地址。于一非限定實(shí)施例中,顯示讀取請(qǐng)求與邏輯地址會(huì)被繪圖處理單元的一總線接口單元(businterfaceunit,BIU)的一顯示控制器所接收。并判斷區(qū)域快取存儲(chǔ)器是否包含一實(shí)體地址,其對(duì)應(yīng)于顯示讀取請(qǐng)求的邏輯地址。此判斷可透過(guò)總線接口單元的一命中/未命中元件來(lái)執(zhí)行。若命中/未命中元件判斷此邏輯快取存儲(chǔ)器確實(shí)包含對(duì)應(yīng)于已接收的邏輯地址的實(shí)體地址,則將結(jié)果認(rèn)定為一"命中"。在此情況下,此邏輯地址隨后會(huì)轉(zhuǎn)換為它所對(duì)應(yīng)的實(shí)體地址。轉(zhuǎn)換后的實(shí)體地址可透過(guò)一控制器轉(zhuǎn)發(fā)至計(jì)算機(jī)的系統(tǒng)存儲(chǔ)器以存取所定址的數(shù)據(jù)。一北橋位于繪圖處理單元與系統(tǒng)存儲(chǔ)器之間以連4妻4皮A匕的通ifl。然而,若命中/未命中元件判斷此邏輯快取存儲(chǔ)器未包含對(duì)應(yīng)于已接收的邏輯地址的實(shí)體地址,則結(jié)果認(rèn)定為一"未命中"。于此情況下,總線接口單元的一未命中預(yù)取元件可用以取得一既定數(shù)目的快取頁(yè),其中此快取頁(yè)來(lái)自系統(tǒng)存儲(chǔ)器中的一對(duì)映表,例如繪圖地址再對(duì)映表。于一非限定實(shí)施例中,可通過(guò)一可編程暫存器控制自對(duì)映表所取得的快取頁(yè)(或列)既定數(shù)目的數(shù)量。于另一未限定實(shí)施例中,所取得的既定數(shù)目快取頁(yè),對(duì)應(yīng)于一顯示單元的一列所包含的像素的數(shù)量,其中,此顯示單元耦接該繪圖處理單元。當(dāng)命中/未命中測(cè)試元件判斷區(qū)域快取存儲(chǔ)器確實(shí)包含對(duì)應(yīng)于所取得的邏輯地址的實(shí)體地址后,會(huì)進(jìn)行另外一項(xiàng)評(píng)估,意即,位于區(qū)域快取存儲(chǔ)器的快取頁(yè)的數(shù)目是否降低。若是,一命中預(yù)取元件產(chǎn)生下一個(gè)快取頁(yè)請(qǐng)求,或類(lèi)似操作,以自系統(tǒng)存儲(chǔ)器的對(duì)映表(也就是繪圖地址再對(duì)映表)取得下一可用的快取頁(yè)來(lái)補(bǔ)足區(qū)域快取存儲(chǔ)器快取頁(yè)的數(shù)目。如此,區(qū)域快取存儲(chǔ)器得以維持一位置,足以領(lǐng)先于繪圖處理單元目前正在處理的一位置。此種配置能使繪圖處理單元將未命中的判斷數(shù)目減到最小,從而增加繪圖處理單元的效能。繪圖處理單元不需重復(fù)取得包含實(shí)體地址的快取頁(yè)與于系統(tǒng)存儲(chǔ)器本身的數(shù)據(jù),進(jìn)而增加效能。同時(shí)取得包含實(shí)體地址的快取頁(yè)以及定址的數(shù)據(jù),需包含兩獨(dú)立的系統(tǒng)存儲(chǔ)器存取操作,與僅存取系統(tǒng)存儲(chǔ)器一次相較而言速度較慢。取而代之,通過(guò)盡量確保區(qū)域快取存儲(chǔ)器包含所接收的邏輯地址的實(shí)體地址,繪圖處理單元僅需存取系統(tǒng)存儲(chǔ)器一次,便可達(dá)到實(shí)際取回?cái)?shù)據(jù)的目的,因此操作上更有效率。本發(fā)明提供一種繪圖處理方法,用于一繪圖處理單元,以維持儲(chǔ)存于一頁(yè)表快取存儲(chǔ)器的頁(yè)表信息,該繪圖處理方法包括下列步驟接收一顯示讀取請(qǐng)求,其具有對(duì)應(yīng)于欲取得數(shù)據(jù)的一邏輯地址;判斷于該繪圖處理單元的頁(yè)表快取存儲(chǔ)器中是否包含對(duì)應(yīng)于該邏輯地址的一實(shí)體地址;當(dāng)該頁(yè)表快取存儲(chǔ)器未包含對(duì)應(yīng)于該邏輯地址的該實(shí)體地址時(shí),產(chǎn)生一快取請(qǐng)求取得命令,其中該邏輯地址用以與耦接于該繪圖處理單元的一存儲(chǔ)器溝通;自該存儲(chǔ)器的一對(duì)應(yīng)表將一既定數(shù)目的快取列回傳至該繪圖處理單元;將該邏輯地址轉(zhuǎn)換為該實(shí)體地址;以及自該存儲(chǔ)器取得與該實(shí)體地址對(duì)應(yīng)的數(shù)據(jù)。本發(fā)明還提供一種繪圖處理單元,耦接一系統(tǒng)控制器,該系統(tǒng)控制器耦接至一計(jì)算機(jī)的一存儲(chǔ)器,該繪圖處理單元包括一顯示讀取控制器,用以接收一顯示讀取請(qǐng)求,其中,該顯示讀取請(qǐng)求包含對(duì)應(yīng)于欲存取數(shù)據(jù)的一邏輯地址;一區(qū)域快取存儲(chǔ)器,用以?xún)?chǔ)存一既定數(shù)目的快取列,其中,該快取列對(duì)應(yīng)于該計(jì)算機(jī)的該存儲(chǔ)器的非連續(xù)存儲(chǔ)器部分;一測(cè)試元件,耦接至該顯示讀取控制器,并用以判斷與該顯示讀取請(qǐng)求相關(guān)的該邏輯地址所對(duì)應(yīng)的一實(shí)體地址是否包含于該區(qū)域快取存儲(chǔ)器內(nèi);一第一預(yù)取元件,用以于該測(cè)試元件輸出的結(jié)果為該區(qū)域快取存儲(chǔ)器并未包含與該顯示讀取請(qǐng)求相關(guān)的該邏輯地址所對(duì)應(yīng)的該實(shí)體地址時(shí),產(chǎn)生一快取請(qǐng)求取得命令,以自該計(jì)算機(jī)存儲(chǔ)器的一對(duì)應(yīng)表中取得該既定數(shù)目的快取列;以及一第二預(yù)取元件,用以于儲(chǔ)存于該區(qū)域快取存儲(chǔ)器的一快取列消耗完畢時(shí),產(chǎn)生下一個(gè)快取請(qǐng)求命令自該計(jì)算機(jī)的該存儲(chǔ)器取得下一個(gè)快取列。本發(fā)明又提供一種繪圖處理方法,適用于一繪圖處理單元缺少一區(qū)域幀緩沖器的一計(jì)算機(jī)系統(tǒng)中,用以使系統(tǒng)存儲(chǔ)器的存取減到最少,該繪圖處理方法包括下列步驟判斷一實(shí)體地址是否包含于該繪圖處理單元的一頁(yè)表快取存儲(chǔ)器,該實(shí)體地址與存儲(chǔ)器的繪圖相關(guān)數(shù)據(jù)有關(guān),且對(duì)應(yīng)于一已接收的邏輯地址,其中,該已接收的邏輯地址包含于該頁(yè)表快取存儲(chǔ)器時(shí)被轉(zhuǎn)譯成該實(shí)體地址;當(dāng)該已接收的邏輯地址所對(duì)應(yīng)的該實(shí)體地址并未包含于該頁(yè)表快取存儲(chǔ)器中時(shí),產(chǎn)生一快取請(qǐng)求以自耦接于該繪圖處理單元的一存儲(chǔ)器取得一既定數(shù)目的快取頁(yè);以及當(dāng)該頁(yè)表快取存儲(chǔ)器的一或多個(gè)快取頁(yè)消耗完畢時(shí),產(chǎn)生下一個(gè)快取請(qǐng)求命令以自該系統(tǒng)存儲(chǔ)器取得一定數(shù)目的快取頁(yè),使該繪圖處理單元的該頁(yè)表快取存儲(chǔ)器中保持該既定數(shù)目的快取頁(yè)。本發(fā)明可增加繪圖處理單元的效能,提高系統(tǒng)效率。圖l是顯示具有一繪圖處理單元的計(jì)算機(jī)系統(tǒng)方塊圖,其中包括繪圖處理單元,以于繪圖處理操作中存取儲(chǔ)存于系統(tǒng)存儲(chǔ)器的數(shù)據(jù);圖2是顯示圖l所示的繪圖處理單元方塊圖,其具有一顯示讀取地址轉(zhuǎn)譯元件用以實(shí)施預(yù)取操作,使圖l中系統(tǒng)存儲(chǔ)器的存取減到最少;圖3與圖4是顯示圖l及圖2的繪圖處理單元判斷是否于預(yù)取操作時(shí)存取系統(tǒng)存儲(chǔ)器的步驟流程圖;圖5是顯示圖l及圖2的繪圖處理單元,由圖l系統(tǒng)存儲(chǔ)器的一繪圖地址再對(duì)映表,預(yù)取快取列的過(guò)程示意圖。具體實(shí)施例方式為使本發(fā)明的上述目的、特征和優(yōu)點(diǎn)能更明顯易懂,下文特舉實(shí)施例,并配合所附圖示,詳細(xì)"i兌明如下。如上所述,圖l的繪圖處理單元24可用以使圖l的系統(tǒng)存儲(chǔ)器20的存取減到最小,進(jìn)而減少繪圖處理操作時(shí)的讀取延遲時(shí)間。亦如上述,若區(qū)域幀緩沖器28有足夠大的容量來(lái)儲(chǔ)存繪圖地址再對(duì)映表(GART)及相關(guān)數(shù)據(jù),延遲時(shí)間就能充分減小或保持于可接受的程度范圍內(nèi)。但是,當(dāng)區(qū)域幀緩沖器28容量較小甚至不存在時(shí),則繪圖處理單元24不僅需依賴(lài)系統(tǒng)存儲(chǔ)器20來(lái)存取儲(chǔ)存的繪圖地址再對(duì)映表,用以進(jìn)行存儲(chǔ)器轉(zhuǎn)譯,還有對(duì)應(yīng)于參考繪圖地址再對(duì)映表的虛體地址的實(shí)體地址的數(shù)據(jù)。圖2為繪圖處理單元24內(nèi)部的元件方塊圖,其中繪圖處理單元24試圖自系統(tǒng)存儲(chǔ)器20存取數(shù)據(jù)或快取列。如同上述,當(dāng)繪圖處理單元24存取系統(tǒng)存儲(chǔ)器20的事件愈少(于低或零緩沖器配置下),繪圖處理單元24處理繪圖操作就愈快。因此,圖2的元件,為繪圖處理單元24許多其他未顯示元件的一部分。繪圖處理單元24包括一總線接口單元30用以接收以及傳遞數(shù)據(jù)與指令。于一實(shí)施例中,總線接口單元30包括一顯示讀取地址轉(zhuǎn)譯元件31用以使系統(tǒng)存儲(chǔ)器20的存取減到最少。圖2的顯示讀取地址轉(zhuǎn)譯元件31于此還搭配圖3及圖4一起說(shuō)明,其中,圖3及圖4包括顯示讀取地址轉(zhuǎn)譯元件31的操作步驟流程圖。于圖2的一非限定實(shí)施例中,及圖3與圖4的說(shuō)明中,于一低或零幀緩沖器繪圖系統(tǒng)中,為了克服顯示讀取的過(guò)長(zhǎng)延遲時(shí)間,可實(shí)施一預(yù)取基礎(chǔ)的繪圖地址再對(duì)映表快取存儲(chǔ)器系統(tǒng)。于顯示讀取操作時(shí),此非限定實(shí)施例使得頁(yè)表取得延遲減到最小甚至消除。顯示讀取地址轉(zhuǎn)譯元件31包含與一頁(yè)表快取存儲(chǔ)器(或一區(qū)域快取存儲(chǔ)器)34連接的一顯示讀取控制器32。于一非限定實(shí)施例中,頁(yè)表快取存儲(chǔ)器34用以?xún)?chǔ)存于圖磚格式下的頁(yè)的一條完整顯示列。一可編程暫存器(未圖示)可用以依據(jù)顯示器的顯示解析度設(shè)定單一顯示列的大小,從而調(diào)整儲(chǔ)存于頁(yè)表快取存儲(chǔ)器34的數(shù)據(jù)數(shù)目。于一非限定實(shí)施例中,控制頁(yè)表快取存儲(chǔ)器34大小的暫存器位可以符合8-圖磚快取列的數(shù)目實(shí)現(xiàn),用以完成一顯示列。于圖3的流程50中,圖2的顯示讀取控制器32接收一顯示讀取請(qǐng)求,如步驟52所示。除了此顯示讀取請(qǐng)求,顯示讀取控制器32亦接收對(duì)應(yīng)于欲存取的數(shù)據(jù)的一邏輯地址。之后,于步驟54中,耦接顯示讀取控制器32的一命中/未命中測(cè)試元件38(圖2)判斷頁(yè)表快取存儲(chǔ)器34是否包含對(duì)應(yīng)于步驟52所接收的邏輯地址的實(shí)體地址。此測(cè)試的至少一目的為判斷實(shí)體地址是否儲(chǔ)存于顯示讀取地址轉(zhuǎn)譯元件31,或需要自?xún)?chǔ)存于系統(tǒng)存儲(chǔ)器20的繪圖地址再對(duì)映表取得。因此,如圖3所示,步驟54顯示命中/未命中測(cè)試元件38的結(jié)果有兩種。其中一種結(jié)果為"未命中",意即實(shí)體地址未包含于頁(yè)表快取存儲(chǔ)器34中。另一種結(jié)果為"命表快取存儲(chǔ)器34。接續(xù)"未命中"的分支,接著于步驟56中,命中/未命中測(cè)試元件38促使未命中預(yù)取元件41于此事件中產(chǎn)生一快取請(qǐng)求取得址。于步驟58中,未命中預(yù)取元件41經(jīng)由多任務(wù)器44將此快取請(qǐng)求取得命令遞送至北橋14,并進(jìn)入系統(tǒng)存儲(chǔ)器20。于系統(tǒng)存儲(chǔ)器20中,繪圖地址再對(duì)映表儲(chǔ)存于此,因此,可取得與預(yù)取命令相關(guān)的快取存儲(chǔ)器數(shù)據(jù),并傳回繪圖處理單元24。更具體地,如步驟62所示,快取請(qǐng)求取得命令致使一定數(shù)目的快取列自繪圖地址再對(duì)映表而取得,此繪圖地址再對(duì)映表對(duì)應(yīng)一可編程暫存器項(xiàng)目的一暫存器變量。于一非限定實(shí)施例中,此暫存器可使頁(yè)表快取存儲(chǔ)器34保留與維持一完整顯示列,以供耦接繪圖處理單元24的一顯示單元所需。由系統(tǒng)存儲(chǔ)器20中接收繪圖地址再對(duì)映表的所取得的快取列之后,此快取列會(huì)被儲(chǔ)存于頁(yè)表快取存儲(chǔ)器34。然后,于步驟64中,顯示讀取控制器32通過(guò)命中/未命中元件38將與快取列相關(guān)的邏輯地址轉(zhuǎn)譯為區(qū)域快取存儲(chǔ)器的實(shí)體地址。之后,步驟66中命中預(yù)取元件42所轉(zhuǎn)譯的實(shí)體地址自多任務(wù)器44輸出,并透過(guò)北橋14存取儲(chǔ)存于系統(tǒng)存儲(chǔ)器20中對(duì)應(yīng)于此實(shí)體地址的定址數(shù)據(jù)。如圖3所示,流程50的步驟64及66可接續(xù)在步驟54"未命中,,的結(jié)果的后續(xù)步驟62之后;亦可為步驟54"命中"的結(jié)果的后續(xù)。返回步驟54,若該命中/未命中測(cè)試元件38判斷此實(shí)體地址儲(chǔ)存于頁(yè)表快取存儲(chǔ)器34,則結(jié)果為"命中"。如同步驟64的說(shuō)明,于步驟52中,將所接收的邏輯地址轉(zhuǎn)譯或改變?yōu)閮?chǔ)存于頁(yè)表快取存儲(chǔ)器34的一實(shí)體地址。然后,自命中預(yù)取元件42經(jīng)由多任務(wù)器44將實(shí)體地址輸出至北橋14,以存取系統(tǒng)存儲(chǔ)器20中對(duì)應(yīng)于步驟64中所轉(zhuǎn)譯的實(shí)體地址的數(shù)據(jù)。如上所述,于步驟56、58及62中,最初取得的既定數(shù)目的快取列,可透過(guò)一可編程暫存器來(lái)指定。因此,一起始單頁(yè)的"未命中,,,會(huì)導(dǎo)致一整個(gè)顯示列被取出并儲(chǔ)存于頁(yè)表快取存儲(chǔ)器34中。然而,隨著步驟54所執(zhí)行的每個(gè)命中/未命中測(cè)試,"命中"的結(jié)果應(yīng)比"未命中"多,因而減少存取系統(tǒng)存儲(chǔ)器20。圖5顯示一顯示頁(yè)地址預(yù)取方塊示意圖80,其為圖2中儲(chǔ)存于頁(yè)表快取存儲(chǔ)器34的快取列。一開(kāi)始存取8-圖磚頁(yè)地址快取列O時(shí),結(jié)果可能是如圖3步驟54所示的"未命中"。換句話說(shuō),當(dāng)圖3的流程50開(kāi)始執(zhí)行時(shí),頁(yè)表快取存儲(chǔ)器34包含較多圖5的快取列80,而命中/未命中元件38的起始結(jié)果導(dǎo)致步驟56、58及62被執(zhí)行,因而取得于圖5的快取列0-3,其對(duì)應(yīng)于一完整顯示列。一旦包含于圖5的快取列0的所有數(shù)據(jù)消耗完畢時(shí),則流程繼續(xù)移動(dòng)至圖5的快取列1,之后,顯示讀取地址轉(zhuǎn)譯元件31取得或預(yù)取下一個(gè)快取列。于此非限定實(shí)施例中,下一個(gè)快取列為快取列4。因此,自系統(tǒng)存儲(chǔ)器20預(yù)取快取列4可與顯示讀取控制器32保持一足夠的領(lǐng)先距離,使顯示讀取控制器32可存取四組快取列,包括快取列l(wèi)-4。此預(yù)取方法將系統(tǒng)存儲(chǔ)器20的實(shí)體地址造成的延遲時(shí)間減少。如上所述,快取列O完成后會(huì)讓顯示讀取控制器移動(dòng)至快取列l(wèi),但亦產(chǎn)生快取列4的預(yù)取(以對(duì)角線箭號(hào),由快取列l(wèi)延伸至快取列4表示)。同樣地,快取列l(wèi)完成后,顯示讀取控制器32會(huì)移動(dòng)至快取列2,之后,預(yù)取快取列5,由快取列2延伸至快取列5,以對(duì)角線箭號(hào)表示。以此方式,頁(yè)表快取存儲(chǔ)器34持續(xù)領(lǐng)先顯示讀取控制器32,并保持一額外顯示列的數(shù)據(jù),以將繪圖處理單元取得實(shí)體地址,以及相關(guān)數(shù)據(jù)所花費(fèi)的雙倍時(shí)間最小化。請(qǐng)參考圖4,繼續(xù)流程50以讀取另一快取列,如同前一段的說(shuō)明。于圖3的步驟66完成后,其中顯示讀取地址轉(zhuǎn)譯元件31輸出一實(shí)體地址,以讀取對(duì)應(yīng)于系統(tǒng)存儲(chǔ)器20的實(shí)體地址的數(shù)據(jù),然后繼續(xù)步驟72。于步驟72中,判斷(由命中/未命中元件38完成)目前執(zhí)行的快取列是否已經(jīng)消耗或完成。如上所述,若步驟72對(duì)應(yīng)于圖5的快取列0已完成,則使顯示讀取控制器32前進(jìn)至快取列l(wèi)。若沒(méi)有完成,則流程50前進(jìn)步驟52(圖3),以接收下一個(gè)顯示讀取請(qǐng)求與執(zhí)行所需的邏輯地址。然而,于一非限定實(shí)施例中,若快取列O已經(jīng)消耗完畢(所有數(shù)據(jù)都已使用),則步驟72的結(jié)果為是,導(dǎo)致顯示讀取控制器32移動(dòng)至下一個(gè)儲(chǔ)存于頁(yè)表快取存儲(chǔ)器34的快取列(快取列1)。之后,于步驟74中命中預(yù)取元件42產(chǎn)生下一個(gè)快取請(qǐng)求命令,以便預(yù)取下一個(gè)快取列。于繪圖處理單元24中,命中預(yù)取元件42透過(guò)總線接口單元30的多任務(wù)器44,將下一個(gè)快取請(qǐng)求命令遞送至北橋14及系統(tǒng)存儲(chǔ)器20所儲(chǔ)存的繪圖地址再對(duì)映表。下一個(gè)快取列,例如快取列4,于一非限定實(shí)施例中,是自繪圖地址再對(duì)映表及系統(tǒng)存儲(chǔ)器20取得。快:f又列4被回傳并儲(chǔ)存于頁(yè)表快取存儲(chǔ)器34。因此如上所述,圖5中的對(duì)角線箭號(hào)指到前一個(gè)快取存儲(chǔ)器消耗后所預(yù)取的下一個(gè)快取列,其中前一個(gè)快取存儲(chǔ)器已預(yù)取并儲(chǔ)存于頁(yè)表快取存儲(chǔ)器34。如上所述,依此方式,顯示讀取控制器32就能夠保持足夠數(shù)目的快取列于頁(yè)表快取存儲(chǔ)器34中,用以將任何接收的邏輯地址轉(zhuǎn)譯至相對(duì)應(yīng)的實(shí)體地址。此種配置可減少總線接口單元30透過(guò)系統(tǒng)存儲(chǔ)器20讀取實(shí)體地址,然后再讀取實(shí)體地址對(duì)應(yīng)的數(shù)據(jù)的次數(shù),因此種方式會(huì)產(chǎn)生雙次讀耳又且增加延遲時(shí)間。以此非限定實(shí)施例繼續(xù)說(shuō)明,當(dāng)圖3步驟54判斷一初始"未命中,,的結(jié)果后,會(huì)接續(xù)執(zhí)行圖3的步驟56、58及62以取得頁(yè)0-3,并使頁(yè)表快取存儲(chǔ)器34擁有四組快取列。然而,當(dāng)任一快取列消耗完畢后,對(duì)應(yīng)于步驟74、76及78的命中預(yù)取操作會(huì)導(dǎo)致一額外快取列的增加,例如快取列O消耗完畢之后,圖5所示的快取列4。接著,于步驟54每次"命中"后,步驟72(由命中/未命中元件38)會(huì)判斷是否應(yīng)自系統(tǒng)存儲(chǔ)器20的繪圖地址再對(duì)映表取得一額外快取列。若是,如步驟74、76及78所顯示,命中預(yù)取元件42取得一額外快取列。因此,于一非限定實(shí)施例中,頁(yè)表快取存儲(chǔ)器34隨時(shí)保持一指定數(shù)量的實(shí)體地址,并領(lǐng)先于正在處理的地址,并將拖慢處理操作的數(shù)據(jù)取得雙倍操作數(shù)量減到最少。以上所述僅為本發(fā)明較佳實(shí)施例,然其并非用以限定本發(fā)明的范圍,任何熟悉本項(xiàng)技術(shù)的人員,在不脫離本發(fā)明的精神和范圍內(nèi),可在此基礎(chǔ)上做進(jìn)一步的改進(jìn)和變化,因此本發(fā)明的保護(hù)范圍當(dāng)以本申請(qǐng)的權(quán)利要求書(shū)所界定的范圍為準(zhǔn)。附圖中符號(hào)的簡(jiǎn)單說(shuō)明如下12:中央處理單元14:北橋(系統(tǒng)控制器)16:南橋20:系統(tǒng)存儲(chǔ)器21:外圍設(shè)備24:纟會(huì)圖處理單元28:區(qū)域幀緩沖器30:總線接口單元31:顯示讀耳又地址轉(zhuǎn)i奪元件32:顯示讀取控制器34:頁(yè)表快取存儲(chǔ)器38:命中/未命中測(cè)試元件41:未命中預(yù)取元件42:命中預(yù)取元件44:多任務(wù)器。權(quán)利要求1.一種繪圖處理方法,其特征在于,用于一繪圖處理單元,以維持儲(chǔ)存于一頁(yè)表快取存儲(chǔ)器的頁(yè)表信息,該繪圖處理方法包括下列步驟接收一顯示讀取請(qǐng)求,其具有對(duì)應(yīng)于欲取得數(shù)據(jù)的一邏輯地址;判斷于該繪圖處理單元的頁(yè)表快取存儲(chǔ)器中是否包含對(duì)應(yīng)于該邏輯地址的一實(shí)體地址;當(dāng)該頁(yè)表快取存儲(chǔ)器未包含對(duì)應(yīng)于該邏輯地址的該實(shí)體地址時(shí),產(chǎn)生一快取請(qǐng)求取得命令,其中該邏輯地址用以與耦接于該繪圖處理單元的一存儲(chǔ)器溝通;自該存儲(chǔ)器的一對(duì)應(yīng)表將一既定數(shù)目的快取列回傳至該繪圖處理單元;將該邏輯地址轉(zhuǎn)換為該實(shí)體地址;以及自該存儲(chǔ)器取得與該實(shí)體地址對(duì)應(yīng)的數(shù)據(jù)。2.根據(jù)權(quán)利要求l所述的繪圖處理方法,其特征在于,當(dāng)該頁(yè)表快取存儲(chǔ)器包含對(duì)應(yīng)于該邏輯地址的該實(shí)體地址時(shí),則不產(chǎn)生該快取請(qǐng)求取得命令。3.根據(jù)權(quán)利要求l所述的繪圖處理方法,其特征在于,當(dāng)位于該頁(yè)表快取存儲(chǔ)器的前一個(gè)讀取的快取列消耗完畢時(shí),則產(chǎn)生下一個(gè)快取請(qǐng)求命令。4.根據(jù)權(quán)利要求l所述的繪圖處理方法,其特征在于,該繪圖處理單元不具備區(qū)域幀緩沖器。5.—種繪圖處理單元,其特征在于,耦接至一系統(tǒng)控制器,該系統(tǒng)控制器耦接至一計(jì)算機(jī)的一存儲(chǔ)器,該繪圖處理單元包括一顯示讀取控制器,用以接收一顯示讀取請(qǐng)求,其中,該顯示讀取請(qǐng)求包含對(duì)應(yīng)于欲存取數(shù)據(jù)的一邏輯地址;一區(qū)域快取存儲(chǔ)器,用以?xún)?chǔ)存一既定數(shù)目的快取列,其中,該快取列對(duì)應(yīng)于該計(jì)算機(jī)的該存儲(chǔ)器的非連續(xù)存儲(chǔ)器部分;一測(cè)試元件,耦接至該顯示讀取控制器,并用以判斷與該顯示讀取-清求相關(guān)的該邏輯地址所對(duì)應(yīng)的一實(shí)體地址是否包含于該區(qū)域快取存儲(chǔ)器內(nèi);一第一預(yù)取元件,用以于該測(cè)試元件輸出的結(jié)果為該區(qū)域快取存儲(chǔ)器并未包含與該顯示讀取請(qǐng)求相關(guān)的該邏輯地址所對(duì)應(yīng)的該實(shí)體地址時(shí),產(chǎn)生一快取請(qǐng)求取得命令,以自該計(jì)算機(jī)存儲(chǔ)器的一對(duì)應(yīng)表中取得該既定數(shù)目的快取列;以及一第二預(yù)取元件,用以于儲(chǔ)存于該區(qū)域快取存儲(chǔ)器的一快取列消耗完畢時(shí),產(chǎn)生下一個(gè)快取請(qǐng)求命令自該計(jì)算機(jī)的該存儲(chǔ)器取得下一個(gè)快取列。6.根據(jù)權(quán)利要求5所述的該繪圖處理單元,其特征在于,更包括一系統(tǒng)控制器,耦接于該繪圖處理單元及該計(jì)算機(jī)的該存儲(chǔ)器之間,其中,該系統(tǒng)控制器將自耦接于該系統(tǒng)控制器的一處理器所接收的該顯示讀取請(qǐng)求發(fā)送至該繪圖處理單元;一可編程暫存器,用以建立該既定數(shù)目快取列,其為一定數(shù)目的快取列,對(duì)應(yīng)于耦接至該繪圖處理單元的一顯示器單元的完整顯示列,其中,該所取得的既定數(shù)目的快取列與該快取請(qǐng)求取得命令相關(guān);以及一多任務(wù)器,耦接于該第一預(yù)取元件、該第二預(yù)取元件及該顯示讀取控制器,用以將信號(hào)輸出至該系統(tǒng)控制器。7.根據(jù)權(quán)利要求5所述的該繪圖處理單元,其特征在于,該第二預(yù)取元件,用以產(chǎn)生該下一個(gè)快取請(qǐng)求命令,以于該區(qū)域快取存儲(chǔ)器中保持一定數(shù)目的快取列,能領(lǐng)先于繪圖處理單元目前正在處理的一位置,其中,該區(qū)域快取存儲(chǔ)器對(duì)應(yīng)于一耦接至該繪圖處理單元的一顯示單元的一完整顯示列。8.—種繪圖處理方法,其特征在于,適用于一繪圖處理單元缺少一區(qū)域幀緩沖器的一計(jì)算機(jī)系統(tǒng)中,用以使系統(tǒng)存儲(chǔ)器的存取減到最少,該繪圖處理方法包括下列步驟判斷一實(shí)體地址是否包含于該繪圖處理單元的一頁(yè)表快取存儲(chǔ)器,該實(shí)體地址與耦接于該繪圖處理單元的一系統(tǒng)存儲(chǔ)器的繪圖相關(guān)數(shù)據(jù)有關(guān),且對(duì)應(yīng)于一已接收的邏輯地址,其中,該已接收的邏輯地址包含于該頁(yè)表快取存儲(chǔ)器時(shí)被轉(zhuǎn)譯成該實(shí)體地址;當(dāng)該已接收的邏輯地址所對(duì)應(yīng)的該實(shí)體地址并未包含于該頁(yè)表快取存儲(chǔ)器中時(shí),產(chǎn)生一快取請(qǐng)求以自該系統(tǒng)存儲(chǔ)器取得一既定數(shù)目的快取頁(yè);以及當(dāng)該頁(yè)表快取存儲(chǔ)器的一或多個(gè)快取頁(yè)消耗完畢時(shí),產(chǎn)生下一個(gè)快取請(qǐng)求命令以自該系統(tǒng)存儲(chǔ)器取得一定數(shù)目的快取頁(yè),使該繪圖處理單元的該頁(yè)表快取存儲(chǔ)器中保持該既定數(shù)目的快取頁(yè)。9.根據(jù)權(quán)利要求8所述的繪圖處理方法,其特征在于,該既定數(shù)目的快取頁(yè)自該系統(tǒng)存儲(chǔ)器的一繪圖地址再對(duì)映表取得。10.根據(jù)權(quán)利要求8所述的繪圖處理方法,其特征在于,更包括以下步驟自該系統(tǒng)存儲(chǔ)器取得該既定數(shù)目的快取頁(yè)后,將該已接收的邏輯地址轉(zhuǎn)i爭(zhēng)至該實(shí)體地址。全文摘要一種繪圖處理單元及方法,特別涉及一種繪圖處理方法,使繪圖處理單元維持一區(qū)域快取存儲(chǔ)器,并將系統(tǒng)存儲(chǔ)器的存取減到最少。于接收到顯示讀取請(qǐng)求與邏輯地址時(shí),繪圖處理單元判斷區(qū)域快取存儲(chǔ)器是否包含對(duì)應(yīng)該邏輯地址的實(shí)體地址。假如未包含,則產(chǎn)生快取讀取命令,并由存儲(chǔ)器的對(duì)映表中取得一定數(shù)目的快取列,例如繪圖地址再對(duì)映表。經(jīng)由對(duì)映表取得此快取列后,邏輯地址會(huì)轉(zhuǎn)換成一對(duì)應(yīng)存儲(chǔ)器的實(shí)體地址,使繪圖處理單元可存取存儲(chǔ)器的數(shù)據(jù)。當(dāng)區(qū)域快取存儲(chǔ)器的一快取列消耗完畢時(shí),可產(chǎn)生下一個(gè)快取列讀取請(qǐng)求以自對(duì)映表取得下一個(gè)快取列,并使得區(qū)域快取存儲(chǔ)器保持既定數(shù)量的快取列。本發(fā)明可增加繪圖處理單元的效能,提高系統(tǒng)效率。文檔編號(hào)G06T1/60GK101201933SQ20081000037公開(kāi)日2008年6月18日申請(qǐng)日期2008年1月8日優(yōu)先權(quán)日2007年5月1日發(fā)明者孔德海,平陳申請(qǐng)人:威盛電子股份有限公司