(57)【要約】【課題】外部メモリに格納されている複数の画像を重ね合わせて表示するシステムでは、表示リフレッシュに必要なデータ転送量が多くなるため、これを効率良く処理する必要がある。【解決手段】データキャッシュのスヌープ処理など複雑なデータ転送が可能な内部バス１００とは別に、単純な転送に特化した画像専用バスを追加することで、内部バス１００に要求されるデータ転送量を削減し、システム全体のデータ転送能力を向上させる。【選択図】  図１
2004170475.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも、表示対象となる画像データを格納するためのメモリと、前記のメモリに対してアクセスを行うメモリ制御回路と、前記の画像データを表示するための表示装置と、前記の表示装置に対してアクセスを行う表示装置制御回路を備え、前記のメモリ制御回路と表示装置制御回路の間を表示データを転送可能な独立したデータ転送を実現可能な物理的に異なる二本以上のバスＡ、バスＢで接続したことを特徴としたシステム。
【請求項２】
前記二本のバスの一方のバスであるバスＢは前記のメモリ制御回路と前記の表示装置制御回路の間を一対一で接続しており、これらの間のデータ転送のみに使用可能なことを特徴として請求項１記載のシステム。
【請求項３】
前記のバスＢは前記のメモリ制御回路と前記の表示装置制御回路の間のデータ転送のみに使用可能であり、データの転送はメモリ制御回路を起点とする方向にのみ限定されていることを特徴として請求項２記載のシステム。
【請求項４】
前記外部メモリには、複数の画像データが格納され、これらの複数の画像データのうちの一部の画像データを前記のバスＡを用いて転送し、残りの画像データを前記のバスＢを用いて転送し、前記の表示装置制御回路内部で合成して表示することを特徴とした請求項１から３記載のシステム。
【請求項５】
前記二本のバスのうち、バスＡにはデータ転送を制御するＤＭＡ転送回路が接続されていることを特徴とした請求項１から４記載のシステム。
【請求項６】
前記のＤＭＡ転送回路は単なるデータ転送を行うだけでなく、転送データに対して演算処理を施すことが可能でであることを特徴とした請求項１から５記載のシステム。
【請求項７】
前記二本のバスのうち、バスＡはデータキャッシュを備えたプロセッサにも接続されており、メモリ制御回路と表示装置制御回路の間でデータ転送を行う際に、前記のデータキャッシュをスヌープさせることが可能な請求項１から６記載のシステム。
【請求項８】
前記二本のバスのうち、バスＡに接続された他の回路から出力されるデータも前記の表示装置制御回路内部で合成できることを特徴とした請求項１から７記載のシステム。
【請求項９】
前記二本のバスのうち、バスＡは階層構造を持った複数のバスから構成されていることを特徴とした請求項１から８記載のシステム。
【請求項１０】
前記二本のバスのうち、バスＡにはＤＭＡ転送回路の他にもデータの演算処理を実行可能な回路が接続されていることを特徴とした請求項５から９記載のシステム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像を表示するシステムの実現方法に関する。
【０００２】
【従来の技術】
ＣＲＴのように表示データを蓄積する手段を持たない表示装置に画像を表示する場合、表示する画像データを一定時間毎に表示装置に対して供給する必要がある。この操作を表示リフレッシュとよぶ。通常、表示画像は外部メモリ中に保存されており、これを一定時間ごとに読み出して、表示装置へ送ることにより表示リフレッシュを実現する。
【０００３】
近年、デジタル放送などの普及により高品位な映像に対する要求が高まり、表示する画像データの解像度やフレームレートなどは増加の一歩をたどっている。これに伴い、表示リフレッシュ時に転送すべきデータ量も非常に大きなものとなってきている。さらに、デジタル放送では、複数枚の画像を重ねて表示することがある。この場合、リフレッシュ時のデータ転送量はさらに大きなものとなり、実現に必要なコストが増大するという問題が生じる。
【０００４】
この問題を解決するために、下記する特許文献１では、複数枚の画像のうち、変更される頻度の少ないものについては、あらかじめ合成した結果を外部メモリに格納しておくことにより、データ転送量を削減している。
【０００５】
【特許文献１】
特開２００２−１８２６３２号公報
【０００６】
【発明が解決しようとする課題】
しかし、特許文献１の手法では、変更される頻度が多い場合には逆にデータ転送量が増えてしまうことや、データ転送量の変動が大きいため余裕を持った設計が必要になるなどの問題点が発生する。
【０００７】
【課題を解決するための手段】
本発明では、前記問題を解決するために、一つのメモリに重ね合わせる複数の画像を格納する。
【０００８】
さらにメモリ制御回路と表示装置制御回路を独立した二本のバスで接続する。一方のバスはメモリ制御回路と表示装置制御回路以外の回路にも接続されており、複雑な転送を行うことが可能である。もう一方はメモリ制御回路と表示装置制御回路にのみ接続されているため、高速なデータ転送が可能である。このような構成とすることでメモリ制御回路と表示装置制御回路間の最大データ転送容量を増やすことができる。
【０００９】
さらに、本方式では、圧縮された画像を外部メモリに格納しておき、複雑な転送を行うデータ転送経路で画像の伸張を行い、その結果を表示装置制御回路へ渡すことで、転送すべきデータの量を削減することが可能である。
【００１０】
また、頻繁に更新されるデータについては、外部メモリに格納せず、データキャッシュ中に保持するようにすることで、外部メモリに対するデータ転送量を低減することも可能である。
【００１１】
【発明の実施の形態】
図１〜２を用いて本発明の第一の実施例を説明する。この図において、１０００は画像処理用ＬＳＩである。１００２は表示データを格納するための外部メモリでありＤＲＡＭなどのメモリ素子で構成されている。１００３は画像を表示するための装置でありＣＲＴなどが該当する。
【００１２】
画像処理ＬＳＩ１０００の内部には、外部メモリ１００２に対してリード及びライトアクセスを実行可能なメモリ制御回路１、表示装置１００３を制御して表示を行う表示装置制御回路２、表示データの作成などの処理を行うプロセッサ３があり、これらは内部バス１００を介して接続されている。ＤＭＡ転送エンジン４は、内部バス１００に接続されているデバイス間のＤＭＡ転送を行う回路である。
【００１３】
プロセッサ３が作成した画像データは、内部バス１００を通ってメモリ制御回路１に送られ、外部メモリ１００２へ書き込まれる。また、図２のように外部の画像入力装置１００４から入力された画像をＩ／Ｏ制御回路５、内部バス１００、メモリ制御回路１を経由して外部メモリ１００２に書き込むことも可能である。
【００１４】
外部メモリ１００２に格納されているデータを表示装置１００３に表示する際には、ＤＭＡ転送エンジン４を用いる。プロセッサ３がＤＭＡ転送エンジン４内の転送設定レジスタ４２０に、転送元アドレス、転送先アドレス、転送サイズなどの情報をセットした後、ＤＭＡ転送を起動させると、ＤＭＡ転送エンジン４が、内部バス１００を経由して、メモリ制御回路１に対して、外部メモリ１００２から表示データを読み出すように要求を発行する。メモリ制御回路１は、外部メモリ１００２から読み出した画像データをＤＭＡ転送エンジン４内部のＦＩＦＯへ転送する。ＤＭＡ転送エンジンは内部のＦＩＦＯに一定以上のデータがたまった段階で、その結果を表示装置制御回路２へ書き込む。表示装置制御回路２は、表示データを表示装置１００３へ送り、表示装置１００３はこれを表示する。この一連の操作を繰り返すことで、表示装置１００３に画像が出力され続けることになる。
【００１５】
外部メモリ１００２に格納されている複数の画像を表示装置制御回路２で重ね合わせ、表示装置１００３で表示する場合には、転送元アドレスおよび転送先アドレスの異なるＤＭＡ転送を時分割で実行し、表示装置制御回路２の内部で重ね合わせ処理を行った後、表示装置１００３で表示することになる。重ね合わせる２つの画像データの容量が等しい場合を考えると、内部バス１００上を流れるデータ量は、重ねあわせを行わない場合のほぼ２倍となる。通常、内部バス１００には、多くの回路が接続されているため、配線長が長く、負荷容量も大きくなるため動作周波数を上げにくい場合が多い。このため、複数の画像を重ね合わせようとすると、内部バス１００がボトルネックとなる場合が多い。
【００１６】
そこで、本発明では、メモリ制御装置１と表示装置制御回路２の間に、新たに画像専用バス１３０を追加している。画像専用バス１３０は、メモリ制御装置１と表示装置制御回路２にしか接続されていないため、チップのレイアウトを工夫することで配線長を短くすることができるため動作周波数を上げることができる。しかも、バスの配線長が短いため、バス幅を広げた場合でもチップ面積の増加量を抑えることができる。さらに、データの転送方向をメモリ制御装置１から表示装置制御回路２の一方に限定すれば、バス方向切替え時のスイッチングタイムが不要となり、さらに動作周波数を高めることが可能である。複数の画像を重ねて表示する際に、画像ごとに内部バス１００または画像専用バス１３０を使用することで、内部バス１００がボトルネックとなることを防ぐことができる。
【００１７】
次に図３を用いて本実施例におけるメモリ制御回路１の内部構成を説明する。この図において、１０は外部メモリ１００２に対してアクセスするための外部メモリインターフェイス回路である。１１、１２、１４はそれぞれ、内部バス１００を経由して送られてきた外部メモリ１００２への書き込みデータなどを保持するＦＩＦＯ、内部バス１００を経由して送られる外部メモリ１００２からの読出しデータなどを保持するＦＩＦＯ、画像専用バス１３０を経由して送られる外部メモリ１００２からの読出しデータなどを保持するＦＩＦＯである。１５は内部バス１００に対するインターフェイス回路、１６は画像専用バス１３０に対するインターフェイス回路である。画像専用バスインターフェイス回路１６にはＤＭＡ転送制御回路１６０が内蔵されている。アービタ１３は、内部バスインターフェイス回路１５および画像専用バス１６から送られてくるリクエストを調停して外部メモリバスインターフェイス回路へリクエストを発行する回路である。アービタ１３およびＤＭＡ転送制御回路１６０については、一般的に用いられている回路と大きな差異は無いため詳細説明は省略する。
【００１８】
次に図４を用いて本実施例におけるＤＭＡ転送エンジン４の内部構成を説明する。この図において４０は、内部バス１００とのインターフェイス回路、４１は内部バス１００上のトランザクションの調停を行うバスアービタ、４２はＤＭＡ転送制御回路、４３はＤＭＡ転送時に、転送対象となるデータを一時的に保存しておくＦＩＦＯである。ＤＭＡ転送制御回路の内部には、ＤＭＡ転送に必要な情報を設定するためのレジスタ群４２０がありこのレジスタ群４２０の中のレジスタに転送先アドレスなどを設定したあとで、ＤＭＡ開始レジスタをセットすることでＤＭＡを起動する。
【００１９】
図５は本実施例における表示装置制御回路２の内部構造を示した図である。表示装置制御回路２は内部バス１００と画像専用バス１３０の二つのバスに接続されており、セレクト回路２６〜２８はこれらのうちのどちらのバスからのデータを使用するかを切り替えるための回路である。これらのセレクト回路がどちらのバスを選択するかは、それぞれのセレクタの内部にあるレジスタ２６０〜２８０の値によって決定される。これらのレジスタへは、プロセッサ３が内部バス１００を介して値を書き込むことが可能である。セレクタ２６〜２８の出力にはＦＩＦＯ２３〜２５が接続されており、その出力が画像合成回路２２へ入力される。本実施例の画像合成回路２２は、ＦＩＦＯ２４の出力とＦＩＦＯ２５の出力を合成する回路であり、画素単位でどちらの値を使用するかを指定することが可能である。また、単純な選択でなくαブレンドのような演算処理により合成することも可能である。これらの合成方法は、ＦＩＦＯ２３の出力によって決定される。合成された画像は、表示装置インターフェース回路２１を介して表示装置１００３へ表示される。
【００２０】
まず、内部バス１００を用いたデータ転送の方式について、メモリ制御回路１から表示装置制御回路２内部のＦＩＦＯ２３へのＤＭＡ転送を例にその動作を説明する。プロセッサ３がＤＭＡ転送エンジン４の内部レジスタ４２０に必要な情報をセットした後、ＤＭＡ転送エンジン４の内部レジスタ４２０の一つである起動レジスタに書き込みを行うことでＤＭＡを起動すると、ＤＭＡ転送制御回路４２は内部バスインターフェイス４０を経由して、内部バス１００に対してリードリクエストを発行する。このリードリクエストは、内部バスアービタ４１へも送られ、内部バス１００が使用可能であれば、内部バスアービタ４１は、内部バス１００、内部バスインターフェイス回路４０を経由してＤＭＡ転送制御回路４２に対して転送許可を与える。転送許可を与えられたＤＭＡ転送制御回路４２は、内部バスインターフェイス４０を経由して、転送元アドレスを内部バス１００へ出力する。アービタ４１からの信号により、転送先であることを通知されたメモリ制御回路１は、ＤＭＡ転送制御回路４２から送られたアドレスを読み込み、その値に基づいて、外部メモリ１００２から表示データを読み出す。読み出されたデータは一旦ＦＩＦＯ１２に蓄えられたあと、ＤＭＡ転送エンジン４内部のＦＩＦＯ４３へ書き込まれる。ＤＭＡ転送エンジン４は、内部バス１００を介して通知される表示装置制御回路２内部のＦＩＦＯ２３の状態を調べ、新たなデータを書き込めるだけの容量が空いていれば、ＦＩＦＯ４３のデータをＦＩＦＯ２３へ書き込む。書き込み対象のＦＩＦＯは、ＤＭＡ転送エンジン４の内部レジスタ４２中の情報に基づいて決定される。画像合成回路２１はＦＩＦＯ２２〜２４のデータを読出し、重ね合わせ処理を行う。
【００２１】
次に、表示専用バス１３０を用いた表示データの転送動作を表示装置制御回路２内部のＦＩＦＯ２４を例に説明する。プロセッサ３がメモリ制御回路４内部のＤＭＡ制御回路１６０の内部レジスタに必要な情報をセットした後、ＤＭＡ転送制御回路１６０の内部レジスタの一つである起動レジスタに書き込みを行うことでＤＭＡを起動すると、ＤＭＡ転送制御回路１６０がアービタ１３に対してリード要求を発行する。アービタ１３がこの要求に対して許可を出せば、リード要求は外部メモリバスインターフェイス回路１０へと伝えられ、外部メモリ１００２に格納されている表示データがＦＩＦＯ１４へと読み出される。ＤＭＡ制御回路１６０は、ＦＩＦＯ１４に必要な量のデータが格納されると、表示専用バス１３０を介して伝えられるＦＩＦＯ２４の空き容量を調べ、十分な空きがある場合には、ＦＩＦＯ１４のデータをＦＩＦＯ２４へ書き込む。これにより外部メモリ１００２からＦＩＦＯ２４へのデータ転送が実現される。同様に、時分割処理により、外部メモリ１００２からＦＩＦＯ２５へのデータ転送を行い、その後画像合成回路２２で画像の合成を行うことで、合成後の画像を表示装置１００３へ表示することが可能となる。また、これらの転送に使用したＦＩＦＯを複数のバンク構成にすれば、外部メモリ１００２からＦＩＦＯ１４への転送とＦＩＦＯ１４から表示装置制御回路２内部のＦＩＦＯへ異なる画像データを同時に転送することも可能である。
【００２２】
本発明の別の実施例を図６を用いて説明する。本実施例では、プロセッサ３の内部にデータキャッシュ３０が搭載されており、プロセッサ３が外部メモリ１００２に対して書き込む結果は一旦データキャッシュ３０へ格納することが可能である。この場合、表示データを表示装置制御回路２へ転送するタイミングによっては、最新の演算結果が外部メモリ１００２に書き込まれておらず、データキャッシュ３０中にのみ存在することがある。この場合には、内部バス１００により外部メモリ１００２からＤＭＡ転送エンジン４へ表示データを読み込む際に、データキャッシュ３０をスヌープすることで、常に最新のデータを読み出すことが可能となる。すなわち、頻繁にプロセッサ１が書き換えるためスヌープが必要なデータについては内部バス１００を経由しデータキャッシュをスヌープしながら転送し、更新されることが無いためスヌープが不要なデータについては表示専用バス１３０を経由して、メモリ制御回路１から表示装置制御回路２へ表示データを転送することで、データ転送の分散を図ることができる。
【００２３】
また、本発明では、内部バス１００は単一のバスに限定されるものではない。これを図７〜８を用いて説明する。この実施例では、内部バス１００が二本のバス１０１と１０２に分割されている。これらのバスは、ＤＭＡ転送エンジン８およびバススイッチ６により接続されている。この様にバスを分割すると、各バスに接続される回路の数を少なくできるため動作周波数を高くするのに有利である。また、バス１０１とバス１０２で同時に異なるデータ転送を実行することが出来るため、トータルのデータ転送量を増やすことも可能である。例えばＩ／Ｏ制御回路５とプロセッサ３の間のデータ転送を内部バス１０２を用いて行い、メモリ制御回路１から表示装置制御回路２への転送を内部バス１０１によって行うことが可能である。本実施例におけるＤＭＡ転送エンジン８の内部構造を図８に示す。この図において８０は内部バス１０１へのインターフェイス回路、８１は内部バス１０１のアービタ、８２は内部バス１０１、内部バス１０２および両バス間のＤＭＡ転送を制御するＤＭＡ転送制御回路、８３はＤＭＡ転送の際のデータを一時的に保存しておくＦＩＦＯ、８４は内部バス１０２へのインターフェイス回路、８５は内部バス１０２のアービタである。
【００２４】
本発明の別の実施例を、図９〜１０を用いて説明する。本実施例では、内部バス１００上に画像の拡大縮小を行うスケーリングエンジン７を追加している。スケーリングエンジン７は内部バス１００を介して画像データを受け取り、スケーリング処理を実施した結果を、スケーリング結果転送バス１４０を介して表示装置制御回路９へ転送する。スケーリング結果を専用バス１４０により転送するのは、内部バス１００の負荷を減らすためであり、その必要が無い場合には、内部バス１００を用いて結果を転送することも可能である。
【００２５】
図１０は本実施例における表示装置制御回路９の構成例である。表示装置制御回路９には、スケーリング結果転送バス１４からのデータを入力するポートが追加されている。ここは、スケーリングエンジン７の結果はＦＩＦＯ９０に書き込まれるものとしている。本実施例ではＦＩＦＯ２２には内部バス１００経由で送られてきた重ね合わせ情報が格納され、ＦＩＦＯ２３には、表示データ専用バス１３０経由で送られてきた表示データが格納される。画像合成回路２１はＦＩＦＯ２２、２３、９０から読み出したデータをもとに画像の重ね合わせ処理を行い、結果を表示装置インターフェイス回路２０へ出力する。表示装置インターフェイス回路２０の出力は、表示装置１００３へ接続されており、ここへ画像が出力される。
【００２６】
【発明の効果】
本発明を使用することで、内部バス１００の負荷を軽減でき、より大量のデータ転送に対応することが可能となる。しかも、内部バス１００にはプロセッサ３のデータキャッシュ３０やスケーリングエンジン７などを接続することができるため、柔軟性の高い転送を実現しつつ、システム全体として高い転送バンド幅を実現することが可能となる。
【図面の簡単な説明】
【図１】第一の実施例のシステム構成例。
【図２】第一の実施例のシステム構成例その２。
【図３】メモリ制御回路の内部構成例。
【図４】ＤＭＡ転送エンジンの内部構成例。
【図５】表示制御回路の内部構成例。
【図６】第二の実施例のシステム構成例。
【図７】第三の実施例のシステム構成例。
【図８】第三の実施例におけるＤＭＡ転送エンジンの内部構成例。
【図９】第四の実施例のシステム構成例。
【図１０】第四の実施例における表示制御回路の内部構成例。
【符号の説明】
１…メモリ制御回路、２…表示装置制御回路、３…プロセッサ、４…ＤＭＡ転送エンジン、５…Ｉ／Ｏ制御回路、６…バススイッチ、７…スケーリングエンジン、８…ＤＭＡ転送エンジン、９…表示装置制御回路、１０…外部メモリバス・インターフェイス回路、１１…メモリ書き込み用ＦＩＦＯ、１２…メモリ読出し用ＦＩＦＯ、１３…アービタ、１４…メモリ読み出し用ＦＩＦＯ、１５…内部バス・インターフェイス回路、１６…画像専用バス・インターフェイス回路、２１…表示装置インターフェイス回路、２２…画像合成回路、２３〜２５…ＦＩＦＯ、２６〜２８…セレクト回路、３０…データ・キャッシュ、４０…内部バスインターフェイス回路、４１…内部バス用アービタ、４２…ＤＭＡ転送制御回路、４３…ＦＩＦＯ、８０…内部バスＡインターフェイス回路、８１…内部バスＡ用アービタ、８２…ＤＭＡ転送制御回路、８３…ＦＩＦＯ、８４…内部バスＢインターフェイス回路、８５…内部バスＢ用アービタ、９０…ＦＩＦＯ、１００…内部バス、１０１…内部バスＡ．１０２…内部バスＢ、１１０…外部メモリバス、１２０…表示用バス、１３０…画像専用バス、１４０…スケーリング結果転送バス、４２０…ＤＭＡ転送制御回路内部レジスタ、８２０…ＤＭＡ転送制御回路内部レジスタ、１０００…画像処理ＬＳＩ、１００２…外部メモリ、１００３…表示装置、１００４…画像入力装置。
【図１】
2004170475.tif 000003
【図２】
2004170475.tif 000004
【図３】
2004170475.tif 000005
【図４】
2004170475.tif 000006
【図５】
2004170475.tif 000007
【図６】
2004170475.tif 000008
【図７】
2004170475.tif 000009
【図８】
2004170475.tif 000010
【図９】
2004170475.tif 000011
【図１０】
2004170475.tif 000012