JP5871298B2 - 情報処理装置、情報処理方法及び情報処理プログラム - Google Patents
情報処理装置、情報処理方法及び情報処理プログラム Download PDFInfo
- Publication number
- JP5871298B2 JP5871298B2 JP2009209838A JP2009209838A JP5871298B2 JP 5871298 B2 JP5871298 B2 JP 5871298B2 JP 2009209838 A JP2009209838 A JP 2009209838A JP 2009209838 A JP2009209838 A JP 2009209838A JP 5871298 B2 JP5871298 B2 JP 5871298B2
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- unit
- signal
- issue
- information
- 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.)
- Active
Links
Images
Description
本発明の他の目的は、演算TATが異なる命令が入り混じって出現する命令列を実行する際においても、パイプライン演算器の使用効率を落とすことなく、データ一貫性のある命令発行制御ができる情報処理装置を提供することにある。
命令供給部201は、メモリからロードした命令列を解析する。命令供給部201は、解析した命令を、命令発行キュー210にセットする。命令発行キュー210は、命令供給部201から受け取った命令を一時格納する。命令発行キュー210は、命令が使用するリソースを示す使用リソース情報を、直前命令処理数認識部212に出力する。更に、命令発行キュー210は、格納している命令の演算TAT情報と、使用リソース情報とを直前命令TAT比較部213に出力する。
直前命令処理数認識部212は、直前に発行が確定した命令(先行命令)の情報として、発行確定命令保持部217、227、237から命令発行確定信号を受け取る。更に、直前命令処理数認識部212は、後続する命令(後続命令)の情報として、命令発行キュー210から格納している命令の使用リソース情報を受け取る。直前命令処理数認識部212は、命令発行確定信号に基づいて直前に発行が確定した命令を認識し、発行が確定した命令の演算器使用サイクル数が1であるか否かを判定する。
ステップS02において、演算器使用サイクル数が1でない場合(NO)、直前命令処理数認識部212は、先行命令と後続命令とが使用するリソースが同じリソースを使用するものであるか否かを判定する。直前命令処理数認識部212は、先行命令と後続命令とが同じリソースを使用する場合(YES)、処理サイクル数1信号を命令発行抑止信号生成部214に出力しない。
命令発行抑止信号生成部214は、第1命令発行抑止信号を発行条件検証部215へ出力する。
直前命令処理数認識部212は、演算器使用サイクル数が1の場合(ステップS02のYES)、処理サイクル数1信号を命令発行抑止信号生成部214に出力する。或いは、直前命令処理数認識部212は、演算器使用サイクル数が1でないが(ステップS02のNO)、先行命令と後続命令とが同じリソースを使用しない場合(ステップS03のNO)、処理サイクル数1信号を命令発行抑止信号生成部214へ出力する。つまり、命令発行抑止信号生成部214は、有効な処理サイクル数1信号を受け取っている。
ステップS05において、直前命令TAT比較部213は、先行命令の演算TATよりも、後続命令の演算TATの方が小さい場合(ステップS05のYES)、先行命令と後続命令とが、同一RAMライトポート(同じ結果書き込みリソース)を使用するか否かを判定する。先行命令と後続命令とが、同一RAMライトポート(同じ結果書き込みリソース)を使用する場合、直前命令TAT比較部213は有効な演算TAT不整合信号を出力する。以降は、ステップS04へ進む。
ステップS05において、直前命令TAT比較部213は、先行命令の演算TATよりも、後続命令の演算TATの方が大きい場合(ステップS05のNO)、命令発行抑止信号生成部214に、演算TAT不整合信号を出力しない。或いは、直前命令TAT比較部213は、先行命令の演算TATよりも、後続命令の演算TATの方が小さい場合で(ステップS05のYES)、先行命令と後続命令とが同一RAMライトポート(同じ結果書き込みリソース)を使用しない場合(ステップS06のNO)、演算TAT不整合信号を出力しない。つまり、命令発行抑止信号生成部214は、有効な処理サイクル数1信号を受け取っており、且つ、演算TAT不整合信号を受け取っていないため、第1命令発行抑止信号を発行条件検証部215に出力しない。
命令「1」 演算α R0 ← R1,R2 要素数4
命令「2」 演算α R4 ← R5,R6 要素数4
命令「3」 演算β R8 ← R9,R10 要素数4
前述したように、リソースビジーフラグ管理部250は、全てのビジーフラグを点灯していない。ビジーフラグチェック部211は、ビジーフラグが点灯していないため、リソースチェックOK信号と、優先順位情報とを発行条件検証部215へ出力する。ビジーフラグチェック部221、231も同様に動作する。
発行確定命令保持部217は、命令発行キュー210から命令を受け取り、競合調停部216から発行確定信号を受け取る。発行確定命令保持部217は、命令と発行確定信号とを、レジスタにて1サイクル間保持する。尚、この状態は、タイムチャートの命令「1」演算α発行確定において“Go”として示されている。
リソースビジーフラグ管理部250は、ビジーフラグセット条件生成部240からビジーフラグ点灯指示を受け、指示のあった演算器α131のビジーフラグと、RAM112のライトポートビジーフラグと、RAM113のリードポートビジーフラグと、RAM114のリードポートビジーフラグとを2サイクル(クロック4まで)の間点灯する。この状態は、タイムチャートの演算器αビジーフラグとRAM112のライトポートビジーフラグにおいて“1”として示されている。
演算器α131は、パイプライン処理で演算αを行う。
演算器α131のビジーフラグとRAM112のライトポートのビジーフラグが共に“0”となることから、ビジーフラグチェック部221は、リソースチェックOK信号を225に出力する。直前に発行が確定した命令は存在しないため、命令発行抑止信号生成部224は第2命令発行抑止信号を、発行条件検証部225に出力しない。
発行確定命令保持部227は、発行命令キュー220から命令を受け取り、競合調停部226から発行確定信号を受け取る。発行確定命令保持部227は、発行確定信号と命令とをレジスタにて1サイクル間保持する。この状態は、タイムチャートの命令「2」演算α発行確定において“Go”として示されている。
命令「4」 演算α R0 ← R1,R2 要素数1
命令「5」 演算α R4 ← R5,R6 要素数1
命令「6」 演算β R8 ← R9,R10 要素数1
発行確定命令保持部217は、命令発行キュー210から命令を受け取り、競合調停部216から発行確定信号を受け取る。発行確定命令保持部217は、発行確定信号と命令とをレジスタにて1サイクル間保持する。この状態は、タイムチャートの命令「4」演算α発行確定において“Go”として示されている。
リソースビジーフラグ管理部250は、ビジーフラグセット条件生成部240から有効なビジーフラグ点灯指示を受け取らないため、ビジーフラグの点灯を行わない。
第2命令発行抑止信号、及び第3命令発行抑止信号が“0”となるため、優先順位の高い命令発行キュー220の命令「5」の発行が確定する。この状態は、タイムチャートの命令「5」演算α発行確定において“Go”として示されている。
命令「7」 演算α R0 ← R1,R2 要素数1
命令「8」 演算α R4 ← R5,R6 要素数1
命令「9」 演算β R8 ← R9,R10 要素数1
発行確定命令保持部217は、命令発行キュー210から命令を受け取り、競合調停部216から発行確定信号を受け取る。発行確定命令保持部217は、発行確定信号と命令をレジスタにて1サイクル間保持する。この状態は、タイムチャートの命令「7」演算α発行確定において“Go”として示されている。
発行確定命令保持部227は、命令発行キュー220から命令「8」を受け取り、競合調停部226から発行確定信号を受け取り、命令「8」と発行確定信号とをレジスタにて1サイクル間保持する。この状態は、タイムチャートの命令「8」演算α発行確定において“Go”として示されている。
発行確定命令保持部237は、命令発行キュー230から命令を受け取り、競合調停部236から発行確定信号を受け取る。発行確定命令保持部237は、命令と発行確定信号とをレジスタにて1サイクル間保持する。この状態は、タイムチャートの命令「9」演算β発行確定において“Go”として示されている。
2 記憶装置
3 入力装置
4 出力装置
5 バス
100 パイプライン処理実行部
101 演算パイプ制御部
102〜105 2WAYセレクタ
112〜115 RAM
122〜125 4WAYセレクタ
131 演算器α
132 演算器β
151〜153 伝送路
200 命令発行制御部
201 命令供給部
202〜204 命令部
205 ビジーフラグ部
210、220、230 命令発行キュー
211、221、231 ビジーフラグチェック部
212、222、232 直前命令処理数認識部
213、223、233 直前命令TAT比較部
214、224、234 命令発行抑止信号生成部
215、225、235 発行条件検証部
216、226、236 競合調停部
217、227、237 発行確定命令保持部
240 ビジーフラグセット条件生成部
250 リソースビジーフラグ管理部
Claims (11)
- パイプライン処理を実行するパイプライン処理実行部と、
前記パイプライン処理実行部へ第1命令を発行する第1命令部と、前記第1命令よりも優先順位の低い第2命令を前記パイプライン処理実行部へ発行する第2命令部とを有する命令発行制御部と
を具備し、
前記第1命令部は、前記第1命令を前記パイプライン処理実行部へ発行し、前記第1命令の情報である命令発行確定信号を前記第2命令部へ出力し、
前記第2命令部は、
前記第2命令を格納する命令発行キューと、
前記命令発行確定信号に含まれる情報から前記第1命令の情報を読み取り、前記第1命令の演算器使用サイクル数が1であるか否かを判定し、前記第1命令の演算器使用サイクル数が1である場合、処理サイクル数1信号を出力する直前命令処理数認識部と、
所定の第1クロックにおいて前記処理サイクル数1信号を受け取り、命令発行抑止信号を出力しないように制御する命令発行抑止信号生成部と、
を備え、
前記第2命令部は、前記第1クロックで前記命令発行抑止信号を出力しないことによって、前記第1クロックに連続する第2クロックで、前記パイプライン処理実行部へ前記第2命令を発行する
情報処理装置。 - 請求項1に記載の情報処理装置であって、
前記直前命令処理数認識部は、前記第1命令の演算器使用サイクル数が1でない場合でも、前記命令発行確定信号に含まれる情報から読み取る前記第1命令が使用する第1リソースの情報と、前記命令発行キューから受け取る前記第2命令が使用する第2リソースの情報とに基づいて、前記第1命令が使用する第1リソースと前記第2命令が使用する第2リソースとが同じリソースを含むか否かを判定し、前記第1リソースおよび前記第2リソースが同じリソースを含まない場合、前記処理サイクル数1信号を出力する
情報処理装置。 - 請求項2に記載の情報処理装置であって、
前記第2命令部は、
直前命令TAT比較部
を更に備え、
前記直前命令TAT比較部は、
前記命令発行確定信号を受け取り、受け取った前記命令発行確定信号に含まれる情報から前記第1命令の演算TATを読み出し、
前記命令発行キューから前記第2命令の演算TAT情報を受け取り、受け取った前記TAT情報に含まれる前記第2命令の演算TATを読み出し、
前記第1命令の演算TATと、前記第2命令の演算TATとを比較し、
前記第1命令の演算TATよりも前記第2命令の演算TATの方が小さい場合に、演算TAT不整合信号を出力し、
前記命令発行抑止信号生成部は、前記処理サイクル数1信号を受け取っていないとき、又は、前記演算TAT不整合信号を受け取ったとき、前記第1クロックで前記命令発行抑止信号を出力し、
前記第2命令部は、前記命令発行抑止信号の出力によって、前記第2クロックで前記パイプライン処理実行部へ前記第2命令を発行しない
情報処理装置。 - 請求項3に記載の情報処理装置であって、
前記直前命令TAT比較部は、前記第1命令の演算TATよりも、前記第2命令の演算TATの方が小さい場合でも、前記命令発行確定信号に含まれる情報から読み取る前記第1リソースの情報と、前記命令発行キューから受け取る前記第2リソースの情報とに基づいて、前記第1命令と前記第2命令とが同じ結果書き込みリソースを使用するか否かを判定し、同じ結果書き込みリソースを使用しない場合は、前記演算TAT不整合信号を出力しない
情報処理装置。 - 請求項1乃至4の何れか一項に記載の情報処理装置であって、
前記命令発行確定信号に含まれる情報から前記第1命令の演算器使用サイクル数を読み取り、前記第1命令の演算器使用サイクル数からビジーフラグ点灯期間を計算して、前記第1命令が使用する第1リソースに対するビジーフラグ点灯指示を出力するビジーフラグセット条件生成部と、
前記第1リソースに対応したビジーフラグを有し、前記ビジーフラグ点灯指示で指定された期間、前記ビジーフラグを点灯させるリソースビジーフラグ管理部と
を更に具備し、
前記第2命令部は、
前記第1リソースの前記ビジーフラグを受け取り、前記ビジーフラグが点灯しているか否かを判定し、前記ビジーフラグが点灯していなければ、リソースチェックOK信号を出力するビジーフラグチェック部
を更に備え、
前記第2命令部は、前記第1クロックで前記リソースチェックOK信号を出力し、且つ、前記命令発行抑止信号を出力しない場合に、前記第2クロックで前記第2命令を発行する
情報処理装置。 - 第1命令部が、パイプライン処理を実行するパイプライン処理実行部へ第1命令を発行するステップと、
前記第1命令よりも優先順位の低い第2命令を格納する第2命令部が、前記第2命令の発行を制御するステップと
を具備し、
前記第1命令を発行するステップは、
前記第1命令の情報である命令発行確定信号を前記第2命令部へ出力するステップを備え、
前記第2命令の発行を制御するステップは、
所定の第1クロックにおいて処理サイクル数1信号を出力する制御を行うステップと、
前記処理サイクル数1信号を受け取り、前記第1クロックで命令発行抑止信号の出力を制御するステップと、
前記第1クロックで前記命令発行抑止信号が出力されないことによって、前記第1クロックに連続する第2クロックで、前記第2命令を前記パイプライン処理実行部へ発行するステップと
を備え、
前記処理サイクル数1信号を出力する制御を行うステップは、
前記命令発行確定信号に含まれる情報から前記第1命令の情報を読み取り、前記第1命令の演算器使用サイクル数が1であるか否かを判定するステップと、
前記第1命令の演算器使用サイクル数が1である場合、前記処理サイクル数1信号を出力するステップと
を含む
情報処理方法。 - 請求項6に記載の情報処理方法であって、
前記処理サイクル数1信号を出力する制御を行うステップは、
前記第1命令の演算器使用サイクル数が1でない場合、前記命令発行確定信号に含まれる情報から読み取る前記第1命令が使用する第1リソースの情報と、前記第2命令が使用する第2リソースの情報とに基づいて、前記第1命令が使用する第1リソースと前記第2命令が使用する第2リソースとが同じリソースを含むか否かを判定するステップと、
前記第1命令と前記第2命令とが同一リソースを使用しない場合、前記処理サイクル数1信号を出力するステップと
を更に含む
情報処理方法。 - 請求項7に記載の情報処理方法であって、
前記第2命令の発行を制御するステップは、
前記命令発行確定信号に含まれる情報から前記第1命令の演算TAT情報を読み取るステップと、
前記第1命令の演算TAT情報から読み出す前記第1命令の演算TATと前記第2命令の演算TAT情報から読み出す前記第2命令の演算TATとを比較するステップと、
前記比較の結果に基づいて、演算TAT不整合信号を出力するステップと
を更に備え、
前記演算TAT不整合信号を出力するステップは、
前記第1命令の演算TATよりも前記第2命令の演算TATの方が小さい場合に、前記演算TAT不整合信号を出力するステップ
を含み、
前記命令発行抑止信号の出力を制御するステップは、
前記処理サイクル数1信号を受け取っていないとき、又は、前記演算TAT不整合信号を受け取ったとき、前記命令発行抑止信号を出力するステップ
を含み、
前記第2クロックで、前記第2命令を前記パイプライン処理実行部へ発行するステップは、前記第1クロックでの前記命令発行抑止信号の出力によって、前記第2クロックで前記第2命令を発行しない
情報処理方法。 - 請求項8に記載の情報処理方法であって、
前記演算TAT不整合信号を出力するステップは、
前記第1命令の演算TATよりも前記第2命令の演算TATの方が小さい場合、前記第1リソースの情報と前記第2リソースの情報とに基づいて、前記第1命令と前記第2命令とが同じ結果書き込みリソースを使用するか否かを判定するステップと、
前記第1命令と前記第2命令とが同じ結果書き込みリソースを使用しない場合、前記演算TAT不整合信号を出力しないステップと
を含む
情報処理方法。 - 請求項6乃至9の何れか一項に記載の情報処理方法であって、
ビジーフラグ部が、前記命令発行確定信号に含まれる情報に基づいて前記第1命令が使用する第1リソースに対応したビジーフラグの点灯を制御するステップ
を更に具備し、
前記ビジーフラグの点灯を制御するステップは、
前記命令発行確定信号から前記第1命令の演算器使用サイクル数を読み取るステップと、
前記第1命令の演算器使用サイクル数からビジーフラグ点灯期間を計算するステップと、
前記ビジーフラグ点灯期間において、前記ビジーフラグを点灯させるステップと、
を備え、
前記第2命令の発行を制御するステップは、
前記ビジーフラグの状態を受け取り、前記ビジーフラグが点灯しているか否かを判定するステップと、
前記ビジーフラグが点灯していなければ、リソースチェックOK信号を出力するステップと、
を更に備え、
前記第2クロックで、前記第2命令を前記パイプライン処理実行部へ発行するステップは、前記第1クロックで前記リソースチェックOK信号を出力し、且つ、前記命令発行抑止信号を出力しない場合に、前記第2クロックで前記第2命令を発行する
情報処理方法。 - 請求項6乃至10の何れか一項に記載の情報処理方法をコンピュータに実行させる
情報処理プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009209838A JP5871298B2 (ja) | 2009-09-10 | 2009-09-10 | 情報処理装置、情報処理方法及び情報処理プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009209838A JP5871298B2 (ja) | 2009-09-10 | 2009-09-10 | 情報処理装置、情報処理方法及び情報処理プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011060048A JP2011060048A (ja) | 2011-03-24 |
JP5871298B2 true JP5871298B2 (ja) | 2016-03-01 |
Family
ID=43947593
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009209838A Active JP5871298B2 (ja) | 2009-09-10 | 2009-09-10 | 情報処理装置、情報処理方法及び情報処理プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5871298B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012173755A (ja) * | 2011-02-17 | 2012-09-10 | Nec Computertechno Ltd | 情報処理装置及び情報処理方法 |
JP6381019B2 (ja) * | 2014-03-31 | 2018-08-29 | Necプラットフォームズ株式会社 | 情報処理装置及び制御方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2806524B2 (ja) * | 1988-03-04 | 1998-09-30 | 日本電気株式会社 | ベクトル演算命令発行制御方法 |
US5127093A (en) * | 1989-01-17 | 1992-06-30 | Cray Research Inc. | Computer look-ahead instruction issue control |
JP3493768B2 (ja) * | 1994-12-01 | 2004-02-03 | 松下電器産業株式会社 | データ処理装置 |
JP5007860B2 (ja) * | 2007-04-17 | 2012-08-22 | エヌイーシーコンピュータテクノ株式会社 | ベクトル処理装置 |
JP5209933B2 (ja) * | 2007-10-19 | 2013-06-12 | ルネサスエレクトロニクス株式会社 | データ処理装置 |
JP4985452B2 (ja) * | 2008-02-14 | 2012-07-25 | エヌイーシーコンピュータテクノ株式会社 | ベクトル処理装置 |
-
2009
- 2009-09-10 JP JP2009209838A patent/JP5871298B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2011060048A (ja) | 2011-03-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5491071B2 (ja) | 命令融合演算装置および命令融合演算方法 | |
JP2003196084A (ja) | リードモディファイライトユニットを有するシステム | |
JP5720243B2 (ja) | プロセッサ検証プログラム | |
JP6493088B2 (ja) | 演算処理装置及び演算処理装置の制御方法 | |
JP5871298B2 (ja) | 情報処理装置、情報処理方法及び情報処理プログラム | |
JP6094356B2 (ja) | 演算処理装置 | |
JP4771079B2 (ja) | Vliw型プロセッサ | |
JP5630798B1 (ja) | プロセッサーおよび方法 | |
JP7064367B2 (ja) | デッドロック回避方法、デッドロック回避装置 | |
JP5788920B2 (ja) | ベクトル処理装置およびベクトル処理方法 | |
JP6381019B2 (ja) | 情報処理装置及び制御方法 | |
JP6473023B2 (ja) | 性能評価モジュール及びこれを組み込んだ半導体集積回路 | |
JP6340887B2 (ja) | 演算処理装置及び演算処理装置の制御方法 | |
JP6256088B2 (ja) | ベクトルプロセッサ、情報処理装置および追い越し制御方法 | |
JP2015106325A (ja) | ベクトルレジスタリネーミング制御方式、ベクトルプロセッサ、及びベクトルレジスタリネーミング制御方法 | |
CN112579168B (zh) | 指令执行单元、处理器以及信号处理方法 | |
WO2019188171A1 (ja) | コード生成方法、コード生成装置 | |
JP7039365B2 (ja) | デッドロック回避方法、デッドロック回避装置 | |
JP2023112584A (ja) | ベクトル命令処理方法 | |
JP2017059273A (ja) | 演算処理装置 | |
WO2019188172A1 (ja) | 情報処理装置 | |
JP4502983B2 (ja) | ベクトル制御回路、ベクトル処理装置、ベクトル制御方法、および、ベクトル制御プログラム。 | |
JP2002318689A (ja) | 資源使用サイクルの遅延指定付き命令を実行するvliwプロセッサおよび遅延指定命令の生成方法 | |
JP6307975B2 (ja) | 演算処理装置及び演算処理装置の制御方法 | |
JP3743155B2 (ja) | パイプライン制御型計算機 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20120807 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20131114 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20131129 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140128 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20140425 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140723 |
|
A911 | Transfer of reconsideration by examiner before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20140730 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20140813 |
|
A912 | Removal of reconsideration by examiner before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20140919 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150831 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160107 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5871298 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |