JP2008191856A - 情報処理システム - Google Patents
情報処理システム Download PDFInfo
- Publication number
- JP2008191856A JP2008191856A JP2007024463A JP2007024463A JP2008191856A JP 2008191856 A JP2008191856 A JP 2008191856A JP 2007024463 A JP2007024463 A JP 2007024463A JP 2007024463 A JP2007024463 A JP 2007024463A JP 2008191856 A JP2008191856 A JP 2008191856A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- units
- instructions
- word
- unit
- 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.)
- Pending
Links
Images
Abstract
【課題】複数の命令発行部からの命令が競合した場合でも、従来よりも処理時間を短縮することができる情報処理システムを提供すること。
【解決手段】本発明の情報処理システムは、出力順序を保障しない1番目から最終番目までの複数の命令(Word−1〜Word−8)を保持する複数の命令発行部(R1〜R8)と、前記複数の命令(Word−1〜Word−8)をそれぞれ実行するための複数の命令処理部(W1〜W8)と、前記複数の命令発行部(R1〜R8)が保持する複数の命令(Word−1〜Word−8)が競合しないように、前記複数の命令発行部(R1〜R8)からの命令の順番を変更する調停回路(20)とを具備している。
【選択図】図2
【解決手段】本発明の情報処理システムは、出力順序を保障しない1番目から最終番目までの複数の命令(Word−1〜Word−8)を保持する複数の命令発行部(R1〜R8)と、前記複数の命令(Word−1〜Word−8)をそれぞれ実行するための複数の命令処理部(W1〜W8)と、前記複数の命令発行部(R1〜R8)が保持する複数の命令(Word−1〜Word−8)が競合しないように、前記複数の命令発行部(R1〜R8)からの命令の順番を変更する調停回路(20)とを具備している。
【選択図】図2
Description
本発明は、調停回路を具備する情報処理システムに関する。
複数の命令発行部から送出された命令をそれぞれの命令処理部へ振り分ける情報処理システムが知られている。図1に示されるように、従来の情報処理システムは、クロックにより動作するN個(Nは1以上の整数)の命令発行部、N個の命令処理部、調停回路(図示しない)を具備している。Nを8とし、N個の命令発行部をそれぞれ命令発行部R101〜R108と称し、N個の命令処理部をそれぞれ命令処理部W101〜W108と称する。
命令発行部R101〜R108は、1番目から8番目までの8個の命令Word−1〜Word−8を保持している。命令Word−1〜Word−8は、出力順序が保障されない命令である(追い越し可能な命令である)。命令発行部R101〜R108は、命令Word−1〜Word−8をそれぞれ命令処理部W101〜W108に実行させるときに、命令Word−1〜Word−8を、調停回路を介して命令処理部W101〜W108に出力する。
まず、調停回路は、命令発行部R101〜R108からの命令Word−1を同じタイミング(例えば時刻T1)で受け取った場合、その命令Word−1に対して調停を行う。例えば、命令発行部R101〜R108からの命令Word−1は、この順に調停に勝ったものとする。即ち、命令発行部R101〜R108からの命令Word−1のうちの、命令発行部R101からの命令Word−1が最初に調停に勝ち、命令発行部R108からの命令Word−1が一度も勝てなかったものとする。命令Word−2〜Word−8に対しても命令Word−1の場合と同様である。
この場合、命令発行部R101は、それぞれ時刻T1〜T8のときに命令Word−1〜Word−8を出力する。
命令発行部R102は、調停に勝つまで時刻T1〜T2の間に命令Word−1を出し続け、時刻T3〜T9のときにそれぞれ命令Word−2〜Word−8を出力する。
命令発行部R103は、調停に勝つまで時刻T1〜T3の間に命令Word−1を出し続け、時刻T4〜T10のときにそれぞれ命令Word−2〜Word−8を出力する。
命令発行部R104は、調停に勝つまで時刻T1〜T4の間に命令Word−1を出し続け、時刻T5〜T11のときにそれぞれ命令Word−2〜Word−8を出力する。
命令発行部R105は、調停に勝つまで時刻T1〜T5の間に命令Word−1を出し続け、時刻T6〜T12のときにそれぞれ命令Word−2〜Word−8を出力する。
命令発行部R106は、調停に勝つまで時刻T1〜T6の間に命令Word−1を出し続け、時刻T7〜T13のときにそれぞれ命令Word−2〜Word−8を出力する。
命令発行部R107は、調停に勝つまで時刻T1〜T7の間に命令Word−1を出し続け、時刻T8〜T14のときにそれぞれ命令Word−2〜Word−8を出力する。
命令発行部R108は、調停に勝つまで時刻T1〜T8の間に命令Word−1を出し続け、時刻T9〜T15のときにそれぞれ命令Word−2〜Word−8を出力する。
命令発行部R102は、調停に勝つまで時刻T1〜T2の間に命令Word−1を出し続け、時刻T3〜T9のときにそれぞれ命令Word−2〜Word−8を出力する。
命令発行部R103は、調停に勝つまで時刻T1〜T3の間に命令Word−1を出し続け、時刻T4〜T10のときにそれぞれ命令Word−2〜Word−8を出力する。
命令発行部R104は、調停に勝つまで時刻T1〜T4の間に命令Word−1を出し続け、時刻T5〜T11のときにそれぞれ命令Word−2〜Word−8を出力する。
命令発行部R105は、調停に勝つまで時刻T1〜T5の間に命令Word−1を出し続け、時刻T6〜T12のときにそれぞれ命令Word−2〜Word−8を出力する。
命令発行部R106は、調停に勝つまで時刻T1〜T6の間に命令Word−1を出し続け、時刻T7〜T13のときにそれぞれ命令Word−2〜Word−8を出力する。
命令発行部R107は、調停に勝つまで時刻T1〜T7の間に命令Word−1を出し続け、時刻T8〜T14のときにそれぞれ命令Word−2〜Word−8を出力する。
命令発行部R108は、調停に勝つまで時刻T1〜T8の間に命令Word−1を出し続け、時刻T9〜T15のときにそれぞれ命令Word−2〜Word−8を出力する。
そこで、命令処理部W101は、それぞれ時刻T2〜T9のときに命令発行部R101〜R108からの命令Word−1を実行する。
命令処理部W102は、それぞれ時刻T3〜T10のときに命令発行部R101〜R108からの命令Word−2を実行する。
命令処理部W103は、それぞれ時刻T4〜T11のときに命令発行部R101〜R108からの命令Word−3を実行する。
命令処理部W104は、それぞれ時刻T5〜T12のときに命令発行部R101〜R108からの命令Word−4を実行する。
命令処理部W105は、それぞれ時刻T6〜T13のときに命令発行部R101〜R108からの命令Word−5を実行する。
命令処理部W106は、それぞれ時刻T7〜T14のときに命令発行部R101〜R108からの命令Word−6を実行する。
命令処理部W107は、それぞれ時刻T8〜T15のときに命令発行部R101〜R108からの命令Word−7を実行する。
命令処理部W108は、それぞれ時刻T9〜T16のときに命令発行部R101〜R108からの命令Word−8を実行する。
命令処理部W102は、それぞれ時刻T3〜T10のときに命令発行部R101〜R108からの命令Word−2を実行する。
命令処理部W103は、それぞれ時刻T4〜T11のときに命令発行部R101〜R108からの命令Word−3を実行する。
命令処理部W104は、それぞれ時刻T5〜T12のときに命令発行部R101〜R108からの命令Word−4を実行する。
命令処理部W105は、それぞれ時刻T6〜T13のときに命令発行部R101〜R108からの命令Word−5を実行する。
命令処理部W106は、それぞれ時刻T7〜T14のときに命令発行部R101〜R108からの命令Word−6を実行する。
命令処理部W107は、それぞれ時刻T8〜T15のときに命令発行部R101〜R108からの命令Word−7を実行する。
命令処理部W108は、それぞれ時刻T9〜T16のときに命令発行部R101〜R108からの命令Word−8を実行する。
このように、従来の情報処理システムでは、命令発行部R101〜R108が、命令処理部W101〜W108へ向かう追い越し可能な複数の命令Word−1〜Word−8を保持している状態で、各命令発行部R101〜R108から同じタイミング(例えば時刻T1)で送出された命令Word−1が同一の命令処理部(例えば命令処理部W101)へ向かう場合は、調停を行う。この場合、調停に勝った命令発行部(例えば命令発行部R101)の命令のみがその命令処理部(命令処理部W101)へ送出可能となり、調停に負けた命令発行部(命令発行部R102〜R108)は異なる命令処理部へ向かう後続命令を保持しているにも関わらず調停に勝つまで同一の命令を送出し続けるために、処理時間が遅くなっていた。図1に示されるように、命令発行部R101〜R108からの命令が競合した場合、時刻T1〜T8の時間が費やされる。命令発行部R108から出力された命令を命令処理部W101〜W108が実行した場合、時刻T9〜T16の時間が費やされる。これにより、従来の情報処理システムでは、処理時間として、時刻T1〜T16により16クロックも費やされる。複数の命令発行部からの命令が競合した場合でも、従来よりも処理時間を短縮することが望まれる。
命令の処理に関する技術について紹介する。
特開平03−127162号公報(特許文献1)には“CPUの共有メモリのアクセス方法”が記載されている。このアクセス方法は、ウェイト/ホールド機能を持たないCPUの共有メモリのアクセス方法であって、前記CPUが共有メモリをアクセスしようとした時、他方のCPUが共有メモリをアクセスしていない場合にはそのまま続けてアクセスし、他方のCPUが共有メモリをアクセスしている場合にはこれから実行するアクセス命令を無効とし、後続の命令を強制的にジャンプ命令に変更することにより無効にされたアクセス命令を再実行させることを特徴としている。
特許第3169878号公報(特許文献2)には“メモリ制御回路”が記載されている。このメモリ制御回路は、N(N≧2)個のメモリバンクを有するメモリ装置の制御回路であって、各メモリバンクの最新メモリリクエストの書き込みアドレス情報を入力とし、後続メモリリクエストのアクセス先バンクアドレスをセレクト信号とするアドレスセレクタと、該セレクタの出力と前記後続メモリリクエストの書き込みアドレス情報とを比較するコマンド/アドレス比較回路とを設け、前記コマンド/アドレス比較回路の比較結果が一致のときは、対応するメモリバンクの前記最新メモリリクエストに係るメモリ書き込み動作が、メモリのカラム信号が入力するタイミングを経過していなければ、対応するメモリバンクの前記最新メモリリクエストに係る書き込みデータを、前記後続メモリリクエストの書き込みデータに変更することを特徴としている。
特開2006−260472号公報(特許文献3)には“メモリアクセス装置”が記載されている。このメモリアクセス装置は、複数のバンクで構成されるメモリをアクセスするものであって、外部から入力されるメモリアクセス要求を、バンク単位のコマンドに分割する分割手段と、分割されたコマンドを保持する保持手段と、保持手段に保持されているコマンドの発行順序を入れ替える入替手段と、前記入替手段による発行順序に従ってコマンドを前記メモリに発行する発行手段とを備えることを特徴としている。
特開平6−28182号公報(特許文献4)には“情報処理装置”が記載されている。この情報処理装置は、命令記憶部に格納された複数の命令の実行順序の入れ換えが可能である情報処理装置であって、前記命令記憶部から読込んだ命令と、該命令の実行可能状態を示す実行可能フラグと、該命令の実行終了状態を示す終了フラグと、該命令と未実行の他の命令との間の実行の依存関係の存在を示すタグとを保持するための実行制御部と、前記実行制御部に保持された命令を読み込んで該命令が実行可能であるかどうかを判断し、該命令が実行可能であれば前記実行可能フラグをセットし、かつ該命令が前記実行制御部中の未実行の他の命令と依存関係にあるために実行不能であれば前記タグをセットするための実行可能判断部と、前記実行制御部の実行可能フラグにより実行可能であると示された命令を実行し、かつ該命令の実行終了後に該命令の前記終了フラグをセットするための命令実行部と、前記タグがセットされた命令が該命令より実行順序が後の他の命令と交換可能であれば該両命令の格納順序を交換するように前記命令記憶部への書き込みを実行するための命令交換部とを備えたことを特徴としている。
本発明の課題は、複数の命令発行部からの命令が競合した場合でも、従来よりも処理時間を短縮することができる情報処理システムを提供することにある。
以下に、発明を実施するための最良の形態・実施例で使用される符号を括弧付きで用いて、課題を解決するための手段を記載する。この符号は、特許請求の範囲の記載と発明を実施するための最良の形態・実施例の記載との対応を明らかにするために付加されたものであり、特許請求の範囲に記載されている発明の技術的範囲の解釈に用いてはならない。
本発明の情報処理システムは、
出力順序を保障しない1番目から最終番目までの複数の命令(Word−1〜Word−8)を保持する複数の命令発行部(R1〜R8)と、
前記複数の命令(Word−1〜Word−8)をそれぞれ実行するための複数の命令処理部(W1〜W8)と、
前記複数の命令発行部(R1〜R8)が保持する複数の命令(Word−1〜Word−8)が競合しないように、前記複数の命令発行部(R1〜R8)からの命令の順番を変更する調停回路(20)と
を具備している。
出力順序を保障しない1番目から最終番目までの複数の命令(Word−1〜Word−8)を保持する複数の命令発行部(R1〜R8)と、
前記複数の命令(Word−1〜Word−8)をそれぞれ実行するための複数の命令処理部(W1〜W8)と、
前記複数の命令発行部(R1〜R8)が保持する複数の命令(Word−1〜Word−8)が競合しないように、前記複数の命令発行部(R1〜R8)からの命令の順番を変更する調停回路(20)と
を具備している。
本発明の情報処理システムにおいて、
前記複数の命令発行部(R1〜R8)は、前記複数の命令(Word−1〜Word−8)をそれぞれ前記複数の命令処理部(W1〜W8)に実行させるときに、第1命令(Word−1)を識別する第1命令識別子(W#1)を前記調停回路(20)に出力し、
前記調停回路(20)は、
複数の命令セレクト部(SL1〜SL8)と、
前記複数の命令発行部(R1〜R8)からの前記第1命令識別子(W#1)を同じタイミングで受け取った場合、それぞれ前記複数の命令(Word−1〜Word−8)を識別する複数の命令識別子(W#1〜W#8)を前記複数の命令発行部(R1〜R8)に出力し、それぞれ前記複数の命令発行部(R1〜R8)を識別する複数の命令発行部識別子(R#1〜R#8)を前記複数の命令セレクト部(SL1〜SL8)に出力する読出開始ワード変更部(10)と
を具備し、
前記複数の命令発行部(R1〜R8)は、それぞれ、前記読出開始ワード変更部(10)からの前記複数の命令識別子(W#1〜W#8)に応じて、前記複数の命令(Word−1〜Word−8)が競合しないように、前記複数の命令(Word−1〜Word−8)を出力し、
前記複数の命令セレクト部(SL1〜SL8)は、それぞれ、前記読出開始ワード変更部(10)からの前記複数の命令発行部識別子(R#1〜R#8)に応じて、前記複数の命令発行部(R1〜R8)からの命令が競合しないように、前記複数の命令発行部(R1〜R8)からの命令を前記複数の命令処理部(W1〜W8)に出力する。
前記複数の命令発行部(R1〜R8)は、前記複数の命令(Word−1〜Word−8)をそれぞれ前記複数の命令処理部(W1〜W8)に実行させるときに、第1命令(Word−1)を識別する第1命令識別子(W#1)を前記調停回路(20)に出力し、
前記調停回路(20)は、
複数の命令セレクト部(SL1〜SL8)と、
前記複数の命令発行部(R1〜R8)からの前記第1命令識別子(W#1)を同じタイミングで受け取った場合、それぞれ前記複数の命令(Word−1〜Word−8)を識別する複数の命令識別子(W#1〜W#8)を前記複数の命令発行部(R1〜R8)に出力し、それぞれ前記複数の命令発行部(R1〜R8)を識別する複数の命令発行部識別子(R#1〜R#8)を前記複数の命令セレクト部(SL1〜SL8)に出力する読出開始ワード変更部(10)と
を具備し、
前記複数の命令発行部(R1〜R8)は、それぞれ、前記読出開始ワード変更部(10)からの前記複数の命令識別子(W#1〜W#8)に応じて、前記複数の命令(Word−1〜Word−8)が競合しないように、前記複数の命令(Word−1〜Word−8)を出力し、
前記複数の命令セレクト部(SL1〜SL8)は、それぞれ、前記読出開始ワード変更部(10)からの前記複数の命令発行部識別子(R#1〜R#8)に応じて、前記複数の命令発行部(R1〜R8)からの命令が競合しないように、前記複数の命令発行部(R1〜R8)からの命令を前記複数の命令処理部(W1〜W8)に出力する。
本発明の情報処理システムにおいて、
前記調停回路(20)は、前記複数の命令発行部(R1〜R8)からの前記第1命令識別子(W#1)を異なるタイミングで受け取った場合、不一致結果を前記複数の命令発行部(R1〜R8)に出力し、
前記複数の命令発行部(R1〜R8)の各々は、前記不一致結果に応じて、それぞれ前記複数の命令(Word−1〜Word−8)を1番目から最終番目までこの順に前記複数の命令処理部(W1〜W8)に出力する。
前記調停回路(20)は、前記複数の命令発行部(R1〜R8)からの前記第1命令識別子(W#1)を異なるタイミングで受け取った場合、不一致結果を前記複数の命令発行部(R1〜R8)に出力し、
前記複数の命令発行部(R1〜R8)の各々は、前記不一致結果に応じて、それぞれ前記複数の命令(Word−1〜Word−8)を1番目から最終番目までこの順に前記複数の命令処理部(W1〜W8)に出力する。
本発明の情報処理システムにおいて、
前記複数の命令発行部(R1〜R8)であるN個(Nは2以上の整数)の命令発行部(R1〜R8)は、前記複数の命令(Word−1〜Word−8)であるN個の命令(Word−1〜Word−8)をそれぞれ前記複数の命令処理部(W1〜W8)であるN個の命令処理部(W1〜W8)に実行させるときに、前記第1命令識別子(W#1)を前記調停回路(20)に出力し、
前記調停回路(20)の読出開始ワード変更部(10)は、前記N個の命令発行部(R1〜R8)からの前記第1命令識別子(W#1)を同じタイミングで受け取った場合、それぞれ前記複数の命令識別子(W#1〜W#8)であるN個の命令識別子(W#1〜W#8)を前記N個の命令発行部(R1〜R8)に出力し、それぞれ前記複数の命令発行部識別子(R#1〜R#8)であるN個の命令発行部識別子(R#1〜R#8)を前記調停回路(20)の前記複数の命令セレクト部(SL1〜SL8)であるN個の命令セレクト部(SL1〜SL8)に出力し、
第1〜第N命令発行部(R1〜R8)は、それぞれ、前記読出開始ワード変更部(10)からの第1〜第N命令識別子(W#1〜W#8)に応じて、第1〜第N命令(Word−1〜Word−8)が競合しないように、前記第1〜第N命令(Word−1〜Word−8)を出力し、
第1〜第N命令セレクト部(SL1〜SL8)は、それぞれ、前記読出開始ワード変更部(10)からの第1〜第N命令発行部識別子(R#1〜R#8)に応じて、前記第1〜第N命令発行部(R1〜R8)からの命令が競合しないように、前記第1〜第N命令発行部(R1〜R8)からの命令を第1〜第N命令処理部(W1〜W8)に出力する。
前記複数の命令発行部(R1〜R8)であるN個(Nは2以上の整数)の命令発行部(R1〜R8)は、前記複数の命令(Word−1〜Word−8)であるN個の命令(Word−1〜Word−8)をそれぞれ前記複数の命令処理部(W1〜W8)であるN個の命令処理部(W1〜W8)に実行させるときに、前記第1命令識別子(W#1)を前記調停回路(20)に出力し、
前記調停回路(20)の読出開始ワード変更部(10)は、前記N個の命令発行部(R1〜R8)からの前記第1命令識別子(W#1)を同じタイミングで受け取った場合、それぞれ前記複数の命令識別子(W#1〜W#8)であるN個の命令識別子(W#1〜W#8)を前記N個の命令発行部(R1〜R8)に出力し、それぞれ前記複数の命令発行部識別子(R#1〜R#8)であるN個の命令発行部識別子(R#1〜R#8)を前記調停回路(20)の前記複数の命令セレクト部(SL1〜SL8)であるN個の命令セレクト部(SL1〜SL8)に出力し、
第1〜第N命令発行部(R1〜R8)は、それぞれ、前記読出開始ワード変更部(10)からの第1〜第N命令識別子(W#1〜W#8)に応じて、第1〜第N命令(Word−1〜Word−8)が競合しないように、前記第1〜第N命令(Word−1〜Word−8)を出力し、
第1〜第N命令セレクト部(SL1〜SL8)は、それぞれ、前記読出開始ワード変更部(10)からの第1〜第N命令発行部識別子(R#1〜R#8)に応じて、前記第1〜第N命令発行部(R1〜R8)からの命令が競合しないように、前記第1〜第N命令発行部(R1〜R8)からの命令を第1〜第N命令処理部(W1〜W8)に出力する。
本発明の情報処理システムにおいて、
第J命令発行部(Jは1≦J≦Nを満たす整数)は、前記読出開始ワード変更部からの第J命令識別子に応じて、第(J+N−N)〜第(J+N−1)命令{ここで、(J+N−N)〜(J+N−1)が(N+1)〜(N+N)のいずれかを表すとき、前記(N+1)〜(N+N)はそれぞれ1〜Nを表す}をこの順に出力し、
第J命令セレクト部は、前記読出開始ワード変更部からの第J命令発行部識別子に応じて、第(J+N−0)〜第(J+N−(N−1))命令発行部{ここで、(J+N−0)〜(J+N−(N−1))が(N+1)〜(N+N)のいずれかを表すとき、前記(N+1)〜(N+N)はそれぞれ1〜Nを表す}からの第J命令をこの順に第J命令処理部に出力する。
第J命令発行部(Jは1≦J≦Nを満たす整数)は、前記読出開始ワード変更部からの第J命令識別子に応じて、第(J+N−N)〜第(J+N−1)命令{ここで、(J+N−N)〜(J+N−1)が(N+1)〜(N+N)のいずれかを表すとき、前記(N+1)〜(N+N)はそれぞれ1〜Nを表す}をこの順に出力し、
第J命令セレクト部は、前記読出開始ワード変更部からの第J命令発行部識別子に応じて、第(J+N−0)〜第(J+N−(N−1))命令発行部{ここで、(J+N−0)〜(J+N−(N−1))が(N+1)〜(N+N)のいずれかを表すとき、前記(N+1)〜(N+N)はそれぞれ1〜Nを表す}からの第J命令をこの順に第J命令処理部に出力する。
本発明の情報処理システムにおいて、
前記調停回路(20)は、
前記N個の命令発行部(R1〜R8)からの前記第1命令識別子(W#1)を同じタイミングで受け取った場合、一致結果を出力する命令処理部一致検出部(9)
を更に具備し、
前記読出開始ワード変更部(10)は、前記一致結果に応じて、それぞれ前記N個の命令(Word−1〜Word−8)を識別するN個の命令識別子(W#1〜W#8)を前記N個の命令発行部(R1〜R8)に出力し、それぞれ前記N個の命令発行部(R1〜R8)を識別するN個の命令発行部識別子(R#1〜R#8)を前記N個の命令セレクト部(SL1〜SL8)に出力する。
前記調停回路(20)は、
前記N個の命令発行部(R1〜R8)からの前記第1命令識別子(W#1)を同じタイミングで受け取った場合、一致結果を出力する命令処理部一致検出部(9)
を更に具備し、
前記読出開始ワード変更部(10)は、前記一致結果に応じて、それぞれ前記N個の命令(Word−1〜Word−8)を識別するN個の命令識別子(W#1〜W#8)を前記N個の命令発行部(R1〜R8)に出力し、それぞれ前記N個の命令発行部(R1〜R8)を識別するN個の命令発行部識別子(R#1〜R#8)を前記N個の命令セレクト部(SL1〜SL8)に出力する。
このように、本発明の情報処理システムでは、上述の構成により、N個の命令発行部(R1〜R8)からの命令が競合した場合でも、従来よりも処理時間を短縮することができる。
以下に添付図面を参照して、本発明の情報処理システムについて詳細に説明する。
図2は、本発明の情報処理システムの構成を示している。本発明の情報処理システムは、クロックにより動作するN個(Nは2以上の整数)の命令発行部、N個の命令処理部、調停回路20を具備している。Nを8とし、N個の命令発行部をそれぞれ命令発行部R1〜R8と称し、N個の命令処理部をそれぞれ命令処理部W1〜W8と称する。
命令発行部R1〜R8は、1番目から8番目までの8個の命令Word−1〜Word−8を保持している。命令Word−1〜Word−8は、出力順序が保障されない命令である(追い越し可能な命令である)。命令発行部R1〜R8は、命令Word−1〜Word−8をそれぞれ命令処理部W1〜W8に実行させるときに、命令Word−1〜Word−8を、調停回路20を介して命令処理部W1〜W8に出力する。このとき、命令発行部R1〜R8の各々は、命令Word−1を識別する命令識別子W#1を調停回路20に出力する。
調停回路20は、命令処理部一致検出部9と、N個の命令セレクト部(命令セレクト部SL1〜SL8)と、読出開始ワード変更部10とを具備している。
調停回路20は、非競合処理、競合処理を実行する。
非競合処理として、命令処理部一致検出部9は、命令発行部R1〜R8からの命令識別子W#1を異なるタイミングで受け取る。この場合、不一致結果を読出開始ワード変更部10に出力する。読出開始ワード変更部10は、従来と同様に調停を行い、不一致結果を命令発行部R1〜R8に出力し、セレクト報告として、それぞれ命令発行部R1〜R8を識別する命令発行部識別子R#1〜R#8を命令セレクト部SL1〜SL8に出力する。命令発行部RJ(Jは1≦J≦Nを満たす整数)は、不一致結果に応じて、それぞれ命令Word−1〜Word−8をこの順に出力する。命令セレクト部SL1〜SL8は、それぞれ、読出開始ワード変更部10からの命令識別子W#1〜W#8に応じて、命令発行部RJからの命令Word−1〜Word−8を命令処理部W1〜W8に出力する。命令処理部W1〜W8は、それぞれ、命令発行部RJからの命令Word−1〜Word−8を実行する。
競合処理として、命令処理部一致検出部9は、命令発行部R1〜R8からの命令識別子W#1を同じタイミングで受け取る。この場合、一致結果を出力する。読出開始ワード変更部10は、一致結果に応じて、変更読出開始ワード報告として、それぞれ命令Word−1〜Word−8を識別する命令識別子W#1〜W#8を命令発行部R1〜R8に出力し、セレクト報告として、それぞれ命令発行部R1〜R8を識別する命令発行部識別子R#1〜R#8を命令セレクト部SL1〜SL8に出力する。命令発行部R1〜R8は、それぞれ、読出開始ワード変更部10からの命令識別子W#1〜W#8に応じて、命令Word−1〜Word−8が競合しないように、命令Word−1〜Word−8を出力する。命令セレクト部SL1〜SL8は、それぞれ、読出開始ワード変更部10からの命令発行部識別子R#1〜R#8に応じて、命令発行部R1〜R8からの命令が競合しないように、命令発行部R1〜R8からの命令を命令処理部W1〜W8に出力する。命令処理部W1〜W8は、命令セレクト部SL1〜SL8からの命令を実行する。
図3は、本発明の情報処理システムの動作として上記の競合処理を示すタイミングチャートである。
上記の競合処理は、第1競合処理(ステップS1)、第2競合処理(ステップS2)、第3競合処理(ステップS3)を含んでいる。
第1競合処理(ステップS1)において、命令発行部R1〜R8は、出力順序を保障しない命令Word−1〜Word−8を保持し、その命令Word−1〜Word−8をそれぞれ命令処理部W1〜W8に実行させるときに、命令識別子W#1を調停回路20に出力する。調停回路20の命令処理部一致検出部9は、命令発行部R1〜R8からの命令識別子W#1を同じタイミング(例えば時刻T1)で受け取った場合、一致結果を出力する。調停回路20の読出開始ワード変更部10は、一致結果に応じて、変更読出開始ワード報告として、それぞれ命令識別子W#1〜W#8を命令発行部R1〜R8に出力し、セレクト報告として、それぞれ命令発行部識別子R#1〜R#8を命令セレクト部SL1〜SL8に出力する。
第2競合処理(ステップS2)において、命令発行部RJ(Jは1≦J≦Nを満たす整数)は、読出開始ワード変更部10からの命令識別子W#Jに応じて、命令Word−(J+N−N)〜Word−(J+N−1)をこの順に出力する。ここで、(J+N−N)〜(J+N−1)が(N+1)〜(N+N)のいずれかを表すとき、Nは8であるので、(N+1)〜(N+N)=9〜16はそれぞれ1〜8を表している。
即ち、命令発行部R1は、読出開始ワード変更部10からの変更読出開始ワード報告(命令識別子W#1)に応じて、それぞれ時刻T1〜T8のときに命令Word−1〜Word−8を出力する。
命令発行部R2は、読出開始ワード変更部10からの変更読出開始ワード報告(命令識別子W#2)に応じて、それぞれ時刻T1〜T8のときに命令Word−2〜Word−8、Word1を出力する。
命令発行部R3は、読出開始ワード変更部10からの変更読出開始ワード報告(命令識別子W#3)に応じて、それぞれ時刻T1〜T8のときに命令Word−3〜Word−8、Word1、Word2を出力する。
命令発行部R4は、読出開始ワード変更部10からの変更読出開始ワード報告(命令識別子W#4)に応じて、それぞれ時刻T1〜T8のときに命令Word−4〜Word−8、Word1〜Word3を出力する。
命令発行部R5は、読出開始ワード変更部10からの変更読出開始ワード報告(命令識別子W#5)に応じて、それぞれ時刻T1〜T8のときに命令Word−5〜Word−8、Word1〜Word4を出力する。
命令発行部R6は、読出開始ワード変更部10からの変更読出開始ワード報告(命令識別子W#6)に応じて、それぞれ時刻T1〜T8のときに命令Word−6〜Word−8、Word1〜Word5を出力する。
命令発行部R7は、読出開始ワード変更部10からの変更読出開始ワード報告(命令識別子W#7)に応じて、それぞれ時刻T1〜T8のときに命令Word−7、Word−8、Word1〜Word6を出力する。
命令発行部R8は、読出開始ワード変更部10からの変更読出開始ワード報告(命令識別子W#8)に応じて、それぞれ時刻T1〜T8のときに命令Word−8、Word1〜Word7を出力する。
命令発行部R2は、読出開始ワード変更部10からの変更読出開始ワード報告(命令識別子W#2)に応じて、それぞれ時刻T1〜T8のときに命令Word−2〜Word−8、Word1を出力する。
命令発行部R3は、読出開始ワード変更部10からの変更読出開始ワード報告(命令識別子W#3)に応じて、それぞれ時刻T1〜T8のときに命令Word−3〜Word−8、Word1、Word2を出力する。
命令発行部R4は、読出開始ワード変更部10からの変更読出開始ワード報告(命令識別子W#4)に応じて、それぞれ時刻T1〜T8のときに命令Word−4〜Word−8、Word1〜Word3を出力する。
命令発行部R5は、読出開始ワード変更部10からの変更読出開始ワード報告(命令識別子W#5)に応じて、それぞれ時刻T1〜T8のときに命令Word−5〜Word−8、Word1〜Word4を出力する。
命令発行部R6は、読出開始ワード変更部10からの変更読出開始ワード報告(命令識別子W#6)に応じて、それぞれ時刻T1〜T8のときに命令Word−6〜Word−8、Word1〜Word5を出力する。
命令発行部R7は、読出開始ワード変更部10からの変更読出開始ワード報告(命令識別子W#7)に応じて、それぞれ時刻T1〜T8のときに命令Word−7、Word−8、Word1〜Word6を出力する。
命令発行部R8は、読出開始ワード変更部10からの変更読出開始ワード報告(命令識別子W#8)に応じて、それぞれ時刻T1〜T8のときに命令Word−8、Word1〜Word7を出力する。
また、命令セレクト部SLJは、読出開始ワード変更部10からの命令発行部識別子R#Jに応じて、命令発行部R(J+N−0)〜R(J+N−(N−1))からの命令Word−Jをこの順に命令処理部WJに出力する。ここで、(J+N−0)〜(J+N−(N−1))が(N+1)〜(N+N)のいずれかを表すとき、Nは8であるので、(N+1)〜(N+N)=9〜16はそれぞれ1〜8を表している。
第3競合処理(ステップS3)において、命令セレクト部SL1は、読出開始ワード変更部10からのセレクト報告(命令発行部識別子R#1)に応じて、命令発行部R1、R8〜R2からの命令Word−1をそれぞれ時刻T2〜T9のときに命令処理部W1に出力する。命令処理部W1は、そのときの命令Word−1を実行する。
命令セレクト部SL2は、読出開始ワード変更部10からのセレクト報告(命令発行部識別子R#2)に応じて、命令発行部R2、R1、R8〜R3からの命令Word−2をそれぞれ時刻T2〜T9のときに命令処理部W2に出力する。命令処理部W2は、そのときの命令Word−2を実行する。
命令セレクト部SL3は、読出開始ワード変更部10からのセレクト報告(命令発行部識別子R#3)に応じて、命令発行部R3〜R1、R8〜R4からの命令Word−3をそれぞれ時刻T2〜T9のときに命令処理部W3に出力する。命令処理部W3は、そのときの命令Word−3を実行する。
命令セレクト部SL4は、読出開始ワード変更部10からのセレクト報告(命令発行部識別子R#4)に応じて、命令発行部R4〜R1、R8〜R5からの命令Word−4をそれぞれ時刻T2〜T9のときに命令処理部W4に出力する。命令処理部W4は、そのときの命令Word−4を実行する。
命令セレクト部SL5は、読出開始ワード変更部10からのセレクト報告(命令発行部識別子R#5)に応じて、命令発行部R5〜R1、R8〜R6からの命令Word−5をそれぞれ時刻T2〜T9のときに命令処理部W5に出力する。命令処理部W5は、そのときの命令Word−5を実行する。
命令セレクト部SL6は、読出開始ワード変更部10からのセレクト報告(命令発行部識別子R#6)に応じて、命令発行部R6〜R1、R8、R7からの命令Word−6をそれぞれ時刻T2〜T9のときに命令処理部W6に出力する。命令処理部W6は、そのときの命令Word−6を実行する。
命令セレクト部SL7は、読出開始ワード変更部10からのセレクト報告(命令発行部識別子R#7)に応じて、命令発行部R7〜R1、R8からの命令Word−7をそれぞれ時刻T2〜T9のときに命令処理部W7に出力する。命令処理部W7は、そのときの命令Word−7を実行する。
命令セレクト部SL8は、読出開始ワード変更部10からのセレクト報告(命令発行部識別子R#8)に応じて、命令発行部R8〜R1からの命令Word−8をそれぞれ時刻T2〜T9のときに命令処理部W8に出力する。命令処理部W8は、そのときの命令Word−8を実行する。
命令セレクト部SL2は、読出開始ワード変更部10からのセレクト報告(命令発行部識別子R#2)に応じて、命令発行部R2、R1、R8〜R3からの命令Word−2をそれぞれ時刻T2〜T9のときに命令処理部W2に出力する。命令処理部W2は、そのときの命令Word−2を実行する。
命令セレクト部SL3は、読出開始ワード変更部10からのセレクト報告(命令発行部識別子R#3)に応じて、命令発行部R3〜R1、R8〜R4からの命令Word−3をそれぞれ時刻T2〜T9のときに命令処理部W3に出力する。命令処理部W3は、そのときの命令Word−3を実行する。
命令セレクト部SL4は、読出開始ワード変更部10からのセレクト報告(命令発行部識別子R#4)に応じて、命令発行部R4〜R1、R8〜R5からの命令Word−4をそれぞれ時刻T2〜T9のときに命令処理部W4に出力する。命令処理部W4は、そのときの命令Word−4を実行する。
命令セレクト部SL5は、読出開始ワード変更部10からのセレクト報告(命令発行部識別子R#5)に応じて、命令発行部R5〜R1、R8〜R6からの命令Word−5をそれぞれ時刻T2〜T9のときに命令処理部W5に出力する。命令処理部W5は、そのときの命令Word−5を実行する。
命令セレクト部SL6は、読出開始ワード変更部10からのセレクト報告(命令発行部識別子R#6)に応じて、命令発行部R6〜R1、R8、R7からの命令Word−6をそれぞれ時刻T2〜T9のときに命令処理部W6に出力する。命令処理部W6は、そのときの命令Word−6を実行する。
命令セレクト部SL7は、読出開始ワード変更部10からのセレクト報告(命令発行部識別子R#7)に応じて、命令発行部R7〜R1、R8からの命令Word−7をそれぞれ時刻T2〜T9のときに命令処理部W7に出力する。命令処理部W7は、そのときの命令Word−7を実行する。
命令セレクト部SL8は、読出開始ワード変更部10からのセレクト報告(命令発行部識別子R#8)に応じて、命令発行部R8〜R1からの命令Word−8をそれぞれ時刻T2〜T9のときに命令処理部W8に出力する。命令処理部W8は、そのときの命令Word−8を実行する。
このように、本発明の情報処理システムでは、上述の構成により、命令発行部R1〜R8からの命令が競合した場合でも、従来よりも処理時間を短縮することができる。その理由として、図3に示されるように、命令発行部R1〜R8からの命令が競合した場合、上記の時刻T1〜T8の時間が費やされる。命令発行部R1〜R8から出力された命令を命令処理部W1〜W8が実行した場合、時刻T2〜T9の時間が費やされる。これにより、本発明の情報処理システムでは、処理時間として、時刻T1〜T9により9クロックが費やされることになり、従来の情報処理システムに比べて7クロック分短縮することができる。
本発明は、複数の命令発行部から送出された命令が同一の命令処理部へ向かう可能性があるシステムの調停に適用できる。
R1〜R8 命令発行部、
R#1〜R#8 命令発行部識別子
9 命令処理部一致検出部、
10 読出開始ワード変更部、
SL1〜SL8 命令セレクト部、
20 調停回路、
W1〜W8 命令処理部、
Word−1〜Word−8 命令、
W#1〜W#8 命令識別子、
R#1〜R#8 命令発行部識別子
9 命令処理部一致検出部、
10 読出開始ワード変更部、
SL1〜SL8 命令セレクト部、
20 調停回路、
W1〜W8 命令処理部、
Word−1〜Word−8 命令、
W#1〜W#8 命令識別子、
Claims (6)
- 出力順序を保障しない1番目から最終番目までの複数の命令を保持する複数の命令発行部と、
前記複数の命令をそれぞれ実行するための複数の命令処理部と、
前記複数の命令発行部が保持する複数の命令が競合しないように、前記複数の命令発行部からの命令の順番を変更する調停回路と
を具備する情報処理システム。 - 請求項1に記載の情報処理システムにおいて、
前記複数の命令発行部は、前記複数の命令をそれぞれ前記複数の命令処理部に実行させるときに、第1命令を識別する第1命令識別子を前記調停回路に出力し、
前記調停回路は、
複数の命令セレクト部と、
前記複数の命令発行部からの前記第1命令識別子を同じタイミングで受け取った場合、それぞれ前記複数の命令を識別する複数の命令識別子を前記複数の命令発行部に出力し、それぞれ前記複数の命令発行部を識別する複数の命令発行部識別子を前記複数の命令セレクト部に出力する読出開始ワード変更部と
を具備し、
前記複数の命令発行部は、それぞれ、前記読出開始ワード変更部からの前記複数の命令識別子に応じて、前記複数の命令が競合しないように、前記複数の命令を出力し、
前記複数の命令セレクト部は、それぞれ、前記読出開始ワード変更部からの前記複数の命令発行部識別子に応じて、前記複数の命令発行部からの命令が競合しないように、前記複数の命令発行部からの命令を前記複数の命令処理部に出力する
情報処理システム。 - 請求項2に記載の情報処理システムにおいて、
前記調停回路は、前記複数の命令発行部からの前記第1命令識別子を異なるタイミングで受け取った場合、不一致結果を前記複数の命令発行部に出力し、
前記複数の命令発行部の各々は、前記不一致結果に応じて、それぞれ前記複数の命令を1番目から最終番目までこの順に前記複数の命令処理部に出力する
情報処理システム。 - 請求項2又は3に記載の情報処理システムにおいて、
前記複数の命令発行部であるN個(Nは2以上の整数)の命令発行部は、前記複数の命令であるN個の命令をそれぞれ前記複数の命令処理部であるN個の命令処理部に実行させるときに、前記第1命令識別子を前記調停回路に出力し、
前記調停回路の読出開始ワード変更部は、前記N個の命令発行部からの前記第1命令識別子を同じタイミングで受け取った場合、それぞれ前記複数の命令識別子であるN個の命令識別子を前記N個の命令発行部に出力し、それぞれ前記複数の命令発行部識別子であるN個の命令発行部識別子を前記調停回路の前記複数の命令セレクト部であるN個の命令セレクト部に出力し、
第1〜第N命令発行部は、それぞれ、前記読出開始ワード変更部からの第1〜第N命令識別子に応じて、第1〜第N命令が競合しないように、前記第1〜第N命令を出力し、
第1〜第N命令セレクト部は、それぞれ、前記読出開始ワード変更部からの第1〜第N命令発行部識別子に応じて、前記第1〜第N命令発行部からの命令が競合しないように、前記第1〜第N命令発行部からの命令を第1〜第N命令処理部に出力する
情報処理システム。 - 請求項4に記載の情報処理システムにおいて、
第J命令発行部(Jは1≦J≦Nを満たす整数)は、前記読出開始ワード変更部からの第J命令識別子に応じて、第(J+N−N)〜第(J+N−1)命令{ここで、(J+N−N)〜(J+N−1)が(N+1)〜(N+N)のいずれかを表すとき、前記(N+1)〜(N+N)はそれぞれ1〜Nを表す}をこの順に出力し、
第J命令セレクト部は、前記読出開始ワード変更部からの第J命令発行部識別子に応じて、第(J+N−0)〜第(J+N−(N−1))命令発行部{ここで、(J+N−0)〜(J+N−(N−1))が(N+1)〜(N+N)のいずれかを表すとき、前記(N+1)〜(N+N)はそれぞれ1〜Nを表す}からの第J命令をこの順に第J命令処理部に出力する
情報処理システム。 - 請求項4又は5に記載の情報処理システムにおいて、
前記調停回路は、
前記N個の命令発行部からの前記第1命令識別子を同じタイミングで受け取った場合、一致結果を出力する命令処理部一致検出部
を更に具備し、
前記読出開始ワード変更部は、前記一致結果に応じて、それぞれ前記N個の命令を識別するN個の命令識別子を前記N個の命令発行部に出力し、それぞれ前記N個の命令発行部を識別するN個の命令発行部識別子を前記N個の命令セレクト部に出力する
情報処理システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007024463A JP2008191856A (ja) | 2007-02-02 | 2007-02-02 | 情報処理システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007024463A JP2008191856A (ja) | 2007-02-02 | 2007-02-02 | 情報処理システム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008191856A true JP2008191856A (ja) | 2008-08-21 |
Family
ID=39751911
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007024463A Pending JP2008191856A (ja) | 2007-02-02 | 2007-02-02 | 情報処理システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008191856A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016009907A (ja) * | 2014-06-23 | 2016-01-18 | 日本電信電話株式会社 | プログラマブルデバイスおよびその制御方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10124316A (ja) * | 1996-08-27 | 1998-05-15 | Matsushita Electric Ind Co Ltd | 複数の命令流を独立に処理し、命令流単位に処理性能を柔軟に制御するマルチスレッドプロセッサ |
JP2001356903A (ja) * | 2000-05-04 | 2001-12-26 | Internatl Business Mach Corp <Ibm> | マルチスレッド・プロセッサ内でのパイプライン・ステージのフラッシュ方法および装置 |
JP2003337696A (ja) * | 2002-03-06 | 2003-11-28 | Matsushita Electric Ind Co Ltd | データ処理装置及びプログラム |
JP2004326738A (ja) * | 2003-04-21 | 2004-11-18 | Internatl Business Mach Corp <Ibm> | 同時マルチスレッド化プロセッサ |
-
2007
- 2007-02-02 JP JP2007024463A patent/JP2008191856A/ja active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10124316A (ja) * | 1996-08-27 | 1998-05-15 | Matsushita Electric Ind Co Ltd | 複数の命令流を独立に処理し、命令流単位に処理性能を柔軟に制御するマルチスレッドプロセッサ |
JP2001356903A (ja) * | 2000-05-04 | 2001-12-26 | Internatl Business Mach Corp <Ibm> | マルチスレッド・プロセッサ内でのパイプライン・ステージのフラッシュ方法および装置 |
JP2003337696A (ja) * | 2002-03-06 | 2003-11-28 | Matsushita Electric Ind Co Ltd | データ処理装置及びプログラム |
JP2004326738A (ja) * | 2003-04-21 | 2004-11-18 | Internatl Business Mach Corp <Ibm> | 同時マルチスレッド化プロセッサ |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016009907A (ja) * | 2014-06-23 | 2016-01-18 | 日本電信電話株式会社 | プログラマブルデバイスおよびその制御方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3098071B2 (ja) | 条件付き分岐を有するプログラムの効率的実行をするためのコンピュータシステム | |
JP2818249B2 (ja) | 電子計算機 | |
EP2642392B1 (en) | Semiconductor integrated circuit device and system using the same | |
US6339539B1 (en) | Content addressable memory having read/write capabilities that do not interrupt continuous search cycles | |
JP2003150574A (ja) | マイクロコンピュータ | |
JP2014533861A (ja) | 多重バンクへの同時に起こる読出し/書込みアクセスを提供するように構成されたメモリ | |
KR100983135B1 (ko) | 패킷의 의존성 명령을 그룹핑하여 실행하는 프로세서 및 방법 | |
JP2005235135A (ja) | ベクトル処理装置、及び、追い越し制御回路 | |
JPH01188950A (ja) | デッドロック回避実行制御方式 | |
JP4985452B2 (ja) | ベクトル処理装置 | |
WO2009098737A1 (ja) | 外部デバイスアクセス装置、その制御方法及びシステムlsi | |
JP2008191856A (ja) | 情報処理システム | |
JP2005332370A (ja) | 制御装置 | |
US5978897A (en) | Sequence operation processor employing multi-port RAMs for simultaneously reading and writing | |
JPH06214875A (ja) | 記憶制御装置 | |
US7076641B2 (en) | Programmable controller | |
JP2011204312A (ja) | メモリチップおよびメモリシステム | |
US10481867B2 (en) | Data input/output unit, electronic apparatus, and control methods thereof | |
JP2005149547A (ja) | メモリ制御装置及び集積回路 | |
JP2883465B2 (ja) | 電子計算機 | |
JP6519343B2 (ja) | データ処理装置 | |
KR100490438B1 (ko) | 연산/저장을 병행하여 처리하는 장치 및 방법 | |
JP2727947B2 (ja) | アドレストレース方式 | |
JP2010122813A (ja) | 情報処理装置、集積回路装置、電子機器 | |
JP2010205088A (ja) | ベクトル処理装置、及びベクトル処理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Effective date: 20080515 Free format text: JAPANESE INTERMEDIATE CODE: A621 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20101124 |
|
A131 | Notification of reasons for refusal |
Effective date: 20101126 Free format text: JAPANESE INTERMEDIATE CODE: A131 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20110316 |