JP2022062223A - 論理比較動作を実行するための装置 - Google Patents
論理比較動作を実行するための装置 Download PDFInfo
- Publication number
- JP2022062223A JP2022062223A JP2022019581A JP2022019581A JP2022062223A JP 2022062223 A JP2022062223 A JP 2022062223A JP 2022019581 A JP2022019581 A JP 2022019581A JP 2022019581 A JP2022019581 A JP 2022019581A JP 2022062223 A JP2022062223 A JP 2022062223A
- Authority
- JP
- Japan
- Prior art keywords
- bit
- data
- register
- packed
- bits
- 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.)
- Granted
Links
- 230000000295 complement effect Effects 0.000 claims abstract description 22
- 230000004044 response Effects 0.000 claims description 8
- 238000012545 processing Methods 0.000 description 132
- 238000000034 method Methods 0.000 description 57
- 230000008569 process Effects 0.000 description 33
- 238000007667 floating Methods 0.000 description 24
- 238000004891 communication Methods 0.000 description 16
- 101000912503 Homo sapiens Tyrosine-protein kinase Fgr Proteins 0.000 description 7
- 102100026150 Tyrosine-protein kinase Fgr Human genes 0.000 description 7
- 238000013500 data storage Methods 0.000 description 5
- 230000006835 compression Effects 0.000 description 4
- 238000007906 compression Methods 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 230000006399 behavior Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 3
- 230000006837 decompression Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000007429 general method Methods 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 101100285899 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) SSE2 gene Proteins 0.000 description 2
- 230000003213 activating effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000001066 destructive effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 241000473391 Archosargus rhomboidalis Species 0.000 description 1
- 101100514059 Escherichia coli (strain K12) modE gene Proteins 0.000 description 1
- 102000001332 SRC Human genes 0.000 description 1
- 108060006706 SRC Proteins 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000008570 general process Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 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
- 230000000717 retained effect Effects 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 230000001360 synchronised effect Effects 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/30021—Compare instructions, e.g. Greater-Than, Equal-To, MINMAX
-
- 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/22—Microcontrol or microprogram arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0875—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with dedicated cache, e.g. instruction or stack
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/02—Comparing digital values
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/02—Comparing digital values
- G06F7/026—Magnitude comparison, i.e. determining the relative order of operands based on their numerical value, e.g. window comparator
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/06—Arrangements for sorting, selecting, merging, or comparing data on individual record carriers
-
- 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/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30029—Logical and Boolean instructions, e.g. XOR, NOT
-
- 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/3005—Arrangements for executing specific machine instructions to perform operations for flow control
- G06F9/30058—Conditional branch 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/30094—Condition code generation, e.g. Carry, Zero flag
-
- 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
-
- 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/30145—Instruction analysis, e.g. decoding, instruction word fields
-
- 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/30145—Instruction analysis, e.g. decoding, instruction word fields
- G06F9/30149—Instruction analysis, e.g. decoding, instruction word fields of variable length 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/30145—Instruction analysis, e.g. decoding, instruction word fields
- G06F9/3016—Decoding the operand specifier, e.g. specifier format
-
- 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/3877—Concurrent instruction execution, e.g. pipeline or look ahead using a slave processor, e.g. coprocessor
-
- 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/3885—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
- G06F9/3887—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled by a single instruction for multiple data lanes [SIMD]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/45—Caching of specific data in cache memory
- G06F2212/452—Instruction code
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (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)
- Mathematical Physics (AREA)
- Executing Machine-Instructions (AREA)
- Advance Control (AREA)
Abstract
Description
[定義]
ビット XからビットY:2進数のサブフィールドを定義する。例えば、バイト001110102(基数2)のビット6からビットゼロは、サブフィールド1110102を表す。ここで、二進数の後についている「2」は、数字が2を基数とすることを意味する。したがって、10002は810と等しい。また、F16は、1510と等しい。
Rx:レジスタを表す。レジスタは、データを格納し、かつ提供することができるいかなるデバイスでもよい。レジスタの更なる機能については後述する。レジスタが必ずしも同じダイ、あるいは、プロセッサと同じパッケージに含まれていなくてもよい。
SRCおよびDEST:記憶領域(例えば、メモリーアドレス、レジスタ、その他)を表す。
Source1―iおよびResult1―iおよびDestin:データを表す。
本願は、パックドまたはアンパックド・データの論理的比較動作のためのプロセッサ命令を含む方法、装置およびシステムの実施例が記載されている。より詳細には、命令は、論理的にデータを比較し、そして、その比較に基づいて、ゼロおよびキャリーフラグをセットしてもよい。少なくとも1つの実施例において、2つの論理的比較動作は、以下の表1aおよび表1bに示すように、単一の命令を使用して実行される。比較動作は、以下の処理を含む。すなわち、デスティネーションとソースオペランドとのビット毎の論理積と、および、デスティネーションの補数とソースオペランドとのビット毎の論理積を含む。表1aは開示された論理的比較動作の一実施例の簡略化された代表例を示す。一方、表1bは開示された論理的比較命令の実施例のビットレベルの例を示す。例示として、値を付記している。表1aおよび1bにおいて例示される実施例は、パックド・データを例示しているが、ソースおよびデスティネーションオペランドのデータはいかなるデータ表現でもよい、すなわち、必ずしもパックド・データでなければならないわけではない。ソースおよび/またはデスティネーションオペランドのデータが128ビットの単一のエントリーである。このため「パックド」データとして捉えられない。このため、本願明細書では、「アンパックド」データと呼ぶこととする。このことは、必ずしも単にデータがコンポーネント表現に再分割されていなくてもよく、単一のデータ値として捉えてもよいことを意味する。説明を簡単にするため、表1aのデータは32ビット値として表される。当業者は表1aおよび表1bにおいて例示されているコンセプトは、いかなる長さのデータにも適用されることを理解するであろう。たとえば、もっと短いデータ長(例えば、4ビット、8ビット、および16ビットの長さ)および、もっと長いデータ長(例えば、64ビットおよび128ビットの長さ)である。
[コンピュータシステム]
[データ記憶フォーマット]
[論理的比較、ゼロおよびキャリーフラグ設定オペレーション]
[論理的比較、ゼロおよびキャリーフラグ設定回路]
ここでyは、0x8、0x9、0xAまたは0xBである。3バイトエスケープオペコード値として値「0x0F38」を含むLCSZC命令オペコードの特定の実施例が本願明細書において開示される。なお、かかる開示は制限するものとして解釈されてはならない。他の実施例は、他のエスケープオペコード値を利用してもよい。
“マスクの下のすべてが「0」である場合、ZFをセットせよ;マスクの下のすべてが「1」である場合、CFをセットせよ”
一方、マスク値として第1の引数(デスティネーション)を使用するときに、結果として生じる動作は次のようになる。
“マスクの下のすべてが「1」である場合、ZFをセットせよ;マスクの下のすべてが「0」である場合、CFをセットせよ”
[別の実施例]
Claims (7)
- 第1のフィールドおよび第2のフィールドを有する命令フォーマットの命令コードを含むプログラムであって、
前記第1のフィールドは第1のマルチビットのオペランドを示し、前記第2のフィールドは第2のマルチビットのオペランドを示し、前記命令コードは、機械によって実行された場合、前記機械に対して、
前記第1のオペランドの1つ以上のビット位置の各々の値と、前記第2のオペランドの同じそれぞれのビット位置の値の補数とをビット毎に論理積演算した第1の中間結果が零であるとの判断に応答して、第1のステータスフラグを第1の値に修正させ、
前記第1の中間結果が零でないとの判断に応答して、前記第1のステータスフラグを第2の値に修正させる、プログラム。 - 前記第1のオペランドは、データエレメントとして少なくともA1およびA2を含み、各々Nビットの長さを有する第1の複数のデータエレメントを更に含み、
前記第2のオペランドは、少なくともB1およびB2を含み、各々Nビットの長さを有する第2の複数のデータエレメントを更に含む、請求項1記載のプログラム。 - 前記機械によって実行された場合、前記機械に対して、
命令コードに応答して、前記第1のステータスフラグに基づいて分岐動作を実行させる命令コードを更に含む、請求項1に記載のプログラム。 - 前記機械によって実行された場合、前記機械に対して、更に、
前記第1のマルチビットのオペランドおよび前記第2のマルチビットのオペランドの前記分岐動作および比較を単一のオペレーションコードに融合させる、請求項3に記載のプログラム。 - 前記第1のオペランドは、第1の複数のデータエレメントを更に含み、
前記第2のオペランドは、第2の複数のデータエレメントを更に含み、
前記第1および第2の複数のデータエレメントは、各々バイトの長さである、請求項3に記載のプログラム。 - 前記第1のオペランドは、第1の複数のデータエレメントを更に含み、
前記第2のオペランドは、第2の複数のデータエレメントを更に含み、
前記第1および第2の複数のデータエレメントは、各々ワードの長さである、請求項1に記載のプログラム。 - 請求項1乃至6のうちいずれか1項に記載のプログラムを記憶した機械読み取り可能な媒体。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/525,706 US7958181B2 (en) | 2006-09-21 | 2006-09-21 | Method and apparatus for performing logical compare operations |
US11/525,706 | 2006-09-21 | ||
JP2020036849A JP2020091908A (ja) | 2006-09-21 | 2020-03-04 | 論理比較動作を実行するための装置 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020036849A Division JP2020091908A (ja) | 2006-09-21 | 2020-03-04 | 論理比較動作を実行するための装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2022062223A true JP2022062223A (ja) | 2022-04-19 |
JP7423886B2 JP7423886B2 (ja) | 2024-01-30 |
Family
ID=39200856
Family Applications (7)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009529421A Active JP5284264B2 (ja) | 2006-09-21 | 2007-09-21 | 論理比較動作を実行するための方法と装置 |
JP2013077025A Pending JP2013178791A (ja) | 2006-09-21 | 2013-04-02 | 論理比較動作を実行するための装置 |
JP2014162358A Pending JP2015007993A (ja) | 2006-09-21 | 2014-08-08 | 論理比較動作を実行するための装置 |
JP2016255721A Active JP6416861B2 (ja) | 2006-09-21 | 2016-12-28 | 論理比較動作を実行するための装置 |
JP2018189273A Pending JP2019023909A (ja) | 2006-09-21 | 2018-10-04 | 論理比較動作を実行するための装置 |
JP2020036849A Pending JP2020091908A (ja) | 2006-09-21 | 2020-03-04 | 論理比較動作を実行するための装置 |
JP2022019581A Active JP7423886B2 (ja) | 2006-09-21 | 2022-02-10 | 論理比較動作を実行するための装置 |
Family Applications Before (6)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009529421A Active JP5284264B2 (ja) | 2006-09-21 | 2007-09-21 | 論理比較動作を実行するための方法と装置 |
JP2013077025A Pending JP2013178791A (ja) | 2006-09-21 | 2013-04-02 | 論理比較動作を実行するための装置 |
JP2014162358A Pending JP2015007993A (ja) | 2006-09-21 | 2014-08-08 | 論理比較動作を実行するための装置 |
JP2016255721A Active JP6416861B2 (ja) | 2006-09-21 | 2016-12-28 | 論理比較動作を実行するための装置 |
JP2018189273A Pending JP2019023909A (ja) | 2006-09-21 | 2018-10-04 | 論理比較動作を実行するための装置 |
JP2020036849A Pending JP2020091908A (ja) | 2006-09-21 | 2020-03-04 | 論理比較動作を実行するための装置 |
Country Status (6)
Country | Link |
---|---|
US (13) | US7958181B2 (ja) |
JP (7) | JP5284264B2 (ja) |
KR (1) | KR101064837B1 (ja) |
CN (3) | CN102207849B (ja) |
DE (1) | DE102007045187A1 (ja) |
WO (1) | WO2008036946A1 (ja) |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7958181B2 (en) | 2006-09-21 | 2011-06-07 | Intel Corporation | Method and apparatus for performing logical compare operations |
US8515052B2 (en) | 2007-12-17 | 2013-08-20 | Wai Wu | Parallel signal processing system and method |
US9690591B2 (en) * | 2008-10-30 | 2017-06-27 | Intel Corporation | System and method for fusing instructions queued during a time window defined by a delay counter |
CN101859325B (zh) * | 2010-06-07 | 2012-07-11 | 华为技术有限公司 | 一种数据表项的查找处理方法和装置 |
US20120030451A1 (en) * | 2010-07-28 | 2012-02-02 | Broadcom Corporation | Parallel and long adaptive instruction set architecture |
CN102566975A (zh) * | 2010-12-27 | 2012-07-11 | 北京国睿中数科技股份有限公司 | 一种跳转路径的分支跳转处理装置、方法和处理器 |
US9703558B2 (en) * | 2011-12-23 | 2017-07-11 | Intel Corporation | Systems, apparatuses, and methods for setting an output mask in a destination writemask register from a source write mask register using an input writemask and immediate |
WO2013095618A1 (en) | 2011-12-23 | 2013-06-27 | Intel Corporation | Instruction execution that broadcasts and masks data values at different levels of granularity |
WO2013101124A1 (en) * | 2011-12-29 | 2013-07-04 | Intel Corporation | Packed data operation mask comparison processors, methods, systems, and instructions |
US9886277B2 (en) * | 2013-03-15 | 2018-02-06 | Intel Corporation | Methods and apparatus for fusing instructions to provide OR-test and AND-test functionality on multiple test sources |
US9483266B2 (en) * | 2013-03-15 | 2016-11-01 | Intel Corporation | Fusible instructions and logic to provide OR-test and AND-test functionality using multiple test sources |
US9496023B2 (en) | 2014-06-05 | 2016-11-15 | Micron Technology, Inc. | Comparison operations on logical representations of values in memory |
US10380593B2 (en) | 2014-11-10 | 2019-08-13 | Mastercard International Incorporated | Systems and methods for detecting compromised automated teller machines |
US20160179542A1 (en) * | 2014-12-23 | 2016-06-23 | Patrick P. Lai | Instruction and logic to perform a fused single cycle increment-compare-jump |
US10445092B2 (en) * | 2014-12-27 | 2019-10-15 | Intel Corporation | Method and apparatus for performing a vector permute with an index and an immediate |
US10423411B2 (en) | 2015-09-26 | 2019-09-24 | Intel Corporation | Data element comparison processors, methods, systems, and instructions |
GB2543304B (en) * | 2015-10-14 | 2020-10-28 | Advanced Risc Mach Ltd | Move prefix instruction |
US10379854B2 (en) * | 2016-12-22 | 2019-08-13 | Intel Corporation | Processor instructions for determining two minimum and two maximum values |
CN108897522A (zh) * | 2018-06-14 | 2018-11-27 | 北京比特大陆科技有限公司 | 数据处理方法、数据处理装置以及电子设备 |
US11593105B2 (en) * | 2018-12-29 | 2023-02-28 | Intel Corporation | Vector logical operation and test instructions with result negation |
CN111506520B (zh) * | 2020-07-01 | 2020-09-22 | 腾讯科技(深圳)有限公司 | 一种地址生成的方法、相关装置以及存储介质 |
US20230072105A1 (en) * | 2021-08-31 | 2023-03-09 | Intel Corporation | Bfloat16 comparison instructions |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10116268A (ja) * | 1996-08-19 | 1998-05-06 | Samsung Electron Co Ltd | ベクトルレジスタの複数バンクを用いた単一命令複数データ処理 |
JP2001229135A (ja) * | 2000-02-16 | 2001-08-24 | Nec Corp | Simd型並列計算装置 |
Family Cites Families (37)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US502069A (en) * | 1893-07-25 | John dierdorf | ||
JPS6014338A (ja) * | 1983-06-30 | 1985-01-24 | インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション | 計算機システムにおける分岐機構 |
US4648059A (en) * | 1984-09-13 | 1987-03-03 | Motorola, Inc. | N-bit magnitude comparator |
JPS6491228A (en) | 1987-09-30 | 1989-04-10 | Takeshi Sakamura | Data processor |
CA2045773A1 (en) | 1990-06-29 | 1991-12-30 | Compaq Computer Corporation | Byte-compare operation for high-performance processor |
US5408670A (en) | 1992-12-18 | 1995-04-18 | Xerox Corporation | Performing arithmetic in parallel on composite operands with packed multi-bit components |
KR200152537Y1 (ko) | 1993-12-21 | 1999-07-15 | 구본준 | 2진수 비교기 회로 |
JP3096387B2 (ja) * | 1994-01-28 | 2000-10-10 | 三菱電機株式会社 | 数値演算処理装置 |
JP3000857B2 (ja) * | 1994-08-31 | 2000-01-17 | 松下電工株式会社 | プログラマブルコントローラ |
US5748950A (en) * | 1994-09-20 | 1998-05-05 | Intel Corporation | Method and apparatus for providing an optimized compare-and-branch instruction |
IL116210A0 (en) | 1994-12-02 | 1996-01-31 | Intel Corp | Microprocessor having a compare operation and a method of comparing packed data in a processor |
CN100412786C (zh) * | 1994-12-02 | 2008-08-20 | 英特尔公司 | 可以对复合操作数进行压缩操作的微处理器 |
GB9509989D0 (en) * | 1995-05-17 | 1995-07-12 | Sgs Thomson Microelectronics | Manipulation of data |
CN103092564B (zh) * | 1995-08-31 | 2016-04-06 | 英特尔公司 | 执行乘加指令的处理器和对分组数据执行乘加操作的系统 |
US5907842A (en) * | 1995-12-20 | 1999-05-25 | Intel Corporation | Method of sorting numbers to obtain maxima/minima values with ordering |
US6036350A (en) * | 1995-12-20 | 2000-03-14 | Intel Corporation | Method of sorting signed numbers and solving absolute differences using packed instructions |
US5835782A (en) * | 1996-03-04 | 1998-11-10 | Intel Corporation | Packed/add and packed subtract operations |
JPH1011628A (ja) | 1996-06-25 | 1998-01-16 | Fujitsu Ltd | 営業車両管理システム |
GB2317466B (en) | 1996-09-23 | 2000-11-08 | Advanced Risc Mach Ltd | Data processing condition code flags |
TW325552B (en) * | 1996-09-23 | 1998-01-21 | Advanced Risc Mach Ltd | Data processing condition code flags |
JP3658927B2 (ja) * | 1997-06-30 | 2005-06-15 | コニカミノルタホールディングス株式会社 | 電子写真感光体、画像形成方法及び画像形成装置 |
JPH1124923A (ja) * | 1997-07-09 | 1999-01-29 | Mitsubishi Electric Corp | マイクロプロセッサ |
US20010049780A1 (en) * | 1998-03-27 | 2001-12-06 | Shreekant Thakkar | Method and apparatus for performing integer operations in response to a result of a floating point operation |
US6189091B1 (en) * | 1998-12-02 | 2001-02-13 | Ip First, L.L.C. | Apparatus and method for speculatively updating global history and restoring same on branch misprediction detection |
US6230261B1 (en) * | 1998-12-02 | 2001-05-08 | I. P. First, L.L.C. | Method and apparatus for predicting conditional branch instruction outcome based on branch condition test type |
US6772325B1 (en) * | 1999-10-01 | 2004-08-03 | Hitachi, Ltd. | Processor architecture and operation for exploiting improved branch control instruction |
DE10157822A1 (de) * | 2001-11-24 | 2003-06-05 | Behr Gmbh & Co | Elektromagnetisch angesteuerte Flüssigkeitsreibungskupplung |
JP3851228B2 (ja) | 2002-06-14 | 2006-11-29 | 松下電器産業株式会社 | プロセッサ、プログラム変換装置及びプログラム変換方法、並びにコンピュータプログラム |
JP2004046747A (ja) * | 2002-07-16 | 2004-02-12 | Matsushita Electric Ind Co Ltd | ベクトル化方式 |
US7424501B2 (en) * | 2003-06-30 | 2008-09-09 | Intel Corporation | Nonlinear filtering and deblocking applications utilizing SIMD sign and absolute value operations |
GB2409063B (en) * | 2003-12-09 | 2006-07-12 | Advanced Risc Mach Ltd | Vector by scalar operations |
US7809932B1 (en) * | 2004-03-22 | 2010-10-05 | Altera Corporation | Methods and apparatus for adapting pipeline stage latency based on instruction type |
US7853578B1 (en) * | 2005-12-09 | 2010-12-14 | Marvell International Ltd. | High-performance pattern matching |
US7958181B2 (en) | 2006-09-21 | 2011-06-07 | Intel Corporation | Method and apparatus for performing logical compare operations |
US9069547B2 (en) * | 2006-09-22 | 2015-06-30 | Intel Corporation | Instruction and logic for processing text strings |
JP6014338B2 (ja) | 2012-03-05 | 2016-10-25 | 日本放送協会 | コンテンツ配信装置、コンテンツ配信システム、およびコンテンツ配信プログラム |
US20160179542A1 (en) * | 2014-12-23 | 2016-06-23 | Patrick P. Lai | Instruction and logic to perform a fused single cycle increment-compare-jump |
-
2006
- 2006-09-21 US US11/525,706 patent/US7958181B2/en active Active
-
2007
- 2007-09-21 JP JP2009529421A patent/JP5284264B2/ja active Active
- 2007-09-21 WO PCT/US2007/079235 patent/WO2008036946A1/en active Application Filing
- 2007-09-21 DE DE102007045187A patent/DE102007045187A1/de not_active Withdrawn
- 2007-09-21 CN CN201110127835.XA patent/CN102207849B/zh active Active
- 2007-09-21 KR KR1020097005715A patent/KR101064837B1/ko active IP Right Grant
- 2007-09-21 CN CN2010102834141A patent/CN101937329B/zh not_active Expired - Fee Related
- 2007-09-21 CN CN2007101441872A patent/CN101231583B/zh not_active Expired - Fee Related
-
2011
- 2011-04-08 US US13/082,726 patent/US8380780B2/en active Active
-
2012
- 2012-10-19 US US13/656,636 patent/US9043379B2/en active Active
- 2012-10-19 US US13/656,634 patent/US8606841B2/en active Active
-
2013
- 2013-02-08 US US13/763,596 patent/US9170813B2/en active Active
- 2013-02-08 US US13/763,598 patent/US9037627B2/en active Active
- 2013-03-15 US US13/843,236 patent/US9037626B2/en active Active
- 2013-04-02 JP JP2013077025A patent/JP2013178791A/ja active Pending
-
2014
- 2014-08-08 JP JP2014162358A patent/JP2015007993A/ja active Pending
-
2015
- 2015-04-12 US US14/684,412 patent/US9268565B2/en active Active
-
2016
- 2016-02-04 US US15/015,991 patent/US9489198B2/en active Active
- 2016-11-07 US US15/345,221 patent/US9898285B2/en active Active
- 2016-12-28 JP JP2016255721A patent/JP6416861B2/ja active Active
-
2018
- 2018-01-31 US US15/885,269 patent/US10146536B2/en active Active
- 2018-10-04 JP JP2018189273A patent/JP2019023909A/ja active Pending
- 2018-10-18 US US16/164,736 patent/US10416997B2/en active Active
- 2018-11-08 US US16/184,994 patent/US10572251B2/en active Active
-
2020
- 2020-03-04 JP JP2020036849A patent/JP2020091908A/ja active Pending
-
2022
- 2022-02-10 JP JP2022019581A patent/JP7423886B2/ja active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10116268A (ja) * | 1996-08-19 | 1998-05-06 | Samsung Electron Co Ltd | ベクトルレジスタの複数バンクを用いた単一命令複数データ処理 |
JP2001229135A (ja) * | 2000-02-16 | 2001-08-24 | Nec Corp | Simd型並列計算装置 |
Non-Patent Citations (1)
Title |
---|
影山裕昭: "x86アセンブラ講座 MMX命令を使ってみよう", OH!X, vol. 1999春号, JPN6022048863, 14 May 1999 (1999-05-14), JP, pages 252 - 258, ISSN: 0005082921 * |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7423886B2 (ja) | 論理比較動作を実行するための装置 | |
JP6741006B2 (ja) | マスクレジスタとベクトルレジスタとの間で可変に拡張するための方法および装置 | |
JP2017539013A (ja) | 競合検出を実行するための方法および装置 | |
TWI637317B (zh) | 用於將遮罩擴充為遮罩值之向量的處理器、方法、系統及裝置 | |
JP2018500666A (ja) | ベクトルビットギャザーを実行するための方法および装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220210 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20221122 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20230210 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230217 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20230210 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20230215 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20230613 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20231003 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20231013 |
|
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: 20231219 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20231222 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7423886 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |