(57)【要約】  階層化された調停装置において、各階層の調停装置は、自装置の属する階層で、１番目に優先度の高いリソース利用要求と２番目に優先度の高いリソース利用要求とを選択して上位側の階層の調停装置へ出力する。  また、最上位階層の調停装置は、１番目に優先度の高いリソース利用要求を最優先リソース利用要求としてリソース制御部へ出力している場合において、リソース制御部から、そのリソース利用要求が受け付けられた旨の信号を受信するとき、２番目に優先順位が高いリソース利用要求を、次の最優先リソース利用要求として出力する。
2010143386.tif 000002
【特許請求の範囲】
【請求項１】
複数のデバイスからのリソース利用要求コマンドを逐次受け付ける第１受付手段と、
前記第１受付手段により受け付けられたリソース利用要求コマンドを所定周期毎に対象として、当該対象が複数の場合に、当該各対象の優先度を評価し、優先度が１番目に高いものを第１リソース利用要求コマンドとし、優先度が２番目に高いものを第２リソース利用要求コマンドとして特定する調停手段と、
前記調停手段によって特定された前記第１リソース利用要求コマンドと前記第２リソース利用要求コマンドとを前記所定周期毎に外部に出力する出力手段と
リソース利用要求コマンドを特定する情報を含むリソース利用応答信号を受け付ける第２受付手段とを備え、
前記調停手段は、前記第２受付手段がリソース利用応答信号を受け付けた時から、前記第１リソース利用要求コマンドと前記第２リソース利用要求コマンドとの特定を、当該リソース利用応答信号によって特定されるリソース利用要求コマンドを対象から除外して行う
ことを特徴とする調停装置。
【請求項２】
前記第１受付手段が逐次受け付けるリソース要求コマンドの各々はリソースを利用する期間を特定するための情報を含み、
前記出力手段は、前記第２リソース利用要求コマンドの出力を、当該出力手段から当該第２リソース利用要求コマンドを出力する周期と同じ周期に出力される第１リソース利用要求コマンドのリソースを利用する期間が所定期間以下である場合に限って行う
ことを特徴とする請求項１記載の調停装置
【請求項３】
第１調停装置を含む１以上の請求項１記載の調停装置と、
前記第１調停装置から出力された前記第１リソース利用要求コマンドと前記第２リソース利用要求コマンドと１以上のデバイスからのリソース要求コマンドとを逐次受け付ける第３受付手段と、
前記第３受付手段により受け付けられたリソース利用要求コマンドを前記所定周期毎に対象として、当該各対象の優先度を評価し、優先度が１番目に高いものを最優先リソース利用要求コマンドとして特定する最終調停手段と、
前記最終調停手段によって特定された前記最優先リソース利用要求コマンドを前記所定周期毎に出力する最終段出力手段と、
前記最終段出力手段によって出力された最優先リソース利用要求コマンドの入力を受け付けるリソース利用要求コマンド受付手段と、
リソース利用応答信号を受け付ける第４受付手段と、
前記リソース利用要求コマンド受付手段が最優先リソース利用要求コマンドの入力を受け付けた場合に、当該最優先リソース利用要求コマンドを特定する情報を含むリソース利用応答信号を、前記第２受付手段と前記第４受付手段とに出力するリソース利用応答信号出力手段とを備え、
前記最終調停手段は、前記最優先リソース利用要求コマンドの特定を、前記第４受付手段がリソース利用応答信号を受け付けた時から、当該リソース利用応答信号によって特定されるリソース利用要求コマンドを対象から除外して行う
ことを特徴とする調停システム。
【請求項４】
前記第１受付手段が逐次受け付けるリソース要求コマンドの各々はリソースを利用する期間を特定するための情報を含み、
前記１以上の調停装置に備わっている出力手段の各々は、前記第２リソース利用要求コマンドの出力を、当該出力手段から当該第２リソース利用要求コマンドを出力する周期と同じ周期に出力される第１リソース利用要求コマンドのリソースを利用する期間が所定期間以下である場合に限って行う
ことを特徴とする請求項３記載の調停システム。
【請求項５】
前記第１受付手段が逐次受け付けるリソース要求コマンドの各々はリソースを利用する期間を特定するための情報を含み、
前記１以上の調停装置に備わっている出力手段の各々は、前記第２リソース利用要求コマンドの出力を、当該出力手段から当該第２リソース利用要求コマンドを出力する周期と同じ周期に出力される第１リソース利用要求コマンドがリソースを利用する期間と、当該第１リソース利用要求コマンドが前記リソース利用要求コマンド受付手段に到達するまでに必要となる遅延時間との関係が所定の関係である場合に限って行う
ことを特徴とする請求項３記載の調停システム。
【請求項６】
前記リソースはメモリであって、
前記リソース利用応答信号出力手段は、前記リソース利用要求コマンド受付手段が最優先リソース利用要求コマンドの入力を受け付けた場合において、当該最優先リソース利用要求コマンドが前記メモリの特定領域の読み出しコマンドであったとき、前記メモリに、当該特定領域に記憶されているデータの出力を開始させるための信号を出力する
ことを特徴とする請求項３記載の調停システム。
【請求項７】
前記リソースはメモリであって、
前記リソース利用応答信号出力手段は、前記リソース利用要求コマンド受付手段が最優先リソース利用要求コマンドの入力を受け付けた場合において、当該最優先リソース利用要求コマンドが前記メモリの特定領域の書き込みコマンドであったとき、前記メモリに、当該特定領域へのデータの書き込みを開始させるための信号を出力する
ことを特徴とする請求項３記載の調停システム。
【請求項８】
複数のデバイスからのリソース利用要求コマンドを逐次受け付ける第１受付ステップと、
前記第１受付ステップにより受け付けられたリソース利用要求コマンドを所定周期毎に対象として、当該対象が複数の場合に、当該各対象の優先度を評価し、優先度が１番目に高いものを第１リソース利用要求コマンドとし、優先度が２番目に高いものを第２リソース利用要求コマンドとして特定する調停ステップと、
前記調停ステップによって特定された前記第１リソース利用要求コマンドと前記第２リソース利用要求コマンドとを前記所定周期毎に外部に出力する出力ステップと
リソース利用要求コマンドを特定する情報を含むリソース利用応答信号を受け付ける第２受付ステップとを備え、
前記調停ステップは、前記第２受付ステップがリソース利用応答信号を受け付けた時から、前記第１リソース利用要求コマンドと前記第２リソース利用要求コマンドとの特定を、当該リソース利用応答信号によって特定されるリソース利用要求コマンドを対象から除外して行う
ことを特徴とする調停方法。
【請求項９】
複数のデバイスからのリソース利用要求コマンドを逐次受け付ける第１受付手段と、
前記第１受付手段により受け付けられたリソース利用要求コマンドを所定周期毎に対象として、当該対象が複数の場合に、当該各対象の優先度を評価し、優先度が１番目に高いものを第１リソース利用要求コマンドとし、優先度が２番目に高いものを第２リソース利用要求コマンドとして特定する調停手段と、
前記調停手段によって特定された前記第１リソース利用要求コマンドと前記第２リソース利用要求コマンドとを前記所定周期毎に外部に出力する出力手段と
リソース利用要求コマンドを特定する情報を含むリソース利用応答信号を受け付ける第２受付手段とを備え、
前記調停手段は、前記第２受付手段がリソース利用応答信号を受け付けた時から、前記第１リソース利用要求コマンドと前記第２リソース利用要求コマンドとの特定を、当該リソース利用応答信号によって特定されるリソース利用要求コマンドを対象から除外して行う
ことを特徴とする集積回路。
【請求項１０】
請求項３記載の調停システムを含み、
前記デバイスには、少なくとも画像処理エンジンが含まれ、
前記リソースには、前記画像処理エンジンが利用するメモリが少なくとも含まれる
ことを特徴とする画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のマスタからのリソース利用要求の調停を行う調停装置に関する。
【背景技術】
【０００２】
プロセッサ、デコーダ等の複数のデバイス（以下、マスタと呼ぶ。）とメモリとがバスに接続され、それら複数のマスタがそのメモリを共用するシステムがある。【０００３】
このようなシステムには、マスタからのメモリ利用要求が競合する場合に備えて、競合するメモリ利用要求の中から１つのメモリ利用要求を選択し、最も優先度の高いメモリ利用要求として出力する調停装置が備えられている。【０００４】
調停装置は、例えば、予め定められたメモリ利用要求間の優先順位に係る情報等に基づいて、競合するメモリ利用要求の中から最も優先度の高いメモリ利用要求を選択して出力する。【０００５】
複数のマスタがメモリを共用するシステムでは、調停装置から出力された最も優先度の高いメモリ利用要求を発行したマスタのみが、バスを介してメモリを利用する。【０００６】
複数のマスタがメモリを共用する技術として、例えば、特許文献１に開示されている技術がある。【０００７】
ところで、複数のマスタがメモリを共用するシステムにおいて、マスタの数が多い場合、各マスタ間の物理的距離が互いに離れている場合等には、タイミングや物理配線長の観点から考えて調停装置を階層的に構成するという方法が用いられる場合がある。【０００８】
階層化された調停装置は、階層毎にその階層におけるメモリ利用要求を調停する調停装置を備え、それら階層毎の調停装置が、例えば、デイジーチェーン型やトーナメント型となるように互いに接続されて構成される。【０００９】
下位側の階層の調停装置は、その階層に属するマスタからのメモリ利用要求を受け付け、受け付けたメモリ利用要求の中から最も優先度の高いメモリ利用要求を選択して、１つ上位側の階層の調停装置へ出力する。【００１０】
上位側の階層の調停装置は、その階層に属するマスタからのメモリ利用要求と下位階層の調停装置からのメモリ利用要求とを受け付け、受け付けたメモリ利用要求の中から最も優先度の高いメモリ利用要求を選択して、さらに上位階層の調停装置へ出力する。【００１１】
このようにして、階層化された調停装置では、下位側の階層から順に、その階層以下の階層における最も優先度の高いメモリ利用要求を選択して上位側の階層の調停装置へと出力していき、最終的に最上位階層の調停装置が出力する最も優先度の高いメモリ利用要求が、システムにおける最も優先度の高いメモリ利用要求となる。【００１２】
しかしながら、階層化された調停装置は、下位の階層から順に調停を行っていくために、調停を開始してから最も優先度の高いメモリ利用要求を出力するまでの処理時間を短くすることは物理回路配置の観点から考えて難しい。【００１３】
一般に、調停装置から出力された最も優先度の高いメモリ利用要求が、メモリを制御する例えばメモリコントローラによって受信されると、メモリコントローラは、メモリ利用要求を発行したマスタにメモリを利用させる。【００１４】
調停装置が最も優先度の高いメモリ利用要求を出力してから、マスタがそのメモリ利用要求に対する応答信号をメモリコントローラから受信して次の最も優先度の高いメモリ利用要求を更新するまでの期間（以下、レイテンシと呼ぶ）よりも、応答信号を受けたマスタによるメモリの利用期間が短い場合には、そのレイテンシとそのメモリの利用期間との差の期間、そのメモリが利用されない現象（以下、バブル現象と呼ぶ。）が起こる。【００１５】
階層化された調停装置を用いたメモリ利用システムでは、階層化された調停装置のレイテンシを短くすることが難しいため、上述のバブル現象が発生してしまう場合がある。【００１６】
階層化された調停装置を用いたメモリ利用システムにおいて、バブル現象の発生頻度を低くするための技術として、例えば特許文献２に開示されている技術がある。【００１７】
この技術は、階層化された調停装置において、下位階層と上位階層との間にメモリ利用要求によって利用されたメインメモリのデータを一時的に記憶するためのキャッシュメモリを配置し、下位階層において最も優先度の高いメモリ利用要求がこのキャッシュメモリにヒットする場合には、キャッシュメモリをメインメモリの代わりに利用するというものである。【００１８】
この技術によれば、下位階層においてメモリ利用要求がこのキャッシュメモリにヒットする場合には、上位階層での調停結果を待たずにキャッシュメモリを利用することができるようになり、従って、階層化された調停装置を用いたメモリ利用システムは、メモリ利用要求がこのキャッシュメモリにヒットする場合には、上述のレイテンシがあたかも短くなったかのように振る舞うようになる。
【先行技術文献】
【特許文献】
【００１９】
【特許文献１】特開２００４−２８８０２１号公報
【特許文献２】特開平９−１２８３４６号公報
【発明の概要】
【発明が解決しようとする課題】
【００２０】
しかしながら、上述の従来技術では、マスタが同一内容のメモリ利用要求を繰り返して発行しなければメモリ利用要求がキャッシュメモリにヒットしないため、マスタが同一内容のメモリ利用要求を繰り返して発行しないシステムにおいては、キャッシュによりレイテンシ短縮の効果が得られないという課題がある。【００２１】
そこで本発明は、係る問題に鑑みてなされたものであり、マスタが同一内容のメモリ利用要求を繰り返し発行しないシステムに使用される場合であっても、バブル現象の発生頻度を低くすることができる調停システム、及び、調停システム構築に有用な調整装置を提供することを目的とする。
【課題を解決するための手段】
【００２２】
上記課題を解決するために本発明に係る調停システムは、複数のデバイスからのリソース利用要求コマンドを逐次受け付ける第１受付手段と、前記第１受付手段により受け付けられたリソース利用要求コマンドを所定周期毎に対象として、当該対象が複数の場合には当該各対象の優先度を評価し、優先度が１番目に高いものを第１リソース利用要求コマンドとし、優先度が２番目に高いものを第２リソース利用要求コマンドとして特定する調停手段と、前記調停手段によって特定された前記第１リソース利用要求コマンドと前記第２リソース利用要求コマンドとを前記所定周期、もしくは別の所定周期毎に外部に出力する出力手段とリソース利用要求コマンドを特定する情報を含むリソース利用応答信号を受け付ける第２受付手段とを備え、前記調停手段は、前記第２受付手段がリソース利用応答信号を受け付けた時から、前記第１リソース利用要求コマンドと前記第２リソース利用要求コマンドとの特定を、当該リソース利用応答信号によって特定されるリソース利用要求コマンドを対象から除外して行うことを特徴とする調停装置を１以上と、第１調停装置から出力された前記第１リソース利用要求コマンドと前記第２リソース利用要求コマンドと１以上のデバイスからのリソース要求コマンドとを逐次受け付ける第３受付手段と、前記第３受付手段により受け付けられたリソース利用要求コマンドを前記所定周期、もしくは別の所定周期毎に対象として、当該各対象の優先度を評価し、優先度が１番目に高いものを最優先リソース利用要求コマンドとして特定する最終調停手段と、前記最終調停手段によって特定された前記最優先リソース利用要求コマンドを出力する最終段出力手段と、前記最終段出力手段によって出力された最優先リソース利用要求コマンドの入力を受け付けるリソース利用要求コマンド受付手段と、リソース利用応答信号を受け付ける第４受付手段と、前記リソース利用要求コマンド受付手段が最優先リソース利用要求コマンドの入力を受け付けた場合に、当該最優先リソース利用要求コマンドを特定する情報を含むリソース利用応答信号を、前記第２受付手段と前記第４受付手段とに出力するリソース利用応答信号出力手段とを備え、前記最終調停手段は、前記最優先リソース利用要求コマンドの特定を、前記第４受付手段がリソース利用応答信号を受け付けた時から、当該リソース利用応答信号によって特定されるリソース利用要求コマンドを対象から除外して行うことを特徴とする。
【発明の効果】
【００２３】
上述の構成を備える本発明に係る調停システムは、第１調停装置が優先度の１番目に高いリソース利用要求コマンドと優先度の２番目に高いリソース利用要求コマンドとを出力する。【００２４】
従って、第１調停装置の行った調停において優先度が１番目に高いリソース利用要求コマンドが最優先リソース利用要求コマンドとしてリソース利用要求コマンド受付手段に受け付けられる場合において、その最優先リソース利用要求コマンドによるリソースの利用期間が第１調停装置によって開始される調停のレイテンシより短いときであっても、最終調停手段は、第４受付手段がリソース利用応答信号を受け付けると、既に第１調停装置から出力されていた優先順位の２番目に高いリソース利用要求コマンドを新たな最優先リソース利用要求コマンドの調停を行うので、バブル現象の発生頻度を低くすることができる。【００２５】
また、前記第１受付手段が逐次受け付けるリソース要求コマンドの各々はリソースを利用する期間を特定するための情報を含み、前記１以上の調停装置に備わっている出力手段の各々は、前記第２リソース利用要求コマンドの出力を、当該出力手段から当該第２リソース利用要求コマンドを出力する周期と同じ周期に出力される第１リソース利用要求コマンドのリソースを利用する期間が所定期間以下である場合に限って行うとしてもよい。【００２６】
バブル現象は、調停システムによって行われる調停のレイテンシよりも、リソース要求コマンドによるリソースの利用期間が短い場合に限って発生する。【００２７】
従って、調停装置が優先度の１番目に高いリソース要求コマンドを出力する場合において、その調停装置によって開始される調停のレイテンシよりもその優先度の１番目に高いリソース要求コマンドによるリソースの利用期間が長い場合には、その調停装置が出力する優先度の２番目に高いリソース要求コマンドは有効に利用されることがない。【００２８】
このような構成にすることによって、各調停装置における所定時間をその調停装置によって開始される調停のレイテンシより短い期間としておくことで、各調停装置は有効に利用されることのない優先度が２番目に高いリソース利用要求コマンドを出力することがなくなるので、不要な電力の消費を抑制することができる。【００２９】
また、前記第１受付手段が逐次受け付けるリソース要求コマンドの各々はリソースを利用する期間を特定するための情報を含み、前記１以上の調停装置に備わっている出力手段の各々は、前記第２リソース利用要求コマンドの出力を、当該出力手段から当該第２リソース利用要求コマンドを出力する周期と同じ周期に出力される第１リソース利用要求コマンドがリソースを利用する期間と、当該第１リソース利用要求コマンドが前記リソース利用要求コマンド受付手段に到達するまでに必要となる遅延時間との関係が所定の関係である場合に限って行うとしてもよい。【００３０】
バブル現象は、調停システムによって行われる調停のレイテンシよりも、リソース要求コマンドによるリソースの利用期間が短い場合に限って発生する。【００３１】
従って、調停装置が優先度の１番目に高いリソース要求コマンドを出力する場合において、その調停装置によって開始される調停のレイテンシよりもその優先度の１番目に高いリソース要求コマンドによるメモリの利用期間が長い場合には、その調停装置が出力する優先度の２番目に高いリソース要求コマンドは有効に利用されることがない。【００３２】
このような構成にすることによって、各調停装置における所定の関係を、その調停装置によって開始される調停のレイテンシよりも第１リソース要求コマンドによるメモリの利用期間が長くなる関係としておくことで、各調停装置は有効に利用されることのない優先度が２番目に高いリソース利用要求コマンドを出力することがなくなるので、不要な電力の消費を抑制することができる。【００３３】
また、前記リソースはメモリであって、前記リソース利用応答信号出力手段は、前記リソース利用要求コマンド受付手段が最優先リソース利用要求コマンドの入力を受け付けた場合において、当該最優先リソース利用要求コマンドが前記メモリの特定領域の読み出しコマンドであったとき、前記メモリに、当該特定領域に記憶されているデータの出力を開始させるための信号を出力するとしてもよい。【００３４】
このような構成にすることによって、メモリからデータを読み出す際に発生するバブル現象の発生頻度を低くすることができる。【００３５】
また、前記リソースはメモリであって、前記リソース利用応答信号出力手段は、前記リソース利用要求コマンド受付手段が最優先リソース利用要求コマンドの入力を受け付けた場合において、当該最優先リソース利用要求コマンドが前記メモリの特定領域の書き込みコマンドであったとき、前記メモリに、当該特定領域へのデータの書き込みを開始させるための信号を出力するとしてもよい
このような構成にすることによって、メモリへデータを書き込む際に発生するバブル現象の発生頻度を低くすることができる。【００３６】
上記課題を解決するために本発明に係る調停装置は、複数のデバイスからのリソース利用要求コマンドを逐次受け付ける第１受付手段と、前記第１受付手段により受け付けられたリソース利用要求コマンドを所定周期毎に対象として、当該対象が複数の場合に、当該各対象の優先度を評価し、優先度が１番目に高いものを第１リソース利用要求コマンドとし、優先度が２番目に高いものを第２リソース利用要求コマンドとして特定する調停手段と、前記調停手段によって特定された前記第１リソース利用要求コマンドと前記第２リソース利用要求コマンドとを外部に出力する出力手段とリソース利用要求コマンドを特定する情報を含むリソース利用応答信号を受け付ける第２受付手段とを備え、前記調停手段は、前記第２受付手段がリソース利用応答信号を受け付けた時から、前記第１リソース利用要求コマンドと前記第２リソース利用要求コマンドとの特定を、当該リソース利用応答信号によって特定されるリソース利用要求コマンドを対象から除外して行うことを特徴とする。【００３７】
上述の構成を備える本発明に係る調停装置は優先度が１番目に高いリソース利用要求コマンドと優先度が２番目に高いリソース利用要求コマンドとを出力する。【００３８】
この調停装置が、複数の調停装置が直列接続されて成る調停システムの最上位階層以外の調停装置として利用されることで、この調停装置から出力された優先度が１番目に高いリソース利用要求コマンドが最優先リソース利用コマンドとしてリソース利用要求コマンド受付手段に受け付けられる場合に、この調停装置の上位側階層に接続される調停装置は、既にこの調停装置から出力されている優先順位が２番目に高いリソース利用要求コマンドを用いて新たな最優先リソース利用要求コマンドの調停を行うことができるようになる。【００３９】
従って、この調停装置から出力された優先度が１番目に高いリソース利用要求コマンドのメモリ利用期間が、第１調停装置によって行われる調停のレイテンシよりも短い場合であっても、バブル現象の発生頻度を低くすることができる。【００４０】
よって、この調停装置は、バブル現象の発生頻度を低くすることができる調停システムの構築において有用なものとなるという効果を有する。【００４１】
また、前記第１受付手段が逐次受け付けるリソース要求コマンドの各々はリソースを利用する期間を特定するための情報を含み、前記出力手段は、前記第２リソース利用要求コマンドの出力を、当該出力手段から当該第２リソース利用要求コマンドを出力する周期と同じ周期に出力される第１リソース利用要求コマンドのリソースを利用する期間が所定期間以下である場合に限って行うとしてもよい。【００４２】
バブル現象は、調停装置によって行われる調停のレイテンシよりも、リソース要求コマンドによるリソースの利用期間が短い場合に限って発生する。【００４３】
従って、調停装置によって行われる調停のレイテンシよりも、優先度が１番目に高いリソース要求コマンドによるリソースの利用期間が長い場合には、優先度が２番目に高いリソース利用要求コマンドは有効に利用されることがない。【００４４】
このような構成にすることによって、所定期間を調停装置によって行われる調停のレイテンシより短い期間としておくことで、有効に利用されることのない優先度が２番目に高いリソース利用要求コマンドを出力することがなくなるので、不要な電力の消費を抑制することができる。
【図面の簡単な説明】
【００４５】
【図１】システムＬＳＩ１００の機能ブロック図
【図２】（ａ）メモリ利用要求コマンドのデータ構造図、（ｂ）アクノレッジ信号のデータ構造図
【図３】バスインターフェース部１５０の構成図
【図４】調停部１４１の構成図
【図５】各マスタと、そのマスタが発行するメモリ利用要求コマンドの優先順位との関係を示す図
【図６】調停部１４０の構成図
【図７】階層別調停処理を示すフローチャート
【図８】最終調停処理を示すフローチャート
【図９】システムＬＳＩ１００の内部信号のタイミングチャート
【図１０】各調停装置が機能制限された場合におけるシステムＬＳＩ１００の内部信号のタイミングチャート
【図１１】調停装置１１３１の構成図
【図１２】第１変形階層別調停処理を示すフローチャートその１
【図１３】第１変形階層別調停処理を示すフローチャートその２
【図１４】第１変形システムＬＳＩの内部信号のタイミングチャート
【図１５】メモリ利用要求コマンドのデータ構造図
【図１６】調停装置１６３１の構成図
【図１７】第２変形階層別調停処理を示すフローチャートその１
【図１８】第２変形階層別調停処理を示すフローチャートその２
【図１９】ブルーレイレコーダシステム１９００の構成図
【発明を実施するための形態】
【００４６】
＜実施の形態１＞
＜概要＞
以下、本発明に係る調停装置の一実施形態として、共通のメモリを利用する複数のマスタと、それらマスタからのメモリ利用要求を調停するための階層調停装置とを備えるシステムＬＳＩについて説明する。
【００４７】
このシステムＬＳＩに備えられている階層調停装置は、互いに共通のクロック信号に同期して動作する複数の調停装置が階層構造を成して接続されている。
【００４８】
各調停装置は、自装置の属する階層で、その階層に属するマスタからのメモリ利用要求と下位階層の調停装置からのメモリ利用要求とを受け付け、受け付けたメモリ利用要求の中から１番目に優先度の高いメモリ利用要求と２番目に優先度の高いメモリ利用要求とを選択して上位側の階層の調停装置へ出力する。
【００４９】
調停装置が最上位階層の調停装置である場合には、自装置の選択する１番目に優先度の高いメモリ利用要求を、最優先メモリ利用要求としてメモリを制御するメモリ制御部へ出力する。
【００５０】
また、最上位階層の調停装置は、１番目に優先度の高いメモリ利用要求を最優先メモリ利用要求としてメモリ制御部へ出力している場合において、メモリ制御部から、そのメモリ利用要求が受け付けられた旨のアクノレッジ信号を受信するとき、２番目に優先順位が高いメモリ利用要求として選出しているメモリ利用要求を、次の最優先メモリ利用要求として出力する。
【００５１】
以下、本実施の形態１に係るシステムＬＳＩの構成について、図面を参照しながら説明する。
【００５２】
＜構成＞
＜全体構成＞
図１は、システムＬＳＩ１００の構成を示すブロック図である。
【００５３】
システムＬＳＩ１００は、プロセッサ１１０と出画エンジン１１１と暗号エンジン１１２とストリームエンジン１１３とデコーダＡ１１４とデコーダＢ１１５とエンコーダ１１６と高画質エンジン１１７と階層調停装置１０５とメモリ制御部１１８と基幹バス１２０等とを備え、外部メモリ１０１と接続されている。
【００５４】
プロセッサ１１０は、階層調停装置１０５と接続し、外部メモリ１０１に記憶されているプログラムを実行することで、出画エンジン１１１、暗号エンジン１１２、ストリームエンジン１１３、デコーダＡ１１４、デコーダＢ１１５、エンコーダ１１６、高画質エンジン１１７、階層調停装置１０５、メモリ制御部１１８等を制御する機能を実現する。
【００５５】
出画エンジン１１１は、階層調停装置１０５と接続し、プロセッサ１１０によって制御され、外部メモリ１０１に記憶されている動画データ、又は、静止画データに対して、字幕、図形等を重ね合わせる機能を有する。
【００５６】
暗号エンジン１１２は、階層調停装置１０５と接続し、プロセッサ１１０によって制御され、外部メモリ１０１に記憶されている暗号化されたデータに対して、復号処理を行う機能を有する。
【００５７】
ストリームエンジン１１３は、階層調停装置１０５と接続し、プロセッサ１１０によって制御され、チューナから取り込んだストリームデータに対して、ストリーミング処理（ストリームデータを加工する処理であって、例えば、音声データと映像データとが輻輳されているストリームデータから音声データと映像データとを分離して音声ストリームデータと映像ストリームデータとを生成して外部メモリ１０１に書きこむ処理）を行う機能を有する。
【００５８】
デコーダＡ１１４は、階層調停装置１０５と接続し、プロセッサ１１０によって制御され、外部メモリ１０１に記憶されているＭＰＥＧ（Moving Picture Experts Group）−２方式で符号化されているデータを復号する機能を有する。
【００５９】
デコーダＢ１１５は、階層調停装置１０５と接続し、プロセッサ１１０によって制御され、外部メモリ１０１に記憶されているＭＰＥＧ−４  ＡＶＣ(Advanced Video Cording)方式で符号化されているデータを復号する機能を有する。
【００６０】
エンコーダ１１６は、階層調停装置１０５と接続し、プロセッサ１１０によって制御され、外部メモリに記憶されている動画データをＭＰＥＧ−４  ＡＶＣ方式で符号化する機能を有する。
【００６１】
高画質エンジン１１７は、階層調停装置１０５と接続し、プロセッサ１１０によって制御され、外部メモリ１０１に記憶されている動画データ、又は、静止画データに対して高画質化処理（動画、又は、静止画のデータに対して、画質を向上させたデータを生成する処理であって、例えば、被写体の輪郭を際立たせるデータを生成する処理）を行う機能を有する。
【００６２】
プロセッサ１１０と、出画エンジン１１１と、暗号エンジン１１２と、ストリームエンジン１１３と、デコーダＡ１１４と、デコーダＢ１１５と、エンコーダ１１６と、高画質エンジン１１７とは、外部メモリ１０１をスレーブとして共用するマスタである。
【００６３】
各マスタは、スレーブである外部メモリ１０１を利用する場合に、外部メモリ１０１の利用に先立って、階層調停装置１０５に対して、メモリ利用要求コマンドを出力する。
【００６４】
図２（ａ）は、各マスタが出力するメモリ利用要求コマンドのデータ構造図である。
【００６５】
同図に示されるように、メモリ利用要求コマンドは、開始アドレス２０１と、マスタ識別情報２０２と、命令種情報２０３とから構成される。
【００６６】
開始アドレス２０１は、利用するメモリ領域の開始アドレスを示す３２ビットのデータである。
【００６７】
マスタ識別情報２０２は、メモリ利用要求コマンドを出力したマスタを識別するための４ビットのデータであって、例えば、”0000”はプロセッサ１１０を示し、”0001”は出画エンジン１１１を示し、”0010”は暗号エンジン１１２を示し、”0011”はストリームエンジン１１３を示し、”0100”はデコーダＡ１１４を示し、”0101”はデコーダＢ１１５を示し、”0110”はエンコーダ１１６を示し、”0111”は高画質エンジン１１７を示す。
【００６８】
命令種情報２０３は、メモリの利用が、メモリ領域への書き込みである場合には”0”となり、メモリ領域からの読み出しである場合には”1”となる１ビットのデータである。
【００６９】
なお、ここでは、各マスタがメモリ領域への書き込みを行うサイズ、及び、メモリ領域からの読み出しを行うサイズは６４Ｂｙｔｅの固定長である。
【００７０】
図１に戻って、再びシステムＬＳＩの構成についての説明を続ける。
【００７１】
基幹バス１２０は、階層調停装置１０５とメモリ制御部１１８とに接続する双方向バスであって、バス幅は３２Ｂｙｔｅである。従って、６４Ｂｙｔｅのデータを転送する場合には、２サイクルかけてデータの転送を行う。
【００７２】
メモリ制御部１１８は、階層調停装置１０５と外部メモリ１０１とに接続し、以下の２つの機能を有する。
【００７３】
機能１：階層調停装置１０５からメモリ利用要求コマンドが出力されると、そのメモリ利用要求コマンドを受信し、階層調停装置１０５にアクノレッジ信号を出力する機能。
【００７４】
機能２：階層調停装置１０５からのメモリ利用要求コマンドを受信した場合において、基幹バス１２０と外部メモリ１０１とが使用されていないとき、受信したメモリ利用要求コマンドに従って、外部メモリ１０１からのデータの読み出し、又は、外部メモリ１０１へのデータの書き込みを行う機能。
【００７５】
図２（ｂ）は、メモリ制御部１１８が出力するアクノレッジ信号のデータ構造図である。
【００７６】
同図に示されるように、アクノレッジ信号は、アクノレッジ情報２１１と、マスタ識別情報２０２とから構成される。
【００７７】
アクノレッジ情報２１１は、アクノレッジ信号が有効であるか否かを示す１ビットの信号であって、”1"の場合にはアクノレッジ信号が有効であることを示し、”0”の場合にはアクノレッジ信号が無効であることを示す。
【００７８】
マスタ識別情報２１２は、アクノレッジ信号の送信先のマスタを識別するための識別情報であって、メモリ制御部１１８がアクノレッジ信号を出力するのに先立って受信したメモリ利用要求コマンドに含まれているマスタ識別情報２０２と同じものである。
【００７９】
図１に戻って、再びシステムＬＳＩの構成についての説明を続ける。
【００８０】
階層調停装置１０５は、プロセッサ１１０と出画エンジン１１１と暗号エンジン１１２とストリームエンジン１１３とデコーダＡ１１４とデコーダＢ１１５とエンコーダ１１６と高画質エンジン１１７と基幹バス１２０とメモリ制御部１１８とに接続し、以下に説明する各構成要素を用いて、以下の２つの機能等を有する。
【００８１】
機能１：各マスタからのメモリ利用要求コマンドを受信して記憶し、記憶するメモリ利用要求コマンドのうち、最も優先度の高いメモリ利用要求コマンドを選出して、メモリ制御部１１８に出力する機能。
【００８２】
機能２：各マスタと基幹バス１２０とのデータのやり取りを仲介する機能。
【００８３】
階層調停装置１０５は、第１調停装置１３０、第２調停装置１３１Ａ、第３調停装置１３１Ｂ、第４調停装置１３１Ｃ、第１調停候補信号線１６１Ａ、第１調停候補信号線１６１Ｂ、第１調停候補信号線１６１Ｃ、第２調停候補信号線１６２Ａ、第２調停候補信号線１６２Ｂ、第２調停候補信号線１６２Ｃ等から構成されている。
【００８４】
第１調停装置１３０は、プロセッサ１１０と出画エンジン１１１とメモリ制御部１１８と基幹バス１２０とに接続し、さらに、第１調停候補信号線１６１Ａと第２調停候補信号線１６２Ａとを介して第２調停装置１３１Ａと接続し、以下の４つの機能等を有する。
【００８５】
機能１：プロセッサ１１０と出画エンジン１１１とからのメモリ利用要求コマンドを受信して記憶する機能。
【００８６】
機能２：記憶しているメモリ利用要求コマンドと、第１調停候補信号線１６１Ａを介して第２調停装置１３１Ａから入力されるメモリ利用要求コマンドと、第２調停候補信号線１６２Ａを介して第２調停装置１３１Ａから入力されるメモリ利用要求コマンドとから、１番目に優先度の高いメモリ利用要求コマンドと２番目に優先度の高いメモリ利用要求コマンドとを選定し、それらのうちの１番目に優先度の高いメモリ利用要求コマンドを最優先メモリ利用要求コマンドとして、クロック信号に同期して、メモリ制御部１１８へ出力する機能。
【００８７】
機能３：１番目に優先度の高いメモリ利用要求を最優先メモリ利用要求としてメモリ制御部１１８へ出力している場合において、メモリ制御部１１８から、そのメモリ利用要求が受け付けられた旨のアクノレッジ信号を受信するとき、そのアクノレッジ信号に対応すするメモリ利用要求コマンドを記憶していれば、その記憶するメモリ利用要求コマンドを削除し、そのアクノレッジ信号を受信したクロックサイクルにおいて２番目に優先順位が高いメモリ利用要求として選出しているメモリ利用要求を、次のクロックサイクルにおいて最優先メモリ利用要求として出力する機能。
【００８８】
機能４：プロセッサ１１０と基幹バス１２０との間のバスインターフェース機能、及び、出画エンジン１１１と基幹バス１２０との間のバスインターフェース機能。
【００８９】
第２調停装置１３１Ａは、暗号エンジン１１２とストリームエンジン１１３とメモリ制御部１１８と基幹バス１２０等とに接続し、さらに、第１調停候補信号線１６１Ａと第２調停候補信号線１６２Ａとを介して第１調停装置１３０と接続し、第１調停候補信号線１６１Ｂと第２調停候補信号線１６２Ｂとを介して第３調停装置１３１Ｂと接続し、以下の３つの機能を有する。
【００９０】
機能１：暗号エンジン１１２とストリームエンジン１１３とからのメモリ利用要求コマンドを受信して記憶する機能。
【００９１】
機能２：記憶しているメモリ利用要求コマンドと、第１調停候補信号線１６１Ｂを介して第３調停装置１３１Ｂから入力されるメモリ利用要求コマンドと、第２調停候補信号線１６２Ｂを介して第２調停装置１３１Ｂから入力されるメモリ利用要求コマンドとから、１番目に優先度の高いメモリ利用要求コマンドと２番目に優先度の高いメモリ利用要求コマンドとを選定し、選定した１番目に優先度の高いメモリ利用要求コマンドと２番目に優先の高いメモリ利用要求コマンドとを、それぞれ、第１調停候補信号線１６１Ａと第２調停候補信号線１６２Ａとを介して第１調停装置１３０へ、クロック信号に同期して出力する機能。
【００９２】
機能３：１番目に優先度の高いメモリ利用要求を最優先メモリ利用要求として第１調停装置１３０へ出力している場合において、メモリ制御部１１８から、そのメモリ利用要求が受け付けられた旨のアクノレッジ信号を受信するとき、そのアクノレッジ信号に対応すするメモリ利用要求コマンドを記憶していれば、その記憶するメモリ利用要求コマンドを削除し、そのアクノレッジ信号を受信したクロックサイクルにおいて２番目に優先順位が高いメモリ利用要求として選出しているメモリ利用要求を、次のクロックサイクルにおいて１番目に優先順位が高いメモリ利用要求として出力する機能。
【００９３】
機能４：暗号エンジン１１２と基幹バス１２０との間のバスインターフェース機能、及び、ストリームエンジン１１３と基幹バス１２０との間のバスインターフェース機能。
【００９４】
第３調停装置１３１Ｂは、第２調停装置１３１Ａと同様の構成を有する調停装置であって、デコーダＡ１１４とデコーダＢ１１５とメモリ制御部１１８と基幹バス１２０等とに接続し、さらに、第１調停候補信号線１６１Ｂと第２調停候補信号線１６２Ｂとを介して第２調停装置１３１Ａと接続し、第１調停候補信号線１６１Ｃと第２調停候補信号線１６２Ｃとを介して第４調停装置１３１Ｃと接続する。
【００９５】
第４調停装置１３１Ｃは、第２調停装置１３１Ａと第３調停装置１３１Ｂと同様の構成を有する調停装置であって、エンコーダ１１６と高画質エンジン１１７とメモリ制御部１１８と基幹バス１２０等とに接続する。
【００９６】
なお、第４調停装置１３１Ｃは、下位の階層の調停装置が存在しないため、下位の階層から入力されるメモリ利用要求は存在しない。
【００９７】
＜調停装置の構成＞
第１調停装置１３０は、バスインターフェース部１５０Ａと調停部１４０とを有し、第２調停装置１３１Ａ〜第４調停装置１３１Ｃは、それぞれ、バスインターフェース部１５０Ｂ〜バスインターフェース部１５０Ｄと、調停部１４１Ａ〜調停部１４１Ｃとを有する。
【００９８】
以下、第１調停装置１３０と、第２調停装置１３１Ａ〜第４調停装置１３１Ｃとの構成の詳細について、図面を用いて説明する。
【００９９】
なお、第２調停装置１３１Ａ〜第４調停装置１３１Ｃとは、同様の構成をしているため、以下、特別に区別をして説明する場合を除いて、第２調停装置１３１Ａ〜第４調停装置１３１Ｃを単に調停装置１３１と呼び、バスインターフェース部１５０Ｂ〜バスインターフェース部１５０Ｄを単にバスインターフェース部１５０と呼び、調停部１４１Ａ〜調停部１４１Ｃを単に調停部１４１と呼ぶ。
【０１００】
さらに、バスインターフェース部１５０Ａも、バスインターフェース部１５０と同様の構成をしている。従って、以下、特別に区別をして説明する場合を除いて、バスインターフェース部１５０Ａも単にバスインターフェース部１５０と呼ぶ。
【０１０１】
図３は、調停装置１３０、及び、調停装置１３１を構成するバスインターフェース部１５０の構成図である。
【０１０２】
同図に示されるように、バスインターフェース部１５０は、マスタＡ３５０（例えば、バスインターフェース部１５０Ｂの場合は暗号エンジン１１２）とマスタＢ３５１（例えば、バスインターフェース部１５０Ｂの場合はストリームエンジン１１３）とプロセッサ１１０とメモリ制御部１１８と基幹バス１２０と調停部１４１とに接続し、マスタ側コマンド制御部３１０、メモリ側コマンド制御部３１１、マスタ側データ制御部３２０、メモリ側データ制御部３２１、アクノレッジ制御部３３０、設定レジスタ３４０、コマンドバッファＡ３１２Ａ、コマンドバッファＢ３１２Ｂ、データバッファＡ３２２、データバッファＢ３２３とを有する。
【０１０３】
コマンドバッファＡ３１２ＡとコマンドバッファＢ３１２Ｂとは、それぞれ、マスタ側コマンド制御部３１０とメモリ側コマンド制御部３１１とアクノレッジ制御部３３０とに接続し、マスタ側コマンド制御部３１０から出力されたメモリ利用要求を一時的に記憶するためのバッファである。
【０１０４】
マスタ側コマンド制御部３１０は、マスタＡ３５０とマスタＢ３５１とコマンドバッファＡ３１２ＡとコマンドバッファＢ３１２Ｂとに接続し、マスタＡからハンドシェイク方式でメモリ利用要求コマンドを受信して受信したメモリ利用要求コマンドをコマンドバッファＡ３１２Ａに書き込む機能と、マスタＢからハンドシェイク方式でメモリ利用要求コマンドを受信して受信したメモリ利用要求コマンドをコマンドバッファＢ３１２Ｂに書き込む機能とを有する。
【０１０５】
メモリ側コマンド制御部３１１は、コマンドバッファＡ３１２ＡとコマンドバッファＢ３１２Ｂと調停部１４１とに接続し、クロック信号に同期して動作し、以下の２つの機能を有する。
【０１０６】
機能１：クロック信号の立ち上がりのタイミングで、コマンドバッファＡ３１２Ａから、１番目に古いメモリ利用要求コマンドを読み出してマスタＡ第１メモリ利用要求コマンドとして調停部１４１に出力し、２番目に古いメモリ利用要求コマンドを読み出してマスタＡ第２メモリ利用要求コマンドとして調停部１４１に出力する機能。
【０１０７】
機能２：クロック信号の立ち上がりのタイミングで、コマンドバッファＢ３１２Ｂから、１番目に古いメモリ利用要求コマンドを読み出してマスタＢ第１メモリ利用要求コマンドとして調停部１４１に出力し、２番目に古いメモリ利用要求コマンドを読み出してマスタＢ第２メモリ利用要求コマンドとして調停部１４１に出力する機能。
【０１０８】
なお、機能１と機能２とにおいて、該当するメモリ利用要求コマンドがコマンドバッファに記憶されていない場合には、出力するメモリ利用要求コマンドとして、メモリ利用要求コマンドが存在しない旨を示すオール０の信号を出力する。
【０１０９】
データバッファＡ３２２は、マスタ側データ制御部３２０とメモリ側データ制御部３２１とに接続する、３２Ｂｙｔｅ長のデータを一時的に記憶するＦＩＦＯ（First In First Out）バッファである。
【０１１０】
データバッファＢ３２３は、マスタ側データ制御部３２０とメモリ側データ制御部３２１とに接続する、３２Ｂｙｔｅ長のデータを一時的に記憶するＦＩＦＯバッファである。
【０１１１】
マスタ側データ制御部３２０は、マスタＡ３５０とマスタＢ３５１とデータバッファＡ３２２とデータバッファＢ３２３とに接続し、以下の３つの機能を有する。
【０１１２】
機能１：マスタＡからハンドシェイク方式でデータを受信して受信したデータをデータバッファＡ３２２に書き込む機能。
【０１１３】
機能２：マスタＢからハンドシェイク方式でデータを受信して受信したデータをデータバッファＡ３２２に書き込む機能。
【０１１４】
機能３：データバッファＢ３２３にデータが保持されている場合に、古いデータから順にそのデータの宛先のマスタへハンドシェイク方式で送信する機能。
【０１１５】
メモリ側データ制御部３２１は、データバッファＡ３２２とデータバッファＢ３２３とに接続し、クロック信号に同期して動作し、以下の２つの機能を有する。
【０１１６】
機能１：クロック信号の立ち上がりのタイミングで、データバッファＡ３２２に記憶されているデータのうち、一番目に古いデータを読み出して、基幹バス１２０に出力する機能。
【０１１７】
機能２：基幹バス１２０からデータを受信した場合においてそのデータがマスタＡ３５０宛てのデータ、もしくは、マスタＢ３５１宛てのデータであるとき、クロック信号の立ち上がりのタイミングで、データバッファＢ３２３にそのデータを書き込む機能。
【０１１８】
アクノレッジ制御部３３０は、コマンドバッファＡ３１２ＡとコマンドバッファＢ３１２ＢとマスタＡ３５０とマスタＢ３５１とメモリ制御部１１８とに接続し、以下の２つの機能を有する。
【０１１９】
機能１：メモリ制御部１１８からアクノレッジ信号を受信した場合においてそのアクノレッジ信号に含まれるマスタ識別情報２１２がマスタＡ３５０を示すものであるとき、受信したアクノレッジ信号をマスタＡ３５０に送信し、コマンドバッファＡ３１２Ａに記憶されている１番目に古いメモリ利用要求コマンドを削除する機能。
【０１２０】
機能２：メモリ制御部１１８からアクノレッジ信号を受信した場合においてそのアクノレッジ信号に含まれるマスタ識別情報２１２がマスタＢ３５１を示すものであるとき、受信したアクノレッジ信号をマスタＢ３５１に送信し、コマンドバッファＢ３１２Ｂに記憶されている１番目に古いメモリ利用要求コマンドを削除する機能。
【０１２１】
設定レジスタ３４０は、プロセッサ１１０と接続し、プロセッサ１１０によって制御され、コマンドバッファＡ３１２ＡとコマンドバッファＢ３１２Ｂとのそれぞれにおける一時的に記憶することができるメモリ利用要求コマンドの数と、データバッファＡ３２２とデータバッファＢ３２３とのそれぞれにおける一時的に記憶することができるデータの数とを設定するためのレジスタである。
【０１２２】
図４は、調停装置１３１を構成する調停部１４１の構成図である。
【０１２３】
同図に示されるように、調停部１４１は、バスインターフェース部１５０とメモリ制御部１１８とに接続し、さらに、第１調停候補信号線Ａ４１１Ａ（例えば、調停部１４１Ａの場合は第１調停候補信号線１６１Ａ）と第２調停候補信号線Ａ４１２Ａ（例えば、調停部１４１Ａの場合は第２調停候補信号線１６２Ａ）とを介して上位の調停部（例えば、調停部１４１Ａの場合は調停部１４０）に接続し、第１調停候補信号線Ｂ４１１Ｂ（例えば、調停部１４１Ａの場合は第１調停候補信号線１６１Ｂ）と第２調停候補信号線Ｂ４１２Ｂ（例えば調停部１４１Ａの場合は第２調停候補信号線１６２Ｂ）とを介して下位の調停部（例えば、調停部１４１Ａの場合は調停部１４１Ｂ）に接続し、第１候補調停部４００、マスク部４０１、第２候補調停部４０２、調停結果出力制御部４０３とを有する。
【０１２４】
第１候補調停部４００は、バスインターフェース部１５０とマスク部４０１と調停結果出力制御部４０３と第１調停候補信号線Ｂ４１１Ｂとに接続し、第１調停候補信号線Ｂ４１１Ｂから出力される第１調停候補メモリ利用要求コマンド（後述）と、バスインターフェース部から出力されるマスタＡ第１メモリ利用要求コマンドとマスタＢ第１メモリ利用要求コマンドとを入力されると、これら３つのメモリ利用要求コマンドのうち、１番目に優先度の高いメモリ利用要求コマンドを第１コマンドとして選出し、調停結果出力制御部４０３とマスク部４０１とに出力する機能を有する。
【０１２５】
図５は、各マスタと、そのマスタが発行するメモリ利用要求コマンドの優先順位との関係を示す図である。
【０１２６】
マスタ名５０１は、各マスタのマスタ名を示し、優先順位５０２は、そのマスタが発行するメモリ利用要求コマンドの優先順位を示す。
【０１２７】
第１候補調停部４００は、図５に示されるメモリ利用要求コマンドの優先順位に従って第１コマンドを選出するように予め設定されている。
【０１２８】
マスク部４０１は、バスインターフェース部１５０と第１候補調停部４００と第２候補調停部４０２と第１調停候補信号線Ｂ４１１Ｂと第２調停候補信号線Ｂ４１２Ｂとに接続し、第１調停候補信号線Ｂ４１１Ｂから出力される第１調停候補メモリ利用要求コマンド（後述）と、第２調停候補信号線Ｂ４１２Ｂから出力される第２調停候補メモリ利用要求コマンド（後述）と、バスインターフェース部１５０から出力されるマスタＡ第１メモリ利用要求コマンドとマスタＢ第１メモリ利用要求コマンドとマスタＡ第２メモリ利用要求コマンドとマスタＢ第２メモリ利用要求コマンドとの６つのメモリ利用要求コマンドとを入力された場合において、第１候補調停部４００から出力されたメモリ利用要求コマンドを受信したとき、受信した６つのメモリ利用要求コマンドから、第１候補調停部４００から出力されたメモリ利用要求コマンドを除いた５つのメモリ利用要求コマンドを第２候補調停部４０２に出力する機能を有する。
【０１２９】
第２候補調停部４０２はマスク部４０１と調停結果出力制御部４０３と第１調停候補信号線Ｂ４１１Ｂと第２調停候補信号線Ｂ４１２Ｂとに接続し、マスク部４０１から出力された５つのメモリ利用要求コマンドのうち、１番目に優先度の高いメモリ利用要求コマンドを第２コマンドとして選出し、調停結果出力制御部４０３に出力する機能を有する。
【０１３０】
第２候補調停部４０２は、図５に示されるメモリ利用要求コマンドの優先順位に従い、さらに、バスインターフェース部１５０から出力されるマスタＡ第２メモリ利用要求コマンドとマスタＢ第２メモリ利用要求コマンドとでは、マスタＡ第２メモリ利用要求コマンドの方が高い優先度となり、第１調停候補信号線Ｂ４１１Ｂから出力される第１調停候補メモリ利用要求コマンド（後述）と、第２調停候補信号線Ｂ４１２Ｂから出力される第２調停候補メモリ利用要求コマンド（後述）とが同一マスタから出力されたメモリ利用要求コマンドである場合には、第１調停候補メモリ利用要求コマンドの方が高い優先度となるように第２コマンドを選出する。
【０１３１】
調停結果出力制御部４０３は、第１候補調停部４００と第２候補調停部４０２とメモリ制御部１１８と第１調停候補信号線Ａ４１１Ａと第２調停候補信号線Ａ４１２Ａとに接続し、クロック信号と同期して動作し、以下の２つの機能を備える。
【０１３２】
機能１：第１候補調停部４００から第１コマンドを受信し、第２候補調停部４０２から第２コマンドを受信した場合において、これらのコマンドを受信したクロックサイクルの期間中にメモリ制御部１１８から第１コマンドに含まれるマスタ識別情報を含むアクノレッジ信号を受信しないとき、次のクロック信号の立ち上がりのタイミングで、第１コマンドを第１調停候補メモリ利用要求コマンドとして第１調停候補信号線Ａ４１１Ａに出力し、第２コマンドを第２調停候補メモリ利用要求コマンドとして第２調停候補信号線Ａ４１２Ａに出力する機能。
【０１３３】
機能２：第１候補調停部４００から第１コマンドを受信し、第２候補調停部４０２から第２コマンドを受信した場合において、これらのコマンドを受信したクロックサイクルの期間中にメモリ制御部１１８から第１コマンドに含まれるマスタ識別情報を含むアクノレッジ信号を受信したとき、次のクロック信号の立ち上がりのタイミングで、第２コマンドを第１調停候補メモリ利用要求コマンドとして第１調停候補信号線Ａ４１１Ａに出力し、オール０の信号を第２調停候補メモリ利用要求コマンドとして第２調停候補信号線Ａ４１２Ａに出力する機能。
【０１３４】
図６は、調停装置１３０を構成する調停部１４０の構成図である。
【０１３５】
調停部１４０は、調停部１４１から、調停結果出力制御部４０３が調停結果出力制御部６０３に変更されたものである。
【０１３６】
以下、調停部１４０と調停部１４１との相違点である調停結果出力制御部６０３について説明する。
【０１３７】
調停結果出力制御部６０３は、第１候補調停部４００と第２候補調停部４０２とメモリ制御部１１８と接続し、クロック信号と同期して動作し、以下の２つの機能を備える。
【０１３８】
機能１：第１候補調停部４００から第１コマンドを受信し、第２候補調停部４０２から第２コマンドを受信した場合において、これらのコマンドを受信したクロックサイクルの期間中にメモリ制御部１１８から第１コマンドに含まれるマスタ識別情報を含むアクノレッジ信号を受信したとき、次のクロック信号の立ち上がりのタイミングで、第１コマンドを最優先メモリ利用要求コマンドとしてメモリ制御部１１８に出力する機能。
【０１３９】
機能２：第１候補調停部４００から第１コマンドを受信し、第２候補調停部４０２から第２コマンドを受信した場合において、これらのコマンドを受信したクロックサイクルの期間中にメモリ制御部１１８から第１コマンドに含まれるマスタ識別情報を含むアクノレッジ信号を受信したとき、次のクロック信号の立ち上がりのタイミングで、第２コマンドを最優先メモリ利用要求コマンドとしてメモリ制御部１１８に出力する機能。
【０１４０】
以上のように構成されるシステムＬＳＩ１００の行う動作について、以下、図面を参照しながら説明する。
【０１４１】
＜動作＞
ここでは、システムＬＳＩ１００の行う動作のうち、特徴的な動作である、調停装置１３１の行う階層別調停処理と、第１調停装置１３０の行う最終調停処理と、階層調停装置１０５の行う調停処理とについて説明する。
【０１４２】
＜階層別調停処理＞
図７は、調停装置１３１が行う階層別調停処理を示すフローチャートである。
【０１４３】
この階層別調停処理は、調停装置１３１が自装置の属する階層においてメモリ利用要求コマンドの調停を行い、その調停結果として、第１調停候補メモリ利用要求コマンドと第２調停候補メモリ利用要求コマンドとを１つ上位階層の調停装置に出力する処理である。
【０１４４】
階層別調停処理は、クロック信号に同期して行われる処理であって、クロック信号の立ち上がりのタイミングでその処理を開始する。
【０１４５】
クロック信号が立ち上がると、第１候補調停部４００は、メモリ側コマンド制御部３１１から出力されたマスタＡ第１メモリ利用要求コマンドとマスタＢ第１メモリ利用要求コマンドを受信し、下位階層の調停装置１３１の調停結果出力制御部４０３から出力された第１調停候補メモリ利用要求コマンドを受信し（ステップＳ７００）、マスク部４０１は、メモリ側コマンド制御部３１１から出力されたマスタＡ第１メモリ利用要求コマンドとマスタＡ第２メモリ利用要求コマンドとマスタＢ第１メモリ利用要求コマンドとマスタＢ第２メモリ利用要求コマンドとを受信し、下位階層の調停装置１３１の調停結果出力制御部４０３から出力された第１調停候補メモリ利用要求コマンドと第２調停候補メモリ利用要求コマンドとを受信する。
【０１４６】
第１候補調停部４００は、マスタＡ第１メモリ利用要求コマンドとマスタＢ第１メモリ利用要求コマンドと第１調停候補メモリ利用要求コマンドとを入力されると、それら３つのメモリ利用要求コマンドの中から最も優先度の高いメモリ利用要求コマンドを第１コマンドとして選択し、調停結果出力制御部４０３とマスク部４０１とに出力する（ステップＳ７０５）。
【０１４７】
マスク部４０１は、第１コマンドを入力されると、既に入力されている、マスタＡ第１メモリ利用要求コマンドとマスタＡ第２メモリ利用要求コマンドとマスタＢ第１メモリ利用要求コマンドとマスタＢ第２メモリ利用要求コマンドとマスタＡ第１メモリ利用要求コマンドとマスタＡ第２メモリ利用要求コマンドとマスタＢ第１メモリ利用要求コマンドとマスタＢ第２メモリ利用要求コマンドとの中から、入力された第１コマンドと一致するメモリ利用要求コマンドを除く５つのメモリ利用要求コマンドを選択して第２候補調停部４０２に出力する（ステップＳ７１０）。
【０１４８】
第２候補調停部４０２は、５つのメモリ利用要求コマンドが入力されると、それらの中から最も優先度の高いメモリ利用要求コマンドを選択して、第２コマンドとして調停結果出力制御部４０３に出力する（ステップＳ７１５）。
【０１４９】
調停結果出力制御部４０３は、第１候補調停部４００から第１コマンドが入力され、第２候補調停部４０２から第２コマンドが入力されると、次のクロック信号の立ち上がりのタイミングまで待機する（ステップＳ７２０）。
【０１５０】
調停結果出力制御部４０３は、クロック信号の立ち上がりのタイミングから次のクロック信号の立ち上がりのタイミングまでの期間中に、メモリ制御部１１８からアクノレッジ信号を受信した場合（ステップＳ７２５：Ｙｅｓ）において、そのアクノレッジ信号に含まれるマスタ識別情報と受信した第１コマンドに含まれるマスタ識別情報とが一致するとき（ステップＳ７３０：Ｙｅｓ）、次のクロック信号の立ち上がりのタイミングで、受信した第２コマンドを第１調停候補メモリ利用要求コマンドとして次段の調停装置１３１に出力し、メモリ利用要求コマンドが存在しない旨を示すオール０の信号を第２調停候補メモリ利用要求コマンドとして次段の調停装置１３１に出力する（ステップＳ７３５）。
【０１５１】
ステップＳ７２５において、調停結果出力制御部４０３は、次のクロック信号の立ち上がりのタイミングまでの期間中に、メモリ制御部１１８からアクノレッジ信号を受信しなかった場合（ステップＳ７２５：Ｎｏ）、又は、ステップＳ７３０において、受信したアクノレッジ信号に含まれるマスタ識別情報と受信した第１コマンドに含まれるマスタ識別情報とが一致しない場合（ステップＳ７３０：Ｎｏ）、調停結果出力制御部４０３は、次のクロック信号の立ち上がりのタイミングで、受信した第１コマンドを第１調停候補メモリ利用要求コマンドとして次段の調停装置１３１に出力し、受信した第２コマンドを第２調停候補メモリ利用要求コマンドとして次段の調停装置１３１に出力する（ステップＳ７４０）。
【０１５２】
ステップＳ７３５の処理が終了した場合、又は、ステップＳ７４０の処理が終了した場合には、調停装置１３１は、再びステップＳ７００の処理に戻ってステップＳ７００以下の処理を行う。
【０１５３】
＜最終調停処理＞
図８は、調停装置１３０が行う最終調停処理を示すフローチャートである。
【０１５４】
この最終調停処理は、調停装置１３０が、自装置の属する最上位階層においてメモリ利用要求の調停を行い、その調停結果として、最優先メモリ利用要求コマンドをメモリ制御部１１８に出力する処理である。
【０１５５】
最終調停処理のうち、ステップＳ８００〜ステップＳ８３０の処理は、階層別調停処理における、ステップＳ７００〜ステップＳ７３０の処理において、調停結果出力制御部４０３を調停結果出力制御部６０３に読み換えたものと同様の処理である。従って、これらの処理についての説明を省略する。
【０１５６】
ステップＳ８３０において、受信したアクノレッジ信号に含まれるマスタ識別情報と受信した第１コマンドに含まれるマスタ識別情報とが一致するとき（ステップＳ８３０：Ｙｅｓ）、調停結果出力制御部６０３は、次のクロック信号の立ち上がりのタイミングで、受信した第２コマンドを最優先メモリ利用要求コマンドとしてメモリ制御部１１８に出力する（ステップＳ８３５）。
【０１５７】
ステップＳ８２５において、次のクロック信号の立ち上がりのタイミングまでの期間中に、メモリ制御部１１８からアクノレッジ信号を受信しなかった場合（ステップＳ８２５：Ｎｏ）、又は、ステップＳ８３０において、受信したアクノレッジ信号に含まれるマスタ識別情報と受信した第１コマンドに含まれるマスタ識別情報とが一致しない場合（ステップＳ８３０：Ｎｏ）、調停結果出力制御部６０３は、次のクロック信号の立ち上がりのタイミングで、受信した第１コマンドを最優先メモリ利用要求コマンドとしてメモリ制御部１１８に出力する（ステップＳ８４０）。
【０１５８】
ステップＳ８３５の処理が終了した場合、又は、ステップＳ８４０の処理が終了した場合には、調停装置１３０は、再びステップＳ８００の処理に戻ってステップＳ８００以下の処理を行う。
【０１５９】
＜調停処理＞
ここでは、階層調停装置１０５の行う調停処理について、具体例を用いて図面を参照しながら説明する。
【０１６０】
図９は、調停処理を説明するための具体例における、システムＬＳＩ１００の内部信号のタイミングチャートである。
【０１６１】
ここで用いる具体例は、時刻Ａにおいて、第３調停装置１３１Ｂが、第１調停候補メモリ利用要求コマンドとしてコマンドＣａ９１０（外部メモリ１０１に対する読み出し要求コマンド）を出力し、第２調停候補メモリ利用要求コマンドとしてコマンドＣｂ９２０（外部メモリ１０１に対する読み出し要求コマンド）を出力した場合において、時刻Ａから時刻Ｃまでの期間に、どのマスタからも新たなメモリ利用要求コマンドが発行されなかった場合を例とするものである。
【０１６２】
時刻Ａにおいて、第３調停装置１３１Ｂが、第１調停候補メモリ利用要求コマンドとしてコマンドＣａ９１０を、第２調停候補メモリ利用要求コマンドとしてコマンドＣｂ９２０を第２調停装置１３１Ａに出力すると、第２調停装置１３１Ａは、次のクロック信号の立ち上がりのタイミングである時刻Ａ１になると、第１調停候補メモリ利用要求コマンドとしてコマンドＣａ９１１を、第２調停候補メモリ利用要求コマンドとしてコマンドＣｂ９２１を第１調停装置１３０に出力する。
【０１６３】
時刻Ａ２になると、第１調停装置１３０は、コマンドＣａ９１２を最優先コマンドとして、メモリ制御部１１８に出力する。
【０１６４】
時刻Ｂになると、メモリ制御部１１８は、コマンドＣａ９１２に含まれるマスタ識別情報を含むアクノレッジ信号ａｃｋ＿ａ９３０を全ての調停装置に出力し、さらに、外部メモリ１０１のメモリ領域のうち、コマンドＣａ９１２に含まれる開始アドレスから６４Ｂｙｔｅのメモリ領域に記憶されているデータＤａ９４０を、２サイクルかけて読み出して２サイクルかけてバス幅３２Ｂｙｔｅの基幹バス１２０に出力する。
【０１６５】
メモリ制御部１１８から出力されたアクノレッジ信号ａｃｋ＿ａ９３０は、時刻Ｂから時刻Ｂ１までの期間のうちに、全ての調停装置１３０によって受信される。
【０１６６】
メモリ制御部１１８から出力されたアクノレッジ信号ａｃｋ＿ａ９３０を受信した第１調停装置１３０は、時刻Ｂ１になると、出力する最優先コマンドを、コマンドＣａ９１２からコマンドＣｂ９２４に切り替えて出力する。
【０１６７】
時刻Ｃになると、メモリ制御部１１８は、コマンドＣｂ９２４に含まれるマスタ識別情報を含むアクノレッジ信号ａｃｋ＿ｂ９３１を全ての調停装置に出力し、さらに、外部メモリ１０１のメモリ領域のうち、コマンドＣｂ９２４に含まれる開始アドレスから６４Ｂｙｔｅのメモリ領域に記憶されているデータＤｂ９４１を、２サイクルかけて読み出して２サイクルかけてバス幅３２Ｂｙｔｅの基幹バス１２０に出力する。
【０１６８】
このように、メモリ制御部１１８は、外部メモリ１０１から、データＤａ９４０とデータＤｂ９４１とを連続して読み出して基幹バス１２０に出力するため、外部メモリ１０１がデータＤａ９４０を出力する期間とデータＤｂ９４１を出力する期間との間にバブル現象は発生しない。
【０１６９】
＜従来例における調停処理＞
階層調停装置１０５が行う調停処理と、従来型の階層調停装置が行う従来の調停処理との相違点を説明するために、従来型の階層調停装置が行う従来の調停処理について具体例を用いて図面を参照しながら説明する。
【０１７０】
ここでは、階層調停装置１０５を構成する調停装置１３０、調停装置１３１Ａ〜調停装置１３１Ｃが、受け付けたメモリ利用要求の中で１番目に優先度の高いメモリ利用要求のみを上位側の階層の調停装置へ出力し、２番目に優先度の高いメモリ利用要求を出力しないと機能制限されている場合における調停処理の具体例を、従来型の階層調停装置が行う従来の調停処理の具体例であるとして説明する。
【０１７１】
図１０は、調停処理を説明するための具体例における、機能制限された調停装置１３０、機能制限された調停装置１３１Ａ〜調停装置１３１Ｃを有するシステムＬＳＩ１００の内部信号のタイミングチャートである。
【０１７２】
ここで用いる具体例は、時刻Ａにおいて、機能制限された第３調停装置１３１Ｂが、第１調停候補メモリ利用要求コマンドとしてコマンドＣａ１０１０（外部メモリ１０１に対する読み出し要求コマンド）を出力した場合において、時刻Ａから時刻Ｃまでの期間に、どのマスタからも新たなメモリ利用要求コマンドが発行されなかった場合を例とするものである。
【０１７３】
ただし、機能制限された第３調停装置１３１Ｂは、時刻Ａにおいて、コマンドＣａより優先順位の低いコマンドであるコマンドＣｂを記憶しているが、機能が制限されているために第２調停メモリ利用要求コマンドとして出力できない状態であるものとする。
【０１７４】
時刻Ａにおいて、機能制限された第３調停装置１３１Ｂが、第１調停候補コマンドとしてコマンドＣａ１０１０を機能制限された第２調停装置１３１Ａに出力すると、機能制限された第２調停装置１３１Ａは、時刻Ａ１になると、第１調停候補コマンドとしてコマンドＣａ１０１１を機能制限された第１調停装置１３０に出力する。
【０１７５】
時刻Ａ２になると、機能制限された第１調停装置１３０は、コマンドＣａ１０１２を最優先コマンドとして、メモリ制御部１１８に出力する。
【０１７６】
時刻Ｂになると、メモリ制御部１１８は、コマンドＣａ１０１２に含まれるマスタ識別情報を含むアクノレッジ信号ａｃｋ＿ａ１０３０を全ての機能制限された調停装置に出力し、さらに、外部メモリ１０１のメモリ領域のうち、コマンドＣａ１０１２に含まれる開始アドレスから６４Ｂｙｔｅのメモリ領域に記憶されているデータＤａ１０４０を、２サイクルかけて読み出して基幹バス１２０に出力する。
【０１７７】
メモリ制御部１１８から出力されたアクノレッジ信号ａｃｋ＿ａ１０３０を受信した機能制限された第３調停装置１３１Ｂは、時刻Ｂ１にコマンドＣｂ１０２０を出力する。
【０１７８】
機能制限された第３調停装置１３１Ｂが、第１調停候補コマンドとしてコマンドＣｂ１０２０を機能制限された第２調停装置１３１Ａに出力すると、機能制限された第２調停装置１３１Ａは、時刻Ｃになると、第１調停候補コマンドとしてコマンドＣａ１０１１を機能制限された第１調停装置１３０に出力する。
【０１７９】
時刻Ｃ１になると、機能制限された第１調停装置１３０は、コマンドＣｂ１０２２を最優先コマンドとして、メモリ制御部１１８に出力する。
【０１８０】
時刻Ｄになると、メモリ制御部１１８は、コマンドＣｂ１０２２に含まれるマスタ識別情報を含むアクノレッジ信号ａｃｋ＿ｂ１０３１を全ての機能制限された調停装置に出力し、さらに、外部メモリ１０１のメモリ領域のうち、コマンドＣｂ１０２２に含まれる開始アドレスから６４Ｂｙｔｅのメモリ領域に記憶されているデータＤｂ１０４２を、２サイクルかけて読み出して基幹バス１２０に出力する。
【０１８１】
このように、メモリ制御部１１８は、外部メモリ１０１から、データＤａ１０４０とデータＤｂ１０４２とを読み出す間に、データを出力しない期間が２サイクル発生してしまう（２サイクルバブル現象が発生してしまう）。
【０１８２】
すなわち、機能制限された第３調停装置１３１Ｂが調停結果を出力してから次の調停結果を出力するまでの期間（機能制限された第３調停装置１３１Ｂのレイテンシ）である４サイクルと、マスタが外部メモリ１０１を利用する期間である２サイクルとの差である２サイクルの期間、バブル現象が発生する。
【０１８３】
＜まとめ＞
上述のシステムＬＳＩ１００によれば、上記具体例で示されるように、例えば、第３調停装置１３１Ｂが調停結果を出力してから次の調停結果を出力するまでの期間（第３調停装置１３１Ｂのレイテンシ）が４サイクルである場合において、マスタが外部メモリ１０１を利用する期間が２サイクルであっても、従来例で発生していたバブル現象が発生しなくなるというように、従来に比べてバブル現象の発生頻度を少なくすることができる。
【０１８４】
６４Ｂｙｔｅのデータサイズを更に大きい１２８Ｂｙｔｅ等にする手法も考えられるが、この場合はバスインタフェース部のデータバッファの容量が大きくなってしまい回路面積コストが増加する。また、データサイズを１２８Ｂｙｔｅにすることにより４サイクルの外部メモリを占有するためプロセッサなどの優先度が高くメモリアクセス要求開始からデータ応答時間が短いことが性能に直結するマスタは性能が劣化してしまう。
【０１８５】
従って、システムＬＳＩ１００の各マスタは、従来よりも効率よく外部メモリ１０１を利用することができるようになる。
【０１８６】
このシステムＬＳＩ１００は、画像処理に係る機能を有するマスタを備え、外部メモリ１０１を効率よく利用することができるものであるため、例えば、ブルーレイレコーダシステムといった、メモリを利用して画像処理を行うシステム等で利用されるのが有用である。
＜実施の形態２＞
以下、本発明に係る調停装置の一実施形態として、実施の形態１に係るシステムＬＳＩ１００の一部を変形した実施の形態２に係る第１変形システムＬＳＩについて説明する。
【０１８７】
第１変形システムＬＳＩは、構成する調停装置のうち、第１調停メモリ利用要求コマンドを出力してから、その第１調停メモリ利用要求コマンドに対する応答信号であるアクノレッジ信号を受信するまでに必要となる遅延時間が所定時間以上とならない調停装置は、第２調停メモリ利用要求コマンドとして常にオール０の信号を出力するという例である。
【０１８８】
このような構成となっているのは、調停装置において、第１調停メモリ利用要求コマンドを出力してからその第１調停メモリ利用要求コマンドに対する応答信号であるアクノレッジ信号を受信して次の第１調停メモリ利用要求コマンドを出力するまでのクロックサイクル数がマスタによるメモリの利用クロックサイクル数以下となる場合には、その調停装置が第２調停メモリ利用要求コマンドを出力しなくても、前述のバブル現象が発生しないためである。
【０１８９】
以下、本実施の形態２に係る第１変形システムＬＳＩの構成について、実施の形態１に係るシステムＬＳＩ１００との相違点を中心に、図面を参照しながら説明する。
【０１９０】
＜構成＞
実施の形態２に係る第１変形システムＬＳＩと実施の形態１に係るシステムＬＳＩとの相違点は、（１）調停装置１３１が調停装置１１３１に変更されている点と、（２）各マスタによるメモリ領域への書き込みサイズ、及び、読み出しサイズが６４Ｂｙｔｅの固定長から９６Ｂｙｔｅの固定長に変更されている点とである。
【０１９１】
基幹バス１２０のバス幅は３２Ｂｙｔｅなので、９６Ｂｙｔｅのデータを転送する場合に、基幹バス１２０は３サイクルかけてデータの転送を行う。
【０１９２】
図１１は、調停装置１１３１の構成図である。
【０１９３】
調停装置１１３１は、実施の形態１における調停装置１３１の一部が変形されたものであって、調停装置１３１から調停部１４１が調停部１１４１と入れ替えられたものである。
【０１９４】
調停部１１４１は、実施の形態１における調停部１４１の一部が変形されたものであって、調停部１４１に設定レジスタ１１０４が追加され、調停結果出力制御部４０３が調停結果出力制御部１１０３と入れ替えられたものである。
【０１９５】
設定レジスタ１１０４は、プロセッサ１１０と調停結果出力制御部１１０３とに接続し、プロセッサ１１０によって設定されるクロックサイクル数を記憶する機能を有する。
【０１９６】
ここで、プロセッサ１１０によって設定されるクロックサイクル数とは、調停部１１４１の属する調停装置１１３１が第１調停メモリ利用要求コマンドを出力した場合においてその第１調停メモリ利用要求コマンドに対する応答信号であるアクノレッジ信号を受信するとき、その第１調停メモリ利用要求コマンドを出力してから、そのアクノレッジ信号を受信するまでに必要となるクロックサイクル数のことをいう。
【０１９７】
調停結果出力制御部１１０３は、第１候補調停部４００と第２候補調停部４０２とメモリ制御部１１８と第１調停候補信号線Ａ４１１Ａと第２調停候補信号線Ａ４１２Ａと設定レジスタ１１０４とに接続し、クロック信号と同期して動作し、以下の３つの機能を備える。
【０１９８】
機能１：第１候補調停部４００から第１コマンドを受信し、第２候補調停部４０２から第２コマンドを受信した場合において、これらのコマンドを受信したクロックサイクルの期間中にメモリ制御部１１８から第１コマンドに含まれるマスタ識別情報を含むアクノレッジ信号を受信しないときに、設定レジスタ１１０４に設定されているクロックサイクル数が所定値４以上であれば、次のクロック信号の立ち上がりのタイミングで、第１コマンドを第１調停候補メモリ利用要求コマンドとして第１調停候補信号線Ａ４１１Ａに出力し、第２コマンドを第２調停候補メモリ利用要求コマンドとして第２調停候補信号線Ａ４１２Ａに出力する機能。
【０１９９】
機能２：第１候補調停部４００から第１コマンドを受信し、第２候補調停部４０２から第２コマンドを受信した場合において、これらのコマンドを受信したクロックサイクルの期間中にメモリ制御部１１８から第１コマンドに含まれるマスタ識別情報を含むアクノレッジ信号を受信しないときに、設定レジスタ１１０４に設定されているクロックサイクル数が所定値４以上でなければ、第１コマンドを第１調停候補メモリ利用要求コマンドとして第１調停候補信号線Ａ４１１Ａに出力し、オール０の信号を第２調停候補メモリ利用要求コマンドとして第２調停候補信号線Ａ４１２Ａに出力する機能。
【０２００】
機能３：第１候補調停部４００から第１コマンドを受信し、第２候補調停部４０２から第２コマンドを受信した場合において、これらのコマンドを受信したクロックサイクルの期間中にメモリ制御部１１８から第１コマンドに含まれるマスタ識別情報を含むアクノレッジ信号を受信したとき、次のクロック信号の立ち上がりのタイミングで、第２コマンドを第１調停候補メモリ利用要求コマンドとして第１調停候補信号線Ａ４１１Ａに出力し、オール０の信号を第２調停候補メモリ利用要求コマンドとして第２調停候補信号線Ａ４１２Ａに出力する機能。
【０２０１】
以上のように構成される第１変形システムＬＳＩの行う動作について、以下、図面を参照しながら説明する。
【０２０２】
＜動作＞
ここでは、第１変形システムＬＳＩの行う動作のうち、特徴的な動作である、調停装置１１３１の行う第１変形階層別調停処理と、実施の形態２に係る階層調停装置の行う第１変形調停処理とについて説明する。
【０２０３】
＜第１変形階層別調停処理＞
第１変形階層別調停処理は、調停装置１３１が行う階層別調停処理の一部が変形されたものである。
【０２０４】
図１２、図１３は、調停装置１１３１が行う第１変形階層別調停処理を示すフローチャートである。
【０２０５】
第１変形階層別調停処理のうち、ステップＳ１２００〜ステップＳ１２３０の処理は、階層別調停処理における、ステップＳ７００〜ステップＳ７３０の処理において、調停結果出力制御部４０３を調停結果出力制御部１１０３に読み換えたものと同様の処理である。従って、これらの処理についての説明を省略する。
【０２０６】
ステップＳ１２３０において、受信したアクノレッジ信号に含まれるマスタ識別情報と受信した第１コマンドに含まれるマスタ識別情報とが一致するとき（ステップＳ１２３０：Ｙｅｓ）、調停結果出力制御部１１０３は、次のクロック信号の立ち上がりのタイミングで、受信した第２コマンドを第１調停候補メモリ利用要求コマンドとして次段の調停装置１１３１に出力し、メモリ利用要求コマンドが存在しない旨を示すオール０の信号を第２調停候補メモリ利用要求コマンドとして次段の調停装置１１３１に出力する（ステップＳ１３００）。
【０２０７】
ステップＳ１２２５において、次のクロック信号の立ち上がりのタイミングまでの期間中に、メモリ制御部１１８からアクノレッジ信号を受信しなかった場合（ステップＳ１２２５：Ｎｏ）、又は、ステップＳ１２３０において、受信したアクノレッジ信号に含まれるマスタ識別情報と受信した第１コマンドに含まれるマスタ識別情報とが一致しない場合（ステップＳ１２３０：Ｎｏ）、調停結果出力制御部１１０３は、設定レジスタ１１０４に設定されているクロックサイクル数が所定値４以上であるか否かを調べる（ステップＳ１２３５）。
【０２０８】
ステップＳ１２３５において、設定レジスタ１１０４に設定されているクロックサイクル数が４以上である場合（ステップＳ１２３５：Ｙｅｓ）には、調停結果出力制御部１１０３は、次のクロック信号の立ち上がりのタイミングで、受信した第１コマンドを第１調停候補メモリ利用要求コマンドとして次段の調停装置１１３１に出力し、受信した第２コマンドを第２調停候補メモリ利用要求コマンドとして次段の調停装置１１３１に出力する（ステップＳ１３０５）。
【０２０９】
ステップＳ１２３５において、設定レジスタ１１０４に設定されているクロックサイクル数が４以上でない場合（ステップＳ１２３５：Ｎｏ）には、調停結果出力制御部１１０３は、次のクロック信号の立ち上がりのタイミングで、受信した第１コマンドを第１調停候補メモリ利用要求コマンドとして次段の調停装置１１３１に出力し、メモリ利用要求コマンドが存在しない旨を示すオール０の信号を第２調停候補メモリ利用要求コマンドとして次段の調停装置１１３１に出力する（ステップＳ１３１０）。
【０２１０】
＜第１変形調停処理＞
ここでは、実施の形態２に係る階層調停装置の行う第１変形調停処理について、具体例を用いて図面を参照しながら説明する。
【０２１１】
図１４は、第１変形調停処理を説明するための具体例における、第１変形システムＬＳＩの内部信号のタイミングチャートである。
【０２１２】
ここで用いる具体例は、時刻Ａにおいて、第３調停装置１１３１Ｂが、第１調停候補メモリ利用要求コマンドとしてコマンドＣａ１４１０（外部メモリ１０１に対する読み出し要求コマンド）を出力し、第２調停候補メモリ利用要求コマンドとしてコマンドＣｂ１４２０（外部メモリ１０１に対する読み出し要求コマンド）を出力した場合において、時刻Ａから時刻Ｃまでの期間に、どのマスタからも新たなメモリ利用要求コマンドが発行されなかった場合を例とするものである。
【０２１３】
時刻Ａにおいて、第３調停装置１１３１Ｂが、第１調停候補メモリ利用要求コマンドとしてコマンドＣａ１４１０を、第２調停候補メモリ利用要求コマンドとしてコマンドＣｂ１４２０を第２調停装置１１３１Ａに出力すると、第２調停装置１１３１Ａは、次のクロック信号の立ち上がりのタイミングである時刻Ａ１になると、第１調停候補メモリ利用要求コマンドとしてコマンドＣａ１４１１を、第２調停候補メモリ利用要求コマンドとしてオール０の信号を第１調停装置１３０に出力する。
【０２１４】
時刻Ａ２になると、第１調停装置１３０は、コマンドＣａ１４１２を最優先コマンドとして、メモリ制御部１１８に出力する。
【０２１５】
時刻Ｂになると、メモリ制御部１１８は、コマンドＣａ１４１２に含まれるマスタ識別情報を含むアクノレッジ信号ａｃｋ＿ａ１４３０を全ての調停装置に出力し、さらに、外部メモリ１０１のメモリ領域のうち、コマンドＣａ１４１２に含まれる開始アドレスから９６Ｂｙｔｅのメモリ領域に記憶されているデータＤａ１４４０を、３サイクルかけて読み出して３サイクルかけてバス幅３２Ｂｙｔｅの基幹バス１２０に出力する。
【０２１６】
メモリ制御部１１８から出力されたアクノレッジ信号ａｃｋ＿ａ１４３０は、時刻Ｂから時刻Ｂ１までの期間のうちに、全ての調停装置１３０によって受信される。
【０２１７】
メモリ制御部１１８から出力されたアクノレッジ信号ａｃｋ＿ａ１４３０を受信した第２調停装置１１３１Ａは、時刻Ｂ１になると、出力する最優先コマンドを、コマンドＣａ９１２からコマンドＣｂ１４２２に切り替えて出力する。
【０２１８】
時刻Ｂ２になると、第１調停装置１３０は、コマンドＣｂ１４２３を最優先コマンドとして、メモリ制御部１１８に出力する。
【０２１９】
時刻Ｃになると、メモリ制御部１１８は、コマンドＣｂ１４２３に含まれるマスタ識別情報を含むアクノレッジ信号ａｃｋ＿ｂ１４３１を全ての調停装置に出力し、さらに、外部メモリ１０１のメモリ領域のうち、コマンドＣｂ１４２４に含まれる開始アドレスから９６Ｂｙｔｅのメモリ領域に記憶されているデータＤｂ１４４１を、３サイクルかけて読み出して３サイクルかけてバス幅３２Ｂｙｔｅの基幹バス１２０に出力する。
【０２２０】
このように、メモリ制御部１１８は、外部メモリ１０１から、データＤａ１４４０とデータＤｂ１４４１とを連続して読み出して基幹バス１２０に出力するため、外部メモリ１０１がデータＤａ１４４０を出力する期間とデータＤｂ１４４１を出力する期間との間にバブル現象は発生しない。
【０２２１】
＜まとめ＞
上述の第１変形システムＬＳＩによれば、上記具体例で示されるように、例えば、第３調停装置１１３１Ｂが調停結果を出力してから次の調停結果を出力するまでの期間（第３調停装置１１３１Ｂのレイテンシ）が４サイクルである場合において、マスタが外部メモリ１０１を利用する期間が３サイクルであっても、バブル現象が発生しない。
【０２２２】
上記構成は全マスタで同一の固定データ長９６Ｂｙｔｅとして説明しているが、実際の構成ではマスタ毎に異なる固定データ長を選択することも可能であり、その場合は設定レジスタがマスタの数だけ存在することになる。
【０２２３】
さらに、上述の第１変形システムＬＳＩによれば、第２調停装置１１３１Ａは、第２調停メモリ利用要求コマンドとして常にオール０の信号を出力するので、第２調停装置が第２調停メモリ利用要求コマンドとしてオール０の信号以外の信号を出力する構成の場合に比べて、消費電力を少なくすることができる。
＜実施の形態３＞
以下、本発明に係る調停装置の一実施形態として、実施の形態２に係る第１変形システムＬＳＩの一部を変形した実施の形態３に係る第２変形システムＬＳＩについて説明する。
【０２２４】
第２変形システムＬＳＩは、構成する各調停装置が、第１調停メモリ利用要求コマンドを出力してからその第１調停メモリ利用要求コマンドに対する応答信号であるアクノレッジ信号を受信して次の第１調停メモリ利用要求コマンドを出力するまでのクロックサイクル数がマスタによるメモリの利用クロックサイクル数以下となる場合には、第２調停メモリ利用要求コマンドを出力しないというものである。
【０２２５】
第１変形システムＬＳＩでは、各マスタによるメモリ領域へのアクセスは９６Ｂｙｔｅの固定長サイズであったが、第２変形システムＬＳＩでは、各マスタによるメモリ領域へのアクセスは可変長サイズとなっている。
【０２２６】
以下、本実施の形態３に係る第２変形システムＬＳＩの構成について、実施の形態２に係る第１変形システムＬＳＩとの相違点を中心に、図面を参照しながら説明する。
【０２２７】
＜構成＞
実施の形態３に係る第２変形システムＬＳＩと実施の形態２に係る第１変形システムＬＳＩとの相違点は、（１）調停装置１１３１が調停装置１６３１に変更されている点と、（２）各マスタによるメモリ領域への書き込み、及び、読み出しが、３２Ｂｙｔｅを単位とする可変長アクセスに変更されている点とである。
【０２２８】
図１５は、各マスタが出力するメモリ利用要求コマンドのデータ構造図である。
【０２２９】
同図に示されるように、メモリ利用要求コマンドは、開始アドレス１５０１と、バースト長情報１５０２と、マスタ識別情報１５０３と、命令種情報１５０４とから構成される。
【０２３０】
開始アドレス１５０１は、実施の形態１における開始アドレス１２０１と同様のものであり、マスタ識別情報１５０３は、実施の形態１におけるマスタ識別情報２０２と同様のものであり、命令種情報１５０４は、実施の形態１における命令種情報２０３と同様のものである。従って、これらについての説明を省略する。
【０２３１】
バースト長情報１５０２は、利用するメモリ領域の大きさを、３２Ｂｙｔｅ単位で示すための６ビットのデータである。
【０２３２】
例えば、利用するメモリ領域の大きさが９６Ｂｙｔｅの場合には、”000011”となる。
【０２３３】
図１６は、調停装置１６３１の構成図である。
【０２３４】
調停装置１６３１は、実施の形態２における調停装置１１３１の一部が変形されたものであって、調停装置１１３１から調停部１１４１が調停部１６４１と入れ替えられたものである。
【０２３５】
調停部１６４１は、実施の形態２における調停部１１４１の一部が変形されたものであって、調停部１１４１から調停結果出力制御部１１０３が調停結果出力制御部１６０３と入れ替えられたものである。
【０２３６】
調停結果出力制御部１６０３は、第１候補調停部４００と第２候補調停部４０２とメモリ制御部１１８と第１調停候補信号線Ａ４１１Ａと第２調停候補信号線Ａ４１２Ａと設定レジスタ１１０４とに接続し、クロック信号と同期して動作し、以下の３つの機能を備える。
【０２３７】
機能１：第１候補調停部４００から第１コマンドを受信し、第２候補調停部４０２から第２コマンドを受信した場合において、これらのコマンドを受信したクロックサイクルの期間中にメモリ制御部１１８から第１コマンドに含まれるマスタ識別情報を含むアクノレッジ信号を受信しないときに、第１コマンドに含まれるバースト長情報の値が設定レジスタ１１０４に設定されているクロックサイクル数より大きければ、次のクロック信号の立ち上がりのタイミングで、第１コマンドを第１調停候補メモリ利用要求コマンドとして第１調停候補信号線Ａ４１１Ａに出力し、第２コマンドを第２調停候補メモリ利用要求コマンドとして第２調停候補信号線Ａ４１２Ａに出力する機能。
【０２３８】
機能２：第１候補調停部４００から第１コマンドを受信し、第２候補調停部４０２から第２コマンドを受信した場合において、これらのコマンドを受信したクロックサイクルの期間中にメモリ制御部１１８から第１コマンドに含まれるマスタ識別情報を含むアクノレッジ信号を受信しないときに、第１コマンドに含まれるバースト長情報の値が設定レジスタ１１０４に設定されているクロックサイクル数より大きくなければ、第１コマンドを第１調停候補メモリ利用要求コマンドとして第１調停候補信号線Ａ４１１Ａに出力し、オール０の信号を第２調停候補メモリ利用要求コマンドとして第２調停候補信号線Ａ４１２Ａに出力する機能。
【０２３９】
機能３：第１候補調停部４００から第１コマンドを受信し、第２候補調停部４０２から第２コマンドを受信した場合において、これらのコマンドを受信したクロックサイクルの期間中にメモリ制御部１１８から第１コマンドに含まれるマスタ識別情報を含むアクノレッジ信号を受信したとき、次のクロック信号の立ち上がりのタイミングで、第２コマンドを第１調停候補メモリ利用要求コマンドとして第１調停候補信号線Ａ４１１Ａに出力し、オール０の信号を第２調停候補メモリ利用要求コマンドとして第２調停候補信号線Ａ４１２Ａに出力する機能。
【０２４０】
以上のように構成される第２変形システムＬＳＩの行う動作について、以下、図面を参照しながら説明する。
【０２４１】
＜動作＞
ここでは、第２変形システムＬＳＩの行う動作のうち、特徴的な動作である、調停装置１６３１の行う第２変形階層別調停処理について説明する。
【０２４２】
＜第２変形階層別調停処理＞
第２変形階層別調停処理は、調停装置１１３１が行う第１変形階層別調停処理の一部が変形されたものである。
【０２４３】
図１７、図１８は、調停装置１６３１が行う第２変形階層別調停処理を示すフローチャートである。
【０２４４】
第２変形階層別調停処理のうち、ステップＳ１７００〜ステップＳ１７３０の処理は、第１変形階層別調停処理における、ステップＳ１２００〜ステップＳ１２３０の処理において、調停結果出力制御部１１０３を調停結果出力制御部１６０３に読み換えたものと同様の処理である。従って、これらの処理についての説明を省略する。
【０２４５】
ステップＳ１７３０において、受信したアクノレッジ信号に含まれるマスタ識別情報と受信した第１コマンドに含まれるマスタ識別情報とが一致するとき（ステップＳ１７３０：Ｙｅｓ）、調停結果出力制御部１６０３は、次のクロック信号の立ち上がりのタイミングで、受信した第２コマンドを第１調停候補メモリ利用要求コマンドとして次段の調停装置１６３１に出力し、メモリ利用要求コマンドが存在しない旨を示すオール０の信号を第２調停候補メモリ利用要求コマンドとして次段の調停装置１６３１に出力する（ステップＳ１８００）。
【０２４６】
ステップＳ１７２５において、次のクロック信号の立ち上がりのタイミングまでの期間中に、メモリ制御部１１８からアクノレッジ信号を受信しなかった場合（ステップＳ１７２５：Ｎｏ）、又は、ステップＳ１７３０において、受信したアクノレッジ信号に含まれるマスタ識別情報と受信した第１コマンドに含まれるマスタ識別情報とが一致しない場合（ステップＳ１７３０：Ｎｏ）、調停結果出力制御部１６０３は、第１コマンドに含まれるバースト長情報の値と設定レジスタ１１０４に設定されているクロックサイクル数とを比較する（ステップＳ１７３５）。
【０２４７】
ステップＳ１７２５において、第１コマンドに含まれるバースト長情報の値が設定レジスタ１１０４に設定されているクロックサイクル数より大きい場合（ステップＳ１７３５：Ｙｅｓ）には、調停結果出力制御部１６０３は、次のクロック信号の立ち上がりのタイミングで、受信した第１コマンドを第１調停候補メモリ利用要求コマンドとして次段の調停装置１６３１に出力し、受信した第２コマンドを第２調停候補メモリ利用要求コマンドとして次段の調停装置１６３１に出力する（ステップＳ１８０５）。
【０２４８】
ステップＳ１７２５において、第１コマンドに含まれるバースト長情報の値が設定レジスタ１１０４に設定されているクロックサイクル数より大きくない場合（ステップＳ１７３５：Ｎｏ）には、調停結果出力制御部１６０３は、次のクロック信号の立ち上がりのタイミングで、受信した第１コマンドを第１調停候補メモリ利用要求コマンドとして次段の調停装置１６３１に出力し、メモリ利用要求コマンドが存在しない旨を示すオール０の信号を第２調停候補メモリ利用要求コマンドとして次段の調停装置１６３１に出力する（ステップＳ１８１０）。
【０２４９】
＜まとめ＞
上述の第２変形システムＬＳＩによれば、調停装置１６３１は、第１調停メモリ利用要求コマンドを出力してからその第１調停メモリ利用要求コマンドに対する応答信号であるアクノレッジ信号を受信して次の第１調停メモリ利用要求コマンドを出力するまでのクロックサイクル数がマスタによるメモリの利用クロックサイクル数より大きくならない場合には、第２調停メモリ利用要求コマンドとしてオール０の信号を出力するので、各調停装置が第２調停メモリ利用要求コマンドとしてオール０の信号以外の信号を出力する構成の場合に比べて、消費電力を少なくすることができる。
＜補足＞
以上、本実施に係る調停装置の一実施形態として、実施の形態１〜実施の形態３を用いて階層調停装置を備えるシステムＬＳＩについて説明したが、以下のように変形することも可能であり、本発明は上述した実施の形態で示した通りの調停装置に限られないことはもちろんである。
（１）実施の形態１において、プロセッサと出画エンジンと暗号エンジンとストリームエンジンとデコーダとエンコーダと高画質エンジンとをマスタとする例について説明したが、必ずしもこれらのものに限定される必要はなく、例えば、画像再生装置、デジタルチューナ等といった、スレーブをリソースとして利用する機能を有するものであれば、どんなものでもマスタとなり得る。
（２）実施の形態１において、外部メモリをスレーブとする例について説明したが、必ずしも外部メモリに限定される必要はなく、例えば、内蔵メモリ、暗号エンジン、デコーダ、画像再生装置、デジタルチューナ、ＤＡ（Digital to Analog）変換機、ＵＳＢ（Universal Serial Bus）インターフェース、乗算回路等といった、マスタによって利用される機能を有するものであれば、どんなものでもスレーブとなり得る。
（３）実施の形態１において、基幹バス１２０は３２Ｂｙｔｅの双方向バスであるとしたが、必ずしも双方向バスに限定される必要はなく、例えば、スレーブのデータをマスタへ伝達する信号線群とマスタのデータをスレーブへ伝達する信号線群との２種類の信号線群からなる構造を有するバス、リング型構造を有するバス、クロスバ型構造を有するバスといった、データを伝達する機能があるバスであれば、どのようなタイプのバスでも基幹バスとなり得る。
【０２５０】
また、基幹バス１２０のバス幅は必ずしも３２Ｂｙｔｅに限定されるものではなく、例えば４Ｂｙｔｅ、２５６Ｂｙｔｅ等であっても構わない。
（４）実施の形態１において、階層調停装置１０５が４つの調停装置が直列に接続されている構成の例について説明したが、調停装置が２つ以上直列に接続されている構成であれば、必ずしも直列に接続される調停装置の数は４に限られず、例えば３や６であっても構わない。
（５）実施の形態１において、調停装置１３１は、１番目に優先度の高いメモリ利用要求コマンドと２番目に優先度の高いメモリ利用要求コマンドとの２つのメモリ利用要求コマンドを出力することができる構成の場合を例として説明したが、１番目に優先度の高いメモリ利用要求コマンドと２番目に優先度の高いメモリ利用要求コマンドとを出力することができる構成であれば、３番目以降の優先度の高いメモリ利用要求コマンドをも出力することができる構成としても構わない。
（６）実施の形態１において、第１候補調停部４００と第２候補調停部４０２とは、１番目に優先度の高いメモリ利用要求コマンドを選択するアルゴリズムとして、予め定められた優先順位に係る情報に基づいて行うアルゴリズムである例を示したが、例えば、ＥＤＦ（Earliest Deadline First）手法といったアルゴリズムのように、１番目に優先度の高いメモリ利用要求コマンドを一意に選択することができるアルゴリズムであれば、必ずしも予め定められた優先順位に係る情報に基づいて１番目に優先度の高いメモリ利用要求コマンドを選択するアルゴリズムでなくても構わない。
（７）実施の形態１において、メモリ制御部１１８から出力されるアクノレッジ信号は、出力されるクロックサイクル中に全ての調停装置によって受信される構成の例について説明したが、必ずしも出力されるクロックサイクル中に全ての調停装置によって受信される構成である必要はなく、全ての調停装置によって受信される構成であれば構わない。
【０２５１】
例えば、メモリ制御部１１８からの物理的距離に応じて、物理的距離がより大きい調停装置ほど、アクノレッジ信号が出力されてからそのアクノレッジ信号を受信するまでのクロックサイクル数がより大きくなるという構成が考えられる。
（８）実施の形態１において、システムＬＳＩ１００を構成する構成要素が、１つのＬＳＩであるシステムＬＳＩ１００に集積されている例を用いて説明したが、システムＬＳＩ１００と同様の機能を実現することができるシステムであれば、必ずしも１つのＬＳＩに集積されている必要はなく、例えば、構成要素のそれぞれが、それぞれ互いに異なるＬＳＩに集積されている構成であっても構わない。
（９）実施の形態１〜実施の形態３で説明したシステムＬＳＩ１００、第１変形システムＬＳＩ、第２変形システムＬＳＩは、例えば、ブルーレイレコーダシステム、携帯電話機、車載端末等といった、様々なシステムによって利用されることが有用である。
【０２５２】
図１９は、システムＬＳＩ１００を利用したブルーレイレコーダシステム１９００の構成図である。
（１０）実施の形態１〜実施の形態３で説明したシステムＬＳＩ１００は、第１調停装置１３０、第２調停装置１３１Ａ〜第４調停装置１３１Ｃが、互いに共通のクロック信号に同期して動作する例について説明したが、必ずしも各調停装置が互いに共通のクロック信号に同期して動作する構成に限定される必要はない。
【０２５３】
例えば、各調停装置が、それぞれ互いに独立な周波数のクロック信号に同期して動作するとしても構わないし、さらには、調停装置を構成する各構成要素が、それぞれ互いに独立な周波数のクロック信号に同期して動作するとしても構わない。
（１１）実施の形態１〜実施の形態３で説明したシステムＬＳＩ１００は、第２調停装置１３１Ａ〜第４調停装置１３１Ｃが、第１調停候補信号線を用いて第１調停候補メモリ利用要求コマンドを出力し、第２調停候補信号線を用いて第２調停候補メモリ利用要求コマンドを出力する構成の例について説明したが、必ずしも互いに異なる２つの信号線を用いて、第１調停候補メモリ利用要求コマンドと第２調停候補メモリ利用要求コマンドとを出力する構成に限定される必要はない。
【０２５４】
例えば、各調停装置が、１つの信号線を用いて、２クロックサイクルをかけて第１調停候補メモリ利用要求コマンドと第２調停候補メモリ利用要求コマンドとをシリアルに出力する構成であっても構わない。
【産業上の利用可能性】
【０２５５】
本発明は、複数のマスタがスレーブであるリソースを共用するシステムに広く利用することができる。
【符号の説明】
【０２５６】
１００  システムＬＳＩ
１０１  外部メモリ
１０５  階層調停装置
１１０  プロセッサ
１１１  出画エンジン
１１２  暗号エンジン
１１３  ストリームエンジン
１１４  デコーダＡ
１１５  デコーダＢ
１１６  エンコーダ
１１７  高画質エンジン
１１８  メモリ制御部
１２０  基幹バス
１３０  第１調停装置
１３１Ａ  第２調停装置
１３１Ｂ  第３調停装置
１３１Ｃ  第４調停装置
１４０  調停部
１４１Ａ〜１４１Ｃ  調停部
１５０Ａ〜１５０Ｄ  バスインターフェース部
１６１Ａ〜１６１Ｃ  第１調停候補信号線
１６２Ｂ〜１６２Ｃ  第２調停候補信号線
【図１】
2010143386.tif 000003
【図２】
2010143386.tif 000004
【図３】
2010143386.tif 000005
【図４】
2010143386.tif 000006
【図５】
2010143386.tif 000007
【図６】
2010143386.tif 000008
【図７】
2010143386.tif 000009
【図８】
2010143386.tif 000010
【図９】
2010143386.tif 000011
【図１０】
2010143386.tif 000012
【図１１】
2010143386.tif 000013
【図１２】
2010143386.tif 000014
【図１３】
2010143386.tif 000015
【図１４】
2010143386.tif 000016
【図１５】
2010143386.tif 000017
【図１６】
2010143386.tif 000018
【図１７】
2010143386.tif 000019
【図１８】
2010143386.tif 000020
【図１９】
2010143386.tif 000021
【手続補正書】
【提出日】平成23年2月3日(2011.2.3)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のマスタからのリソース利用要求の調停を行う調停装置に関する。
【背景技術】
【０００２】
プロセッサ、デコーダ等の複数のデバイス（以下、マスタと呼ぶ。）とメモリとがバスに接続され、それら複数のマスタがそのメモリを共用するシステムがある。
このようなシステムには、マスタからのメモリ利用要求が競合する場合に備えて、競合するメモリ利用要求の中から１つのメモリ利用要求を選択し、最も優先度の高いメモリ利用要求として出力する調停装置が備えられている。
【０００３】
調停装置は、例えば、予め定められたメモリ利用要求間の優先順位に係る情報等に基づいて、競合するメモリ利用要求の中から最も優先度の高いメモリ利用要求を選択して出力する。
【０００４】
複数のマスタがメモリを共用するシステムでは、調停装置から出力された最も優先度の高いメモリ利用要求を発行したマスタのみが、バスを介してメモリを利用する。
複数のマスタがメモリを共用する技術として、例えば、特許文献１に開示されている技術がある。
【０００５】
ところで、複数のマスタがメモリを共用するシステムにおいて、マスタの数が多い場合、各マスタ間の物理的距離が互いに離れている場合等には、タイミングや物理配線長の観点から考えて調停装置を階層的に構成するという方法が用いられる場合がある。
【０００６】
階層化された調停装置は、階層毎にその階層におけるメモリ利用要求を調停する調停装置を備え、それら階層毎の調停装置が、例えば、デイジーチェーン型やトーナメント型となるように互いに接続されて構成される。
【０００７】
下位側の階層の調停装置は、その階層に属するマスタからのメモリ利用要求を受け付け、受け付けたメモリ利用要求の中から最も優先度の高いメモリ利用要求を選択して、１つ上位側の階層の調停装置へ出力する。
【０００８】
上位側の階層の調停装置は、その階層に属するマスタからのメモリ利用要求と下位階層の調停装置からのメモリ利用要求とを受け付け、受け付けたメモリ利用要求の中から最も優先度の高いメモリ利用要求を選択して、さらに上位階層の調停装置へ出力する。
【０００９】
このようにして、階層化された調停装置では、下位側の階層から順に、その階層以下の階層における最も優先度の高いメモリ利用要求を選択して上位側の階層の調停装置へと出力していき、最終的に最上位階層の調停装置が出力する最も優先度の高いメモリ利用要求が、システムにおける最も優先度の高いメモリ利用要求となる。
【００１０】
しかしながら、階層化された調停装置は、下位の階層から順に調停を行っていくために、調停を開始してから最も優先度の高いメモリ利用要求を出力するまでの処理時間を短くすることは物理回路配置の観点から考えて難しい。
【００１１】
一般に、調停装置から出力された最も優先度の高いメモリ利用要求が、メモリを制御する例えばメモリコントローラによって受信されると、メモリコントローラは、メモリ利用要求を発行したマスタにメモリを利用させる。
【００１２】
調停装置が最も優先度の高いメモリ利用要求を出力してから、マスタがそのメモリ利用要求に対する応答信号をメモリコントローラから受信して次の最も優先度の高いメモリ利用要求を更新するまでの期間（以下、レイテンシと呼ぶ）よりも、応答信号を受けたマスタによるメモリの利用期間が短い場合には、そのレイテンシとそのメモリの利用期間との差の期間、そのメモリが利用されない現象（以下、バブル現象と呼ぶ。）が起こる。
【００１３】
階層化された調停装置を用いたメモリ利用システムでは、階層化された調停装置のレイテンシを短くすることが難しいため、上述のバブル現象が発生してしまう場合がある。
階層化された調停装置を用いたメモリ利用システムにおいて、バブル現象の発生頻度を低くするための技術として、例えば特許文献２に開示されている技術がある。
【００１４】
この技術は、階層化された調停装置において、下位階層と上位階層との間にメモリ利用要求によって利用されたメインメモリのデータを一時的に記憶するためのキャッシュメモリを配置し、下位階層において最も優先度の高いメモリ利用要求がこのキャッシュメモリにヒットする場合には、キャッシュメモリをメインメモリの代わりに利用するというものである。
【００１５】
この技術によれば、下位階層においてメモリ利用要求がこのキャッシュメモリにヒットする場合には、上位階層での調停結果を待たずにキャッシュメモリを利用することができるようになり、従って、階層化された調停装置を用いたメモリ利用システムは、メモリ利用要求がこのキャッシュメモリにヒットする場合には、上述のレイテンシがあたかも短くなったかのように振る舞うようになる。
【先行技術文献】
【特許文献】
【００１６】
【特許文献１】特開２００４−２８８０２１号公報
【特許文献２】特開平９−１２８３４６号公報
【発明の概要】
【発明が解決しようとする課題】
【００１７】
しかしながら、上述の従来技術では、マスタが同一内容のメモリ利用要求を繰り返して発行しなければメモリ利用要求がキャッシュメモリにヒットしないため、マスタが同一内容のメモリ利用要求を繰り返して発行しないシステムにおいては、キャッシュによりレイテンシ短縮の効果が得られないという課題がある。
【００１８】
そこで本発明は、係る問題に鑑みてなされたものであり、マスタが同一内容のメモリ利用要求を繰り返し発行しないシステムに使用される場合であっても、バブル現象の発生頻度を低くすることができる調停システム、及び、調停システム構築に有用な調整装置を提供することを目的とする。
【課題を解決するための手段】
【００１９】
上記課題を解決するために本発明に係る調停システムは、複数のデバイスからのリソース利用要求コマンドを逐次受け付ける第１受付手段と、前記第１受付手段により受け付けられたリソース利用要求コマンドを所定周期毎に対象として、当該対象が複数の場合には当該各対象の優先度を評価し、優先度が１番目に高いものを第１リソース利用要求コマンドとし、優先度が２番目に高いものを第２リソース利用要求コマンドとして特定する調停手段と、前記調停手段によって特定された前記第１リソース利用要求コマンドと前記第２リソース利用要求コマンドとを前記所定周期、もしくは別の所定周期毎に外部に出力する出力手段とリソース利用要求コマンドを特定する情報を含むリソース利用応答信号を受け付ける第２受付手段とを備え、前記調停手段は、前記第２受付手段がリソース利用応答信号を受け付けた時から、前記第１リソース利用要求コマンドと前記第２リソース利用要求コマンドとの特定を、当該リソース利用応答信号によって特定されるリソース利用要求コマンドを対象から除外して行うことを特徴とする調停装置を１以上と、第１調停装置から出力された前記第１リソース利用要求コマンドと前記第２リソース利用要求コマンドと１以上のデバイスからのリソース要求コマンドとを逐次受け付ける第３受付手段と、前記第３受付手段により受け付けられたリソース利用要求コマンドを前記所定周期、もしくは別の所定周期毎に対象として、当該各対象の優先度を評価し、優先度が１番目に高いものを最優先リソース利用要求コマンドとして特定する最終調停手段と、前記最終調停手段によって特定された前記最優先リソース利用要求コマンドを出力する最終段出力手段と、前記最終段出力手段によって出力された最優先リソース利用要求コマンドの入力を受け付けるリソース利用要求コマンド受付手段と、リソース利用応答信号を受け付ける第４受付手段と、前記リソース利用要求コマンド受付手段が最優先リソース利用要求コマンドの入力を受け付けた場合に、当該最優先リソース利用要求コマンドを特定する情報を含むリソース利用応答信号を、前記第２受付手段と前記第４受付手段とに出力するリソース利用応答信号出力手段とを備え、前記最終調停手段は、前記最優先リソース利用要求コマンドの特定を、前記第４受付手段がリソース利用応答信号を受け付けた時から、当該リソース利用応答信号によって特定されるリソース利用要求コマンドを対象から除外して行うことを特徴とする。
【発明の効果】
【００２０】
上述の構成を備える本発明に係る調停システムは、第１調停装置が優先度の１番目に高いリソース利用要求コマンドと優先度の２番目に高いリソース利用要求コマンドとを出力する。
【００２１】
従って、第１調停装置の行った調停において優先度が１番目に高いリソース利用要求コマンドが最優先リソース利用要求コマンドとしてリソース利用要求コマンド受付手段に受け付けられる場合において、その最優先リソース利用要求コマンドによるリソースの利用期間が第１調停装置によって開始される調停のレイテンシより短いときであっても、最終調停手段は、第４受付手段がリソース利用応答信号を受け付けると、既に第１調停装置から出力されていた優先順位の２番目に高いリソース利用要求コマンドを新たな最優先リソース利用要求コマンドの調停を行うので、バブル現象の発生頻度を低くすることができる。
【００２２】
また、前記第１受付手段が逐次受け付けるリソース要求コマンドの各々はリソースを利用する期間を特定するための情報を含み、前記１以上の調停装置に備わっている出力手段の各々は、前記第２リソース利用要求コマンドの出力を、当該出力手段から当該第２リソース利用要求コマンドを出力する周期と同じ周期に出力される第１リソース利用要求コマンドのリソースを利用する期間が所定期間以下である場合に限って行うとしてもよい。
【００２３】
バブル現象は、調停システムによって行われる調停のレイテンシよりも、リソース要求コマンドによるリソースの利用期間が短い場合に限って発生する。
従って、調停装置が優先度の１番目に高いリソース要求コマンドを出力する場合において、その調停装置によって開始される調停のレイテンシよりもその優先度の１番目に高いリソース要求コマンドによるリソースの利用期間が長い場合には、その調停装置が出力する優先度の２番目に高いリソース要求コマンドは有効に利用されることがない。
【００２４】
このような構成にすることによって、各調停装置における所定時間をその調停装置によって開始される調停のレイテンシより短い期間としておくことで、各調停装置は有効に利用されることのない優先度が２番目に高いリソース利用要求コマンドを出力することがなくなるので、不要な電力の消費を抑制することができる。
【００２５】
また、前記第１受付手段が逐次受け付けるリソース要求コマンドの各々はリソースを利用する期間を特定するための情報を含み、前記１以上の調停装置に備わっている出力手段の各々は、前記第２リソース利用要求コマンドの出力を、当該出力手段から当該第２リソース利用要求コマンドを出力する周期と同じ周期に出力される第１リソース利用要求コマンドがリソースを利用する期間と、当該第１リソース利用要求コマンドが前記リソース利用要求コマンド受付手段に到達するまでに必要となる遅延時間との関係が所定の関係である場合に限って行うとしてもよい。
【００２６】
バブル現象は、調停システムによって行われる調停のレイテンシよりも、リソース要求コマンドによるリソースの利用期間が短い場合に限って発生する。
従って、調停装置が優先度の１番目に高いリソース要求コマンドを出力する場合において、その調停装置によって開始される調停のレイテンシよりもその優先度の１番目に高いリソース要求コマンドによるメモリの利用期間が長い場合には、その調停装置が出力する優先度の２番目に高いリソース要求コマンドは有効に利用されることがない。
【００２７】
このような構成にすることによって、各調停装置における所定の関係を、その調停装置によって開始される調停のレイテンシよりも第１リソース要求コマンドによるメモリの利用期間が長くなる関係としておくことで、各調停装置は有効に利用されることのない優先度が２番目に高いリソース利用要求コマンドを出力することがなくなるので、不要な電力の消費を抑制することができる。
【００２８】
また、前記リソースはメモリであって、前記リソース利用応答信号出力手段は、前記リソース利用要求コマンド受付手段が最優先リソース利用要求コマンドの入力を受け付けた場合において、当該最優先リソース利用要求コマンドが前記メモリの特定領域の読み出しコマンドであったとき、前記メモリに、当該特定領域に記憶されているデータの出力を開始させるための信号を出力するとしてもよい。
【００２９】
このような構成にすることによって、メモリからデータを読み出す際に発生するバブル現象の発生頻度を低くすることができる。
また、前記リソースはメモリであって、前記リソース利用応答信号出力手段は、前記リソース利用要求コマンド受付手段が最優先リソース利用要求コマンドの入力を受け付けた場合において、当該最優先リソース利用要求コマンドが前記メモリの特定領域の書き込みコマンドであったとき、前記メモリに、当該特定領域へのデータの書き込みを開始させるための信号を出力するとしてもよい
このような構成にすることによって、メモリへデータを書き込む際に発生するバブル現象の発生頻度を低くすることができる。
【００３０】
上記課題を解決するために本発明に係る調停装置は、複数のデバイスからのリソース利用要求コマンドを逐次受け付ける第１受付手段と、前記第１受付手段により受け付けられたリソース利用要求コマンドを所定周期毎に対象として、当該対象が複数の場合に、当該各対象の優先度を評価し、優先度が１番目に高いものを第１リソース利用要求コマンドとし、優先度が２番目に高いものを第２リソース利用要求コマンドとして特定する調停手段と、前記調停手段によって特定された前記第１リソース利用要求コマンドと前記第２リソース利用要求コマンドとを外部に出力する出力手段とリソース利用要求コマンドを特定する情報を含むリソース利用応答信号を受け付ける第２受付手段とを備え、前記調停手段は、前記第２受付手段がリソース利用応答信号を受け付けた時から、前記第１リソース利用要求コマンドと前記第２リソース利用要求コマンドとの特定を、当該リソース利用応答信号によって特定されるリソース利用要求コマンドを対象から除外して行うことを特徴とする。
【００３１】
上述の構成を備える本発明に係る調停装置は優先度が１番目に高いリソース利用要求コマンドと優先度が２番目に高いリソース利用要求コマンドとを出力する。
この調停装置が、複数の調停装置が直列接続されて成る調停システムの最上位階層以外の調停装置として利用されることで、この調停装置から出力された優先度が１番目に高いリソース利用要求コマンドが最優先リソース利用コマンドとしてリソース利用要求コマンド受付手段に受け付けられる場合に、この調停装置の上位側階層に接続される調停装置は、既にこの調停装置から出力されている優先順位が２番目に高いリソース利用要求コマンドを用いて新たな最優先リソース利用要求コマンドの調停を行うことができるようになる。
【００３２】
従って、この調停装置から出力された優先度が１番目に高いリソース利用要求コマンドのメモリ利用期間が、第１調停装置によって行われる調停のレイテンシよりも短い場合であっても、バブル現象の発生頻度を低くすることができる。
【００３３】
よって、この調停装置は、バブル現象の発生頻度を低くすることができる調停システムの構築において有用なものとなるという効果を有する。
また、前記第１受付手段が逐次受け付けるリソース要求コマンドの各々はリソースを利用する期間を特定するための情報を含み、前記出力手段は、前記第２リソース利用要求コマンドの出力を、当該出力手段から当該第２リソース利用要求コマンドを出力する周期と同じ周期に出力される第１リソース利用要求コマンドのリソースを利用する期間が所定期間以下である場合に限って行うとしてもよい。
【００３４】
バブル現象は、調停装置によって行われる調停のレイテンシよりも、リソース要求コマンドによるリソースの利用期間が短い場合に限って発生する。
従って、調停装置によって行われる調停のレイテンシよりも、優先度が１番目に高いリソース要求コマンドによるリソースの利用期間が長い場合には、優先度が２番目に高いリソース利用要求コマンドは有効に利用されることがない。
【００３５】
このような構成にすることによって、所定期間を調停装置によって行われる調停のレイテンシより短い期間としておくことで、有効に利用されることのない優先度が２番目に高いリソース利用要求コマンドを出力することがなくなるので、不要な電力の消費を抑制することができる。
【図面の簡単な説明】
【００３６】
【図１】システムＬＳＩ１００の機能ブロック図
【図２】（ａ）メモリ利用要求コマンドのデータ構造図、（ｂ）アクノレッジ信号のデータ構造図
【図３】バスインターフェース部１５０の構成図
【図４】調停部１４１の構成図
【図５】各マスタと、そのマスタが発行するメモリ利用要求コマンドの優先順位との関係を示す図
【図６】調停部１４０の構成図
【図７】階層別調停処理を示すフローチャート
【図８】最終調停処理を示すフローチャート
【図９】システムＬＳＩ１００の内部信号のタイミングチャート
【図１０】各調停装置が機能制限された場合におけるシステムＬＳＩ１００の内部信号のタイミングチャート
【図１１】調停装置１１３１の構成図
【図１２】第１変形階層別調停処理を示すフローチャートその１
【図１３】第１変形階層別調停処理を示すフローチャートその２
【図１４】第１変形システムＬＳＩの内部信号のタイミングチャート
【図１５】メモリ利用要求コマンドのデータ構造図
【図１６】調停装置１６３１の構成図
【図１７】第２変形階層別調停処理を示すフローチャートその１
【図１８】第２変形階層別調停処理を示すフローチャートその２
【図１９】ブルーレイレコーダシステム１９００の構成図
【発明を実施するための形態】
【００３７】
＜実施の形態１＞
＜概要＞
以下、本発明に係る調停装置の一実施形態として、共通のメモリを利用する複数のマスタと、それらマスタからのメモリ利用要求を調停するための階層調停装置とを備えるシステムＬＳＩについて説明する。
【００３８】
このシステムＬＳＩに備えられている階層調停装置は、互いに共通のクロック信号に同期して動作する複数の調停装置が階層構造を成して接続されている。
各調停装置は、自装置の属する階層で、その階層に属するマスタからのメモリ利用要求と下位階層の調停装置からのメモリ利用要求とを受け付け、受け付けたメモリ利用要求の中から１番目に優先度の高いメモリ利用要求と２番目に優先度の高いメモリ利用要求とを選択して上位側の階層の調停装置へ出力する。
【００３９】
調停装置が最上位階層の調停装置である場合には、自装置の選択する１番目に優先度の高いメモリ利用要求を、最優先メモリ利用要求としてメモリを制御するメモリ制御部へ出力する。
【００４０】
また、最上位階層の調停装置は、１番目に優先度の高いメモリ利用要求を最優先メモリ利用要求としてメモリ制御部へ出力している場合において、メモリ制御部から、そのメモリ利用要求が受け付けられた旨のアクノレッジ信号を受信するとき、２番目に優先順位が高いメモリ利用要求として選出しているメモリ利用要求を、次の最優先メモリ利用要求として出力する。
【００４１】
以下、本実施の形態１に係るシステムＬＳＩの構成について、図面を参照しながら説明する。
＜構成＞
＜全体構成＞
図１は、システムＬＳＩ１００の構成を示すブロック図である。
【００４２】
システムＬＳＩ１００は、プロセッサ１１０と出画エンジン１１１と暗号エンジン１１２とストリームエンジン１１３とデコーダＡ１１４とデコーダＢ１１５とエンコーダ１１６と高画質エンジン１１７と階層調停装置１０５とメモリ制御部１１８と基幹バス１２０等とを備え、外部メモリ１０１と接続されている。
【００４３】
プロセッサ１１０は、階層調停装置１０５と接続し、外部メモリ１０１に記憶されているプログラムを実行することで、出画エンジン１１１、暗号エンジン１１２、ストリームエンジン１１３、デコーダＡ１１４、デコーダＢ１１５、エンコーダ１１６、高画質エンジン１１７、階層調停装置１０５、メモリ制御部１１８等を制御する機能を実現する。
【００４４】
出画エンジン１１１は、階層調停装置１０５と接続し、プロセッサ１１０によって制御され、外部メモリ１０１に記憶されている動画データ、又は、静止画データに対して、字幕、図形等を重ね合わせる機能を有する。
【００４５】
暗号エンジン１１２は、階層調停装置１０５と接続し、プロセッサ１１０によって制御され、外部メモリ１０１に記憶されている暗号化されたデータに対して、復号処理を行う機能を有する。
【００４６】
ストリームエンジン１１３は、階層調停装置１０５と接続し、プロセッサ１１０によって制御され、チューナから取り込んだストリームデータに対して、ストリーミング処理（ストリームデータを加工する処理であって、例えば、音声データと映像データとが輻輳されているストリームデータから音声データと映像データとを分離して音声ストリームデータと映像ストリームデータとを生成して外部メモリ１０１に書きこむ処理）を行う機能を有する。
【００４７】
デコーダＡ１１４は、階層調停装置１０５と接続し、プロセッサ１１０によって制御され、外部メモリ１０１に記憶されているＭＰＥＧ（Moving Picture Experts Group）−２方式で符号化されているデータを復号する機能を有する。
【００４８】
デコーダＢ１１５は、階層調停装置１０５と接続し、プロセッサ１１０によって制御され、外部メモリ１０１に記憶されているＭＰＥＧ−４  ＡＶＣ(Advanced Video Cording)方式で符号化されているデータを復号する機能を有する。
【００４９】
エンコーダ１１６は、階層調停装置１０５と接続し、プロセッサ１１０によって制御され、外部メモリに記憶されている動画データをＭＰＥＧ−４  ＡＶＣ方式で符号化する機能を有する。
【００５０】
高画質エンジン１１７は、階層調停装置１０５と接続し、プロセッサ１１０によって制御され、外部メモリ１０１に記憶されている動画データ、又は、静止画データに対して高画質化処理（動画、又は、静止画のデータに対して、画質を向上させたデータを生成する処理であって、例えば、被写体の輪郭を際立たせるデータを生成する処理）を行う機能を有する。
【００５１】
プロセッサ１１０と、出画エンジン１１１と、暗号エンジン１１２と、ストリームエンジン１１３と、デコーダＡ１１４と、デコーダＢ１１５と、エンコーダ１１６と、高画質エンジン１１７とは、外部メモリ１０１をスレーブとして共用するマスタである。
【００５２】
各マスタは、スレーブである外部メモリ１０１を利用する場合に、外部メモリ１０１の利用に先立って、階層調停装置１０５に対して、メモリ利用要求コマンドを出力する。
図２（ａ）は、各マスタが出力するメモリ利用要求コマンドのデータ構造図である。
【００５３】
同図に示されるように、メモリ利用要求コマンドは、開始アドレス２０１と、マスタ識別情報２０２と、命令種情報２０３とから構成される。
開始アドレス２０１は、利用するメモリ領域の開始アドレスを示す３２ビットのデータである。
【００５４】
マスタ識別情報２０２は、メモリ利用要求コマンドを出力したマスタを識別するための４ビットのデータであって、例えば、”0000”はプロセッサ１１０を示し、”0001”は出画エンジン１１１を示し、”0010”は暗号エンジン１１２を示し、”0011”はストリームエンジン１１３を示し、”0100”はデコーダＡ１１４を示し、”0101”はデコーダＢ１１５を示し、”0110”はエンコーダ１１６を示し、”0111”は高画質エンジン１１７を示す。
【００５５】
命令種情報２０３は、メモリの利用が、メモリ領域への書き込みである場合には”0”となり、メモリ領域からの読み出しである場合には”1”となる１ビットのデータである。
【００５６】
なお、ここでは、各マスタがメモリ領域への書き込みを行うサイズ、及び、メモリ領域からの読み出しを行うサイズは６４Ｂｙｔｅの固定長である。
図１に戻って、再びシステムＬＳＩの構成についての説明を続ける。
【００５７】
基幹バス１２０は、階層調停装置１０５とメモリ制御部１１８とに接続する双方向バスであって、バス幅は３２Ｂｙｔｅである。従って、６４Ｂｙｔｅのデータを転送する場合には、２サイクルかけてデータの転送を行う。
【００５８】
メモリ制御部１１８は、階層調停装置１０５と外部メモリ１０１とに接続し、以下の２つの機能を有する。
機能１：階層調停装置１０５からメモリ利用要求コマンドが出力されると、そのメモリ利用要求コマンドを受信し、階層調停装置１０５にアクノレッジ信号を出力する機能。
【００５９】
機能２：階層調停装置１０５からのメモリ利用要求コマンドを受信した場合において、基幹バス１２０と外部メモリ１０１とが使用されていないとき、受信したメモリ利用要求コマンドに従って、外部メモリ１０１からのデータの読み出し、又は、外部メモリ１０１へのデータの書き込みを行う機能。
【００６０】
図２（ｂ）は、メモリ制御部１１８が出力するアクノレッジ信号のデータ構造図である。
同図に示されるように、アクノレッジ信号は、アクノレッジ情報２１１と、マスタ識別情報２０２とから構成される。
【００６１】
アクノレッジ情報２１１は、アクノレッジ信号が有効であるか否かを示す１ビットの信号であって、”1"の場合にはアクノレッジ信号が有効であることを示し、”0”の場合にはアクノレッジ信号が無効であることを示す。
【００６２】
マスタ識別情報２１２は、アクノレッジ信号の送信先のマスタを識別するための識別情報であって、メモリ制御部１１８がアクノレッジ信号を出力するのに先立って受信したメモリ利用要求コマンドに含まれているマスタ識別情報２０２と同じものである。
【００６３】
図１に戻って、再びシステムＬＳＩの構成についての説明を続ける。
階層調停装置１０５は、プロセッサ１１０と出画エンジン１１１と暗号エンジン１１２とストリームエンジン１１３とデコーダＡ１１４とデコーダＢ１１５とエンコーダ１１６と高画質エンジン１１７と基幹バス１２０とメモリ制御部１１８とに接続し、以下に説明する各構成要素を用いて、以下の２つの機能等を有する。
【００６４】
機能１：各マスタからのメモリ利用要求コマンドを受信して記憶し、記憶するメモリ利用要求コマンドのうち、最も優先度の高いメモリ利用要求コマンドを選出して、メモリ制御部１１８に出力する機能。
【００６５】
機能２：各マスタと基幹バス１２０とのデータのやり取りを仲介する機能。
階層調停装置１０５は、第１調停装置１３０、第２調停装置１３１Ａ、第３調停装置１３１Ｂ、第４調停装置１３１Ｃ、第１調停候補信号線１６１Ａ、第１調停候補信号線１６１Ｂ、第１調停候補信号線１６１Ｃ、第２調停候補信号線１６２Ａ、第２調停候補信号線１６２Ｂ、第２調停候補信号線１６２Ｃ等から構成されている。
【００６６】
第１調停装置１３０は、プロセッサ１１０と出画エンジン１１１とメモリ制御部１１８と基幹バス１２０とに接続し、さらに、第１調停候補信号線１６１Ａと第２調停候補信号線１６２Ａとを介して第２調停装置１３１Ａと接続し、以下の４つの機能等を有する。
【００６７】
機能１：プロセッサ１１０と出画エンジン１１１とからのメモリ利用要求コマンドを受信して記憶する機能。
機能２：記憶しているメモリ利用要求コマンドと、第１調停候補信号線１６１Ａを介して第２調停装置１３１Ａから入力されるメモリ利用要求コマンドと、第２調停候補信号線１６２Ａを介して第２調停装置１３１Ａから入力されるメモリ利用要求コマンドとから、１番目に優先度の高いメモリ利用要求コマンドと２番目に優先度の高いメモリ利用要求コマンドとを選定し、それらのうちの１番目に優先度の高いメモリ利用要求コマンドを最優先メモリ利用要求コマンドとして、クロック信号に同期して、メモリ制御部１１８へ出力する機能。
【００６８】
機能３：１番目に優先度の高いメモリ利用要求を最優先メモリ利用要求としてメモリ制御部１１８へ出力している場合において、メモリ制御部１１８から、そのメモリ利用要求が受け付けられた旨のアクノレッジ信号を受信するとき、そのアクノレッジ信号に対応すするメモリ利用要求コマンドを記憶していれば、その記憶するメモリ利用要求コマンドを削除し、そのアクノレッジ信号を受信したクロックサイクルにおいて２番目に優先順位が高いメモリ利用要求として選出しているメモリ利用要求を、次のクロックサイクルにおいて最優先メモリ利用要求として出力する機能。
【００６９】
機能４：プロセッサ１１０と基幹バス１２０との間のバスインターフェース機能、及び、出画エンジン１１１と基幹バス１２０との間のバスインターフェース機能。
第２調停装置１３１Ａは、暗号エンジン１１２とストリームエンジン１１３とメモリ制御部１１８と基幹バス１２０等とに接続し、さらに、第１調停候補信号線１６１Ａと第２調停候補信号線１６２Ａとを介して第１調停装置１３０と接続し、第１調停候補信号線１６１Ｂと第２調停候補信号線１６２Ｂとを介して第３調停装置１３１Ｂと接続し、以下の３つの機能を有する。
【００７０】
機能１：暗号エンジン１１２とストリームエンジン１１３とからのメモリ利用要求コマンドを受信して記憶する機能。
機能２：記憶しているメモリ利用要求コマンドと、第１調停候補信号線１６１Ｂを介して第３調停装置１３１Ｂから入力されるメモリ利用要求コマンドと、第２調停候補信号線１６２Ｂを介して第２調停装置１３１Ｂから入力されるメモリ利用要求コマンドとから、１番目に優先度の高いメモリ利用要求コマンドと２番目に優先度の高いメモリ利用要求コマンドとを選定し、選定した１番目に優先度の高いメモリ利用要求コマンドと２番目に優先の高いメモリ利用要求コマンドとを、それぞれ、第１調停候補信号線１６１Ａと第２調停候補信号線１６２Ａとを介して第１調停装置１３０へ、クロック信号に同期して出力する機能。
【００７１】
機能３：１番目に優先度の高いメモリ利用要求を最優先メモリ利用要求として第１調停装置１３０へ出力している場合において、メモリ制御部１１８から、そのメモリ利用要求が受け付けられた旨のアクノレッジ信号を受信するとき、そのアクノレッジ信号に対応すするメモリ利用要求コマンドを記憶していれば、その記憶するメモリ利用要求コマンドを削除し、そのアクノレッジ信号を受信したクロックサイクルにおいて２番目に優先順位が高いメモリ利用要求として選出しているメモリ利用要求を、次のクロックサイクルにおいて１番目に優先順位が高いメモリ利用要求として出力する機能。
【００７２】
機能４：暗号エンジン１１２と基幹バス１２０との間のバスインターフェース機能、及び、ストリームエンジン１１３と基幹バス１２０との間のバスインターフェース機能。
第３調停装置１３１Ｂは、第２調停装置１３１Ａと同様の構成を有する調停装置であって、デコーダＡ１１４とデコーダＢ１１５とメモリ制御部１１８と基幹バス１２０等とに接続し、さらに、第１調停候補信号線１６１Ｂと第２調停候補信号線１６２Ｂとを介して第２調停装置１３１Ａと接続し、第１調停候補信号線１６１Ｃと第２調停候補信号線１６２Ｃとを介して第４調停装置１３１Ｃと接続する。
【００７３】
第４調停装置１３１Ｃは、第２調停装置１３１Ａと第３調停装置１３１Ｂと同様の構成を有する調停装置であって、エンコーダ１１６と高画質エンジン１１７とメモリ制御部１１８と基幹バス１２０等とに接続する。
【００７４】
なお、第４調停装置１３１Ｃは、下位の階層の調停装置が存在しないため、下位の階層から入力されるメモリ利用要求は存在しない。
＜調停装置の構成＞
第１調停装置１３０は、バスインターフェース部１５０Ａと調停部１４０とを有し、第２調停装置１３１Ａ〜第４調停装置１３１Ｃは、それぞれ、バスインターフェース部１５０Ｂ〜バスインターフェース部１５０Ｄと、調停部１４１Ａ〜調停部１４１Ｃとを有する。
【００７５】
以下、第１調停装置１３０と、第２調停装置１３１Ａ〜第４調停装置１３１Ｃとの構成の詳細について、図面を用いて説明する。
なお、第２調停装置１３１Ａ〜第４調停装置１３１Ｃとは、同様の構成をしているため、以下、特別に区別をして説明する場合を除いて、第２調停装置１３１Ａ〜第４調停装置１３１Ｃを単に調停装置１３１と呼び、バスインターフェース部１５０Ｂ〜バスインターフェース部１５０Ｄを単にバスインターフェース部１５０と呼び、調停部１４１Ａ〜調停部１４１Ｃを単に調停部１４１と呼ぶ。
【００７６】
さらに、バスインターフェース部１５０Ａも、バスインターフェース部１５０と同様の構成をしている。従って、以下、特別に区別をして説明する場合を除いて、バスインターフェース部１５０Ａも単にバスインターフェース部１５０と呼ぶ。
【００７７】
図３は、調停装置１３０、及び、調停装置１３１を構成するバスインターフェース部１５０の構成図である。
同図に示されるように、バスインターフェース部１５０は、マスタＡ３５０（例えば、バスインターフェース部１５０Ｂの場合は暗号エンジン１１２）とマスタＢ３５１（例えば、バスインターフェース部１５０Ｂの場合はストリームエンジン１１３）とプロセッサ１１０とメモリ制御部１１８と基幹バス１２０と調停部１４１とに接続し、マスタ側コマンド制御部３１０、メモリ側コマンド制御部３１１、マスタ側データ制御部３２０、メモリ側データ制御部３２１、アクノレッジ制御部３３０、設定レジスタ３４０、コマンドバッファＡ３１２Ａ、コマンドバッファＢ３１２Ｂ、データバッファＡ３２２、データバッファＢ３２３とを有する。
【００７８】
コマンドバッファＡ３１２ＡとコマンドバッファＢ３１２Ｂとは、それぞれ、マスタ側コマンド制御部３１０とメモリ側コマンド制御部３１１とアクノレッジ制御部３３０とに接続し、マスタ側コマンド制御部３１０から出力されたメモリ利用要求を一時的に記憶するためのバッファである。
【００７９】
マスタ側コマンド制御部３１０は、マスタＡ３５０とマスタＢ３５１とコマンドバッファＡ３１２ＡとコマンドバッファＢ３１２Ｂとに接続し、マスタＡからハンドシェイク方式でメモリ利用要求コマンドを受信して受信したメモリ利用要求コマンドをコマンドバッファＡ３１２Ａに書き込む機能と、マスタＢからハンドシェイク方式でメモリ利用要求コマンドを受信して受信したメモリ利用要求コマンドをコマンドバッファＢ３１２Ｂに書き込む機能とを有する。
【００８０】
メモリ側コマンド制御部３１１は、コマンドバッファＡ３１２ＡとコマンドバッファＢ３１２Ｂと調停部１４１とに接続し、クロック信号に同期して動作し、以下の２つの機能を有する。
【００８１】
機能１：クロック信号の立ち上がりのタイミングで、コマンドバッファＡ３１２Ａから、１番目に古いメモリ利用要求コマンドを読み出してマスタＡ第１メモリ利用要求コマンドとして調停部１４１に出力し、２番目に古いメモリ利用要求コマンドを読み出してマスタＡ第２メモリ利用要求コマンドとして調停部１４１に出力する機能。
【００８２】
機能２：クロック信号の立ち上がりのタイミングで、コマンドバッファＢ３１２Ｂから、１番目に古いメモリ利用要求コマンドを読み出してマスタＢ第１メモリ利用要求コマンドとして調停部１４１に出力し、２番目に古いメモリ利用要求コマンドを読み出してマスタＢ第２メモリ利用要求コマンドとして調停部１４１に出力する機能。
【００８３】
なお、機能１と機能２とにおいて、該当するメモリ利用要求コマンドがコマンドバッファに記憶されていない場合には、出力するメモリ利用要求コマンドとして、メモリ利用要求コマンドが存在しない旨を示すオール０の信号を出力する。
【００８４】
データバッファＡ３２２は、マスタ側データ制御部３２０とメモリ側データ制御部３２１とに接続する、３２Ｂｙｔｅ長のデータを一時的に記憶するＦＩＦＯ（First In First Out）バッファである。
【００８５】
データバッファＢ３２３は、マスタ側データ制御部３２０とメモリ側データ制御部３２１とに接続する、３２Ｂｙｔｅ長のデータを一時的に記憶するＦＩＦＯバッファである。
マスタ側データ制御部３２０は、マスタＡ３５０とマスタＢ３５１とデータバッファＡ３２２とデータバッファＢ３２３とに接続し、以下の３つの機能を有する。
【００８６】
機能１：マスタＡからハンドシェイク方式でデータを受信して受信したデータをデータバッファＡ３２２に書き込む機能。
機能２：マスタＢからハンドシェイク方式でデータを受信して受信したデータをデータバッファＡ３２２に書き込む機能。
【００８７】
機能３：データバッファＢ３２３にデータが保持されている場合に、古いデータから順にそのデータの宛先のマスタへハンドシェイク方式で送信する機能。
メモリ側データ制御部３２１は、データバッファＡ３２２とデータバッファＢ３２３とに接続し、クロック信号に同期して動作し、以下の２つの機能を有する。
【００８８】
機能１：クロック信号の立ち上がりのタイミングで、データバッファＡ３２２に記憶されているデータのうち、一番目に古いデータを読み出して、基幹バス１２０に出力する機能。
【００８９】
機能２：基幹バス１２０からデータを受信した場合においてそのデータがマスタＡ３５０宛てのデータ、もしくは、マスタＢ３５１宛てのデータであるとき、クロック信号の立ち上がりのタイミングで、データバッファＢ３２３にそのデータを書き込む機能。
【００９０】
アクノレッジ制御部３３０は、コマンドバッファＡ３１２ＡとコマンドバッファＢ３１２ＢとマスタＡ３５０とマスタＢ３５１とメモリ制御部１１８とに接続し、以下の２つの機能を有する。
【００９１】
機能１：メモリ制御部１１８からアクノレッジ信号を受信した場合においてそのアクノレッジ信号に含まれるマスタ識別情報２１２がマスタＡ３５０を示すものであるとき、受信したアクノレッジ信号をマスタＡ３５０に送信し、コマンドバッファＡ３１２Ａに記憶されている１番目に古いメモリ利用要求コマンドを削除する機能。
【００９２】
機能２：メモリ制御部１１８からアクノレッジ信号を受信した場合においてそのアクノレッジ信号に含まれるマスタ識別情報２１２がマスタＢ３５１を示すものであるとき、受信したアクノレッジ信号をマスタＢ３５１に送信し、コマンドバッファＢ３１２Ｂに記憶されている１番目に古いメモリ利用要求コマンドを削除する機能。
【００９３】
設定レジスタ３４０は、プロセッサ１１０と接続し、プロセッサ１１０によって制御され、コマンドバッファＡ３１２ＡとコマンドバッファＢ３１２Ｂとのそれぞれにおける一時的に記憶することができるメモリ利用要求コマンドの数と、データバッファＡ３２２とデータバッファＢ３２３とのそれぞれにおける一時的に記憶することができるデータの数とを設定するためのレジスタである。
【００９４】
図４は、調停装置１３１を構成する調停部１４１の構成図である。
同図に示されるように、調停部１４１は、バスインターフェース部１５０とメモリ制御部１１８とに接続し、さらに、第１調停候補信号線Ａ４１１Ａ（例えば、調停部１４１Ａの場合は第１調停候補信号線１６１Ａ）と第２調停候補信号線Ａ４１２Ａ（例えば、調停部１４１Ａの場合は第２調停候補信号線１６２Ａ）とを介して上位の調停部（例えば、調停部１４１Ａの場合は調停部１４０）に接続し、第１調停候補信号線Ｂ４１１Ｂ（例えば、調停部１４１Ａの場合は第１調停候補信号線１６１Ｂ）と第２調停候補信号線Ｂ４１２Ｂ（例えば調停部１４１Ａの場合は第２調停候補信号線１６２Ｂ）とを介して下位の調停部（例えば、調停部１４１Ａの場合は調停部１４１Ｂ）に接続し、第１候補調停部４００、マスク部４０１、第２候補調停部４０２、調停結果出力制御部４０３とを有する。
【００９５】
第１候補調停部４００は、バスインターフェース部１５０とマスク部４０１と調停結果出力制御部４０３と第１調停候補信号線Ｂ４１１Ｂとに接続し、第１調停候補信号線Ｂ４１１Ｂから出力される第１調停候補メモリ利用要求コマンド（後述）と、バスインターフェース部から出力されるマスタＡ第１メモリ利用要求コマンドとマスタＢ第１メモリ利用要求コマンドとを入力されると、これら３つのメモリ利用要求コマンドのうち、１番目に優先度の高いメモリ利用要求コマンドを第１コマンドとして選出し、調停結果出力制御部４０３とマスク部４０１とに出力する機能を有する。
【００９６】
図５は、各マスタと、そのマスタが発行するメモリ利用要求コマンドの優先順位との関係を示す図である。
マスタ名５０１は、各マスタのマスタ名を示し、優先順位５０２は、そのマスタが発行するメモリ利用要求コマンドの優先順位を示す。
【００９７】
第１候補調停部４００は、図５に示されるメモリ利用要求コマンドの優先順位に従って第１コマンドを選出するように予め設定されている。
マスク部４０１は、バスインターフェース部１５０と第１候補調停部４００と第２候補調停部４０２と第１調停候補信号線Ｂ４１１Ｂと第２調停候補信号線Ｂ４１２Ｂとに接続し、第１調停候補信号線Ｂ４１１Ｂから出力される第１調停候補メモリ利用要求コマンド（後述）と、第２調停候補信号線Ｂ４１２Ｂから出力される第２調停候補メモリ利用要求コマンド（後述）と、バスインターフェース部１５０から出力されるマスタＡ第１メモリ利用要求コマンドとマスタＢ第１メモリ利用要求コマンドとマスタＡ第２メモリ利用要求コマンドとマスタＢ第２メモリ利用要求コマンドとの６つのメモリ利用要求コマンドとを入力された場合において、第１候補調停部４００から出力されたメモリ利用要求コマンドを受信したとき、受信した６つのメモリ利用要求コマンドから、第１候補調停部４００から出力されたメモリ利用要求コマンドを除いた５つのメモリ利用要求コマンドを第２候補調停部４０２に出力する機能を有する。
【００９８】
第２候補調停部４０２はマスク部４０１と調停結果出力制御部４０３と第１調停候補信号線Ｂ４１１Ｂと第２調停候補信号線Ｂ４１２Ｂとに接続し、マスク部４０１から出力された５つのメモリ利用要求コマンドのうち、１番目に優先度の高いメモリ利用要求コマンドを第２コマンドとして選出し、調停結果出力制御部４０３に出力する機能を有する。
【００９９】
第２候補調停部４０２は、図５に示されるメモリ利用要求コマンドの優先順位に従い、さらに、バスインターフェース部１５０から出力されるマスタＡ第２メモリ利用要求コマンドとマスタＢ第２メモリ利用要求コマンドとでは、マスタＡ第２メモリ利用要求コマンドの方が高い優先度となり、第１調停候補信号線Ｂ４１１Ｂから出力される第１調停候補メモリ利用要求コマンド（後述）と、第２調停候補信号線Ｂ４１２Ｂから出力される第２調停候補メモリ利用要求コマンド（後述）とが同一マスタから出力されたメモリ利用要求コマンドである場合には、第１調停候補メモリ利用要求コマンドの方が高い優先度となるように第２コマンドを選出する。
【０１００】
調停結果出力制御部４０３は、第１候補調停部４００と第２候補調停部４０２とメモリ制御部１１８と第１調停候補信号線Ａ４１１Ａと第２調停候補信号線Ａ４１２Ａとに接続し、クロック信号と同期して動作し、以下の２つの機能を備える。
【０１０１】
機能１：第１候補調停部４００から第１コマンドを受信し、第２候補調停部４０２から第２コマンドを受信した場合において、これらのコマンドを受信したクロックサイクルの期間中にメモリ制御部１１８から第１コマンドに含まれるマスタ識別情報を含むアクノレッジ信号を受信しないとき、次のクロック信号の立ち上がりのタイミングで、第１コマンドを第１調停候補メモリ利用要求コマンドとして第１調停候補信号線Ａ４１１Ａに出力し、第２コマンドを第２調停候補メモリ利用要求コマンドとして第２調停候補信号線Ａ４１２Ａに出力する機能。
【０１０２】
機能２：第１候補調停部４００から第１コマンドを受信し、第２候補調停部４０２から第２コマンドを受信した場合において、これらのコマンドを受信したクロックサイクルの期間中にメモリ制御部１１８から第１コマンドに含まれるマスタ識別情報を含むアクノレッジ信号を受信したとき、次のクロック信号の立ち上がりのタイミングで、第２コマンドを第１調停候補メモリ利用要求コマンドとして第１調停候補信号線Ａ４１１Ａに出力し、オール０の信号を第２調停候補メモリ利用要求コマンドとして第２調停候補信号線Ａ４１２Ａに出力する機能。
【０１０３】
図６は、調停装置１３０を構成する調停部１４０の構成図である。
調停部１４０は、調停部１４１から、調停結果出力制御部４０３が調停結果出力制御部６０３に変更されたものである。
【０１０４】
以下、調停部１４０と調停部１４１との相違点である調停結果出力制御部６０３について説明する。
調停結果出力制御部６０３は、第１候補調停部４００と第２候補調停部４０２とメモリ制御部１１８と接続し、クロック信号と同期して動作し、以下の２つの機能を備える。
【０１０５】
機能１：第１候補調停部４００から第１コマンドを受信し、第２候補調停部４０２から第２コマンドを受信した場合において、これらのコマンドを受信したクロックサイクルの期間中にメモリ制御部１１８から第１コマンドに含まれるマスタ識別情報を含むアクノレッジ信号を受信したとき、次のクロック信号の立ち上がりのタイミングで、第１コマンドを最優先メモリ利用要求コマンドとしてメモリ制御部１１８に出力する機能。
【０１０６】
機能２：第１候補調停部４００から第１コマンドを受信し、第２候補調停部４０２から第２コマンドを受信した場合において、これらのコマンドを受信したクロックサイクルの期間中にメモリ制御部１１８から第１コマンドに含まれるマスタ識別情報を含むアクノレッジ信号を受信したとき、次のクロック信号の立ち上がりのタイミングで、第２コマンドを最優先メモリ利用要求コマンドとしてメモリ制御部１１８に出力する機能。
【０１０７】
以上のように構成されるシステムＬＳＩ１００の行う動作について、以下、図面を参照しながら説明する。
＜動作＞
ここでは、システムＬＳＩ１００の行う動作のうち、特徴的な動作である、調停装置１３１の行う階層別調停処理と、第１調停装置１３０の行う最終調停処理と、階層調停装置１０５の行う調停処理とについて説明する。
【０１０８】
＜階層別調停処理＞
図７は、調停装置１３１が行う階層別調停処理を示すフローチャートである。
この階層別調停処理は、調停装置１３１が自装置の属する階層においてメモリ利用要求コマンドの調停を行い、その調停結果として、第１調停候補メモリ利用要求コマンドと第２調停候補メモリ利用要求コマンドとを１つ上位階層の調停装置に出力する処理である。
【０１０９】
階層別調停処理は、クロック信号に同期して行われる処理であって、クロック信号の立ち上がりのタイミングでその処理を開始する。
クロック信号が立ち上がると、第１候補調停部４００は、メモリ側コマンド制御部３１１から出力されたマスタＡ第１メモリ利用要求コマンドとマスタＢ第１メモリ利用要求コマンドを受信し、下位階層の調停装置１３１の調停結果出力制御部４０３から出力された第１調停候補メモリ利用要求コマンドを受信し（ステップＳ７００）、マスク部４０１は、メモリ側コマンド制御部３１１から出力されたマスタＡ第１メモリ利用要求コマンドとマスタＡ第２メモリ利用要求コマンドとマスタＢ第１メモリ利用要求コマンドとマスタＢ第２メモリ利用要求コマンドとを受信し、下位階層の調停装置１３１の調停結果出力制御部４０３から出力された第１調停候補メモリ利用要求コマンドと第２調停候補メモリ利用要求コマンドとを受信する。
【０１１０】
第１候補調停部４００は、マスタＡ第１メモリ利用要求コマンドとマスタＢ第１メモリ利用要求コマンドと第１調停候補メモリ利用要求コマンドとを入力されると、それら３つのメモリ利用要求コマンドの中から最も優先度の高いメモリ利用要求コマンドを第１コマンドとして選択し、調停結果出力制御部４０３とマスク部４０１とに出力する（ステップＳ７０５）。
【０１１１】
マスク部４０１は、第１コマンドを入力されると、既に入力されている、マスタＡ第１メモリ利用要求コマンドとマスタＡ第２メモリ利用要求コマンドとマスタＢ第１メモリ利用要求コマンドとマスタＢ第２メモリ利用要求コマンドとマスタＡ第１メモリ利用要求コマンドとマスタＡ第２メモリ利用要求コマンドとマスタＢ第１メモリ利用要求コマンドとマスタＢ第２メモリ利用要求コマンドとの中から、入力された第１コマンドと一致するメモリ利用要求コマンドを除く５つのメモリ利用要求コマンドを選択して第２候補調停部４０２に出力する（ステップＳ７１０）。
【０１１２】
第２候補調停部４０２は、５つのメモリ利用要求コマンドが入力されると、それらの中から最も優先度の高いメモリ利用要求コマンドを選択して、第２コマンドとして調停結果出力制御部４０３に出力する（ステップＳ７１５）。
【０１１３】
調停結果出力制御部４０３は、第１候補調停部４００から第１コマンドが入力され、第２候補調停部４０２から第２コマンドが入力されると、次のクロック信号の立ち上がりのタイミングまで待機する（ステップＳ７２０）。
【０１１４】
調停結果出力制御部４０３は、クロック信号の立ち上がりのタイミングから次のクロック信号の立ち上がりのタイミングまでの期間中に、メモリ制御部１１８からアクノレッジ信号を受信した場合（ステップＳ７２５：Ｙｅｓ）において、そのアクノレッジ信号に含まれるマスタ識別情報と受信した第１コマンドに含まれるマスタ識別情報とが一致するとき（ステップＳ７３０：Ｙｅｓ）、次のクロック信号の立ち上がりのタイミングで、受信した第２コマンドを第１調停候補メモリ利用要求コマンドとして次段の調停装置１３１に出力し、メモリ利用要求コマンドが存在しない旨を示すオール０の信号を第２調停候補メモリ利用要求コマンドとして次段の調停装置１３１に出力する（ステップＳ７３５）。
【０１１５】
ステップＳ７２５において、調停結果出力制御部４０３は、次のクロック信号の立ち上がりのタイミングまでの期間中に、メモリ制御部１１８からアクノレッジ信号を受信しなかった場合（ステップＳ７２５：Ｎｏ）、又は、ステップＳ７３０において、受信したアクノレッジ信号に含まれるマスタ識別情報と受信した第１コマンドに含まれるマスタ識別情報とが一致しない場合（ステップＳ７３０：Ｎｏ）、調停結果出力制御部４０３は、次のクロック信号の立ち上がりのタイミングで、受信した第１コマンドを第１調停候補メモリ利用要求コマンドとして次段の調停装置１３１に出力し、受信した第２コマンドを第２調停候補メモリ利用要求コマンドとして次段の調停装置１３１に出力する（ステップＳ７４０）。
【０１１６】
ステップＳ７３５の処理が終了した場合、又は、ステップＳ７４０の処理が終了した場合には、調停装置１３１は、再びステップＳ７００の処理に戻ってステップＳ７００以下の処理を行う。
【０１１７】
＜最終調停処理＞
図８は、調停装置１３０が行う最終調停処理を示すフローチャートである。
この最終調停処理は、調停装置１３０が、自装置の属する最上位階層においてメモリ利用要求の調停を行い、その調停結果として、最優先メモリ利用要求コマンドをメモリ制御部１１８に出力する処理である。
【０１１８】
最終調停処理のうち、ステップＳ８００〜ステップＳ８３０の処理は、階層別調停処理における、ステップＳ７００〜ステップＳ７３０の処理において、調停結果出力制御部４０３を調停結果出力制御部６０３に読み換えたものと同様の処理である。従って、これらの処理についての説明を省略する。
【０１１９】
ステップＳ８３０において、受信したアクノレッジ信号に含まれるマスタ識別情報と受信した第１コマンドに含まれるマスタ識別情報とが一致するとき（ステップＳ８３０：Ｙｅｓ）、調停結果出力制御部６０３は、次のクロック信号の立ち上がりのタイミングで、受信した第２コマンドを最優先メモリ利用要求コマンドとしてメモリ制御部１１８に出力する（ステップＳ８３５）。
【０１２０】
ステップＳ８２５において、次のクロック信号の立ち上がりのタイミングまでの期間中に、メモリ制御部１１８からアクノレッジ信号を受信しなかった場合（ステップＳ８２５：Ｎｏ）、又は、ステップＳ８３０において、受信したアクノレッジ信号に含まれるマスタ識別情報と受信した第１コマンドに含まれるマスタ識別情報とが一致しない場合（ステップＳ８３０：Ｎｏ）、調停結果出力制御部６０３は、次のクロック信号の立ち上がりのタイミングで、受信した第１コマンドを最優先メモリ利用要求コマンドとしてメモリ制御部１１８に出力する（ステップＳ８４０）。
【０１２１】
ステップＳ８３５の処理が終了した場合、又は、ステップＳ８４０の処理が終了した場合には、調停装置１３０は、再びステップＳ８００の処理に戻ってステップＳ８００以下の処理を行う。
【０１２２】
＜調停処理＞
ここでは、階層調停装置１０５の行う調停処理について、具体例を用いて図面を参照しながら説明する。
【０１２３】
図９は、調停処理を説明するための具体例における、システムＬＳＩ１００の内部信号のタイミングチャートである。
ここで用いる具体例は、時刻Ａにおいて、第３調停装置１３１Ｂが、第１調停候補メモリ利用要求コマンドとしてコマンドＣａ９１０（外部メモリ１０１に対する読み出し要求コマンド）を出力し、第２調停候補メモリ利用要求コマンドとしてコマンドＣｂ９２０（外部メモリ１０１に対する読み出し要求コマンド）を出力した場合において、時刻Ａから時刻Ｃまでの期間に、どのマスタからも新たなメモリ利用要求コマンドが発行されなかった場合を例とするものである。
【０１２４】
時刻Ａにおいて、第３調停装置１３１Ｂが、第１調停候補メモリ利用要求コマンドとしてコマンドＣａ９１０を、第２調停候補メモリ利用要求コマンドとしてコマンドＣｂ９２０を第２調停装置１３１Ａに出力すると、第２調停装置１３１Ａは、次のクロック信号の立ち上がりのタイミングである時刻Ａ１になると、第１調停候補メモリ利用要求コマンドとしてコマンドＣａ９１１を、第２調停候補メモリ利用要求コマンドとしてコマンドＣｂ９２１を第１調停装置１３０に出力する。
【０１２５】
時刻Ａ２になると、第１調停装置１３０は、コマンドＣａ９１２を最優先コマンドとして、メモリ制御部１１８に出力する。
時刻Ｂになると、メモリ制御部１１８は、コマンドＣａ９１２に含まれるマスタ識別情報を含むアクノレッジ信号ａｃｋ＿ａ９３０を全ての調停装置に出力し、さらに、外部メモリ１０１のメモリ領域のうち、コマンドＣａ９１２に含まれる開始アドレスから６４Ｂｙｔｅのメモリ領域に記憶されているデータＤａ９４０を、２サイクルかけて読み出して２サイクルかけてバス幅３２Ｂｙｔｅの基幹バス１２０に出力する。
【０１２６】
メモリ制御部１１８から出力されたアクノレッジ信号ａｃｋ＿ａ９３０は、時刻Ｂから時刻Ｂ１までの期間のうちに、全ての調停装置１３０によって受信される。
メモリ制御部１１８から出力されたアクノレッジ信号ａｃｋ＿ａ９３０を受信した第１調停装置１３０は、時刻Ｂ１になると、出力する最優先コマンドを、コマンドＣａ９１２からコマンドＣｂ９２４に切り替えて出力する。
【０１２７】
時刻Ｃになると、メモリ制御部１１８は、コマンドＣｂ９２４に含まれるマスタ識別情報を含むアクノレッジ信号ａｃｋ＿ｂ９３１を全ての調停装置に出力し、さらに、外部メモリ１０１のメモリ領域のうち、コマンドＣｂ９２４に含まれる開始アドレスから６４Ｂｙｔｅのメモリ領域に記憶されているデータＤｂ９４１を、２サイクルかけて読み出して２サイクルかけてバス幅３２Ｂｙｔｅの基幹バス１２０に出力する。
【０１２８】
このように、メモリ制御部１１８は、外部メモリ１０１から、データＤａ９４０とデータＤｂ９４１とを連続して読み出して基幹バス１２０に出力するため、外部メモリ１０１がデータＤａ９４０を出力する期間とデータＤｂ９４１を出力する期間との間にバブル現象は発生しない。
【０１２９】
＜従来例における調停処理＞
階層調停装置１０５が行う調停処理と、従来型の階層調停装置が行う従来の調停処理との相違点を説明するために、従来型の階層調停装置が行う従来の調停処理について具体例を用いて図面を参照しながら説明する。
【０１３０】
ここでは、階層調停装置１０５を構成する調停装置１３０、調停装置１３１Ａ〜調停装置１３１Ｃが、受け付けたメモリ利用要求の中で１番目に優先度の高いメモリ利用要求のみを上位側の階層の調停装置へ出力し、２番目に優先度の高いメモリ利用要求を出力しないと機能制限されている場合における調停処理の具体例を、従来型の階層調停装置が行う従来の調停処理の具体例であるとして説明する。
【０１３１】
図１０は、調停処理を説明するための具体例における、機能制限された調停装置１３０、機能制限された調停装置１３１Ａ〜調停装置１３１Ｃを有するシステムＬＳＩ１００の内部信号のタイミングチャートである。
【０１３２】
ここで用いる具体例は、時刻Ａにおいて、機能制限された第３調停装置１３１Ｂが、第１調停候補メモリ利用要求コマンドとしてコマンドＣａ１０１０（外部メモリ１０１に対する読み出し要求コマンド）を出力した場合において、時刻Ａから時刻Ｃまでの期間に、どのマスタからも新たなメモリ利用要求コマンドが発行されなかった場合を例とするものである。
【０１３３】
ただし、機能制限された第３調停装置１３１Ｂは、時刻Ａにおいて、コマンドＣａより優先順位の低いコマンドであるコマンドＣｂを記憶しているが、機能が制限されているために第２調停メモリ利用要求コマンドとして出力できない状態であるものとする。
【０１３４】
時刻Ａにおいて、機能制限された第３調停装置１３１Ｂが、第１調停候補コマンドとしてコマンドＣａ１０１０を機能制限された第２調停装置１３１Ａに出力すると、機能制限された第２調停装置１３１Ａは、時刻Ａ１になると、第１調停候補コマンドとしてコマンドＣａ１０１１を機能制限された第１調停装置１３０に出力する。
【０１３５】
時刻Ａ２になると、機能制限された第１調停装置１３０は、コマンドＣａ１０１２を最優先コマンドとして、メモリ制御部１１８に出力する。
時刻Ｂになると、メモリ制御部１１８は、コマンドＣａ１０１２に含まれるマスタ識別情報を含むアクノレッジ信号ａｃｋ＿ａ１０３０を全ての機能制限された調停装置に出力し、さらに、外部メモリ１０１のメモリ領域のうち、コマンドＣａ１０１２に含まれる開始アドレスから６４Ｂｙｔｅのメモリ領域に記憶されているデータＤａ１０４０を、２サイクルかけて読み出して基幹バス１２０に出力する。
【０１３６】
メモリ制御部１１８から出力されたアクノレッジ信号ａｃｋ＿ａ１０３０を受信した機能制限された第３調停装置１３１Ｂは、時刻Ｂ１にコマンドＣｂ１０２０を出力する。
機能制限された第３調停装置１３１Ｂが、第１調停候補コマンドとしてコマンドＣｂ１０２０を機能制限された第２調停装置１３１Ａに出力すると、機能制限された第２調停装置１３１Ａは、時刻Ｃになると、第１調停候補コマンドとしてコマンドＣａ１０１１を機能制限された第１調停装置１３０に出力する。
【０１３７】
時刻Ｃ１になると、機能制限された第１調停装置１３０は、コマンドＣｂ１０２２を最優先コマンドとして、メモリ制御部１１８に出力する。
時刻Ｄになると、メモリ制御部１１８は、コマンドＣｂ１０２２に含まれるマスタ識別情報を含むアクノレッジ信号ａｃｋ＿ｂ１０３１を全ての機能制限された調停装置に出力し、さらに、外部メモリ１０１のメモリ領域のうち、コマンドＣｂ１０２２に含まれる開始アドレスから６４Ｂｙｔｅのメモリ領域に記憶されているデータＤｂ１０４２を、２サイクルかけて読み出して基幹バス１２０に出力する。
【０１３８】
このように、メモリ制御部１１８は、外部メモリ１０１から、データＤａ１０４０とデータＤｂ１０４２とを読み出す間に、データを出力しない期間が２サイクル発生してしまう（２サイクルバブル現象が発生してしまう）。
【０１３９】
すなわち、機能制限された第３調停装置１３１Ｂが調停結果を出力してから次の調停結果を出力するまでの期間（機能制限された第３調停装置１３１Ｂのレイテンシ）である４サイクルと、マスタが外部メモリ１０１を利用する期間である２サイクルとの差である２サイクルの期間、バブル現象が発生する。
【０１４０】
＜まとめ＞
上述のシステムＬＳＩ１００によれば、上記具体例で示されるように、例えば、第３調停装置１３１Ｂが調停結果を出力してから次の調停結果を出力するまでの期間（第３調停装置１３１Ｂのレイテンシ）が４サイクルである場合において、マスタが外部メモリ１０１を利用する期間が２サイクルであっても、従来例で発生していたバブル現象が発生しなくなるというように、従来に比べてバブル現象の発生頻度を少なくすることができる。
【０１４１】
６４Ｂｙｔｅのデータサイズを更に大きい１２８Ｂｙｔｅ等にする手法も考えられるが、この場合はバスインタフェース部のデータバッファの容量が大きくなってしまい回路面積コストが増加する。また、データサイズを１２８Ｂｙｔｅにすることにより４サイクルの外部メモリを占有するためプロセッサなどの優先度が高くメモリアクセス要求開始からデータ応答時間が短いことが性能に直結するマスタは性能が劣化してしまう。
【０１４２】
従って、システムＬＳＩ１００の各マスタは、従来よりも効率よく外部メモリ１０１を利用することができるようになる。
このシステムＬＳＩ１００は、画像処理に係る機能を有するマスタを備え、外部メモリ１０１を効率よく利用することができるものであるため、例えば、ブルーレイレコーダシステムといった、メモリを利用して画像処理を行うシステム等で利用されるのが有用である。
＜実施の形態２＞
以下、本発明に係る調停装置の一実施形態として、実施の形態１に係るシステムＬＳＩ１００の一部を変形した実施の形態２に係る第１変形システムＬＳＩについて説明する。
【０１４３】
第１変形システムＬＳＩは、構成する調停装置のうち、第１調停メモリ利用要求コマンドを出力してから、その第１調停メモリ利用要求コマンドに対する応答信号であるアクノレッジ信号を受信するまでに必要となる遅延時間が所定時間以上とならない調停装置は、第２調停メモリ利用要求コマンドとして常にオール０の信号を出力するという例である。
【０１４４】
このような構成となっているのは、調停装置において、第１調停メモリ利用要求コマンドを出力してからその第１調停メモリ利用要求コマンドに対する応答信号であるアクノレッジ信号を受信して次の第１調停メモリ利用要求コマンドを出力するまでのクロックサイクル数がマスタによるメモリの利用クロックサイクル数以下となる場合には、その調停装置が第２調停メモリ利用要求コマンドを出力しなくても、前述のバブル現象が発生しないためである。
【０１４５】
以下、本実施の形態２に係る第１変形システムＬＳＩの構成について、実施の形態１に係るシステムＬＳＩ１００との相違点を中心に、図面を参照しながら説明する。
＜構成＞
実施の形態２に係る第１変形システムＬＳＩと実施の形態１に係るシステムＬＳＩとの相違点は、（１）調停装置１３１が調停装置１１３１に変更されている点と、（２）各マスタによるメモリ領域への書き込みサイズ、及び、読み出しサイズが６４Ｂｙｔｅの固定長から９６Ｂｙｔｅの固定長に変更されている点とである。
【０１４６】
基幹バス１２０のバス幅は３２Ｂｙｔｅなので、９６Ｂｙｔｅのデータを転送する場合に、基幹バス１２０は３サイクルかけてデータの転送を行う。
図１１は、調停装置１１３１の構成図である。
【０１４７】
調停装置１１３１は、実施の形態１における調停装置１３１の一部が変形されたものであって、調停装置１３１から調停部１４１が調停部１１４１と入れ替えられたものである。
【０１４８】
調停部１１４１は、実施の形態１における調停部１４１の一部が変形されたものであって、調停部１４１に設定レジスタ１１０４が追加され、調停結果出力制御部４０３が調停結果出力制御部１１０３と入れ替えられたものである。
【０１４９】
設定レジスタ１１０４は、プロセッサ１１０と調停結果出力制御部１１０３とに接続し、プロセッサ１１０によって設定されるクロックサイクル数を記憶する機能を有する。
ここで、プロセッサ１１０によって設定されるクロックサイクル数とは、調停部１１４１の属する調停装置１１３１が第１調停メモリ利用要求コマンドを出力した場合においてその第１調停メモリ利用要求コマンドに対する応答信号であるアクノレッジ信号を受信するとき、その第１調停メモリ利用要求コマンドを出力してから、そのアクノレッジ信号を受信するまでに必要となるクロックサイクル数のことをいう。
【０１５０】
調停結果出力制御部１１０３は、第１候補調停部４００と第２候補調停部４０２とメモリ制御部１１８と第１調停候補信号線Ａ４１１Ａと第２調停候補信号線Ａ４１２Ａと設定レジスタ１１０４とに接続し、クロック信号と同期して動作し、以下の３つの機能を備える。
【０１５１】
機能１：第１候補調停部４００から第１コマンドを受信し、第２候補調停部４０２から第２コマンドを受信した場合において、これらのコマンドを受信したクロックサイクルの期間中にメモリ制御部１１８から第１コマンドに含まれるマスタ識別情報を含むアクノレッジ信号を受信しないときに、設定レジスタ１１０４に設定されているクロックサイクル数が所定値４以上であれば、次のクロック信号の立ち上がりのタイミングで、第１コマンドを第１調停候補メモリ利用要求コマンドとして第１調停候補信号線Ａ４１１Ａに出力し、第２コマンドを第２調停候補メモリ利用要求コマンドとして第２調停候補信号線Ａ４１２Ａに出力する機能。
【０１５２】
機能２：第１候補調停部４００から第１コマンドを受信し、第２候補調停部４０２から第２コマンドを受信した場合において、これらのコマンドを受信したクロックサイクルの期間中にメモリ制御部１１８から第１コマンドに含まれるマスタ識別情報を含むアクノレッジ信号を受信しないときに、設定レジスタ１１０４に設定されているクロックサイクル数が所定値４以上でなければ、第１コマンドを第１調停候補メモリ利用要求コマンドとして第１調停候補信号線Ａ４１１Ａに出力し、オール０の信号を第２調停候補メモリ利用要求コマンドとして第２調停候補信号線Ａ４１２Ａに出力する機能。
【０１５３】
機能３：第１候補調停部４００から第１コマンドを受信し、第２候補調停部４０２から第２コマンドを受信した場合において、これらのコマンドを受信したクロックサイクルの期間中にメモリ制御部１１８から第１コマンドに含まれるマスタ識別情報を含むアクノレッジ信号を受信したとき、次のクロック信号の立ち上がりのタイミングで、第２コマンドを第１調停候補メモリ利用要求コマンドとして第１調停候補信号線Ａ４１１Ａに出力し、オール０の信号を第２調停候補メモリ利用要求コマンドとして第２調停候補信号線Ａ４１２Ａに出力する機能。
【０１５４】
以上のように構成される第１変形システムＬＳＩの行う動作について、以下、図面を参照しながら説明する。
＜動作＞
ここでは、第１変形システムＬＳＩの行う動作のうち、特徴的な動作である、調停装置１１３１の行う第１変形階層別調停処理と、実施の形態２に係る階層調停装置の行う第１変形調停処理とについて説明する。
【０１５５】
＜第１変形階層別調停処理＞
第１変形階層別調停処理は、調停装置１３１が行う階層別調停処理の一部が変形されたものである。
【０１５６】
図１２、図１３は、調停装置１１３１が行う第１変形階層別調停処理を示すフローチャートである。
第１変形階層別調停処理のうち、ステップＳ１２００〜ステップＳ１２３０の処理は、階層別調停処理における、ステップＳ７００〜ステップＳ７３０の処理において、調停結果出力制御部４０３を調停結果出力制御部１１０３に読み換えたものと同様の処理である。従って、これらの処理についての説明を省略する。
【０１５７】
ステップＳ１２３０において、受信したアクノレッジ信号に含まれるマスタ識別情報と受信した第１コマンドに含まれるマスタ識別情報とが一致するとき（ステップＳ１２３０：Ｙｅｓ）、調停結果出力制御部１１０３は、次のクロック信号の立ち上がりのタイミングで、受信した第２コマンドを第１調停候補メモリ利用要求コマンドとして次段の調停装置１１３１に出力し、メモリ利用要求コマンドが存在しない旨を示すオール０の信号を第２調停候補メモリ利用要求コマンドとして次段の調停装置１１３１に出力する（ステップＳ１３００）。
【０１５８】
ステップＳ１２２５において、次のクロック信号の立ち上がりのタイミングまでの期間中に、メモリ制御部１１８からアクノレッジ信号を受信しなかった場合（ステップＳ１２２５：Ｎｏ）、又は、ステップＳ１２３０において、受信したアクノレッジ信号に含まれるマスタ識別情報と受信した第１コマンドに含まれるマスタ識別情報とが一致しない場合（ステップＳ１２３０：Ｎｏ）、調停結果出力制御部１１０３は、設定レジスタ１１０４に設定されているクロックサイクル数が所定値４以上であるか否かを調べる（ステップＳ１２３５）。
【０１５９】
ステップＳ１２３５において、設定レジスタ１１０４に設定されているクロックサイクル数が４以上である場合（ステップＳ１２３５：Ｙｅｓ）には、調停結果出力制御部１１０３は、次のクロック信号の立ち上がりのタイミングで、受信した第１コマンドを第１調停候補メモリ利用要求コマンドとして次段の調停装置１１３１に出力し、受信した第２コマンドを第２調停候補メモリ利用要求コマンドとして次段の調停装置１１３１に出力する（ステップＳ１３０５）。
【０１６０】
ステップＳ１２３５において、設定レジスタ１１０４に設定されているクロックサイクル数が４以上でない場合（ステップＳ１２３５：Ｎｏ）には、調停結果出力制御部１１０３は、次のクロック信号の立ち上がりのタイミングで、受信した第１コマンドを第１調停候補メモリ利用要求コマンドとして次段の調停装置１１３１に出力し、メモリ利用要求コマンドが存在しない旨を示すオール０の信号を第２調停候補メモリ利用要求コマンドとして次段の調停装置１１３１に出力する（ステップＳ１３１０）。
【０１６１】
＜第１変形調停処理＞
ここでは、実施の形態２に係る階層調停装置の行う第１変形調停処理について、具体例を用いて図面を参照しながら説明する。
【０１６２】
図１４は、第１変形調停処理を説明するための具体例における、第１変形システムＬＳＩの内部信号のタイミングチャートである。
ここで用いる具体例は、時刻Ａにおいて、第３調停装置１１３１Ｂが、第１調停候補メモリ利用要求コマンドとしてコマンドＣａ１４１０（外部メモリ１０１に対する読み出し要求コマンド）を出力し、第２調停候補メモリ利用要求コマンドとしてコマンドＣｂ１４２０（外部メモリ１０１に対する読み出し要求コマンド）を出力した場合において、時刻Ａから時刻Ｃまでの期間に、どのマスタからも新たなメモリ利用要求コマンドが発行されなかった場合を例とするものである。
【０１６３】
時刻Ａにおいて、第３調停装置１１３１Ｂが、第１調停候補メモリ利用要求コマンドとしてコマンドＣａ１４１０を、第２調停候補メモリ利用要求コマンドとしてコマンドＣｂ１４２０を第２調停装置１１３１Ａに出力すると、第２調停装置１１３１Ａは、次のクロック信号の立ち上がりのタイミングである時刻Ａ１になると、第１調停候補メモリ利用要求コマンドとしてコマンドＣａ１４１１を、第２調停候補メモリ利用要求コマンドとしてオール０の信号を第１調停装置１３０に出力する。
【０１６４】
時刻Ａ２になると、第１調停装置１３０は、コマンドＣａ１４１２を最優先コマンドとして、メモリ制御部１１８に出力する。
時刻Ｂになると、メモリ制御部１１８は、コマンドＣａ１４１２に含まれるマスタ識別情報を含むアクノレッジ信号ａｃｋ＿ａ１４３０を全ての調停装置に出力し、さらに、外部メモリ１０１のメモリ領域のうち、コマンドＣａ１４１２に含まれる開始アドレスから９６Ｂｙｔｅのメモリ領域に記憶されているデータＤａ１４４０を、３サイクルかけて読み出して３サイクルかけてバス幅３２Ｂｙｔｅの基幹バス１２０に出力する。
【０１６５】
メモリ制御部１１８から出力されたアクノレッジ信号ａｃｋ＿ａ１４３０は、時刻Ｂから時刻Ｂ１までの期間のうちに、全ての調停装置１３０によって受信される。
メモリ制御部１１８から出力されたアクノレッジ信号ａｃｋ＿ａ１４３０を受信した第２調停装置１１３１Ａは、時刻Ｂ１になると、出力する最優先コマンドを、コマンドＣａ９１２からコマンドＣｂ１４２２に切り替えて出力する。
【０１６６】
時刻Ｂ２になると、第１調停装置１３０は、コマンドＣｂ１４２３を最優先コマンドとして、メモリ制御部１１８に出力する。
時刻Ｃになると、メモリ制御部１１８は、コマンドＣｂ１４２３に含まれるマスタ識別情報を含むアクノレッジ信号ａｃｋ＿ｂ１４３１を全ての調停装置に出力し、さらに、外部メモリ１０１のメモリ領域のうち、コマンドＣｂ１４２４に含まれる開始アドレスから９６Ｂｙｔｅのメモリ領域に記憶されているデータＤｂ１４４１を、３サイクルかけて読み出して３サイクルかけてバス幅３２Ｂｙｔｅの基幹バス１２０に出力する。
【０１６７】
このように、メモリ制御部１１８は、外部メモリ１０１から、データＤａ１４４０とデータＤｂ１４４１とを連続して読み出して基幹バス１２０に出力するため、外部メモリ１０１がデータＤａ１４４０を出力する期間とデータＤｂ１４４１を出力する期間との間にバブル現象は発生しない。
【０１６８】
＜まとめ＞
上述の第１変形システムＬＳＩによれば、上記具体例で示されるように、例えば、第３調停装置１１３１Ｂが調停結果を出力してから次の調停結果を出力するまでの期間（第３調停装置１１３１Ｂのレイテンシ）が４サイクルである場合において、マスタが外部メモリ１０１を利用する期間が３サイクルであっても、バブル現象が発生しない。
【０１６９】
上記構成は全マスタで同一の固定データ長９６Ｂｙｔｅとして説明しているが、実際の構成ではマスタ毎に異なる固定データ長を選択することも可能であり、その場合は設定レジスタがマスタの数だけ存在することになる。
【０１７０】
さらに、上述の第１変形システムＬＳＩによれば、第２調停装置１１３１Ａは、第２調停メモリ利用要求コマンドとして常にオール０の信号を出力するので、第２調停装置が第２調停メモリ利用要求コマンドとしてオール０の信号以外の信号を出力する構成の場合に比べて、消費電力を少なくすることができる。
＜実施の形態３＞
以下、本発明に係る調停装置の一実施形態として、実施の形態２に係る第１変形システムＬＳＩの一部を変形した実施の形態３に係る第２変形システムＬＳＩについて説明する。
【０１７１】
第２変形システムＬＳＩは、構成する各調停装置が、第１調停メモリ利用要求コマンドを出力してからその第１調停メモリ利用要求コマンドに対する応答信号であるアクノレッジ信号を受信して次の第１調停メモリ利用要求コマンドを出力するまでのクロックサイクル数がマスタによるメモリの利用クロックサイクル数以下となる場合には、第２調停メモリ利用要求コマンドを出力しないというものである。
【０１７２】
第１変形システムＬＳＩでは、各マスタによるメモリ領域へのアクセスは９６Ｂｙｔｅの固定長サイズであったが、第２変形システムＬＳＩでは、各マスタによるメモリ領域へのアクセスは可変長サイズとなっている。
【０１７３】
以下、本実施の形態３に係る第２変形システムＬＳＩの構成について、実施の形態２に係る第１変形システムＬＳＩとの相違点を中心に、図面を参照しながら説明する。
＜構成＞
実施の形態３に係る第２変形システムＬＳＩと実施の形態２に係る第１変形システムＬＳＩとの相違点は、（１）調停装置１１３１が調停装置１６３１に変更されている点と、（２）各マスタによるメモリ領域への書き込み、及び、読み出しが、３２Ｂｙｔｅを単位とする可変長アクセスに変更されている点とである。
【０１７４】
図１５は、各マスタが出力するメモリ利用要求コマンドのデータ構造図である。
同図に示されるように、メモリ利用要求コマンドは、開始アドレス１５０１と、バースト長情報１５０２と、マスタ識別情報１５０３と、命令種情報１５０４とから構成される。
【０１７５】
開始アドレス１５０１は、実施の形態１における開始アドレス１２０１と同様のものであり、マスタ識別情報１５０３は、実施の形態１におけるマスタ識別情報２０２と同様のものであり、命令種情報１５０４は、実施の形態１における命令種情報２０３と同様のものである。従って、これらについての説明を省略する。
【０１７６】
バースト長情報１５０２は、利用するメモリ領域の大きさを、３２Ｂｙｔｅ単位で示すための６ビットのデータである。
例えば、利用するメモリ領域の大きさが９６Ｂｙｔｅの場合には、”000011”となる。
【０１７７】
図１６は、調停装置１６３１の構成図である。
調停装置１６３１は、実施の形態２における調停装置１１３１の一部が変形されたものであって、調停装置１１３１から調停部１１４１が調停部１６４１と入れ替えられたものである。
【０１７８】
調停部１６４１は、実施の形態２における調停部１１４１の一部が変形されたものであって、調停部１１４１から調停結果出力制御部１１０３が調停結果出力制御部１６０３と入れ替えられたものである。
【０１７９】
調停結果出力制御部１６０３は、第１候補調停部４００と第２候補調停部４０２とメモリ制御部１１８と第１調停候補信号線Ａ４１１Ａと第２調停候補信号線Ａ４１２Ａと設定レジスタ１１０４とに接続し、クロック信号と同期して動作し、以下の３つの機能を備える。
【０１８０】
機能１：第１候補調停部４００から第１コマンドを受信し、第２候補調停部４０２から第２コマンドを受信した場合において、これらのコマンドを受信したクロックサイクルの期間中にメモリ制御部１１８から第１コマンドに含まれるマスタ識別情報を含むアクノレッジ信号を受信しないときに、第１コマンドに含まれるバースト長情報の値が設定レジスタ１１０４に設定されているクロックサイクル数より大きければ、次のクロック信号の立ち上がりのタイミングで、第１コマンドを第１調停候補メモリ利用要求コマンドとして第１調停候補信号線Ａ４１１Ａに出力し、第２コマンドを第２調停候補メモリ利用要求コマンドとして第２調停候補信号線Ａ４１２Ａに出力する機能。
【０１８１】
機能２：第１候補調停部４００から第１コマンドを受信し、第２候補調停部４０２から第２コマンドを受信した場合において、これらのコマンドを受信したクロックサイクルの期間中にメモリ制御部１１８から第１コマンドに含まれるマスタ識別情報を含むアクノレッジ信号を受信しないときに、第１コマンドに含まれるバースト長情報の値が設定レジスタ１１０４に設定されているクロックサイクル数より大きくなければ、第１コマンドを第１調停候補メモリ利用要求コマンドとして第１調停候補信号線Ａ４１１Ａに出力し、オール０の信号を第２調停候補メモリ利用要求コマンドとして第２調停候補信号線Ａ４１２Ａに出力する機能。
【０１８２】
機能３：第１候補調停部４００から第１コマンドを受信し、第２候補調停部４０２から第２コマンドを受信した場合において、これらのコマンドを受信したクロックサイクルの期間中にメモリ制御部１１８から第１コマンドに含まれるマスタ識別情報を含むアクノレッジ信号を受信したとき、次のクロック信号の立ち上がりのタイミングで、第２コマンドを第１調停候補メモリ利用要求コマンドとして第１調停候補信号線Ａ４１１Ａに出力し、オール０の信号を第２調停候補メモリ利用要求コマンドとして第２調停候補信号線Ａ４１２Ａに出力する機能。
【０１８３】
以上のように構成される第２変形システムＬＳＩの行う動作について、以下、図面を参照しながら説明する。
＜動作＞
ここでは、第２変形システムＬＳＩの行う動作のうち、特徴的な動作である、調停装置１６３１の行う第２変形階層別調停処理について説明する。
【０１８４】
＜第２変形階層別調停処理＞
第２変形階層別調停処理は、調停装置１１３１が行う第１変形階層別調停処理の一部が変形されたものである。
【０１８５】
図１７、図１８は、調停装置１６３１が行う第２変形階層別調停処理を示すフローチャートである。
第２変形階層別調停処理のうち、ステップＳ１７００〜ステップＳ１７３０の処理は、第１変形階層別調停処理における、ステップＳ１２００〜ステップＳ１２３０の処理において、調停結果出力制御部１１０３を調停結果出力制御部１６０３に読み換えたものと同様の処理である。従って、これらの処理についての説明を省略する。
【０１８６】
ステップＳ１７３０において、受信したアクノレッジ信号に含まれるマスタ識別情報と受信した第１コマンドに含まれるマスタ識別情報とが一致するとき（ステップＳ１７３０：Ｙｅｓ）、調停結果出力制御部１６０３は、次のクロック信号の立ち上がりのタイミングで、受信した第２コマンドを第１調停候補メモリ利用要求コマンドとして次段の調停装置１６３１に出力し、メモリ利用要求コマンドが存在しない旨を示すオール０の信号を第２調停候補メモリ利用要求コマンドとして次段の調停装置１６３１に出力する（ステップＳ１８００）。
【０１８７】
ステップＳ１７２５において、次のクロック信号の立ち上がりのタイミングまでの期間中に、メモリ制御部１１８からアクノレッジ信号を受信しなかった場合（ステップＳ１７２５：Ｎｏ）、又は、ステップＳ１７３０において、受信したアクノレッジ信号に含まれるマスタ識別情報と受信した第１コマンドに含まれるマスタ識別情報とが一致しない場合（ステップＳ１７３０：Ｎｏ）、調停結果出力制御部１６０３は、第１コマンドに含まれるバースト長情報の値と設定レジスタ１１０４に設定されているクロックサイクル数とを比較する（ステップＳ１７３５）。
【０１８８】
ステップＳ１７２５において、第１コマンドに含まれるバースト長情報の値が設定レジスタ１１０４に設定されているクロックサイクル数より大きい場合（ステップＳ１７３５：Ｙｅｓ）には、調停結果出力制御部１６０３は、次のクロック信号の立ち上がりのタイミングで、受信した第１コマンドを第１調停候補メモリ利用要求コマンドとして次段の調停装置１６３１に出力し、受信した第２コマンドを第２調停候補メモリ利用要求コマンドとして次段の調停装置１６３１に出力する（ステップＳ１８０５）。
【０１８９】
ステップＳ１７２５において、第１コマンドに含まれるバースト長情報の値が設定レジスタ１１０４に設定されているクロックサイクル数より大きくない場合（ステップＳ１７３５：Ｎｏ）には、調停結果出力制御部１６０３は、次のクロック信号の立ち上がりのタイミングで、受信した第１コマンドを第１調停候補メモリ利用要求コマンドとして次段の調停装置１６３１に出力し、メモリ利用要求コマンドが存在しない旨を示すオール０の信号を第２調停候補メモリ利用要求コマンドとして次段の調停装置１６３１に出力する（ステップＳ１８１０）。
【０１９０】
＜まとめ＞
上述の第２変形システムＬＳＩによれば、調停装置１６３１は、第１調停メモリ利用要求コマンドを出力してからその第１調停メモリ利用要求コマンドに対する応答信号であるアクノレッジ信号を受信して次の第１調停メモリ利用要求コマンドを出力するまでのクロックサイクル数がマスタによるメモリの利用クロックサイクル数より大きくならない場合には、第２調停メモリ利用要求コマンドとしてオール０の信号を出力するので、各調停装置が第２調停メモリ利用要求コマンドとしてオール０の信号以外の信号を出力する構成の場合に比べて、消費電力を少なくすることができる。
＜補足＞
以上、本実施に係る調停装置の一実施形態として、実施の形態１〜実施の形態３を用いて階層調停装置を備えるシステムＬＳＩについて説明したが、以下のように変形することも可能であり、本発明は上述した実施の形態で示した通りの調停装置に限られないことはもちろんである。
（１）実施の形態１において、プロセッサと出画エンジンと暗号エンジンとストリームエンジンとデコーダとエンコーダと高画質エンジンとをマスタとする例について説明したが、必ずしもこれらのものに限定される必要はなく、例えば、画像再生装置、デジタルチューナ等といった、スレーブをリソースとして利用する機能を有するものであれば、どんなものでもマスタとなり得る。
（２）実施の形態１において、外部メモリをスレーブとする例について説明したが、必ずしも外部メモリに限定される必要はなく、例えば、内蔵メモリ、暗号エンジン、デコーダ、画像再生装置、デジタルチューナ、ＤＡ（Digital to Analog）変換機、ＵＳＢ（Universal Serial Bus）インターフェース、乗算回路等といった、マスタによって利用される機能を有するものであれば、どんなものでもスレーブとなり得る。
（３）実施の形態１において、基幹バス１２０は３２Ｂｙｔｅの双方向バスであるとしたが、必ずしも双方向バスに限定される必要はなく、例えば、スレーブのデータをマスタへ伝達する信号線群とマスタのデータをスレーブへ伝達する信号線群との２種類の信号線群からなる構造を有するバス、リング型構造を有するバス、クロスバ型構造を有するバスといった、データを伝達する機能があるバスであれば、どのようなタイプのバスでも基幹バスとなり得る。
【０１９１】
また、基幹バス１２０のバス幅は必ずしも３２Ｂｙｔｅに限定されるものではなく、例えば４Ｂｙｔｅ、２５６Ｂｙｔｅ等であっても構わない。
（４）実施の形態１において、階層調停装置１０５が４つの調停装置が直列に接続されている構成の例について説明したが、調停装置が２つ以上直列に接続されている構成であれば、必ずしも直列に接続される調停装置の数は４に限られず、例えば３や６であっても構わない。
（５）実施の形態１において、調停装置１３１は、１番目に優先度の高いメモリ利用要求コマンドと２番目に優先度の高いメモリ利用要求コマンドとの２つのメモリ利用要求コマンドを出力することができる構成の場合を例として説明したが、１番目に優先度の高いメモリ利用要求コマンドと２番目に優先度の高いメモリ利用要求コマンドとを出力することができる構成であれば、３番目以降の優先度の高いメモリ利用要求コマンドをも出力することができる構成としても構わない。
（６）実施の形態１において、第１候補調停部４００と第２候補調停部４０２とは、１番目に優先度の高いメモリ利用要求コマンドを選択するアルゴリズムとして、予め定められた優先順位に係る情報に基づいて行うアルゴリズムである例を示したが、例えば、ＥＤＦ（Earliest Deadline First）手法といったアルゴリズムのように、１番目に優先度の高いメモリ利用要求コマンドを一意に選択することができるアルゴリズムであれば、必ずしも予め定められた優先順位に係る情報に基づいて１番目に優先度の高いメモリ利用要求コマンドを選択するアルゴリズムでなくても構わない。
（７）実施の形態１において、メモリ制御部１１８から出力されるアクノレッジ信号は、出力されるクロックサイクル中に全ての調停装置によって受信される構成の例について説明したが、必ずしも出力されるクロックサイクル中に全ての調停装置によって受信される構成である必要はなく、全ての調停装置によって受信される構成であれば構わない。
【０１９２】
例えば、メモリ制御部１１８からの物理的距離に応じて、物理的距離がより大きい調停装置ほど、アクノレッジ信号が出力されてからそのアクノレッジ信号を受信するまでのクロックサイクル数がより大きくなるという構成が考えられる。
（８）実施の形態１において、システムＬＳＩ１００を構成する構成要素が、１つのＬＳＩであるシステムＬＳＩ１００に集積されている例を用いて説明したが、システムＬＳＩ１００と同様の機能を実現することができるシステムであれば、必ずしも１つのＬＳＩに集積されている必要はなく、例えば、構成要素のそれぞれが、それぞれ互いに異なるＬＳＩに集積されている構成であっても構わない。
（９）実施の形態１〜実施の形態３で説明したシステムＬＳＩ１００、第１変形システムＬＳＩ、第２変形システムＬＳＩは、例えば、ブルーレイレコーダシステム、携帯電話機、車載端末等といった、様々なシステムによって利用されることが有用である。
【０１９３】
図１９は、システムＬＳＩ１００を利用したブルーレイレコーダシステム１９００の構成図である。
（１０）実施の形態１〜実施の形態３で説明したシステムＬＳＩ１００は、第１調停装置１３０、第２調停装置１３１Ａ〜第４調停装置１３１Ｃが、互いに共通のクロック信号に同期して動作する例について説明したが、必ずしも各調停装置が互いに共通のクロック信号に同期して動作する構成に限定される必要はない。
【０１９４】
例えば、各調停装置が、それぞれ互いに独立な周波数のクロック信号に同期して動作するとしても構わないし、さらには、調停装置を構成する各構成要素が、それぞれ互いに独立な周波数のクロック信号に同期して動作するとしても構わない。
（１１）実施の形態１〜実施の形態３で説明したシステムＬＳＩ１００は、第２調停装置１３１Ａ〜第４調停装置１３１Ｃが、第１調停候補信号線を用いて第１調停候補メモリ利用要求コマンドを出力し、第２調停候補信号線を用いて第２調停候補メモリ利用要求コマンドを出力する構成の例について説明したが、必ずしも互いに異なる２つの信号線を用いて、第１調停候補メモリ利用要求コマンドと第２調停候補メモリ利用要求コマンドとを出力する構成に限定される必要はない。
【０１９５】
例えば、各調停装置が、１つの信号線を用いて、２クロックサイクルをかけて第１調停候補メモリ利用要求コマンドと第２調停候補メモリ利用要求コマンドとをシリアルに出力する構成であっても構わない。
【産業上の利用可能性】
【０１９６】
本発明は、複数のマスタがスレーブであるリソースを共用するシステムに広く利用することができる。
【符号の説明】
【０１９７】
１００  システムＬＳＩ
１０１  外部メモリ
１０５  階層調停装置
１１０  プロセッサ
１１１  出画エンジン
１１２  暗号エンジン
１１３  ストリームエンジン
１１４  デコーダＡ
１１５  デコーダＢ
１１６  エンコーダ
１１７  高画質エンジン
１１８  メモリ制御部
１２０  基幹バス
１３０  第１調停装置
１３１Ａ  第２調停装置
１３１Ｂ  第３調停装置
１３１Ｃ  第４調停装置
１４０  調停部
１４１Ａ〜１４１Ｃ  調停部
１５０Ａ〜１５０Ｄ  バスインターフェース部
１６１Ａ〜１６１Ｃ  第１調停候補信号線
１６２Ｂ〜１６２Ｃ  第２調停候補信号線
【手続補正２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数のデバイスからのリソース利用要求コマンドを逐次受け付ける第１受付手段と、
前記第１受付手段により受け付けられたリソース利用要求コマンドを所定周期毎に対象として、当該対象が複数の場合に、当該各対象の優先度を評価し、優先度が１番目に高いものを第１リソース利用要求コマンドとし、優先度が２番目に高いものを第２リソース利用要求コマンドとして特定する調停手段と、
前記調停手段によって特定された前記第１リソース利用要求コマンドと前記第２リソース利用要求コマンドとを前記所定周期毎に外部に出力する出力手段と
リソース利用要求コマンドを特定する情報を含むリソース利用応答信号を受け付ける第２受付手段とを備え、
前記調停手段は、前記第２受付手段がリソース利用応答信号を受け付けた時から、前記第１リソース利用要求コマンドと前記第２リソース利用要求コマンドとの特定を、当該リソース利用応答信号によって特定されるリソース利用要求コマンドを対象から除外して行う
ことを特徴とする調停装置。
【請求項２】
前記第１受付手段が逐次受け付けるリソース要求コマンドの各々はリソースを利用する期間を特定するための情報を含み、
前記出力手段は、前記第２リソース利用要求コマンドの出力を、当該出力手段から当該第２リソース利用要求コマンドを出力する周期と同じ周期に出力される第１リソース利用要求コマンドのリソースを利用する期間が所定期間以下である場合に限って行う
ことを特徴とする請求項１記載の調停装置
【請求項３】
第１調停装置を含む１以上の請求項１記載の調停装置と、
前記第１調停装置から出力された前記第１リソース利用要求コマンドと前記第２リソース利用要求コマンドと１以上のデバイスからのリソース要求コマンドとを逐次受け付ける第３受付手段と、
前記第３受付手段により受け付けられたリソース利用要求コマンドを前記所定周期毎に対象として、当該各対象の優先度を評価し、優先度が１番目に高いものを最優先リソース利用要求コマンドとして特定する最終調停手段と、
前記最終調停手段によって特定された前記最優先リソース利用要求コマンドを前記所定周期毎に出力する最終段出力手段と、
前記最終段出力手段によって出力された最優先リソース利用要求コマンドの入力を受け付けるリソース利用要求コマンド受付手段と、
リソース利用応答信号を受け付ける第４受付手段と、
前記リソース利用要求コマンド受付手段が最優先リソース利用要求コマンドの入力を受け付けた場合に、当該最優先リソース利用要求コマンドを特定する情報を含むリソース利用応答信号を、前記第２受付手段と前記第４受付手段とに出力するリソース利用応答信号出力手段とを備え、
前記最終調停手段は、前記最優先リソース利用要求コマンドの特定を、前記第４受付手段がリソース利用応答信号を受け付けた時から、当該リソース利用応答信号によって特定されるリソース利用要求コマンドを対象から除外して行う
ことを特徴とする調停システム。
【請求項４】
前記第１受付手段が逐次受け付けるリソース要求コマンドの各々はリソースを利用する期間を特定するための情報を含み、
前記１以上の調停装置に備わっている出力手段の各々は、前記第２リソース利用要求コマンドの出力を、当該出力手段から当該第２リソース利用要求コマンドを出力する周期と同じ周期に出力される第１リソース利用要求コマンドのリソースを利用する期間が所定期間以下である場合に限って行う
ことを特徴とする請求項３記載の調停システム。
【請求項５】
前記第１受付手段が逐次受け付けるリソース要求コマンドの各々はリソースを利用する期間を特定するための情報を含み、
前記１以上の調停装置に備わっている出力手段の各々は、前記第２リソース利用要求コマンドの出力を、当該出力手段から当該第２リソース利用要求コマンドを出力する周期と同じ周期に出力される第１リソース利用要求コマンドがリソースを利用する期間と、当該第１リソース利用要求コマンドが前記リソース利用要求コマンド受付手段に到達するまでに必要となる遅延時間との関係が所定の関係である場合に限って行う
ことを特徴とする請求項３記載の調停システム。
【請求項６】
前記リソースはメモリであって、
前記リソース利用応答信号出力手段は、前記リソース利用要求コマンド受付手段が最優先リソース利用要求コマンドの入力を受け付けた場合において、当該最優先リソース利用要求コマンドが前記メモリの特定領域の読み出しコマンドであったとき、前記メモリに、当該特定領域に記憶されているデータの出力を開始させるための信号を出力する
ことを特徴とする請求項３記載の調停システム。
【請求項７】
前記リソースはメモリであって、
前記リソース利用応答信号出力手段は、前記リソース利用要求コマンド受付手段が最優先リソース利用要求コマンドの入力を受け付けた場合において、当該最優先リソース利用要求コマンドが前記メモリの特定領域の書き込みコマンドであったとき、前記メモリに、当該特定領域へのデータの書き込みを開始させるための信号を出力する
ことを特徴とする請求項３記載の調停システム。
【請求項８】
複数のデバイスからのリソース利用要求コマンドを逐次受け付ける第１受付ステップと、
前記第１受付ステップにより受け付けられたリソース利用要求コマンドを所定周期毎に対象として、当該対象が複数の場合に、当該各対象の優先度を評価し、優先度が１番目に高いものを第１リソース利用要求コマンドとし、優先度が２番目に高いものを第２リソース利用要求コマンドとして特定する調停ステップと、
前記調停ステップによって特定された前記第１リソース利用要求コマンドと前記第２リソース利用要求コマンドとを前記所定周期毎に外部に出力する出力ステップと
リソース利用要求コマンドを特定する情報を含むリソース利用応答信号を受け付ける第２受付ステップとを備え、
前記調停ステップは、前記第２受付ステップがリソース利用応答信号を受け付けた時から、前記第１リソース利用要求コマンドと前記第２リソース利用要求コマンドとの特定を、当該リソース利用応答信号によって特定されるリソース利用要求コマンドを対象から除外して行う
ことを特徴とする調停方法。
【請求項９】
複数のデバイスからのリソース利用要求コマンドを逐次受け付ける第１受付手段と、
前記第１受付手段により受け付けられたリソース利用要求コマンドを所定周期毎に対象として、当該対象が複数の場合に、当該各対象の優先度を評価し、優先度が１番目に高いものを第１リソース利用要求コマンドとし、優先度が２番目に高いものを第２リソース利用要求コマンドとして特定する調停手段と、
前記調停手段によって特定された前記第１リソース利用要求コマンドと前記第２リソース利用要求コマンドとを前記所定周期毎に外部に出力する出力手段と
リソース利用要求コマンドを特定する情報を含むリソース利用応答信号を受け付ける第２受付手段とを備え、
前記調停手段は、前記第２受付手段がリソース利用応答信号を受け付けた時から、前記第１リソース利用要求コマンドと前記第２リソース利用要求コマンドとの特定を、当該リソース利用応答信号によって特定されるリソース利用要求コマンドを対象から除外して行う
ことを特徴とする集積回路。
【請求項１０】
請求項３記載の調停システムを含み、
前記デバイスには、少なくとも画像処理エンジンが含まれ、
前記リソースには、前記画像処理エンジンが利用するメモリが少なくとも含まれる
ことを特徴とする画像処理装置。
【手続補正３】
【補正対象書類名】図面
【補正対象項目名】全図
【補正方法】変更
【補正の内容】
【図１】
2010143386.tif 000022
【図２】
2010143386.tif 000023
【図３】
2010143386.tif 000024
【図４】
2010143386.tif 000025
【図５】
2010143386.tif 000026
【図６】
2010143386.tif 000027
【図７】
2010143386.tif 000028
【図８】
2010143386.tif 000029
【図９】
2010143386.tif 000030
【図１０】
2010143386.tif 000031
【図１１】
2010143386.tif 000032
【図１２】
2010143386.tif 000033
【図１３】
2010143386.tif 000034
【図１４】
2010143386.tif 000035
【図１５】
2010143386.tif 000036
【図１６】
2010143386.tif 000037
【図１７】
2010143386.tif 000038
【図１８】
2010143386.tif 000039
【図１９】
2010143386.tif 000040
【国際調査報告】
2010143386.tif 000041
2010143386.tif 000042
2010143386.tif 000043
2010143386.tif 000044