(57)【要約】【課題】  ダイレクトメモリアクセスシステムにおいてＤＭＡデータ転送を行う際の不要な電力消費を抑えて消費電力を低減する。【解決手段】  ＤＭＡコントローラ２に設定される情報からデータ転送長およびデータ転送対象を含む各種のＤＭＡデータ転送制御情報を取得し、このＤＭＡデータ転送制御情報に基づき当該ＤＭＡデータ転送に関与しない動作不要回路部を判定するＤＭＡ設定デコード部１７と、動作不要回路部に対するＤＭＡデータ転送開始時のクロック供給停止とＤＭＡデータ転送終了時のクロック供給再開を制御するＤＭＡ時クロック／リセット制御部１８とを備え、ＤＭＡ設定デコード部１７においてはＤＭＡデータ転送の開始を検知し、クロック供給停止においてはＤＭＡデータ転送制御情報に基づきクロック供給再開のタイミングを計算してクロック供給タイミングを制御する。【選択図】  図２
2006172266.tif 000002
【特許請求の範囲】
【請求項１】
ダイレクトメモリアクセス（ＤＭＡ）によるＤＭＡデータ転送を制御するＤＭＡコントローラに内蔵され、前記ＤＭＡコントローラに設定される情報からデータ転送長およびデータ転送対象を含む各種のＤＭＡデータ転送制御情報を取得し、前記ＤＭＡデータ転送制御情報に基づき当該ＤＭＡデータ転送に関与しない動作不要回路部を判定するＤＭＡ設定デコード部と、
システムクロックを供給するクロック発生部に内蔵され、前記動作不要回路部に対するＤＭＡデータ転送開始時のクロック供給停止とＤＭＡデータ転送終了時のクロック供給再開を制御するＤＭＡ時クロック／リセット制御部と、
を備えるダイレクトメモリアクセスシステム。
【請求項２】
前記ＤＭＡ設定デコード部は、ＤＭＡデータ転送の発生時にＤＭＡデータ転送の開始コマンドの発行タイミングを認識してＤＭＡデータ転送の開始を検知するコマンド発行タイミング検知部と、
前記ＤＭＡコントローラに設定される情報をデコードして前記ＤＭＡデータ転送制御情報を取得するするＤＭＡパラメータデコード部と、
ＤＭＡデータ転送対象のアドレス空間が設定される転送対象空間設定部と、
を備える請求項１記載のダイレクトメモリアクセスシステム。
【請求項３】
前記ＤＭＡ時クロック／リセット制御部は、前記ＤＭＡ設定デコード部から取得した前記ＤＭＡデータ転送制御情報に基づき前記動作不要回路部に対するクロック供給停止の妥当性を判定し、クロック供給停止が妥当と判定した前記動作不要回路部に対するＤＭＡデータ転送開始時のクロック供給停止とＤＭＡデータ転送終了直前のクロック供給再開およびリセット信号の発行を制御する請求項１記載のダイレクトメモリアクセスシステム。
【請求項４】
ダイレクトメモリアクセス（ＤＭＡ）によるＤＭＡデータ転送を行うダイレクトメモリアクセス方法であって、
前記ＤＭＡデータ転送を制御するＤＭＡコントローラに設定される情報からデータ転送長およびデータ転送対象を含む各種のＤＭＡデータ転送制御情報を取得し、前記ＤＭＡデータ転送制御情報に基づき当該ＤＭＡデータ転送に関与しない動作不要回路部を判定し、前記動作不要回路部に対してＤＭＡデータ転送開始時にクロック供給を停止しＤＭＡデータ転送終了直前にクロック供給を再開するダイレクトメモリアクセス方法。
【請求項５】
ＤＭＡデータ転送の発生時にＤＭＡデータ転送の開始コマンドの発行タイミングを認識してＤＭＡデータ転送の開始を検知し、前記ＤＭＡデータ転送制御情報に基づき前記動作不要回路部に対するクロック供給停止とクロック供給再開のタイミングを計算する請求項４記載のダイレクトメモリアクセス方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はダイレクトメモリアクセス（ＤＭＡ）によりデータ転送を行うダイレクトメモリアクセスシステムに関し、特にＤＭＡデータ転送中のシステム消費電力を低減する技術に関するものである。
【背景技術】
【０００２】
従来、ダイレクトメモリアクセスシステムの構成においては、ＤＭＡデータ転送中にデータ転送に関与しない回路についてもクロックが供給され、システムとして不要な電力を消費していた。図１は従来のダイレクトメモリアクセスシステムの構成例を示すブロック図である。図１を参照してＤＭＡ処理の基本的動作を説明する。
【０００３】
図１に示すダイレクトメモリアクセスシステム１おいては、ＣＰＵ３、ＤＭＡコントローラ２、メモリ４、クロック発生／リセット制御部（ＣＬＫＧＥＮ／ＲＥＳＥＴＣ）５、システムＩＯ部９、および複数のペリフェラルとしてペリフェラル６、ペリフェラル７、ペリフェラル８がデータバス１０、クロック信号１１、リセット信号１２によって相互に接続されている。
【０００４】
各ブロックへのクロック信号１１とリセット信号１２の供給は全てＣＬＫＧＥＮ／ＲＥＳＥＴＣ５により制御される。このとき、ペリフェラル６とメモリ間のＤＭＡデータ転送が実行され、他のペリフェラル７〜ペリフェラル８およびシステムＩＯ部９の間のデータ転送は無いものとすると、ＤＭＡ処理は以下の手順に沿って実行される。
【０００５】
まず、ＣＰＵ３がＤＭＡデータ転送に必要な制御情報をＤＭＡコントローラ２にセットする。このとき、ペリフェラル６とメモリ４間のデータ転送が必要なため、ＣＰＵ３はＤＭＡコントローラ２に対してＤＭＡ要求信号１３を送り、ＤＭＡデータ転送に必要な制御情報をデータバス１０を通してＤＭＡコントローラ２転送する。
【０００６】
ＤＭＡコントローラ２はＤＭＡ要求信号１３を受けるとＣＰＵ３に対してバス使用の許可を要求するホールド要求信号１４を送る。ＣＰＵ３はホールド要求信号１４を受け付けるとバス使用を許可するホールドアクノリッジ信号１５をＤＭＡコントローラ２に送りデータバス１０を開放する。ＤＭＡコントローラ２は開放されたバスを使ってペリフェラル６とメモリ４の間のデータ転送をＣＰＵ３に代わって実行する。
【０００７】
以上の手順に従ってＤＭＡデータ転送が終了すると、ＤＭＡコントローラ２はＤＭＡ終了信号１６をＣＰＵ３に送る。ＣＰＵ３はＤＭＡ終了信号１６を受けると、開放していたデータバス１０を取り戻してプログラム処理を続行する。
【０００８】
以上のように、ＤＭＡデータ転送はペリフェラル６とメモリ４の間のデータ転送であるにも拘わらず、ＣＬＫＧＥＮ／ＲＥＳＥＴＣ５からのクロック信号１１がペリフェラル７〜ペリフェラル８とシステムＩＯ部９に供給され続けているため、不要な電力が絶えず消費されるという欠点がある。
【０００９】
この問題に対して、ＤＭＡデータ転送中のシステム消費電力を低減する技術として、ＤＭＡデータ転送を行う前に必要な回路にのみクロックを供給することで、動作させる回路を限定し、全体の消費電力を抑えているものがある（例えば、特許文献１参照）。
【特許文献１】特開平３−１００７１０号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
上記従来のダイレクトメモリアクセスシステム構成では、メモリとペリフェラル間またはメモリとシステムＩＯ部間でＤＭＡデータ転送を行う際に、データ転送に関与しないブロックについてもクロック信号が供給され続けているため、不要な電力を絶えず消費するという欠点があった。
【００１１】
また、ＤＭＡデータ転送を行う前に必要な回路にのみクロックを供給する特許文献１の手法は、転送前後で余計なサイクルを必要とし、頻繁にＤＭＡデータ転送を行うシステムではオーバーヘッドが大きくなるという欠点があった。
【００１２】
本発明は、ＤＭＡデータ転送を行う際の不要な電力消費を抑え、システムの消費電力を低減することができるダイレクトメモリアクセスシステムを提供することを目的とする。
【課題を解決するための手段】
【００１３】
本発明のダイレクトメモリアクセスシステムは、ダイレクトメモリアクセスによるＤＭＡデータ転送を制御するＤＭＡコントローラに内蔵され、前記ＤＭＡコントローラに設定される情報からデータ転送長およびデータ転送対象を含む各種のＤＭＡデータ転送制御情報を取得し、前記ＤＭＡデータ転送制御情報に基づき当該ＤＭＡデータ転送に関与しない動作不要回路部を判定するＤＭＡ設定デコード部と、システムクロックを供給するクロック発生部に内蔵され、前記動作不要回路部に対するＤＭＡデータ転送開始時のクロック供給停止とＤＭＡデータ転送終了時のクロック供給再開を制御するＤＭＡ時クロック／リセット制御部とを備えたものである。
【００１４】
本発明において、前記ＤＭＡ設定デコード部は、ＤＭＡデータ転送の発生時にＤＭＡデータ転送の開始コマンドの発行タイミングを認識してＤＭＡデータ転送の開始を検知するコマンド発行タイミング検知部と、前記ＤＭＡコントローラに設定される情報をデコードして前記ＤＭＡデータ転送制御情報を取得するするＤＭＡパラメータデコード部と、ＤＭＡデータ転送対象のアドレス空間が設定される転送対象空間設定部とを備えたものである。
【００１５】
本発明において、前記ＤＭＡ時クロック／リセット制御部は、前記ＤＭＡ設定デコード部から取得した前記ＤＭＡデータ転送制御情報に基づき前記動作不要回路部に対するクロック供給停止の妥当性を判定し、クロック供給停止が妥当と判定した前記動作不要回路部に対するＤＭＡデータ転送開始時のクロック供給停止とＤＭＡデータ転送終了直前のクロック供給再開およびリセット信号の発行を制御するものである。
【００１６】
上記構成によれば、ＤＭＡデータ転送を行う際にＤＭＡコントローラにおいてデータ転送対象を特定し、ＤＭＡデータ転送が行われている間、これに関与しない回路部に対するクロック供給を停止することができるため、ＤＭＡデータ転送時の消費電力を低減することが可能となる。
【００１７】
また、ＤＭＡデータ転送の開始と終了のタイミングを正確に取得することができ、当該ＤＭＡデータ転送の開始前にこれに関与しない回路部に対するクロック供給を停止し、当該ＤＭＡデータ転送の終了直前にクロック供給を再開することができるため、転送前後で余計なサイクルを発生させることがなく、ＤＭＡデータ転送時の消費電力を低減することが可能となる。
【００１８】
本発明のダイレクトメモリアクセス方法は、ダイレクトメモリアクセスによるＤＭＡデータ転送を行うダイレクトメモリアクセス方法であって、前記ＤＭＡデータ転送を制御するＤＭＡコントローラに設定される情報からデータ転送長およびデータ転送対象を含む各種のＤＭＡデータ転送制御情報を取得し、前記ＤＭＡデータ転送制御情報に基づき当該ＤＭＡデータ転送に関与しない動作不要回路部を判定し、前記動作不要回路部に対してＤＭＡデータ転送開始時にクロック供給を停止しＤＭＡデータ転送終了直前にクロック供給を再開するものである。
【００１９】
本発明において、ＤＭＡデータ転送の発生時にＤＭＡデータ転送の開始コマンドの発行タイミングを認識してＤＭＡデータ転送の開始を検知し、前記ＤＭＡデータ転送制御情報に基づき前記動作不要回路部に対するクロック供給停止とクロック供給再開のタイミングを計算するものである。
【００２０】
上記構成によれば、ＤＭＡデータ転送を行う際にＤＭＡコントローラにおいてデータ転送対象を特定し、ＤＭＡデータ転送が行われている間、これに関与しない回路部に対するクロック供給の停止することができ、さらに、その回路部に対するクロック供給停止とクロック供給再開のタイミングを正確に決定することができるため、転送前後で余計なサイクルを発生させることもなく、ＤＭＡデータ転送時の消費電力を低減することが可能となる。
【発明の効果】
【００２１】
本発明によれば、ＤＭＡデータ転送が行われている間、これに関与しない回路部に対するクロック供給停止とクロック供給再開を正確なタイミングで制御することができるため、ＤＭＡデータ転送動作の処理時間に関してオーバーヘッドを加えることなく消費電力を低減することができる。
【発明を実施するための最良の形態】
【００２２】
以下、本発明の実施形態について図面を参照しながら説明する。図２は本発明の一実施の形態に係るダイレクトメモリアクセスシステムの構成を示すブロック図である。
【００２３】
図２のダイレクトメモリアクセスシステムの構成は、図１に示した従来のダイレクトメモリアクセスシステムの構成に対して、ＤＭＡコントローラ２に内蔵されるＤＭＡ設定デコード部１７と、ＣＬＫＧＥＮ／ＲＥＳＥＴＣ５に内蔵されるＤＭＡ時クロック／リセット制御部１８とを設け、ＤＭＡ設定デコード部１７からＤＭＡ時クロック／リセット制御部１８への情報伝達路としてＤＭＡデータ転送設定情報１９を追加した構成となっている。
【００２４】
図３はＤＭＡコントローラ２に内蔵されるＤＭＡ設定デコード部１７およびＤＭＡコントローラ制御部２６の詳細構成と、ＣＬＫＧＥＮ／ＲＥＳＥＴＣ５に内蔵されるＤＭＡ時クロック／リセット制御部１８の詳細構成を示すブロック図である。
【００２５】
ＤＭＡコントローラ制御部２６はデータバスに対するリード／ライトデータ制御回路と、ＣＰＵからのＤＭＡデータ転送制御情報を受け取るＤＭＡパラメータ格納レジスタ２０と、ＤＭＡ要求受信２７、ＤＭＡ要求解読２８、ＤＭＡパラメータ解析２９、アドレス生成３０、コマンド生成・発行３１の一連の処理機能を有する。
【００２６】
ＤＭＡ設定デコード部１７はＤＭＡパラメータデコード部２１とコマンド発行タイミング検知部２２と転送対象空間設定部２３で構成され、ＤＭＡ時クロック／リセット制御部１８はクロック制御部２４とリセット制御部２５から構成される。
【００２７】
ＤＭＡパラメータデコード部２１はＤＭＡパラメータ格納レジスタ２０からＤＭＡデータ転送時のクロック／リセット制御に必要な各種設定情報を取得する。コマンド発行タイミング検知部２２はＤＭＡコントローラ２内部のＤＭＡデータ転送開始のコマンド発行を観測する。転送対象空間設定部２３はＣＰＵ３から設定されるＤＭＡデータ転送対象のアドレス空間を保持する。
【００２８】
クロック制御部２４はコマンド発行タイミング検知部２２からの信号を取得し、システム固有のリセット・クロック供給時間からクロック停止要否の判断を行い、判断結果に基づいてクロックを停止し、ＤＭＡパラメータデコード部２１の設定情報に基づいてクロックの供給を再開する。
【００２９】
リセット制御部２５はクロック制御部２４とＤＭＡパラメータデコード部２１の設定情報によりクロック停止したブロックへのリセット解除を行う。
【００３０】
ＤＭＡデータ転送を開始するには、ＤＭＡデータ転送に必要な制御情報として、ＣＰＵ３からＤＭＡパラメータ格納レジスタ２０に対してスタートアドレスおよび転送長の設定を行う。また、転送対象のアドレス空間領域が転送対象空間設定部２３に対してＣＰＵから予め設定される。
【００３１】
ＤＭＡ設定デコード部１７は、この設定されたスタートアドレスと予め設定されている転送対象空間情報２３から、ＤＭＡデータ転送を行う対象外となるためクロックを停止することが可能なブロックを特定する。また、転送長からクロックを停止したブロックの復帰時期の情報を取得する。
【００３２】
ＣＰＵ３からのＤＭＡ要求信号１３を受け、ＤＭＡコントローラ２ではＤＭＡ要求受信２７、ＤＭＡ要求解読２８、ＤＭＡパラメータ解析２９、アドレス生成３０の手順で処理が行われ、データバス１０に対してコマンド生成・発行３１を行う。
【００３３】
ＤＭＡ設定デコード部１７ではこのコマンド生成・発行３１のタイミングを検知し、ＤＭＡパラメータデコード部２１からの停止するペリフェラルへのクロック停止要求をクロック制御部２４へ転送する。ここで、ＤＭＡ時クロック／リセット制御部１８において、ハードウェアで設定されたシステム固有のリセット・クロック供給時間からクロック停止要否の判断を行う。
【００３４】
また、リセット解除とクロック再供給のタイミングを転送長情報から判断し、これをリセット制御部２５とクロック制御部２４へ転送する。クロック制御部２４とリセット制御部２５からは各ブロックへクロック信号１１とリセット信号１２が接続されており、ＤＭＡデータ転送時の不使用ブロックへのクロック停止と、リセット解除、クロック再供給を行うことで、ＤＭＡデータ転送完了時に停止したブロックが復帰される。
【００３５】
クロック供給の再開においては、スタートアドレスと転送長から判定したクロック再供給とリセット復帰の時間に基づき、ＤＭＡデータ転送終了前に停止したブロックに対してクロック再供給を行い、ＤＭＡデータ転送終了時にはＤＭＡデータ転送対象となる全ての回路が動作状態に戻るようにする。
【００３６】
また、ＤＭＡデータ転送開始時にクロック停止から復帰までの総時間とスタートアドレスと転送長から判定したＤＭＡデータ転送時間との比較を行い、ＤＭＡデータ転送時間が短い場合にはクロック供給の停止は行わない。図４および図５はＤＭＡデータ転送時間とクロック再供給・リセット復帰時間の比較を説明する図である。
【００３７】
図４はクロック再供給・リセット復帰時間３２よりＤＭＡデータ転送時間３３が長いケースであり、この場合はクロック供給を停止するクロック供給停止時間３４が発生し、ＤＭＡ時クロック／リセット制御部１８においてＤＭＡデータ転送中にクロック供給を停止させる。
【００３８】
図５はクロック再供給・リセット復帰時間３２よりＤＭＡデータ転送時間３３が短いケースであり、この場合はクロック供給を停止するとシステムと動作全体の性能が低下するため、ＤＭＡ時クロック／リセット制御部１８ではクロック供給を停止させない。
【産業上の利用可能性】
【００３９】
本発明のダイレクトアクセスシステムは、ＤＭＡデータ転送が行われている間、これに関与しない回路部に対するクロック供給停止とクロック供給再開を正確なタイミングで制御することができるため、ＤＭＡデータ転送動作の処理時間に関してオーバーヘッドを加えることなく消費電力を低減することができるという効果を有し、ＤＭＡデータ転送中のシステム消費電力を低減する技術等として有用である。
【図面の簡単な説明】
【００４０】
【図１】従来のダイレクトメモリアクセスシステムの構成例を示すブロック図。
【図２】本発明の一実施の形態に係るダイレクトメモリアクセスシステムの構成を示すブロック図。
【図３】本発明の一実施の形態に係るダイレクトメモリアクセスシステムにおける各制御部の詳細構成を示すブロック図。
【図４】ＤＭＡデータ転送時間がクロック再供給・リセット復帰時間より長い場合を説明する図。
【図５】ＤＭＡデータ転送時間がクロック再供給・リセット復帰時間より短い場合を説明する図。
【符号の説明】
【００４１】
１  ダイレクトメモリアクセスシステム
２  ＤＭＡコントローラ
３  ＣＰＵ
４  メモリ
５  ＣＬＫＧＥＮ／ＲＥＳＥＴＣ
６、７、８  ペリフェラル
９  システムＩＯ部
１０  データバス
１１  クロック信号
１２  リセット信号
１３  ＤＭＡ要求信号
１４  ホールド要求信号
１５  ホールドアクノリッジ信号
１６  ＤＭＡ終了信号
１７  ＤＭＡ設定デコード部
１８  ＤＭＡ時クロック／リセット制御部
１９  ＤＭＡデータ転送設定情報
２０  ＤＭＡパラメータ格納レジスタ
２１  ＤＭＡパラメータデコード部
２２  コマンド発行タイミング検知部
２３  転送対象空間設定部
２４  クロック制御部
２５  リセット制御部
２６  ＤＭＡコントローラ制御部
２７  ＤＭＡ要求受信
２８  ＤＭＡ要求解読
２９  ＤＭＡパラメータ解析
３０  アドレス生成
３１  コマンド生成・発行
３２  クロック再供給・リセット復帰時間
３３  ＤＭＡデータ転送時間
３４  クロック供給停止時間
【図１】
2006172266.tif 000003
【図２】
2006172266.tif 000004
【図３】
2006172266.tif 000005
【図４】
2006172266.tif 000006
【図５】
2006172266.tif 000007