(57)【要約】【課題】これまでの画像処理におけるメモリアクセス制御においては、複数の処理の順番によっては意図した制御ができないという問題がある。【解決手段】データ処理装置は、同期信号を生成する同期信号生成手段と、同期信号に従ってデータ処理を行う複数の処理手段と、データを記憶するメモリと、複数の処理手段とメモリとを接続するメモリバスと、各処理手段からのメモリへのアクセス要求を、各処理手段に対して設定したアクセス条件に従って調整するメモリ制御手段を備え、メモリ制御手段は、同期信号に従って、所定のアクセス条件の処理手段からのアクセス要求をマスクする。【選択図】図１
2015046130.tif 000002
【特許請求の範囲】
【請求項１】
データ処理装置において、
同期信号を生成する同期信号生成手段と、
前記同期信号に従ってデータ処理を行う複数の処理手段と、
データを記憶するメモリと、
前記複数の処理手段と前記メモリとを接続するメモリバスと、
各処理手段からの前記メモリへのアクセス要求を、各処理手段に対して設定したアクセス条件に従って調整するメモリ制御手段を備え、
前記メモリ制御手段は、前記同期信号に従って、所定のアクセス条件の前記処理手段からのアクセス要求をマスクすることを特徴とするデータ処理装置。
【請求項２】
前記メモリ制御手段は、各処理手段からのアクセス要求に対して予め設定された優先度に従って前記複数の処理手段からのアクセス要求を調整し、所定の優先度を有するアクセス要求をマスクすることを特徴とする請求項１記載のデータ処理装置。
【請求項３】
前記メモリ制御手段は、前記同期信号および優先度に従って、前記複数の処理手段からのアクセス要求をスケジューリングすることを特徴とする請求項１又は２に記載のデータ処理装置。
【請求項４】
前記メモリ制御手段は、前記所定のアクセス条件の前記処理手段からのアクセス要求がマスクされる前記同期信号の期間に従って、前記複数の処理手段からのアクセス要求をスケジューリングすることを特徴とする請求項３に記載のデータ処理装置。
【請求項５】
前記同期信号に基づいてクロックを制御するクロック制御手段を備え、
前記クロック制御手段は、前記メモリ制御手段がアクセス要求をマスクすることに従って前記クロックのオンおよびオフを制御することを特徴とする請求項１乃至４のいずれか一項に記載のデータ処理装置。
【請求項６】
前記メモリは揮発性メモリであり、前記メモリ制御手段は前記揮発性メモリのリフレッシュを前記同期信号に従って制御し、前記同期信号の所定の期間においてリフレッシュ要求をマスクすることを特徴とする請求項１乃至４のいずれか一項に記載のデータ処理装置。
【請求項７】
前記データ処理は、画像データ処理であり、前記同期信号は、画像データを画像センサから読み出すための同期信号および前記画像データを表示手段に表示するための同期信号を含むことを特徴とする請求項１乃至６のいずれか一項に記載のデータ処理装置。
【請求項８】
同期信号を生成する同期信号生成手段と、前記同期信号に従って、データ処理を行う複数の処理手段と、データを記憶するメモリと、前記複数の処理手段と前記メモリとを接続するメモリバスとを有するデータ処理装置の制御方法において、
各処理手段からの前記メモリへのアクセス要求を、各処理手段に対して設定したアクセス条件に従って調整するメモリ制御ステップを備え、
前記メモリ制御ステップは、前記同期信号に従って、所定のアクセス条件の前記処理手段からのアクセス要求をマスクするステップを含むことを特徴とする制御方法。
【請求項９】
コンピュータを、請求項１乃至７のいずれか一項に記載されたデータ処理装置の各手段として機能させるプログラム。
【請求項１０】
コンピュータを、請求項１乃至７のいずれか一項に記載されたデータ処理装置の各手段として機能させるプログラムを記憶したコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ処理装置に関し、特に、データ処理を行う複数のマスタによる共通メモリへのアクセスを制御するメモリアクセス制御構成を有するデータ処理装置に関する。
【背景技術】
【０００２】
近年、デジタルスチルカメラやビデオカメラなどの撮像装置において、ＣＰＵ（Ｃｅｎｔｒａｌ Ｐｒｏｃｅｓｓｉｎｇ Ｕｎｉｔ）用の処理プログラムの格納や画像処理手段で生成される中間画像データ等の一時記録手段として揮発性メモリが用いられている。揮発性メモリとしては。例えばＳＤＲＡＭ（Ｓｙｎｃｈｒｏｎｏｕｓ Ｄｙｎａｍｉｃ Ａｃｃｅｓｓ Ｍｅｍｏｒｙ）がある。このようなＣＰＵや画像処理手段等の複数のマスタからアクセスされる共有メモリに対しては、メモリコントローラによりメモリバスの調停を行う必要がある。
【０００３】
アクセス要求を調停する方法としては固定優先度方式やラウンドロビン方式がある。固定優先度方式では、複数のマスタに対して予め決められている優先順位に従い、優先順位が高いバスマスタからのアクセス要求が優先的に受け付けられる。ラウンドロビン方式ではアクセス要求が受け付けられたバスマスタの固定優先度を一番下に落とすことで、各バスマスタのアクセス要求が均等に受け付けられるようにしている。
【０００４】
次に、画像処理装置を含む撮像装置の処理周期について説明する。撮像装置は、撮影する画像の全画像信号を読み出し１枚（フレーム）の画像処理を行う垂直周期と、撮像センサからの画像信号をライン単位で読み出して処理する水平周期がある。撮像装置の処理の大半は垂直周期で行われており、周期内で処理が完了すればシステムが成り立つため、処理を実行するタイミングの自由度は大きい。以降、この周期での処理を非リアルタイム処理と称する。また、撮像装置の一部の処理は水平周期で行われており、周期内で処理が完了しない場合はシステムが破綻するため処理を実行するタイミングの自由度は小さい。以降、この周期での処理をリアルタイム処理と称する。
【０００５】
ここで、リアルタイム処理は制約が厳しいため、システム破綻を防止するにはリアルタイム処理の優先度を高く設定する必要がある。しかし、非リアルタイム処理のなかには、複数のアクセス制約の異なる処理が同一バスマスタで行われる場合がある。例えば、ＣＰＵからのメモリアクセスには、撮影時の画像サイズや撮影周期等のモード設定処理と、撮影した画像を評価して絞りやフォーカスレンズの制御にフィードバックする評価値処理とがある。
【０００６】
モード設定処理の制約は、現在の撮影周期内で次の撮影周期用の設定を完了することである。このため、周期内であれば、少量ずつの処理を長期間で行っても大量の処理を短期間で処理してもよいため、メモリバスの優先度の低い処理となる。これに対して、評価値処理の結果は焦点合わせ等の制御に使用されるため、優先度を高くして、短期間で処理することが要求される。
【０００７】
ところで、優先度はバスマスタ単位で設定されるため、評価値処理のために固定優先度を高く設定すると、本来は低い優先度で処理すべきモード設定処理も優先的に処理される。この結果、他のバスマスタによる処理でリアルタイム処理が保証できなくなる場合に固定優先度を上げることができなくなる。また、ラウンドロビン設定はアクセス要求が受け付けられると優先度が落ちるため、短い間隔で連続してアクセスしたい場合に有効に作用しないという問題がある。
【０００８】
このような問題に対処するため、特許文献１ではバスマスタ単位にアクセス量の上限値を設定し、バスの使用頻度を制限する帯域制限を行う方法が提案されている。この方法を用いることで、リアルタイム処理が破綻しない範囲で優先度を高くした状態で処理することができる。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２０１２−１０３７６３号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
しかし、帯域を制限する方法では、バスマスタの処理内容に関わらずアクセス量が制限値を超えたとき優先度が低く抑えられる。このため、優先度が異なる複数の処理を行うバスマスタに対して帯域制限をかけた場合は、処理の順番によっては、期待した優先度で処理できないことが起り得る。例えば、優先度が低くてよい処理が先行して処理され帯域制限が掛かった場合は、帯域制限後に優先度の高い処理が発生しても低い優先度でしか処理されない。このように、これまでの画像処理におけるメモリアクセス制御においては、複数の処理の順番によっては意図した制御ができないという問題がある。
【課題を解決するための手段】
【００１１】
上記課題を解決するため、本発明によれば、データ処理装置は、同期信号を生成する同期信号生成手段と、同期信号に従ってデータ処理を行う複数の処理手段と、データを記憶するメモリと、複数の処理手段とメモリとを接続するメモリバスと、各処理手段からのメモリへのアクセス要求を、各処理手段に対して設定したアクセス条件に従って調整するメモリ制御手段を備え、メモリ制御手段は、同期信号に従って、所定のアクセス条件の処理手段からのアクセス要求をマスクする。
【発明の効果】
【００１２】
本発明によれば、データ処理装置において、複数のバスマスタのアクセス条件に応じてメモリへのアクセス要求をマスクしてメモリアクセスをスケジューリングすることで、複雑なメモリバス調停を実現しかつ処理速度の向上や消費電力を削減することが可能となる。
【図面の簡単な説明】
【００１３】
【図１】本発明の第１の実施例のメモリ制御を適用した撮像装置の構成図である。
【図２】本発明の第１の実施例に係るメモリ制御動作を説明するための図である。
【図３】本発明の第２の実施例に係るメモリ制御を適用した撮像装置の構成図である。
【図４】本発明の第２の実施例に係るクロック制御を行うメモリ制御動作を説明するための図である。
【図５】本発明の第３の実施例に係るメモリ制御を適用した撮像装置の構成図である。
【図６】本発明の第３の実施例に係るリフレッシュ制御を考慮したメモリ制御動作を説明するための図である。
【発明を実施するための形態】
【００１４】
以下、本発明の好ましい実施の形態を、添付の図を参照して詳細に説明する。本実施の形態は、デジタルカメラ等の撮像装置の画像処理部に本発明を適用した場合のデータ処理装置としての構成例を示すものである。しかし、本発明はこれに限るものではなく、本実施の形態と同様に画像データ処理の構成を有する、例えばＰＣ，携帯電話、スマートフォンなどの装置又は他のデータを処理するためにメモリ制御構成を有するデータ処理装置に適用してもよい。
【実施例１】
【００１５】
図１は、本発明の第１の実施例に係るメモリ制御を適用した撮像装置の構成を示す図である。図において、画像処理は撮像装置のＣＰＵ１１３による制御の下で、構成要素１０４、１０８、１０９、１０１、１１１、１０６、１０７によって実現され、処理手段である１０４、１０８、１０９、１１１、１１３がバスマスタに相当する。各処理手段は、メモリバスを介してメモリに接続されていて、処理仕様に従ってメモリへのアクセス要求を出す。
【００１６】
図１において、同期信号生成部（タイミングジェネレータ）１０１は撮影時の動作モードに従って、水平垂直の同期信号を生成し、センサ駆動制御部１０２へ出力する。また、画像データ等の表示部１１０への出力仕様に合わせて表示出力の同期信号を生成し、表示制御部１０９へ出力する。なお、本実施例においては、メモリ制御において表示出力の同期信号を用いていないので、水平垂直の同期信号のみを図示する。センサ駆動制御部１０２は、同期信号に基づいて画像センサ１０３の電荷蓄積やデータ出力を制御するための制御パルスを生成し、画像センサ１０３へ出力する。画像センサ１０３は、図示しない撮影光学系で形成された被写体像を撮像素子により光電変換して画像データ（静止画又は動画像データ）を生成する。
【００１７】
撮像処理部１０４は、画像センサ１０３から出力された動画像データに対して欠陥画素補正、シェーディング補正などを適正に行うリアルタイム画像処理部である。撮像処理部１０４により処理された画像データはメモリバス１０５、メモリコントローラ１０６を経由してＳＤＲＡＭ１０７に記憶される。評価値生成部１１８は、入力画像に対して予め設定されている評価領域内の空間周波数を解析し、評価値を生成する。評価値生成部１１８により生成された評価値の情報は、ＣＰＵ１１３に送られて処理される。
【００１８】
現像処理部１０８は、メモリバス１０５、メモリコントローラ１０６を介してＳＤＲＡＭ１０７から撮像処理後の画像データを読み出して現像処理を行い、処理後の画像をメモリバス１０５、メモリコントローラ１０６を介してＳＤＲＡＭ１０７に記憶する。現像処理としては、画素補間、フィルタ処理、縮小といったリサイズ処理、色変換処理、例えば圧縮画像データに保存するのに最適なフォーマットであるＹ、Ｃｂ、Ｃｒ形式のフォーマットに変換する処理などの現像処理を行う。
【００１９】
表示制御部１０９は、メモリバス１０５、メモリコントローラ１０６を介して、ＳＤＲＡＭ１０７から現像処理後の画像データを読み出し、表示部１１０に出力する。符号化部１１１は、メモリバス１０５、メモリコントローラ１０６を介して、ＳＤＲＡＭ１０７から現像処理後の画像を読み出し、Ｈ．２６４等の圧縮・符号化処理を行い、符号化データを記録媒体１１２に記録する。ＣＰＵ１１３は、図示しないメモリに記憶された制御用のプログラムを実行して撮像装置全体の制御を行い、撮影動作に合わせて各処理部の設定を制御する。
【００２０】
次にメモリコントローラ１０６内部の構成について説明する。リクエストマスク部１１４は、同期信号生成部１０１からの同期信号に基づいて、各バスマスタに対して予め設定されるリクエストマスク信号を生成し、バスマスタ（１０４、１０８、１０９、１１１）からのアクセス要求をマスクする。調停部１１５は、複数のバスマスタからのアクセス要求に対して、処理仕様に従って予め設定されたアクセス条件(例えば優先度)に従って一つのバスマスタを選択し、ＳＤＲＡＭ１０７とのデータ転送を制御する。
【００２１】
図２は、メモリコントローラ１０６によるリクエストマスク制御を説明するための図である。図２（１）は垂直同期信号であり、画像センサからの動画像データの読み出し周期を示している。図２では、Ｖ０からＶ１の期間が、連続して撮影される複数画面の画像データにおける、１画面（１フレーム）の撮影周期である。図２（２）は水平同期信号であり、画像センサからのライン単位の読み出し周期を示している。本実施例では説明を簡単にするため、画像データはＨ０〜Ｈ７に対応する８ラインで構成としている。また、図２（２）のマーク２０１（▼）は、評価値生成部で評価値が生成されるタイミングを示している。図２（３）はリクエストマスク制御のオン／オフを示している。図２（４）は各処理のメモリバスの使用率を示している。図２（４）では、水平同期信号周期の処理をリアルタイム処理、垂直同期信号周期の処理を非リアルタイム処理、ＣＰＵ１１３の処理をＣＰＵ処理とし、水平同期信号間隔のメモリバス使用率を示している。ここで、調停部１１５が設定しているアクセス条件である固定優先度は、リアルタイム処理＞非リアルタイム処理＞ＣＰＵ処理の順番とし、優先度の高い順にメモリバスを使用するものとする。また、ＣＰＵ処理はモード設定処理と評価値処理の２種類の処理があり、評価値処理を優先して処理する処理仕様とする。
また、図２では、各処理回路から出力されるメモリのアクセス要求については記載されていないが、各処理回路が、それぞれの処理タイミングに合わせてメモリコントローラ１０６に対し、アクセス要求を出力する。また、必要に応じて、複数回のメモリアクセス要求が出力される。また、メモリバス使用率とは、それぞれの処理回路に対するメモリアクセスのためにメモリバス１０５が仕様されている割合である。メモリコントローラ１０６は、図２に示すバス使用率になるように、各処理回路の優先順位に従ってメモリアクセス要求の受付を制御する。
【００２２】
図１、２を用いて本実施形態のリクエストマスク方法について説明する。最初に、本実施例における各処理手段の処理仕様を説明する。撮像処理部１０４の処理は、水平同期信号の周期に合わせて処理する必要があるため、リアルタイム処理である。また、表示制御部１０９の処理も、表示部１１０の表示周期に合わせて処理する必要があるため、リアルタイム処理である。ここで、図２（４）では説明を簡単にするため、撮像処理部１０４と表示制御部１０９の処理周期を同じとし、これらの手段の処理をリアルタイム処理と総称する。
【００２３】
現像処理部１０８と符号化部１１１は図２（１）垂直同期信号で示した撮影周期内にＳＤＲＡＭ１０７から画像データを読み出して処理できればよいので非リアルタイム処理である。ここで、図２（４）では説明を簡単にするため、現像処理部１０８と符号化部１１１の処理を非リアルタイム処理と総称する。
【００２４】
ＣＰＵ１１３は、各処理部が現在の撮影周期内の処理を実行中に、次周期の設定を行うモード設定を行う。また、ＣＰＵ１１３は、図２（２）においてマーク２０１（▼）で示したタイミングで生成される評価値を解析し、絞りやフォーカスレンズの制御にフィードバックする評価値処理を行う。ここで、ＣＰＵ１１３の処理は非リアルタイム処理であるが、評価値処理の速度はフォーカス速度等の性能に影響するので、他の処理が破綻しない範囲内で出来るだけ高速に処理することが求められる。
【００２５】
次に、リクエストマスク制御とその効果について説明する。図２（ａ）はリクエストマスク制御をしない場合のメモリアクセス制御を示している。この場合は、ＣＰＵ処理の優先度は一番低いため、リアルタイム処理、非リアルタイム処理のアクセスが空いたタイミングで処理が実行される。このため、図２（２）のマーク２０１（▼）で示す評価値が生成されるタイミングに合わせて評価値処理を開始するようにしても、他の処理が空いた期間で実行できる処理となり、Ｈ４〜Ｈ８までの４Ｈの水平同期信号期間に実行される処理となる。図２（ｂ）はリクエストマスク制御を行う場合のメモリアクセス制御を示している。評価値を利用したフィードバック処理は、予め設定した評価領域に対して連続した複数枚（フレーム）の画像間の評価値を比較するため、評価値が生成されるタイミングは予め決まっている。そこで、図２（２）のマーク２０１（▼）で示す評価値が生成されるタイミングに合わせたＨ４〜Ｈ５の期間に対してリクエストマスク信号を生成している。このリクエストマスク信号で非リアルタイム処理のアクセス要求をマスクすることで、Ｈ４〜Ｈ５の期間において、リアルタイム処理後に評価値処理を行うことを可能にしている。この結果、リアルタイム処理に影響を与えることなくＨ４〜Ｈ５の期間限定で評価値処理を非リアルタイム処理より優先して実行することができる。
【００２６】
以上説明したように、本発明の第１の実施例によれば、単一のバスマスタから異なるアクセス要求の処理が行われる場合に、特定の処理が発生するタイミングに合わせて特定のバスマスタのアクセス要求をマスクする。これにより、リアルタイム処理を破綻させることなく、固定優先度の低いバスマスタの処理を優先して実行することが可能となる。
【実施例２】
【００２７】
次に、第２の実施例を図３および４を用いて説明する。本実施例では、バスマスタからのアクセス要求をマスクする場合に、マスク期間のクロックも停止することで消費電力を削減することが可能なメモリ制御構成と提供する。
【００２８】
撮像装置では、撮影時の状況によってメモリバスの使用状況は大きく変化する。撮影前の画角確認を行うプレビュー状態では撮影画像の記録処理等が行われないのでメモリバスの使用率は低くなる。また、プレビュー時はバッテリーの消費を抑えるため、省電力制御が行われる。例えば、撮影画像を記録しない場合は不要となる符号化部等のクロックを停止する。しかし、共有バスではバスマスタからのアクセス要求がいつ発生するかが分からないため、クロックを停止することができない。このため、メモリバスの使用率が低くても消費電力を削減できないという問題がある。本実施例はこの問題を解決するためのメモリ制御構成を提供する。具体的には、メモリバス使用率が低い場合に、各処理のアクセス制約が破綻しない範囲でバスマスタからのアクセス要求をマスクするとともにマスク期間のメモリ制御のためのクロックを停止する構成をとる。この構成により、画像処理装置の消費電力をより削減することが可能となる。
【００２９】
図３は、本実施例に係わる撮像装置の構成を示す図である。同図において、第１の実施例を示す図１と同一の構成要素には、同一の符号を付して示し、その説明を省略するす。また、第１の実施例と同じ動作についてもその説明を省略する。
【００３０】
図３において、同期信号生成部１０１は、第１の実施例と同様に、撮影時の動作モードに合わせて水平垂直の同期信号を生成し、センサ制御部１０２へ出力する。また、画像データ等の表示部１１０への出力仕様に合わせて表示出力の同期信号を生成し、表示制御部１０９へ出力する。メモリコントローラ３０６では、リクエストマスク部３１４は、同期信号生成部１０１からの２種類の同期信号をトリガとし、各バスマスタに対して予め設定されるリクエストマスク信号を生成し、バスマスタからのアクセス要求をマスクする。クロック制御部３０２は、同期信号生成部１０１からの同期信号をトリガとし、リクエストマスク制御部３１４でアクセス要求がマスクされる結果、アクセス要求が発生しない期間のクロックをＯＦＦにする。
【００３１】
次に、本実施例のリクエストマスク制御に合わせたクロック制御とその効果について説明する。図４は、本実施例のリクエストマスク制御に合わせたクロック制御を説明するための図である。同図において、第１の実施例を示す図２と同一の構成要素には、同一の符号を付して示し、その説明を省略する。
【００３２】
図４において、（５）は表示制御部の動作周期を示す表示同期信号である。画像センサ１０１から読み出される画像サイズと表示部１１１に表示する画像サイズが異なる場合は、水平同期信号と異なる周期で動作する。図４（６）はメモリコントローラ３０６のクロック制御を示している。クロックをＯＦＦしている期間は調停部１１８の動作を停止し、ＳＤＲＡＭ１０７との間のデータ転送を止めることで消費電力が抑えられる。図４（７）は撮影周期内のタイミングを説明するための時刻を示している。
【００３３】
図４（ａ）は、クロック制御をしない場合のメモリ制御動作を示す図である。時刻Ｔ０、６、１２では、水平同期信号と表示同期信号が同期するため、リアルタイム処理である撮像処理と表示処理が実施される。時刻Ｔ２、４、８、１０では、水平同期信号に合わせて撮像処理が実施される。Ｔ３、９では表示同期信号に合わせて表示処理が実施される。
【００３４】
撮像処理と表示処理は周期的に処理が実施されるため、全体のメモリバス使用率が低い場合でも前倒しで処理することはできない。これに対して、非リアルタイム処理とモード処理はメモリバスが空いている期間に前倒しで実施される。図４（ａ）では、Ｔ１〜Ｔ４で撮影周期内の非リアルタイム処理とモード処理が完了し、Ｔ４以降はこれらの処理が発生しない。
【００３５】
また、評価値処理については、図４（２）でのマーク２０１４（▼）で示すタイミングで評価値を生成する処理を開始し、Ｔ８〜Ｔ１０で処理を完了する。このようなとき、撮影条件によって、メモリバス使用量が少ない場合は、Ｔ５、７、１１、１３〜１６に示すように全くアクセスが発生しない期間が生じる場合がある。しかし、メモリコントローラは常にアクセスを受け付けられる状態で待機しているため電力を無駄に消費することになる。
【００３６】
図４（ｂ）は、本実施例のクロック制御をする場合のメモリ制御動作を示す図である。本実施例では、撮影条件により予め各処理のアクセス制約を満たす範囲で処理のタイミングを予めスケジューリングし、スケジューリング結果に合わせてリクエストマスクを制御することでＳＤＲＡＭ１０７へのアクセスが発生する期間を制御する。具体的には、図４（ｂ）に示すように、Ｔ１では撮像処理や表示処理のトリガとなる同期信号が発生しないため、リアルタイム処理の必要がないＴ１のメモリアクセスをマスクし、マスク期間の処理を表示処理のトリガとなる表示同期信号のみ発生する。そしてマスクされたモード設定処理と非リアルタイム処理を、リアルタイム処理が必要だがメモリバスの使用率が低いＴ４、Ｔ１０のタイミングで処理されるようにメモリアクセスを調整し、ＳＤＲＡＭ１０７へのアクセスが発生しない期間のクロックを停止する。これにより、メモリバスへのアクセスが発生しない期間を増やすことができ、図４（ａ）のメモリ制御と比べて、消費電力を削減することが可能とになる。
【００３７】
以上説明したように、本実施例によれば、各処理のアクセス制約に違反しない範囲でＳＤＲＡＭへのアクセスが発生しない期間をマスク制御により生成し、アクセスが発生しない期間のクロックを停止することで消費電力を削減することが可能となる。
【実施例３】
【００３８】
次に、本発明の第３の実施例を図５及び６を用いて説明する。本実施例は、ＳＤＲＡＭのリフレッシュ処理を考慮しメモリ制御構成を提供する。
【００３９】
ＳＤＲＡＭ等の揮発性メモリは、所定期間内にリフレッシュ処理を実行しないとデータが消失する。このため、実際の撮影時のメモリバスは画像処理のためのアクセスとリフレッシュ処理のためのアクセスが混在しており、リフレッシュ制御部はバスマスタの一種と考えられる。データが消失するとシステムが破綻するので、リフレッシュ処理の優先度は高く設定される。しかし、画像処理のためのバスマスタのアクセス制約は撮影時の状況によって変動する。これに対して、リフレッシュ処理の制約は揮発性メモリのデバイス仕様によって決まるため、基本的に変動しない。このため、アクセス制約上、他のタイミングにマージンがある場合でもリフレッシュ処理が優先的に処理され、評価値処理等のできるだけ高速に処理すべき画像処理が高速処理できないという問題がある。そこで、本実施例では、１が画像フレームの撮影周期内の画像処理のアクセス量の疎密に合わせてリフレッシュ処理の発生を制御する構成を提供し、それにより他のバスマスタのアクセスが不要に制限されることを防ぐことを可能にする。
【００４０】
図５は、本実施例に係る撮像装置の構成を示す図である。同図において、第１の実施例を示す図１と同一の構成要素には、同一の符号を付して示し、その説明を省略する。また、第１の実施例と同じ動作についてもその説明を省略する。
【００４１】
図５のメモリコントローラ５０６において、リクエストマスク制御部５１４は、同期信号生成部１０１からの同期信号をトリガとし、画像処理用のバスマスタからのアクセス要求が発生しない期間ができるようにマスクパタンを生成する。リフレッシュ制御部５０７は、同期信号生成部１０１からの同期信号をトリガとし、画像処理用のアクセス要求がマスクされる期間にリフレッシュ要求が発生するように制御する。
【００４２】
図６は、本実施例のリフレッシュ制御を考慮したメモリ制御を説明するための図である。同図において、図６（１）は垂直同期信号であり、画像センサからの読み出し周期を示している。図６では、Ｖ０〜Ｖ１間を１画像フレームの撮影周期とする。図６（２）は水平同期信号であり、画像センサからのライン単位の読み出し周期を示している。図６では、Ｈ０〜Ｈ６を有効画像期間、Ｈ６〜Ｈ８をブランキング期間とする。図６（３）は、撮像処理部１０４の動作タイミングを示しており、画像センサ１０３から読み出されたどの期間の画像データを処理しているかを数字で示している（Ｈ０〜Ｈ６に対応）。図６（４）、（５）は、図６（３）と同様に現像処理部１０８、表示制御部１１０の動作タイミングを示している。本実施例では、撮像処理部１０４、現像処理部１０８、表示制御部１１０をパイプライン処理し、表示部１１１への表示遅延を削減している。このため、図６（３）〜（５）の処理はリアルタイム処理のバスマスタとして優先度設定が行われる。図６（６）はリクエストマスク制御のＯＮ／ＯＦＦを示し、図６（７）はリフレッシュ制御のＯＮ／ＯＦＦを示している。図６（８）は処理別のメモリバスの使用率を示している。
【００４３】
次に、本実施例のリクエストマスク制御に合わせたリフレッシュ制御とその効果について説明する。図６（ａ）は固定周期でリフレッシュ要求する場合のメモリ制御動作を示している。ここでは、説明を簡単にするためリフレッシュの固定周期を水平同期信号間隔とする。リフレッシュ制約に違反するとデータを消失するため、処理の優先度はリフレッシュ処理＞撮像処理＞現像処理＞表示処理＞符号化処理＞ＣＰＵ処理となる。図６（ａ）において、Ｈ２〜Ｈ６の期間は、メモリバスをリフレッシュ処理とリアルタイム処理のバスマスタが占有している。このため、図６（２）のマーク２０１（▼）で評価値が生成されたタイミングでリクエストマスクを制御して非リアルタイム処理のバスマスタからのアクセス要求をマスクしても、評価値処理を優先させることができない。
【００４４】
図６（ｂ）は、本実施例に従ってリフレッシュ要求するタイミングを制御する場合のメモリ制御を示している。図６（ｂ）において、Ｈ０〜Ｈ１及びＨ７〜Ｈ８はリアルタイム処理のバスマスタが動作している割合が低い期間となる。そこで、図６(ｂ)では、Ｈ２〜Ｈ６のリフレッシュ制御をＯＦＦとし、Ｈ０〜１及びＨ７〜８にリフレッシュ処理を集中させ、このリフレッシュの制御により空いた期間Ｈ１〜Ｈ６でＣＰＵ処理を処理するようアクセス要求を調整する。Ｖ０〜Ｖ１をリフレッシュ制約の周期とすると、図６（ａ）、（ｂ）でリフレッシュ処理の回数は同じとなる。このアクセス要求の調整にあわせて、リクエストマスク部５１４がマスクパタンを生成することで、評価値が生成されたタイミングで評価値処理を早く完了することが可能となる。
【００４５】
以上説明したように、本実施例によれば、リフレッシュ処理の制約を満たす範囲で、他のバスマスタのアクセスが疎になるタイミングにリフレッシュ処理を集中させることで、他のバスマスタのアクセスが不要に制限されることを防止できる。
【００４６】
上述した本発明の実施形態によれば、複数のバスマスタのアクセス条件に応じてメモリへのアクセス要求をマスクしてメモリアクセスをスケジューリングすることで、複雑なメモリバス調停を実現しかつ処理速度の向上や消費電力を削減することが可能となる。
【００４７】
上述した実施例は、撮像装置の画像データ処理部を例にして、本本発明のメモリ制御構成を有するデータ処理装置を説明するものであり、画像データの処理に限らず、メモリアクススの制御構成を含む他のデータ処理装置に適応できることは明らかである。
【００４８】
＜他の実施例＞
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給することによっても達成される。すなわち、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても本件発明の目的が達成されることは言うまでもない。
【００４９】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、プログラムコード自体及びそのプログラムコードを記憶したコンピュータ読み取り可能な記憶媒体は本発明を構成することになる。
【００５０】
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等を用いることができる。
【００５１】
また、コンピュータが読み出したプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ(基本システム或いはオペレーティングシステム)などが実際の処理の一部又は全部を行うことによっても前述した実施形態の機能が実現される。この場合も本件発明に含まれることは言うまでもない。
【００５２】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づく処理も本件発明に含まれる。すなわち、機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等がプログラムコードの指示に基づき実際の処理の一部又は全部を行って前述した実施形態の機能を実現する場合も本件発明に含まれることは言うまでもない。
【００５３】
上記実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
【図１】
2015046130.tif 000003
【図２】
2015046130.tif 000004
【図３】
2015046130.tif 000005
【図４】
2015046130.tif 000006
【図５】
2015046130.tif 000007
【図６】
2015046130.tif 000008