JPH087783B2 - マルチプロセッサ・グラフィック・システム - Google Patents

マルチプロセッサ・グラフィック・システム

Info

Publication number
JPH087783B2
JPH087783B2 JP2248986A JP24898690A JPH087783B2 JP H087783 B2 JPH087783 B2 JP H087783B2 JP 2248986 A JP2248986 A JP 2248986A JP 24898690 A JP24898690 A JP 24898690A JP H087783 B2 JPH087783 B2 JP H087783B2
Authority
JP
Japan
Prior art keywords
graphics
data
processor
control processor
view
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.)
Expired - Fee Related
Application number
JP2248986A
Other languages
English (en)
Other versions
JPH03180979A (ja
Inventor
ボブ・チャオチュ・リアング
ニナ・イェン・リアング
マイケル・ジョセフ・フェルプス
デビッド・コンラッド・タンネンバウム
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH03180979A publication Critical patent/JPH03180979A/ja
Publication of JPH087783B2 publication Critical patent/JPH087783B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/53Querying
    • G06F16/532Query formulation, e.g. graphical querying

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Processing Or Creating Images (AREA)

Description

【発明の詳細な説明】 A.産業上の利用分野 この発明は、グラフィカル・データを処理する情報処
理システム、特に、いくつかは特殊なグラフィクス処理
機能を有する複数のプロセッサを備えるグラフィクス・
ディスプレイ・システムに関するものである。さらにこ
の発明は、特に、グラフィクス・ディスプレイ・エレメ
ントの階層ストラクチャとして蓄積されたグラフィカル
・データを表示するグラフィクス・ディスプレイ・シス
テムに関し、より詳細には、グラフィカル・データをア
クセスする汎用プロセッサと専用グラフィクス・プロセ
ッサとの間のファンクションの分離およびインターフェ
ースに関するものである。なお、本明細書中で使用され
る「トラバースする」あるいは「トラバーサル」とは、
一連のデータ・ストリームを検索し解釈することを意味
するものであり、本明細書全体に渡って特に断りのない
限りこの意味で使用される。
B.従来技術 コンピュータ・エイデッド・デザイン(CAD)および
コンピュータ・エイデッド・エンジニアリング(CAE)
に用いられるグラフィクス・ディスプレイ・システム
は、システムに入力されたグラフィクス・オーダーに基
づいて作成されたイメージを表示する。グラフィクス・
オーダーは、ライン,ポイント,ポリゴン,類似のプリ
ミティブ・ストラクチャに対するプリミティブ・ドロー
イング・オペレーションによりオブジェクトを定義す
る。複雑なグラフィカル・イメージは、これらグラフィ
カル・プリミティブの組合わせとして表すことができ
る。現在のグラフィクス・ディスプレイ・システムは、
データの階層表示を行っている。データの階層表示によ
れば、1つの低レベル・ストラクチャ定義または1連の
ストラクチャ定義が、オブジェクトを表すのに繰り返し
用いられることを可能にしている。したがって例えば、
1つのホイールのプリミティブ定義を入力し、コンピュ
ータ・エイデッド・デザイン・アプリケーションにおい
て自動車のホイールを定義するのに繰り返し用いること
ができる。グラフィクス・システム・プログラミングの
エンジニアリング標準の1つは、PHIGS(Programmer′s
Hierarchical Interactive Graphics System)として
知られており、これはグラフィカル・データおよびジオ
メトリカリに関連するオブジェクトの定義,ディスプレ
イ,編集のための1組のファンクションを与えている。
PHIGSのようなインターフェース標準は、特定のグラ
フィクス・アプリケーション・プログラムを、特定のグ
ラフィクス・ディスプレイ・システムにおける詳細なイ
ンプリメンテーションとは無関係にハイレベルで書くこ
とを可能にしている。このハイレベル言語の使用によ
り、アプリケーション・プログラムを、わずかな変形
で、種々のタイプの装置間で転送することが可能にな
る。
階層データ・ストラクチャを採用するシステムのロジ
カル・データ・フローを第1図に示す。ユーザ・アプリ
ケーション・プログラム100は、必要なグラフィクス情
報を含むデータ・ストリーム102を、グラフィクス・プ
ロセシング・システムに渡す。データ・ストリーム情報
は、2つのファンクショナル・カテゴリに分けられる。
すなわち、表示されるグラフィクス・エレメントの詳細
な記述を含むストラクチャ・ストレージ104と、ワーク
ステーション変数を適切な値に設定するのに必要な情報
を含むワークステーション・ステート・リスト106とで
ある。
ストラクチャ・ストレージおよびワークステーション
・ステート・リスト上で働くワークステーション・プロ
グラムは、ディスプレイ画面108上で表示される最終イ
メージを形成する。
この形式のグラフィクス・ディスプレイ.システムを
実施するハードウェア・アーキテクチャを、第2図に示
す。通信プロセッサ110は、グラフィクス・オーダー,
場合によってはユーザ・アプリケーション・プログラム
およびグラフィカル・データ・ベースを含むホスト・シ
ステムへのインターフェースを与える。システム・コン
トロール・プロセッサ112は、ジオメトリック・データ
・ベースを管理し、グラフィクス・ディスプレイ・シス
テムの全部のオペレーションを制御する。システム・コ
ントロール・プロセッサ112は、多種のタスクを実行す
ることのできる汎用プロセッサである。グラフィクス・
コマンド・プロセッサ114は、システム・コントロール
・プロセッサによってシステム・メモリ113に格納され
たグラフィクス・コマンドを解釈し、実際のオブジェク
ト・ドローイングを実行するジオメトリック・プロセシ
ング・ユニット128およびレンダリング・ユニット120を
含むディスプレイ・プロセッサ116によって要求される
詳細なコマンドを発生する。ディスプレイ・プロセッサ
の最終的な出力は、ディスプレイ・デバイスに表示する
ためにフレーム・バッファへのライン122へ送り出され
るピクセル定義信号である。
マルチプロセッサ・コンピュータ・グラフィクス・デ
ィスプレイ・システムのファンクショナル・ストラクチ
ャは、刊行物“Fundamentals of Interactive Computer
Graphics"J.D.FoleyおよびA.Van Dan著,Addison-Wesle
y Publishing Company,1982の406〜410ページ,および4
24〜428ページに開示されている。マルチプロセッサ・
グラフィクス・システムの他の具体例は、米国特許第4,
862,392号明細書に開示されている。
FoleyおよびVan Danによって提案されたモデルは、ア
プリケーション・プログラムの一部として、ディスプレ
イ・ファイル・コンパイラを示している。このアプリケ
ーション・プログラムは、オブジェクトのグラフィカル
表示の階層記述を含むストラクチャ・ディスプレイ・フ
ァイルにアプリケーション・モデル(AM)をマップする
モデル・トラバーサを含んでいる。階層ディスプレイ・
ファイルは、ディスプレイ・プロセシング・ユニットに
よって処理され、ディスプレイ・コントローラにおいて
オブジェクトを発生させるのに必要なグラフィカル・プ
リミティブ・オーダー(リニア・ディスプレイ・ファイ
ル)を形成する。FoleyおよびVan Danのディスプレイ・
ファイル・コンパイラ(DFC)は、アプリケーション・
パッケージの一部としてスペシャライズされている。こ
のことは、各アプリケーションあるいは各グラフィクス
・ディスプレイ・システムに対して個別のディスプレイ
・ファイル・コンパイラを作成することが必要になるた
め、有効性が損なわれる。PHIGS(Programmers Hierarc
hical Interactive Graphics System)のような標準イ
ンターフェース・フォーマットの導入により、例えばPH
IGSストラクチャで生成されたアプリケーション・モデ
ルを、ストラクチャ・ディスプレイ・ファイル・フォー
マットに変換する標準ディスプレイ・ファイル・コンパ
イラの導入が可能となる。このディスプレイ・ファイル
変換は、有効なプロセッサ・リソースを必要とし、グラ
フィクス・ディスプレイ・システムのボトルネックにな
る傾向がある。
前記米国特許明細書は、ジオメトリ・プロセシング用
の特殊なプロセッサを有するマルチプロセッサ・システ
ムを開示し、マルチプロセッサ・システムの利点を説明
しているが、ディスプレイ・ファイル・コンパイラによ
るストトラクチャード・ディスプレイ・ファイル・フォ
ーマットへのアプリケーション・モデルのボトルネック
となる変換の問題については触れていない。
ディスプレイ・ファイル・コンパイラは、2つの1次
ファンクションを有している。第1は、ディスプレイ・
ファイル・コンパイラは、アプリケーション・グラフィ
クス命令によってオーダーされたフィジカル・グラフィ
クス・ディスプレイ・システム環境を形成しなければな
らないことである。これは、ワークステーション・パラ
メータの作成およびワークステーション・デフォルト・
プロファイルの生成を含んでいる。第2のファンクショ
ンは、次段のプロセッサによるジオメトリ・プロセシン
グおよびレンダリングに必要なオブジェクトの詳細な記
述を生成させるためのグラフィクス・オーダーのプロセ
シングおよびトラバーシングを含んでいる。このトラバ
ーサルは、定義されたワークステーション環境内で発生
し、形成された環境に基づいている。ワークステーショ
ン環境およびモデル・トラバーサルの相互関係は、これ
らが同一のロジカル・プロセッサで行われることを要求
している。しかし、1つのディスプレイ・ファイル・コ
ンパイラ・ロジカル・プロセッサの速度限界が、グラフ
ィクス・ディスプレイ・システムにおけるボトルネック
になっている。
C.発明が解決しようとする課題 この発明の目的は、ディスプレイ・ファイル・コンパ
イル・ファンクションを、別個のコントロール・プロセ
ッサへ分配するグラフィクス・システム・アーキテクチ
ャを提供することにある。すなわち、アプリケーション
・モデルに応じた環境を形成し、モデル・トラバーサル
およびディスプレイ生成プロセスを制御する第1の汎用
システム・コントロール・プロセッサと、モデル・トラ
バーサルを実行して、ジオメトリック・プロセシングお
よびレンダリングに対するストラクチャ・ディスプレイ
・ファイルを生成する第2の専用プロセッサとである。
この発明の他の目的は、汎用プロセッサと専用プロセ
ッサとの間のワークロードをバランスさせる方法を提供
することにある。
この発明のさらに他の目的は、汎用システム・コント
ロール・プロセッサと専用グラフィクス・プロセッサと
の間の汎用インターフェースを提供することにある。
この発明の目的は、汎用コンピュータ・プロセッサか
ら更新するのが有効であり、専用グラフィクス・プロセ
ッサからプロセスするのが有効な汎用インターフェース
・ストラクチャを提供することにある。
D.課題を解決するための手段 この発明のマルチプロセッサ・グラフィクス・システ
ムは、アプリケーション・モデル言語記述に基づくワー
クステーション環境とデータ・トラバーサル・ストラク
チャとをセットアップする汎用システム・コントロール
・プロセッサを有している。ワークロード・バランスお
よびプロセッサ間通信は、汎用プロセッサと専用グラフ
ィクス・コントロール・プロセッサとの間の汎用インタ
ーフェースを定義することによって管理される。システ
ム・コントロール・プロセッサは、階層グラフィクス言
語定義のような標準形式のアプリケーション・プログラ
ムを受け入れ、グラフィクス・コントロール・プロセッ
サへの通信用に一般化されたインターフェース・コント
ロール・ブロックへ変換する。グラフィクス・コントロ
ール・プロセッサは、システム・コントロール・プロセ
ッサからの割込みによってシグナルされ、トラバーサル
処理を開始する。グラフィクス・コントロール・プロセ
ッサは、システム・メモリに格納されている標準コント
ロール・ブロックをアクセスし、要求されたグラフィク
ス・イメージを生成するのに必要なトラバーサルを実行
する。一般化されたコントロール・ブロックは、プログ
ラム変更に対する迅速な適応、および汎用プロセッサと
専用プロセッサとの効率的な通信を可能にする。
E.実施例 第2図は、この発明によるマルチプロセッサ・ディス
プレイ・システムを示す。通信プロセッサ110は、チャ
ネル・コネクションまたはネットワークを介して、ホス
ト・コンピュータと通信する。通信プロセッサは、ホス
トのユーザ・プログラムからのアウトバウンド・データ
を受信し、このデータを処理するためにシステム・コン
トロール・プロセッサ112に送る。送られたデータは、P
HIGSのような標準インターフェース記述を用いたアプリ
ケーション・モデルである。ワークステーションで発生
されたインバウンド・データは、通信プロセッサを介し
てホスト・コンピュータへ送られる。
システム・コントロール・プロセッサ(SCP)112は、
システムのデータ・フローを制御する。システム・コン
トロール・プロセッサは、アプリケーション・モデル・
データを解析して、システム・メモリ内の階層モデル記
述を含む、必要なプロセシング環境およびストラクチャ
・ストレージを記述するワークステーション・ステート
・リストを生成する。SCPは、グラフィクス・コントロ
ール・プロセッサの実行を制御して、ユーザ・プログラ
ム・コマンドに基づいてストラクチャ・ストレージから
ジオトリック・イメージを引き出す。
システム・メモリ113は、システム・コントロール・
プロセッサ112により作成された、ワークステーション
・ステート・リストおよびストラクチャ・ストレージを
格納する。システム・メモリ113は、また、グラフィク
ス・コマンド・プロセッサによりアクセス可能であり、
グラフィクス・ドローイング処理の間に用いられる。
グラフィクス・コマンド・プロセッサ(GCP)114は、
システム・メモリ113に格納されているグラフィクス・
モデルをトラバースし、命令を処理して、ジオメトリッ
ク・プロセシング・オーダーを生成し、これをジオメト
リック・プロセシングおよびプリミティブ・レンダリン
グ用のディスプレイ・プロセッサに送る。
ディスプレイ・プロセッサ116は、2つの要素より成
る。すなわち、シェーディングのためのライト・モデル
計算を含む、ジオメトリック・プリミティブの変換,ク
リッピング,マッピングを行うジオメトリ・プロセシン
グ・ユニット118と、ライン・ドローイング,ポリゴン
のフィリングおよびシェーディング,隠線および隠面の
消去を含む、プリミティブをレンダするレンダリング・
ユニット120とである。ディスプレイ・プロセッサの出
力は、一連のピクセルであり、これらは、ディスプレイ
・デバイスに最終的に表示するためにフレーム・バッフ
ァへ送られる。
システム・コントロール・プロセッサ112の1次ファ
ンクションは、通信プロセッサ110を介してホスト・コ
ンピュータから送られてきたアプリケーション・モデル
・データ・ストリームを処理することである。システム
・コントロール・プロセッサ112は、グラフィクス・コ
ントロール・プロセッサ・114と通信するのに用いられ
る特定コントロール・ブロックにデータを形成する。SC
Pによるプロセシングは、ワークステーション環境決定
(SCPにより実行される)をモデル・トラバーサル(GCP
により実行される)から分けることによってGCPのワー
クロードを軽減する。コントロール・ブロックは、シス
テム・コントロール・プロセッサにより作成され、シス
テム・メモリ113に格納される。コントロール・ブロッ
クは、 ワークステーション・ステート・リスト(WSL) −システム・コントロール・プロセッサ対グラフィクス
・コントロール・プロセッサの通信ブロック ストラクチャ・ストレージ(SS) −トラバーサル・コントロール・ブロック −ビュー・テーブル −ビュー・アドレシング・テーブル −ルート・ブロック −エディット・ブロック を含んでいる。
ワークステーション・ステート・リストは、アプリケ
ーション・モデルを処理するのにワークステーションに
より必要とされるデータ記述およびドローイング情報と
を含んでいる。このテーブルは、システムの立上げ時に
初期化され、一定の手順オーダーにより変更することが
できる。ドローイング・コントロール・テーブルは、モ
デル・トラバーサルおよびピクチャ・ドローイング用の
グラフィクス・コントロール・プロセッサにより必要と
される情報を含んでいる。ワークステーション・ステー
ト・リストは、グラフィクス・インターフェース出力フ
ラグ,ビュー・テーブル・セッティング,バンドル・テ
ーブル・セッティング,他のテーブル・セッティング,
フィルタ・テーブル,種々のワーク・エリアへのポイン
タ,キャラクタ・セット・アイデンティフィケーション
を含んでいる。現在コントロール・テーブルは、デフォ
ルト・ライン・スタイルとマーカ・タイプとハッチ・エ
リアへのポインタ,入力デバイス・ロケータ,雑フィー
ルド,現在トラバーサル・ブロックへのポインタ,リク
エスト・トラバーサル・ブロックの内容を含んでいる。
トラバーサル・コントロール・ブロックは、ビュー・
マスクのリストを含んでいる。これらのマスクは、各ビ
ューに対して形成された種々の変更の記録をとる。マス
クへのビットのオフセットは、ビューのインデクスに関
連している。オフセットは、マスク・フィールドの最左
端ビットから開始して測定される。したがって、ビュー
0は、最右端ビットに関連するマスクのオフセット0に
ある。グラフィクス・インターフェース初期化時には、
全部のビューは、ビュー0を除いてイナクティブであ
る。各ビューは、ビューに対するオーダー“ビュー・キ
ャラクタリスティクをセットせよ”がシステム・コント
ロール・プロセッサによって処理されるときにアクティ
ブとなる。グラフィクス・コントロール・プロセッサ11
4がビューのトラバースを終了する毎に、対応するテー
ブル・エントリが1にセットされる。グラフィクス・コ
ントロール・プロセッサが、全部のアクティブ・ビュー
のトラバーサルを終了すると、グラフィクス・コントロ
ール・プロセッサはシステム・コントロール・プロセッ
サ112に割込み、システム・コントロール・プロセッサ
は全部のテーブル・エントリを0で置き換える。グラフ
ィクス・コントロール・プロセッサとシステム・コント
ロール・プロセッサとの間の通信テーブルは、グラフィ
クス・コントロール・プロセッサが、システム・コント
ロール・プロセッサにより一時的に割込まれるときに、
すでに終了した低優先順位のビューを再ドローイングす
るのを避けることを可能にする。
ビュー・テーブルは、個々のキャラクタリスティク情
報を含んでいる。全部のビュー・テーブルは、優先順位
に従って互いに連鎖されている。ビューが最初に作成さ
れるとき、その内容はビュー0のデフォルト内容にセッ
トされる。ビュー0を除いて、全てのビュー・テーブル
の内容は、手順オーダーによって後に変更することがで
きる。ストラクチャ・ブロックおよびグループに対する
ビューの連鎖の例を、第3図に示す。
ビュー・アドレシング・テーブルは、リクエストされ
たビュー・テーブル・アドレス、現在のビュー・テーブ
ル・アドレス、出力ビュー優先順位テーブルへのポイン
タを含んでいる。これらのテーブルは、リクエストされ
たビューおよび現在アクティブの状態にあるビューを指
定する。現在の入力ビュー優先順位テーブルおよびリク
エスト入力ビュー優先順位テーブルは、出力ビュー優先
順位テーブルに類似しており、個々のオペレーション中
に、ビュー・プロセシングのオーダーを指示する。
ビューに接続された各ルートに対して、対応するルー
ト・ブロックが存在する。特定のビューに接続された全
てのルートは、ビューにおけるそれらの優先順位に従っ
て接続される。最低優先順位ルートは、最高優先順位ビ
ューに先行して常に最初に接続される。
エディット・ブロック・リストは、1以上の可変サイ
ズのエディット・ブロックにより形成される。各エディ
ット・ブロックは、グラフィクス・ディスプレイに対す
る属性またはプリミティブ・ストラクチャの部分を含ん
でいる。エディット・ブロックのストラクチャ・エレメ
ントは、ストラクチャのアピアランスに従った順序で配
列される。ブロックは、2重にリンクされたポインタを
介して互いに接続される。
ストラクチャ・エレメントは、ディスプレイ・データ
・ストラクチャにおける最小単位である。ストラクチャ
・エレメントは、ポリラインのような出力プリミティブ
あるいは出力プリミティブに関連したカラーのような属
性とすることができる。
PHIGSのような標準インターフェースにおけるストラ
クチャの部分リストは、 1.バンドルド属性セレクション・エレメント 2.個々の属性セレクション・エレメント 3.アプリケーション・データの挿入 4.ストラクチャの実行 5.ラベルの挿入 6.ピック識別子のセット 7.属性ソース・フラグのセット 8.モデリング変換エレメント 9.出力プリミティブ・エレメント を含んでいる。
この発明の好適な実施例による汎用インターフェース
は、それぞれが最大20のエントリを有する5つのバンド
ル・テーブルの全部をサポートしている。ユーザ・アプ
リケーションは、或るテーブルを指示して、インターフ
ェース初期化で確立させることができる。このとき、汎
用インターフェースは、指定されたバンドル・テーブル
に対して連続的なストレージ・ロケーションを割り当て
る。各バンドル・エントリは、1つのバンドル・インデ
クスに対応し、エントリは連続した順序で配置される。
以下の種類のバンドル・テーブルがサポートされる。
ポリライン・バンドル・テーブル ポリマーカ・バンドル・テーブル テキスト・バンドル・テーブル 内部バンドル・テーブル エッジ・バンドル・テーブル パタン・バンドル・テーブル ハッチ・バンドル・テーブル 追加のテーブルは、以下のテーブルを含んでいる。
ハッチ・テーブル デプス・キー(depth queue)・テーブル カル(cull)・サイズ・テーブル カラー・プロセシング・モード・テーブル ライト・ソース・テーブル アクティブ・キャラクタ・セット・テーブル ライン・タイプ・テーブル マーカ・タイプ・テーブル ハードウェア・カラー・テーブル ロジック・カラー・テーブル クラス・ネーム・テーブル フィルタ・ビット・テーブル クラス・ネーム・テーブルおよびフィルタ・ビット・
テーブルは、共に、ハイライティング,ピッキングおよ
びインビジビリティ・フィルタのためのフィルタ・テー
ブル情報を含んでいる。各テーブルは、好適な実施例で
は1024個のエレメントを含んでいる。クラス・ネームが
ピック・インクルージョン・フィルタに入力されること
が要求されるとき、GCPは、クラス・ネーム・テーブル
の適切なエレメントにクラス・ネームを挿入し、クラス
・ネーム・テーブルを整列する。次に、GCPは、対応す
るインデックスにおけるピック・インクルージョン・ビ
ットをアクティベートし、フィルタ・ビット・テーブル
へエントリする。クラス・ネームをピック・インクルー
ジョン・フィルタおよびハイライティング・エクスクル
ージョン・フィルタの両方に入力することが要求される
ならば、汎用インターフェースは、始めに、クラス・ネ
ーム・テーブルの適切なエレメントに指定されたクラス
・ネームを挿入し、次に、ピック・インクルージョンお
よびハイライト・エクスクルージョンに対して対応する
ビットをアクティベートする。
ワークステーション・ビューポートは、出力イメージ
が表示されるディスプレイ画面の一部分である。ワーク
ステーション・ウィンドウは、XおよびY(Zは必ずし
も必要ではない)のアスペクト比を維持しながら、境界
および内部がワークステーション・ビューポートにマッ
プされる矩形または長方形である。汎用インターフェー
スは、アプリケーションでセットされているように、こ
の情報をビューポートと共に用いて、デバイス・ビュー
ポートを演算し、得られた情報をビュー・テーブルに格
納する。ワークステーション・ウィンドウ・ビューポー
トは、問合わせファンクション用のワークステーション
・ステート・リストに格納される。
システム・コントロール・プロセッサ112とグラフィ
クス・コントロール・プロセッサ114とは、割込みおよ
びシステム・メモリ113に格納されている通信エリアを
介して通信する。システム・コントロール・プロセッサ
は、始めに、汎用インターフェース初期化によりグラフ
ィクス・コントロール・プロセッサ114を初期化する。
この初期化は、全てのインターフェース・コントロール
・ブロックの形成を含んでいる。SCPは、次に、グラフ
ィクス・コントロール・プロセッサに割込んで、トラバ
ーサルを開始し、後にトラバーサルを停止させることが
できる。
グラフィクス・コントロール・プロセッサは、システ
ム・コントロール・プロセッサに割込んで、初期化が終
了し、トラバーサルが終了し、ストップ・トラバーサル
・リクエストが終了し、あるいはエラーが発生したこと
を通知する。
これら各割込み中断で発生したアクションについて以
下に説明する。第4図は、処理を説明するための図であ
る。グラフィクス・コントロール・プロセッサの初期化
は、システム・コントロール・プロセッサがグラフィク
ス・コントロール・プロセッサに割込んだときに開始さ
れる。割込みにより渡された理由コードが“初期化”で
あるときは、グラフィクス・コントロール・プロセッサ
114は、グラフィクス・コントロール・プロセッサを初
期化するために、ワークステーション・ステート・リス
ト130からデータを読取る。GCPは、SCPとの通信に用い
られるシステム・メモリの共用エリアにポインタ128を
保持する。
グラフィクス・コントロール・プロセッサ・トラバー
サルは、SCPの割込みにより初期化される。割込み理由
コードが“ジオメトリック・データをドローせよ”なら
ば、トラバーサル処理が開始する。グラフィクス・コン
トロール・プロセッサは、トラバーサル・コントロール
・テーブル132の第1ワードをフェッチすることによっ
て開始し、各リソースをチェックする。次に、GCPは、
トラバーサル・コントロール・テーブルに始めにドロー
イングされるビューのインデクスをフェッチする。GCP
は、ビュー・アドレス・テーブル134にビューに対する
ポインタを見つけて、ビュー・テーブル136からフェッ
チされたデータの処理を開始する。ビュー・テーブルの
処理を、ビュー・テーブルの第1ルート・ブロックへの
ポインタをアクセスすることによって続け、第1アドレ
ス・エディット・グループをアクセスするためにルート
・ストラクチャを処理することによって続ける。エディ
ット・グループのストラクチャを第5図に示す。
“ストラクチャを実行”がエディット・グループに現
れれば、グラフィクス・コントロール・プロセッサは、
“ストラクチャを実行”第1エディット・グループのエ
ントリに対するポインタを用い、そのストラクチャに関
連した第1エディット・グループに対するポインタにロ
ケートする(第6図および第7図参照)。
グラフィクス・コントロール・プロセッサは、追加の
ルート・ブロックが存在するか否かを調べ、ルート・ス
トラクチャの終了に達するまで、このように動作し続け
る。全てのルート・ブロック・トラバーサルの終了時
に、グラフィクス・コントロール・プロセッサは、追加
のビューを調べる。最後のビューが完全にトラバースさ
れると、グラフィクス・コントロール・プロセッサは、
フレーム・バッファをスワップさせる。ダブル・フレー
ム・バッファを有するシステムでは、一定の条件下で、
グラフィクス・コントロール・プロセッサが、第1フレ
ーム・バッファの表示内容を、バックグラウンド・フレ
ーム・バッファへコピーする。次に、グラフィクス・コ
ントロール・プロセッサは、システム・コントロール・
プロセッサに割込んで、1つのフレームのドローイング
の終了を通知する。第8図は、グラフィクス・コントロ
ール・プロセッサの全フローを示している。
以上の説明は、1組の指定されたコントロール・ブロ
ックを介して統合されるシステム・コントロール・プロ
セッサとグラフィクス・コマンド・プロセッサとの間で
のプロセシング・ワークロードの分配について述べてい
る。これをグラフィクス・ディスプレイ・システム分野
に適用することによって、専用プロセッサと通信する汎
用コントロール・プロセッサのコンセプトを、1つのグ
ラフィクス・コマンド・プロセッサ・インターフェース
を越えて拡張できることがわかる。この種の拡張は、こ
こに開示したコンセプトの拡張になるものと考えられ
る。
F.発明の効果 本発明によれば、ディスプレイ・ファイル・コンパイ
ル・ファンクションを、別個のコントロール・プロセッ
サへ分配するグラフィクス・システム・アーキテクチャ
が提供される。
【図面の簡単な説明】
第1図は、この発明のマルチプロセッサ・グラフィクス
・システムにより処理されるデータの種類を示すデータ
フロー図である。 第2図は、この発明のグラフィクス・ディスプレイ・シ
ステムのプロセシング要素のブロック図である。 第3図は、グラフィクス・ストラクチャのエレメント間
の結合を示す図である。 第4図は、汎用インターフェースに採用されたメモリ構
成およびリンケージを示す図である。 第5図は、エディット・グループ・フォーマットのレイ
アウトの例を示す図である。 第6図は、グラフィクス・ストラクチャ間のコントロー
ルのフローを示す図である。 第7図は、メモリ構成とストラクチャ・グループの相互
関係とを示す図である。 第8図は、この発明のグラフィクス・コントロール・プ
ロセッサにおけるトラバーサル動作での制御フローを示
すフローチャートである。 100……ユーザ・アプリケーション・プログラム 102……データ・ストリーム 104……ストラクチャ・ストレージ 106……ワークステーション・ステート・リスト 108……ディスプレイ画面 110……通信プロセッサ 112……システム・コントロール・プロセッサ 113……システム・メモリ 114……グラフィクス・コントロール・プロセッサ 116……ディスプレイ・プロセッサ 118……ジオメトリック・プロセシング・ユニット 120……レンダリング・ユニット
───────────────────────────────────────────────────── フロントページの続き (72)発明者 マイケル・ジョセフ・フェルプス アメリカ合衆国 ニューヨーク州 キング ストン パインストリート 108 (72)発明者 デビッド・コンラッド・タンネンバウム アメリカ合衆国 ニューヨーク州 キング ストン フェアビュー ガーデンズ ビー 6エー3 (56)参考文献 特開 平1−98073(JP,A) 特開 平1−162970(JP,A) Computers & Graphi cs vol.12,No.2,1988 P. 155−P.162

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】グラフィック・データを表示するためのマ
    ルチプロセッサ・システムであって、 表示用グラフィック・データを含む第1のデータ・スト
    ラクチャと、上記第1のデータ・ストラクチャに含まれ
    るデータの処理を制御するパラメータを含む第2のデー
    タ・ストラクチャとを発生する第1プロセッサ手段であ
    って、上記グラフィック・データが複数のビューを含
    み、上記第2のデータ・ストラクチャが、上記複数のビ
    ューの各々がトラバースを要求しているか否かを示すコ
    ントロール・ブロックを含む第1プロセッサ手段と、 上記第2のデータ・ストラクチャに含まれるパラメータ
    に対応して上記第1のデータ・ストラクチャに含まれる
    グラフィック・データをトラバースする第2プロセッサ
    手段であって、上記グラフィック・データ中のビューを
    トラバースする前に上記コントロール・ブロックを調べ
    て上記複数のビューの中でトラバースを要求しているビ
    ューのみをトラバースする第2プロセッサ手段と、を含
    むマルチプロセッサ・システム。
  2. 【請求項2】上記第1のデータ・ストラクチャが階層化
    されたデータ・ストラクチャであることを特徴とする請
    求項1記載のマルチプロセッサ・システム。
  3. 【請求項3】上記第2プロセッサ手段がビューのトラバ
    ースを終了した時に、終了したトラバースを示すために
    上記コントロール・ブロックを変更することを特徴とす
    る請求項1記載のマルチプロセッサ・システム。
  4. 【請求項4】上記グラフィック・データが表示イメージ
    用のジオメトリック・データを含み、上記マルチプロセ
    ッサ・システムがさらに上記ジオメトリック・データを
    表示イメージに変換する第3プロセッサ手段を含み、上
    記第2プロセッサ手段が上記グラフィック・データをト
    ラバースして得られた上記ジオメトリック・データを上
    記第3プロセッサ手段へ送ることを特徴とする請求項1
    記載のマルチプロセッサ・システム。
JP2248986A 1989-10-23 1990-09-20 マルチプロセッサ・グラフィック・システム Expired - Fee Related JPH087783B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US42589189A 1989-10-23 1989-10-23
US425,891 1989-10-23

Publications (2)

Publication Number Publication Date
JPH03180979A JPH03180979A (ja) 1991-08-06
JPH087783B2 true JPH087783B2 (ja) 1996-01-29

Family

ID=23688470

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2248986A Expired - Fee Related JPH087783B2 (ja) 1989-10-23 1990-09-20 マルチプロセッサ・グラフィック・システム

Country Status (2)

Country Link
EP (1) EP0425172A3 (ja)
JP (1) JPH087783B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7013246B1 (en) 1999-05-24 2006-03-14 Parametric Technology Corporation Parametric exchange of data between a modeling system and an external application program
US7006956B1 (en) * 1999-05-24 2006-02-28 Parametric Technology, Corporation Integration of an analysis into the features of a model of an object
CN109785224B (zh) * 2019-01-29 2021-09-17 华中科技大学 一种基于fpga的图数据处理方法和系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Computers&Graphicsvol.12,No.2,1988P.155−P.162

Also Published As

Publication number Publication date
JPH03180979A (ja) 1991-08-06
EP0425172A2 (en) 1991-05-02
EP0425172A3 (en) 1992-09-02

Similar Documents

Publication Publication Date Title
US7486294B2 (en) Vector graphics element-based model, application programming interface, and markup language
EP0636971B1 (en) Method and apparatus for producing a composite second image in the spatial context of a first image
US5249265A (en) Structure storage management in a graphics display device
US4731606A (en) Method for rapid windowing of display information in computer graphics
RU2324229C2 (ru) Визуальный и пространственный графические интерфейсы
US5251322A (en) Method of operating a computer graphics system including asynchronously traversing its nodes
EP0329771B1 (en) High performance graphics workstation and method of operating therefor
US5182797A (en) Multi-processor graphics display system for displaying hierarchical data structures
JPH06309466A (ja) グラフィカル・イメージの表示装置及び方法
JP4630482B2 (ja) 表現ツリーを生成する装置及びラスタ画素イメージを描画する装置
US5448688A (en) Image position interpretation in a graphics system
JP3359634B2 (ja) 境界内更新を備えたグラフィックス出力システム
Döllner et al. Object‐oriented 3D Modelling, Animation and Interaction
EP0607131B1 (en) graphics output system and method
JPH087783B2 (ja) マルチプロセッサ・グラフィック・システム
Myers Interactive computer graphics and PHIGS
EP0425180B1 (en) Structure storage management in a graphics display system
Hsu et al. HAGI, a High‐level Application/Graphics Interface
Hagy et al. XGL: A Case Study of the Design of a Graphics Interface
Gullestad Implementation of a subset of PHIGS
JPH056401A (ja) Cadの図形表示方式
JPH07114651A (ja) 3次元図形処理方式
AU9734901A (en) Image compositing with efficient memory usage

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees