TW201335882A - 圖形處理單元及其圖形資料存取方法 - Google Patents
圖形處理單元及其圖形資料存取方法 Download PDFInfo
- Publication number
- TW201335882A TW201335882A TW101105920A TW101105920A TW201335882A TW 201335882 A TW201335882 A TW 201335882A TW 101105920 A TW101105920 A TW 101105920A TW 101105920 A TW101105920 A TW 101105920A TW 201335882 A TW201335882 A TW 201335882A
- Authority
- TW
- Taiwan
- Prior art keywords
- graphics
- data
- processing unit
- bit value
- index
- Prior art date
Links
- 238000012545 processing Methods 0.000 title claims abstract description 136
- 238000000034 method Methods 0.000 title claims abstract description 41
- 230000015654 memory Effects 0.000 claims description 132
- 238000013500 data storage Methods 0.000 claims description 34
- 230000000875 corresponding effect Effects 0.000 description 26
- 238000010586 diagram Methods 0.000 description 10
- 230000011218 segmentation Effects 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 238000005192 partition Methods 0.000 description 4
- 230000002596 correlated effect Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0875—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with dedicated cache, e.g. instruction or stack
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/60—Memory management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/30—Providing cache or TLB in specific location of a processing system
- G06F2212/302—In image processor or graphics adapter
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/45—Caching of specific data in cache memory
- G06F2212/455—Image or video data
Abstract
本發明提供一種圖形處理單元及其圖形資料存取方法。圖形處理單元自伺服器處理單元接收包含待處理紋理影像之第一座標位元值以及第二座標位元值之圖形處理要求指令。圖形處理單元擷取第一座標位元值之至少一第一位元值,並擷取第二座標位元值之至少一第二位元值,並將至少一第一位元值以及至少一第二位元值進行算術邏輯運算得快取索引值。
Description
本發明係關於一種圖形處理單元及其圖形資料存取方法。更具體而言,本發明之圖形處理單元及其圖形資料存取方法,係同時利用像素之二座標值作為快取記憶體索引值之計算,並利用快取記憶體之複數記憶體組分別儲存關聯性高之像素。
於習知之電腦硬體架構中,中央處理單元負責絕大部分之硬體指令運算,然隨著科技之發展,周邊硬體所要求之運算量亦隨之增加,如此將導致中央處理單元之負擔過重,使得整體效能大為降低。而為解決此問題,便於需要較多複雜指令運算之硬體中設置較低階之處理單元,以獨立計算指令之方式減少中央處理單元之工作量,藉以提昇整體效能。其中,最常獨立地設置處理單元之硬體即為圖形顯示硬體。
具體而言,由於圖形顯示硬體(例如顯示卡)需要負責所有影像顯示之相關操作,且影像顯示為電腦運作時相當重要之環節,因此,為降低中央處理單元之工作量以維持整體效能,便於圖形顯示硬體中設置獨立之圖形處理單元(Graphic Processing Unit),透過利用圖形處理單元分擔運算之方式,將可使因影像處理導致之效能低落獲得大幅度之改善。
而目前常用之圖形處理單元,皆可視為較低階之中央處理單元,換言之,圖形處理單元之基本硬體架構與中央處理單元類似,其同樣包含控制邏輯單元以及快取記憶體。據此,雖於圖形顯示硬體中額外使用圖形處理單元可提升整體效能,然與一般中央處理單元運作相似地,若圖形處理單元無法較有效率地使用容量有限之快取記憶體,整體效能將無法有效地提升,甚至有可能使效能更為低落。
詳細來說,同於一般中央處理單元,圖形處理單元之效能主要係根據快取記憶體之存取命中率(hit rate)決定,當圖形處理單元於快取記憶體中進行資料存取時,若資料存取之命中率相對較高,則表示圖形處理單元可以較快速且有效率之方式進行資料之存取,反之,若資料存取之命中率相對較低,則圖形處理單元除需額外分配資源於外部之隨機存取記憶體進行資料存取外,外部之隨機存取記憶體之低讀取速率亦會延遲整體之資料讀取時間,因此,如何透過更有效率之快取記憶體管理方式,以提升圖形處理單元對於快取記憶體之存取命中率,亦為重要之課題。
進一步來說,圖形處理單元之快取記憶體中,每一儲存單位對應於一索引值欄位,而當資料於存入儲存單位前,通常會先根據資料之特定位元挑選索引值欄位,並據以儲存資料至相對應之儲存單位,隨即,當圖形處理單元於收到指令後欲進行資料之存取,圖形處理單元便會根據資料之特定位元,於快取記憶體中挑選相符合之索引值欄位,並確認相對應之儲存單位所存之資料是否正確無誤,若是,則圖形處理單元便可直接於儲存單位中進行資料之存取。
然而,目前圖形處理單元利用影像資料建立索引值之方式,皆未能有效地提升命中率。具體而言,由於影像資料通常具有座標之特異性,因此目前圖形處理單元針對快取記憶體之管理,主要係以同一維度之座標值作為索引值(index)之方式完成,詳言之,當以U維(或V維)座標作為索引值之參照基準時,若影像資料具有Ux及Vy二座標值,習知技術主要係以Ux(或Vy)作為索引值之參照。
以U維座標作為索引值參照為例,當圖形處理單元收到指令後,欲針對(Ux, Vy)之影像資料進行存取時,圖形處理單元將先於快取記憶體中,挑選與Ux值相同之索引值,並再判斷索引值相對應之儲存單位之資料是否符合(Ux, Vy)之影像資料,若命中(hit),則直接針對(Ux, Vy)於快取記憶體中之影像資料進行存取;若失誤(miss),圖形處理單元便須於外部隨機存取記憶體中,重新存取(Ux, Vy)之影像資料,並在將(Ux, Vy)儲存於快取記憶體中相對應之儲存單位後,進行(Ux, Vy)之影像資料之存取使用。
然而,當建立影像此種鄰近座標點內容間具高相關度之資料之索引值時,先前技術以單維度作為快取記憶體索引值之方式之效率將較為低落。舉例而言,同樣以U維座標作為索引值參照為例,假設圖形處理單元之快取記憶體中,已存有(U1, V1)之影像資料,則當圖形處理單元收到指令後,欲針對(U1, V2)之影像資料進行存取時,圖形處理單元將先於快取記憶體中,挑選與U1值相同之索引值進行資料確認。
但由於快取記憶體中,與U1值相同之索引值所對應之儲存單位,其儲存之內容係(U1, V1)之影像資料,明顯與(U1, V2)不符,因此,將造成一次讀取失誤,則圖形處理單元便須於外部隨機存取記憶體中,重新存取(U1, V2)之影像資料,並在將(U1, V2)儲存於快取記憶體中相對應之儲存單位後,進行(U1, V2)之影像資料之存取使用。須特別注意,由於(U1, V2)之影像資料同樣需透過前述索引參照之方式儲存於快取記憶體中,因此,此時與U1值相同之索引值所對應之儲存單位之內容,已由(U1, V2)之影像資料覆蓋稍早之(U1, V1)之影像資料。
接著,若圖形處理單元於收到下一指令後,欲重複使用(U1, V1)之影像資料時,圖形處理單元將同樣先於快取記憶體中,挑選與U1值相同之索引值進行資料確認。然由於快取記憶體中,與U1值相同之索引值所對應之儲存單位,已被覆蓋為(U1, V2)之影像資料,因此,將再次造成讀取失誤,則圖形處理單元須再一次於外部隨機存取記憶體中,重新存取(U1, V1)之影像資料,並在將(U1, V1)儲存於快取記憶體中相對應之儲存單位後,進行(U1, V1)之影像資料之存取使用。同樣地,此時與U1值相同之索引值所對應之儲存單位之內容,已由(U1, V1)之影像資料再次覆蓋稍早之(U1, V2)之影像資料。如此一來,透過前述之說明便可清楚得知,針對影像此種鄰近座標點內容間具高相關度之資料時,習知索引值建立以及使用之效率將較為低落。
更者,由於影像資料具有前述之特異性,則當處理影像特定座標點資料時,此特定座標點資料鄰近之座標點資料於固定時間內之重複使用率亦相對提升。然而,由於習知技術於快取記憶體之存取管理中,大多以固定區塊(block)為讀寫單位,因此其於資料讀寫時,對於特定座標點資料鄰近之座標點資料之使用彈性將大幅降低,詳言之,當圖形處理單元正在存取配置於第一區塊之特定座標點資料時,若圖形處理單元需同時利用配置於第二區塊之鄰近座標點資料,則圖形處理單元便需以區塊為單位讀取第二區塊全部之資料,然圖形處理單元所用到的僅為第二區塊中部份之資料(即鄰近座標點資料),明顯地,習知技術之快取記憶體,其低使用彈性將導致整體運作較無效率。
綜上所述,如何改善前述習知圖形處理器之缺點,以更有效率地提高整體之使用效能,乃業界亟需努力之目標。
為解決前述問題,本發明提供了一種圖形處理單元(Graphic Processing Unit)及其圖形資料存取方法,其可同時利用影像資料之多維座標值作為快取記憶體之索引參照。另一方面,本發明之圖形處理單元及其圖形資料存取方法更可利用多記憶體組以及區塊分割之方式,完成高彈性之快取記憶體利用。
為完成前述目的,本發明提供了用於圖形處理單元之圖形資料存取方法。圖形處理單元包含紋理影像(texel)處理器。圖形處理單元與伺服器處理單元電性連接。圖形資料存取方法包含下列步驟:(a)令紋理影像處理器自伺服器處理單元接收圖形處理要求指令。其中,圖形處理要求指令包含待處理紋理影像之第一座標位元值以及第二座標位元值;(b)令紋理影像處理器擷取第一座標位元值之至少一第一位元值,並擷取第二座標位元值之至少一第二位元值;(c)令紋理影像處理器將至少一第一位元值以及至少一第二位元值進行算術邏輯運算得快取索引值。
另一方面,前述圖形處理單元更包含圖形資料處理器、圖形快取記憶體、快取記憶體管理器、外部記憶體存取器以及紋理影像區塊分割器。圖形處理單元更與隨機存取記憶體電性連接。圖形資料存取方法更包含下列步驟:(d)令快取記憶體管理器根據快取索引值,於圖形快取記憶體中挑選索引值欄位;(e)令快取記憶體管理器判斷第一座標位元值以及第二座標位元值與圖形快取記憶體之索引值欄位所對應之標籤內容係失誤(miss);(f)令外部記憶體存取器於步驟(e)後,基於圖形處理要求指令,於隨機存取記憶體中讀取第一座標位元值以及第二座標位元值對應之待處理紋理影像之影像資料;(g)令紋理影像區塊分割器將待處理紋理影像之影像資料分為複數子資料區塊,並將複數子資料區塊存入圖形快取記憶體之複數資料儲存位址;(h)令快取記憶體管理器,記錄複數資料儲存位址與標籤內容之對應關係;(i)令圖形資料處理器於步驟(h)後,存取並處理儲存於複數資料儲存位址之待處理紋理影像之影像資料。
為完成前述目的,本發明又提供了一種圖形處理單元,其與伺服器處理單元電性連接。圖形處理單元包含紋理影像處理器。紋理影像處理器用以自伺服器處理單元接收圖形處理要求指令,圖形處理要求指令包含待處理紋理影像之第一座標位元值以及第二座標位元值。紋理影像處理器更用以擷取第一座標位元值之至少一第一位元值,並擷取第二座標位元值之至少一第二位元值,並將至少一第一位元值以及至少一第二位元值進行算術邏輯運算得快取索引值。
另一方面,前述圖形處理單元更包含圖形資料處理器、圖形快取記憶體、快取記憶體管理器、外部記憶體存取器以及紋理影像區塊分割器。快取記憶體管理器用以根據快取索引值,於圖形快取記憶體中挑選索引值欄位,並判斷第一座標位元值以及第二座標位元值與圖形快取記憶體之索引值欄位所對應之標籤內容係失誤。外部記憶體存取器用以基於圖形處理要求指令,於隨機存取記憶體中讀取第一座標位元值以及第二座標位元值對應之待處理紋理影像之影像資料。紋理影像區塊分割器用以將待處理紋理影像之影像資料分為複數子資料區塊,並將複數子資料區塊存入圖形快取記憶體之複數資料儲存位址。快取記憶體管理器更用以記錄複數資料儲存位址與標籤內容之對應關係。圖形資料處理器更用以存取並處理儲存於複數資料儲存位址之待處理紋理影像之影像資料。
透過上述所揭露之技術特徵,本發明之圖形處理單元及其圖形資料存取方法,可利用對影像資料之多維座標值進行算術邏輯運算之結果,作為快取記憶體之索引參照,並可利用多記憶體組以及區塊分割之方式,完成高彈性之快取記憶體利用,以大幅提升快取記憶體之使用效率。在參閱圖式及隨後描述之實施方式後,此技術領域具有通常知識者便可瞭解本發明之其他目的,以及本發明之技術手段及實施態樣。
以下將透過實施例來解釋本發明內容。然而,本發明的實施例並非用以限制本發明需在如實施例所述之任何環境、應用或方式方能實施。因此,關於實施例之說明僅為闡釋本發明之目的,而非用以直接限制本發明。需説明者,以下實施例及圖示中,與本發明非直接相關之元件已省略而未繪示。
請參考第1A圖,其為本發明第一實施例之一圖形處理單元1之示意圖。圖形處理單元1包含一紋理影像(texel)處理器12,並與一伺服器處理單元2電性連結。其中,元件間之互動將於下文中予以進一步闡述。
與一般處理單元相同地,圖形處理單元將判讀收到之指令內容,俾進行後續操作。具體而言,於第一實施例中,圖形處理單元1之紋理影像處理器12自伺服器處理單元2接收一圖形處理要求指令20。其中,圖形處理要求指令20包含一待處理紋理影像之一第一座標位元值U1以及一第二座標位元值V1。
接著,當圖形處理單元收到指令後,便擷取指令之部份內容作為索引值,並據以至快取記憶體中進行資料之存取。請同時參考第1B圖,其為本發明第一實施例之索引值計算示意圖。詳細來說,紋理影像處理器12擷取第一座標位元值U1之至少一第一索引位元值120,並擷取第二座標位元值V1之至少一第二索引位元值122。
須特別說明者,於第一實施例中,所擷取之位元值如第1B圖所示,主要係座標位元值之第7至第10位元,然其並非用以限制本發明之技術,本領域技術人員可輕易判斷其他可能之位元擷取方式。而本發明主要著重技術特徵在於,以同時擷取二座標值之位元做為索引值之依據。
隨即,紋理影像處理器12便將至少一第一索引位元值120以及至少一第二索引值122進行一算術邏輯運算得一快取索引值124。需特別強調,於第一實施例中,快取索引值124主要係採用「或(OR)」算術邏輯運算完成,然其並非用以限制本發明之算術邏輯運算實施方式,本領域技術人員可理解利用「且(AND)」等其他算術邏輯運算方式完成快取索引值之計算。
如此一來,透過第一實施例之所述之方式,本發明之圖形處理單元可同時利用影像資料之二維座標之算術邏輯運算結果進行索引值之搜尋,俾後續據以判斷索引值相對應之資料存取是否正確。
請參考第2A圖,其為本發明第二實施例之一圖形處理單元1’之示意圖。其中,圖形處理單元1’更包含一圖形資料處理器11、一圖形快取記憶體13、一快取記憶體管理器14、一外部記憶體存取器15以及一紋理影像區塊分割器16,圖形快取記憶體13更包含一索引暫存器131。須特別說明者,第二實施例與第一實施例中,符號相同之元件及其功能相似,於此將不再贅述。而第二實施例中,將強調圖形快取記憶體資料存取命中與否之後續動作。
請一併參考第2B圖,其為本發明第二實施例之索引值命中狀態判斷示意圖。更進一步來說,當透過前述實施例之方式,圖形資料處理器11於圖形快取記憶體13中存取該待處理紋理影像之影像資料前,快取記憶體管理器14須先判斷資料正確性之結果係命中(hit)或失誤(miss)。
於第二實施例中,假設快取索引值124之計算結果為0010,則快取記憶體管理器14便於圖形快取記憶體13中挑選索引值為0010之欄位,並再判斷第一座標位元值U1以及第二座標位元值V1與索引暫存器131之0010索引值欄位所對應之一標籤內容TAG係命中或失誤。
假設快取記憶體管理器14判斷第一座標位元值U1以及第二座標位元值V1與索引暫存器131之0010索引值欄位所對應之標籤內容TAG係命中時,表示圖形處理要求指令20所需之資料已存於圖形快取記憶體13中,則圖形資料處理器11便根據標籤內容TAG與圖形快取記憶體13之複數資料儲存位址(未繪示)之一對應關係,存取並處理儲存於該等資料儲存位址之該待處理紋理影像之該影像資料。
另一方面,假設快取記憶體管理器14判斷第一座標位元值U1以及第二座標位元值V1與索引暫存器131之0010索引值欄位所對應之標籤內容TAG係失誤時,表示圖形處理要求指令20所需之資料並未存於圖形快取記憶體13中,換言之,即資料仍僅存於外部儲存裝置中,則外部記憶體存取器15便基於圖形處理要求指令20,於隨機存取記憶體3中讀取第一座標位元值U1以及第二座標位元值V1對應之該待處理紋理影像之該影像資料。
接著,須先將影像資料儲存至快取記憶體中,並記錄影像資料於快取記憶體之儲存位址與索引暫存器之關係,俾後續資料存取使用。具體而言,紋理影像區塊分割器16將該待處理紋理影像之該影像資料分成複數子資料區塊,並將該等子資料區塊存入圖形快取記憶體13之複數資料儲存位址(未繪示),隨即,便由快取記憶體管理器14記錄該等資料儲存位址與0010索引值欄位所對應之標籤內容TAG之一對應關係。
如此一來,圖形資料處理器11便可於該對應關係記錄後,據以存取並處理儲存於該等資料儲存位址之該待處理紋理影像之該影像資料。需特別說明,前述索引暫存器之索引值、標籤內容以及資料儲存位址之對應關係為習知之快取記憶體技術,因此,此處不再贅述,本發明第二實施例主要係著重索引值比對後,快取記憶體命中或失誤之後續資料存取方式。
接著,將更詳細說明影像資料分區塊存入快取記憶體之方式。請參考第2C圖,其為本發明第二實施例紋理影像區塊分割器16分割影像資料之示意圖。其中,本發明之圖形快取記憶體13更包含複數記憶體組132,用以依序儲存分區塊後之影像資料。
具體而言,當外部記憶體存取器15自隨機存取記憶體3中讀取第一座標位元值U1以及第二座標位元值V1對應之該待處理紋理影像之該影像資料後,紋理影像區塊分割器16將該待處理紋理影像之該影像資料分成子資料區塊D1~D4,並將子資料區塊D1~D4依序存入圖形快取記憶體13之資料儲存位址,其中,資料儲存位址係分別對應至記憶體組132,換言之,即將子資料區塊D1~D4依序存入多個記憶體組132中。
如此一來,透過第二實施例中所述,將影像資料分區塊儲存之方式,本發明將可以較有彈性之方式存取影像資料,使得特定座標點資料鄰近之座標點資料之存取效率相對提升,則習知技術中,以固定區塊為讀寫單位所造成之效率低落問題將得以解決。
須特別說明者,為使影像資料於分割後之區塊數量皆得以完整儲存,因此子資料區塊之數量須與記憶體組132之數量相等,並且為二之冪次方,於本發明第二實施例中,子資料區塊之數量與記憶體組132之數量為四,然其並非用以限制本發明之實施態樣,本領域技術人員可輕易透過前述內容,理解如何修正子資料區塊之分割數量,使其等於任一快取記憶體之記憶體組之數量。
請參考第3圖,其為本發明之第三實施例之圖形資料存取方法之流程圖。第三實施例之方法係用於一圖形處理單元(例如前述第一實施例之圖形處理單元),該圖形處理單元包含一紋理影像處理器,並與一伺服器處理單元電性連結。第三實施例之圖形資料存取方法之詳細步驟如下所述。
首先,執行步驟301,令該紋理影像處理器自該伺服器處理單元接收一圖形處理要求指令。其中,該圖形處理要求指令包含一待處理紋理影像之一第一座標位元值以及一第二座標位元值。接著執行步驟302,令該紋理影像處理器擷取該第一座標位元值之至少一第一索引位元值,並擷取該第二座標位元值之至少一第二索引位元值。
最後,執行步驟303,令該紋理影像處理器將該至少一第一索引位元值以及該至少一第二索引位元值進行一算術邏輯運算得一快取索引值。如此一來,本發明之圖形資料存取方法,可同時利用影像資料之二維座標之算術邏輯運算結果進行索引值之搜尋,俾後續據以判斷索引值相對應之資料存取是否正確。
請參考第4A-4B圖,其為本發明之第四實施例之圖形資料存取方法之流程圖。第四實施例之方法同樣用於一圖形處理單元(例如前述第二實施例之圖形處理單元),該圖形處理單元包含一紋理影像處理器、一圖形資料處理器、一圖形快取記憶體、一快取記憶體管理器以及一外部記憶體存取器,並與一伺服器處理單元以及一隨機存取記憶體電性連結。第四實施例之圖形資料存取方法之詳細步驟如下所述。
首先,執行步驟401,令該紋理影像處理器自該伺服器處理單元接收一圖形處理要求指令。其中,該圖形處理要求指令包含一待處理紋理影像之一第一座標位元值以及一第二座標位元值。接著執行步驟402,令該紋理影像處理器擷取該第一座標位元值之至少一第一索引位元值,並擷取該第二座標位元值之至少一第二索引位元值。
執行步驟403,令該紋理影像處理器將該至少一第一索引位元值以及該至少一第二索引位元值進行一算術邏輯運算得一快取索引值。執行步驟404,該快取記憶體管理器根據該快取索引值,於該圖形快取記憶體之一索引暫存器中挑選一索引值欄位。隨後,執行步驟405,令該快取記憶體管理器判斷該第一座標位元值以及該第二座標位元值與該索引暫存器之該索引值欄位所對應之一標籤內容係命中或失誤。
若命中,執行步驟406,令該圖形資料處理器根據該標籤內容與該圖形快取記憶體之複數資料儲存位址之一對應關係,處理儲存於該等資料儲存位址之該待處理紋理影像之一影像資料。若失誤,執行步驟407,令該外部記憶體存取器基於該圖形處理要求指令,於該隨機存取記憶體中讀取該第一座標位元值以及該第二座標位元值對應之該待處理紋理影像之一影像資料。
接著執行步驟408,令該紋理影像區塊分割器將該待處理紋理影像之該影像資料分為複數子資料區塊,並將該等子資料區塊存入該圖形快取記憶體之複數資料儲存位址。執行步驟409,令該快取記憶體管理器記錄該等資料儲存位址與該標籤內容之一對應關係,最後,執行步驟410,令該圖形資料處理器處理儲存於該等資料儲存位址之該待處理紋理影像之該影像資料。
需特別說明者,步驟408中,更可令該紋理影像區塊分割器將該等子資料區塊依序存入該等資料儲存位址對應之記憶體組中。其中,該等子資料區塊之數量與該等記憶體組之數量相等,且為二之冪次方。
綜上所述,本發明之圖形處理單元及其圖形資料存取方法,可利用對影像資料之二維座標值進行算術邏輯運算之結果,作為快取記憶體之索引參照,並可利用多記憶體組以及區塊分割之方式,完成高彈性之快取記憶體利用,以大幅提升快取記憶體之使用效率
惟上述實施例僅為例示性說明本發明之實施態樣,以及闡釋本發明之技術特徵,並非用來限制本發明之保護範疇。任何熟悉此技藝之人士可輕易完成之改變或均等性之安排均屬於本發明所主張之範圍,本發明之權利保護範圍應以申請專利範圍為準。
1、1’...圖形處理單元
11...圖形資料處理器
12...紋理影像處理器
120...第一索引位元值
122...第二索引位元值
124...快取索引值
13...圖形快取記憶體
131...索引暫存器
132...記憶體組
14...快取記憶體管理器
15...外部記憶體存取器
16...紋理影像區塊分割器
2...伺服器處理單元
20...圖形處理要求指令
3...隨機存取記憶體
D1~D4...子資料區塊
U1...第一座標位元值
V1...第二座標位元值
第1A圖係本發明之第一實施例之圖形處理單元之示意圖;
第1B圖係本發明之第一實施例之索引值計算示意圖;
第2A圖係本發明之第二實施例之圖形處理單元之示意圖;
第2B圖係本發明之第二實施例之索引值命中狀態判斷示意圖;
第2C圖係本發明之第二實施例紋理影像區塊分割器分割影像資料之示意圖;
第3圖係本發明之第三實施例之圖形資料存取方法之流程圖;
第4A圖係本發明之第四實施例之圖形資料存取方法之流程圖;以及
第4B圖係本發明之第四實施例之圖形資料存取方法之流程圖。
Claims (8)
- 一種用於一圖形處理單元(Graphic Processing Unit)之圖形資料存取方法,該圖形處理單元包含一紋理影像(texel)處理器,該圖形處理單元與一伺服器處理單元電性連接,該圖形資料存取方法包含下列步驟:
(a)令該紋理影像處理器自該伺服器處理單元接收一圖形處理要求指令,其中,該圖形處理要求指令包含一待處理紋理影像之一第一座標位元值以及一第二座標位元值;
(b)令該紋理影像處理器擷取該第一座標位元值之至少一第一索引位元值,並擷取該第二座標位元值之至少一第二索引位元值;
(c)令該紋理影像處理器將該至少一第一索引位元值以及該至少一第二索引位元值進行一算術邏輯運算得一快取索引值。 - 如請求項1所述之圖形資料存取方法,其中,該圖形處理單元更包含一圖形資料處理器、一圖形快取記憶體以及一快取記憶體管理器,該圖形資料存取方法更包含下列步驟:
(d)令該快取記憶體管理器根據該快取索引值,於該圖形快取記憶體之一索引暫存器中挑選一索引值欄位;
(e)令該快取記憶體管理器判斷該第一座標位元值以及該第二座標位元值與該索引暫存器之該索引值欄位所對應之一標籤內容係命中(hit);
(f)令該圖形資料處理器於步驟(e)後,根據該標籤內容與該圖形快取記憶體之複數資料儲存位址之一對應關係,存取並處理儲存於該等資料儲存位址之該待處理紋理影像之一影像資料。 - 如請求項1所述之圖形資料存取方法,其中,該圖形處理單元更包含一圖形資料處理器、一圖形快取記憶體、一快取記憶體管理器、一外部記憶體存取器以及一紋理影像區塊分割器,該圖形處理單元更與一隨機存取記憶體電性連接,該圖形資料存取方法更包含下列步驟:
(d)令該快取記憶體管理器根據該快取索引值,於該圖形快取記憶體之一索引暫存器中挑選一索引值欄位;
(e)令該快取記憶體管理器判斷該第一座標位元值以及該第二座標位元值與該索引暫存器之該索引值欄位所對應之一標籤內容係失誤(miss);
(f)令該外部記憶體存取器於步驟(e)後,基於該圖形處理要求指令,於該隨機存取記憶體中讀取該第一座標位元值以及該第二座標位元值對應之該待處理紋理影像之一影像資料;
(g)令該紋理影像區塊分割器將該待處理紋理影像之該影像資料分為複數子資料區塊,並將該等子資料區塊存入該圖形快取記憶體之複數資料儲存位址;
(h)令該快取記憶體管理器,記錄該等資料儲存位址與該標籤內容之一對應關係;
(i)令該圖形資料處理器於步驟(h)後,存取並處理儲存於該等資料儲存位址之該待處理紋理影像之該影像資料。 - 如請求項3所述之圖形資料存取方法,其中,該等資料儲存位址係對應於該圖形快取記憶體之複數記憶體組(bank),步驟(g)更包含:
(g1)令該紋理影像區塊分割器將該等子資料區塊依序存入該等資料儲存位址對應之記憶體組中,其中,該等子資料區塊之數量與該等記憶體組之數量相等,且為二之冪次方。 - 一種圖形處理單元(Graphic Processing Unit),與一伺服器處理單元電性連接,包含:
一紋理影像(texel)處理器;以及
其中,該紋理影像處理器用以自該伺服器處理單元接收一圖形處理要求指令,該圖形處理要求指令包含一待處理紋理影像之一第一座標位元值以及一第二座標位元值,該紋理影像處理器更用以擷取該第一座標位元值之至少一第一索引位元值,並擷取該第二座標位元值之至少一第二索引位元值,並將該至少一第一索引位元值以及該至少一第二索引位元值進行一算術邏輯運算得一快取索引值。 - 如請求項5所述之圖形處理單元,更包含:
一圖形資料處理器;
一圖形快取記憶體;
一快取記憶體管理器;
其中, 該快取記憶體管理器用以根據該快取索引值,於該圖形快取記憶體之一索引暫存器中挑選一索引值欄位,並判斷該第一座標位元值以及該第二座標位元值與該索引暫存器之該索引值欄位所對應之一標籤內容係命中(hit),該圖形資料處理器更用以根據該標籤內容與該圖形快取記憶體之複數資料儲存位址之一對應關係,存取並處理儲存於該等資料儲存位址之該待處理紋理影像之一影像資料。 - 如請求項5所述之圖形處理單元,更與一隨機存取記憶體電性連結,其中,該圖形處理單元更包含:
一圖形資料處理器;
一圖形快取記憶體;
一快取記憶體管理器;
一外部記憶體存取器;以及
一紋理影像區塊分割器;
其中, 該快取記憶體管理器用以根據該快取索引值,於該圖形快取記憶體之一索引暫存器中挑選一索引值欄位,並判斷該第一座標位元值以及該第二座標位元值與該索引暫存器之該索引值欄位所對應之一標籤內容係失誤(miss),該外部記憶體存取器用以基於該圖形處理要求指令,於該隨機存取記憶體中讀取該第一座標位元值以及該第二座標位元值對應之該待處理紋理影像之一影像資料,該紋理影像區塊分割器用以將該待處理紋理影像之該影像資料分為複數子資料區塊,並將該等子資料區塊存入該圖形快取記憶體之複數資料儲存位址,該快取記憶體管理器更用以記錄該等資料儲存位址與該標籤內容之一對應關係,該圖形資料處理器更用以存取並處理儲存於該等資料儲存位址之該待處理紋理影像之該影像資料。 - 如請求項7所述之圖形處理單元,其中,該等資料儲存位址係對應於該圖形快取記憶體之複數記憶體組(bank),該紋理影像區塊分割器更用以將該等子資料區塊依序存入該等資料儲存位址對應之記憶體組中,該等子資料區塊之數量與該等記憶體組之數量相等,且為二之冪次方。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW101105920A TW201335882A (zh) | 2012-02-23 | 2012-02-23 | 圖形處理單元及其圖形資料存取方法 |
CN201210099415XA CN103294736A (zh) | 2012-02-23 | 2012-04-06 | 图形处理单元及其图形数据存取方法 |
US13/461,461 US20130222398A1 (en) | 2012-02-23 | 2012-05-01 | Graphic processing unit and graphic data accessing method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW101105920A TW201335882A (zh) | 2012-02-23 | 2012-02-23 | 圖形處理單元及其圖形資料存取方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
TW201335882A true TW201335882A (zh) | 2013-09-01 |
Family
ID=49002355
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW101105920A TW201335882A (zh) | 2012-02-23 | 2012-02-23 | 圖形處理單元及其圖形資料存取方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20130222398A1 (zh) |
CN (1) | CN103294736A (zh) |
TW (1) | TW201335882A (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10475149B2 (en) * | 2017-09-25 | 2019-11-12 | Intel Corporation | Policies and architecture to dynamically offload VR processing to HMD based on external cues |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100300972B1 (ko) * | 1997-09-19 | 2001-09-03 | 윤종용 | 텍스춰매핑수행장치및텍스춰캐시의데이터억세스방법 |
US6924811B1 (en) * | 2000-11-13 | 2005-08-02 | Nvidia Corporation | Circuit and method for addressing a texture cache |
US6636225B2 (en) * | 2000-11-20 | 2003-10-21 | Hewlett-Packard Development Company, L.P. | Managing texture mapping data in a computer graphics system |
US7898551B2 (en) * | 2006-06-20 | 2011-03-01 | Via Technologies, Inc. | Systems and methods for performing a bank swizzle operation to reduce bank collisions |
-
2012
- 2012-02-23 TW TW101105920A patent/TW201335882A/zh unknown
- 2012-04-06 CN CN201210099415XA patent/CN103294736A/zh active Pending
- 2012-05-01 US US13/461,461 patent/US20130222398A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
US20130222398A1 (en) | 2013-08-29 |
CN103294736A (zh) | 2013-09-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10540093B2 (en) | Multidimensional contiguous memory allocation | |
US9934153B2 (en) | Patch memory system | |
CN108459826B (zh) | 一种处理io请求的方法及装置 | |
TWI405081B (zh) | 對共享第二層對映快取記憶體對稱配置之方法與系統 | |
US20120297139A1 (en) | Memory management unit, apparatuses including the same, and method of operating the same | |
WO2017041570A1 (zh) | 向缓存写入数据的方法及装置 | |
US9697111B2 (en) | Method of managing dynamic memory reallocation and device performing the method | |
US20180018095A1 (en) | Method of operating storage device and method of operating data processing system including the device | |
EP3500935A1 (en) | Method and apparatus for compressing addresses | |
JP2013114675A (ja) | インライン画像回転 | |
US20240143219A1 (en) | Software-hardware combination method for internal mapping address query of zoned namespace | |
US9256536B2 (en) | Method and apparatus for providing shared caches | |
US9632953B2 (en) | Providing input/output virtualization (IOV) by mapping transfer requests to shared transfer requests lists by IOV host controllers | |
US20220245066A1 (en) | Memory system including heterogeneous memories, computer system including the memory system, and data management method thereof | |
US20240086332A1 (en) | Data processing method and system, device, and medium | |
US20170062025A1 (en) | Memory system including plural memory devices forming plural ranks and memory controller accessing plural memory ranks and method of operating the memory system | |
CN105264342B (zh) | 嵌入的ecc地址映射 | |
CN115269454A (zh) | 数据访问方法、电子设备和存储介质 | |
US9727476B2 (en) | 2-D gather instruction and a 2-D cache | |
US11126624B2 (en) | Trie search engine | |
US20240086113A1 (en) | Synchronous write method and device, storage system and electronic device | |
US11030714B2 (en) | Wide key hash table for a graphics processing unit | |
CN108959105B (zh) | 一种实现地址映射的方法及装置 | |
CN107783909B (zh) | 一种内存地址总线扩展方法及装置 | |
TW201335882A (zh) | 圖形處理單元及其圖形資料存取方法 |