JP2017016712A - マルチコアプロセッサ、システムオンチップ、及び、携帯電話機 - Google Patents
マルチコアプロセッサ、システムオンチップ、及び、携帯電話機 Download PDFInfo
- Publication number
- JP2017016712A JP2017016712A JP2016210149A JP2016210149A JP2017016712A JP 2017016712 A JP2017016712 A JP 2017016712A JP 2016210149 A JP2016210149 A JP 2016210149A JP 2016210149 A JP2016210149 A JP 2016210149A JP 2017016712 A JP2017016712 A JP 2017016712A
- Authority
- JP
- Japan
- Prior art keywords
- bit
- instruction
- flag
- source operand
- 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.)
- Granted
Links
- 230000006870 function Effects 0.000 claims description 24
- 238000012545 processing Methods 0.000 description 30
- 238000000034 method Methods 0.000 description 25
- 238000004364 calculation method Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 6
- 230000004044 response Effects 0.000 description 6
- 238000006243 chemical reaction Methods 0.000 description 5
- 238000013500 data storage Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 238000013461 design Methods 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
- 101000912503 Homo sapiens Tyrosine-protein kinase Fgr Proteins 0.000 description 1
- 102100026150 Tyrosine-protein kinase Fgr Human genes 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 230000002093 peripheral effect Effects 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/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/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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Executing Machine-Instructions (AREA)
Abstract
Description
[項目1]
ソースオペランドと回転量とを示す回転命令を受信する段階と、
回転命令が示すデスティネーションオペランドに、回転量で回転させたソースオペランドを有する結果を格納する段階と、
キャリーフラグの読み出しを伴わずに回転命令の実行を完了する段階と
を備える方法。
[項目2]
完了する段階は、オーバフローフラグの読み出しを伴わずに回転命令の実行を完了する段階を有する項目1に記載の方法。
[項目3]
完了する段階は、キャリーフラグの書き込みを伴わず、且つ、オーバフローフラグの書き込みを伴わずに、回転命令の実行を完了する段階を有する項目2に記載の方法。
[項目4]
完了する段階は、符号フラグの読み出しを伴わず、ゼロフラグの読み出しを伴わず、補助キャリーフラグの読み出しを伴わず、且つ、パリティフラグの読み出しを伴わずに、回転命令の実行を完了する段階を有する項目2に記載の方法。
[項目5]
完了する段階は、キャリーフラグの書き込みを伴わず、オーバフローフラグの書き込みを伴わず、符号フラグの書き込みを伴わず、ゼロフラグの書き込みを伴わず、補助キャリーフラグの書き込みを伴わず、且つ、パリティフラグの書き込みを伴わずに、回転命令の実行を完了する段階を有する項目4に記載の方法。
[項目6]
受信する段階は、ソースオペランドを明示的に指定して、デスティネーションオペランドを明示的に指定する回転命令を受信する段階を有する項目1に記載の方法。
[項目7]
受信する段階は、回転量を有する第2のソースオペランドを明示的に指定する回転命令を受信する段階を有する項目1に記載の方法。
[項目8]
受信する段階は、回転量を有する第2のソースオペランドを暗示的に示す回転命令を受信する段階を有する項目1に記載の方法。
[項目9]
回転命令の実行を完了する段階は、1クロックサイクルで完了する項目1に記載の方法。
[項目10]
完了する段階は、回転命令から導出した単一のマイクロオペレーションの実行により回転命令の実行を完了する段階を有する項目1に記載の方法。
[項目11]
回転命令は右回転命令を含み、ソースオペランドは32ビットおよび64ビットから選択されたサイズを有し、ソースオペランドは汎用レジスタおよびメモリ内の位置のいずれか1つを含み、デスティネーションオペランドは汎用レジスタを含む項目1に記載の方法。
[項目12]
複数のコアを有する汎用マイクロプロセッサにより実行され、複数のコアの少なくとも1つが命令に応じて動作する回路を有する項目1に記載の方法。
[項目13]
ソースオペランドと回転量とを示す回転命令の結果、回転命令が示すデスティネーションオペランドに、回転量で回転させたソースオペランドを有する結果を格納して、キャリーフラグの読み出しを伴わずに回転命令の実行を完了する実行ユニットを備える装置。
[項目14]
実行ユニットは、オーバフローフラグの読み出しを伴わずに回転命令の実行を完了する項目13に記載の装置。
[項目15]
実行ユニットは、キャリーフラグの書き込みを伴わず、且つ、オーバフローフラグの書き込みを伴わずに、回転命令の実行を完了する項目14に記載の装置。
[項目16]
実行ユニットは、符号フラグの読み出しを伴わず、ゼロフラグの読み出しを伴わず、補助キャリーフラグの読み出しを伴わず、且つ、パリティフラグの読み出しを伴わずに、回転命令の実行を完了する項目14に記載の装置。
[項目17]
実行ユニットは、キャリーフラグの書き込みを伴わず、オーバフローフラグの書き込みを伴わず、符号フラグの書き込みを伴わず、ゼロフラグの書き込みを伴わず、補助キャリーフラグの書き込みを伴わず、且つ、パリティフラグの書き込みを伴わずに、回転命令の実行を完了する項目16に記載の装置。
[項目18]
実行ユニットは、ソースオペランドを明示的に指定して、デスティネーションオペランドを明示的に指定する回転命令に応じて動作する項目13に記載の装置。
[項目19]
実行ユニットは、回転量を有する第2のソースオペランドを明示的に指定する回転命令に応じて動作する項目13に記載の装置。
[項目20]
実行ユニットは、回転量を有する第2のソースオペランドを暗示的に示す回転命令に応じて動作する項目13に記載の装置。
[項目21]
実行ユニットは、回転命令の実行を1クロックサイクルで完了する項目13に記載の装置。
[項目22]
実行ユニットは、単一のマイクロオペレーションの実行により回転命令の実行を完了する項目11に記載の装置。
[項目23]
実行ユニットは、マルチコア汎用マイクロプロセッサのコア内に組み込まれている項目11に記載の装置。
[項目24]
ソースオペランドと回転量を有する即値とを明示的に指定する右回転命令の結果、右回転命令が明示的に指定するデスティネーションオペランドに、回転量で右回転させたソースオペランドを有する結果を格納して、キャリーフラグの読み出しを伴わず、オーバフローフラグの読み出しを伴わず、キャリーフラグの書き込みを伴わず、且つ、オーバフローフラグの書き込みを伴わずに、回転命令の実行を完了する実行ユニットを備える装置。
[項目25]
実行ユニットは、回転命令の実行を1クロックサイクルで完了し、
実行ユニットは、マルチコア汎用マイクロプロセッサのコア内に組み込まれている項目24に記載の装置。
[項目26]
インターコネクトと、
インターコネクトに連結されたプロセッサと、
インターコネクトに連結されたDRAMとを備え、
プロセッサは、ソースオペランドと回転量とを示す回転命令の結果、回転命令が示すデスティネーションオペランドに、回転量で回転させたソースオペランドを有する結果を格納して、キャリーフラグの読み出しを伴わずに回転命令の実行を完了するシステム。
[項目27]
プロセッサは、ソースオペランドを明示的に指定して、デスティネーションオペランドを明示的に指定する回転命令に応じて動作する項目26に記載のシステム。
[項目28]
製品であって、
回転命令を提供する実体を有する有形の機械可読媒体を備え、
回転命令はソースオペランドおよび回転量を示し、機械により実行されると、機械に、
回転命令が示すデスティネーションオペランドに、回転量で回転させたソースオペランドを有する結果を格納する段階と、
キャリーフラグの読み出しを伴わずに回転命令の実行を完了する段階と
を実行させる製品。
[項目29]
回転命令は機械に、回転命令が明示的に指定するソースオペランドを決定させ、回転命令が明示的に指定するデスティネーションオペランドに結果を格納させる項目28に記載の製品。
[項目30]
回転量は、回転命令の即値に示される項目1に記載の方法。
Claims (33)
- 少なくとも4個のコアを備え、前記コアの各々は、
少なくとも1個のレベル1(L1)キャッシュと、
キャリーフラグ、符号フラグ、ゼロフラグ、及び、オーバーフローフラグを含む複数のフラグを格納するレジスタと、
64ビットモードで複数の64ビットオペランドを格納する機能を有し、32ビットモードで複数の32ビットオペランドを格納する機能を有する少なくとも16個の64ビット汎用レジスタであって、前記複数の32ビットオペランドは、前記64ビット汎用レジスタの下位32ビットに格納される、少なくとも16個の64ビット汎用レジスタと、
分岐予測ロジックと、
右回転命令をフェッチする命令フェッチロジックと、
64ビットオペランドサイズ、第1の64ビットソースオペランド、第2の64ビットソースオペランド、及び、64ビット汎用レジスタを示す前記右回転命令を、デコードするデコーダと、
前記64ビット汎用レジスタをリネームするレジスタリネームロジックと、
リオーダバッファと、
前記右回転命令を実行する第1の実行ユニットを含む複数の実行ユニットと、
を有し、
前記右回転命令は、前記第1の64ビットソースオペランドを右に前記第2の64ビットソースオペランドに示される量回転し、
前記第1の64ビットソースオペランドの最下位ビットから回転により外れたビットは、前記第1の64ビットソースオペランドの最上位ビットに回転して入れられ、
結果は、前記64ビット汎用レジスタに格納され、
前記右回転命令は、前記キャリーフラグの書き込み、前記符号フラグの書き込み、前記ゼロフラグの書き込み、及び、前記オーバーフローフラグの書き込みを伴わずに完了する、
マルチコアプロセッサ。 - 前記プロセッサは、RISC(Reduced Instruction Set Computing)プロセッサを含む、
請求項1に記載のマルチコアプロセッサ。 - 前記少なくとも4個のコアに共有される共有レベル2(L2)キャッシュを更に備える、
請求項1又は2に記載のマルチコアプロセッサ。 - 前記右回転命令は、前記64ビットオペランドサイズを特定する、少なくとも1個のビットを有する、
請求項1から3のいずれか1項に記載のマルチコアプロセッサ。 - 前記右回転命令は、前記キャリーフラグの読み出しを伴わずに完了する、
請求項1から4のいずれか1項に記載のマルチコアプロセッサ。 - 少なくとも4個のコアを備え、前記コアの各々は、
少なくとも1個のレベル1(L1)キャッシュと、
キャリーフラグ、符号フラグ、ゼロフラグ、及び、オーバーフローフラグを含む複数のフラグを格納するレジスタと、
64ビットモードで複数の64ビットオペランドを格納する機能を有し、32ビットモードで複数の32ビットオペランドを格納する機能を有する少なくとも16個の64ビット汎用レジスタであって、前記複数の32ビットオペランドは、前記64ビット汎用レジスタの下位32ビットに格納される、少なくとも16個の64ビット汎用レジスタと、
分岐予測ロジックと、
右回転命令をフェッチする命令フェッチロジックと、
64ビットオペランドサイズ、第1の64ビットソースオペランド、第2の64ビットソースオペランド、及び、64ビット汎用レジスタを示す前記右回転命令を、デコードするデコーダと、
前記64ビット汎用レジスタをリネームするレジスタリネームロジックと、
リオーダバッファと、
前記右回転命令を実行する第1の実行ユニットを含む複数の実行ユニットと、
を有し、
前記右回転命令は、前記第1の64ビットソースオペランドを右に前記第2の64ビットソースオペランドに示される量回転し、
前記第1の64ビットソースオペランドの最下位ビットから回転により外れたビットは、前記第1の64ビットソースオペランドの最上位ビットに回転して入れられ、
結果は、前記64ビット汎用レジスタに格納され、
前記右回転命令は、前記キャリーフラグの読み出し、前記符号フラグの読み出し、前記ゼロフラグの読み出し、及び、前記オーバーフローフラグの読み出しを伴わず、いかなる演算フラグの書き込みを伴わずに完了する、
マルチコアプロセッサ。 - 前記プロセッサは、RISC(Reduced Instruction Set Computing)プロセッサを含む、
請求項6に記載のマルチコアプロセッサ。 - 前記少なくとも4個のコアに共有される共有レベル2(L2)キャッシュを更に備える、
請求項6又は7に記載のマルチコアプロセッサ。 - 前記右回転命令は、前記64ビットオペランドサイズを特定する、少なくとも1個のビットを有する、
請求項6から8のいずれか1項に記載のマルチコアプロセッサ。 - オンダイメモリコントローラと、
オンダイグラフィックデバイスと、
ユニバーサルシリアルバス(USB)ポート用オンダイコントローラと、
オンダイマルチコアプロセッサを備えるシステムオンチップ(SoC)であって、
前記オンダイマルチコアプロセッサは、
少なくとも4個のコアを有し、前記コアの各々は、
少なくとも1個のレベル1(L1)キャッシュと、
キャリーフラグ、符号フラグ、ゼロフラグ、及び、オーバーフローフラグを含む複数のフラグを格納するレジスタと、
64ビットモードで複数の64ビットオペランドを格納する機能を有し、32ビットモードで複数の32ビットオペランドを格納する機能を有する少なくとも16個の64ビット汎用レジスタであって、前記複数の32ビットオペランドは、前記64ビット汎用レジスタの下位32ビットに格納される、少なくとも16個の64ビット汎用レジスタと、
分岐予測ロジックと、
右回転命令をフェッチする命令フェッチロジックと、
64ビットオペランドサイズ、第1の64ビットソースオペランド、第2の64ビットソースオペランド、及び、64ビット汎用レジスタを示す前記右回転命令を、デコードするデコーダと、
前記64ビット汎用レジスタをリネームするレジスタリネームロジックと、
リオーダバッファと、
前記右回転命令を実行する第1の実行ユニットを含む複数の実行ユニットと、
を含み、
前記右回転命令は、前記第1の64ビットソースオペランドを右に前記第2の64ビットソースオペランドに示される量回転し、
前記第1の64ビットソースオペランドの最下位ビットから回転により外れたビットは、前記第1の64ビットソースオペランドの最上位ビットに回転して入れられ、
結果は、前記64ビット汎用レジスタに格納され、
前記右回転命令は、前記キャリーフラグの書き込み、前記符号フラグの書き込み、前記ゼロフラグの書き込み、及び、前記オーバーフローフラグの書き込みを伴わずに完了する、
システムオンチップ。 - 前記オンダイマルチコアプロセッサは、RISC(Reduced Instruction Set Computing)プロセッサを含む、
請求項10に記載のシステムオンチップ。 - 前記オンダイマルチコアプロセッサは、前記少なくとも4個のコアに共有される共有レベル2(L2)キャッシュを更に備える、
請求項10又は11に記載のシステムオンチップ。 - 前記右回転命令は、前記64ビットオペランドサイズを特定する、少なくとも1個のビットを有する、
請求項10から12のいずれか1項に記載のシステムオンチップ。 - 前記右回転命令は、前記キャリーフラグの読み出しを伴わずに完了する、
請求項10から13のいずれか1項に記載のシステムオンチップ。 - オンダイメモリコントローラと、
オンダイグラフィックデバイスと、
ユニバーサルシリアルバス(USB)ポート用オンダイコントローラと、
オンダイマルチコアプロセッサを備えるシステムオンチップ(SoC)であって、
前記オンダイマルチコアプロセッサは、
少なくとも4個のコアを有し、前記コアの各々は、
少なくとも1個のレベル1(L1)キャッシュと、
キャリーフラグ、符号フラグ、ゼロフラグ、及び、オーバーフローフラグを含む複数のフラグを格納するレジスタと、
64ビットモードで複数の64ビットオペランドを格納する機能を有し、32ビットモードで複数の32ビットオペランドを格納する機能を有する少なくとも16個の64ビット汎用レジスタであって、前記複数の32ビットオペランドは、前記64ビット汎用レジスタの下位32ビットに格納される、少なくとも16個の64ビット汎用レジスタと、
分岐予測ロジックと、
右回転命令をフェッチする命令フェッチロジックと、
64ビットオペランドサイズ、第1の64ビットソースオペランド、第2の64ビットソースオペランド、及び、64ビット汎用レジスタを示す前記右回転命令を、デコードするデコーダと、
前記64ビット汎用レジスタをリネームするレジスタリネームロジックと、
リオーダバッファと、
前記右回転命令を実行する第1の実行ユニットを含む複数の実行ユニットと、
を含み、
前記右回転命令は、前記第1の64ビットソースオペランドを右に前記第2の64ビットソースオペランドに示される量回転し、
前記第1の64ビットソースオペランドの最下位ビットから回転により外れたビットは、前記第1の64ビットソースオペランドの最上位ビットに回転して入れられ、
結果は、前記64ビット汎用レジスタに格納され、
前記右回転命令は、前記キャリーフラグの読み出し、前記符号フラグの読み出し、前記ゼロフラグの読み出し、及び、前記オーバーフローフラグの読み出しを伴わず、いかなる演算フラグの書き込みを伴わずに完了する、
システムオンチップ。 - 前記オンダイマルチコアプロセッサは、RISC(Reduced Instruction Set Computing)プロセッサを含む、
請求項15に記載のシステムオンチップ。 - 前記オンダイマルチコアプロセッサは、前記少なくとも4個のコアに共有される共有レベル2(L2)キャッシュを更に備える、
請求項15または16に記載のシステムオンチップ。 - 前記右回転命令は、前記64ビットオペランドサイズを特定する、少なくとも1個のビットを有する、
請求項15から17のいずれか1項に記載のシステムオンチップ。 - ランダムアクセスメモリ(RAM)と、
無線トランシーバと、
マルチコアプロセッサと、を備える携帯電話機であって、
前記マルチコアプロセッサは、
少なくとも4個のコアを有し、前記コアの各々は、
少なくとも1個のレベル1(L1)キャッシュと、
キャリーフラグ、符号フラグ、ゼロフラグ、及び、オーバーフローフラグを含む複数のフラグを格納するレジスタと、
64ビットモードで複数の64ビットオペランドを格納する機能を有し、32ビットモードで複数の32ビットオペランドを格納する機能を有する少なくとも16個の64ビット汎用レジスタであって、前記複数の32ビットオペランドは、前記64ビット汎用レジスタの下位32ビットに格納される、少なくとも16個の64ビット汎用レジスタと、
分岐予測ロジックと、
右回転命令をフェッチする命令フェッチロジックと、
64ビットオペランドサイズ、第1の64ビットソースオペランド、第2の64ビットソースオペランド、及び、64ビット汎用レジスタを示す前記右回転命令を、デコードするデコーダと、
前記右回転命令を実行する第1の実行ユニットを含む複数の実行ユニットと、
を含み、
前記右回転命令は、前記第1の64ビットソースオペランドを右に前記第2の64ビットソースオペランドに示される量回転し、
前記第1の64ビットソースオペランドの最下位ビットから回転により外れたビットは、前記第1の64ビットソースオペランドの最上位ビットに回転して入れられ、
結果は、前記64ビット汎用レジスタに格納され、
前記右回転命令は、前記キャリーフラグの書き込み、前記符号フラグの書き込み、前記ゼロフラグの書き込み、及び、前記オーバーフローフラグの書き込みを伴わずに完了する、
携帯電話機。 - 前記マルチコアプロセッサは、前記少なくとも4個のコアに共有される共有レベル2(L2)キャッシュを更に備える、
請求項19に記載の携帯電話機。 - 前記マルチコアプロセッサは、RISC(Reduced Instruction Set Computing)プロセッサを含む、
請求項19または20に記載の携帯電話機。 - 前記右回転命令は、前記64ビットオペランドサイズを特定する、少なくとも1個のビットを有する、
請求項19から21のいずれか1項に記載の携帯電話機。 - 前記右回転命令は、前記キャリーフラグの読み出しを伴わずに完了する、
請求項19から22のいずれか1項に記載の携帯電話機。 - ランダムアクセスメモリ(RAM)と、
無線トランシーバと、
マルチコアプロセッサと、を備える携帯電話機であって、
前記マルチコアプロセッサは、
少なくとも4個のコアを有し、前記コアの各々は、
少なくとも1個のレベル1(L1)キャッシュと、
キャリーフラグ、符号フラグ、ゼロフラグ、及び、オーバーフローフラグを含む複数のフラグを格納するレジスタと、
64ビットモードで複数の64ビットオペランドを格納する機能を有し、32ビットモードで複数の32ビットオペランドを格納する機能を有する少なくとも16個の64ビット汎用レジスタであって、前記複数の32ビットオペランドは、前記64ビット汎用レジスタの下位32ビットに格納される、少なくとも16個の64ビット汎用レジスタと、
分岐予測ロジックと、
右回転命令をフェッチする命令フェッチロジックと、
64ビットオペランドサイズ、第1の64ビットソースオペランド、第2の64ビットソースオペランド、及び、64ビット汎用レジスタを示す前記右回転命令を、デコードするデコーダと、
前記右回転命令を実行する第1の実行ユニットを含む複数の実行ユニットと、
を含み、
前記右回転命令は、前記第1の64ビットソースオペランドを右に前記第2の64ビットソースオペランドに示される量回転し、
前記第1の64ビットソースオペランドの最下位ビットから回転により外れたビットは、前記第1の64ビットソースオペランドの最上位ビットに回転して入れられ、
結果は、前記64ビット汎用レジスタに格納され、
前記右回転命令は、前記キャリーフラグの読み出し、前記符号フラグの読み出し、前記ゼロフラグの読み出し、及び、前記オーバーフローフラグの読み出しを伴わず、いかなる演算フラグの書き込みを伴わずに完了する、
携帯電話機。 - 前記マルチコアプロセッサは、RISC(Reduced Instruction Set Computing)プロセッサを含む、
請求項24に記載の携帯電話機。 - 前記マルチコアプロセッサは、前記少なくとも4個のコアに共有される共有レベル2(L2)キャッシュを更に備える、
請求項24または25に記載の携帯電話機。 - 前記右回転命令は、前記64ビットオペランドサイズを特定する、少なくとも1個のビットを有する、
請求項24から26のいずれか1項に記載の携帯電話機。 - 前記右回転命令は、実行されると前記キャリーフラグを読み出す第2右回転命令とともに命令セットに含まれる、
請求項1から4のいずれか1項に記載のマルチコアプロセッサ。 - 前記右回転命令は、実行されると前記キャリーフラグを読み出す第2右回転命令とともに命令セットに含まれる、
請求項6から8のいずれか1項に記載のマルチコアプロセッサ。 - 前記右回転命令は、実行されると前記キャリーフラグを読み出す第2右回転命令とともに命令セットに含まれる、
請求項10から13のいずれか1項に記載のシステムオンチップ。 - 前記右回転命令は、実行されると前記キャリーフラグを読み出す第2右回転命令とともに命令セットに含まれる、
請求項15から17のいずれか1項に記載のシステムオンチップ。 - 前記右回転命令は、実行されると前記キャリーフラグを読み出す第2右回転命令とともに命令セットに含まれる、
請求項19から22のいずれか1項に記載の携帯電話機。 - 前記右回転命令は、実行されると前記キャリーフラグを読み出す第2右回転命令とともに命令セットに含まれる、
請求項24から26のいずれか1項に記載の携帯電話機。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/655,213 | 2009-12-26 | ||
US12/655,213 US8504807B2 (en) | 2009-12-26 | 2009-12-26 | Rotate instructions that complete execution without reading carry flag |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014214502A Division JP6034352B2 (ja) | 2009-12-26 | 2014-10-21 | マルチコアプロセッサ、システムオンチップ、及び、携帯電話機 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2017016712A true JP2017016712A (ja) | 2017-01-19 |
JP2017016712A5 JP2017016712A5 (ja) | 2017-02-23 |
JP6509181B2 JP6509181B2 (ja) | 2019-05-08 |
Family
ID=44174154
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010272961A Active JP5665221B2 (ja) | 2009-12-26 | 2010-12-07 | キャリーフラグの読み出しを伴わずに実行を完了する回転命令 |
JP2014214502A Active JP6034352B2 (ja) | 2009-12-26 | 2014-10-21 | マルチコアプロセッサ、システムオンチップ、及び、携帯電話機 |
JP2016210149A Active JP6509181B2 (ja) | 2009-12-26 | 2016-10-27 | 方法、プロセッサ、及び、システム |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010272961A Active JP5665221B2 (ja) | 2009-12-26 | 2010-12-07 | キャリーフラグの読み出しを伴わずに実行を完了する回転命令 |
JP2014214502A Active JP6034352B2 (ja) | 2009-12-26 | 2014-10-21 | マルチコアプロセッサ、システムオンチップ、及び、携帯電話機 |
Country Status (6)
Country | Link |
---|---|
US (7) | US8504807B2 (ja) |
JP (3) | JP5665221B2 (ja) |
CN (3) | CN104636116B (ja) |
BR (1) | BRPI1005543B1 (ja) |
DE (2) | DE102010054267A1 (ja) |
TW (2) | TWI517034B (ja) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8504807B2 (en) * | 2009-12-26 | 2013-08-06 | Intel Corporation | Rotate instructions that complete execution without reading carry flag |
US8464030B2 (en) * | 2010-04-09 | 2013-06-11 | International Business Machines Corporation | Instruction cracking and issue shortening based on instruction base fields, index fields, operand fields, and various other instruction text bits |
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 |
US10565283B2 (en) | 2011-12-22 | 2020-02-18 | Intel Corporation | Processors, methods, systems, and instructions to generate sequences of consecutive integers in numerical order |
WO2013095564A1 (en) | 2011-12-22 | 2013-06-27 | Intel Corporation | Processors, methods, systems, and instructions to generate sequences of integers in numerical order that differ by a constant stride |
WO2013101124A1 (en) * | 2011-12-29 | 2013-07-04 | Intel Corporation | Packed data operation mask comparison processors, methods, systems, and instructions |
WO2013101198A1 (en) | 2011-12-30 | 2013-07-04 | Intel Corporation | Simd variable shift and rotate using control manipulation |
US9128698B2 (en) * | 2012-09-28 | 2015-09-08 | Intel Corporation | Systems, apparatuses, and methods for performing rotate and XOR in response to a single instruction |
US9207941B2 (en) * | 2013-03-15 | 2015-12-08 | Intel Corporation | Systems, apparatuses, and methods for reducing the number of short integer multiplications |
US20190196820A1 (en) * | 2017-12-21 | 2019-06-27 | Intel Corporation | Apparatus and method for right shifting packed quadwords and extracting packed doublewords |
US20190196821A1 (en) * | 2017-12-21 | 2019-06-27 | Intel Corporation | Apparatus and method for right-shifting packed quadwords and extracting packed words |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6014336A (ja) * | 1983-06-30 | 1985-01-24 | インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション | 命令処理装置 |
JPH07504282A (ja) * | 1991-11-12 | 1995-05-11 | マイクロチップ テクノロジー インコーポレイテッド | マイクロコントローラパワーアップ遅延装置 |
US20030188133A1 (en) * | 2002-04-02 | 2003-10-02 | Ip-First Llc | Apparatus and method for selective control of condition code write back |
JP2009282744A (ja) * | 2008-05-22 | 2009-12-03 | Toshiba Corp | 演算器及び半導体集積回路装置 |
JP2011138499A (ja) * | 2009-12-26 | 2011-07-14 | Intel Corp | キャリーフラグの読み出しを伴わずに実行を完了する回転命令 |
Family Cites Families (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3040326C1 (de) | 1980-10-25 | 1981-10-08 | Eurosil GmbH, 8000 München | Mikroprozessor mit Ruecksetz-Schaltanordnung |
US4433390A (en) | 1981-07-30 | 1984-02-21 | The Bendix Corporation | Power processing reset system for a microprocessor responding to sudden deregulation of a voltage |
EP0096531B1 (en) | 1982-06-09 | 1987-09-16 | Fujitsu Limited | One-chip semiconductor device incorporating a power-supply-potential detecting circuit with reset function |
JPS6019220A (ja) | 1983-07-13 | 1985-01-31 | Fujitsu Ltd | マイクロコンピユ−タ |
JPS60143360A (ja) | 1983-12-30 | 1985-07-29 | Casio Comput Co Ltd | 画像形成装置 |
JPS62106524A (ja) | 1985-11-01 | 1987-05-18 | Clarion Co Ltd | 車載用の機器のマイクロコンピユ−タリセツト回路 |
JPH0241353A (ja) | 1988-08-01 | 1990-02-09 | Mitsui Toatsu Chem Inc | 半導体封止用樹脂組成物 |
JPH04278638A (ja) * | 1991-03-07 | 1992-10-05 | Seiko Epson Corp | 情報処理装置 |
JP3043861B2 (ja) * | 1991-09-30 | 2000-05-22 | 株式会社東芝 | データ処理装置 |
CN103092564B (zh) | 1995-08-31 | 2016-04-06 | 英特尔公司 | 执行乘加指令的处理器和对分组数据执行乘加操作的系统 |
US5906002A (en) * | 1997-02-10 | 1999-05-18 | International Business Machines Corporation | Method and apparatus for saving and restoring the context of registers using different instruction sets for different sized registers |
US5881274A (en) * | 1997-07-25 | 1999-03-09 | International Business Machines Corporation | Method and apparatus for performing add and rotate as a single instruction within a processor |
US6715063B1 (en) * | 2000-01-14 | 2004-03-30 | Advanced Micro Devices, Inc. | Call gate expansion for 64 bit addressing |
JP4454810B2 (ja) | 2000-08-04 | 2010-04-21 | Necエレクトロニクス株式会社 | デジタル位相制御方法及びデジタル位相制御回路 |
US7681018B2 (en) | 2000-08-31 | 2010-03-16 | Intel Corporation | Method and apparatus for providing large register address space while maximizing cycletime performance for a multi-threaded register file set |
TW583583B (en) * | 2002-05-09 | 2004-04-11 | Ip First Llc | Apparatus and method for selective control of condition code write back |
US6944744B2 (en) * | 2002-08-27 | 2005-09-13 | Advanced Micro Devices, Inc. | Apparatus and method for independently schedulable functional units with issue lock mechanism in a processor |
CN1438574A (zh) * | 2003-02-21 | 2003-08-27 | 中国航天科技集团公司第九研究院七七一研究所 | 一种16位微处理器指令集 |
US7107435B2 (en) * | 2003-05-27 | 2006-09-12 | International Business Machines Corporation | System and method for using hardware assist functions to process multiple arbitrary sized data elements in a register |
US7373514B2 (en) | 2003-07-23 | 2008-05-13 | Intel Corporation | High-performance hashing system |
JP5088014B2 (ja) | 2007-06-22 | 2012-12-05 | トヨタ自動車株式会社 | 車両用サスペンションシステム |
US7743232B2 (en) * | 2007-07-18 | 2010-06-22 | Advanced Micro Devices, Inc. | Multiple-core processor with hierarchical microcode store |
US7840783B1 (en) * | 2007-09-10 | 2010-11-23 | Netlogic Microsystems, Inc. | System and method for performing a register renaming operation utilizing hardware which is capable of operating in at least two modes utilizing registers of multiple widths |
US8914621B2 (en) * | 2009-04-02 | 2014-12-16 | Infineon Technologies Ag | Processing unit that detects manipulations thereof, device comprising two processing units, method for testing a processing unit and a device comprising two processing units |
-
2009
- 2009-12-26 US US12/655,213 patent/US8504807B2/en active Active
-
2010
- 2010-12-07 JP JP2010272961A patent/JP5665221B2/ja active Active
- 2010-12-08 TW TW099142779A patent/TWI517034B/zh active
- 2010-12-08 TW TW104135844A patent/TWI556166B/zh active
- 2010-12-13 DE DE102010054267A patent/DE102010054267A1/de not_active Ceased
- 2010-12-13 DE DE102010064599.0A patent/DE102010064599A1/de active Pending
- 2010-12-22 BR BRPI1005543-6A patent/BRPI1005543B1/pt active IP Right Grant
- 2010-12-24 CN CN201510116867.8A patent/CN104636116B/zh active Active
- 2010-12-24 CN CN201010623118.1A patent/CN102109976B/zh active Active
- 2010-12-24 CN CN201410680656.2A patent/CN104484154B/zh active Active
-
2013
- 2013-07-22 US US13/947,958 patent/US9164762B2/en active Active
-
2014
- 2014-10-21 JP JP2014214502A patent/JP6034352B2/ja active Active
- 2014-12-05 US US14/562,145 patent/US9916160B2/en active Active
- 2014-12-05 US US14/562,310 patent/US9940131B2/en active Active
- 2014-12-05 US US14/562,223 patent/US9940130B2/en active Active
-
2016
- 2016-10-27 JP JP2016210149A patent/JP6509181B2/ja active Active
-
2018
- 2018-03-29 US US15/939,693 patent/US11106461B2/en active Active
-
2021
- 2021-08-30 US US17/461,949 patent/US11900108B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6014336A (ja) * | 1983-06-30 | 1985-01-24 | インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション | 命令処理装置 |
JPH07504282A (ja) * | 1991-11-12 | 1995-05-11 | マイクロチップ テクノロジー インコーポレイテッド | マイクロコントローラパワーアップ遅延装置 |
US20030188133A1 (en) * | 2002-04-02 | 2003-10-02 | Ip-First Llc | Apparatus and method for selective control of condition code write back |
JP2009282744A (ja) * | 2008-05-22 | 2009-12-03 | Toshiba Corp | 演算器及び半導体集積回路装置 |
JP2011138499A (ja) * | 2009-12-26 | 2011-07-14 | Intel Corp | キャリーフラグの読み出しを伴わずに実行を完了する回転命令 |
Non-Patent Citations (3)
Title |
---|
IA-32 インテル アーキテクチャ ソフトウェア・デバロッパーズ・マニュアル 上巻:基本アーキテクチャ, JPN6018002295, 2004, pages Pages:3-2〜3-5,3-10〜3-12,3-15〜3-19, * |
IA-32 インテル アーキテクチャ ソフトウェア・デバロッパーズ・マニュアル 中巻B:命令セット・リフ, JPN6018002298, 2004, pages Pages:4-159〜4-163 * |
Mシリーズ処理装置(M/64モード)解説書CD01-2-001, vol. 第1版, JPN6018002293, December 2002 (2002-12-01), pages Pages:168,310〜311 * |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6034352B2 (ja) | マルチコアプロセッサ、システムオンチップ、及び、携帯電話機 | |
JP5736028B2 (ja) | 3個のソースオペランドを加算する加算命令 | |
JP6569969B2 (ja) | プロセッサ、方法、プログラム、および機械可読記録媒体 | |
JP6207095B2 (ja) | 条件付きループをベクトル化する命令及び論理 | |
JP6711480B2 (ja) | ベクトルインデックスロードおよびストアのための方法および装置 | |
US10649774B2 (en) | Multiplication instruction for which execution completes without writing a carry flag | |
JP6738579B2 (ja) | 命令フローを最適化するチェックを実行するための装置および方法 | |
JP2018503162A (ja) | スピンループジャンプを実行するための装置および方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20161128 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20161128 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170113 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20171226 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180130 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20180427 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20180629 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180730 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20181211 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190221 |
|
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: 20190305 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190402 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6509181 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 |