TWI610178B - 共享函數多埠rom系統及裝置 - Google Patents

共享函數多埠rom系統及裝置 Download PDF

Info

Publication number
TWI610178B
TWI610178B TW101149602A TW101149602A TWI610178B TW I610178 B TWI610178 B TW I610178B TW 101149602 A TW101149602 A TW 101149602A TW 101149602 A TW101149602 A TW 101149602A TW I610178 B TWI610178 B TW I610178B
Authority
TW
Taiwan
Prior art keywords
ports
logic circuit
function
logic
operable
Prior art date
Application number
TW101149602A
Other languages
English (en)
Other versions
TW201346568A (zh
Inventor
沙帝許 達瑪拉傑
沙布曼尼恩 麥猶蘭
Original Assignee
英特爾股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 英特爾股份有限公司 filed Critical 英特爾股份有限公司
Publication of TW201346568A publication Critical patent/TW201346568A/zh
Application granted granted Critical
Publication of TWI610178B publication Critical patent/TWI610178B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3877Concurrent instruction execution, e.g. pipeline or look ahead using a slave processor, e.g. coprocessor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/3001Arithmetic instructions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30036Instructions to perform operations on packed data, e.g. vector, tile or matrix operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/544Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Telephone Function (AREA)
  • Logic Circuits (AREA)

Abstract

所揭露的各種實施例可在處理核心的多埠之中共享一ROM下拉邏輯電路。該處理核心可包括執行單元(EU),其具有儲存數學函數之唯讀記憶體(ROM)下拉邏輯的陣列。ROM下拉邏輯電路可實施單一指令多種資料(SIMD)運算。該ROM下拉邏輯電路可在多埠函數共享配置中與該等多埠的每一者可操作地耦合。共享該ROM下拉邏輯電路減少重複邏輯的需要並可導致晶片面積的節省以及電力的節省。

Description

共享函數多埠ROM系統及裝置
本發明關於共享函數多埠ROM裝置及方法。
許多圖形處理核心可包括多個不同的執行引擎(EU)。其中一EU可以是算術邏輯單元(ALU),可執行整數、浮點、以及邏輯運算。另一EU可以是數學框,可以專用以進行諸如對數、正弦、指數、反平方根等延伸數學函數。一些數學函數可實施於EU中作為ROM下拉邏輯。此外,許多此等數學函數可使用單一指令多重資料(SIMD)運算加以實施。就SIMD運算而言,可對多資料執行同一指令。
圖形處理核心典型地包括用於與其它系統組件交換資料的多通道或埠,且典型地對每一埠實施重複的ROM下拉邏輯。此種重複可導致晶片面積尺寸增加與功耗。據此,有針對解決此等或其它問題之改善技術的需要。
電腦系統通常採用或包括一或更多處理核心,可操作以執行與在電腦系統內執行的應用程式相關聯的指令。許多處理核心像是圖形處理核心或中央處理核心,可包括不同的執行引擎(EU),可操作以履行複雜數學函數。數學函數可以被在電腦系統執行的一或更多應用程式呼叫。 諸處理核心典型可包括用於與其它電腦組件交換資料的多通道或埠。有些數學函數可用ROM下拉邏輯實施於EU。此外,許多數學函數可用單一指令多重資料(SIMD)運算實施。就SIMD運算而言,可對多資料執行相同指令。諸處理核心典型可對每一埠實施不同的ROM下拉邏輯。此需要針對與一給定處理核心相關聯的每一埠重複數學函數邏輯。此重複可能導致晶片面積尺寸增加與功耗。
然而,在這些情況下,若數學函數用SIMD運算來實施,則由於數學函數邏輯可共享於處理核心的多埠之中,可能不需要產生重複版本的ROM下拉邏輯。由於ROM下拉邏輯埠共享,亦可獲致顯著的節電。
本文敘述之實施例實現的節電對其中要履行諸實施例的裝置而言是重要的。除了節電以外,本文敘述的實施例亦可使用較少的物料。當慮及若無數兆但可能也有數十憶之採用本文所述之處理核心的電池供電裝置時,合計在功耗及物料方面的節省可變得龐大。本文敘述的實施例亦可藉由減少可能造成全球暖化的熱產生、延長導致較少廢棄物處理之電池耐久性、以及延長導致較少裝置廢棄物處理之裝置耐久性而顯著減少環境的衝擊。
在各種實施例中,所揭示的技術可在處理核心的多埠之中共享ROM下拉邏輯。例如,處理核心可安裝於印刷電路板(PCB)上。處理核心亦可包括用於與其它系統組件通訊的多埠。處理核心亦可包括至少一執行單元(EU)。該EU可包括儲存數學函數的一唯讀記憶體(ROM) 下拉邏輯的陣列。該函數陣列的每一元素可代表一用ROM下拉邏輯實施的不同函數。ROM下拉邏輯可實施單一指令多重資料(SIMD)運算。ROM下拉邏輯的函數陣列可操作地與處理核心之多埠的每一者耦合。多埠可操作以供應資料到實施SIMD運算的ROM下拉邏輯的函數陣列,使得多埠的每一者共享該ROM下拉邏輯的函數陣列。
在此電路中,可能不需要針對處理核心中的每一埠重複ROM下拉邏輯的函數陣列。更確切地說,每一埠可與ROM下拉邏輯的同一函數陣列耦合以在所有埠之中共享諸SIMD運算。共ROM下拉邏輯可減少重複邏輯的需要且可節省晶片面積以及節省電力。
處理核心可包含至少一圖形處理單元(GPU)、至少一中央處理單元(CPU)或二者的組合。此外,多埠的每一者可包括多字線,可操作以供應資料到供SIMD運算的ROM下拉邏輯的陣列。ROM下拉邏輯的函數陣列的每一元素可操作以執行可以是數學函數的函數。
處理核心電路亦可包括管理者控制邏輯,可操作以減少對來自多埠之中ROM下拉邏輯的函數陣列的競爭。處理核心電路亦可包括多重二次預充電組件,其導出自ROM下拉邏輯之函數陣列的函數選擇。多重二次預充電組件可操作以減少到ROM下拉邏輯之函數陣列的雜訊。
現參見圖式,其中,通篇所有類似參考標號用以參照類似元件。在以下說明中,為說明之目的,許多特定細節的說明係為提供透徹的瞭解。但顯然地,不用這些特定細 節能實施新穎實施例。在其它範例中,眾所周知的結構及裝置係以方塊圖形式顯示以便有助於說明。本文目的在於涵蓋所有落於所請求之標的的精神與範疇以內的修改、等效物及替代。
圖1繪示一根據實施例的裝置100的方塊圖。裝置100可以是安裝於印刷電路板(PCB)105的處理核心110。處理核心110可以是中央處理單元(CPU)核心、圖形處理單元(GPU)核心、或二者的組合。處理核心110可包括多執行單元(EU)120、130。EU 120,例如,可以是算術邏輯單元(ALU)。另一EU 130,例如,可以是數學框。EU 120、130的每一者可分別包括一ROM下拉邏輯電路125、135。ROM下拉邏輯電路125、135可包含可在多埠(140-a到140-d)之中被共享的單一指令多重資料(SIMD)運算。
SIMD運算說明一類型的處理,其中可同時對多資料執行同一運算。例如,利用SIMD運算的應用可以是同一值被加到(或被減自)眾多資料點的應用。一範例應用可改變影像的亮度。影像的每一像素可包括對應到顏色的紅(R)、綠(G)及藍(B)部分的亮度的三個值。為改變亮度,R、G及B值可自記憶體讀取,可加入使影像更亮的值到多像素值或自該等多像素值減去使影像更暗淡的值,而結果之值可被寫回到記憶體。
SIMD處理為此處理提供二項提升。其一,可瞭解資料要在區塊中。因此,一些值可全部一起載入。不是一連 串指明「得到此像素,現在得到下一像素」的指令,而是SIMD處理器可用單指令,有效指明得到多像素,這比傳統CPU設計分別得到每一像素還花更少時間。
另一好處在於,SIMD處理典型只包括那些可施加給一個運算中所有資料的指令。換言之,若SIMD處理是藉由全部一起載入八資料點,則施加給資料的加法運算可同時對所有八個值進行。
ROM下拉邏輯電路125、135可組織為一陣列的數學函數。例如,該等數學函數可包括加法、減法、乘法。
處理核心110亦可包括多埠(140-a到140-d)。多埠(140-a到140-d)可供應來自一或更多應用程式150的資料。例如,EU 120、130當被其中一應用程式150呼叫時可執行複雜數學函數。透過埠(140-a到140-d)供應的資料可為該等數學函數的運算元。返回到應用程式150的資料可以為諸數學函數的結果。
圖2繪示一根據實施例的方塊圖200。多埠(140-a到140-d)可分別包括多字線(210-a到210-d)。每一字線(210-a到210-d)可代表特別函數。該函數可讀出自由多埠(140-a到140-d)的字線(210-a到210-d)所代表之多重輸入的其中一者。來自字線(210-a到210-d)的資料接著可應用到一陣列的函數的其中之一,其被實施為ROM下拉邏輯電路220,可於多埠(140-a到140-d)之中被共享。被共享的ROM下拉邏輯電路220可儲存一陣列的函數,可被實施為SIMD運算。使用SIMD運算可 容許ROM下拉邏輯電路220被多埠(140-a到140-d)共享。可以不需要針對多埠(140-a到140-d)的每一者的SIMD運算重複ROM下拉邏輯電路220。
舉例來說,諸如「加法」函數的數學函數可用SIMD運算實施並作為實施於ROM下拉邏輯電路220的函數中的其中一者而被儲存。埠0 140-a可通訊地與應用程式150耦合,應用程式150可做出函數呼叫到實施於ROM下拉邏輯電路220中的加法函數。同理,埠3 140-d亦可接收函數呼叫到實施於ROM下拉邏輯電路220中的加法函數。與其說每一埠針對「加法」函數存取個別的邏輯,不如說該等埠可依賴實施「加法」函數的該同一邏輯電路。該等埠能有效率地共享該加法函數邏輯,減少了針對SIMD運算重複硬體邏輯構造的需要。
圖3繪示一根據實施例的處理核心邏輯架構300。處理核心邏輯架構300一般包含可共享於多埠(140-a到140-d)之中的多埠140a-140d及ROM下拉邏輯電路220。為說明目的,已繪示二埠(140a及140d)。
‘埠0’140-a可包含多字線210-a,能遞送資料到ROM下拉邏輯220。在此範例中,有八(8)個字線中只繪示了二(2)個字線。‘埠0’140a之字線210-a的每一者可與包含一陣列的ROM下拉邏輯220的一組函數耦合。在範例架構中,標為WL0‘埠0’之字線210-a的輸出可作為ROM下拉邏輯220陣列之一或更多標為‘Func0’-‘Func7’的函數的一輸入。同理,標為WL7‘埠0’之字線210-a的 輸出可作為ROM下拉邏輯220陣列之另一組一或更多標為‘Func0’-‘Func7’的函數的一輸入。每一字線可與ROM下拉邏輯220內的自己該組的函數相關聯。
同樣地,‘埠n’140-d可包含多字線210-d。在此範例中,有八(8)個字線中只繪示了二(2)個字線。如同‘埠0’140-a,‘埠n’140d之字線210-d的每一者可與包含ROM下拉邏輯220陣列的的相同組函數耦合。在範例架構中,標為WL0‘埠n’之字線210-d的輸出可作為ROM下拉邏輯220陣列之一或更多標為‘Func0’-‘Func7’的函數的一輸入。
同樣地,標為WL7‘埠n’之字線210-a的輸出可作為ROM下拉邏輯220陣列之另一組一或更多標為‘Func0’-‘Func7’的函數的一輸入。每一字線可與ROM下拉邏輯220內的自己該組的函數相關聯。
WL0‘埠0’輸出及WL0‘埠n’輸出可聯繫在一起,使得二分開的字線可以同時存取同一組SIMD函數而不是每一埠實施自己該組的SIMD函數。由於同一指令可用於多重資料,此邏輯電路220的分享可針對SIMD運算加以實施。
將來自不同埠(140-a到140-d)之不同的字線輸出聯繫在一起可增加在中間節點上的電容。為有助於解決此問題,可包含管理者控制(KprCtl)邏輯310以減少競爭且避免ROM下拉邏輯尺寸不必要的增加。此外,多重次要預充電裝置330可加到每一字線(210-a到210-d)的 輸出以解決跨多埠(140-a到140-d)的充電共享顧慮。次要預充電裝置330的控制可導出自函數選取。
雖然沒有顯示,‘埠0’與‘埠n’間的每一埠係同樣地建構並耦合。此結果係一多埠ROM下拉邏輯電路,其允許跨多埠(140-a到140-d)的函數共享。圖3所繪示之埠、字線、以及函數的數量為範例性的。熟於此技藝之人士可容易使本文之教示適於可包含不同數量之埠、字線以及函數的不同電路。實施例並不侷限於此上下文。
圖4繪示一根據本揭露實施例的結果的表400。表400繪示使用傳統多ROM下拉邏輯的方法對使用根據本文所述之實施例的多埠ROM下拉之間的表面區域比較。在針對圖形處理核心的傳統ROM下拉邏輯實施中,函數(ROM下拉邏輯)及埠已透過合成施行。例如,表400的第1列繪示來自此種傳統合成實施的面積數。因為此邏輯分散在各處,可能沒有定義的「x」及「y」維度。針對一32 nm晶片電路,根據四(4)埠、八(8)函數、128字線以及64位元電路的合成實施所需的總面積可為1.2 mm2。參見表400的第4列(多埠-16WL),針對一32 nm晶片電路,根據相同的四(4)埠、八(8)函數、128字線以及64位元電路的訂製設計多埠ROM導致節省0.73 mm2。將諸結果轉到一22nm晶片電路會導致接近0.35 mm2的節省。由於z的縮減,亦有顯著的節電。雖然所討論的多埠ROM相較於單埠ROM(例如,第2列)可能沒有顯示出顯著的節省,但隨著函數的數量增加,面積的節 省會變得顯著。
各種實施例已描述儲存單一指令多重資料(SIMD)運算的唯讀記憶體(ROM)下拉邏輯電路220以及與該ROM下拉邏輯電路220通訊地耦合的多埠(140-a到140-d)。ROM下拉邏輯電路220可與該等多埠耦合,使得多埠(140-a到140-d)的每一者共享ROM下拉邏輯電路220。ROM下拉邏輯電路220可操作以執行由SIMD運算所構成的函數(例如,數學函數)。由於多埠(140-a到140-d)可共享同一ROM下拉邏輯電路220,可操作以減少對ROM下拉邏輯電路220之競爭的管理者控制邏輯310可針對多埠(140-a到140-d)的每一者實施。
此外,可實施每一者與多埠(140-a到140-d)的其中一不同者相關聯的多重次要預充電組件330。多重次要預充電組件330可操作以減少到ROM下拉邏輯電路220的雜訊並確使維持充分的電壓。次要預充電組件330可導出自函數選取。
多埠(140-a到140-d)的每一者可每埠包括多字線(210-a到210-d)。多字線(210-a到210-d)可操作以供應資料給ROM下拉邏輯電路220。ROM下拉邏輯電路220可包含一陣列的函數,其中每一函數可被SIMD函數實施。
在另一實施例中,系統可包括印刷電路板(PCB)105以及安裝於PCB105上的處理核心110。處理核心110可包括可操作以與其它組件交換資料的多埠(140-a 到140-d)。處理核心110亦可包括可操作於處理核心110上的至少一執行單元(EU)130。EU 130可包括邏輯電路220,其係由一陣列的唯讀記憶體(ROM)下拉邏輯所組成,唯讀記憶體(ROM)下拉邏輯儲存可執行一對應陣列之函數的單一指令多重資料(SIMD)運算。邏輯電路220可與多埠(140-a到140-d)的每一者可操作地耦合。多埠(140-a到140-d)可操作以供應資料到邏輯電路220,使得多埠(140-a到140-d)的每一者共享邏輯電路220。
處理核心可包含至少一圖形處理單元(GPU)、至少一中央處理單元(CPU)、或二者的組合。多埠(140-a到140-d)可包括多字線(210-a到210-d),其中每一字線可操作以供應資料到用於SIMD運算之ROM下拉邏輯220的陣列。
在另一實施例中,唯讀記憶體(ROM)下拉邏輯電路220可與處理核心110之多埠(140-a到140-d)通訊地耦合。ROM下拉邏輯電路220可操作以對自多埠(140-a到140-d)之任何一者接收的資料執行單一指令多重資料(SIMD)運算。SIMD運算可操作以執行使用自多埠(140-a到140-d)接收之資料作為函數之運算元資料的函數。此外,ROM下拉邏輯電路220可包括一函數邏輯的陣列,其中該陣列的每一元素可與一不同的函數相關聯。
各種實施例可使用硬體元件、軟體元件、或二者的組合加以實施。硬體元件的例子可包括處理器、微處理器、 電路、電路元件(例如,電晶體、電阻器、電容器、電感器等等)、積體電路、應用特定積體電路(ASIC)、可程式邏輯裝置(PLD)、數位信號處理器(DSP)、現場可程式閘陣列(FPGA)、邏輯閘、電阻器、半導體裝置、晶片、微晶片、晶片組等等。軟體的例子可包括軟體組件、程式、應用、電腦程式、應用程式、系統程式、機器程式、作業系統軟體、中間軟體、韌體、軟體模組、常式、次常式、函數、方法、程序、軟體介面、應用程式介面(API)、指令集、運算碼、電腦碼、碼段、電腦碼段、字、值、符號、或任何其等之組合。決定實施例是否使用硬體元件及/或軟體元件可依任何數量之因數而改變,像是所欲之計算率、功率位準、耐熱性、處理週期預算、輸入資料率、輸出資料率、記憶體資源、資料匯流排速度及其它設計或性能限制的因數。
圖5繪示一適合實施本揭露之多埠ROM下拉處理實施例之系統500的實施例。在實施例中,雖然系統500不侷限於此上下文,系統500可以是能夠多埠ROM下拉處理的系統。例如,系統500可併入個人電腦(PC)、膝上型電腦、超膝上型電腦、平板、觸控墊、攜帶式電腦、手持式電腦、掌上型電腦、個人數位助理(PDA)、行動電話、組合行動電話/PDA、電視、智慧型裝置(例如,智慧型電話、智慧型平板或智慧型電視)、行動上網裝置(MID)、訊息傳送裝置、資料通訊裝置等等。
在實施例中,系統500包含耦合到顯示器520的平台 502。平台502可收來自諸如內容服務裝置530或內容遞送裝置540或其它類似內容來源之內容裝置的內容。可使用包含一或更多導航功能之導航控制器550以與例如平台502及/或顯示器520互動。此等組件的每一者詳述於下。
在實施例中,平台502可包含晶片組505、處理器510、記憶體512、儲存器514、圖形子系統515、應用程式516及/或無線電518的任合組合。晶片組505可提供在處理器510、記憶體512、儲存器514、圖形子系統515、應用程式516及/或無線電518之中的互通。例如,晶片組505可包括能提供與儲存器514互通的儲存配接器(未說明)。
處理器510可實施為複雜指令集電腦(CISC)或精簡指令集電腦(RISC)處理器、x86指令集相容處理器、多核心、或任何微處理器或中央處理單元(CPU)。在實施例中,處理器510可包含雙核心處理器、雙核心行動處理器等等。
記憶體512可實施為揮發性記憶體裝置,諸如但不侷限於隨機存取記憶體(RAM)、動態隨機存取記憶體(DRAM)、或靜態RAM(SRAM)。
儲存器514可實施為非揮發性儲存裝置,諸如但不侷限於磁碟驅動器、光碟機、磁帶機、內部儲存裝置、外接儲存裝置、快閃記憶體、電池備用SDRAM(同步DRAM)、及/或網路可存取儲存裝置。在實施例中,當包括例如多硬碟時,儲存器514可包含針對有價值的數位媒體增 加儲存性能加強保護的技術。
圖形子系統515可實施諸如顯示的靜止或視訊影像的處理。圖形子系統515例如可為圖形處理單元(GPU)或視覺處理單元(VPU)。可使用類比或數位介面以通訊地耦合圖形子系統515與顯示器520。例如,介面可為高清晰度多媒體介面、DisplayPort(數位式視訊埠介面標準)、無線HDMI、及/或無線HD相容技術。圖形子系統515可整合成處理器510或晶片組505。圖形子系統515可為通訊地耦合到晶片組505的獨立卡。
本文所述之圖形及/或視訊處理技術可實施於各種硬體電路。例如,圖形及/或視訊功能可整合進晶片組。或選替地,可使用離散圖形及/或視訊處理器。如又另一實施例,圖形及/或視訊功能可以包括多核處理器的通用處理器實施。在又一實施例中,諸功能可實施於消費性電子裝置。
無線電518可包括一或更多能使用適合的無線通訊技術發送及接收信號的無線電。此等技術可涉及到跨一或更多無線網路的通訊。範例無線網路包括(但不侷限於)無線區域網路(WLAN)、無線個人區域網路(WPAN)、無線都會網路(WMAN)、細胞式網路、以及衛星網路。在跨此等網路的通訊方面,無線電518可依照一或更多以任何版本的應用標準操作。
在實施例中,顯示器520可包含任何電視類型的監視器或顯示器。顯示器520可包含,例如,電腦顯示螢幕、 觸控螢幕顯示器、視訊監視器、類電視裝置、及/或電視。顯示器520可為數位及/或類比的。在實施例中,顯示器520可為全像式顯示器。此外,顯示器520可為可接收視覺投影的透明表面。此種投影可傳播各種形式的資訊、影像、及/或物件。例如,此種投影可以是行動擴增實境(MAR)應用的視覺重疊。在一或更多軟體應用516的控制之下,平台502可顯示使用者介面522於顯示器520上。
在實施例中,內容服務裝置530可被國家、國際及/或獨立的服務托管且因而可透過例如,網際網路對平台502存取。內容服務裝置530可耦合到平台502及/或顯示器520。平台502及/或內容服務裝置530可耦合到網路560,以向及自網路560傳播(例如,傳送及/或接收)媒體資訊。內容遞送裝置540亦可耦合到平台502及/或到顯示器520。
在實施例中,內容服務裝置530可包含有線電視盒、個人電腦、網路、電話、可支援網際網路的裝置或能遞送數位資訊及/或內容的器具、以及任何能單向或雙向透過網路560或直接在內容提供者與平台502及/或顯示器520間傳播內容的其它類似裝置。吾人應可體認內容可透過網路560向及自系統500中的組件的任何一者單向及/或雙向傳播。內容的範例可包括任何例如,視訊、音樂、醫藥及競賽資訊等等的媒體資訊。
內容服務裝置530接收諸如包括媒體資訊、數位資訊的有線電視節目編排的內容、及/或其它內容。內容提供 者的範例可包括任何有線、衛星電視或無線電或網際網路內容提供者。所提供的範例之目的不在於限制本發明的實施例。
在實施例中,平台502可接收來自具有一或更多導航功能之導航控制器550的控制信號。例如,控制器550的導航功能可用以與使用者介面522互動。在實施例中,導航控制器550可為一指向裝置,其可以是允許使用者將空間(例如,連續及多維度)資料輸入電腦的電腦硬體組件(尤其是人性化介面裝置)。許多諸如圖形使用者介面(GUI)的系統、及電視與監視器允許使用者使用身體姿勢控制並提供資料給電腦或電視。
控制器550的移動及導航功能可藉由指標、游標、聚焦環或其它顯示於顯示器上之目視指示器的移動可重複於顯示器(例如,顯示器520)上。例如,在軟體應用516的控制之下,設置於導航控制器550上的導航功能可反映到例如,顯示於使用者介面522上的視覺導航功能。在實施例中,控制器550可不是獨立的組件而是被整合進平台502及/或顯示器520。然而,實施例並不侷限於此處顯示或敘述的元件或上下文中。
在實施例中,驅動器(未示)可包含例如像是當致能時,在最初啟動之後能使使用者碰觸按鈕立即開啟及關閉平台502(像是電視)的技術。當平台被關閉時,程式邏輯可允許平台502串流內容到媒體配接器或其它內容服務裝置530或內容遞送裝置540。此外,晶片組505可包含 例如,5.1環場音效音頻及/或高清晰度5.1環場音效音頻的硬體及/或軟體支援。驅動器可包括用於整合圖形平台的圖形驅動器。在實施例中,圖形驅動器可包含周邊組件互連(PCI)快速圖形卡。
在各種實施例中,一或更多顯示於系統500中的組件可被整合。例如,平台502與內容服務裝置530可被整合,或是平台502與內容遞送裝置540可被整合,或是例如平台502、內容服務裝置530、及內容遞送裝置540可被整合。在各種實施例中,平台502與顯示器520可為一整合的單元。例如,顯示器520與內容服務裝置530可被整合,或顯示器520與內容遞送裝置540可被整合。此等範例之目的不在於限制本發明。
在各種實施例中,系統500可實施為無線系統、有線系統、或二者的組合。當實施為無線系統時,系統500可包括適於透過無線共享媒體(諸如,一或更多天線、發射器、接收器、收發器、放大器、濾波器、控制邏輯等等)的傳播的組件及介面。無線共享媒體的範例可包括部分的無線頻譜,諸如RF頻譜等等。當實施為有線系統時,系統500可包括適於透過有線通訊媒體,諸如,輸入/輸出(I/O)配接器、連接該I/O配接器與一對應有線通訊媒體的實體連接器、網路介面卡(NIC)、磁碟控制器、視頻控制器、音頻控制器等等之用於通訊的組件及介面。有線通訊媒體的範例可包括導線、纜線、金屬引線、印刷電路板(PCB)、背板、交換結構、半導體材料、雙絞線、 同軸纜線、光纖等等。
平台502可建立一或更多傳播資訊的邏輯或實體通道。該資訊可包括媒體資訊及控制資訊。媒體資訊可意指任何代表供使用者使用的內容的資料。內容的範例可包括例如,來自語音對話、視訊會議、串流視訊、電子郵件(「email」)訊息、語音信箱訊息、文數符號、圖形、影像、視訊、文字等等的資料。來自語音對的資料可為例如,語音資訊、靜默時間、背景雜訊、舒適雜訊、音調等等。控制資訊可意指任何代表用於自動系統之命令、指令或控制字的資料。例如,控制資訊可用以透過系統加以路由媒體資訊,或是指示節點以一預定方式處理該媒體資訊。然而,諸實施例之目的不在於侷限於圖5顯示或敘述的元件或上下文中。
如上述,系統500可依各種實體形態或形狀因數實施。圖6繪示一可實施小形狀因數裝置600的實施例,其中系統500可被實施。在實施例中,例如,裝置600可實施為具有無線能力的行動運算裝置。行動運算裝置例如可意指任何具有處理系統及行動電源或電源供應(諸如一或更多電池)的裝置。
如上述,行動運算裝置的範例可包括個人電腦(PC)、膝上型電腦、超膝上型電腦、平板、觸控墊、攜帶式電腦、手持式電腦、掌上型電腦、個人數位助理(PDA)、行動電話、組合行動電話/PDA、電視、智慧型裝置(例如,智慧型電話、智慧型平板或智慧型電視)、行動上 網裝置(MID)、訊息傳送裝置、資料通訊裝置等等。
行動運算裝置的範例亦可包括配置成要由人穿戴的電腦,諸如手腕電腦、手指電腦、指環電腦、眼鏡電腦、皮帶扣電腦、臂帶電腦、鞋電腦、衣物電腦、以及其它可穿戴式電腦。在實施例中,行動運算裝置可實施為能執行電腦應用程式、以及語音通訊及/或資料通訊的智慧型電話。雖然有些實施例藉由範例可以實施為智慧型電話的行動運算裝置,但吾人應可體認到,其它實施例同樣可使用其它無線行動運算裝置加以實施。諸實施例並不侷限於此上下文中。
如圖6所示,裝置600可包含外殼602、顯示器604、輸入/輸出(I/O)裝置606、以及天線608。裝置600亦可包含導航功能612。顯示器604可包含任何適合顯示行動運算裝置適用的資訊的顯示單元。I/O裝置606可包含任何將資訊輸入進行動運算裝置之適合的I/O裝置。I/O裝置606的範例可包括文數鍵盤、數字小鍵盤、觸控墊、輸入鍵、按鈕、開關、搖桿開關、麥克風、喇叭、語音辨識裝置及軟體等等。資訊亦可藉由麥克風被輸入進裝置600。此種資訊可被語音辨識裝置數位化。諸實施例並不侷限於此上下文中。
各種實施例可使用硬體元件、軟體元件、或二者的組合加以實施。硬體元件的範例可包括處理器、微處理器、電路、電路元件(例如,電晶體、電阻器、電容器、電感器等等)、積體電路、應用特定積體電路(ASIC)、可 程式邏輯裝置(PLD)、數位信號處理器(DSP)、現場可程式閘陣列(FPGA)、邏輯閘、電阻器、半導體裝置、晶片、微晶片、晶片組等等。軟體的例子可包括軟體組件、程式、應用、電腦程式、應用程式、系統程式、機器程式、作業系統軟體、中間軟體、韌體、軟體模組、常式、次常式、函數、方法、程序、軟體介面、應用程式介面(API)、指令集、運算碼、電腦碼、碼段、電腦碼段、字、值、符號、或任何其等之組合。決定實施例是否使用硬體元件及/或軟體元件可依任何數量之因數而改變,像是所欲之計算率、功率位準、耐熱性、處理週期預算、輸入資料率、輸出資料率、記憶體資源、資料匯流排速度及其它設計或性能限制的因數。
實施例亦可至少部分實施為包含在非暫態電腦可讀取媒體的指令,該等指令可由一或更多處理器讀取或執行以致能本文所述之操作的性能。
至少一實施例的一或更多態樣可利用儲存於機器可讀取媒體之代表指令加以實施,該機器可讀取媒體代表在處理器內不同的邏輯,當被機器讀取時導致該機器製造實施本文所述之技術的邏輯。此種表示法,即已知的「IP核心」,可儲存在有形的、機器可讀取媒體且被供應到各種客戶或製造商,以便載入到實際製造該邏輯的製造機器或處理器。
某些實施例可隨著它們的衍生物而使用「一實施例」或「實施例」的表示法來描述。此等用詞表示與該實施例 有關之一特別的特性、結構、或特徵被包括在至少一實施例中。說明書中不同地方出現的詞組「在一實施例中」並不必然全都指同一實施例。再者,某些實施例可隨著它們的衍生物而使用「耦合的」或「連接的」的表示法來描述。此等用詞並不必然作為彼此的同義詞。舉例來說,某些實施例可使用詞「連接的」及/或「耦合的」來指出二或更多元件彼此直接實體或電氣接觸。但「耦合」一詞亦可意指二或更多元件彼此不直接接觸,但仍彼此合作或互動。
要強調的是發明摘要的提供在於允許讀者快速弄清技術揭露內容的性質。吾人可瞭解其不被用以詮釋或限制申請專利範圍的範疇或意義。此外,在前述實施方式中,為揭露流暢,可見到各種特性被集結於單一實施例中。本文揭露的方法不應被解讀為反映出所請求實施例比明確敘述於每一請求項中者需要更多特徵的意圖。更確切地說,如以下申請專利範圍所反映者,創新的請求標的係在於少於單一所揭露實施例的所有特徵中。因此,以下申請專利範圍於此併入實施方式,每一請求項自己獨立成為一分別的實施例。在所附的申請專利範圍中,「包括」及「在其中」用詞是用作為分別個別用詞「包含」及「其中」的白話等效說法。再者,「第一」、「第二」、「第三」等等僅是作為標記之用,而非意圖把數值要件強加於其等受詞上。
以上所述包括所揭露的電路的範例。當然,無法描述 組件及/或方法的每一可想到的組合,但熟於此技藝之人士可體認到許多組合及變更係可行的。據此,新穎電路之目的在於包含所有落於所附申請專利範圍之精神與範疇以內的此等改變、修改及變化。
100‧‧‧裝置
105‧‧‧印刷電路板
110‧‧‧處理核心
120、130‧‧‧執行單元(EU)
125、135‧‧‧ROM下拉邏輯電路
140-a‧‧‧埠0
140-b‧‧‧埠1
140-c‧‧‧埠(n-1)
140-d‧‧‧埠n
150‧‧‧應用程式
200‧‧‧方塊圖
210-a‧‧‧字線
210-b‧‧‧字線
210-c‧‧‧字線
210-d‧‧‧字線
220‧‧‧ROM下拉邏輯電路
300‧‧‧處理核心邏輯架構
310‧‧‧管理者控制邏輯
330‧‧‧次要預充電裝置
400‧‧‧表
500‧‧‧系統
502‧‧‧平台
505‧‧‧晶片組
510‧‧‧處理器
512‧‧‧記憶體
514‧‧‧儲存器
515‧‧‧圖形子系統
516‧‧‧軟體應用
518‧‧‧無線電
520‧‧‧顯示器
522‧‧‧使用者介面
530‧‧‧內容服務裝置
540‧‧‧內容遞送裝置
550‧‧‧導航控制器
560‧‧‧網路
600‧‧‧裝置
602‧‧‧外殼
604‧‧‧顯示器
606‧‧‧輸入/輸出(I/O)裝置
608‧‧‧天線
612‧‧‧導航功能
圖1繪示一根據實施例的裝置的方塊圖;圖2繪示一根據實施例的方塊圖。
圖3繪示一根據實施例的邏輯電路圖。
圖4繪示一根據本揭露實施例的結果的表。
圖5繪示一適合實施本揭露實施例之系統的實施例。
圖6繪示一可實施圖5之系統的小形狀因數裝置的實施例。
100‧‧‧裝置
105‧‧‧印刷電路板
110‧‧‧處理核心
120、130‧‧‧執行單元(EU)
125、135‧‧‧ROM下拉邏輯電路
140-a‧‧‧埠0
140-b‧‧‧埠1
140-c‧‧‧埠(n-1)
140-d‧‧‧埠n
150‧‧‧應用程式

Claims (19)

  1. 一種共享函數多埠ROM裝置,包含:執行單元,包含邏輯電路,該邏輯電路可操作以執行:第一陣列之函數,由第一組單一指令多重資料(SIMD)運算所組成;第二陣列之函數,由第二組SIMD運算所組成;以及多個埠,與該邏輯電路通訊地耦合,該多個埠的每一者包含複數個可操作以供應資料給該邏輯電路的字線,該多個埠的每一者的該複數個字線的第一者共享該邏輯電路以存取該第一陣列的函數,以及該多個埠的每一者的該複數個字線的第二者共享該邏輯電路以存取該第二陣列的函數。
  2. 如申請專利範圍第1項之裝置,其中,該第一陣列之函數的至少一函數包含一數學函數。
  3. 如申請專利範圍第1項的裝置,更包含管理者控制邏輯,其可操作以減少對該邏輯電路的競爭。
  4. 如申請專利範圍第3項之裝置,更包含針對該多個埠之每一者的管理者控制邏輯,該管理者控制邏輯可操作以減少對該邏輯電路的競爭。
  5. 如申請專利範圍第1項之裝置,更包含次要預充電組件,其可操作以減少到該邏輯電路的雜訊。
  6. 如申請專利範圍第5項之裝置,其中,該次要預充 電組件係導出自一函數選取。
  7. 如申請專利範圍第1項之裝置,更包含多重次要預充電組件,其等可操作以減少到該邏輯電路的雜訊,每一次要預充電組件係與該多個埠的其中一不同者相關聯。
  8. 如申請專利範圍第1項之裝置,其中,該第一組SIMD的運算與該第二組SMID的運算不同。
  9. 一種共享函數多埠ROM系統,包含:印刷電路板(PCB);一安裝於該PCB上的處理核心,該處理核心包括多個埠,該多個埠的每一者包含複數個字線;以及可操作於該處理核心的至少一執行單元(EU),該至少一EU包括一邏輯電路,該邏輯電路由以下所組成:第一陣列之邏輯,儲存第一組可操作以執行一對應陣列之函數的第一組單一指令多重資料(SIMD)運算;以及第二陣列之邏輯,儲存第二組SIMD運算,以及該邏輯電路與該多個埠的每一者可操作地耦合以促進功率減少,該多個埠可操作以供應資料給該邏輯電路,使得該多個埠的每一者的該複數個字線的第一者共享該邏輯電路以存取該第一組SIMD運算,以及該多個埠的每一者的該複數個字線的第二者共享該邏輯電路以存取該第二組SIMD運算。
  10. 如申請專利範圍第9項之系統,其中,該處理核心包含至少一圖形處理單元(GPU)。
  11. 如申請專利範圍第9項之系統,其中,該處理核心包含至少一中央處理單元(CPU)。
  12. 如申請專利範圍第9項之系統,更包含針對該多個埠之每一者的管理者控制邏輯,該管理者控制邏輯可操作以減少對該邏輯電路的競爭。
  13. 如申請專利範圍第9項之系統,更包含導出自函數選取且可操作以減少到該邏輯電路的雜訊的多重次要預充電組件,每一次要預充電組件與該多個埠的其中一不同者相關聯。
  14. 如申請專利範圍第9項之系統,其中,該第一組SIMD的運算與該第二組SMID的運算不同。
  15. 一種共享函數多埠ROM裝置,包含:執行單元,包含一邏輯電路,與一處理核心的多個埠通訊地耦合以促進功率減少,該多個埠的每一者包含複數個字線,該邏輯電路可操作以:對自該多個埠的每一者之該複數個字線的第一者接收的資料執行第一組單一指令多重資料(SIMD)運算;以及對自該多個埠的每一者之該複數個字線的第二者接收的資料執行第二組SIMD運算。
  16. 如申請專利範圍第15項之裝置,其中,該第一組SIMD運算可操作以使用自該多個埠接收的資料作為第一函數的運算元資料來執行該第一函數,且該第二組SIMD運算可操作以使用自該多個埠接收的資料作為第二函數的 運算元資料來執行該第二函數。
  17. 如申請專利範圍第15項之裝置,其中,該邏輯電路包括第一陣列之函數邏輯,該第一陣列之函數邏輯的每一個元素與一不同的函數相關聯。
  18. 如申請專利範圍第17項之裝置,其中,該第一陣列之函數邏輯的每一個元素與次要預充電組件通訊地耦合,該次要預充電組件可操作以減少到該邏輯電路的雜訊。
  19. 如申請專利範圍第15項之裝置,其中,該第一組SIMD的運算與該第二組SMID的運算不同。
TW101149602A 2011-12-28 2012-12-24 共享函數多埠rom系統及裝置 TWI610178B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/338,887 2011-12-28
US13/338,887 US9336008B2 (en) 2011-12-28 2011-12-28 Shared function multi-ported ROM apparatus and method

Publications (2)

Publication Number Publication Date
TW201346568A TW201346568A (zh) 2013-11-16
TWI610178B true TWI610178B (zh) 2018-01-01

Family

ID=46578387

Family Applications (1)

Application Number Title Priority Date Filing Date
TW101149602A TWI610178B (zh) 2011-12-28 2012-12-24 共享函數多埠rom系統及裝置

Country Status (3)

Country Link
US (1) US9336008B2 (zh)
TW (1) TWI610178B (zh)
WO (1) WO2013101734A1 (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4559608A (en) * 1983-01-21 1985-12-17 Harris Corporation Arithmetic logic unit
US5669010A (en) * 1992-05-18 1997-09-16 Silicon Engines Cascaded two-stage computational SIMD engine having multi-port memory and multiple arithmetic units
US6466497B1 (en) * 2001-04-17 2002-10-15 Sun Microsystems, Inc. Secondary precharge mechanism for high speed multi-ported register files
US7053663B2 (en) * 2002-03-26 2006-05-30 Intel Corporation Dynamic gate with conditional keeper for soft error rate reduction
US7187606B1 (en) * 2005-08-22 2007-03-06 P.A. Semi, Inc. Read port circuit for register file
US7320013B2 (en) * 2002-12-12 2008-01-15 Adaptec, Inc. Method and apparatus for aligning operands for a processor

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69131679T2 (de) 1990-07-30 2000-05-11 Texas Instruments Inc., Dallas Statisches Speicherfeld mit wahlfreiem Zugriff, welches mindestens eine arithmetisch-logische Einheit enthält
US6127850A (en) * 1999-06-30 2000-10-03 Intel Corporation Low power clock buffer with shared, clocked transistor
JP4104538B2 (ja) 2003-12-22 2008-06-18 三洋電機株式会社 リコンフィギュラブル回路、リコンフィギュラブル回路を備えた処理装置、リコンフィギュラブル回路における論理回路の機能決定方法、回路生成方法および回路
US7853634B2 (en) 2003-12-29 2010-12-14 Xilinx, Inc. Digital signal processing circuit having a SIMD circuit
US7600081B2 (en) 2006-01-18 2009-10-06 Marvell World Trade Ltd. Processor architecture having multi-ported memory
WO2007116352A2 (en) 2006-04-12 2007-10-18 Koninklijke Philips Electronics N.V. Image processing system having a simd processor and a processing unit communicating via a multi-ported memory
US20080162879A1 (en) * 2006-12-29 2008-07-03 Hong Jiang Methods and apparatuses for aligning and/or executing instructions

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4559608A (en) * 1983-01-21 1985-12-17 Harris Corporation Arithmetic logic unit
US5669010A (en) * 1992-05-18 1997-09-16 Silicon Engines Cascaded two-stage computational SIMD engine having multi-port memory and multiple arithmetic units
US6466497B1 (en) * 2001-04-17 2002-10-15 Sun Microsystems, Inc. Secondary precharge mechanism for high speed multi-ported register files
US7053663B2 (en) * 2002-03-26 2006-05-30 Intel Corporation Dynamic gate with conditional keeper for soft error rate reduction
US7320013B2 (en) * 2002-12-12 2008-01-15 Adaptec, Inc. Method and apparatus for aligning operands for a processor
US7187606B1 (en) * 2005-08-22 2007-03-06 P.A. Semi, Inc. Read port circuit for register file

Also Published As

Publication number Publication date
US20120198208A1 (en) 2012-08-02
TW201346568A (zh) 2013-11-16
WO2013101734A1 (en) 2013-07-04
US9336008B2 (en) 2016-05-10

Similar Documents

Publication Publication Date Title
US10241932B2 (en) Power saving method and apparatus for first in first out (FIFO) memories
JP6374038B2 (ja) ドローコールにわたる共有リソースデータコヒーレンシを確実にするための効率的なハードウェアメカニズム
JP5869146B2 (ja) 外部ディスプレイ‐データi/oポートを介してグラフィック処理を拡張するための方法、装置およびシステム
TWI615807B (zh) 用於記錄在輸入幾何物件粒度上的可視度測試之結果的方法、設備及系統
JP6182225B2 (ja) カラーバッファ圧縮
US9396513B2 (en) Using group page fault descriptors to handle context switches and process terminations in graphics processors
JP5908957B2 (ja) ショートループアトミックアクセス
US9626735B2 (en) Page management approach to fully utilize hardware caches for tiled rendering
US10373288B2 (en) Transpose of image data between a linear and a Y-tiled storage format
JP2019057320A (ja) 方法、コンピュータプログラム、コンピュータ可読記録媒体および装置
KR102223446B1 (ko) 비특권 애플리케이션에 의한 그래픽 작업부하 실행의뢰
US20160246827A1 (en) Techniques for block-based indexing
JP2015508528A (ja) パイプライン化された画像処理シーケンサ
TWI610178B (zh) 共享函數多埠rom系統及裝置
JP5968463B2 (ja) データを別の記憶装置にコピーせずにデータソースによりバッファに格納されたデータを処理するためのポインタのスワッピング
TWI514858B (zh) 固定功能媒體裝置之先佔
TWI607319B (zh) 描繪圖形的方法與設備、精簡客戶端系統及其機器可讀取媒體
US9576139B2 (en) Techniques for a secure graphics architecture
JP2015076094A (ja) グラフィック処理アーキテクチャにおけるポストシンクロナイゼーションオペレーションとしてのアトミックオペレーションのサポート
US10168985B2 (en) Dynamic audio codec enumeration
TWI512627B (zh) 用於視訊後置處理之方法與裝置及機器可讀取媒體
US20130326351A1 (en) Video Post-Processing on Platforms without an Interface to Handle the Video Post-Processing Request from a Video Player

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees