JP4024271B2 - マルチプロセッサシステムにおいて命令を処理するための方法と装置 - Google Patents
マルチプロセッサシステムにおいて命令を処理するための方法と装置 Download PDFInfo
- Publication number
- JP4024271B2 JP4024271B2 JP2006029779A JP2006029779A JP4024271B2 JP 4024271 B2 JP4024271 B2 JP 4024271B2 JP 2006029779 A JP2006029779 A JP 2006029779A JP 2006029779 A JP2006029779 A JP 2006029779A JP 4024271 B2 JP4024271 B2 JP 4024271B2
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- instructions
- memory
- operands
- buffers
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 29
- 238000012545 processing Methods 0.000 title description 73
- 230000015654 memory Effects 0.000 claims description 220
- 239000000872 buffer Substances 0.000 claims description 86
- 230000006870 function Effects 0.000 claims description 24
- 238000012546 transfer Methods 0.000 claims description 19
- 239000004065 semiconductor Substances 0.000 claims description 10
- 230000009471 action Effects 0.000 claims description 6
- 238000012360 testing method Methods 0.000 claims description 6
- 238000007667 floating Methods 0.000 description 9
- 238000013461 design Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 6
- 238000013519 translation Methods 0.000 description 5
- 230000004888 barrier function Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 229920001690 polydopamine Polymers 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000003860 storage Methods 0.000 description 2
- 239000000758 substrate Substances 0.000 description 2
- GZEYLLPOQRZUDF-UHFFFAOYSA-N 7-(dimethylamino)-4-methylchromen-2-one Chemical group CC1=CC(=O)OC2=CC(N(C)C)=CC=C21 GZEYLLPOQRZUDF-UHFFFAOYSA-N 0.000 description 1
- JBRZTFJDHDCESZ-UHFFFAOYSA-N AsGa Chemical compound [As]#[Ga] JBRZTFJDHDCESZ-UHFFFAOYSA-N 0.000 description 1
- 229910001218 Gallium arsenide Inorganic materials 0.000 description 1
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 1
- MDPILPRLPQYEEN-UHFFFAOYSA-N aluminium arsenide Chemical compound [As]#[Al] MDPILPRLPQYEEN-UHFFFAOYSA-N 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 150000001875 compounds Chemical class 0.000 description 1
- 238000004883 computer application Methods 0.000 description 1
- 230000004907 flux Effects 0.000 description 1
- 230000020169 heat generation Effects 0.000 description 1
- 239000012535 impurity Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000006386 memory function Effects 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000035807 sensation Effects 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline, look ahead
- G06F9/3802—Instruction prefetching
-
- 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/30076—Arrangements for executing specific machine instructions to perform miscellaneous control operations, e.g. NOP
- G06F9/30087—Synchronisation or serialisation 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/38—Concurrent instruction execution, e.g. pipeline, look ahead
- G06F9/3802—Instruction prefetching
- G06F9/3814—Implementation provisions of instruction buffers, e.g. prefetch buffer; banks
-
- 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, 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, look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
- G06F9/3853—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution of compound 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/38—Concurrent instruction execution, e.g. pipeline, look ahead
- G06F9/3867—Concurrent instruction execution, e.g. pipeline, 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, look ahead
- G06F9/3885—Concurrent instruction execution, e.g. pipeline, look ahead using a plurality of independent parallel functional units
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Advance Control (AREA)
Description
Claims (21)
- ハードウェアキャッシュメモリではない複数のローカルメモリと、
各々が前記複数のローカルメモリのいずれかに関連する複数のプロセッサであって、各々が共有メモリと通信可能な複数のプロセッサと、
各々が前記複数のローカルメモリの各々に対応して設けられ、共有メモリから対応するローカルメモリへ命令を転送する複数のメモリフローコントローラと、
を備え、
前記複数のプロセッサの各々は、関連するローカルメモリに格納された命令をフェッチしデコードする命令デコード回路と、デコードされた命令間の依存性をテストする命令依存性チェック回路と、前記命令依存性チェック回路に結合された2つまたは3つの命令バッファと、前記2つまたは3つの命令バッファと同数の2つまたは3つの実行ステージと、を含む命令パイプラインを有し、
前記2つまたは3つの命令バッファの各々は、それぞれに対応する実行ステージに投入すべき命令の候補を一つだけ保持するための一つのレジスタを有し、
前記メモリフローコントローラは、対応するローカルメモリにダイレクトメモリアクセスにより、データキャッシングに依存しないようプログラミングされたプログラムの少なくとも一部である複数の命令をまとめてブロック転送し、
前記ローカルメモリは、ブロック転送された複数の命令をキャッシングを介することなく格納し、
前記命令デコード回路は、前記関連するローカルメモリに格納された複数の命令のうち、前記2つまたは3つの命令バッファの数と同数の命令を、キャッシングを介することなくフェッチし同時にデコードし、
前記命令依存性チェック回路は、デコードされた2つまたは3つの命令のオペランドが前記命令パイプライン内の他の命令のオペランドに依存するか否かをチェックし、
前記2つまたは3つの命令バッファの各々は、前記命令依存性チェック回路によって前記命令パイプライン内の他の命令との依存性がないと判定された命令を前記一つのレジスタに一つずつ格納し、前記2つまたは3つの命令バッファは、それぞれのレジスタに格納された全ての命令をグループとして出力し、
前記2つまたは3つの実行ステージの各々は、前記2つまたは3つの命令バッファからグループとして出力された2つまたは3つの命令の各々を同時に実行し、
前記命令依存性チェック回路によって、前記デコードされた2つまたは3つの命令のオペランドが前記命令パイプライン内の他の命令のオペランドに依存すると判定された場合は、その2つまたは3つの命令は、前記他の命令のオペランドが更新されるまで前記2つまたは3つの実行ステージに投入されないことを特徴とする装置。 - 前記命令依存性チェック回路は、前記命令パイプラインの命令の依存性を並行してチェックすることを特徴とする請求項1に記載の装置。
- 前記複数のプロセッサのいずれか、および当該プロセッサに関連するローカルメモリは、共通の半導体回路基板に配置されることを特徴とする請求項1または2に記載の装置。
- 前記共有メモリは、バスを介して前記複数のプロセッサの各々に結合することを特徴とする請求項1から3のいずれかに記載の装置。
- 前記複数のプロセッサ、前記複数のローカルメモリ、および前記共有メモリは、共通の半導体回路基板に配置されることを特徴とする請求項1から4のいずれかに記載の装置。
- ハードウェアキャッシュメモリではない複数のローカルメモリと、
各々が前記複数のローカルメモリのいずれかに関連する複数のプロセッサであって、各々が共有メモリと通信可能な複数のプロセッサと、
各々が前記複数のローカルメモリの各々に対応して設けられ、共有メモリから対応するローカルメモリへ命令を転送する複数のメモリフローコントローラと、
を備え、
前記複数のプロセッサの各々は、関連するローカルメモリに格納された命令をフェッチしデコードする命令デコード回路と、デコードされた命令間の依存性をテストする命令依存性チェック回路と、前記命令依存性チェック回路に結合された複数の命令バッファであって、当該複数のレジスタが同時に発行可能な命令の数として命令スループットに基づいて算出された数の複数の命令バッファと、前記複数の命令バッファと同数の複数の実行ステージと、を含む命令パイプラインを有し、
前記複数の命令バッファの各々は、それぞれに対応する実行ステージに投入すべき命令の候補を一つだけ保持するための一つのレジスタを有し、
前記メモリフローコントローラは、対応するローカルメモリにダイレクトメモリアクセスにより、データキャッシングに依存しないようプログラミングされたプログラムの少なくとも一部である複数の命令をまとめてブロック転送し、
前記ローカルメモリは、ブロック転送された複数の命令をキャッシングを介することなく格納し、
前記命令デコード回路は、前記関連するローカルメモリに格納された複数の命令のうち、前記複数の命令バッファの数と同数の命令を、キャッシングを介することなくフェッチし同時にデコードし、
前記命令依存性チェック回路は、デコードされた複数の命令のオペランドが前記命令パイプライン内の他の命令のオペランドに依存するか否かをチェックし、
前記複数の命令バッファの各々は、前記命令依存性チェック回路によって前記命令パイプライン内の他の命令との依存性がないと判定された命令を前記一つのレジスタに一つずつ格納し、前記複数の命令バッファは、それぞれのレジスタに格納された全ての命令をグループとして出力し、
前記複数の実行ステージの各々は、前記複数の命令バッファからグループとして出力された複数の命令の各々を同時に実行し、
前記命令依存性チェック回路によって、前記デコードされた複数の命令のオペランドが前記命令パイプライン内の他の命令のオペランドに依存すると判定された場合は、その複数の命令は、前記他の命令のオペランドが更新されるまで前記複数の実行ステージに投入されないことを特徴とする装置。 - 前記命令パイプラインは、前記命令依存性チェック回路に結合された3つのレジスタを有することを特徴とする請求項6に記載の装置。
- 前記命令パイプラインは、前記命令依存性チェック回路に結合された2つのレジスタを有することを特徴とする請求項6に記載の装置。
- 前記複数のプロセッサの各々に機能的に結合し、前記共有メモリに結合するメインプロセッサと、
前記メインプロセッサと関連し、前記共有メモリ、および各々が前記複数のプロセッサのいずれかに関連する前記複数のローカルメモリの少なくとも1つから取得されたデータをキャッシュするハードウェアキャッシュメモリと、
を更に備えることを特徴とする請求項6に記載の装置。 - 前記メインプロセッサは、前記複数のプロセッサを管理することを特徴とする請求項9に記載の装置。
- ハードウェアキャッシュメモリではない複数のローカルメモリと、
各々が前記複数のローカルメモリのいずれかに関連する複数のプロセッサであって、各々が共有メモリと通信可能な複数のプロセッサと、
各々が前記複数のローカルメモリの各々に対応して設けられ、共有メモリから対応するローカルメモリへ命令を転送する複数のメモリフローコントローラと、
前記複数のプロセッサの各々に機能的に結合し、前記共有メモリに結合するメインプロセッサと、
前記メインプロセッサと関連し、前記共有メモリ、および各々が前記複数のプロセッサのいずれかに関連する前記複数のローカルメモリの少なくとも1つから取得されたデータをキャッシュするハードウェアキャッシュメモリと、
を備え、
前記複数のプロセッサの各々は、関連するローカルメモリに格納された命令をフェッチしデコードする命令デコード回路と、デコードされた命令間の依存性をテストする命令依存性チェック回路と、前記命令依存性チェック回路に結合された2つまたは3つの命令バッファと、前記2つまたは3つの命令バッファと同数の2つまたは3つの実行ステージと、を含む命令パイプラインを有し、
前記2つまたは3つの命令バッファの各々は、それぞれに対応する実行ステージに投入すべき命令の候補を一つだけ保持するための一つのレジスタを有し、
前記メモリフローコントローラは、対応するローカルメモリにダイレクトメモリアクセスにより、データキャッシングに依存しないようプログラミングされたプログラムの少なくとも一部である複数の命令をまとめてブロック転送し、
前記ローカルメモリは、ブロック転送された複数の命令をキャッシングを介することなく格納し、
前記命令デコード回路は、前記関連するローカルメモリに格納された複数の命令のうち、前記2つまたは3つの命令バッファの数と同数の命令を、キャッシングを介することなくフェッチし同時にデコードし、
前記命令依存性チェック回路は、デコードされた2つまたは3つの命令のオペランドが前記命令パイプライン内の他の命令のオペランドに依存するか否かをチェックし、
前記2つまたは3つの命令バッファの各々は、前記命令依存性チェック回路によって前記命令パイプライン内の他の命令との依存性がないと判定された命令を前記一つのレジスタに一つずつ格納し、前記2つまたは3つの命令バッファは、それぞれのレジスタに格納された全ての命令をグループとして出力し、
前記2つまたは3つの実行ステージの各々は、前記2つまたは3つの命令バッファからグループとして出力された2つまたは3つの命令の各々を同時に実行し、
前記命令依存性チェック回路によって、前記デコードされた2つまたは3つの命令のオペランドが前記命令パイプライン内の他の命令のオペランドに依存すると判定された場合は、その2つまたは3つの命令は、前記他の命令のオペランドが更新されるまで前記2つまたは3つの実行ステージに投入されないことを特徴とする装置。 - 前記メインプロセッサは、ダイレクトメモリアクセスを使用して、前記共有メモリから前記キャッシュメモリへ命令を転送させることを特徴とする請求項11に記載の装置。
- 前記メインプロセッサ、前記複数のプロセッサ、および前記複数のローカルメモリは、共通の半導体回路基板に配置されることを特徴とする請求項11または12に記載の装置。
- 前記共有メモリは、バスを介して前記複数のプロセッサの各々および前記メインプロセッサに結合することを特徴とする請求項11から13のいずれかに記載の装置。
- 前記メインプロセッサ、前記複数のプロセッサ、前記複数のローカルメモリ、および前記共有メモリは、共通の半導体回路基板に配置されることを特徴とする請求項11から14のいずれかに記載の装置。
- 共有メモリから、複数のプロセッサのうちの一つのプロセッサと関連するハードウェアキャッシュメモリではないローカルメモリへ、ダイレクトメモリアクセスにより、データキャッシングに依存しないようプログラミングされたプログラムの少なくとも一部である複数の命令をまとめてブロック転送するステップと、
ブロック転送された複数の命令をキャッシングを介することなく前記ローカルメモリへ格納するステップと、
複数の命令がブロック転送されたローカルメモリに関連するプロセッサにおいて、関連するローカルメモリに格納された複数の命令のうち、2つまたは3つの命令バッファの数と同数の命令を、キャッシングを介することなくフェッチし同時にデコードするステップと、
デコードされた2つまたは3つの命令のオペランドが命令パイプライン内の他の命令のオペランドに依存するか否かをチェックするステップと、
命令パイプライン内の他の命令との依存性がないと判定された命令を、前記2つまたは3つの命令バッファの各々が有するレジスタであって、前記2つまたは3つの命令バッファの各々に対応する実行ステージに投入すべき命令の候補を一つだけ保持するための一つのレジスタに一つずつ格納するステップと、
前記2つまたは3つの命令バッファの各々のレジスタに格納された全ての命令をグループとして出力するステップと、
前記2つまたは3つの命令バッファからグループとして出力された2つまたは3つの命令の各々を、前記2つまたは3つの命令バッファの各々に対応する実行ステージにおいて同時に実行するステップと、
を備え、
前記デコードされた2つまたは3つの命令のオペランドが命令パイプライン内の他の命令のオペランドに依存すると判定された場合は、その2つまたは3つの命令は、前記他の命令のオペランドが更新されるまで、前記2つまたは3つの命令バッファの各々に対応する実行ステージに投入されないことを特徴とする方法。 - 命令の依存性を並行してチェックするステップを更に備えることを特徴とする請求項16に記載の方法。
- 共有メモリから、複数のプロセッサのうちの一つのプロセッサと関連するハードウェアキャッシュメモリではないローカルメモリへ、ダイレクトメモリアクセスにより、データキャッシングに依存しないようプログラミングされたプログラムの少なくとも一部である複数の命令をまとめてブロック転送するステップと、
前記共有メモリから、前記複数のプロセッサの各々に機能的に結合し前記共有メモリに結合するメインプロセッサに関連するハードウェアキャッシュメモリに命令を転送するステップと、
ブロック転送された複数の命令をキャッシングを介することなく前記ローカルメモリへ格納するステップと、
複数の命令がブロック転送されたローカルメモリに関連するプロセッサにおいて、関連するローカルメモリに格納された複数の命令のうち、2つまたは3つの命令バッファの数と同数の命令を、キャッシングを介することなくフェッチし同時にデコードするステップと、
デコードされた2つまたは3つの命令のオペランドが命令パイプライン内の他の命令のオペランドに依存するか否かをチェックするステップと、
命令パイプライン内の他の命令との依存性がないと判定された命令を、2つまたは3つの命令バッファの各々が有するレジスタであって、前記2つまたは3つの命令バッファの各々に対応する実行ステージに投入すべき命令の候補を一つだけ保持するための一つのレジスタに一つずつ格納するステップと、
前記2つまたは3つの命令バッファの各々のレジスタに格納された全ての命令をグループとして出力するステップと、
前記2つまたは3つの命令バッファからグループとして出力された2つまたは3つの命令の各々を、前記2つまたは3つの命令バッファの各々に対応する実行ステージにおいて同時に実行するステップと、
を備え、
前記デコードされた2つまたは3つの命令のオペランドが命令パイプライン内の他の命令のオペランドに依存すると判定された場合は、その2つまたは3つの命令は、前記他の命令のオペランドが更新されるまで、前記2つまたは3つの命令バッファの各々に対応する実行ステージに投入されないことを特徴とする方法。 - 前記メインプロセッサ、前記複数のプロセッサ、および前記ローカルメモリは、共通の半導体回路基板に配置されることを特徴とする請求項18に記載の方法。
- 前記メインプロセッサ、前記複数のプロセッサ、前記ローカルメモリ、および前記共有メモリは、共通の半導体回路基板に配置されることを特徴とする請求項18に記載の方法。
- 共有メモリから、複数のプロセッサのうちの一つのプロセッサと関連するハードウェアキャッシュメモリではないローカルメモリへ、ダイレクトメモリアクセスにより、データキャッシングに依存しないようプログラミングされたプログラムの少なくとも一部である複数の命令をまとめてブロック転送する機能と、
ブロック転送された複数の命令をキャッシングを介することなく前記ローカルメモリへ格納する機能と、
複数の命令がブロック転送されたローカルメモリに関連するプロセッサにおいて、関連するローカルメモリに格納された複数の命令のうち、2つまたは3つの命令バッファの数と同数の命令を、キャッシングを介することなくフェッチし同時にデコードする機能と、
デコードされた2つまたは3つの命令のオペランドが命令パイプライン内の他の命令のオペランドに依存するか否かをチェックする機能と、
命令パイプライン内の他の命令との依存性がないと判定された命令を、前記2つまたは3つの命令バッファの各々が有するレジスタであって、前記2つまたは3つの命令バッファの各々に対応する実行ステージに投入すべき命令の候補を一つだけ保持するための一つのレジスタに一つずつ格納する機能と、
前記2つまたは3つの命令バッファの各々のレジスタに格納された全ての命令をグループとして出力する機能と、
前記2つまたは3つの命令バッファからグループとして出力された2つまたは3つの命令の各々を、前記2つまたは3つの命令バッファの各々に対応する実行ステージにおいて同時に実行する機能と、
前記デコードされた2つまたは3つの命令のオペランドが命令パイプライン内の他の命令のオペランドに依存すると判定された場合に、前記他の命令のオペランドが更新された後その2つまたは3つの命令を前記2つまたは3つの命令バッファの各々に対応する実行ステージに投入する機能と、
を含むアクションをプロセッサに実行させることを特徴とするソフトウェアプログラムが格納された記録媒体。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/053,487 US20060179275A1 (en) | 2005-02-08 | 2005-02-08 | Methods and apparatus for processing instructions in a multi-processor system |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2006221644A JP2006221644A (ja) | 2006-08-24 |
JP4024271B2 true JP4024271B2 (ja) | 2007-12-19 |
Family
ID=36602746
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006029779A Expired - Fee Related JP4024271B2 (ja) | 2005-02-08 | 2006-02-07 | マルチプロセッサシステムにおいて命令を処理するための方法と装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20060179275A1 (ja) |
JP (1) | JP4024271B2 (ja) |
WO (1) | WO2006085636A1 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8959292B1 (en) * | 2005-12-22 | 2015-02-17 | The Board Of Trustees Of The Leland Stanford Junior University | Atomic memory access hardware implementations |
US20100242014A1 (en) * | 2009-03-17 | 2010-09-23 | Xiaohan Zhu | Symmetric multi-processor operating system for asymmetric multi-processor architecture |
US9251022B2 (en) * | 2013-03-01 | 2016-02-02 | International Business Machines Corporation | System level architecture verification for transaction execution in a multi-processing environment |
US9921982B2 (en) * | 2014-06-05 | 2018-03-20 | Microchip Technology Incorporated | Device and method to assign device pin ownership for multi-processor core devices |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2263565B (en) * | 1992-01-23 | 1995-08-30 | Intel Corp | Microprocessor with apparatus for parallel execution of instructions |
US6526491B2 (en) * | 2001-03-22 | 2003-02-25 | Sony Corporation Entertainment Inc. | Memory protection system and method for computer architecture for broadband networks |
-
2005
- 2005-02-08 US US11/053,487 patent/US20060179275A1/en not_active Abandoned
-
2006
- 2006-02-07 WO PCT/JP2006/302419 patent/WO2006085636A1/en not_active Application Discontinuation
- 2006-02-07 JP JP2006029779A patent/JP4024271B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US20060179275A1 (en) | 2006-08-10 |
JP2006221644A (ja) | 2006-08-24 |
WO2006085636A1 (en) | 2006-08-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3802042B2 (ja) | キャッシュメモリ実装方法および装置、キャッシュメモリシステム | |
JP4322259B2 (ja) | マルチプロセッサシステムにおけるローカルメモリへのデータアクセスを同期化する方法および装置 | |
JP4386373B2 (ja) | ロジカルパーティショニングされた処理環境におけるリソース管理のための方法および装置 | |
JP4346612B2 (ja) | 情報処理方法および装置 | |
JP4421561B2 (ja) | ハイブリッドdmaキュー及びdmaテーブルのデータ処理方法、装置及びシステム | |
US7644255B2 (en) | Method and apparatus for enable/disable control of SIMD processor slices | |
JP4219369B2 (ja) | プロセッサシステム内においてスタックを分離して管理する方法および装置 | |
US7882379B2 (en) | Power consumption reduction in a multiprocessor system | |
US7689784B2 (en) | Methods and apparatus for dynamic linking program overlay | |
US7818724B2 (en) | Methods and apparatus for instruction set emulation | |
JP2006172474A (ja) | アドレスを変換するための方法および装置、情報処理装置 | |
JP2006172468A (ja) | システム内部のデータ転送を処理する装置および方法 | |
JP2006260556A (ja) | ラッチポイントを制御することにより、演算処理能力を改善する方法、装置ならびにシステム | |
JP4024271B2 (ja) | マルチプロセッサシステムにおいて命令を処理するための方法と装置 | |
JP2006286002A (ja) | 分散型のマルチプロセッサシステム内において一貫性管理を行う方法、システムおよび装置 | |
JP2006260555A (ja) | 命令の従属関係検査の深度を利用して処理能力の改善するための方法および装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060815 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20061013 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20070508 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070706 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20070712 |
|
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: 20071002 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20071002 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101012 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111012 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121012 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131012 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |