(57)【特許請求の範囲】
【請求項１】
パーソナルコンピューターのローカルバスからディスプレーメモリへデータを与える方法であって、
該ローカルバス上のデータのアドレスを検査することによりビデオデータとグラフィックデータとを識別するステップと、
該ディスプレーメモリへのビデオデータの優先的転送を許可すべく該ディスプレーメモリ内のデータに対する他の論理オペレーションを動作不能にするステップと、
を含む方法。
【請求項２】
グラフィックコントローラーであって
ａ）ディスプレーメモリと、
ｂ）該メモリに接続された論理コントローラーにして、該メモリ内に格納されているデータに論理演算を行なうコントローラーと、
ｃ）外部アドレス／データバスに接続されたアクセスポートと、
ｄ）該ポートおよび論理コントローラーに接続されたアドレス範囲検出器にして、該ポートに与えられたデータのアドレスを第一アドレス範囲と比較すると共に、該アドレスが該第一範囲内にあるときは該論理コントローラーの論理演算に割り込むためのアドレス範囲検出器と
を含むグラフィックコントローラー。
【請求項３】
バスからディスプレーメモリへビデオデータおよびグラフィックデータが転送されるコンピューターシステムにおいて、該バスから該ディスプレーメモリへのビデオデータの流れに割り込む回数を低減する方法であって、
ビデオデータが該バス上に存在するか否かを決定するステップと、
該ディスプレーメモリ内のグラフィックデータに論理演算を行なうことよりも、該バスから該ディスプレーメモリへのビデオデータの転送に対してより高い優先性を与えるステップと
を含む方法。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明はグラフィックデータおよびビデオデータの双方を表示する能力を有するコンピューターシステムに関する。本発明は特に、そのようなコンピューターシステムに供するグラフィックコントローラーに関する。
【０００２】
【従来の技術】
「グラフィックデータ」という言葉はディスプレースクリーン上に再生されたときに比較的に時間依存しないデータを指す。例えば、グラフィックデータはワードプロセッサから入力されたテキストおよびスプレッドシートアプリケーションから入力された図がこれに含まれる。「ビデオデータ」という言葉はディスプレースクリーン上に再生されたときに時間依存するデータを指す。例えば、ビデオデータにはテレビジョン映像が含まれる。
【０００３】
ディスプレースクリーン上にビデオデータあるいはグラフィックデータのどちらのデータをどのように表示するかについてはかなり前から知られている。例えばパーソナルコンピューター  ディスプレー  グラフィックデータを表示し、テレビジョン受像器はビデオデータ像を表示する。近年になって、二つの技術を統合する技術が開発された。そのような統合は、スクリーンの一領域にグラフィックデータを表示しながら、それと同時にスクリーンの他の領域あるいはウィンドウにビデオ画（ｖｉｄｅｏ  ｐｉｃｔｕｒｅ）を表示するコンピューターディスプレースクリーンの形をとるのが普通である。
【０００４】
同一の媒体にビデオデータとグラフィックデータを統合する形態は、しばしば「マルチメディア」と呼称される。マルチメディアシステムはただ一種類のデータを扱うシステムよりも複雑である。なぜならば異なる特性および種々のデータの型に必要な条件を満たす必要があるからである。例えば、ビデオデータのディスプレーはスクリーンへのデータの中断（割り込み）に非常に敏感である。ビデオデータの受信に生じた僅かな遅延でさえも、切れ切れの映像を生じうる。同様に、しばしばビデオ表示を伴うオーデオの再生はデータの中断に敏感である。オーディオデータの中断は、ポツポツいう音、カリカリいう音、その他の耳障りな音として意識される。これとは対照的に、グラフィックデータは表示における少々の遅延にはそれほど敏感でない。しかし、グラフィックデータの送信あるいは表示に対する遅延がコンピューターのＣＰＵを遅延させると、システム性能は悪影響を受ける。
【０００５】
ビデオデータとの関係でパーソナルコンピューターが有するもう一つの困難はグラフィックデータに比較して、ビデオデータには比較的大量のデータが必要とされることである。
【０００６】
マルチメディアアプリケーションを処理する従来のパーソナルコンピューターアーキテクチャーでは、すべてのデータをグラフィックコントローラーを通して送信しなければならない。大量のビデオデータを処理しなければならないことに対する一つの解決策は、グラフィックポート上に二つのアクセスポートを用意することである。一つのポートは標準のパーソナルコンピューターバスに接続し、もう一つのポートはビデオプロセッサに接続する。グラフィックポートはグラフィックデータのみを受信し、ビデオポートはビデオデータのみを受信する。ビデオデータ専用のポートおよびグラフィックデータ専用のポートを備えれば、ビデオデータの転送はシステム性能を改善することができる。
【０００７】
しかしながら、二つのポートを使う方法の欠点は、グラフィックコントローラー上に付加的なピンが必要なことである。とくにグラフィックコントローラーの大きさが小さくなると、ピン数の付加は達成困難となる。二ポート方法の別の不利点は、バッファおよびマルチプレクサーのような余分の信号線および論理制御素子が必要となることで、これらはすべてコスト増を来たす。
【０００８】
二ポートによる解決法の別の不利点は、第二ポートに標準形状がないことである。これは、二重ポートグラフィックカードおよびビデオプロセッサが、専用の非標準形状に基づくビデオ接続と対をなして販売されることを意味する。これは購入者にとって選択の余地が狭まり、コスト増大につながる。
【０００９】
【発明が解決しようとする課題】
それゆえ、本発明の課題は、コンピューターに供する新規かつ改良されたグラフィックコントローラーを提供することである。
【００１０】
本発明の別の課題はディスプレーにビデオデータの規則的な流れを与える新規かつ改良された方法を提供することである。
【００１１】
本発明のさらに別の課題は、マルチメディアコンピューターに供する新規かつ改良されたアーキテクチャーを提供することである。
【００１２】
本発明のさらに別の課題は、入出力ピンの数が小さいマルチメディアコンピューターシステムに供するグラフィックコントローラーを提供することである。
【００１３】
本発明のさらに別の課題は、同一スクリーン上にビデオデータとグラフィックデータとを同時に表示する方法とシステムを与えることである。
【００１４】
本発明のさらに別の課題は、オーディオが明瞭に響き、ビデオイメージが円滑に現われるようにオーディオ／ビデオデータおよびグラフィックデータを同時に表示するための方法およびシステムを提供することである。
【００１５】
本発明のさらに別の課題は、工業標準のローカルバスに円滑なビデオ信号および明瞭なオーディオ信号を生成することのできるアーキテクチャーを提供することである。
【００１６】
本発明のさらに別の課題は、工業標準のビデオおよびオーディオ制御ボードを使ってビデオおよびオーディオのアップグレード化を可能にするアーキテクチャーを提供することである。
【００１７】
【課題を解決するための手段】
本発明は、その一形態として、グラフィックコントローラーチップに供するアーキテクチャーである。このグラフィックコントローラーはビデオデータおよびグラフィックデータを格納するためのディスプレーメモリを有する。グラフィックコントローラーはまた、このメモリに接続され、そのメモリ内に格納されているデータに論理演算を行なうための論理コントローラーを有する。ビデオデータおよびグラフィックデータはグラフィックコントローラーが単一アクセスポートから利用することができる。このグラフィックコントローラーはまた、上記ポートおよび論理コントローラーに接続されたアドレス範囲検出器を有し、この検出器は上記ポートに与えられたデータのアドレスを第一アドレス範囲と比較すると共に、そのアドレスが前記第一範囲内にあるときは論理コントローラーの論理演算への割り込み（演算の中断）を行なうためのものである。
【００１８】
本発明はもう一つの形態として、ディスプレーメモリへデータを与える方法である。この方法は、データのアドレスに基づいてビデオデータおよびグラフィックデータを識別した上で、ディスプレーメモリへのビデオデータを優先的に転送すべく、データに対する他の論理演算を動作不能にする。
【００１９】
本発明は、さらに別の形態として、ビデオデータおよびグラフィックデータがバスからディスプレーメモリへ転送されるコンピューターシステムにおいて、該バスから該ディスプレーメモリへのビデオデータの流れの中断を低減する方法である。この方法は、該バス上にビデオデータが存在するか否かを決定し、ディスプレーメモリ内のグラフィックデータに対する論理演算よりも、上記バスからディスプレーメモリへのビデオデータの転送に対しより高い優先性を与えるステップを含む。
【００２０】
【実施例】
図１は本発明の一形態を備えたパーソナルコンピューターアーキテクチャーを示す。ローカルバス１０はアドレス線、データ線および制御線を有する。グラフィックコントローラー１２、ビデオプロセッサ１４、バスインターフェース１６、およびローカルバスコントローラー１８はそれぞれ、ローカルバス１０に接続される。
【００２１】
ＣＰＵ２０の制御の下に発生されたデータはここでは「グラフィックデータ」と呼称する。グラフィックデータの内には、スプレッドシート、ワードプロセッサその他の通常のパーソナルコンピューターソフトアプリケーションで利用できるようなデータが含まれる。グラフィックデータは、ローカルバスコントローラー１８およびローカルバス１０を介してグラフィックコントローラー１２に転送され、システム端末２２上に表示される。
【００２２】
時間に対する敏感性をもつデータをここでは「ビデオ」データと呼称する。ビデオデータの中にはテレビジョン信号あるいはＣＤ  ＲＯＭから入手できるような運動性のある絵画のみならず、オーディオ信号も含まれる。図１にはビデオデータの信号源の一例としてＣＤ  ＲＯＭ２４が示されている。ＣＤ  ＲＯＭ２４はインターフェース１６を介してローカルバス１０に接続される。ビデオプロセッサ１４はＣＤ  ＲＯＭ２４から転送されたビデオデータへの補助的なサービスを提供する。例えば、ビデオプロセッサ１４はイメージの寸法を変えるようにデータを縮尺変更し、データへのアドレス指定し、等々を行なうことができる。
【００２３】
本発明の重要な特長の一つは、グラフィックデータおよびビデオデータの両方がローカルバス１０を介してグラフィックコントローラー１２に転送される点である。グラフィックデータおよびビデオデータはローカルバス１０のタイムシェア（すなわちグラフィックデータまたはビデオデータの一方のみが任意の一時にローカルバス１０を介して転送できるような協同利用）をしなければならないが、本発明は、ディスプレー端末２２へのビデオデータの円滑な流れを可能にする。  図２はさらに詳細にグラフィックコントローラー１２を示す。グラフィックコントローラー１２はグラフィックデータおよびビデオデータの両方を格納するディスプレーメモリ２６を含む。ディスプレーメモリ２６は、種々のデバイスからのリクエストを調停することによりディスプレーメモリ２６へのアクセスを制御するためのメモリコントローラー／調停器２８に接続される。例えば、ＤＲＡＭリフレッシュ３０、カーソルフェッチ（ｃｕｒｓｏｒ  ｆｅｔｃｈ）３２、ＣＲＴコントローラー３４、およびデータコントローラー３６はすべて、メモリコントローラー／調停器２８に接続されており、メモリコントローラー／調停器２８がそれらのリクエストを調停することによりディスプレーメモリ２６へのアクセスを選択的に与える。データコントローラー３６はローカルバス１０へ接続するためのアクセスポート３８を有する。ディスプレー端末２２への接続はＣＲＴコントローラー３４を介して行なう。
【００２４】
図３はデータコントローラー３６のさらに詳細な図である。データコントローラー３６はアドレス範囲検出器（ａｄｄｒｅｓｓ  ｒａｎｇｅ  ｄｅｔｅｃｔｏｒ）４０およびアドレス範囲検出器４２を含む。アドレス範囲検出器４０はアクセスポート３８、レジスター４４、データバッファ５８、論理コントローラー４８、およびメモリコントローラー／調停器２８に接続される。アドレス範囲検出器４２はアクセスポート３８、４６、論理コントローラー４８、およびデータバッファ５０に接続される。レジスター４４および４６は、予定範囲のアドレスを表わす値を格納する。レジスター４４はビデオデータに指定されたアドレス範囲を確定する値を格納し、アクセスポート４６はグラフィックデータデータに指定されたアドレス範囲を確定する値を格納する。例えば、レジスター４６はそれぞれ低アドレス値Ａ００００（１６進数）および高アドレス値ＡＦＦＦＦを格納する。これらの値はカラーグラフィックモードで動作するＩＢＭとの互換ＶＧＡデバイスに対する通常のアドレス範囲に相当する。レジスター４４には別のアドレス範囲を確定する低および高値を与えることができる。通常、この範囲は、他の予定アドレス範囲との重複を回避するためプロテクトモードで動作するＩＢＭパーソナルコンピューターでは１ＭＢの上方にマップされる。（カラーディスプレーグラフィックカードを使った実モードオペレーションに対してはＢセグメントの上方部分にマップすることもできる）。
【００２５】
アドレス範囲検出器４０は、レジスター４４内に格納された値により確定された範囲内に当該アドレスがあるときはバス１０上のアドレスのみに応答する。同様に、アドレス範囲検出器４２はアクセスポート４６内に格納された値によって確定される範囲内にアドレスがあるときはバス１０上のアドレスのみに応答する。本発明の一つの特徴は、レジスター４４および４６内に格納されたアドレス範囲値をプログラム化することができる点である。これは、これら範囲値をパーソナルコンピューターのユーザーが再定義できることを意味する。
【００２６】
データコントローラー３６はさらに論理コントローラー４８を含む。論理コントローラー４８はデータバッファ５０に接続されると共に、メモリコントローラー／調停器２８を介してディスプレーメモリ２６にも接続される。好ましい実施例では、論理コントローラー４８はブロックレベルトランズファー（ｂｌｏｃｋ  ｌｅｖｅｌ  ｔｒａｎｓｆｅｒ，  ＢＬＴ）エンジンである。ブロックレベルトランズファーエンジンの主な機能は、ディスプレーメモリ２６内に格納されているデータに論理演算を施すことである。例えば、ブロックレベルトランズファーエンジンはＡＮＤ演算、ＯＲ演算その他の論理関数をディスプレーメモリ２６内のデータに施すことができ、このエンジンは、バックグラウンドデータの保存とか、メモリのアクティブ領域とオフスクリーン領域との間のデータの移動のような、描画演算を補助することができる。
【００２７】
論理コントローラー４８は動作不能化線５２によりアドレス範囲検出器に接続される。動作不能化線５２はアクセスポート３８におけるデータのアドレスがその範囲に該当するときは常に、すなわちアクセスポート３８にあるデータがビデオデータであるときは常に、アドレス範囲検出器４０から論理コントローラー４８へ動作不能化信号を送信する。論理コントローラー４８はまた、線５４のＡＤＤＲ−ＩＮＦＯ線によりアドレス範囲検出器４２に接続される。加えて、データバッファ５０はイネーブル線５６によりアドレス範囲検出器４２に接続される。
データコントローラー３６は、アクセスポート３８とディスプレーメモリ２６との間に接続されたデータ路６０を有する。データバッファ５８はデータバッファ５８内に配置されており、データアドレスがアドレス範囲検出器４０内で比較される間、アクセスポート３８から受信したデータを暫定的に格納する。メモリコントローラー／調停器２８はその調停に基づいて選択的に、データ路６０をディスプレーメモリ２６に接続する。データ路６０はアドレス範囲検出器４０の範囲内に該当するアドレスを有するデータ、すなわちビデオデータ、を送信する。
データコントローラー３６はまた、データバッファ５０を介してアクセスポート３８と論理コントローラー４８との間に接続された、データ路６２を含む。データバッファ５０はアクセスポート３８から受信したデータを、そのアドレスがアドレス範囲検出器４２内で比較される間、暫定的に格納する。データ路６２はアドレス範囲検出器４２の範囲内にアドレスを有するデータ、すなわちグラフィックデータ、を送信する。
【００２８】
動作上、本発明のアーキテクチャーは、ローカルバス１０がビデオデータおよびグラフィックデータの両方を送信することができるように設計されている。パーソナルコンピューターのユーザーあるいはプログラマーは通常、ビデオデータに対して第一アドレス範囲を定義し、グラフィックデータに対して第二の重複しないアドレス範囲を定義する。通常、この第一範囲は低アドレスおよび上方アドレス値により定義され、アドレス範囲検出器４０がこれらの値を使用するようにレジスター４４に与えられる。同様にして、第二範囲のアドレス値もまた、低および上方アドレス値により定義され、アドレス範囲検出器４２がこれらの値を使用するようにアクセスポート４６に与えられる。
【００２９】
バス１０を介してグラフィックデータが与えられるときはグラフィックデータは常に、そのアドレスがアドレス範囲検出器４２内で検査される間、暫定的にデータバッファ５０内に格納される。次いでアドレス範囲検出器４２から線５６を介してデータバッファ５０に当該グラフィックデータを論理コントローラー４８に転送するためのイネーブル信号が送られる。論理コントローラー４８はメモリコントローラー／調停器２８に対してディスプレーメモリ２６へのアクセスを求めるリクエストを行なう。ディスプレーメモリ２６へのアクセスが許可されると、論理コントローラー４８はディスプレーメモリ２６へ直接にグラフィックデータを転送するか、あるいは多分、ディスプレーメモリ２６にそれまで存在していたデータに関係する何らかの論理演算をグラフィックデータに行なう。例えば、論理コントローラー４８はディスプレーメモリ２６内にそれまで存在していたデータと新規データとの論理的ＡＮＤ演算を行ない、その結果得られるデータをディスプレーメモリ２６に転送する。
【００３０】
バス１０を介してビデオデータが与えられるときはビデオデータは常に、そのアドレスがアドレス範囲検出器４０内で検査される間、暫定的にデータバッファ５８内に格納される。次いでそのビデオデータをディスプレーメモリ２６に転送するためのイネーブル信号が線５２を介してデータバッファ５８へ送られる。
【００３１】
メモリコントローラー／調停器２８がディスプレーメモリ２６へのアクセスを許可するときは、ビデオデータは直接にディスプレーメモリ２６に転送される。
【００３２】
論理コントローラー４８はまた、バス１０から新規のグラフィックデータを受信することなしにディスプレーメモリ２６内のデータに論理演算を行なう指令を受けることができる。例えば、論理コントローラー４８はデータをアクティブスクリーン領域からオフスクリーン領域へ移動し、色を変え、等々できる。論理コントローラー４８の演算は、特にブロックレベルトランズファーエンジンとして実施した場合は、ディスプレー端末上に表示すべきデータを効率良く操作する手段である。
【００３３】
本発明の一つの特徴は、メモリオペレーションに関する優先方式である。例えば、論理コントローラー４８がディスプレーメモリ２６内のデータに一つの論理演算を開始した後にビデオデータがバス１０を介して転送される、と仮定しよう。バス１０上のビデオデータはアドレス範囲検出器４０により同定される。アドレス範囲検出器４０は次いで線５２を介して論理コントローラー４８に動作不能化信号を送信し、その論理演算を中断する。メモリコントローラー／調停器２８は次いでディスプレーメモリ２６へのアクセスを許可し、ビデオデータが直接にディスプレーメモリ２６に転送される。
【００３４】
これとは対照的に、バス１０を介してグラフィックデータを受信するときは、論理コントローラー４８により行なわれるディスプレーメモリ２６内のデータに対する論理演算に中断を起こさない。その代わりに、当該グラフィックデータは、その論理演算が完結するまで、論理コントローラー４８内に暫定的に格納される。
【００３５】
要約すると、本発明はローカルバス１０からディスプレーメモリ２６へ規則的なビデオデータの流れを与えるアーキテクチャーと方法とを与える。アドレス範囲検出器４０、４２は、バス１０上のデータのアドレスに基づいて、ビデオデータとグラフィックデータとを識別する。アドレス範囲検出器４０によりビデオデータが検出されたときはいつでも、論理コントローラー４８が停止され、もしくは動作不能にされ、ディスプレーメモリ２６への転送に対する優先性はビデオデータに与えられる。この優先性は、ディスプレーメモリ２６内のデータに対する、他の論理演算に勝るものである。
【００３６】
【発明の効果】
以上の構成により、本発明はディスプレーにビデオデータの規則的な流れを与えることができる。また本発明のアーキテクチャーはマルチメディアコンピューターに供した場合、入出力ピンの数が小さなグラフィックコントローラーを提供することができる。さらに、本発明は、同一スクリーン上にビデオデータとグラフィックデータとを同時に表示することができ、その場合、オーディオが明瞭に響き、ビデオイメージが円滑に現われるようにオーディオ／ビデオデータおよびグラフィックデータを同時に表示するための方法およびシステムを提供することができる。
【００３７】
さらに本発明のアーキテクチャーは、工業標準のローカルバスに円滑なビデオ信号および明瞭なオーディオ信号を生成することができる。その場合、工業標準のビデオおよびオーディオ制御ボードを使ってビデオおよびオーディオのアップグレード化が可能である。
【図面の簡単な説明】
【図１】本発明の一形態を実施したマルチメディアコンピューターシステムのアーキテクチャーを示す図である。
【図２】図１に示すグラフィックコントローラーのブロック線図である。
【図３】図２に示すデータコントローラーのブロック線図である。
【符号の説明】
１０  ローカルバス
１２  グラフィックコントローラー
１４  ビデオプロセッサ
１６  バスインターフェース
１８  ローカルバスコントローラー
２０  ＣＰＵ
２２  ディスプレー端末
２４  ＣＤ  ＲＯＭ
２６  ディスプレーメモリ
２８  メモリコントローラー／調停器
３０  ＤＲＡＭリフレッシュ
３２  カーソルフェッチ
３４  ＣＲＴコントローラー
３６  データコントローラー
３８  アクセスポート
【図１】
0003577111.tif 000002
【図２】
0003577111.tif 000003
【図３】
0003577111.tif 000004