(57)【要約】【課題】消費電力を低減すること。【解決手段】バスマスタ２１ａの転送要求発行回路４１ａは、機能ブロック３１ａの状態と記憶部５３ａの情報に基づいて、機能ブロック３１ａと依存関係を持つ機能ブロック３１ｂと、その機能ブロック３１ｂを含むバスマスタ２１ｂを示す依存情報を含むライト転送要求ＷＲａを発行する。バスコントローラ２２のライト調停回路６１Ｗは、受信したライト転送要求ＷＲａをライトキュー６２Ｗに格納する。バスコントローラ２２の情報送信回路６３は、ライトキュー６２Ｗのライト転送要求に基づいて、待ち段数と依存情報を、依存関係のあるバスマスタ２１ｂに送信する。バスマスタ２１ｂのクロック制御回路４３ｂは、依存情報に基づいてバスマスタ２１ａに対応するしきい値を記憶部５２ｂから取得し、しきい値と待ち段数に基づいて、転送要求発行回路４１ｂに対するクロック信号ＣＫＴｂを制御する。【選択図】図２
2015087869.tif 000002
【特許請求の範囲】
【請求項１】
処理したデータをメモリへ格納するための制御情報と前記データの依存関係を示す情報とを含む第１の転送要求を出力する第１のバスマスタと、
マスタ情報と前記データを読み出すための制御信号を含む第２の転送要求を出力する第２のバスマスタと、
前記第１の転送要求と前記第２の転送要求を処理するバスコントローラと、
を有し、
前記依存関係を示す情報は、前記第１のバスマスタの情報と前記第２のバスマスタの情報を含み、
前記バスコントローラは、前記第２のバスマスタに対して、前記第１の転送要求に対する第１の待ち段数と前記依存関係を示す情報とを送信し、
前記第２のバスマスタは、前記第１の待ち段数と前記依存関係を示す情報に基づいて第１のクロック信号を制御するクロック制御回路と、前記第１のクロック信号に基づいて動作し、前記第２の転送要求を発行する転送要求発行回路とを含むこと、
を特徴とするデータ処理装置。
【請求項２】
前記バスコントローラは、前記第２のバスマスタに対して、前記第２の転送要求に対する第２の待ち段数と前記マスタ情報とを送信し、
前記第２のバスマスタは、
前記データを処理する処理回路を有し、
前記クロック制御回路は、前記第２の待ち段数と前記マスタ情報に基づいて、前記処理回路に対する第２のクロック信号を制御すること、
を特徴とする請求項１に記載のデータ処理装置。
【請求項３】
前記第１のバスマスタは、
前記依存関係を示す情報を記憶した第１の記憶部と、
前記第１の記憶部から前記依存関係を示す情報を含む前記第１の転送要求を発行する転送要求発行回路と、
を有することを特徴とする請求項２に記載のデータ処理装置。
【請求項４】
前記第２のバスマスタは、
前記第１のバスマスタに応じた第１のしきい値を記憶した第２の記憶部を有し、
前記クロック制御回路は、前記第１の待ち段数を前記第１のしきい値と比較し、比較結果に応じて前記第１のクロック信号を制御すること、
を特徴とする請求項２または３に記載のデータ処理装置。
【請求項５】
前記第２のバスマスタは、
前記処理回路に応じた第２のしきい値を記憶した第３の記憶部を有し、
前記クロック制御回路は、前記第２の待ち段数を前記第２のしきい値と比較し、比較結果に応じて前記第２のクロック信号を制御すること、
を特徴とする請求項２〜４の何れか一項に記載のデータ処理装置。
【請求項６】
前記バスコントローラは、前記第２のバスマスタに対して、前記第２の転送要求に対する第２の待ち段数と前記マスタ情報とを送信し、
前記第２のバスマスタは、
複数の第２の転送要求に応じた複数のデータに基づいて処理を実行する処理回路を含み、
前記クロック制御回路は、
前記複数の第２の転送要求に対する複数の第２の待ち段数を互いに比較し、比較結果に応じて選択した待ち段数と前記マスタ情報に基づいて前記処理回路に対する第２のクロック信号を制御すること、
を特徴とする請求項１に記載のデータ処理装置。
【請求項７】
処理したデータをメモリへ格納するための制御情報と前記データの依存関係を示す情報とを含む第１の転送要求を出力する第１のバスマスタと、
マスタ情報と前記データを読み出すための制御信号を含む第２の転送要求を出力する第２のバスマスタと、
前記第１の転送要求と前記第２の転送要求を処理するバスコントローラと、
を有し、
前記依存関係を示す情報は、前記第１のバスマスタの情報と前記第２のバスマスタの情報を含み、
前記バスコントローラは、前記第２のバスマスタに対して、前記第１の転送要求に対する第１の待ち段数と前記依存関係を示す情報とを送信し、
前記第２のバスマスタは、前記第２の転送要求を発行する転送要求発行回路に対する第１のクロック信号を、前記第１の待ち段数と前記依存関係を示す情報に基づいて制御すること、
を特徴とするデータ処理装置の制御方法。
【請求項８】
前記バスコントローラは、前記第２のバスマスタに対して、前記第２の転送要求に対する第２の待ち段数と前記マスタ情報とを送信し、
前記第２のバスマスタは、
前記データを処理する処理回路に対する第２のクロック信号を、前記第２の待ち段数と前記マスタ情報に基づいて制御すること、
を特徴とする請求項７に記載のデータ処理装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
データ処理装置、データ処理装置の制御方法に関する。
【背景技術】
【０００２】
メモリに格納されたデータを処理するデータ処理装置は、データを処理する複数のバスマスタを有している。バスマスタは、メモリから処理に必要なデータを読み出し、処理後のデータをメモリに書き込む。複数のバスマスタを含むデータ処理装置は、各バスマスタがメモリをアクセスするための要求を調停するバスコントローラを有する（例えば、特許文献１〜６参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−０７２５９７号公報
【特許文献２】特開２００６−２１５６２１号公報
【特許文献３】特開平１０−０４１９６２号公報
【特許文献４】特開２０１２−１２８６４６号公報
【特許文献５】特開２０１１−９０６１３号公報
【特許文献６】特開２００４−２８７７６０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、複数のバスマスタを有するデータ処理装置において、消費電力の低減が要求されている。
【課題を解決するための手段】
【０００５】
本発明の一観点によれば、処理したデータをメモリへ格納するための制御情報と前記データの依存関係を示す情報とを含む第１の転送要求を出力する第１のバスマスタと、マスタ情報と前記データを読み出すための制御信号を含む第２の転送要求を出力する第２のバスマスタと、前記第１の転送要求と前記第２の転送要求を処理するバスコントローラと、を有し、前記依存関係を示す情報は、前記第１のバスマスタの情報と前記第２のバスマスタの情報を含み、前記バスコントローラは、前記第２のバスマスタに対して、前記第１の転送要求に対する第１の待ち段数と前記依存関係を示す情報とを送信し、前記第２のバスマスタは、前記第１の待ち段数と前記依存関係を示す情報に基づいて第１のクロック信号を制御するクロック制御回路と、前記第１のクロック信号に基づいて動作し、前記第２の転送要求を発行する転送要求発行回路とを含む。
【発明の効果】
【０００６】
本発明の一観点によれば、消費電力を低減することができる。
【図面の簡単な説明】
【０００７】
【図１】データ処理装置の概略ブロック図である。
【図２】バスマスタ及びバスコントローラの概略ブロック図である。
【図３】クロック制御回路のブロック図である。
【図４】（ａ）はライトキューの説明図、（ｂ）はリードキューの説明図である。
【図５】依存情報の説明図である。
【図６】判定情報の説明図である。
【図７】制御情報の説明図である。
【図８】バスマスタ及びバスコントローラの処理を示すフローチャートである。
【図９】データ処理装置の一例である画像処理装置を示す概略図である。
【図１０】バスマスタの動作を示すタイミング図である。
【図１１】（ａ）（ｂ）は縮小処理の説明図である。
【図１２】メモリに格納されたデータの説明図である。
【図１３】データ処理におけるタイミング図である。
【図１４】データ処理におけるタイミング図である。
【図１５】比較例のデータ処理におけるタイミング図である。
【図１６】比較例のデータ処理におけるタイミング図である。
【発明を実施するための形態】
【０００８】
以下、一実施形態を説明する。
図１に示すように、データ処理装置１１は、複数（図１では３つ）のバスマスタ２１ａ〜２１ｄと、１つのバスコントローラ２２を有している。バスコントローラ２２は、メモリ１２に接続されている。メモリ１２は例えば、シンクロナスダイナミックランダムアクセスメモリ（ＳＤＲＡＭ）である。
【０００９】
バスマスタ２１ａは、複数（図１では３つ）の機能ブロック３１ａ〜３３ａを有している。各機能ブロック３１ａ〜３３ａは、それぞれ設定された処理を実行する。そして、各機能ブロック３１ａ〜３３ａは、それぞれの処理に応じてメモリ１２をアクセスする。例えば、機能ブロック３１ａは、メモリ１２から読み出したデータを処理し、処理後のデータをメモリ１２へ書き込む。また、機能ブロック３２ａは、データ処理装置１１の外部から供給されるデータをメモリ１２へ、または供給されるデータを処理してメモリ１２へ書き込む。機能ブロック３１ａ〜３３ａは処理回路の一例である。
【００１０】
バスマスタ２１ａは、各機能ブロック３１ａ〜３３ａのアクセスのための転送要求をバスコントローラ２２へ出力する。バスマスタ２１ａは、メモリ１２へデータを書き込むためのライト転送要求を出力する。また、バスマスタ２１ａは、メモリ１２のデータを読み出すためのリード転送要求を出力する。
【００１１】
同様に、バスマスタ２１ｂは、複数（図１では２つ）の機能ブロック３１ｂ，３２ｂを有している。それら機能ブロック３１ｂ，３２ｂは、それぞれの処理に応じてメモリ１２をアクセスする。バスマスタ２１ｂは、各機能ブロック３１ｂ，３２ｂの処理に応じて、メモリ１２へデータを書き込むためのライト転送要求、メモリ１２のデータを読み出すためのリード転送要求を出力する。機能ブロック３１ｂ、３２ｂは処理回路の一例である。
【００１２】
また、バスマスタ２１ｃは、複数（図１では３つ）の機能ブロック３１ｃ〜３３ｃを有している。それら機能ブロック３１ｃ〜３３ｃは、それぞれの処理に応じてメモリ１２をアクセスする。バスマスタ２１ｃは、各機能ブロック３１ｃ〜３３ｃの処理に応じて、メモリ１２へデータを書き込むためのライト転送要求、メモリ１２のデータを読み出すためのリード転送要求を出力する。機能ブロック３１ｃ〜３３ｃは処理回路の一例である。
【００１３】
また、バスマスタ２１ｄは、複数（図１では３つ）の機能ブロック３１ｄ〜３３ｄを有している。それら機能ブロック３１ｄ〜３３ｄは、それぞれの処理に応じてメモリ１２をアクセスする。バスマスタ２１ｄは、各機能ブロック３１ｄ〜３３ｄの処理に応じて、メモリ１２へデータを書き込むためのライト転送要求、メモリ１２のデータを読み出すためのリード転送要求を出力する。機能ブロック３１ｄ〜３３ｄは処理回路の一例である。
【００１４】
バスコントローラ２２は、各バスマスタ２１ａ〜２１ｄが出力する転送要求を調停し、調停結果を要求元のバスマスタへ通知する。また、バスコントローラ２２は、調停結果に応じた１つの転送要求をメモリ１２へ出力する。メモリ１２は、転送要求に含まれるアクセス情報（各種コマンド、アドレス、データ、等）に応じてライト処理またはリード処理を行う。
【００１５】
図２に示すように、バスマスタ２１ａは、機能ブロック３１ａ〜３３ａ、転送要求発行回路４１ａ，４２ａ、クロック制御回路４３ａ、記憶部５１ａ〜５３ａを有している。同様に、バスマスタ２１ｂは、機能ブロック３１ｂ，３２ｂ、転送要求発行回路４１ｂ，４２ｂ、クロック制御回路４３ｂ、記憶部５１ｂ〜５３ｂを有している。バスコントローラ２２は、ライト調停回路６１Ｗ、ライトキュー６２Ｗ、リード調停回路６１Ｒ、リードキュー６２Ｒ、情報送信回路６３を有している。バスマスタ２１ｂに含まれる各回路は、バスマスタ２１ａに含まれる各回路と同様の機能を有している。なお、図示しないが、図１に示すバスマスタ２１ｃ，２１ｄは、バスマスタ２１ａ，２１ｂと同様の回路を有している。
【００１６】
バスマスタ２１ａの転送要求発行回路４１ａは、データをメモリ１２に書き込むための転送要求（ライト転送要求）ＷＲａを発行する。ライト転送要求ＷＲａは、マスタ情報と制御情報を含む。マスタ情報は、転送要求を発行するバスマスタの情報と、メモリ１２に書き込むデータを出力する機能ブロックの情報を含む。例えば、機能ブロック３１ａの出力データをメモリ１２に書き込むためのライト転送要求ＷＲａは、バスマスタ２１ａを示す情報（例えば識別情報）と、機能ブロック３１ａを示す情報（例えば識別情報）を含む。制御情報は、メモリ１２をアクセスするための情報であり、データを格納するアドレス、データ、制御コマンド（例えばライトコマンド）を含む。
【００１７】
また、マスタ情報は、メモリ１２に書き込むデータを参照する機能ブロックがある場合、その機能ブロックの情報とその機能ブロックを含むバスマスタの情報を含む。転送要求発行回路４１ａは、記憶部５１ａに格納された情報に基づいて、メモリ１２に書き込むデータを参照する機能ブロックがあるか否かを判定し、その判定結果に基づいて、これらの情報を含むマスタ情報を生成する。記憶部５１ａは第１の記憶部の一例である。
【００１８】
記憶部５１ａに格納された情報は、複数の機能ブロックの間における依存関係を示す。例えば、バスマスタ２１ａの記憶部５１ａには、バスマスタ２１ａに含まれる機能ブロック３１ａ〜３３ａに対して、依存関係にある機能ブロック及びバスマスタの情報が記憶されている。
【００１９】
例えば、機能ブロック３１ａは処理後のデータをメモリ１２に書き込む。バスマスタ２１ｂの機能ブロック３１ｂは、メモリ１２に格納されたデータを参照して処理を行う。つまり、機能ブロック３１ｂは、処理の実行において、機能ブロック３１ａの出力データを必要とする。したがって、機能ブロック３１ｂの処理タイミング（データを読み出すタイミング）は、機能ブロック３１ａの処理タイミング（データの書き込みタイミング）に依存する。なお、機能ブロックにおけるデータを参照する処理は、そのデータの値に応じて実行する処理、データを処理して別のデータを生成する処理、等を含む。
【００２０】
このような依存関係に対し、バスマスタ２１ａの記憶部５１ａに格納された情報は、バスマスタ２１ａの機能ブロック３１ａ〜３３ａに対して依存関係のある機能ブロックの情報及びその機能ブロックを含むバスマスタの情報を含む。機能ブロックの情報及びバスマスタの情報は、例えば機能ブロック及びバスマスタを識別するための情報（識別情報）である。上記例の場合、記憶部５１ａに格納された情報は、機能ブロック３１ａの識別情報と、依存関係にある機能ブロック３１ｂの識別情報、この機能ブロック３１ｂを含むバスマスタ２１ｂの識別情報を含み、これらは関連付けられている。なお、以下の説明において、図２に示す各ブロックの符号を識別情報として用いるものとする。
【００２１】
例えば、図５に示すように、記憶部５１ａに格納された情報は、機能ブロック３１ａの識別情報と、機能ブロック３１ａに関連付けられた依存先のバスマスタ２１ｂ及び機能ブロック３１ｂの識別情報を含む。また、記憶部５１ａに格納された情報は、機能ブロック３２ａの識別情報と、機能ブロック３２ａに関連付けられた依存先のバスマスタ２１ｃ及び機能ブロック３２ｃの識別情報を含む。また、記憶部５１ａに格納された情報は、機能ブロック３３ａの識別情報と、機能ブロック３３ａに関連付けられた依存先のバスマスタ２１ｄ及び機能ブロック３２ｄの識別情報を含む。
【００２２】
図２に示す転送要求発行回路４１ａは、機能ブロック３１ａに関するライト転送要求ＷＲａを発行するとき、その機能ブロック３１ａの情報によって記憶部５１ａの情報を検索する。そして、転送要求発行回路４１ａは、機能ブロック３１ａに関連付けられた依存先の情報が記憶部５１ａに含まれる場合、記憶部５１ａから読み出した情報を含むライト転送要求ＷＲａを発行する。なお、以下の説明において、依存先の情報を含むマスタ情報を依存情報と呼ぶことがある。つまり、依存情報は、ライト転送要求のデータを出力する機能ブロックの情報、その機能ブロックを含むバスマスタの情報、機能ブロックの出力データを参照する機能ブロックの情報とその機能ブロックを含むバスマスタの情報と、を含む。
【００２３】
バスマスタ２１ａの転送要求発行回路４２ａは、機能ブロック３１ａ〜３３ａに対応するデータをメモリ１２から読み出すための転送要求（リード転送要求）ＲＲａを発行する。リード転送要求ＲＲａは、ライト転送要求ＷＲａと同様に、マスタ情報と制御情報を含む。マスタ情報は、転送要求を発行するバスマスタの情報と、メモリ１２から読み出したデータを処理する機能ブロックの情報を含む。例えば、機能ブロック３１ａがメモリ１２からデータを読み出すためのリード転送要求ＲＲａは、バスマスタ２１ａを示す情報（例えば識別情報）と、機能ブロック３１ａを示す情報（例えば識別情報）を含む。制御情報は、メモリ１２をアクセスするための情報であり、データが格納されたアドレス、データ、制御コマンド（例えばリードコマンド）を含む。
【００２４】
また、マスタ情報は、メモリ１２から読み出すデータについて、依存関係にある機能ブロックがある場合、その機能ブロックの情報とその機能ブロックを含むバスマスタの情報を含む。転送要求発行回路４２ａは、記憶部５１ａに格納された情報に基づいて、依存関係にある機能ブロックがあるか否かを判定し、その判定結果に基づいて、これらの情報を含むマスタ情報を生成する。そして、転送要求発行回路４２ａは、生成したマスタ情報と制御情報を含むリード転送要求ＲＲａを発行する。
【００２５】
なお、以下の説明において、上記のライト転送要求ＷＲａと同様に、リード転送要求ＲＲａにおいて、依存先の情報を含むマスタ情報を依存情報と呼ぶことがある。つまり、依存情報は、リード転送要求のデータを必要とする機能ブロックの情報、その機能ブロックを含むバスマスタの情報、機能ブロックが必要とするデータについて依存関係にある機能ブロックの情報とその機能ブロックを含むバスマスタの情報と、を含む。
【００２６】
同様に、バスマスタ２１ｂは転送要求を発行する。つまり、バスマスタ２１ｂの転送要求発行回路４１ｂはライト転送要求ＷＲｂを発行する。また、バスマスタ２１ｂの転送要求発行回路４２ｂはリード転送要求ＲＲｂを発行する。これらの転送要求ＷＲｂ，ＲＲｂは、データの依存関係に応じたマスタ情報と制御情報を含む。
【００２７】
バスコントローラ２２のライト調停回路６１Ｗは、ライト転送要求ＷＲａ，ＷＲｂを調停し、調停結果に応じてライト転送要求をライトキュー６２Ｗに格納する。ライト調停回路６１Ｗは、例えば優先度に応じてライト転送要求を調停する。優先度は、バスマスタや機能ブロックに設定される。ライト調停回路６１Ｗは、同時に受信したライト転送要求において、優先度に基づいて、優先度の高いライト転送要求から優先度の低いライト転送要求の順番でライトキュー６２Ｗに格納する。
【００２８】
図４（ａ）に示すように、ライトキュー６２Ｗは、複数のライト転送要求を記憶する。各ライト転送要求は、マスタ情報と制御情報を含む。ライトキュー６２Ｗは、例えば先入れ先出し（First In First Out：ＦＩＦＯ）方式のメモリである。バスコントローラ２２は、ライトキュー６２Ｗに格納されたライト転送要求を、それらの格納順序にしたがって処理し、メモリ１２に対して制御情報を出力する。
【００２９】
図２に示すリード調停回路６１Ｒは、メモリ１２に対するリード転送要求ＲＲａ，ＲＲｂを調停し、調停結果に応じてリード転送要求をリードキュー６２Ｒに格納する。リード調停回路６１Ｒは、例えば優先度に応じてリード転送要求を調停する。優先度は、バスマスタや機能ブロックに設定される。リード調停回路６１Ｒは、同時に受信したリード転送要求において、優先度に基づいて、優先度の高いリード転送要求から優先度の低いリード転送要求の順番でリードキュー６２Ｒに格納する。
【００３０】
図４（ｂ）に示すように、リードキュー６２Ｒは、複数のリード転送要求を記憶する。各リード転送要求は、マスタ情報と制御情報を含む。リードキュー６２Ｒは、例えば先入れ先出し（ＦＩＦＯ）方式のメモリである。バスコントローラ２２は、リードキュー６２Ｒに格納されたリード転送要求を、格納された順番にしたがって処理し、メモリ１２に対して制御情報を出力する。
【００３１】
情報送信回路６３は、ライトキュー６２Ｗとリードキュー６２Ｒのそれぞれに格納された転送要求に基づいて、依存情報と待ち段数をバスマスタに送信する。
詳述すると、情報送信回路６３は、ライトキュー６２Ｗに格納された転送要求に基づいて、ライト転送要求を出力したバスマスタに待ち段数を送信する。そして、情報送信回路６３は、ライト転送要求のマスタ情報に依存関係のバスマスタ及び機能ブロックの情報が含まれる場合、その依存関係にあるバスマスタに待ち段数と依存情報を送信する。
【００３２】
また、情報送信回路６３は、リードキュー６２Ｒに格納された転送要求に基づいて、リード転送要求を出力したバスマスタに待ち段数を送信する。そして、情報送信回路６３は、リード転送要求のマスタ情報に依存関係のバスマスタ及び機能ブロックの情報が含まれる場合、上記の待ち段数とともに依存情報を送信する。
【００３３】
なお、ライト転送要求に対する待ち段数，依存情報をライト待ち段数，ライト依存情報と呼ぶことがある。同様に、リード転送要求に対する待ち段数，依存情報をリード待ち段数，リード依存情報と呼ぶことがある。ライト待ち段数は第１の待ち段数の一例である。リード待ち段数は第２の待ち段数の一例である。
【００３４】
上記したように、ライト調停回路６１Ｗは、受信したライト転送要求をライトキュー６２Ｗに格納する。バスコントローラ２２は、ライトキュー６２Ｗに記憶されたライト転送要求を順次処理し、処理したライト転送要求を削除する。つまり、ライト転送要求の格納又は処理によって、ライトキュー６２Ｗの状態（ライトキュー６２Ｗに記憶されたライト転送要求の数）が変化する。
【００３５】
情報送信回路６３は、ライトキュー６２Ｗの状態変化に基づいて、ライトキュー６２Ｗに記憶されたライト転送要求を、最後に格納されたライト転送要求から格納順序と逆にチェックする。そして、情報送信回路６３は、ライトキュー６２Ｗに記憶されたライト転送要求のマスタ情報に基づいて、ライト転送要求を出力したバスマスタに待ち段数とマスタ情報を送信する。待ち段数は、ライトキュー６２Ｗに記憶されているライト転送要求に応じた値（例えば、ライト転送要求の数−１）である。また、情報送信回路６３は、ライトキュー６２Ｗに記憶されたライト転送要求のマスタ情報に依存関係のバスマスタ及び機能ブロックの情報が含まれる場合、その依存関係にあるバスマスタに待ち段数と依存情報（マスタ情報）を送信する。
【００３６】
同様に、リード調停回路６１Ｒは、受信したリード転送要求をリードキュー６２Ｒに格納する。バスコントローラ２２は、リードキュー６２Ｒに記憶されたリード転送要求を順次処理し、処理したリード転送要求を削除する。つまり、リード転送要求の格納又は処理によって、リードキュー６２Ｒの状態（リードキュー６２Ｒに記憶されたリード転送要求の数）が変化する。
【００３７】
情報送信回路６３は、リードキュー６２Ｒの状態変化に基づいて、リードキュー６２Ｒに記憶されたリード転送要求を、最後に格納されたリード転送要求から格納順序と逆にチェックする。そして、情報送信回路６３は、リードキュー６２Ｒに記憶されたリード転送要求のマスタ情報に基づいて、リード転送要求を出力したバスマスタに待ち段数とマスタ情報を送信する。待ち段数は、リードキュー６２Ｒに記憶されているリード転送要求に応じた値（例えば、リード転送要求の数−１）である。
【００３８】
バスマスタ２１ａのクロック制御回路４３ａは、クロック信号ＣＬＫに基づいて、機能ブロック３１ａ〜３３ａに対するクロック信号ＣＫ１ａ〜ＣＫ３ａと、転送要求発行回路４２ａに対するクロック信号ＣＫＴａを供給する。クロック信号ＣＬＫは、例えば、データ処理装置１１のシステムクロック信号である。クロック信号ＣＫＴａは第１のクロック信号の一例である。クロック信号ＣＫ１ａ〜ＣＫ３ａは第２のクロック信号の一例である。
【００３９】
クロック制御回路４３ａは、バスコントローラ２２から送信される情報と、記憶部５２ａ，５３ａに格納された情報に基づいて、各クロック信号ＣＫ１ａ〜ＣＫ３ａ，ＣＫＴａを制御（供給と停止）する。詳しくは、クロック制御回路４３ａは、バスコントローラ２２から送信されるライト待ち段数，ライト依存情報と、記憶部５２ａに格納された情報に基づいて、転送要求発行回路４２ａに対するクロック信号ＣＫＴａを制御（供給）する。また、クロック制御回路４３ａは、バスコントローラ２２から送信されるリード待ち段数とリード依存情報と、記憶部５３ａに格納された情報に基づいて、各クロック信号ＣＫ１ａ〜ＣＫ３ａを制御（供給）する。
【００４０】
記憶部５２ａには判定情報が記憶されている。判定情報は、機能ブロックに対して依存関係にあるバスマスタに対するしきい値を含む。記憶部５２ａは第２の記憶部の一例である。
【００４１】
図６に示すように、判定情報は、依存関係にある機能ブロック及びバスマスタの情報（識別情報）としきい値を含む。なお、判定情報において依存関係にあるバスマスタは、機能ブロックが参照するデータを出力する機能ブロックとその機能ブロックを含むバスマスタ、つまり一連の処理過程において機能ブロックの前段となる機能ブロック及びバスマスタを示す。例えば、図６において、判定情報は、機能ブロック３１ａの情報と、機能ブロック３１ａに対して依存関係にある機能ブロック３１ｂ及びバスマスタ２１ｂの情報と、その機能ブロック３１ｂに対応するしきい値「５」を含む。
【００４２】
しきい値は、例えば前段の機能ブロックにおける処理（例えば出力データの量）に応じて設定される。前段の機能ブロックにおける処理データ量（出力データの量）は、その機能ブロックを含むバスマスタのライト転送要求に対する転送許可から転送終了までの時間に対応する。ライト転送要求から転送許可までの時間は、ライト待ち段数に対応する。したがって、ライト待ち段数と、出力データ量に応じてリード転送要求を発行することで、転送終了に応じたタイミングでそのデータのリードが可能となる。つまり、リード転送要求を発行する転送要求発行回路４２ａに対して、ライト待ち段数と、出力データ量に応じてクロック信号ＣＫＴａを供給することにより、転送終了に応じたタイミングでそのデータのリードが可能となる。
【００４３】
記憶部５３ａにはクロック制御情報が記憶されている。クロック制御情報は、機能ブロックにおけるしきい値を含む。記憶部５３ａは第３の記憶部の一例である。
図７に示すように、クロック制御情報は、機能ブロックに対して、複数の状態に応じて設定された標準のしきい値を含む。標準のしきい値は、その機能ブロックの処理に応じて設定されるものであり、上記した依存関係や後述する動作条件、等が考慮されていないものである。標準のしきい値は、データ処理装置の構成（各バスマスタの構成）に応じて、例えばデータ処理装置の設計のときに設定される。なお、記憶部５３ａは、例えば電気的に書き換え可能な不揮発性の半導体記憶装置であり、所定の形式（例えばカード形式やプログラム形式）によって外部からクロック制御情報の設定が可能である。
【００４４】
機能ブロックの状態は、例えば、「通常時」、「処理待ち」「先行処理」である。例えば、「通常時」はメモリからデータを読み出して処理するときを示す。「処理待ち」はメモリから既にデータを読み出して処理の開始を待っているときを示す。そして、「先行処理」は、処理の開始に際して所定の設定（例えば電源の投入時における初期設定）を必要とするときを示す。例えば、機能ブロック３１ａについて、「通常時」のしきい値は「５」、「処理待ち」のしきい値は「１」、「先行処理」のしきい値は「７」である。なお、機能ブロックの状態によって、クロック信号を停止しない場合がある。このような状態に対するしきい値は、図７に示すように、「停止しない」または「常時供給」が設定される。なお、「停止しない」または「常時供給」において設定されるしきい値は、システムにおいて設定可能な範囲の最大値（例えば８ビットの場合には「２５５」）である。
【００４５】
また、記憶部５３ａには、機能ブロックの動作情報が記憶されている。動作情報は、機能ブロックにおける処理について、必要となる情報である。例えば、複数のリード転送要求によってメモリ１２から読み出したデータ（例えば、複数ブロックのデータ）を処理する機能ブロックの情報である。
【００４６】
また、記憶部５３ａには、バスマスタ２１ａにおいて固有の制御情報が記憶されている。固有の制御情報は、機能ブロックの動作における情報（動作条件）を含み、この動作情報（動作条件）は、機能ブロックにおける処理を示す情報である。
【００４７】
例えば、所定の機能ブロックは、上記したように、他の機能ブロックがメモリ１２に格納したデータを参照する。したがって、記憶部５３ａに格納された情報（動作条件）は、参照するデータの有無を示す情報（依存情報）を含む。
【００４８】
また、所定の機能ブロックは、その処理において、複数（例えば２つ）のリード転送要求によってメモリ１２から読み出したデータ（例えば、複数ブロックのデータ）を必要とする。つまり、この機能ブロックは、１つのリード転送要求によってメモリ１２から読み出したデータのみではデータが揃っていないため、処理を開始することができない。したがって、このような機能ブロックに対するクロック信号の供給タイミングは、複数のリード転送要求に対する待ち段数に基づいて設定される。
【００４９】
図３に示すように、クロック制御回路４３ａは、判定回路７１と制御回路７２を有している。
判定回路７１には、待ち段数（ライト待ち段数，リード待ち段数）と依存情報（ライト依存情報，リード依存情報）が供給される。また、判定回路７１には、図２に示す機能ブロック３１ａ〜３３ａの動作状況に応じた状況信号ＳＩ１ａ〜ＳＩ３ａと、転送要求発行回路４２ａの動作状況に応じた状況信号ＳＩＴａが供給される。判定回路７１は、依存情報と各状況信号ＳＩ１ａ〜ＳＩ３ａ，ＳＩＴａに基づいて、図２に示す記憶部５２ａ，５３ａから判定情報，クロック制御情報，動作条件を読み出す。そして、判定回路７１は、これらに基づいて、制御信号ＳＣ１，ＳＣ２，ＳＣ３，ＳＣＴを出力する。
【００５０】
制御回路７２は、複数（図３では４つ）のスイッチ回路ＳＷ１，ＳＷ２，ＳＷ３，ＳＷＴを有している。スイッチ回路ＳＷ１〜ＳＷ３，ＳＷＴの第１端子にはクロック信号ＣＬＫが供給され、各スイッチ回路ＳＷ１〜ＳＷ３，ＳＷＴの第２端子は図２に示す機能ブロック３１ａ〜３３ａ，転送要求発行回路４２ａに接続される。スイッチ回路ＳＷ１〜ＳＷ３，ＳＷＴは、制御信号ＳＣ１〜ＳＣ３，ＳＣＴに応答してオンオフする。
【００５１】
例えば、判定回路７１は、ライト依存情報に含まれる機能ブロックの情報とバスマスタの情報によって記憶部５２ａに記憶された情報を検索する。判定回路７１は、検索結果に基づいて、ライト依存情報に含まれる機能ブロック及びバスマスタに対応するしきい値を記憶部５２ａから読み出す。そして、判定回路７１は、ライト待ち段数をしきい値と比較し、ライト待ち段数がしきい値以下になると、制御信号ＳＣＴによってスイッチ回路ＳＷＴをオンする。オンしたスイッチ回路ＳＷＴにより、クロック信号ＣＫＴａが図２に示す転送要求発行回路４２ａに供給される。転送要求発行回路４２ａは、クロック信号ＣＫＴａの供給に基づいて動作し、リード転送要求を発行する。
【００５２】
また、判定回路７１は、リード転送要求に対してバスコントローラ２２から送信されるマスタ情報と状況信号ＳＩ１ａ〜ＳＩ３ａに基づいて記憶部５３ａを検索する。判定回路７１は、検索結果に基づいて、機能ブロックの状態に応じたしきい値を記憶部５３ａから読み出す。そして、判定回路７１は、しきい値とリード待ち段数を比較し、リード待ち段数がしきい値以下になると、制御信号、例えば制御信号ＳＣ１によってスイッチ回路ＳＷ１をオンする。オンしたスイッチ回路ＳＷ１により、クロック信号ＣＫ１ａが図２に示す機能ブロック３１ａに供給される。機能ブロック３１ａは、クロック信号ＣＫ１ａの供給に基づいて動作し、データを処理する。
【００５３】
なお、判定回路７１は、動作条件に基づいて、複数のリード転送要求によってメモリ１２から読み出すデータを必要とする機能ブロックの場合、その機能ブロックの動作条件に基づいて、複数のリード転送要求に応じた複数の待ち段数に基づいて、クロック信号を制御する。
【００５４】
例えば、１つの機能ブロックにおいて、処理に必要なデータをＸ１，Ｙ１とする。図２に示す転送要求発行回路４２ａは、データＸ１を読み出すためのリード転送要求と、データＹ１を読み出すためのリード転送要求を発行する。バスコントローラ２２は、それらのリード転送要求に基づいて、待ち段数を送信する。データＸ１を読み出すリード転送要求に対する待ち段数Ｗａｘ、データＹ２を読み出すリード転送要求に対する待ち段数Ｗａｙとする。
【００５５】
判定回路７１は、両待ち段数Ｗａｘ，Ｗａｙを互いに比較する。判定回路７１は、待ち段数Ｗａｘと待ち段数Ｗａｙの大きい方を選択し、その選択した待ち段数を、機能ブロックに対する待ち段数Ｗａｚとする。判定回路７１は、設定した待ち段数Ｗａｚを、記憶部５３ａから読み出したしきい値と比較する。そして、判定回路７１は、設定した待ち段数リード待ち段数が設定したしきい値以下になると、制御信号、例えば制御信号ＳＣ２によってスイッチ回路ＳＷ２をオンする。オンしたスイッチ回路ＳＷ２により、クロック信号ＣＫ２ａが図２に示す機能ブロック３２ａに供給される。機能ブロック３２ａは、クロック信号ＣＫ２ａの供給に基づいて動作する。このとき、機能ブロック３２ａにおいて上記のデータＸ１とデータＹ１が揃っている。したがって、機能ブロック３２ａは、データＸ１，Ｙ１の処理を実行することができる。
【００５６】
次に、図８にしたがって、バスマスタとバスコントローラの処理を説明する。なお、図８は、バスマスタ２１ａがメモリ１２（図１参照）に書き込むデータを依存関係のあるバスマスタ２１ｂが読み出すときのクロック供給制御にかかる処理を示す。バスマスタ２１ａ，２１ｂ，バスコントローラ２２に含まれる回路の動作を、概略的にバスマスタ２１ａ，２１ｂ，バスコントローラ２２が行うものとして説明し、必要に応じて個々の回路を用いて説明する。
【００５７】
先ず、バスマスタ２１ａにおける処理を説明する。
ステップ１０１（転送要求発行）において、バスマスタ２１ａは、ライト転送要求ＷＲａを発行する。このライト転送要求ＷＲａのマスタ情報は、依存関係にある機能ブロックとバスマスタの情報を含む。次いで、ステップ１０２（キュー情報受信）において、バスマスタ２１ａは、バスコントローラ２２から送信されるマスタ情報と待ち段数を受信する。そして、バスマスタ２１ａは、他の処理を行う。
【００５８】
次に、バスコントローラ２２における処理を説明する。
ステップ１１１〜１１４は、図２に示すライト転送要求ＷＲａに対するバスコントローラ２２の処理を示す。ステップ１１５，１１６は、図２に示すリード転送要求ＲＲａに対するバスコントローラ２２の処理を示す。
【００５９】
先ず、ライト転送要求ＷＲａに対する処理を説明する。
ステップ１１１（転送要求調停）において、バスコントローラ２２は、バスマスタ２１ａからのライト転送要求ＷＲａを受信する。そして、バスコントローラ２２は、受信したライト転送要求ＷＲａを調停し、図２に示すライトキュー６２Ｗに格納する。
【００６０】
ステップ１１２（キュー情報通知）において、バスコントローラ２２は、ライトキュー６２Ｗの状態変化に基づいて、キュー情報（マスタ情報及び待ち段数）を要求元のバスマスタ２１ａに通知する。
【００６１】
次に、ステップ１１３において、バスコントローラ２２は、ライトキュー６２Ｗに格納したライト転送要求のマスタ情報に依存関係がある情報が含まれるか否かを判定する。バスコントローラ２２は、依存関係の情報が含まれる場合にステップ１１４へ移行し、依存関係の情報が含まれない場合にステップ１１１へ移行する。
【００６２】
ステップ１１４（依存情報通知）において、バスコントローラ２２は、依存関係にあるバスマスタに対して待ち段数と依存情報を通知する。そして、バスコントローラ２２は、ステップ１１１へ移行し、待機する。
【００６３】
次に、リード転送要求ＲＲａに対する処理を説明する。
ステップ１１５（転送要求調停）において、バスコントローラ２２は、受信したリード転送要求ＲＲａを調停し、リードキュー６２Ｒに格納する。次いで、ステップ１１６（キュー情報通知）において、バスコントローラ２２は、リードキュー６２Ｒの状態変化に基づいて、マスタ情報と待ち段数を要求元のバスマスタ２１ｂに通知する。
【００６４】
次に、バスマスタ２１ｂにおける処理を説明する。
ステップ１２１（依存情報取得）において、バスマスタ２１ｂは、図２に示す記憶部５３ｂから、動作すべき機能ブロック（例えば、図２に示す機能ブロック３１ｂ）について、参照するデータの有無を示す情報（依存情報）を取得する。
【００６５】
次いで、ステップ１２２において、バスマスタ２１ｂは、ステップ１２１において取得した情報に基づいて、前段のマスタがメモリ１２に格納するデータ（前データ）が必要か否かを判定する。前データが必要な場合はステップ１２３へ移行し、前データが不要な場合はステップ１２６へ移行する。
【００６６】
次いで、ステップ１２３（依存情報受信）において、バスマスタ２１ｂは、バスコントローラ２２から送信される依存情報及び待ち段数を受信する。
そして、ステップ１２４（しきい値設定）において、バスマスタ２１ｂは、依存情報に含まれるバスマスタ及び機能ブロックの情報に基づいて、図２に示す記憶部５２ｂの判定情報からしきい値を読み出す。
【００６７】
次いで、ステップ１２５において、バスマスタ２１ｂは、バスコントローラ２２から受信したライト待ち段数をしきい値と比較し、ライト待ち段数がしきい値以下か否かを判定する。ライト待ち段数がしきい値以下の場合にはステップ１２６へ移行し、ライト待ち段数がしきい値より大きい場合にはステップ１２３へ移行する。
【００６８】
ステップ１２６（クロック供給）において、バスマスタ２１ｂは、転送要求発行回路４２ｂにクロック信号ＣＫＴｂを供給する。
ステップ１２７（転送要求発行）において、転送要求発行回路４２ｂは、クロック信号ＣＫＴｂに基づいて動作し、リード転送要求ＲＲｂを発行する。
【００６９】
ステップ１２８（キュー情報受信）において、バスマスタ２１ｂは、バスコントローラ２２から、リード転送要求ＲＲｂに対するマスタ情報及び待ち段数を受信する。
ステップ１２９（しきい値設定）において、バスマスタ２１ｂは、マスタ情報に含まれる機能ブロックの情報に基づいて、図２に示す記憶部５３ｂのクロック制御情報から、機能ブロックの状態に対応するしきい値を取得する。
【００７０】
ステップ１３０において、バスマスタ２１ｂは、バスコントローラ２２から受信したリード待ち段数をしきい値と比較し、リード待ち段数がしきい値以下か否かを判定する。リード待ち段数がしきい値以下の場合にはステップ１３１へ移行し、リード待ち段数がしきい値より大きい場合にはステップ１２８へ移行する。
【００７１】
ステップ１３１（クロック供給）において、バスマスタ２１ｂは、機能ブロック３１ｂへクロック信号ＣＫ１ｂを供給する。そして、ステップ１２１へ移行する。
次に、上記のデータ処理装置の作用を説明する。
【００７２】
なお、ここでは、データ処理装置の一例として、画像データを処理するデータ処理装置を例として説明する。画像データに対する処理の一例として、画像データを縮小する処理を説明する。
【００７３】
図９に示すように、データ処理装置１１のバスマスタ２１ａにおいて、機能ブロック３１ａは画像処理部である。転送要求発行回路４１ａは、画像処理部３１ａの出力データをメモリ１２へ格納するためにライト転送要求ＷＲａを発行する。
【００７４】
バスマスタ２１ｂにおいて、機能ブロック３１ｂは縮小処理部であり、機能ブロック３２ｂはデータ格納部である。バスマスタ２１ｂは、バスマスタ２１ａの画像処理部３１ａからメモリ１２に格納されたデータを読み出し、データ格納部３２ｂに格納する。そして、縮小処理部３１ｂは、データ格納部３２ｂから読み出したデータを処理し、処理後のデータをメモリ１２へ格納する。
【００７５】
したがって、バスマスタ２１ｂのデータ格納部３２ｂと縮小処理部３１ｂにおける処理は、バスマスタ２１ａの画像処理部３１ａの処理に依存したタイミングで実施される。つまり、バスマスタ２１ａの画像処理部３１ａは、バスマスタ２１ｂのデータ格納部３２ｂと縮小処理部３１ｂに対して依存関係にある。
【００７６】
図１１（ａ）に示すように、画像Ｇ１は、所定のサイズ（水平方向の画素数Ｈ１と垂直方向の画素数Ｖ１）である。図９に示す画像処理部３１ａは、この画像Ｇ１のデータをメモリ１２に格納する。そして、縮小処理部３１ｂは、画像Ｇ１のサイズを、設定された縮小率にしたがって変更する。
【００７７】
図１１（ｂ）は、縮小処理後の画像Ｇ２を示す。この画像Ｇ２は、所定のサイズ（水平方向の画素数Ｈ２と垂直方向の画素数Ｖ２）である。
なお、図１１（ａ）に示す画像Ｇ１は、２つのブロックデータにより形成される。
【００７８】
図１２に示すように、メモリ１２には、２つのブロックデータＤＸ，ＤＹが格納されている。これら２つのブロックデータＤＸ，ＤＹにより図１１（ａ）に示す画像Ｇ１が形成（表示）される。バスマスタ２１ｂは、２つのブロックデータＤＸ，ＤＹを順次読み出す。図１２において、破線にて示す矩形部分は、１回のリード転送要求により読み出されるデータを示す。このデータをそれぞれＤＸ１，ＤＹ１とする。図９に示す縮小処理部３１ｂは、データＤＸ１，ＤＹ１を処理する。
【００７９】
図１０に示すように、先ず、ライト転送要求ＷＲａが発行され、データＷＤａが図９に示すメモリ１２へ転送される。データＷＤａは、転送期間を示す。ライト転送要求ＷＲａからデータＷＤａの転送開始（図において左端）までの期間がライト待ち段数に対応する。
【００８０】
図９に示すクロック制御回路４３ｂは、依存情報に応じたしきい値とライト待ち段数とに基づいて、クロック信号ＣＫＴｂを転送要求発行回路４２ｂに供給し、その転送要求発行回路４２ｂは、リード転送要求ＲＲｂを発行する。このように、転送要求発行回路４２ｂは、データＷＤａがメモリ１２へ格納されるよりも早いタイミングでリード転送要求ＲＲｂを発行する。これにより、データＷＤａが格納されたタイミングで、そのデータの読み出しが可能となる。
【００８１】
次に、データの読み出しにおける処理を説明する。
図１３〜図１６は、データの読み出しに係る回路の動作期間を示す。
図１３に示すように、転送要求発行回路４１ｂは、図１２に示すデータＤＸ１，ＤＹ１を読み出すために、リード転送要求Ｒｘ，Ｒｙを順次発行する。
【００８２】
バスコントローラ２２は、リード転送要求Ｒｘ、Ｒｙを順次処理する。これにより、データ格納部３２ｂに対して、リード転送要求Ｒｘに対応するデータＤＸ１と、リード転送要求Ｒｙに対応するデータＤＹ１が順次格納される。
【００８３】
図９に示すクロック制御回路４３ｂは、バスコントローラ２２から送信されるリード転送要求Ｒｙに対する待ち段数に基づいて縮小処理部３１ｂに対してクロック信号を供給する。つまり、データＤＸ１がデータ格納部３２ｂに格納された段階では、データが揃っていないため、クロック信号ＣＫ１ｂは供給されない。そして、データＤＹ１がデータ格納部３２ｂに格納されたタイミングで縮小処理部３１ｂが動作を開始する。
【００８４】
なお、データ処理を行う前において所定の処理（例えば、起動時の初期設定）が必要な縮小処理部３１ｂの場合、その動作情報（動作条件）が記憶部５３ｂ（図２参照）に格納されている。図９に示すクロック制御回路４３ｂは、この動作情報にしたがって、縮小処理部３１ｂに対してクロック信号を供給する。
【００８５】
即ち、図１４に示すように、縮小処理部３１ｂは、ハッチングで示した所定の処理を実行した後、データ格納部３２ｂに格納されたデータを処理する。このように、所定の処理に応じてクロック信号を縮小処理部３１ｂに供給することで、データＤＹ１がデータ格納部３２ｂに格納されたタイミングで縮小処理部３１ｂが動作を開始することが可能となる。
【００８６】
次に、比較例を説明する。なお、比較例の説明において、上記の実施形態と同じ部材名及び符号を用いて説明する。
図１５に示すように、第１の比較例において、データ格納部３２ｂがデータＤＹ１の格納完了をクロック制御回路４３ｂに通知する。クロック制御回路４３ｂは、通知を受けて縮小処理部３１ｂにクロック信号を供給する。この場合、データＤＹ１の格納完了からデータＤＸ１，ＤＹ１の処理を開始するまでに時間を要する。このような時間は、データの処理期間の長期化を招き、データ処理装置における処理速度を低下させる。
【００８７】
また、図１６に示すように、第２の比較例において、データＤＸ１の格納に基づいて縮小処理部３１ｂにクロック信号を供給する。この場合、データＤＹ１の格納完了、つまりデータＤＸ１，ＤＹ１が揃ったタイミングで縮小処理部３１ｂにおける処理を開始する。しかし、この比較例において、縮小処理部３１ｂは、クロック信号が供給されても、データＤＹ１が格納されるまで処理を開始することができない。つまり、データＤＹ１が格納されるまで、縮小処理部３１ｂに対して無駄にクロック信号が供給される。クロック信号が供給されると、縮小処理部３１ｂにおいて、電力が消費される。したがって、このようなクロック信号の供給は、消費電力の低減を阻害する。
【００８８】
以上記述したように、本実施形態によれば、以下の効果を奏する。
（１）バスマスタ２１ａは、メモリ１２に対してデータを格納する機能ブロック３１ａを有し、バスマスタ２１ｂは、機能ブロック３１ａがメモリ１２に格納したデータを参照する機能ブロック３１ｂを有している。バスマスタ２１ａの転送要求発行回路４１ａは、機能ブロック３１ａの状態と記憶部５３ａの情報に基づいて、機能ブロック３１ａと依存関係を持つ機能ブロック３１ｂと、その機能ブロック３１ｂを含むバスマスタ２１ｂを示す依存情報を含むライト転送要求ＷＲａを発行する。バスコントローラ２２のライト調停回路６１Ｗは、受信したライト転送要求ＷＲａをライトキュー６２Ｗに格納する。バスコントローラ２２の情報送信回路６３は、ライトキュー６２Ｗのライト転送要求に基づいて、待ち段数と依存情報を、依存関係のあるバスマスタ２１ｂに送信する。バスマスタ２１ｂのクロック制御回路４３ｂは、受信した依存情報に基づいて、依存関係のあるバスマスタ２１ａに対応するしきい値を記憶部５２ｂから取得する。そして、クロック制御回路４３ｂは、しきい値と待ち段数に基づいて、転送要求発行回路４１ｂに対するクロック信号ＣＫＴｂを制御する。
【００８９】
待ち段数は、バスマスタ２１ａの機能ブロック３１ａがメモリ１２に対してデータを格納するまでの期間に対応する。したがって、メモリ１２に格納されるデータについて機能ブロック３１ａと依存関係にある機能ブロック３１ｂを含むバスマスタ２１ｂの転送要求発行回路４１ｂに対するクロック信号ＣＫＴｂを制御する。転送要求発行回路４１ｂは、クロック信号ＣＫＴｂに基づいて、メモリ１２のデータを読み出すリード転送要求ＲＲｂを発行する。このように、機能ブロック３１ａがメモリ１２にデータを書き込むタイミングに応じて転送要求発行回路４１ｂに対するクロック信号ＣＫＴｂを供給する。これにより、転送が不可能である期間におけるリード転送要求の発行を抑制する。このことは、転送要求発行回路４１ｂに対して、転送が可能な期間にクロック信号ＣＫＴｂを供給することになる。したがって、転送要求発行回路４１ｂに対する無駄なクロック供給を低減し、消費電力を低減することができる。
【００９０】
（２）バスマスタ２１ｂの転送要求発行回路４２ｂは、リード転送要求ＲＲｂを発行する。バスコントローラ２２は、リード転送要求ＲＲｂに対するリード待ち段数とマスタ情報をバスマスタ２１ｂに送信する。バスマスタ２１ｂのクロック制御回路４３ｂは、リード待ち段数とマスタ情報に基づいて、クロック信号ＣＫ１ｂを機能ブロック３１ｂに供給する。このように、機能ブロック３１ｂに対してメモリ１２からデータが読み出されるタイミングに応じて、その機能ブロック３１ｂに対するクロック信号ＣＫ１ｂを供給する。したがって、機能ブロック３１ｂに対する無駄なクロック供給を低減し、消費電力を低減することができる。
【００９１】
（３）バスマスタ２１ｂは２つの機能ブロック３１ｂ，３２ｂを有し、依存情報は、バスマスタ２１ｂに含まれる機能ブロック３１ｂ，３２ｂの識別情報を含む。したがって、クロック制御回路４３ｂは、依存情報に基づいてクロック信号を制御する対象となる機能ブロックを判定し、その判定した機能ブロックに対応するクロック信号を、リード待ち段数に基づいて制御する。このように、複数の機能ブロックを含むバスマスタにおいて、必要となる機能ブロックに対するクロック信号の制御を容易に行うことができるようになる。
【００９２】
尚、上記各実施形態は、以下の態様で実施してもよい。
・上記実施形態において、図２では、１つのバスマスタ２１ａに１つの転送要求発行回路４１ａを含むように示したが、各機能ブロック３１ａ〜３３ａに対応する転送要求発行回路を含むようにしてもよい。また、機能ブロック３１ａ〜３３ａのそれぞれに転送要求発行回路を含めてもよい。
【００９３】
・上記実施形態において、図２では、１つのバスマスタ２１ａに１つのクロック制御回路４３ａを含むように示したが、各機能ブロック３１ａ〜３３ａと転送要求発行回路４１ａに対応するクロック制御回路を含むようにしてもよい。また、機能ブロック３１ａ〜３３ａと転送要求発行回路４１ａのそれぞれにクロック制御回路を含めてもよい。
【００９４】
・上記実施形態では、各機能ブロックと転送要求発行回路に対するクロック信号を制御（供給または停止）したが、供給するクロック信号の周波数を制御するようにしてもよい。例えば、クロック信号ＣＬＫに基づいてクロック信号ＣＫ１ａを生成する分周回路を用いてその分周回路における分周比を制御するようにしてもよい。
【００９５】
・バスマスタに含まれる機能ブロックの数は、上記実施形態に限定されない。例えば、機能ブロックの数を、１つまたは４つ以上としてもよい。
・上記実施形態に対し、図５に示す記憶部５１ａに格納された情報において、１つの機能ブロックに対して関連付けられた複数の機能ブロックが関連付けられていてもよい。例えば、図１に示すデータ処理装置１１において、機能ブロック３１ａがメモリ１２に格納するデータを、バスマスタ２１ｃの機能ブロック３２ｃと、バスマスタ２１ｄの機能ブロック３３ｄが参照する。このような場合、バスコントローラ２２は、バスマスタ２１ａのライト転送要求ＷＲａに基づいて、バスマスタ２１ｃ，２１ｄに対して待ち段数と依存情報を送信する。このように、複数の機能ブロックが参照する場合においても、上記実施形態と同様に、バスマスタ２１ｃ，２１ｄにおいてクロック信号を制御することが可能となり、消費電力の低減を図ることができる。また、各バスマスタ２１ｃ，２１ｄにおいて、好適なタイミングでリード転送要求を発行することができ、処理時間の長期化（処理速度の低下）を抑制することができる。
【符号の説明】
【００９６】
１１  データ処理装置
１２  メモリ
２１ａ〜２１ｃ  バスマスタ
２２  バスコントローラ
３１ａ〜３３ａ  機能ブロック
４３ａ  クロック制御回路
４１ａ，４２ａ  転送要求発行回路
５１ａ〜５３ａ  記憶部
３１ｂ、３２ｂ  機能ブロック
４３ｂ  クロック制御回路
４１ｂ，４２ｂ  転送要求発行回路
５１ｂ〜５３ｂ  記憶部
６１Ｗ  ライト調停回路
６２Ｗ  ライトキュー
６１Ｒ  リード調停回路
６２Ｒ  リードキュー
６３  情報送信回路
【図１】
2015087869.tif 000003
【図２】
2015087869.tif 000004
【図３】
2015087869.tif 000005
【図４】
2015087869.tif 000006
【図５】
2015087869.tif 000007
【図６】
2015087869.tif 000008
【図７】
2015087869.tif 000009
【図８】
2015087869.tif 000010
【図９】
2015087869.tif 000011
【図１０】
2015087869.tif 000012
【図１１】
2015087869.tif 000013
【図１２】
2015087869.tif 000014
【図１３】
2015087869.tif 000015
【図１４】
2015087869.tif 000016
【図１５】
2015087869.tif 000017
【図１６】
2015087869.tif 000018