(57)【特許請求の範囲】
【請求項１】
入力する画像の水平開始座標と表示の水平開始座標のずれを表す境界判別値を出力する演算器と、同時に入力される複数画素データを記憶する複数の合成表示用メモリと、前記境界判別値により前記複数画素データを指定した表示位置に対応する前記合成表示用メモリへ出力するデータ選択回路と、前記境界判別値により前記合成表示用メモリのアドレスを選択するアドレス選択回路を備えた画像合成表示装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、グラフィックスの複数画像の表示において、画像表示位置を指定した重ね合わせと、画素データを複数同時に転送し高速化したことを特徴とする画像合成表示装置に関する。
【０００２】
【従来の技術】
従来の画像合成表示装置は、図７に示す構成をとる。
【０００３】
動作は、まず、表示の水平開始座標７００と入力画像の水平開始座標７０１が指定されると、転送するデータの範囲を表すＤＭＡパラメータ７０２をＤＭＡコントローラ７０３へ送り、フレームメモリ７０４内に格納された第一の画像７０５または第二の画像７０６からデータバス７０７を通り、画素データ７０８を得る。
【０００４】
ここで、１画素のデータ幅が８ビット、データバス幅が３２ビットのとき、ＤＭＡコントローラ７０３は、同時に転送される４画素のそれぞれの画素が、有効か無効かを表すデータ有効信号７１３を出力する。
【０００５】
データバスの４画素は、メモリへの書き込みデータであり、それぞれ、第一の書き込みデータ７０９、第二の書き込みデータ７１０、第三の書き込みデータ７１１、第四の書き込みデータ７１２となる。
【０００６】
これに対応して、データ有効信号７１３は、第一の書き込み制御信号７１４、第二の書き込み制御信号７１５、第三の書き込み制御信号７１６、第四の書き込み制御信号７１７とする。
【０００７】
このように、データバス上にある４画素それぞれに、有効か無効かを表す信号を付加することにより、フレームメモリ７０４内に格納された入力画像の水平開始座標７０１が１画素単位で移動し、データバス内に入力画像の範囲外の画素データが含まれた場合でも、データ有効信号７１３で有効なデータを指定することにより、入力画像の範囲内の画素データだけをＤＭＡ転送で伝えることができる。
【０００８】
次に、表示の水平開始座標７００から下位２ビットを除いた値をカウンタ初期値７１８とし、アドレスカウンタ７１９を動作させる。
【０００９】
メモリへのアドレス７２０は、合成表示用の４つのメモリである第一のメモリ７２１、第二のメモリ７２２、第三のメモリ７２３、第四のメモリ７２４へ共通に出力される。
【００１０】
このように、連続転送される４つの画素データを４つのメモリへ上書きしていく動作を複数画像分繰り返すことにより、複数画像の合成が行える。
【００１１】
ここで、４つのメモリとディスプレイの表示画素との関係は、次のようになる。
【００１２】
第一のメモリ７２１がアドレス０で表示画素０、アドレス１で表示画素４を示し、第二のメモリ７２２がアドレス０で表示画素１、アドレス１で表示画素５を示し、第三のメモリ７２３がアドレス０で表示画素２、アドレス１で表示画素６を示し、第四のメモリ７２４がアドレス０で表示画素３、アドレス１で表示画素７を示している。
【００１３】
最後に、合成が完了した４つのメモリの表示領域に対応する範囲で、第一の読み込みデータ７２５、第二の読み込みデータ７２６、第三の読み込みデータ７２７、第四の読み込みデータ７２８の順番にデータを読み込む表示出力回路７２９から表示出力データ７３０を出力し、ディスプレイ７３１に合成画面を表示する。
【００１４】
【発明が解決しようとする課題】
図７の画像合成表示装置において、図８（１）に示すように、第一の画像７０５と第二の画像７０６が、フレームメモリ７０４の水平画素位置８００に対して、共に第０画素から始まる場合を用いる。
【００１５】
このとき、第一の画像７０５の上に、第二の画像７０６をずらして重ね合わせようとすると、上書きする第二の画像に対応するアドレスカウンタ初期値７１８をずらす必要がある。
【００１６】
アドレスカウンタ初期値７１８は、表示の水平開始座標７００から下位２ビットを除いた値であるから、表示の水平開始座標７００は最低４画素分ずらさなければならない。
【００１７】
その結果、図８（２）に示すように第一の表示画像８０１と第二の表示画像８０２が、ディスプレイ７３１の水平表示画素位置８０３に対して互いに水平に４画素ずれた表示になり、４画素の整数倍しか表示位置の移動ができなくなる。
【００１８】
【課題を解決するための手段】
前述の課題を解決するために、入力する画像の水平開始座標と表示の水平開始座標のずれを表す境界判別値を出力する演算器と、同時に入力される複数画素データを記憶する複数の合成表示用メモリと、前記境界判別値により前記複数画素データを指定した表示位置に対応する前記合成表示用メモリへ出力するデータ選択回路と、前記境界判別値により前記合成表示用メモリのアドレスを選択するアドレス選択回路とを備えたものである。
【００１９】
【発明の実施の形態】
以下、本発明の実施の形態について、図１から図６を用いて説明する。
【００２０】
図１は、本発明の実施の形態による画像合成表示装置の構成図である。
【００２１】
以下に、複数の入力画像から合成画像を表示するまでの動作を説明する。
【００２２】
まず、表示の水平開始座標１００と入力画像の水平開始座標１０１を指定し、転送するデータの範囲を表すＤＭＡパラメータ１０２をＤＭＡコントローラ１０３へ送ると、フレームメモリ１０４内に格納された第一の画像１０５および第二の画像１０６から画素データが転送される。
【００２３】
ここで、一度にＤＭＡ転送されるデータ量は１ライン分とする。
【００２４】
この画素データは、フレームメモリ１０４からＤＭＡコントローラ１０３へのデータバス１０７とＤＭＡコントローラ１０３から表示回路へのデータバス１０８とを通り、ＤＭＡ転送される。
【００２５】
本実施の形態では、データバス幅が３２ビット、１画素のデータ幅が８ビットであるとする。
【００２６】
このとき、データバス１０８では、同時に４画素分のデータを転送できる。
【００２７】
入力画像のＤＭＡ転送において、入力画像の水平開始座標１０１を１画素単位で変化させ、データバス内の一部に入力画像の範囲外の画素データが含まれた場合でも、入力画像の範囲内の画素データだけを転送するために、同時に転送される４画素分のデータに対して、１画素ごとに有効なデータか無効なデータかを表すデータ有効信号１０９を４ビット付加する。
【００２８】
次に、表示の水平開始座標１００の全てのビット１１０から入力画像の水平開始座標１０１の下位２ビット１１１を引く演算を演算器１１２により実行する。
【００２９】
この演算器１１２の演算結果から下位２ビットを除いた値は、水平表示開始画素のメモリアドレス１１３であり、カウンタの初期値としてアドレスカウンタ１１４に入力され、カウンタを動作させる。
【００３０】
アドレスカウンタ１１４からは、入力画像のＤＭＡ転送により、同時に入力される４画素分のデータをメモリに格納するときに用いる２種類のアドレスである第一のアドレス候補１１５と第二のアドレス候補１１６を出力する。
【００３１】
演算器１１２の演算結果の下位２ビットは、入力する画像の水平開始座標と表示の水平開始座標のずれを表す境界判別値１１７として用いる。
【００３２】
ここで、表示の水平開始座標１００を表す全てのビット１１０の値よりも、入力画像の水平開始座標１０１の下位２ビット１１１の値の方が大きい場合には、演算結果の負の値を２の補数の表現を用いたビット列として出力する。
【００３３】
データバス１０８上の４つの画素データと４ビットのデータ有効信号１０９は、データセレクタ回路１１８に入力され、境界判別値１１７の値に応じて、第一の書き込みデータ１２０、第二の書き込みデータ１２１、第三の書き込みデータ１２２、第四の書き込みデータ１２３と第一の書き込み制御信号１２４、第二の書き込み制御信号１２５、第三の書き込み制御信号１２６、第四の書き込み制御信号１２７とを出力する。
【００３４】
また、第一のアドレス候補１１５と第二のアドレス候補１１６は、アドレスセレクタ回路１１９に入力され、境界判別値１１７の値に応じて、第一のアドレス１２８、第二のアドレス１２９、第三のアドレス１３０、第四のアドレス１３１を出力する。
【００３５】
以上より得られた、第一の書き込みデータ１２０と第一の書き込み制御信号１２４と第一のアドレス１２８を第一のメモリ１３２へ入力し、第二の書き込みデータ１２１と第二の書き込み制御信号１２５と第二のアドレス１２９を第二のメモリ１３３へ入力し、第三の書き込みデータ１２２と第三の書き込み制御信号１２６と第三のアドレス１３０を第三のメモリ１３４へ入力し、第四の書き込みデータ１２３と第四の書き込み制御信号１２７と第四のアドレス１３１を第四のメモリ１３５へ入力する。
【００３６】
この４つのメモリへの書き込み動作を、ＤＭＡ転送の間繰り返すことにより、１つの入力画像の１ライン分の画素データが４つのメモリに格納される。
【００３７】
第一の画像１０５の１ライン分のＤＭＡ転送の後に、第二の画像１０６の１ライン分のＤＭＡ転送を行なうことにより、第一の画像１０５の上に第二の画像１０６を重ね合わせた１ライン分の表示イメージが、第一のメモリ１３２、第二のメモリ１３３、第三のメモリ１３４、第四のメモリ１３５の４つのメモリに格納される。
【００３８】
最後に、ＤＭＡ転送した画像データの合成が完了した後、４つのメモリからの出力である第一の読み込みデータ１３６、第二の読み込みデータ１３７、第三の読み込みデータ１３８、第四の読み込みデータ１３９を表示出力回路１４０へ入力し、表示順の表示出力データ１４１を選択して、ディスプレイ１４２へ出力する。
【００３９】
図２は、データバス１０８とデータ有効信号１０９とがデータセレクタ回路１１８へ入力される時の、入力の組合せを示している。
【００４０】
データバス１０８の４つの画素データをそれぞれ、第一の画素データ２０１、第二の画素データ２０２、第三の画素データ２０３、第四の画素データ２０４とし、データ有効信号１０９は、４つの画素データに対応して、第一のデータ有効信号２０５、第二のデータ有効信号２０６、第三のデータ有効信号２０７、第四のデータ有効信号２０８に分ける。
【００４１】
以上の４画素分のデータと有効信号をそれぞれ１画素分のデータと有効信号に分け、第一のレジスタ２０９、第二のレジスタ２１０、第三のレジスタ２１１、第四のレジスタ２１２に保持し、データセレクタ回路１１８へ第一のセレクタ入力２１３、第二のセレクタ入力２１４、第三のセレクタ入力２１５、第四のセレクタ入力２１６として出力する。
【００４２】
図３は、図２で出力された４つのセレクタ入力を境界判別値１１７に応じて選択するデータセレクタ回路１１８を示している。
【００４３】
図３（１）の３０１は、第一のメモリ１３２への第一の書き込みデータ１２０と第一の書き込み制御信号１２４とを選択する第一のデータセレクタである。
【００４４】
この第一のデータセレクタ３０１は境界判別値１１７をＡと表すと、Ａ＝００のとき第一のセレクタ入力２１３を選択し、Ａ＝１１のとき第二のセレクタ入力２１４を選択し、Ａ＝１０のとき第三のセレクタ入力２１５を選択し、Ａ＝０１のとき第四のセレクタ入力２１６を選択するように動作する。
【００４５】
これを図３（１）では、各セレクタ入力に、Ａ＝００、Ａ＝０１、Ａ＝１０、Ａ＝１１の条件を書くことで表現している。
【００４６】
同様に、図３（２）、（３）、（４）に、第二のメモリ１３３、第三のメモリ１３４、第四のメモリ１３５へデータと制御信号を選択出力する、第二のデータセレクタ３０２、第三のデータセレクタ３０３、第四のデータセレクタ３０４を示す。
【００４７】
図３の３０５、３０６、３０７、３０８に、境界判別値１１７がＡ＝０１の場合の４つのデータセレクタのデータパスを示す。
【００４８】
図４は、アドレスカウンタ１１４の回路を示している。
【００４９】
水平表示開始画素のメモリアドレス１１３をカウンタの初期値４０１として入力すると、ＤＭＡ転送にあわせて増加する＋１カウンタ４０２が動作する。
【００５０】
このカウンタ値を第一のアドレス候補１１５として出力し、このアドレスに１を加算した値を第二のアドレス候補１１６として出力する。
【００５１】
図５は、図４で出力された２つのアドレス候補を境界判別値１１７に応じて選択するアドレスセレクタ回路１１９を示している。
【００５２】
図５（１）の５０１は、第一のメモリ１３２への第一のアドレス１２８を選択する第一のアドレスセレクタである。
【００５３】
この第一のアドレスセレクタ５０１は、境界判別値１１７をＡと表すと、Ａ＝００のとき、第一のアドレス候補１１５を選択し、Ａ＝０１または１０または１１のとき、第二のアドレス候補１１６を選択するように動作する。
【００５４】
これを図５（１）では、各アドレス候補の入力に、Ａ＝００、Ａ＝０１、Ａ＝１０、Ａ＝１１の条件を書くことで表現している。
【００５５】
同様に、図５（２）、（３）に、第二のメモリ１３３、第三のメモリ１３４へアドレスを選択出力する、第二のアドレスセレクタ５０２、第三のアドレスセレクタ５０３を示す。
【００５６】
また、図５（４）は、第四のメモリ１３５へのアドレスである第四のアドレス１３１が、常に第一のアドレス候補１１５であることを示している。
【００５７】
図５の５０４、５０５、５０６、５０７に、境界判別値１１７がＡ＝０１の場合の４つのアドレスセレクタのデータパスを示す。
【００５８】
以上の回路の動作例を図６を用いて説明する。
【００５９】
図６（１）にフレームメモリ１０４内の第一の画像１０５と第二の画像１０６を示す。
【００６０】
６００は、フレームメモリでの画素位置を示している。
【００６１】
ここでは、データバス幅が３２ビットで、同時に４画素分転送できるとする。
【００６２】
図６（２）に、第一の画像１０５と第二の画像１０６がディスプレイ１４２に表示された、第一の表示画像６０１と第二の表示画像６０２の位置を示している。
【００６３】
第一の画像１０５に関しては、表示の水平開始座標１００と入力画像の水平開始座標１０１とが共に０であり、境界判別値１１７は００となる。
【００６４】
この場合、データセレクタ回路では、入力画像の画素位置０、１、２、３の画素は、ディスプレイの表示画素位置０、１、２、３の画素へ転送され、アドレスセレクタ回路では、入力画像の画素位置０、１、２、３の画素に対してはアドレスが全て０となり、入力画像の画素位置４、５、６の画素に対してはアドレスが全て１となる。
【００６５】
これにより、フレームメモリ１０４上において、第一の画像１０５の範囲である画素位置６００が０から６までの１ラインの画素が、ディスプレイ１４２上における表示画素位置６０３が０から６までの１ラインに対応するメモリに格納されることになる。
【００６６】
第一の画像１０５の上に第二の画像１０６を１画素右の位置へ重ね合わせる場合、表示の水平開始座標１００は１、入力画像の水平開始座標１０１は０となり、境界判別値１１７は０１となる。
【００６７】
第二の画像の転送画素６０４を考えると、データセレクタ回路１１８は図３において、境界判別値１１７が０１の場合の例を示していることから、第二の画像の転送画素６０４の画素位置０、１、２、３の画素は、それぞれ、画素位置０の画素が、表示画素位置６０３が１に対応する第二の書き込みデータ１２１になり、画素位置１の画素が、表示画素位置６０３が２に対応する第三の書き込みデータ１２２になり、画素位置２の画素が、表示画素位置６０３が３に対応する第四の書き込みデータ１２３になり、画素位置３の画素が、表示画素位置６０３が４に対応する第一の書き込みデータ１２０になる。
【００６８】
アドレスセレクタ回路１１９は図５において、境界判別値１１７が０１の場合の例を示していることから、第一のメモリ１３２のアドレスが１で、他の第二のメモリ１３３と第三のメモリ１３４と第四のメモリ１３５とのメモリのアドレスは０になる。
【００６９】
このようにして、入力画像の画素位置０、１、２の画素は、メモリのアドレスが０であるディスプレイの表示画素位置１、２、３の画素へ転送され、入力画像の画素位置３の画素は、メモリのアドレスが１であるディスプレイの表示画素位置４の画素へ転送され、第二の画像の転送画素６０４を、第二の表示画像の表示画素６０５に出力することができる。よって、第一の表示画像６０１と第二の表示画像６０２を任意の位置で重ね合わせが行なえる。
【００７０】
なお、本発明は、データバス幅を３２ビット、画素データ幅を８ビットに限ったものではなく、データバス幅と画素データ幅が任意の正の整数で、データバス幅が画素データ幅以上あり、データバス内に画素データが２の巾乗個ある場合に適用される。
【００７１】
本発明は、複数画像を重ね合わるときの画像位置は、任意の画素位置を指定できるとしたが、データバス幅が３２ビット、画素データ幅が８ビットで構成した回路において、８ビットの画素データのかわりに、４ビットの画素データが２つある構成で使用すると、複数画像を重ね合わせるときの画像位置が、２画素ごとに指定できるようになることから分かるように、複数画像を重ね合わせるときの画像位置を、２の巾乗個の画素ごとに指定する場合にも適用される。
【００７２】
本発明は、一度にＤＭＡ転送されるデータ量が１ライン分に限定されるものではなく、１ライン分のデータを複数回に分けてＤＭＡ転送する構成や、複数ライン分のデータを一度にＤＭＡ転送する構成にも適用される。
【００７３】
【発明の効果】
以上のように本発明によれば、複数画素を同時に転送し、高速に合成を行う合成表示において、複数画像の重ね合わせ位置を任意に設定できる。同時転送の並列度が高くなるほど、重ね合わせ位置の指定の間隔が大きくなってしまうので、高速化するほど、効果が大きくなる。
【図面の簡単な説明】
【図１】本発明の画像合成表示装置の一実施例を示す図
【図２】データバスの画素データ構成図
【図３】データ選択回路図
【図４】アドレスカウンタ回路図
【図５】アドレス選択回路図
【図６】画像合成表示の説明図
【図７】従来の画像合成表示装置を示す図
【図８】従来の画像合成表示の説明図
【符号の説明】
１００  表示の水平開始座標
１０１  入力画像の水平開始座標
１０２  ＤＭＡパラメータ
１０３  ＤＭＡコントローラ
１０４  フレームメモリ
１０５  第一の画像
１０６  第二の画像
１０７  フレームメモリからＤＭＡコントローラへのデータバス
１０８  ＤＭＡコントローラから表示回路へのデータバス
１０９  データ有効信号
１１０  表示の水平開始座標値の全てのビット
１１１  入力画像の水平開始座標値の下位２ビット
１１２  演算器
１１３  水平表示開始画素のメモリアドレス
１１４  アドレスカウンタ
１１５  第一のアドレス候補
１１６  第二のアドレス候補
１１７  境界判別値
１１８  データセレクタ回路
１１９  アドレスセレクタ回路
１２０  第一の書き込みデータ
１２１  第二の書き込みデータ
１２２  第三の書き込みデータ
１２３  第四の書き込みデータ
１２４  第一の書き込み制御信号
１２５  第二の書き込み制御信号
１２６  第三の書き込み制御信号
１２７  第四の書き込み制御信号
１２８  第一のアドレス
１２９  第二のアドレス
１３０  第三のアドレス
１３１  第四のアドレス
１３２  第一のメモリ
１３３  第二のメモリ
１３４  第三のメモリ
１３５  第四のメモリ
１３６  第一の読み込みデータ
１３７  第二の読み込みデータ
１３８  第三の読み込みデータ
１３９  第四の読み込みデータ
１４０  表示出力回路
１４１  表示出力データ
１４２  ディスプレイ
２０１  第一の画素データ
２０２  第二の画素データ
２０３  第三の画素データ
２０４  第四の画素データ
２０５  第一のデータ有効信号
２０６  第二のデータ有効信号
２０７  第三のデータ有効信号
２０８  第四のデータ有効信号
２０９  第一のレジスタ
２１０  第二のレジスタ
２１１  第三のレジスタ
２１２  第四のレジスタ
２１３  第一のセレクタ入力
２１４  第二のセレクタ入力
２１５  第三のセレクタ入力
２１６  第四のセレクタ入力
３０１  第一のデータセレクタ
３０２  第二のデータセレクタ
３０３  第三のデータセレクタ
３０４  第四のデータセレクタ
３０５  第一のデータセレクタの選択例
３０６  第二のデータセレクタの選択例
３０７  第三のデータセレクタの選択例
３０８  第四のデータセレクタの選択例
４０１  カウンタの初期値
４０２  ＋１カウンタ
４０３  ＋１加算器
５０１  第一のアドレスセレクタ
５０２  第二のアドレスセレクタ
５０３  第三のアドレスセレクタ
５０４  第一のアドレスセレクタの選択例
５０５  第二のアドレスセレクタの選択例
５０６  第三のアドレスセレクタの選択例
５０７  第四のアドレスのパス
６００  フレームメモリの水平画素位置
６０１  第一の表示画像
６０２  第二の表示画像
６０３  ディスプレイの水平表示画素位置
６０４  第二の画像の転送画素の例
６０５  第二の表示画像の表示画素の例
７００  従来例の表示の水平開始座標
７０１  従来例の入力画像の水平開始座標
７０２  従来例のＤＭＡパラメータ
７０３  従来例のＤＭＡコントローラ
７０４  従来例のフレームメモリ
７０５  従来例の第一の画像
７０６  従来例の第二の画像
７０７  従来例のフレームメモリからＤＭＡコントローラへのデータバス
７０８  従来例のＤＭＡコントローラから表示回路へのデータバス
７０９  従来例の第一の書き込みデータ
７１０  従来例の第二の書き込みデータ
７１１  従来例の第三の書き込みデータ
７１２  従来例の第四の書き込みデータ
７１３  従来例のデータ有効信号
７１４  従来例の第一の書き込み制御信号
７１５  従来例の第二の書き込み制御信号
７１６  従来例の第三の書き込み制御信号
７１７  従来例の第四の書き込み制御信号
７１８  従来例のアドレスカウンタの初期値
７１９  従来例のアドレスカウンタ
７２０  従来例のアドレス
７２１  従来例の第一のメモリ
７２２  従来例の第二のメモリ
７２３  従来例の第三のメモリ
７２４  従来例の第四のメモリ
７２５  従来例の第一の読み込みデータ
７２６  従来例の第二の読み込みデータ
７２７  従来例の第三の読み込みデータ
７２８  従来例の第四の読み込みデータ
７２９  従来例の表示出力回路
７３０  従来例の表示出力データ
７３１  従来例のディスプレイ
８００  従来例のフレームメモリの水平画素位置
８０１  従来例の第一の表示画像
８０２  従来例の第二の表示画像
８０３  従来例のディスプレイの水平表示画素位置
【図１】
0003671744.tif 000002
【図２】
0003671744.tif 000003
【図３】
0003671744.tif 000004
【図４】
0003671744.tif 000005
【図５】
0003671744.tif 000006
【図６】
0003671744.tif 000007
【図７】
0003671744.tif 000008
【図８】
0003671744.tif 000009