TWI243332B - Registers for 2-D matrix processing - Google Patents
Registers for 2-D matrix processing Download PDFInfo
- Publication number
- TWI243332B TWI243332B TW089112946A TW89112946A TWI243332B TW I243332 B TWI243332 B TW I243332B TW 089112946 A TW089112946 A TW 089112946A TW 89112946 A TW89112946 A TW 89112946A TW I243332 B TWI243332 B TW I243332B
- Authority
- TW
- Taiwan
- Prior art keywords
- register
- matrix
- registers
- data
- processor
- Prior art date
Links
- 239000011159 matrix material Substances 0.000 title claims abstract description 64
- 238000000034 method Methods 0.000 claims abstract description 14
- 230000008859 change Effects 0.000 claims description 5
- 238000004364 calculation method Methods 0.000 claims description 3
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 230000004048 modification Effects 0.000 claims description 3
- 238000012986 modification Methods 0.000 claims description 3
- 230000008569 process Effects 0.000 claims description 2
- 239000000463 material Substances 0.000 claims 2
- 230000008439 repair process Effects 0.000 claims 2
- 230000004044 response Effects 0.000 claims 2
- 230000017105 transposition Effects 0.000 claims 2
- 125000004106 butoxy group Chemical group [*]OC([H])([H])C([H])([H])C(C([H])([H])[H])([H])[H] 0.000 claims 1
- 229910052732 germanium Inorganic materials 0.000 claims 1
- GNPVGFCGXDBREM-UHFFFAOYSA-N germanium atom Chemical compound [Ge] GNPVGFCGXDBREM-UHFFFAOYSA-N 0.000 claims 1
- 230000000284 resting effect Effects 0.000 claims 1
- 150000003839 salts Chemical class 0.000 claims 1
- 239000000344 soap Substances 0.000 claims 1
- 239000011232 storage material Substances 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000011257 shell material Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000009466 transformation Effects 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/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/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
-
- 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/30098—Register arrangements
- G06F9/3012—Organisation of register space, e.g. banked or distributed register file
-
- 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/30141—Implementation provisions of register files, e.g. ports
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)
- Complex Calculations (AREA)
- Executing Machine-Instructions (AREA)
- Advance Control (AREA)
Description
1243332 A7 B7 五、發明説明(彳 ) 發明背景 1 .發明範疇 本發明一般來說與電腦系統有關,尤其是與處理器結構 有關。 2.說明 某些處理器設計成可對其用於多媒體運作的指令集結構 (ISA)提供延伸,例如:由位於加州聖塔克拉拉的英特爾公 司(Intel Corporation)生產的 Pentium® II、Pentium® III 以 及Celeron™處理器所支援之MMX™指令便實施許多對於多 媒體應用非常有用的功能,像是數位訊號處理、聲音以及 影像處理。這些_旨令支援在多媒體以及通訊資料類型上的 「單一指令多重資料」(SIMD)運作。雖然使用這些指令在 執行已知功能方面要比之前存在的指令集合還要有改進, 並且獨立的MMX™指令在某些處理方面較有效率,但是現 實上仍舊存在許多對加快多媒體處理的阻礙。例如:許多 區塊式影像與視訊處理演算法(像是聯合圖像專業團體 (JPEG)以及移動圖片專業團體(MPEG)方法)的實施都會產 生資料,儲存在一組暫存器内當成MMX™指令可存取的運 算體,在矩陣數學運算期間經過置換。在暫存器之間置換 資料會遭致顯著的額外負擔,因此會減慢整體處理器處理 多媒體的處理量。因此在處理器界内,許多避免這些延遲 或將其減至最低的技術就有長足的進步。 發明總結 本發明的具體實施例是一種處理器,其具有第一組用於 _^_ 本紙張尺度適用中國國家標準(CNS) A4規格(210X 297公釐)
1243332 A7
儲存貝料矩陣的暫存器、耦合至第一 矩陣置換副本的第二組暫存器。 組並且用於儲存資料 _本發明的其他具體實施例是-種使用兩組暫存器供處理 為進行矩陣處理之用的方法。該方法包含:將資料矩陣存 ^第一組暫存器,第一組暫存器擁有第一數量的暫存器, 每個暫存器具有第-數量的儲存單元,每個儲存單元儲存 〜個矩陣元素;以及將資料矩陣置換放入第二組暫存器, 苐、、且來存器擁有第二數量的暫存器,每個暫存器具有第 一數量的儲存單元。該方法也包含參考第一組暫存器之一 以便在一列資料矩陣上運作,以及參考第二組暫存器之一 以便在資料矩陣的一欄上運作。 圖式之簡單說明 從下列本發明的詳細說明中將會對本發明的特色與優點 有通盤的了解,其中 圖1為依照先前技藝的一組Μ Μ X ™暫存器圖式; 圖2為孩組MMXtm暫存器儲存了 8像素乘上8像素影像資 料區塊之圖式; 圖3為孩組MMXtm暫存器儲存了置換過的8像素乘上8像 素影像資料區塊之圖式; 圖4為依照本發明具體實施例連接至μμχτμ暫存器集的 虛擬MMX™暫存器集之圖式; 圖5為該組虛擬MMX™暫存器儲存了置換過的8像素乘上 8像素影像資料區塊之圖式;以及 圖6為一系統圖式,其擁有一處理器,而該處理器具有依 ______-5- 本紙張尺度適用中國國家標準(CNS) Α4規格(210X297公釐) 1243332 A7 B7 五、發明説明(3 照本發明具體實施例的MMX TM暫存器集以及虛擬ΜΜχ tm 暫存器集。 詳細說明 本發明的具體實施例包含一種延伸Μ Μ X ΤΜ暫存器讓其在 二維(2-D)矩陣運算中更有效率的方法與裝置。 規格書内參考本發明的「一個具體實施例」或「具體實 施例」意味著,與該具體實施例有關連所說明的特定功 能、結構或特性包含在本發明的至少一個具體實施例内。 因此,出現在整個規格書内許多地方的「在一個具體實施 例内」一詞並不一定全都參照到同一個具體實施例。 在執行指令時,,處理器通常會參考一個(含)以上的暫存 器運算體,對於MMX™指令而言,該暫存器運算體可為一 個(含)以上稱為MMX™暫存器的一組特殊暫存器。圖 依照先前技藝的一組MMXtm暫存器圖式。在圖丨顯示的暫 存器集ίο内,其中有八個標示為mm0 12到mm7 14的 MMX™暫存器。在其他具體實施例内,暫存器的數量可高 於或低於八個。每個暫存器都包含許多資料單元,其如圖 式般從低單元1 6排列到高單元1 8。在一個具體實施例内, 一個單元包含一個位元組。在其他具體實施例内,一個單 元可包含一個字元、一個雙字元或其他儲存單元。在至少 一個已知的系統内,每個MMX™暫存器的單元(即是位元 組)數量為八個,而在其他系統内則可使用其他數量的單 元。欲使用ΜΜΧτμ暫存器以有效實施SIMd多媒體處理, 欲處理的資料都應該以將許多相關資料項目配置於單一 -6 -
1243332 五、發明説明(4 ) MMX™暫存器内這種方法來校準。例如:假設要將$個像 素乘上8個像素的影像資料區塊如圖2所示般排列於 MMX™暫存器内,—個單元内代表—個像素值叩⑴並且 整,,存器代表一個矩陣。該8個像素乘上8個像素的區塊 可能是較大影像的一部分。在此範例中,區塊影像資料的 ,一列儲存在第一MMX™暫存器11^〇 12内,而第一列的 第一攔儲存在mm0的低單元内,並且第一列的最後一欄則 儲存在mm〇的高單元内,影像資料的第二列儲存在第二 MM/™暫存器麵12()内,第二列的第—欄儲存在随㈤ 低單元内,並且第二列的最後一欄則儲存在mml的高單元 内,以此類推。 一旦資料如圖式般儲存在MMX™暫存器内,處理器就可 執行指令以在一個8 x 8矩陣的列上有效地運算。這種處理 通常用於區塊式成像應用程式以及其他應用程式中。例 如:所有列〇的資料都可使用下列所示的單一 ΜΜχτΜ指令 新增到列3的資料内。 PADDB MMO, MM3 ;將列0新增到列3並且將結果儲存 在列0内。 不過,若要一次在一個8 X 8矩陣的欄位上運算就會出問 題,因為每個行的資料都由八個MMXtm暫存器所共有。例 如·第一欄的資料分別屬於mmO 12到mm7 14的低單元,而 最後一攔的資料則分別屬於mm0到mm7的高單元。為了能 夠持續獲得使用MMX™ SIMD處理的好處,有必要如圖3 所示來置換8x8矩陣,矩陣置換是很普遍的數學運算。在 1243332 A7
1243332 A7 ___ B7 五、發明説明(6 ) MMX™暫存器集的置換過矩陣資料,並且不管何時在 MMX™集内任何暫存器的任何單元遭到修改後 邏輯23就會自動更新。因此,載入一 %ΜΜχτΜ暫存器集 10會自動載入一攔VMX暫存器集22。例如:來自第一 MMX™暫存器111111〇 12•的資料會自動儲存在暫存器 VM0至VM7的低單元内,來自第二ΜΜχτΜ暫存器^ 2〇 的資料會自動儲存在VMX暫存器的第二低單元内,以此類 推。 回頭參閱圖2,若如圖示般MMXTM暫存器會載入標示為 Ρ〇,〇至Ρ7,7的8x8矩陣,然後暫存器更新邏輯會如圖5内 所示將至換過的矩陣載入VMX暫存器内。為了在矩陣的列 元件上運算’程式會簡單參考囊心暫存^至 mm7 14之一(含)以上。不過若要在矩陣的攔元件上運算, 則用參考VMX暫存器vm0 24至¥1117 26的程式代替。因為 Μ Μ X ™暫存器在處理器硬體内有鏡射的v % X暫存器,所 以並沒有不一致的問題。需要時參考適當的暫存器,便可 使用暫存器集來運算所有ΜΜΧΤΜ指令。程式内並不需要改 變指令集,只需要改變運算體參考即可。 本發明具體實施例超過現有冑理器架構的優點在於,本 發明對於矩阵運算提供較大的平行度,這可藉由避免耗費 成本的欄運算置換來達成,其中該運算要透過許多封包盘 解封包指令的執行來完成。 〃 有一本發明如何實施的範例是,在許多影像處理法則内 用於處理8像素乘上8像素區塊的「離散餘弦轉換」(dc 丁) 1243332
演算法。目前欲執行8x8 DCT處理時,包含先執行lx8攔 轉換、置換8 X 8矩陣、執行另一個丨χ 8欄轉換,然後再次置 換〜果以取得DCT係數。目前在Pentium⑧等級處理器上執 行的最佳DCT大約耗用300個處理週期。在此量之中,大約 有100個週期用於執行8χ8矩陣的置換運算。因此,實施本 發明可改善大約30%的DCT處理。反向DCTs也可達成類似 的效能進步。雖然在此討論DCT範例,不過本發明的具體 實施例對於任何矩陣運算都很有用,包含那些用於許多影 像與視訊壓縮演算法内的演算。 雖然上面以二維(2_D)矩陣來探討本發明,但此概念可修 改適用於三維或多維。例如:處理器的設計可包含第三暫 存器集,用於儲存其他矩陣資料的置換。 圖6為一系統圖式,其擁有一處理器,而該處理器具有依 照本發明具體實施例的ΜΜχτΜ暫存器集以及虛擬ΜΜχτΜ 暫存器集。系統5 0包含耦合至記憶體5 4的處理器5 2 ,處理 器52包含許多業界内已知的元件,為了清晰起見,圖6内 已經省略的許多元件。指令記憶體5 6儲存著會參考一個(含) 以上ΜΜΧτμ暫存器丨〇或一個(含)以上vmx暫存器22的指 令。暫存器更新邏輯23會在ΜΜΧ™暫存器改變時協調 VMX暫存器22的自動更新。多工器(mUX)58選擇來自 MMXtm暫存器*VMX暫存器的資料,輸入到演算邏輯單 元(ALU)60,而ALU則產生資料給資料記憶體62。 本發明讓MMXtm暫存器可用更直觀的方法來操縱。加上 鏡射暫存器集後,任何區塊式演算法的實施都可簡化並且 _7·· 丨一丨1 __ - | υ - 本紙張尺度適财®國家標準(CNS) Α4規格(21()Χ297公董) 1243332 A7 B7 五、發明説明(8 ) 提昇效能。某些可從本發明中獲致好處的應用範例包含: 用於視訊壓縮演算法的離散餘弦轉換(DCT)、三維(3-D)圖 形演算法内的矩陣轉換等等。 本發明雖然以實例具體實施例來做說明,但此說明並沒 有限制之意。對於精通此技藝的人士而言,許多實例具體 實施例的修改以及本發明的其他具體實施例都在本發明的 精神與領域之内。 圖示代表符號說明 10 MMX™暫存器集 12, 14, 20 MMXtm暫存器 16 低單元Low unit 18 高單元High unit 22 VMX暫存器集 23 暫存器更新邏輯 24, 26 VMX暫存器 50 系統 52 處理器 54 記憶體 56 指令記憶體 58 多工器 60 演算邏輯單元 62 資料記憶體 -11 - 本紙張尺度適用中國國家標準(CNS) A4規格(210 X 297公釐)
訂
Claims (1)
1243332 第089112946號專利申請案 中文申請專利範圍替換本(94年6 ^ 申請專利範園 1 · 一種二維矩陣處理器,包含·· 一第一組暫存器’儲存_:資料矩陣;以及 一第二組暫存器’儲存—資料矩陣之轉置;以及 自動修:該第二組暫存器之邏輯,以維護儲存於該第 -組暫存器中之資料矩陣與儲存於該第二組暫 資料矩陣轉置之間之關 P 、4匕人 關係,以響應修改該第-組暫存器 < 一扣令。 2弋申,範圍第〗項之處理器,其中第一組暫存器内資 置對應搁的修改/導^二組暫存器内資料㈣轉 3. 青專利範圍第丨項之處理器,其中該第—組暫存器勺 5一弟一數量的暫存器,每暫 ^ 存單元,該第二組暫存器包含-第:;量:暫=的鍺 包含—第二數量的儲存單元,並且量: 存單兀大於或等於第一數量的暫存器。 I的儲 4. 如申請專利範圍第3項之處理器。 等於第二數量的暫存器。 中弟數里的暫存器 5. 如申請專利範圍第4項之處理器,並 含MMX™暫存器,該第 :組暫存器包 影像資料。 ^為八’並且資料矩陣包含 6·如申請專利範圍第!項之處理器,其中該處理 考第一組暫存器之一以便在一次 α執仃一參 人,以及勃一与义广 貝料矩陣上運算之沪 襴資料 " 及執仃一參考弟二組暫存器之一以# / 才曰 矩陣上運算之指令。 在 本紙張尺度通用中國國家標準(CNS) A#規格(21〇Χ297公釐) 1243332 A8 B8 C8
-第一數量的暫存組暫存器包含 單元’每儲存單元储存―:陣存二"-數量的儲存 二組暫存器,該第二 ;; 予單::數I的暫存器’每暫存器包含-第二數量的 自動修改該第二知w 存器中之資料料*儲=、’、=維護儲存於該第一組暫 陣轉置之間之關係 岸之資料矩 令; 曰I乜改孩罘一組暫存器之一指 參考第一組暫存考> 以及參考第二組暫存考—以」更在—列資料矩陣上運算, 算。 σ又以便在一欄資料矩陣上運 8·如申請專利範圍第 存器内的資料矩陣列万法,進一步包含修改第-組暫 丁兜Ρ皁列’以及自動修 料矩陣轉置的對應欄。 /弟一、、且4存裔内資 9. =請第7项之方法,進一步包 -内储存的欄資料上 、且$存 10. 如申請專利範圍第9項 第二組暫存器之—内其中執行轉換運算包含在 運算。 儲存的欄資料上執行離散餘弦轉換 11 ·如申請專利範圍第7 Jg 、 大於或等於該第量= 中該第二數量的暫存器 数里的暫存器。 1243332
~----一 六、申請專利範圍 六丁成牙? 等於弟一數量的暫存器。 η·=青專利範圍第7,之方 MMX™暫存器,該 、仔詻包含 像資料。 數I為八’並且資料姐陣包含影 14· 一種二維矩陣處理系統,包含: 一記憶體; ° ’置該記憶體的處理器,該處理器包含: -弟-組暫存器,儲存—資料矩陣; 7Π組暫存器,儲存資料矩陣之轉置;以* 第-組暫存器中之㈣邏輯,以維㈣存於該 之資料矩陣轉置之二t與儲存於該第二組暫存器中 W且 < 间 < 關係, 器之一指令。 Λ曰應帖改咸罘一組暫存 15·如申請專利範圍第1 4項乏系 料矩陣列的修改會自動導f:第-组暫存器内資 置對應欄的修改。導致弟二組暫存器内資料矩陣轉 16·如申請專利範圍第14項之系統, 各一篦一勣县认批士 /、宁,茨乐一組暫存器包 。弟數里的暫存器,每暫存器包本匕 存單元’該第二組暫存器包含—第一:旦… 儲 暫存器包含-第二數量㈣Hi㈣存11 ’每 双f的诸存早元,並 存單元大於或等於第-數量”料 數里的儲 Π.如申請專利範圍第16項之系統° 器等於第二數量的暫存器。 4 數I的暫存 本紙張尺度適用中國國豕標準(CNS) A4規格(210X 297公麓) 1243332
18.如申請專利範圍第”項之系統,其中該第一組暫存器包 含暫存器,該第一數量為八,並且資料矩陣包含 影像資料。 口 =Μ專利範圍第1 4項之系統,其中該處理器執行一參 2第一組暫存器之一以便在一列資料矩陣上運算之指 令,以及執行一參考第二組暫存器之一以便在一 矩陣上運算之指令。 ^ 2〇· —種由處理器使用兩組暫存器用於影像資料矩陣的離散 餘弦轉換(DCT)處理之方法,包含: 將矩陣儲存於第一組暫存器内,該第一組暫存器包含 -第-數量的暫存器,每暫存器包含一第一數量的儲; 早7C,每儲存單元儲存一矩陣元件; 將矩陣轉置至苐二組暫存器内,該第二組暫存器包含 二第二數量的暫存器,每暫存器包含一第二數量的儲二 早7L , 自動修改該第二組暫存器,以維護儲存於該第一組暫 存器中之資料矩陣與儲存於該第二組暫存器中之資料矩 陣轉置之間之關係,以響應修改該第一組暫存器之一指 令;以及 利用參考第二組暫存器之一在矩陣欄上運算,以執行 至少部份DCT處理。 21.如申請專利範圍第2〇項之方法,進一步包含修改第一組 暫存器内的資料矩陣列,以及自動修改第二組暫存器内 資料矩陣轉置的對應欄。 ° ______ -4- ^紙張尺度適财®國轉準(CNS) 裝 訂 線
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/360,612 US6625721B1 (en) | 1999-07-26 | 1999-07-26 | Registers for 2-D matrix processing |
Publications (1)
Publication Number | Publication Date |
---|---|
TWI243332B true TWI243332B (en) | 2005-11-11 |
Family
ID=23418740
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW089112946A TWI243332B (en) | 1999-07-26 | 2000-06-30 | Registers for 2-D matrix processing |
Country Status (9)
Country | Link |
---|---|
US (1) | US6625721B1 (zh) |
EP (1) | EP1212677B1 (zh) |
JP (2) | JP4979169B2 (zh) |
CN (2) | CN1160621C (zh) |
AU (1) | AU5640400A (zh) |
DE (1) | DE60022206T2 (zh) |
HK (1) | HK1043850B (zh) |
TW (1) | TWI243332B (zh) |
WO (1) | WO2001008005A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8150901B2 (en) | 2006-10-25 | 2012-04-03 | Industrial Technology Research Institute | Integrated conversion method and apparatus |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020032710A1 (en) * | 2000-03-08 | 2002-03-14 | Ashley Saulsbury | Processing architecture having a matrix-transpose capability |
US6823087B1 (en) * | 2001-05-15 | 2004-11-23 | Advanced Micro Devices, Inc. | Parallel edge filters in video codec |
US7031994B2 (en) * | 2001-08-13 | 2006-04-18 | Sun Microsystems, Inc. | Matrix transposition in a computer system |
US7386703B2 (en) * | 2003-11-18 | 2008-06-10 | International Business Machines Corporation | Two dimensional addressing of a matrix-vector register array |
US20060190517A1 (en) * | 2005-02-02 | 2006-08-24 | Guerrero Miguel A | Techniques for transposition of a matrix arranged in a memory as multiple items per word |
US8438522B1 (en) | 2008-09-24 | 2013-05-07 | Iowa State University Research Foundation, Inc. | Logic element architecture for generic logic chains in programmable devices |
US8661394B1 (en) | 2008-09-24 | 2014-02-25 | Iowa State University Research Foundation, Inc. | Depth-optimal mapping of logic chains in reconfigurable fabrics |
US8484276B2 (en) * | 2009-03-18 | 2013-07-09 | International Business Machines Corporation | Processing array data on SIMD multi-core processor architectures |
JP5633122B2 (ja) * | 2009-06-16 | 2014-12-03 | 富士通セミコンダクター株式会社 | プロセッサ及び情報処理システム |
CN101706760B (zh) * | 2009-10-20 | 2013-07-31 | 龙芯中科技术有限公司 | 矩阵转置自动控制电路系统及矩阵转置方法 |
US8539201B2 (en) * | 2009-11-04 | 2013-09-17 | International Business Machines Corporation | Transposing array data on SIMD multi-core processor architectures |
WO2013048369A1 (en) * | 2011-09-26 | 2013-04-04 | Intel Corporation | Instruction and logic to provide vector load-op/store-op with stride functionality |
US9672036B2 (en) | 2011-09-26 | 2017-06-06 | Intel Corporation | Instruction and logic to provide vector loads with strides and masking functionality |
US9292221B2 (en) | 2011-09-29 | 2016-03-22 | Intel Corporation | Bi-directional copying of register content into shadow registers |
US9946541B2 (en) * | 2015-12-18 | 2018-04-17 | Intel Corporation | Systems, apparatuses, and method for strided access |
KR102586173B1 (ko) * | 2017-10-31 | 2023-10-10 | 삼성전자주식회사 | 프로세서 및 그 제어 방법 |
CN111429346A (zh) * | 2020-03-16 | 2020-07-17 | 广州兴森快捷电路科技有限公司 | 一种基于fpga的实时视频图像放大方法 |
Family Cites Families (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3763365A (en) * | 1972-01-21 | 1973-10-02 | Evans & Sutherland Computer Co | Computer graphics matrix multiplier |
US4370732A (en) * | 1980-09-15 | 1983-01-25 | Ibm Corporation | Skewed matrix address generator |
JPS6167367A (ja) * | 1984-09-10 | 1986-04-07 | Nec Corp | 画像制御装置 |
JPS6238075A (ja) * | 1985-08-13 | 1987-02-19 | Fuji Xerox Co Ltd | 行列デ−タの転置処理装置 |
CA1252902A (en) * | 1985-10-31 | 1989-04-18 | David R. Pruett | Method for rotating a binary image |
JPH03160537A (ja) * | 1989-11-20 | 1991-07-10 | Fuji Xerox Co Ltd | メモリ制御装置 |
JP2646778B2 (ja) * | 1990-01-17 | 1997-08-27 | 日本電気株式会社 | ディジタル信号処理装置 |
US5301340A (en) * | 1990-10-31 | 1994-04-05 | International Business Machines Corporation | IC chips including ALUs and identical register files whereby a number of ALUs directly and concurrently write results to every register file per cycle |
JP2964172B2 (ja) * | 1991-03-08 | 1999-10-18 | 富士通株式会社 | Dctマトリクス演算回路 |
JPH0540776A (ja) * | 1991-08-02 | 1993-02-19 | Fujitsu Ltd | 二次元dctマトリクス演算回路 |
JP3697717B2 (ja) * | 1993-09-24 | 2005-09-21 | ソニー株式会社 | 2次元離散コサイン変換装置および2次元逆離散コサイン変換装置 |
JPH07175444A (ja) * | 1993-12-20 | 1995-07-14 | Hitachi Ltd | 液晶ディスプレイ表示システム |
US5481487A (en) | 1994-01-28 | 1996-01-02 | Industrial Technology Research Institute | Transpose memory for DCT/IDCT circuit |
JP2662501B2 (ja) * | 1994-02-18 | 1997-10-15 | ホアバンティエンツーグーフウンユーシェンコンシー | 離散的コサイン変換及び逆変換のための集積回路プロセッサ |
US5668748A (en) * | 1995-04-15 | 1997-09-16 | United Microelectronics Corporation | Apparatus for two-dimensional discrete cosine transform |
JPH08307868A (ja) * | 1995-04-28 | 1996-11-22 | Nec Corp | 動画像復号装置 |
GB9509988D0 (en) | 1995-05-17 | 1995-07-12 | Sgs Thomson Microelectronics | Matrix transposition |
KR0175733B1 (ko) * | 1995-11-01 | 1999-04-15 | 이준 | 비트-시리얼 메트릭스 전치를 위한 초대규모 집적회로 |
JPH09214746A (ja) * | 1996-02-02 | 1997-08-15 | Ricoh Co Ltd | 画像出力システム及び画像形成装置 |
US5764553A (en) * | 1996-02-28 | 1998-06-09 | Lsi Logic Corporation | Generalized data processing path for performing transformation and quantization functions for video encoder systems |
JPH09312064A (ja) * | 1996-05-23 | 1997-12-02 | Victor Co Of Japan Ltd | データ変換方式 |
AU7453396A (en) | 1996-10-22 | 1998-05-15 | Philips Electronics North America Corporation | System for providing custom operations of a processor for multimedia functions |
JP3845920B2 (ja) * | 1996-11-26 | 2006-11-15 | ソニー株式会社 | 行列転置装置 |
JPH10207868A (ja) * | 1997-01-21 | 1998-08-07 | Sharp Corp | 2次元配列転置回路 |
US6292433B1 (en) * | 1997-02-03 | 2001-09-18 | Teratech Corporation | Multi-dimensional beamforming device |
US5938763A (en) * | 1997-08-06 | 1999-08-17 | Zenith Electronics Corporation | System for transposing data from column order to row order |
JP4158864B2 (ja) | 1998-03-18 | 2008-10-01 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | マトリックスのコサイン変換を計算するためのデータ処理装置およびその方法 |
US6175892B1 (en) | 1998-06-19 | 2001-01-16 | Hitachi America. Ltd. | Registers and methods for accessing registers for use in a single instruction multiple data system |
-
1999
- 1999-07-26 US US09/360,612 patent/US6625721B1/en not_active Expired - Fee Related
-
2000
- 2000-06-26 CN CNB008108838A patent/CN1160621C/zh not_active Expired - Fee Related
- 2000-06-26 AU AU56404/00A patent/AU5640400A/en not_active Abandoned
- 2000-06-26 WO PCT/US2000/017630 patent/WO2001008005A1/en active IP Right Grant
- 2000-06-26 DE DE60022206T patent/DE60022206T2/de not_active Expired - Fee Related
- 2000-06-26 EP EP00941742A patent/EP1212677B1/en not_active Expired - Lifetime
- 2000-06-26 JP JP2001513032A patent/JP4979169B2/ja not_active Expired - Fee Related
- 2000-06-26 CN CN2004100038202A patent/CN1532686B/zh not_active Expired - Fee Related
- 2000-06-30 TW TW089112946A patent/TWI243332B/zh not_active IP Right Cessation
-
2002
- 2002-07-23 HK HK02105426.1A patent/HK1043850B/zh not_active IP Right Cessation
-
2011
- 2011-08-16 JP JP2011177920A patent/JP5466211B2/ja not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8150901B2 (en) | 2006-10-25 | 2012-04-03 | Industrial Technology Research Institute | Integrated conversion method and apparatus |
Also Published As
Publication number | Publication date |
---|---|
EP1212677A1 (en) | 2002-06-12 |
CN1365463A (zh) | 2002-08-21 |
CN1532686B (zh) | 2012-11-28 |
JP2012009055A (ja) | 2012-01-12 |
US6625721B1 (en) | 2003-09-23 |
AU5640400A (en) | 2001-02-13 |
JP4979169B2 (ja) | 2012-07-18 |
JP5466211B2 (ja) | 2014-04-09 |
HK1043850B (zh) | 2006-02-24 |
CN1160621C (zh) | 2004-08-04 |
HK1043850A1 (en) | 2002-09-27 |
DE60022206D1 (de) | 2005-09-29 |
JP2003505786A (ja) | 2003-02-12 |
DE60022206T2 (de) | 2006-03-30 |
CN1532686A (zh) | 2004-09-29 |
EP1212677B1 (en) | 2005-08-24 |
WO2001008005A1 (en) | 2001-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI243332B (en) | Registers for 2-D matrix processing | |
TWI276972B (en) | Efficient multiplication of small matrices using SIMD registers | |
TW575839B (en) | Multipurpose processor for motion estimation, pixel processing, and general processing | |
US6260088B1 (en) | Single integrated circuit embodying a risc processor and a digital signal processor | |
KR100935308B1 (ko) | 실행 엔진을 포함하는 프로세싱 시스템에서 피연산자에 대해 인스트럭션을 실행하는 방법, 장치 및 시스템 | |
JP3323949B2 (ja) | Idctを効率よく実行する方法及び装置 | |
US5437045A (en) | Parallel processing with subsampling/spreading circuitry and data transfer circuitry to and from any processing unit | |
TWI325571B (en) | Systems and methods of indexed load and store operations in a dual-mode computer processor | |
US5736988A (en) | Apparatus and method for accelerated tiled data retrieval | |
JP4531398B2 (ja) | メモリアドレス技術に関する改良 | |
JP2005354673A5 (zh) | ||
JP2020508512A (ja) | データ処理装置における乗累算 | |
JP2011141823A (ja) | データ処理装置および並列演算装置 | |
WO2021036729A1 (zh) | 一种矩阵运算方法、运算装置以及处理器 | |
JP2004054916A (ja) | プロセッサ間のハードウェア支援通信を実行する方法 | |
TWI328198B (en) | Gpu context switching system | |
US20100318766A1 (en) | Processor and information processing system | |
US5428804A (en) | Edge crossing circuitry for SIMD architecture | |
EP2400455A1 (en) | System, data structure, and method for transposing multi-dimensional data to switch between vertical and horizontal filters | |
JP6666548B2 (ja) | 並列計算機、fft演算プログラムおよびfft演算方法 | |
EP4035031A1 (en) | A matrix multiplication unit with flexible precision operations | |
JP2022145001A (ja) | 画像処理装置、画像処理方法 | |
JP4060960B2 (ja) | キャッシュ記憶装置 | |
WO2021034494A1 (en) | Routing circuitry for permutation of single instruction multiple data operands | |
JPH05268593A (ja) | 差分絶対値和・差分自乗和並列演算装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |