JP2018160288A - プロセッサ、方法、プログラム、および機械可読記録媒体 - Google Patents
プロセッサ、方法、プログラム、および機械可読記録媒体 Download PDFInfo
- Publication number
- JP2018160288A JP2018160288A JP2018138039A JP2018138039A JP2018160288A JP 2018160288 A JP2018160288 A JP 2018160288A JP 2018138039 A JP2018138039 A JP 2018138039A JP 2018138039 A JP2018138039 A JP 2018138039A JP 2018160288 A JP2018160288 A JP 2018160288A
- Authority
- JP
- Japan
- Prior art keywords
- bit
- range
- bits
- instruction
- source operand
- 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
- 238000000034 method Methods 0.000 title abstract description 36
- 230000004044 response Effects 0.000 claims abstract description 7
- 238000000926 separation method Methods 0.000 claims description 85
- 230000008878 coupling Effects 0.000 claims 1
- 238000010168 coupling process Methods 0.000 claims 1
- 238000005859 coupling reaction Methods 0.000 claims 1
- 238000012545 processing Methods 0.000 abstract description 39
- 230000008569 process Effects 0.000 description 13
- 238000010586 diagram Methods 0.000 description 12
- 238000002955 isolation Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 8
- 238000006243 chemical reaction Methods 0.000 description 6
- 230000008901 benefit Effects 0.000 description 4
- 238000013500 data storage Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000000605 extraction Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 101100269850 Caenorhabditis elegans mask-1 gene Proteins 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000009249 intrinsic sympathomimetic activity Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 229920001690 polydopamine Polymers 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 229920006395 saturated elastomer Polymers 0.000 description 1
- 239000011343 solid material Substances 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/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/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30018—Bit or string 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
- 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/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/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3802—Instruction prefetching
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)
Abstract
Description
RESULT2=SHIFT_RIGHT RESULT1,START
RESULT2=BZHI RESULT1,LENGTH
本実施形態の例を下記の各項目として示す。
[項目1]
方法であって、
データを有する第1のソースオペランドと、第1範囲のビットの1以上の端部に対応する位置を示すメモリ又はレジスタ内の1以上の値を明示的に指定する第2のソースオペランドと、デスティネーションオペランドとを含むオペランドを示す命令を受信する段階と、
第1の端部が前記メモリ又はレジスタ内の前記1以上の値により明示的に指定され、各ビットの値が前記第1のソースオペランドの対応する位置にあるビットの値と等しい前記第1範囲のビットと、前記第1のソースオペランドの対応する位置にあるビットの値に関わらず全てが同じ値を持つ第2範囲のビットとを含む結果を、前記命令に呼応して前記デスティネーションオペランドに格納する段階と、
前記結果の前記第1範囲のビットの位置に関わらず、前記第1のソースオペランドの対応する位置にある同じ値のビットに対して前記結果の前記第1範囲を移動させることなく、前記命令の実行を完了させる段階と、
を備える方法。
[項目2]
前記命令の実行を完了させる段階は、
前記第1範囲のビットが前記結果内の中間範囲にあるかないかに関わらずシフト処理を行うことなく前記命令の実行を完了させる段階を有し、
前記命令の実行を完了させる段階はメモリ内のテーブルルックアップを利用せずに行われる項目1に記載の方法。
[項目3]
前記命令を受信する段階は、
前記第1範囲のビットの第2の端部を暗示的に示す命令を受信する段階を有する項目1または2に記載の方法。
[項目4]
前記命令を受信する段階は、
前記第1範囲のビットの前記第2の端部を、最下位ビットおよび最上位ビットのいずれかとして暗示的に示す命令を受信する段階を有する項目3に記載の方法。
[項目5]
前記命令は、2つのソースオペランドのみの明示的な指定を許可するフォーマットを有する項目1から4のいずれか1項に記載の方法。
[項目6]
前記命令を受信する段階は、
前記第2のソースオペランドを明示的に指定する命令を受信する段階を有する項目1から5のいずれか1項に記載の方法。
[項目7]
前記第2のソースオペランドは、前記第1の端部に対応するビットの位置、および、前記第1の端部を端部として持つビット列のビット長のうちいずれかを表す値を持つ項目1から6のいずれか1項に記載の方法。
[項目8]
前記命令を受信する段階は、
前記第2のソースオペランドによって前記第1範囲のビットの2つの端部を明示的に指定する命令を受信する段階を有する項目1または2に記載の方法。
[項目9]
前記結果を格納する段階は、
全ての値がゼロ(0)である第2範囲のビットを格納する段階を有する項目1から8のいずれか1項に記載の方法。
[項目10]
前記第1のソースオペランドを前記デスティネーションオペランドにコピーする段階と、
マスクを生成する段階と、
前記マスクと前記デスティネーションオペランドとにAND演算を行う段階とを備え、
前記マスクは、(a)各々が前記第1範囲のビットにおける対応する位置にあるビットに対応しており、各々が1の値を持つ第1セットのビットと、(b)各々が前記第2範囲のビットにおける対応する位置にあるビットに対応しており、各々がゼロ(0)の値を持つ第2セットのビットとを含む項目9に記載の方法。
[項目11]
前記方法は、複数のコアを含む汎用マイクロプロセッサにより実行され、
前記複数のコアのうち少なくとも1つのコアは前記命令に呼応する回路を有する項目1から10のいずれか1項に記載の方法。
[項目12]
データを有する第1のソースオペランドと、第1範囲のビットの1以上の端部に対応する位置を示すメモリ又はレジスタ内の1以上の値を明示的に指定する第2のソースオペランドと、デスティネーションオペランドとを含むオペランドを示す命令を受信する復号器と、
前記命令の結果、前記命令が示すデスティネーションオペランドに結果を格納する実行ユニットと
を備え、
前記結果は、前記第1範囲のビットと第2範囲のビットとを含み、
前記第1範囲のビットの第1の端部は、前記メモリ又はレジスタ内の前記1以上の値により明示的に指定され、前記第1範囲の各ビットの値は、前記命令が示す前記第1のソースオペランドの対応する位置にあるビットの値と等しく、
前記第2範囲のビットは全て、前記第1のソースオペランドの対応する位置にあるビットの値に関わらず、同じ値を持ち、
前記実行ユニットは、前記結果の前記第1範囲のビットの位置に関わらず、前記第1のソースオペランドの対応する位置にある同じ値のビットに対して前記結果の前記第1範囲を移動させることなく、前記命令の実行を完了させる装置。
[項目13]
前記実行ユニットは、前記第1範囲のビットが前記結果内の中間範囲にあるかないかに関わらずシフト処理を行うことなく前記命令の実行を完了させ、
前記実行ユニットは、メモリ内のテーブルルックアップを行わずに前記結果を格納する項目12に記載の装置。
[項目14]
前記命令は、前記第1範囲のビットの第2の端部を暗示的に示す項目12または13に記載の装置。
[項目15]
前記命令は、前記第2の端部を、最下位ビットおよび最上位ビットのいずれかとして暗示的に示す項目14に記載の装置。
[項目16]
前記命令は、2つのソースオペランドのみの明示的な指定を許可するフォーマットを有する項目12から15のいずれか1項に記載の装置。
[項目17]
前記実行ユニットは、前記命令により明示的に指定された前記第2のソースオペランドから前記第1範囲のビットの前記第1の端部を決定する項目12から16のいずれか1項に記載の装置。
[項目18]
前記第2のソースオペランドは、前記第1の端部に対応するビットの位置、および、前記第1の端部を端部として持つビット列のビット長のうちいずれかを表す値を持つ項目12から17のいずれか1項に記載の装置。
[項目19]
前記命令は、前記命令により明示的に指定された前記第2のソースオペランドによって前記第1範囲のビットの2つの端部を明示的に指定する項目12または13に記載の装置。
[項目20]
前記実行ユニットは、前記第2範囲のビット全ての値がゼロ(0)である結果を格納する項目12から19のいずれか1項に記載の装置。
[項目21]
前記実行ユニットは、
前記第1のソースオペランドと前記デスティネーションオペランドとに連結されて前記第1のソースオペランドを前記デスティネーションオペランドにコピーするコピーロジックと、
前記デスティネーションオペランドに連結されて前記デスティネーションオペランドの前記第2範囲のビットをゼロにするゼロロジックと
を備え、
前記ゼロロジックは、
マスクを生成するマスク生成ロジックと、
前記マスクと前記デスティネーションオペランドとに連結されて前記マスクと前記デスティネーションオペランドのデータとにAND演算を行うAND演算ロジックとを有し、
前記マスクは、(a)各々が前記第1範囲のビットにおける対応する位置にあるビットに対応しており、各々が1の値を持つ第1セットのビットと、(b)各々が前記第2範囲のビットにおける対応する位置にあるビットに対応しており、各々がゼロ(0)の値を持つ第2セットのビットとを含む項目20に記載の装置。
[項目22]
前記格納では、全てが1の値を持つ第2範囲のビットが格納される項目12から19のいずれか1項に記載の装置。
[項目23]
前記命令は機械命令を含み、
前記実行ユニットは、前記機械命令に呼応する回路を有する項目12から22のいずれか1項に記載の装置。
[項目24]
前記実行ユニットは、マルチコア汎用マイクロプロセッサのコアに含まれる項目12から23のいずれか1項に記載の装置。
[項目25]
装置であって、
命令の結果、結果をデスティネーションオペランドに格納する実行ユニットを備え、
前記命令は、レジスタの第1のソースオペランドと、レジスタおよびメモリのうちいずれかの第2のソースオペランドとを示しており、
前記第1のソースオペランドは16ビット、32ビット、および64ビットのうちいずれかであり、
前記第2のソースオペランドは32ビットおよび64ビットのうちいずれかであり、
前記結果は、第1範囲のビットと第2範囲のビットとを含み、
前記第1範囲のビットの第1の端部は、前記命令が暗示的に示す最下位ビットにあり、第2の端部は、前記第1のソースオペランドの最下位バイトで明示的に指定された値が示すビット位置より1ビット手前であり、
前記第1範囲の各ビットの値は、前記第2のソースオペランドの対応する位置にあるビットの値と等しく、
前記第2範囲のビットは、示された前記ビット位置から最上位ビットまでの範囲であり、前記第2範囲の全てのビットはゼロの値に等しく、
前記命令は、ソースオペランドとして、前記第1のソースオペランドと前記第2のソースオペランドを示す装置。
[項目26]
前記実行ユニットは前記命令の結果、シフト処理を行わない項目25に記載の装置。
[項目27]
インターコネクトと、
前記インターコネクトに連結され、データを有する第1のソースオペランドと、第1範囲のビットの1以上の端部に対応する位置を示すメモリ又はレジスタ内の1以上の値を明示的に指定する第2のソースオペランドと、デスティネーションオペランドとを含むオペランドを示す命令を受信するプロセッサと、
前記インターコネクトに連結されたDRAMとを備え、
前記プロセッサは、前記命令の結果、前記命令が示すデスティネーションオペランドに結果を格納し、
前記結果は、第1範囲のビットと第2範囲のビットとを含み、
前記第1範囲のビットの第1の端部は、前記メモリ又はレジスタ内の前記1以上の値により明示的に指定され、前記第1範囲の各ビットの値は、前記命令が示す前記第1のソースオペランドの対応する位置にあるビットの値と等しく、
前記第2範囲のビットは全て、前記第1のソースオペランドの対応する位置にあるビットの値に関わらず、同じ値を持ち、
前記プロセッサは、前記結果の前記第1範囲のビットの位置に関わらず、前記第1のソースオペランドの対応する位置にある同じ値のビットに対して前記結果の前記第1範囲を移動させることなく、前記命令の実行を完了させるシステム。
[項目28]
前記命令は、前記第1範囲のビットの第2の端部を暗示的に示す項目27に記載のシステム。
[項目29]
コンピュータに、データを有する第1のソースオペランドと、第1範囲のビットの1以上の端部に対応する位置を示すメモリ又はレジスタ内の1以上の値を明示的に指定する第2のソースオペランドと、デスティネーションオペランドとを含むオペランドを示す命令を処理させて、前記コンピュータに、
第1の端部が前記メモリ又はレジスタ内の前記1以上の値により明示的に指定され、各ビットの値が前記第1のソースオペランドの対応する位置にあるビットの値と等しい前記第1範囲のビットと、前記第1のソースオペランドの対応する位置にあるビットの値に関わらず全てが同じ値を持つ第2範囲のビットとを含む結果を、前記デスティネーションオペランドに格納する段階と、
前記結果の前記第1範囲のビットの位置に関わらず、前記第1のソースオペランドの対応する位置にある同じ値のビットに対して前記結果の前記第1範囲を移動させることなく、前記命令の実行を完了させる段階と
を実行させるためのプログラム。
[項目30]
前記第1範囲のビットの第2の端部を暗示的に示す段階を実行させる項目29に記載のプログラム。
Claims (18)
- プロセッサであって、
命令フェッチロジックと、
分岐予測ロジックと、
制御レジスタ、フラグレジスタ、及び64ビットの汎用レジスタを有する複数のレジスタであって、前記64ビットの汎用レジスタの下位32ビットは、32ビットオペランドに対して動作するようにアドレス指定可能であり、前記フラグレジスタは、キャリーフラグ、ゼロフラグ、符号フラグ、およびオーバフローフラグを含む一群のステータスフラグに関連付けられた複数のビットを有する32ビットのレジスタである、前記複数のレジスタと、
ビット範囲分離命令を受信して復号するための命令復号器であって、前記命令は、対象の範囲のビットの第1の端部を明示的に指定すべく即値を有し、前記命令に関連付けられた即値により、対象の前記範囲のビットの第2の端部を明示的に指定する、前記命令復号器と、
前記命令のソースオペランドに対するビット範囲分離処理を実行するための実行ユニットであって、前記命令は、32ビットオペランドサイズおよび64ビットオペランドサイズを含む複数のソースオペランドサイズのうちの1つを示す、前記実行ユニットと、
を備え、
前記実行ユニットは、
マスクを生成するためのマスク生成ロジックと、
前記ソースオペランドおよび前記マスクを受信し、前記ソースオペランドおよび前記マスクに対してビットワイズ演算を実行して、各ビットの値が前記ソースオペランドの対応する位置にあるビットの値と等しい第1範囲のビットと、前記ソースオペランドの対応する位置にあるビットの値に関わらず全てが同じ値を持ち、前記第1範囲のビットおよび前記第2の端部より上位である第2範囲のビットとを含む結果を生成するためのビットワイズ演算ロジックと、
を有し、
前記同じ値は、前記命令により、バイナリの1にされることができ、
前記命令について、前記第1範囲のビットより下位のビットのいずれも、破棄されない、または前記同じ値を有するようにされない
プロセッサ。 - レジスタ・リネームロジック、スケジュールロジック、リオーダ・バッファ、および退避ロジックをさらに備える
請求項1に記載のプロセッサ。 - 前記マスクは、各々が対象の範囲のビットの対応する位置にあるビットに対応し、各々が1の値を有する第1範囲のビットと、各々が対象外の範囲のビットの対応する位置にあるビットに対応し、ゼロの値を有する第2範囲のビットとを有する
請求項1に記載のプロセッサ。 - 前記ビット範囲分離命令の実行は、前記結果の前記第1範囲をシフトすることなく完了する
請求項1から3のいずれか1項に記載のプロセッサ。 - 装置であって、
前記装置をネットワークに連結するネットワークコントローラと、
DRAMへのアクセスを提供するためのメモリコントローラと、
データを格納するための共有キャッシュと、
前記メモリコントローラおよび前記共有キャッシュに連結された複数のプロセッサコアと、
を備え、
前記複数のプロセッサコアのうちの少なくとも1つは、
L1キャッシュと、
命令フェッチロジックと、
分岐予測ロジックと、
制御レジスタ、フラグレジスタ、及び64ビットの汎用レジスタを有する複数のレジスタであって、前記64ビットの汎用レジスタの下位32ビットは、32ビットオペランドに対して動作するようにアドレス指定可能であり、前記フラグレジスタは、キャリーフラグ、ゼロフラグ、符号フラグ、およびオーバフローフラグを含む一群のステータスフラグに関連付けられた複数のビットを有する32ビットのレジスタである、前記複数のレジスタと、
ビット範囲分離命令を受信して復号するための命令復号器であって、前記命令は、前記命令に関連付けられた即値により、対象の範囲のビットの第1の端部を明示的に指定し、前記命令に関連付けられた即値により、対象の前記範囲のビットの第2の端部を明示的に指定する、前記命令復号器と、
前記命令のソースオペランドに対するビット範囲分離処理を実行するための実行ユニットであって、前記命令は、32ビットオペランドサイズおよび64ビットオペランドサイズを含む複数のソースオペランドサイズのうちの1つを示す、前記実行ユニットと、
を有し、
前記実行ユニットは、
マスクを生成するためのマスク生成ロジックと、
前記ソースオペランドおよび前記マスクを受信し、前記ソースオペランドおよび前記マスクに対してビットワイズ演算を実行して、各ビットの値が前記ソースオペランドの対応する位置にあるビットの値と等しい第1範囲のビットと、前記ソースオペランドの対応する位置にあるビットの値に関わらず全てが同じ値を持ち、前記第1範囲のビットおよび前記第2の端部より上位である第2範囲のビットとを含む結果を生成するためのビットワイズ演算ロジックと、
を含み
前記命令は、前記同じ値をバイナリの0にしないようにすることができ、
前記命令について、前記第1範囲のビットより下位のビットのいずれも、破棄されない、または前記同じ値を有するようにされない
装置。 - 前記複数のプロセッサコアのうちの前記少なくとも1つは、レジスタ・リネームロジック、スケジュールロジック、リオーダ・バッファ、および退避ロジックをさらに備える
請求項5に記載の装置。 - 前記マスクは、各々が対象の範囲のビットの対応する位置にあるビットに対応し、各々が1の値を有する第1範囲のビットと、各々が対象外の範囲のビットの対応する位置にあるビットに対応し、ゼロの値を有する第2範囲のビットとを有する
請求項5に記載の装置。 - 前記ビット範囲分離命令の実行は、前記結果の前記第1範囲をシフトすることなく完了する
請求項5から7のいずれか1項に記載の装置。 - システムであって、
DRAMと、
前記DRAMに連結されたメモリコントローラと、
データを格納するためのフラッシュメモリデバイスと、
無線トランシーバと、
ユーザ入力デバイスと、
前記システムをネットワークに連結するためのネットワークコントローラと、
データを格納するための共有キャッシュと、
前記メモリコントローラおよび前記共有キャッシュに連結された複数のプロセッサコアと、
を備え、
前記複数のプロセッサコアのうちの少なくとも1つは、
L1キャッシュと、
命令フェッチロジックと、
分岐予測ロジックと、
制御レジスタ、フラグレジスタ、及び64ビットの汎用レジスタを有する複数のレジスタであって、前記64ビットの汎用レジスタの下位32ビットは、32ビットオペランドに対して動作するようにアドレス指定可能であり、前記フラグレジスタは、キャリーフラグ、ゼロフラグ、符号フラグ、およびオーバフローフラグを含む一群のステータスフラグに関連付けられた複数のビットを有する32ビットのレジスタである、前記複数のレジスタと、
ビット範囲分離命令を受信して復号するための命令復号器であって、前記命令は、前記命令に関連付けられた即値により、対象の範囲のビットの第1の端部を明示的に指定し、前記命令に関連付けられた即値により、対象の前記範囲のビットの第2の端部を明示的に指定する、前記命令復号器と、
前記命令のソースオペランドに対するビット範囲分離処理を実行するための実行ユニットであって、前記命令は、32ビットオペランドサイズおよび64ビットオペランドサイズを含む複数のソースオペランドサイズのうちの1つを示す、前記実行ユニットと、
を有し、
前記実行ユニットは、
マスクを生成するためのマスク生成ロジックと、
前記ソースオペランドおよび前記マスクを受信し、前記ソースオペランドおよび前記マスクに対してビットワイズ演算を実行して、各ビットの値が前記ソースオペランドの対応する位置にあるビットの値と等しい第1範囲のビットと、前記ソースオペランドの対応する位置にあるビットの値に関わらず全てが同じ値を持ち、前記第1範囲のビットおよび前記第2の端部より上位である第2範囲のビットとを含む結果を生成するためのビットワイズ演算ロジックと、
を含み、
前記同じ値は、前記命令により、バイナリの1にされることができ、
前記命令について、前記第1範囲のビットより下位のビットのいずれも、破棄されない、または前記同じ値を有するようにされない
システム。 - 前記複数のプロセッサコアのうちの前記少なくとも1つは、レジスタ・リネームロジック、スケジュールロジック、リオーダ・バッファ、および退避ロジックをさらに備える
請求項9に記載のシステム。 - 前記システムを入力/出力デバイスに連結するためのUSBポートをさらに備える
請求項9に記載のシステム。 - 前記ビット範囲分離命令の実行は、前記結果の前記第1範囲をシフトすることなく完了する
請求項9から11のいずれか1項に記載のシステム。 - 前記マスクは、各々が対象の範囲のビットの対応する位置にあるビットに対応し、各々が1の値を有する第1範囲のビットと、各々が対象外の範囲のビットの対応する位置にあるビットに対応し、ゼロの値を有する第2範囲のビットとを有する
請求項9に記載のシステム。 - 装置であって、
第1のソースオペランドを示し、かつ第2のソースオペランドを示す命令を復号するための復号器と、
前記復号器に連結され、前記命令に呼応して結果をデスティネーションに格納するように動作可能な実行ユニットと、
を備え、
前記結果は、
第1の端部と第2の端部とを有する第1範囲のビットであって、前記第2のソースオペランドは、前記第1の端部を明示的に指定する数を提供し、前記第2の端部は、前記命令によって最下位ビットとして暗示的に示され、前記第1範囲のビットの各ビットは、前記第1のソースオペランドの対応する位置にあるビットの値と等しい、前記第1範囲のビットと、
前記第1のソースオペランドの対応する位置にあるビットの値に関わらず全てのビットが同じ値を持つ第2範囲のビットと、
を有し、
前記装置は、前記第1の端部を明示的に指定する前記数が、前記第1のソースオペランドのオペランドサイズより大きい場合にはフラグを設定する
装置。 - 前記第2のソースオペランドは、レジスタ内にある
請求項14に記載の装置。 - 前記第1のソースオペランドのデータは、前記命令のための、32ビットデータおよび64ビットデータのうちいずれかである
請求項14または15に記載の装置。 - 前記第1のソースオペランドの前記データは64ビットデータである
請求項16に記載の装置。 - 装置であって、
レジスタ内の第1のソースオペランドを示し、かつレジスタまたはメモリ内の第2のソースオペランドを示す命令を復号するための復号器であって、前記第1のソースオペランドは、16ビット、32ビット、および64ビットのうちいずれかを有し、前記第2のソースオペランドは、32ビットおよび64ビットのうちいずれかを有する、前記復号器と、
前記復号器に連結され、前記命令に呼応して結果をデスティネーションに格納するように動作可能な実行ユニットと、
を備え、
前記結果は、
第1の端部と第2の端部とを有する第1範囲のビットであって、前記第1の端部は、前記命令により暗示的に示される最下位ビットにあり、前記第2の端部は、前記第1のソースオペランドの最下位バイトの値が示すビット位置より1ビット手前であり、前記第1範囲のビットの各ビットは、前記第2のソースオペランドの対応する位置にあるビットの値と等しい、前記第1範囲のビットと、
前記第2のソースオペランドの対応する位置にあるビットの値に関わらず全てのビットがゼロの値を持つ、前記示されたビット位置から最上位ビットまでの第2範囲のビットと、
を有し、
前記装置は、前記第1のソースオペランドの前記最下位バイトの前記値が前記第2のソースオペランドのオペランドサイズより大きい場合にはフラグを設定する
装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/645,307 | 2009-12-22 | ||
US12/645,307 US9003170B2 (en) | 2009-12-22 | 2009-12-22 | Bit range isolation instructions, methods, and apparatus |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015219702A Division JP6375280B2 (ja) | 2009-12-22 | 2015-11-09 | プロセッサ、システム、および装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018160288A true JP2018160288A (ja) | 2018-10-11 |
JP6569969B2 JP6569969B2 (ja) | 2019-09-04 |
Family
ID=44152791
Family Applications (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010255319A Active JP5456643B2 (ja) | 2009-12-22 | 2010-11-15 | ビット範囲分離命令、方法、および装置 |
JP2014001946A Active JP6134947B2 (ja) | 2009-12-22 | 2014-01-08 | システム |
JP2015219702A Active JP6375280B2 (ja) | 2009-12-22 | 2015-11-09 | プロセッサ、システム、および装置 |
JP2018138039A Active JP6569969B2 (ja) | 2009-12-22 | 2018-07-23 | プロセッサ、方法、プログラム、および機械可読記録媒体 |
Family Applications Before (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010255319A Active JP5456643B2 (ja) | 2009-12-22 | 2010-11-15 | ビット範囲分離命令、方法、および装置 |
JP2014001946A Active JP6134947B2 (ja) | 2009-12-22 | 2014-01-08 | システム |
JP2015219702A Active JP6375280B2 (ja) | 2009-12-22 | 2015-11-09 | プロセッサ、システム、および装置 |
Country Status (5)
Country | Link |
---|---|
US (5) | US9003170B2 (ja) |
JP (4) | JP5456643B2 (ja) |
CN (3) | CN104461461B (ja) |
DE (1) | DE102010053967A1 (ja) |
TW (1) | TWI502493B (ja) |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9003170B2 (en) | 2009-12-22 | 2015-04-07 | Intel Corporation | Bit range isolation instructions, methods, and apparatus |
CN103946795B (zh) * | 2011-12-14 | 2018-05-15 | 英特尔公司 | 用于生成循环对齐计数或循环对齐掩码的系统、装置和方法 |
CN104126168B (zh) * | 2011-12-22 | 2019-01-08 | 英特尔公司 | 打包数据重新安排控制索引前体生成处理器、方法、系统及指令 |
US10866807B2 (en) | 2011-12-22 | 2020-12-15 | Intel Corporation | Processors, methods, systems, and instructions to generate sequences of integers in numerical order that differ by a constant stride |
CN104011643B (zh) * | 2011-12-22 | 2018-01-05 | 英特尔公司 | 打包数据重新安排控制索引产生处理器、方法、系统及指令 |
US10223111B2 (en) | 2011-12-22 | 2019-03-05 | Intel Corporation | Processors, methods, systems, and instructions to generate sequences of integers in which integers in consecutive positions differ by a constant integer stride and where a smallest integer is offset from zero by an integer offset |
CN104011646B (zh) | 2011-12-22 | 2018-03-27 | 英特尔公司 | 用于产生按照数值顺序的连续整数的序列的处理器、方法、系统和指令 |
CN104011668B (zh) * | 2011-12-22 | 2017-03-22 | 英特尔公司 | 用于将源操作数映射到不同范围的系统、装置和方法 |
US9354877B2 (en) * | 2011-12-23 | 2016-05-31 | Intel Corporation | Systems, apparatuses, and methods for performing mask bit compression |
US9778932B2 (en) * | 2013-01-23 | 2017-10-03 | International Business Machines Corporation | Vector generate mask instruction |
US9207942B2 (en) * | 2013-03-15 | 2015-12-08 | Intel Corporation | Systems, apparatuses,and methods for zeroing of bits in a data element |
CN104346208B (zh) * | 2013-07-31 | 2017-09-15 | 上海华虹集成电路有限责任公司 | 仿真器系统及仿真芯片 |
US9706228B2 (en) * | 2013-10-15 | 2017-07-11 | Qualcomm Incorporated | Support for large numbers of views in multi-layer coding |
EP3001307B1 (en) | 2014-09-25 | 2019-11-13 | Intel Corporation | Bit shuffle processors, methods, systems, and instructions |
US9952987B2 (en) * | 2014-11-25 | 2018-04-24 | Intel Corporation | Posted interrupt architecture |
US9904548B2 (en) | 2014-12-22 | 2018-02-27 | Intel Corporation | Instruction and logic to perform a centrifuge operation |
US9727353B2 (en) | 2015-10-30 | 2017-08-08 | International Business Machines Corporation | Simultaneously capturing status information for multiple operating modes |
US10761849B2 (en) | 2016-09-22 | 2020-09-01 | Intel Corporation | Processors, methods, systems, and instruction conversion modules for instructions with compact instruction encodings due to use of context of a prior instruction |
CN107193530B (zh) * | 2017-04-28 | 2020-04-24 | 广州酷狗计算机科技有限公司 | 一种生成随机数的方法和装置 |
DE102018208851A1 (de) | 2018-06-05 | 2019-12-05 | Infineon Technologies Ag | Vorrichtung und Verfahren zum Umwandeln von Eingangsbitfolgen |
CN110968347B (zh) * | 2019-12-02 | 2021-09-17 | 秒针信息技术有限公司 | 一种数据处理的方法及装置 |
CN111209041B (zh) * | 2019-12-31 | 2022-05-17 | Oppo广东移动通信有限公司 | 神经网络处理器、片上系统及电子设备 |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS512771B1 (ja) * | 1968-08-01 | 1976-01-28 | ||
JPS6188338A (ja) * | 1984-07-09 | 1986-05-06 | アドバンスト・マイクロ・デイバイシズ・インコ−ポレ−テツド | 単一チツプの32ビツト拡張機能算術・論理ユニツト |
JPS61103241A (ja) * | 1984-10-27 | 1986-05-21 | Nec Corp | 情報処理装置 |
JPS6491228A (en) * | 1987-09-30 | 1989-04-10 | Takeshi Sakamura | Data processor |
JPH02299082A (ja) * | 1989-05-12 | 1990-12-11 | Fujitsu Ltd | 可変長データを処理するプロセッサ |
JPH05100854A (ja) * | 1990-05-02 | 1993-04-23 | Motorola Inc | Riscマイクロプロセツサおよび演算方法 |
JPH05150942A (ja) * | 1991-05-08 | 1993-06-18 | Hitachi Ltd | 演算装置、ビツトフイールド操作演算方法、デコーダ、及び半導体集積回路装置 |
JPH06131178A (ja) * | 1990-06-29 | 1994-05-13 | Digital Equip Corp <Dec> | マルチプロセッサ又はパイプラインプロセッサシステムにおい てデータの完全性を確保する方法 |
JPH06222918A (ja) * | 1992-12-18 | 1994-08-12 | Xerox Corp | 複合オペランド内の多ビット要素を選択するためのマスク |
JPH1196000A (ja) * | 1991-06-24 | 1999-04-09 | Hitachi Ltd | Cpu及びマイクロコンピュータ |
US5930492A (en) * | 1997-03-19 | 1999-07-27 | Advanced Micro Devices, Inc. | Rapid pipeline control using a control word and a steering word |
JP2004013185A (ja) * | 2002-06-03 | 2004-01-15 | Matsushita Electric Ind Co Ltd | プロセッサ |
JP2006127460A (ja) * | 2004-06-09 | 2006-05-18 | Renesas Technology Corp | 半導体装置、半導体信号処理装置、およびクロスバースイッチ |
US20090006822A1 (en) * | 2006-01-27 | 2009-01-01 | Freescale Semiconductor , Inc. | Device and Method for Adding and Subtracting Two Variables and a Constant |
Family Cites Families (56)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR1590660A (ja) | 1968-08-02 | 1970-04-20 | ||
JPS512771A (ja) | 1974-06-27 | 1976-01-10 | Kanegafuchi Chemical Ind | |
US3982229A (en) | 1975-01-08 | 1976-09-21 | Bell Telephone Laboratories, Incorporated | Combinational logic arrangement |
US4569016A (en) | 1983-06-30 | 1986-02-04 | International Business Machines Corporation | Mechanism for implementing one machine cycle executable mask and rotate instructions in a primitive instruction set computing system |
US5129066A (en) | 1987-09-17 | 1992-07-07 | International Business Machines Corporation | Bit mask generator circuit using multiple logic units for generating a bit mask sequence |
KR100262438B1 (ko) * | 1991-05-08 | 2000-08-01 | 가나이 쓰도무 | 연산장치 및 이것을 사용한 비트필드조작 연산방법 |
JP2984463B2 (ja) | 1991-06-24 | 1999-11-29 | 株式会社日立製作所 | マイクロコンピュータ |
JPH0512771A (ja) | 1991-07-08 | 1993-01-22 | Matsushita Electric Ind Co Ltd | 磁気記録再生装置 |
US5414821A (en) * | 1991-12-17 | 1995-05-09 | Unisys Corporation | Method of and apparatus for rapidly loading addressing environment by checking and loading multiple registers using a specialized instruction |
JP3155835B2 (ja) | 1992-09-30 | 2001-04-16 | キヤノン株式会社 | 画像形成方法及び装置ユニット |
US5497493A (en) | 1993-09-30 | 1996-03-05 | Intel Corporation | High byte right-shift apparatus with a register alias table |
US5564056A (en) | 1994-03-01 | 1996-10-08 | Intel Corporation | Method and apparatus for zero extension and bit shifting to preserve register parameters in a microprocessor utilizing register renaming |
US5598546A (en) * | 1994-08-31 | 1997-01-28 | Exponential Technology, Inc. | Dual-architecture super-scalar pipeline |
US5704052A (en) | 1994-11-06 | 1997-12-30 | Unisys Corporation | Bit processing unit for performing complex logical operations within a single clock cycle |
US7301541B2 (en) * | 1995-08-16 | 2007-11-27 | Microunity Systems Engineering, Inc. | Programmable processor and method with wide operations |
US6643765B1 (en) * | 1995-08-16 | 2003-11-04 | Microunity Systems Engineering, Inc. | Programmable processor with group floating point operations |
JP3433588B2 (ja) | 1995-10-19 | 2003-08-04 | 株式会社デンソー | マスクデータ生成回路及びビットフィールド操作回路 |
US5696711A (en) | 1995-12-22 | 1997-12-09 | Intel Corporation | Apparatus and method for performing variable precision floating point rounding operations |
US6128725A (en) | 1997-01-24 | 2000-10-03 | Texas Instruments Incorporated | Microprocessor with an instruction for setting or clearing a bit field |
US6052522A (en) * | 1997-10-30 | 2000-04-18 | Infineon Technologies North America Corporation | Method and apparatus for extracting data stored in concatenated registers |
US7133040B1 (en) | 1998-03-31 | 2006-11-07 | Intel Corporation | System and method for performing an insert-extract instruction |
US6263426B1 (en) * | 1998-04-30 | 2001-07-17 | Intel Corporation | Conversion from packed floating point data to packed 8-bit integer data in different architectural registers |
US6266769B1 (en) * | 1998-04-30 | 2001-07-24 | Intel Corporation | Conversion between packed floating point data and packed 32-bit integer data in different architectural registers |
US5995122A (en) * | 1998-04-30 | 1999-11-30 | Intel Corporation | Method and apparatus for parallel conversion of color values from a single precision floating point format to an integer format |
US6356951B1 (en) * | 1999-03-01 | 2002-03-12 | Sun Microsystems, Inc. | System for parsing a packet for conformity with a predetermined protocol using mask and comparison values included in a parsing instruction |
US6754687B1 (en) | 1999-11-12 | 2004-06-22 | Pts Corporation | Methods and apparatus for efficient cosine transform implementations |
US6801625B1 (en) | 1999-12-08 | 2004-10-05 | Intel Corporation | Apparatus and method for stripping parity bits from an input stream |
US8874882B1 (en) * | 2000-03-30 | 2014-10-28 | Intel Corporation | Compiler-directed sign/zero extension of a first bit size result to overwrite incorrect data before subsequent processing involving the result within an architecture supporting larger second bit size values |
US6877084B1 (en) * | 2000-08-09 | 2005-04-05 | Advanced Micro Devices, Inc. | Central processing unit (CPU) accessing an extended register set in an extended register mode |
US6757771B2 (en) * | 2000-08-09 | 2004-06-29 | Advanced Micro Devices, Inc. | Stack switching mechanism in a computer system |
US6807622B1 (en) * | 2000-08-09 | 2004-10-19 | Advanced Micro Devices, Inc. | Processor which overrides default operand size for implicit stack pointer references and near branches |
US7237097B2 (en) * | 2001-02-21 | 2007-06-26 | Mips Technologies, Inc. | Partial bitwise permutations |
US6889312B1 (en) * | 2001-04-02 | 2005-05-03 | Advanced Micro Devices, Inc. | Selective zero extension based on operand size |
US20020188830A1 (en) | 2001-06-01 | 2002-12-12 | Brian Boles | Bit replacement and extraction instructions |
US6968446B1 (en) * | 2001-08-09 | 2005-11-22 | Advanced Micro Devices, Inc. | Flags handling for system call instructions |
CN1271523C (zh) * | 2002-08-21 | 2006-08-23 | 先进数字芯片株式会社 | 具有扩展指令的中央处理器 |
US7353371B2 (en) | 2002-12-05 | 2008-04-01 | Intel Corporation | Circuit to extract nonadjacent bits from data packets |
US7539714B2 (en) * | 2003-06-30 | 2009-05-26 | Intel Corporation | Method, apparatus, and instruction for performing a sign operation that multiplies |
US7321916B2 (en) | 2003-07-28 | 2008-01-22 | Intel Corporation | Methods and apparatus for extracting integer remainders |
US7428631B2 (en) * | 2003-07-31 | 2008-09-23 | Intel Corporation | Apparatus and method using different size rename registers for partial-bit and bulk-bit writes |
US7095897B2 (en) | 2003-12-19 | 2006-08-22 | Intel Corporation | Zero length or run length coding decision |
US7529924B2 (en) | 2003-12-30 | 2009-05-05 | Intel Corporation | Method and apparatus for aligning ciphered data |
US7315937B2 (en) | 2004-10-01 | 2008-01-01 | Mips Technologies, Inc. | Microprocessor instructions for efficient bit stream extractions |
US7334116B2 (en) * | 2004-10-06 | 2008-02-19 | Sony Computer Entertainment Inc. | Bit manipulation on data in a bitstream that is stored in a memory having an address boundary length |
US7558724B2 (en) * | 2005-04-19 | 2009-07-07 | Hewlett-Packard Development Company, L.P. | Operation region describing a virtual device |
US20060259737A1 (en) | 2005-05-10 | 2006-11-16 | Telairity Semiconductor, Inc. | Vector processor with special purpose registers and high speed memory access |
US7529918B2 (en) * | 2006-07-21 | 2009-05-05 | Broadcom Corporation | System and method for efficiently performing bit-field extraction and bit-field combination operations in a processor |
US9069547B2 (en) | 2006-09-22 | 2015-06-30 | Intel Corporation | Instruction and logic for processing text strings |
US8538012B2 (en) | 2007-03-14 | 2013-09-17 | Intel Corporation | Performing AES encryption or decryption in multiple modes with a single instruction |
US8538015B2 (en) | 2007-03-28 | 2013-09-17 | Intel Corporation | Flexible architecture and instruction for advanced encryption standard (AES) |
CN101446891A (zh) * | 2007-11-27 | 2009-06-03 | 上海高性能集成电路设计中心 | 一种高性能微处理器结构寄存器保留恢复指令的实现方法 |
JP2010255319A (ja) | 2009-04-27 | 2010-11-11 | Ym Kogyo Kk | 手摺装置 |
US8230172B2 (en) * | 2009-12-03 | 2012-07-24 | Intel Corporation | Gather and scatter operations in multi-level memory hierarchy |
US9003170B2 (en) | 2009-12-22 | 2015-04-07 | Intel Corporation | Bit range isolation instructions, methods, and apparatus |
CN104011646B (zh) * | 2011-12-22 | 2018-03-27 | 英特尔公司 | 用于产生按照数值顺序的连续整数的序列的处理器、方法、系统和指令 |
WO2013095613A2 (en) * | 2011-12-23 | 2013-06-27 | Intel Corporation | Apparatus and method of mask permute instructions |
-
2009
- 2009-12-22 US US12/645,307 patent/US9003170B2/en active Active
-
2010
- 2010-11-15 JP JP2010255319A patent/JP5456643B2/ja active Active
- 2010-11-17 TW TW099139490A patent/TWI502493B/zh active
- 2010-12-09 DE DE102010053967A patent/DE102010053967A1/de not_active Withdrawn
- 2010-12-21 CN CN201410674064.XA patent/CN104461461B/zh active Active
- 2010-12-21 CN CN201811018767.1A patent/CN109375950B/zh active Active
- 2010-12-21 CN CN201010620155.7A patent/CN102109977B/zh active Active
-
2014
- 2014-01-08 JP JP2014001946A patent/JP6134947B2/ja active Active
- 2014-12-12 US US14/568,754 patent/US10579380B2/en active Active
- 2014-12-12 US US14/568,725 patent/US10579379B2/en active Active
- 2014-12-12 US US14/568,812 patent/US10372455B2/en active Active
-
2015
- 2015-11-09 JP JP2015219702A patent/JP6375280B2/ja active Active
-
2018
- 2018-03-14 US US15/921,134 patent/US10656947B2/en active Active
- 2018-07-23 JP JP2018138039A patent/JP6569969B2/ja active Active
Patent Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS512771B1 (ja) * | 1968-08-01 | 1976-01-28 | ||
JPS6188338A (ja) * | 1984-07-09 | 1986-05-06 | アドバンスト・マイクロ・デイバイシズ・インコ−ポレ−テツド | 単一チツプの32ビツト拡張機能算術・論理ユニツト |
US4785393A (en) * | 1984-07-09 | 1988-11-15 | Advanced Micro Devices, Inc. | 32-Bit extended function arithmetic-logic unit on a single chip |
JPS61103241A (ja) * | 1984-10-27 | 1986-05-21 | Nec Corp | 情報処理装置 |
JPS6491228A (en) * | 1987-09-30 | 1989-04-10 | Takeshi Sakamura | Data processor |
JPH02299082A (ja) * | 1989-05-12 | 1990-12-11 | Fujitsu Ltd | 可変長データを処理するプロセッサ |
JPH05100854A (ja) * | 1990-05-02 | 1993-04-23 | Motorola Inc | Riscマイクロプロセツサおよび演算方法 |
JPH06131178A (ja) * | 1990-06-29 | 1994-05-13 | Digital Equip Corp <Dec> | マルチプロセッサ又はパイプラインプロセッサシステムにおい てデータの完全性を確保する方法 |
JPH05150942A (ja) * | 1991-05-08 | 1993-06-18 | Hitachi Ltd | 演算装置、ビツトフイールド操作演算方法、デコーダ、及び半導体集積回路装置 |
JPH1196000A (ja) * | 1991-06-24 | 1999-04-09 | Hitachi Ltd | Cpu及びマイクロコンピュータ |
JPH06222918A (ja) * | 1992-12-18 | 1994-08-12 | Xerox Corp | 複合オペランド内の多ビット要素を選択するためのマスク |
US5930492A (en) * | 1997-03-19 | 1999-07-27 | Advanced Micro Devices, Inc. | Rapid pipeline control using a control word and a steering word |
JP2004013185A (ja) * | 2002-06-03 | 2004-01-15 | Matsushita Electric Ind Co Ltd | プロセッサ |
JP2006127460A (ja) * | 2004-06-09 | 2006-05-18 | Renesas Technology Corp | 半導体装置、半導体信号処理装置、およびクロスバースイッチ |
US20090006822A1 (en) * | 2006-01-27 | 2009-01-01 | Freescale Semiconductor , Inc. | Device and Method for Adding and Subtracting Two Variables and a Constant |
Non-Patent Citations (3)
Title |
---|
YEDIDYA HILEWITZ, RUBY B. LEE: "Performing Advanced Bit Manipulations Efficiently in General-Purpose Processors", PROCEEDINGS OF THE 18TH IEEE SYMPOSIUM ON COMPUTER ARTHMETIC(ARITH'07), JPN6013007662, June 2007 (2007-06-01), pages 251 - 260, XP031116347, ISSN: 0004034691 * |
インテル ITANIUM アーキテクチャ・ソフトウェア・デベロッパーズ・マニュアル 第3巻:命令セット・リフ, JPN6017040756, October 2002 (2002-10-01), pages 3 - 48, ISSN: 0004034689 * |
山口哲弘: "x64で本格化する64ビットWindowsの時代 Part1 x64の威力", 日経WINDOWSプロ, JPN6016044733, January 2005 (2005-01-01), JP, pages 54 - 73, ISSN: 0004034690 * |
Also Published As
Publication number | Publication date |
---|---|
TWI502493B (zh) | 2015-10-01 |
CN104461461A (zh) | 2015-03-25 |
US9003170B2 (en) | 2015-04-07 |
US20150143084A1 (en) | 2015-05-21 |
US10656947B2 (en) | 2020-05-19 |
DE102010053967A1 (de) | 2011-07-14 |
JP2016026365A (ja) | 2016-02-12 |
US10579380B2 (en) | 2020-03-03 |
JP2014081953A (ja) | 2014-05-08 |
JP5456643B2 (ja) | 2014-04-02 |
CN109375950A (zh) | 2019-02-22 |
US20150100760A1 (en) | 2015-04-09 |
US20180203698A1 (en) | 2018-07-19 |
JP6375280B2 (ja) | 2018-08-15 |
CN102109977A (zh) | 2011-06-29 |
CN102109977B (zh) | 2015-06-24 |
CN109375950B (zh) | 2023-06-20 |
JP2011134304A (ja) | 2011-07-07 |
JP6134947B2 (ja) | 2017-05-31 |
US10579379B2 (en) | 2020-03-03 |
TW201137741A (en) | 2011-11-01 |
CN104461461B (zh) | 2018-10-09 |
US20110153997A1 (en) | 2011-06-23 |
JP6569969B2 (ja) | 2019-09-04 |
US10372455B2 (en) | 2019-08-06 |
US20150100761A1 (en) | 2015-04-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6569969B2 (ja) | プロセッサ、方法、プログラム、および機械可読記録媒体 | |
JP5736028B2 (ja) | 3個のソースオペランドを加算する加算命令 | |
JP6034352B2 (ja) | マルチコアプロセッサ、システムオンチップ、及び、携帯電話機 | |
RU2656730C2 (ru) | Процессоры, способы, системы и команды для сложения трех операндов-источников с плавающей запятой | |
US10649774B2 (en) | Multiplication instruction for which execution completes without writing a carry flag | |
JP2018507453A (ja) | 命令フローを最適化するチェックを実行するための装置および方法 | |
JP2023035849A (ja) | Bfloat16平方根および/または逆数平方根命令 | |
JP2018503162A (ja) | スピンループジャンプを実行するための装置および方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180822 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180822 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20190507 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190521 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190614 |
|
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: 20190709 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190725 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6569969 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |