TWI428748B - 繪圖資料存取系統及方法 - Google Patents
繪圖資料存取系統及方法 Download PDFInfo
- Publication number
- TWI428748B TWI428748B TW99101185A TW99101185A TWI428748B TW I428748 B TWI428748 B TW I428748B TW 99101185 A TW99101185 A TW 99101185A TW 99101185 A TW99101185 A TW 99101185A TW I428748 B TWI428748 B TW I428748B
- Authority
- TW
- Taiwan
- Prior art keywords
- address
- state
- drawing data
- physical address
- main memory
- Prior art date
Links
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Description
本發明係關於繪圖資料存取系統及方法,更係關於避免藉由監視路徑(snooping path)存取繪圖資料以增進效率之繪圖資料存取系統及方法。
現在的電腦系統中,處理器或繪圖模組中常會具有專用的快取記憶體(cache memory或cache)。有別於位於處理器或繪圖模組之外的主記憶體(又稱系統記憶體),快取記憶體係為一個小型記憶體,用來存放經常使用到的程式碼及資料,可增進處理器或繪圖模組存取資料之速度。然而,共用一主記憶體之處理器與繪圖模組間自然存在著快取資料一致性(cache coherence)之問題,而一般來說,常採用監視交流(snoop transaction)與非監視交流(non-snoop transaction)並行的方法來克服之。
第1圖為先前技術之中央處理器(CPU)110與繪圖模組160間快取記憶體架構示意圖。電腦系統100包括一CPU 110、一主記憶體120、一北橋晶片180及一繪圖模組160,而該北橋晶片又包括一前端匯流排界面130、一主記憶體控制器140、一繪圖模組界面150。在另一實施例中,繪圖模組160也可包含在北橋晶片中。
該CPU 110中,如同前述,具有一CPU快取記憶體112,用以增加CPU 110之存取速度。主記憶體120具有複數個實體位址,並分別存放各種資料。前端匯流排界面130耦接至CPU 110做為CPU 110及繪圖模組160間之界面,前端匯流排界面130除管理CPU 110與繪圖模組160間之溝通外,亦可另外連接至電腦系統100中的其它裝置,例如南橋晶片、PCI等裝置(圖未示)。主記憶體控制器140耦接至主記憶體120及前端匯流排界面130。繪圖模組界面150為存在於主記憶體控制器140與繪圖模組160間之界面。繪圖模組160中,如同前述,具有一繪圖快取記憶體162,以增加繪圖模組160之存取速度。
在先前技術中,當繪圖模組160接收一存取指令時,其會參照繪圖快取記憶體162中之繪圖位址對映表GAMT(Graphics Address Mapping Table,GAMT),將該存取指令所對應之虛擬位址(Virtual Address)轉換成實體位址(Physical Address)。其中,完整的繪圖位址對映表GAMT係儲存於主記憶體120中,而繪圖模組160會擷取主記憶體120中的繪圖位址對映表GAMT,並將該表中較常使用之部分存於繪圖快取記憶體162以供使用。第2圖為一繪圖位址對映表示意圖。舉例而言,該繪圖位址對映表中之每一項(entry)包括6個欄。第1欄VA記錄著虛擬位址,大小通常為16K位元組;接下來之四欄PA0~PA3則分別指向四個大小約為4K位元組的實體位址;而最末欄LRU通常用來記錄近期最少使用(Least Recently Used)的實體位址的資訊,當繪圖快取記憶體162空間不夠時,會依照該LRU提供的資訊替換掉該繪圖位址對映表中最少使用之某項。值得注意的是,在各實體位址欄中,皆有一監視位元(snoop bit),用以指出該實體位址之資料是否存在CPU快取記憶體112中。舉例而言,當繪圖模組160接收一存取指令時會檢驗對應該存取指令之實體位址,若該實體位址之監視位元為1(可快取),則表示CPU 110之CPU快取記憶體112中可能存有對應於該實體位址之資料,則繪圖模組160會透過前端匯流排界面130而向CPU 110發出請求以存取其中對應該實體位址之資料,或者,在前端匯流排界面130監視並判斷CPU快取記憶體112無該筆資料時,復又透過主記憶體控制器140至主記憶體120存取該資料(以上路徑皆通稱為監視路徑A)。若該監視位元為0(不可快取),則表示該資料必不存在於CPU快取記憶體112中,此時,繪圖模組160會透過繪圖模組界面150及主記憶體控制器140向主記憶體120發出請求並存取主記憶體120中之該筆資料(此路徑稱為非監視路徑B)。
然而,當繪圖模組160存取之請求是透過監視路徑A發出時,由於前端匯流排界面130另外管理其他裝置,例如;南橋晶片、PCI、或其他裝置,繪圖模組160發出之請求必須與其他裝置發出之請求一同等候。之後,前端匯流排界面130始對CPU 110進行匯流排協定監視(bus protocol snooping)等動作,並在獲知CPU 110快取記憶體中無該筆資料的情形下改成至主記憶體120存取資料。因此,相對而言,監視路徑A消耗的時間會比藉由繪圖模組介面150和主記憶體控制器140直接存取主記憶體120之非監視路徑B長得多,在多個時脈之後,監視路徑A所累積消耗的時間將使系統效能受到不良的影響。
本發明目的在藉由持續追蹤資料狀態,以減少先前技術中繪圖資料存取上透過監視路徑所累積消耗的時間,進而改善繪圖系統之效能。
本發明提供一種繪圖資料存取系統,包括:一主記憶體控制器以及一繪圖快取控制器。其中該主記憶體控制器耦接具有複數個實體位址之一主記憶體,用以直接存取該主記憶體;而該繪圖快取控制器耦接至該主記憶體控制器,用以接收一存取指令。該繪圖快取控制器包括一繪圖位址對映表(Graphics Address Mapping Table,GAMT)及一繪圖位址狀態表。該繪圖快取控制器根據該繪圖位址對映表將該存取指令所對應之一虛擬位址對映到一實體位址,且根據該繪圖位址狀態表將該實體位址再對映到複數個狀態中之一狀態。接著,該繪圖快取控制器根據該狀態選擇從一處理器之記憶體或該主記憶體中存取。
本發明另提供一種繪圖資料存取方法,包括:接收一存取指令;根據一繪圖位址對映表將該存取指令所對應之一虛擬位址對映到一實體位址;根據一繪圖位址狀態表將該實體位址再對映到複數個狀態中之一狀態;以及根據該狀態選擇從一處理器之記憶體或一主記憶體中存取該存取指令所對應之一繪圖資料。
下文為介紹本發明之最佳實施例。各實施例用以說明本發明之原理,但非用以限制本發明。本發明之範圍當以後附之權利要求項為準。
第3圖為依照本發明一實施例之繪圖資料存取系統300。本發明之繪圖資料存取系統300包括一CPU 310、一主記憶體320、一北橋晶片380及一繪圖模組360。其中北橋晶片380包括一前端匯流排界面330、一主記憶體控制器340、及一繪圖模組界面350。CPU 310中,具有一CPU快取記憶體312,用以增加CPU 310之存取速度。主記憶體320具有複數個實體位址,並分別存放各種資料,包括存放一繪圖位址對映表(Graphics Address Mapping Table,GAMT)。前端匯流排界面330耦接至CPU 310,用以監視(snoop)CPU 310存取主記憶體。主記憶體控制器340耦接至主記憶體320及前端匯流排界面330,主要用以直接存取主記憶體320。繪圖模組界面350為存在於主記憶體控制器340與繪圖模組360間之界面。繪圖模組360包括一繪圖快取控制器362,其耦接至前端匯流排界面330,並透過繪圖模組界面350耦接至主記憶體控制器340,用以接收一存取指令R/W(讀取或寫入),並依據存取指令R/W所對應之實體位址選擇從CPU快取記憶體312或主記憶體320存取資料。在本實施例中,上述之繪圖模組360係位於北橋晶片380之外。在另一實施例中,繪圖模組360亦可位於北橋晶片380中。然而,在其他實施例中,本發明不必以此為限。
本發明之繪圖快取控制器362除了包括一繪圖位址對映表GAMT之外,另包括一繪圖位址狀態表GAST。繪圖快取控制器362會擷取儲存於主記憶體320中完整的繪圖位址對映表GAMT,將該表中較常使用之部分儲存於繪圖快取控制器362中以供使用。第4圖為該繪圖位址對映表GAMT及一繪圖位址狀態表GAST之示意圖。請一併參照第3圖。繪圖快取控制器362可根據繪圖位址對映表GAMT,將存取指令R/W所對應之一虛擬位址VA對映到一實體位址PA,然後根據繪圖位址狀態表GAST將實體位址PA再對映到一狀態。由於一個虛擬位址VA可能對映到複數個實體位址PA,舉例而言,在本實施例中一個16K大小的虛擬位址VA_0可對映到4個分別為4K大小的實體位址PA_00~PA_03,繪圖快取控制器362可藉由繪圖位址狀態表GAST中標籤欄(Tag)的資訊,以確認所選擇之實體位址PA對應之資料是否正確。
此外,在本發明另一實施例中,繪圖位址對映表GAMT中可包含LRU(Least Recently Used)欄位,通常用來記錄近期最少使用的虛擬位址的資訊,當繪圖快取記憶體362空間不夠時,會依照該LRU提供的資訊替換掉繪圖位址對映表GAMT中最少使用之某項。
繪圖快取控制器362根據實體位址PA對應的狀態選擇一資料存取路徑,並存取對應於存取指令R/W之繪圖資料。在本發明中,藉由將不同實體位址依照其使用狀況而定義不同狀態之方式,可大幅減少繪圖快取控制器362透過前端匯流排界面330進行監視(snoop)處理器(如先前技術中之監視路徑A)之次數,並採用非監視路徑B(透過繪圖模組介面350及主記憶體控制器340存取主記憶體320之方式)取代監視路徑A,進而改善繪圖資料存取之效率。
在一較佳實施例中,繪圖位址狀態表GAST中之狀態可包括:一初始狀態、一共享狀態及一修正狀態。各狀態設定如下:
(1)初始狀態:當繪圖位址狀態表GAST之一項在初始化或被無效化後、或沒有登錄任何實體位址時,則該項登記為該初始狀態I,如第4圖所示。
(2)共享狀態:當繪圖位址對映表GAMT中之一實體位址(例如PA_00)首次被登錄至繪圖位址狀態表GAST時,則在繪圖位址狀態表GAST中將實體位址PA_00登記為共享狀態S。
(3)修正狀態:若繪圖位址對映表GAMT中之一實體位址(例如PA_11)所對應之繪圖資料曾被繪圖快取控制器362存取過,無論是透過監視路徑A或非監視路徑B,則在繪圖位址狀態表GAST中將實體位址PA_11登記為修正狀態M。關於本發明如何將共享狀態S修改為修正狀態M之機制將於後文詳述。
再來說明本發明之繪圖快取控制器362之功能。在一實施例中,繪圖快取控制器362接收存取指令R/W0後,可根據繪圖位址對映表GAMT將存取指令R/W0所對應之虛擬位址VA_0轉換成之一實體位址PA_00。因為該實體位址PA_00是首次被登錄至繪圖位址狀態表GAST,且未曾被其他存取指令據以進行存取動作,故在繪圖位址狀態表GAST中將實體位址PA_00登記為共享狀態S。其後,由於實體位址PA_00未曾被存取或更新,為維持繪圖模組360與CPU 310間之快取資料一致性,故繪圖快取控制器362會依據共享狀態S而選擇透過前端匯流排界面330(監視路徑A)進行資料存取。之後,前端匯流排界面330會進一步監視CPU 310。在一情況下,當CPU 310之CPU快取記憶體312中欲被存取之資料未失效時,前端匯流排界面330會對CPU快取記憶體312進行存取。在另一情況下,當前端匯流排界面330發現CPU快取記憶體312中欲被存取之資料已經失效時,則前端匯流排界面330改藉由主記憶體控制器340至主記憶體320中存取指令R/W0所對應之實體位址PA_00上存取繪圖資料。無論如何,在存取繪圖資料後,繪圖模組360會將CPU快取記憶體312中對應存取指令R/W0之繪圖資料予以無效化,以維持快取資料一致性。如上所述,此實體位址PA_00在經過存取後,狀態將不再是共享狀態S,而會改成修正狀態M。
在另一實施例中,繪圖快取控制器362在接收存取指令R/W1後,發現存取指令R/W1所對應之虛擬位址VA_1轉換成的實體位址PA_11已登錄於繪圖位址狀態表GAST中,且其狀態已登記為修正狀態M,故得知該實體位址PA_11曾被其他存取指令據以存取資料。因此,該繪圖快取控制器362可選擇透過繪圖模組界面350及主記憶體控制器340直接存取位於主記憶體320中實體位址PA_11之繪圖資料(非監視路徑B)。如此一來,依照本發明之繪圖資料存取系統,僅首次被存取之實體位址會透過監視路徑A來存取,大部分的存取動作將會透過非監視路徑B進行,因而能減少透過監視路徑存取繪圖資料所累積消耗的時間,進而改善繪圖系統之效能。
值得注意的是,為使CPU 310與繪圖模組360間維持快取資料一致性,在一最佳實施例中,本發明之繪圖資料存取系統300可另外包括一專用的繪圖監視匯流排(路徑C)。該繪圖監視匯流排耦接於前端匯流排界面330與繪圖快取控制器362之間,當CPU 310對主記憶體320或其他裝置中之快取記憶體存取繪圖資料時,CPU 310可透過該繪圖監視匯流排(路徑C),使繪圖快取控制器362中繪圖位址狀態表GAST所對應該繪圖資料之實體位址無效化,或者,將繪圖位址狀態表GAST中所對應該繪圖資料之實體位址的狀態修改為共享狀態S。在未使用該繪圖監視匯流排(路徑C)的情況下,CPU 310對繪圖快取控制器362之更新資料可透過原來的管道(路徑A或路徑B)傳遞,而該管道之資料流量負擔將相對沉重。因此,具有專用繪圖監視匯流排之繪圖資料存取系統300,也可使本發明相較於先前技術能獲致更高之繪圖資料存取效能。
此外,在本發明一實施例中,當繪圖位址對映表GAMT的儲存空間不夠時,繪圖快取控制器362可依照近期最少使用(Least Recently Used)欄位LRU所提供的資訊替換掉繪圖位址對映表GAMT中最少使用之某項,同時繪圖快取控制器362會將繪圖位址狀態表GAST中對應該被替換掉的該項的實體位址予以無效化。
值得一提的是,本發明之繪圖位址狀態表GAST所設定之狀態數目不限於「初始狀態」、「共享狀態」、「修正狀態」三種。此外,熟悉技術藝人士亦可依照本發明之精神,對繪圖位址對映表GAMT、繪圖位址狀態表GAST兩者進行整合或變更,甚或減少或增設更多欄位而進行各種用途。
除了上述之繪圖資料存取系統外,本發明另提供一繪圖資料存取方法。第5圖為依照本發明另一實施例之繪圖資料存取方法之流程圖。同前述之說明,本發明之繪圖資料存取方法可應用於一電腦系統中,請一併參照第3、4圖。在步驟S510中,繪圖快取控制器362可根據一繪圖位址對映表GAMT而將一存取指令所對應之一虛擬位址VA對映到一實體位址PA。在步驟S520中,繪圖快取控制器362可根據一繪圖位址狀態表GAST而將實體位址PA再對映到複數個狀態中之一狀態,而該等狀態可以是一初始狀態I、一共享狀態S、及一修正狀態M。請一併參照第4圖及第5圖。其中,當繪圖位址狀態表GAST中之一項在初始化或被無效化之後,或沒有登錄任何實體位址時,則該項登記為初始狀態I;當繪圖位址對映表GAMT中之一實體位址(例如PA_00)首次被登錄至繪圖位址狀態表GAST時,則在繪圖位址狀態表GAST中將該實體位址PA_00登記為共享狀態S;以及當繪圖位址狀態表GAST中之一實體位址(例如PA_11)所對應之繪圖資料曾被繪圖快取控制器362存取過,則在繪圖位址狀態表GAST中將該實體位址PA_11登記為修正狀態M。其後,在步驟S530中,繪圖快取控制器362根據實體位址PA對映的狀態,選擇透過前端匯流排界面330從CPU快取記憶體312中存取該存取指令所對應之繪圖資料,或選擇透過繪圖模組介面350及主記憶體控制器340從主記憶體320中存取該存取指令所對應之繪圖資料。
第6圖為依照本發明另一實施例之繪圖資料存取方法(第5圖)中步驟S530之詳細流程圖。步驟S530更包括:在步驟S610中,判斷存取指令所對應之實體位址於繪圖位址狀態表GAST中登記之狀態。若登記之狀態為共享狀態S時,則進入步驟S620而選擇透過前端匯流排界面330(監視路徑A)存取資料。若登記之狀態為修正狀態M時,則進入步驟S630而選擇透過主記憶體控制器340(非監視路徑B)存取位於主記憶體320中對應該實體位址之繪圖資料。
上述步驟S620又分為兩種狀況。在步驟S640中,前端匯流排界面330會在監視CPU 310後判斷CPU 310之CPU快取記憶體312中對應至該實體位址之繪圖資料是否失效。若CPU快取記憶體312中之對應繪圖資料未失效時,則進入步驟S650而存取CPU快取記憶體312中之繪圖資料。若CPU快取記憶體312中之對應繪圖資料已失效時,則進入步驟S660而選擇透過主記憶體控制器340存取位於主記憶體320之繪圖資料。在存取該繪圖資料後,步驟S650及S660皆進入步驟S670。在步驟S670中,前端匯流排界面330會將CPU快取記憶312中對應該實體位址之繪圖資料無效化,且將繪圖位址狀態表GAST中對應該繪圖資料之狀態修改成該修正狀態M。
最後,在一理想之實施例中,為維持CPU 310與繪圖模組360間之快取資料一致性,本發明之繪圖資料存取方法更包括:當CPU 310對主記憶體320或其他任何裝置中之快取記憶體存取一繪圖資料時,則CPU 310將繪圖模組360中之繪圖位址狀態表GAST表上對應該繪圖資料之實體位址予以無效化(藉由路徑C),或者,將對應該繪圖資料之實體位址的狀態修改成共享狀態S。
如此一來,依照本發明之繪圖資料存取方法,僅首次被存取之實體位址會透過監視路徑A來存取對應之繪圖資料,大部分的存取動作將會透過非監視路徑B來存取,因而能減少透過監視路徑存取繪圖資料所累積消耗的時間,進而改善繪圖系統之效能。
本發明雖以較佳實施例揭露如上,然其並非用以限定本發明的範圍,任何熟習此項技藝者,在不脫離本發明之精神和範圍內,當可做些許的更動與潤飾,因此本發明之保護範圍當視後附之申請專利範圍所界定者為準。
100...電腦系統
110...CPU
112...CPU快取記憶體
120...主記憶體
130...前端匯流排界面
140...主記憶體控制器
150...繪圖模組界面
160...繪圖模組
162...繪圖快取記憶體
180...北橋晶片
GAMT...繪圖位址對映表
300...繪圖資料存取系統
310...CPU
312...CPU快取記憶體
320...主記憶體
330...前端匯流排界面
340...主記憶體控制器
350...繪圖模組界面
360...繪圖模組
362...繪圖快取控制器
380...北橋晶片
GAMT...繪圖位址對映表
GAST...繪圖位址狀態表
S510~S540...步驟
S610~S670...步驟
第1圖為先前技術中CPU 110與繪圖模組160間快取記憶體架構示意圖;
第2圖為一繪圖位址對映表示意圖;
第3圖為依照本發明一實施例之繪圖資料存取系統300;
第4圖為該繪圖位址對映表GAMT及一繪圖位址狀態表GAST之示意圖;
第5圖為依照本發明另一實施例之繪圖資料存取方法之流程圖;
第6圖為依照本發明另一實施例之繪圖資料存取方法(第5圖)中步驟S530之詳細流程圖。
300...繪圖資料存取系統
310...CPU
312...CPU快取記憶體
320...主記憶體
330...前端匯流排界面
340...主記憶體控制器
350...繪圖模組界面
360...繪圖模組
362...繪圖快取控制器
380...北橋晶片
GAMT...繪圖位址對映表
GAST...繪圖位址狀態表
Claims (18)
- 一種繪圖資料存取系統,包括:一主記憶體控制器,耦接具有複數個實體位址之一主記憶體,用以存取該主記憶體;以及一繪圖快取控制器,耦接至該主記憶體控制器,該繪圖快取控制器包括:一繪圖位址對映表;以及一繪圖位址狀態表;其中該繪圖快取控制器用以接收一存取指令,根據該繪圖位址對映表將該存取指令所對應之一虛擬位址對映到一實體位址,再根據該繪圖位址狀態表將該實體位址對映到複數個狀態中之一狀態,且根據該狀態選擇從一處理器之記憶體或該主記憶體中存取該存取指令所對應之一繪圖資料;其中該複數個狀態至少包括:一共享狀態,當該繪圖位址對映表中之一第一實體位址首次被登錄至該繪圖位址狀態表時,則在該繪圖位址狀態表中將該第一實體位址登記為該共享狀態;以及一修正狀態,當該繪圖位址狀態表中之一第二實體位址所對應之繪圖資料曾被該繪圖快取控制器存取過時,則在該繪圖位址狀態表中將該第二實體位址登記為該修正狀態。
- 如申請專利範圍第1項所述之繪圖資料存取系統,其中該繪圖快取控制器接收該存取指令,且該存取指令所對應之該實體位址於該繪圖位址狀態表中登記為該共享狀態 時,則該繪圖快取控制器選擇透過一前端匯流排界面存取位於該處理器之記憶體之該繪圖資料,其中該前端匯流排界面用以監視並存取該處理器之記憶體。
- 如申請專利範圍第2項所述之繪圖資料存取系統,其中該繪圖快取控制器在存取該處理器之記憶體後將該處理器之記憶體中之該繪圖資料無效化,並將該繪圖位址狀態表中對應該繪圖資料之該實體位址之狀態修改成該修正狀態。
- 如申請專利範圍第2項所述之繪圖資料存取系統,其中該前端匯流排界面耦接至該主記憶體控制器,當該前端匯流排界面監視該處理器之記憶體後發現該處理器之記憶體中之該繪圖資料已失效時,該前端匯流排界面透過該主記憶體控制器存取位於該主記憶體之該繪圖資料。
- 如申請專利範圍第1項所述之繪圖資料存取系統,其中該繪圖快取控制器接收該存取指令,且該存取指令所對應之該實體位址於該繪圖位址狀態表中登記為該修正狀態時,則該繪圖快取控制器選擇透過該主記憶體控制器存取位於該主記憶體之該繪圖資料。
- 如申請專利範圍第1項所述之繪圖資料存取系統,其中該複數個狀態更包括一初始狀態,當該繪圖位址狀態表中之一項在初始化或被無效化後,或無登錄任何實體位址時,則該項登記為該初始狀態。
- 如申請專利範圍第1項所述之繪圖資料存取系統,更包括一繪圖監視匯流排,耦接於一前端匯流排界面與該繪圖快取控制器之間,當該處理器存取另一繪圖資料時,該 處理器透過該繪圖監視匯流排使該繪圖位址狀態表中對應該另一繪圖資料之實體位址無效化。
- 如申請專利範圍第1項所述之繪圖資料存取系統,更包括一繪圖監視匯流排,耦接於一前端匯流排界面與該繪圖快取控制器之間,當該處理器存取另一繪圖資料時,該處理器透過該繪圖監視匯流排將該繪圖位址狀態表中對應該另一繪圖資料之實體位址之狀態修改成該共享狀態。
- 如申請專利範圍第1項所述之繪圖資料存取系統,其中該繪圖資料存取系統位於一電腦系統中。
- 如申請專利範圍第9項所述之繪圖資料存取系統,其中該繪圖資料存取系統位於該電腦系統之一北橋晶片中。
- 一種繪圖資料存取方法,包括:根據一繪圖位址對映表將一存取指令所對應之一虛擬位址對映到一實體位址;根據一繪圖位址狀態表將該實體位址對映到複數個狀態中之一狀態;以及根據該狀態選擇從一處理器之記憶體或一主記憶體中存取該存取指令所對應之一繪圖資料;其中該複數個狀態至少包括:一共享狀態,當該繪圖位址對映表中之一第一實體位址首次被登錄至該繪圖位址狀態表時,則在該繪圖位址狀態表中將該第一實體位址登記為該共享狀態;以及一修正狀態,當該繪圖位址狀態表中之一第二實體位址所對應之繪圖資料曾被存取過時,則在該繪圖位址狀態 表中將該第二實體位址登記為該修正狀態。
- 如申請專利範圍第11項所述之繪圖資料存取方法,更包括:當該存取指令所對應之該實體位址於該繪圖位址狀態表中登記為該共享狀態時,選擇透過一前端匯流排界面存取位於該處理器之記憶體之該繪圖資料。
- 如申請專利範圍第12項所述之繪圖資料存取方法,其中在存取該處理器之記憶體後,將該處理器之記憶體之該繪圖資料無效化,並將該繪圖位址狀態表中對應該繪圖資料之該實體位址之狀態修改成該修正狀態。
- 如申請專利範圍第12項所述之繪圖資料存取方法,其中當存取該處理器之記憶體時發現該處理器之記憶體中之該繪圖資料已失效時,透過一主記憶體控制器存取位於該主記憶體之該繪圖資料。
- 如申請專利範圍第11項所述之繪圖資料存取方法,更包括:當該存取指令所對應之該實體位址於該繪圖位址狀態表中登記為該修正狀態時,則透過一主記憶體控制器存取位於該主記憶體之該繪圖資料。
- 如申請專利範圍第11項所述之繪圖資料存取方法,其中該複數個狀態更包括一初始狀態,當該繪圖位址狀態表中之一項在初始化或被無效化後,或無登錄任何實體位址時,則該項登記為該初始狀態。
- 如申請專利範圍第11項所述之繪圖資料存取方法,更包括: 當一處理器存取另一繪圖資料時,將該繪圖位址狀態表中對應該另一繪圖資料之實體位址無效化。
- 如申請專利範圍第11項所述之繪圖資料存取方法,更包括:當一處理器存取另一繪圖資料時,使該繪圖位址狀態表中對應該另一繪圖資料之實體位址之狀態修改成該共享狀態。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW99101185A TWI428748B (zh) | 2010-01-18 | 2010-01-18 | 繪圖資料存取系統及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW99101185A TWI428748B (zh) | 2010-01-18 | 2010-01-18 | 繪圖資料存取系統及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201126340A TW201126340A (en) | 2011-08-01 |
TWI428748B true TWI428748B (zh) | 2014-03-01 |
Family
ID=45024486
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW99101185A TWI428748B (zh) | 2010-01-18 | 2010-01-18 | 繪圖資料存取系統及方法 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI428748B (zh) |
-
2010
- 2010-01-18 TW TW99101185A patent/TWI428748B/zh active
Also Published As
Publication number | Publication date |
---|---|
TW201126340A (en) | 2011-08-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11755203B2 (en) | Multicore shared cache operation engine | |
US10031857B2 (en) | Address translation services for direct accessing of local memory over a network fabric | |
JP4941148B2 (ja) | Gpuにおけるページマッピングのための専用機構 | |
US9218286B2 (en) | System cache with partial write valid states | |
US7623134B1 (en) | System and method for hardware-based GPU paging to system memory | |
US8250254B2 (en) | Offloading input/output (I/O) virtualization operations to a processor | |
US8451281B2 (en) | Shared virtual memory between a host and discrete graphics device in a computing system | |
US7949829B2 (en) | Cache used both as cache and staging buffer | |
KR101379524B1 (ko) | 디스플레이 파이프 내에서의 스트리밍 변환 | |
RU2491616C2 (ru) | Устройство, способ и система управления матрицами | |
CN101853227B (zh) | 改进存储器映射输入/输出请求处理的方法和处理器 | |
JP2017045457A (ja) | トランザクション基盤のハイブリッドメモリモジュール、及びそれを動作させる方法 | |
US20120102273A1 (en) | Memory agent to access memory blade as part of the cache coherency domain | |
US10467138B2 (en) | Caching policies for processing units on multiple sockets | |
CN101868786A (zh) | 虚拟化环境中的地址转换缓存和i/o高速缓存性能改进 | |
US9135177B2 (en) | Scheme to escalate requests with address conflicts | |
US20090006668A1 (en) | Performing direct data transactions with a cache memory | |
TWI502346B (zh) | 根據窺探回應資訊之目錄快取分配技術 | |
CN115269457A (zh) | 使得缓存能够在支持地址转换服务的设备内存储进程特定信息的方法和装置 | |
US20150261679A1 (en) | Host bridge with cache hints | |
US9652560B1 (en) | Non-blocking memory management unit | |
CN110737407A (zh) | 一种支持混合写策略的数据缓冲存储器实现方法 | |
TWI428748B (zh) | 繪圖資料存取系統及方法 | |
US8593472B1 (en) | System and method for accessing a frame buffer via a storage driver | |
CN101789118B (zh) | 绘图数据存取系统及方法 |