JPH04282692A - 多機能グラフィックプロセッサ - Google Patents
多機能グラフィックプロセッサInfo
- Publication number
- JPH04282692A JPH04282692A JP3261360A JP26136091A JPH04282692A JP H04282692 A JPH04282692 A JP H04282692A JP 3261360 A JP3261360 A JP 3261360A JP 26136091 A JP26136091 A JP 26136091A JP H04282692 A JPH04282692 A JP H04282692A
- Authority
- JP
- Japan
- Prior art keywords
- processor
- multifunctional
- graphics
- display
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—Three-dimensional [3D] image rendering
- G06T15/005—General purpose rendering architectures
Landscapes
- Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Controls And Circuits For Display Device (AREA)
- Image Generation (AREA)
- Digital Computer Display Output (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【0001】
【関連出願のクロスリファレンス】この出願は、同時出
願された、1990年_月にファイルされた出願番号_
_の”デュアルプログラマブルブロックテクスチャリン
グおよびコンプレックスクリッピングおよびグラフィッ
ク描画プロセッサ”、1990年_月にファイルされた
出願番号__の”グラフィック描画プロセッサにおける
デュアルハードウエアチャンネルおよびハードウエアコ
ンテクスト切り替え”、1990年_月にファイルされ
た出願番号__の””描画プロセッサの同時汎用および
DMA処理”、1990年_月にファイルされた出願番
号__の”グラフィックプロセッサにおけるエリアフィ
ル/円錐/ベクトルデータの集積化ハードウエアジェネ
レータ”、1990年、_月にファイルされた出願番号
__の”グラフィック描画プロセッサにおけるハードウ
エアビットブロック転送演算器”、1990年、_月に
ファイルされた出願番号__の”グラフィックプロセッ
サにおけるハードウエア記号およびテキストジェネレー
タ”、1990年_月にファイルされた、”グラフィッ
ク描画プロセッサにおけるハードウエアマルチプロセス
スケジューラ”(発明者がジョン・エム・ピーズリー、
およびジェフリー・C・マラカーン)に関連する出願で
あり、これらの出願に開示された内容をこの明細書にお
いて引用す
願された、1990年_月にファイルされた出願番号_
_の”デュアルプログラマブルブロックテクスチャリン
グおよびコンプレックスクリッピングおよびグラフィッ
ク描画プロセッサ”、1990年_月にファイルされた
出願番号__の”グラフィック描画プロセッサにおける
デュアルハードウエアチャンネルおよびハードウエアコ
ンテクスト切り替え”、1990年_月にファイルされ
た出願番号__の””描画プロセッサの同時汎用および
DMA処理”、1990年_月にファイルされた出願番
号__の”グラフィックプロセッサにおけるエリアフィ
ル/円錐/ベクトルデータの集積化ハードウエアジェネ
レータ”、1990年、_月にファイルされた出願番号
__の”グラフィック描画プロセッサにおけるハードウ
エアビットブロック転送演算器”、1990年、_月に
ファイルされた出願番号__の”グラフィックプロセッ
サにおけるハードウエア記号およびテキストジェネレー
タ”、1990年_月にファイルされた、”グラフィッ
ク描画プロセッサにおけるハードウエアマルチプロセス
スケジューラ”(発明者がジョン・エム・ピーズリー、
およびジェフリー・C・マラカーン)に関連する出願で
あり、これらの出願に開示された内容をこの明細書にお
いて引用す
【0002】る。
【背景技術】この発明は、一般にデジタルグラフィック
プロセッサに関し、特に多重ハードウエアによるグラフ
ィック発生機能と、プログラム可能な汎用処理が得られ
る多機能グラフィック描画プロセッサに関する。
プロセッサに関し、特に多重ハードウエアによるグラフ
ィック発生機能と、プログラム可能な汎用処理が得られ
る多機能グラフィック描画プロセッサに関する。
【0003】リアルタイムデジタル電子表示装置は、軍
用指揮統制システム、および航空管制システムのような
多くの応用例において使用されている。これらの表示装
置では、表示された情報は、1つ以上のレーダ、通信シ
ステム、および/または他のデータプロセッサからのリ
アルタイム情報を受取るホストプロセッサにより発生さ
れたリアルタイム処理されたデータから成る。これらの
データは、発生された英数字、マスク領域、およびテク
スチャパターンとともに1つ以上のグラフィックプリミ
ティブライン、例えばポリライン、ベクトル、円、楕円
あるいは多角形と結合され、CRTのような出力装置に
比較的容易に理解される包括的なグラフ表示を行なう。 これらのシステムでは、グラフプリミティブデータ、マ
スクウインドウ、フィルテクスチャリングなどのグラフ
表示の種々の要素が、汎用の計算機を用いたグラフジェ
ネレータあるいは専用のハードウエアグラフィックジェ
ネレータにより供給される。
用指揮統制システム、および航空管制システムのような
多くの応用例において使用されている。これらの表示装
置では、表示された情報は、1つ以上のレーダ、通信シ
ステム、および/または他のデータプロセッサからのリ
アルタイム情報を受取るホストプロセッサにより発生さ
れたリアルタイム処理されたデータから成る。これらの
データは、発生された英数字、マスク領域、およびテク
スチャパターンとともに1つ以上のグラフィックプリミ
ティブライン、例えばポリライン、ベクトル、円、楕円
あるいは多角形と結合され、CRTのような出力装置に
比較的容易に理解される包括的なグラフ表示を行なう。 これらのシステムでは、グラフプリミティブデータ、マ
スクウインドウ、フィルテクスチャリングなどのグラフ
表示の種々の要素が、汎用の計算機を用いたグラフジェ
ネレータあるいは専用のハードウエアグラフィックジェ
ネレータにより供給される。
【0004】
【発明が解決しようとする課題】汎用のグラフィックジ
ェネレータは多機能であるが、プログラミングを容易に
するために、ある程度システム性能を犠牲にしなければ
ならない。一方、コジェネエレータと呼ばれる専用ハー
ドウエアジェネレータは、システム性能は良いが、プロ
グラミングが犠牲となる。
ェネレータは多機能であるが、プログラミングを容易に
するために、ある程度システム性能を犠牲にしなければ
ならない。一方、コジェネエレータと呼ばれる専用ハー
ドウエアジェネレータは、システム性能は良いが、プロ
グラミングが犠牲となる。
【0005】軍指令部制御システム、および軍用指揮統
制システムおよび民間の航空管制システム等では、多機
能で容易にプログラム可能な多機能コジェネレータが要
望されている。
制システムおよび民間の航空管制システム等では、多機
能で容易にプログラム可能な多機能コジェネレータが要
望されている。
【0006】この発明の目的は、種々のグラフィックシ
ステムアプリケーションに対してモジュールとして組み
込み可能な高性能2次元グラフィックエンジンである多
機能コジェネレータを提供することである。多機能コジ
ェネレータは大規模集積回路ロジックを用いた集積回路
チップとして実現される。多機能コジェネレータは汎用
の処理能力と、新規なグラフィックエンジンを作るハー
ドウエアで実現されたグラフィックアルゴリズムを合わ
せ持つ。多機能コジェネレータは、ひとそろいのグラフ
ィックプリミティブデータあるいはプリミティブ動作を
実行するとともに、汎用処理機能を実行する。この組合
せにより、ユーザは最小限のプログラミングで複雑なグ
ラフィック動作を行なうことができる。この多機能コジ
ェネレータの特徴は同一装置内に並列に2つの別個の描
画チャンネルを設けたことである。各チャンネルはコマ
ンド入力レジスタとして機能し、それぞれ別個のホスト
プロセッサに対して機能するように構成してもよい。多
機能コジェネレータは一方のチャンネルを他方のチャン
ネルよりも高い優先度でサービスし、高性能グラフィッ
ク表示に伴う多くの問題を解決している。
ステムアプリケーションに対してモジュールとして組み
込み可能な高性能2次元グラフィックエンジンである多
機能コジェネレータを提供することである。多機能コジ
ェネレータは大規模集積回路ロジックを用いた集積回路
チップとして実現される。多機能コジェネレータは汎用
の処理能力と、新規なグラフィックエンジンを作るハー
ドウエアで実現されたグラフィックアルゴリズムを合わ
せ持つ。多機能コジェネレータは、ひとそろいのグラフ
ィックプリミティブデータあるいはプリミティブ動作を
実行するとともに、汎用処理機能を実行する。この組合
せにより、ユーザは最小限のプログラミングで複雑なグ
ラフィック動作を行なうことができる。この多機能コジ
ェネレータの特徴は同一装置内に並列に2つの別個の描
画チャンネルを設けたことである。各チャンネルはコマ
ンド入力レジスタとして機能し、それぞれ別個のホスト
プロセッサに対して機能するように構成してもよい。多
機能コジェネレータは一方のチャンネルを他方のチャン
ネルよりも高い優先度でサービスし、高性能グラフィッ
ク表示に伴う多くの問題を解決している。
【0007】広い意味では、この発明は、グラフィック
プロセッサ、すなわちコジェネレータでる。このコジェ
ネレータは、ホストプロセッサから入力データおよびプ
ログラム命令を受け取る入力レジスタを備えている。入
力データおよびプログラム命令を記憶するための大容量
のディスプレイメモリが設けられる。さらに、コジェネ
レータの動作特性を決定するシステム属性信号を受信し
、記憶するための大規模なコンテクストレジスタアレイ
が設けられる。さらに、ポリライン、ベクトル、多角形
、方形、円、楕円、記号、英数字のようなプリミティブ
データを含むプリミティブ信号を発生し、ビットブロッ
ク転送を行い、テクスチャパターンおよびコンプレック
スクリップマスクを発生する複数の内部プリミティブデ
ータプロセッサを有している。ディスプレイメモリイン
ターフェースユニットを有するディスプレイリストプロ
セッサが設けられ、ディスプレイメモリに対するデータ
、プリミティブデータ信号群、属性信号、およびプログ
ラム命令の入出力の制御、およびグラフィックディスプ
レイのホストプロセッサ、プリミティブデータプロセッ
サ、およびビットマップメモリとの入出力を制御する。 この発明の一実施例では、プリミティブデータプロ
セッサは、英数字のような記号を発生する記号ジェネレ
ータと、データブロックを移動、転送するビットブロッ
ク転送演算器と、円、楕円、および多角形のようなプリ
ミティブデータをを塗りつぶした状態あるいは塗りつぶ
してない状態で発生する円錐およびエリアフィルデータ
ジェネレータと、テクスチャパターンを発生し、種々の
複雑な(コンプレックス)クリッピング機能およびマス
ク機能を行なうブロックテクスチャリングおよびコンプ
レックスクリッピングプロセッサとを有している。
プロセッサ、すなわちコジェネレータでる。このコジェ
ネレータは、ホストプロセッサから入力データおよびプ
ログラム命令を受け取る入力レジスタを備えている。入
力データおよびプログラム命令を記憶するための大容量
のディスプレイメモリが設けられる。さらに、コジェネ
レータの動作特性を決定するシステム属性信号を受信し
、記憶するための大規模なコンテクストレジスタアレイ
が設けられる。さらに、ポリライン、ベクトル、多角形
、方形、円、楕円、記号、英数字のようなプリミティブ
データを含むプリミティブ信号を発生し、ビットブロッ
ク転送を行い、テクスチャパターンおよびコンプレック
スクリップマスクを発生する複数の内部プリミティブデ
ータプロセッサを有している。ディスプレイメモリイン
ターフェースユニットを有するディスプレイリストプロ
セッサが設けられ、ディスプレイメモリに対するデータ
、プリミティブデータ信号群、属性信号、およびプログ
ラム命令の入出力の制御、およびグラフィックディスプ
レイのホストプロセッサ、プリミティブデータプロセッ
サ、およびビットマップメモリとの入出力を制御する。 この発明の一実施例では、プリミティブデータプロ
セッサは、英数字のような記号を発生する記号ジェネレ
ータと、データブロックを移動、転送するビットブロッ
ク転送演算器と、円、楕円、および多角形のようなプリ
ミティブデータをを塗りつぶした状態あるいは塗りつぶ
してない状態で発生する円錐およびエリアフィルデータ
ジェネレータと、テクスチャパターンを発生し、種々の
複雑な(コンプレックス)クリッピング機能およびマス
ク機能を行なうブロックテクスチャリングおよびコンプ
レックスクリッピングプロセッサとを有している。
【0008】
【実施例】図1はこの発明により一部が構成されたデュ
アルチャンネル多機能コジェネレータ10を含む汎用化
グラフィックディスプレイシステムのブロック図である
。このコジェネレータ10は、軍用指揮統制システムの
ような1つ以上の汎用データ処理システムと結合されて
動作するデュアルチャンネルのハードウエア装置である
。すなわち、このシステムは、1つ以上のリアルタイム
データプロセッサ14と、レーダシステム16や他のコ
ジェネレータ17のようなリアルタイムデータ累算装置
とから成る。例えば、ホストプロセッサ14とレーダス
キャンコンバータ16からのデータは多機能バス18を
介してコジェネレータ10に供給され、コジェネレータ
10で発生されたグラフィックデータと結合される。 コジェネレータ10は、64ビットの双方向相互接続イ
メージバス20を介してグラフィック表示を行なうため
のひとそろいのデータをビットマップメモリ22に出力
し、さらにビデオバス23を介して表示システム24に
出力する。コジェネレータ10は、手動入出力装置、多
重化リアルタイムプロセッサ、バルクメモリ等の他の種
々の入力装置を有するように構成してもよい。
アルチャンネル多機能コジェネレータ10を含む汎用化
グラフィックディスプレイシステムのブロック図である
。このコジェネレータ10は、軍用指揮統制システムの
ような1つ以上の汎用データ処理システムと結合されて
動作するデュアルチャンネルのハードウエア装置である
。すなわち、このシステムは、1つ以上のリアルタイム
データプロセッサ14と、レーダシステム16や他のコ
ジェネレータ17のようなリアルタイムデータ累算装置
とから成る。例えば、ホストプロセッサ14とレーダス
キャンコンバータ16からのデータは多機能バス18を
介してコジェネレータ10に供給され、コジェネレータ
10で発生されたグラフィックデータと結合される。 コジェネレータ10は、64ビットの双方向相互接続イ
メージバス20を介してグラフィック表示を行なうため
のひとそろいのデータをビットマップメモリ22に出力
し、さらにビデオバス23を介して表示システム24に
出力する。コジェネレータ10は、手動入出力装置、多
重化リアルタイムプロセッサ、バルクメモリ等の他の種
々の入力装置を有するように構成してもよい。
【0009】図2において、コジェネレータ10は高性
能のシングルチップグラフィック描画プロセッサである
。コジェネレータ10はマルチグラフィックプリミティ
ブデータを発生し、汎用処理機能を実行する。コジェネ
レータは図1のホストプロセッサ14のようなプロセッ
サから32ビットの双方向のホスト入力ポートを介して
グラフィックコマンドを受け取る。コジェネレータ10
はこれらのコマンドを処理し、ビットマップメモリ22
に描画する。コジェネレータ10はイメージバス20を
介してビットマップメモリ22に”描画”する。”描画
”はバイナリの”1”、”0”の信号(ここでは、描画
1、描画0)を、ビットマップメモリ22の各メモリロ
ケーションに入力することにより行なわれる。一般には
、ビットマップメモリ22は、グラフィック表示画素の
色と強度に対応した多層のメモリ構成を有している。 コジェネレータ10は、記号、ポリライン、方形、円、
楕円、円弧、多角形の塗りつぶしのようなグラフィック
プリミティブデータの描画を行なうことができるととも
に、コジェネレータ10、ホストプロセッサ14、およ
びビットマップメモリ22との間のビットブロック転送
(BITBLT)を行なうことができる。
能のシングルチップグラフィック描画プロセッサである
。コジェネレータ10はマルチグラフィックプリミティ
ブデータを発生し、汎用処理機能を実行する。コジェネ
レータは図1のホストプロセッサ14のようなプロセッ
サから32ビットの双方向のホスト入力ポートを介して
グラフィックコマンドを受け取る。コジェネレータ10
はこれらのコマンドを処理し、ビットマップメモリ22
に描画する。コジェネレータ10はイメージバス20を
介してビットマップメモリ22に”描画”する。”描画
”はバイナリの”1”、”0”の信号(ここでは、描画
1、描画0)を、ビットマップメモリ22の各メモリロ
ケーションに入力することにより行なわれる。一般には
、ビットマップメモリ22は、グラフィック表示画素の
色と強度に対応した多層のメモリ構成を有している。 コジェネレータ10は、記号、ポリライン、方形、円、
楕円、円弧、多角形の塗りつぶしのようなグラフィック
プリミティブデータの描画を行なうことができるととも
に、コジェネレータ10、ホストプロセッサ14、およ
びビットマップメモリ22との間のビットブロック転送
(BITBLT)を行なうことができる。
【0010】コジェネレータ10には、3ポートディス
プレイメモリ26が設けられている。ディスプレイメモ
リ26はすべてのコマンドとパラメータを格納し、コジ
ェネレータ10が正しく機能するためのロジックを有し
ている。実施可能な実施例におけるメモリアドレス空間
は4メガバイトx32ビットである。コジェネレータ1
0はDRAM、SRAM、および/またはPROMとイ
ンターフェースする。ディスプレイメモリ26はコジェ
ネレータ10のディスプレイリストプロセッサ28、コ
ジェネレータ10の内部グラフィックジェネレータ34
、およびホストプロセッサ14によりアクセス可能であ
る。ディスプレイメモリ26は2つのファーストインー
ファーストアウト(FIFO)メモリバッファを有して
いる。一方のバッファは他方のバッファよりも高い動作
優先度を有している。また2つの描画チャンネルの各々
に対して1つのバッファメモリが設けられている。各F
IFOバッファには、サブルーチンコールした際の戻り
番地が格納されるアドレススタックが設けられている。 属性スタックは、ハードウエアコンテクストスイッチン
グのためのすべての内部コジェネレータ属性と、グラフ
ィックを描画するためのサイン/コサインテーブルと、
筆跡およびまたはドットマトリクスの記号およびキャラ
クタを描画するための最高128のフォントテーブルを
格納する。大容量のディスプレイリスト領域も設けられ
る。
プレイメモリ26が設けられている。ディスプレイメモ
リ26はすべてのコマンドとパラメータを格納し、コジ
ェネレータ10が正しく機能するためのロジックを有し
ている。実施可能な実施例におけるメモリアドレス空間
は4メガバイトx32ビットである。コジェネレータ1
0はDRAM、SRAM、および/またはPROMとイ
ンターフェースする。ディスプレイメモリ26はコジェ
ネレータ10のディスプレイリストプロセッサ28、コ
ジェネレータ10の内部グラフィックジェネレータ34
、およびホストプロセッサ14によりアクセス可能であ
る。ディスプレイメモリ26は2つのファーストインー
ファーストアウト(FIFO)メモリバッファを有して
いる。一方のバッファは他方のバッファよりも高い動作
優先度を有している。また2つの描画チャンネルの各々
に対して1つのバッファメモリが設けられている。各F
IFOバッファには、サブルーチンコールした際の戻り
番地が格納されるアドレススタックが設けられている。 属性スタックは、ハードウエアコンテクストスイッチン
グのためのすべての内部コジェネレータ属性と、グラフ
ィックを描画するためのサイン/コサインテーブルと、
筆跡およびまたはドットマトリクスの記号およびキャラ
クタを描画するための最高128のフォントテーブルを
格納する。大容量のディスプレイリスト領域も設けられ
る。
【0011】ディスプレイメモリ26は32ビットデー
タワードで構成された最高400万ワードのRAMと、
適当なバッファロジックとから成る。ディスプレイメモ
リ26の内容は、表Iに示すように構成される。ホスト
プロセッサ14はディスプレイメモリ26のアドレス空
間内のアドレスに対してランダムにリードライト可能で
ある。コジェネレータ10はホストプロセッサ14から
ディスプレイメモリ26へのデータの入力を監視し、ホ
ストプロセッサ14からのデータの更新に同期して、グ
ラフィック信号を出力する。 デュアルチャンネルFIFOバッファコントローラ38
、40は図3に示すように、コジェネレータ10とホス
トプロセッサ14とのインターフェースを司る。FIF
Oバッファコントローラ38、40は、バス18がデー
タ転送を行なっている時、”ハンドシェーク”のような
インターフェースデューティを行なう。ホストプロセッ
サ14は、コジェネレータ10とディスプレイメモリ2
6に対してリードライト可能である。ホストプロセッサ
14がディスプレイメモリ26に対してリードライトす
ると、FIFOバッファコントローラ38、40はホス
トプロセッサ14の代わりに、ディスプレイメモリ26
に対して、実際のリードライト動作を行なう。FIFO
バッファコントローラ38はさらに、コジェネレータ1
0に対して高優先度のチャンネルと低優先度のチャンネ
ルの調停を司る。ディスプレイメモリ26内にはアドレ
ススタックが設けられておりサブルーチンコールの際の
戻り番地を格納する。またディスプレイメモリ26内の
属性スタックは、コジェネレータ10がハードウエアコ
ンテクストスイッチングを行なうのに必要なすべての内
部属性を格納するとともに、円錐およびプリミティブデ
ータを描画するためのサイン/コサインテーブルと、筆
跡およびドットマトリクスによる記号と文字を描画する
ための最高128のフォントテーブルとを格納する。 さらにディスプレイメモリ26には、大容量ディスプレ
イリスト領域が設けられている。
タワードで構成された最高400万ワードのRAMと、
適当なバッファロジックとから成る。ディスプレイメモ
リ26の内容は、表Iに示すように構成される。ホスト
プロセッサ14はディスプレイメモリ26のアドレス空
間内のアドレスに対してランダムにリードライト可能で
ある。コジェネレータ10はホストプロセッサ14から
ディスプレイメモリ26へのデータの入力を監視し、ホ
ストプロセッサ14からのデータの更新に同期して、グ
ラフィック信号を出力する。 デュアルチャンネルFIFOバッファコントローラ38
、40は図3に示すように、コジェネレータ10とホス
トプロセッサ14とのインターフェースを司る。FIF
Oバッファコントローラ38、40は、バス18がデー
タ転送を行なっている時、”ハンドシェーク”のような
インターフェースデューティを行なう。ホストプロセッ
サ14は、コジェネレータ10とディスプレイメモリ2
6に対してリードライト可能である。ホストプロセッサ
14がディスプレイメモリ26に対してリードライトす
ると、FIFOバッファコントローラ38、40はホス
トプロセッサ14の代わりに、ディスプレイメモリ26
に対して、実際のリードライト動作を行なう。FIFO
バッファコントローラ38はさらに、コジェネレータ1
0に対して高優先度のチャンネルと低優先度のチャンネ
ルの調停を司る。ディスプレイメモリ26内にはアドレ
ススタックが設けられておりサブルーチンコールの際の
戻り番地を格納する。またディスプレイメモリ26内の
属性スタックは、コジェネレータ10がハードウエアコ
ンテクストスイッチングを行なうのに必要なすべての内
部属性を格納するとともに、円錐およびプリミティブデ
ータを描画するためのサイン/コサインテーブルと、筆
跡およびドットマトリクスによる記号と文字を描画する
ための最高128のフォントテーブルとを格納する。 さらにディスプレイメモリ26には、大容量ディスプレ
イリスト領域が設けられている。
【0012】図3は、FIFOコントローラ38、40
のブロック図である。デュアルチャンネルFIFOコン
トローラ38、40はホストプロセッサ14からコマン
ドを受け取る。チャンネル2のインターフェーストラン
シーバ70は、データとアドレスを受取り、ホストプロ
セッサ14とハンドシェークを行なってバス転送を行な
う。チャンネル2のインターフェースは、次にチャンネ
ル2の要求をアクティブにする。優先度コントローラ7
1はチャンネル1の動作とチャンネル2の動作を監視す
る。この場合、チャンネル1はアイドル状態であり、チ
ャンネル2はFIFO2のコマンドを受け取る。チャン
ネル2のインターフェーストランシーバ70の機能は、
優先度を設定するとともに、実行すべきメモリサイクル
の種類を決定することである。チャンネル2のトランシ
ーバ70がサイクルタイプを決定すると、それをディス
プレイメモリサイクル要求回路72に知らせサイクルを
実行する。優先度コントローラ71はチャンネル2の要
求を受取り、ホストプロセッサ14から送られてきたデ
ータを入力データレジスタ73にロードする。入力デー
タレジスタ73はその内容をディスプレイメモリサイク
ル要求回路72に送る。アドレスデコーダ74は現在の
ホストプロセッサアドレスをデコードする。優先度コン
トローラ71はこの情報を用いてホストプロセッサ14
が何をしようとしているのかを判断する。この場合、F
IFO2への書き込みが行なわれる。優先度コントロー
ラ71はFIFOコントローラ75からFIFO02の
書き込みポインタを選択する。優先度コントローラ71
はアドレスマルチプレクサ76を制御してFIFO2の
書き込みポインタを選択する。アドレスマルチプレクサ
76はFIFO2の書き込みポインタ値をディスプレイ
メモリサイクル要求回路72に送る。優先度コントロー
ラ71はディスプレイメモリサイクル要求回路72に対
してコマンドを送り、FIFO2へのライトサイクルを
実行させる。ディスプレイメモリサイクル要求回路72
は適当なアドレスとデータを有する。ディスプレイメモ
リサイクル要求回路はディスプレイメモリインターフェ
ースユニット35に対してサイクル要求を出す。
のブロック図である。デュアルチャンネルFIFOコン
トローラ38、40はホストプロセッサ14からコマン
ドを受け取る。チャンネル2のインターフェーストラン
シーバ70は、データとアドレスを受取り、ホストプロ
セッサ14とハンドシェークを行なってバス転送を行な
う。チャンネル2のインターフェースは、次にチャンネ
ル2の要求をアクティブにする。優先度コントローラ7
1はチャンネル1の動作とチャンネル2の動作を監視す
る。この場合、チャンネル1はアイドル状態であり、チ
ャンネル2はFIFO2のコマンドを受け取る。チャン
ネル2のインターフェーストランシーバ70の機能は、
優先度を設定するとともに、実行すべきメモリサイクル
の種類を決定することである。チャンネル2のトランシ
ーバ70がサイクルタイプを決定すると、それをディス
プレイメモリサイクル要求回路72に知らせサイクルを
実行する。優先度コントローラ71はチャンネル2の要
求を受取り、ホストプロセッサ14から送られてきたデ
ータを入力データレジスタ73にロードする。入力デー
タレジスタ73はその内容をディスプレイメモリサイク
ル要求回路72に送る。アドレスデコーダ74は現在の
ホストプロセッサアドレスをデコードする。優先度コン
トローラ71はこの情報を用いてホストプロセッサ14
が何をしようとしているのかを判断する。この場合、F
IFO2への書き込みが行なわれる。優先度コントロー
ラ71はFIFOコントローラ75からFIFO02の
書き込みポインタを選択する。優先度コントローラ71
はアドレスマルチプレクサ76を制御してFIFO2の
書き込みポインタを選択する。アドレスマルチプレクサ
76はFIFO2の書き込みポインタ値をディスプレイ
メモリサイクル要求回路72に送る。優先度コントロー
ラ71はディスプレイメモリサイクル要求回路72に対
してコマンドを送り、FIFO2へのライトサイクルを
実行させる。ディスプレイメモリサイクル要求回路72
は適当なアドレスとデータを有する。ディスプレイメモ
リサイクル要求回路はディスプレイメモリインターフェ
ースユニット35に対してサイクル要求を出す。
【0013】チャンネル1のトランシーバ68は、チャ
ンネル2のトランシーバ70と同様に動作する。ホスト
プロセッサ14が多機能コジェネレータ10からデータ
をリードしている時、出力データレジスタ69が使用さ
れる。ホストプロセッサ14は多機能コジェネレータ1
0またはディスプレイメモリ26からデータを読むこと
ができる。いずれの場合にも、ホストリードサイクル中
に、ホストプロセッサ14に送られるべきデータが、ホ
ストプロセッサ14に送られる前に出力データレジスタ
69に格納される。リードサイクルは、データが、出力
データレジスタ69からチャンネル1トランシーバ68
またはチャンネル2トランシーバ70のいずれかに送ら
れたとき、完了する。次に、トランシーバ68、70は
データをバス18上に出力し、リードサイクルが完了す
る。
ンネル2のトランシーバ70と同様に動作する。ホスト
プロセッサ14が多機能コジェネレータ10からデータ
をリードしている時、出力データレジスタ69が使用さ
れる。ホストプロセッサ14は多機能コジェネレータ1
0またはディスプレイメモリ26からデータを読むこと
ができる。いずれの場合にも、ホストリードサイクル中
に、ホストプロセッサ14に送られるべきデータが、ホ
ストプロセッサ14に送られる前に出力データレジスタ
69に格納される。リードサイクルは、データが、出力
データレジスタ69からチャンネル1トランシーバ68
またはチャンネル2トランシーバ70のいずれかに送ら
れたとき、完了する。次に、トランシーバ68、70は
データをバス18上に出力し、リードサイクルが完了す
る。
【0014】ディスプレイメモリインターフェースユニ
ット35は、図4に示され実際のディスプレイメモリサ
イクルを実行する。ユニット35は、3ポートメモリコ
ントローラで構成される。ディスプレイリストプロセッ
サ28は図5に示され、すべてのコジェネレータ10の
コマンド処理およびディスプレイリスト処理を行なう。 コマンドはホストプロセッサ14からコジェネレータ1
0に送られる。ディスプレイリストプロセッサ28は種
々の方法でコマンドをコジェネレータ10に送る。ディ
スプレイリストプロセッサ28はディスプレイメモリ2
6にインターフェースし、FIFOバッファからコマン
ドをリードするとともに、他の機能を実行する。コマン
ドがディスプレイリストプロセッサ28に送られると、
プロセッサ28はコマンドを処理して何をすべきかを判
断する。コジェネレータ10は多くの異なるコマンドと
シーケンスを供給する。ホストプロセッサ14はFIF
O1、FIFO2を介して多機能コジェネレータにコマ
ンドを送ることができるとともに、ディスプレイメモリ
26のディスプレイリスト領域にコマンドを送ることが
できる。ディスプレイリストプロセッサ28はこれらの
ロケーションからのコマンドを処理する。ディスプレイ
リストプロセッサ28はさらに、コンテクストスイッチ
ングの間、ディスプレイメモリ26の属性スタックを制
御する。さらに、ディスプレイリストプロセッサ28は
ディスプレイメモリ26内のチャンネル1およびチャン
ネル2のサブルーチンスタックを制御する。
ット35は、図4に示され実際のディスプレイメモリサ
イクルを実行する。ユニット35は、3ポートメモリコ
ントローラで構成される。ディスプレイリストプロセッ
サ28は図5に示され、すべてのコジェネレータ10の
コマンド処理およびディスプレイリスト処理を行なう。 コマンドはホストプロセッサ14からコジェネレータ1
0に送られる。ディスプレイリストプロセッサ28は種
々の方法でコマンドをコジェネレータ10に送る。ディ
スプレイリストプロセッサ28はディスプレイメモリ2
6にインターフェースし、FIFOバッファからコマン
ドをリードするとともに、他の機能を実行する。コマン
ドがディスプレイリストプロセッサ28に送られると、
プロセッサ28はコマンドを処理して何をすべきかを判
断する。コジェネレータ10は多くの異なるコマンドと
シーケンスを供給する。ホストプロセッサ14はFIF
O1、FIFO2を介して多機能コジェネレータにコマ
ンドを送ることができるとともに、ディスプレイメモリ
26のディスプレイリスト領域にコマンドを送ることが
できる。ディスプレイリストプロセッサ28はこれらの
ロケーションからのコマンドを処理する。ディスプレイ
リストプロセッサ28はさらに、コンテクストスイッチ
ングの間、ディスプレイメモリ26の属性スタックを制
御する。さらに、ディスプレイリストプロセッサ28は
ディスプレイメモリ26内のチャンネル1およびチャン
ネル2のサブルーチンスタックを制御する。
【0015】図5に、この発明のディスプレイリストプ
ロセッサ28のブロック図を示す。このディスプレイリ
ストプロセッサ28は入力データレジスタ91を有して
いる。入力データレジスタ91の制御ラインは、コマン
ドデコーダ92、ディスプレイメモリサイクル要求回路
98、およびアドレスマルチプレクサジェネレータ99
に接続されこれらの回路にデータが供給される。入力デ
ータレジスタ98はさらに、コマンドデコーダ92、デ
ィスプレイリストコマンドインタープリータ93、第1
および第2サブルーチンスタックアドレスジェネレータ
94、95、属性スタックアドレスジェネレータ96、
インタラプトハンドラアドレスジェネレータ97、ディ
スプレイメモリサイクル要求回路98およびアドレスマ
ルチプレクサジェネレータ99と接続される。ディスプ
レイリストコマンドインタープリータ93は割り込みラ
インによりホストプロセッサ14のような外部コンピュ
ータに、FIFOリードリクエストラインおよびステー
タスラインを介して接続されるとともに、属性およびデ
ータ選択ラインを介してコンテクストレジスタ42およ
びリードバックマルチプレクサ44に接続される。デー
タメモリサイクル要求回路98はディスプレイメモリイ
ンターフェースユニット35に接続され、ディスプレイ
メモリインターフェースユニット35は、ディスプレイ
メモリ26に接続される。ディスプレイリストプロセッ
サ28の動作は表I、および図4乃至図6を参照してさ
らに詳細に述べる。
ロセッサ28のブロック図を示す。このディスプレイリ
ストプロセッサ28は入力データレジスタ91を有して
いる。入力データレジスタ91の制御ラインは、コマン
ドデコーダ92、ディスプレイメモリサイクル要求回路
98、およびアドレスマルチプレクサジェネレータ99
に接続されこれらの回路にデータが供給される。入力デ
ータレジスタ98はさらに、コマンドデコーダ92、デ
ィスプレイリストコマンドインタープリータ93、第1
および第2サブルーチンスタックアドレスジェネレータ
94、95、属性スタックアドレスジェネレータ96、
インタラプトハンドラアドレスジェネレータ97、ディ
スプレイメモリサイクル要求回路98およびアドレスマ
ルチプレクサジェネレータ99と接続される。ディスプ
レイリストコマンドインタープリータ93は割り込みラ
インによりホストプロセッサ14のような外部コンピュ
ータに、FIFOリードリクエストラインおよびステー
タスラインを介して接続されるとともに、属性およびデ
ータ選択ラインを介してコンテクストレジスタ42およ
びリードバックマルチプレクサ44に接続される。デー
タメモリサイクル要求回路98はディスプレイメモリイ
ンターフェースユニット35に接続され、ディスプレイ
メモリインターフェースユニット35は、ディスプレイ
メモリ26に接続される。ディスプレイリストプロセッ
サ28の動作は表I、および図4乃至図6を参照してさ
らに詳細に述べる。
【0016】ディスプレイリストコマンドインタープリ
ータ93は、並行処理回路、割り込み入力回路、リスト
ア制御回路の機能を有する。割り込みハンドラアドレス
ジェネレータ97は、割り込み入力回路、ネスティング
された割り込み入力回路、リストア実行回路、および多
重レベルのネスティングされた入力回路の機能を有する
。第1および第2サブルーチンスタックアドレスジェネ
レータ94、95はネスティングされたサブルーチン回
路およびプッシュダウンスタックとして機能する。これ
らの回路動作は以下に詳述する。
ータ93は、並行処理回路、割り込み入力回路、リスト
ア制御回路の機能を有する。割り込みハンドラアドレス
ジェネレータ97は、割り込み入力回路、ネスティング
された割り込み入力回路、リストア実行回路、および多
重レベルのネスティングされた入力回路の機能を有する
。第1および第2サブルーチンスタックアドレスジェネ
レータ94、95はネスティングされたサブルーチン回
路およびプッシュダウンスタックとして機能する。これ
らの回路動作は以下に詳述する。
【0017】コンテクストレジスタ42はすべてのコジ
ェネレータの属性を格納し、その詳細を図6に示す。こ
れらの属性はコジェネレータ10の現在の状態を定義す
る。現在の状態の中には、コジェネレータの動作モード
、描画ポインタ位置、前景色、背景色、クリッピングウ
ィンドウサイズ等の多くのパラメータを含めることがで
きる。コンテクストレジスタの内容は、ある時点におけ
るコジェネレータ10の特性を定義し、すべての属性は
ユーザによりプログラム可能であるので重要である。 これにより、ユーザは、柔軟性をもってディスプレイシ
ステムを動作することができる。
ェネレータの属性を格納し、その詳細を図6に示す。こ
れらの属性はコジェネレータ10の現在の状態を定義す
る。現在の状態の中には、コジェネレータの動作モード
、描画ポインタ位置、前景色、背景色、クリッピングウ
ィンドウサイズ等の多くのパラメータを含めることがで
きる。コンテクストレジスタの内容は、ある時点におけ
るコジェネレータ10の特性を定義し、すべての属性は
ユーザによりプログラム可能であるので重要である。 これにより、ユーザは、柔軟性をもってディスプレイシ
ステムを動作することができる。
【0018】図6にコンテクストレジスタ42の詳細を
示す。コンテクストレジスタ42は21の属性レジスタ
101−1乃至101−21と、属性レジスタロードコ
ントローラ102と、属性マルチプレクサ103とで構
成される。コンテクストレジスタ42は、図6に示され
るようにディスプレイメモリインターフェースユニット
35、ディスプレイリストプロセッサ28、およびリー
ドバックマルチプレクサ44に接続される。
示す。コンテクストレジスタ42は21の属性レジスタ
101−1乃至101−21と、属性レジスタロードコ
ントローラ102と、属性マルチプレクサ103とで構
成される。コンテクストレジスタ42は、図6に示され
るようにディスプレイメモリインターフェースユニット
35、ディスプレイリストプロセッサ28、およびリー
ドバックマルチプレクサ44に接続される。
【0019】コンテクストスイッチング動作を開始する
ためには、コジェネレータ10は”PUSH属性”コマ
ンドを処理する。ディスプレイリストプロセッサ28は
ディスプレイメモリ26からコマンドを読み込む。PU
SHコマンドはFIFOバッファあるいはディスプレイ
リストのいずれかに記憶される。コマンドデコーダ92
(図5)はPUSHコマンドを検出し、ディスプレイリ
ストコマンドインタープリータ93に対して、リードバ
ッックマルチプレクサ44にデータを入力するように属
性データバスを選択するように指示持する。このバスは
、図2に示すように、コンテクストレジスタ42からリ
ードバックマルチプレクサ44に配線されている。リー
ドバックマルチプレクサ44の出力は、ディスプレイメ
モリインターフェースユニット35に送られる。ディス
プレイリストプロセッサ28は、属性バスを、ディスプ
レイメモリインターフェースユニット35に入力するよ
うに選択する。この結果、すべてのコジェネレータ属性
データが順次ディスプレイメモリ26内の属性スタック
に記憶される。属性スタックは1Kのメモリで構成され
、32のテーブルに分かれ、それぞれ32の入力を有す
る。各テーブルは1つのコジェネレータコンテクスト、
すなわち、状態、一般にはいくつかの使用していない入
力値を保持する。
ためには、コジェネレータ10は”PUSH属性”コマ
ンドを処理する。ディスプレイリストプロセッサ28は
ディスプレイメモリ26からコマンドを読み込む。PU
SHコマンドはFIFOバッファあるいはディスプレイ
リストのいずれかに記憶される。コマンドデコーダ92
(図5)はPUSHコマンドを検出し、ディスプレイリ
ストコマンドインタープリータ93に対して、リードバ
ッックマルチプレクサ44にデータを入力するように属
性データバスを選択するように指示持する。このバスは
、図2に示すように、コンテクストレジスタ42からリ
ードバックマルチプレクサ44に配線されている。リー
ドバックマルチプレクサ44の出力は、ディスプレイメ
モリインターフェースユニット35に送られる。ディス
プレイリストプロセッサ28は、属性バスを、ディスプ
レイメモリインターフェースユニット35に入力するよ
うに選択する。この結果、すべてのコジェネレータ属性
データが順次ディスプレイメモリ26内の属性スタック
に記憶される。属性スタックは1Kのメモリで構成され
、32のテーブルに分かれ、それぞれ32の入力を有す
る。各テーブルは1つのコジェネレータコンテクスト、
すなわち、状態、一般にはいくつかの使用していない入
力値を保持する。
【0020】ディスプレイメモリインターフェースユニ
ット35に入力するように属性バスが選択されると、デ
ィスプレイリストプロセッサ28のコマンドインタープ
リータは属性選択コードをコンテクストレジスタ42の
送る。インタープリータは21のコードを供給し、コン
テクストレジスタ42から21の属性レジスタ値を周期
的に読みだす。この動作はPUSH命令の実行により生
じる。属性選択コードはコンテクストレジスタ93内の
属性マルチプレクサ103に供給される。第1のコード
により属性レジスタ1が選択され、その内容が出力され
る。属性マルチプレクサ103はデータをリードバック
マルチプレクサ44に供給する。第1の属性値は、ディ
スプレイメモリインターフェース35の入力端子に供給
される。ディスプレイリストプロセッサ28のコマンド
インタープリータは属性スタックアドレスジェネレータ
96を制御する。
ット35に入力するように属性バスが選択されると、デ
ィスプレイリストプロセッサ28のコマンドインタープ
リータは属性選択コードをコンテクストレジスタ42の
送る。インタープリータは21のコードを供給し、コン
テクストレジスタ42から21の属性レジスタ値を周期
的に読みだす。この動作はPUSH命令の実行により生
じる。属性選択コードはコンテクストレジスタ93内の
属性マルチプレクサ103に供給される。第1のコード
により属性レジスタ1が選択され、その内容が出力され
る。属性マルチプレクサ103はデータをリードバック
マルチプレクサ44に供給する。第1の属性値は、ディ
スプレイメモリインターフェース35の入力端子に供給
される。ディスプレイリストプロセッサ28のコマンド
インタープリータは属性スタックアドレスジェネレータ
96を制御する。
【0021】さらに、大容量のデータマルチプレクサで
あるリードバックマルチプレクサ44が設けられている
。マルチプレクサ44はデータを多重化してデイスプレ
イメモリインターフェースユニット35に供給し、そこ
からバス18を介してディスプレイメモリ26またはホ
ストプロセッサ14に供給される。リードバックデータ
は、コンテクストレジスタ42、図2の破線で囲んだグ
ラフィックジェネレータ34、およびブロックテクスチ
ャリングおよびコンプレックスクリッピングプロセッサ
30から供給される。ホストプロセッサ14にデータが
供給される場合、データは、ディスプレイメモリインタ
ーフェースユニット35によりFIFOバッファコント
ローラ38、40を介し送られる。グラフィックジェネ
レータ334はリードバックマルチプレクサ44と接続
され、コジェネレータにより種々の描画動作が行なわれ
る。ブロックテクスチャリングおよびコンプレックスク
リッピングプロセッサ30はさらにデータをリードバッ
クマルチプレクサ44に送り、種々のコジェネレータ1
0の動作が行なわれる。ブロックテクスチャリングおよ
びコンプレックスクリッピングプロセッサ30の詳細を
図7に示す。
あるリードバックマルチプレクサ44が設けられている
。マルチプレクサ44はデータを多重化してデイスプレ
イメモリインターフェースユニット35に供給し、そこ
からバス18を介してディスプレイメモリ26またはホ
ストプロセッサ14に供給される。リードバックデータ
は、コンテクストレジスタ42、図2の破線で囲んだグ
ラフィックジェネレータ34、およびブロックテクスチ
ャリングおよびコンプレックスクリッピングプロセッサ
30から供給される。ホストプロセッサ14にデータが
供給される場合、データは、ディスプレイメモリインタ
ーフェースユニット35によりFIFOバッファコント
ローラ38、40を介し送られる。グラフィックジェネ
レータ334はリードバックマルチプレクサ44と接続
され、コジェネレータにより種々の描画動作が行なわれ
る。ブロックテクスチャリングおよびコンプレックスク
リッピングプロセッサ30はさらにデータをリードバッ
クマルチプレクサ44に送り、種々のコジェネレータ1
0の動作が行なわれる。ブロックテクスチャリングおよ
びコンプレックスクリッピングプロセッサ30の詳細を
図7に示す。
【0022】図7において、ブロックテクスチャリング
およびコンプレクッスクリッピングプロセッサ30はコ
ジェネレータ10の関連部分とともに詳細に示される。 ブロックテクスチャリングおよびコンプレクッスクリッ
ピングプロセッサ30は、3つの機能部、すなわちテク
スチャ発生部110、方形クリッピング部111、およ
び結合ロジック部112から成る。
およびコンプレクッスクリッピングプロセッサ30はコ
ジェネレータ10の関連部分とともに詳細に示される。 ブロックテクスチャリングおよびコンプレクッスクリッ
ピングプロセッサ30は、3つの機能部、すなわちテク
スチャ発生部110、方形クリッピング部111、およ
び結合ロジック部112から成る。
【0023】テクスチャ発生部110は、マッピングプ
ロセッサ113とアドレスプロセッサ114を含む。テ
クスチャ機能を実行するために、ビットマップメモリ2
2の次のアドレスx,yがマッププロセッサ113に印
加される。このアドレスが、コジェネレータ10により
ビットマップメモリ22に書かれるべき次のアドレスに
なる。同時に、プログラム可能な、テクスチャパターン
サイズ信号および所望のテクスチャパターンのディスプ
レイメモリ26アドレスがマッピングプロセッサ113
とアドレスプロセッサ114にそれぞれ入力される。テ
クスチャパターンサイズは画素が方形となるようなパラ
メータとして定義され、実際の実施例では、16の倍数
、すなわち16x16,32x32のような画素サイズ
の方形パターンとして定義される。
ロセッサ113とアドレスプロセッサ114を含む。テ
クスチャ機能を実行するために、ビットマップメモリ2
2の次のアドレスx,yがマッププロセッサ113に印
加される。このアドレスが、コジェネレータ10により
ビットマップメモリ22に書かれるべき次のアドレスに
なる。同時に、プログラム可能な、テクスチャパターン
サイズ信号および所望のテクスチャパターンのディスプ
レイメモリ26アドレスがマッピングプロセッサ113
とアドレスプロセッサ114にそれぞれ入力される。テ
クスチャパターンサイズは画素が方形となるようなパラ
メータとして定義され、実際の実施例では、16の倍数
、すなわち16x16,32x32のような画素サイズ
の方形パターンとして定義される。
【0024】この実施例では、マッピングプロセッサ1
13とアドレスプロセッサ114は2重構成になってお
り、いつでも2つのテクスチャパターンを実現可能であ
る。テクスチャパターンサイズとテクスチャパターンア
ドレスが指定されると、マッピングプロセッサ113は
、FIFOバッファ32、33、ディスプレイメモリイ
ンターフェースユニット35およびディスプレイリスト
プロセッサ28を介して、テクスチャパターンが記憶さ
れているアドレスをアクセスする。ディスプレイメモリ
に記憶されるテクスチャパターンの数はいくつであって
もよい。これらのパターンはホストプロセッサ14から
ダウンロードされるか、プログラムによりディスプレイ
メモリ26に記憶される。しかしながら、ある時刻にお
いては、マッピングプロセッサ113により直接アクセ
スされるテクスチャパターンは2つだけである。このア
クセスは適当なアドレスポインタを介して行なわれる。 エリアフィル(領域ぬりつぶし)/円錐/ベクトルデー
タジェネレータ43、記号ジェネレータ45、あるいは
BITBLTジェネレータ47はすべてのプリミティブ
輪郭信号、エリアフィル信号、および関連するクリップ
マスク信号を発生する。これらの信号はデータバスを介
して結合ロジック部112のANDロジック115の一
方の入力端子に供給される。テクスチャパターン信号は
、ディスプレイメモリ26から出力され、ディスプレイ
メモリインターフェースユニット35を介してANDロ
ジック116の他方の入力端子に供給される。ロジック
部112によるプリミティブデータ信号と、プリミティ
ブクリップマスクおよびテクスチャ信号との論理的な結
合結果がテクスチャプリミティブ信号群である。
13とアドレスプロセッサ114は2重構成になってお
り、いつでも2つのテクスチャパターンを実現可能であ
る。テクスチャパターンサイズとテクスチャパターンア
ドレスが指定されると、マッピングプロセッサ113は
、FIFOバッファ32、33、ディスプレイメモリイ
ンターフェースユニット35およびディスプレイリスト
プロセッサ28を介して、テクスチャパターンが記憶さ
れているアドレスをアクセスする。ディスプレイメモリ
に記憶されるテクスチャパターンの数はいくつであって
もよい。これらのパターンはホストプロセッサ14から
ダウンロードされるか、プログラムによりディスプレイ
メモリ26に記憶される。しかしながら、ある時刻にお
いては、マッピングプロセッサ113により直接アクセ
スされるテクスチャパターンは2つだけである。このア
クセスは適当なアドレスポインタを介して行なわれる。 エリアフィル(領域ぬりつぶし)/円錐/ベクトルデー
タジェネレータ43、記号ジェネレータ45、あるいは
BITBLTジェネレータ47はすべてのプリミティブ
輪郭信号、エリアフィル信号、および関連するクリップ
マスク信号を発生する。これらの信号はデータバスを介
して結合ロジック部112のANDロジック115の一
方の入力端子に供給される。テクスチャパターン信号は
、ディスプレイメモリ26から出力され、ディスプレイ
メモリインターフェースユニット35を介してANDロ
ジック116の他方の入力端子に供給される。ロジック
部112によるプリミティブデータ信号と、プリミティ
ブクリップマスクおよびテクスチャ信号との論理的な結
合結果がテクスチャプリミティブ信号群である。
【0025】1つのテクスチャパターンしか必要無い場
合、プリミティブデータあるいは記号は、単一のテクス
チャパターンと結合される。2つのテクスチャパターン
が指定された場合、これらのパターンを別個に実施して
もよいし、組み合わせて使用してもよい。例えば、第1
のテクスチャパターンが水平ラインを構成し、第2のテ
クスチャパターンが垂直ラインを構成する場合、この2
つのテクスチャパターンをそれぞれ別個に異なプリミテ
ィブデータに印加して水平ラインテクスチャパターンを
有するプリミティブデータと、垂直ラインデータを有す
るプリミティブデータを発生することができる。この2
つのテクスチャパターンをさらに組み合わせることもで
きる。この場合には、縞模様のテクスチャパターンが得
られる。テクスチャパターン無しでプリミティブデータ
を描画することもできる。この場合には、2つの直接ア
クセスされたテクスチャパターンを用いて最高4つのテ
クスチャを出力することができる。エリアフィル/円錐
/ベクトルジェネレータ43、記号ジェネレータ45、
BITBLT47からの出力信号は、発生されたプリミ
ティブデータ以外の出力信号および画素信号を無効にす
るクリップマスク信号を含むようにすればさらによい。 従って、テクスチャパターンはプリミティブデータある
いは記号データ内にのみ現われる。
合、プリミティブデータあるいは記号は、単一のテクス
チャパターンと結合される。2つのテクスチャパターン
が指定された場合、これらのパターンを別個に実施して
もよいし、組み合わせて使用してもよい。例えば、第1
のテクスチャパターンが水平ラインを構成し、第2のテ
クスチャパターンが垂直ラインを構成する場合、この2
つのテクスチャパターンをそれぞれ別個に異なプリミテ
ィブデータに印加して水平ラインテクスチャパターンを
有するプリミティブデータと、垂直ラインデータを有す
るプリミティブデータを発生することができる。この2
つのテクスチャパターンをさらに組み合わせることもで
きる。この場合には、縞模様のテクスチャパターンが得
られる。テクスチャパターン無しでプリミティブデータ
を描画することもできる。この場合には、2つの直接ア
クセスされたテクスチャパターンを用いて最高4つのテ
クスチャを出力することができる。エリアフィル/円錐
/ベクトルジェネレータ43、記号ジェネレータ45、
BITBLT47からの出力信号は、発生されたプリミ
ティブデータ以外の出力信号および画素信号を無効にす
るクリップマスク信号を含むようにすればさらによい。 従って、テクスチャパターンはプリミティブデータある
いは記号データ内にのみ現われる。
【0026】エリアフィル/円錐/ベクトルデータジェ
ネレータ43がアウトラインのプリミティブデータ、す
なわち、輪郭のみで実線ではないプリミティブデータを
出力するようにすれば、テクスチャパターンはこのアウ
トラインのみに印加すればよい。
ネレータ43がアウトラインのプリミティブデータ、す
なわち、輪郭のみで実線ではないプリミティブデータを
出力するようにすれば、テクスチャパターンはこのアウ
トラインのみに印加すればよい。
【0027】例えば、円錐ジェネレータ43が、楕円の
アウトラインプリミティブデータを発生する場合、この
プリミティブデータを水平ラインから成るテクスチャパ
ターンと組み合わせることにより、破線で描画された楕
円が得られる。
アウトラインプリミティブデータを発生する場合、この
プリミティブデータを水平ラインから成るテクスチャパ
ターンと組み合わせることにより、破線で描画された楕
円が得られる。
【0028】コジェネレータ10はプリミティブデータ
をディスプレイメモリ26に1または0のパターンとし
て描画することができる。この結果、テクスチャパター
ンを用いて、任意の形状の、あるいは”合成”したクリ
ップマスクデータをつくることができる。コンプレック
スクリッピングは、円、パイ形状、多角形等のランダム
な形状の領域ならびに方形領域に対する画像のクリップ
である。このクリッピング機能により、ディスプレイ上
に、種々のウインドウをランダムに重ね合わすことがで
きる。コンプレックスクリッピングは、1回の動作で非
方形領域を更新することができる。
をディスプレイメモリ26に1または0のパターンとし
て描画することができる。この結果、テクスチャパター
ンを用いて、任意の形状の、あるいは”合成”したクリ
ップマスクデータをつくることができる。コンプレック
スクリッピングは、円、パイ形状、多角形等のランダム
な形状の領域ならびに方形領域に対する画像のクリップ
である。このクリッピング機能により、ディスプレイ上
に、種々のウインドウをランダムに重ね合わすことがで
きる。コンプレックスクリッピングは、1回の動作で非
方形領域を更新することができる。
【0029】ブロックテクスチャリングおよびコンプレ
ックスクリッピングプロセッサ42の他の機能は、方形
クリッピングである。このブロックテクスチャリングお
よびコンプレックスクリッピングプロセッサ42は2つ
のモードの方形クリッピングが可能である。このクリッ
ピングは内側クリッピングと外側クリッピングである。 方形クリップ部111は、レジスタ群116a、116
b,117a、117bを有し、ウインドウのような方
形クリップウインドウのサイズとロケーションをプログ
ラム可能に定義する。方形クリップウインドウは左上隅
と右下隅の2点により定義される。この結果、xおよび
y方向にそれぞれ0無いし4095画素の範囲の方形領
域が定義される。コジェネレータ10は自動的に次のビ
ットマップメモリ22アドレスを方形クリップレジスタ
86ー92に入力する。
ックスクリッピングプロセッサ42の他の機能は、方形
クリッピングである。このブロックテクスチャリングお
よびコンプレックスクリッピングプロセッサ42は2つ
のモードの方形クリッピングが可能である。このクリッ
ピングは内側クリッピングと外側クリッピングである。 方形クリップ部111は、レジスタ群116a、116
b,117a、117bを有し、ウインドウのような方
形クリップウインドウのサイズとロケーションをプログ
ラム可能に定義する。方形クリップウインドウは左上隅
と右下隅の2点により定義される。この結果、xおよび
y方向にそれぞれ0無いし4095画素の範囲の方形領
域が定義される。コジェネレータ10は自動的に次のビ
ットマップメモリ22アドレスを方形クリップレジスタ
86ー92に入力する。
【0030】方形クリッピングがアクティブになると、
コジェネレータ10により制御される方形マスクジェネ
レータ118はプリミティブデータを描画する際に自動
的にクリップする。描画アドレスが変化するにつれ、コ
ジェネレータ10は連続的に現在のビットマップメモリ
22アドレスと、クリッピングウインドウ境界により定
義されたx,y画素アドレスとを比較する。もし、画素
がクリップされる領域の要素(クリップウインドウ内の
画素)であれば、コジェネレータ10はこれらの画素を
無視して処理を続行する。画素がクリップされた領域の
要素である場合には、コジェネレータ10はビットマッ
プメモリ22に書き、プリミティブデータの処理続行す
る。これからわかるように、コジェネレータ10で行な
われた描画動作はクリッピングウインドウを複数回入力
あるいは出力可能であることがわかる。この機能を実行
するために、方形マスクジェネレータ118から出力さ
れた方形クリップ信号はテクスチャ発生部110から出
力されたテクスチャプリミティブ信号と、ANDロジッ
ク115により結合される。この結果、テクスチャプリ
ミティブデータの上に方形クリップウインドウが重ねら
れる。
コジェネレータ10により制御される方形マスクジェネ
レータ118はプリミティブデータを描画する際に自動
的にクリップする。描画アドレスが変化するにつれ、コ
ジェネレータ10は連続的に現在のビットマップメモリ
22アドレスと、クリッピングウインドウ境界により定
義されたx,y画素アドレスとを比較する。もし、画素
がクリップされる領域の要素(クリップウインドウ内の
画素)であれば、コジェネレータ10はこれらの画素を
無視して処理を続行する。画素がクリップされた領域の
要素である場合には、コジェネレータ10はビットマッ
プメモリ22に書き、プリミティブデータの処理続行す
る。これからわかるように、コジェネレータ10で行な
われた描画動作はクリッピングウインドウを複数回入力
あるいは出力可能であることがわかる。この機能を実行
するために、方形マスクジェネレータ118から出力さ
れた方形クリップ信号はテクスチャ発生部110から出
力されたテクスチャプリミティブ信号と、ANDロジッ
ク115により結合される。この結果、テクスチャプリ
ミティブデータの上に方形クリップウインドウが重ねら
れる。
【0031】この発明によれば、クリッピング機能と方
形クリップ機能はともに、一般的な外側クリッピングあ
るいは内側クリッピングの方法により行なわれる。すな
わち、プリミティブデータの外の画素をクリップするか
、プリミティブデータ内の画素をクリップすることによ
り行なわれる。これは、方形クリップ機能に対してマス
ク機能を反転させる、プログラム可能なクリップイン/
クリップアウト制御属性データにより、あるいは、コン
プレクッスクリップウィンドウに対して上述した描画1
および描画0のパターンの発生を反転することにより行
なわれる。
形クリップ機能はともに、一般的な外側クリッピングあ
るいは内側クリッピングの方法により行なわれる。すな
わち、プリミティブデータの外の画素をクリップするか
、プリミティブデータ内の画素をクリップすることによ
り行なわれる。これは、方形クリップ機能に対してマス
ク機能を反転させる、プログラム可能なクリップイン/
クリップアウト制御属性データにより、あるいは、コン
プレクッスクリップウィンドウに対して上述した描画1
および描画0のパターンの発生を反転することにより行
なわれる。
【0032】”ピッキング”機能を得るために、方形ク
リップ機能はさらにプリミティブデータとクリップウイ
ンドウ境界とを比較する手段を有している。コジェネレ
ータ10はプリミティブデータを処理すると同時に方形
クリップマスク機能を実行する。コジェネレータ10は
特定のプリミティブデータがクリップウインドウ内にあ
るかどうか判断する。この機能を用いて自動的にクリッ
プウインドウを圧縮伸張しプリミティブデータのサイズ
に合わせることができる。この機能は、ステータスレジ
スタ119の出力信号により示される。
リップ機能はさらにプリミティブデータとクリップウイ
ンドウ境界とを比較する手段を有している。コジェネレ
ータ10はプリミティブデータを処理すると同時に方形
クリップマスク機能を実行する。コジェネレータ10は
特定のプリミティブデータがクリップウインドウ内にあ
るかどうか判断する。この機能を用いて自動的にクリッ
プウインドウを圧縮伸張しプリミティブデータのサイズ
に合わせることができる。この機能は、ステータスレジ
スタ119の出力信号により示される。
【0033】グラフィックジェネレータ34は、コジェ
ネレータのプリミティブデータおよび記号を発生し、ビ
ットブロック転送(BITBLT)を行なう。グラフィ
ックジェネレータ34は、図8および図9に示すマルチ
プロセススケジューラ46と、図10に示すコマンドジ
ェネレータ41と、図11に示すエリアフィル/円錐/
ベクトルデータジェネレータ43と、図12に示す記号
ジェネレータと、図13に示すBITBLTアドレスジ
ェネレータ47を有する。エリアフィル/円錐/ベクト
ルデータジェネレータ43は、ポリライン、方形、円、
楕円、および多角形およびエリアフィルのようなグラフ
ィックプリミティブデータを表わすデジタル信号を生成
する。これらのプリミティブ信号は、記号ジェネレータ
45により発生される英数字および他の記号と結合され
、さらに、ブロックテクスチャリングおよびコンプレッ
クスクリッピングプロセッサ30により発生された第3
信号群と結合され最終の信号群が生成され、BITBL
Tアドレスジェネレータ47によりビットマップメモリ
22の特定の画素アドレスに転送される。一般には、ビ
ットマップメモリ22は各画素ロケーションに対して定
義されるグラフィックディスプレイの色と強度を設定す
る多重メモリ層を有している。
ネレータのプリミティブデータおよび記号を発生し、ビ
ットブロック転送(BITBLT)を行なう。グラフィ
ックジェネレータ34は、図8および図9に示すマルチ
プロセススケジューラ46と、図10に示すコマンドジ
ェネレータ41と、図11に示すエリアフィル/円錐/
ベクトルデータジェネレータ43と、図12に示す記号
ジェネレータと、図13に示すBITBLTアドレスジ
ェネレータ47を有する。エリアフィル/円錐/ベクト
ルデータジェネレータ43は、ポリライン、方形、円、
楕円、および多角形およびエリアフィルのようなグラフ
ィックプリミティブデータを表わすデジタル信号を生成
する。これらのプリミティブ信号は、記号ジェネレータ
45により発生される英数字および他の記号と結合され
、さらに、ブロックテクスチャリングおよびコンプレッ
クスクリッピングプロセッサ30により発生された第3
信号群と結合され最終の信号群が生成され、BITBL
Tアドレスジェネレータ47によりビットマップメモリ
22の特定の画素アドレスに転送される。一般には、ビ
ットマップメモリ22は各画素ロケーションに対して定
義されるグラフィックディスプレイの色と強度を設定す
る多重メモリ層を有している。
【0034】マルチプロセススケジューラ46はコジェ
ネレータ10の各構成要素間のデータ転送を制御する。 マルチプロセススケジューラは、分岐スケジューラ手法
を用いて、複数の動作を制御し、その動作にソフトウエ
アオペレーティングシステムのある特性を印加する。こ
の結果、種々のコジェネレータ10のシーケンス間の独
立性が促進され、装置間通信の機構が得られる。
ネレータ10の各構成要素間のデータ転送を制御する。 マルチプロセススケジューラは、分岐スケジューラ手法
を用いて、複数の動作を制御し、その動作にソフトウエ
アオペレーティングシステムのある特性を印加する。こ
の結果、種々のコジェネレータ10のシーケンス間の独
立性が促進され、装置間通信の機構が得られる。
【0035】図8にこの発明のハードウエアマルチプロ
セススケジューラ46の機能特性を示す。図8に示すよ
うに、スケジューラ46は、グラフィックジェネレータ
34およびブロックテクスチャリングおよびクリップマ
スクジェネレータ30から成るいくつかのデータ発生/
処理および制御サブシステムへ、およびこれらのシステ
ムを通過するデータの転送制御を行なう。この制御には
、現在の動作で要求されている入力信号がすべて供給さ
れたとき、6つの制御されたサブシステムのうちの1つ
以上をスケジューリング(イネーブルにする)し、他の
サブシステムが現在の出力信号を利用しているときは、
制御されているサブシステムを阻止(ディスエーブルに
する)機能を含む。
セススケジューラ46の機能特性を示す。図8に示すよ
うに、スケジューラ46は、グラフィックジェネレータ
34およびブロックテクスチャリングおよびクリップマ
スクジェネレータ30から成るいくつかのデータ発生/
処理および制御サブシステムへ、およびこれらのシステ
ムを通過するデータの転送制御を行なう。この制御には
、現在の動作で要求されている入力信号がすべて供給さ
れたとき、6つの制御されたサブシステムのうちの1つ
以上をスケジューリング(イネーブルにする)し、他の
サブシステムが現在の出力信号を利用しているときは、
制御されているサブシステムを阻止(ディスエーブルに
する)機能を含む。
【0036】動作が開始されると、コジェネレータ10
から受信した命令により、ハードウエアスケジューラ4
6は、各制御されたサブシステムがどういう動作をいつ
行なうかを認識する。各サブシステムは、ローカル入力
条件が一致し、現在の出力信号が必要なくなった時点で
動作を開始することができる。すなわち、各制御される
装置は全体のタスクから切り離されるので、6つの並列
制御されるサブシステムの動作を続行することができる
。この手法を用いることにより、同期要求/認識ハンド
シェークの必要性およびオペレーション間のデータ転送
期間におけるオーバヘッドを無くすことができる。この
発明のハードウエアマルチプロセススケジューラ46は
、制御されるサブシステムが新しいデータを必要になっ
たとき、イネーブルストローブ信号およびロードストロ
ーブ信号に応答する結合ロジック機能を有している。
から受信した命令により、ハードウエアスケジューラ4
6は、各制御されたサブシステムがどういう動作をいつ
行なうかを認識する。各サブシステムは、ローカル入力
条件が一致し、現在の出力信号が必要なくなった時点で
動作を開始することができる。すなわち、各制御される
装置は全体のタスクから切り離されるので、6つの並列
制御されるサブシステムの動作を続行することができる
。この手法を用いることにより、同期要求/認識ハンド
シェークの必要性およびオペレーション間のデータ転送
期間におけるオーバヘッドを無くすことができる。この
発明のハードウエアマルチプロセススケジューラ46は
、制御されるサブシステムが新しいデータを必要になっ
たとき、イネーブルストローブ信号およびロードストロ
ーブ信号に応答する結合ロジック機能を有している。
【0037】図示した実施例におけるコマンドと制御を
容易にするために、ハードウエアスケジューラ46は制
御インターフェースバス121を有している。制御イン
ターフェースバス121は、命令デコーダ122からの
コマンド信号および制御信号と、イメージバスコマンド
ジェネレータ41、エリアフィル/円錐/ベクトルデー
タジェネレータ43、記号ジェネレータ45、BITB
LTジェネレータ47、デュアルブロックテクスチャリ
ング/コンプレックスクリッピング回路30、および6
つのタスクコントロールユニット123から転送された
ステータス情報を転送する。制御される各ユニットに対
して同様のステータスワードを利用する各タスクコント
ロールユニットによりコマンド信号および制御信号が印
加される。この場合、フラッグは各ユニットが新しい入
力信号を受け付ける準備ができたこを示すかあるいは、
新しいデータを出力端子から出力する準備ができたこと
を示す。このコンプレックス並列処理は、他のコジェネ
レータからのデータ転送あるいは他のコジェネレータへ
のデータ転送が要求されるまで、シーケンス制御される
ユニットがローカル処理を行なわなくてすむ環境を作る
ことにより達成される。この発明では、すべての制御さ
れるユニットが一緒に動作するようにするために各シー
ケンス制御されるユニットの状態の可能な組合せを考慮
する必要がない。 図9の機能ブロック図において、
各6つのタスクコントロールユニット123は4つのサ
ブ回路で構成され全体として制御手段を構成している。 すなわち、ソースステータスモニタ124、デスティネ
ーションステータスモニタ125、完了ステータスモニ
タ126、およびマクロシーケンスステートレジスタ1
28とで構成される。ソースステータスモニタ124は
、処理すべき入力信号が制御されるサブシステムに入力
されたことを示す。デスティネーションステータスモニ
タ125はデスティネーションが処理データを受け取れ
る状態にあるかどうかを示す。さらに、完了ステータス
モニタ126は制御されるサブシステムの現在の処理動
作が完了したかどうかを示す。これら3つのステータス
条件は、出力ロジックユニット127において結合され
、制御対象であるグラフィックサブシステムをイネーブ
ルにする。多重入出力動作を必要とする場合には、マク
ロシーケンスステートレジスタ128はこれらの動作を
監視して、データの不完全な処理あるいはデータの過剰
処理が無いようにする。
容易にするために、ハードウエアスケジューラ46は制
御インターフェースバス121を有している。制御イン
ターフェースバス121は、命令デコーダ122からの
コマンド信号および制御信号と、イメージバスコマンド
ジェネレータ41、エリアフィル/円錐/ベクトルデー
タジェネレータ43、記号ジェネレータ45、BITB
LTジェネレータ47、デュアルブロックテクスチャリ
ング/コンプレックスクリッピング回路30、および6
つのタスクコントロールユニット123から転送された
ステータス情報を転送する。制御される各ユニットに対
して同様のステータスワードを利用する各タスクコント
ロールユニットによりコマンド信号および制御信号が印
加される。この場合、フラッグは各ユニットが新しい入
力信号を受け付ける準備ができたこを示すかあるいは、
新しいデータを出力端子から出力する準備ができたこと
を示す。このコンプレックス並列処理は、他のコジェネ
レータからのデータ転送あるいは他のコジェネレータへ
のデータ転送が要求されるまで、シーケンス制御される
ユニットがローカル処理を行なわなくてすむ環境を作る
ことにより達成される。この発明では、すべての制御さ
れるユニットが一緒に動作するようにするために各シー
ケンス制御されるユニットの状態の可能な組合せを考慮
する必要がない。 図9の機能ブロック図において、
各6つのタスクコントロールユニット123は4つのサ
ブ回路で構成され全体として制御手段を構成している。 すなわち、ソースステータスモニタ124、デスティネ
ーションステータスモニタ125、完了ステータスモニ
タ126、およびマクロシーケンスステートレジスタ1
28とで構成される。ソースステータスモニタ124は
、処理すべき入力信号が制御されるサブシステムに入力
されたことを示す。デスティネーションステータスモニ
タ125はデスティネーションが処理データを受け取れ
る状態にあるかどうかを示す。さらに、完了ステータス
モニタ126は制御されるサブシステムの現在の処理動
作が完了したかどうかを示す。これら3つのステータス
条件は、出力ロジックユニット127において結合され
、制御対象であるグラフィックサブシステムをイネーブ
ルにする。多重入出力動作を必要とする場合には、マク
ロシーケンスステートレジスタ128はこれらの動作を
監視して、データの不完全な処理あるいはデータの過剰
処理が無いようにする。
【0038】実際には、制御されるタスクユニットが新
しいデータを受け取ると、スケジューラ46は、正当な
入力レディ信号がコジェネレータサブシステムから受信
されたかどうか判断する。受信した場合には、そのユニ
ットはイネーブルとなり、バス18からあるいはサブシ
ステム間の他のデータインターフェースからデータが入
力される。データ入力サイクルの終わりで、サブシステ
ムは、データバス121および命令デコーダ122によ
り受信した特定の命令に従って、受信したデータの処理
を開始する。入力データを処理した結果を他のサブシス
テムに出力できる状態になると、処理ユニットは”出力
レディ”のフラッグを転送する。1つの出力信号を出力
するのに複数の入力信号が必要となる。これらの入力信
号は、同時に入力してもよいし、順次シーケンスに従っ
て入力してもよい。所定のサブシステムのマイクロシー
ケンス動作要求されたすべての出力データの処理が完了
すると、処理ユニットは”完了”フラッグを送信する。 多重サブシステムマイクロシーケンスを用いれば現在の
コジェネレータの命令のマクロシーケンスを完了させる
ことができる。
しいデータを受け取ると、スケジューラ46は、正当な
入力レディ信号がコジェネレータサブシステムから受信
されたかどうか判断する。受信した場合には、そのユニ
ットはイネーブルとなり、バス18からあるいはサブシ
ステム間の他のデータインターフェースからデータが入
力される。データ入力サイクルの終わりで、サブシステ
ムは、データバス121および命令デコーダ122によ
り受信した特定の命令に従って、受信したデータの処理
を開始する。入力データを処理した結果を他のサブシス
テムに出力できる状態になると、処理ユニットは”出力
レディ”のフラッグを転送する。1つの出力信号を出力
するのに複数の入力信号が必要となる。これらの入力信
号は、同時に入力してもよいし、順次シーケンスに従っ
て入力してもよい。所定のサブシステムのマイクロシー
ケンス動作要求されたすべての出力データの処理が完了
すると、処理ユニットは”完了”フラッグを送信する。 多重サブシステムマイクロシーケンスを用いれば現在の
コジェネレータの命令のマクロシーケンスを完了させる
ことができる。
【0039】データを送るべきユニットが正当な入力レ
ディステータスを出力しているとき、適当なタスクコン
トロールユニット123によりイネーブルになったデス
ティネーションサブシステムはクロック遅延無しに非同
期でデータを受取り、必要に応じてそのデータを処理す
る。デスティネーションユニットが正当な入力レディス
テータスを示していないときは、対応するタスク制御ユ
ニットは、マクロレジスタ128に出力レディパルスを
格納し、データ転送がペンディングであることを示す。 いずれの場合にも、受信ユニットが正当な入力レディス
テータスを送ると、非同期でイネーブルとなり、中断さ
れていたデータがそのユニットに転送される。入力レデ
ィ信号は制御されるユニットの現在のレディステータス
を示すフラッグとして機能する。
ディステータスを出力しているとき、適当なタスクコン
トロールユニット123によりイネーブルになったデス
ティネーションサブシステムはクロック遅延無しに非同
期でデータを受取り、必要に応じてそのデータを処理す
る。デスティネーションユニットが正当な入力レディス
テータスを示していないときは、対応するタスク制御ユ
ニットは、マクロレジスタ128に出力レディパルスを
格納し、データ転送がペンディングであることを示す。 いずれの場合にも、受信ユニットが正当な入力レディス
テータスを送ると、非同期でイネーブルとなり、中断さ
れていたデータがそのユニットに転送される。入力レデ
ィ信号は制御されるユニットの現在のレディステータス
を示すフラッグとして機能する。
【0040】図10は、イメージバス(IBUS)コマ
ンドジェネレータ41のブロック図を示す。コマンドジ
ェネレータ41はIBUSコマンドサイクルを実行する
。これらのコマンドサイクルはイメージバス20を介し
てコジェネレータ10により実行されビットマップメモ
リ22に送られる。これらのコマンドサイクルが実行さ
れることにより、ビットマップメモリ22がイニシャラ
イズされるとともに、アクティブとなる。これらのコマ
ンドサイクルは、ホストプロセッサ14の要求によりコ
ジェネレータ10により実行される。これによりホスト
プロセッサ14は使用している特定のグラフィックシス
テムに合うようにビットマップメモリ22を構成するこ
とができる。コマンドジェネレータ41はディスプレイ
メモリインターフェースユニット35からコマンドデー
タを受け取る。コマンドデータは入力レジスタ77にロ
ードされる。コマンドシーケンスコントローラ78は、
データがディスプレイメモリインターフェースユニット
35により受信されたことを認識する。次に、コマンド
シーケンスコントローラ78はコマンドの種類を示す情
報を出力マルチプレサ/レジスタ79に送る。入力レジ
スタ77はコマンドデータを出力レジスタ79に送る。 コマンドデータとコマンドの種類を表わす情報は、出力
レジスタ79で結合されてIBUSインターフェース5
5(図2)に送られる。次に、コマンドシーケンスコン
トローラ78はIBUSインターフェース55に対して
コマンドサイクルを実行するように、イメージバス20
を介して指示する。
ンドジェネレータ41のブロック図を示す。コマンドジ
ェネレータ41はIBUSコマンドサイクルを実行する
。これらのコマンドサイクルはイメージバス20を介し
てコジェネレータ10により実行されビットマップメモ
リ22に送られる。これらのコマンドサイクルが実行さ
れることにより、ビットマップメモリ22がイニシャラ
イズされるとともに、アクティブとなる。これらのコマ
ンドサイクルは、ホストプロセッサ14の要求によりコ
ジェネレータ10により実行される。これによりホスト
プロセッサ14は使用している特定のグラフィックシス
テムに合うようにビットマップメモリ22を構成するこ
とができる。コマンドジェネレータ41はディスプレイ
メモリインターフェースユニット35からコマンドデー
タを受け取る。コマンドデータは入力レジスタ77にロ
ードされる。コマンドシーケンスコントローラ78は、
データがディスプレイメモリインターフェースユニット
35により受信されたことを認識する。次に、コマンド
シーケンスコントローラ78はコマンドの種類を示す情
報を出力マルチプレサ/レジスタ79に送る。入力レジ
スタ77はコマンドデータを出力レジスタ79に送る。 コマンドデータとコマンドの種類を表わす情報は、出力
レジスタ79で結合されてIBUSインターフェース5
5(図2)に送られる。次に、コマンドシーケンスコン
トローラ78はIBUSインターフェース55に対して
コマンドサイクルを実行するように、イメージバス20
を介して指示する。
【0041】図11において、エリアフィル/円錐/ベ
クトルデータジェネレータ43は幾何学的なプリミティ
ブデータを描画するための算術演算を行なう。エリアフ
ィル/円錐/ベクトルデータジェネレータ43は、ベク
トル、方形、円、楕円、多角形、およびエリアフィルの
各データを発生する単一の回路である。このジェネレー
タ43の基本的な構成はデジタルディファレンシャルア
ナライザ(DDA)131であり、DDA131は、動
作中は、x/y座標データの分数(副画素)成分を累算
し、その累算値が画素境界を越えると、信号を発する。 この信号により、システムは、ビットマップメモリ22
内のロードすべき、すなわち描画すべき画素アドレスを
示すx,y座標をインクリメントまたはディクリメント
する。最も一般的な構成では、アナライザ131は、少
なくとも2つのデジタルディファレンシャルマルチプレ
クサ/コンパレータ132に入力データ命令を供給する
入力手段と、算術論理ユニット(ALU)133と、2
つのレジスタおよびカウンタ134a、134bから成
るレジスタファイル134とから成る汎用アーキテクチ
ャを有している。
クトルデータジェネレータ43は幾何学的なプリミティ
ブデータを描画するための算術演算を行なう。エリアフ
ィル/円錐/ベクトルデータジェネレータ43は、ベク
トル、方形、円、楕円、多角形、およびエリアフィルの
各データを発生する単一の回路である。このジェネレー
タ43の基本的な構成はデジタルディファレンシャルア
ナライザ(DDA)131であり、DDA131は、動
作中は、x/y座標データの分数(副画素)成分を累算
し、その累算値が画素境界を越えると、信号を発する。 この信号により、システムは、ビットマップメモリ22
内のロードすべき、すなわち描画すべき画素アドレスを
示すx,y座標をインクリメントまたはディクリメント
する。最も一般的な構成では、アナライザ131は、少
なくとも2つのデジタルディファレンシャルマルチプレ
クサ/コンパレータ132に入力データ命令を供給する
入力手段と、算術論理ユニット(ALU)133と、2
つのレジスタおよびカウンタ134a、134bから成
るレジスタファイル134とから成る汎用アーキテクチ
ャを有している。
【0042】動作中、コンパレータ132はコジェネレ
ータ10によりxおよびyデータを得、レジスタ134
に格納されたxおよびy画素位置と比較する。レジスタ
134aおよびカウンタ134bに格納されたxまたは
yデータのいずれかが、画素境界を越えたことを示して
いるときは、DDA131は次の画素アドレスのための
移動方向制御信号を出力する。この処理は、プリミティ
ブ形状が完成するまで続けられる。この機能を増進させ
るため、領域塗りつぶし発生器43は、パラメトリック
カウンタ135、サイン/コサインフェッチユニット1
36、アドレスカウンタ137および水平ラインジェネ
レータ138を有している。図11に示す構成例では、
システム内で使用される種々の幾何方程式を計算するの
に使用されるサブ関数の解を得る方法に多様性がある。
ータ10によりxおよびyデータを得、レジスタ134
に格納されたxおよびy画素位置と比較する。レジスタ
134aおよびカウンタ134bに格納されたxまたは
yデータのいずれかが、画素境界を越えたことを示して
いるときは、DDA131は次の画素アドレスのための
移動方向制御信号を出力する。この処理は、プリミティ
ブ形状が完成するまで続けられる。この機能を増進させ
るため、領域塗りつぶし発生器43は、パラメトリック
カウンタ135、サイン/コサインフェッチユニット1
36、アドレスカウンタ137および水平ラインジェネ
レータ138を有している。図11に示す構成例では、
システム内で使用される種々の幾何方程式を計算するの
に使用されるサブ関数の解を得る方法に多様性がある。
【0043】記号ジェネレータ45は英数字記号を発生
する。記号/テキストジェネレータ45の詳細ブロック
図を図12に示す。記号/テキストジェンレータ45の
基本的な機能は、ディスプレイメモリインターフェース
ユニット35(図2)から記号コマンドを受取り、記号
および/またはテキスト文字を発生することである。以
下の説明では、記号およびテキスト文字を合わせて単に
記号と呼ぶ。記号が描画されるときは、ブロックテクス
チャリング/コンプレックスクリッパプロセッサ30に
送られる。はじめに、記号ジェネレータが記号を描画す
る際、コジェネレータ10のディスプレイメモリ26内
のフォントテーブルをアクセスする。このディスプレイ
メモリ26は所望の記号を描画するのに必要な情報を有
している。コジェネレータ10はディスプレイメモリイ
ンターフェースユニット35を介してディスプレイメモ
リ26をアクセスする。
する。記号/テキストジェネレータ45の詳細ブロック
図を図12に示す。記号/テキストジェンレータ45の
基本的な機能は、ディスプレイメモリインターフェース
ユニット35(図2)から記号コマンドを受取り、記号
および/またはテキスト文字を発生することである。以
下の説明では、記号およびテキスト文字を合わせて単に
記号と呼ぶ。記号が描画されるときは、ブロックテクス
チャリング/コンプレックスクリッパプロセッサ30に
送られる。はじめに、記号ジェネレータが記号を描画す
る際、コジェネレータ10のディスプレイメモリ26内
のフォントテーブルをアクセスする。このディスプレイ
メモリ26は所望の記号を描画するのに必要な情報を有
している。コジェネレータ10はディスプレイメモリイ
ンターフェースユニット35を介してディスプレイメモ
リ26をアクセスする。
【0044】図12において、記号ジェネレータの入力
データレジスタ150はディスプレイメモリインターフ
ェースユニット35から入力されるデータをすべて格納
するのに使用される。このデータは記号コマンド、記号
発生プログラミングデータ、ディスプレイメモリ26か
らフェッチした記号データ、およびフォントテーブル定
義属性データを含む。このレジスタ150は、記号発生
器45の適当な場所に転送されるまでこの情報を一時的
に保持する。
データレジスタ150はディスプレイメモリインターフ
ェースユニット35から入力されるデータをすべて格納
するのに使用される。このデータは記号コマンド、記号
発生プログラミングデータ、ディスプレイメモリ26か
らフェッチした記号データ、およびフォントテーブル定
義属性データを含む。このレジスタ150は、記号発生
器45の適当な場所に転送されるまでこの情報を一時的
に保持する。
【0045】ディスプレイメモリアドレスジェネレータ
151は、ディスプレイメモリ26をアドレスするのに
記号ジェネレータ45により使用される。記号ジェネレ
ータ45は記号を描画する際、ディスプレイメモリ26
内のフォントテーブルをリードする。ディスプレイメモ
リアドレスジェネレータ151はアドレスカウンタを有
している。このアドレスは現在のフォント値および記号
入力カウンタ値から作られる。フォント値は、フォント
部コントローラ84からディスプレイメモリアドレスジ
ェネレータ151に入力される。上述したように、記号
ジェネレータ45が新しいフォントテーブルから記号を
描画するように指示されると、ジェネレータ45は新フ
ォントテーブル定義属性データをリードする。ディスプ
レイメモリアドレスジェネレータ151は記号ジェネレ
ータ45に読み込まれるときにこれらの値をアドレスす
るのに使用される。記号入力カウンタ値は、記号を描画
する際の記号ジェネレータ45の現在位置を示す。記号
ジェネレータ45は記号を描画する際、ディスプレイメ
モリ26から並列読みだしを行なう。記号が描画される
際、記号ジェネレータ45はその記号の第1ロケーショ
ンから始まる記号データをアドレスし、記号が完了する
まで順次記号データを読み込む。記号入力カウンタ値は
、各記号データ値が読まれるごとにインクリメントされ
る。
151は、ディスプレイメモリ26をアドレスするのに
記号ジェネレータ45により使用される。記号ジェネレ
ータ45は記号を描画する際、ディスプレイメモリ26
内のフォントテーブルをリードする。ディスプレイメモ
リアドレスジェネレータ151はアドレスカウンタを有
している。このアドレスは現在のフォント値および記号
入力カウンタ値から作られる。フォント値は、フォント
部コントローラ84からディスプレイメモリアドレスジ
ェネレータ151に入力される。上述したように、記号
ジェネレータ45が新しいフォントテーブルから記号を
描画するように指示されると、ジェネレータ45は新フ
ォントテーブル定義属性データをリードする。ディスプ
レイメモリアドレスジェネレータ151は記号ジェネレ
ータ45に読み込まれるときにこれらの値をアドレスす
るのに使用される。記号入力カウンタ値は、記号を描画
する際の記号ジェネレータ45の現在位置を示す。記号
ジェネレータ45は記号を描画する際、ディスプレイメ
モリ26から並列読みだしを行なう。記号が描画される
際、記号ジェネレータ45はその記号の第1ロケーショ
ンから始まる記号データをアドレスし、記号が完了する
まで順次記号データを読み込む。記号入力カウンタ値は
、各記号データ値が読まれるごとにインクリメントされ
る。
【0046】フォント選択コントローラ152はレジス
タとコンパレータを有している。この主たる機能は、現
在のフォントテーブルを格納し、ディスプレイメモリア
ドレスジェネレータ151に送る。さらにコントローラ
152は記号ジェネレータ28に送られる新しいフォン
トテーブルを比較する。新しいフォントテーブルコード
が現在のコードと異なる場合、フォント選択コントロー
ラ84は記号コントローラに知らせる。このようにして
、記号が新フォントテーブルから描画される前に新しい
フォント定義データを記号ジェネレータ45に読み込む
ことができる。フォント選択コントローラ152はフォ
ントテーブル情報を供給するコンテクストレジスタ42
から属性データを受け取る。
タとコンパレータを有している。この主たる機能は、現
在のフォントテーブルを格納し、ディスプレイメモリア
ドレスジェネレータ151に送る。さらにコントローラ
152は記号ジェネレータ28に送られる新しいフォン
トテーブルを比較する。新しいフォントテーブルコード
が現在のコードと異なる場合、フォント選択コントロー
ラ84は記号コントローラに知らせる。このようにして
、記号が新フォントテーブルから描画される前に新しい
フォント定義データを記号ジェネレータ45に読み込む
ことができる。フォント選択コントローラ152はフォ
ントテーブル情報を供給するコンテクストレジスタ42
から属性データを受け取る。
【0047】タイプライタコントローラ154はコジェ
ネレータ10のタイプライタ機能を制御するロジック回
路を有している。コンテクストレジスタ42はコジェネ
レータ10の属性データを格納し、タイプライタ情報を
タイプライタコントローラ154に送る。この情報は現
在のタイプライタモード、キャリッジリターンコード、
ラインフィードコード、オートラインフィードコード、
タイプライタ方向、自動記号スペーシングなどの情報を
含む。タイプライタコントローラ88は、新しい記号を
描画する際、入力される記号データを監視する。キャリ
ジリターンあるいはラインフィードコードを検出すると
、コントローラ88は記号コントローラ153にそのこ
とを知らせる。コントローラ88はタイプライタの方向
を記号コントローラ153に知らせる。記号が完成した
とき、コントローラ88は記号コントローラ153に対
し、次の記号に対する記号間隔を知らせる。タイプライ
タコントローラ154により、記号コントローラ86は
記号を正しく位置決めすることができ、上述してタイプ
ライタの特徴を得ることができる。
ネレータ10のタイプライタ機能を制御するロジック回
路を有している。コンテクストレジスタ42はコジェネ
レータ10の属性データを格納し、タイプライタ情報を
タイプライタコントローラ154に送る。この情報は現
在のタイプライタモード、キャリッジリターンコード、
ラインフィードコード、オートラインフィードコード、
タイプライタ方向、自動記号スペーシングなどの情報を
含む。タイプライタコントローラ88は、新しい記号を
描画する際、入力される記号データを監視する。キャリ
ジリターンあるいはラインフィードコードを検出すると
、コントローラ88は記号コントローラ153にそのこ
とを知らせる。コントローラ88はタイプライタの方向
を記号コントローラ153に知らせる。記号が完成した
とき、コントローラ88は記号コントローラ153に対
し、次の記号に対する記号間隔を知らせる。タイプライ
タコントローラ154により、記号コントローラ86は
記号を正しく位置決めすることができ、上述してタイプ
ライタの特徴を得ることができる。
【0048】カラーマルチプレクサ155はコンテクス
トレジスタ42から背景および前景のカラー情報を受け
取る。カラーマルチプレクサ155は記号コントローラ
153により制御される。カラーマルチプレクサ155
の出力信号は、ビットマップメモリ出力データレジスタ
156に送られる。この値は、描画する際の記号のカラ
ー値として使用される。上述したように、コジェネレー
タ10は2色の記号を描画することができる。カラーマ
ルチプレクサ155により記号コントローラ153は、
記号が描画されるのか、あるいは背景セルが描画される
のかにより、背景または前景のいずれかを選択する。反
転ビデオ記号が描画されるときは、前景と背景のカラー
が、カラーマルチプレクサ155を用いた記号コントロ
ーラにより逆転される。
トレジスタ42から背景および前景のカラー情報を受け
取る。カラーマルチプレクサ155は記号コントローラ
153により制御される。カラーマルチプレクサ155
の出力信号は、ビットマップメモリ出力データレジスタ
156に送られる。この値は、描画する際の記号のカラ
ー値として使用される。上述したように、コジェネレー
タ10は2色の記号を描画することができる。カラーマ
ルチプレクサ155により記号コントローラ153は、
記号が描画されるのか、あるいは背景セルが描画される
のかにより、背景または前景のいずれかを選択する。反
転ビデオ記号が描画されるときは、前景と背景のカラー
が、カラーマルチプレクサ155を用いた記号コントロ
ーラにより逆転される。
【0049】記号アドレスジェネレータ157は記号が
実際に描画される場所である。記号アドレスジェネレー
タ157は必要に応じてドットマトリクス記号と筆跡コ
ード記号とを描画する。記号アドレスジェネレータ15
7はレジスタ、カウンタ、コンパレータ、およびコント
ローラとを有している。記号アドレスジェネレータ15
7は記号コントローラ153により制御される。記号コ
ントローラ153は記号アドレスジェネレータ157に
対していつ記号および背景セルを描画するか、いつ記号
のスペーシングをするか、いつキャリッジリターンおよ
び/またはラインフィードを行なうかを知らせる。記号
アドレスジェネレータ157は現在の状態を記号コント
ローラ153にフィードバックする。記号アドレスジェ
ネレータ94はタイプライタコントローラ154により
タイプライタの方向を知らされる。記号アドレスジェネ
レータ157はさらに必要に応じて記号の拡大縮小およ
び回転を行なう。
実際に描画される場所である。記号アドレスジェネレー
タ157は必要に応じてドットマトリクス記号と筆跡コ
ード記号とを描画する。記号アドレスジェネレータ15
7はレジスタ、カウンタ、コンパレータ、およびコント
ローラとを有している。記号アドレスジェネレータ15
7は記号コントローラ153により制御される。記号コ
ントローラ153は記号アドレスジェネレータ157に
対していつ記号および背景セルを描画するか、いつ記号
のスペーシングをするか、いつキャリッジリターンおよ
び/またはラインフィードを行なうかを知らせる。記号
アドレスジェネレータ157は現在の状態を記号コント
ローラ153にフィードバックする。記号アドレスジェ
ネレータ94はタイプライタコントローラ154により
タイプライタの方向を知らされる。記号アドレスジェネ
レータ157はさらに必要に応じて記号の拡大縮小およ
び回転を行なう。
【0050】記号コントローラ153は記号ジェネレー
タ45のメインコントローラである。記号コントローラ
153は記号およびテキストジェネレータ45のすべて
の回路が調和して記号を発生するように制御する。すな
わち、パイプラインをフルに活用して、すべての回路が
タスクを同時並行して実行するように、記号およびテキ
ストジェネレータ45の性能を最適化する。記号コント
ローラ153は入力データレジスタにデータをロードす
る。さらに、記号コントローラ153はディスプレイメ
モリアドレスジェネレータ151を制御する。さらに、
記号コントローラ153は記号アドレスジェネレータ1
57とカラーマルチプレクサ90を制御する。記号コン
トローラ153はディスプレイメモリ出力レジスタ15
6にデータをロードする。記号コントローラ153は、
マルチプロセススケジューラ46とテクスチャリング/
クリッパプロセッサ30の双方とハンドシェークする。 記号コントローラ153は記号ジェネレータ157内の
すべての回路からのステータスを監視する。さらに、記
号コントローラ153は、現在のコジェネレータ10の
状態に同調して実行する必要のある多くの機能を定義す
る属性値をコンテクストレジスタ42から入力する。
タ45のメインコントローラである。記号コントローラ
153は記号およびテキストジェネレータ45のすべて
の回路が調和して記号を発生するように制御する。すな
わち、パイプラインをフルに活用して、すべての回路が
タスクを同時並行して実行するように、記号およびテキ
ストジェネレータ45の性能を最適化する。記号コント
ローラ153は入力データレジスタにデータをロードす
る。さらに、記号コントローラ153はディスプレイメ
モリアドレスジェネレータ151を制御する。さらに、
記号コントローラ153は記号アドレスジェネレータ1
57とカラーマルチプレクサ90を制御する。記号コン
トローラ153はディスプレイメモリ出力レジスタ15
6にデータをロードする。記号コントローラ153は、
マルチプロセススケジューラ46とテクスチャリング/
クリッパプロセッサ30の双方とハンドシェークする。 記号コントローラ153は記号ジェネレータ157内の
すべての回路からのステータスを監視する。さらに、記
号コントローラ153は、現在のコジェネレータ10の
状態に同調して実行する必要のある多くの機能を定義す
る属性値をコンテクストレジスタ42から入力する。
【0051】出力レジスタ156は記号ジェネレータ4
5の最終パイプライン段である。記号が描画される際、
記号コントローラ153はディスプレイメモリ出力レジ
スタ156にロードする。ディスプレイメモリ出力レジ
スタ156は、テクスチャリング/クリッパプロセッサ
30に送られる画素アドレスおよびカラー情報を格納す
る。最後に、この情報は、コジェネレータ10によりイ
メージバス20を介して送られ、ビットマップメモリ2
2に書かれる。このビットマップメモリ22から、ビデ
オディスプレイ24に記号および/または文字が上述し
たすべての特徴を使って表示される。
5の最終パイプライン段である。記号が描画される際、
記号コントローラ153はディスプレイメモリ出力レジ
スタ156にロードする。ディスプレイメモリ出力レジ
スタ156は、テクスチャリング/クリッパプロセッサ
30に送られる画素アドレスおよびカラー情報を格納す
る。最後に、この情報は、コジェネレータ10によりイ
メージバス20を介して送られ、ビットマップメモリ2
2に書かれる。このビットマップメモリ22から、ビデ
オディスプレイ24に記号および/または文字が上述し
たすべての特徴を使って表示される。
【0052】BITBLTアドレスジェネレータ47は
ビットマップメモリ22およびディスプレイメモリ26
にイメージデータの方形ブロックを移動するための汎用
機構を提供する。図13は、ビット境界ブロック転送ア
ドレスジェネレータ47すなわちこの発明のBITBL
Tオペレータ47のブロック図である。図13に示すよ
うに、BITBLTオペレータ47は3つの機能ブロッ
ク、すなわちデータ操作手段を含むリード/ライトコマ
ンドシーケンサ161、アドレスジェネレータ162、
および64ビットデータ路163から成る。機能的には
、リード/ライトコマンドシーケンサ161は、外部メ
モリサイクルの全要求信号をディスプレイメモリ26と
ビットマップメモリ22に発生する。ワード単位の転送
の場合には1回のリード/ライトサイクルしか無いが、
ワード単位でない転送の場合には、境界の例外が含まれ
ることになるので、必要なデータを入力または出力する
のに、さらにサイクルを必要とする。例えば、各水平方
向にスキャンされるラインの最初のデスティネーション
ワードを作るには2つのソースワードからのデータが必
要となる。リードおよびライトサイクルの制御信号を発
生する個々のマイクロシーケンスを制御するマクロシー
ケンスはリード/リード/ライトになる。また、1つの
ソースワードからのデータを2つのデスティネーション
ワードに読み込んだりする場合もありえる。この場合、
マクロシーケンスはリード/ライト/ライトとなる。実
際には、ソースデータとデスティネーションデータとの
間の任意のビット境界マッピングを行なうには、1回ま
たは2回のリードおよびライトの並び替えが必要である
。このため、リード/ライトコマンドシーケンサ161
は、現在のマクロサイクルが2つのソースワードまたは
2つのデスティネーションワードを必要としているかど
うかを示す2つのフラッグをアドレスジェネレータ16
3から入力する。
ビットマップメモリ22およびディスプレイメモリ26
にイメージデータの方形ブロックを移動するための汎用
機構を提供する。図13は、ビット境界ブロック転送ア
ドレスジェネレータ47すなわちこの発明のBITBL
Tオペレータ47のブロック図である。図13に示すよ
うに、BITBLTオペレータ47は3つの機能ブロッ
ク、すなわちデータ操作手段を含むリード/ライトコマ
ンドシーケンサ161、アドレスジェネレータ162、
および64ビットデータ路163から成る。機能的には
、リード/ライトコマンドシーケンサ161は、外部メ
モリサイクルの全要求信号をディスプレイメモリ26と
ビットマップメモリ22に発生する。ワード単位の転送
の場合には1回のリード/ライトサイクルしか無いが、
ワード単位でない転送の場合には、境界の例外が含まれ
ることになるので、必要なデータを入力または出力する
のに、さらにサイクルを必要とする。例えば、各水平方
向にスキャンされるラインの最初のデスティネーション
ワードを作るには2つのソースワードからのデータが必
要となる。リードおよびライトサイクルの制御信号を発
生する個々のマイクロシーケンスを制御するマクロシー
ケンスはリード/リード/ライトになる。また、1つの
ソースワードからのデータを2つのデスティネーション
ワードに読み込んだりする場合もありえる。この場合、
マクロシーケンスはリード/ライト/ライトとなる。実
際には、ソースデータとデスティネーションデータとの
間の任意のビット境界マッピングを行なうには、1回ま
たは2回のリードおよびライトの並び替えが必要である
。このため、リード/ライトコマンドシーケンサ161
は、現在のマクロサイクルが2つのソースワードまたは
2つのデスティネーションワードを必要としているかど
うかを示す2つのフラッグをアドレスジェネレータ16
3から入力する。
【0053】コジェネレータ10の上述した部分の詳細
な記述は、同時係属出願した、1990年_月にファイ
ルした米国出願番号__の”デュアルプログラマブルテ
クスチャリングおよびコンプレックスクリッピングおよ
びグラフィック描画プロセッサ”、1990年_月にフ
ァイルした米国出願番号__の”グラフィック描画プロ
セッサにおけるデュアルハードウエアチャンネルおよび
ハードウエアコンテクストスイッチング”、1990年
_月にファイルした米国出願番号__の”グラフィック
描画プロセッサにおける並列汎用DMA処理”、199
0年_月にファイルした、米国出願番号__の”グラフ
ィック描画プロセッサにおけるハードウエアビットブロ
ック転送オペレータ”、1990年_月にファイルした
米国出願番号__の”グラフィックプロセッサにおける
ハードウエア記号およびテキストジェネレータ”、19
90年_月にファイルした米国出願番号__の”グラフ
ィック描画プロセッサにおけるハードウエアマルチプロ
セススケジューラ”(以上、発明者:ジョン、エム、ピ
ーズリー、およびジェフリー、シー、マラカーン)に記
載されている。
な記述は、同時係属出願した、1990年_月にファイ
ルした米国出願番号__の”デュアルプログラマブルテ
クスチャリングおよびコンプレックスクリッピングおよ
びグラフィック描画プロセッサ”、1990年_月にフ
ァイルした米国出願番号__の”グラフィック描画プロ
セッサにおけるデュアルハードウエアチャンネルおよび
ハードウエアコンテクストスイッチング”、1990年
_月にファイルした米国出願番号__の”グラフィック
描画プロセッサにおける並列汎用DMA処理”、199
0年_月にファイルした、米国出願番号__の”グラフ
ィック描画プロセッサにおけるハードウエアビットブロ
ック転送オペレータ”、1990年_月にファイルした
米国出願番号__の”グラフィックプロセッサにおける
ハードウエア記号およびテキストジェネレータ”、19
90年_月にファイルした米国出願番号__の”グラフ
ィック描画プロセッサにおけるハードウエアマルチプロ
セススケジューラ”(以上、発明者:ジョン、エム、ピ
ーズリー、およびジェフリー、シー、マラカーン)に記
載されている。
【0054】
【発明の効果】以上述べたごとく、この発明のマルチフ
ァンクションコジェネレータ10はグラフィック描画プ
ロセッサに使用して有用な新規で独特のシステムである
。マルチファンクションコジェネレータ10は図形プリ
ミティブデータ、記号、英数字等を発生する複数のプロ
セッサと、ビットブロック転送オペレータと、ブロック
テクスチャリングおよびコンプレックスクリップマスク
プロセッサを有する。これらの機能はマルチプロセスケ
ジューラにより同期制御される。これらのプロセッサは
すべてハードウエアで構成されるので、非常に高速であ
る。また、コジェネレータ10には大容量のプログラマ
ブルメモリ、デュアルチャンネル入力バッファ、および
コンテクストレジスタを備えているので、種々のプログ
ラム可能な機能を外部から容易にプログラムできる。 コジェネレータ10は汎用のプログラミング機能を有し
ている。コジェネレータ10はさらにデュアルチャンネ
ル能力を有しており、一方のチャンネルを他方のチャン
ネルより優先度を高くすることにより、データの入力と
プログラム命令の入力を同時に処理することができ、軍
用指揮統制システムおよび航空管制システムのような高
速グラフィックシステムに使用することによりコジェネ
レータ10の性能を高めることができる。
ァンクションコジェネレータ10はグラフィック描画プ
ロセッサに使用して有用な新規で独特のシステムである
。マルチファンクションコジェネレータ10は図形プリ
ミティブデータ、記号、英数字等を発生する複数のプロ
セッサと、ビットブロック転送オペレータと、ブロック
テクスチャリングおよびコンプレックスクリップマスク
プロセッサを有する。これらの機能はマルチプロセスケ
ジューラにより同期制御される。これらのプロセッサは
すべてハードウエアで構成されるので、非常に高速であ
る。また、コジェネレータ10には大容量のプログラマ
ブルメモリ、デュアルチャンネル入力バッファ、および
コンテクストレジスタを備えているので、種々のプログ
ラム可能な機能を外部から容易にプログラムできる。 コジェネレータ10は汎用のプログラミング機能を有し
ている。コジェネレータ10はさらにデュアルチャンネ
ル能力を有しており、一方のチャンネルを他方のチャン
ネルより優先度を高くすることにより、データの入力と
プログラム命令の入力を同時に処理することができ、軍
用指揮統制システムおよび航空管制システムのような高
速グラフィックシステムに使用することによりコジェネ
レータ10の性能を高めることができる。
【0055】以上、ハードエウアによる高速グラフィッ
ク描画機能ならびに汎用プログラマブルグラフィック描
画機能を行なう新規で改良されたグラフィックプロセッ
サについて述べた。なお、上述の実施例は、この発明の
原理にもとずく多くの応用例の特定の例を示したに過ぎ
ない。従って、当業者には、この発明の範囲を逸脱しな
い範囲で種々変形実施可能である。
ク描画機能ならびに汎用プログラマブルグラフィック描
画機能を行なう新規で改良されたグラフィックプロセッ
サについて述べた。なお、上述の実施例は、この発明の
原理にもとずく多くの応用例の特定の例を示したに過ぎ
ない。従って、当業者には、この発明の範囲を逸脱しな
い範囲で種々変形実施可能である。
【図1】この発明によりその一部が形成されるデュアル
チャンネルマルチファンクションコジェネレータを組み
込んだシステムの基本ブロック図。
チャンネルマルチファンクションコジェネレータを組み
込んだシステムの基本ブロック図。
【図2】この発明のマルチファンクションコジェネレー
タの詳細ブロック図。
タの詳細ブロック図。
【図3】図2のコジェネレータのデュアルチャンネルF
IFOコントローラのブロック図。
IFOコントローラのブロック図。
【図4】図2のコジェネレータのディスプレイメモリイ
ンターフェースユニットのブロック図。
ンターフェースユニットのブロック図。
【図5】図2のコジェネレータのディスプレイリストプ
ロセッサのブロック図。
ロセッサのブロック図。
【図6】図2のコジェネレータのコンテクストレジスタ
のブロック図。
のブロック図。
【図7】図2のブロックテクスチャリングおよびコンプ
レックスクリッピングプロセッサのブロック図。
レックスクリッピングプロセッサのブロック図。
【図8】図2のコジェネレータのマルチプロセススケジ
ューラのブロック図。
ューラのブロック図。
【図9】図2のコジェネレータのマルチプロセススケジ
ューラのブロック図。
ューラのブロック図。
【図10】図2のコジェネレータのコマンドジェネレー
タのブロック図。
タのブロック図。
【図11】図2のコジェネレータのエリアフィル/円錐
/ベクトルデータジェネレータのブロック図。
/ベクトルデータジェネレータのブロック図。
【図12】図2のコジェネレータの記号ジェネレータの
ブロック図。
ブロック図。
【図13】図2のコジェネレータのBITBLTアドレ
スジェネレータのブロック図。
スジェネレータのブロック図。
10...マルチファンクションコジェネレータ14.
..ホストプロセッサ 16...レーダシステム 18...VMEバス 20...イメージバス 22...ビットマップメモリ 23...ビデオバス 24...ディスプレイ 26...ディスプレイメモリ 28...ディスプレイリストプロセッサ30...デ
ュアルブロックテクスチャリング/コンプレックスクリ
ッパ 35...ディスプレイメモリインターフェースユニッ
ト 38、40...FIFOコントローラ41...IB
USコマンドジェネレータ42...コンテクストレジ
スタ 43...エリアフィル/円錐/ベクトルデータジェネ
レータ 45...記号ジェネレータ 46...マルチプロセススケジューラ47・・・BI
TBLTアドレスジェネレータ55...IBUSイン
ターフェース 68...チャンネル1トランシーバ 69...出力データレジスタ 70...チャンネル2トランシーバ 71...優先度コントローラ 72...ディスプレイメモリサイクル要求回路73.
..入力データレジスタ 74...アドレスデコーダ 75...コントローラ 76...アドレスマルチプレクサ 77...入力レジスタ 78...コマンドシーケンスコントローラ79...
出力マルチプレクサ/レジスタ81...ディスプレイ
メモリトランシーバ82...入力データレジスタ 83...ディスプレイメモリアドレスレジスタ84.
..メモリサイクルタイミングジェネレータ85...
出力データレジスタ 86...3ポートメモリコントロールアービトレータ
87...データマルチプレクサ 88...アドレスマルチプレクサ 91...入力データレジスタ 92...コマンドデコーダ 93...ディスプレイリストコマンドインタープリー
タ 94...サブルーチンスタック1アドレスジェネレー
タ 95...サブルーチンスタック2アドレスジェネレー
タ 96...属性スタックアドレスジェネレータ97..
.インタラプトハンドラアドレスジェネレータ98..
.ディスプレイメモリサイクル要求回路99...アド
レスマルチプレクサ/ジェネレータ101...属性レ
ジスタ 102...属性レジスタロードコントローラ103.
..属性マルチプレクサ 110...テクスチャ発生部 111...方形クリップ部 112...結合ロジック部 113...マッピングプロセッサ 114...アドレスプロセッサ 115...ANDロジック部 116、117...レジスタ 118...方形マスクジェネレータ 119...ステータスレジスタ 121...コントロールインターフェースバス122
...命令デコーダ 123...タスクコントロールユニット124...
ソースステータスモニタ 125...デスティネーションステータスモニタ12
6...完了ステータスモニタ 127...出力ロジックユニット 128...マクロシーケンスステータスレジスタ13
1...デジタルディファレンシャルアナライザ132
...コンパレータ 134a...レジスタ 134b...カウンタ 135...パラメトリックカウンタ 136...サイン/コサインフェッチユニット137
...アドレスカウンタ 138...水平ラインジェネレータ 150...入力データレジスタ 151...ディスプレイメモリアドレスジェネレータ
152...フォント選択コントローラ153...記
号コントローラ 154...タイプライタコントローラ156...出
力レジスタ
..ホストプロセッサ 16...レーダシステム 18...VMEバス 20...イメージバス 22...ビットマップメモリ 23...ビデオバス 24...ディスプレイ 26...ディスプレイメモリ 28...ディスプレイリストプロセッサ30...デ
ュアルブロックテクスチャリング/コンプレックスクリ
ッパ 35...ディスプレイメモリインターフェースユニッ
ト 38、40...FIFOコントローラ41...IB
USコマンドジェネレータ42...コンテクストレジ
スタ 43...エリアフィル/円錐/ベクトルデータジェネ
レータ 45...記号ジェネレータ 46...マルチプロセススケジューラ47・・・BI
TBLTアドレスジェネレータ55...IBUSイン
ターフェース 68...チャンネル1トランシーバ 69...出力データレジスタ 70...チャンネル2トランシーバ 71...優先度コントローラ 72...ディスプレイメモリサイクル要求回路73.
..入力データレジスタ 74...アドレスデコーダ 75...コントローラ 76...アドレスマルチプレクサ 77...入力レジスタ 78...コマンドシーケンスコントローラ79...
出力マルチプレクサ/レジスタ81...ディスプレイ
メモリトランシーバ82...入力データレジスタ 83...ディスプレイメモリアドレスレジスタ84.
..メモリサイクルタイミングジェネレータ85...
出力データレジスタ 86...3ポートメモリコントロールアービトレータ
87...データマルチプレクサ 88...アドレスマルチプレクサ 91...入力データレジスタ 92...コマンドデコーダ 93...ディスプレイリストコマンドインタープリー
タ 94...サブルーチンスタック1アドレスジェネレー
タ 95...サブルーチンスタック2アドレスジェネレー
タ 96...属性スタックアドレスジェネレータ97..
.インタラプトハンドラアドレスジェネレータ98..
.ディスプレイメモリサイクル要求回路99...アド
レスマルチプレクサ/ジェネレータ101...属性レ
ジスタ 102...属性レジスタロードコントローラ103.
..属性マルチプレクサ 110...テクスチャ発生部 111...方形クリップ部 112...結合ロジック部 113...マッピングプロセッサ 114...アドレスプロセッサ 115...ANDロジック部 116、117...レジスタ 118...方形マスクジェネレータ 119...ステータスレジスタ 121...コントロールインターフェースバス122
...命令デコーダ 123...タスクコントロールユニット124...
ソースステータスモニタ 125...デスティネーションステータスモニタ12
6...完了ステータスモニタ 127...出力ロジックユニット 128...マクロシーケンスステータスレジスタ13
1...デジタルディファレンシャルアナライザ132
...コンパレータ 134a...レジスタ 134b...カウンタ 135...パラメトリックカウンタ 136...サイン/コサインフェッチユニット137
...アドレスカウンタ 138...水平ラインジェネレータ 150...入力データレジスタ 151...ディスプレイメモリアドレスジェネレータ
152...フォント選択コントローラ153...記
号コントローラ 154...タイプライタコントローラ156...出
力レジスタ
Claims (20)
- 【請求項1】 ホストプロセッサ(14)とグラフィ
ックディスプレイ(24)と共に使用する多機能グラフ
ィックプロセッサ(10)において、ホストプロセッサ
(14)から入力データとプログラムデータを受け取る
インターフェース手段(38、40)と;多機能グラフ
ィックプロセッサの動作特性を決定するプログラム可能
なプロセッサ属性信号を受取り、格納するコンテクスト
レジスタ手段(42)と;複数のグラフィック信号群を
発生するプロセッサ手段(34)と;前記インターフェ
ース手段(38、40)、ホストプロセッサ(14)、
およびプロセッサ手段(34)から入力データおよびプ
ログラム命令を受取り、格納するディスプレイメモリ手
段と;前記入力レジスタ手段、ディスプレイメモリ、お
よびプロセッサ手段(34)と接続されこれらの間のデ
ータ、プログラム命令、およびグラフィック信号群の入
出力を制御するディスプレイリストプロセッサ手段(2
8)とを備えたことを特徴とする多機能グラフィックプ
ロセッサ(10)。 - 【請求項2】 前記プロセッサ手段(34)はアウト
ライン円錐図形および塗りつぶした円錐図形を発生する
ための信号群を発生する、円錐およびエリアフィルデー
タ発生手段(43)を有することを特徴とする請求項1
に記載の多機能グラフィックプロセッサ。 - 【請求項3】 前記プロセッサ手段(34)はさらに
英数字およびグラフの各記号を発生する、記号およびテ
キスト発生手段(45)をさらに有することを特徴とす
る請求項2に記載の多機能グラフィックプロセッサ。 - 【請求項4】 ディスプレイメモリと、グラフィック
ディスプレイのビットマップメモリとの間のブロック転
送を行なうビットブロック転送演算手段(47)をさら
に有することを特徴とする請求項3に記載の多機能グラ
フィックプロセッサ。 - 【請求項5】 前記プロセッサ手段(34)はブロッ
クテクスチャ信号群およびコンプレックスクリップマス
ク信号群を発生するブロックテクスチャおよびコンプレ
ックスクリップマスクプロセッサ手段(30)をさらに
有することを特徴とする請求項4に記載の多機能グラフ
ィックプロセッサ。 - 【請求項6】 前記プロセッサ手段(34)は、前記
円錐および領域塗りつぶしデータ発生手段(43)、前
記記号発生手段(45)、ビットブロック転送演算手段
(47)、およびブロックテクスチャおよびコンプレッ
クスクリップマスクプロセッサ手段(30)の同期制御
を行なうマルチプロセススケジューラ(46)をさらに
有することを特徴とする請求項5に記載の多機能グラフ
ィックプロセッサ。 - 【請求項7】 前記インターフェース手段(38、4
0)は2つの演算チャンネルを有し、一方のチャンネル
は他方のチャンネルより高い演算優先度を有し、前記2
つのチャンネルは並列に動作することを特徴とする請求
項1に記載のグラフィックプロセッサ。 - 【請求項8】 前記ディスプレイリストプロセッサ手
段(28)は前記ホストプロセッサ(14)、前記プロ
セッサ手段(34)、前記インターフェース手段(38
、40)、および前記ディスプレイメモリ手段(26)
との間に接続されたディスプレイメモリインターフェー
スユニット(35)に接続されていることを特徴とする
請求項7に記載の多機能グラフィックプロセッサ。 - 【請求項9】 前記ディスプレイメモリ手段(26)
は、入力ポートが、前記ホストプロセッサ(14)、前
記インターフェース手段(38、40)、および前記プ
ロセッサ手段(34)に接続された3つのポートを有し
たメモリを有することを特徴とする請求項8に記載の多
機能グラフィックプロセッサ。 - 【請求項10】 前記ディスプレイメモリインターフ
ェースユニット(35)と、前記グラフィックディスプ
レイ(24)のビットマップメモリ(22)との間に動
作可能に接続され、これらの間のデータ転送を行なうリ
ードバックマルチプレクサ手段(44)をさらに有した
ことを特徴とする請求項9に記載の多機能グラフィック
プロセッサ。 - 【請求項11】 前記プロセッサ手段(34)はそれ
ぞれ高優先度および低優先度の2つのハードウエアチャ
ンネルを有し、前記高優先度のチャンネルは低優先度の
チャンネル動作を阻止して、命令を迅速に処理すること
を特徴とする請求項1に記載の多機能グラフィックプロ
セッサ。 - 【請求項12】 前記グラフィックプロセッサ(10
)の現在の動作状態をセーブし、グラフィックプロセッ
サ(10)の状態を変更し、完全に独立したタスクを実
行し、前の動作状態をリストアするコンテクストスイッ
チ手段(42)をさらに有したことを特徴とする請求項
11に記載の多機能グラフィックプロセッサ。 - 【請求項13】 ディスプレイメモリ(26)内の属
性スタックに格納された複数の属性コンテクストレジス
タ値のを格納し、検索するネスティングされたコンテク
ストスイッチングを行なうことを特徴とする請求項12
に記載の多機能グラフィックプロセッサ。 - 【請求項14】 前記表示メモリ(26)に格納され
た表示リストから得られる汎用およびグラフィックプリ
ミティブ処理を行なうことを特徴とする請求項12に記
載の多機能グラフィックプロセッサ。 - 【請求項15】 前記グラフィックプロセッサ(10
)は、前記ホストプロセッサ(14)により前記ディス
プレイメモリ(26)内にディスプレイリストが完全に
構築される前に前記ディスプレイリストの処理を開始し
、ディスプレイリストの構築とその処理との間の待ち時
間を減少するように、前記ディスプレイリストに対して
並行DMA処理を行なうことを特徴とする請求項14に
記載の多機能グラフィックプロセッサ。 - 【請求項16】 前記ビットブロック転送演算手段(
47)は複数のソースロケーションとデスティネーショ
ンロケーションとの間で完全なBITBLT動作を行な
うことを特徴とする請求項4に記載の多機能グラフィッ
クプロセッサ。 - 【請求項17】 前記複数のソースロケーションおよ
びデスティネーションロケーションは、ビットマップメ
モリ(22)からビットマップメモリ(22)、ディス
プレイメモリ(26)からビットマップメモリ(22)
、ビットマップメモリ(22)からディスプレイメモリ
(26)、ホストプロセッサ(14)からディスプレイ
メモリ(26)、ディスプレイメモリ(26)からホス
トプロセッサ(14)、ホストプロセッサ(14)から
ビットマップメモリ(22)、およびビットマップメモ
リ(22)からホストプロセッサ(14)であることを
特徴とする請求項16に記載の多機能グラフィックプロ
セッサ。 - 【請求項18】 前記記号およびテキスト発生手段は
、2つの色記号、反転ビデオ信号、記号のスケーリング
、記号の回転、およびタイプライタ動作から成る複数の
記号を発生することを特徴とする請求項3に記載の多機
能グラフィックプロセッサ。 - 【請求項19】 前記ブロックテクスチャおよびコン
プレックスクリップマスクプロセッサ手段(30)は2
つのテクスチャパターンを用いて画像のテクスチャリン
グを同時に行い、画像を方形および複雑な形にクリップ
することを特徴とする請求項5に記載の多機能グラフィ
ックプロセッサ。 - 【請求項20】 前記グラフィックプロセッサ(10
)の並行処理を制御して、前記プロセッサ手段(34)
から成るプリミティブジェネレータの動作と、ブロック
テクスチャリングおよびコンプレクッスクリップマスク
プロセッサ手段(30)のブロックテクスチャ動作およ
びコンプレックスクリップ動作の同時並行動作を行なう
ことを特徴とする請求項5に記載のグラフィックプロセ
ッサ。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US07/582,697 US5276798A (en) | 1990-09-14 | 1990-09-14 | Multifunction high performance graphics rendering processor |
| US582697 | 1990-09-14 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH04282692A true JPH04282692A (ja) | 1992-10-07 |
Family
ID=24330163
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP3261360A Pending JPH04282692A (ja) | 1990-09-14 | 1991-09-13 | 多機能グラフィックプロセッサ |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US5276798A (ja) |
| EP (1) | EP0475422A3 (ja) |
| JP (1) | JPH04282692A (ja) |
| CA (1) | CA2050657A1 (ja) |
Families Citing this family (47)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5537638A (en) * | 1991-10-25 | 1996-07-16 | Hitachi, Ltd. | Method and system for image mapping |
| US5388841A (en) * | 1992-01-30 | 1995-02-14 | A/N Inc. | External memory system having programmable graphics processor for use in a video game system or the like |
| DE69331031T2 (de) * | 1992-07-27 | 2002-07-04 | Matsushita Electric Industrial Co., Ltd. | Vorrichtung zur parallelen Bilderzeugung |
| US5430841A (en) * | 1992-10-29 | 1995-07-04 | International Business Machines Corporation | Context management in a graphics system |
| US5452417A (en) * | 1993-11-23 | 1995-09-19 | Honeywell Inc. | Real time display system for showing the status of an operating system |
| AU1844495A (en) * | 1994-02-16 | 1995-09-04 | Apple Computer, Inc. | Printer driver with compact representation of drawing environment changes |
| JP3454914B2 (ja) * | 1994-04-07 | 2003-10-06 | 株式会社ソニー・コンピュータエンタテインメント | 画像生成方法および画像生成装置 |
| JPH10502181A (ja) * | 1994-06-20 | 1998-02-24 | ネオマジック・コーポレイション | メモリインタフェースのないグラフィックスコントローラ集積回路 |
| US5734419A (en) * | 1994-10-21 | 1998-03-31 | Lucent Technologies Inc. | Method of encoder control |
| US5715437A (en) * | 1994-11-10 | 1998-02-03 | Brooktree Corporation | System for, and method of, processing in hardware commands received from software without polling of the hardware by the software |
| SG66213A1 (en) * | 1995-01-31 | 1999-07-20 | Mitsubishi Electric Corp | Display apparatus for flight control |
| US5649082A (en) * | 1995-03-20 | 1997-07-15 | Silicon Graphics, Inc. | Efficient method and apparatus for determining texture coordinates for lines and polygons |
| EP0747859B1 (en) * | 1995-06-06 | 2005-08-17 | Hewlett-Packard Company, A Delaware Corporation | Interrupt scheme for updating a local memory |
| EP0747858B1 (en) * | 1995-06-06 | 2005-12-28 | Hewlett-Packard Company, A Delaware Corporation | Texture cache |
| US5745118A (en) * | 1995-06-06 | 1998-04-28 | Hewlett-Packard Company | 3D bypass for download of textures |
| FR2735253B1 (fr) * | 1995-06-08 | 1999-10-22 | Hewlett Packard Co | Synchronisation de donnees entre plusieurs dispositifs de restitution asynchrones de donnees |
| US6307559B1 (en) * | 1995-07-13 | 2001-10-23 | International Business Machines Corporation | Method and apparatus for color space conversion, clipping, and scaling of an image during blitting |
| TW316965B (ja) * | 1995-10-31 | 1997-10-01 | Cirrus Logic Inc | |
| US5772297A (en) * | 1995-11-15 | 1998-06-30 | Creative Technology, Ltd. | 3D graphics library |
| US5794016A (en) * | 1995-12-11 | 1998-08-11 | Dynamic Pictures, Inc. | Parallel-processor graphics architecture |
| US6509511B1 (en) | 1998-10-07 | 2003-01-21 | Guild Associates, Inc. | Process for the conversion of perfluoroalkanes, a catalyst for use therein and a method for its preparation |
| TW348239B (en) * | 1996-06-28 | 1998-12-21 | Cirrus Logic Inc | Embedding a transparency enable bit as part of a resizing bit block transfer operation |
| TW360823B (en) * | 1996-09-30 | 1999-06-11 | Hitachi Ltd | Data processor and graphic processor |
| US5937109A (en) * | 1996-11-01 | 1999-08-10 | Xerox Corporation | Automoire phase error correction for a hyperacuity halftoner |
| US6246396B1 (en) * | 1997-04-30 | 2001-06-12 | Canon Kabushiki Kaisha | Cached color conversion method and apparatus |
| US6061749A (en) | 1997-04-30 | 2000-05-09 | Canon Kabushiki Kaisha | Transformation of a first dataword received from a FIFO into an input register and subsequent dataword from the FIFO into a normalized output dataword |
| US6091431A (en) * | 1997-12-18 | 2000-07-18 | Intel Corporation | Method and apparatus for improving processor to graphics device local memory performance |
| US6411396B1 (en) * | 1999-02-24 | 2002-06-25 | Adobe Systems Incorporated | Imposition in a raster image processor |
| US6516032B1 (en) | 1999-03-08 | 2003-02-04 | Compaq Computer Corporation | First-order difference compression for interleaved image data in a high-speed image compositor |
| US6753878B1 (en) * | 1999-03-08 | 2004-06-22 | Hewlett-Packard Development Company, L.P. | Parallel pipelined merge engines |
| US6952215B1 (en) * | 1999-03-31 | 2005-10-04 | International Business Machines Corporation | Method and system for graphics rendering using captured graphics hardware instructions |
| US6762761B2 (en) * | 1999-03-31 | 2004-07-13 | International Business Machines Corporation | Method and system for graphics rendering using hardware-event-triggered execution of captured graphics hardware instructions |
| US6525738B1 (en) | 1999-07-16 | 2003-02-25 | International Business Machines Corporation | Display list processor for decoupling graphics subsystem operations from a host processor |
| US7233331B2 (en) * | 2000-03-16 | 2007-06-19 | Square Enix Co., Ltd. | Parallel object task engine and processing method |
| TW531706B (en) * | 2000-07-20 | 2003-05-11 | Ibm | Method and apparatus in a data processing system for dynamic graphics context switching |
| US6828980B1 (en) * | 2000-10-02 | 2004-12-07 | Nvidia Corporation | System, method and computer program product for z-texture mapping |
| JP2003263331A (ja) * | 2002-03-07 | 2003-09-19 | Toshiba Corp | マルチプロセッサシステム |
| US7620220B2 (en) * | 2003-03-21 | 2009-11-17 | Boston Scientific Scimed, Inc. | Scan conversion of medical imaging data from polar format to cartesian format |
| JP2006277521A (ja) * | 2005-03-30 | 2006-10-12 | Seiko Epson Corp | メモリコントローラ、画像処理コントローラ及び電子機器 |
| US10026140B2 (en) | 2005-06-10 | 2018-07-17 | Nvidia Corporation | Using a scalable graphics system to enable a general-purpose multi-user computer system |
| JP2007264866A (ja) * | 2006-03-28 | 2007-10-11 | Fujitsu Ltd | グラフィックシステム、破線テクスチャ画像生成装置、及び、破線テクスチャ画像生成方法 |
| DE102011119004A1 (de) * | 2011-11-19 | 2013-05-23 | Diehl Aerospace Gmbh | Grafikverarbeitungsvorrichtung, Anzeigevorrichtung für ein Flugzeugcockpit sowie Verfahren zur Anzeige von Grafikdaten |
| US9361116B2 (en) * | 2012-12-28 | 2016-06-07 | Intel Corporation | Apparatus and method for low-latency invocation of accelerators |
| US10140129B2 (en) | 2012-12-28 | 2018-11-27 | Intel Corporation | Processing core having shared front end unit |
| US9417873B2 (en) | 2012-12-28 | 2016-08-16 | Intel Corporation | Apparatus and method for a hybrid latency-throughput processor |
| US10346195B2 (en) | 2012-12-29 | 2019-07-09 | Intel Corporation | Apparatus and method for invocation of a multi threaded accelerator |
| CN110895457B (zh) * | 2018-09-13 | 2024-02-02 | 浙江宇视科技有限公司 | 字符显示方法、装置及电子设备 |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS6294893A (ja) * | 1985-10-21 | 1987-05-01 | 株式会社日立製作所 | グラフイツクデイスプレイ装置 |
| JPS62192865A (ja) * | 1986-02-20 | 1987-08-24 | Nippon Gakki Seizo Kk | 図形表示装置 |
Family Cites Families (14)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4858107A (en) * | 1985-03-11 | 1989-08-15 | General Electric Company | Computer device display system using conditionally asynchronous memory accessing by video display controller |
| US4680754A (en) * | 1985-06-03 | 1987-07-14 | Rockwell International Corporation | Multi-function bus |
| US4700320A (en) * | 1985-07-09 | 1987-10-13 | American Telephone And Telegraph Company, At&T Bell Laboratories | Bitmapped graphics workstation |
| US4862392A (en) * | 1986-03-07 | 1989-08-29 | Star Technologies, Inc. | Geometry processor for graphics display system |
| JP2541539B2 (ja) * | 1987-02-13 | 1996-10-09 | 日本電気株式会社 | 図形処理装置 |
| GB2210479B (en) * | 1987-10-02 | 1992-06-17 | Sun Microsystems Inc | Alias address support. |
| US4885703A (en) * | 1987-11-04 | 1989-12-05 | Schlumberger Systems, Inc. | 3-D graphics display system using triangle processor pipeline |
| US5027291A (en) * | 1987-11-24 | 1991-06-25 | International Business Machines Corporation | Application exit for potentially pickable primitives in a graphics system |
| US5053759A (en) * | 1988-01-30 | 1991-10-01 | Kabushiki Kaisha Toshiba | Method of and apparatus for generating high-quality pattern |
| US4949280A (en) * | 1988-05-10 | 1990-08-14 | Battelle Memorial Institute | Parallel processor-based raster graphics system architecture |
| US4958303A (en) * | 1988-05-12 | 1990-09-18 | Digital Equipment Corporation | Apparatus for exchanging pixel data among pixel processors |
| US4894653A (en) * | 1988-06-24 | 1990-01-16 | Hughes Aircraft Company | Method and apparatus for generating video signals |
| US5003496A (en) * | 1988-08-26 | 1991-03-26 | Eastman Kodak Company | Page memory control in a raster image processor |
| US5040130A (en) * | 1988-09-20 | 1991-08-13 | International Business Machines Corporation | Computer graphics boundary--defined area clippping and extraneous edge deletion method |
-
1990
- 1990-09-14 US US07/582,697 patent/US5276798A/en not_active Expired - Lifetime
-
1991
- 1991-09-04 CA CA002050657A patent/CA2050657A1/en not_active Abandoned
- 1991-09-13 JP JP3261360A patent/JPH04282692A/ja active Pending
- 1991-09-13 EP EP19910115523 patent/EP0475422A3/en not_active Ceased
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS6294893A (ja) * | 1985-10-21 | 1987-05-01 | 株式会社日立製作所 | グラフイツクデイスプレイ装置 |
| JPS62192865A (ja) * | 1986-02-20 | 1987-08-24 | Nippon Gakki Seizo Kk | 図形表示装置 |
Also Published As
| Publication number | Publication date |
|---|---|
| EP0475422A2 (en) | 1992-03-18 |
| EP0475422A3 (en) | 1993-06-16 |
| US5276798A (en) | 1994-01-04 |
| CA2050657A1 (en) | 1992-03-15 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH04282692A (ja) | 多機能グラフィックプロセッサ | |
| US5255360A (en) | Dual programmable block texturing and complex clipping in a graphics rendering processor | |
| US5218674A (en) | Hardware bit block transfer operator in a graphics rendering processor | |
| US5371849A (en) | Dual hardware channels and hardware context switching in a graphics rendering processor | |
| US5329615A (en) | Concurrent general purpose and DMA processing in a graphics rendering processor | |
| EP0279226B1 (en) | High resolution display adapter | |
| US4989138A (en) | Single bus graphics data processing pipeline with decentralized bus arbitration | |
| US7864185B1 (en) | Register based queuing for texture requests | |
| US6624819B1 (en) | Method and system for providing a flexible and efficient processor for use in a graphics processing system | |
| US5949440A (en) | Method and apparatus for processing graphics primitives in multiple modes using reconfigurable hardware | |
| EP0486239A2 (en) | Rasterization processor for a computer graphics system | |
| GB2211706A (en) | Local display bus architecture and communications method for raster display | |
| EP0334524A2 (en) | Crossbar converter | |
| US6094203A (en) | Architecture for a graphics processing unit using main memory | |
| EP0548052A2 (en) | Video picking and clipping method and apparatus | |
| US5303321A (en) | Integrated hardware generator for area fill, conics and vectors in a graphics rendering processor | |
| US5265203A (en) | Hardware multiprocess scheduler in a graphics rendering processor | |
| US20030142105A1 (en) | Optimized packing of loose data in a graphics queue | |
| US4747042A (en) | Display control system | |
| CA2055783A1 (en) | High performance bitblt and line draw engine | |
| EP0486194A2 (en) | Memory system | |
| US6885375B2 (en) | Stalling pipelines in large designs | |
| Kaya | New trends in graphic display system architecture | |
| Katsura et al. | VLSI for high-performance graphic control utilizing multiprocessor architecture | |
| JP3278853B2 (ja) | 図形描画装置 |