專利名稱:一般目的使用的內(nèi)部處理單元的存儲器的制作方法
技術領域:
本發(fā)明一般涉及計算裝置(例如,計算機、嵌入裝置、手持裝置以及類似裝置)。更特別地,本發(fā)明涉及通過此計算裝置的處理單元使用的存儲器。
背景技術:
一種計算裝置通常包含一個或多個處理單元,例如中央處理單元(central-processing unit ;簡禾爾 CPU)與圖形處理單兀(graphics-processing unit ;簡稱GPU)。CPU通過遵循指令的精確集而協(xié)調(diào)計算裝置的活動。。該GPU通過執(zhí)行數(shù)據(jù)并行計算工作,例如圖形處理工作和/或可能被終端用戶應用(如視頻游戲應用)所需的物理仿真,而協(xié)助CPU。該GPU與該CPU可為分離裝置和/或封裝的部分或可以包含在相同裝置和/或封裝中。進一步,每個處理單元可以包含在另一較大的裝置中。例如,GPU經(jīng)常整合至路由或橋接裝置,像是,例如北橋裝置。在該終端用戶應用與GPU之間有幾種軟件層。該終端用戶應用與應用程序接口(application-programming interfrace ;簡稱API)通信。該API允許該終端用戶應用以標準化形式輸出圖形數(shù)據(jù)與命令,而非依于GPU的形式。許多類型的API是商業(yè)上可用的,包含華盛頓,雷蒙德的微軟公司開發(fā)的DirectX ;科納斯組織維護的OpenGL與OpenCL。該API與驅動器(driver)通信。驅動器翻譯從API所接收的標準碼成為GPU所了解的指令的本地形式。驅動器通常由GPU的制造商所寫。接著,GPU執(zhí)行從驅動器的指令。在傳統(tǒng)的系統(tǒng)中,每個CPU與GPU通常耦接(couple)至外部存儲器。該外部存儲器可以包含由CPU和/或GPU執(zhí)行的指令和/或使用的數(shù)據(jù)。該外部存儲器可以為,例如動態(tài)隨機存取存儲器(dynamic random-access memory ;簡稱DRAM)。該外部存儲器可以配置為相當大,從而提供充足的存儲容量至其耦接的每個處理單元。不幸地,存取該外部存儲器可以花費幾百個時鐘周期。因此,外部存儲器可無法提供存儲器足夠的帶寬或對于高端GPU的快速存儲器存取。一種用于提供足夠的存儲器帶寬至GPU的潛在的解決方案為提供GPU內(nèi)部存儲器。該內(nèi)部存儲器可以為,例如嵌入或堆棧DRAM。相較于該外部存儲器,內(nèi)部存儲器提供較高帶寬,較快存儲器存取,以及消耗較少的功率。然而,該內(nèi)部存儲器的容量不可輕易縮放以達到在高端GPU的存儲需求。例如,相較可包含在GPU的內(nèi)部存儲器,高端GPU可需要較多的存儲器。根據(jù)前述內(nèi)容,需要一種提供足夠的存儲器容量(如外部存儲器)與高帶寬(如嵌入存儲器)的存儲器與其應用。
發(fā)明內(nèi)容
本發(fā)明的實施例通過提供一般目的使用的內(nèi)部處理單元的存儲器與其應用。本發(fā)明的實施例的內(nèi)部處理單元的存儲器提供高帶寬,因為其嵌入處理單元。其也提供足夠的存儲容量,因為多個處理單元的存儲器可以結合至足夠大的存儲器池(memory pool)。
舉例來說,本發(fā)明的實施例提供GPU。該GPU包含第一內(nèi)部存儲器、耦接至該第一內(nèi)部存儲器的執(zhí)行單元以及配置以耦接該第一內(nèi)部存儲器至另一處理單元的第二內(nèi)部存儲器的接口。在一實施例中,該GPU體現(xiàn)在軟件中。在另一實施例中,該GPU包含在系統(tǒng)中。該系統(tǒng)可以包括,例如,超級計算機、桌面計算機、膝上計算機、視頻游戲控制臺、嵌入裝置、手持裝置(例如,移動手機、智能型手機、MP3播放器、相機、GPS裝置、或類似裝置),或者包含或配置以包含GPU的另一系統(tǒng)。本發(fā)明的進一步的特征與優(yōu)點,以及本發(fā)明的各種實施例的結構與操作是伴隨著附圖而詳細描述于下。要注意的是,本發(fā)明并非限制于在此描述的特定實施例。在此呈現(xiàn)的實施例僅用于說明的目的。對于相關領域的技術人員而言,基于在此教示的內(nèi)容,附加的實施例將是明顯的。
在此并入與形成說明書的部分的
本發(fā)明,且連同描述,進一步作為解釋本發(fā)明的原則與使相關領域的技術人員制造與使用本發(fā)明。圖IA與圖IB說明依據(jù)本發(fā)明的實施例的包含一般目的使用的內(nèi)部處理單元的存儲器的示范系統(tǒng);圖2說明依據(jù)本發(fā)明的實施例的一般目的使用的具有內(nèi)部存儲器的示范GPU的細節(jié);圖3說明依據(jù)本發(fā)明的實施例的可包含在處理組件中的示范堆棧存儲器;以及圖4說明依據(jù)本發(fā)明的實施例的由圖2的GPU實作的示范方法。從以下提出的詳細描述并結合圖式,本發(fā)明的特征與優(yōu)點將變得更加明顯,其中,在全文中,相似的組件字元識別為對應的組件。在圖式中,相似的組件符號一般表示相同、功能相似、及/或結構相似的組件。在圖式中,第一次出現(xiàn)的組件通過在對應的組件符號中的最左位而表示。主要組件符號說明
100計算系統(tǒng)
101,250第一接口
102CPU
103,260第二接口
104系統(tǒng)存儲器
105第三接口
106、106A、106B內(nèi)部存儲器
IlOA第一 GPU
IlOB第二 GPU
114總線
116I/O 接口
118外部裝置
120次要存儲器
130緩存存儲:
132、142A、142B、142
執(zhí)行單元140164202204206210212400
顯示裝置共享接口輸入邏輯著色核心輸出邏輯
存儲器控制器
存儲器細胞方法 402 414步驟。
具體實施例方式I.概述本發(fā)明提供一種一般目的使用的內(nèi)部GPU存儲器與其應用。在以下的詳細描述中,參照「一個實施例」、「一實施例」、「示范實施例」等指出該描述的實施例可以包含特別的特征、結構、或特性,但在每個實施例可不必要包含該特別的特征、結構、或特性。此外,此詞組不必要參照相同實施例。另外,當描述的特別的特征、結構、或特性連接實施例時,無論是否明確描述,上述內(nèi)容在本領域的技術人員的知識中以影響此特征、結構、或特性連接其它實施例。按照一實施例,GPU包含內(nèi)部存儲器(例如,嵌入或堆棧DRAM),其配置以被一個或多個其它處理單元所用。該GPU包含接口與實作協(xié)議,允許一個或多個其它GPU存取其內(nèi)部存儲器。接口可提供每個其它GPU專用存取該內(nèi)部存儲器或可提供該其它GPU共享存取該內(nèi)部存儲器。存取該GPU的內(nèi)部存儲器可通過GPU本身或各個其它GPU所控制。在一實施例中,接口和協(xié)議允許該內(nèi)部存儲器與外部存儲器結合,形成可存取GPU的較大存儲器池。該外部存儲器可包含在其它GPU中。在一實施例中,例如,計算裝置包含多個GPU,其中,每個GPU包含內(nèi)部存儲器,配置以與其它GPU共享。在此實施例中,每個GPU的內(nèi)部存儲器結合至統(tǒng)一的存儲器池。以參與GPU的數(shù)目縮放存儲器池的尺寸。任何參與GPU可為了其存儲需求使用該存儲器池。以下描述依據(jù)本發(fā)明的實施例的示范GPU的進一步細節(jié)。然而,在提供這些細節(jié)之前,其有助于描述示范計算裝置,其中,可實作此GPU。II.示范計算系統(tǒng)圖IA與圖IB說明依據(jù)本發(fā)明的實施例的具有多個GPU的示范計算系統(tǒng)100,各GPU包含配置以一般目的使用的內(nèi)部存儲器。相較外部存儲器,該內(nèi)部存儲器提供各GPU較高帶寬存取數(shù)據(jù)。此外,各GPU的該內(nèi)部存儲器可通過各GPU結合至可存取的較大的存儲器池,藉此提供足夠的存儲容量至各GPU。于圖IA的實施例中,各GPU給予專用存取(dedicated access)另一 GPU的該內(nèi)部存儲器。在圖IB的實施例中,各GPU有共享存取經(jīng)由共享接口至該其它GPU的內(nèi)部存儲器。在一實施例中,計算系統(tǒng)100可包括超級計算機、桌面計算機、膝上計算機、視頻游戲控制臺、嵌入裝置、手持裝置(例如,移動手機、智能型手機、MP3播放器、相機、GPS裝置、或類似裝置),或者包含或配置以包含CPU和/或GPU的一些其它系統(tǒng)。。請參照圖IA與圖1B,計算裝置100包含CPU 102、第一 GPU110A,以及第二 GPU110B。該CPU 102執(zhí)行指令以控制該計算裝置100的功能。該GPU 110通過執(zhí)行數(shù)據(jù)并行處理工作(像是,例如,圖形處理工作和/或一般計算工作)而協(xié)助CPU 102。基于其設計,該GPU 110通??蓤?zhí)行數(shù)據(jù)并行處理工作,較快于CPU 102在軟件上執(zhí)行。該第一 GPU IlOA與該第二 GPU IlOB各包含其所有的內(nèi)部存儲器與執(zhí)行單元。特別是,第一 GPU 106A包含內(nèi)部存儲器106A與執(zhí)行單元142A;以及第二 GPU 106B包含內(nèi)部存儲器106B與執(zhí)行單元142B。同樣地,該CPU 102包含緩存存儲器130與執(zhí)行單元132。相較于可能將數(shù)據(jù)外部存儲(例如,數(shù)據(jù)存儲在系統(tǒng)存儲器104),該內(nèi)部存儲器106(以及可選緩存存儲器130),可利用于GPU 110,用以提供較快速存取與較高帶寬至某些數(shù)據(jù)。該內(nèi)部存儲器106可包括,例如嵌入或堆棧DRAM。該內(nèi)部存儲器106A、106B(與可選緩存存儲器130)可結合至較大的存儲器池,用以提供實質上的存儲容量(例如超過4GB),同時也提供快速,高帶寬存儲器的存取。雖然習知外部存儲器可提供足夠的存儲容量(例如超過4GB),對于某些高端的使用,習知外部存儲器提供不足的帶寬。同樣地,對于這些高端的使用,雖然習知嵌入存儲器可提供足夠的帶寬,對于這些高端的使用,習知嵌入存儲器提供不足的存儲容量(例如少于4GB)。不像習知外部存儲器和/或習知嵌入存儲器,本發(fā)明的實施例不僅提供足夠的存儲容量(例如超過4GB),也通過提供包含內(nèi)部存儲器的GPU提供高帶寬,所述內(nèi)部存儲器可利用于一般目的使用的其它GPU。舉例來說,高端GPU的幀緩沖(frame buffer)(也就是存儲在顯示裝置上顯示完整數(shù)據(jù)幀的緩沖)可需要高帶寬存取實質上大的存儲器(例如超過4十億字節(jié)(gigabyte ;簡稱GB))。在實施例中,該第一 GPU IlOA可使用內(nèi)部存儲器106A、B與可選CPU 102的緩存存儲器130,用以定義第一 GPU IlOA的幀緩沖。同樣地,該第二 GPU IlOB也可使用內(nèi)部存儲器106A、B與可選CPU 102的緩存存儲器130,用以定義第二 GPU IlOB的幀緩沖。以此方法,不同于習知外部或嵌入存儲器,依據(jù)本發(fā)明的實施例所定義的幀緩沖提供高帶寬存取至實質上大的存儲器(例如超過4GB)。于圖IA的實施例中,如上所暗示,各GPU 110給予專用存取另一處理單元的內(nèi)部存儲器106。特別是,第一接口 101提供第一GPU110A專用存取第二GPU IlOB的內(nèi)部存儲器106B以及提供第二 GPUlIOB專用存取第一 GPU IlOA的內(nèi)部存儲器106A?;跀?shù)據(jù)的地址范圍,數(shù)據(jù)可寫入至內(nèi)部存儲器106A或內(nèi)部存儲器106B,或者數(shù)據(jù)可從內(nèi)部存儲器106A或內(nèi)部存儲器106B擷取(retrieve)。例如,該內(nèi)部存儲器106A可以分配第一地址范圍(例如,少于第一預定地址A與大于或等于第二預定地址B),以及該內(nèi)部存儲器106B可以分配第二地址范圍(例如,不是在第一地址范圍內(nèi)的所有地址)。然而,應領會,寫入數(shù)據(jù)至內(nèi)部存儲器106A和/或內(nèi)部存儲器106B,或者從內(nèi)部存儲器106A和/或內(nèi)部存儲器106B擷取數(shù)據(jù)的其它方案可在不偏離本發(fā)明的精神與范圍下實作,提供該第一 GPU IlOA與該第二GPU IlOB可各具有存取第一 GPU IlOA的內(nèi)部存儲器106A以及第二 GPU IlOB的內(nèi)部存儲器 106B。在一實施例中,第一接口 101包含顯示控制器接口。該顯示控制器接口提供顯示裝置140以存取GPU的幀緩沖。通過并入該顯示控制器接口至第一接口 101,該第一接口101可提供在已經(jīng)包含在習知GPU設計的標準針(standard pin)上。除了第一接口 101,第二接口 103提供CPU 102專用存取至該第二 GPU IlOB的內(nèi)部存儲器106B與提供第二 GPU IlOB專用存取至該CPU102的緩存存儲器130。以此方法,該第二 GPU IlOB與該CPU 102可各具有存取至該第二 GPU IlOB的內(nèi)部存儲器106B與該CPU 102的緩存存儲器130。同樣地,第三接口 105提供第一 GPU IlOA專用存取至該CPU102的緩存存儲器130與提供該CPU102專用存取至該第一 GPU IlOA的內(nèi)部存儲器106A。以此方法,該第一 GPU IlOA與該CPU102可各具有存取該第一 GPUl IOA的內(nèi)部存儲器106A與該CPU 102的緩存存儲器130。在圖IB的實施例中,各處理單元具有共享存取經(jīng)由共享接口 164至其它處理單元的內(nèi)部存儲器。該共享接口 164提供各處理單元(例如,該第一 GPU 110A、該第二 GPU110B、以及該CPU1(^)高帶寬存取至其它處理單元的內(nèi)部存儲器?;跀?shù)據(jù)的地址范圍,數(shù)據(jù)可寫入至內(nèi)部存儲器106A、內(nèi)部存儲器106B或緩存存儲器130,或者數(shù)據(jù)可從內(nèi)部存儲器106A、內(nèi)部存儲器106B或緩存存儲器130擷取。例如,該內(nèi)部存儲器106A可以分配第一地址范圍;該內(nèi)部存儲器106B可以分配第二地址范圍;以及該緩存存儲器130可以分配第三地址范圍。然而,應領會,寫入數(shù)據(jù)至內(nèi)部存儲器106A、內(nèi)部存儲器106B和/或緩存存儲器130,或者從內(nèi)部存儲器106A、內(nèi)部存儲器106B和/或緩存存儲器130擷取數(shù)據(jù)的其它方案可在不偏離本發(fā)明的精神與范圍下實作,提供該第一 GPU 110A、該第二 GPU 110B、以及該CPU 102可各具有存取第一 GPU IlOA的內(nèi)部存儲器106A、第二 GPU IlOB的內(nèi)部存儲器106B、以及CPU 102的緩存存儲器130。在實施例中,該計算裝置100也包括系統(tǒng)存儲器104、次要存儲器120、輸入-輸出(I/O)接口 116、和/或顯示裝置140。該系統(tǒng)存儲器104存儲經(jīng)常由CPU 102上運行的程序存取的信息。該系統(tǒng)存儲器104通常包含揮發(fā)存儲器,意指當該計算裝置100的電源關閉時,失去存儲在該系統(tǒng)存儲器104中的數(shù)據(jù)。該次要存儲器120存儲由計算裝置100使用的數(shù)據(jù)和/或應用。相較于系統(tǒng)存儲器104,該次要存儲器120通常具有相當大的存儲容量及通常包括非揮發(fā)(持續(xù))的存儲器,意指即使當該計算裝置100的電源關閉時,在該次要存儲器120存儲的數(shù)據(jù)持續(xù)。I/O接口 116允許該計算裝置100耦接至外部裝置116(例如,外部顯示裝置、外部存儲裝置(例如,視頻游戲盒式磁帶(cartridge)、⑶、DVD、閃存驅動器、或類似物)、網(wǎng)絡卡、或一些其它形式的外部裝置)。該顯示裝置140顯示該計算裝置100的內(nèi)容。顯示裝置可包括陰極射線管、液晶顯示(liquid-crystal display ;簡稱LCD)、等離子屏幕、或一些不論目前已知或后來發(fā)展的其它形式的顯示裝置。GPU 110與CPU 102彼此通信且與系統(tǒng)存儲器104、次要存儲器120、及I/O接口116在總線(bus)114上通信。該總線114可以是在計算裝置中使用的任何種類的總線,包含周圍組件接口(peripheral component interface ;簡稱PCI)的總線、加速圖形端口(accelerated graphics port;簡稱 AGP)的總線,高速 PCI (PCI Express ;簡稱 PCIE)的總線、或另一不論目前可利用或未來發(fā)展的其它形式的總線。在實施例中,該計算裝置100可包括代替GPU 110或除了 GPU 110以外的視頻處理單元(video processing unit;簡稱VPU)。例如,在一實施例中,該計算裝置100包括該GPU 110A、該CPU 102 ;及代替說明在圖IA與圖IB中的GPU 110B,該計算裝置100包括VPU。以此方法,該CPU 102可執(zhí)行一般處理功能、該GPU 110A可執(zhí)行圖形處理功能、以及VPU可執(zhí)行視頻處理功能。III.示范 GPU圖2說明具有內(nèi)部存儲器106的GPU 110的示范細節(jié)。依據(jù)本發(fā)明的實施例,該內(nèi)部存儲器106可被另一 GPU、或CPU使用,以通過基于增大存儲器覆蓋區(qū)(footprint)尺寸結合圖形處理功率而增加整體系統(tǒng)的性能。如前述,該GPU 110包括執(zhí)行單元142與該內(nèi)部存儲器106。參照圖2,該執(zhí)行單元142包括輸入邏輯202、著色核心(shader core) 204、與輸出邏輯206。該內(nèi)部存儲器106包括存儲器控制器210與存儲器細胞(cell)212。該存儲器控制器210控制存取至該存儲器細胞212。該存儲器細胞212存儲數(shù)據(jù)。在一實施例中,內(nèi)部存儲器106包含嵌入動態(tài)隨機存取存儲器(DRAM)。嵌入DRAM是封裝在具有處理單元的一般封裝件的存儲器。在另一實施例中,在圖3中說明該內(nèi)部存儲器106包含堆棧DRAM。堆棧存儲器包括多個存儲器組件在三維結構中彼此堆棧于頂部。該內(nèi)部存儲器106經(jīng)由該輸入邏輯202與該輸出邏輯206兩者耦接至該執(zhí)行單元142。特別是,該輸入邏輯202可從該內(nèi)部存儲器106擷取數(shù)據(jù),及該輸出邏輯206可傳送數(shù)據(jù)至該內(nèi)部存儲器106以存儲在該存儲器細胞212中。該內(nèi)部存儲器106也可經(jīng)由第一接口 250耦接至另一 GPU的內(nèi)部存儲器。耦接至另一 GPU的內(nèi)部存儲器的內(nèi)部存儲器106可增加可利用于執(zhí)行單元142的整體存儲器池。在一實施例中,如圖IA的接口 101所說明,該第一接口 250提供該GPU 110的內(nèi)部存儲器106與另一 GPU的內(nèi)部存儲器之間的專用存取。在此實施例中,該第一接口 250提供在傳統(tǒng)GPU的標準針上。例如,該第一接口 250可包含顯示-控制器接口,其提供顯示裝置存取至包含在內(nèi)部存儲器106中的本地幀緩沖。在另一實施例中,如圖IB的接口 164所說明,該第一接口 250提供該GPU 110的內(nèi)部存儲器106與其它處理單元的內(nèi)部存儲器之間的共享存取。該內(nèi)部存儲器106也可經(jīng)由第二接口 260耦接至該該CPU 102的緩存存儲器130。因此,該內(nèi)部存儲器106與該緩存存儲器130的結合可增加可利用于該GPU 110的存儲器池。在一實施例中,該第二接口 260提供在該GPU 110的內(nèi)部存儲器106與該CPU 102的緩存存儲器130之間的專用連接(dedicated connection),例如在圖1的連接103或連接105。在另一實施例中,該第二接口 260提供僅由該GPU 110與該CPU 102共享的連接,例如在圖IB的連接164。在進一步的實施例中,第二接口在一般總線上耦接GPU 110至CPU102,例如圖IA與圖IB的總線114。IV. GPU 110的示范操作圖4說明依據(jù)本發(fā)明的實施例的由GPU 110實作的示范方法400。以下參考圖3與圖4描述方法400。方法400開始于步驟402,其中,接收指令。在一實施例中,該輸入邏輯202接收由該GPU 110執(zhí)行的指令。該指令可包括,例如,由系統(tǒng)100的CPU 102上運行的終端用戶應用所提供的圖形處理工作或數(shù)據(jù)并行處理工作。在步驟404中,確認相關于指令的數(shù)據(jù)的位置。在一范例中,數(shù)據(jù)可以包含在接收的指令內(nèi)。此數(shù)據(jù)通常簡稱實時數(shù)據(jù)(immediate data)。在另一范例中,該指令提供數(shù)據(jù)的位置。例如,該指令可以包含數(shù)據(jù)存儲的地址。在進一步的范例中,例如,該指令包含信息,從該信息,該輸入邏輯202計算數(shù)據(jù)存儲的地址。該數(shù)據(jù)可以存儲在該內(nèi)部存儲器106、該內(nèi)部存儲器106耦接的另一 GPU的內(nèi)部存儲器、或該CPU 102的緩存存儲器130。在步驟406中,擷取數(shù)據(jù)。若數(shù)據(jù)為該實時數(shù)據(jù),該輸入邏輯202僅從指令提取(extract)該實時數(shù)據(jù)。若數(shù)據(jù)存儲在該內(nèi)部存儲器106或該內(nèi)部存儲器106耦接的存儲器中,該輸入邏輯202傳送請求至存儲器控制器210用于存取數(shù)據(jù)。一方面,若數(shù)據(jù)存儲在該存儲器細胞212中,擷取該數(shù)據(jù)且提供至該輸入邏輯202。另一方面,若數(shù)據(jù)存儲在該內(nèi)部存儲器106耦接的另一存儲器中,自輸入邏輯202的請求經(jīng)由該接口 250或該接口 260轉交(forward)至其它存儲器。然后,該數(shù)據(jù)從其它存儲器擷取且提供至該輸入邏輯202。在步驟408中,執(zhí)行指令。基于在步驟406中由輸入邏輯202獲得的數(shù)據(jù),該著色核心204執(zhí)行指令。在步驟410中,提供執(zhí)行指令的結果至該輸出邏輯206。該輸出邏輯206根據(jù)這些結果判斷是否需要進一步的處理,如決定步驟412所示。提供至該輸出邏輯206的結果可具有旗標(flag)或一些其它記號以指出是否需要附加的處理。若在決定步驟412中,輸出邏輯206判斷需要進一步的處理,然后輸出邏輯206轉交該結果回著色核心204,且重復方法400的步驟408與410。另一方面,若在決定步驟412中,輸出邏輯206判斷不需要進一步的處理,然后輸出邏輯206提供該結果至內(nèi)部存儲器106,如步驟414所示。依據(jù)寫入結果的地址,然后該結果可寫入至內(nèi)部存儲器106或耦接至內(nèi)部存儲器106的存儲器。若結果為寫入至內(nèi)部存儲器106,該存儲器控制器210提供存取至在該存儲器細胞212中適當?shù)牡刂非掖鎯υ摻Y果。另一方面,若結果為寫入至耦接至內(nèi)部存儲器106的存儲器,然后該存儲器控制器210經(jīng)由接口 250或接口 260轉交結果至其它存儲器且存儲該結果在其它存儲器的存儲器細胞中。V.示范軟件實作除了該GPU 110的硬件實作,此GPU 110也可體現(xiàn)在置于例如在計算機可讀的媒體(computer-readable medium)的軟件中,該計算機可讀的媒體配置以存儲軟件(例如,計算機可讀的程序碼)。計算機可讀的程序碼允許本發(fā)明的實施例,包含下述實施例(i)在此揭露的系統(tǒng)與技術的功能(例如,提供該GPU 110的工作,調(diào)度該GPU 110的工作,執(zhí)行該GPU 110的工作,或者類似工作);(ii)在此揭露的系統(tǒng)與技術的制造(例如,該GPU110的制造);或(iii)在此揭露的系統(tǒng)與技術的功能與制造的結合。該軟件可,例如,透過一般編程語言(如C或C++)、硬件描述語言(hardware-description language ;簡 HDL),其包含 Verilog HDL、VHDL、AlteraHDL(AHDL)等等,或其它可利用的編程和/或示意捕捉工具(schematic-capture tool)(譬如電路捕捉工具)的使用而完成。該計算機可讀的程序碼可置于任何已知的計算機可讀取的媒體,包含半導體,磁盤,或光盤(例如,CD-R0M、DVD-R0M)。因此,該計算機可讀的程序碼可在通訊網(wǎng)絡(包含互連網(wǎng)與網(wǎng)際網(wǎng)絡)上傳播。應了解由上述系統(tǒng)與技術所完成的功能和/或所提供的結構可由核心(如著色核心)所代表,該核心體現(xiàn)在計算機可讀的程序碼,且可轉換成硬件作為集成電路產(chǎn)品的部分。VI.結論以上描述一般目的使用的內(nèi)部GPU存儲器與其應用。應領會,具體實施方式
,而非發(fā)明內(nèi)容與摘要,意圖用于解釋權利要求書。發(fā)明內(nèi)容與摘要可提出由發(fā)明人所思及的本發(fā)明的一個或多個但非所有的實施例,且因此,并非以任何方式意圖限制本發(fā)明與附加的權利要求書。
權利要求
1.一種圖形處理單元GPU,包括第一內(nèi)部存儲器;耦接至該第一內(nèi)部存儲器的執(zhí)行單元;以及配置以耦接該第一內(nèi)部存儲器至其它處理單元的第二內(nèi)部存儲器的接口。
2.根據(jù)權利要求1所述的處理單元,其中,該其它處理單元包括GPU。
3.根據(jù)權利要求1所述的處理單元,其中,該其它處理單元包括中央處理單元。
4.根據(jù)權利要求1所述的處理單元,其中,該第一內(nèi)部存儲器包括堆棧動態(tài)隨機存取存儲器。
5.根據(jù)權利要求1所述的處理單元,其中,該第一內(nèi)部存儲器包括嵌入動態(tài)隨機存取存儲器。
6.根據(jù)權利要求1所述的處理單元,其中,該接口進一步配置以耦接該第一內(nèi)部存儲器至顯示裝置。
7.一種計算機程序的產(chǎn)品,包括計算機可讀的存儲媒體,其包含如果在計算裝置上執(zhí)行時定義圖形處理單元GPU的指令,其中,該GPU包括第一內(nèi)部存儲器;耦接至該第一內(nèi)部存儲器的執(zhí)行單元;以及配置以耦接該第一內(nèi)部存儲器至另一處理單元的第二內(nèi)部存儲器的接口。
8.根據(jù)權利要求7所述的計算機程序的產(chǎn)品,其中,該其它處理單元包括GPU。
9.根據(jù)權利要求7所述的計算機程序的產(chǎn)品,其中,該其它處理單元包括中央處理單兀。
10.根據(jù)權利要求7所述的計算機程序的產(chǎn)品,其中,該GUP的該第一內(nèi)部存儲器包括堆棧動態(tài)隨機存取存儲器。
11.根據(jù)權利要求7所述的計算機程序的產(chǎn)品,其中,該GUP的該第一內(nèi)部存儲器包括嵌入動態(tài)隨機存取存儲器。
12.根據(jù)權利要求7所述的計算機程序的產(chǎn)品,其中,該GUP體現(xiàn)在硬件描述語言軟件。
13.根據(jù)權利要求7所述的計算機程序的產(chǎn)品,其中,該GUP體現(xiàn)在Verillog硬件描述語言軟件、Verillog-A硬件描述語言軟件以及VHDL硬件描述語言軟件中的其中一軟件。
14.一種系統(tǒng),包括第一圖形處理單元GPU包括有第一內(nèi)部存儲器、耦接至該第一內(nèi)部存儲器的第一執(zhí)行單元以及配置以耦接該第一內(nèi)部存儲器至另一 GPU的內(nèi)部存儲器的第一接口 ;以及第二 GPU包括有第二內(nèi)部存儲器、耦接至該第二內(nèi)部存儲器的第二執(zhí)行單元以及配置以耦接該第二內(nèi)部存儲器至另一 GPU的內(nèi)部存儲器的第二接口 ;其中,一起耦接該第一內(nèi)部存儲器與該第二內(nèi)部存儲器,使該第一 GPU的該第一執(zhí)行單元存取該第二 GPU的該第二內(nèi)部存儲器,且使該第二 GPU的該第二執(zhí)行單元存取該第一 GPU的該第一內(nèi)部存儲器。
15.根據(jù)權利要求14所述的系統(tǒng),其中,該第一內(nèi)部存儲器包括堆棧動態(tài)隨機存取存儲器。
16.根據(jù)權利要求14所述的系統(tǒng),其中,該第一內(nèi)部存儲器包括嵌入動態(tài)隨機存取存儲器。
17.根據(jù)權利要求16所述的系統(tǒng),其中該第一接口進一步配置以耦接該第一內(nèi)部存儲器至該顯示裝置;以及該第二接口進一步配置以耦接該第二內(nèi)部存儲器至該顯示裝置。
18.根據(jù)權利要求14所述的系統(tǒng),進一步包括外部存儲器;中央處理單元CPU,包括緩存存儲器;以及耦接在該外部存儲器與CPU之間的總線。
19.根據(jù)權利要求18所述的系統(tǒng),其中,該第一GPU進一步包括配置以耦接該第一內(nèi)部存儲器至該CPU的該緩存存儲器的其它接口。
20.根據(jù)權利要求18所述的系統(tǒng),其中,該第二GPU進一步包括配置以耦接該第二內(nèi)部存儲器至該CPU的該緩存存儲器的其它接口。
全文摘要
本發(fā)明揭露一種具有一般目的使用的內(nèi)部存儲器的圖形處理單元(GPU)與其應用。此GPU包括第一內(nèi)部存儲器、耦接至該第一內(nèi)部存儲器的執(zhí)行單元以及配置以耦接該第一內(nèi)部存儲器至其它處理單元的第二內(nèi)部存儲器的接口。該第一內(nèi)部存儲器可包括堆棧動態(tài)隨機存取存儲器(DRAM)或嵌入DRAM。接口可以進一步配置以耦接該第一內(nèi)部存儲器至顯示裝置。GPU也可包含另一接口,配置以耦接該第一內(nèi)部存儲器至中央處理單元。此外,GPU可體現(xiàn)在軟件和/或包含在計算機系統(tǒng)中。
文檔編號G06F9/38GK102597951SQ201080049244
公開日2012年7月18日 申請日期2010年9月3日 優(yōu)先權日2009年9月3日
發(fā)明者G·薩多斯基, J·布拉澤爾, K·伊烏爾查 申請人:先進微裝置公司