TW559709B - Apparatus, video processor, method, and apparatus including instructions residing on a machine-readable medium for supporting aligned SIMD operations - Google Patents
Apparatus, video processor, method, and apparatus including instructions residing on a machine-readable medium for supporting aligned SIMD operations Download PDFInfo
- Publication number
- TW559709B TW559709B TW090115968A TW90115968A TW559709B TW 559709 B TW559709 B TW 559709B TW 090115968 A TW090115968 A TW 090115968A TW 90115968 A TW90115968 A TW 90115968A TW 559709 B TW559709 B TW 559709B
- Authority
- TW
- Taiwan
- Prior art keywords
- group
- operands
- words
- bit
- patent application
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 16
- 230000004044 response Effects 0.000 claims description 8
- 230000008439 repair process Effects 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000002360 preparation method Methods 0.000 description 3
- 238000009825 accumulation Methods 0.000 description 2
- PCTMTFRHKVHKIS-BMFZQQSSSA-N (1s,3r,4e,6e,8e,10e,12e,14e,16e,18s,19r,20r,21s,25r,27r,30r,31r,33s,35r,37s,38r)-3-[(2r,3s,4s,5s,6r)-4-amino-3,5-dihydroxy-6-methyloxan-2-yl]oxy-19,25,27,30,31,33,35,37-octahydroxy-18,20,21-trimethyl-23-oxo-22,39-dioxabicyclo[33.3.1]nonatriaconta-4,6,8,10 Chemical compound C1C=C2C[C@@H](OS(O)(=O)=O)CC[C@]2(C)[C@@H]2[C@@H]1[C@@H]1CC[C@H]([C@H](C)CCCC(C)C)[C@@]1(C)CC2.O[C@H]1[C@@H](N)[C@H](O)[C@@H](C)O[C@H]1O[C@H]1/C=C/C=C/C=C/C=C/C=C/C=C/C=C/[C@H](C)[C@@H](O)[C@@H](C)[C@H](C)OC(=O)C[C@H](O)C[C@H](O)CC[C@@H](O)[C@H](O)C[C@H](O)C[C@](O)(C[C@H](O)[C@H]2C(O)=O)O[C@H]2C1 PCTMTFRHKVHKIS-BMFZQQSSSA-N 0.000 description 1
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 229910052727 yttrium Inorganic materials 0.000 description 1
- VWQVUPCCIRVNHF-UHFFFAOYSA-N yttrium atom Chemical compound [Y] VWQVUPCCIRVNHF-UHFFFAOYSA-N 0.000 description 1
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/30098—Register arrangements
- G06F9/30105—Register structure
- G06F9/30112—Register structure comprising data of variable length
-
- 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
-
- 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/3001—Arithmetic instructions
-
- 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/30098—Register arrangements
- G06F9/30105—Register structure
- G06F9/30109—Register structure having multiple operands in a single register
-
- 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/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3824—Operand accessing
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Executing Machine-Instructions (AREA)
- Advance Control (AREA)
Description
559709 A7 B7 五、發明説明(1 發明背景 數位信號處理器(DSPs)可運用在各種多媒體應用,例如 ,數位視訊、影像處理及音訊。D S P s可操作數位信號以建 立並開啟此類的多媒體檔案。 DSPs 可作為 SIMD (Single Instruction/Multiple Data ; 單指令/多資料)或資料平行處理器。在§ IM d運算中,會將 單一指示傳送至一些處理元件,用以對不同的資料執行相 同的運算。可使用中央控制器將指令資料流廣播至不同的 處理元件。SIMD指示提供數種標準運算,包括加法、減法 、采法备-累積器(MAC)及Ll-Norm -累積(SAA)、剪貼及 雙線插值法所適用的一些特殊指令。 汴多視汛及影像處理裝置係用來處理以兩維(2 D)資料陣 列排列的8位元字組。四個8位元運算元可封裝成32位元群 組字組,以傳送至進行平行處理的執行單元。來自於21)陣 列的這些8位元運算元必須正確校法成32位元群組字組,才 能正確運算。 當在3 2位元校準型機器上使用8位元資料時,有四種不同 校準可能性存在:校準;移位8位元;移位16位元;以及移 位24位元。如果DSP偵測到校準錯誤字組,則會產生例外 狀況。為了響應例外狀況,可在記憶體介面或資料暫存器 中執行校準運算,以移位8位元運算元,產生經過校準的32 位元字組。然而,這個校準運算可能會增加機器運算的額 外處理内部操作時間。 8位元SIMD運算的校準内部操作時間可能會導致無法有 -4- 559709 A7 B7 圖5顯示根據還有另 暫存器檔案架構。 發明説明 效利用通用D S P内的資源。此類的無效率通常會呈王, 準備資料所應用的校準運算所導致的不必要週期^見為因 圖式簡單描述 圖1顯示根據具體實施例之暫存器檔案架構的原理圖。 圖2 A 土 2 D顯示根據具體實施例之用來以四個校準妝〜 載入32位元的暫存器檔案架構。 怨來 圖3 Α至3 C顯示根據具體實施例之校準運算。 圖4顯示根據另一項具體實施例之包含兩對暫存器 一項具體貫施例之包含兩對暫存哭的 圖6顯示包含具有根據具體實施例之暫存器檔案架構之數 位信號處理器之高解析度電視的原理圖。 & 各圖式中相同的參考符號標示相同的元件。 詳細說明 圖1顯示根據一項具體實施例的暫存器檔案架構1〇〇,其 利用二維(2D)封裝型8位元資料陣列的位址指標來提供自 動化3 2位元群組字組校準。暫存器檔案包括一些暫存器 至R7 1〇4。載入多工器(Μυχ) 1〇6將32位元載入多工至 i存备檔案,儲存Mux i08輸出來自於暫存器檔案的儲存 字組,以及校準MUX 110輸出來自於包含暫存器汉^和… 之暫存器對112的已校準32位元群組字組。校準MUXs 1 1 0及暫存器檔案都是由控制單元丨丨4控制。 暫存器;(¾案將來自於資料陣列的3 2位元群組字組k和k + 1 裝 訂 蟪 559709
分別載入至暫存器對R〇和R丨中的其中一個資料暫存器,以 為校準運算作好準備。每個8位元運算元均佔用暫存器中的 記憶體位置的其中一個記憶體位置RxL]L、RxlH、RxHl 和RxHH圖2A至2D頻示包含暫存器R2和R3之暫存器對 200中32位元字組的四個不同校準案例。可適當校準四個8 位元運异元(圖2A)或可橫跨32位元字組邊界(圖2B至2D) 〇
裝 指標位址的兩位最低有效位元(LSB) 2〇2會被控制單元 遮罩,並用來決定3 2位元群組字組的校準狀態。這些L s B s 2 0 2係用來作為控制校準μ U X 1 1 〇的控制信號,以從暫存 器對中的八個記憶體位置選取對應於已校準32位元字組 204的四個8位元運算元。已校準32位元字組202可作為運 算元(OPA或〇PB)輸出,由執行單元對其成分8位元運算 元進行平行處理。 如圖2A所示,“〇〇,,標示已校準字組。在此情況下,校準 MUX 110被控制以選擇R2LL、R2LH、R2HL和R2HH中 的運算元,並且以該順序輸出包含這些8位元運算元的已校 準32位元字組204。 如圖2 B所示,“ 0 1 ’’標示移位8位元的3 2位元字組。在此 情況下,校準M U X 1 1 〇被控制以選擇r 3 Η Η、R 2 L L、 R2LH和R2HL中的運算元,並且以該順序輸出包含這些8 位元運算元的已校準32位元字組206。 如圖2 C所示,“ 1 0 ”標示移位1 6位元的3 2位元字組。在 此情況下,校準M U X 1 1 〇被控制以選擇r 3 H L、R 3 Η Η、 -6 - 本紙張尺度適用中國國家標準(CNS) Α4規格(210 x 297公釐) 559709 A7 B7 五、發明説明(4 R2LL和R2LH中的運算元,並且以該順序輸出包含這些8 位元運算元的已校準32位元字組208。 如圖2 D所示,“ 1 1 ”標示移位2 4位元的3 2位元字組。在 此情況下,校準MUX 110被控制以選擇R3LH、R3HL、 R3 HH和R2LL中的運算元,並且以該順序輸出包含這些8 位元運算元的已校準32位元字組210。 圖3 A至3 C顯示根據具體實施例之校準運算。如圖3 a所 示,於狀態3 0 0中將來自於2 D資料陣列的錯誤校準3 2位元 字組k和k+Ι載入至暫存器R0和R1,以準備好運算(於週期 1)。字組k包含8位元運算元A、B和C,而字組k+Ι包含8 位元運算元D、E、F和G。在這個例子中,字組k和k + 1移 位8位元。這些字組的指標位址的l S B s為“ 〇 1,,。因此,於 狀態3 02,校準MUX 110從暫存器R〇選取8位元運算元a 、:B、C ’而從暫存器R1選取運算元d,並且於狀態3〇6輸 出已校準32位元字組ABCD 304。準備完成後,每週期只 需要一個載入。如圖3 B所示,在接續的週期(週期2)中, 於狀態3 0 8將32位元字組k + 2 HIJK載入至暫存器r〇。校 準MUX 110被控制以在暫存器對中反向多工運算元,以獲 得讀出反映。當反向多工運算元時,校準MUX讀出暫存器 R1,之後才讀出暫存器R0。於狀態3 1〇,校準^111:^從暫 存器R1選取先前未選取的8位元運算元e、F和G,而從暫 存器R0選取運算元Η。於狀態314,校準MUX輸出已校準 3 2位元字組E F G Η 3 1 2以利處理。 , 在接續的週期(週期3 )中,於狀態3 1 6將3 2位元字組k + 3 _____-7- _ 本紙張尺度適用中㈣家標準(CNS) A4規格(21GX 297公爱) - 559709 A7 _________B7 五、發明説明(s ) LMNO載入至暫存器R1。於狀態318,校準Μυχ⑴被 控制來選取位元組ί小,並於狀態3 22輸出32位元 字組IJKL 320。於週期3,校準Μυχ⑴正向多工暫存器 R0和R1。因此,在處理封裝的8位元陣列的每個偶/奇週期 期間,3 2位兀載人是成對的兩個暫存器RQ和r }之間的 「乒乓球」。 如圖3A至3C顯示的運算所#,8位元資料的處理需要通 常會重複,並且一旦建立後就會維持固定。一旦準備好暫 存器檔案後,就可用最短内部操作時間來校準3 2位元載入 〇 在通用DSP中將錯誤校準的32位元字組載入至資料暫存 态可旎會導致產生例外狀況。八位元s丨M D運算可能需要十 π個8位兀運算兀以供執行單元使用。這相當於兩對暫存器 對,即,.四…個暫存器。由於載入暫存器對可用兩個32位^ 匯流排,所以必須在起始SIMD運算之前先載入四個暫存器 。根據一項具體貫施例,在準備函式的過程中可使用特殊 指示(例如,diSALGENEX),使不會造成因準備8位元 SIMD函式迴圈過程中的錯誤校準存取而導致產生例外狀況 °DISALGENEX可組合一個或兩個載入運算發出,這可 或不可橫跨3 2位元邊界。指示的範例包括: (1) DISALGENEX, R1 = [i〇 + + ],R3 = [π+ + ] (2) DISALGENEX,[P0 + + pl] = r5, R3 = 請參考圖1,控制單位114可控制載ΑΜυχ 1〇6,以將 對應於load Α的相鄰32位元群組字組載入至暫存器對 - _只_ 本紙張尺度適用中國國家標準(CNS) A4規格(210 X 297公釐) ------- 559709 A7
R 〇 / R 1。控制單位還可控制載入M U X 1 〇 6,以將對應於 load B的相鄰32位元群組字組載入至暫存器對R2。1〇ad A ( l〇ada[1.0])指標位址的兩位lsBs 202會被控制單元 遮罩,並作為控制信號輸入至校準MUX 110。校準Μυχ 根據load Α指標位址的l SB來選取適當的四個運算元以輸 出一經校準之32位元字組,opa。暫存器R2輸出32位元 群組罕組0PB。0PA和0PB中的8位元運算元由執行單元 運算這些運异的結果RESA和RESB可能載入至暫存器檔 案。 口口田 圖4顯示根據一項具體實施例的暫存器檔案架構,其中可 使用單一指標位址(Moadb[1:0])wLSBs &多工來自於兩 對暫存器R0/R1和R2/R3的八個8位元運算元,以輸入兩個 已校準32位元字組0PA和0PB。這允許使用第二指標進行 儲存運算.。根據這個具體實施例,可支援8位元s〗M D指令 ,其方式疋允终校準獨立執行指示,用以運算2 D 8位元資 料陣列中相鄰的資料列或資料行。支援此類型校準的指示 可能具有如下的格式: dregs = 8b_0P (Rl:〇5 R3;2) AMOD, [im + + ] = dregs, dreM = [im + + ]; 圖5顯不根據一項具體實施例的暫存器檔案架構,其中使 用封裝型8位元資料陣列的兩個位址指標im*in的LSB“t 為多工八個8位元運算元的控制信號。這是預定將兩個32位 疋群組字組提供給執行單元,而其校準可能互不相同。提 供兩個杈準MUXs Π 0,並將作為控制信號之不同指標的 ---------- q · 本紙張尺度適用中國國家標準(CNS) A4規格(210X297公董)—~--- 559709 A7
LSBs提供給每個校準1^11又。 支援此類.型校準的指示可能具有如 广…b-〇p㈣,物⑽二s十+] dregs = [im + -f]; L m ], 以及 ^egs = 8b_〇P (Rl:〇) R3:2) am〇Dj dregs = dregs = [in + + ]; 根據-項具體實施例,可執行校準獨立8位元simd ADD運算。四個一組的8位元SIMd指令係用來執行兩位元 組加法並輸出四個16位元帶正負號資料。三十二位元載入 〇Ρ·Α包括四個8位元運算元3、、+ 2、%+1和牦。三十 二位元載入OPB包括四個8位元運算元、+ 3、、+ 2、吣+丨 和bm。用來決定opa的兩個32位元群組字組可載入至暫存 器對R0/R1__,用來決定OPB的兩個32位元群組字組可載入 至暫存态對R2/R3。將0PA和OPB中對應的8位元運算元 相加。加法運算的結果是四個丨6位元值am + 3 + bm + 3、 am + 2 + bm + 2、am+1 + bm+1和am + bm,可將之聚集成32位元字 組’並儲存於選自暫存器r 4、R 5、R 6和R 7的兩個目的暫 存器中。 執行校準獨立8位元SIMD ADD運算的指令可能具有下 列格式: (dregs, dregs) = q2badd (dreg_pair, dreg—pair); (dregs,dregs) = q2badd (dreg—pair, dreg—pair) R ; 指令實例包括: ___-10- 本紙張尺度適用中國國家標準(CNS) A4規格(210x 297公釐) 559709 A7
q^oadd (r 1 :05 r3 :2) (r5, r4). = q2badd (ri:〇, r3:2) R。 這些指令假設載人—定在32位元邊界上,並且兩個奸 係儲存於10和II中。這些值對8位元邊界有效, 二 ^發生在32位元邊界。來自於指標iG和U的兩個LSB二 過解碼’时別從暫存器對R〇/RWR2/R3選取四個可= 4::木例的其中一個校準案例。依預設,包含字組… 暫存器為暫存請和R2,而包含字組㈣的 器R1和R3。 β、仔 如配合圖3B的說明,“R,,選項指定應執行讀出反映。這 允許在執行陣列處理函式時’在每對中的暫存器之間有效 交替。 刖又所說明的校準獨立SIMD ADD運算可用來支援一些 〜像木構计算。根據各種具體實施例可執行其他的校準獨 乂 S IM D運# ’例如包括加法' 減法、$法器-累積器 (MAC)及Ll-N0rm累積(SAA)、剪貼及雙線插值法所適 用的一些特殊指令。 視釔要的SIM D運算而定,可使用不同的3 2位元群組字 組k準方法。已說明具有四種不同校準案例的8位元案例。 還可將十π位元聚集成32位元載入。此類的載入具有兩個 权準案例·已校準及錯誤校準,其中會將丨6位元運算元移 位1 6位元。可使用載入的指標位址的兩位L S B s來決定校準 案例’例如’ “ 0 0,,標示已校準案例,而“ 0 1,,標示錯誤校準 案例。S IMD運算可泛用的另一種案例是運算混合式資料類 ___ -11 - 本紙張尺度適用中國國家標準(CMS) A4規格(210X 297公釐)
』,例如,包含8位元及丨6位元運算元的3 2位元群組字組 〇 ' 根據一項具體實施例的暫存器檔案架構可為各種視訊及 成像校準層提供更高的總處理能力,其方式是不需要預先 處理各種校準運算的資料。由於排除預定處理不同校準狀 況之程式碼中的類似常式,所以可縮小程式碼大小,並且 由於不需要偵測校準狀態及後續分支至適當的後續指令, 所以也可改善週期計數。因此,暫存器檔案架構可在執行 單位内提供8位元邊界資料校準,而不會加重記憶體介面的 負擔,這可能是3 2位元載入/儲存運算的反向。 ’文所說明之支援校準獨立SIMD運算的纟體實施例也特 殊適用於預計支援視訊和影像架構處理的運算。例如,這 些包括半X、半Y和半乂丫的8位元四線插值法、分段運算搜 尋運算及運動補償。 包含根據各項具體實施例之暫存器檔案架構的通用Dsp 也適合運用在視訊處理影像設備中,這些利用MpEG_ 1/MPEG-2/MPEG-4/H.263未來標準執行視訊壓縮。 通用D S P被考慮運用在視訊攝錄像機、數位攝影機、電 信會議、PC視訊卡及HDTV中。如圖6所示,具有顯示幕 604之HDTV 602的視訊處理器600可包括一 DSp 6〇6 , 其包括一暫存咨檔案架構6 〇 8,其根據一項具體實施例,以 及用來儲存執行視訊處理運算指令的記憶體61〇。此外,通 用D S P還被考慮結合利用數位信號處理的其他技術一起使 用,例如,行動電話中使用的語音處理、語音辨識及其他 --—— · 12- 559709 A7 B7 五、 發明説明(10 應用。 已說明本發明的一些具體實施例。但是,應明白可進行 各種變更及修改,而不會脫離本發明廣大的精神及範疇。 因此,其他的具體實施例都屬下列申請專利範圍的範疇内
裝 -13-本紙張尺度適用中國國家標準(CNS) A4規格(210 X 297公釐) L 6· 18修j η η 申請曰期 公 案 號
-Q9011596R 類 別 以上各襴&本局填註 Α4 C4 中文說明書替換頁(92年6月) 559709 專利 明 煩讀委员!:·ίι'"IJr^ PJ 日所提之 修正本有無^办;'':厂;:(|^足??准予修£。 —、爹明 新型名% 18 、發明 創存人 申請 人 中 文 英 文 姓 名 國 籍 住、居所 姓 名 (名稱) 國 籍 f事務 1所 所) 支援校準單指令/多資料運算之裝置、視訊處理器、方法及包含駐存 機器可讀取媒體上之指令之裝置 #
APPARATUS, VIDEO PROCESSOR, METHOD, AND APPARATUS INCLUDING INSTRUCTIONS RESIDING ON A MACHINE-READABLE MEDIUM FOR SUPPORTING ALIGNED SIMD OPERATIONS 1. 拉維柯拉南勒 RAVI KOLAGOTLA 2. 大衛B.威特 DAVID B. WITT 1·印度2·美國3.美國
3.布萊德利C.艾德瑞奇 BRADLEY C. ALDRICH 1 ·美國德州奥斯汀市裘利維爾路11500號 2·美國德州奥斯汀市派瑟芳德路6318號 3 ·美國德州奥斯汀市西南帕克路5604號 1 ·美商英特爾公司 INTEL CORPORATION 2.美商亞拿羅設計公司 ANALOG DEVICES, INC. 均美國 1 ·美國加州聖塔卡拉瓦市米遜大學路2200號 2·美國麻州諾伍市科技路i號
1. 湯姆士 C.雷納德 THOMAS C. REYNOLDS 2. 威廉Α·威斯 WILLIAM A. WISE
裝 線 559709 A7 B7 第090115968號專利申請案 中文說明書替換頁(92年6月) 五、發明説明(11 圖式元件符號說明
ί J B貢 二讀 λ 习 1 Γ 1 100 暫存器檔案架構 306 狀態 104 暫存器 308 狀態 106 載入多工器(MUX) 310 狀態 BV 18ι〇8 儲存MUX 312 已校準32位元字組,EFGH 予 έ HI 所 110 校準MUX 314 狀態 j£ 提 Ο 之 112 暫存器對 316 32位元字組k+3,LMNO 114 控制單元 318 狀態 200 暫存器對 320 32位元字組,IJKL 202 最低有效位元(LSB) 322 狀態 204 已校準32位元字組 600 視訊處理器 206 已校準32位元字組 602 HDTV 208 已校準32位元字組 604 顯示幕 210 已校準32位元字組 606 DSP 300 狀態 608 暫存器檔案架構 302 狀態 610 記憶體 304 已校準32位元字組,ABCD -14- 本紙張尺度適用中國國家標準(CNS) A4規格(210 X 297公釐)
Claims (1)
- 559709 第090115968號專利申請案 益 · 中文申凊專利範圍替換本(92年6月)漂六、1請專利範圍 " '' ----- 1 · 哆煩 孕讀 委 員 \7 月 2. Θ 于 (ΦΜ lL奰 5. 6. 一種支援校準單指令^/多資料運算之裝置,包括: -暫存器對,其用來儲存包含聚集多達2n個運算元的兩 個群組字組;以及 一運算70選擇器,其用來從該暫存器對選取η個運算元, =出-包括該等η個運算元的已校準群組字組,以響應 一指示該等兩個群組字組校準狀態的控制信號。 如申請專利範圍第1項之裝置,其中該運算元選擇器是— 多工器。 如申請專利範圍第!項之裝置’其中該控制信號包含該等 兩個群組字組之指標位址的兩位最低有效位元。 :申請專利範圍第卜頁之裝置,其中該等兩個群組字組及 孩已校準群組字組都包含3 2位元字組。 如申請專利範圍第1項之裝置,其中η等於4。 如申凊專利範圍第1項之裝置,其中該等η個運算元包含8 疋字組。 7 .如申清專利範圍第1項之裝置,其中該等η個運算元包含 1 6位元字組。 8 ·如申請專利範圍第1項之裝置,該裝置進一步包括: 一第二暫存器對,其用來儲存一包含211個運算元之第二 組兩個群組字組; 其中孩運算元選擇器係用來從該第二暫存器對選取η個運 算凡’並輸出一包括該等η個運算元的第二已校準群組字 組,以響應一指示該第一組兩個群組字組校準狀態的控 制信號。 $裝559709 申請專利範園 如_清專利範園第!項之裝置,該裝置進一步包括: 第I存器對,其用來儲存一包含2n個運算元之二 組兩個群組字組; 一 ^ 1418 其中该運昇几選擇器係用來從該第二暫存器對選取n個運 异疋,並輸出-包括該等„個運算元的第二已校準群組字 組丄以響應-指示該第二組兩個群組字組校準狀態的控 制信號。 10. -種支援校準單指令/多資料㈣之視訊處理器,包括·· 记fe體,其用來儲存執行视訊處理運算的指示; 一數位信號處理器包括·· 第暫存器,其用來儲存一包含η個運算元的第一群 組字組; 一第二暫存器,其用來儲存一包含η個運算元的第二群 組字組;以及 一多工器,其用來從該第一暫存器及第二暫存器的& 個運算元選取η個運算元,並輸出一包括該等η個所選 運算元的已校準群組字組,以響應一對應於該第一群 組字組校準狀態的控制信號。 11·如申請專利範圍第1〇項之視訊處理器,其中該控制信號 包含該第一及第二群組字組之其中一個群組字組之指標 位址的兩位最低有效位元。 12·如申請專利範圍第10項之視訊處理器,其中該第一群組 +組、弟一群組+組及為已杈準群組字組都包含3 2位元 字組。 -2 - ^紙張尺度適用中國國家標準(CNS) Α4規格(210 X 297公釐) "~ ^59709 A8 B8 C8 〜^ ____^ V、申請專利範ΐ --- I3·如申請專利範圍第10項之視訊處理器,其中n等於4。 m請委 R::?!iTit!. 6 :: £ 所提之 I正本有¾¾. ..rv V: ..^,.ϋ」^τ^ΙΈ., 14·如申請專利範圍第1〇項之視訊處理器,其中該等。個運算 元包含8位元字組。 15·如申請專利範圍第1〇項之視訊處理器,其中該等η個運算 元包含1 6位元字組。 16·一種支援校準單指令/多資料運算之方法,包括: 載入一包含η運算元的第一群組字組; 18 載入一包含η運算元的第二群組字組; 決定一該第一與第二字組的校準狀態; 從該第一群組字組及第二群組字組中的2η個運算元選取η 個運算元,以響應該決定的校準狀態;以及 輸出一包含η運算元的已校準群組字組。 1 7 ·如申請專利範圍第1 6項之方法,其中決定該校準狀態包 括決定該第一及第二群組字組之其中一個群組字組的兩 位最低有效位元。 1 8 ·如申請專利範圍第1 6項之方法,其中該第一及第二群組 字組是一資料陣列中的相鄰字組。 19.如申請專利範圍第18項之方法,其中選擇η個運算元包含 選擇該第一及第二群組字組中的η個相鄰運算元。 20·如申請專利範圍第16項之方法,該方法進一步包括: 載入一包含η運算元的第三群組字組; 從該第二群組字組及第三群組字組中的2η個運算元選取 η個運算元,以響應該決定的校準狀態;以及 輸出一包含η運算元的第二已校準群組字組。 -3- 本紙張尺度適用中國國家標準(CNS) Α4規格(210 X 297公釐) 559709修煩2 1 ·如申請專利範圍第2〇項之方法,其中選擇n個運算元包含 反向多工該第二及第三群組字組之間的η個運算元。 口 22·如申請專利範圍第16項之方法,其中該等兩個群組字組 及該已校準群組字組都包含3 2位元字組。 23·如申請專利範圍第16項之方法,其中該等η個運算元包含 8位元字組。 24. 18 予 修 曰 听 之 一種支援校準單指令/多資料運算之包含駐存在一機器 可讀取媒體上的指令之裝置,用來校準一群組字組中的 運算元,該等指令會引發該機器執行下列動作: 載入一包含η運算元的第一群組字組; 載入一包含η運算元的第二群組字組; 決定一該第一與第二字組的校準狀態; 從該第一群組字組及第二群組字組中的2 η個運算元選 取η個運算元,以響應該決定的校準狀態;以及 輸出一包含η運算元的已校準群组字組。 2 5 ·如申請專利範圍第2 4項之裝置,其中引發該機器決定該 校準狀態的該等指令進一步包括引發該機器決定該第一 及弟二群組字組之其中一個群組字組之兩位最低有效位 元的指令。 2 6 ·如申請專利範圍第2 4項之裝置,其中該第一及第二群組 字組是一資料陣列中的相鄰字組。 27·如申請專利範圍第26項之裝置,其中引發該機器選擇η個 運算元的該等指令進一步包括引發該機器選擇該第一及 第二群組字組中之η個相鄰運算元的指令。 -4 - 本紙張尺度適用中國國家標準(CNS) Α4規格(210 X 297公釐) 559709 六 申請專利範園 A B c D 際 正 本 有 填 請 委 18 2 8 ·如申請專利範圍第24項之裝置,該裝置進一步包括引發 該機器執行下列動作的指令: 載入一包含η運算元的第三群組字組; 從該第二群組字組及第三群組字組中的2 η個運算元選 取η個運算元,以響應該決定的校準狀態;以及 輸出一包含η運算元的第二已校準群組字組。 29 ·如申請專利範圍第28項之裝置,其中引發該機器選擇η個 運算元的該等指令進一步包括引發該機器反向多工該第 一及第二群組字組之間之η個運算元的指令。 -5- 本紙張尺度適用中國國家標準(CNS) A4規格(210 X 297公釐)
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/608,983 US7120781B1 (en) | 2000-06-30 | 2000-06-30 | General purpose register file architecture for aligned simd |
Publications (1)
Publication Number | Publication Date |
---|---|
TW559709B true TW559709B (en) | 2003-11-01 |
Family
ID=24438892
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW090115968A TW559709B (en) | 2000-06-30 | 2001-06-29 | Apparatus, video processor, method, and apparatus including instructions residing on a machine-readable medium for supporting aligned SIMD operations |
Country Status (5)
Country | Link |
---|---|
US (1) | US7120781B1 (zh) |
JP (1) | JP3975231B2 (zh) |
KR (1) | KR100463121B1 (zh) |
CN (1) | CN1246789C (zh) |
TW (1) | TW559709B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8484441B2 (en) | 2004-03-31 | 2013-07-09 | Icera Inc. | Apparatus and method for separate asymmetric control processing and data path processing in a configurable dual path processor that supports instructions having different bit widths |
US8484442B2 (en) | 2004-03-31 | 2013-07-09 | Icera Inc. | Apparatus and method for control processing in dual path processor |
US9477475B2 (en) | 2004-03-31 | 2016-10-25 | Nvidia Technology Uk Limited | Apparatus and method for asymmetric dual path processing |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7246218B2 (en) * | 2004-11-01 | 2007-07-17 | Via Technologies, Inc. | Systems for increasing register addressing space in instruction-width limited processors |
US8417922B2 (en) * | 2006-08-02 | 2013-04-09 | Qualcomm Incorporated | Method and system to combine multiple register units within a microprocessor |
US9015452B2 (en) * | 2009-02-18 | 2015-04-21 | Texas Instruments Incorporated | Vector math instruction execution by DSP processor approximating division and complex number magnitude |
CN101930355B (zh) * | 2010-08-24 | 2013-07-24 | 中国航天科技集团公司第九研究院第七七一研究所 | 实现寄存器文件分组编址、读写控制方法的寄存器电路 |
CN101930356B (zh) * | 2010-08-24 | 2013-03-20 | 中国航天科技集团公司第九研究院第七七一研究所 | 用于浮点协处理器的寄存器文件分组编址、读写控制方法 |
KR101699685B1 (ko) * | 2010-11-16 | 2017-01-26 | 삼성전자 주식회사 | 명령어 오퍼랜드 변경 장치 및 방법 |
US9582419B2 (en) | 2013-10-25 | 2017-02-28 | Arm Limited | Data processing device and method for interleaved storage of data elements |
CN103984524B (zh) * | 2014-05-15 | 2016-07-06 | 中国航天科技集团公司第九研究院第七七一研究所 | 一种面向risc处理器的三端口浮点寄存器文件 |
JP7253492B2 (ja) * | 2017-02-23 | 2023-04-06 | アーム・リミテッド | データ処理装置における乗累算 |
CN112859377B (zh) * | 2019-11-28 | 2023-03-14 | 京东方科技集团股份有限公司 | 一种复用寄存器、三维显示装置及其控制方法 |
Family Cites Families (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63124154A (ja) | 1986-11-05 | 1988-05-27 | インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン | 暗証情報発生装置 |
US4972260A (en) | 1988-08-22 | 1990-11-20 | Matsushita Electric Industrial Co., Ltd. | Apparatus for coding a moving-picture signal |
US5179671A (en) * | 1989-03-31 | 1993-01-12 | Bull Hn Information Systems Inc. | Apparatus for generating first and second selection signals for aligning words of an operand and bytes within these words respectively |
JPH02292647A (ja) * | 1989-05-02 | 1990-12-04 | Toshiba Corp | 半導体記憶装置 |
US5253308A (en) * | 1989-06-21 | 1993-10-12 | Amber Engineering, Inc. | Massively parallel digital image data processor using pixel-mapped input/output and relative indexed addressing |
GB8925723D0 (en) * | 1989-11-14 | 1990-01-04 | Amt Holdings | Processor array system |
JP2842930B2 (ja) | 1990-05-16 | 1999-01-06 | 株式会社アドバンテスト | 半導体集積回路試験装置のテストプロセッサに用いられる命令読み出し回路 |
US5128759A (en) | 1990-05-31 | 1992-07-07 | Sony Corporation | Video signal decoder |
US5771368A (en) * | 1990-10-29 | 1998-06-23 | Sun Microsystems, Inc. | Memory addressing scheme for increasing the number of memory locations available in a computer for storing higher precision numbers |
JPH04236664A (ja) | 1991-01-18 | 1992-08-25 | Sony Corp | 演算回路 |
JPH0530493A (ja) | 1991-07-24 | 1993-02-05 | Sony Corp | デイジタルビデオ信号の復号化装置 |
US5319573A (en) | 1992-01-15 | 1994-06-07 | Motorola, Inc. | Method and apparatus for noise burst detection in a signal processor |
JPH06131248A (ja) | 1992-10-19 | 1994-05-13 | Minolta Camera Co Ltd | 記憶データ読出制御装置 |
US5651121A (en) * | 1992-12-18 | 1997-07-22 | Xerox Corporation | Using mask operand obtained from composite operand to perform logic operation in parallel with composite operand |
JPH0713762A (ja) | 1993-06-22 | 1995-01-17 | Fujitsu Ltd | スーパースカラ計算機における命令供給方法 |
US5544251A (en) | 1994-01-14 | 1996-08-06 | Intel Corporation | Process and apparatus for pseudo-SIMD processing of image data |
US5566250A (en) | 1994-01-14 | 1996-10-15 | Intel Corporation | Process and apparatus for pseudo-SIMD processing of image data |
JPH0863452A (ja) * | 1994-08-26 | 1996-03-08 | Nec Corp | Simdプロセッサ |
US5724275A (en) * | 1996-03-22 | 1998-03-03 | Hitachi Microsystems, Inc. | Fast multi-operand bit pattern detection method and circuit |
US5922066A (en) * | 1997-02-24 | 1999-07-13 | Samsung Electronics Co., Ltd. | Multifunction data aligner in wide data width processor |
US6260137B1 (en) * | 1997-09-12 | 2001-07-10 | Siemens Aktiengesellschaft | Data processing unit with digital signal processing capabilities |
US5933650A (en) | 1997-10-09 | 1999-08-03 | Mips Technologies, Inc. | Alignment and ordering of vector elements for single instruction multiple data processing |
US6061779A (en) * | 1998-01-16 | 2000-05-09 | Analog Devices, Inc. | Digital signal processor having data alignment buffer for performing unaligned data accesses |
US6112297A (en) * | 1998-02-10 | 2000-08-29 | International Business Machines Corporation | Apparatus and method for processing misaligned load instructions in a processor supporting out of order execution |
US5996057A (en) * | 1998-04-17 | 1999-11-30 | Apple | Data processing system and method of permutation with replication within a vector register file |
JPH11312085A (ja) | 1998-04-28 | 1999-11-09 | Hitachi Ltd | プロセッサ |
US5951677A (en) | 1998-05-29 | 1999-09-14 | Texas Instruments Incorporated | Efficient hardware implementation of euclidean array processing in reed-solomon decoding |
-
2000
- 2000-06-30 US US09/608,983 patent/US7120781B1/en not_active Expired - Lifetime
-
2001
- 2001-06-25 CN CNB011233885A patent/CN1246789C/zh not_active Expired - Fee Related
- 2001-06-29 TW TW090115968A patent/TW559709B/zh not_active IP Right Cessation
- 2001-06-30 KR KR10-2001-0038638A patent/KR100463121B1/ko active IP Right Grant
- 2001-07-02 JP JP2001201406A patent/JP3975231B2/ja not_active Expired - Lifetime
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8484441B2 (en) | 2004-03-31 | 2013-07-09 | Icera Inc. | Apparatus and method for separate asymmetric control processing and data path processing in a configurable dual path processor that supports instructions having different bit widths |
US8484442B2 (en) | 2004-03-31 | 2013-07-09 | Icera Inc. | Apparatus and method for control processing in dual path processor |
TWI413935B (zh) * | 2004-03-31 | 2013-11-01 | Nvidia Technology Uk Ltd | 用於在雙路徑處理器中之控制處理的裝置及方法 |
TWI450192B (zh) * | 2004-03-31 | 2014-08-21 | Nvidia Technology Uk Ltd | 用於處理器中之控制處理的裝置及方法 |
US9477475B2 (en) | 2004-03-31 | 2016-10-25 | Nvidia Technology Uk Limited | Apparatus and method for asymmetric dual path processing |
Also Published As
Publication number | Publication date |
---|---|
CN1246789C (zh) | 2006-03-22 |
JP3975231B2 (ja) | 2007-09-12 |
KR20020002334A (ko) | 2002-01-09 |
CN1334525A (zh) | 2002-02-06 |
KR100463121B1 (ko) | 2004-12-23 |
JP2002117009A (ja) | 2002-04-19 |
US7120781B1 (en) | 2006-10-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TW559709B (en) | Apparatus, video processor, method, and apparatus including instructions residing on a machine-readable medium for supporting aligned SIMD operations | |
TW583883B (en) | System and method for multiple channel video transcoding | |
US10395381B2 (en) | Method to compute sliding window block sum using instruction based selective horizontal addition in vector processor | |
US5625374A (en) | Method for parallel interpolation of images | |
JPH07131785A (ja) | ビデオ適用用の脱圧縮プロセサ | |
US6961084B1 (en) | Programmable image transform processor | |
US20070230817A1 (en) | Image processing apparatus, image processing method and image processing program | |
US20050152197A1 (en) | Camera interface and method using DMA unit to flip or rotate a digital image | |
EP2415014A1 (en) | Apparatus and method to rotate an image | |
US20190206370A1 (en) | Data compression and decompression method for demura table | |
US8412003B2 (en) | Image processing methods, apparatus and computer program products using interdependent pixel interpolation operations | |
KR101121941B1 (ko) | 데이터 채널 정보의 프로그램가능 패턴-기반 패킹해제 및 패킹 | |
US5689592A (en) | Parallel processing of digital signals in a single arithmetic/logic unit | |
TW535107B (en) | Data processing device | |
US8135229B1 (en) | Image processing method and device | |
GB2346283A (en) | Motion estimation with fast block comparison using SIMD units. | |
CN101931804B (zh) | 无需使用存储器的旋转图像的设备及方法 | |
CN100534125C (zh) | 一种图像处理方法及实现该方法的图像可旋转数码相框 | |
CN115689879A (zh) | 图像缩小方法、装置、终端及存储介质 | |
US20060022987A1 (en) | Method and apparatus for arranging block-interleaved image data for efficient access | |
KR20110074671A (ko) | 데이터 처리 장치 및 데이터 처리 방법 | |
WO2022017747A1 (en) | Leak-free gradual decoding refresh without restrictions on coding units in clean areas | |
CN113423016A (zh) | 一种视频播放方法、装置、终端及服务器 | |
JP4834446B2 (ja) | 画像処理装置 | |
CN112584157B (zh) | 一种avs2反变换装置及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
GD4A | Issue of patent certificate for granted invention patent | ||
MK4A | Expiration of patent term of an invention patent |