"システム全体の制御を行う中央演算処理手段と複数のバスマスタを備え、システムバスおよびメモリバスを介して共有のメモリにアクセスするデータ処理装置であって、前記バスマスタからシステムバスへのデータ転送を調停するバス調停手段と、前記データ処理装置を構成する各モジュールへクロック信号を供給するクロック生成手段と、前記バスマスタからのメモリアクセス要求を実行するために前記メモリバスを介して前記メモリに接続されたメモリ制御手段を備え、前記メモリ制御手段は、前記メモリアクセス要求からコマンドを生成するコマンド生成手段と、前記メモリアクセス要求の実行履歴を示す情報を前記メモリへ書き出すデータ書き出し手段と、前記コマンド生成手段の出力と前記データ書き出し手段の出力を切り替えて前記メモリに送出する切り替え手段を備えることを特徴とするデータ処理装置。前記メモリ制御手段は、前記メモリアクセス要求および実行サイクル数の情報を取得するモニタ手段と、前記モニタ手段が取得したメモリアクセス要求および実行サイクル数の情報を、前記実行履歴を示す情報として格納する保持手段を備え、前記切り替え手段によって選択された前記データ書き出し手段は、前記メモリバスを介して前記保持手段のデータを前記メモリへ出力することを特徴とする請求項1記載のデータ処理装置。前記モニタ手段は、前記中央演算処理手段からアドレス値を用いて指定される、メモリアクセス要求の取得に係る開始条件および終了条件に従って、前記メモリアクセス要求の情報を取得し、前記保持手段に前記実行履歴を示す情報を出力することを特徴とする請求項2記載のデータ処理装置。前記データ書き出し手段は、前記中央演算処理手段から指定されるデータ書き出しの開始アドレスに従って前記メモリへの書き出し処理を行うことを特徴とする請求項2または3記載のデータ処理装置。前記データ書き出し手段は、前記メモリへのリフレッシュコマンドの発行後における前記メモリバスのアイドル期間中に、前記クロック生成手段を制御して前記モジュールへのクロック信号の供給停止を指示した後で前記メモリへのデータ書き出し処理を行うことを特徴とする請求項2から4のいずれか1項記載のデータ処理装置。システム全体の制御を行う中央演算処理手段と複数のバスマスタを備え、システムバスおよびメモリバスを介して共有のメモリにアクセスするデータ処理装置にて実行される制御方法であって、前記バスマスタからシステムバスへのデータ転送を調停するバス調停ステップと、前記データ処理装置を構成する各モジュールへクロック信号を供給するクロック生成ステップと、前記バスマスタからのメモリアクセス要求を実行するメモリ制御ステップを有し、前記メモリ制御ステップは、前記メモリアクセス要求からコマンドを生成し、切り替え手段によって選択された当該コマンドを、前記メモリバスを介して前記メモリに出力するコマンド生成ステップと、前記メモリアクセス要求の実行履歴を示す情報を生成し、前記切り替え手段によって選択された当該情報を、前記メモリバスを介して前記メモリへ書き出すデータ書き出しステップを有することを特徴とするデータ処理装置の制御方法。しかしながら、従来の技術ではメモリバスのデータ転送効率まで含めたシステム性能の最適化が難しいという問題がある。通常、複数のバスマスタからのメモリアクセス要求が頻繁に発生する状況では、メモリアクセス要求のアドレスやデータ転送方向の前後関係に依存してメモリバス上でのオーバーヘッドが発生し得る。このようなメモリバス上でのオーバーヘッドを低減するためには、バスアービタの優先度設定やリオーダリング処理の動作モード設定といった、メモリアクセス効率に関わるパラメータの調整が必要である。従来、メモリアクセス効率に関わるパラメータの調整については、論理シミュレーションや、性能評価ボードを用いた実機評価により行われてきた。しかし、論理シミュレーションでは実行に時間がかかるため、全ての条件を評価することが難しい。また実機評価ではシステムLSI内部の挙動を観測できないので、メモリアクセス効率までをも考慮した設定値の調整が困難であった。そこで補完的な技術としてロジックアナライザーを用いて性能評価ボード上のメモリバスを直接観測する方法が知られている。この方法は、近年多用されているシステムLSIとDRAMを1つのパッケージに実装したPOPPackageOnPackage構造では信号観測が困難になっている。本発明は、システムLSIなどのデータ処理装置の性能評価に必要なメモリアクセスに関する情報を実機評価にて容易に取得できるようにすることを目的とする。上記課題を解決するために本発明に係る装置は、システム全体の制御を行う中央演算処理手段と複数のバスマスタを備え、システムバスおよびメモリバスを介して共有のメモリにアクセスするデータ処理装置であって、前記バスマスタからシステムバスへのデータ転送を調停するバス調停手段と、前記データ処理装置を構成する各モジュールへクロック信号を供給するクロック生成手段と、前記バスマスタからのメモリアクセス要求を実行するために前記メモリバスを介して前記メモリに接続されたメモリ制御手段を備える。前記メモリ制御手段は、前記メモリアクセス要求からコマンドを生成するコマンド生成手段と、前記メモリアクセス要求の実行履歴を示す情報を前記メモリへ書き出すデータ書き出し手段と、前記コマンド生成手段の出力と前記データ書き出し手段の出力を切り替えて前記メモリに送出する切り替え手段を備える。本発明によれば、メモリアクセス要求をトレースして実行履歴の情報をメモリへ書き出すことによって、データ処理装置の性能評価に必要な情報を取得できる。以下に、本発明の実施形態に係るデータ処理装置を、添付図面に基づいて詳細に説明する。図1は本実施形態に関わるシステムLSI大規模集積回路および周辺デバイスについて概要を示す図である。システムLSI100はI/О入出力ポート107を介して各種のデバイス符号101乃至104参照と接続されている。ROM読み出し専用メモリ101は制御プログラムを格納する記憶手段であり、ROM制御回路114に接続されている。ホストPCパーソナルコンピュータ402と通信するためのシリアルポート102は、インターフェース以下、IFと略記する制御回路115に接続されている。画像データ生成装置103はシステムLSI100に画像データを供給する装置であり、画像処理回路116に接続されている。メモリカード104は画像データなどを保存する記憶デバイスであり、メモリカード制御回路118に接続されている。さらにシステムLSI100はメモリバス106を介して外部の共有メモリ以下、単にメモリという105に接続されている。システムLSI100は、システム全体を制御するCPU中央演算処理装置110を備える。CPU110は、システムバス111を介して、バスアービタ112、クロック生成回路113、メモリ制御回路120に接続されている。クロック生成回路113はシステムLSI100の各モジュールおよび外部デバイスにクロック信号を供給するモジュールである。複数のバスマスタとして、ROM制御回路114、IF制御回路115、画像処理回路116、データ圧縮回路117、メモリカード制御回路118がシステムバス111に接続されている。ROM制御回路114はCPU110とROM101との間でデータ転送を制御するモジュールである。IF制御回路115はCPU110とシリアルポート102との間でデータ転送を制御するモジュールである。画像処理回路116は画像データ生成装置103から入力される画像データを処理するモジュールである。データ圧縮回路117は画像処理回路116で処理された画像データのサイズを圧縮するモジュールである。メモリカード制御回路118はメモリカード104へのデータ転送を制御するモジュールである。尚、これらのバスマスタはDMADirectMemoryAccessコントローラを内蔵しており、CPU110の介在なしにメモリ制御回路120へのメモリアクセス要求を発行できる。またバスアービタ112はバスマスタからシステムバス111へのデータ転送を調停するバス調停手段であり、CPU110からの制御により、各バスマスタへのアクセス権発行の優先度を変更できる。メモリ制御回路120は、メモリアクセス要求を実行するためのモジュールとして、バスIF121、アドレスデコーダ122、コマンドキュー123、コマンド生成回路124、データキュー125を内蔵する。バスIF121はシステムバス111との間でデータ転送を制御する。アドレスデコーダ122はバスIF121から取得したメモリアクセス要求のアドレスを、メモリ105のバンク、ロウ、カラムアドレスの構成に応じてデコード処理する。コマンドキュー123はアドレスデコーダ122から取得したメモリアクセス要求をメモリアクセス実行まで保持し、保持しているメモリアクセス要求の実行順序を変更するリオーダリング処理の機能を備える。コマンド生成回路124はコマンドキュー123の先頭に保持されているメモリアクセス要求をDRAMコマンドに変換し、メモリバス106上でのデータ転送を実行する。データキュー125はバスIF121から取得したデータをメモリアクセスの実行時点まで一時的に保持する。コマンド生成回路124はデータキュー125に保持されたデータの転送処理を行う。さらに、メモリ制御回路120は、メモリアクセス要求の実行履歴を示す情報をメモリ105に書き出すためのモジュールとして、モニタ126、トレースキュー127、データ書き出し回路128を内蔵する。モニタ126はコマンドキュー123の先頭に保持されているメモリアクセス要求の情報をサンプリングによって抽出するとともに、メモリアクセスの実行サイクルをカウントする。トレースキュー127はモニタ126がサンプリングで抽出したメモリアクセス要求の情報と、実行サイクルのカウント値を保持する。データ書き出し回路128はトレースキュー127に保持されたメモリアクセス要求の実行履歴情報を、定期的にメモリ105に書き出す処理を実行する。切り替え回路129は、コマンド生成回路124およびデータ書き出し回路128とメモリバス106との間で信号入出力制御を排他的に切り替える。レジスタ130はメモリ制御回路120内の各モジュールの動作モードやステータスを管理する。図2Aは本実施形態に係るコマンドキュー123に保持されるメモリアクセス要求について概要を例示した図である。メモリアクセス要求は、以下に示す情報を含む。バスマスタの識別子IDメモリ105に対するデータ転送方向リードまたはライトを示す指定子DIRアクセス先のバンクアドレスを示す指定子BANKアクセス先のロウアドレスを示す指定子ROWアクセス先のカラムアドレスを示す指定子COLデータ転送サイズを示すSIZE。図2Bは本実施形態に係るトレースキュー127に保持されるメモリアクセス履歴について概要を例示した図である。メモリアクセス履歴は、以下の情報を含む。バスマスタの識別子IDメモリ105に対するデータ転送方向リードまたはライトを示す指定子DIRアクセス先のバンクアドレスを示す指定子BANKアクセス先のロウアドレスを示す指定子ROWデータ転送サイズを示すSIZEデータ転送に要した実行サイクル数を示すCYCLE。図3は、データ書き出し回路128によってメモリ105に書き出されるメモリアクセス履歴情報ファイル以下、単に履歴ファイルというについて概要を示す。図3には、メモリアドレスAddressと前記のID,DIR,BANK,ROW,SIZE,CYCLEについての各履歴情報を示す。ファイルの各要素のビットサイズは、ID:2ビット、DIR:1ビット、BANK:2ビット、ROW:10ビット、SIZE:8ビット、CYCLE:9ビットの合計32ビットであり、履歴情報はアドレス0x10000から4バイトおきに保存される。履歴ファイルの最後にはデータの終了を示すサンプリング終了コード全ビット‘1’が挿入される。なお、これら要素の各ビットサイズは例示であって、本発明を適用するにあたって、異なるビット数で定義してもよい。次に、本実施形態におけるシステム性能評価の実施環境を説明する。システム性能評価ボードには、図1で示したシステムLSI100と各種の外部デバイスが搭載されている。ホストPC402は、シリアルケーブル403を介して、システム性能評価ボードのCPU110と通信を行う。システム性能評価処理の流れとしては、まず、ホストPC402の指示に従って、CPU110がROM101に内蔵された性能測定プログラムを実行する。性能測定プログラムの実行が完了した後、ホストPC402はメモリ105に書き出された履歴ファイルを参照し、メモリアクセス効率に関わる各種メモリアクセス指標データを算出する後述の表1ないし6参照。このメモリアクセス指標データを基に、メモリアクセス効率に関わるパラメータの設定値を調整することで、システム性能の最適化が図られる。図4はCPU110が性能測定プログラムに従って実行する処理例を示すフローチャートである。CPU110はホストPC402からの指示によりROM101に内蔵された性能測定プログラムの実行を開始させる。まず、S501でCPU110は、モニタ126によるメモリアクセス要求のサンプリング開始および終了条件を開始アドレス値および終了アドレス値としてそれぞれレジスタ130に設定する。続いてS502でCPU110は、データ書き出し回路128がトレースキュー127の内容をメモリ105に書き出す際の開始アドレスの値をレジスタ130に設定する。S503でCPU110は、バスアービタ112の図示しない制御レジスタに、各バスマスタのデータ転送量に応じたアクセス権割り当ての優先度を設定する。S504でCPU110は、メモリ制御回路120のレジスタ130に、コマンドキュー123のリオーダリング処理の動作モードを設定する。以上のS501からS504の処理でCPU110が設定する値については、予めROM101に内蔵されたプログラムに記述して設定する方法と、ホストPC402から直接的に値を入力して設定する方法がある。S505でCPU110は、性能評価の対象となるデータ処理プログラムを実行し、データ処理プログラムの実行完了を待つS506。S507でCPU110は、メモリ105に書き出された履歴ファイルの情報を参照して、サンプリング終了コードが書き出されたアドレス値を確認する。S508でCPU110は、ホストPC402の表示部の画面に、S503、S504で設定したパラメータの値を表示させる制御を行う。S509でCPU110は、ホストPC402の表示部の画面に、履歴ファイルが格納されているメモリのアドレス領域を表示させる制御を行う。該アドレス領域は、S502で設定したデータ書き出し先のアドレス値から開始し、サンプリング終了コードのアドレス値で終了する領域である。そして、処理が終了する。次に、図5のフローチャートを用いて、モニタ126の動作概要を説明する。モニタ126は、CPU110からのサンプリング開始および終了設定図4のS501参照を受けて動作を開始する。ここでサンプリング開始条件および終了条件についてはCPU110からアドレス値を用いて指定される。まずS601でモニタ126は、コマンドキュー123の先頭に格納されたメモリアクセス要求を参照し、サンプリング開始条件に合致するか否かを判定する。取得したメモリアクセス要求がサンプリング開始条件に合致しない場合、モニタ126は次のメモリアクセス要求の更新まで待機するために、S601の判定処理を繰り返す。また、メモリアクセス要求がサンプリング開始条件に合致する場合、S602に処理を進め、モニタ126はメモリアクセス要求の情報図2A参照を取得する。S603でモニタ126は、次のメモリアクセス要求の更新までの実行サイクル数をカウントする。S604でモニタ126は、トレースキュー127に取得したメモリアクセス要求の情報とカウント値図2B参照をメモリアクセス履歴として保存する。S605でモニタ126は、トレースキュー127に保存したメモリアクセス履歴の情報がサンプリング終了条件に合致するか否かを判定する。サンプリング終了条件との合致が判定された場合、S606に処理を進め、トレースキュー127にサンプリング終了コードを追加する処理が実行された後、一連の処理を終了する。S605でメモリアクセス履歴の情報がサンプリング終了条件に合致しない場合、モニタ126は次のメモリアクセス要求の更新まで待機し、S602に戻って処理を繰り返す。次に、図6のフローチャートを用いて、図1のデータ書き出し回路128の動作について概要を説明する。データ書き出し回路128はCPU110からのデータ書き出し先アドレスの設定図4のS502参照を受けて動作を開始する。まずS701でデータ書き出し回路128は、メモリバス106を監視し、コマンド生成回路124からのメモリ105へのリフレッシュコマンド発行までの間、待機する。S702でデータ書き出し回路128はクロック生成回路113を制御して、データ書き出し回路128、トレースキュー127、切り替え回路129およびメモリ105を除いた、各モジュールへのクロック信号の供給を停止させる。続くS703にて、切り替え回路129は、データ書き出し回路128からの入力信号を選択する状態に切り替え、データ書き出し回路128の出力をメモリ105に送出する。つまり、データ書き出し回路128はトレースキュー127の内容を指定されたメモリアドレスの領域に書き出す。データ書き出し処理の完了後、S704でデータ書き出し回路128は、次回のデータ書き出し処理に備えて、メモリ105へのデータ書き出し先のアドレス値を更新する。S705でデータ書き出し回路128は、メモリ105にリフレッシュコマンドを発行し、切り替え回路129はコマンド生成回路124からの信号を選択する状態に戻す。S706でデータ書き出し回路128は、クロック生成回路113を制御してシステムLSI100の各部および外部デバイスへのクロック信号の供給を再開させる。以上のS701からS705までの処理については、サンプリング終了コードがメモリ105に書き出されるまでの間、繰り返し実行される。上記のようにクロック信号の供給停止および再開を行う前には、データ書き出し回路128がメモリ105に対してリフレッシュコマンドを発行し、コマンド発行後のメモリバス106のアイドル期間中にクロック生成回路113を制御する。これにより、メモリ105へのデータ書き出しによってコマンド生成回路124とメモリ105と間でのステートの不一致が生じないように防止できる。次に、図7に示すデータ処理を例にして、履歴ファイルからメモリアクセス効率に関わる各種メモリアクセス指標データを算出する処理について説明する。図7のデータ処理例では、画像データ1枚分について以下の3つの処理が並列に実行される。1画像処理回路116からメモリ105のバンク1に画像データを書き込む処理以下、処理1とする。2画像処理回路116がバンク1に書き込んだ画像データを、データ圧縮回路117がバンク1から読み出してデータ圧縮処理を施した後、メモリ105のバンク2へ書き出す処理以下、処理2とする。3データ圧縮回路117がバンク2へ書き込んだ圧縮データを、メモリカード104に保存する為にメモリカード制御回路118がバンク2から読み出す処理以下、処理3とする。このように、処理1ではバンク1への書き込みだけが行われ、処理2ではバンク1からの読み出しおよびバンク2への書き込みが行われ、処理3ではバンク2からの読み出しだけが行われる。図8は図7のデータ処理にて性能測定プログラムを実行した場合にメモリ105に書き出される履歴ファイルの情報を例示する。図8には、メモリアドレスAddressと前記のID,DIR,BANK,ROW,SIZE,CYCLEの各履歴情報を示す。ここでは各要素の値を識別し易くするため、バスマスタ識別子IDをアルファベット[A,B,C,D]で表記している。また、データ転送方向の指定子DIRについては[W,R]の記号で表記し、Wは書き込みを示し、Rは読み出しを示す。T0,T1,T2は、処理1、処理2、処理3の開始時刻をそれぞれ表し、T3,T4,T5は処理1、処理2、処理3の終了時刻をそれぞれ表す。各データ処理区間をTXTYで表記し、XおよびYは整数値を表す変数である。下表1から6は、履歴ファイルから算出されるメモリアクセス指標データを例示し、各データ処理区間T0T1,T1T2,T2T3,T3T4,T4T5および全区間T0T5についての算出結果を示す。下記に示す値は、各データ処理区間でのメモリアクセス履歴の情報を読み出して、所定の演算により集計することで得られる。表1は、各データ処理区間および全区間における実行サイクル数を示す。これらの値は、データ転送方向リード/ライト別に全てのバスマスタ分のCYCLE値を積算することによって算出される。表2は、各データ処理区間および全区間における各バスマスタのデータ転送方向リード/ライト別のメモリアクセス回数を示す。これらの値は、前記のIDとDIRのパターンを積算することにより算出される。表3は、各データ処理区間および全区間における各バスマスタのデータ転送量を示す。これらの値は、データ転送方向リード/ライト別にバスマスタ毎のSIZE値を積算することにより算出される。表4は、各データ処理区間および全区間におけるバスマスタ毎に割り当てられたバス帯域を示す。これらの値は、データ転送方向リード/ライト別にバスマスタ毎のデータ転送量をアクセス回数で除算することにより算出される。表5は、各データ処理区間および全区間におけるメモリアクセス要求のアクセスパターンバンク、ロウアドレスの遷移を示す。これらの値は、読み出した前後のメモリアクセス履歴からBANK、ROWの値についての遷移パターンを積算することにより算出される。表6は、各データ処理区間および全区間におけるメモリアクセス要求のデータ転送方向リード/ライトの遷移パターンを示す。これらの値は、読み出した前後のメモリアクセス履歴からDIRの値についての遷移パターンを積算することにより算出される。以上のようにして得られた各種メモリアクセス指標データの集計結果から、ユーザは意図したデータ処理が目標性能に達したか否かについて、詳細に確認できる。例えば、表1に例示した実行サイクル数の算出結果より、全区間あるいはユーザの着目するデータ処理区間での実行サイクル数が目標とする範囲内に収まっているか否かについて判定できる。また、その他のメモリアクセス指標データと併せて詳細な解析を行うことで、メモリアクセス効率を含めたシステム性能の最適化を図ることができる。図9は、表1に例示した実行サイクル数のデータと、表4に例示したバス帯域のデータに基づいて、データ処理毎の開始時刻および終了時刻と、バス帯域の時間的変化をグラフ化したものである。図9Aは、横軸を時間軸として前記の処理1から3に要した処理時間を表した図である。図9Bは、横軸に時間軸をとり、縦軸にバス帯域のデータをとって処理1から3の推移に伴う時間的変化を表した図である。これらのグラフは、ホストPC402の表示部の画面に表示され、ユーザはグラフを見て、メモリアクセス効率が低く、かつデータ処理時間の長い区間がT2T3であることを特定できる。バスアービタ112の優先度設定やリオーダリング処理のモードについて、T2T3の区間でのアクセスパターンやR/W遷移パターンを参照しながら最適化することで、メモリアクセス効率の向上によりシステム性能が改善される。図10AおよびBは、T2T3の区間でメモリアクセス効率を改善した場合を示し、横軸および縦軸についてはそれぞれ図9AおよびBで説明した通りである。図9との比較から分かるように、処理1ないし3に要する時間が短縮され、T2T3の区間でバス帯域のレベルが高くなっている。本実施形態では、システムLSIの実機評価にてメモリアクセスに関連する履歴情報を容易に取得でき、また取得したパラメータの解析により、メモリアクセス効率に関わるパラメータ設定の最適化が可能となる。すなわち、メモリアクセス効率について改善の余地があるデータ処理区間について、前記パラメータの調整により、システム全体の性能を向上させることができる。その他の実施形態また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェアプログラムを、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータまたはCPUやMPU等がプログラムを読み出して実行する処理である。"