TWI310154B - - Google Patents
Download PDFInfo
- Publication number
- TWI310154B TWI310154B TW095111920A TW95111920A TWI310154B TW I310154 B TWI310154 B TW I310154B TW 095111920 A TW095111920 A TW 095111920A TW 95111920 A TW95111920 A TW 95111920A TW I310154 B TWI310154 B TW I310154B
- Authority
- TW
- Taiwan
- Prior art keywords
- storage
- module
- data
- application
- loading
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/3004—Arrangements for executing specific machine instructions to perform operations on memory
- G06F9/30043—LOAD or STORE instructions; Clear instruction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30032—Movement instructions, e.g. MOVE, SHIFT, ROTATE, SHUFFLE
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Executing Machine-Instructions (AREA)
Description
存之體應用提供雜 儲存單元Μ 儲料元以執行絲,在載入 已、擇排列分散儲存模組(SpSSM)提供選擇、排列 1310154 九、發明說明: 【發明所屬之技術領域】 本發明係有關一種改良多媒體應用效能之裝置及方法,特別是指 一種針對多媒體應用提供彈性載入與儲存之裝置及方法。 【先前技術】 一般來說,多媒體應用需要大量的計算數值,且若有時限或是即 時需求,都必須在時限前或即時完成運算。DCT (Diskrete c〇sinus
Transformation ) 、 IDCT ( Inverse Diskrete Cosinus
Transformation)、運動補償(M〇ti〇n Compensation, MC)及移動估 計(Motion Estimation,ME)在影音領域應用廣泛,而單指令複合資 料結構(single instruction multiple data, SIMD)在多媒體應用 上亦廣為人知。 口載入和儲存運算係用以將資料從記憶體存取到暫存器,或從暫存 器存取到織财’細,在某賴況τ,記紐存取甚為重要,如 DCT及IDCT ’在DCT和IDCT的功能區塊中,資料的記憶體位址之間會 有特殊的關連,若使用傳統的存取方式,則在排列資料前需先進行ς 位運算的步驟,此部份之技術個需齡來執行才可完成移位運算, 將使系統效能降低,增加排列工作的負擔。 =此,本發卿騎上述習知馳之數失,提出-種針對多 =應用提供雜•與齡之裝置及方法,財效克服上述之該等 【發明内容】 存之ΐΐΐίί要Γ在提供一種針對多媒體應用提供彈性載入與儲 運算方式,簡化習知中排列資料所需的移位散及收鮮不同的 1310154 及分散之儲存運算,使資料可依照特定的順序規則存入記憶體中。 ^發明之再-目的在提供-種針對多舰制提供彈性載入與儲 ^ ^及方法,其雜供—麟鮮排顺賴人额(SMPCLM), 2仃選擇、遮罩、排列及收集等載人運算,使記憶體中之資 算前可依照特定酬制,提高效能,_即時需麵目的。 ^發明之又-目的在提供—種針對多舰顧提供彈性載入與儲 f之裝置及綠,祕可顧於32位元、64位元或其倍數位元的結構 祕Ϊ達ί述之目的,本發明提供—種針對多朗提供彈性載入 暫存11檔案中,並可接受寫回之資料;利用一控 驅動複數控制訊號,以控制—選擇排列分散儲存模組 «ΐΐ;^;::?Τΐstore module^SPSSM) collet ! , (selective maskable permutable and ectoload nodule,SMPaM)之操雜 g 3送=排列分散儲存模組係位於—載人儲存單元中;Ϊ來iil 狀離i载入儲存皁元運算處理後得出記憶體位址,依據不同之運算
元儲存於運算所得之—記憶體位址中;取得記J 罩、心丨;》厂’並利用選擇遮罩排列收集载入模組執行選擇/遮 ====_選娜、雜刚算之資料回傳 術内=:::=明’當更容易瞭解本發明之目的、技 【實施方式】 方法本媒體應用提供彈性載入與儲存之裝置及 载入/儲在鹿s顧勒上於記麵和暫存諸案之間的 咐置,及細絲置讀紐能的方法。 包含-^不’針對多媒體應用提供彈性載入與儲存之裝置1〇中 暫存器㈣101,其輸出至少二來賴算元(s_e〇P_d) 112 1310154 及一目的運算元(destinationoperand) 113,並可接受寫回之資料ii5 ; 一載入儲存單元102將來源運算元112接收,並利用其中之一選擇排列 分散儲存模組 103 (selective permutable and scatter store module, SPSSM)對目的運算元113執行選擇、排列及分散之儲存運算,並將 其儲存至根據兩個來源運算元112所計算出之一記憶體 addreSS[31:2]中;一選擇遮罩排列收集載入模組106 (selectivemaskable permutable and collector load module ’ SMPCLM),可在載入運算狀熊 時,對&己憶體105之載入資料114執行選擇、遮罩、排列及收集運算, 並可將資料窝回至暫存器檔案101 ;以及一控制單元1〇7 ,其可驅動 b/hw、s_b、s_hw、m、Ρ、ws、S等複數控制訊號,以控制選擇排列分 散儲存模組103及選擇遮罩排列收集載入模組1〇6之操作狀態。 在載入運算時,載入儲存單元102將address傳送到記憶體1〇5中, 而在儲存運算時,addreSS[31:2]不但被傳送到記憶體1〇5,且暫存器檔 案ιοί所送出之目的運算元⑴取代了記憶體1〇5巾address[3i取位 置的資料。若·乍狀態為選擇、排列或分散儲存運算,則選擇排列分 散儲存餘103將執行選擇、湖或分散贿之運算,並將運算的結 果儲存在記憶體1G5中;然、而,若操作狀態為選擇、遮罩、排列或^ 集載入運算,則由選擇遮罩排列收集載入模組1〇6對資料進行選擇、 ^罩、排顺收絲人之運算,並將運算結果贿於暫存賴案ι〇ι 中〇 ,執㈣擇或遮罩運算時,骑是齡絲人齡皆可選 =且或半個字元進行運算,減^即肋定 為1 ’表示載入/儲存指令中之運算一次執行半個字元,若為〇 I表不次運异一個位元組。訊號s—b、s hw ,位一 之訊號,用以定義暫在龍,“ ㈣位凡及一位兀
儲存運算時置人峨體⑽算H 位元組或半字元的方式置換到記憶體105中;反之, 、、且106運异之寫回資料115,則代表將從記憶體奶中讀出之 1310154 料114以-位元組或半字元之方式置換成暫存器值(即寫回 ^)。訊號m用以定義遮罩運算,使寫回資料ιΐ5之剩餘部分可 何修改。addrcss_兩位元藉以定義資射哪—位元組或半字 f。舉例來說’若 b_hw 為 〇,s—b 為 10 且 address[1:_ 〇 入資料Μ之第二個位元組替_ 訊號P為每雜元顺叙八位元糊職,#執行侧運 以定義四位元組之資料排列,例如訊號?為聊川^時, 、四,位7C組替換為第三個位元組,第三個位元組替換為第一個位 ^二個位凡組替換為第二個位元組(不變),第-個位元組則替換 $第==瓜組之位置。訊號ρ並非載人/儲存指令中不可缺少的部 i算特殊暫存器(圖中未示)中,其暫存器值在執行排列 錄行分錄集運算時,需詳細制其位移量,如位移量為Μ位 二的資料以每個位元組間隔八位元之位置分散。有此位 ϊίίΐΓ例如13位元即為無意義的位移量,而且在編碼的限 算模以i=:::r來:散/收集運算一 示音二圖’其為選擇排列分散儲存模組i〇3 (spssm)之 211^ —//器23及三個模組:選擇模組2G、排列模組 組中進日3器播案Γ之目的運算元113分別進入此三模 號s控制以觸23 ’ _訊 :;rf 適====== 1310154 訊號b/hw。遮罩運算利用address[1:_末兩位元,用以满目的運算 =m儲存在記憶體105的哪個位址;並利用訊號m控制多工器2〇2 使其選擇回轉裝置之輸出或是暫存器檔案⑼所輸出之資料訊號。 暫存器槽案101之目的運算元113進入排列模組21後分割成四個 ^立元組之資料,並進入四多工器211、2丨2、213、214中進行排列。 多工器分別經-訊號pG、…p2、p3控制,此四個二位元之訊號 p pl p2 P3即為八位元之訊號p。每個多工器2n、212、213、214 之輸出可根據訊號P以蚊目的運算元113如何排列,最後將每一多 工器21卜212、213、214之輸出組合成32位元資料。 在分散模'组22中進行分散運算時,目的運算元ιΐ3的每一位元组 都相距-個位移量,三位移器225、挪、奶 週期中執行分散運算的目的。當分散麵„接仏山=脈 傳送之目的運算元m後此;7位目暫存_ 101所 .更此32位70之目的運算元113分割為四個八 位tl資科,並將母-位元組分別儲存於四臨時暫存器Π、瓜、奶、 2目24的暫存f Π、222'223、224之大小為256位元,而 ::運,113之母一位元組係儲存於臨時暫存器22卜脳 中最左邊的位元組位置,由於第—個位元組不需要 22中僅使用三個位移器225、226、^散模、 臟位移器225、226、227所^:個—將臨時暫存器 使每-位元_距-_量。連^222 連起來, 宜门郷哭”。接 料連之資料傳輪至一 寫口選擇器229 ’其係、負貝寫人不同大小之資料 請同時參考第一圖及第三圖,第三圖為選擇遮罩L华載入模 請(SMPCLM)之示意圖,其中包含一多 】」入模 ㈣此mm 分別執行選擇遮罩、排 列及收集載人之運算,並將資料輸出至多工器23 排 擇遮罩模組3〇、排列模組Μ及收集模用訊號s &制選 暫存器播_之資料25為何者3;。32魂组中,最後要寫回至 當執行選擇遮罩之載入運算時,其與選擇儲存運算有一 不使用回轉裝置域職接m _峨s—b、s—hw、-b/J及 1310154 address[l.G]£<將暫存賴案1G1傳送之資料34與記髓⑽傳送之資 料35連接。使用暫存器㈣之龍% (即第—圖中之ιΐ2)是為了使 其剩餘的部分在遮罩運算時可維持不變。-符號擴展/零擴展模組302 sign-extend/zero-extend module)依據訊號 b/hw 擴展資料継的部 分,例如載人伟字元時’將·做符賴展或零擴展至 一個字元。 、接器301及符號擴展/零擴展模組3〇2之輸出經過多工器如以選出 其中之一做為寫回資料115的候選資料之一。 ,歹!模組31之作動方式與第二圖之排列模組21相同,皆使用四 ϋ 311、312、313、314及四個二位元之訊號p0、P卜P2、P3將記 ^體資料35重新排列1進行收集運算時,利用一較寬讀取頻寬 隹iTTwldth)之位元組選擇321將相距一個位移值的四個位元組收 f而’由於讀取資料的頻寬_,因此需要複數週期才可取 =需的資料35,因此位元組選擇器321中更包括一載入緩衝器(圖 中未示)以儲存收到的資料。當進行分散/收集運算時,位移量為職 Γ及二位Γί二種模式皆可支持’訊號ws用以選擇當下使 ψ 兀、、’且選擇器321即依據此訊號WS從載入緩衝器中選
=需之雜元:组,並將其輸出至一目標臨時暫存器322。最後由多工 器33依據控制单元107所輸出之訊號$料、裝埋、电罢& 2 3丨及收雜㈣彻S糊精·3G、排列模組 宰中=:示=憶:中之兩個半字元資料遮罩載入至暫存器播 案中之實施例。右訊就m為i,訊號s_h f十憶體,之後半字元將载人至暫存器檔案之後半字器 權案之前半子元則不作任何變化,換士 ° 號m Α卜㈣l ^ 刖丰字凡已被遮罩。若訊 <、、、s儿s_ w為且addressD:〇]為00,則記伊體資料之德丰 何變化地載人至暫存器檔案之前半字元] ,之前半字元載人至暫存器檔案之後半字元中, 字元則不作任何變化。若訊號m為 案之則丰 為1〇,則將記憶體資料之前半位元載入
1310154 而暫存Is標案之後半字元則不作任何改變。 第五圖及第六圖分別為選擇儲存半個字元或一個位元組至記憶體 中之實施例。在第五圖中,當一位元之訊號s—hw為1時,將暫存器資 料之前半字元翻轉到後半字元,並將此後半字元之資料儲存到記憶體 之後半字元中;當訊號s—hw為0時,則將暫存器資料之後半字元翻轉 到前半字元,將此前半字元儲存至記憶體之前半字元中。在第六圖中, 利用兩位元之訊號s_b將暫存器資料之第三位元組翻轉到第一位元組 的位置’並儲存至記憶體之第一個位元組中。 第七圖為排列載入及排列儲存之實施例,如圖所示,訊號p為 00,01,01,11,排列載入運算後,記憶體資料之第四個位元組及第一個位 元且刀別載入至暫存器檔案之第四、第一個位元組中,第三個位元組 載入至暫存器檔案之第二及第三個位元組中,第二個位元組則不載 入:排列儲存運算中,若訊號p為00,10,01,u,暫存器資料之第四個 位元組及第一個位元組分別儲存至記憶體之第四、第一個位元組,第 —個及第三個位元組則分別儲存至記憶體之第三、第二個位元組中。 第八圖為收集運算之實施例,當訊號^^為〇〇時位移量為16位元, 故,個位it組皆間隔人位元,取四個位元組以組成32侃之資料;當 訊號ws $ 1〇時位移量為64位元,故每隔%位元取一位元組,以組 成32位元之資料。 第^圖為分散運算之實施例,當訊號哪為⑽時位移量為16位元, 故暫存器檔案巾之四錄元組轉個位元網隔八位元之位置儲存至 臨時暫存H中;當訊號ws為料位移量為64位元,故暫存器擋案中 =四個位元組以每個侃_隔56位元儲存至臨時暫存財之四個 置0 綜上所述,本發明所提供之針對多媒體應服供彈性載入與儲 及方法利用選擇排列分散儲存模組(SPSSM)及選擇遮罩排列 二載入模組(SMPCLM)兩個模組,不f加人額外的指令週 ^料即可對資料進行雅的排列,減少了先前技射為排列^ 而之位移運算’從而增進系統效能。 斤
1310154 唯以上所述者,僅為本發明之較佳實施例而已 ^明實施之範圍。故即凡依本發对請範圍所述微^來限定本 ,等變化或修飾,均應包括於本發明之申 ^ '锖神所為之 【圖式簡單說明】 乾圍内。 Ϊ3Γ發明所提供之針對多媒體應用提供彈性载人與儲存之裝置 第二圖為本發明中選擇排列分散儲存模組之示意圖。 第三圖為本發明中選擇遮罩排列收集载人模組之示音圖。 第四圖為本發射將半字元之資料遮罩載人至暫^職中之實施 第五圖為本發明中將半子元之資料選擇儲存至記憶體巾之實施例。 第六圖為本發日种將-位元組之諸選擇儲存至記憶體中之實施例。 第七圖為本發明中進行排列載入與排列儲存運算之實施例。 第八圖為本發明中進行收集運算之實施例。 第九圖為本發明中進行分散運算之實施例。 【主要元件符號說明】 10針對多媒體應用提供彈性載入與儲存之裝置 ιοί暫存器檔案 102載入儲存單元 103選擇排列分散儲存模組 105記憶體 106選擇遮罩排列收集載入模組 107控制單元 112來源運算元 113目的運算元 114載入資料 115寫回資料 20選擇模組 201回轉裝置 12 1310154 202多工器 21排列模組 211、212、213、214 多工器 22分散模組
221、222、223、224臨時暫存器 225、226、227 位移器 228連接器 229寫回選擇器 23多工器 25資料 30選擇遮罩模組 301連接器 302符號擴展/零擴展模組 303多工器 31排列模組 311、312、313、314 多工器 32收集模組 321位元組選擇器 322目標臨時暫存器 33多工器 34暫存器傳送之資料 35記憶體傳送之資料 13
Claims (1)
1310154 η (〇 十、申請專利範圍: Κ儲應用提供彈性載人與儲存之方法,其係、複數載入/ ,存模組將資料於記憶體與暫存器之間移動,包括以下步驟: 提2少二來源運算元(source operand)及—目的運算元於一 案中’該暫存器檔案並可接收寫回之資料; 利,-控制單元_複數㈣訊號’以控制_卿排列分散儲存模组 Uelecuve permutable and scatter store moduie) m jiMseleetive maskable pennutable and e()lleetw _ 之 單^載人或儲存運算,該選擇排列分散齡模組係位於一 將源運算元傳送至該載入儲存單元運算處_得出—記憶體位址, $㈣之運算狀態,將該目的運算元儲存於運算所得之該記憶體位 取=-記憶體中載人運算之資料,並利賴選擇遮罩 執行選擇/遮罩、及收集運算;以及 ^ 將已選擇/遮罩、排列及收集運算之資料回傳至該暫存器播案中。 .如申請專利範圍第1項所述之針對㈣體細提供彈性獻 法’其中該控制單元所決定之操作狀態為選擇/排列/分散儲存運 儲存模組執行選擇/排列/分散儲存運算,並將運算結果儲^ 3. •如申請專利範圍第1項所述之針對多媒體應用提供 法,其中雜鮮摘蚊讀触㈣鮮/射做賴 選擇遮f排列收集載入模組對從該記憶體所取得之資料執行遮罩/排二 收集運算,並將運算結果儲存於該暫存器檔案中。 4·如申請專魏_ i顿述之針對乡雜細提供雜載人 法,其中該選擇排列分散齡模組更可包含—選擇齡模組' 組及-分散儲雜組,顧該蝴單元所發出之控伽 、 種模組進行運算。 娜運用何 5. 如申請專利難第4項所述之針料媒體應用提供彈性載人與儲存之方 14 1310154 ....... 3 6 til,擇儲存模組係包含—回轉裝置(_。〇及-多工考 6:申^利範圍第4項所述之針對多媒體應用提供^。 7. 法,其中該排列模組係包含複數多工器。 载與儲存之方 t申,專纖圍第4項所述之針對多媒體應 ^,其中該分散儲存模組係包含四臨時暫存器、 (concatenator)及一寫回選擇器Γ 秒15 連接器 該位移器係透過該連接祕將簡傳送至臨時暫存器及 8_ t申請細_ 5項所述之針對㈣ = 法,其中該回轉裝置係用以回轉該暫存器中正载 料的位尬或半财元可排顺適#驗置。 '使所需要之貝 9·如申請專魏圍第5項所述之針料媒 法,其中該多卫器係用以選擇由該回_ η 載人與儲存之方 料。 利和轉裝置或該暫存《案所輸出之資 圍第4項所述之針對多媒體應 法’其中該載人儲存單元包含—多 取〜、储存之方 模組之三個模組之三輸出端。° k W擇排列分散儲存 6項所述之針對多媒體應用提 12 法,其中輸入該排列模組之資料係劃分為四個位元組,t細=之方 被驅動至四個該多工器中以進行排列。 ° 位兀組 :請 式或設置於一特定暫存器中。°二制訊號控制,且該控制訊號可自訂形 13_ΓϊίΓ圍第1項所述之針對多媒體應用提供彈性載入與儲存之方 法,「中韻擇排列分散儲存模組在選擇储存運算時,從該暫 所傳送之資料之任意部分可被選擇配置到任意記憶體位置。L 14.如申請專利範圍第1項所述之針 法:簡_分散_組===^^ 四個位兀組可被任意順序地儲存到該目的運算元中。 I5·如申請專利範圍第丨項所述之針對多媒體提供彈性載人與儲存之方 15 1310154 曰修正替換頁 麵擇制分散儲存模組在分散儲存運算時,該來源運算元之 16r=f且能以相距一位移量(〇ffset)方式儲存到該記憶體中 方喷,圍第13項所述之針對多媒體應用提供彈性載 ==存運算可分為選擇储存半個字元及選擇健存-個位 im,15第15項所述之針對多媒體應用提供彈性載人與儲存之 用-位移i該分散儲存·具有複數種運算方式,每"種運算方式可使 18.ΓϊίΓ圍第7項所述之針對多媒體應用提供彈性載入與儲存之方 該分散儲存模組之資料_分為四個位元組,每—位元組 算\^^時暫存財’該位移器並根據該控制《來執行位移運 :出==?三個輸出及該臨時暫存器中第四個臨時暫存器之 19ΐΓ2ί,Γ8項所述之針對多媒體應用提供彈性載人與儲存之 21.如申請專利範圍第!項所述之針對多媒體應 法’其中該選擇遮罩排列收集載入模組(slpclm)更== 工器係用以選擇3亥二模組之二個輸出。 I請=====媒體應用提供彈性_存之 23. 如申請專利範圍第22項所述之針對容拔棘 方法,其巾輸人該排列模組之資料被±|卜〜、/供雜載人與儲存之 工器中進行排列。 讀破‘為四個位恤,並傳輸至四多 24. 如申請專繼Μ 23 _狀鱗乡絲應 方法,其中該四個多工器係以該控制訊號控制’且該控制二二= 16 1310154 .1 —」 忒或设置於一特定暫存器中。 25.如申請專利範圍第21項所述 方法,其中存模組儲存之 時暫存器。 1這,且、擇器(一 selector)及一臨 26·如申請專利範圍第Μ項所述之 方法,笪中,亥位开細十秘杲體應岐供彈性載入與儲存之 位元也,、象該控制訊號收集相距一位移量的四個 、,且並將該四位兀組取出配置於該臨時暫存器中。 =申=利範圍第i項所述之針對多媒體應用提 if ^ 28 可選擇載人至該暫存器檔案之任意部份。 =其中該選擇遮罩排列收集載人模組在遮罩運算 被载入至該暫存器中,則剩餘 惶有π刀貝枓 (Zero-extend)、射減广 伤之貝枓可決定保留除了零擴展 T s (Slgn'eXtend) 〇 項所述之針對多媒體應用提供彈性載入與储存之方 遮ί排列收集載人模組在排列運算時,該來源運算:元ΐ 兀、,且可以任忍順序載入至該目的運算元中。 3〇ΐ申===== 情多職'賴供彈性載人與儲存之方 ,、中韻擇遮罩排列收集載入模組在 移1之四個不相鄰之位元組可被載入至該暫存哭中了間Μ 31.=請ί=圍第21項所述之針對多媒體應用提供彈性載入與儲存之 罩載入二擇麟載人模_包含選擇遮罩載人半辦元及選擇遮 罩載入一位7L組兩種載入方式。 方法Htn21項所叙針對乡舰剌提供彈性載人與儲存之 俨展罩胸_包含—連接11 (e。副en伽)、一符號 模組及—多工器,資料從該記憶 分別接收二於:P入拉組後’該連接器及該符號擴展/零擴展模組 刀別接收,並傳輸至該多工器中處理。 申月專利辄圍第32項所述之針對多媒體應用提供彈性載入與儲存之 17 ! 1310154 一.'.‘'.一一..一——一— …」 方法,其中該連接器係用以將該記情 該控制訊號來建立連鎖關係,使^ 該暫存器中之資料依據 存器中適當的位置上,而剩餘伟字元可配置於該暫 34.如申請專利範圍第32項所述 H =何改變保留下來。 =Γ_擴展模組可; 展模組可執行資餘雜❹伸 號擴展/零擴展模組所輸出之寫回資料。 、人»或以符 其慨集運算有數種運算方式,且每_=== 圍第1項所述之針對多媒體應用提供彈性載人與儲存之方 法’八係可應用於32位元、64位元或更大之結構中。 37. -種針對多媒體應用提供彈性載入與儲存之襄置,包括. 鼻兀,並可接受寫回之資料; -載入儲存單元’其包含-選擇排列分觸存模組(娜細〒細純 =scatter store module,SPSSM),其可執行選擇、排列及分散儲存運 异,對該載入儲存單元所接收之該來源運算元進行位址運算 位址傳送出去; $ -把憶體,其在載人運算時接收該位址,而在财運算_記憶體則將 該目的運算元置入該位址之位置; flA^MCselective maskable permutable and collector load module,SMPCLM) ’可在載入運算狀態時,執行選擇/遮罩 '排 列及收集運算,並可將資料寫回至該暫存器檔案;以及 一控制單元,其係可驅動複數控制訊號,以控制該選擇排列分散儲存模 組及該選擇遮罩排列收集載入模組之操作狀態,而決定該控制訊號之 資訊則可自行編碼制定載入/儲存形式。 ' 38. 如申請專利範圍第37項所述之針對多媒體應用提供彈性載入與儲存之 和午、月曰修正替換頁 1310154 裝置,其中該控制單元所決定之描 ' 該選擇排浙散儲存触執#選湖梅分散儲存運算時, 存至該記憶體中。 #排列/分散儲存運算,並將運算結果儲 3=申請專利範圍第37項所述之 裝置,其中該控制單元所決定之趨从蜾體應用&供彈性載入與儲存之 該選擇遮罩排列收集载入模植對從^態為遮罩/排列/收集載入運算時, 列/收集運算’並將運算結果儲存“;==之資料執行遮罩/排 40.如申請專利範圍第37 ’臀存純案中。 裝置,其中該選擇排列分散儲存模組更與儲存之 礼如申請專利範圍第40項所述^ ^、排列及分散儲存之運算。 裝置,其中該選擇館存模組係包含—回用提供彈性載入與儲存之 42.如申請專利範圍第4〇項所述之針 (=嫩)及-多工器。 裝置,其巾_馳係包含複』==體細提供雜狀與儲存之 43_如申請專利範圍第4〇項所述之 :胁 (oncatenatoO (write backselector) , 雜移器係透過該連接器再將訊 j ▲時暫存器及 物^=性_儲存之 存模組卿《列分散储 45 43項所述之針對多媒體應用提供彈性載人盥儲存之 組各配置於一臨時暫劃分為四個位元組,每一位元 算,接絲移随根據驗舰絲執行位移運 編位移器之三個輸出及該臨_綠 輸出傳輸至該連接器。 了·心 46:=範圍第45項所述之針對多媒體應用提 接器將所接收之四個輸出連結在—起,使每—位元組相 1,並將該連結之結果輸出至該寫回選擇器。 ' - i !31〇154 47.如申請專利範圍第37項所述之斜料 裝置,其中該選擇遮罩排列收集栽入模=====與儲存之 多工器係用以選擇該三模組之三個g、、,且4二個模組及—多工器,該 48=請==::;:::媒_供彈性_存之 41申請專,_ 48摘叙㈣多雜顧提供雜載人與儲存之 起’其中輸入該排列模組之資料被劃分為四個位尬輸2 工器中進行排列。 I丨哥利王四夕 50:申睛專伽Μ 47項所述之針射舰顧提供雜載人與儲存之 中該收集儲存模組包含—位元組選擇11 (bytesdeeto0及一臨 51·如申請專利綱第5G項所述之針對多舰朗提供彈性載人與儲存之 裝置,其中該位元組選擇器可依據該控制訊號收集相距一位移量的四個 位元組,並將該四位元組取出配置於該臨時暫存器中。 52·如申料職@第47項所述之針對多舰顧提供雜載人與健存之 裂置’其中該選擇遮罩載入模組係包含一連接器(c〇ncatenat〇〇、一符號 擴展/零擴展(sign-extend/zero-extend)模組及一多工器,資料從該記憶 體中傳送至該選擇鮮載人模組後,該連接狀該符鶴展/零 分別接收,並傳輸至該多工器中處理。 、、'、· 53·如申請專利範圍第52項所述之針對多媒體應用提供彈性載入與儲存之 裝置,其中該連接器係用以將該記憶體之資料與該暫存器檔案中之資料 依據該控制訊號來建立連接關係,使所需之位元組或半個字元可配置於 °亥暫存器槽案中適當的位置上,而剩餘部分之資料則可不做任何改變保 留下來。 μ 20
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW095111920A TW200739363A (en) | 2006-04-04 | 2006-04-04 | Flexible load and storage device for multimedia applications |
US11/682,460 US20070234015A1 (en) | 2006-04-04 | 2007-03-06 | Apparatus and method of providing flexible load and store for multimedia applications |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW095111920A TW200739363A (en) | 2006-04-04 | 2006-04-04 | Flexible load and storage device for multimedia applications |
Publications (2)
Publication Number | Publication Date |
---|---|
TW200739363A TW200739363A (en) | 2007-10-16 |
TWI310154B true TWI310154B (zh) | 2009-05-21 |
Family
ID=38560843
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW095111920A TW200739363A (en) | 2006-04-04 | 2006-04-04 | Flexible load and storage device for multimedia applications |
Country Status (2)
Country | Link |
---|---|
US (1) | US20070234015A1 (zh) |
TW (1) | TW200739363A (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100747901B1 (ko) * | 2005-07-18 | 2007-08-08 | 주식회사 팬택앤큐리텔 | 이동통신단말기의 실행 파일 압축 방법 |
GB2508312B (en) * | 2011-09-26 | 2020-04-22 | Intel Corp | Instruction and logic to provide vector load-op/store-op with stride functionality |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6820195B1 (en) * | 1999-10-01 | 2004-11-16 | Hitachi, Ltd. | Aligning load/store data with big/little endian determined rotation distance control |
US6829696B1 (en) * | 1999-12-30 | 2004-12-07 | Texas Instruments Incorporated | Data processing system with register store/load utilizing data packing/unpacking |
US6665790B1 (en) * | 2000-02-29 | 2003-12-16 | International Business Machines Corporation | Vector register file with arbitrary vector addressing |
US6665768B1 (en) * | 2000-10-12 | 2003-12-16 | Chipwrights Design, Inc. | Table look-up operation for SIMD processors with interleaved memory systems |
EP1508853A1 (en) * | 2003-08-19 | 2005-02-23 | STMicroelectronics Limited | Computer system and method for loading non-aligned words |
US20070106883A1 (en) * | 2005-11-07 | 2007-05-10 | Choquette Jack H | Efficient Streaming of Un-Aligned Load/Store Instructions that Save Unused Non-Aligned Data in a Scratch Register for the Next Instruction |
US20070226469A1 (en) * | 2006-03-06 | 2007-09-27 | James Wilson | Permutable address processor and method |
-
2006
- 2006-04-04 TW TW095111920A patent/TW200739363A/zh not_active IP Right Cessation
-
2007
- 2007-03-06 US US11/682,460 patent/US20070234015A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
TW200739363A (en) | 2007-10-16 |
US20070234015A1 (en) | 2007-10-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6929958B2 (ja) | 低レイテンシ行列乗算ユニット | |
TWI322958B (en) | Aliasing data processing registers | |
EP0726532B1 (en) | Array processor communication architecture with broadcast instructions | |
CN103221939B (zh) | 移动数据的方法和装置 | |
TWI300187B (en) | Method, apparatus and system to enable register information to be flexibly accessed for an execution engine | |
US7196708B2 (en) | Parallel vector processing | |
US6961845B2 (en) | System to perform horizontal additions | |
US6208772B1 (en) | Data processing system for logically adjacent data samples such as image data in a machine vision system | |
CN108572850A (zh) | 矢量处理单元 | |
US8868885B2 (en) | On-the-fly permutation of vector elements for executing successive elemental instructions | |
TW200413946A (en) | SIMD processor with scalar arithmetic logic units | |
TWI312938B (en) | Interface circuit, system, and method for interfacing between buses of different widths | |
CN107408102A (zh) | 配置成使用数字信号处理指令对可变长度向量进行操作的向量处理器 | |
EP1261910A2 (en) | Vliw computer processing architecture having a scalable number of register files | |
EP1261921A2 (en) | Vliw computer processing architecture with on-chip dynamic ram | |
US20060095681A1 (en) | Narrow/wide cache | |
JPH08314717A (ja) | コンピュータ及びコンピュータ動作方法 | |
CN103365631A (zh) | 用于存储器访问的动态库模式寻址 | |
Fung et al. | Using multiple graphics cards as a general purpose parallel computer: Applications to computer vision | |
CN103309702A (zh) | 用于并行线程子集的一致加载处理 | |
CN108009976A (zh) | 用于图形处理单元(gpu)计算的超级单指令多数据(超级simd) | |
WO2008042700A2 (en) | Flexible microprocessor register file | |
CN104133748B (zh) | 用以在微处理器内组合来自多个寄存器单元的对应半字单元的方法及系统 | |
TWI310154B (zh) | ||
CN107315575A (zh) | 一种用于执行向量合并运算的装置和方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |