JP5383021B2 - 選択演算を実行する方法および装置 - Google Patents
選択演算を実行する方法および装置 Download PDFInfo
- Publication number
- JP5383021B2 JP5383021B2 JP2007245615A JP2007245615A JP5383021B2 JP 5383021 B2 JP5383021 B2 JP 5383021B2 JP 2007245615 A JP2007245615 A JP 2007245615A JP 2007245615 A JP2007245615 A JP 2007245615A JP 5383021 B2 JP5383021 B2 JP 5383021B2
- Authority
- JP
- Japan
- Prior art keywords
- data element
- bit
- register
- source data
- destination register
- 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 - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 90
- 230000004044 response Effects 0.000 claims description 8
- 238000012545 processing Methods 0.000 description 68
- 239000000203 mixture Substances 0.000 description 59
- 238000007667 floating Methods 0.000 description 44
- 230000008569 process Effects 0.000 description 28
- 238000004891 communication Methods 0.000 description 16
- 238000010586 diagram Methods 0.000 description 14
- 238000013500 data storage Methods 0.000 description 8
- 101000912503 Homo sapiens Tyrosine-protein kinase Fgr Proteins 0.000 description 7
- 102100026150 Tyrosine-protein kinase Fgr Human genes 0.000 description 7
- 230000006835 compression Effects 0.000 description 4
- 238000007906 compression Methods 0.000 description 4
- 238000004519 manufacturing process Methods 0.000 description 4
- 230000003068 static effect Effects 0.000 description 4
- 230000006837 decompression Effects 0.000 description 3
- 238000006073 displacement reaction Methods 0.000 description 3
- 238000007429 general method Methods 0.000 description 3
- 230000033001 locomotion Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 101100514059 Escherichia coli (strain K12) modE gene Proteins 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000001343 mnemonic effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 101100285899 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) SSE2 gene Proteins 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 229920000747 poly(lactic acid) Polymers 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 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/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
-
- 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
- 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
-
- 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/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/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
- G06F9/30038—Instructions to perform operations on packed data, e.g. vector, tile or matrix operations using a mask
-
- 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
- G06F9/30138—Extension of register space, e.g. register cache
-
- 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/30181—Instruction operation extension or modification
- G06F9/30185—Instruction operation extension or modification according to one or more bits in the instruction, e.g. prefix, sub-opcode
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Executing Machine-Instructions (AREA)
- Advance Control (AREA)
- Complex Calculations (AREA)
Description
[コンピュータシステム]
[データストレージ形式]
[BLEND演算]
[即値BLEND演算]
[可変BLEND演算]
[代替実施形態]
101 相互接続部
102 データ処理システム
104 メインメモリ
106 ROM
107 データストレージ装置
109 プロセッサ
110 処理コア
118c 3バイト拡張コード
121 ディスプレイ装置
1210 プレフィックス
122 入力装置
1220 オペコード
1226 オペコード
123 カーソルコントロール
1230 MOD R/M
124 ハードコピー装置
1240 SIB
125 音声記録/再生装置
1250 ディスプレースメント
126 ビデオ
1260 即値
130 実行ユニット
142 BLEND命令
150 レジスタファイル
160 キャッシュ
165 デコーダ
170 内部相互接続部
190 通信装置
201 整数レジスタ
207 制御信号
208 ステータスレジスタ
209 レジスタ
210 拡張レジスタ
211 命令ポインタレジスタ
214 バス
224 メインプロセッサ
226 コプロセッサ
271 SDRAMコントロール
272 SRAMコントロール
273 バーストフラッシュインタフェース
274 PCMCIA/CFカードコントロール
275 LCDコントロール
276 DMAコントロール
277 代替バスマスタインタフェース
278 キャッシュ
290 I/Oブリッジ
291 UART
292 UBS
293 ブルートゥースUART
294 I/O拡張インタフェース
295 I/Oシステム
296 ワイヤレスインタフェース
412 ダブルクワドワード−128ビット
510 レジスタ内の符号なしパックドバイト表現
511 レジスタ内の符号付きパックドバイト表現
512 レジスタ内の符号なしパックドワード表現
513 レジスタ内の符号付きパックドワード表現
514 レジスタ内の符号なしパックドダブルワード表現
515 レジスタ内の符号付きパックドダブルワード表現
516 レジスタ内の符号なしパックドクワドワード表現
517 レジスタ内の符号付きパックドクワドワード表現
Claims (28)
- 第1のソースデータ要素及び第2のソースデータ要素を含む第1の複数ビットオペランドと、前記第1のソースデータ要素に対応する第1の制御データ要素及び前記第2のソースデータ要素に対応する第2の制御データ要素を含む制御レジスタに対応する第2のオペランドとを有する命令形式である命令コードを受信する工程と、
前記第1の制御データ要素の第1の符号ビットが第1の論理値である場合に、第1のデスティネーションレジスタに前記第1のソースデータ要素を格納し、前記第1の制御データ要素の第1の符号ビットが第2の論理値である場合に、前記第1のデスティネーションレジスタに前記第1のソースデータ要素を格納しない第1のデスティネーションレジスタ制御工程と、
前記第2の制御データ要素の第2の符号ビットが第1の論理値である場合に、第2のデスティネーションレジスタに前記第2のソースデータ要素を格納し、前記第2の制御データ要素の第2の符号ビットが第2の論理値である場合に、前記第2のデスティネーションレジスタに前記第2のソースデータ要素を格納しない第2のデスティネーションレジスタ制御工程と、
前記制御レジスタにおける前記第1の制御データ要素及び前記第2の制御データ要素を順次ビットシフトするビットシフト工程と
を備え、
前記ビットシフトするごとに順次、前記第1の制御データ要素及び前記第2の制御データ要素の前記符号ビットを使用して前記第1のデスティネーションレジスタ制御工程及び前記第2のデスティネーションレジスタ制御工程を実行する方法。 - 前記第1のデスティネーションレジスタ制御工程においては、前記第1の符号ビットがゼロである場合に、前記第1のデスティネーションレジスタを変更しないで、
前記第2のデスティネーションレジスタ制御工程においては、前記第2の符号ビットがゼロである場合に、前記第2のデスティネーションレジスタを変更しない請求項1に記載の方法。 - 前記第1の符号ビットは、前記第1の複数ビットオペランドに関連付けられる前記第1の制御データ要素の最上位ビットである請求項2に記載の方法。
- 前記第1の制御データ要素は、一の暗黙のレジスタに格納されている請求項2または3に記載の方法。
- 前記第1の符号ビット及び前記第2の符号ビットは、前記第1のソースデータ要素及び前記第2のソースデータ要素の前記第1のデスティネーションレジスタ及び前記第2のデスティネーションレジスタへのデータの流れを制御する請求項2から4のいずれか一項に記載の方法。
- 前記第1の符号ビットが非ゼロである場合に、前記第1の複数ビットオペランドからの第1のソースデータ要素を前記第1のデスティネーションレジスタに格納する工程をさらに含む請求項2から5のいずれか一項に記載の方法。
- 前記第1の複数ビットオペランドは128ビットを含む請求項1から6のいずれか一項に記載の方法。
- 前記第1のソースデータ要素及び前記第2のソースデータ要素は、それぞれ64ビットであり、前記第1のデスティネーションレジスタ及び前記第2のデスティネーションレジスタは、それぞれ64ビットである請求項7に記載の方法。
- 前記第1のソースデータ要素及び前記第2のソースデータ要素は、パックドバイトとして処理される請求項1から8のいずれか一項に記載の方法。
- 前記第1のソースデータ要素及び前記第2のソースデータ要素は、パックドワードとして処理される請求項1から8のいずれか一項に記載の方法。
- 前記第1のソースデータ要素及び前記第2のソースデータ要素は、ダブルワードとして処理される請求項1から8のいずれか一項に記載の方法。
- 前記第1のソースデータ要素及び前記第2のソースデータ要素は、クワドワードとして処理される請求項1から8のいずれか一項に記載の方法。
- コンピュータに、
第1のソースデータ要素及び第2のソースデータ要素を含む第1の複数ビットオペランドと、前記第1のソースデータ要素に対応する第1の制御データ要素及び前記第2のソースデータ要素に対応する第2の制御データ要素を含む制御レジスタに対応する第2のオペランドとを有する命令形式である命令コードを受信させ、
前記第1の制御データ要素の第1の符号ビットが第1の論理値である場合に、第1のデスティネーションレジスタに前記第1のソースデータ要素を格納し、前記第1の制御データ要素の第1の符号ビットが第2の論理値である場合に、前記第1のデスティネーションレジスタに前記第1のソースデータ要素を格納しないように第1のデスティネーションレジスタを制御させ、
前記第2の制御データ要素の第2の符号ビットが第1の論理値である場合に、第2のデスティネーションレジスタに前記第2のソースデータ要素を格納し、前記第2の制御データ要素の第2の符号ビットが第2の論理値である場合に、前記第2のデスティネーションレジスタに前記第2のソースデータ要素を格納しないように第2のデスティネーションレジスタを制御させ、
前記制御レジスタにおける前記第1の制御データ要素及び前記第2の制御データ要素を順次ビットシフトさせ、
前記ビットシフトするごとに順次、前記第1の制御データ要素及び前記第2の制御データ要素の前記符号ビットを使用して前記第1のデスティネーションレジスタ及び前記第2のデスティネーションレジスタを制御させるためのプログラム。 - 第1のソースデータ要素及び第2のソースデータ要素を含む第1の複数ビットオペランドと、前記第1のソースデータ要素に対応する第1の制御データ要素及び前記第2のソースデータ要素に対応する第2の制御データ要素を含む制御レジスタに対応する第2のオペランドとを有する命令形式である命令コードを受信する回路と、
前記第1の制御データ要素の第1の符号ビットが第1の論理値である場合に、第1のデスティネーションレジスタに前記第1のソースデータ要素を格納し、前記第1の制御データ要素の第1の符号ビットが第2の論理値である場合に、前記第1のデスティネーションレジスタに前記第1のソースデータ要素を格納しない第1のデスティネーションレジスタを制御する回路と、
前記第2の制御データ要素の第2の符号ビットが第1の論理値である場合に、第2のデスティネーションレジスタに前記第2のソースデータ要素を格納し、前記第2の制御データ要素の第2の符号ビットが第2の論理値である場合に、前記第2のデスティネーションレジスタに前記第2のソースデータ要素を格納しない第2のデスティネーションレジスタを制御する回路と、
前記制御レジスタにおける前記第1の制御データ要素及び前記第2の制御データ要素を順次ビットシフトするビットシフト回路と
を備え、
前記第1のデスティネーションレジスタを制御する回路及び前記第2のデスティネーションレジスタを制御する回路は、前記ビットシフト回路が前記ビットシフトをするごとに順次、前記第1の制御データ要素及び前記第2の制御データ要素の前記符号ビットを使用して第1のデスティネーションレジスタ及び前記第2のデスティネーションレジスタを制御する装置。 - 前記第1の符号ビットは、前記第1の複数ビットオペランドに関連付けられる前記第2のオペランドにおける最上位ビットである請求項14に記載の装置。
- 前記制御レジスタは、一の暗黙のレジスタである請求項14または15に記載の装置。
- 前記第1の複数ビットオペランドは少なくとも128ビットのデータを含む請求項14から16のいずれか一項に記載の装置。
- 前記第1のソースデータ要素及び前記第2のソースデータ要素はそれぞれ64ビットを含む請求項17に記載の装置。
- 前記第1の複数ビットオペランドは、少なくとも4つのソースデータ要素を含む請求項14から17のいずれか一項に記載の装置。
- 前記少なくとも4つのソースデータ要素はそれぞれ32ビットを含む請求項19に記載の装置。
- 前記第1の複数ビットオペランドは、少なくとも8つのデータ要素を含む請求項14から17のいずれか一項に記載の装置。
- 前記少なくとも8つのソースデータ要素はそれぞれ16ビットを含む請求項21に記載の装置。
- 前記第1の複数ビットオペランドは、少なくとも16のデータ要素を含む請求項14から17のいずれか一項に記載の装置。
- 前記少なくとも16のソースデータ要素はそれぞれ8ビットを含む請求項23に記載の装置。
- データを格納するようアドレス指定可能な一のメモリと、
一の制御ビットを格納するよう構造的に可視である一のストレージ領域を含むプロセッサであって、
第1のソースデータ要素及び第2のソースデータ要素を含む第1の複数ビットオペランドと、前記第1のソースデータ要素に対応する第1の制御データ要素及び前記第2のソースデータ要素に対応する第2の制御データ要素を含む制御レジスタに対応する第2のオペランドとを有する命令形式である命令コードを復号化するデコーダと、
前記デコーダによる前記命令の復号化に応答して、前記第1の制御データ要素の第1の符号ビットが第1の論理値である場合に、第1のデスティネーションレジスタに前記第1のソースデータ要素を格納し、前記第1の制御データ要素の第1の符号ビットが第2の論理値である場合に、前記第1のデスティネーションレジスタに前記第1のソースデータ要素を格納しないように第1のデスティネーションレジスタを制御する回路と、
前記デコーダによる前記命令の復号化に応答して、前記第2の制御データ要素の第2の符号ビットが第1の論理値である場合に、第2のデスティネーションレジスタに前記第2のソースデータ要素を格納し、前記第2の制御データ要素の第2の符号ビットが第2の論理値である場合に、前記第2のデスティネーションレジスタに前記第2のソースデータ要素を格納しないように第2のデスティネーションレジスタを制御する回路と、
前記制御レジスタにおける前記第1の制御データ要素及び前記第2の制御データ要素を順次ビットシフトするビットシフト回路と
を有する前記プロセッサと
を備え、
前記第1のデスティネーションレジスタを制御する回路及び前記第2のデスティネーションレジスタを制御する回路は、前記ビットシフト回路が前記ビットシフトをするごとに順次、前記第1の制御データ要素及び前記第2の制御データ要素の前記符号ビットを使用して第1のデスティネーションレジスタ及び前記第2のデスティネーションレジスタを制御するコンピュータシステム。 - 前記第1の複数ビットオペランドは、128ビットである請求項25に記載のコンピュータシステム。
- 前記第1の制御データ要素の前記第1の符号ビットは、一の第2のオペランドにおける最上位ビットである請求項25または26に記載のコンピュータシステム。
- 前記制御レジスタは、一の暗黙のレジスタである請求項25から27のいずれか一項に記載のコンピュータシステム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/526,065 | 2006-09-22 | ||
US11/526,065 US20080077772A1 (en) | 2006-09-22 | 2006-09-22 | Method and apparatus for performing select operations |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012015834A Division JP5709775B2 (ja) | 2006-09-22 | 2012-01-27 | 選択演算を実行するプロセッサ |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008140372A JP2008140372A (ja) | 2008-06-19 |
JP5383021B2 true JP5383021B2 (ja) | 2014-01-08 |
Family
ID=39226408
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007245615A Expired - Fee Related JP5383021B2 (ja) | 2006-09-22 | 2007-09-21 | 選択演算を実行する方法および装置 |
JP2012015834A Active JP5709775B2 (ja) | 2006-09-22 | 2012-01-27 | 選択演算を実行するプロセッサ |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012015834A Active JP5709775B2 (ja) | 2006-09-22 | 2012-01-27 | 選択演算を実行するプロセッサ |
Country Status (7)
Country | Link |
---|---|
US (1) | US20080077772A1 (ja) |
JP (2) | JP5383021B2 (ja) |
KR (1) | KR20090042333A (ja) |
CN (4) | CN102915226A (ja) |
BR (1) | BRPI0718446A2 (ja) |
DE (2) | DE112007002146T5 (ja) |
WO (1) | WO2008039354A1 (ja) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9747105B2 (en) * | 2009-12-17 | 2017-08-29 | Intel Corporation | Method and apparatus for performing a shift and exclusive or operation in a single instruction |
US20120254588A1 (en) * | 2011-04-01 | 2012-10-04 | Jesus Corbal San Adrian | Systems, apparatuses, and methods for blending two source operands into a single destination using a writemask |
US10209986B2 (en) | 2011-12-22 | 2019-02-19 | Intel Corporation | Floating point rounding processors, methods, systems, and instructions |
WO2013095657A1 (en) | 2011-12-23 | 2013-06-27 | Intel Corporation | Instruction and logic to provide vector blend and permute functionality |
US9395988B2 (en) | 2013-03-08 | 2016-07-19 | Samsung Electronics Co., Ltd. | Micro-ops including packed source and destination fields |
US9411600B2 (en) * | 2013-12-08 | 2016-08-09 | Intel Corporation | Instructions and logic to provide memory access key protection functionality |
US20170177350A1 (en) * | 2015-12-18 | 2017-06-22 | Intel Corporation | Instructions and Logic for Set-Multiple-Vector-Elements Operations |
US10120680B2 (en) * | 2016-12-30 | 2018-11-06 | Intel Corporation | Systems, apparatuses, and methods for arithmetic recurrence |
CN111078291B (zh) * | 2018-10-19 | 2021-02-09 | 中科寒武纪科技股份有限公司 | 运算方法、系统及相关产品 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6275834B1 (en) * | 1994-12-01 | 2001-08-14 | Intel Corporation | Apparatus for performing packed shift operations |
US5996066A (en) * | 1996-10-10 | 1999-11-30 | Sun Microsystems, Inc. | Partitioned multiply and add/subtract instruction for CPU with integrated graphics functions |
US6173393B1 (en) * | 1998-03-31 | 2001-01-09 | Intel Corporation | System for writing select non-contiguous bytes of data with single instruction having operand identifying byte mask corresponding to respective blocks of packed data |
US6484255B1 (en) * | 1999-09-20 | 2002-11-19 | Intel Corporation | Selective writing of data elements from packed data based upon a mask using predication |
JP2001142694A (ja) * | 1999-10-01 | 2001-05-25 | Hitachi Ltd | データフィールドのエンコード方法、情報フィールドの拡張方法、及び、コンピュータシステム |
US7155601B2 (en) * | 2001-02-14 | 2006-12-26 | Intel Corporation | Multi-element operand sub-portion shuffle instruction execution |
US20040054877A1 (en) * | 2001-10-29 | 2004-03-18 | Macy William W. | Method and apparatus for shuffling data |
US7853778B2 (en) * | 2001-12-20 | 2010-12-14 | Intel Corporation | Load/move and duplicate instructions for a processor |
US7441104B2 (en) * | 2002-03-30 | 2008-10-21 | Hewlett-Packard Development Company, L.P. | Parallel subword instructions with distributed results |
GB2409063B (en) * | 2003-12-09 | 2006-07-12 | Advanced Risc Mach Ltd | Vector by scalar operations |
GB2414308B (en) * | 2004-05-17 | 2007-08-15 | Advanced Risc Mach Ltd | Program instruction compression |
-
2006
- 2006-09-22 US US11/526,065 patent/US20080077772A1/en not_active Abandoned
-
2007
- 2007-09-20 DE DE112007002146T patent/DE112007002146T5/de not_active Withdrawn
- 2007-09-20 WO PCT/US2007/020416 patent/WO2008039354A1/en active Application Filing
- 2007-09-20 KR KR1020097005807A patent/KR20090042333A/ko active Search and Examination
- 2007-09-20 BR BRPI0718446-8A2A patent/BRPI0718446A2/pt not_active IP Right Cessation
- 2007-09-20 DE DE112007003786T patent/DE112007003786A5/de not_active Withdrawn
- 2007-09-21 CN CN2012103265645A patent/CN102915226A/zh active Pending
- 2007-09-21 CN CN201010535590XA patent/CN101980148A/zh active Pending
- 2007-09-21 CN CN201610615381.3A patent/CN106155631A/zh active Pending
- 2007-09-21 JP JP2007245615A patent/JP5383021B2/ja not_active Expired - Fee Related
- 2007-09-21 CN CNA2007101701530A patent/CN101154154A/zh active Pending
-
2012
- 2012-01-27 JP JP2012015834A patent/JP5709775B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2012119009A (ja) | 2012-06-21 |
CN101154154A (zh) | 2008-04-02 |
CN106155631A (zh) | 2016-11-23 |
BRPI0718446A2 (pt) | 2013-11-19 |
CN102915226A (zh) | 2013-02-06 |
CN101980148A (zh) | 2011-02-23 |
JP2008140372A (ja) | 2008-06-19 |
WO2008039354A1 (en) | 2008-04-03 |
JP5709775B2 (ja) | 2015-04-30 |
DE112007002146T5 (de) | 2009-07-02 |
KR20090042333A (ko) | 2009-04-29 |
DE112007003786A5 (de) | 2012-11-15 |
US20080077772A1 (en) | 2008-03-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5709775B2 (ja) | 選択演算を実行するプロセッサ | |
JP7423886B2 (ja) | 論理比較動作を実行するための装置 | |
TWI502499B (zh) | 執行將寫入罩暫存器轉換成向量暫存器中的索引值列表的系統、裝置及方法 | |
TWI470554B (zh) | 使用寫入罩混合兩來源運算元至單一目的地之系統、裝置及方法 | |
KR102354842B1 (ko) | 비트 셔플 프로세서, 방법, 시스템, 및 명령어 | |
TWI489383B (zh) | 遮蔽排列指令的裝置及方法 | |
TWI603208B (zh) | 利用索引和立即數執行向量排列的方法和設備 | |
TWI610228B (zh) | 用於執行向量位元反轉和交叉的方法和設備 | |
TWI514270B (zh) | 有效零基解壓縮 | |
TWI628593B (zh) | 用以履行向量位元反轉之方法及設備 | |
TWI486872B (zh) | 向量緊縮壓縮及重複之實施系統、設備和方法 | |
JP2017509064A (ja) | マスクド結果要素に伝搬する対応アンマスクド結果要素にソース要素を記憶するプロセッサ、方法、システム、及び命令 | |
CN111352658A (zh) | 用于在从存储器加载时在进行中转置向量的系统和方法 | |
TWI657372B (zh) | 用於執行向量位元聚集的方法、處理器和系統 | |
TW201732571A (zh) | 用於獲得偶數和奇數資料元素的系統、裝置及方法 | |
JP2018500665A (ja) | マスク値を圧縮するための方法および装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20100531 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100615 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20100914 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20100917 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20101014 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20101019 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20101112 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20101117 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20101215 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20110927 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120127 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20120130 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20120314 |
|
A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20120608 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20121203 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20121206 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130802 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20131001 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |