JP3985797B2 - プロセッサ - Google Patents
プロセッサ Download PDFInfo
- Publication number
- JP3985797B2 JP3985797B2 JP2004121705A JP2004121705A JP3985797B2 JP 3985797 B2 JP3985797 B2 JP 3985797B2 JP 2004121705 A JP2004121705 A JP 2004121705A JP 2004121705 A JP2004121705 A JP 2004121705A JP 3985797 B2 JP3985797 B2 JP 3985797B2
- Authority
- JP
- Japan
- Prior art keywords
- read
- matrix
- write
- register
- memory banks
- Prior art date
- Legal status (The legal status 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 status listed.)
- Expired - Lifetime
Links
- 239000011159 matrix material Substances 0.000 claims description 112
- 238000006073 displacement reaction Methods 0.000 claims description 46
- 238000000034 method Methods 0.000 claims description 7
- 238000012545 processing Methods 0.000 claims description 7
- 230000006870 function Effects 0.000 description 22
- 238000010586 diagram Methods 0.000 description 15
- 238000000605 extraction Methods 0.000 description 8
- 238000000926 separation method Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000003213 activating effect Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
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
-
- E—FIXED CONSTRUCTIONS
- E06—DOORS, WINDOWS, SHUTTERS, OR ROLLER BLINDS IN GENERAL; LADDERS
- E06B—FIXED OR MOVABLE CLOSURES FOR OPENINGS IN BUILDINGS, VEHICLES, FENCES OR LIKE ENCLOSURES IN GENERAL, e.g. DOORS, WINDOWS, BLINDS, GATES
- E06B1/00—Border constructions of openings in walls, floors, or ceilings; Frames to be rigidly mounted in such openings
- E06B1/04—Frames for doors, windows, or the like to be fixed in openings
- E06B1/52—Frames specially adapted for doors
-
- E—FIXED CONSTRUCTIONS
- E06—DOORS, WINDOWS, SHUTTERS, OR ROLLER BLINDS IN GENERAL; LADDERS
- E06B—FIXED OR MOVABLE CLOSURES FOR OPENINGS IN BUILDINGS, VEHICLES, FENCES OR LIKE ENCLOSURES IN GENERAL, e.g. DOORS, WINDOWS, BLINDS, GATES
- E06B1/00—Border constructions of openings in walls, floors, or ceilings; Frames to be rigidly mounted in such openings
- E06B1/56—Fastening frames to the border of openings or to similar contiguous frames
- E06B1/60—Fastening frames to the border of openings or to similar contiguous frames by mechanical means, e.g. anchoring means
- E06B1/6015—Anchoring means
-
- 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/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30036—Instructions to perform operations on packed data, e.g. vector, tile or matrix operations
-
- 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/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/34—Addressing or accessing the instruction operand or the result ; Formation of operand address; Addressing modes
- G06F9/345—Addressing or accessing the instruction operand or the result ; Formation of operand address; Addressing modes of multiple operands or results
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Pure & Applied Mathematics (AREA)
- Civil Engineering (AREA)
- Structural Engineering (AREA)
- Computational Mathematics (AREA)
- Mechanical Engineering (AREA)
- Executing Machine-Instructions (AREA)
- Memory System (AREA)
- Complex Calculations (AREA)
Description
D[0][0] = A[0][0]×B[0][0]+A[0][1]×B[1][0]+A[0][2]×B[2][0]+A[0][3]×B[3][0]
D[0][1] = A[0][0]×B[0][1]+A[0][1]×B[1][1]+A[0][2]×B[2][1]+A[0][3]×B[3][1]
D[0][2] = A[0][0]×B[0][2]+A[0][1]×B[1][2]+A[0][2]×B[2][2]+A[0][3]×B[3][2]
D[0][3] = A[0][0]×B[0][3]+A[0][1]×B[1][3]+A[0][2]×B[2][3]+A[0][3]×B[3][3]
D[1][0] = A[1][0]×B[0][0]+A[1][1]×B[1][0]+A[1][2]×B[2][0]+A[1][3]×B[3][0]
D[1][1] = A[1][0]×B[0][1]+A[1][1]×B[1][1]+A[1][2]×B[2][1]+A[1][3]×B[3][1]
D[1][2] = A[1][0]×B[0][2]+A[1][1]×B[1][2]+A[1][2]×B[2][2]+A[1][3]×B[3][2]
D[1][3] = A[1][0]×B[0][3]+A[1][1]×B[1][3]+A[1][2]×B[2][3]+A[1][3]×B[3][3]
D[2][0] = A[2][0]×B[0][0]+A[2][1]×B[1][0]+A[2][2]×B[2][0]+A[2][3]×B[3][0]
D[2][1] = A[2][0]×B[0][1]+A[2][1]×B[1][1]+A[2][2]×B[2][1]+A[2][3]×B[3][1]
D[2][2] = A[2][0]×B[0][2]+A[2][1]×B[1][2]+A[2][2]×B[2][2]+A[2][3]×B[3][2]
D[2][3] = A[2][0]×B[0][3]+A[2][1]×B[1][3]+A[2][2]×B[2][3]+A[2][3]×B[3][3]
D[3][0] = A[3][0]×B[0][0]+A[3][1]×B[1][0]+A[3][2]×B[2][0]+A[3][3]×B[3][0]
D[3][1] = A[3][0]×B[0][1]+A[3][1]×B[1][1]+A[3][2]×B[2][1]+A[3][3]×B[3][1]
D[3][2] = A[3][0]×B[0][2]+A[3][1]×B[1][2]+A[3][2]×B[2][2]+A[3][3]×B[3][2]
D[3][3] = A[3][0]×B[0][3]+A[3][1]×B[1][3]+A[3][2]×B[2][3]+A[3][3]×B[3][3]
R[d][0] =R[b][2]
R[d][1] =R[a][2]
R[d][2] =R[b][3]
R[d][3] =R[a][3]
R[d][0] =R[b][0]
R[d][1] =R[a][0]
R[d][2] =R[b][1]
R[d][3] =R[a][1]
R[d][0] =R[a][0]×R[b][0]+R[a][1]×R[b][1]+R[a][2]×R[b][2]+R[a][3]×R[b][3]
R[0][0]、R[0][1]、R[0][2]、R[0][3]、
R[1][0]、R[1][1]、R[1][2]、R[1][3]、
R[2][0]、R[2][1]、R[2][2]、R[2][3]、
R[3][0]、R[3][1]、R[3][2]、R[3][3]
R[4][0]、R[4][1]、R[4][2]、R[4][3]、
R[5][0]、R[5][1]、R[5][2]、R[5][3]、
R[6][0]、R[6][1]、R[6][2]、R[6][3]、
R[7][0]、R[7][1]、R[7][2]、R[7][3]
R[8][0]、R[8][1]、R[8][2]、R[8][3]、
R[9][0]、R[9][1]、R[9][2]、R[9][3]、
R[10][0]、R[10][1]、R[10][2]、R[10][3]、
R[11][0]、R[11][1]、R[11][2]、R[11][3]
MERGEH 12, 0, 2
MERGEH 13, 1, 3
MERGEL 14, 0, 2
MERGEL 15, 1, 3
MERGEH 0,12,13
MERGEL 1,12,13
MERGEH 2,14,15
MERGEL 3,14,15
DOT 12, 0, 4
DOT 13, 0, 5
DOT 14, 0, 6
DOT 15, 0, 7
MERGEL 12,12,13
MERGEL 14,14,15
MERGEL 8,12,14
DOT 12, 1, 4
DOT 13, 1, 5
DOT 14, 1, 6
DOT 15, 1, 7
MERGEL 12,12,13
MERGEL 14,14,15
MERGEL 9,12,14
DOT 12, 2, 4
DOT 13, 2, 5
DOT 14, 2, 6
DOT 15, 2, 7
MERGEL 12,12,13
MERGEL 14,14,15
MERGEL 10,12,14
DOT 12, 3, 4
DOT 13, 3, 5
DOT 14, 3, 6
DOT 15, 3, 7
MERGEL 12,12,13
MERGEL 14,14,15
MERGEL 11,12,14
「IA-32 Intel(R) Architecture Software Developer's Manual Volume 1: Basic Architecture」、Intel Corporation、2004年 「AltiVec Technology Programming Interface Manual」、Motorola Inc.、1999年6月
MWDsel[b] = pmod(b−IX−FS,n)
MWD[b] = WD[MWDsel[b]]
MWE[b] = (pmod(b−IX−FS,n)<=SZ)?1;0
MA[b] = (IX−pmod(IX,n))+(RXC ? pmod(b−IX,n) ; pmod(IX,n))
MRDsel[b] = pmod(b−IX−FS,n)
RD[MRDsel[b]] = MRD[b]
XDOT d_ix,d_fs, a_ix,a_rxc, b_ix,b_rxc
R[d_ix][d_fs] =
((a_rxc ? R[a_ix−(a_ix%4)+0][a_ix%4];
R[a_ix][0])
×(b_rxc ? R[b_ix−(b_ix%4)+0][b_ix%4];
R[b_ix][0]))+
((a_rxc ? R[a_ix−(a_ix%4)+1][a_ix%4];
R[a_ix][1])
×(b_rxc ? R[b_ix−(b_ix%4)+1][b_ix%4];
R[b_ix][1]))+
((a_rxc ? R[a_ix−(a_ix%4)+2][a_ix%4];
R[a_ix][2])
×(b_rxc ? R[b_ix−(b_ix%4)+2][b_ix%4];
R[b_ix][2]))+
((a_rxc ? R[a_ix−(a_ix%4)+3][a_ix%4];
R[a_ix][3])
×(b_rxc ? R[b_ix−(b_ix%4)+3][b_ix%4];
R[b_ix][3]))
XDOT 8,0, 0,0, 4,1
XDOT 8,1, 0,0, 5,1
XDOT 8,2, 0,0, 6,1
XDOT 8,3, 0,0, 7,1
XDOT 9,0, 1,0, 4,1
XDOT 9,1, 1,0, 5,1
XDOT 9,2, 1,0, 6,1
XDOT 9,3, 1,0, 7,1
XDOT 10,0, 2,0, 4,1
XDOT 10,1, 2,0, 5,1
XDOT 10,2, 2,0, 6,1
XDOT 10,3, 2,0, 7,1
XDOT 11,0, 3,0, 4,1
XDOT 11,1, 3,0, 5,1
XDOT 11,2, 3,0, 6,1
XDOT 11,3, 3,0, 7,1
110 プログラムカウンタ
120 命令デコーダ
130 レジスタファイル
140 演算器
141 演算回路群
142 加算器
210 機能コード
220 書込みオペランド
221 書込みレジスタ指定
222 書込みレジスタ走査方向
223 書込みレジスタ変位
224 書込みレジスタ要素数
230 第1読出しオペランド
231 第1読出しレジスタ指定
232 第1読出しレジスタ走査方向
233 第1読出しレジスタ変位
234 第1読出しレジスタ要素数
240 第2読出しオペランド
241 第2読出しレジスタ指定
242 第2読出しレジスタ走査方向
243 第2読出しレジスタ変位
244 第2読出しレジスタ要素数
310〜313、319 メモリバンク
320、330、340 アドレス生成回路
321 ビット分離回路
350 書込み制御回路
351 要素数デコーダ
352 ビット抽出回路
353 加算器
354 要素数セレクタ
355 データセレクタ
360、370 読出し制御回路
361 ビット抽出回路
362 加算器
363 データセレクタ
400 命令メモリ
1430〜1433 演算結果セレクタ
3220〜3223 減算器
3230〜3233 行番号セレクタ
3250〜3253 結合回路
Claims (2)
- 第1乃至第3の行列を分散配置する複数のメモリバンクと、
前記第1および第2の行列に関する読出しレジスタ指定および読出しレジスタ走査方向に基づいて前記第1の行列の所定の行を前記複数のメモリバンクから読み出すための第1の読出しアドレスおよび前記第2の行列の所定の列を前記複数のメモリバンクから読み出すための第2の読出しアドレスを供給する読出しアドレス生成回路と、
前記第1および第2の読出しアドレスに従って前記複数のメモリバンクから読み出された前記第1の行列の所定の行および前記第2の行列の所定の列の配置を前記第1および第2の行列に関する読出しレジスタ指定および読出しレジスタ変位に基づいて制御する読出し制御回路と、
前記読出し制御回路によって配置制御された前記第1の行列の所定の行と前記第2の行列の所定の列との内積演算処理を行う演算器と、
前記第3の行列に関する書込みレジスタ指定および書込みレジスタ変位に基づいて前記複数のメモリバンクに対する書込みアドレスを供給する書込みアドレス生成回路と、
前記演算器から出力された前記内積演算処理の結果を前記書込みレジスタ指定および書込みレジスタ変位に基づいて前記複数のメモリバンクにおける前記第3の行列の対応するアドレスに書き込む書込み制御回路と
を具備することを特徴とするプロセッサ。 - プログラムに含まれる命令であって第1の行列の所定の行と第2の行列の所定の列との内積演算処理の結果を第3の行列の所定の要素に書き込む命令をデコードする命令デコーダと、
前記第1乃至第3の行列を分散配置する複数のメモリバンクと、
前記命令デコーダによってデコードされた前記第1および第2の行列に関する読出しレジスタ指定および読出しレジスタ走査方向に基づいて前記第1の行列の所定の行を前記複数のメモリバンクから読み出すための第1の読出しアドレスおよび前記第2の行列の所定の列を前記複数のメモリバンクから読み出すための第2の読出しアドレスを供給する読出しアドレス生成回路と、
前記第1および第2の読出しアドレスに従って前記複数のメモリバンクから読み出された前記第1の行列の所定の行および前記第2の行列の所定の列の配置を前記命令デコーダによってデコードされた前記第1および第2の行列に関する読出しレジスタ指定および読出しレジスタ変位に基づいて制御する読出し制御回路と、
前記読出し制御回路によって配置制御された前記第1の行列の所定の行と前記第2の行列の所定の列との内積演算処理を行う演算器と、
前記命令デコーダによってデコードされた前記第3の行列に関する書込みレジスタ指定および書込みレジスタ変位に基づいて前記複数のメモリバンクに対する書込みアドレスを供給する書込みアドレス生成回路と、
前記演算器から出力された前記内積演算処理の結果を前記命令デコーダによってデコードされた前記書込みレジスタ指定および書込みレジスタ変位に基づいて前記複数のメモリバンクにおける前記第3の行列の対応するアドレスに書き込む書込み制御回路と
を具備することを特徴とするプロセッサ。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004121705A JP3985797B2 (ja) | 2004-04-16 | 2004-04-16 | プロセッサ |
US11/100,490 US7313645B2 (en) | 2004-04-16 | 2005-04-07 | Processor to reduce data rearrangement instructions for matrices in multiple memory banks |
CNB2005100643774A CN100410919C (zh) | 2004-04-16 | 2005-04-14 | 处理器 |
KR1020050031382A KR20060045756A (ko) | 2004-04-16 | 2005-04-15 | 프로세서 |
EP05290840A EP1586991A3 (en) | 2004-04-16 | 2005-04-15 | Processor with plurality of register banks |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004121705A JP3985797B2 (ja) | 2004-04-16 | 2004-04-16 | プロセッサ |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005309499A JP2005309499A (ja) | 2005-11-04 |
JP3985797B2 true JP3985797B2 (ja) | 2007-10-03 |
Family
ID=34942143
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004121705A Expired - Lifetime JP3985797B2 (ja) | 2004-04-16 | 2004-04-16 | プロセッサ |
Country Status (5)
Country | Link |
---|---|
US (1) | US7313645B2 (ja) |
EP (1) | EP1586991A3 (ja) |
JP (1) | JP3985797B2 (ja) |
KR (1) | KR20060045756A (ja) |
CN (1) | CN100410919C (ja) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4478050B2 (ja) * | 2005-03-18 | 2010-06-09 | 株式会社リコー | Simd型マイクロプロセッサ及びデータ処理方法 |
EP1958069A2 (en) * | 2005-12-01 | 2008-08-20 | Philips Intellectual Property & Standards GmbH | Method and arrangement for efficiently accessing matrix elements in a memory |
US20110066821A1 (en) * | 2008-05-21 | 2011-03-17 | Nxp B.V. | data handling system comprising a rearrangement network |
CN101685388B (zh) * | 2008-09-28 | 2013-08-07 | 北京大学深圳研究生院 | 执行比较运算的方法和装置 |
US8661187B2 (en) | 2009-04-08 | 2014-02-25 | International Business Machines Corporation | System, method, and computer program product for skewing expected wearout times of memory devices |
JP5633122B2 (ja) * | 2009-06-16 | 2014-12-03 | 富士通セミコンダクター株式会社 | プロセッサ及び情報処理システム |
CN101620524B (zh) * | 2009-07-03 | 2011-08-10 | 中国人民解放军国防科学技术大学 | 支持矩阵整体读写操作的矩阵寄存器文件 |
CN102012803B (zh) * | 2010-11-25 | 2014-09-10 | 中国人民解放军国防科学技术大学 | 支持多宽度simd和多粒度simt的可配置矩阵寄存器单元 |
CN103168289B (zh) * | 2011-10-14 | 2016-07-06 | 松下知识产权经营株式会社 | 转置运算装置及其集成电路、以及转置处理方法 |
JP5840451B2 (ja) | 2011-10-18 | 2016-01-06 | ルネサスエレクトロニクス株式会社 | メモリ制御装置 |
US8832158B2 (en) * | 2012-03-29 | 2014-09-09 | International Business Machines Corporation | Fast predicate table scans using single instruction, multiple data architecture |
GB2552154B (en) * | 2016-07-08 | 2019-03-06 | Advanced Risc Mach Ltd | Vector register access |
GB2552153B (en) | 2016-07-08 | 2019-07-24 | Advanced Risc Mach Ltd | An apparatus and method for performing a rearrangement operation |
JP2018022339A (ja) | 2016-08-03 | 2018-02-08 | 富士通株式会社 | 演算処理装置及び演算処理装置の制御方法 |
CN108766332B (zh) * | 2018-04-17 | 2021-09-10 | 南京昀光科技有限公司 | 可扩展的硅基微型显示器驱动电路 |
CN108985232A (zh) * | 2018-07-18 | 2018-12-11 | 平安科技(深圳)有限公司 | 人脸图像比对方法、装置、计算机设备及存储介质 |
CN109214273A (zh) * | 2018-07-18 | 2019-01-15 | 平安科技(深圳)有限公司 | 人脸图像比对方法、装置、计算机设备及存储介质 |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
NL136896C (ja) * | 1964-10-07 | |||
JPS60134359A (ja) | 1983-12-21 | 1985-07-17 | Nec Corp | 3次元アドレス空間のための並列メモリシステム |
EP0167959B1 (en) * | 1984-07-02 | 1992-05-06 | Nec Corporation | Computer vector register processing |
EP0410778A3 (en) * | 1989-07-28 | 1992-12-02 | Texas Instruments Incorporated | Graphics processor having a floating point coprocessor |
JPH0486930A (ja) * | 1990-07-31 | 1992-03-19 | Canon Inc | アドレス発生回路 |
US5218674A (en) * | 1990-09-14 | 1993-06-08 | Hughes Aircraft Company | Hardware bit block transfer operator in a graphics rendering processor |
US5832290A (en) * | 1994-06-13 | 1998-11-03 | Hewlett-Packard Co. | Apparatus, systems and method for improving memory bandwidth utilization in vector processing systems |
US5649179A (en) * | 1995-05-19 | 1997-07-15 | Motorola, Inc. | Dynamic instruction allocation for a SIMD processor |
US5638533A (en) * | 1995-10-12 | 1997-06-10 | Lsi Logic Corporation | Method and apparatus for providing data to a parallel processing array |
US6307553B1 (en) * | 1998-03-31 | 2001-10-23 | Mohammad Abdallah | System and method for performing a MOVHPS-MOVLPS instruction |
US6604166B1 (en) * | 1998-12-30 | 2003-08-05 | Silicon Automation Systems Limited | Memory architecture for parallel data access along any given dimension of an n-dimensional rectangular data array |
US6397324B1 (en) * | 1999-06-18 | 2002-05-28 | Bops, Inc. | Accessing tables in memory banks using load and store address generators sharing store read port of compute register file separated from address register file |
JP4378015B2 (ja) * | 2000-02-28 | 2009-12-02 | インターナショナル・ビジネス・マシーンズ・コーポレーション | メモリ・チップ |
JP3779540B2 (ja) | 2000-11-08 | 2006-05-31 | 株式会社ルネサステクノロジ | 複数レジスタ指定が可能なsimd演算方式 |
KR100401946B1 (ko) * | 2001-08-10 | 2003-10-17 | 박종원 | 주소계산과 자료이동방법 및 이를 이용한 충돌회피 기억 장치 |
GB2382677B (en) * | 2001-10-31 | 2005-09-07 | Alphamosaic Ltd | Data access in a processor |
US20040252547A1 (en) * | 2003-06-06 | 2004-12-16 | Chengpu Wang | Concurrent Processing Memory |
-
2004
- 2004-04-16 JP JP2004121705A patent/JP3985797B2/ja not_active Expired - Lifetime
-
2005
- 2005-04-07 US US11/100,490 patent/US7313645B2/en not_active Expired - Fee Related
- 2005-04-14 CN CNB2005100643774A patent/CN100410919C/zh not_active Expired - Fee Related
- 2005-04-15 KR KR1020050031382A patent/KR20060045756A/ko not_active Application Discontinuation
- 2005-04-15 EP EP05290840A patent/EP1586991A3/en not_active Withdrawn
Also Published As
Publication number | Publication date |
---|---|
JP2005309499A (ja) | 2005-11-04 |
KR20060045756A (ko) | 2006-05-17 |
EP1586991A3 (en) | 2008-03-26 |
CN100410919C (zh) | 2008-08-13 |
CN1684058A (zh) | 2005-10-19 |
US20050251614A1 (en) | 2005-11-10 |
EP1586991A2 (en) | 2005-10-19 |
US7313645B2 (en) | 2007-12-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3985797B2 (ja) | プロセッサ | |
KR101202445B1 (ko) | 프로세서 | |
KR100329339B1 (ko) | 압축데이터에의한승산-가산연산수행장치 | |
JP7253492B2 (ja) | データ処理装置における乗累算 | |
US6209078B1 (en) | Accelerated multimedia processor | |
US7043627B2 (en) | SIMD operation system capable of designating plural registers via one register designating field | |
JP2959104B2 (ja) | 信号処理プロセッサ | |
JP2018022339A (ja) | 演算処理装置及び演算処理装置の制御方法 | |
CN115576606B (zh) | 实现矩阵转置乘的方法、协处理器、服务器及存储介质 | |
US11263018B2 (en) | Vector processor and control method therefor | |
JP2024533746A (ja) | データ処理方法、装置、機器及び記憶媒体 | |
US5363322A (en) | Data processor with an integer multiplication function on a fractional multiplier | |
US7284113B2 (en) | Synchronous periodical orthogonal data converter | |
JP3935678B2 (ja) | Simd積和演算方法、積和演算回路、および、半導体集積回路装置 | |
US6317817B1 (en) | Image operation processing apparatus storing discrete data efficiently in a memory and operating method thereof | |
JP4896839B2 (ja) | マイクロプロセッサおよびデータ処理方法 | |
JPH07210545A (ja) | 並列処理プロセッサ | |
JP2005267362A (ja) | Simdプロセッサを用いた画像処理方法及び画像処理装置 | |
WO2023199014A1 (en) | Technique for handling data elements stored in an array storage | |
GB2617829A (en) | Technique for handling data elements stored in an array storage | |
JP4821427B2 (ja) | データ処理装置及びそのプログラム | |
WO2023242531A1 (en) | Technique for performing outer product operations | |
JPH01204177A (ja) | 行列演算回路 | |
JPS59220842A (ja) | デ−タ処理装置 | |
JPH0470987A (ja) | 並列データ処理方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20061226 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070116 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070301 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20070619 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070702 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100720 Year of fee payment: 3 |