(57)【特許請求の範囲】
【請求項１】
ＲＡＭＤＡＣによって使用されるフレーム・バッファからの画素データを表示装置上で表示できるように多重化する装置であって、
ａ）フレーム・バッファに結合し、インタリーブされた画素データを受け取るインタリーブ・フォーマット回路と、
ｂ）前記インタリーブ・フォーマット回路に結合され、受け取ったインタリーブ画素データの所定の部分を処理し、前記ＲＡＭＤＡＣが処理すべき画素データを生成する論理回路とを備え、
前記インタリーブ画素データがｎ／ｍ：１のインタリーブ・フォーマットを有し、そこではｎは送られつつある全体の画素の数であり、ｍは１画素を形成するデータ量とその内の１ロード・クロックの間に送られるデータ量との比であり、
前記インタリーブ・フォーマット回路が、前記フレーム・バッファによって実行されたインタリーブを解除し、前記フレーム・バッファから受け取った前記画素データを対応する数組の画素データとして組み立てる回路を含むことを特徴とする装置。
【請求項２】
前記解除し・組み立てる回路が、所定数のビットで形成された完全な画素を生成するように、協働して動作する複数のサブブロックを形成するように結合された数組のレジスタおよびマルチプレクサを備えることを特徴とする請求項１に記載の装置。
【請求項３】
前記サブブロックのうちの所定のサブブロックが、前記フレーム・バッファによって実行されたインタリーブ・フォーマットを定義する信号を受け取ることを特徴とする請求項２に記載の装置。
【請求項４】
インタリーブされた画素データが、
２：１単一バッファ・インタリーブ・フォーマット、
２：１二重バッファ・インタリーブ・フォーマット、
４：１単一バッファ・インタリーブ・フォーマット、
４／２：１単一バッファ・インタリーブ・フォーマット、
４／２：１二重バッファ・インタリーブ・フォーマット、
８／２：１単一バッファ・インタリーブ・フォーマットのうちの１つであることを特徴とする請求項１に記載の装置。
【請求項５】
前記受け取った画素データが、それぞれ、６４ビットを含む、２つのセットに分割された１２８画素ビットを備え、前記第１のセット中のビットがＰＡ（６３：００）として指定され、前記第２のセット中のビットがＰＢ（６３：００）として定義され、前記１つのサブブロックが、
前記画素データのビットＰＡ（１５：００）を受け取る第１のレジスタと、
前記画素データのビットＰＡ（３１：１６）を受け取る第２のレジスタと、
前記画素データのビットＰＡ（１５：００）を受け取る第３のレジスタと、
前記第１のレジスタに結合された第４のレジスタと、
前記第２および第３のレジスタに結合されたマルチプレクサと、
前記第４のレジスタおよび前記マルチプレクサに結合された第５のレジスタとを備えることを特徴とする請求項２に記載の装置。
【請求項６】
前記受け取った画素データが、それぞれ、６４ビットを含む、２つのセットに分割された１２８画素ビットを備え、前記第１のセット中のビットがＰＡ（６３：００）として指定され、前記第２のセット中のビットがＰＢ（６３：００）として定義され、前記１つのサブブロックが、
前記画素データのビットＰＡ（３１：２４）を受け取る第１のレジスタと、
前記画素データのビットＰＡ（６３：３２）を受け取る第２のレジスタと、
前記画素データのビットＰＡ（３１：２４）を受け取る第３のレジスタと、
前記第１のレジスタに結合された第４のレジスタと、
前記第２、第３、第４のレジスタに結合されたマルチプレクサと、
前記マルチプレクサに結合された第５のレジスタとを備えることを特徴とする請求項２に記載の装置。
【請求項７】
前記受け取った画素データが、それぞれ、６４ビットを含む、２つのセットに分割された１２８画素ビットを備え、前記第１のセット中のビットがＰＡ（６３：００）として指定され、前記第２のセット中のビットがＰＢ（６３：００）として定義され、前記１つのサブブロックが、
前記画素データのビットＰＡ（４７：３２）を受け取る第１のレジスタと、
前記画素データのビットＰＢ（３１：００）を受け取る第２のレジスタと、
前記画素データのビットＰＡ（４７：３２）を受け取る第３のレジスタと、
前記第１のレジスタに結合された第４のレジスタと、
前記第２、第３、第４のレジスタに結合されたマルチプレクサと、
前記マルチプレクサに結合された第５のレジスタとを備えることを特徴とする請求項２に記載の装置。
【請求項８】
前記受け取った画素データが、それぞれ、６４ビットを含む、２つのセットに分割された１２８画素ビットを備え、前記第１のセット中のビットがＰＡ（６３：００）として指定され、前記第２のセット中のビットがＰＢ（６３：００）として定義され、前記１つのサブブロックが、
前記画素データのビットＰＡ（６３：４８）を受け取る第１のレジスタと、
前記画素データのビットＰＢ（６３：３２）を受け取る第２のレジスタと、
前記画素データのビットＰＡ（６３：４８）を受け取る第３のレジスタと、
前記第１のレジスタに結合された第４のレジスタと、
前記第２、第３、第４のレジスタに結合されたマルチプレクサと、
前記マルチプレクサに結合された第５のレジスタとを備えることを特徴とする請求項２に記載の装置。
【請求項９】
前記受け取った画素データが、それぞれ、６４ビットを含む、２つのセットに分割された１２８画素ビットを備え、前記第１のセット中のビットがＰＡ（６３：００）として指定され、前記第２のセット中のビットがＰＢ（６３：００）として定義され、前記１つのサブブロックが、
前記画素データのビットＰＢ（１５：００）を受け取る第１のレジスタと、
前記画素データのビットＰＢ（１５：００）を受け取る第２のレジスタと、
前記第１のレジスタに結合された第３のレジスタと、
前記第２のレジスタおよび第３のレジスタに結合された第４のレジスタとを備えることを特徴とする請求項２に記載の装置。
【請求項１０】
前記受け取った画素データが、それぞれ、６４ビットを含む、２つのセットに分割された１２８画素ビットを備え、前記第１のセット中のビットがＰＡ（６３：００）として指定され、前記第２のセット中のビットがＰＢ（６３：００）として定義され、前記１つのサブブロックが、
前記画素データのビットＰＢ（３１：１６）を受け取る第１のレジスタと、
前記画素データのビットＰＢ（３１：１６）を受け取る第２のレジスタと、
前記第１のレジスタに結合された第３のレジスタと、
前記第２および第３のレジスタに結合された第４のレジスタとを備えることを特徴とする請求項２に記載の装置。
【請求項１１】
前記受け取った画素データが、それぞれ、６４ビットを含む、２つのセットに分割された１２８画素ビットを備え、前記第１のセット中のビットがＰＡ（６３：００）として指定され、前記第２のセット中のビットがＰＢ（６３：００）として定義され、前記１つのサブブロックが、
前記画素データのビットＰＢ（４７：３２）を受け取る第１のレジスタと、
前記画素データのビットＰＢ（４７：３２）を受け取る第２のレジスタと、
前記第１のレジスタに結合された第３のレジスタと、
前記第２のレジスタおよび第３のレジスタに結合された第４のレジスタとを備えることを特徴とする請求項２に記載の装置。
【請求項１２】
前記受け取った画素データが、それぞれ、６４ビットを含む、２つのセットに分割された１２８画素ビットを備え、前記第１のセット中のビットがＰＡ（６３：００）として指定され、前記第２のセット中のビットがＰＢ（６３：００）として定義され、前記１つのサブブロックが、
前記画素データのビットＰＢ（６３：４８）を受け取る第１のレジスタと、
前記画素データのビットＰＢ（６３：４８）を受け取る第２のレジスタと、
前記第１のレジスタに結合された第３のレジスタと、
前記第２のレジスタおよび第３のレジスタに結合された第４のレジスタとを備えることを特徴とする請求項２に記載の装置。
【請求項１３】
前記処理手段が、
前記インタリーブ・フォーマット回路に結合された第１のマルチプレクサと、
前記第１のマルチプレクサおよび前記インタリーブ・フォーマット回路に結合されたパイプライン・レジスタと、
パイプライン・レジスタに結合された第２のマルチプレクサと、
前記パイプライン・レジスタおよび前記第２のマルチプレクサに結合されたシフト・レジスタとを備えることを特徴とする請求項１に記載の装置。
【請求項１４】
前記インタリーブ・フォーマット回路が、前記フレーム・バッファから受信した前記画素データを対応する数組の画素データとしてアセンブルし、前記第１のマルチプレクサが、第１組の前記画素データが前記第１のマルチプレクサへの第１の選択可能な入力となり、第２組の前記画素データが前記第１のマルチプレクサへの第２の選択可能な入力となり、第３組の前記画素データが前記第１のマルチプレクサへの第３の選択可能な入力となり、第４組の前記画素データが前記第１のマルチプレクサへの第４の選択可能な入力となるように前記インタリーブ・フォーマット回路に結合されることを特徴とする請求項１３に記載の装置。
【請求項１５】
前記パイプライン・レジスタが、前記第１のマルチプレクサからの選択された第１および第２の出力を第１および第２の入力として受け取るために前記第１のマルチプレクサに結合され、かつ
第３の入力として前記第３組の画素データを受け取り、
第４の入力として前記第４組の画素データを受け取り、
第５の入力として第５組の画素データを受け取り、
第６の入力として第６組の画素データを受け取り、
第７の入力として第７組の画素データを受け取り、
第８の入力として第８組の画素データを受け取るために前記インタリーブ・フォーマット回路に結合されることを特徴とする請求項１４に記載の装置。
【請求項１６】
前記第２のマルチプレクサが、第１の選択可能な入力として前記パイプライン・レジスタからの前記第１組ないし第４組の画素データ出力を受け取り、第２の選択可能な入力として前記パイプライン・レジスタから出力された前記第５ないし第８組の画素データを受け取るために前記パイプライン・レジスタに結合されることを特徴とする請求項１５に記載の装置。
【請求項１７】
前記シフト・レジスタが、前記シフト・レジスタへの第１組ないし第４組の画素データ入力が前記第２のマルチプレクサの選択された出力となるように前記マルチプレクサに結合され、前記シフト・レジスタが、前記シフト・レジスタへの第５組ないし第８組の画素データ入力が前記パイプライン・レジスタからの第５組ないし第８組の画素データ出力となるようにパイプライン・レジスタに結合されることを特徴とする請求項１６に記載の装置。
【請求項１８】
ＲＡＭＤＡＣによって使用されるフレーム・バッファからの画素データを表示装置上で表示できるように多重化する方法であって、
ａ）前記フレーム・バッファによって実行されたインタリーブを解除し、前記フレーム・バッファから受け取った前記画素データを対応する数組の画素データとして組み立てるステップであって、前記解除しおよび組み立てることによって、それぞれ、所定数のビットで形成された、複数の完全な画素セットが生成される、ステップと；
ｂ）受信したインタリーブ画素データの所定の部分を処理し、前記ＲＡＭＤＡＣが処理すべき画素データを生成するステップとを含み、
前記インタリーブ画素データがｎ／ｍ：１のインタリーブ・フォーマットを有し、そこではｎは送られつつある全体の画素の数であり、ｍは１画素を形成するデータ量とその内の１ロード・クロックの間に送られるデータ量との比である、ことを特徴とする方法。
【請求項１９】
前記解除しおよび組み立てることによって、第１組ないし第８組の完全な画素データが生成されることを特徴とする請求項１８に記載の方法。
【請求項２０】
前記処理ステップが、
前記第１組ないし第４組の画素データから第１組および第２組の画素データを選択する第１の選択ステップと、
前記第１組および第２組の選択された画素データならびに前記第３組ないし第８組の画素データを渡すステップと、
一方では前記第１組ないし第４組の画素データから、他方では前記第５組ないし第８組の画素データから、第１組ないし第４組の前記画素データを選択する第２の選択ステップと、
前記選択された第２組の画素データを第１組ないし第４組の画素データおよび前記第５組ないし第８組の画素データとして渡すステップと、
を含むことを特徴とする請求項１９に記載の方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、コンピュータ・システムに関し、詳細には、データをフレーム・バッファから出力表示装置へ送り処理するために使用されるＲＡＭＤＡＣ（ランダム・アクセス・メモリ・ディジタル−アナログ変換器）に関する。
【０００２】
【従来の技術】
デスクトップ・コンピュータの動作速度の増加に伴う１つの重要な問題は、情報を出力表示装置へ送る速度を増加させる方法を見つけることであった。現在利用できる多数の様々な形のデータ表示では、大量のデータを送る必要がある。たとえば、コンピュータ出力表示モニタが、画面上に一度に１２８０×１０２４画素が表示され、各画素を特定するために３２ビットが使用されるカラー・モードで動作している場合、表示される個別の各画像（「フレーム」と呼ばれる）と共に、合計で４００万ビットを超える情報を画面へ送らなければならない。通常、毎秒６０フレームが表示され、したがって、そのようなシステムでは毎秒１５億ビットを送らなければならない。これには非常に大量の処理能力が必要である。
【０００３】
そのような大量の情報を出力表示装置に供給するために、コンピュータ・システムは通常、出力ディスプレイ上に表示すべき画素データを保持するフレーム・バッファを使用する。
【０００４】
通常、フレーム・バッファは、表示すべき１データ・フレームを記憶するのにかなりの量のランダム・アクセス・メモリを必要とする。フレーム・バッファ中の情報は、フレーム・バッファからディスプレイへ毎秒６０回以上送られる。各転送後（または転送中）、フレーム・バッファ中の画素データは、次のフレームに表示すべき新しい情報で更新される。
【０００５】
フレーム・バッファでのアクセスを高速化するために様々な改良が施されている。ＤＲＡＭフレーム・バッファでは、画素データは、それが書き込まれたときと同じポートから読み取ることができる。この手法では、フレーム・バッファへのグラフィックス・データをレンダリングするために利用できる時間がかなり短縮される。ＶＲＡＭフレーム・バッファでは、主画素ポートがレンダリング用に解放されたままになるように別のビデオ・データ・ポートが追加される。情報をフレーム・バッファからディスプレイへ送り、同時に、他の情報をフレーム・バッファにロードすることができるように、２ポート付きビデオ・ランダム・アクセス・メモリ（ＶＲＡＭ）またはフレーム・バッファ・ランダム・アクセス・メモリ（ＦＢＲＡＭ）で動的ランダム・アクセス・メモリを代替させている。
【０００６】
すべてのフレーム・バッファが直面している１つの問題は、データをフレーム・バッファから出力表示装置へ送る方法によってもたらされる。通常、表示装置は、フレーム・バッファに記憶されている画素データを画面上で一連の行としてレンダリングする陰極管である。通常のディスプレイは、１０２４の行で構成され、各行は、１２８０個程度の個別の画素を含む。ディスプレイの左上隅から個別の画素行を書き込むことによってディスプレイ上にフレームが表示される。各画素行は、次の行が始まる前にディスプレイを横切って左から右へレンダリングされる。ある行が完成すると、その行の下方にある次の行が画面の左側から始まる。各行は、画面の１番下の最後の行が完了するまで順次レンダリングされる。これで１フレームが完成する。次いで、このプロセスが、次のフレームに対してディスプレイの左上隅から繰り返される。前述のように、通常のディスプレイでは、毎秒６０個の個別のフレームが表示される。
【０００７】
フレーム・バッファに記憶されている各画素をディスプレイ上の適当な位置に表示するには、各画素ごとにデータを読み取り、出力表示装置でのそのデータのレンダリングを制御する回路へそのデータを送る必要がある。
【０００８】
現在、ＲＡＭの画素データ出力を時間多重化して２４ビット画素を３２ビット・データ・バス上にパックするフレーム・バッファが存在する。本発明は、完全な３２ビット画素を使用するという点で従来技術の手法とは異なり、本発明のの目的は、３２ビット画素全体が単一のＲＡＭチップで機能できるようにすることである。
【０００９】
ＳａｍｓｕｎｇのＶＲＡＭ（Ｓａｍｓｕｎｇ  ＷＲＡＭ）では、そのビデオ・ポート用にＲＡＭ当たり１６本のピンが選択される。しかし、この手法では、３２ビット画素全体をフレーム・バッファに記憶することは提案されておらず、フレーム・バッファから画素を取り出すために３２ビット画素を時間多重化することも提案されていない。
【００１０】
フレーム・バッファから得たデータは、それを出力表示装置が使用できる形に変換する回路に入力される。図１および２はそれぞれ、本発明を使用できるコンピュータ・システムを示す。この場合、ホストＣＰＵ１２から得たメモリ１１中のデータがホスト・バス１３上に置かれ、レンダリング制御装置１４によって、図１および２にＶＲＡＭ１５ａないし１５ｄとして示したフレーム・バッファ・メモリに渡される。ただし、ＦＢＲＡＭを使用することもできる。ＲＡＭＤＡＣ２１は、レンダリング制御装置を介してホスト・バスに結合され、かつフレーム・バッファに結合され、ＶＲＡＭ１５ａないし１５ｄから得た１６ビット・データを６４ビットまたは１２８ビットのディジタルＲＧＢ信号に変換するためのルックアップ・テーブル（またはＬＵＴ、すなわちＲＡＭＤＡＣのＲＡＭ部分）およびその他の要素を含む。ＲＧＢ信号は、ディジタル−アナログ変換器（ＤＡＣ）によって、モニタ２５中の画素位置で組み合わされたときにその画素に所望の色を形成する赤色、青色、緑色用の電圧レベルを表す３つのアナログ信号に変換される。フレーム・バッファ、レンダリング制御装置、モニタの構成要素の詳細は、当業者には周知であるので、本発明を適切に理解するために必要なものを除いて本明細書では説明しない。なお、本発明は主として、本発明の改良された機能を提供するＲＡＭＤＡＣ２１のある種の改良に関するものである。
【００１１】
【発明が解決しようとする課題】
多くのグラフィックス演算の場合、３２ビット画素全体を単一のＲＡＭチップに記憶することによって最適な性能が達成される。このような演算とは、ＸＯＲ関数を使用するＺバッファリング演算、ブレンダリング演算、ラスタ演算などである。フレーム・バッファから得たビデオ・データを表示する際、画素をリアルタイム速度で順次フレーム・バッファから読み取らなければならない。その際、解決すべき問題は、最小限の数のピンを使用してどのようにフレーム・バッファＲＡＭチップから３２ビット画素を取り出すかである。ピンが多くなるとコストが増加する。したがってピンを制限することによって、低コストの解決策がもたらされる。
【００１２】
【課題を解決するための手段】
前述のように、ＶＲＡＭフレーム・バッファまたはＦＢＲＡＭフレーム・バッファでは、主画素ポートがレンダリング用に解放されたままになるように別のビデオ・データ・ポートが追加される。この第２のポートに使用されるピンの数は、フレーム・バッファのＲＡＭ構成要素、ボード構成要素、ディジタル−アナログ構成要素のコストに影響を及ぼす。
【００１３】
本発明では直列ビデオ出力用の１６本のピンを含むフレーム・バッファ・メモリが使用される。３２ビット画素全体が単一のＲＡＭチップに記憶される。表記法の都合上、３２ビット画素を４バイト（８ビット）量Ｘ、Ｂ、Ｇ、Ｒを含むものとして指定する。
【００１４】
第１のクロック・サイクルで、フレーム・バッファの１６本のピン上でＸバイトおよびＢバイトが使用できるようになる。次のクロック・サイクルで、ＧバイトおよびＲバイトが使用できるようになる。したがって、３２ビット画素全体が２サイクルにわたってフレーム・バッファから出力される。
【００１５】
ＤＡＣ（ディジタル−アナログ変換器）と呼ばれる他の構成要素は、１６本の入力ピン上でＸバイトおよびＢバイトをサンプリングする。ＤＡＣは、このＸバイトおよびＢバイトを内部レジスタに記憶する。次のクロック・サイクルで、ＤＡＣはＧバイトおよびＲバイトをサンプリングする。ＤＡＣは次いで、Ｘバイト、Ｂバイト、Ｇバイト、Ｒバイトをビデオに変換できるように単一の３２ビット画素として再組立を行う。
【００１６】
本発明では、３２ビット画素は１６ビット画素データ・バスを介して伝達される。１６ビット・データ・バスは、非多重化３２ビット・データ・バスを介して合計で３２本のピン（ＲＡＭでの送信用の１６本とＤＡＣでの受信用の１６本）を節約する。３２本のピンが節約された結果、フレーム・バッファのコストが低減される。
【００１７】
【発明の実施の形態】
図３は、本発明を実施するために使用できるＲＡＭＤＡＣ２１の構成要素を示す。ＲＡＭＤＡＣは、ＣＰＵポート、インタフェース論理機構、アドレス・ポインタ、データ・レジスタ３１、画素ポート、画素入力レジスタ、直列化機構３３、陰影ＲＡＭルックアップ・テーブル、転送制御論理、オーバレイ／アンダレイ論理機構３５、色モデル選択機構３７、カーソル論理直列化機構３９、モニタ直列ポート４１、診断レジスタ及び制御論理機構４３、ディジタル−アナログ変換器（ＤＡＣ）４５ａないし４５ｃ、ＰＬＬクロック・シンセサイザ、画素クロック・ディバイダ、ビデオ・タイミング・ジェネレータ４９の各機能ブロックを含む。本発明は主として、ＲＡＭＤＡＣの画素ポート、画素入力レジスタ、直列化機構３３の構成要素の実施に関するものである。したがって、下記の説明は、画素ポート、画素入力レジスタ、直列化機構に限られ、ＲＡＭＤＡＣの他の構成要素に関する情報は、本発明を理解するための必要に応じてのみ与えられる。図３に示した他の構成要素は、それぞれの異なる製造業者のＲＡＭＤＡＣ間で異なるが、当業者なら、このような様々な構成要素を認識しており、かつそれらまたはその等価物をどのように実施できるかが分かっていよう。
【００１８】
画素ポートは、同期入力ポートであり、インタリーブされた画素データを受け入れる。いくつかのインタリーブ・フォーマットが必要である。このようなフォーマットのうちの１つを選択する際にはレジスタ・プログラミングが使用され、この選択はブート時構成プロセスの一部として行われる。ＲＡＭＤＡＣ２１は、プログラム可能なインタリーブ係数を含む、ＡおよびＢと呼ばれる２つの画素ポートを有する。この構成は、アニメーション用の二重バッファ演算に適応するものである。この場合、他のすべての場合と同様に、インタリーブの選択は構成時に行われる。ポートＡまたはポートＢの選択は、ポートＡの窓属性フィールドを復号することによって行われる。４：１画素フォーマットおよび８／２：１画素フォーマットでは、ポートＡおよびＢからＸフィールドが得られる。Ｘデータ・フィールドの内容は、窓識別（ＷＩＤ）索引またはオーバレイ・カラーとして解釈される。オーバレイ・カラーのケース、およびＸデータ・フィールドの特定の解釈を選択することについて下記で論じる。
【００１９】
ＸフィールドがＷＩＤとして解釈されるケースでは、窓ＩＤ（ＷＩＤ）は、画素源、たとえばポートＡまたはＢを選択し、画素を特定の色モデルに関連付けるように働くＷＩＤルックアップ・テーブルへの索引アドレスである。Ｘフィールドは、あらゆる画素の構成要素であり、その内容は連続する画素間で異なる。したがって、ポートおよび色モデルの選択は、個別の各画素ごとに実行しなければならない。
【００２０】
前述のインタリーブ・フォーマットは、２つの広いカテゴリに分割される。このカテゴリとは、単一バッファ・インタリーブ・フォーマットおよび二重バッファ・インタリーブ・フォーマットである。
【００２１】
２：１入力フォーマットおよび４／２：１入力フォーマットでは、ポートＡから得たＸフィールドが使用される。ポートＢからのＸフィールドは無視される。
４：１入力フォーマットおよび８／２：１入力フォーマットでは、各画素から得たＸフィールドが使用される。
【００２２】
Ｘフィールドは、ポートおよび色モデルの選択を直接には制御しない。Ｘフィールドの下位５ビットＸ［０４：００］の内容は、活動ＷＩＤ  ＬＵＴのアドレスを構成する。下記では、活動ＷＩＤ  ＬＵＴをＷＩＤ［０５：００］と呼ぶ。ＷＩＤ［０５：００］は、このアドレスに対応する位置に含まれ、ポートを実施し下記の表１「色モデル・テーブル・データ入力符号」に示した定義に従って色モデルの選択を制御する。
【００２３】
【表１】
0003828196.tif 000002
【００２４】
画素表示順序付け
後述の各フォーマットでは、画素データ・ポート・ピン群０は常に、あるクロックで画素ポートに入力されるすべての画素の、画面上で見たときに１番左の画素を有する。各画素中のより大きな番号のビットは、画素のより上位のビットであり、すなわち、色パレット・バイパス用に選択されたときにＤＡＣ出力電圧のより大きな変化をもたらす。
【００２５】
画素ポート信号
赤、緑、青画素入力および窓属性フィールド画素入力
ビデオ・データ入力と窓属性入力がある。議論を簡単にするために、画素入力が、それぞれ４つの群からなるＡおよびＢと呼ばれる２つのポートに分割されると仮定する。さらに、各群は、上部バイトと下部バイトに分割される。したがって、画素ポートは、群０ないし７に含まれる合計で１２８画素ビットを備える。表２はこの割り当てを示す。
【表２】
0003828196.tif 000003
【００２６】
下記では、画素ポートに到着するデータの構成をインタリーブ・フォーマットと呼ぶ。ＲＡＭＤＡＣ２１は、ブート時に実行される構成レジスタ・プログラミングによって選択される５つのインタリーブ・フォーマットに適応する。５つのインタリーブ・フォーマットについては下記で定義する。
【００２７】
サポートされる画素フォーマット
下記の節で各画素フォーマットを説明し図示する。直列化画素ディテイルが、入力されたデータとのサイクル関係を示すものではないことに留意されたい。画素フォーマットは、ビデオ・フォーマット制御レジスタをプログラムすることによって選択される。このレジスタの写像を表３に示す。
【表３】
0003828196.tif 000004
【００２８】
２：１−単一および二重バッファ・インタリーブ・フォーマット
これらのフォーマットは、画素周波数ｆｐ≦１３５ＭＨｚ、ＬＤ周波数ｆLD＝ｆｐ／２ＭＨｚで動作するときに適用することができる。これらのフォーマットを図４および５に示す。Ｘフィールドについては上記で説明した。
【００２９】
４：１−単一バッファ・インタリーブ・フォーマット
このモードはｆｐ≦２２０ＭＨｚの場合に有効である。ＬＤ周波数ｆLD＝ｆｐ／４ＭＨｚ。このフォーマットを図５に示す。
【００３０】
４／２：１−単一および二重バッファ・インタリーブ・フォーマット
このモードは、画素周波数ｆｐ≦１３５ＭＨｚで動作するときに適用することができる。ＬＤ周波数ｆLD＝ｆｐ／２ＭＨｚ。
このフォーマットを図６および７に示す。
【００３１】
８／２：１−単一バッファ・インタリーブ・フォーマット
このモードは、画素周波数ｆｐ≦２２０ＭＨｚで動作するときに適用することができる。ＬＤ周波数ｆLD＝ｆｐ／４ＭＨｚ。
このフォーマットを図８に示す。
【００３２】
画素ポート・タイミング
この設計は、ＬＤの位相関係として画素ポート・データを正しく入力させる回路を組み込んだものであり、画素クロックは、ある種の限界間で変動する。この回路は、垂直ブランキング間隔中、あるいは外部機構によって呼び出されたときに、必要な内部調整を実行する。演算モードは、レジスタ・プログラミングによって制御される。ＳＣ、ＬＤ、画素クロック、画素データのタイミング関係を図１０ないし１２で指定する。
【００３３】
表４は、ＲＡＭＤＡＣが使用する様々な信号を説明したものである。
【表４】
0003828196.tif 000005
【００３４】
次に、図１３を参照すると分かるように、本発明の画素ポートは、詳細が図１４ないし２１に関して記載されているインタリーブ・フォーマット回路５１と、マルチプレクサ５３（ＭＰＸ１）と、パイプライン・レジスタ５５（Ｄ  ＲＥＧ）と、マルチプレクサ５７（ＭＰＸ２）と、シフト・レジスタ５９（ＳＨＩＦＴ
ＲＥＧ）を使用して実施することができる。
【００３５】
図１３は、同時に与えられたビデオ画素を単一画素の直列ストリームに変換する際に使用される信号および要素の流れを示す。この場合、様々なインタリーブ・フォーマットへの適応が施され、二重バッファ・モードでのディスプレイ・バッファの選択が行われる。
【００３６】
画素は、インタリーブ・フォーマット回路ブロック５１のフレーム・バッファ・メモリから、許可されたいくつかの並列フォーマットで受信される。これらのフォーマットは図４ないし９に記載されている。インタリーブ・フォーマット回路ブロック５１は、インタリーブを解除する作業を実行し、その出力で完全な３２ビット画素を提供する。
【００３７】
インタリーブ・フォーマット回路ブロックは、それぞれ、着信データを処理して１つの画素を組み立てる、８つのサブブロックを使用する。これらのブロックを備える回路は、それぞれ、画素０ないし７に関する、図１４ないし２１に示されている。これらの回路は、同じではないが、共通の要素を有することに留意されたい。この要素とは、画素０ないし３に関する図中のフリップフロップＭ２、フリップフロップＭ３Ｂ、フリップフロップＭ３Ｃと、画素４ないし７に関する図中のフリップフロップＭ２、Ｍ３Ａ、Ｍ３Ｂである（符号は異なるが、機能は同じである）。これらの要素は、時間多重化インタリーブ・フォーマット４／２：１および８／２：１を取り扱う。図２２は、４／２：１ケースでの画素０回路の動作を示す。このケースは、ＬＤおよびＬＤ／２の周期を除くあらゆる点で残りのケースと同じである。図２２は、それぞれ、半分の画素情報を含む２ＬＤクロック・サイクルから完全な３２ビット画素をアセンブルする方法を示す。４／２：１インタリーブ・フォーマットまたは８／２：１インタリーブ・フォーマットを選択すると、ビデオ・フォーマット制御レジスタのビット１が論理１にセットされる。このレベルでは、マルチプレクサＭ４がフリップフロップＭ３Ｂの出力をシフト・レジスタＭ５に渡す。これは、画素の下半分であり、画素のＧＲＥＥＮ成分とＲＥＤ成分とを備える。フリップフロップＭ３Ｃの出力もシフト・レジスタＭ５に接続される。この接続によって、画素のＸ成分とＢＬＵＥ成分とを備える画素の上半分が搬送される。画素０を２：１インタリーブ・フォーマットおよび４：１インタリーブ・フォーマットで組み立てる方法はタイミング図には記載されていない。このことについて次のパラグラフで論じる。
【００３８】
前述のように、フォーマット回路はそれぞれ異なる。これらは、簡単な回路を使用して複雑に見える作業を実施する設計のためである。この作業は、時間多重化要件を満たすだけでなく、単一バッファ演算および二重バッファ演算と時間多重化されないモードに適応するように着信データを再構成することである。これはすべて、様々な着信画素群を適当なインタリーブ・フォーマット回路に経路指定することによって行われる。この経路指定を図２３に示す。
【００３９】
図１３に戻ると分かるように、インタリーブ・フォーマット回路の出力の一部は、２つのブロックに渡される。Ｄ  ＲＥＧ５５と呼ばれるこれらのブロックのうちの第１ブロックは、パイプライン・レジスタに過ぎない。このブロックは、インタリーブ・フォーマット回路からＰ０ないしＰ７を受け入れる。第２ブロックのマルチプレクサ５３をＭＰＸ１と呼ぶ。このブロックはＰ０ないしＰ３を受け入れる。マルチプレクサＭＰＸ１は、システムが２：１二重バッファ・モードで動作するときに適当なバッファを選択するために使用される。このマルチプレクサは、ビデオ・フォーマット制御レジスタのビット１および０と、Ｐ０およびＰ１のＸ成分のビット番号５によって制御される。二重バッファ・モードをイネーブルし、あるいはディスエーブルするユーザ制御レジスタのビット２の接続は図示されていない。このような信号の組み合わされた動作は下記の通りである。二重バッファ・モードがイネーブルであり（ユーザ制御レジスタ）、２：１モードが選択されており（ビデオ・フォーマット制御レジスタ）、（たとえば）Ｐ０のＸ成分のビット５が１である場合、このマルチプレクサはＰ２、すなわちバッファＢのＰ０を渡す。ビット５が１ではなく０である場合、マルチプレクサはバッファＡからのＰ０を渡す。二重バッファモードを選択せず、あるいは２：１モードを選択しなかった場合、マルチプレクサはＰ０およびＰ１を渡す。
【００４０】
パイプライン・レジスタＤ  ＲＥＧの出力は、前のパラグラフで説明したのと同様に処理される。しかし、この例では、マルチプレクサＭＰＸ２が４／２：１二重バッファ・モードを取り扱う。このマルチプレクサの制御は、前述の制御と同様であるが、２：１モードではなく（ビデオ・フォーマット制御レジスタからの）４／２：１モードが修飾子の一部を形成する。
【００４１】
回路の最後の要素は、Ｐ０ないしＰ７を同時に受信し、図中のＰ０が占める位置から順に、１画素クロック当たり１つの３２ビット画素からなる直列出力を生成するシフト・レジスタである。これは、レジスタを占める最も小さな番号の画素の方向へのデバイス・シフトである。レジスタは、８つのレベルを有するものとして示されているが、常に８つの画素をシフトさせるわけではない。実際は、８つの画素がシフトされるのは８／２：１モードだけである。４：１モードおよび４／２：１モード（単一バッファおよび二重バッファ）では４つの画素がシフトされ、２：１モードでは２つの画素がシフトされる。このような深さの変動は、特殊な制御回路ではなく、ＬＤ／ｍによって駆動されるＰＡＲ（ＡＬＬＥＬ）ロード・クロックの性質によるものである。ＬＤ／ｍを生成する回路は図示していないが、その動作を下記に説明する。ビデオ・フォーマット制御レジスタのビット１および０の状態は、８／２：１モードまたは４／２：１モードのときに入力ＬＤを２で除するように働くディバイダを制御する。２：１モードまたは４：１モードでは、ＬＤは変更されず、単に出力ＬＤ／ｍに渡される。この回路の効果は、その出力ＬＤ／ｍの周期を、ｎ個の画素（ｎはインタリーブ係数に等しい）が占める周期に等しくすることである。
【００４２】
本明細書には、前述の本発明に関する他の情報を含む明細書が付録１、２、３として添付されている。
【図面の簡単な説明】
【図１】  本発明を使用することができる６４ビット・フレーム・バッファ・メモリを有するシステムを示すブロック図である。
【図２】  本発明を使用することができる１２８ビット・フレーム・バッファ・メモリを有するシステムを示すブロック図である。
【図３】  本発明による画素データ・ハードウェアの時間多重化を使用するＲＡＭＤＡＣの詳細なブロック図である。
【図４】  ２：１単一バッファ・インタリーブ画素フォーマットを示すタイミング図である。
【図５】  ２：１二重バッファ・インタリーブ画素フォーマットを示すタイミング図である。
【図６】  ４：１単一バッファ・インタリーブ画素フォーマットを示すタイミング図である。
【図７】  ４／２：１単一バッファ・インタリーブ画素フォーマットを示すタイミング図である。
【図８】  ４／２：１二重バッファ・インタリーブ画素フォーマットを示すタイミング図である。
【図９】  ８／２：１単一バッファ・インタリーブ画素フォーマットを示すタイミング図である。
【図１０】  画素ポートに関するタイミングを示すタイミング図である。
【図１１】  画素ポートへのＳＣ画素クロック入力を示す図である。
【図１２】  画素ポート・タイミングの詳細を示す図１０に類似のタイミング図である。
【図１３】  本発明による画素ポート入力レジスタおよび直列化の実施態様の回路図である。
【図１４】  画素０に関する画素ポート・インタリーブ・フォーマット回路を示す図である。
【図１５】  画素１に関する画素ポート・インタリーブ・フォーマット回路を示す図である。
【図１６】  画素２に関する画素ポート・インタリーブ・フォーマット回路を示す図である。
【図１７】  画素３に関する画素ポート・インタリーブ・フォーマット回路を示す図である。
【図１８】  画素４に関する画素ポート・インタリーブ・フォーマット回路を示す図である。
【図１９】  画素５に関する画素ポート・インタリーブ・フォーマット回路を示す図である。
【図２０】  画素６に関する画素ポート・インタリーブ・フォーマット回路を示す図である。
【図２１】  画素７に関する画素ポート・インタリーブ・フォーマット回路を示す図である。
【図２２】  画素０に関する画素ポート・インタリーブ・フォーマット回路を示す図である。
【図２３】  インタリーブ・フォーマット回路５１経路指定テーブルを示す図である。
【符号の説明】
１１  メモリ
１２  ホストＣＰＵ
１３  ホスト・バス
１４  レンダリング制御装置
１５ａ、１５ｂ、１５ｃ、１５ｄ  フレーム・バッファ・メモリ
２５  モニタ２５
【図１】
0003828196.tif 000006
【図２】
0003828196.tif 000007
【図３】
0003828196.tif 000008
【図４】
0003828196.tif 000009
【図５】
0003828196.tif 000010
【図６】
0003828196.tif 000011
【図７】
0003828196.tif 000012
【図８】
0003828196.tif 000013
【図９】
0003828196.tif 000014
【図１０】
0003828196.tif 000015
【図１１】
0003828196.tif 000016
【図１２】
0003828196.tif 000017
【図１３】
0003828196.tif 000018
【図１４】
0003828196.tif 000019
【図１５】
0003828196.tif 000020
【図１６】
0003828196.tif 000021
【図１７】
0003828196.tif 000022
【図１８】
0003828196.tif 000023
【図１９】
0003828196.tif 000024
【図２０】
0003828196.tif 000025
【図２１】
0003828196.tif 000026
【図２２】
0003828196.tif 000027
【図２３】
0003828196.tif 000028