(57)【要約】【課題】回路構成を小規模化できるデータ処理装置およびその方法を提供する。【解決手段】書き込みアドレスおよび書き込みデータをバスＢＳ上に順に送出して書き込み動作を行い、読み出しアドレスをバスＢＳ上に送出した後にバスＢＳ上の読み出しデータを入力して読み出し動作を行うバスマスタ２と、バスマスタ２からの制御に基づいてバスＢＳ上の書き込みアドレスを基にバス上の書き込みデータをＲＡＭ３１に書き込み、バスＢＳ上の読み出しアドレスを基にＲＡＭ３１から読み出した読み出しデータをバスＢＳ上に送出するスレーブ３とを設け、バスマスタ２は、書き込み動作に続いて読み出し動作を行う場合に、スレーブ３によるデータの読み出しが可能になるまで、書き込みアドレスに続いて、読み出しアドレスを継続してバスＢＳ上に送出する。【選択図】　図１
2004013187.tif 000002
【特許請求の範囲】
【請求項１】
書き込みアドレスおよび書き込みデータをバス上に順に送出して書き込み動作を行い、読み出しアドレスをバス上に送出した後にバス上の読み出しデータを入力して読み出し動作を行う制御回路と、
前記制御回路からの制御に基づいて、前記バス上の書き込みアドレスを基に前記バス上の書き込みデータを記憶領域に書き込み、前記バス上の読み出しアドレスを基に前記記憶領域から読み出した読み出しデータを前記バス上に送出するメモリと
を有し、
前記制御回路は、前記書き込み動作に続いて前記読み出し動作を行う場合に、前記メモリによる前記データの読み出しが可能になるまで、前記書き込みアドレスに続いて、前記読み出しアドレスを継続して前記バス上に送出する
データ処理装置。
【請求項２】
前記メモリは、前記書き込み動作に続いて前記読み出し動作を行う場合に、前記データの読み出し動作が可能になるまで制御信号を前記バス上に送出し、
前記制御回路は、前記制御信号を基に前記読み出しアドレスを継続して前記バス上に送出する
請求項１に記載のデータ処理装置。
【請求項３】
書き込みアドレスおよび書き込みデータをバス上に順に送出して書き込み動作を行い、読み出しアドレスを前記バス上に送出した後に前記バス上の読み出しデータを入力して読み出し動作を行う制御回路と、
第１のメモリと、
前記制御回路からの制御に基づいて、前記バス上の書き込みアドレスを基に前記バス上の書き込みデータを記憶領域に書き込み、前記バス上の読み出しアドレスを基に前記記憶領域から読み出した読み出しデータを前記バス上に送出し、前記制御回路によって前記記憶領域内の所定のアドレスに所定のデータが書き込まれると、前記第１のメモリとの間でデータ転送を行う第２のメモリと
を有し、
前記制御回路は、前記第２のメモリの前記記憶領域内の連続した前記読み出しアドレスまたは前記書き込みアドレスを前記バス上に送出することで、前記読み出し動作または前記書き込み動作をパイプラインで行い、前記所定のアドレスへの書き込み動作に続いて前記読み出し動作を行う場合に、前記第２のメモリによる前記データの読み出しが可能になるまで、前記所定のアドレスに続いて、前記読み出しアドレスを継続して前記バス上に送出し、
前記第２のメモリは、前記記憶領域内の最終アドレスを前記所定のアドレスとして規定している
データ処理装置。
【請求項４】
前記第２のメモリは、前記所定のアドレスへの書き込み動作に続いて前記読み出し動作を行う場合に、前記第２のメモリによる前記データの読み出しが可能になるまで、制御信号を前記バス上に送出し、
前記制御回路は、前記制御信号を基に前記所定のアドレスに続いて前記読み出しアドレスを継続して前記バス上に送出する
請求項３に記載のデータ処理装置。
【請求項５】
制御回路およびメモリを用いてデータ処理を行うデータ処理方法であって、
前記制御回路が前記メモリに書き込む場合に、前記制御回路が前記メモリに書き込みアドレスおよび書き込みデータを送出し、前記メモリが前記書き込みアドレスに基づいて前記書き込みデータを記憶領域に書き込み、
前記制御回路が前記メモリから読み出す場合に、前記制御回路が読み出しアドレスを送出し、前記メモリが前記読み出しアドレスを基に、前記記憶領域から読み出した読み出しデータを送出し、前記制御回路が前記バス上の読み出しデータを入力して読み出し動作を行い、
前記制御回路が、前記書き込み動作に続いて前記読み出し動作を行う場合に、前記メモリによる前記データの読み出しが可能になるまで、前記書き込みアドレスに続いて前記読み出しアドレスを継続して前記バス上に送出する
データ処理方法。
【請求項６】
前記メモリが、前記書き込み動作に続けて前記読み出し動作を行う場合に、前記データの読み出し動作が可能になるまで制御信号を前記バス上に送出し、
前記制御回路が、前記制御信号を基に前記読み出しアドレスを継続して前記バス上に送出する
請求項５に記載のデータ処理方法。
【請求項７】
第１および第２のメモリならびに制御回路を用いてデータ処理を行うデータ処理方法であって、
前記制御回路が前記第２のメモリに書き込む場合に、前記制御回路が書き込みアドレスおよび書き込みデータを送出し、前記第２のメモリが前記書き込みアドレスに基づいて前記書き込みデータを記憶領域に書き込み、
前記制御回路が前記第２のメモリから読み出す場合に、前記制御回路が読み出しアドレスを前記バス上に送出し、前記第２のメモリが前記バス上の読み出しアドレスを基に、前記記憶領域から読み出した読み出しデータを前記バス上に送出し、
前記第２のメモリが、前記記憶領域内の所定アドレスに所定のデータが書き込まれると、前記第１のメモリとの間でデータ転送を行い、
前記制御回路が、前記第２のメモリの前記記憶領域内の連続した読み出しアドレスまたは前記書き込みアドレスを前記バス上に送出することで、前記読み出し動作または前記書き込み動作に続いて、前記書き込み動作を行い、
前記制御回路が、前記所定のアドレスへの書き込み動作に続いて、前記読み出し動作を行う場合に、前記メモリによる前記データの読み出しが可能になるまで、前記所定のアドレスに続いて、前記読み出しアドレスを継続して、前記バス上に送出し、
前記第２のメモリが、前記記憶領域内の最終アドレスを前記所定のアドレスとして規定する
データ処理方法。
【請求項８】
前記第２のメモリが、前記所定のアドレスへの書き込み動作に続いて、前記読み出し動作を行う場合に、前記第２のメモリによる前記データの読み出しが可能になるまで制御信号を前記バス上に送出し、
前記制御回路が、前記制御信号を基に前記所定のアドレスに続いて前記読み出しアドレスを継続して前記バス上に送出する
請求項７に記載のデータ処理方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、たとえば、データの送受信を行う制御回路とメモリとを有するデータ処理装置およびデータ処理方法に関するものである。
【０００２】
【従来の技術】
従来、たとえばバスマスタがバスを介してスレーブとデータの送受信を行うデータ処理装置が知られている。
上述したデータ処理装置では、たとえば、バスマスタがスレーブからデータを読み出す場合には、バスマスタはバス上に読み出しアドレスを送出する。スレーブは、バス上の読み出しアドレスに基づいて内部記憶領域のデータをバス上に送出する。
バスマスタがスレーブにデータを書き込む場合には、バスマスタはバス上に書き込みアドレスを送出して、書き込みデータをバス上に送出する。スレーブは、バス上の書き込みアドレスおよび書き込みデータに基づいて内部記憶領域に記憶させる。
【０００３】
【発明が解決しようとする課題】
ところで、従来の上述したデータ処理装置では、たとえば、書き込みに続いて読み出し動作を行う場合には、スレーブは、書き込み動作と読み出し動作とが競合してしまい、たとえば書き込み動作を行っている間に、読み出しアドレスをラッチしておく必要があった。
このため、たとえば読み出しアドレスをラッチするラッチ回路を余分に設けなければならない。また、それに伴いラッチ回路の制御回路を設けなければならず、データ処理装置の回路構成が複雑かつ大規模になる。
このため、データ処理装置の回路構成の小規模化が望まれている。
【０００４】
本発明は、かかる事情に鑑みてなされたものであり、その目的は、回路構成の小規模化が可能なデータ処理装置およびデータ処理方法を提供することにある。
【０００５】
【課題を解決するための手段】
前記目的を達成するために、第１の発明のデータ処理装置は、書き込みアドレスおよび書き込みデータをバス上に順に送出して書き込み動作を行い、読み出しアドレスをバス上に送出した後にバス上の読み出しデータを入力して読み出し動作を行う制御回路と、前記制御回路からの制御に基づいて、前記バス上の書き込みアドレスを基に前記バス上の書き込みデータを記憶領域に書き込み、前記バス上の読み出しアドレスを基に前記記憶領域から読み出した読み出しデータを前記バス上に送出するメモリとを有し、前記制御回路は、前記書き込み動作に続いて前記読み出し動作を行う場合に、前記メモリによる前記データの読み出しが可能になるまで、前記書き込みアドレスに続いて、前記読み出しアドレスを継続して前記バス上に送出する。
【０００６】
第１の発明のデータ処理装置によれば、制御回路とメモリとが設けられている。
制御回路では、書き込みアドレスおよび書き込みデータをバス上に順に送出して書き込み動作が行われ、読み出しアドレスをバス上に送出した後にバス上の読み出しデータを入力して読み出し動作が行われる。
メモリでは、制御回路からの制御に基づいて、バス上の書き込みアドレスを基にバス上の書き込みデータを記憶領域に書き込み、バス上の読み出しアドレスを基に記憶領域から読み出した読み出しデータがバス上に送出される。
そして、制御回路では、書き込み動作に続いて読み出し動作を行う場合に、メモリによるデータの読み出しが可能になるまで、書き込みアドレスに続いて、読み出しアドレスが継続してバス上に送出される。
【０００７】
好適には、前記メモリは、前記書き込み動作に続いて前記読み出し動作を行う場合に、前記データの読み出し動作が可能になるまで制御信号を前記バス上に送出し、前記制御回路は、前記制御信号を基に前記読み出しアドレスを継続して前記バス上に送出する。
【０００８】
さらに、前記目的を達成するために、第２の発明のデータ処理装置は、書き込みアドレスおよび書き込みデータをバス上に順に送出して書き込み動作を行い、読み出しアドレスを前記バス上に送出した後に前記バス上の読み出しデータを入力して読み出し動作を行う制御回路と、第１のメモリと、前記制御回路からの制御に基づいて、前記バス上の書き込みアドレスを基に前記バス上の書き込みデータを記憶領域に書き込み、前記バス上の読み出しアドレスを基に前記記憶領域から読み出した読み出しデータを前記バス上に送出し、前記制御回路によって前記記憶領域内の所定のアドレスに所定のデータが書き込まれると、前記第１のメモリとの間でデータ転送を行う第２のメモリとを有し、前記制御回路は、前記第２のメモリの前記記憶領域内の連続した前記読み出しアドレスまたは前記書き込みアドレスを前記バス上に送出することで、前記読み出し動作または前記書き込み動作をパイプラインで行い、前記所定のアドレスへの書き込み動作に続いて前記読み出し動作を行う場合に、前記第２のメモリによる前記データの読み出しが可能になるまで、前記所定のアドレスに続いて、前記読み出しアドレスを継続して前記バス上に送出し、前記第２のメモリは、前記記憶領域内の最終アドレスを前記所定のアドレスとして規定している。
【０００９】
第２の発明のデータ処理装置によれば、制御回路と、第１のメモリと、第２のメモリとが設けられている。
制御回路では、書き込みアドレスおよび書き込みデータをバス上に順に送出して書き込み動作が行われ、読み出しアドレスをバス上に送出した後にバス上の読み出しデータを入力して読み出し動作が行われる。
第２のメモリでは、制御回路からの制御に基づいて、バス上の書き込みアドレスを基にバス上の書き込みデータを記憶領域に書き込まれ、バス上の読み出しアドレスを基に記憶領域から読み出した読み出しデータがバス上に送出され、制御回路によって記憶領域内の所定のアドレスに所定のデータが書き込まれると、第１のメモリとの間でデータ転送が行われる。
【００１０】
そして、制御回路では、第２のメモリの記憶領域内の連続した読み出しアドレスまたは書き込みアドレスをバス上に送出することで、読み出し動作または書き込み動作をパイプラインで行い、所定のアドレスへの書き込み動作に続いて読み出し動作を行う場合に、第２のメモリによるデータの読み出しが可能になるまで、所定のアドレスに続いて、読み出しアドレスが継続してバス上に送出される。そして、第２のメモリでは、記憶領域内の最終アドレスが所定のアドレスとして規定されている。
【００１１】
好適には、前記第２のメモリは、前記所定のアドレスへの書き込み動作に続いて前記読み出し動作を行う場合に、前記第２のメモリによる前記データの読み出しが可能になるまで、制御信号を前記バス上に送出し、前記制御回路は、前記制御信号を基に前記所定のアドレスに続いて前記読み出しアドレスを継続して前記バス上に送出する。
【００１２】
さらに、前記目的を達成するために、第３の発明のデータ処理方法は、制御回路およびメモリを用いてデータ処理を行うデータ処理方法であって、前記制御回路が前記メモリに書き込む場合に、前記制御回路が前記メモリに書き込みアドレスおよび書き込みデータを送出し、前記メモリが前記書き込みアドレスに基づいて前記書き込みデータを記憶領域に書き込み、前記制御回路が前記メモリから読み出す場合に、前記制御回路が読み出しアドレスを送出し、前記メモリが前記読み出しアドレスを基に、前記記憶領域から読み出した読み出しデータを送出し、前記制御回路が前記バス上の読み出しデータを入力して読み出し動作を行い、前記制御回路が、前記書き込み動作に続いて前記読み出し動作を行う場合に、前記メモリによる前記データの読み出しが可能になるまで、前記書き込みアドレスに続いて前記読み出しアドレスを継続して前記バス上に送出する。
【００１３】
好適には、前記メモリが、前記書き込み動作に続けて前記読み出し動作を行う場合に、前記データの読み出し動作が可能になるまで制御信号を前記バス上に送出し、前記制御回路が、前記制御信号を基に前記読み出しアドレスを継続して前記バス上に送出する。
【００１４】
さらに、前記目的を達成するために、第４の発明のデータ処理方法は、第１および第２のメモリならびに制御回路を用いてデータ処理を行うデータ処理方法であって、前記制御回路が前記第２のメモリに書き込む場合に、前記制御回路が書き込みアドレスおよび書き込みデータを送出し、前記第２のメモリが前記書き込みアドレスに基づいて前記書き込みデータを記憶領域に書き込み、前記制御回路が前記第２のメモリから読み出す場合に、前記制御回路が読み出しアドレスを前記バス上に送出し、前記第２のメモリが前記バス上の読み出しアドレスを基に、前記記憶領域から読み出した読み出しデータを前記バス上に送出し、前記第２のメモリが、前記記憶領域内の所定アドレスに所定のデータが書き込まれると、前記第１のメモリとの間でデータ転送を行い、前記制御回路が、前記第２のメモリの前記記憶領域内の連続した読み出しアドレスまたは前記書き込みアドレスを前記バス上に送出することで、前記読み出し動作または前記書き込み動作に続いて、前記書き込み動作を行い、前記制御回路が、前記所定のアドレスへの書き込み動作に続いて、前記読み出し動作を行う場合に、前記メモリによる前記データの読み出しが可能になるまで、前記所定のアドレスに続いて、前記読み出しアドレスを継続して、前記バス上に送出し、前記第２のメモリが、前記記憶領域内の最終アドレスを前記所定のアドレスとして規定する。
【００１５】
好適には、前記第２のメモリが、前記所定のアドレスへの書き込み動作に続いて、前記読み出し動作を行う場合に、前記第２のメモリによる前記データの読み出しが可能になるまで制御信号を前記バス上に送出し、前記制御回路が、前記制御信号を基に前記所定のアドレスに続いて前記読み出しアドレスを継続して前記バス上に送出する。
【００１６】
【発明の実施の形態】
図１は、本発明に係るデータ処理装置の一実施の形態を示す構成図である。
本発明に係るデータ処理装置１は、バスマスタ２、スレーブ３、スレーブ４、およびバスＢＳを有する。
バスマスタ２、スレーブ３、およびスレーブ４は、たとえば不図示のクロック生成部により生成されるクロック信号のエッジに同期して動作する。
バスマスタ２は本発明に係る制御回路に相当し、スレーブ３は本発明に係るメモリに相当する。
【００１７】
バスマスタ２は、各種バス信号（コントロール、データ、アドレス等）をバスＢＳに送出して、スレーブ３に書き込み動作および読み出し動作を行う。
たとえば、バスマスタ２は、書き込みアドレスおよび書き込みデータをバスＢＳ上に順に送出して書き込み動作を行い、読み出しアドレスをバスＢＳ上に送出した後に、バスＢＳ上の読み出しデータを入力して読み出し動作を行う。
【００１８】
スレーブ３は、ＲＡＭ３１を有する。ＲＡＭ３１は、本発明に係る記憶領域に相当する。
スレーブ３は、バスマスタ２からの制御に基づいて、バスＢＳ上の書き込みアドレスを基にバスＢＳ上の書き込みデータをＲＡＭ３１に書き込み、バスＢＳ上の読み出しアドレスを基にＲＡＭ３１から読み出した読み出しデータをバスＢＳ上に送出する。
スレーブ４は、ＲＡＭ４１を有する。
スレーブ４は、スレーブ３からの制御に基づいて、所定のバスを介してスレーブ３とデータ転送を行う。
【００１９】
バスマスタ２とスレーブ３は、バスＢＳに接続されている。
バスＢＳは、複数のバス、たとえばアドレスバス、データバス、および制御信号バス等を有する。
【００２０】
アドレスバスは、アドレスを伝送するバスであり、データバスは所望のデータを伝送するバスである。
制御信号バスは、たとえば、書き込み制御信号バス、読み出し制御信号バス、レディ制御信号バス等を有する。
書き込み制御信号バスは、バスマスタ２がスレーブ３に書き込む際にハイレベルに設定される。
読み出し制御信号バスは、バスマスタ２がスレーブ３から所定のデータを読み出す際にハイレベルに設定される。
レディ制御信号バスは、スレーブ３がバスマスタ２にレディ制御信号を送出するバスである。
【００２１】
スレーブ３は、バスマスタ２によるアクセスを許可する際には、ＲＥＡＤＹ（レディ）制御信号をハイレベルに設定する。
スレーブ３は、ＲＡＭ３１にアクセスする際には、レディ制御信号をロウレベルに設定し、バスマスタ２からＲＡＭ３１へのアクセスを禁止する。
【００２２】
＜バスマスタ２からスレーブ３のＲＡＭ３１へのアクセス＞
バスマスタ２からスレーブ３への読み出し動作（リードアクセス）および書き込み動作（ライトアクセス）は、たとえば、アドレスを転送するアドレスフェーズＡ、データを読み出すまたは書き込むデータフェーズＤが順に、所定の期間（サイクル単位）必要であり、１つの命令が完了するまでに最低２サイクルを要する。
【００２３】
バスマスタ２は、各フェーズ毎にスレーブ３から返されるレディ制御信号（応答信号とも言う）に応じて、スレーブ３が所定のフェーズを正常に完了したか否かを判断する。
【００２４】
たとえば、バスマスタ２は、各フェーズにおけるクロック信号の立ち上がりエッジのタイミングで、レディ制御信号のレベルに応じて上述の判断を行う。また、上述した形態に限られるものではない。たとえば、バスマスタ２は立ち下がりエッジのタイミングで判断してもよい。
【００２５】
図２は、図１に示したデータ処理装置の読み出し動作を説明するためのタイミング図である。
バスマスタ２は、たとえば、図２に示すように、スレーブ３へ読み出し動作（リードアクセス：ノーウエイト）を行う。
【００２６】
タイミングＴ０において、バスマスタ２は、アドレスフェーズＡで、読み出し制御信号をハイレベルに設定し、読み出しアドレスＡをバスＢＳ上に送出する。
【００２７】
タイミングＴ１（ＴＲＡ＿Ｓ）において、スレーブ３は、バスＢＳ上の読み出しアドレスＡに基づいて、アドレスＲＡＭ３１に格納されているデータを読み出し始める。スレーブ３は、タイミングＴ２（ＴＲＤ＿Ｓ）までに、読み出したデータＤをバスＢＳ上に送出する。
【００２８】
タイミングＴ２（ＴＲＤ＿Ｓ）において、バスマスタ２は、バスＢＳ上のデータＤを取り込む。
上述の場合には、スレーブ３はレディ制御信号を常にハイレベルに設定している。アドレスフェーズおよびデータフェーズは、共に１サイクルである。
【００２９】
図３は、図１に示したデータ処理装置の書き込み動作を説明するためのタイミング図である。
バスマスタ２は、たとえば、図３に示すように、スレーブ３へ書き込み動作（ライトアクセス：ノーウエイト）を行う。
【００３０】
タイミングＴ０において、バスマスタ２は、アドレスフェーズＡで書き込み制御信号をハイレベルに設定し、書き込みアドレスＡをバスＢＳ上に送出する。
【００３１】
タイミングＴ１（ＴＷＡ＿Ｓ）において、バスマスタ２は、レディ制御信号を検出し、ハイレベルの場合にはスレーブ３が書き込みアドレスＡを正常に受信したと判断し、書き込みデータＤをバスＢＳ上、具体的にはデータバス上に出力する。
スレーブ３は、ＲＡＭ３１の書き込みアドレスＡを正常に受信した場合には、レディ制御信号をハイレベルに設定し、たとえば正常に受信しない場合にはレディ制御信号をロウレベルに設定する。
バスマスタ２は、レディ制御信号がロウレベルの場合には、ハイレベルになるまで書き込みアドレスＡを送出し続ける。
スレーブ３は、ＲＡＭ３１に対する書き込みアドレスＡを受信する。
【００３２】
タイミングＴ２（ＴＷＤ＿Ｓ）において、スレーブ３は、ＲＡＭ３１の書き込みアドレスへ、バスＢＳ上の書き込みデータＤを書き込む。
スレーブ３は、ＲＡＭ３１の書き込みデータＤを正常に受信した場合には、レディ制御信号をハイレベルに設定し、たとえば正常に受信しない場合にはレディ制御信号をロウレベルに設定する。
【００３３】
バスマスタ２は、レディ制御信号がロウレベルの場合には、ハイレベルになるまで書き込みデータＤを送出し続ける。
上述の場合には、レディ制御信号が常にハイレベルになっているため、アドレスフェーズおよびデータフェーズは、共に１サイクルとなる。
【００３４】
スレーブ３は、バスマスタ２からのアクセスに対してウエイトを挿入したい場合には、レディ制御信号をロウレベルに設定する。
【００３５】
図４は、図１に示したデータ処理装置のスレーブの構成の一具体例を示す図である。スレーブ３の構成の一具体例を図４を参照しながら説明する。
【００３６】
スレーブ３は、たとえば図４に示すように、ＲＡＭ３１、およびアドレスレジスタ３２を有する。
アドレスレジスタ３２は、たとえば、アドレスフェーズにおいて、バスＢＳ上（具体的にはアドレスバス上）のアドレスデータをラッチ（一時格納）する。
アドレスレジスタ３２は、書き込みデータフェーズにおいて、書き込みデータ（ＷｒｉｔｅＤＡＴＡ）が受信されるとＲＡＭ３１に送出する。
たとえば、上述したＲＡＭ３１への送出処理の制御に関しては不図示の制御部が行う。
【００３７】
ＲＡＭ３１は、たとえばクロック信号ＣＬＫのエッジにて読み出しあるいは書き込みを行う（同期式ＲＡＭ）。
ＲＡＭ３１には、データバス上の所定のデータ、制御信号バス上の制御信号、およびクロック信号ＣＬＫが入力される。
【００３８】
ＲＡＭ３１は、アドレスレジスタ３２から出力されたＲＡＭアドレスデータに応じて、所定のデータを書き込む。
また、ＲＡＭ３１は、アドレスレジスタ３２から入力されたＲＡＭアドレスデータに応じて、所定のデータを読み出し、読み出しデータ（Ｒｅａｄ　ＤＡＴＡ）をバスＢＳ上に送出する。
【００３９】
図５は、図４に示したデータ処理装置の一具体例の動作を説明するためのタイミング図である。図５（ａ）は、バスＢＳ上の信号のタイミング図であり、図５（ｂ）は、ＲＡＭ３１へ入力される信号のタイミング図である。スレーブ３への書き込み動作の一具体例を図５を参照しながら説明する。
【００４０】
ＲＡＭ３１に対して書き込みを行う場合には、ＲＡＭＡｄｄｒｅｓｓと、ＷｒｉｔｅＤＡＴＡをＲＡＭ３１に対して同時に与え、クロック信号ＣＬＫのエッジにて書き込みを行う。
【００４１】
具体的には、タイミングＴ０において、バスマスタ２は、書き込み制御信号をハイレベルに設定し、書き込みアドレスＡをバスＢＳ上に送出する。
タイミングＴ１において、アドレスレジスタ３２は、アドレスバス上の書き込みアドレスＡをラッチする。バスマスタ２は、書き込みデータＤをバスＢＳ（データバス）上に送出する。
タイミングＴ２において、ＲＡＭ３１は、アドレスレジスタ３２から出力された書き込みアドレスＬＡに基づいて、データバス上の書き込みデータＬＤの書き込みを開始する。
【００４２】
データ処理装置１は、バスＢＳにおいて、たとえば転送のデータフェーズに次の転送のアドレスフェーズを重ねて転送する（以下、パイプライン転送と言う）。このパイプライン転送は書き込み動作に関して連続したアドレスに対してのみ連続書き込みを行うことができる。
【００４３】
図６は、図１に示したデータ処理装置の連続した書き込み動作または読み出し動作を説明するためのタイミング図である。図６を参照しながら、バスマスタ２がスレーブ３のＲＡＭ３１の連続アドレスに対する連続アクセス（ノーウエイト）を説明する。
【００４４】
連続読み出し動作の場合、スレーブ３は、タイミングＴ１，Ｔ２，Ｔ３でＲＡＭ３１から読み出しを開始する。
具体的には、タイミングＴ０において、バスマスタ２は、たとえば読み出し制御信号をハイレベルに設定し、読み出しアドレスＡ１をバスＢＳ上に出力する。
【００４５】
タイミングＴ１において、スレーブ３は、バスＢＳ上のアドレスＡ１を基にＲＡＭ３１に対して読み出し動作を開始し、タイミングＴ２までに、所定の読み出しデータＤ１をデータバスに送出する。バスマスタ２は読み出しアドレスＡ２をアドレスバス上に送出する。
【００４６】
タイミングＴ２において、バスマスタ２は、データバス上のデータＤ１を読み取る。スレーブ３は、アドレスバス上のアドレスＡ２を基にＲＡＭ３１に対して読み出し動作を開始し、タイミングＴ３までに所定の読み出しデータＤ２をデータバス上に送出する。バスマスタ２は、アドレスバス上に読み出しアドレスＡ３を送出する。
【００４７】
タイミングＴ３において、バスマスタ２は、データバス上のデータＤ２を読み取る。スレーブ３は、アドレスバス上のアドレスＡ３を基にＲＡＭ３１に対して読み出し動作を開始し、タイミングＴ４までに所定の読み出しデータＤ３をデータバス上に送出する。
タイミングＴ４において、バスマスタ２は、データバス上のデータＤ３を読み取る。
【００４８】
連続書き込みの場合、スレーブ３は、タイミングＴ２，Ｔ３，Ｔ４で書き込みを開始する。
具体的には、タイミングＴ０において、バスマスタ２は、たとえば書き込み制御信号をハイレベルに設定し、書き込みアドレスＡ１をバスＢＳ上に送出する。
【００４９】
タイミングＴ１において、スレーブ３は、書き込みアドレスＡ１をアドレスレジスタ３２にラッチする。バスマスタ２は、書き込みデータＤ１をデータバス上に、書き込みアドレスＡ２をアドレスバス上に送出する。
【００５０】
タイミングＴ２において、バスマスタ２は、ラッチしていたアドレスＡ１を基にアドレスバス上の書き込みデータＤ１をＲＡＭ３１に書き込みを開始する。バスマスタ２は、アドレスバス上のアドレスＡ２をアドレスレジスタ３２にラッチする。バスマスタ２は、書き込みアドレスＡ３をアドレスバス上に送出する。
【００５１】
タイミングＴ３において、バスマスタ２は、ラッチしていたアドレスＡ２を基にアドレスバス上の書き込みデータＤ２をＲＡＭ３１に書き込みを開始する。バスマスタ２は、アドレスバス上のアドレスＡ３をアドレスレジスタ３２にラッチする。
タイミングＴ４において、バスマスタ２は、ラッチしていたアドレスＡ３を基にアドレスバス上の書き込みデータＤ３をＲＡＭ３１に書き込みを開始する。
【００５２】
＜関連技術＞
図７は、一般的なデータ処理装置の書き込みに続いてパイプラインで読み出しを行う動作を説明するためのタイミング図である。
たとえば、一般的なデータ処理装置では、書き込みに続いてパイプラインで読み出しを行う場合には、スレーブ３において、書き込み動作と読み出し動作が競合するため、書き込み動作が終了するまで、読み出しアドレスをラッチしておく必要がある。
【００５３】
具体的には、たとえば図７に示すように、タイミングＴ０において、バスマスタ２は、たとえば書き込み制御信号をハイレベルに設定し、書き込みアドレスＡｗをアドレスバス上に送出する。
【００５４】
タイミングＴ１において、スレーブ３は、書き込みアドレスＡｗをラッチする。バスマスタ２は、書き込み制御信号をロウレベルに設定して、書き込みデータＤ１をデータバス上に送出する。バスマスタ２は、読み出し制御信号をハイレベルに設定し、読み出しアドレスＡｒをアドレスバス上に送出する。
【００５５】
タイミングＴ２において、スレーブ３は、ラッチしていたアドレスＡｗを基に、データバス上の書き込みデータＤｗをＲＡＭ３１に書き込みを開始する。しかし、このタイミングＴ２は、スレーブ３は、アドレスバス上の読み出しアドレスＡｒを基に読み出し動作を開始するタイミングであり、書き込み動作と競合してしまう。
【００５６】
上述の競合を解消するため、たとえば、一般的なデータ処理装置において、スレーブ３は、タイミングＴ２から１サイクル、レディ制御信号をロウレベルに設定し、ウエイトを挿入する。こうすることで、バスマスタ２は、レディ制御信号がロウレベルであることを検出し、読み出しアクセスのデータフェーズが未完了であると判断し、１サイクルの間、読み出しデータフェーズを延長する。
これにより、スレーブ３はタイミングＴ２において、書き込みデータＤｗをＲＡＭ３１に書き込む。バスマスタ２は、タイミングＴ４でバス上の読み出しデータＤｒを読み取る。
【００５７】
図８は、図７に示した書き込みに続いて読み出しを行う際に必要なデータ処理装置の構成を示す図である。
一般的なデータ処理装置において、たとえばスレーブ３が図７に示したようにウエイトを挿入（レディ制御信号をロウレベルに設定）した場合には、スレーブ３は読み出しアドレスＡｒを保持しておく必要がある。
【００５８】
このため、スレーブ３において、たとえば図８に示すように、読み出しアドレスの一時退避用レジスタ（バックアップレジスタとも言う）３３、およびアドレス選択回路３４等を設ける必要がある。
バックアップレジスタ３３は、たとえば、読み出しアドレスを一時ラッチするレジスタである。
アドレス選択回路３４は、通常はアドレスバス上のアドレスをＲＡＭ３１に出力し、たとえば上述したようにパイプラインで書き込みに続いて読み出し動作を行う場合には、バックアップレジスタ３３でラッチしているアドレスをＲＡＭ３１に出力する。
このように、上述した一般的なデータ処理装置では、パイプラインで書き込みに続いて読み出し動作を行う場合には、バックアップレジスタやアドレス選択回路等を設ける必要があり、スレーブ３の回路の複雑化や大規模化につながる。
【００５９】
＜本発明に係るデータ処理装置＞
このため、本発明に係るデータ処理装置１では、パイプラインで書き込みに続いて読み出し動作を行う場合には、バスマスタ２は、スレーブ３が読み出しが可能になるまで、読み出しアドレスを継続してバス上に送出する。
具体的には、スレーブ３は、パイプラインで書き込みに続いて読み出し動作を行う場合には、読み出し動作が可能になるまでレディ制御信号をバスＢＳ上に送出し、バスマスタ２は、レディ制御信号を基に読み出しアドレスを継続してバスＢＳ上に送出する。
たとえば、スレーブ３はレディ制御信号のレベルを切り替え、バスマスタ２は、レディ制御信号のレベルに応じて上述の所望の処理を行ってもよい。
以下、図９を参照しながら詳細に説明する。
【００６０】
図９は、図１に示した本発明に係るデータ処理装置のパイプラインで書き込みに続いて読み出しを行う場合の動作を説明するためのタイミング図である。
【００６１】
図９に示すように、タイミングＴ０において、バスマスタ２は、たとえば、書き込み制御信号をハイレベルに設定し、書き込みアドレスＡｗをアドレスバスに送出する。
【００６２】
タイミングＴ１において、スレーブ３は、書き込みアドレスＡｗをラッチする。バスマスタ２は、書き込み制御信号をロウレベルに設定して、書き込みデータＤｗをデータバス上に送出する。バスマスタ２は、読み出し制御信号をハイレベルに設定し、読み出しアドレスＡｒをアドレスバス上に送出する。スレーブ３は、書き込みに続いて読み出しがパイプラインで連続する場合には、レディ制御信号をロウレベルに設定する。
【００６３】
タイミングＴ２において、スレーブ３は、ラッチしていたアドレスＡｗを基に、データバス上の書き込みデータをＲＡＭ３１に書き込みを開始する。バスマスタ２では、レディ制御信号がロウレベルであることを検出すると、スレーブ３が読み出しアドレスＡｒおよび書き込みデータＤｗを正常に受信していないと判別し、同じアドレスＡｒとデータＤｗを送出し続ける。
【００６４】
タイミングＴ３において、スレーブ３は、アドレスバス上の読み出しアドレスＡｒを基にＲＡＭ３１から読み出しを開始する。
タイミングＴ４において、バスマスタ２は、データバス上の読み出しデータＤｒを取り込む。
【００６５】
上述したように、本実施の形態のデータ処理装置１では、書き込みアドレスおよび書き込みデータをバスＢＳ上に順に送出して書き込み動作を行い、読み出しアドレスをバスＢＳ上に送出した後にバスＢＳ上の読み出しデータを入力して読み出し動作を行うバスマスタ２と、バスマスタ２からの制御に基づいてバスＢＳ上の書き込みアドレスを基にバス上の書き込みデータをＲＡＭ３１に書き込み、バスＢＳ上の読み出しアドレスを基にＲＡＭ３１から読み出した読み出しデータをバスＢＳ上に送出するスレーブ３とを設ける。
そして、バスマスタ２は、書き込み動作に続いて読み出し動作を行う場合に、スレーブ３によるデータの読み出しが可能になるまで、書き込みアドレスに続いて、読み出しアドレスを継続してバスＢＳ上に送出するので、たとえばバックアップレジスタやアドレス選択回路等の余計な回路を設けることなく、簡単な回路構成でデータ転送を行うことができる。また、データ処理装置１の回路構成を小規模化することができる。
【００６６】
＜ＤＭＡ転送＞
データ処理装置１は、スレーブ３とスレーブ４との間で、ＤＭＡ（Ｄｉｒｅｃｔ　ｍｅｍｏｒｙ　ａｃｃｅｓｓ）転送を行う場合には、特定のスレーブ、たとえばスレーブ３がＤＭＡ転送を制御する。
しかし、ＤＭＡ転送中はバスマスタ２によるスレーブ３へのアクセスと、ＤＭＡ転送との競合を避けるために、バスマスタ２はバスＢＳの使用を禁止されなければならない。バスマスタ２からのアクセスを禁止した状態でスレーブ３とスレーブ４との間でＤＭＡ転送を行うことを、マスタロックＤＭＡ転送という。
【００６７】
図１に示した本発明に係るデータ処理装置１では、スレーブ３は、単独で、ＲＡＭ３１内のデータを、スレーブ４との間で送受信可能である。
スレーブ３は本発明に係る第２のメモリに相当し、スレーブ４は本発明に係る第１のメモリに相当する。
【００６８】
データ処理装置１では、スレーブ３によるスレーブ４間でのデータ転送を開始させる場合には、バスマスタ２は、スレーブ３のＲＡＭ３１の所定のアドレス（以降、トリガアドレス：トリガレジスタとも言う）へ、所定のデータを書き込む。スレーブ３は、所定のアドレスに所定のデータが書き込まれると、スレーブ４と所定の方式でＤＭＡ転送を行う。
スレーブ３が、スレーブ４との間でデータ転送中は、バスマスタ２からスレーブ３の内部記憶領域へのアクセスが競合するのを避けるため、スレーブ３はレディ制御信号をロウレベルに設定し、バスマスタ２からのアクセスを禁止する。
【００６９】
＜関連技術＞
一般的なデータ処理装置では、上述のマスタロックＤＭＡ転送を行う際に、トリガアドレスに所定のデータを書き込み、連続して書き込み動作を行う場合には、上述したような一時退避用のレジスタ（バックアップレジスタ）や、アドレス選択回路等を設ける必要がある。以下に具体的に説明する。
【００７０】
図１０は、一般的なデータ処理装置のスレーブ間のＤＭＡ転送の一具体例を説明するためのタイミング図である。
マスタロックＤＭＡ転送は、バスマスタ２によるスレーブ３内のトリガアドレスへの書き込みにより開始される。
スレーブ３は、たとえば、トリガアドレスをＲＡＭ３１のアドレス空間の所定のアドレスに設定する。
【００７１】
タイミングＴ０において、バスマスタ２は、書き込み制御信号をハイレベルに設定し、トリガアドレスのアドレスＡ１を、アドレスバス上に送出する。
タイミングＴ１において、スレーブ３は、アドレスＡ１をラッチする。バスマスタ２は、アドレスレジスタに所定のデータを書き込むために、データバス上に所定のデータＤ１を送出し、同じタイミングＴ１で、たとえば読み出しアドレスＡ２または書き込みアドレスＡ２をアドレスバスに送出する。
【００７２】
タイミングＴ２（Ｔｓｂ）において、スレーブ３はラッチしているアドレスＡ１を基に、バス上のデータＤ１をＲＡＭ３１のトリガアドレスに書き込むことで、マスタロックＤＭＡ転送を行う。スレーブ３はマスタロックＤＭＡ転送の間は強制的にレディ制御信号をロウレベルに設定する。
スレーブ３は、マスタロックＤＭＡ転送が終了すると（タイミングＴ＿ｎ）、レディ制御信号をハイレベルに設定する。このタイミングＴ＿ｎにおいて、たとえば、読み出しアドレスＡ２であった場合には、ＲＡＭ３１から読み出しバスＢＳに送出する。
【００７３】
しかし、レディ制御信号がロウレベルになる直前のアドレスフェーズは、立ち上がりエッジでレディ制御信号がハイレベルである為に有効であり、マスタロックＤＭＡ転送終了後のタイミングＴ＿ｎにおいて、読み出しデータＤ２を供給（リードアクセスの場合）／書き込みアドレスとして使用（ライトアクセスの場合）する必要がある。このため、アドレスＡ２を、マスタロックＤＭＡ転送中、たとえば図８に示したバックアップレジスタ等に保存しておく必要がある。
【００７４】
このように、マスタロックＤＭＡ転送の開始時におけるトリガアドレスへの書き込みと、他の読み出しまたは書き込みがパイプラインで連続して起こる場合には、たとえば、バックアップレジスタやアドレス選択回路等が必要となる。このため回路規模が増大すると同時にバックアップレジスタへの情報の待避、およびバックアップレジスタからの情報の復帰などの制御が余計に増加する。
【００７５】
図１１は、一般的なデータ処理装置のスレーブ間のＤＭＡ転送の一具体例を説明するためのタイミング図である。
上述した一般的なデータ処理装置では、トリガアドレスへの書き込みに続いて、連続して書き込み動作を行う場合には不具合が生じる。以下、図１１のタイミング図を参照しながら、具体的に説明する。
【００７６】
図１１において、アドレスフェーズＡｗ１およびデータフェーズＤｗ１が、トリガアドレスへの書き込みアクセスである。
タイミングＴ０において、バスマスタ２は、書き込み制御信号をハイレベルに設定し、トリガアドレスのアドレスＡｗ１をアドレスバス上に送出する。
タイミングＴ１において、スレーブ３は、アドレスＡｗ１をラッチする。バスマスタ２は、データバス上に所定のデータＤｗ１をデータバス上に送出し、同じタイミングＴ１で、たとえば書き込みアドレスＡｗ２をアドレスバス上に送出する。
【００７７】
タイミングＴ２において、スレーブ３は、ＲＡＭ３１にアドレスＡｗ１を基にデータＤｗ１を書き込み、スレーブ４との間で所定の方式でＤＭＡ転送を開始する。
バスマスタ２は、レディ制御信号がハイレベルであることを検出し、アドレスＡｗ２の送出は成功したと判断し、次のサイクルでは、書き込みデータＤｗ２をデータバス上に送出を開始する。
また、ＤＭＡ転送中、スレーブ３は、レディ制御信号をロウレベルに設定する。
バスマスタ２は、ＤＭＡ転送中、レディ制御信号がロウレベルであることを検出し、書き込みデータＤｗ２が正常にスレーブ３が受信していないと判別し、データＤｗ２をデータバス上に送出し続ける。
【００７８】
タイミングＴｎにおいて、スレーブ３は、ＤＭＡ転送が終了すると、レディ制御信号をハイレベルに設定する。
タイミングＴｎ＋１において、スレーブ３は、ＲＡＭ３１に、アドレスデータＡｗ２を基に、データバス上の書き込みデータＤｗ２を書き込む。
【００７９】
一般的なデータ処理装置は、上述したタイミングでトリガアドレスへの書き込みと連続した書き込みを行う場合には不具合を生じる。具体的には、ＲＡＭ３１への２回目の書き込みにおいて、アドレスデータＡｗ２と書き込みデータＤＷ２のタイミングが、スレーブ３によるＤＭＡ転送によって分断されている。このため、スレーブ３は、アドレスＡｗ２をタイミングＴｎ＋１までの間、たとえばアドレスレジスタに保持する必要がある。またＤＭＡ転送中、アドレスレジスタを占有してしまう。
アドレスレジスタは、ＲＡＭ（あるいはレジスタ）へ直接値を提供するポートとして用いる。また、アドレスレジスタはＤＭＡ処理中において、スレーブ３のＲＡＭ３１とスレーブ４のＲＡＭ４１間でのデータ転送を行う際に使用することも可能である。
【００８０】
しかし、上述した一般的なデータ処理装置では、ＤＭＡ転送中、アドレスＡｗ２がアドレスレジスタを独占してしまうため、アドレスレジスタをＤＭＡ転送の処理用のレジスタとして使用することができず、レジスタの可用性が低下する。
また、アドレスレジスタがＤＭＡ転送を行う機構として使用できないために別途レジスタを設けた場合には、回路冗長の問題が生じる。
【００８１】
＜本発明に係るデータ処理装置のＤＭＡ転送＞
本発明の本実施の形態に係るデータ処理装置１では、上述した点を解決するために、バスマスタ２からスレーブ３への書き込みに続いて読み出しアクセスがパイプラインで連続する場合に、バスマスタ２は、スレーブ３によるデータの読み出しが可能になるまで、読み出しアドレスを継続してバス上に送出する。
より具体的には、スレーブ３は、ＤＭＡ転送処理後、ＲＡＭ３１から読み出しが可能になるまで、レディ制御信号をバスＢＳを介してバスマスタ２に送出する。バスマスタ２は、レディ制御信号に基づいて読み出しアドレスを継続してバス上に送出する。
【００８２】
さらに、本実施の形態に係るデータ処理装置１において、スレーブ３は、トリガアドレスをスレーブ３のアドレス空間において、それ以降、連続しないアドレスに設定する。具体的には、スレーブ３は、ＲＡＭ３１内の最終アドレスをＤＭＡ転送を行わせる所定のアドレスとして規定する。
以下、本実施の形態に係るデータ処理装置のＤＭＡ転送、特に、上述のトリガアドレスの規定に関して詳細に説明する。
【００８３】
図１２は、図１に示したデータ処理装置のスレーブのトリガアドレスを説明するための図である。
スレーブ３は、図１２に示すように、トリガアドレスをスレーブ３のＲＡＭ３１のアドレス空間の最終アドレスに設定する。
バスマスタ２は、上述したように、連続したアドレスに書き込み動作を行う場合にパイプライン処理を行う。
【００８４】
スレーブ３は、トリガアドレスとして、ＲＡＭ３１内の最終アドレスをＤＭＡ転送を行わせる所定のアドレスと規定することで、バスマスタ２はトリガアドレスの次のアドレスに書き込むパイプライン動作を行うことがなくなる。
【００８５】
上述の構成の本実施の形態のデータ処理装置１では、トリガアドレスへの書き込みに続いて読み出し動作がパイプラインで連続する場合か、またはトリガアドレスへの書き込みに連続して読み出し動作がこない場合かの、どちらかである。
【００８６】
次に、上述したレディ制御信号のタイミングと、上述したようにトリガアドレスを設定することにより、トリガアドレスの書き込み動作に続いて読み出し動作がパイプラインで連続する場合に不具合がないことを説明する。
図１３は、図１に示した本発明の本実施の形態に係るデータ処理装置のスレーブ間のダイレクトメモリアクセスの動作の一具体例を説明するためのタイミング図である。
【００８７】
図１３に示すように、タイミングＴ０において、バスマスタ２は、ＤＭＡ転送を行わせるために、書き込み制御信号をハイレベルに設定し、スレーブ３により設定されたトリガアドレスＡ１をアドレスバス上に送出する。
【００８８】
タイミングＴ１において、スレーブ３は、アドレスバス上のトリガアドレスを示すアドレスＡ１をラッチする。
バスマスタ２は、読み出し制御信号をハイレベルに設定し、読み出しアドレスＡｒをアドレスバス上に送出する。また、バスマスタ２は、データＤ１をデータバス上に送出する。
スレーブ３は、トリガアドレスへの書き込みアドレスに続いて読み出しアドレスがアドレスバス上に検出されると、ＲＡＭ３１のトリガアドレスに所定のデータＤ１を書き込み、スレーブ４と所定のＤＭＡ転送を開始する。スレーブ３は、ＤＭＡ転送中、ＤＭＡ転送が終了するまで、たとえば具体的にはＲＡＭ３１からデータの読み出しが可能になるまで、レディ制御信号をロウレベルに設定する。
【００８９】
タイミングＴ２において、スレーブ３は、ＲＡＭ３１のトリガアドレスＡ１に、所定のデータＤ１を書き込むことにより、スレーブ４との間で、所定のマスタロックＤＭＡ転送を開始する。
バスマスタ２は、タイミングＴ１において、レディ制御信号がハイレベルであることを検出し、読み出しアドレスＡｒ、および書き込みデータＤ１を送出する。
【００９０】
スレーブ３は、スレーブ４との間で所定のＤＭＡ転送が終了すると、タイミングＴｎにおいて、レディ制御信号をハイレベルに設定する。
タイミングＴｎ＋１において、バスマスタ２は、レディ制御信号がハイレベルであることを検出すると、読み出しアドレスＡｒの送出を終了する。スレーブ３は、アドレスＡｒを基に、ＲＡＭ３１内のデータを読み出し、データバス上にデータＤｒを送出する。
タイミングＴｎ＋２において、バスマスタ２は、データバス上のデータＤｒを読み取る。
【００９１】
上述したように、本実施の形態に係るデータ処理装置１では、バスマスタ２は、トリガアドレスへの書き込み動作に続いて読み出し動作をパイプラインで行う場合には、スレーブ３によるデータの読み出しが可能になるまで、トリガアドレスに続いて、読み出しアドレスを継続してバス上に送出するので、スレーブ３において、読み出しアドレスＡｒを保持する必要がなくなり、たとえばバックアップレジスタやアドレス選択回路等の余分な回路を設ける必要がなく、回路構成の小規模化が可能である。
【００９２】
具体的には、バスマスタ２からのパイプラインで連続した書き込み読み出し命令に対するウエイトを適当なタイミングで挿入すること、およびスレーブ３が、トリガアドレスのアドレスを不連続な値にすること、より具体的にはトリガアドレスをＲＡＭ３１の最終アドレスに規定することにより、たとえばバックアップレジスタやアドレス選択回路等の余分な回路を設ける必要がなく、回路構成の小規模化が可能である。また、これによりＤＭＡ転送の制御処理が一般的なデータ処理装置に比べて簡単に行うことができる。
【００９３】
図１４は、図１に示したデータ処理装置がトリガアドレスへの書き込みに連続して読み出しがこない場合を説明するためのタイミング図である。
データ処理装置１は、図１４に示すように、トリガアドレスへの書き込みに連続して読み出しがこない場合には、図１３に示した一般的なデータ処理装置に比べて、バスマスタ２からスレーブ３への転送効率が悪化する（何も転送しないサイクルが増加するため）ように見えるが、データ処理装置１では、パイプラインで連続した書き込み動作が発生するためには、制御上連続した手順と連続した書き込みアクセスが対応している場合に限られるため、パフォーマンス面での向上は、所定のレジスタ、たとえばトリガアドレスやアドレスレジスタ等を、ＲＡＭ３１のどのアドレスに規定するかに大きく左右される。
【００９４】
すなわち、トリガアドレスへの書き込みに制御上連続する処理（レジスタへの書き込みを必要とする）がない場合（すなわち、トリガアドレスへの書き込みにパイプラインで連続した書き込みが発生する見込みがない場合）、トリガアドレスを不連続なアドレスへ割り当てる方法とそうしない方法（別の何らかのレジスタが不連続なアドレスへ配置されていた）と転送効率の差はないと考えることができる。
【００９５】
上述したように、データ処理装置１は、書き込みアドレスおよび書き込みデータをバスＢＳ上に順に送出して書き込み動作を行い、読み出しアドレスをバスＢＳ上に送出した後にバスＢＳ上の読み出しデータを入力して読み出し動作を行うバスマスタ２と、スレーブ４と、バスマスタ２からの制御に基づいて、バスＢＳ上の書き込みアドレスを基にバスＢＳ上の書き込みデータをＲＡＭ３１に書き込み、バスＢＳ上の読み出しアドレスを基にＲＡＭ３１から読み出した読み出しデータをバスＢＳ上に送出し、バスマスタ２によってＲＡＭ３１内の所定のアドレス、具体的にはトリガアドレスに所定のデータが書き込まれると、スレーブ４との間でデータ転送を行うスレーブ３とを設ける。
【００９６】
そして、バスマスタ２は、スレーブ３のＲＡＭ３１内の連続した読み出しアドレスまたは書き込みアドレスをバスＢＳ上に送出することで、読み出し動作または書き込み動作をパイプラインで行い、所定のアドレスへの書き込み動作に続いて読み出し動作を行う場合に、スレーブ３によるデータの読み出しが可能になるまで、所定のアドレスに続いて読み出しアドレスを継続してバスＢＳ上に送出し、スレーブ３はＲＡＭ３１内の最終アドレスを所定のアドレスとして規定している。
【００９７】
このため、たとえばバックアップレジスタやアドレス選択回路等の余計な回路を設けることなく、簡単な回路構成でデータ転送を行うことができる。また、データ処理装置の回路構成を小規模化することができる。
【００９８】
また、たとえば、ＤＭＡＣ（Ｄｉｒｅｃｔ　ｍｅｍｏｒｙ　ａｃｃｅｓｓ　ｃｏｎｔｒｏｌｌｅｒ）を用いたデータ処理装置によるＤＭＡ転送と比較して、本発明に係るデータ処理装置１のＤＭＡ転送は、たとえばＤＭＡ転送に関する転送データ量が少なく、かつ転送効率がよい。また、ＤＭＡＣを用いることがないので、データ処理装置の回路規模を小規模することができる。
【００９９】
なお、本発明は本実施の形態に限られるものではなく、任意好適な種々の改変が可能である。
たとえば、上述した実施の形態に係るデータ処理装置は、クロック信号の立ち上がりエッジにより動作したが、この形態に限られるものではない。たとえば、クロック信号の立ち下がりエッジに同期して動作してもよい。
【０１００】
また、上述した実施の形態に係るデータ処理装置では、書き込み制御信号や読み出し制御信号をバス上に送出したが、この形態に限られるものではない。制御信号バスに、所定の制御コードを出力することで、書き込み制御や読み出し制御を行ってもよいし、アドレスデータに書き込みまたは読み出し制御情報を含めてもよい。
【０１０１】
【発明の効果】
本発明によれば、回路構成の小規模化が可能なデータ処理装置およびデータ処理方法を提供することができる。
【図面の簡単な説明】
【図１】本発明に係るデータ処理装置の一実施の形態を示す構成図である。
【図２】図１に示したデータ処理装置の読み出し動作を説明するためのタイミング図である。
【図３】図１に示したデータ処理装置の書き込み動作を説明するためのタイミング図である。
【図４】図１に示したデータ処理装置のスレーブの構成の一具体例を示す図である。
【図５】図４に示したデータ処理装置の一具体例の動作を説明するためのタイミング図である。（ａ）は、バス上の信号のタイミング図であり、（ｂ）は、ＲＡＭＡｄｄｒｅｓｓ、ＷｒｉｔｅＤＡＴＡがＲＡＭへ入力される信号のタイミング図である。
【図６】図１に示したデータ処理装置の連続した書き込み動作または読み出し動作を説明するためのタイミング図である。
【図７】一般的なデータ処理装置の書き込みに続いてパイプラインで読み出しを行う動作を説明するためのタイミング図である。
【図８】図７に示した書き込みに続いて読み出しを行う際に必要なデータ処理装置の構成を示す図である。
【図９】図１に示したデータ処理装置のパイプラインで書き込みに続いて読み出しを行う場合の動作を説明するためのタイミング図である。
【図１０】一般的なデータ処理装置のスレーブ間のＤＭＡ転送の一具体例を説明するためのタイミング図である。
【図１１】一般的なデータ処理装置のスレーブ間のＤＭＡ転送の一具体例を説明するためのタイミング図である。
【図１２】図１に示したデータ処理装置のスレーブのトリガアドレスを説明するための図である。
【図１３】図１に示したデータ処理装置のスレーブ間のダイレクトメモリアクセスの動作の一具体例を説明するためのタイミング図である。
【図１４】図１４は、図１に示したデータ処理装置がトリガアドレスへの書き込みに連続して読み出しがこない場合を説明するためのタイミング図である。
【符号の説明】
１…データ処理装置、２…バスマスタ、３…スレーブ、４…スレーブ、３１…ＲＡＭ、３２…アドレスレジスタ、３３…バックアップレジスタ、３４…アドレス選択回路、４１…ＲＡＭ。
【図１】
2004013187.tif 000003
【図２】
2004013187.tif 000004
【図３】
2004013187.tif 000005
【図４】
2004013187.tif 000006
【図５】
2004013187.tif 000007
【図６】
2004013187.tif 000008
【図７】
2004013187.tif 000009
【図８】
2004013187.tif 000010
【図９】
2004013187.tif 000011
【図１０】
2004013187.tif 000012
【図１１】
2004013187.tif 000013
【図１２】
2004013187.tif 000014
【図１３】
2004013187.tif 000015
【図１４】
2004013187.tif 000016