(57)【特許請求の範囲】
【請求項１】
共通のメモリにアクセスし、該メモリアクセスの優先度が予め決められた複数のＤＭＡと、該ＤＭＡのメモリアクセス要求の競合を前記優先度に従って調停するメモリアービタと、前記ＤＭＡの各々に接続されるインターフェース回路とを備え、前記ＤＭＡの複数のメモリアクセス要求が競合したときは前記優先度順に前記メモリにアクセスさせるＤＭＡコントローラ装置において、前記優先度が最も低いＤＭＡのメモリアクセス要求の競合数を計測する手段と、該競合数が予め定められた所定の数以上であり、かつ優先度が最も低いＤＭＡに接続されているインターフェース回路がその他のＤＭＡに接続されているインターフェース回路より高速化されているときは、前記優先度が最も低いＤＭＡのメモリアクセスデータのバースト長を、連続するメモリアドレスのデータの範囲で長くして、該ＤＭＡのメモリコマンド数を減らす手段を備えたことにより、前記優先度が最も低いＤＭＡに接続されたインターフェース回路の高速化によるパフォーマンス向上を行なうことを特徴とするＤＭＡコントローラ装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ＤＭＡからバスを通して共通のメモリデバイスにアクセスするＤＭＡコントローラ装置に関する。
【０００２】
【従来の技術】
コントローラ装置には多くのＤＭＡが内蔵されており、これらＤＭＡからバスを通して共通のメモリデバイスにアクセスするよう回路形成されている。そのためアクセス時にバスに競合が生じ、これを調停するためにメモリアービタが設けられている。このメモリアービタは、メモリアクセスを調停し、順次メモリにアクセス可能にする。
近年、メモリデバイスの動作速度がシステムのパフォーマンスを左右するようになり高速メモリデバイスの開発が進んでいる。メモリデバイスのアクセス速度が高速になると、システムパフォーマンスはＤＭＡにつながるインターフェース（Ｉ／Ｆ）回路の速度に左右されることになり、従って、メモリデバイスの高速化に伴いインターフェース（Ｉ／Ｆ）回路の速度も追随して高速化されている。
【０００３】
【発明が解決しようとする課題】
しかしながら、複数のインターフェース（Ｉ／Ｆ）回路が接続されたシステムでは、各ＤＭＡはメモリアービタにより優先度が決められメモリアクセスが行われるため、優先度の低いＤＭＡに接続されたインターフェース（Ｉ／Ｆ）回路は、複数のＤＭＡのメモリアクセス要求が競合した場合、インターフェース（Ｉ／Ｆ）回路が高速化してもシステムパフォーマンスの向上に殆ど役に立たないという問題があった。
【０００４】
本発明は、このような問題に鑑みてなされたもので、高速化したインターフェース（Ｉ／Ｆ）回路に接続されている優先度の低いＤＭＡが、他のインターフェース（Ｉ／Ｆ）回路に接続されているＤＭＡと競合した場合においても、当該システムのパフォーマンスの劣化が生じないようにするものである。
【０００５】
【課題を解決するための手段】
請求項１の発明は、共通のメモリにアクセスし、該メモリアクセスの優先度が予め決められた複数のＤＭＡと、該ＤＭＡのメモリアクセス要求の競合を前記優先度に従って調停するメモリアービタと、前記ＤＭＡの各々に接続されるインターフェース回路とを備え、前記ＤＭＡの複数のメモリアクセス要求が競合したときは前記優先度順に前記メモリにアクセスさせるＤＭＡコントローラ装置において、前記優先度が最も低いＤＭＡのメモリアクセス要求の競合数を計測する手段と、該競合数が予め定められた所定の数以上であり、かつ優先度が最も低いＤＭＡに接続されているインターフェース回路がその他のＤＭＡに接続されているインターフェース回路より高速化されているときは、前記優先度が最も低いＤＭＡのメモリアクセスデータのバースト長を、連続するメモリアドレスのデータの範囲で長くして、該ＤＭＡのメモリコマンド数を減らす手段を備えたことにより、前記優先度が最も低いＤＭＡに接続されたインターフェース回路の高速化によるパフォーマンス向上を行なうことを特徴とするＤＭＡコントローラ装置である。
【０００９】
【発明の実施の形態】
以下、本発明の実施形態について説明する。
図１は、本発明が適用されるＤＭＡコントローラ装置の要部ブロック図であり、図示しない各デバイスからのデータ転送要求によりＩ／Ｆ１回路３１〜Ｉ／Ｆ３回路３３は、それぞれＤＭＡ１回路４１〜ＤＭＡ３回路４３に要求を出す。各ＤＭＡ回路４１〜４３はそれぞれメモリアービタ回路１にバスの競合の調停を要求する。
メモリアービタ回路１は、予め決められたＤＭＡ１>ＤＭＡ２>ＤＭＡ３の優先度で要求を受け付け、更にメモリインターフェース（Ｉ／Ｆ）回路２に外部メモリ３へのアクセス要求を出す。メモリインターフェース（Ｉ／Ｆ）回路２は、決められた優先度に従って外部メモリ３にコマンドを発行し該メモリ３にアクセスする。
【００１０】
図２〜図４は、アクセスデータとアクセス時間の関係を示すタイミングチャートであり、図中、ＣＬＫはメモリアクセスクロック、ＩＣＬＫはＩ／Ｆ用クロックを示す。
また、ＤＭＡ１、ＤＭＡ２及びＤＭＡ３のそれぞれＣは、メモリコマンドであり、それによってＤＭＡ１回路４１がメモリアクセスするデータはDat1-1、Dat1-2、ＤＭＡ２回路４２がメモリアクセスするデータはDat2-1、Dat2-2、及びＤＭＡ３回路４３がメモリアクセスするデータは、Dat3-1、Dat3-2である。
更に、ＣＭＤ１、ＣＭＤ２及びＣＭＤ３は、それぞれインターフェース（Ｉ／Ｆ）回路３１用、インターフェース（Ｉ／Ｆ）回路３２用及びインターフェース（Ｉ／Ｆ）回路３３用のメモリコマンドであり、それによってインターフェース（Ｉ／Ｆ）回路３１にアクセスするデータは、Data1-1、Data1-2、インターフェース（Ｉ／Ｆ）回路３２にアクセスするデータは、Data2-1、Data2-2、インターフェース（Ｉ／Ｆ）回路３３にアクセスするデータはData3-1、Data3-2である。
メモリアービタは、ＤＭＡ１〉ＤＭＡ２〉ＤＭＡ３の順で優先されている。図２〜図４において、このときのメモリアクセスデータのバースト長は各ＤＭＡとも４CLKである。
【００１１】
図３は、図２の状態からインターフェース（Ｉ／Ｆ）回路３３のアクセスを高速化したときのアクセスデータとアクセス時間の関係を示すタイミングチャートである。
データアクセス期間が図２ではData3-1をアクセスするのに４ICLKであるが、高速化により、図３の場合は同じデータアクセスが２ICLKでよい。
しかしインターフェース（Ｉ／Ｆ）回路３３のデータアクセス終了する期間は、Data3-2のアクセス終了時なのでICLK１４で終了し、高速化しない図２に比べ２ICLKしか早くならない。
【００１２】
そこで、インターフェース（Ｉ／Ｆ）回路３３のＤＭＡ３回路４３によるメモリアクセスの優先度を変えずに優先度の低いＤＭＡ３回路４３によるメモリアクセスデータのみバースト長を、インターフェース（Ｉ／Ｆ）回路４３より優位にあるＤＭＡとの競合数により(この場合はＤＭＡ１、ＤＭＡ２の２個）長くする。そして１メモリコマンドでアクセスさせる。
【００１３】
図３は、８CKLにDat3-1、Dat3-2を1メモリコマンドでアクセスさせた場合のアクセスデータとアクセス時間の関係を示すタイミングチャートである。
このようにメモリアクセスデータのバースト長を長くし、1メモリコマンドでアクセスさせることにより、バースアービタによるWAIT状態を緩和し、Ｉ／Ｆ３のデータアクセス終了期間は、ICLK９となり、Ｉ／Ｆ３の高速化を有効なものにすることができる。
【００１４】
これを具体的に行うには、メモリアービタ回路１（図１）がＤＭＡ３回路４３の要求に対してその他のＤＭＡ回路との競合数(要求数)を確認し、予め決められた要求数以上の場合に、外部メモリアクセス３のバースト長を確定するbsize信号をバースト長の長い方に切り替えるようにする。
ＤＭＡ１回路４１，ＤＭＡ２回路４２に関しては固定のバースト長である。メモリインターフェース（Ｉ／Ｆ）回路２は、bsize信号によりバースト長を確定し、外部メモリ３にコマンドを発行しアクセスする。
【００１５】
また、メモリアービタ回路１がＤＭＡ３回路４３の要求受付時に競合数(他のＤＭＡ回路の要求数)を確認し、所定のバースト長を加算するように切り替える。更に、切り替えるバーストサイズを設定可能にする。
【００１６】
本実施形態によれば、状況に応じて容易にバースト長を変更し、他のインターフェース（Ｉ／Ｆ）回路に影響を与えすぎないようにしてシステムのパフォーマンスの劣化を避けることができる。
【００１７】
【発明の効果】
本発明によれば、高速化したインターフェース（Ｉ／Ｆ）回路に接続されている優先度の最も低いＤＭＡが、他のＤＭＡと競合した場合、優先度の最も低いＤＭＡのみメモリアクセスデータのバースト長を、連続するメモリアドレスのデータの範囲で長くして、該ＤＭＡのメモリコマンド数を減らすことにより、当該システムのパフォーマンスの劣化を避けることができる。
【図面の簡単な説明】
【図１】本発明が適用されるＤＭＡコントローラ装置の要部ブロック図である。
【図２】本発明の実施形態に係るアクセスデータとアクセス時間の関係を示すタイミングチャートである。
【図３】本発明の実施形態に係るアクセスデータとアクセス時間の関係を示すタイミングチャートである。
【図４】本発明の実施形態に係るアクセスデータとアクセス時間の関係を示すタイミングチャートである。
【符号の説明】
１・・メモリアービタ回路、２・・メモリＩ／Ｆ回路、３・・外部メモリ
【図１】
0004024005.tif 000002
【図２】
0004024005.tif 000003
【図３】
0004024005.tif 000004
【図４】
0004024005.tif 000005