(57)【特許請求の範囲】
【請求項１】
複数のバンクを有するアドレス空間からなるメモリに対して、データアクセス要求を行う際の連続する書き込み要求数が設定可能な複数のモジュールからデータアクセスを行うデータアクセス制御装置であって、
前記複数のモジュールのうち、前記メモリに対するデータアクセスの優先度が相対的に高いデータを出力する高速モジュールと、
前記複数のモジュールのうち、前記メモリに対するデータアクセスの優先度が相対的に低いデータを出力する低速モジュールと、
前記各モジュールから前記メモリへのデータアクセスの要求を受付け、該要求の優先度に応じてデータアクセス要求を許可する信号を対応する前記モジュールへ送信するとともに、許可した該モジュールから要求されたメモリアクセス条件に基づいて前記メモリへのデータアクセスを制御するメモリ制御部と、
を備え、
前記高速モジュールは、
前記連続する書き込み要求数を、転送レートとデータ量とに基づいて、前記メモリのバンク数の整数倍に設定し、
前記メモリ制御部に対して、前記複数バンクへの書き込み要求数だけ連続したデータアクセス要求を、隣接する要求で異なるバンクに連続して行い、アクセス要求元モジュールから前記メモリへ連続的にデータ書き込みを行う場合において、前記メモリの異なる複数のバンクへのアクセスであって、かつこれらのアクセスが最短時間となるような書き込みデータが所定以上溜まったときに、前記アクセス要求元モジュールから前記メモリ制御部への書き込み要求信号が発せられることを特徴とするデータアクセス制御装置。
【請求項２】
前記高速モジュールを含むデータアクセスの優先度が相対的に高い複数のモジュールを１グループとして扱い、グループ外の他のモジュールよりもデータアクセスの優先度を高くしたことを特徴とする請求項１に記載のデータアクセス制御装置。
【請求項３】
前記メモリ制御部は、グループ化された前記複数のモジュールの全てのデータアクセス要求がなくなるまで該グループにバスを占有させ、グループ外の他のモジュールのデータアクセス要求をマスクすることを特徴とする請求項２に記載のデータアクセス制御装置。
【請求項４】
前記マスク処理は、前記メモリ制御部の設定によりグループ別に行うことを特徴とする請求項３に記載のデータアクセス制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリとしてＳＤＲＡＭ（シンクロナス・ダイナミックＲＡＭ）を備えるデジタルカメラ等の電子機器に適用可能なデータアクセス制御装置およびデータアクセス制御方法に関する。
【背景技術】
【０００２】
近年、ＳＤＲＡＭは、パソコンに限らず、デジタルカメラ等の各種電子機器に利用されている。ＳＤＲＡＭのアクセスは、バースト長（例えば、８Ｗｏｒｄや４Ｗｏｒｄのデータ長さ）と呼ばれるデータ転送単位で行うことで転送効率が向上している。また、ＳＤＲＡＭは、複数のバンクを有するアドレス空間からなり、これらの複数のバンクに順次アクセスするバンクインターリーブと称される機能により、さらに転送効率が向上している。これは、先にアクセスしたバンクにデータ転送している間に、次のバンクのアドレスの取り込みを並行して行うことができるためである。
【０００３】
しかしながら、バンクインターリーブ機能は、同一のバンクに連続してアクセスした場合には、先のアクセスに従うデータ転送中に次のアクセスに従うアドレスの取り込みを並行して行うことができず、受付け再処理を行わなくてはならないペナルティ処理時間が発生し、データアクセスの効率が悪くなってしまう欠点がある。適用されるシステム構成にもよるが、ＳＤＲＡＭへアクセスするモジュールとして、例えば、異なる処理を行うためのデータをアクセスするためのＤＭＡ（Direct Memory Access）要求信号生成部が少なくとも２つ接続されている場合には、ＳＤＲＡＭの同一バンクへの連続アクセスが発生しやすく、効率的な転送を行うのが難しいという問題があった。
【０００４】
ＳＤＲＡＭは、複数のモジュールとの転送が要求される場合には、複数のモジュールのアクセス要求を調停するアービタを有するＳＤＲＡＭコントローラを用いることが多い。この場合、ＳＤＲＡＭコントローラへ接続するモジュールは、システムの重要度に応じてＳＤＲＡＭへアクセスする優先度を設定し、優先度の高いモジュールからのアクセスを優先させて処理するようにしている。モジュールの優先度は、システムにより異なるが、外部デバイスとの通信レートが一定なモジュールの優先度を高くする必要がある。例えば、デジタルカメラの場合であれば、ＣＣＤ等の撮像素子は、一定のレートで大量の画像データをＳＤＲＡＭに保存させなければならないため、撮像素子用のモジュールは優先度の高いモジュールとなる。一方、後段で行う画像処理などは、システム構成によるが、ＳＤＲＡＭに既に保存されている画像データを用いることから、画像処理用のモジュールは一般に優先度を低く設定することができる。
【０００５】
ＳＤＲＡＭコントローラは、バンクインターリーブ機能を効率よく行うために、アクセスアドレスの下位数ビットをバンクのセレクタとして使用することで、効率よくバンク切換えを行えるようにしている。また、ＳＤＲＡＭコントローラは、複数のモジュールのアクセスアドレスを分析し、優先度と前アクセスバンクが同じであるか否かで処理するアクセスを選択する機能を有している。
【０００６】
また、特許文献１によれば、複数のチャンネル（モジュール）の一つからＤＭＡ要求を受付けると、所定単位のデータを予め設定された数だけ連続して転送する期間を設けることで、どのチャンネルでも連続してデータ転送できるようにした技術が開示されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開平５−１２０２０６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、データアクセスの優先度の異なる複数のモジュールを備えるシステム構成においては、バンクインターリーブ機能により、データアクセスの優先度に沿った処理が正しく行われなくなる場合がある。特許文献１に示される技術も、データアクセスの優先度に沿った正しい処理を意図したものではない。よって、従来技術によると、データアクセスの優先度の高いモジュールのデータ転送に滞りが生じ、一定のレートによる適正なデータ転送を確実に行うことができず、システムが破綻してしまう可能性がある。
【０００９】
本発明は、上記に鑑みてなされたものであって、データアクセスの優先度の異なる複数のモジュールを備えるシステム構成において、優先度の高いモジュールのデータ転送を確実に行うことができるデータアクセス制御装置およびデータアクセス制御方法を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上述した課題を解決するために、本発明にかかるデータアクセス制御装置は、複数のバンクを有するアドレス空間からなるメモリに対して、データアクセス要求を行う際の連続する書き込み要求数が設定可能な複数のモジュールからデータアクセスを行うデータアクセス制御装置であって、前記複数のモジュールのうち、前記メモリに対するデータアクセスの優先度が相対的に高いデータを出力する高速モジュールと、前記複数のモジュールのうち、前記メモリに対するデータアクセスの優先度が相対的に低いデータを出力する低速モジュールと、前記各モジュールから前記メモリへのデータアクセスの要求を受付け、該要求の優先度に応じてデータアクセス要求を許可する信号を対応する前記モジュールへ送信するとともに、許可した該モジュールから要求されたメモリアクセス条件に基づいて前記メモリへのデータアクセスを制御するメモリ制御部と、を備え、前記高速モジュールは、前記連続する書き込み要求数を、転送レートとデータ量とに基づいて、前記メモリのバンク数の整数倍に設定し、前記メモリ制御部に対して、前記複数バンクへの書き込み要求数だけ連続したデータアクセス要求を、隣接する要求で異なるバンクに連続して行い、アクセス要求元モジュールから前記メモリへ連続的にデータ書き込みを行う場合において、前記メモリの異なる複数のバンクへのアクセスであって、かつこれらのアクセスが最短時間となるような書き込みデータが所定以上溜まったときに、前記アクセス要求元モジュールから前記メモリ制御部への書き込み要求信号が発せられることを特徴とする。
【００１３】
また、本発明にかかるデータアクセス制御装置は、上記発明において、前記高速モジュールを含むデータアクセスの優先度が相対的に高い複数のモジュールを１グループとして扱い、グループ外の他のモジュールよりもデータアクセスの優先度を高くしたことを特徴とする。
【００１４】
また、本発明にかかるデータアクセス制御装置は、上記発明において、前記メモリ制御部は、グループ化された前記複数のモジュールの全てのデータアクセス要求がなくなるまで該グループに前記バスを占有させ、グループ外の他のモジュールのデータアクセス要求をマスクすることを特徴とする。
【００１５】
また、本発明にかかるデータアクセス制御装置は、上記発明において、前記マスク処理は、前記メモリ制御部の設定によりグループ別に行うことを特徴とする。
【発明の効果】
【００１７】
本発明によれば、データアクセス優先度の異なる複数のモジュールを備えるシステム構成において、優先度の高いモジュールのデータ転送を確実に行うことができるデータアクセス制御装置およびデータアクセス制御方法を提供することができる。
【図面の簡単な説明】
【００１８】
【図１】図１は、本発明の実施の形態１のデジタルカメラのデータアクセス制御装置周りの構成例を示す概略ブロック図である。
【図２−１】図２−１は、優先度に応じた理想的なアクセス例を示すタイミングチャートである。
【図２−２】図２−２は、実施の形態１による対策を講じていない場合のアクセス例を示すタイミングチャートである。
【図２−３】図２−３は、実施の形態１による対策を講じた場合のアクセス例を示すタイミングチャートである。
【図３】図３は、ＳＤＲＡＭ転送アクセス単位を示すタイミングチャートである。
【図４−１】図４−１は、図２−２と同じ同バンクアクセス発生のある場合の詳細例を示すタイミングチャートである。
【図４−２】図４−２は、実施の形態１による対策を講じた場合の詳細例を示すタイミングチャートである。
【図５】図５は、同一時間軸上で実施の形態１の連続処理方式の効率のよさを示すタイミングチャートである。
【図６】図６は、本発明の実施の形態２のアクセス処理方式を示すタイミングチャートである。
【発明を実施するための形態】
【００１９】
以下、図面を参照して、本発明を実施するための形態について説明する。本実施の形態は、電子機器として撮像システム、例えばデジタルカメラに搭載されたデータアクセス制御装置の例で説明する。
【００２０】
（実施の形態１）
図１は、本実施の形態１のデジタルカメラのデータアクセス制御装置周りの構成例を示す概略ブロック図である。本実施の形態１のデータアクセス制御装置１は、ＳＤＲＡＭ１０と、メモリ制御部１１と、複数のＤＭＡ要求信号生成部１３，１４，…，１５とを備える。
【００２１】
ＳＤＲＡＭ１０は、複数、例えば４つのバンクA〜Ｄを有するアドレス空間からなる。
【００２２】
また、ＤＭＡ要求信号生成部１３（モジュール１）は、メモリ制御部１１に対してデータ転送を要求（Req1）すると同時にアクセスアドレス（Adr1）を出力し、メモリ制御部１１はデータ転送が可能であれば転送許可（Ack1）をした後に、データ有効を示す信号（Valid1）を出力する。ＤＭＡ要求信号生成部１３（モジュール１）は、Valid1信号に合わせて転送データ（Data1）をライト時には送信、リード時には受信する。ここで、ＤＭＡ要求信号生成部１３から転送されるデータが、優先度が相対的に高い高速モジュールである。優先度が高いとは、例えば、ＣＣＤ等の固体撮像素子を用いた撮像部２１の出力から生成した画像データを転送するなど、常に一定のレートで所定量のデータ転送を確実に行う場合が当てはまる。
【００２３】
一方、ＤＭＡ要求信号生成部１４（モジュール２）は、メモリ制御部１１に対してデータ転送を要求（Req2）すると同時にアクセスアドレス（Adr2）を出力し、メモリ制御部１１はデータ転送が可能であれば転送許可（Ack2）をした後に、データ有効を示す信号（Valid2）を出力する。ＤＭＡ要求信号生成部１４（モジュール２）は、Valid2信号に合わせて転送データ（Data2）をライト時には送信、リード時には受信する。ここで、ＤＭＡ要求信号生成部１４から転送されるデータは、ＳＤＲＡＭ１０に保存された画像データに対して色補正処理、ガンマ処理等の各種の画像処理を施す画像処理部２２より出力される画像データである。よって、ＤＭＡ要求信号生成部１４は、常に一定のレートでのデータ転送を必要としないデータアクセス優先度が相対的に低い低速モジュールである。
【００２４】
また、ＤＭＡ要求信号生成部１５（モジュールＮ）は、メモリ制御部１１に対してデータ転送を要求（ReqN）すると同時にアクセスアドレス（AdrN）を出力し、メモリ制御部１１はデータ転送が可能であれば転送許可（AckN）をした後に、データ有効を示す信号（ValidN）を出力する。ＤＭＡ要求信号生成部１５（モジュールN）は、ValidN信号に合わせて転送データ（DataN）をライト時には送信、リード時には受信する。ここで、ＤＭＡ要求信号生成部１５から転送されるデータは、デジタルカメラ１が備えるＬＣＤ等を用いた表示部２３に対して出力される画像データである。よって、ＤＭＡ要求信号生成部１５は、常に一定のレートで所定量のデータ転送を確実に行わなければならない優先度が相対的に高い高速モジュールである。
【００２５】
また、メモリ制御部１１は、ＳＤＲＡＭ１０やＤＭＡ要求信号生成部１３，１４が接続されたバスを実質的に表しており、ＤＭＡ要求信号生成部１３，１４，…，１５からＳＤＲＡＭ１０へのデータ転送の要求（Req1，Req2，…，ReqN）を要求Reqとして受付け、この要求Reqに対して要求のデータアクセス優先度に応じてデータ転送要求を許可する信号Ackを対応するＤＭＡ要求信号生成部１３，１４，…，１５へ許可信号Ack1、Ack2、…，またはAckNとして送信する。また、許可したＤＭＡ要求信号生成部１３，１４，…，または１５から要求された転送アドレス等のメモリアクセス条件に基づいてＳＤＲＡＭ１０の各バンクＡ〜Ｄへのデータアクセスをバンクインターリーブ機能により制御する。なお、ＤＭＡ要求信号生成部１３，１４，…，１５に関するデータアクセスの優先度の設定は、ＣＰＵ３０によってメモリ制御部１１側で行われる。また、メモリ制御部１１は、上記の制御を、デジタルカメラ全体の制御を受け持つＣＰＵ３０とは独立して実行する。また、メモリ制御部１１は、複数のDMA要求信号生成部１３，１４，…，１５からのデータ転送要求の調停を行う。
【００２６】
ここで、データアクセス優先度の高いＤＭＡ要求信号生成部１３（モジュール１）は、ＳＤＲＡＭ１０のバンク数分の転送（８Ｗｏｒｄバースト×バンク数×Ｍ：Ｍは整数）を１回のデータアクセス要求で連続して行う機能を有する。このため、ＤＭＡ要求信号生成部１３（モジュール１）は、アクセス回数（複数バンクへの書き込み要求数）設定用のレジスタ１３ａを有し、ＣＰＵ３０等のレジスタ制御部によって１回のアクセス数が設定されるように構成されている。このアクセス回数のレジスタ１３ａへの設定値は、バンク数×Ｍ倍、すなわちバンク数に対して整数倍に設定される。また、レジスタ設定値は、転送レートとデータ量に基づき設定される。例えば、ＳＤＲＡＭ１０が４バンク構成で、レジスタ１３ａに“４”が設定された場合には、ＤＭＡ要求信号生成部１３（モジュール１）は、１転送＝８Ｗｏｒｄバースト×４なるデータ量を連続して転送させる。すなわち、ＤＭＡ要求信号生成部１３（モジュール１）は、転送データ量が上記のレジスタ１３ａに設定されたアクセス回数分（８Ｗｏｒｄバースト×レジスタ設定値）のデータが溜まり次第、メモリ制御部１１にアクセス要求を発行し、保持する。これに対応して、メモリ制御部１１は、該ＤＭＡ要求信号生成部１３（モジュール１）からアクセス要求がある限り、ＤＭＡ要求信号生成部１３（モジュール１）にバスを占有させる。よって、“連続アクセス”とは、メモリ制御部１１が他のモジュールアクセスを選択しないタイミングで、DMA要求信号生成部の１つかデータアクセス要求を連続して出力することを意味する。
【００２７】
また、ＤＭＡ要求信号生成部１３（モジュール１）は、このような連続アクセスに際して、バンクインターリーブ機能におけるバンク切換えがスムーズに行えるアドレスでアクセスを行う。すなわち、ＤＭＡ要求信号生成部１３（モジュール１）がアクセスする先頭アドレスをＤＭＡ要求信号生成部１４（モジュール２）とは異なるバンクにアクセスするアドレス位置に設定される。例えば、モジュール２側がバンクＣやバンクＢにアクセスする場合、モジュール１がアクセスする先頭アドレスは、異なるバンクＡやバンクＤとなるように設定される。また、連続アクセスにおいて８Ｗｏｒｄバースト転送毎にアクセスアドレスを変更する。例えば、アクセスアドレスの下位２ビットが“０”の場合にはバンクＡ、“１”の場合にはバンクＢ、“２”の場合にはバンクＣ、“０”の場合にはバンクＤとしてバンク切換えが行われる。
【００２８】
このようにして、本実施の形態１では、データアクセスの優先度の高いＤＭＡ要求信号生成部１３（モジュール１）は、メモリ制御部１１に対して、１回のデータアクセス要求で、複数バンクＡ〜Ｄへの書き込み要求数だけ連続したデータアクセス要求を、隣接する要求で異なるバンクに連続して行う。また、優先度の高いＤＭＡ要求信号生成部１３（モジュール１）は、アクセスする先頭アドレスを優先度の低いＤＭＡ要求信号生成部１４（モジュール２）とは異なるバンクにアクセスするアドレス位置に設定したデータをメモリ制御部１１にアクセス要求として送信する。
【００２９】
また、ＤＭＡ要求信号生成部１３（モジュール１）と同様に優先度の高いＤＭＡ要求信号生成部１５（モジュールＮ）も、アクセス回数（複数バンクへの書き込み要求数）設定用のレジスタ１５ａを有し、連続転送機能を有する。なお、優先度の低いＤＭＡ要求信号生成部１４（モジュール２）も、同一構成でアクセス回数設定用のレジスタ１５ａを有するが、本実施の形態１では、アクセス回数は設定されていない。
【００３０】
このような構成において、モジュールとして、優先度の高いＤＭＡ要求信号生成部１３（モジュール１）と優先度の低いＤＭＡ要求信号生成部１４（モジュール２）との２つが使用される場合を例に挙げ、ＳＤＲＡＭ１０に対するアクセスについて説明する。
【００３１】
図２−１は、優先度に応じた理想的なアクセス例（各モジュールからの転送要求Reqの出力タイミングに対するメモリ制御部受付Ackの出力タイミング）を示すタイミングチャートである。図中、Ａ〜Ｄは、ＳＤＲＡＭ１０のバンクを示し、優先度の高いＤＭＡ要求信号生成部１３（モジュール１）側によるアクセス要求は数字１を付加して示し、優先度の低いＤＭＡ要求信号生成部１４（モジュール２）側によるアクセス要求は数字２を付加して示す（以降の図面でも同様とする）。
【００３２】
図２−１では、優先度の高いモジュール１側からメモリアクセス要求がバンクＡ１→Ｂ１→Ｃ１→Ｄ１…の如く一定のレートで出力されているのに対して、優先度の低いモジュール２側からはモジュール１によるバンクＢ１，Ｃ１のメモリアクセス要求間のタイミングでバンクＣ２に対するメモリアクセス要求が出力される状況を示している。この場合、時点Ｔｏで、メモリ制御部１１は、優先度の高いアクセス（Ａ１→Ｂ１→Ｃ１→Ｄ１）を優先して処理し、モジュール２に対する処理（Ｃ２）は、モジュール１の処理が完了してから行う。
【００３３】
図２−２は、本実施の形態１による対策を講じていない場合のアクセス例を示すタイミングチャートである。図２−２に示すように、メモリ制御部１１は、モジュール１に基づくバンクＢ１へのアクセス要求を処理した後、時点Ｔｏではモジュール１からのメモリアクセス要求はないと判断して、モジュール２に基づくバンクＣ２へのアクセス要求を処理する。ついで、モジュール１に基づくバンクＣ１へのアクセス要求の処理に移行しようとするが、バンクＣに関して同バンクアクセス状態となる。これにより、バンクＣ１へのアクセス要求の受付けは、受付け再処理に伴うペナルティ処理時間Ｔｐの処理後となってしまい、優先度の高いモジュール１に基づくバンクＣ１へのデータ転送に滞りが生じてしまう。
【００３４】
これに対して、図２−３は、本実施の形態１による対策を講じた場合のアクセス例を示すタイミングチャートである。モジュール１のメモリアクセスを４バンク分連続して行い、この連続アクセス期間Ｔｃはバスが開放されずモジュール１が占有する。よって、メモリ制御部１１は、モジュール１のメモリアクセス要求を４バンク分連続して受付けるので、モジュール２のバンクＣ２に対するメモリアクセス要求は、モジュール１のアクセス要求がない状態後となる。これにより、優先度の高いモジュール１の優先処理を活かしつつ同バンクアクセスを回避して優先度の低いモジュール２の処理も行われるため、データ転送を効率よく行うことができる。すなわち、複数のモジュール１，２が同時期にアクセスする状況にあっても、優先度の高いモジュール１に関しては、バンク数分の連続アクセスを１セットとし、各バンクＡ〜Ｄを連続して順次アクセスするので、優先度の低いモジュール２との間で同バンクアクセスが発生しにくくなり、バンクインターリーブ機能を有効に作用させることができる。
【００３５】
上述したタイミングチャート例について、別の観点から説明する。図３は、ＳＤＲＡＭ転送アクセス単位を示すタイミングチャートである。アクセス単位とは、ここでは１バーストを示す。図３（ａ）の入力例は、入力２回分で１転送分のデータ量であることを示している。図３（ｂ）は、図２−２に示したような本実施の形態１による対策を講じていない場合のモジュール１の転送処理例を示し、ＳＤＲＡＭ転送アクセス単位にて単発の転送が頻繁に発生している様子を示している。入力が一定である場合、転送要求ReqはＴａ間隔で頻繁に出力する。この場合、各転送間の隙間Ｔａが殆どないため、モジュール２からのアクセスが入りにくい。
【００３６】
一方、図３（ｃ）は、図２−３に示したような本実施の形態１による対策を講じた場合のモジュール１の転送処理例を示し、ＳＤＲＡＭ転送アクセス単位による４連続転送が周期的に発生している様子を示している。この場合、連続転送間Ｔｂ1およびＴｂ２が十分に広いため、優先度の低いモジュール２からのアクセスも入りやすいことを示している。つまり、連続転送間においては、優先度の低いモジュール２からのアクセスを処理しやすなる。
【００３７】
図４−１〜図４−２は、図２−２〜図２−３に対応する要求信号Req、応答信号Ackの実際の波形による詳細例を示すタイミングチャートである。いずれの場合も、１転送＝１バースト（例えば、８Ｗｏｒｄ）を前提とする。図４−１は、図２−２に示した例と同じで、モジュール１からのバンクＣ１へのデータ転送の要求に対してはモジュール２からのバンクＣ２へのデータ転送の要求と同バンクアクセスが発生しているため、ペナルティ処理時間Ｔｐが発生している場合を示している。
【００３８】
一方、図４−２は、図２−３に示した連続アクセス方式の例に対応するもので、モジュール１からのアクセス要求は、バンクＡ１〜Ｄ１分がバス占有状態で連続して処理されるため、モジュール２からのバンクＣ２へのデータ転送の要求のタイミングにかかわらず、バンクＣ２へのデータ転送の要求は、モジュール１の処理後に行われることを示している。このように、図４−２でも、モジュール２からのデータアクセス要求のタイミングに関わらず、アクセス優先度の高いモジュール１からのアクセス要求を確実に連続処理することができる。
【００３９】
また、図５は、本実施の形態１の連続処理方式の効率のよさを示すタイミングチャートである。図５は、同一時間軸上で、従来の単発方式と本実施の形態１の連続方式との処理時間の長短を比較して示すものである。連続方式によれば、処理時間Ｔｅを単発方式の処理時間Ｔｄに比して十分短縮することができ、データ転送効率がよい。
【００４０】
このように本実施の形態１によれば、データアクセスの優先度の異なる複数のモジュール１，２を備えるシステム構成において、優先度の高いモジュール１のデータ転送を一定のレートにより確実に行うことができ、システムの破綻を防止することができる。また、連続アクセスを行う１回のアクセス数（書き込み又は読み出し要求数）をモジュール１のレジスタ１３ａに設定するようにしたので、ＳＤＲＡＭ１０の種類を変更した場合でも作成し直す必要がなく、汎用性を持たせることができる。
【００４１】
（実施の形態２）
つづいて、本発明の実施の形態２について説明する。本実施の形態２は、前述の実施の形態１に加えて、メモリ制御部１１に接続されるモジュール数が、より多くなる場合に好適な適用例を示す。ここで、図１中には特に図示しないが、本実施の形態２では、モジュール１，２，Ｎに加えて、モジュール（ＤＭＡ要求信号生成部）３を備えるものとする。このモジュール３から転送されるデータは、ＳＤＲＡＭ１０に保存された画像データを例えばカード式の記録媒体（メディア）に記憶させるためのものである。よって、モジュール３は、常に一定のレートでのデータ転送を必要としないデータアクセス優先度が相対的に低い低速モジュールである。
【００４２】
このようにデータアクセスの優先度が相対的に高い複数のモジュールを含む状況の下、本実施の形態２では、ＳＤＲＡＭ１０にアクセスする４つのモジュール１，２，３，Ｎを、２つのグループ１，２に分ける。ここで、グループ１は、前述したように、常に一定なレートでの転送を確実に行わなければならないデータアクセスの優先度が相対的に高いモジュール１とモジュールＮとを１グループとして扱い、グループ２は、グループ１外の他のモジュール、例えば一定なレートでの転送を必要とせずデータアクセスの優先度が相対的に低いモジュール２とモジュール３とを１グループとして扱うものである。そして、グループ１，２に対してグループ単位での優先度を設定し、グループ１の優先度を、グループ２の優先度よりも高く設定するとともに、個々のモジュールのデータアクセスの優先度や、インターリーブ機能によるバンク切換え選択の優先度よりも高い最優先の優先度に設定する。このようなモジュール１，２，３，Ｎに関するグループ化の設定は、ＣＰＵ３０によってメモリ制御部１１側で行われる。
【００４３】
なお、グループ１内においては、モジュール１，Ｎ間のデータアクセスの優先度に差があり、例えば、モジュール１の方がモジュールＮよりもデータアクセスの優先度が高く設定されている。同様に、グループ２内においても、モジュール２，３間のデータアクセスの優先度に差があり、例えば、モジュール２の方がモジュール３よりもデータアクセスの優先度が高く設定されている。
【００４４】
メモリ制御部１１は、このようなグループ分けによるグループ優先度に従い、優先度の高いグループ１中のモジュール１，Ｎのいずれかのデータアクセス要求を受付けた段階では、グループ２内の全てのモジュール２，３のデータアクセス要求をマスクすることで、グループ２側のデータアクセス要求の参照を行わないように制御する。そして、メモリ制御部１１は、グループ１内のモジュール１またはＮによるデータアクセス要求を処理する。ここで、同じグループ１内のモジュール１，Ｎから同時期にデータアクセス要求があった場合には、モジュール１，Ｎの優先度に従ってデータアクセス要求を順次処理する。
【００４５】
メモリ制御部１１は、優先度の高いグループ１からのデータアクセス要求がないタイミングでのみ、グループ２側に対するマスクを解除して、優先度の低いグループ２のデータアクセス要求の受付を再開するように制御する。そして、メモリ制御部１１は、グループ２内のモジュール２または３によるデータアクセス要求を処理する。ここで、同じグループ２内のモジュール２，３から同時期にデータアクセス要求があった場合には、モジュール２，３の優先度に従ってデータアクセス要求を順次処理する。
【００４６】
すなわち、メモリ制御部１１は、優先度の高いグループ１としてグループ化されたモジュール１，Ｎの全てのデータアクセス要求がなくなるまでグループ１にバスを占有させ、グループ１外の他のモジュール２，３のデータアクセス要求をマスクするように制御する。
【００４７】
このような構成において、具体的なアクセス処理の一例を、図６を参照して説明する。図６は、本発明の実施の形態２のアクセス処理方式を要求信号Req、応答信号Ackを用いて示すタイミングチャートである。まず、グループ１に属するモジュール１からのアクセス要求は、実施の形態１の場合と同様に、バンクＡ１〜Ｄ１分がバス占有状態で連続して処理されるため、優先度の低いグループ２に属するモジュール２からのバンクＡ２へのデータ転送の要求のタイミングにかかわらず、バンクＡ２へのデータ転送の要求は、モジュール１（グループ１）の処理後に行われることを示している。すなわち、メモリ制御部１１は、グループ１に属するモジュール１からのアクセス要求中は、グループ２側のアクセス要求をマスクして参照せず、モジュール１からのアクセスがなくなってからマスクを解除して、モジュール２から発生しているバンクＡへのアクセス要求を再開して、応答信号Ack2により受付ける。そして、メモリ制御部１１は、モジュール２からのアクセス要求に従って処理を行う。
【００４８】
図６は、次のタイミングでは、優先度の高いグループ１に属するモジュールＮからバンクＡ〜Ｄへの連続アクセス要求と、優先度の低いグループ２に属するモジュール３からバンクＣへのアクセス要求とが同時に発生している状況を示している。
【００４９】
この際、メモリ制御部１１は、モジュールがグループ分けされていない場合であれば、直前にモジュール２からのバンクＡへのアクセスがあるので、モジュール単位の優先度よりも優先度の高いバンクインターリーブ機能により、同バンク発生とならないよう優先度の低いモジュール３からのアクセス要求が選択されてしまう。このような状態が度々発生すると、優先度の高いモジュールＮのデータ転送が滞り、システムに重大な影響を及ぼす。たとえば、モジュールＮは、表示部２３における画像表示用であり、モジュールＮのデータ転送の滞りにより液晶画面に画像が正しく表示されない場合が発生する危険性がある。
【００５０】
この点、本実施の形態２では、相対的に優先度が高い複数のモジュール１，Ｎを、優先度が最優先に高いグループ１として扱っている。このため、メモリ制御部１１は、このような同時期に発生した複数のアクセス要求において、同バンク指定によるペナルティ時間Ｔｐを発生させても、優先度の高いグループ１に属するモジュールＮからのアクセス要求を先に受付ける。これにより、バンクＡＮ〜ＤＮ分のアクセス要求がバス占有状態で連続して処理されるため、優先度の低いグループ２に属するモジュール３からのバンクＣ３へのデータ転送の要求は、モジュールＮ（グループ１）の処理後に行われる。すなわち、メモリ制御部１１は、グループ１に属するモジュールＮからのアクセス要求中は、グループ２側のモジュール３からのアクセス要求をマスクして参照せず、モジュール１からのアクセスがなくなった後でマスクを解除して、モジュール２から発生しているバンクＣへのアクセス要求を再開して、応答信号Ack3により受付ける。そして、メモリ制御部１１は、モジュール３からのアクセス要求に従って処理を行う。
【００５１】
なお、メモリ制御部１１内にモジュール１，２，３，Ｎ側と同じレジスタ（図示せず）を追加し、マスク処理を、ＣＰＵ３０からのメモリ制御部１１内のレジスタの設定によりグループ別に行うようにしてもよい。
【００５２】
このように本実施の形態２によれば、実施の形態１の効果に加えて、相対的に優先度が高い複数のモジュールを、優先度が最優先に高い１つのグループとして扱うことで、同バンクアクセスを避けるバンクインターリーブ機能による切換えよりも、グループ化による優先度を最優先させたアクセス制御が行われるため、バンクインターリーブ機能により優先度の高いモジュールのアクセス要求が阻害されることを回避でき、システムの破綻を防止できる。
【００５３】
なお、本実施の形態２では、グループ１に属するモジュールを２個としたが、３個以上であってもよい。また、相対的に優先度の低いモジュールに関しては、グループ２のようにグループ化してもよく、個々のモジュールのままとしてもよく、さらには、１つのみのモジュールであってもよい。
【００５４】
また、実施の形態１，２の説明は、モジュールとＳＤＲＡＭの間のデータ読み書きの何れにおいても利用できるものであり、ＳＤＲＡＭ１０へのデータ書き込みのみに限定されるものではない。さらには、デジタルカメラに限らず、ＳＤＲＡＭとともに複数のモジュールを備える各種電子機器についても適用可能である。
【符号の説明】
【００５５】
１  データアクセス制御装置
１０  ＳＤＲＡＭ
１１  メモリ制御部
１３  ＤＭＡ要求信号生成部
１４  ＤＭＡ要求信号生成部
１５  ＤＭＡ要求信号生成部
Ａ〜Ｄ  バンク
【図１】
0005396169.tif 000002
【図２−１】
0005396169.tif 000003
【図２−２】
0005396169.tif 000004
【図２−３】
0005396169.tif 000005
【図３】
0005396169.tif 000006
【図４−１】
0005396169.tif 000007
【図４−２】
0005396169.tif 000008
【図５】
0005396169.tif 000009
【図６】
0005396169.tif 000010