(57)【要約】【課題】複数のアプリケーションを実行するホスト側とパネル側とで処理の分散を図ることで、グラフィックスチップを含めたシステム全体の仕事量を最適化する。【解決手段】ディスプレイを有するパネル側５０と、パネル側５０に接続されるホスト側１０とを備え、ホスト側１０は、パネル側５０に対して画像データを転送する画像データ転送手段と、各々のアプリケーションである実行された静止画のアプリケーションと実行された動画のアプリケーションとに基づいて前記画像データ転送手段に対して画像データを供給する制御手段とを備え、ホスト側１０の制御手段は、静止画のアプリケーションについてはパネル側５０に要求されるリフレッシュのタイミングとは無関係に画像データを供給し、動画のアプリケーションについてはパネル側５０に要求されるリフレッシュのタイミングに同期して画像データを供給する。【選択図】図１
2007304611.tif 000002
【特許請求の範囲】
【請求項１】
接続されたディスプレイに対して画像データを転送する画像データ転送手段と、
各々のアプリケーションである実行された静止画のアプリケーションと実行された動画のアプリケーションとに基づいて前記画像データ転送手段に対して画像データを供給する制御手段とを備え、
前記制御手段は、前記静止画のアプリケーションについては前記ディスプレイに要求されるリフレッシュのタイミングとは無関係に画像データを供給し、前記動画のアプリケーションについては前記ディスプレイに要求されるリフレッシュのタイミングに同期して画像データを供給することを特徴とするホスト装置。
【請求項２】
ディスプレイと、
前記ディスプレイに接続されるホスト装置とを備え、
前記ホスト装置は、
前記ディスプレイに対して画像データを転送する画像データ転送手段と、
各々のアプリケーションである実行された静止画のアプリケーションと実行された動画のアプリケーションとに基づいて前記画像データ転送手段に対して画像データを供給する制御手段とを備え、
前記ホスト装置の前記制御手段は、前記静止画のアプリケーションについては前記ディスプレイに要求されるリフレッシュのタイミングとは無関係に画像データを供給し、前記動画のアプリケーションについては前記ディスプレイに要求されるリフレッシュのタイミングに同期して画像データを供給することを特徴とする画像表示システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ディスプレイパネルに画像を表示する際のビデオインターフェイス機構に関し、より詳しくは、表示パネルや高精細パネルを駆動するためのホスト装置等に関する。
【背景技術】
【０００２】
一般に、表示画像はパーソナルコンピュータ(ＰＣ)等からなるホスト装置のグラフィックスコントローラにより処理されて表示装置に送られる。ところが、近年の液晶表示(ＬＣＤ)パネルに代表される表示装置の進歩により、ホスト装置と表示装置との処理能力に大きな差が出てきた。例えば、ＬＣＤパネルにおいては、パネル自身の高精細化が進み、ＱＸＧＡ(Quad Extended Graphics Array)(2048×1536ドット)や、ＱＳＸＧＡ(Quad Super Extended Graphics Array)(2560×2048ドット)、ＱＵＸＧＡ(Quad Ultra Extended Graphics Array)(3200×2400ドット)などの解像度が非常に大きな高精細(超高精細)パネルが実用化されつつある。しかし、パネルの進歩に対してシステムパワーやグラフィックスコントローラのパワーが追従できなくなってきており、超高精細パネルでの充分な表示ができないのが現状である。
【０００３】
例えば、グラフィックスコントローラに代表される画像処理システムの性能は、一般的な表示機能でＱＸＧＡ程度が限界であり、画像家庭用ゲーム機等に代表される３次元(３Ｄ)のコンピュータグラフィックス(ＣＧ)ではＶＧＡ(Video Graphics Array)(640×480ドット)程度の低解像度の処理能力に留まっている。このように、例えば最先端の動画はまだＶＧＡ程度の解像度であるのに対し、パネルはその数倍から数十倍の解像度が製造できるようになっており、処理能力の格差が顕著に現れてきた。
また一方で、ＬＣＤパネルに代表される表示装置は、近年、その表示部の周りである額縁が更に小さくなり、複数のパネルをまとめて拡大パネルとする所謂タイリングが可能となってきた。その結果、更に解像度を上げることが可能となり、ホスト側との格差がより顕著に現れるようになってきた。
【０００４】
このグラフィックスチップのパワー不足を解消する第１の手段として、例えば、図１８に示すシステム構成を考えることができる。このシステム構成では、パネル側２００における高精細なパネル２０１を４つに分割し、その４つの領域に対応する数だけ複数のパネル制御チップ２０２を設けている。符号２０３はこの分割による表示分割線である。一方、ホスト側２１０では、各パネル制御チップ２０２に対して同数のグラフィックスチップ２１１を設け、同数のデジタルインターフェイス(Ｉ/Ｆ)ライン２２０を介して各パネル制御チップ２０２に接続されている。このグラフィックスチップ２１１には、それぞれグラフィックスメモリ２１２が備えられている。また、アプリケーションからの表示データは、システムバス２１３を介してそれぞれのグラフィックスチップ２１１にマルチ入力される。この技術によれば、各グラフィックスチップ２１１の処理能力が低くても、例えば４セットで処理することができるため、処理能力についての問題は解決できる。
【０００５】
また、パワー不足を解消する第２の手段として、例えば、表示装置側にメモリを備え、技術的に実現可能な転送レートまで転送速度を落とす方法が考えられる。より具体的には、ホスト側としては、グラフィックスチップを１つだけ設け、全画面分の容量が確保されたグラフィックスメモリを接続させる。一方、モニタ側としては、パネル制御チップに対してパネルメモリを設ける。ホスト側にてグラフィックスメモリに画像データを展開した後、処理能力の不足分に対応して転送速度を落としてモニタ側に画像データを送る。モニタ側に送られた画像データは、パネル制御チップによりパネルメモリに一旦、格納された後に画面のリフレッシュがされるものである。この手段によれば、転送速度を遅くすることで今までのリフレッシュレートをそのまま採用でき、高精細な静止画像を表示することが可能となる。
【０００６】
尚、公報記載の従来技術として、例えば、ソース生成プログラムから体系化されたデータを高帯域幅チャネルを介してアクティブモジュールの中央モジュールに送り、各々のアクティブモジュールには、表示装置の駆動装置、表示装置、メモリ等が備えられ、これらによって高解像度の大画面表示を可能とし、動画像に対しても実時間で対応可能とする技術が開示されている(例えば、特許文献１参照。)。また、例えば、デジタル映像信号を出力するマスターパソコンと、このデジタル映像信号を複数分配する映像分配装置と、部分拡大等の信号処理を行う複数のパソコンと、この複数のパソコンからの映像出力信号を表示する複数のモニタを備え、合成する映像信号の所望の部分を拡大して複数のパソコン用モニタに表示する技術が存在する(例えば、特許文献２参照。)。
【０００７】
【特許文献１】特開平０７−１４６６７１号公報(第７頁、図２)
【特許文献２】特開平０７−２６１７２１号公報(第２−３頁、図１)
【発明の開示】
【発明が解決しようとする課題】
【０００８】
上述のような手段を講じることにより、処理能力の低いグラフィックスチップを用いても、高精細なパネルに対して一応の表示が可能となる。
しかしながら、上述の第１の手段では、図１８に示すパネル２０１の表示分割線２０３をまたがる分割画面の画像処理に大きな制限が付くことが第１の問題となる。例えば、もとの画像データがＱＸＧＡでない場合には、最初からＶＧＡやＸＧＡ(Extended Graphics Array)(1024×768ドット)を拡大した状態で、グラフィックスチップ２１１に対して分割してデータを送る必要がある。即ち、バンダリを超えて拡大し、拡大画面に対して画像を出力することが要求されるのである。これは、表示画面の解像度でシステムが変化する度に、ホスト側２１０が画像データを切り分けてグラフィックスチップ２１１に転送することを意味する。現状のアプリケーションでは殆ど全てが１枚の画面に書き込む作業しか予定しておらず、チップ毎に画面分割してメモリに対して分割展開する処理を、現状のアプリケーションにて実行することは実質上困難である。
【０００９】
また、上述の第１の手段における第２の問題点として、システムバス２１３がそれぞれのグラフィックスチップ２１１にマルチ入力している事で、共通のバスであるシステムバス２１３のパフォーマンスが全体の処理のボトルネックとなることが挙げられる。このシステムバス２１３としては、ＰＣＩ(peripheral component interconnect)バスとＡＧＰ(accelerated graphics port)の２つがあり、パフォーマンスとしてはＡＧＰが８倍以上高い。３Ｄグラフィックスなどの大量の画像データ転送においてはＰＣＩバスでは能力が不足しており、転送速度の速いＡＧＰを用いることが必要となる。しかしながら、このＡＧＰでは高速処理をするためにバス構造を備えておらず、マルチ接続ができずに１対１のデータ処理となっている。その為に、図１８に示すようにグラフィックスチップ２１１が複数、存在する場合には、ＡＧＰを使用することが出来ず、結果としてシステムバス２１３のパフォーマンスを上げることができないのである。
【００１０】
一方、上述の第２の手段では、第１の手段における上述の２つの問題点(画面切れ目のスケーリングとシステムバスの問題)は解決することができる。しかしながら、転送速度を例えば１/４に落とせば表示が可能であるものの、この転送速度を落とすことが新たな問題となる。即ち、動画を表示する場合には、転送が遅いことでコマ落ちしてしまう。例えば６０Ｈｚで期待されてもその速度で書き込むことが出来ないのである。この第２の手段では、例えば、高精細の静止画と動画が混在したようなウィンドウ表示を実現することはできないのである。
【００１１】
本発明は、以上のような技術的課題を解決するためになされたものであって、その目的とするところは、ホスト側(システム側)とパネル側(モニタ側)とで処理の分散を図ることで、グラフィックスチップを含めたシステム全体の仕事量を最適化することにある。
また、他の目的は、転送能力も含めた画像表示システムの処理能力を十分に引き出せるようにし、超高精細パネルやマルチパネルへの表示能力不足などの問題を解決することにある。
更に他の目的は、早い転送速度が要求される３Ｄグラフィックス等においても、超高精細パネルに対する適切な表示を可能とすることにある。
【課題を解決するための手段】
【００１２】
かかる目的のもと、本発明のホスト装置は、接続されたディスプレイに対して画像データを転送する画像データ転送手段と、各々のアプリケーションである実行された静止画のアプリケーションと実行された動画のアプリケーションとに基づいて画像データ転送手段に対して画像データを供給する制御手段とを備え、この制御手段は、この静止画のアプリケーションについてはディスプレイに要求されるリフレッシュのタイミングとは無関係に画像データを供給し、この動画のアプリケーションについてはディスプレイに要求されるリフレッシュのタイミングに同期して画像データを供給することを特徴とすることができる。この構成によれば、ホスト装置では、例えば３Ｄのワークのみとすることができ、処理能力を例えばＳＸＧＡの場合は２倍以上、向上させることができる。
【００１３】
また、本発明が適用される画像表示システムは、ディスプレイと、このディスプレイに接続されるホスト装置とを備え、ホスト装置は、ディスプレイに対して画像データを転送する画像データ転送手段と、各々のアプリケーションである実行された静止画のアプリケーションと実行された動画のアプリケーションとに基づいて画像データ転送手段に対して画像データを供給する制御手段とを備え、ホスト装置の制御手段は、静止画のアプリケーションについてはディスプレイに要求されるリフレッシュのタイミングとは無関係に画像データを供給し、動画のアプリケーションについてはディスプレイに要求されるリフレッシュのタイミングに同期して画像データを供給することを特徴とする。
【発明の効果】
【００１４】
本発明によれば、ホスト側とパネル側(モニタ側)とで処理の分散を図ることが可能となり、グラフィックスチップを含めたシステム全体の仕事量を最適化することができる。
更に、転送能力も含めた画像表示システムの処理能力を十分に引き出すことが可能となり、超高精細パネルやマルチパネルへの表示能力不足などの問題を解決することができる。
更に、早い転送速度が要求される３Ｄグラフィックス等においても、超高精細パネルに対する適切な表示が可能となる。
【発明を実施するための最良の形態】
【００１５】
〔実施の形態１〕
まず、構成部分の詳細な説明に入る前に、本実施の形態が適用された表示画面の構成について、図８を用いて簡単に説明する。
表示画面であるパネル５５は、例えばＱＵＸＧＡ(3200×2400ドット)の超高精細からなる液晶表示パネルである。図８の例では、パネル５５は表示分解線５６によって４つのサブパネルに分解されている。これらのサブパネルへの画像展開は、それぞれ異なるパネル制御チップ５１(後述)によって駆動されている。これは、実際のパネル５５では処理するドット数が多すぎるため、１個のパネル制御チップ５１では駆動することができないためである。このパネル制御チップ５１の１つは外部データバス６８に接続され、各サブパネルはパネル内データバス６９に接続されている。また、パネル制御チップ５１に入力され破線で示される外部データバス６８は、実施の形態２で詳述するマルチシステムを採用する際に、各サブパネルに対して各システムから外部入力されるものである。
【００１６】
ここで、本実施の形態では、ウィンドウという概念を導入している。このウィンドウは、ホストが意識している画像空間の上で纏まって意味を持つ領域であり、画像データの転送処理の単位である。図８では、３次元(３Ｄ)動画画面を表示するためのウィンドウ５８と、テキスト表示に用いられるウィンドウ５９が示されている。尚、図８に示すように、表示画面５７に例えば解像度が２００dpi(dot per inch)である高精細な解像度でテキスト文字等の表示をしようとすると、通常使用される画面の解像度は１００dpiであることから、大きさが１/４となる。このために、テキスト表示においては４倍の大きなフォントを用いて表示される。一方、ウィンドウ５８による３Ｄ動画画面は、もともとのデータはＶＧＡ(640×480ドット)で作られており、画面上では1600×1200ドットの縦横２.５倍で表示されている。
【００１７】
図９(ａ)、(ｂ)は、データ毎の処理とその処理量を説明するための説明図である。図９(ａ)は本実施の形態におけるデータソースと各構成部の処理の体系図である。この図９(ａ)では、ホスト側のグラフィックスチップ１１内におけるプリプロセッサ２０には、テキストデータや３Ｄアニメーション、３２ビットカラーイメージ、ＤＶＤ等のアプリケーション毎に対応したプリハンドラー２６(後述)が備えられている。このプリハンドラー２６からの画像データは、Ｉ/Ｆトランシーバー１５を経由してデジタルＩ/Ｆライン４９を介してパネル側に送出される。パネル側では、Ｉ/Ｆレシーバー５３を経由してパネル制御チップ５１内のポストハンドラー７８(後述)に画像データが入力される。このポストハンドラー７８は１つのウィンドウの処理を担当する処理ユニットであり、このポストハンドラー７８にて処理が実行されてパネル５５に画像が表示される。
【００１８】
一方、図９(ｂ)は、従来技術におけるホスト側で画像を展開してパネル側に転送する態様から、データバンド幅に制限のある状態を示している。この図９(ｂ)では、ホスト側のグラフィックスチップ２１１によってグラフィックスメモリ２１２に画像データが展開される。そして、例えばパネル側のリフレッシュにタイミングを合わせてＩ/Ｆトランシーバー１５を経由し、デジタルインターフェイス(Ｉ/Ｆ)ライン２２０を介してパネル側に画像データが転送される。パネル側では、画像データがＩ/Ｆレシーバー５３を経由してパネル制御チップ２０２に転送され、パネル(図示せず)に表示されている。
【００１９】
ここで、例えば、ゲームに代表される３Ｄアニメーションの処理は、現状、最高速のものでもＶＧＡ解像度である。これでもまだ十分ではなく、更に処理能力の向上が期待されており、ＵＸＧＡ以上の表示画面の処理では、更に数十倍の処理能力が必要となる。また、パネル５５はＱＵＸＧＡ(3200×2400ドット)の解像度で、この画面を生成するためのリフレッシュのデータ量は、毎秒3200×2400×24(Ｒ/Ｇ/Ｂそれぞれ８ビット)×６０[Ｈｚ]×２.５＝３.４５[Ｇbyte/s]が必要となる。ところが、図９(ｂ)に示す従来技術では、グラフィックスチップ２１１とグラフィックスメモリ２１２、およびパネル制御チップ２０２とのバス幅にて最大処理能力が決定されてしまう。一般的には、１２８ビット×１４４[ＭＨｚ]＝２.３[Ｇbyte/s]が最大で、実際にはこの９０％程度が使用できる最大能力である。従って、パネル５５が高精細画面になると、このメモリ処理チップの開発が非常に難しくなる。
一方、図９(ａ)に示す本実施の形態では、パネル５５の画面を分割して駆動することができるので、パネル制御チップ５１も分割数に合わせて増加することが可能となり、例えば４分割して処理すれば、処理データ量を１/４とすることができる。
【００２０】
また、前述のように、例えば３Ｄアニメーションは更に処理できるポリゴン数を増大することが望まれている。その一方で、テキスト画面などの静止画では処理速度の問題よりは更に高精細な表示画面が望まれている。即ち、テキスト画面は人間に読まれることを目的としていることから、２０[Ｈｚ]程度に書き込みレートを下げても影響がない。逆に、高精細化すれば印刷物よりも美しくなる。このように、表示データによって必要とされる処理形態が大きく異なり、全体を同じ処理で扱うのではなく、表示データに応じて最適化できれば、結果として全体の処理能力が各段に向上する。
【００２１】
そのため、本実施の形態ではウィンドウの概念を導入し、データ形式を分け、分散処理を図ることでこの問題点を解決している。即ち、図９(ａ)に示すように、３Ｄアニメーションのウィンドウを例えばＶＧＡ解像度で生成して２.５倍に拡大表示するのと同時に、転送速度が遅い例えば３０[Ｈｚ]のＳＸＧＡ画面を更新できるように構成した。図９(ｂ)に示す従来の表示方式では、グラフィックスチップ２１１とグラフィックスメモリ２１２との間の転送速度は約３[Ｇbyte/s]必要である。また、デジタルＩ/Ｆライン２２０として１.５[Ｇbyte/s]が転送速度として必要となり、ＤＶＩインターフェイスを用いると４セット必要となる。これに対し、本実施の形態では、デジタルＩ/Ｆライン４９は、ＶＧＡとＳＸＧＡの半分の転送量で十分であり、３００[Ｍbyte/s]と１/５の転送量となる。また、パネル側のパネル制御チップ５１とパネルメモリ(後述)との間の転送量も１[Ｇbyte/s]以下で十分である。
【００２２】
図１０は、本実施の形態にて用いられるパケットを用いた画像データの転送方式を、上述のウィンドウとの関係で簡単に説明した説明図である。今、ホストのアプリケーションによる画像イメージとして、領域Ａと領域Ｂが存在するものとする。本実施の形態では、画像の展開作業をホスト側１０(後述)で実行せず、画像の展開作業はパネル側５０(後述)で行われる。ホスト側１０では、例えば領域Ａに対してウィンドウＩＤ：４を、領域Ｂに対してウィンドウＩＤ：５を設定する。パネル側５０への画像情報の転送は、各領域毎に区分されてパケット方式にて実行される。より具体的には、ディスプレイイネーブル(Display Enable)信号に対応して、例えばスキャン毎にパケット化されて画像信号が転送される。これらのパケットによる画像信号には、それぞれウィンドウＩＤを示すＩＤ情報が付加されて転送される。例えば、特定のサブパネルにおける各ハンドラー(後述)に、ウィンドウＩＤ：４およびウィンドウＩＤ：５を処理するように設定すれば、パケット方式で転送され、ウィンドウＩＤが付与された画像情報を、指定サブパネル上で展開することが可能となる。尚、パケットによるデータ転送については、後に詳述する。
【００２３】
以上、本実施の形態について概念的に説明したが、次に、本実施の形態における各部の構成について詳述する。
図１は、本発明が適用された画像表示システムの一実施形態を示すブロック図である。図１において、符号１０はパーソナルコンピュータ(ＰＣ)等からなるホスト(HOST)側であり、本実施の形態における表示装置を駆動するための駆動装置としての役割を有している。このホスト側１０において、符号１１はグラフィックスチップであり、その内部に有するプリプロセッサ２０によって画像データの前処理が実行される。１２はグラフィックスメモリであり、後述する分散処理によってグラフィックスチップ１１がリフレッシュを続ける必要がなくなったことから、従来のものに比べて小さな容量で構成されている。１３はアプリケーションを実行するホストシステム(図示せず)に接続されたシステムバスである。１４はグラフィックスチップ１１とグラフィックスメモリ１２の間にあるグラフィックスメモリバスである。また、１５はインターフェイス(Ｉ/Ｆ)トランシーバであり、画像データをシリアライズしてデジタルＩ/Ｆライン４９を通してパネル側５０に送信している。
【００２４】
一方、パネル側５０には、その内部にポストプロセッサ７０を有する複数のパネル制御チップ５１を備えている。図１では、パネル５５の４分割に対応して４個のパネル制御チップ５１を用いて分割されたパネル５５を駆動している。５２はそれぞれのパネル制御チップ５１に設けられたパネルメモリである。５３は画像データを入力するインターフェイス(Ｉ/Ｆ)レシーバである。また、５４はパネル制御チップ５１からの出力をパネル５５に伝達するためのパネルデータ出力である。更に、５５は実際に画像を表示するパネルであり、 図１では４つの領域に分割されている。このパネル５５は、高精細パネルで構成されており、この高精細な画面をサポートするために、パネル制御チップ５１は、複数個の並列処理を可能としている。また、６８は外部データバスであり、６９はパネル内データバスである。
【００２５】
本実施の形態における特徴的な構成は、グラフィックスチップ１１内のプリプロセッサ２０でデータの前処理を実行し、パネル制御チップ５１内のポストプロセッサ７０で後処理をすることにある。これにより、今までグラフィックスチップ１１が行っていた、画像データを混ぜ合わせて画面リフレッシュをする等のホスト側１０にて実施していた画面生成のジョブを、表示装置側(パネル側５０)に移している。つまり、プリプロセッサ２０で画像データの展開前、即ち、混ぜ合わせ前の画像データにタグや画像データの属性およびエラー保護を付け、ポストプロセッサ７０にてパネルメモリ５２に対して初めて画像データを展開し、即ち、それを解凍し、画像データを混ぜ合わせ、リフレッシュ回路(図示せず)に転送している。
【００２６】
ここで、本実施の形態における一般的な画像データの処理の流れを説明する。ホスト側１０のグラフィックスチップ１１は、グラフィックスメモリバス１４でグラフィックスメモリ１２を読み書きする。アプリケーションを実行するアプリケーションシステム(図示せず)とは、システムバス１３によりハンドリングが行われる。このシステムバス１３には前述のＡＧＰが採用されている。このＡＧＰは、従来のＰＣＩバスに対して２倍〜８倍のパフォーマンスがあるが、バスではないのでシステムの中で１つしかアクティブにはならない。グラフィックスチップ１１のデジタル出力は、Ｉ/Ｆトランシーバ１５に送られ、そこでシリアライズされて高速転送される。
【００２７】
Ｉ/Ｆトランシーバ１５でシリアライズされた画像データは、デジタルＩ/Ｆライン４９を介して受け側のＩ/Ｆレシーバ５３に送られる。このＩ/Ｆレシーバ５３は、シリアライズされた画像データをもとのパラレルのビデオデータに戻している。このパラレルに変換された画像データはパネル制御チップ５１に送られる。このパネル制御チップ５１の中では、まず、パケット化(後述)された画像データがポストプロセッサ７０で解凍され、ウィンドウＩＤ(後述)を認識してそれに合うデータ操作を施し、パネルメモリ５２に展開して格納する。これとは別に、パネル制御チップ５１はパネルメモリ５２から表示データを順次読み出し、パネル５５に対して送出している。
【００２８】
このように、本実施の形態では、従来、グラフィックスチップ１１が行っていた表示処理のジョブ(例えば、画像データの展開、表示のためのリフレッシュ、Ｈ(水平)/Ｖ(垂直)方向のタイミング生成、表示装置のスクリーンサイズによるメモリの割り振り、色数の割り振り等)の大部分を、パネル制御チップ５１のポストプロセッサ７０とそれに続く回路が行っている。このように、本実施の形態におけるシステムでは、ホスト側１０におけるグラフィックスチップ１１の負荷が減り、マルチチップ構成が可能なパネル制御チップ５１で表示処理をするために、高精細を表示する技術として十分に機能することができる。また、グラフィックスチップ１１では、例えば単にＶＧＡ解像度で処理され、パネル制御チップ５１で拡大処理されることから、３Ｄグラフィックス等の動画に対する表示も可能となる。
【００２９】
図２は、図１にて説明したホスト側１０のグラフィックスシステムを説明するための図である。グラフィックスチップ１１には、ビデオデータを生成するＤＡＣ(Ｄ/Ａコンバータ)１６と、同期信号を生成するためのアドレスジェネレータ１７が備えられている。従来技術では、表示装置にてそのまま表示できる形態として、アドレスジェネレータ１７ではディスプレイイネーブル信号と共にＨ-ＳｙｎｃとＶ-Ｓｙｎｃからなる同期信号を出力していた。本実施の形態では、グラフィックスチップ１１の処理を軽減し、画像データを展開せず、そのままのデータを送れるように構成している。ＤＡＣ１６からは、例えば２４ビットからなる色データがプリプロセッサ２０に対して出力される。また、アドレスジェネレータ１７からはデータが送られていること、即ち、データバリッドを示すＤＥ信号と、スタートポイント等を設定するためのアドレス(Address)信号だけがプリプロセッサ２０に対して出力される。プリプロセッサ２０は、画像データに対してウィンドウＩＤとアドレス情報などを付加する処理を実行している。尚、ホスト側１０とパネル側５０との情報交換には、ＤＤＣ(Display Data Channel)として知られている１２Ｃベースのインターフェイスが用いられる。このインターフェイスを介して制御信号がホスト側１０とパネル側５０との間を行き来できるように構成されている。
【００３０】
図３は、プリプロセッサ２０の内部構成を示すブロック図である。入力ラッチ２１はアプリケーションから入力されるビデオデータをラッチしている。ＩＤレジスタ２２ではパケットに付与されるウィンドウＩＤがセットされ、このウィンドウＩＤに対応したプリハンドラー２６が選択できるように構成されている。ポインタ２３は簡単なアドレスやデータの順番などの情報をパケット用に変換している。シンクビット２４は表示画面と書き込みデータの同期を取るためのビットである。このビットに合わせて表示画面の垂直カウンタの同期が取られる。チェックビット生成器２５は入力ラッチ２１からのデータ入力とデータバリッドを示すＤＥ(Display Enable)信号を受けて、画像データのチェックビット(パリティ、サム、ＣＲＣなど)を生成している。
【００３１】
また、プリハンドラー２６はプリプロセッサ２０側のハンドラーであり、ウィンドウＩＤ毎のデータを持っている。ここで、ハンドラーとは１つのウィンドウの処理を担当する処理ユニットを言い、パネル側５０の、後述するポストプロセッサ７０にも備えられており、各種のレジスタを有している。ウィンドウＩＤレジスタ２７はプリハンドラー２６における各ハンドラーがどのウィンドウに対応するかのＩＤを示している。クリップレジスタ２８は実際に書き込みができる領域を示すレジスタである。ポジションレジスタ２９は転送データの位置を示している。スケールレジスタ３０は画像データのスケーリングをするための倍率を示すレジスタである。モードレジスタ３１は画像データの転送モードや書き込みモードを示している。プライオリティレジスタ３２はウィンドウＩＤ毎のプライオリティを示している。
【００３２】
また、ＤＤＣハンドラ３７はパネル側５０との間でＤＤＣの制御信号を送受している。ジョブ番号出力レジスタ３３はジョブ番号を書き込むレジスタであり、このジョブ番号はＤＤＣハンドラ３７を経由してパネル側５０に送られる。ジョブ番号入力レジスタ３４では全体で最小のジョブ番号がＤＤＣ経由で読み込まれている。このジョブ番号に関しては、後述する実施の形態２で説明するように、マルチシステム構成を採用した際の同期合わせに用いられる。シンクバックレジスタ３５はパネル側５０から同期を取るのに用いられ、パネル側５０の正規化された垂直情報が読めるように構成されている。エラーステータスレジスタ３６ではパネル側５０での処理のエラー情報が戻されるように構成されている。
更に、マルチプレクサ３８では、ＩＤレジスタ２２、ポインタ２３、シンクビット２４からのヘッダー情報、入力ラッチ２１からのビデオ画像データであるボディ情報、チェックビット生成器２５からのフッター情報、プリハンドラー２６からのコマンドをマルチプレクスし、パケット化してパネル側５０に転送している。
【００３３】
図４は、パネル側５０における表示回路の概略構成を示すブロック図である。パネル制御チップ５１は、ポストプロセッサ７０、入力ＦＩＦＯ６１、出力ＦＩＦＯ６２、入力アドレスレジスタ６３、Ｈカウンタ６５とＶカウンタ６６を有する出力アドレスレジスタ６４を備えている。ホスト側１０からシリアライズされて転送された画像データは、Ｉ/Ｆレシーバ５３により、パラレルの画像データと制御信号ＤＥに変換される。従来技術と異なり、Ｉ/Ｆレシーバ５３からのデータはパケット形式であり、ポストプロセッサ７０により解凍されて処理される。このポストプロセッサ７０はパネル側５０内のパネル制御チップ５１の中に設けられ、ホスト側１０から送出されたパケットを処理する。スケールなどの処理もこのポストプロセッサ７０が実行する処理の１つである。画像データは入力ＦＩＦＯ６１と出力ＦＩＦＯ６２によりタイミングを調整されながら、パネルメモリ５２にリード/ライトされ、次の処理へと送られる。ここで、ポストプロセッサ７０によって処理される画像データはＸ/Ｙアドレスとなっており、入力アドレスレジスタ６３でメモリアドレスに変換され、この変換されたメモリアドレスは、パネルメモリ５２および出力アドレスレジスタ６４に入力される。この出力アドレスレジスタ６４はＨカウンタ６５とＶカウンタ６６を備えており、水平/垂直方向の同期信号がパネル５５に対して出力される。また、表示モードの変換などはポストプロセッサ７０が実行している。
【００３４】
図５は、ポストプロセッサ７０の内部構成を示すブロック図である。入力ラッチ７１では入力されるパケットデータがラッチされる。ＩＤレジスタ７２ではパケットに格納されているウィンドウＩＤがセットされる。ポインタ７３はパケット化された簡単なアドレスやデータの順番などの情報を変換している。シンクビット７４は表示画面と書き込みデータの同期を取るためのビットである。このビットに合わせて表示画面における垂直カウンターの同期が取られる。エラー生成器７５ではデータのチェックビットを元にしてデータのエラーが検出される。一方、アドレス生成器７６では、ＩＤレジスタ７２、ポインタ７３、シンクビット７４からのポインタやパケット情報などからアドレスが生成される。クリッピング回路７７ではポストハンドラー７８内のクリップレジスタ８０とプライオリティ制御回路８９から書き込み可能なエリアを検出し、入力ラッチ７１からの画像データに対してその部分のデータを切り出すように構成されている。
【００３５】
ポストハンドラー７８はポストプロセッサ７０内のハンドラーであり、ウィンドウの処理を担当する処理ユニットとして機能する。ポストハンドラー７８内のウィンドウＩＤレジスタ７９は、ポストハンドラー７８における各ハンドラーが処理するパケットのウィンドウＩＤを示している。クリップレジスタ８０は実際に書き込みができる領域を示すレジスタである。ポジションレジスタ８１は転送データの位置を示している。スケールレジスタ８２は画像データのスケーリングをするための倍率を示すレジスタである。モードレジスタ８３は画像データの転送モードや書き込みモードを示している。プライオリティレジスタ８４は各ハンドラーのクリップエリアのプライオリティを示している。エラーステータスレジスタ８５はパネル側５０での処理のエラー状況を示すレジスタである。
【００３６】
また、ＤＤＣコントローラ８６はホスト側１０とで送受されるＤＤＣ制御信号の処理を行っている。スケーリング回路８７ではクリッピング回路７７から出力される画像データが拡大/縮小され、パネル５５に対して画像データが出力される。ＦＩＦＯメモリ８８はこのスケーリング回路８７にて拡大/縮小するために用いられるメモリである。プライオリティ制御回路８９は各ポストハンドラー７８の処理エリア(クリッピングエリア)と夫々のプライオリティから、そのウィンドウＩＤにおける画像データの書き込み可能エリアを設定している。更に、同期制御回路９０は正規化した垂直カウンタを用い、パネルの垂直同期とシステムにおけるデータ処理の同期を取るために使用される回路であり、垂直同期信号を出力している。ジョブ番号レジスタ９１は、低速バスである内部バスに接続されると共に、マルチシステムを採用する際に用いられて、最小のジョブ番号を保存している。
【００３７】
ここで、ホスト側１０のプリプロセッサ２０と、パネル側５０のポストプロセッサ７０とでなされる処理について、図６のフローチャートを用いて簡単に説明する。
まず、プリプロセッサ２０におけるプリハンドラー２６の各レジスターが、アプリケーションによるウィンドウに応じてセットされる(ステップ３０１)。この情報は、ＤＤＣハンドラ３７を介してＤＤＣ制御信号により、ポストプロセッサ７０に転送され、ポストハンドラー７８のウィンドウＩＤレジスター７９がセットされる(ステップ３０２)。一方で、画像データを転送する際に用いるパケットのヘッダー情報として、ＩＤレジスタ２２、ポインタ２３、シンクビット２４が書かれる(ステップ３０３)。また、プリプロセッサ２０は、パケットのボディの中にポストハンドラー７８の情報を入れてパケットにして転送する(ステップ３０４)。転送されたデータはＩＤが一致しているポストハンドラー７８に保存される(ステップ３０５)。
【００３８】
次に、パケットのボディにビデオデータを入れてヘッダー、ボディ、フッターとしてシステムから転送する(ステップ３０６)。パネル側５０はこのパケットからまずヘッダーを切り出してその中のＩＤにあったポストハンドラー７８を選び、選ばれたハンドラーによってこれが処理される(ステップ３０７)。クリップ情報とプライオリティー、ポジション情報、ヘッダーのアドレス情報からデータ部分が処理される。その後、次段にデータとアドレスが送られる(ステップ３０８)。同時にエラー検出を実行してエラー情報が蓄えられる(ステップ３０９)。このステップ３０６からステップ３０９の処理が1ライン(例えば1280ドット)又は1ブロック(例えば32×32ドットのブロック)毎になされる(ステップ３１０)。ホスト側１０のシステムからは定期的にエラー情報がＤＤＣ経由で読み込まれ、必要な処理(転送ストップや再転送)がなされる(ステップ３１１)。
【００３９】
図７(ａ)、(ｂ)、(ｃ)は、従来技術と本実施の形態とのデータ転送の比較、およびデータフォーマットを示した説明図である。
図７(ａ)は従来のビデオデータの転送を示している。従来の転送は、Ｒ(Red)/Ｇ(Green)/Ｂ(Blue)のビデオデータとＶ-sync、Ｈ-sync、ＤＥ、およびその他の２本程度のコントロール信号をシリアライズして送っている。ビデオデータは、表示画面に合わせて左上から右下へ、１ラインずつ順次、転送される。また、その転送の間は、ブランキング時間としてデータ転送をしない期間がある。一方、パネルからホストへＤＤＣ制御信号を送るための、１００[ＫＨｚ]程度と遅い読み込み経路がある。
【００４０】
一方、図７(ｂ)に示した本実施の形態におけるビデオデータの転送では、従来の転送におけるブランキング時間を利用する。そして、ヘッダーとフッターに１６ドット以下の情報を付加している。これをパケット化と呼んでいる。本実施の形態では、同時に複数のソースのパケットを扱うために、Ｖ-syncとＨ-syncの同期信号はここでは意味がなくなり、Ｖ-sync情報をヘッダーに含ませるように構成した。従って、同期信号はデータ転送量を示す信号であるＤＥ１本で良くなり、本実施の形態ではこの同期信号をエラー処理などで使用している。また、ＤＤＣで処理する情報が増え、双方向での使い方となる。また、データの量は固定ではない。
尚、本実施の形態では、データ形式を従来技術と似させるように配慮している。これは、市場に従来のＰＣとモニター装置が存在する場合を考慮し、従来方式を採用した機器と互換性を保つためである。また、グラフィックスチップの変更を最小にするためにも、データ形式をあまり変えずにサポートできるように配慮している。
【００４１】
図７(ｃ)に、本実施の形態におけるデータフォーマットを示している。ボディが通常の画像データ部分であり、可変長となっている。ヘッダー部分には画像データの名札に該当するウィンドウＩＤ、書き込みポジションを示すポインタ、Ｖ-syncの代わりである同期ビットなどがある。各パケットビットの最後にはフッターがあり、エラーの検出に使用される。これは、データが伝送系を通して送られるので、フェーズエラーなどが起こる場合を考慮したためである。
【００４２】
以上説明したように、本実施の形態によれば、例えば、画面リフレッシュワークの表示装置側(パネル側５０)への移動と、表示装置でのスケーリングによりワークロードを低減することが可能となる。超高精細パネルにおいてウィンドウ表示をした場合、文字などの表示は当然に高精細である必要があり、静止画でも同様である。しかしながら、ゲームなどの３Ｄ表示では、ＣＰＵ側のパフォーマンスが十分ではないので、例えばＶＧＡの画面となる。本実施の形態によれば、この２つの部分を分けて、静止画の部分はパネル側５０のメモリを用いてリフレッシュを行う。これにより、システム側(ホスト側１０)は３Ｄのワークのみとなって処理能力は、例えばＳＸＧＡの場合は２倍以上向上することができる。更に、従来、３Ｄの表示部分は、ＶＧＡ(640×480ドット)の解像度でＸＧＡ(1024×768ドット)のサイズで表示する場合、システム側で約１．５倍にスケールアップしてデータ転送していた。本実施の形態によれば、このワークについてもパネル側５０で処理することが可能となる。特に超高精細表示で４倍の拡大となった場合や、ノートブックなどで消費電力が厳しい場合には大きなメリットとなる。
【００４３】
〔実施の形態２〕
実施の形態１では、ホスト側１０にて単独のグラフィックスチップ１１を用いて表示装置を駆動する場合について説明した。実施の形態２では、ホスト側１０にて複数のグラフィックスチップ１１を用いて表示装置を駆動する、所謂マルチシステムによる表示手法について説明する。
尚、実施の形態１と同様の機能については同様の符号を用い、ここではその詳細な説明を省略する。
【００４４】
本実施の形態におけるマルチシステムによる動画画像の表示処理は、大きく２つの特徴を有している。
１つは、実施の形態１にて説明したように各システムが分担した画面を制御するだけではなく、その中の１つのシステムから全体の画面を制御できる点にある。従来では、それぞれのシステムがそれぞれの画面を制御していたので、１つのシステムのＯＳは画面の１/４の制御だけで全体を制御することができなかった。本実施の形態によれば、例えば、１つのシステムからは通常のウィンドウ処理ができると同時に、特定の３Ｄウィンドウに対してのみ複数のシステムのサポートを受けるように構成することが可能となる。
他の１つの特徴は、同期の取り方の違いにある。従来は、システムが高速ＬＡＮや特別なコミュニケーション手段を有し、これらにより複数システム間の同期を取るように構成されていた。この方法は複雑であり、システム間による相互依存性が強かった。一方、本実施の形態では、表示装置(パネル側５０)とのやり取りの中で、複数システム間の同期を取ることが可能となる。
【００４５】
図１１は、本実施の形態におけるマルチシステムでのシステム構成を説明するためのブロック図である。同図に示されるように、表示分解線５６により４分割されたパネル５５が、それぞれパネル制御チップ５１に接続されている。但し、必ずしも複数のパネル制御チップ５１を有している必要はなく、１つの制御チップで制御するように構成することも可能である。それぞれのパネル制御チップ５１は、別々のシステム１００のグラフィックスチップ１１からビデオデータが送られている。パネル側５０では、同時に１つのシステム１００から全体の画面を制御できるように、各パネル制御チップ５１はパネル内データバス６９によって接続されている。
【００４６】
ここで、一般に複数システム(ＰＣ等)で動画表示をする場合、同期に関する２つの問題点が指摘されている。
１つは、画面のリフレッシュと表示データの転送に関する同期の問題点である。表示画面が１つの場合には、画面リフレッシュのタイミングは当然に１つであり、各システムはこれと同期が取られていなければならない。例えば、上下の画面で人を表示し、人が右に動いているとしてリフレッシュしているデータを書き換えた場合を考える。同期が取られていないと、例えば上部だけが１ドット右に動き、下部がそのまま取り残される等、画面のつなぎ目である表示分解線５６でこのような現象が起きてしまう。
他の１つは、動画処理自体の同期の問題であり、動画のアプリケーションが時間で制御されていない場合に生じる。例えば１フレームである１６[msec]の間に行う仕事量が決められているのではなく、システムのパフォーマンスに合わせて表示コマを進めたり、表示をさらに細かく描く場合等である。これらのシステムから送られた画像データをつなぎ合わせて表示する場合、それぞれが処理しているデータ量の違いにより、例えば左側の画面は処理が早くてフォギング(Fogging：もやをかける)などの画像処理がされ、右側が遅くてフォギングされない等の現象が起きる場合がある。
【００４７】
図１２は、本実施の形態におけるホスト側１０とパネル側５０との同期処理の構成を示す説明図である。本実施の形態では、ＤＤＣ信号を用いて上記２つの同期に関する問題を解決している。
ホスト側１０における１つのシステム１００内の、更にグラフィックスチップ１１内のプリプロセッサ２０には、同期制御回路４０やリード/ライトコントロール４５等が備えられている。この同期制御回路４０は、オフセットレジスタ４１、加算器４２、マルチプレクサ４３、垂直同期カウンタ４４を備えている。一方、パネル側５０におけるパネル制御チップ５１のポストプロセッサ７０には、同期制御回路１１１、ＤＤＣハンドラ１１５、ジョブ(ＪＯＢ)番号コントローラ１１６が備えられている。この同期制御回路１１１は、垂直同期カウンタ１１２、オフセットレジスタ１１３、加算器１１４を備えている。また、ジョブ番号コントローラ１１６は、ジョブ番号入力レジスタ１１７、ジョブ番号出力レジスタ１１８、比較器１１９、内部バスコントローラ１２０、内部バス１２１を備えている。
【００４８】
パネル側５０には、画面のリフレッシュの位置情報を有する垂直同期カウンタ１１２があり、パネル５５のリフレッシュに同期して２つの内部同期信号(INT_VSYNCとINT_HSYNC)により全てのチップが同じ値を持つ(但し、パネル制御チップ５１が１個の場合には必要がない)。これは、内部のINT_HSYNC毎にオフセットレジスタ１１３からの出力が加算器１１４に加算されて、パネル５５の垂直ライン数に影響されないように正規化されている。この値はＤＤＣで読み出され、システム１００側のグラフィックスチップ１１中の垂直同期カウンタ４４に書き込まれる。この垂直同期カウンタ４４からの出力も正規化するためにオフセットレジスタ４１からの出力と共に加算器４２にて加算される。
【００４９】
図１３は、本実施の形態におけるプロセスフローを示す図である。左側がシステム１００のアプリケーションまたはデバイスドライバー側における処理の流れを示している。また、右側はパネル側５０のパネル制御チップ５１における処理の流れを示している。本実施の形態では、各システム１００からの仕事は、ジョブによって管理され、複数のシステム１００によるマルチシステム間でどこまで書けるかをシェアできるように構成されている。ここで、ジョブ(タスク)は、例えば動画においては、どのポリゴン(３Ｄでは三角形)まで書くかといった分割単位であり、ジョブ(タスク)番号は画像処理を任意の単位で分け、シーケンス番号にしたものである。画像処理の単位は任意に選択可能であり、１フレーム内の処理を区切っていることから、１フレームで数十以上の単位となれば問題はない。
【００５０】
まず、アプリケーションは、あるタイミングにおいて次のフレーム内で実行できる処理の最大のジョブ番号を計算する(ステップ４０１)。更に、ジョブの同期合わせを実行するために、複数のシステム１００の中でマスターとなるマスターＰＣのジョブ番号を０(又は最小)としてオペレーションを止める(ステップ４０２)。計算された最大のジョブ番号は、ＤＤＣを経由してパネル側５０のパネル制御チップ５１に転送される(ステップ４０３)。ここで画像処理は、特定の単位で分割されて処理順に番号が振られることを前提としている。
パネル制御チップ５１では、パネル側５０の内部バス(INT_BUS)１２１に、順次、それぞれのジョブ番号を流す(ステップ４０４)。各パネル制御チップ５１では、比較器１１９にてバス上のジョブ番号の値と比較し、小さい方のジョブ番号を読み込み、ジョブ番号出力レジスタ１１８に書き込む(ステップ４０５)。
【００５１】
各システム１００では、ＤＤＣ経由でジョブ番号を読み込み、パネル制御チップ５１のジョブ番号出力レジスタ１１８または既に読み込まれたジョブ番号入力レジスタ３４からジョブ番号を読み込む(ステップ４０６)。各システム１００では、読み込まれたジョブ番号に基づいて、次のフレームでの処理としてこの番号までのジョブを実行する(ステップ４０７)。本実施の形態では、マスターＰＣがジョブ番号を０とすることで全体のオペレーションの開始を止め、このマスターＰＣが動き始めると動作が始まることで、アプリケーションが処理するジョブの番号を各システム１００にて取得することが可能となる。これらの一連の処理をマスターＰＣに正しいジョブ番号がセットされるまで実行することで、複数のシステム１００におけるジョブの同期合わせを行っている。即ち、この処理フローによって複数のシステム１００において、最も遅いシステム１００に同期を合わせることが可能となる。
【００５２】
次に、マスターＰＣに正しいジョブ番号をセットする(ステップ４０８)。これによってジョブがスタートする。各システム１００では、次のフレーム内に処理できる最大のジョブ番号を計算する(ステップ４０９)。前述と同様にＤＤＣ経由でパネル５５に対してジョブ番号をセットする(ステップ４１０)。
一方、パネル制御チップ５１では、パネル側５０の内部バス(INT_BUS)１２１に、順次、それぞれのジョブ番号を流す(ステップ４１１)。各パネル制御チップ５１では、比較器１１９にてバス上のジョブ番号の値と比較し、小さい方のジョブ番号を読み込み、ジョブ番号出力レジスタ１１８に書き込む(ステップ４１２)。
システム１００側では、ＤＤＣ経由でジョブ番号を読み込み、パネル制御チップ５１のジョブ番号出力レジスタ１１８または既に読み込まれたジョブ番号入力レジスタ３４からジョブ番号を読み込む(ステップ４１３)。各システム１００では、読み込まれたジョブ番号に基づいて、次のフレームでの処理としてこの番号までのジョブを実行する(ステップ４１４)。その後、ステップ４０９に戻る。
【００５３】
図１４は、前述のフローチャートで説明したマルチシステムによる同期処理オペレーションを更に説明するためのタイミングチャートである。垂直同期(V-SYNC)毎にパネル垂直カウンタ(Panel V-CNTR)がゼロになり、垂直同期カウンタ１１２がカウントされていく。どこかの時点でこのレジスターが読まれ、システム側の垂直同期カウンタ４４に書き込まれる。図１４におけるSystem V-CNTRのタイミングに示されるように、この垂直同期カウンタ４４への書き込みでは少しの遅れを生ずるように構成されている。システム１００側はこの遅れを待って同期を認識することが可能となる。
【００５４】
この図１４のタイミングチャートでは、システム１００の垂直同期カウンタ４４が最大値に近いタイミングを用い、各自がジョブ番号の計算を始めている。即ち、読み込む作業をしてからジョブの計算を始めるために、垂直カウンタ(VCNTR)がＮ＋Ｘ時間以上経過して処理を開始する。同時に、システム側が有するダブルバッファ(図示せず)からパネル側５０にデータ転送を始める。そしてその値をパネル側５０のジョブ番号入力レジスタ１１７に書き込む。パネル側５０では、適当なタイミングで内部バス１２１上に各パネル制御チップ５１の値を乗せる。各パネル制御チップ５１は、その値を内部バスコントローラ１２０から読み込む。そして、ジョブ番号入力レジスタ１１７の自分の値、およびジョブ番号出力レジスタ１１８に書き込んだ値とを比較して、１番小さな値を比較器１１９から得て、再びジョブ番号出力レジスタ１１８に書き込む。これによって、システム１００から読み込まれるときには、各システム１００の最小のジョブ番号が読み込まれる。この値を読み込んだシステム１００は、その番号までを次の処理で実行すると同時に、垂直カウンタ(V-CNTR)のセットを行っている。即ち、システム１００では、ＤＤＣ経由でジョブ番号と垂直カウンタ(V-CNTR)の値を読み込み、次のフレーム処理のジョブ番号を決定し、同時に垂直カウンタ(V-CNTR)をセットしている。
【００５５】
以上説明したように、本実施の形態によれば、システム側のパワーが不足している、例えば３Ｄ表示の場合であっても、例えば表示部分を４個の部分に分けることで表示することが可能となる。即ち、例えば分割したそれぞれの部分を４台のシステムでドライブすれば、４倍の画面であるＳＸＧＡ程度(1280×1024ドット)の大画面や、１０"ＵＸＧＡ(２００dpi)の超高精細の表示が可能となる。本実施の形態によれば、ユーザから見ると、１つのシステムから画面全体を表示しながらにして、３Ｄのウィンドウだけが高性能でサポートされていることになる。また、複数種類のシステム、即ち、ＯＳの全く異なるＰＣがそれぞれ画面を表示したり、協力して表示することが可能となる。
【００５６】
〔実施の形態３〕
この実施の形態３では、表現色数を増やした多ビットからなる表示色をサポートするための画像表示手法について説明する。
従来、２４ビット以上の表示色のサポートは、ハイエンド(高級機)のワークステーションに限られていた。これは、２４ビット以上の表示色をサポートするためには、各部分の処理速度が上がりシステムが高価になることがその要因の１つである。本実施の形態では、ホスト側とシステム側とで分散処理を実行することにより、システムの処理速度を遅くすることが可能となり、２４ビット以上の表示色のサポートが容易となる。
尚、前述の各実施の形態と同様の構成については同様の符号を付し、ここではその詳細な説明を省略する。
【００５７】
図１５は、本実施の形態において、カラー画像とモノクローム画像とが混在して画面表示された状態を示している。パネル５５の表示画面５７上には、通常のテキスト画面からなるウィンドウ５９の他に、３Ｄ動画画面のウィンドウ５８とモノクローム画像のウィンドウ１３０が表示されている。ここでは、３Ｄ動画画面のウィンドウ５８を３０ビットカラーとし、モノクローム画像のウィンドウ１３０を１４ビットの単色画面としている。実施の形態１および２で説明してきたパネル５５の上に、このようなタイプの異なる画像を混在して表示することが可能である。
【００５８】
図１６は、本実施の形態における処理を実行するブロック構成と制御フローを示す説明図である。同図において、パネル制御チップ５１は、階調表現を増すためのＦＲＣ/ディザ回路１３１を有している。またポストプロセッサ７０には、ガンマ調整やカラーマッチングの処理を行う変換回路１３２と、パネルメモリ５２とのリード・ライトのタイミングを取るためのＦＩＦＯバッファ１３３が備えられている。
まず３０ビットカラーの処理を説明する。システムのアプリケーションから３２ビットで送られる画像データは、システムバス１３を介してグラフィックスチップ１１に入力される。この画像データはグラフィックスチップ１１で処理されてデジタルＩ/Ｆライン４９経由でパネル制御チップ５１に送られる。このデジタルＩ/Ｆライン４９では２４ビットで後述するデータフォーマットを用いて転送される。この送られた画像データは、ポストプロセッサ７０で再び３０ビットに変換されてパネルメモリ５２に書き込まれる。このときの画像データの形式は、図１６のメモリデータ形式に示されるように、Ｒ/Ｇ/Ｂそれぞれ１０ビットとなる。ＦＲＣ/ディザ回路１３１にて読み込まれた画像データは、Ｒ/Ｇ/Ｂそれぞれ８ビットのデータに変換されてパネルデータ出力５４からパネル５５のＸ-ドライバー(図示せず)に転送される。ＦＲＣ/ディザ回路１３１はＲ/Ｇ/Ｂそれぞれに対して時間的な分配と空間的分配により階調表現を増すように機能している。
【００５９】
図１７(ａ)、(ｂ)は、デジタルＩ/Ｆライン４９のデータフォーマット例を示している。図１７(ａ)はＴＭＤＳ(Transition Minimized Differential Signaling)データ転送を示している。また、図１７(ｂ)はＴＭＤＳを用いた３０ビットカラーのビットアサインを示している。この図１７(ａ)の３本のＴＭＤＳ０〜ＴＭＤＳ２は、クロック以外のシグナル３本に対応していて、それぞれＲ/Ｇ/Ｂ８ビットから１０ビットにコーディングしてデータ転送をしている。便宜上、１ドット毎に縦に描いているが、実際にはコーディングされたデータがシリアルに転送されている。コーディングは、同期信号を入れ込む際のエラーリカバリーやＤＣバランスを取るために行われ、実際のデータとしてはＲ/Ｇ/Ｂ各８ビットしか使えない。２４ビットカラーの場合は、そのままＲ/Ｇ/Ｂ８ビットのデータが使用される。
【００６０】
ここで、３０ビットカラーの場合には、図１７(ｂ)に示すように順にずらして３２ビット(８ビット×４)ずつを１ドットデータとしている。従って、２４ビット転送で４ドット送れる内容であっても、３０ビット転送では３ドットに減ることになる。本方式ではパケットのヘッダー内にデータ転送モードが指定でき、この指定した転送モードに合わせてデータの処理がなされる。また、実際には３０ビット転送で各ドットに２ビットの制御ビットが加わり、この２ビットはデータ転送モードでダイナミックにアサインされる。例えば、Write-per-bit(そのビットがＯＮのところだけ書き込むモード)や垂直パリティビットとして、データのエラーチェックを強化したりして用いられる。このように、転送モードは自由にセットできるので、４８ビットカラーや６４ビットカラーもプロトコル上は容易にサポートすることが可能となる。
【００６１】
次に、１４ビットの単色表示とこれらの混在方法を説明する。図１６において、アプリケーション側で例えば１６ビットで処理されている場合には、システムバス１３には１６ビットで転送される。グラフィックスチップ１１から出力されるデジタルＩ/Ｆライン４９では、通常の２４ビットの中に入れ込んで転送される。但し、このときにデータ転送モードを１６ビットモノクローム転送にセットしておく必要がある。この１６ビットデータは、パネル制御チップ５１中のポストプロセッサ７０内の変換回路１３２により、３０＋１ビットのデータに変換される。この変換回路１３２では、前述のようにガンマ調整やカラーマッチングの処理が行われている。この３０ビットの構成は、モノクロームの上位６ビットがＲ/Ｇ/Ｂ共通で、下位８ビットをＲ/Ｇ/Ｂ毎にガンマ調整とカラーマッチングに割り振り(８ビット×３)、合計で３０ビットとしている。これに識別ビットに１ビットを加えて、パネルメモリ５２には３１ビットが書き込まれている。この識別ビットがＯＮのビットは、モノクロームの処理を行い、ＯＦＦのところは通常のカラー処理が行われる。
図１６にこれらのメモリデータ形式の例を示している。Ｒ/Ｇ/Ｂが８ビットカラー、１０ビットカラーの他、１４ビットのモノクロームが示されている。この１４ビットのモノクロームでは、Ｇの１４ビットの中から６ビットを上記の共通ビットとしている。
尚、パネル側５０に対してモノクロームかカラーかを示す為に、データ転送に先駆けて、例えば、図７(ｃ)に示したパケットビデオデータのフォーマットの中で、最初のパケットのヘッダー部におけるポインタ等に１ビットでモノクロームかカラーかを指定している。
【００６２】
本実施の形態では、このようにパネルメモリ５２に書き込まれた識別ビットによってその後の処理を変えるように構成している。パネルメモリ５２から読み出された画像データは、識別ビットでモノクロームか否かの判別をされ、モノクロームの場合にはＲ/Ｇ/Ｂ共通の上位６ビットにそれぞれの下位８ビットを加え、６ビットをＦＲＣ/ディザ回路１３１によりＲ/Ｇ/Ｂそれぞれ８ビットに変換してパネル５５のＸ-ドライバーに転送している。
尚、この識別ビットを、ガンマ調整、カラーマッチング、スケーリング等の処理に用いることが可能である。
【００６３】
このように、本実施の形態によれば、表現色数を増やしたこと、画像データの転送速度を自由にしたこと、および画像データの転送フォーマットを自由にしたことにより、ガンマ調整やカラーマッチングの処理は、システム側でもパネル側でもどちらでも問題無く実施することができる。例えば、システム側で処理をして３０ビットカラーモードで転送するように構成することも可能であり、また、パネル側に変換テーブルを有して、２４ビットカラーモードで転送されたデータを選択テーブルで３０ビットカラーに変換することも可能である。
更に、カラーかモノクロームかを判別する識別ビットを用いていることから、モノクロームの場合にＲ/Ｇ/Ｂを分けて処理することから開放される。その結果、例えば１４ビット等の多ビットからなるモノクローム画像を表示することが可能となり、例えば、多階調のモノクロームが要求されるレントゲン表示等への適用が可能となる。
【００６４】
また、本実施の形態における適用例として、ＤＶＤ(Digital Versatile Disc)の画面を一部表示するものが挙げられる。もともとのＤＶＤのデータは圧縮されており、従来ではシステムとグラフィックスチップにより圧縮を解く必要があった。逆に、この解凍部分を分け、圧縮されたままの状態にあるデータを転送できれば転送量が大幅に削減される。高精細パネルの場合、ホスト側１０とパネル側５０の間のデータ転送量が多いので、データが圧縮されていると、例えば１/１０のケーブルによるバンド幅(ケーブルの数)で良くなる。また、前述したように、例えば静止画画像をＲ/Ｇ/Ｂ各１０ビットで色数を増やして表示したいと欲する一方で、残りのウィンドウ部分はＲ/Ｇ/Ｂ各８ビットでＯＳがコントロールしている場合がある。かかる場合においても、分割して処理できるために容易にサポートすることができる。更に、ガンマなどの色調整の変換も、同様にウィンドウ毎に制御することが可能となる。本実施の形態によれば、今後、問題となってくると予想されるＤＶＤなどの著作権を有するデータであっても、その表示部分だけを暗号化して転送すること等への応用が可能である。
【００６５】
以上、実施の形態１〜３を用いて詳細に説明してきたが、これらの実施の形態によれば、ドットが見えないような超高精細を出力する場合においても、容量不足や処理速度の遅れ等、システム全体のパフォーマンスを落とすことなく表示することが可能である。
また、高精細化が更に進んだ場合においても、その度毎に物理的インターフェイスを変える必要がなく、実用性、経済性にも非常に優れている。
【図面の簡単な説明】
【００６６】
【図１】本発明が適用された画像表示システムの一実施形態を示すブロック図である。
【図２】図１にて説明したホスト側のグラフィックスシステムを説明するための図である。
【図３】プリプロセッサの内部構成を示すブロック図である。
【図４】パネル側における表示回路の概略構成を示すブロック図である。
【図５】ポストプロセッサ７０の内部構成を示すブロック図である。
【図６】ホスト側１０のプリプロセッサ２０と、パネル側５０のポストプロセッサ７０とでなされる処理を示すフローチャートである。
【図７】(ａ)、(ｂ)、(ｃ)は、従来技術と本実施の形態とのデータ転送の比較とデータフォーマットを示した説明図である。
【図８】本実施の形態における表示画面の構成を説明するための説明図である。
【図９】(ａ)、(ｂ)は、データ毎の処理とその処理量を説明するための説明図である。
【図１０】本実施の形態にて用いられるパケットを用いた画像データの転送方式を説明するための説明図である。
【図１１】本実施の形態におけるマルチシステムでのシステム構成を説明するためのブロック図である。
【図１２】本実施の形態におけるホスト側１０とパネル側５０との同期処理の構成を示す説明図である。
【図１３】本実施の形態におけるプロセスフローを示す図である。
【図１４】マルチシステムによる同期処理オペレーションを説明するためのタイミングチャートである。
【図１５】カラー画像とモノクローム画像とが混在して画面表示された状態を示した図である。
【図１６】実施の形態３における処理を実行するブロック構成と制御フローを示す説明図である。
【図１７】(ａ)、(ｂ)は、デジタルＩ/Ｆライン４９のデータフォーマット例を示した図である。
【図１８】従来技術におけるグラフィックスチップのパワー不足を解消するための１手段を示したシステム構成図である。
【符号の説明】
【００６７】
１０…ホスト(Host)側、１１…グラフィックスチップ、１２…グラフィックスメモリ、１３…システムバス、１４…グラフィックスメモリバス、１５…インターフェイス(Ｉ/Ｆ)トランシーバ、１６…ＤＡＣ、１７…アドレスジェネレータ、２０…プリプロセッサ、２１…入力ラッチ、２６…プリハンドラー、３３…ジョブ(ＪＯＢ)番号出力レジスタ、３４…ジョブ(ＪＯＢ)番号入力レジスタ、３５…シンクバックレジスタ、３６…エラーステータスレジスタ、３７…ＤＤＣハンドラ、３８…マルチプレクサ、４０…同期制御回路、４９…デジタルインターフェイス(Ｉ/Ｆ)ライン、５０…パネル側、５１…パネル制御チップ、５２…パネルメモリ、５３…インターフェイス(Ｉ/Ｆ)レシーバ、５４…パネルデータ出力、５５…パネル、６１…入力ＦＩＦＯ、６２…出力ＦＩＦＯ、６３…入力アドレスレジスタ、６４…出力アドレスレジスタ、６５…Ｈカウンタ、６６…Ｖカウンタ、６８…外部データバス、６９…パネル内データバス、７０…ポストプロセッサ、７１…入力ラッチ、７８…ポストハンドラー、８６…ＤＤＣコントローラ、８７…スケーリング回路、８８…ＦＩＦＯメモリ、９０…同期制御回路、９１…ジョブ(ＪＯＢ)番号レジスタ、１００…システム、１１１…同期制御回路、１１５…ＤＤＣハンドラ、１１６…ジョブ(ＪＯＢ)番号コントローラ、１１７…ジョブ(ＪＯＢ)番号入力レジスタ、１１８…ジョブ(ＪＯＢ)番号出力レジスタ、１１９…比較器、１２０…内部バスコントローラ、１２１…内部バス
【図１】
2007304611.tif 000003
【図２】
2007304611.tif 000004
【図３】
2007304611.tif 000005
【図４】
2007304611.tif 000006
【図５】
2007304611.tif 000007
【図６】
2007304611.tif 000008
【図７】
2007304611.tif 000009
【図８】
2007304611.tif 000010
【図９】
2007304611.tif 000011
【図１０】
2007304611.tif 000012
【図１１】
2007304611.tif 000013
【図１２】
2007304611.tif 000014
【図１３】
2007304611.tif 000015
【図１４】
2007304611.tif 000016
【図１５】
2007304611.tif 000017
【図１６】
2007304611.tif 000018
【図１７】
2007304611.tif 000019
【図１８】
2007304611.tif 000020