JP2014235747A - データ処理システム - Google Patents
データ処理システム Download PDFInfo
- Publication number
- JP2014235747A JP2014235747A JP2014111029A JP2014111029A JP2014235747A JP 2014235747 A JP2014235747 A JP 2014235747A JP 2014111029 A JP2014111029 A JP 2014111029A JP 2014111029 A JP2014111029 A JP 2014111029A JP 2014235747 A JP2014235747 A JP 2014235747A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- instructions
- stream
- execution
- tracker
- 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
- 230000001419 dependent effect Effects 0.000 claims abstract description 26
- 238000000034 method Methods 0.000 claims description 36
- 230000004044 response Effects 0.000 claims description 9
- 238000004590 computer program Methods 0.000 claims description 6
- 230000006872 improvement Effects 0.000 abstract description 2
- 239000012634 fragment Substances 0.000 description 66
- 239000000872 buffer Substances 0.000 description 31
- 230000006870 function Effects 0.000 description 10
- 230000008569 process Effects 0.000 description 10
- 238000009877 rendering Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 238000005070 sampling Methods 0.000 description 4
- 238000002156 mixing Methods 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- 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/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
- G06F9/3838—Dependency mechanisms, e.g. register scoreboarding
-
- 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/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
- G06F9/3851—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution from multiple instruction streams, e.g. multistreaming
-
- 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/3867—Concurrent instruction execution, e.g. pipeline or look ahead using instruction pipelines
-
- 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/3888—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled by a single instruction for multiple threads [SIMT] in parallel
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2210/00—Indexing scheme for image generation or computer graphics
- G06T2210/52—Parallel processing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Computer Graphics (AREA)
- Image Processing (AREA)
- Image Generation (AREA)
- Advance Control (AREA)
- Devices For Executing Special Programs (AREA)
Abstract
Description
実行ステージによって実行すべき命令のストリームについて、命令ストリーム内で並べ替えることができる任意の命令が存在するかどうかを判定するステップと、
命令ストリーム内で並べ替えることができると判定された各命令を、命令完了トラッカに割り当て、命令が割り当てられている命令完了トラッカの指標を、命令のための符号化に含めるステップと、
命令完了トラッカに割り当てられている命令に依存する命令ストリーム内の各命令に対して、命令完了トラッカに割り当てられている命令に依存する命令がどの命令完了トラッカに依存するかの指標を命令ストリーム内に提供するステップと、
実行のための実行ステージに命令ストリーム内の命令をディスパッチするステップと、
命令ストリーム内の命令を実行する際、
割り当てられた命令完了トラッカを使用して命令の完了を追跡するステップと、
命令完了トラッカに依存しているとして示される任意の命令について、命令を実行する前に、その命令完了トラッカの状態をチェックするステップと
を含む。
データ処理動作を実行する命令を実行する1つまたは複数のプログラム可能な実行ステージを含む実行パイプラインと、
実行パイプラインの実行ステージのための命令を生成するために、実行パイプラインのためのプログラムをコンパイルするコンパイラとを備え、
コンパイラは、
実行パイプラインの実行ステージによって実行すべき命令のストリームについて、命令ストリーム内で並べ替えることができる任意の命令が存在するかどうかを判定し、
命令ストリーム内で並べ替えることができると判定された各命令を、命令完了トラッカに割り当て、命令が割り当てられた命令完了トラッカの指標を命令のための符号化に含め、
命令完了トラッカに割り当てられている命令に依存する命令ストリーム内の各命令に対して、命令完了トラッカに割り当てられている命令に依存する命令がどの命令完了トラッカに依存するかの指標を命令ストリーム内に提供する
ように構成され、
実行パイプラインの少なくとも1つの実行ステージは、コンパイラからの命令ストリーム内の命令を実行する際、
割り当てられた命令完了トラッカを使用して命令の完了を追跡し、
命令完了トラッカに依存しているとして示される任意の命令について、命令を実行する前に、その命令完了トラッカの状態をチェックする
ように構成されている。
この方法は、
実行すべき命令のストリーム内に、命令の依存関係の2つ以上の異なるセットに関連付けられている条件分岐命令を含めるステップであって、命令依存関係の各々の異なるセットが、それに関連して従うための命令ストリーム内の所与の経路を有する、ステップと、
実行のための実行ステージに命令ストリーム内の命令をディスパッチするステップと、
命令ストリーム内の条件分岐命令を実行する際、命令に関連する命令依存関係のセットの状態をチェックし、チェックに基づいて、命令ストリーム内の経路に従うステップと
を含む。
データ処理動作を実行するためにプログラム命令を実行する1つまたは複数のプログラム可能な実行ステージを含む実行パイプラインであって、命令の実行は、他の命令の完了に依存することができ、命令の完了は追跡され、命令の実行に関して他の命令の完了に依存する命令の依存関係は、依存関係の命令に関連付けることができる、実行パイプラインと、
処理回路網と
を備え、この処理回路網は、
実行すべき命令のストリーム内に、命令の依存関係の2つ以上の異なるセットに関連している条件分岐命令を含めることであって、命令依存関係の各々の異なるセットは、それに関連して従うための命令ストリーム内の所与の経路を有する、含めること、および
実行のための実行パイプラインに命令ストリーム内の命令をディスパッチすること
を行うように構成され、
実行パイプラインは、命令ストリーム内の条件分岐命令を実行する際、命令に関連する命令依存関係のセットの状態をチェックし、チェックに基づいて、命令ストリーム内の経路に従うように構成されている。
実行パイプラインの実行ステージによって実行すべき命令のストリームに関して、命令ストリーム内で並べ替えることができる任意の命令が存在するかどうかを判定し、
命令ストリーム内で並べ替えることができると判定されている各命令を、命令完了トラッカに割り当て、命令が割り当てられている命令完了トラッカの指標を、命令の符号化に含め、
命令完了トラッカに割り当てられている命令に依存する命令ストリーム内の各命令に対して、命令完了トラッカに割り当てられている命令に依存する命令がどの命令完了トラッカに依存するかの指標を命令ストリーム内に提供する
ように構成されている。
実行パイプラインの実行ステージによって実行すべき命令のストリームに関して、命令ストリーム内に並べ替えることができる任意の命令が存在するかどうかを判定するステップと、
命令ストリーム内で並べ替えることができると判定されている各命令を、命令完了トラッカに割り当て、命令の符号化に、割り当てられている命令完了トラッカの指標を含めるステップと、
命令完了トラッカに割り当てられている命令に依存する命令ストリーム内の各命令に対して、命令完了トラッカに割り当てられている命令に依存する命令がどの命令完了トラッカに依存するかの指標を命令ストリーム内に提供するステップと
を含む。
実行パイプラインの少なくとも1つの実行ステージは、命令ストリーム内の命令を実行する際、
命令が命令完了トラッカに割り当てられている実行ステージのためのコンパイラによって提供される命令のための符号化内の指標に応答して、示された割り当てられた命令完了トラッカを使用して、命令の完了を追跡し、
実行ステージのためのコンパイラによって提供される命令のための符号化内の、命令ストリーム内の命令が命令完了トラッカに依存することの指標に応答して、命令完了トラッカに依存しているとして示される命令を実行する前に、示された命令完了トラッカの状態をチェックする
ように構成されている。
実行パイプラインの少なくとも1つの実行ステージが、命令ストリーム内の命令を実行する際、
命令が命令完了トラッカに割り当てられている実行ステージのためのコンパイラによって提供される命令のための符号化内の指標に応答して、示された割り当てられた命令完了トラッカを使用して、命令の完了を追跡するステップと、
命令ストリーム内の命令が命令完了トラッカに依存する実行ステージのためのコンパイラによって提供される命令のための符号化内の命令に応答して、命令完了トラッカに依存しているとして示される命令を実行する前に、示された命令完了トラッカの状態をチェックするステップと
を含む。
2 アプリケーション
3 グラフィックス処理パイプライン
4 ドライバ
20 頂点シェーダ
21 ハルシェーダ
22 テッセレータ
23 ドメインシェーダ
24 ジオメトリシェーダ
25 ラスタライズステージ
26 初期Z(深度)およびステンシルテストステージ
27 フラグメントシェーディングステージ
28 後期Z(深度)およびステンシルテストステージ
29 ブレンディングステージ
30 タイルバッファ
31 ダウンサンプリングおよび書き出し(マルチサンプルリゾルブ)ステージ
Claims (25)
- データ処理動作を実行するために命令を実行する1つまたは複数のプログラム可能な実行ステージを含む実行パイプラインを含むデータ処理システムを動作させる方法であって、
実行ステージによって実行すべき命令のストリームについて、前記命令ストリーム内で並べ替えることができる任意の命令が存在するかどうかを判定するステップと、
前記命令ストリーム内で並べ替えることができると判定された各命令を、命令完了トラッカに割り当て、前記命令が割り当てられた前記命令完了トラッカの指標を前記命令のための符号化に含めるステップと、
命令完了トラッカに割り当てられている命令に依存する前記命令ストリーム内の各命令に対して、命令完了トラッカに割り当てられている命令に依存する前記命令がどの命令完了トラッカに依存するかの指標を前記命令ストリーム内に提供するステップと、
実行のための前記実行ステージに前記命令ストリーム内の命令をディスパッチするステップと、
前記命令ストリーム内の前記命令を実行する際、
前記割り当てられた命令完了トラッカを使用して前記命令の完了を追跡するステップと、
命令完了トラッカに依存しているとして示される任意の命令について、前記命令を実行する前に、その命令完了トラッカの状態をチェックするステップと
を含む、方法。 - 並べ替えることができる前記命令ストリーム内の前記命令が、メモリロード、メモリ格納、メモリアトミック、属性補間、およびテクスチャルックアップを含む、請求項1に記載の方法。
- 各命令完了トラッカが、前記命令の完了を追跡するために使用されるカウンタを備える、請求項1または2に記載の方法。
- 命令が割り当てられている前記命令完了トラッカが、前記命令がどの命令トラッカに割り当てられているのかを指定する命令符号化内の領域内で示される、請求項1から3のいずれか一項に記載の方法。
- もしあれば、前記命令ストリーム内の命令に対して提供される、前記命令がどの命令完了トラッカに依存するかの前記指標が、前記命令ストリーム内の直前の命令内で示される、請求項1から4のいずれか一項に記載の方法。
- フェンス命令を前記命令ストリーム内に含めるステップをさらに含み、前記フェンス命令が、前記フェンス命令の後の命令が実行される前に、前記フェンス命令の前の前記ストリーム内の所与のタイプのすべての前記命令を強制的に完了させる、請求項1から5のいずれか一項に記載の方法。
- 分岐命令を前記命令ストリーム内に含めるステップをさらに含み、前記分岐命令が、それに関連付けられた異なる命令トラッカ依存関係の2つ以上のセットを有し、命令トラッカ依存関係の前記セットのうちの1つが満たされる場合、分岐が取られる、請求項1から6のいずれか一項に記載の方法。
- 前記データ処理システムが、グラフィックス処理動作を実行するためにグラフィックスシェーダプログラムを実行する1つまたは複数のプログラム可能なシェーダステージを含むグラフィックス処理パイプラインを含むグラフィックス処理システムを備える、請求項1から7のいずれか一項に記載の方法。
- データ処理動作を実行するために命令を実行する1つまたは複数のプログラム可能な実行ステージを含む実行パイプラインを含むデータ処理システムを動作させる方法であって、命令の前記実行が他の命令の完了に依存することができ、命令の完了が追跡され、前記命令の実行に関して他の命令の完了に依存する命令の依存関係は、前記依存関係の命令に関連付けることができ、
前記方法が、
実行すべき命令のストリーム内に、命令の依存関係の2つ以上の異なるセットが関連付けられている条件分岐命令を含めるステップであって、命令依存関係の各々の異なるセットが、それに関連して従うための前記命令ストリーム内の所与の経路を有する、ステップと、
実行のための実行ステージに前記命令ストリーム内の命令をディスパッチするステップと、
前記命令ストリーム内の前記条件分岐命令を実行する際、前記命令に関連する命令依存関係の前記セットの状態をチェックし、前記チェックに基づいて、前記命令ストリーム内の経路に従うステップと
を含む、方法。 - データ処理動作を実行する命令を実行する1つまたは複数のプログラム可能な実行ステージを含む実行パイプラインと、
前記実行パイプラインの実行ステージのための命令のストリームを生成するために、前記実行パイプラインのためのプログラムをコンパイルするコンパイラと
を備えるデータ処理システムであって、
前記コンパイラが、
実行ステージによって実行すべき命令のストリームについて、前記命令ストリーム内で並べ替えることができる任意の命令が存在するかどうかを判定し、
前記命令ストリーム内で並べ替えることができると判定された各命令を、命令完了トラッカに割り当て、命令が割り当てられた前記命令完了トラッカの指標を、前記命令のための符号化に含め、
命令完了トラッカに割り当てられている命令に依存する前記命令ストリーム内の各命令に対して、命令完了トラッカに割り当てられている命令に依存する命令がどの命令完了トラッカに依存するかの指標を前記命令ストリーム内に提供する
ように構成され、
前記実行パイプラインの少なくとも1つの実行ステージが、命令ストリーム内の命令を実行する際、
前記割り当てられた命令完了トラッカを使用して前記命令の完了を追跡し、
前記命令完了トラッカに依存しているとして示される任意の命令について、前記命令を実行する前に、その命令完了トラッカの状態をチェックする
ように構成されている、データ処理システム。 - 並べ替えることができる前記命令ストリーム内の前記命令が、メモリロード、メモリ格納、メモリアトミック、属性補間、およびテクスチャルックアップを含む、請求項10に記載のデータ処理システム。
- 各命令完了トラッカが、前記命令の完了を追跡するために使用されるカウンタを備える、請求項10または11に記載のデータ処理システム。
- 命令が割り当てられている前記命令完了トラッカが、前記命令がどの命令トラッカに割り当てられているのかを指定する命令符号化内の領域内で示される、請求項10から12のいずれか一項に記載のデータ処理システム。
- もしあれば、前記命令ストリーム内の命令に対して提供される、前記命令がどの命令完了トラッカ依存するかの前記指標が、前記命令ストリーム内の直前の命令内で示される、請求項10から13のいずれか一項に記載のデータ処理システム。
- 前記コンパイラが、さらに、フェンス命令を前記命令ストリーム内に含めるように構成され、前記フェンス命令が、前記フェンス命令の後の命令が実行される前に、前記フェンス命令の前の前記ストリーム内の所与のタイプのすべての前記命令を強制的に完了させる、請求項10から14のいずれか一項に記載のデータ処理システム。
- 前記コンパイラが、さらに、分岐命令を前記命令ストリーム内に含めるように構成され、前記分岐命令が、それに関連付けられた異なる命令トラッカ依存関係の2つ以上のセットを有し、命令トラッカ依存関係の前記セットのうちの1つが満たされる場合、分岐が取られる、請求項10から15のいずれか一項に記載のデータ処理システム。
- グラフィックス処理動作を実行するためにグラフィックスシェーダプログラムを実行する1つまたは複数のプログラム可能なシェーダステージを含むグラフィックス処理パイプラインを含むグラフィックス処理システムを備える、請求項10から16のいずれか一項に記載のデータ処理システム。
- データ処理動作を実行するために命令を実行する1つまたは複数のプログラム可能な実行ステージを含む実行パイプラインの実行ステージのための命令を生成するためにプログラムをコンパイルするコンパイラであって、
前記実行パイプラインの実行ステージによって実行すべき命令のストリームに関して、前記命令ストリーム内で並べ替えることができる任意の命令が存在するかどうかを判定し、
前記命令ストリーム内で並べ替えることができると判定されている各命令を、命令完了トラッカに割り当て、前記命令が割り当てられている前記命令完了トラッカの指標を、前記命令の符号化に含め、
命令完了トラッカに割り当てられている命令に依存する前記命令ストリーム内の各命令に対して、命令完了トラッカに割り当てられている命令に依存する命令がどの命令完了トラッカに依存するかの指標を前記命令ストリーム内に提供する
ように構成されている、コンパイラ。 - データ処理動作を実行するために命令を実行する1つまたは複数のプログラム可能な実行ステージを含む、データ処理システムのための実行パイプラインであって、
前記実行パイプラインの少なくとも1つの実行ステージが、命令ストリーム内の命令を実行する際、
命令が命令完了トラッカに割り当てられている前記実行ステージのためのコンパイラによって提供される前記命令のための符号化内の指標に応答して、示された割り当てられた命令完了トラッカを使用して、前記命令の完了を追跡し、
前記実行ステージのためのコンパイラによって提供される命令のための符号化内の、前記命令ストリーム内の命令が命令完了トラッカに依存することの指標に応答して、前記命令完了トラッカに依存しているとして示される前記命令を実行する前に、前記示された命令完了トラッカの状態をチェックする
ように構成されている、実行パイプライン。 - データ処理動作を実行するために命令を実行する1つまたは複数のプログラム可能な実行ステージを含む実行パイプラインであって、命令の前記実行が他の命令の完了に依存することができ、命令の完了が追跡され、前記命令の実行に関して他の命令の完了に依存する命令の依存関係は、前記依存関係の命令に関連付けることができる、実行パイプラインと、
処理回路網と
を備えるデータ処理システムであって、
前記処理回路網は、
実行すべき命令のストリーム内に、命令の依存関係の2つ以上の異なるセットに関連している条件分岐命令を含めることであって、命令依存関係の各々の異なるセットが、それに関連して従うための前記命令ストリーム内の所与の分岐経路を有する、含めること、および、
実行のための前記実行パイプラインに前記命令ストリーム内の命令をディスパッチすること
を行うように構成され、
前記実行パイプラインが、前記命令ストリーム内の前記条件分岐命令を実行する際、前記命令に関連する命令依存関係の前記セットの状態をチェックし、前記チェックに基づいて、前記命令ストリーム内の経路に従うように構成されている、
データ処理システム。 - データ処理システム上で実行されると、請求項1から9のいずれか一項に記載の方法のすべてのステップを実行するように適合されたコードを含むコンピュータプログラム。
- 実質的に、添付図面のいずれか1つに関連して本明細書で説明されたようにデータ処理システムを動作させる方法。
- 実質的に、添付図面のいずれか1つに関連して本明細書で記載されたようなデータ処理システム。
- 実質的に、添付図面のいずれか1つに関連して本明細書で記載されたようなデータ処理システムのためのコンパイラ。
- 実質的に、添付図面のいずれか1つに関連して本明細書で記載されたようなデータ処理システムのための実行パイプライン。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB1309765.4A GB2514618B (en) | 2013-05-31 | 2013-05-31 | Data processing systems |
GB1309765.4 | 2013-05-31 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014235747A true JP2014235747A (ja) | 2014-12-15 |
JP6403436B2 JP6403436B2 (ja) | 2018-10-10 |
Family
ID=48805563
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014111029A Active JP6403436B2 (ja) | 2013-05-31 | 2014-05-29 | データ処理システム |
Country Status (4)
Country | Link |
---|---|
US (1) | US10176546B2 (ja) |
JP (1) | JP6403436B2 (ja) |
CN (1) | CN104217393B (ja) |
GB (1) | GB2514618B (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018514034A (ja) * | 2015-04-08 | 2018-05-31 | アーム・リミテッド | グラフィックス処理システム |
JP2019016328A (ja) * | 2017-07-11 | 2019-01-31 | 富士通株式会社 | 情報処理装置、情報処理システム及びプログラム |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8203984B2 (en) | 2008-12-19 | 2012-06-19 | Intel Corporation | Power management for wireless networks |
US9928564B2 (en) * | 2014-06-26 | 2018-03-27 | Intel Corporation | Efficient hardware mechanism to ensure shared resource data coherency across draw calls |
US9799088B2 (en) * | 2014-08-21 | 2017-10-24 | Qualcomm Incorporated | Render target command reordering in graphics processing |
US9824413B2 (en) * | 2014-11-15 | 2017-11-21 | Intel Corporation | Sort-free threading model for a multi-threaded graphics pipeline |
US9824414B2 (en) | 2014-12-09 | 2017-11-21 | Intel Corporation | Thread dispatching for graphics processors |
US10796397B2 (en) * | 2015-06-12 | 2020-10-06 | Intel Corporation | Facilitating dynamic runtime transformation of graphics processing commands for improved graphics performance at computing devices |
GB2539958B (en) * | 2015-07-03 | 2019-09-25 | Advanced Risc Mach Ltd | Data processing systems |
GB2540382B (en) * | 2015-07-15 | 2020-03-04 | Advanced Risc Mach Ltd | Data processing systems |
CN106708723B (zh) * | 2015-11-13 | 2019-11-08 | 阿里巴巴集团控股有限公司 | 一种测试、校验方法及装置 |
GB2551574B (en) * | 2016-06-24 | 2019-11-27 | Advanced Risc Mach Ltd | An apparatus and method for generating and processing a trace stream indicative of instruction execution by processing circuitry |
US10460513B2 (en) * | 2016-09-22 | 2019-10-29 | Advanced Micro Devices, Inc. | Combined world-space pipeline shader stages |
US10310856B2 (en) | 2016-11-09 | 2019-06-04 | Arm Limited | Disabling thread execution when executing instructions in a data processing system |
US10649521B2 (en) | 2017-04-24 | 2020-05-12 | Intel Corporation | Compensating for high head movement in head-mounted displays |
GB2563582B (en) * | 2017-06-16 | 2020-01-01 | Imagination Tech Ltd | Methods and systems for inter-pipeline data hazard avoidance |
US10127626B1 (en) * | 2017-07-21 | 2018-11-13 | Arm Limited | Method and apparatus improving the execution of instructions by execution threads in data processing systems |
US10643369B2 (en) * | 2018-05-30 | 2020-05-05 | Advanced Micro Devices, Inc. | Compiler-assisted techniques for memory use reduction in graphics pipeline |
US10884720B2 (en) * | 2018-10-04 | 2021-01-05 | Microsoft Technology Licensing, Llc | Memory ordering annotations for binary emulation |
US10740074B2 (en) * | 2018-11-30 | 2020-08-11 | Advanced Micro Devices, Inc. | Conditional construct splitting for latency hiding |
US10943323B2 (en) * | 2018-12-28 | 2021-03-09 | Arm Limited | Data processing systems |
US11687347B2 (en) * | 2021-05-25 | 2023-06-27 | Andes Technology Corporation | Microprocessor and method for speculatively issuing load/store instruction with non-deterministic access time using scoreboard |
US11892972B2 (en) * | 2021-09-08 | 2024-02-06 | Arm Limited | Synchronization mechanisms for a multi-core processor using wait commands having either a blocking or a non-blocking state |
CN115510342B (zh) * | 2022-11-23 | 2023-03-28 | 沐曦集成电路(上海)有限公司 | 利用多级指针维护乱序数据的方法、装置、介质及设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010522940A (ja) * | 2007-03-28 | 2010-07-08 | クゥアルコム・インコーポレイテッド | プロセッサにおいて実行ステージに先立って命令を実行するためのシステムおよび方法 |
JP2011514592A (ja) * | 2008-02-22 | 2011-05-06 | クゥアルコム・インコーポレイテッド | グラフィックス処理の命令レイテンシ減少のためのシステムおよび方法 |
JP2012216009A (ja) * | 2011-03-31 | 2012-11-08 | Nec Corp | メモリアクセス命令の追い越し制御によるプログラムの高速化方法 |
Family Cites Families (265)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5021945A (en) * | 1985-10-31 | 1991-06-04 | Mcc Development, Ltd. | Parallel processor system for processing natural concurrencies and method therefor |
US5202975A (en) * | 1990-06-11 | 1993-04-13 | Supercomputer Systems Limited Partnership | Method for optimizing instruction scheduling for a processor having multiple functional resources |
US5488729A (en) * | 1991-05-15 | 1996-01-30 | Ross Technology, Inc. | Central processing unit architecture with symmetric instruction scheduling to achieve multiple instruction launch and execution |
JP3730252B2 (ja) * | 1992-03-31 | 2005-12-21 | トランスメタ コーポレイション | レジスタ名称変更方法及び名称変更システム |
JP2786574B2 (ja) * | 1992-05-06 | 1998-08-13 | インターナショナル・ビジネス・マシーンズ・コーポレイション | コンピュータ・システムにおける順不同ロード動作の性能を改善する方法と装置 |
US5450560A (en) * | 1992-12-21 | 1995-09-12 | Motorola, Inc. | Pointer for use with a buffer and method of operation |
US5542059A (en) * | 1994-01-11 | 1996-07-30 | Exponential Technology, Inc. | Dual instruction set processor having a pipeline with a pipestage functional unit that is relocatable in time and sequence order |
US5584037A (en) * | 1994-03-01 | 1996-12-10 | Intel Corporation | Entry allocation in a circular buffer |
TW260765B (ja) * | 1994-03-31 | 1995-10-21 | Ibm | |
US5559976A (en) * | 1994-03-31 | 1996-09-24 | International Business Machines Corporation | System for instruction completion independent of result write-back responsive to both exception free completion of execution and completion of all logically prior instructions |
US5649225A (en) * | 1994-06-01 | 1997-07-15 | Advanced Micro Devices, Inc. | Resynchronization of a superscalar processor |
US5627981A (en) * | 1994-07-01 | 1997-05-06 | Digital Equipment Corporation | Software mechanism for accurately handling exceptions generated by instructions scheduled speculatively due to branch elimination |
TW295646B (ja) * | 1995-01-25 | 1997-01-11 | Ibm | |
US5699536A (en) * | 1995-04-13 | 1997-12-16 | International Business Machines Corporation | Computer processing system employing dynamic instruction formatting |
EP0829045B1 (en) * | 1995-06-01 | 2002-09-04 | Fujitsu Limited | Coordinating the issue of instructions in a parallel instruction processing system |
US6112019A (en) * | 1995-06-12 | 2000-08-29 | Georgia Tech Research Corp. | Distributed instruction queue |
US5911057A (en) * | 1995-12-19 | 1999-06-08 | Texas Instruments Incorporated | Superscalar microprocessor having combined register and memory renaming circuits, systems, and methods |
US5761515A (en) * | 1996-03-14 | 1998-06-02 | International Business Machines Corporation | Branch on cache hit/miss for compiler-assisted miss delay tolerance |
JPH09265397A (ja) * | 1996-03-29 | 1997-10-07 | Hitachi Ltd | Vliw命令用プロセッサ |
US5870616A (en) * | 1996-10-04 | 1999-02-09 | International Business Machines Corporation | System and method for reducing power consumption in an electronic circuit |
US5938760A (en) * | 1996-12-17 | 1999-08-17 | International Business Machines Corporation | System and method for performance monitoring of instructions in a re-order buffer |
US5961654A (en) * | 1996-12-17 | 1999-10-05 | International Business Machines Corporation | Operand fetch bandwidth analysis |
US6189072B1 (en) * | 1996-12-17 | 2001-02-13 | International Business Machines Corporation | Performance monitoring of cache misses and instructions completed for instruction parallelism analysis |
US5918005A (en) * | 1997-03-25 | 1999-06-29 | International Business Machines Corporation | Apparatus region-based detection of interference among reordered memory operations in a processor |
US5928334A (en) * | 1997-03-28 | 1999-07-27 | International Business Machines Corporation | Hardware verification tool for multiprocessors |
US6260191B1 (en) * | 1997-04-07 | 2001-07-10 | Hewlett-Packard Company | User controlled relaxation of optimization constraints related to volatile memory references |
US5937191A (en) * | 1997-06-03 | 1999-08-10 | Ncr Corporation | Determining and reporting data accessing activity of a program |
US6139199A (en) * | 1997-06-11 | 2000-10-31 | Sun Microsystems, Inc. | Fast just-in-time (JIT) scheduler |
US6044222A (en) * | 1997-06-23 | 2000-03-28 | International Business Machines Corporation | System, method, and program product for loop instruction scheduling hardware lookahead |
US6748587B1 (en) * | 1998-01-02 | 2004-06-08 | Hewlett-Packard Development Company, L.P. | Programmatic access to the widest mode floating-point arithmetic supported by a processor |
US6988183B1 (en) * | 1998-06-26 | 2006-01-17 | Derek Chi-Lan Wong | Methods for increasing instruction-level parallelism in microprocessors and digital system |
US6163839A (en) * | 1998-09-30 | 2000-12-19 | Intel Corporation | Non-stalling circular counterflow pipeline processor with reorder buffer |
US6636950B1 (en) * | 1998-12-17 | 2003-10-21 | Massachusetts Institute Of Technology | Computer architecture for shared memory access |
US6189088B1 (en) * | 1999-02-03 | 2001-02-13 | International Business Machines Corporation | Forwarding stored dara fetched for out-of-order load/read operation to over-taken operation read-accessing same memory location |
US6463579B1 (en) * | 1999-02-17 | 2002-10-08 | Intel Corporation | System and method for generating recovery code |
US6247114B1 (en) * | 1999-02-19 | 2001-06-12 | Advanced Micro Devices, Inc. | Rapid selection of oldest eligible entry in a queue |
US6499116B1 (en) * | 1999-03-31 | 2002-12-24 | International Business Machines Corp. | Performance of data stream touch events |
US6487715B1 (en) * | 1999-04-16 | 2002-11-26 | Sun Microsystems, Inc. | Dynamic code motion optimization and path tracing |
US7430670B1 (en) * | 1999-07-29 | 2008-09-30 | Intertrust Technologies Corp. | Software self-defense systems and methods |
US6425072B1 (en) * | 1999-08-31 | 2002-07-23 | Advanced Micro Devices, Inc. | System for implementing a register free-list by using swap bit to select first or second register tag in retire queue |
US6487716B1 (en) * | 1999-10-08 | 2002-11-26 | International Business Machines Corporation | Methods and apparatus for optimizing programs in the presence of exceptions |
US6654869B1 (en) * | 1999-10-28 | 2003-11-25 | International Business Machines Corporation | Assigning a group tag to an instruction group wherein the group tag is recorded in the completion table along with a single instruction address for the group to facilitate in exception handling |
US6574727B1 (en) * | 1999-11-04 | 2003-06-03 | International Business Machines Corporation | Method and apparatus for instruction sampling for performance monitoring and debug |
US6550002B1 (en) * | 1999-11-04 | 2003-04-15 | International Business Machines Corporation | Method and system for detecting a flush of an instruction without a flush indicator |
US6530042B1 (en) * | 1999-11-08 | 2003-03-04 | International Business Machines Corporation | Method and apparatus for monitoring the performance of internal queues in a microprocessor |
US6539502B1 (en) * | 1999-11-08 | 2003-03-25 | International Business Machines Corporation | Method and apparatus for identifying instructions for performance monitoring in a microprocessor |
US6591342B1 (en) * | 1999-12-14 | 2003-07-08 | Intel Corporation | Memory disambiguation for large instruction windows |
US6697932B1 (en) * | 1999-12-30 | 2004-02-24 | Intel Corporation | System and method for early resolution of low confidence branches and safe data cache accesses |
US6651163B1 (en) * | 2000-03-08 | 2003-11-18 | Advanced Micro Devices, Inc. | Exception handling with reduced overhead in a multithreaded multiprocessing system |
GB2367653B (en) * | 2000-10-05 | 2004-10-20 | Advanced Risc Mach Ltd | Restarting translated instructions |
GB2367651B (en) * | 2000-10-05 | 2004-12-29 | Advanced Risc Mach Ltd | Hardware instruction translation within a processor pipeline |
GB2367654B (en) * | 2000-10-05 | 2004-10-27 | Advanced Risc Mach Ltd | Storing stack operands in registers |
US6675376B2 (en) * | 2000-12-29 | 2004-01-06 | Intel Corporation | System and method for fusing instructions |
GB2376097B (en) * | 2001-05-31 | 2005-04-06 | Advanced Risc Mach Ltd | Configuration control within data processing systems |
US20030005422A1 (en) * | 2001-07-02 | 2003-01-02 | Nicolai Kosche | Technique for improving the prediction rate of dynamically unpredictable branches |
US7434030B2 (en) * | 2001-09-12 | 2008-10-07 | Renesas Technology Corp. | Processor system having accelerator of Java-type of programming language |
US20030074655A1 (en) * | 2001-09-27 | 2003-04-17 | Robison Arch D. | Method and apparatus for alias analysis for restricted pointers |
US7055021B2 (en) * | 2002-02-05 | 2006-05-30 | Sun Microsystems, Inc. | Out-of-order processor that reduces mis-speculation using a replay scoreboard |
US7260102B2 (en) * | 2002-02-22 | 2007-08-21 | Nortel Networks Limited | Traffic switching using multi-dimensional packet classification |
JP3870112B2 (ja) * | 2002-03-13 | 2007-01-17 | インターナショナル・ビジネス・マシーンズ・コーポレーション | コンパイル方法、コンパイル装置、及びコンパイル用プログラム |
US7058937B2 (en) * | 2002-04-12 | 2006-06-06 | Intel Corporation | Methods and systems for integrated scheduling and resource management for a compiler |
US7082602B2 (en) * | 2002-04-12 | 2006-07-25 | Intel Corporation | Function unit based finite state automata data structure, transitions and methods for making the same |
US7007271B2 (en) * | 2002-04-18 | 2006-02-28 | Sun Microsystems, Inc. | Method and apparatus for integrated instruction scheduling and register allocation in a postoptimizer |
US8141068B1 (en) * | 2002-06-18 | 2012-03-20 | Hewlett-Packard Development Company, L.P. | Compiler with flexible scheduling |
AU2002368121A1 (en) * | 2002-07-30 | 2004-02-16 | The Circle For The Promotion Of Science And Engineering | Command control device, function unit, program converter, and language processor |
US20040025151A1 (en) * | 2002-07-31 | 2004-02-05 | Shan-Chyun Ku | Method for improving instruction selection efficiency in a DSP/RISC compiler |
US8108843B2 (en) * | 2002-09-17 | 2012-01-31 | International Business Machines Corporation | Hybrid mechanism for more efficient emulation and method therefor |
US7062636B2 (en) * | 2002-09-19 | 2006-06-13 | Intel Corporation | Ordering scheme with architectural operation decomposed into result producing speculative micro-operation and exception producing architectural micro-operation |
US7349399B1 (en) * | 2002-09-20 | 2008-03-25 | Redback Networks, Inc. | Method and apparatus for out-of-order processing of packets using linked lists |
EP1447742A1 (en) * | 2003-02-11 | 2004-08-18 | STMicroelectronics S.r.l. | Method and apparatus for translating instructions of an ARM-type processor into instructions for a LX-type processor |
US7290254B2 (en) * | 2003-03-25 | 2007-10-30 | Intel Corporation | Combining compilation and instruction set translation |
US7093106B2 (en) * | 2003-04-23 | 2006-08-15 | International Business Machines Corporation | Register rename array with individual thread bits set upon allocation and cleared upon instruction completion |
US7530062B2 (en) * | 2003-05-23 | 2009-05-05 | Microsoft Corporation | Optimizing compiler transforms for a high level shader language |
US7159101B1 (en) * | 2003-05-28 | 2007-01-02 | Mips Technologies, Inc. | System and method to trace high performance multi-issue processors |
US7313790B2 (en) * | 2003-06-23 | 2007-12-25 | Intel Corporation | Methods and apparatus for preserving precise exceptions in code reordering by using control speculation |
US20040268098A1 (en) * | 2003-06-30 | 2004-12-30 | Yoav Almog | Exploiting parallelism across VLIW traces |
CA2439137A1 (en) * | 2003-08-08 | 2005-02-08 | Ibm Canada Limited - Ibm Canada Limitee | Improved scheduling technique for software pipelining |
US8595688B1 (en) * | 2003-09-08 | 2013-11-26 | Synopsys, Inc. | Generation of instruction set from architecture description |
US7114060B2 (en) * | 2003-10-14 | 2006-09-26 | Sun Microsystems, Inc. | Selectively deferring instructions issued in program order utilizing a checkpoint and multiple deferral scheme |
US9659339B2 (en) * | 2003-10-29 | 2017-05-23 | Nvidia Corporation | Programmable graphics processor for multithreaded execution of programs |
US7711932B2 (en) * | 2003-12-02 | 2010-05-04 | Intel Corporation | Scalable rename map table recovery |
US20050125786A1 (en) * | 2003-12-09 | 2005-06-09 | Jinquan Dai | Compiler with two phase bi-directional scheduling framework for pipelined processors |
GB2411975B (en) * | 2003-12-09 | 2006-10-04 | Advanced Risc Mach Ltd | Data processing apparatus and method for performing arithmetic operations in SIMD data processing |
US7373484B1 (en) * | 2004-01-12 | 2008-05-13 | Advanced Micro Devices, Inc. | Controlling writes to non-renamed register space in an out-of-order execution microprocessor |
US7293159B2 (en) * | 2004-01-15 | 2007-11-06 | International Business Machines Corporation | Coupling GP processor with reserved instruction interface via coprocessor port with operation data flow to application specific ISA processor with translation pre-decoder |
JP4502650B2 (ja) * | 2004-02-03 | 2010-07-14 | 日本電気株式会社 | アレイ型プロセッサ |
US7325124B2 (en) * | 2004-04-21 | 2008-01-29 | International Business Machines Corporation | System and method of execution of register pointer instructions ahead of instruction issue |
JP4376692B2 (ja) * | 2004-04-30 | 2009-12-02 | 富士通株式会社 | 情報処理装置、プロセッサ、プロセッサの制御方法、情報処理装置の制御方法、キャッシュメモリ |
JP4178278B2 (ja) * | 2004-05-25 | 2008-11-12 | インターナショナル・ビジネス・マシーンズ・コーポレーション | コンパイラ装置、最適化方法、コンパイラプログラム、及び記録媒体 |
US7941799B2 (en) * | 2004-05-27 | 2011-05-10 | International Business Machines Corporation | Interpreting I/O operation requests from pageable guests without host intervention |
US7257700B2 (en) * | 2004-06-03 | 2007-08-14 | Sun Microsystems, Inc. | Avoiding register RAW hazards when returning from speculative execution |
US7200723B1 (en) * | 2004-08-06 | 2007-04-03 | Xilinx, Inc. | Access to a bank of registers of a device control register interface using a single address |
US7506331B2 (en) * | 2004-08-30 | 2009-03-17 | International Business Machines Corporation | Method and apparatus for determining the profitability of expanding unpipelined instructions |
US7624255B1 (en) * | 2005-03-09 | 2009-11-24 | Nvidia Corporation | Scheduling program instruction execution by using fence instructions |
JP3863544B1 (ja) * | 2005-07-07 | 2006-12-27 | 富士通株式会社 | 演算処理装置及び演算処理方法 |
US7937564B1 (en) * | 2005-09-28 | 2011-05-03 | Oracle America, Inc. | Emit vector optimization of a trace |
US7508396B2 (en) * | 2005-09-28 | 2009-03-24 | Silicon Integrated Systems Corp. | Register-collecting mechanism, method for performing the same and pixel processing system employing the same |
JP4778286B2 (ja) * | 2005-09-28 | 2011-09-21 | パナソニック株式会社 | コンパイラ装置 |
US7849292B1 (en) * | 2005-09-28 | 2010-12-07 | Oracle America, Inc. | Flag optimization of a trace |
US7450131B2 (en) | 2005-09-30 | 2008-11-11 | Intel Corporation | Memory layout for re-ordering instructions using pointers |
GB2430773A (en) * | 2005-10-03 | 2007-04-04 | Advanced Risc Mach Ltd | Alignment of variable length program instructions |
US20070094639A1 (en) * | 2005-10-26 | 2007-04-26 | Arm Limited | Preparing assembly languague source code |
US7330962B2 (en) * | 2005-11-14 | 2008-02-12 | Nvidia Corporation | Dynamic instruction sequence selection during scheduling |
US7840397B2 (en) * | 2005-12-02 | 2010-11-23 | Derek Chiou | Simulation method |
US7650487B2 (en) * | 2006-03-08 | 2010-01-19 | Sun Microsystems, Inc. | Method and structure for coordinating instruction execution in out-of-order processor execution using an instruction including an artificial register dependency |
US8266413B2 (en) * | 2006-03-14 | 2012-09-11 | The Board Of Trustees Of The University Of Illinois | Processor architecture for multipass processing of instructions downstream of a stalled instruction |
US20070220235A1 (en) * | 2006-03-15 | 2007-09-20 | Arm Limited | Instruction subgraph identification for a configurable accelerator |
JP4884297B2 (ja) * | 2006-05-26 | 2012-02-29 | パナソニック株式会社 | コンパイラ装置、コンパイル方法およびコンパイラプログラム |
US20080040590A1 (en) * | 2006-08-11 | 2008-02-14 | Lea Hwang Lee | Selective branch target buffer (btb) allocaiton |
US8291431B2 (en) * | 2006-08-29 | 2012-10-16 | Qualcomm Incorporated | Dependent instruction thread scheduling |
US20080077778A1 (en) * | 2006-09-25 | 2008-03-27 | Davis Gordon T | Method and Apparatus for Register Renaming in a Microprocessor |
US20080084424A1 (en) * | 2006-10-09 | 2008-04-10 | Silicon Integrated Systems Corp. | Early retiring instruction mechanism, method for performing the same and pixel processing system thereof |
GB2443277B (en) * | 2006-10-24 | 2011-05-18 | Advanced Risc Mach Ltd | Performing diagnostics operations upon an asymmetric multiprocessor apparatus |
EP2122461A4 (en) * | 2006-11-14 | 2010-03-24 | Soft Machines Inc | DEVICE AND METHOD FOR PROCESSING COMMUNICATIONS IN A MULTITHREAD ARCHITECTURE WITH CONTEXT CHANGES |
JP4230504B2 (ja) * | 2006-11-30 | 2009-02-25 | 株式会社日立製作所 | データプロセッサ |
US7721076B2 (en) * | 2006-12-18 | 2010-05-18 | Intel Corporation | Tracking an oldest processor event using information stored in a register and queue entry |
US7454597B2 (en) * | 2007-01-02 | 2008-11-18 | International Business Machines Corporation | Computer processing system employing an instruction schedule cache |
US7769986B2 (en) * | 2007-05-01 | 2010-08-03 | International Business Machines Corporation | Method and apparatus for register renaming |
US8832416B2 (en) * | 2007-05-24 | 2014-09-09 | International Business Machines Corporation | Method and apparatus for instruction completion stall identification in an information handling system |
US9648325B2 (en) * | 2007-06-30 | 2017-05-09 | Microsoft Technology Licensing, Llc | Video decoding implementations for a graphics processing unit |
JP2009048252A (ja) * | 2007-08-14 | 2009-03-05 | Oki Electric Ind Co Ltd | プログラム変換装置及びコンパイラプログラム |
US9024957B1 (en) * | 2007-08-15 | 2015-05-05 | Nvidia Corporation | Address independent shader program loading |
US8468504B2 (en) * | 2007-12-28 | 2013-06-18 | Streaming Networks (Pvt.) Ltd. | Method and apparatus for interactive scheduling of VLIW assembly code |
US8417916B2 (en) * | 2008-01-11 | 2013-04-09 | International Business Machines Corporation | Perform frame management function instruction for setting storage keys and clearing blocks of main storage |
US8335906B2 (en) * | 2008-01-11 | 2012-12-18 | International Business Machines Corporation | Perform frame management function instruction for clearing blocks of main storage |
US8041923B2 (en) * | 2008-01-11 | 2011-10-18 | International Business Machines Corporation | Load page table entry address instruction execution based on an address translation format control field |
US8151083B2 (en) * | 2008-01-11 | 2012-04-03 | International Business Machines Corporation | Dynamic address translation with frame management |
US8037278B2 (en) * | 2008-01-11 | 2011-10-11 | International Business Machines Corporation | Dynamic address translation with format control |
US8019964B2 (en) * | 2008-01-11 | 2011-09-13 | International Buisness Machines Corporation | Dynamic address translation with DAT protection |
US8041922B2 (en) * | 2008-01-11 | 2011-10-18 | International Business Machines Corporation | Enhanced dynamic address translation with load real address function |
US8677098B2 (en) * | 2008-01-11 | 2014-03-18 | International Business Machines Corporation | Dynamic address translation with fetch protection |
US8082405B2 (en) * | 2008-01-11 | 2011-12-20 | International Business Machines Corporation | Dynamic address translation with fetch protection |
US8117417B2 (en) * | 2008-01-11 | 2012-02-14 | International Business Machines Corporation | Dynamic address translation with change record override |
US8103851B2 (en) * | 2008-01-11 | 2012-01-24 | International Business Machines Corporation | Dynamic address translation with translation table entry format control for indentifying format of the translation table entry |
US7925866B2 (en) * | 2008-01-23 | 2011-04-12 | Arm Limited | Data processing apparatus and method for handling instructions to be executed by processing circuitry |
US8719553B2 (en) * | 2008-01-31 | 2014-05-06 | Arm Norway As | Method for re-circulating a fragment through a rendering pipeline |
US7958316B2 (en) * | 2008-02-01 | 2011-06-07 | International Business Machines Corporation | Dynamic adjustment of prefetch stream priority |
US8108654B2 (en) * | 2008-02-19 | 2012-01-31 | International Business Machines Corporation | System and method for a group priority issue schema for a cascaded pipeline |
US8176279B2 (en) * | 2008-02-25 | 2012-05-08 | International Business Machines Corporation | Managing use of storage by multiple pageable guests of a computing environment |
US8866827B2 (en) * | 2008-06-26 | 2014-10-21 | Microsoft Corporation | Bulk-synchronous graphics processing unit programming |
US8933953B2 (en) * | 2008-06-30 | 2015-01-13 | Intel Corporation | Managing active thread dependencies in graphics processing |
US8176299B2 (en) * | 2008-09-24 | 2012-05-08 | Apple Inc. | Generating stop indicators based on conditional data dependency in vector processors |
US20100274972A1 (en) * | 2008-11-24 | 2010-10-28 | Boris Babayan | Systems, methods, and apparatuses for parallel computing |
JP5547208B2 (ja) * | 2008-11-24 | 2014-07-09 | インテル コーポレイション | シーケンシャル・プログラムを複数スレッドに分解し、スレッドを実行し、シーケンシャルな実行を再構成するシステム、方法および装置 |
US10621092B2 (en) * | 2008-11-24 | 2020-04-14 | Intel Corporation | Merging level cache and data cache units having indicator bits related to speculative execution |
US20100153776A1 (en) * | 2008-12-12 | 2010-06-17 | Sun Microsystems, Inc. | Using safepoints to provide precise exception semantics for a virtual machine |
US8078854B2 (en) * | 2008-12-12 | 2011-12-13 | Oracle America, Inc. | Using register rename maps to facilitate precise exception semantics |
GB2466078B (en) * | 2008-12-15 | 2013-11-13 | Advanced Risc Mach Ltd | Apparatus and method for tracing activities of a shader program executed on shader circuitry of a data processing apparatus |
US7924860B1 (en) * | 2008-12-23 | 2011-04-12 | Juniper Networks, Inc. | Maintaining data unit order in a network switching device |
US8131976B2 (en) * | 2009-04-13 | 2012-03-06 | International Business Machines Corporation | Tracking effective addresses in an out-of-order processor |
US8335912B2 (en) * | 2009-04-22 | 2012-12-18 | Oracle America, Inc. | Logical map table for detecting dependency conditions between instructions having varying width operand values |
US8874878B2 (en) * | 2010-05-18 | 2014-10-28 | Lsi Corporation | Thread synchronization in a multi-thread, multi-flow network communications processor architecture |
US8910171B2 (en) * | 2009-04-27 | 2014-12-09 | Lsi Corporation | Thread synchronization in a multi-thread network communications processor architecture |
US8561046B2 (en) * | 2009-09-14 | 2013-10-15 | Oracle America, Inc. | Pipelined parallelization with localized self-helper threading |
US9436969B2 (en) * | 2009-10-05 | 2016-09-06 | Nvidia Corporation | Time slice processing of tessellation and geometry shaders |
US8359588B2 (en) * | 2009-11-25 | 2013-01-22 | Arm Limited | Reducing inter-task latency in a multiprocessor system |
US20110131396A1 (en) * | 2009-12-01 | 2011-06-02 | Xmos Limited | Timing analysis |
US8863088B2 (en) * | 2010-02-08 | 2014-10-14 | Red Hat, Inc. | Simulating a line of source code in a debugging tool |
US8650554B2 (en) * | 2010-04-27 | 2014-02-11 | International Business Machines Corporation | Single thread performance in an in-order multi-threaded processor |
US8972961B2 (en) * | 2010-05-19 | 2015-03-03 | International Business Machines Corporation | Instruction scheduling approach to improve processor performance |
JP5853216B2 (ja) * | 2010-06-25 | 2016-02-09 | パナソニックIpマネジメント株式会社 | 集積回路、コンピュータシステム、制御方法 |
EP2591422A1 (en) * | 2010-07-09 | 2013-05-15 | Martin Vorbach | Data processing device and method |
US8977815B2 (en) * | 2010-11-29 | 2015-03-10 | Arm Limited | Control of entry of program instructions to a fetch stage within a processing pipepline |
US9026769B1 (en) * | 2011-01-31 | 2015-05-05 | Marvell International Ltd. | Detecting and reissuing of loop instructions in reorder structure |
US9176737B2 (en) * | 2011-02-07 | 2015-11-03 | Arm Limited | Controlling the execution of adjacent instructions that are dependent upon a same data condition |
GB201103699D0 (en) * | 2011-03-03 | 2011-04-20 | Advanced Risc Mach Ltd | Graphic processing |
US9317288B2 (en) * | 2011-04-07 | 2016-04-19 | Via Technologies, Inc. | Multi-core microprocessor that performs x86 ISA and ARM ISA machine language program instructions by hardware translation into microinstructions executed by common execution pipeline |
US9274795B2 (en) * | 2011-04-07 | 2016-03-01 | Via Technologies, Inc. | Conditional non-branch instruction prediction |
US8661230B2 (en) * | 2011-04-15 | 2014-02-25 | International Business Machines Corporation | Allocation of counters from a pool of counters to track mappings of logical registers to physical registers for mapper based instruction executions |
US8635436B2 (en) * | 2011-04-29 | 2014-01-21 | International Business Machines Corporation | Determining each stall reason for each stalled instruction within a group of instructions during a pipeline stall |
CN102789377B (zh) * | 2011-05-18 | 2015-09-30 | 国际商业机器公司 | 处理指令分组信息的方法和装置 |
WO2012167933A1 (en) * | 2011-06-08 | 2012-12-13 | Hyperion Core Inc. | Tool-level and hardware-level code optimization and respective hardware modification |
US11249799B2 (en) * | 2011-09-26 | 2022-02-15 | Labrador Diagnostics Llc | Methods, systems, and devices for real time execution and optimization of concurrent test protocols on a single device |
JP5930558B2 (ja) * | 2011-09-26 | 2016-06-08 | インテル・コーポレーション | ストライド機能及びマスク機能を有するベクトルロード及びベクトルストアを提供する命令及びロジック |
US9747101B2 (en) * | 2011-09-26 | 2017-08-29 | Intel Corporation | Gather-op instruction to duplicate a mask and perform an operation on vector elements gathered via tracked offset-based gathering |
US9021233B2 (en) * | 2011-09-28 | 2015-04-28 | Arm Limited | Interleaving data accesses issued in response to vector access instructions |
US8966457B2 (en) * | 2011-11-15 | 2015-02-24 | Global Supercomputing Corporation | Method and system for converting a single-threaded software program into an application-specific supercomputer |
EP2783281B1 (en) * | 2011-11-22 | 2020-05-13 | Intel Corporation | A microprocessor accelerated code optimizer |
CN104011705A (zh) * | 2011-12-01 | 2014-08-27 | 新加坡国立大学 | 多形异构性多核架构 |
WO2013101138A1 (en) * | 2011-12-30 | 2013-07-04 | Intel Corporation | Identifying and prioritizing critical instructions within processor circuitry |
GB2498203B (en) * | 2012-01-06 | 2013-12-04 | Imagination Tech Ltd | Restoring a register renaming map |
US9135014B2 (en) * | 2012-02-15 | 2015-09-15 | Freescale Semiconductor, Inc | Data processing system with latency tolerance execution |
WO2013147852A1 (en) * | 2012-03-30 | 2013-10-03 | Intel Corporation | Instruction scheduling for a multi-strand out-of-order processor |
US9513922B2 (en) * | 2012-04-20 | 2016-12-06 | Freescale Semiconductor, Inc. | Computer system and a method for generating an optimized program code |
CN115442626A (zh) * | 2012-06-29 | 2022-12-06 | Ge视频压缩有限责任公司 | 视频数据流、编码器、编码视频内容的方法以及解码器 |
DE112012006946T5 (de) * | 2012-09-27 | 2015-06-03 | Intel Corporation | Verfahren und Vorrichtung zur Planung von Speicherinstruktionen quer über atomare Bereiche bei der binären Übersetzung |
JP6179093B2 (ja) * | 2012-12-03 | 2017-08-16 | 富士通株式会社 | 演算処理装置、演算処理方法 |
US9798544B2 (en) * | 2012-12-10 | 2017-10-24 | Nvidia Corporation | Reordering buffer for memory access locality |
US9553820B2 (en) * | 2012-12-17 | 2017-01-24 | Marvell Israel (M.L.S.L) Ltd. | Maintaining packet order in a parallel processing network device |
WO2014096964A1 (en) * | 2012-12-17 | 2014-06-26 | Marvell Israel (M.I.S.L. ) Ltd. | Maintaining packet order in a parallel processing network device |
WO2014102563A1 (en) * | 2012-12-26 | 2014-07-03 | Intel Corporation | Select logic using delayed reconstructed program order |
US9880852B2 (en) * | 2012-12-27 | 2018-01-30 | Intel Corporation | Programmable hardware accelerators in CPU |
US9384522B2 (en) * | 2012-12-28 | 2016-07-05 | Qualcomm Incorporated | Reordering of command streams for graphical processing units (GPUs) |
US9195465B2 (en) * | 2012-12-28 | 2015-11-24 | Intel Corporation | Cache coherency and processor consistency |
US8966068B2 (en) * | 2013-01-15 | 2015-02-24 | International Business Machines Corporation | Selective logging of network requests based on subsets of the program that were executed |
US9214008B2 (en) * | 2013-01-18 | 2015-12-15 | Nvidia Corporation | Shader program attribute storage |
US9054998B2 (en) * | 2013-02-06 | 2015-06-09 | Freescale Semiconductor, Inc. | System and method for maintaining packet order in an ordered data stream |
US9286119B2 (en) * | 2013-02-13 | 2016-03-15 | Nvidia Corporation | System, method, and computer program product for management of dependency between tasks |
US9354884B2 (en) * | 2013-03-13 | 2016-05-31 | International Business Machines Corporation | Processor with hybrid pipeline capable of operating in out-of-order and in-order modes |
WO2014142704A1 (en) * | 2013-03-15 | 2014-09-18 | Intel Corporation | Methods and apparatus to compile instructions for a vector of instruction pointers processor architecture |
US8832324B1 (en) * | 2013-03-15 | 2014-09-09 | International Business Machines Corporation | First-in-first-out queue-based command spreading |
JP6064765B2 (ja) * | 2013-04-18 | 2017-01-25 | 富士通株式会社 | シミュレーション装置、シミュレーション方法、およびシミュレーションプログラム |
US9772827B2 (en) * | 2013-04-22 | 2017-09-26 | Nvidia Corporation | Techniques for determining instruction dependencies |
US9354891B2 (en) * | 2013-05-29 | 2016-05-31 | Apple Inc. | Increasing macroscalar instruction level parallelism |
US10949200B2 (en) * | 2013-06-16 | 2021-03-16 | President And Fellows Of Harvard College | Methods and apparatus for executing data-dependent threads in parallel |
US9535744B2 (en) * | 2013-06-29 | 2017-01-03 | Intel Corporation | Method and apparatus for continued retirement during commit of a speculative region of code |
EP3019972A4 (en) * | 2013-07-12 | 2017-04-05 | New Sapience Inc. | Method and system for machine comprehension |
US10255075B2 (en) * | 2013-07-18 | 2019-04-09 | Nvidia Corporation | System, method, and computer program product for managing out-of-order execution of program instructions |
US9244746B2 (en) * | 2013-08-01 | 2016-01-26 | Intel Corporation | Automatic transaction coarsening |
US9304749B2 (en) * | 2013-09-12 | 2016-04-05 | Marvell World Trade Ltd. | Method and system for instruction scheduling |
US9342284B2 (en) * | 2013-09-27 | 2016-05-17 | Intel Corporation | Optimization of instructions to reduce memory access violations |
US9571541B1 (en) * | 2013-10-03 | 2017-02-14 | Marvell Israel (M.I.S.L.) Ltd. | Network device architecture using cache for multicast packets |
CN105794172B (zh) * | 2013-10-17 | 2019-02-15 | 马维尔国际贸易有限公司 | 网络设备和用于在网络设备中处理报文的方法 |
US9223965B2 (en) * | 2013-12-10 | 2015-12-29 | International Business Machines Corporation | Secure generation and management of a virtual card on a mobile device |
US9235692B2 (en) * | 2013-12-13 | 2016-01-12 | International Business Machines Corporation | Secure application debugging |
US9928069B2 (en) * | 2013-12-20 | 2018-03-27 | Apple Inc. | Predicated vector hazard check instruction |
US9336100B2 (en) * | 2013-12-27 | 2016-05-10 | International Business Machines Corporation | Efficient debugging of memory miscompare failures in post-silicon validation |
US9766895B2 (en) * | 2014-02-06 | 2017-09-19 | Optimum Semiconductor Technologies, Inc. | Opportunity multithreading in a multithreaded processor with instruction chaining capability |
US9766894B2 (en) * | 2014-02-06 | 2017-09-19 | Optimum Semiconductor Technologies, Inc. | Method and apparatus for enabling a processor to generate pipeline control signals |
US9558000B2 (en) * | 2014-02-06 | 2017-01-31 | Optimum Semiconductor Technologies, Inc. | Multithreading using an ordered list of hardware contexts |
US9442734B2 (en) * | 2014-02-11 | 2016-09-13 | Apple Inc. | Completion time determination for vector instructions |
US9632775B2 (en) * | 2014-02-11 | 2017-04-25 | Apple Inc. | Completion time prediction for vector instructions |
US9361041B2 (en) * | 2014-02-27 | 2016-06-07 | International Business Machines Corporation | Hint instruction for managing transactional aborts in transactional memory computing environments |
US20150277925A1 (en) * | 2014-04-01 | 2015-10-01 | The Regents Of The University Of Michigan | Data processing apparatus and method for executing a stream of instructions out of order with respect to original program order |
US9710245B2 (en) * | 2014-04-04 | 2017-07-18 | Qualcomm Incorporated | Memory reference metadata for compiler optimization |
US9251330B2 (en) * | 2014-04-09 | 2016-02-02 | International Business Machines Corporation | Secure management of a smart card |
JP6228318B2 (ja) * | 2014-09-18 | 2017-11-08 | 株式会社日立製作所 | 計算機及び計算機システム |
JP2016066218A (ja) * | 2014-09-24 | 2016-04-28 | 株式会社ソシオネクスト | プロセッサ、半導体集積回路、及びベクトル命令の処理方法 |
US20160092219A1 (en) * | 2014-09-29 | 2016-03-31 | Qualcomm Incorporated | Accelerating constant value generation using a computed constants table, and related circuits, methods, and computer-readable media |
US9501284B2 (en) * | 2014-09-30 | 2016-11-22 | Apple Inc. | Mechanism for allowing speculative execution of loads beyond a wait for event instruction |
US9690590B2 (en) * | 2014-10-15 | 2017-06-27 | Cavium, Inc. | Flexible instruction execution in a processor pipeline |
US9747109B2 (en) * | 2014-10-15 | 2017-08-29 | Cavium, Inc. | Flexible instruction execution in a processor pipeline |
US10423414B2 (en) * | 2014-11-12 | 2019-09-24 | Texas Instruments Incorporated | Parallel processing in hardware accelerators communicably coupled with a processor |
US9940242B2 (en) * | 2014-11-17 | 2018-04-10 | International Business Machines Corporation | Techniques for identifying instructions for decode-time instruction optimization grouping in view of cache boundaries |
US9733940B2 (en) * | 2014-11-17 | 2017-08-15 | International Business Machines Corporation | Techniques for instruction group formation for decode-time instruction optimization based on feedback |
US10108428B2 (en) * | 2014-12-14 | 2018-10-23 | Via Alliance Semiconductor Co., Ltd | Mechanism to preclude load replays dependent on long load cycles in an out-of-order processor |
US9529643B2 (en) * | 2015-01-26 | 2016-12-27 | Qualcomm Incorporated | Method and system for accelerating task control flow |
US10318297B2 (en) * | 2015-01-30 | 2019-06-11 | Huawei Technologies Co., Ltd. | Method and apparatus for operating a self-timed parallelized multi-core processor |
US9785423B2 (en) * | 2015-04-23 | 2017-10-10 | Google Inc. | Compiler for translating between a virtual image processor instruction set architecture (ISA) and target hardware having a two-dimensional shift array structure |
EP3304291A1 (en) * | 2015-06-01 | 2018-04-11 | Intel Corporation | Multi-core processor for execution of strands of instructions grouped according to criticality |
US9952871B2 (en) * | 2015-06-05 | 2018-04-24 | Arm Limited | Controlling execution of instructions for a processing pipeline having first out-of order execution circuitry and second execution circuitry |
US9727944B2 (en) * | 2015-06-22 | 2017-08-08 | Apple Inc. | GPU instruction storage |
US9910669B2 (en) * | 2015-06-26 | 2018-03-06 | Intel Corporation | Instruction and logic for characterization of data access |
US20160378491A1 (en) * | 2015-06-26 | 2016-12-29 | Microsoft Technology Licensing, Llc | Determination of target location for transfer of processor control |
GB2540543B (en) * | 2015-07-20 | 2020-03-11 | Advanced Risc Mach Ltd | Graphics processing |
US20170046160A1 (en) * | 2015-08-14 | 2017-02-16 | Qualcomm Incorporated | Efficient handling of register files |
US11275590B2 (en) * | 2015-08-26 | 2022-03-15 | Huawei Technologies Co., Ltd. | Device and processing architecture for resolving execution pipeline dependencies without requiring no operation instructions in the instruction memory |
US10776115B2 (en) * | 2015-09-19 | 2020-09-15 | Microsoft Technology Licensing, Llc | Debug support for block-based processor |
US10198263B2 (en) * | 2015-09-19 | 2019-02-05 | Microsoft Technology Licensing, Llc | Write nullification |
US10768936B2 (en) * | 2015-09-19 | 2020-09-08 | Microsoft Technology Licensing, Llc | Block-based processor including topology and control registers to indicate resource sharing and size of logical processor |
US10061584B2 (en) * | 2015-09-19 | 2018-08-28 | Microsoft Technology Licensing, Llc | Store nullification in the target field |
US20170083341A1 (en) * | 2015-09-19 | 2017-03-23 | Microsoft Technology Licensing, Llc | Segmented instruction block |
US20170153892A1 (en) * | 2015-11-30 | 2017-06-01 | Intel Corporation | Instruction And Logic For Programmable Fabric Hierarchy And Cache |
US10191748B2 (en) * | 2015-11-30 | 2019-01-29 | Intel IP Corporation | Instruction and logic for in-order handling in an out-of-order processor |
CN108780394B (zh) * | 2015-12-29 | 2023-07-18 | 英特尔公司 | 用于转换编码格式的硬件装置和方法 |
US10599428B2 (en) * | 2016-03-23 | 2020-03-24 | Arm Limited | Relaxed execution of overlapping mixed-scalar-vector instructions |
US10175985B2 (en) * | 2016-03-28 | 2019-01-08 | International Business Machines Corporation | Mechanism for using a reservation station as a scratch register |
US9928128B2 (en) * | 2016-04-01 | 2018-03-27 | International Business Machines Corporation | In-pipe error scrubbing within a processor core |
US9922396B2 (en) * | 2016-04-04 | 2018-03-20 | Intel Corporation | Reduction of BVH-node bandwidth with incremental traversal |
US20170315812A1 (en) * | 2016-04-28 | 2017-11-02 | Microsoft Technology Licensing, Llc | Parallel instruction scheduler for block isa processor |
US10445094B2 (en) * | 2016-05-27 | 2019-10-15 | Arm Limited | Method and apparatus for reordering in a non-uniform compute device |
US10795815B2 (en) * | 2016-05-27 | 2020-10-06 | Arm Limited | Method and apparatus for maintaining data coherence in a non-uniform compute device |
US10552152B2 (en) * | 2016-05-27 | 2020-02-04 | Arm Limited | Method and apparatus for scheduling in a non-uniform compute device |
US20170371660A1 (en) * | 2016-06-23 | 2017-12-28 | Microsoft Technology Licensing, Llc | Load-store queue for multiple processor cores |
GB2556886B (en) * | 2016-11-23 | 2019-05-15 | Imagination Tech Ltd | Encoding and decoding variable length instructions |
-
2013
- 2013-05-31 GB GB1309765.4A patent/GB2514618B/en active Active
- 2013-07-02 US US13/933,612 patent/US10176546B2/en active Active
-
2014
- 2014-05-29 JP JP2014111029A patent/JP6403436B2/ja active Active
- 2014-05-30 CN CN201410239143.8A patent/CN104217393B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010522940A (ja) * | 2007-03-28 | 2010-07-08 | クゥアルコム・インコーポレイテッド | プロセッサにおいて実行ステージに先立って命令を実行するためのシステムおよび方法 |
JP2011514592A (ja) * | 2008-02-22 | 2011-05-06 | クゥアルコム・インコーポレイテッド | グラフィックス処理の命令レイテンシ減少のためのシステムおよび方法 |
JP2012216009A (ja) * | 2011-03-31 | 2012-11-08 | Nec Corp | メモリアクセス命令の追い越し制御によるプログラムの高速化方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018514034A (ja) * | 2015-04-08 | 2018-05-31 | アーム・リミテッド | グラフィックス処理システム |
US10832464B2 (en) | 2015-04-08 | 2020-11-10 | Arm Limited | Graphics processing systems for performing per-fragment operations when executing a fragment shader program |
JP7038548B2 (ja) | 2015-04-08 | 2022-03-18 | アーム・リミテッド | グラフィックス処理システム |
JP2019016328A (ja) * | 2017-07-11 | 2019-01-31 | 富士通株式会社 | 情報処理装置、情報処理システム及びプログラム |
Also Published As
Publication number | Publication date |
---|---|
GB201309765D0 (en) | 2013-07-17 |
US20140354644A1 (en) | 2014-12-04 |
CN104217393B (zh) | 2019-07-16 |
CN104217393A (zh) | 2014-12-17 |
JP6403436B2 (ja) | 2018-10-10 |
GB2514618B (en) | 2020-11-11 |
GB2514618A (en) | 2014-12-03 |
US10176546B2 (en) | 2019-01-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6403436B2 (ja) | データ処理システム | |
EP3031034B1 (en) | Data processing systems | |
US9535700B2 (en) | Data processing systems | |
US10853905B2 (en) | Instruction execution in graphics processor shader programs | |
CN106373083B (zh) | 图形处理 | |
KR102641210B1 (ko) | 데이터 처리 시스템 | |
US9256466B2 (en) | Data processing systems | |
KR102617106B1 (ko) | 데이터 처리 시스템 | |
KR20170015232A (ko) | 그래픽 처리 시스템 | |
US10127626B1 (en) | Method and apparatus improving the execution of instructions by execution threads in data processing systems | |
US10593093B2 (en) | Data processing systems | |
US10606595B2 (en) | Data processing systems | |
US10310856B2 (en) | Disabling thread execution when executing instructions in a data processing system | |
US10891708B1 (en) | Shader program execution in graphics processing | |
US11442731B2 (en) | Data processing systems including an intermediate buffer with controlled data value eviction | |
GB2546308A (en) | Data processing systems | |
GB2621199A (en) | An apparatus and method of optimising divergent processing in thread groups |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170522 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20180528 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180604 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180713 |
|
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: 20180813 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180911 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6403436 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 |