JPS62271066A - 物体を表示するグラフイツクスプロセツサ - Google Patents

物体を表示するグラフイツクスプロセツサ

Info

Publication number
JPS62271066A
JPS62271066A JP62060281A JP6028187A JPS62271066A JP S62271066 A JPS62271066 A JP S62271066A JP 62060281 A JP62060281 A JP 62060281A JP 6028187 A JP6028187 A JP 6028187A JP S62271066 A JPS62271066 A JP S62271066A
Authority
JP
Japan
Prior art keywords
segment
data
memory
graphics
processor
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
Application number
JP62060281A
Other languages
English (en)
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.)
General Electric Co
Original Assignee
General Electric Co
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 General Electric Co filed Critical General Electric Co
Publication of JPS62271066A publication Critical patent/JPS62271066A/ja
Pending 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

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Generation (AREA)
  • Processing Or Creating Images (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔左業上の利用分野〕 本発明は周辺プロセッサに関するものであり、更に詳し
くいえば階層的データ構造を処理するプロセッサに関す
るものである。
〔従来の技術〕
全体の装置の処理違反を向上させるために、コンピュー
タ装置は周辺プロセッサをしばしば含む。
1つまたはそれ以上の機能を効率的に実行するために、
周辺プロセッサは普通は特殊化される。そのような周辺
プロセッサの一例が、主コンピユータすなわち「ホスト
」コンピュータの制御の下にグラフィックスデータを作
成し、修正し、表示するグラフィックスプロセッサであ
る。
クラフィックスプロセッサは種々の用途において用いら
れる。たとえば、相互作用コンピュータ支援設計(CA
D)製置は、設計すべき物体のモデルを格納および表示
するためにグラフィックスプロセッサをしばしば用いる
。設計者は種々の入力装置を介してモデルを、しばしば
「部分」ごとに作成することを指示する。モデルの種々
の部分はグラフィックスデータベースを作成する。その
グラフィックスデータベースはグラフィックスプロセッ
サによって格納され、指令に応じて表示される。設計者
によりモデルが変更されると、装置がデータベースを修
正させられ、修正されたモデルを表示するために表示ス
クリーンを更新させられる。
グラフィックスデータベースを格納するための1つの書
式は「階層表示リスト」と呼ばれる。この階層表示リス
トには徨々の物体(または物体の部分)を記述するグラ
フィックスデータが「セグメント」で格納される。各セ
グメントは物体を表すものと考えることができる。各セ
グメントは親/子関係で1つまたはそれ以上のセグメン
トを有することができる。ちる「親」セグメントの「子
」セグメントは1つまたはそれ以上の子セグメントを有
することができる。セグメントの間のこの現/子関係に
より、第2図に示すような階層的「樹木(ツリー)」構
造が得られる。
階層的グラフィックスデータベースの各セグメントは、
現セグメントに対する「ポインタ」と、子セグメントに
対する「ポインタ」と、「同胞」セグメントに対する「
ポインタ」とを通常有する。
あるセグメントに対する「ポインタ」はそのセグメント
のスタート記憶場所を識別する。構造的なデータにカロ
えて、各セグメントはグラフィックス原形と、それらの
グラフィックス原形の属性とを含むこともできる。グラ
フィックス原形というのは、その特定のグラフィックス
原形に対する便利な三次元座標系における座標リストに
より定められる多角形またはベクトルのような簡単で、
平らな物体が典型的なものである。グラフィックス原形
に対する属性データは原形の色その他の特性を定めるこ
とができ、かつ親セグメントの座標系に対するセグメン
トのグラフィックス原形の空間位置および向きを指定す
る変換マ) IJ ”tクスも含む。
階層的なグラフィックスデータベースの特徴は、親セグ
メントとは異ならないが、子セグメントにおいて定める
必要はなく、その代りに親セグメントから「相続」でき
る属性情報である。
グラフィックスプロセッサは、ホストコ/ピユータから
の指令に応答して、階層的データベースのセグメントの
作成、コピーまたは削除を行うことができる。その階層
的データベースはグラフィックスプロセッサの別々の盟
に通常格納される。
グラフィックスプロセッサはM性、グラフィックス原形
および各セグメント内のKmマ) IJラックスホスト
コンピュータからの指令に応答して削除、7JO算また
は修正を行うこともできる。階層的なデータベースが完
成されると、プロセッサはグラフィックスデータベース
を読出して処理し、そのグラフィックスデータベースに
より表され、ホストコンピュータにより定められた「ビ
ューボート」を通じて見た物体の映像を表示スクリーン
上に発生する。グラフィックスデータベースの読出しに
おいては、グラフィックスプロセッサはデータベースの
1つのセグメントにおけるデータを、横断アルゴリズム
に従って、読取ることによりデータベースを「横断し」
、それからセグメントポインタにより識別される相対的
な(親、子または同胞〕セグメントまで動く。このよう
にして、表示リストが処理されるまでグラフィックスプ
ロセッサは樹木を横断する。
高度なグラフィックスプロセッサは、セグメントのグラ
フィックスデータについていくつかの処理機能を行う。
1つの重要な機能は、ビューボートにより定められてい
る視野内にグラフィックス原形があるかどうかを判定す
るために、その原形を試験することである。もしなけれ
ば、セグメントおよびそれの子セグメントを以後の処理
のために無視できる。
付加グラフィックスデータの処理は、各セグメントのた
めの変換マトリックスを発生するために変換マトリック
スの連結を含むことである。そのに換マトリックスはセ
グメントのグラフィックス原形座標系を、樹木の「トッ
プ」におけるビューボートセグメントの座標系に変換で
きる。また、任意の原形のうち、視野の外側へ延長する
部分が処理されないように、グラフィックスプロセッサ
は部分的に見えるグラフィックス原形を「クリップ」で
きる。
三次元で定義されるグラフィックス原形は、三次元から
表示器の二次元映像平面へ通常投影される。主な投影技
術は並列投影技術および透視投影技術である。並列投影
は、三次元座標系の第3の座標(英行き)を単に無視す
るだけで行うことができる。あるいは、透視投影は初め
の2つの座標を第3の成分で除して、見る人から遠くな
る原形の寸法が小さくなる効果を与えることにょシ行う
ことができる。
グラフィックス原形がクリップされ、投影されると、グ
ラフィックスプロセッサは座標を、原形を表示スクリー
ンに表示するために用いられる[ハードウェア座標」に
変換する。ハードウェア座標から原形は「ラスタ化され
る」。そのラスタ化により原形のハードウェア座標がピ
クセルの集りに変換される。後方に面する多角形原形は
プロセッサによる以後の処理から除外される。
また、各種の技術を用いて見える表面に[゛陰影」をつ
けることができる。そのうちの1つの技術は、各原形の
セグメントにおいて定められている色属性を単に用いる
ことである。第2の陰影づけ技術は、各ビクセルの減衰
率を計算するためにビクセルの奥行きに用いることであ
る。たとえば、見る人に近い原形は、セグメントの属性
で指定された色で表示できる。原形が見る人から遠くな
るにつれて、選択された属性色の陰影が濃くなる。その
ような陰影づけ技術は1−奥行きキューイング」としば
しば呼ばれる。第3の攬類の陰影づけは光源をモデル化
し、簡単な光学法則を基にして陰影づけの強さを計算す
ることにより行われる。この技術を原形ごとを基にして
実行する時には、この技術は「フラット陰影づけ」とし
ばしば呼ばれる。
ピクセルごとを基にしてこの技術を行う時は、この技術
は「スムース陰影づげ」または「グーラウド(Gour
aud )陰影づ0丁」と呼ばれる。
〔発明が解決しようとする間亀点〕
以上述べたことから、セグメントのグラフィックス原形
を処理および表示するために大量の計算をしばしば求め
られることがわかるであろう。複雑なモデルが測子とい
うセグメントのデータベースを含むことができる。その
結果として、データベースをスクリーン上の映像に変換
するために、グラフィックスプロセッサは非常に長い時
間ft要することがある。
映像を発生できる速さを向上させるために、多くのグラ
フィックスプロセッサは、主CPUにガロえて、「形状
寸法プロセッサ」としばしば呼ばれる1つまたはそれ以
上の%殊に設計さnたコプロセッサを用いる。その形状
寸法プロセッサは選別、クリップ、マトリックスの変換
等を行うために多くの算術演算を実行する。しかし、そ
のような従来のグラフィックスプロセッサの多くに対し
て、グラフィックスデータベース中のデータが変更され
た時に、多数のデータベースがスクリーン上の映像を更
新するために、20秒というような長い時間を依然とし
て要することがある。多くの用途においてはそのように
長い時間を要することは、グラフィックスプロセッサの
効果を大きく損うととがある。たとえば、コンピュータ
支援設計装置においては、変更が入力された時に表示を
更新するために20秒待つことは非常にいらいらするこ
とであり、設計者の時間を浪費することになる。データ
の変更を実時間で表示する必要がちる他の用途では、低
速のグラフィックスプロセッサは全く使用できないこと
がある。したがって、グラフィックスプロセッサの動作
を大幅に速くする必要があることがわかる。
〔問題点を解決するための手段〕
本発明の目的は、データベースの処理速度を大幅に向上
させた改良したグラフィックス処理装置を得ることであ
る。
その目的およびその他の目的と、本発明の諸利点は、グ
ラフィックスデータベースの横断を容易にする独特のア
ーキテクチャを有するグラフィックスプロセッサにおい
て:A成され、得られる。ここで説明する実施例におい
ては、グラフィックスプロセッサは、ホストコンピュー
タからの指令に応答してグラフィックスデータベースを
作成および維持する第1のプロセッサを含む。本発明に
従って、第1のプロセッサにより開始されると、第2の
プロセッサがデータベースを独立して横断し、形状寸法
処理のために最適にされた速度でグラフィックスデータ
を迅速に読取る。データベースの横断を一層容易にする
ために、グラフィックスプロセッサは横断読出し動作の
みのための流線形の専用データ路を有する。その専用デ
ータ路はグラフィックスプロセッサのメモリを、別々の
形状寸法プロセッサを含むことができる第2のプロセッ
サに結合する。そのような構成により、グラフィックス
データのグラフィックスデータベースからの読出しと処
理の速度、を著るしく高くできることが見出されている
本発明の別の面においては、第2のプロセッサは、ここ
で「樹木横断器」と呼ぶアドレス発生器ロジックを含む
。この樹木横断器はグラフィックスプロセッサメモリを
迅速にアドレスし、グラフィックスデータの流れを専用
データ路を介して形状寸法プロセッサへ与える。形状寸
法プロセッサはデータを選別し、形状寸法プロセッサを
樹木横断器に存在するスタックメそりへ結合するスタッ
クバスのみを介して、「潜在的に見える」セグメントの
属性データを格納する。横断路の最後のセグメントに達
すると、樹木横断器は向きを逆にしてその横断路の見え
るセグメントを再びたどる。
逆向きて横断している間に、見えるセグメントの属性デ
ータが樹木横断器スタックからスタックバスを介して形
状寸法プロセッサへ転送される。また、樹木横断器はa
狂的に見えるセグメントのグラフィックス原形をアドレ
スし、それらのグラフィックス原形を専用データ路を介
して形状寸法プロセッサへ転送して更に処理する。その
ような構成により形状寸法プロセッサの利用速度、およ
び装置全体のデータ処理速度が大幅に高くなることが見
出されている。その結果、グラフィックスデータベース
の変更に応じて、スクリーン上の映像をはるかに高い速
度で更新できる。
〔実施例〕
以下、図面を参照して本発明の詳細な説明する。
第1図は本発明によるグラフィックス処理装置(ここで
は(グラフィックスプロセッサ」と呼ぶ)10の略図で
ある。このグラフィックスプロセッサ10は、ホストコ
ンピュータ(図示せず)からホストインターフェイス、
14を介して受σたホストレベル命令を実行する端末プ
ロセッサ12を含む。表示リストメそり(DLM)16
 に格納される階層表示リストの形でグラフィックスデ
ータベースを構成し、管理するために、多数のホストレ
ベル命令が与えられる。端末プロセッサ12は汎用シス
テムバス18を介してDLMl 6 と通信する。
その汎用システムバス18は、図示の実施例においては
、標準の32ピツト[ブイ・ニム・イー・バス(VMg
bus ) J である。そのVMEbus規格の仕様
が、VMEbus ・ マニュファクチャラース番グル
ープ(Manufacturers Group )の
VMEbus仕様マニュアル(5pecificati
on Manual)。
改訂B、1982年8月で見ることができる。
ホストレベル命令が、ホストコンピュータにあるホスト
アプリケーション−プログラムにより送られる。そのホ
ストアプリケーション・プログラムの使用者は、グラフ
ィックスタブレット20、英数字キーボード22のよう
な各種のグラフィックス入力装置、あるいはジョイステ
ィック、マウス、ダイヤルボックス、トラックボール(
図示せず)のようなその他の各種の入力装置を用いてグ
ラフィックスプロセッサに直接入力することもできる。
それらの入力装置を用いてグラフィックスデータベース
の修正、見るパラメータの変更、表示器26により行わ
れるグラフィックス表示のパンすなわちズームを行うた
めにグラフィックス命令を発生できる。このようにして
CAD装置の用途はグラフィックス表示器26の相互作
用的局部制御を行うことができる。
本発明に従って、メモリ16に格納されている階層表示
リストを迅速に読出すために第2のプロセッサが設けら
れる。その第2のプロセッサは形状寸法処理サブシステ
ム30を含む。この形状寸法処理サブシステムは表示リ
ストメモリをアドレッシングするためのアドレス発生ロ
ジック32を有する。このアドレス発生ロジックのこと
をここでは「樹木横断器」32と呼ぶ。この樹木横断器
は階層表示リストのセグメントからセグメントへ横断し
、各セグメントのデータを逐次アドレッシングする。こ
の横断により表示リストの樹木構造が、表示リストメモ
リ(DLMjバス34と呼ばれる専用データ路を介して
データ流に変換される。
DLMバス34はデータの流れを樹木横断器32と、選
別、クリップ、投影および変換マトリックス連結という
処理機能を実行する形状寸法プロセッサ3Bとに送る。
これまでは、多くのグラフィックスプロセッサはデータ
ベースの作成および維持の機能、および処理のためにグ
ラフィックスデータを読出すためのデータベースの横断
の機能を実行するために、1つのプログラムされたCP
Uを用いていた。それとは対照的に、本発明のアーキテ
クチャにより、データベースの横断速度を著しく高くす
ることができることが見出されている。本発明の1つの
面において、樹木横断器32はデータベースの横断のた
めに適切なアドレスを迅速に発生できる。更に、DLM
バス34が極めて高いデータ転送速度でデータを転送で
きるように、DLMバス34は表示リストメモリ16か
ら樹木横断器32と形状寸法プロセッサ36へ専用の一
方向データ器を与える。
本発明の更に別の面において、スタックバス32と呼ぶ
双方向データ路が形状寸法プロセッサを樹木横断器32
に直結する。後で詳しく説明するように、次のグラフィ
ックス原形へ進むまでは、形状寸法プロセッサ36は各
グラフィックス原形を完全には処理しない。その代りに
、関連するグラフィックス原形を潜在的に見ることがで
きるもの、と形状寸法プロセッサ36が選別中に判定し
たとすると、形状寸法プロセッサ36は金属a(第9図
参照)のようなグラフィックスデータをスタックバス3
8を介して樹木横断器32へ直接転送する。樹木横断器
32は形状寸法プロセッサからのグラフィックスデータ
を内部スタックメモリに先入れ/後出し法で格納する。
樹木横断器がある横断の最後のセグメントに遅すると、
樹木横断器は向きを反転し、+1!F任的に「見える」
セグメント、すなわち、壱任的に見えるグラフィックス
原形をゼするセグメントを逆にたどる。
樹木横断器32が横断器をセグメントからセグメントへ
再び横断するにつれて、樹木横断器はそれのスタックメ
モリに格納されている各セグメントに対するグラフィッ
クスデータをスクリーンバス311−弁して形状寸法プ
ロセグサ36へ転送する。それと同時に、樹木横断器3
2は、表示リストメモリに格納されている付加グラフィ
ックスデータをアドレスする。その竹刀ログラフィック
スデータは、ここで説明している実施例においては、グ
ラフィックス原形自体である。グラフィックス原形はD
LMバス34を介して形状寸法プロセッサ36へ転送さ
れる。グラフィックスプロセッサ136は樹木横断器ス
タックメモリからのデータと表示リストメモリ16から
のデータを利用して、表示のためにデータの処理を続行
する。ここで説明している実施例においては、形状寸法
プロセッサはセグメントのグラフィックス原形をクリッ
プおよび投影し、適切な陰影っけの計算の一部を行う。
それらの処理が完了したら、形状寸法プロセッサはグラ
フィックス原形を相続された属性とともに(「縁部パケ
ット」の書式で)システムバス18を介して表示プロセ
ッサ40へ送る。形状寸法プロセッサ36は、ウォルタ
ー〇アール・スタイナー (waiter R,5te
iner )  により出願され、本願の出願人に譲渡
され九[ジオメトリイ・プロセッサ・フォー〇グラフィ
ックス・ディスプレイ・システム(Geometry 
Processor for Display Sys
tem) J  という名称の米国特許出願第838.
300号に詳しく記載されている。
表示プロセッサ40はラスク化と、隠されている表面の
除去と、陰影づけ計算の残シとを行う。
多角形のグラフィックス原形をラスク化するために、C
RT表示器26のラスク線に対応する「スパン」と呼ば
れる一連の線分に分割される。それらのスパンは画素(
すなわちビクセル)に再び分割される。その画素は表示
器26のビクセルに対応する。陰影づけは、多角形原形
に対して、各スパンに沿って増分的に計算される。ベク
トル原形は一般に陰影をつけられない。
ビクセルを照明するために、陰影づけ作業中にそのビク
セルについて計算された色の値と輝度の値が、ビデオバ
ス44を介してフレームバッファ42へ転送される。そ
のフレームバッファ’42はビデオ表示26の各ビクセ
ルのための記憶場所を−qfる。フレームバッファ42
の関連する記憶場所へビクセル情報が転送される前に、
「zバッファ」アルゴリズムを用いて、隠されている表
面の解消が行われる。原形がビクセルにラスク化されて
いるから、そのような各ビクセルに対する深さ値が計算
される。この深さ値は、「zバッファ」4Bに格納され
ている深さ値と比較される。2バツフア46は、ビデオ
表示の各ビクセルに対する深さ値を格納するための記憶
場所を有する。2バツフアは、特定のスクリーンビクセ
ル場所に対して計算された各ビクセルの最小深さくすな
わち、見る人に最も近いピクセル)を格納する。その2
バツフアに格納されている深さ値が新しいビクセルの深
さ値よシ浅いとすると、その新しいビクセルは古いビク
セルの後ろKあり(したがって見えない)無視される。
他方、新しいビクセルの深さ値が、2バツフアに格納さ
れている深さ値より小さければ、新しいビクセルは古い
ビクセルの前方にあり、計算されたビクセルの色の値と
輝度の値はフレームバッファ42へ転送され、古いビク
セル値の代りにされる。更に1新しいビクセルの深さ値
が2バツフア46の適切な記憶場所に格納される。ピク
セル情報はCRTラスク走査と同期してフレームバッフ
ァから読出され、ビデオ表示器26上に狭像な発生する
。表示プロセッサ40と、−91ノJ、  +: +”
l η〒j  Q  し   /7 −: 1v M 
〒J  e  L ha rディスプレイ・プロセッサ
・フォー・グラフィックス・ディスプレイ−システム(
Display Pr。
cessor For GraphiCs Displ
ay System)」という名称のζ ウィリアム・
ニー・ケリー(William A、Kelly )、
デビット・イーΦオル) :/ (David i 0
rton )およびグレコ゛リー拳エムΦストック(G
regory M、 5toclOにょυ出願され、本
願出願人へ譲渡された米国特許出願第832518号の
明細書に詳しく記載されている。
グラフィックスプロセッサ装置10の動作と構gをもつ
と良く理解するために、樹木型階層表示リストの簡単に
した例を第2図に示す。第2図の表示リストは第3図に
示されている目的を表し、かつ記述するものである。第
3図はカップおよび皿150と立方体152を示す。そ
れらの簡単な物体は説明のためにのみ選択したものでお
る。実際には、モデル化できる物体はそれらよりはるか
に複雑なものもるる。
立方体52は6つの面1〜6の集りと考えるこ七ができ
る。ここに、各面は特定の色と陰影および全体的に考え
た立方体に対する空間関係を有する四辺形により表でれ
る。このようにして、物体を関連する属性情報を有する
簡単な形(グラフィックス原形)に分解することにより
モデル化できる。
第2因の表示リストにおける基本的な要素はセグメント
である。各セグメントはグラフィックス原形(多角形、
ベクトル等)と、属性(多角形の色、変換マトリックス
等)と、構造情報(関連するセグメントに対するポイン
タ等〕を有することができる。それらのセグメントはF
ノード」とも呼ばれる。
第2図の根セグメントすなわち1番上のセグメン)Aは
「ビューポート」セグメントであって、物体を見るバン
テージ角度(vantage angle)と、見る人
にとって見える空間の体積を定める。
このセグメントは「世界」座標系と名づけられ、第3図
で3本の直交軸54により表されている基準座標系を有
する。カップおよび皿50と立方体52の間の空間関係
はそれぞれの世界座標で定められる。それらの物体を見
るパンテージ角度は、アイ点(eye paint )
 56と照準点(sight p。
int ) 58により定められる視線により指定され
る。
アイ点56と照準点58(世界座標で定められている)
はロール角度θとともに第2の座標系、すなわち、「ア
イ」座標系を定める。アイ座標系の原点がアイ点56に
あり、2′軸が視線に沿って照準点58の向きに延長す
る。ロール角度θが2′軸を中心とするX軸とY軸の回
転角度を定める。このようにして、アイ座標系は、それ
から物体を見分けるバンテージ角度を識別する。
関連する座標系がアイスケール(e7e −5eale
d )座標系である。その座標系においては、クリップ
作業を簡単にするために、アイ座標系のX座標とY座標
が縮められる(scaled )。ビューポートセグメ
ン)Aは、世界座標系における座標をアイ度標系におけ
る座標に変換する変換マトリックスと、アイ座標をアイ
スケール座標系に変換する第2のビューポートマトリッ
クスとを有する。
第2図のビューボルトセグメントAの下に表示リストの
第2のセグメン)Bがある。このセグメン)BFigセ
グメントAの子セグメントであって、全体として考えら
れるカップおよび皿50を表す。
そのカップおよび皿50に「モデル」座標系60が組合
わされる。そのモデル座標系は、それの原点を、カップ
および皿50の多角形の1つの頂点のような都合の良い
位置に置き、各軸を原形データのいくつかに対して整列
させることにより定められる。1つのセグメント内の全
ての原形はそれの関連するモデル座標系を基準とする。
セグメントBは、セグメントBのモデル座標系内の点を
そrLの親セグメン)Aの座標系(この場合には世界座
標系)に変換する変換マトリックスt−有する。
七グメン)Bはそれの子セグメントDの1つに対するポ
インタと、それの同亀セグメントC(こnは立方体52
を表す)に対するポインタも有する。セグメントCは、
セグメントBのように、セグメントAK対しては子セグ
メントでもあり、そ引白身の謳デル沌片3:5フ冬友子
六−とn惧春f社、モデル座標系62の原点は立方体6
0の頂点の1つに置かれ、3本の軸が立方体の菱に沿う
セグメン)Cは立方体60の6つの面1〜6にそれぞれ
対する6つの子セグメントF−に1!:有する。
セグメントF−には非常に類似する。セグメントFはた
とえば親セグメントCに対するポインタと、同胞セグメ
ントGに対するポインタと、子セグメント(もしあれH
)K対するポインタとを有する。
セグメ7)Fは自身のモデル座標系’Th!する。その
座標系においては面1を形成する多角形の4個の頂点が
指定される。セグメン)Fはグラフィックス原形の色そ
の他の属性も定める。
狭小リストの各セグメントがグラフィックスデータを含
むいくつかのデータバッファと、バッファが配置妊れる
記憶場所を指すポインタをMする制御ブロックとに書式
化される。第4図は典型的なセグメント制御ブロックの
例を示す。語Oは、セグメントの次の間1泡ヲ指す同胞
ポインタである。
第2図の表示リストのビューポートセグメントAは同胞
を持たず、したがって、セグメン)A制御ブロックの語
OがOにセットされる。セグメントBは同胞を持つから
、セグメントB制御ブロックの語OがセグメントC制御
ブロックのスタートアドレスを指定する。
語1はセグメントの第1の子セグメントを指す子ポイン
タを定める。したがって、たとえば、セグメント人制御
ブロックの語1がセグメントB1すなわち、セグメント
Aの第1の子セグメント、を指す。語8はセグメントの
fiK対するポインタである。
セグメント制御ブロック場所が定められた語3が、グラ
フィックス原形の属性を格納するセグメントの選別バッ
ファに対するポインタラ含む。それらの!f4性の間に
「境界ボックス−1がある。その境界ボックスは選別作
業において形状寸法プロセッサ36により用いられる。
境界ボックスというのは8個1組の座標点であって、あ
るセグメントのためのグラフィックス原形と、全ての子
セグメントの全てのグラフィックス原形を完全に含むボ
リュームを定める。この境界ボックスにより、簡単な比
較試験によって、定められている視野の完全に外側にあ
るセグメントを形状寸法プロセッサ136が迅速に選別
できることになる。
端末プロセッサ12があるセグメントに対する新しいグ
ラフィックスデータを入力するたび、または変換マトリ
ックスを質更するたびに端末プロセッサ12は全表示リ
ストに対する境界ボックスを′*新する。たとえば、1
つのセグメントに新しい多角形が入れられたとすると、
それによりそのセグメントの境界ボックスの寸法が大き
くなる。
セグメントの境界ボックスが大きくなると、そのセグメ
ントの親セグメントの境界ボックスが子セグメントの新
しい境界ボックスを確実に含むようにするために、その
親セグメントの境界ボックスを大きくする盛装がちるこ
ともある。したがって、1つのセグメントが変化すると
、その変化により影響ヲ受けないセグメントに達するま
で茨示リスト樹木も影響を受けることがある。セグメン
トが修正された時に各セグメント内のフラッグ語がセッ
トされて、そのセグメントの親セグメントに対する境界
ボックスも更新すべきことを示す。
境界ボックス以外に、選別バッファは、セグメントのグ
ラフィックス原形のある特徴を定める属性データも含む
。ある特定の特徴があるセグメントの選別バッファにお
いて定められないとすると、その%徴の定義が親セグメ
ントから相続される。
たとえば、セグメントCに関連するグラフィックス原形
(もしあれば)が「赤」色を有するものとして定めるも
のとすると、グラフィックス原形の色を局部的に定めな
いそれの子セグメント、面セグメン)F−に、のいずれ
かが「赤」のグラフィックス原形色を相続する。この相
続は、後で詳しく説明するように、横断中にダイナミッ
クに行われる。
選別バッファは、セグメントの局部座標系をそれの親セ
グメントの座標系に変換する変換マトリックスも含む。
光源情報もビューボートセグメントの選別バッファに格
納される。
セグメント制御テロツクの語4がセグメントの原形デー
タを含むデータバッファに対するポインタを定める。グ
ラフィックス原形がセグメントの局部的モデル座標系に
関して定められる。
グラフィックスプロセッサ装置10により用いられる表
示リスト構造によυセグメントの「劣化(instan
ttation)Jを行うことができる。
すなわち、1つのセグメントがひとたび作られると、表
示リスト構造内の他のセグメントにょシその1つのセグ
メントを何回も参照できる。たとえば、立方体の面を定
める1つのセグメント内、セグメントCの各子セグメン
トに対してこの情報の写しをとるのではなくて、第2因
のセグメントF〜にの各セグメントにより呼出すことが
できる。
例に引かれたセグメントの各基準は、例に引かれたセグ
メントの属性分変更できる。その理由は、その属性情報
を横断中に相続できるからである2したがって、各セグ
メントF〜には、劣化された面を立方体60を形成する
正しい場所に位置させる異なる変換マトリックスを有す
る。
劣化のために2つの%珠セグメント溝造か用いられる0
「例(1nstance) J  セグメント構造が用
いられる。「例(1nstance ) J セグメン
トというのは、劣化できるセグメントのことである。
第4図の制御ブロックにょシ表されるセグメントのより
な通常のセグメントは劣化されない。例セグメントは表
示リスト樹木から別々に作成される。
しかし、例セグメント自体がサブ樹木の1香上のセグメ
ントとすることができるように1例セグメントは子を持
つことができる。
例セグメントのための制御ブロックが、第4図に示す通
常の制御ブロックと僅かに異なるようにして第5図に示
されている。例セグメントは何回も参照できるから、例
セグメントは1つの親は持たない。したがって、語8の
親ポインタが、例セグメントを呼出す第1のセグメント
を指す「オーナー」ポインタに置き換えられている。ま
た、例セグメントは同胞を持たないから、語0の同胞ポ
インタは零である。
例セグメントが作成されると、その例セグメントが呼出
される、すなわち参照されるたびに、その例セグメント
を表示リストに結びつけることができる。参照は例呼出
しセグメントで行われる。
その例呼出しセグメントに対する制御ブロックが第6図
に示されている。呼出しセグメントは主表示リスト樹木
の一部であって、主樹未と例示されるセグメントの間の
リンクとして機能する。樹木が横断させられると、劣化
されたセグメントは呼出しセグメントを介して属性を相
続できる。たとえば、立方体60の面を表すために劣化
が用いられたとすると、第2図の各セグメン)F−には
例呼出しセグメントである。
呼出しセグメントは例セグメントを表示リスト樹木に結
びつけるためにのみ通常用いられる。したがって、呼出
しセグメントに組合わされるデータはない。第4図およ
び第5図のセグメント制御ブロックにおいてデータバッ
ファポインタとして用いられる語4が、同じ例を呼出す
次の呼出しセグメントを指す仲間ポインタとして代9に
用いられる。語lは例セグメンIf指すために用いられ
る。
上記から、正常なセグメントの制御ブロックと、例セグ
メントの制御ブロックおよび呼出しセグメントの制御ブ
ロックが非常に類似することがわかる。それらの制御ブ
ロックのことを以後「物体ヘッダブロック」と全体的に
呼ぶことにする。フラッグ語(語2)のビット20,1
9.18は、ある特定の物体ヘッダブロックの種類をい
つセットするかを指示する。
第4図および第5図の制御ブロックの語9は、セグメン
トデータバッファ内のデータの最後のパケットに対する
ポインタを含む。ここで説明している実施例においては
、表示リスト中の全ての量(制御ブロックを含む)は1
6語または32語の固定長パケットに格納される。各語
は32ビツトである。それらの固定長パケットはメモリ
のアクセスと、メ七りの割当ておよび割当て解除の各タ
スクを容易にする。
第7図は選別バッファまたはデータバッファの典型的な
パケットを示す。パケットを16語または32に詰める
ために、パディング語が必要に応じて用いられる。32
語よシ通常長い(多くの原形データ型のような)量が1
6語(または32語)パケットに分割され、「次のパケ
ットJポインタを介して一緒にリンクされる。制御ブロ
ックの[最後のデータバッファパケット」ポインタが、
セグメントデータを添えるために最後のバッファパケッ
トを見つけるように、リンクされているリストの全体を
横断する必要をなくす。
上記セグメントは、端末プロセッサ12によυ通常のや
υ方で作成され、表示リストメモリ16に格納される階
層表示リストを形成する。媒末プロセッサ12はシステ
ム、バス18を介してメモリ16をアクセスする。表示
リストがメモリに格納されると、その表示リストを横断
でき、かつ処理して、格納されている物体表現の希望の
表現を発生できる。
第8図は、横断と、全体のグラフィックスデータ処理の
2つの基本的な副プロセスとを行う形状寸法プロセッサ
30を詳しく示す。第1の副プロセスは、あるセグメン
トの物体が選択されている視野内にあるか否かを主とし
て判定する「選別」プロセスである。前記したように、
各セグメントには、セグメントのグラフィックス原形と
、セグメントの子の全てのグラフィックス原形とを完全
に囲むボックスが組合わされる。形状寸法プロセッサ3
6は、6つのクリップ平面により定められているビュー
ボリュームに対する囲むボックスの位置を判定する試験
を行う。セグメントを囲むボックスがビューボリューム
の完全に外側にある時は、そのセグメントの全てのグラ
フィックス原形は見えず、セグメントは「選別」されて
除外される。すなわち、セグメントおよびそのセグメン
トの全ての子が無視され、それ以上処理されない。
囲むボックスがビューボリュームの内側に全部または部
分的に入っていると判定されると、セグメントのグラフ
ィックス原形は潜在的に見ることができる。選別プロセ
ス中に行うことができる別の試駆は囲むボックスの投影
される寸法を基にする。
セグメントを囲むボックスの投影されたスクリーン寸法
が、所定の数のビクセルよシ小さい〔また゛は大きい〕
とすると、そのセグメント(およびそれの子)も無視で
きる。
囲むボックスが1つまたはそれ以上のクリップ平面と交
わったとすると、クリップ平面と交差しているそれらの
グラフィックス原形のクリップ操作が第2の副プロセス
で行われる。クリップ操作により、原形のうち、クリッ
プ平面娑こえて延長する部分が、それ以上の処理から除
外される。
形状寸法プロセッサ36により行われる第2の基本的な
副プロセスは、選別プロセス中に見える(または潜在的
に児える)と判定されたグラフィックス原形が必要に応
じてクリップされ、原形の座標が三次元座標から二次元
座標に投影されるような面処理である。また、陰影づげ
の計算が行われ、クリップされ、かつ投影された原形が
、更に処理されるために表示プロセッサ4oへ送られる
ように、縁部データパケットに書式化される。
表示リストメモリ16のデータベースの横断と処理を開
始するために、端末プロセッサ12は「5TART T
RAVfR8EJ命令を樹木横断532へ送る。そうす
ると、樹木横断器は表示リスト樹木のビューボートセグ
メントのスタートアドレスを指定する。スタートアドレ
スは、前記したように、ビューボートセグメントの選別
バッファおよびデータバッファに対するポインタを含む
ビューボートセグメント制御ブロックのアドレスである
端末プoセフ?12は5TART TRAVER8Il
il:命令をシステムバス18を介して、樹木横断器3
2のシステムパスインターフェイス100によF)シス
テムバス18に結合されている制御器102へ送る。シ
ステムバスインターフェイス100は適切なアドレスバ
ッファと、データバッファド、システムパス18に対す
るアクセスを決定する制御ロジックとを有する。ここで
説明している実施例においては、システムパス18は標
準の前iZ VMEバスである。
樹木横断器320制御器102は表示リストメモリ中の
表示リストを横断し、リンクされているパケットを横断
アルゴリズムに従って逐次アドレッシングし、表示リス
トデータの送シ出しを形状寸法プロセッサ36に統合す
る。図示の実施例の制御器102は、後で詳しく説明す
るように、プログラム可能なビットスライス制御器とし
て構成される。あるいは、制御器302は、専用のハー
ドウェア状態マシンまたはマイクロプロセッサと、適切
な周辺集積回路チップとで構成できる。
樹木横断器32は、端末プロセッサ12から更に命令を
受けることなしに、表示リストを横断できる。制御器1
02は、端末プロセッサ12から得たビューボートセグ
メント制御ブロック(第4図)の語OのアドレスをDL
M ADDRIESSバス104に置いて、表示リスト
メモリ16へ与える。
それから、表示器102 ば、メモリの読出し動作を求
められていること、およびDI、M ADDRESSパ
ス104上のアドレスが妥当であること’(DLMRE
QUIST線106 を介して表示リストメモリ16へ
知らせる。その合図に応答して、表示リストメモリ16
はDLM アドレス″fm出し、DLMアドレスを大き
くすることを、D L M AD D RE S 5I
NCREI:MgNT信号線110を介して制御器10
2へ知らせる。ここで説明している実施例においては、
表示リストメモリ16は四方インターリーブトメモリで
ある。後で詳しく説明するように、メモリ16からのグ
ラフィックスデータの読出し違反を扁くするために、メ
モリ16は4個のアドレスを逐次受け、4つの読出し動
作を重々9合って行うことができる。初めの4つのアド
レスが読出でれた後で、表示リストメモリ16はセグメ
ント制御ブロックの(同胞ポインタを含んでいる)語O
を、等用データ路すなわちDLMバス34のバス107
 を介して樹木横断器32へ与え、DATAVALI[
)線108上のデータが妥当であることを矧らせる。そ
れから、表示リストメモリ16は次のアドレス(語4の
アドレス)を逐次読出し、次の給(語1)を逐次出力す
る。
メモリ16からのグラフィックスデータは樹木横断器3
2の多ボートレジスタファイル112の、表示リストメ
モリ16によりREGISTERADDRIESS ハ
ス114 を介してレジスタファイル112へ与えられ
たレジスタアドレスに格納される。制御器102はDI
J”アドレスの増加を続け、表示リストメモリ16は、
セグメント制御ブロックの16語の全てがDLMレジス
タファイル112に格納されるまで、それらの記憶場所
に格納されている語の出力を続ける。その間に、ビュー
ポートセグメント選別バッファの第1の選別パケットの
スタートアドレスを識別するために、制御器102はセ
グメント制御ブロック(第4図)の語3を調べる。この
ようにして、制御器102は、セグメント制御ブロック
の最後の語がアドレスされると、第1の選別バッファパ
ケットのスタートアドレスを直ちに送る用意ができる。
16語(ま九は32語)の第1の選別パケットが樹木横
断器レジスタファイル112と、形状寸法プロセッサ3
6中の類似のレジスタファイル115 とに送られて、
ビューボートセグメントAの選別プロセスを開始させる
。制御器102は、選別バッファの次のパケットのスタ
ートアドレスを決定するitめに、第1の選別パケット
の語0(第7図)内の「次のパケット」ポインタを調べ
る。
樹木横断器32は語lのFバイトカウント」も調べる。
32語パケットが指示されたとすると、樹木横断器は転
送すべき語の数を16から32へ増加させる。第1のパ
ケットが形状寸法プロセッサ()LMレジスタ115に
ロードされると、そのことが制御器102によ、9GP
  DLM REGISTERLOAD信号線116 
により知らされる。それから、形状寸法プロセッサ36
が選別パケット内のデータの処理を開始し、それGて絖
いて、、形状寸法プロセッサ[)LM レジスタファイ
ル115 を利用できることを制御信号線118を介し
て知らせる。それに応答して、制御器10°2は次の選
別パケットを形状寸法プロセッサ16へ転送スル。
DLMバス34は1つのソースすなわち表示リストメモ
リ16からアドレスとデータを、ただ1つの向き、すな
わち樹木横断器32と形状寸法プロセッサ36へ送る。
したがって、DL〜lバスはバス仲介またはハンドシェ
イクによる遅れはなく、したがってデータ転送速度を極
めて高くできる。
ここで説明している実施例においては、DLMバス34
は1秒間当り40メガバイトのデータを転送できる。こ
れはVMEパス18の1秒間当り 6メガバイトのデー
タ転送速度よシ高い。
樹木横断器32は選別バッファパケットを1度に1つず
つ、メモリ16からDLMデータバス107を介して形
状寸法プロセッサ36へ送る。
第7図に示すように、各選別およびデータ原形パケット
はオペレーションコード(語1のピット8〜15)’e
有する。そのコードはパケットのデータに対して求めら
れる特定の処理を形状寸法プロセッサ36に指示する。
形状寸法プロセッサは各パケットのためのオペレーショ
ンコードを読取って、処理し、適切なオペレーションを
実行する。
形状寸法プロセッサ36の処理オペレーションについて
は以下に簡単に述べる。そのオペレーションについての
許しい説明が前記「エレクトロニック・ジオメトリイ・
プロセッシング・システム」と題する特許出願明Mi書
に記載されている。
ふ で説明している実施例においては、選別バッファは
5a類までの選別パケット′!f−よむ。各パケットは
自身のオペレーションコードを有する。
それら5つのパケットのうちの2つのパケットが根(ま
たはビューポイントコセグメント選別バッファにのみ置
かれるのが普通である。
形状寸法プロセッサへ送られる選別バッファの第1のパ
ケットはセグメント属性を含む。セグメント属性パケッ
トにおいて局部的に定められないセグメント属性は、ス
タックレジスタファイル120に以前に格納された親属
性からセグメント属性を得ることにより「相貌できる」
。形状寸法プロセッサ36は1組の属性(局部的に定め
られたもの、または相続されたもの〕を出力レジスタフ
ァイル122に格納し、セグメントの選別処理中にその
セグメントが見えることが判定された時に、それら1組
の属性をスタックバス38を介して樹木横断器38へ転
送される。ビューボートセグメントAは親セグメントを
有しないから、セグメントAに対する出力レジスタファ
イル122に格納されている全ての属性は、セグメン)
A選別バッファの属性パケットにおいて局部的に定めら
れたものである。
各セグメントの選別バッファは変換マトリックスパケッ
トも通常有する。その変換パケットは、局部(モデル)
座標系からのセグメントデータを親セグメントの座標系
に変換する局部変換マトリックスを含む。ビューボート
セグメントの場合には、局部変換マ) IJラックス世
界座標系をそのビューボートのアイ座標系に変換する。
形状寸法プロセッサ36はマトリックス連結を行う。そ
のマトリックス連結は、親セグメントの以前に連結され
たマトリックスを局部マトリックススへ乗する。その乗
算オペレーションによす、親セグメントの座標系が、表
示リスト樹木の1番士における座標、すなわち、ビュー
ボートセグメントの座標系に変換される。その結果得ら
れた変換されたマトリックスは、セグメントのグラフィ
ックスデータをビューボートセグメントの座標系に変換
する変換マトリックスである。連結されたマトリックス
は出力レジスタファイルに格納される。
セグメントのグラフィックス原形が見えると判定された
時に、その格納されたマトリックスは樹木横断器32へ
転送される。
ビューボートセグメントにおいてのみ典型的に見出され
る1つの選別バッ7アパケットハ「ビューボート」パケ
ットである。このパケットは、投影項(視野、正投影寸
法、クリップ平面の鮮鋭匿(definition)等
)、スクリーンスケーリング環(CRT表示器26上の
最後の映像寸法のような)および適切なフラッグビット
を与えるビューボートを定める。投影項は4X3のマト
リックスに格納されるのが普通である。ビューポートパ
ケットか形状寸法プロセッサ36により受けられると、
そのプロセッサは入カスクーリングマトリックスをスタ
ックレジスタファイル120 に格納し、入力スケーリ
ング環とフラッグピットを出方レジスタファイル120
に格納する。また、ビューホード定義パケットが出力レ
ジスタファイル122からシステムバス18を介して表
示プロセッサ40へ送られる。
ピユーポートセグメントのみに存在するM 7JI] 
パケットは「光源」パケットである。世界座標系で定め
られる光源は、出力レジスタファイル122に格納され
ている現在の変換マトリックスを光源座標に乗すること
により、アイスケールド座標系に回転させられ、その結
果が格納される。
樹木横断器32により形状寸法プロセッサ36へ送られ
た最後の選別バッファパケットは囲むボックスパケット
である。受けた形状寸法プロセッサ36は、親セグメン
トの囲むボックスが全く見えないかどうかについての試
暑を始める。前記したように、セグメントの囲むボック
スが、セグメントのグラフィックス原形と、セグメント
の子セグメントを完全に囲む。
囲むボックスパケットにより定められた囲むボックスが
、ビューポートパケットにより定められた視野内にある
と判定され、ボックスの寸法がユーザが定めた間隔内に
ある(すなわち、物体は大きすぎず、小さすぎない)と
すると、形状寸法プロセッサ36は樹木横断器32まで
のCULLEDOBJEC’l’ VISIBLE信号
線124を作動させて、囲むボックス内の物体がa狂的
に見えることを示す。セグメント囲むボックスが子セグ
メントの物体tfcはグラフィックス原形を囲むから、
完全に見えると判定されたセグメント囲むボックスに関
連するセグメントの子セグメントに対して、見えるか否
かの試験を繰返えす必要は力いことに注目されたい。一
方、囲むボックスが視野の完全に外側であるか、ボック
スの寸法が定められている間隔の中に入っていないとす
ると、CULLEDOBJECT VISIBLE信号
線がリセットされる。
この後者の「見えない」セグメントおよびそれの全ての
子セグメントはそれ以上処理する会費がない。
形状寸法プロセッサ36が選別ノくケラトを処理してい
る間に、樹木横断器32がヘッダーブロックポインタと
、第4図のヘッダーブロックの子ポインタ(語1)と、
第9図に示されているようにスタックメモリ126中の
セグメントに対する1゜樹木レベル」指示器とを格納す
る。「樹木レベル」というのは階層構造内でのセグメン
トのレベルであって、制御器102により計算される。
したがつて、たとえば、同胞セグメントは同じ樹木レベ
ルを有する。子セグメントに対する樹木レベルは親セグ
メントの樹木レベルから1だけ高くされる。
セグメント物体が見えることが形状寸法プロセッサ36
により判定されると、樹木横断器32がフラッグ語と、
連結された変挨マトリックスと、物体の属性とが形状寸
法プロセッサ出力レジスタファイル122からスタック
バス38を介してスタックメモリ126ヘコピーする。
この情報は、第9図に示すように、樹木横断器が供給し
たデータのすぐ上のスタック場所にコピーされる。
選別されたセグメントが以前の選別されたセグメントの
子セグメントであるとすると、情報がスタックレジスタ
ファイル120へもコピーされて、それを相続できるよ
うにする。「データコピー」出力127が形状寸法プロ
セッサ36へ与えられてそのコピーを行わせる。
選別されているセグメントの物体が見えると判定される
と、樹木枦断器32が、無用なデータの転送を遊けるた
めにデータを転送することなしに1メモリロードされた
信号()・ンドシエイク信号線128の1つ〕を形状寸
法プロセッサ36へ供給する。したかつて、見えない物
体のための属性がスタック126に格納されない。後で
詳しく説明するように、見える物体を有すると判定され
ている各セグメントに対するスタックメモリ126に格
納されているグラフィックスデータが、関連するグラフ
ィックス原形が表示リストメモリ16かう形状寸法プロ
セッサ36へ転送されるから、後でスタックバス38を
介して形状寸法プロセッサへ転送される。見えない物体
に対する属性がスタックメモリ126に格納されないか
ら、それらのセグメントは更に処理されることはない。
セグメントの選別バッファが処理された後で、樹木横断
器は表示リストの別のセグメントへ進む。
ここで説明している笑施例においては、曹木横断器がセ
グメントの子を処理する前にそのセグメントの同胞を処
理する同胞優先法を樹木横断器が用いる。セグメントが
同胞を持っていないとすると、たとえば第2図を参照し
て、ビューボートセグメントAはどのような同胞セグメ
ントも庸しない。
セグメン)A選別バッファデータが処理された後で、樹
木横断器は最初の子セグメントであるセグメントBまで
横断する。セグメントB選別バッファパケットを処理の
ために形状寸法プロセッサ36へ送った後で、樹木横断
器は同胞セグメント、セグメントc1へ進み、セグメン
トcの選別バッファパケットを形状寸法プロセッサ36
への送シを開始する。何らの付加同胞セグメントを有し
ないセグメント囲、そうすると樹木横断器は、豆方体5
2を含んでいる観セグメントC囲むボックスが見えると
判定されるならば、最初の子セグメントへ進む。樹木横
断器32はこのようにして横断を就けて、同胞セグメン
)F−にの選別バッファパケットを順次送る。
セグメントがどのような別のセグメントも持たず、かつ
子セグメントを持たない(またはセグメントを囲むボッ
クスが見えない)とすると、樹木横断器32は逆戻りを
開始する。たとえば、セグメントにの全ての同胞セグメ
ントが1回横断されると、樹木横断器32はセグメン)
Kに達する。
面6(セグメントにのグラフィックス原形)が潜在的に
見えると判定されると、樹木横断器32は連結された変
換マトリックスと、セグメントKに対する属性データを
形状寸法プロセッサ出力レジスタファイル122から形
状寸法プロセッサスタックレジスタファイル120へ転
送し、かつ面処理のために、セグメントデータバッファ
のグラフィックス原形パケット(面6のための〕の[)
LMパス34を介する形状寸法プロセッサ36への転送
を開始する。
データバッファパケットは、選別バッファパケットと同
様に、第7図に示すようにポインタによってリンクされ
る。各データパケットは表示リストメモリ16からDL
Mデータバス107を介して、形状寸法プロセッサ36
のDLMレジスタファイル115(第8図)と、樹木横
断器32のDLM レジスタファイル112 とにコピ
ーされる。
樹木横断器32はデータの流れ内の次のパケットを得る
ために各データパケットのポインタアドレスを用いる。
零ポインタが、現在のデータパケットがデータの流れ内
の最後のパケットであることを示す。
形状寸法プロセッサ36は各データ原形パケットを通訳
し、適切なデータパケット面処理アルゴリズムを選択す
る。形状信号プロセッサは、GPDLM REGIST
f2RAVAILABLli:信号線118を作動させ
ることにより、次のデータを受ける状態にあることを示
す。面処理が縁部ごとに形状寸法プロセッサ36により
行われ、その面処理が終った時に各縁部に対するデータ
が縁部パケット書式でシステムパス18を介して表示プ
ロセッサ40へ転送される。
形状寸法プロセッサ36が次のセグメントを面処理する
用意ができていることをその形状寸法プロセッサ36が
示すと、樹木横断面32は次の見える属性セグメントJ
に対する属性および変換マトリックスデータをスタック
メモリ126の1番上から取り、そのデータをスタック
バス38を介して形状寸法プロセッサ36のスタックレ
ジスタファイル120へ転送する。樹木横断器32は第
9図に示されているスタックメモリ126から格納され
ている物体ヘッダブロックポインタを用いて、まずヘッ
ダブロックをアドレスしてセグメントJに対するデータ
バッファを得る。データバッファポインタを用いて、樹
木横断器はセグメントJの面5グラフィックス原形に対
するデータバッファパケットをメモリ16からアドレス
し、かつそれらのパケットをDLMデータバス107 
t−介して面処理のために形状処理プロセッサ36へ転
送する。
図示の実施例の形状寸法プロセッサにより構成された面
処理アルゴリズムが頂点(陰影を施す場合は頂点の垂線
)をスクリーンの座標に変換し、多角形が見る人から見
えない向きに面している場曾にはその多角形を捨て、必
要があれば視野の境界(クリップ平面)に対して多角形
をクリップする。また、形状寸法プロセッサ36は頂点
を透視法または平行法により二次元映像平面上に投影し
、頂点をビューボートに対してスケールする。
表示リストの再横断中に樹木横断器は「見える」セグメ
ント上での逆戻シを続行し、ヘッダブロックポインタと
、マトリックスおよび属性をスタック126から取出し
、データパケットおよびスタックデータを面処理するた
めに、「横断されない」子セグメントを有するセグメン
トに遭遇するまで、それらのデータパケットとスタック
データを形状寸法プロセッサへ送る。前記したように、
セグメントが同胞優先横断の下で同胞ポインタを有する
ものとすると、樹木横断器32はそのセグメントの子ポ
インタを調べない(したがって横断しない)。
したがって、再横断中に、整列しているセグメントのう
ち再横断すべき次のセグメントが子セグメントを持ち、
かつ現在再横断されているセグメントが再横断すべき次
の整列しているセグメントの同胞セグメントであるとす
ると、子セグメントは以前の横断において横断されなか
ったものである。
横断されない子セグメントに遭遇すると、樹木横断器3
2は選別モード横断へ折υ返えされ、横断されていない
子セグメントから表示リストの横断を開始する。
たとえば、樹木横断器32はセグメン)Bの選別の後で
、最初の横断中の子セグメントOでは々く、同胞セグメ
ントCまで同胞優先法に従って横断する。再横断中は、
再横断で樹木横断器がセグメントCへ戻るまで、横断さ
れるセグメントが面処理される。整列させられているセ
グメントの次に再横断するセグメントBが横断されない
セグメント、セグメントD1を有するから、セグメント
Cの後で面処理が終らされる。したがって、樹木横断器
32は面処理のためにセグメン)Bに対するデータ原形
を送らず、その代りに選別モード横断へ折シ返えし、セ
グメントDから横断と選別を開始する。
再横断されている現在のセグメントの語N+2の樹木レ
ベル指示器と、スタック上の次のセグメント(すなわち
、整列されているセグメントのうち次に再横断すべきセ
グメント)の樹木レベルとを調べることにより、横断さ
れない子セグメントが検出される。両方の樹木レベルが
同じであり(すなわち、セグメントが同胞である〕、か
つスタック上の次のセグメントが妥当なポインタラ有ス
るものとすると、子セグメントは横断されなかったこと
に々る。
各セグメントが選別されて除外されるか、面処理される
まで、樹木横断器32は表示リストの横断および再横断
を続行する。ビューポートセグメントの最後のデータバ
ッファパケットは「横断の終り原形」を含む。樹木横断
器はビューポートセグメントに対するデータバッファパ
ケットを最後の形状寸法プロセッサへ送る。したがって
、横断の終υ原形は形状寸法プロセッサ36へ送られる
最後のパケットである。あるいは、スタックメモリ12
6が空にされて、樹木全体が横断されたとすると、樹木
横断器は表示リストメモリ16から「横断の終9」パケ
ットをアドレスし、そのパケットを形状寸法プロセッサ
36へ送る。形状寸法プロセッサにより受けられると、
その形状寸法プロセッサ36は横断の終9原形すなわち
パケットをシステムバス18を介して表示プロセッサ4
0へ送る。そうすると表示プロセッサ40はスクリーン
処理を開始し、端末プロセッサ12への割込みを開始す
る。
表示リストメモリ16は、ここで説明している実施例に
おいては、デュアルポート、フォアウェイインターリー
ブメモリボードである。第10図は表示リストメモリ1
6のよシ詳しい概略ブロック図を示す。メモリ16はダ
イナミックランダムアクセスメモリA−Dの4個のバン
クすなわち「リーブ」を含む。それらのメモリはシステ
ムバス18から第1のボート202を介してアクセスで
きる。その第1のボート202 はデータインターフェ
イス230 と、アドレスインターフェイス232  
ト、制御インターフェイス234 とを含む、それらの
メモリは、データインターフェイス205と、アドレス
インターフェイス206と、制御インターフェイス20
8 とを含む第2のボート204を介して樹木横断器3
2からもアクセスできる。
ボート202.204 のインターフェイスは通常の入
力バッファと出力バッファを再する。
アドレス場所0,1.2.3がメモリA、B。
C,D内にそれぞn配置され、記憶場所4,5゜6.7
がメモIJ A 、 B 、 C、D内にそれぞれ配置
されるように、メモリA−Dのアドレスがインク+ リ
ープされる。したがって、谷パケットの16(iたは3
2)語をそのインターリーフ゛されたやυ方で、各パケ
ットの最初の語である語OtメモリAに格納するという
ようにして、メモリに格納できる。
メモリA−Dからデータバケツ)t[出すために、パケ
ットのスタートアドレス、すなわち、パケットの語Oの
アドレス、が樹木横断器32によりDLM ApDma
ssバス104 を介して樹木横断器ボート284の樹
木横断器のアドレスインターフェイス206 へ送られ
る。ここで説明している実施例においては、樹木横断器
32により供給された24アドレスビツトの2ピツトが
、インターフェイス206のボード選択ロジックによυ
調べられて、それらのビットが、たとえばメモリボ−ド
上のDIFスイッチ(図示せず)Kよりプログラムされ
たDLMメモリボードアドレスコードに一致するかどう
かを判定される。表示リストメ%1716t−正しくア
ドレッシングすることに加えて、樹木横断器32は樹木
横断器ボート204の横断器制御インターフェイス20
8により受けられているDLM REQUEST @ 
10Bを作動させる。それら2つの条件が満されると、
樹木横断器32の要求とシステムバス18の要求の衝突
を「調停する」優先権レゾルバ論理回路210へ要求が
送られる。システムバス18または樹木横断器32の一
方がメモリA−Dを既にアクセスしている間に、システ
ムバス1Bと樹木横断器32の他方がそれらのメモリに
対するアクセスを求めているとすると、前記一方は、前
記他方がアクセスを再び許される前に、続行中のメモリ
アクセスが終った時に、メモリのアクセスを許される。
しかし、メモリA−Dのリフレッシュが要求されるとす
ると、樹木横断器32とシステムバス1Bはアクセスを
否認されることがある。
第11図は樹木横断器の読出し動作中における表示リス
トメモリ16の動作を示すタイミング図である。表示リ
ストメモリ16の正確なアドレッシングが、DLM 5
ELECT 七して示されているタイミング線の正への
移行によp表でれている。
DLM REQUIlil:ST線106の作動が、D
LM RgQとして示されているタイミング線の正への
移行によp懺されている。表示リストメモリ16が正し
くアドレスされ、樹木横断器32からのDLMREQt
JEST線がアクティブである(およびシステムバス1
Bによる表示リストメモリの進行中のアクセスが終って
いる)と、優先権レゾルバロジック2iQ が、PRI
ORITY RESOLIRタイミング線の正への移行
により表されているように、メモリに対するアクセスを
許す。それから、パケットの最初の語のアドレスがメモ
!JA−Dに対する4個のメモリ制御器A−Dへ送られ
る。各メモリ制御器A−Dは、たとえげ74S409集
積回路テップで構成できる。
メモIJ A −Dの各記憶場所は行アドレスおよび列
アドレスにより定められる。メモリ制御器へ与、tられ
だアドレスビットの一部が行アドレスを指定し、アドレ
スビットの別の部分が列アドレスを指定する。制御信号
発生器および+) −7(zeaf)復号論理回路21
2によ多発生され、制御器A〜Dへ与えられる行/列(
R/C)制御信号は、行アドレスビットがメモリA−D
へ最初に出力されるように、第1]図に示すように最初
は高レベルである。優先板レゾルバ210が樹木横断器
32へ優先権を認めた後のlOメガヘルツのクロックパ
ルスが次に正へ移行した時に、制御発生器212は、各
メモリA−Dのために行アドレスイネイブル信号を発生
するためにメモリ制御器A−Dにより用いられる行アド
レスストローブ入力信号(RASIN)  を作動させ
る。このようにして、各メモリA−Dにおいてアドレス
場所行が選択される。
同じクロックパルスが負になると、メモリ制御器A−D
への行/夕II(R/C)信号線が状態を変えて、列ア
ドレスビットがメモリA−Dに対してゲート七七入−l
 f> l   4 二II A 〜n /7’l A
 ツノ!l−フのうちのただ1つが、列アドレスストロ
ーブ入力信号(CASIN、)が制御信号発生器212
により作動させられた後で、列アドレスビットを読出す
ことが可能にされる。樹木横断器32により与えられた
24個のアドレスビットのうちの2つのアドレスビット
により、特定のメモリA−Dが選択される。制御信号発
生器およびリーフ復号論理回路212がそれ゛ら2つの
アドレスビットを復号し、4本の列アドレスストローブ
人力@(CASINA、 CASIN B、 CASI
N C,CASIN D) ノうちの1本をリーフ選択
アドレスビットに従って起動する。パケットの最初の語
はメモリAに格納されているから、最初に選択すべき列
アドレスストローブ入力は、CASINを起動させたク
ロックパルスと同じクロックパルスが負になった時の列
アドレスストローブ入力AすなわちCASIN Aであ
る。CASIN A  信号によりメモリ制御器Aがメ
モリリーフAに列アドレスビット’1入力させることが
できるようKされ、それによりメモリAのアドレッシン
グを終らせる。メモリAにより入力された行および列の
アドレスビット入力が32ビット語を選択する。その3
2ビット語はレジスタAへ出力される。
RASIN信号が起動された時に、表示リストメモリ1
6が樹木横断器32へのDLM ADDRESSINC
RF、MENT信号を起動して、樹木横断器32がDL
Mアドレスを、メモリBK格納されているDLMパケッ
トの次の語のアドレスまで増加する。
第1のアドレス(語Oのための〕がメモリ16により入
力されてから1クロック周期の後で、メモリ16により
第2のアドレス(#&1のための)が入力される。ここ
で説明している実施例においては、パケットの各語は同
じ行アドレスを持ち、列アドレスのみが変る。したがっ
て、CASIN A信号が起動されてから1クロツクパ
ルスの後で、メモリ制御器Bのための列アドレスストロ
ーブ入力信号、CASIN B、が第11図に示すよう
に起動される。その制御信号CASIN Bによってメ
モリ制御器BはメモリBに第2のアドレスの列アドレス
ビットを入力させることができるようにされ、その結果
として、アドレスされた32ビット語(語1)が関連す
る出力レジスタBへ出力させられる。同様にして、メモ
リ16は更に2つのアドレスを入力してそれらのアドレ
スをメモリCとDへ向け、パケットの語2と3を出力レ
ジスタC,Dへそれぞれ出力する。この動作は、パケッ
トの16(または32)語の全てが読出されるまで、メ
モリA−Dを順次アドレッシングする樹木横断器32で
繰返えされる。
語がレジスタA−Dから順次読出され、樹木横断器デー
タインターフェイス205の出力レジスタに格納される
。クロック周期の各牛サイクルごとに、データインター
フェイス25は16ビツト千語七DLMデータバス10
7 に出力する。第11図に示すように、第1のアドレ
スがメモリ16により人力されてからクロックパルスが
5個程度発生された後で、最初の半語がDLMデータバ
ス107上に発生される。しかし、その後で、パケット
の全ての語が読出されるまで、メモリ16は半サイクル
ごとに半語を出力する。表示リストメモリ16は出力線
108上で、データの出現する1クロツクパルス以前に
はデータは妥当であることを樹木横断器32に示す。
表示リストメモリ16は、樹木横断器DLMレジスタフ
ァイル112のレジスタアドレスと、形状寸法プロセッ
サDLMレジスタファイル115のレジスタファイル(
第11図)とを与えるレジスタアドレス発生器222も
有する。それらのレジスタアドレスは、表示リストメモ
リ16からのパケットのデータ語が格納される場所を定
める。
第11図に示すように、レジスタファイルのアドレスは
、表示リストメモリ16により出力される語と同期して
発生される。アドレスは逐次発生されるから、アドレス
発生器222はたとえばカウンタで構成できる。
表示り・ストメモリ16は、第11図に SYSTEM
 RES’ETとして示されているタイミング線により
示されているように、樹木横断器の各読出し要求が終っ
た時に、またはシステムバス18の各読出し要求または
各書込み要求が終った時に、2サイクルのリフレッシュ
を開始するシステムリセットおよびりフレッシュ制御論
理回路214 も有する。読出し要求または書込み要求
が行われないとすると、システムリセットおよびリフレ
ッシュ制御論理回路214内のカウンタが、システムク
ロックの64カウントの後で装置をリセットさせて2サ
イクルリフレツシユが起るようにする。
二重ボートメモリとして、表示リストメモリ16はシス
テムパス18によりシステムパスホード202 を介し
てアクセスすることもできる。第1図の端末アクセスv
12は表示リストデータをシステムパスポート202に
曹込んで、それを維持する。前記したように、システム
バス18は標準のVMEバスである。したがって、シス
テムパスポート202のインターフェイス230,23
2 。
234はV M Eバスの特定の信号線を受けるように
設計される。
システムパスポート202を介して表示リストメモリ1
6をアクセスするために、システムバス18のアドレス
および制御信号は、ここで説明している実施例において
は、3回の試験に通らなければならない。第1に、VM
EアドレスバスのVMEアドレスビットAE22〜AE
29は、DLMメモリボード上のDIPスイッチ(図示
せず)でプログラムされたボード選択コードに一致せね
ばならない。第2)VMEシステムバスのアドレス修飾
ビットが4個のプリセットコードに合致せねばならない
と同時に、VME入力m認応答(IAdK)制御信号が
高レベルでなければならず、アドレスピッ)AE30.
AE31は低レベルでなければならず、VMEアドレス
ストローブ(AS)は低レベルにならなければならない
。第3に、アドレスストローブASの移行と一致して(
まタハアドレスストロープAsが低レベルになってから
1クロックサイクル以内に)、VME長語Ag01とデ
ータストローブDSOO,DSOI  ;6:低レベル
にならなければならず、またはバス誤、り(BERR)
警報が生じ、システムバス1Bはアクセスを許されない
。それら3つの条件を満すことが、典型的なシステムバ
スデータ書込み動作のタイミング図を示す第12図にお
ける3つのタイミング線BO行により表される。
上記3つの争件の全てがAさnると、システムバスメモ
リの要求が優先権レゾルバ210(第1O図)へ送られ
る。表示リストメモリが樹木横断器32によってリフレ
ッシュされなffnば、優先権レゾルバ論理回路210
により直接のアクセスが許される。
システムバス18に対するアクセスの許可は、第12図
のPRIORITY Rε5OLVfiRタイミング線
の正への移行によって表される。システムバスの入力ア
ドレスは、先行する°負りロックの縁部ニオいてシステ
ムバスアドレスインターフェイス2320入力レジスタ
(図示せず)にクロック入力される。それから、アドレ
スインターフェイス入力レジスタへのクロック信号は、
メモリ要不が終了さぜられるまで優先権レゾルバ出力に
よりゲートオフされる。
優先権がシステムバスに許された後のクロックの次の正
への移行時に、行アドレスストローブ入力信号(RAS
IN)が論理回路212によって起動されて、メモリA
−Dが行アドレスビットへ入力できるようにする。1つ
の牛クロックサイクル後に、行/列イネイブル信号(R
/C)が低レベルにトゲされて、メモリ制御器A−Dに
よりメモリA−Dへ送られるアドレスデータを行アドレ
スビットから列アドレスビットへ変える。クロックの次
の正移行により列アドレスストローブ入力(CASIN
)制御信号が開始される。その信号は、第12図に記号
CASIN Xで示されているリーフ特殊列ストローブ
信号である4個の信号CASIN A  、CASIN
  B  、CASIN C、CASIN D  うち
の1つを発生するために、制御信号発生器およびリーフ
復号論理回路212によって用イられる。システムバス
アドレスのVME 7 )”レスビットABO2,AB
O3が制御信号発生器およびリーフ復号論理回路212
により復号され、CASIN  B  、CASIN 
C、CASIN  Dが発生されるかを決定するために
用いられる。
リーフ特殊列ストローブ信号CASIN Xが負へ移行
すると、列アドレスビットが適切なメモリリーフA、B
、CまたはDにクロック入力される。
メモリ16へのデータの書込みに際しては、書込み動作
の当初に書込み(WR) 制御信号が低レベルになる。
制御信号発生器およびリーフ復号論理回路212は、4
つのメモリ制御器A−Dのために、第12図においてW
EXで示されている書込みリーフ特殊イネイブル制御信
号WFI:A 、 WEB 。
WECまたはWEDを発生する。制御信号CASIN 
Xが低レベルになってから1つの牛クロックサイクル後
に、選択されたメモIJ A −Dのための関連する書
込みイネイブル信号WEXが低レベルになって、システ
ムバス18により供給されたデータを選択されたメモI
JA−Dの選択されだ記1意場所に書込めるようにする
。書込みイネイブルパルスWEXが終るト、システムバ
スマスタへ与4 P J−11Nハイm  ギーΔ71
クヤ暑旦ri 1711−r7−u−11レベルになっ
て、書込みサイクルが終ったことを示す。
読出し動作のためには、列アドレスストローブ入力信号
CASIN Xが高レベル状態に戻ってからlクロック
周期経過した後で、低レベルになる。
読出し動作または書込み動作においては、データ確認応
答信号DTACKが終る前およびシステムのリセットが
行われる前に、VMEシステムバス制御信号osoo 
 とDSOIが高レベルになる。
CASIN X信号の正へ移行する縁部が、メモリから
読出されたデータを適切な出力レジスタA〜Dにロード
させ、高レベルになシっつあるシステムバス制御信号D
SOOまたはDsol によりシステムリセットが開始
されるまで、レジスタの3状態出力が可能状態にされる
。前記したように、システムのリセットにより、各脱出
し要求または各書込み要求が終った時に2サイクルリフ
レツシユが開始される。データを書込むために表示リス
トメモリ16のシステムバス要求を15クロック周期ご
とに行うことができ、かつデータを読出すために表示リ
ストメモリ16のシステムバス要求を16周期ごとに行
うことができる。優先権レゾルバロジックおよびシステ
ムリセット時間によりひき起される遅延時間のために、
システムバスアクセスは樹木横断器アクセスよシも長い
二重ボートフォアウェイインターリーブメモリはこの分
野において良く知られている。したがって、第11図お
よび第12図の制御信号を発生する特殊な組合せロジッ
クは、この分野の当業者にとっては周知のことでおる。
第44〜56図は表示リストメモリ16を構成する特殊
なボードレベル論理回路および集積回路を示す。
第13図は樹木横断器32の制御器102のより詳しい
ブロック図を示す。この制御器102はマイクロシーケ
ンサ300を含む。このマイクロシーケンサは、動作可
能状態にされた時に、マイクロコードメモリ302に格
納されているプログラムを実行する。マイクロシーケン
サ300は樹木横断器320種々の装置の動作を制御す
る。あるいは、マイクロプロセッサすなわち論理状態マ
シンの代りにマイクロシーケンサ300は覆々の制御信
号を1mの状態および制御レジスタ304を介して出力
する。マイクロシーケンサ300によりレジスタ304
 を介して状態信号も発生される。マイクロシーケンサ
300から制御信号を受け、状態信号をマイクロシーケ
ンサ30Gへ出力する1つの装置が表示リストメモリ(
DLM)インターフェイス回路306である。ここで説
明している実施例においては、05Mインターフェイス
306は、表示リストメモリ16からデータのパケット
を読出すために18!の隣接する表示メモリアドレスを
発生するピコ制御器である。後で詳しく説明するように
、表示リストメモリの読出し動作はマイクロシーケンサ
300により開始される。
05Mインターフェイス306は、樹木横断器32の局
部データバス308からマイクロシーケンサ300によ
り転送されたスタートパケットアドレxfロードする。
05Mインターフェイス306は、マイクロシーケンサ
300 のそれ以上の介在か1.に、パケットの碑りの
アドレスを発生でさ7.−表示リストメモリ16から読
出されたパケットは形状寸法プロセッサ36と、樹木横
断器32のDLMレジヌタファイル112 とに転送さ
nる。
ここで説明している実施例のDLMレジスタファイル1
12は多ボートレジスタファイルであって、表示リスト
メモリ16からのデータの転送の進行中に、そのデータ
転送の最初の結果をマイクロシーケンサ300が調べる
ことを可能にする。とくに、前記したように、マイクロ
シーケンサ300はDLMレジスタファイル112に格
納されているパケットから次のパケットのスタートアド
レスを得ることができる。次のパケットのスタートアド
レスを得ることができる。次のバケツrのスタートアド
レスは局部データバス308 を弁じて05Mインター
フェイス306へ転送され、別のパケット読出し動作を
開始させる。後で詳しく説明するように、レジスタファ
イル112は樹木横断器32と形状寸法プロセッサ36
の間の迅速なデータ交換も行えるようにして、形状寸法
プロセッサ36と樹木横断器32のスタックメモ1J1
261c1間(7)スタック転送中にデータバッファと
して機能する。
前記した↓うに、スタックメモリ126は横断データ処
理動作と、それに続く戻9横断データ処理動作との間の
メモリバッファの機能を行う。したがって、ここて説明
している実施例においては、選別横断中に得られたデー
タは、表示リストの面処理戻り横断中に形状寸法プロセ
ッサへ転送されるまで、スタックメモリ126に格納さ
れる。
形状寸法プロセッサ36と樹木横断器32のスタックメ
モリ126 との間のデータ転送が、双方向スタックバ
ス310 とスタックバス38を介して行われる。それ
らのデータ転送はDLMバス34を介するデータパケッ
トの転送とは独立しているから、ここで説明しそいる実
施例のDLMバス34は一方向バスとすることができる
。そうすることによりDLMバス34の動作が簡単にな
し、したカッてDLMパス34の動作速度が著るしく高
くなる。更に、2本の別々のバスであるスタックバス3
8とDLMバス34が形状寸法プロセッサ36の入力帯
域幅が実効的に2倍になる。したがって、形状寸法プロ
セッサ36のデータロード時間および遊び時間がそれに
対応して短くなる。
スタックメモリ転送動作の制御がスタック制御器312
により行われる。そのスタック制御器はマイクロシーケ
ンサ300により制御される。スタック転送のスタート
アドレスと、転送すべき語の数と、向きおよび宛先はマ
イクロシーケンサ300により局部データバス308を
介して与えられる。スタック制御器312はマイクロプ
ロセッサによりそれ以上制御されることなしにスタック
の転送を終ることができる。
樹木横断器32は標準の算術論理器(ALU)314も
含む。マイクロシーケンサ300の制御の下に、ALU
314 は加算、減算、桁送り、マスキングおよびデー
タ格納の各機能を行う。
第14図はDLMインターフェイス306を詳しく示す
ブロック図でちる。DLM インターフェイス306は
、表示リストメモリ16をアドレッシングする隣接する
24ビツトアドレスを発生する24ビツトカウンタ31
4を含む。表示リストメモリ16から読出すべきパケッ
トのスタートアドレスの上位20ビツトが、局部データ
バス308のデータ線25−6(25:6)から DL
Mアドレスカウンタ314の上位20ビット位置にロー
ドされる。ここで説明している実施例においては、各パ
ケットのスタートアドレスの下位4ビツトが全20であ
るよりに、パケットは表示リストメモリ16に格納され
る。したがって、DLM アドレスカウンタ314の下
位4ビット位置は初めはOにセットされる。AS374
集積回路のようなバッファトライバ回路316がDLM
アドレスカウンタ314の出力端子を表示リストメモリ
アドレスバス104に結合する。表示リストメモリ16
が最初のアドレスを入力すると、DLMアドレスカウン
タ3140カウントが増加させられて、パケットの次に
隣接するアドレスを表示リストメモリ16へ与える。
局部データバス308からアドレスの上位20ビツトを
ロードするための制御信号と、DLMアドレスカウンタ
314 のカウントを増すための制御信号が、論理回路
318により与えられる。その論理回路はプログラムさ
れるアレイ論理(PAL)回路により構成される。PA
L回路をプログラムするやり方は第15A−15c図に
示す論理図により表されている。論理回路318 とD
LMアドレスカウンタ314 が−緒に論理状態マシン
を形成する。その論理状態マシンの論理状態移行か第1
6図に示されている。第16図に示す論理状態移行図は
、基本形に変えられた次の状態移行を表す。
4?)6ん、DLMインターフェイス306の選切な制
御信号を得るために他の論理状態マシンを構成できるこ
とがもちろんわかる。
第16図に示すように、論理状態マシンは4種類の基本
的な状態すなわちモードREI:SET、 C0UNT
、EXTEND、ENDを有する。それらの状態は2つ
の状態変数「G」と「F」により表される。
リセット状態(GF=OO)は電源投入時に起る。
論理回路318 (第14図と第15A=15C図)へ
の同期リセット(5YNCHRESgT )入力線が起
動されている時に、リセット状態に入る。その5YNC
HRESgT  制御信号Jd、システムパスインター
フェイス100(第13図〕にょシ与えられる。
プログラムされるアレイ論理回路(第15A図〕は4個
の2リツプフロンプ320〜323を含む。
それらの2リツプフロツプはセットされた時にそれぞれ
状態RESFJT、C0UNT、EXTEND  おj
ヒEN[)を示す。フリップフロップ320〜323へ
の入力は、DLMインターフェイス306 へ与えられ
る5YNCHRESETを含む種々の制御信号入力を用
いる適切な組合わせロジックの出方へ結合される。
RESET状態忙お状態上、論理状態変数GとFの状態
は、表示リストメモリ16からのデータパケットの樹木
横断器と形状寸法プロセッサへの転送を示すタイミング
図である第7図に示すように、ともに0である。状態/
制御レジスタ304からの2本の「パケットロード」ス
トローブ線のいずれかを可能状態にすることにより C
0UNT状態が入れられ、論理回路318へ与えられる
。最初のロードパケット可能化線DLM  IF Wl
o GPが、表示リストメモリ16から樹木横断器32
へのデータ転送のみを開始する。第2のロードパケット
可能化@DLM IF LD W GPが、樹木横断器
32と形状寸法プロセッサ36へのデータ転送を開始す
る。第17図に示す実施例においては、パケットが樹木
横断器と形状寸法プロセッサへ転送されるように、起動
させられるのは万D「TrLD W/GP信号である。
データバス34を介するデータの形状寸法プロセッサ3
6への転送には、形状寸法プロセッサDLMレジスタフ
ァイル115 (第8図〕を使用できることを要する。
形状寸法プロセッサDLMレジスタ115を使用できる
ことは、GP  DLMREG AVL 制御信号入力
118により形状寸法プロセッサ36から論理回路31
8へ知らせる。
いずれかのロードパケットストローブがスター) DL
Mパケットアドレスの上位20ビツトを、第14図のD
LMアドレスカウンタ314ヘロードさせる。このアド
レスロードストローブ信号は、So  (第15B図)
で示される出力を有する組合わせロジックにより発生さ
れ、アドレスカウンタ314(第14図〕 へ与えられ
る。アドレスロードストローブ制御信号Soの起動は、
第17図のタイミング図にも示されている。
DLM  IF LD W/GP ロードパケット制御
信号が正になった時に、DLMインターフェイス論理回
路318のフリップフロップ(第15B図)がセットさ
れ(第17図のW/GP  Qタイミング@)、パケッ
トは形状寸法プロセッサと樹木横断器へ転送されること
を示す。(他のロードパケットストローブ、DLM  
IF Lo wlo  cp、が起動されたとすると、
第2のフリップフロップ325がセットされて、データ
転送が形状寸法プロセッサ36にコピーされなかったこ
とを示す。)また、移行状態変数Fがセットされて、第
16図と第17図に示すようにC0UNT状態への移行
を示す。
ここで説明している実施例においては、第15A〜15
C図のDLMインターフェイス論理回路318 は同期
し、樹木横断器32の DLM  レジスタファイル1
12の入力と、形状寸法プロセッサ36のDLM  レ
ジスタファイル115の人力と+7)=rンパナピリデ
°イを確保する。したがって、ロードパケットストロー
ブDLM  I/F LD WGPの終了中にクロック
パルスが負になると、DLMインターフェイス306に
より与えられるアドレスが妥当であることを表示リスト
メモリ16に示す。DLMインターフェイス論理回路3
18の組合わせロジック(第15B図)により  DL
MREQUEST 制御信号が発生される。データ転送
により形状寸法プロセッサ36のDLM  レジスタフ
ァイル115にデータがコピーされるから、DLM要求
制御信号が DLMインターフェイス論理回路318に
より起動される前に、形状寸法プロセッサレジスタが利
用できる制御信号入力−REG AVL を起動させね
ばならない。
C0UNT状態中に、DL、Mインターフェイス306
 は表示リストメモリ16からのDLMアドレス増分(
DLM ADRINC)  制御信号の起動を待つ。D
LMアドレス増分信号の起動後に第1のクロックパルス
が正になると、DLMインターフェイス論理回路31B
 (第15B図)により発生されたパルスイネイブル信
号ENPがDLMアドレスカウンタ314に第17図に
示されているような増加を開始させる。16番目のパケ
ットアドレスが送られるか、拡張された転送が開始され
たのであれば、32個のアドレスが送られるまで、アド
レスカウンタ314は、表示リストメモリ16へ供給さ
れるアドレスの場大を続ける。
前記したように、この実施例のパケットの長さは全て1
6語または32語である。データ転送の進行中に、いず
れかのロードパケットスロープ信号を起動させることに
より拡張された転送が開始される。したがって、第16
図および第17図に示すように、ロードパケット制御信
号DLM IF LD W/GPが2回目に正になると
、状態変数Gが正にさせられて論理状態マシンをgx’
rr:No状態に置く。第14図に示すように、カウン
タ314 の出力の下5桁のアドレスピッ) EDCB
A  が論理回路31B へ帰還されて、32番目 (
または16番目)のアドレスがいつ送られたかをそれら
の論理回路が判定できるようにする。32番目(または
、拡張されなければ16番目〕のアドレスが送られると
、DLMインターフェイス論理回路31BはDLM R
EQUF2ST制御信号と ENP制御信号を終らせる
。論理状態マシンは、第16図および第17図に示すよ
うに、END状態への移行も行う。表示リストメモリ1
6からの DATA VALID信号カ終ッテ、DLM
インターフェイス306をリセットする壕で、DLMイ
ンターフェイス306はEND状態に留る。
DLM16からのデータ転送が始まる時に、DLMイン
ターフェイス論理回路318がGP DLM RE−G
ISTERLOAD信号を形状寸法プロセッサ36のD
LMレジスタファイル115へ与えて、そのレジスタフ
ァイルがデータパケットを入力できるようにする。デー
タ転送が終ると、DLMインターフェイス論理回路31
8は、第13図の状態/制御レジスタ304により受け
られるDLM I/F DONE制御信号を起動させる
。状態/制御レジスタ304はDLMインターフェイス
306から最下位DLMアドレスビットも受ける。これ
によりパケット転送が開始されると、樹木横断器パケッ
ト語カウントを調べて、要求があれば、パケット転送中
の語の数を増すことができるようにされる。
正常な32語の境界内に32語パケットが無いとすると
、第15C図に示されている特殊な回路を使用できる。
第15C図の回路は、制御論理回路318への最上位入
力アドレスビットEを変更する。
転送サイクルのスタート時にはEビットは常にOである
。16番目のアドレスが送られた後で、回路の出力が1
にトグルする。この回路出力は、第14図のDLMアド
レスカウンタ314からのDLMアドレスの最上位ピッ
)Eの代りに用いられる。しかし、データパケットが1
つのページの境界内に留っているとすると、第15C図
の回路は不要である。
マイクロシーケンサ300によりそれ以上制御されるこ
となしにマイクロシーケンサによpスタートアドレスが
与えられると、DLMインターフェイス306はデータ
パケットの16(または32)のアドレスを発生できる
から、マイクロシーケンサは他のタスクへ変わることが
でき、パケットは表示リストメモリ16から自動的に読
出される。これによυ、表示リストの横断または逆横断
の全体のデータ処理速度が更に高くされる。
第18図はスタック制御器312と、そのスタック制御
器のスタックメモリ126とスタックデータバッファ3
10への相互接続と詳しく示すブロック図である。2つ
の主なスタックデータ転送モードがある。第1のモード
においてはデータはスタノクメモリ126と樹木横断器
32のDLMレジスタファイル112(第13図)の間
のデータ転送が第2のスタックデータ転送モードで行わ
れる。
図示の実施例においては、横断と、表示リストメモリ1
6に格納されている表示リストの選別とが行われている
間に、レジスタファイル112と形状寸法プロセッサ3
6からデータがスタックメモリ126に書込まれる。と
くに、子ポインタと、物体ヘッダブロックポインタと、
樹木レベル語トがレジスタファイル112から転送され
、フラッグ語と変換マトリックスおよびその他の属性が
、選別過程中に潜在的に見えるものと判定された物体に
対して、形状寸法プロセッサから転送される。この過程
は、セグメントが調べられていない子セグメントを有す
るかどうかを樹木横断器が判定できるようKするために
、ポインタと樹木レベル語がレジスタファイル211へ
戻される動作が行われる、表示リストの面処理動作の部
分中に逆にされる。
もしそうであれば、樹木横断器は選別モードへ戻ってセ
グメントの子を選別する。それ以外には、樹木横断器は
、面処理のために、セグメントのデータパケットをDL
Mバス34を介して形状寸法プロセッサ36へ転送する
。また、セグメントの物体を面処理するために、変換マ
トリックスと、その他の属性データ語とがスタックメモ
リ126から樹木横断器によって形状寸法プロセッサ3
6へ転送される。。
先に述べたように、各セグメントのためのスタックメモ
リ動作は、マイクロシーケンサ300(第13図)によ
)開始されると、独立に続けることができる。スタック
制御器312は、スタックメモリ126の読出し動作ま
たは書込み動作のために、順次アドレスを発生するアド
レスカウンタ330を含tr。マイクロシーケンサ30
0はスタートアドレスをローカルデータバス308から
アドレスカウンタ300にロードする。そのアドレスは
状態/制御レジスタ304(第13図)から、ロードデ
ータバスΦスタックアドレスロード(K号(LDBST
KADLD)によりロードされる。
アドレスカウンタ330により発生されたスタックメモ
リアドレス(STKMEMAD)が、メモリ制・御器回
路332の行/列(R,C)アドレス入力端子へ与えら
れる。ここで説明している実施例においCは、メモリ制
御器回路332は748409集積回路であって、この
集積回路は適切なりプレツシュカウンタと、ライントラ
イバとを含んで、スタックメモリ126のダイナミック
自ランダムアクセスメモリをサポートする。アドレスカ
ウンタ330のスタックメモリアドレス出力を、状態/
制御レジスタ304(、第13図)からのローカルデー
タバス・スタックアドレス選択CI、DBSTKADS
EL)信号が起動された時に、読出しバッファ334を
介してマイクロシーケンサ300に↓り読出すこともで
きる。ALU314は読出されたアドレスを比較して、
切迫しているスタックあふれ状態を検出できる。
転送すべき語の数は8ピット制御語のうちの5ビツトに
より定められる。状態/制御レジスタ304からのロー
カルデータバス・スタック語カウンタロード(、LDB
STKWDCNTLD)制御信号が起動された時に、制
御語は制御語レジスタ336内にロードされる。制御語
の残りの3ピツトは宛先(形状寸法プロセッサ36また
はレジスタファイル112)、向き(読出しまたは書込
み)およびコピーモード(形状寸法プロセッサの出力レ
ジスタファイル122からのデータを、形状寸法プロセ
ッサ36のスタックレジスタファイル120ニコピーも
するか否か)を定める。状態/制御レジスタ304から
のローカルデータバス・スタック語カウンタ選択(LD
BSTKWDCNTSEL)制御信号が起動されると、
制御語をマイクロシーケンサ300によυローカルデー
タバス308上に読出すことができる。
制御語の3つの転送制御ピットはスタック制御論理回路
338へ与えられる。そのスタック制御論理回路は状態
レジスタ340に組合わされて、制御器312の制御シ
ーケンスを決定する状態マシンへ信号を与える。スタッ
ク制御論理回路338と状態レジスタ340は、メモリ
制御器332と、スタックデータバッファ310と、ア
ドレスカウンタ330と、語カウンタ342とのための
適切な制御信号を発生する。語カウンタ342は制御語
レジスタ336からの5ビット語カウント(2の補数で
)をロードし、各語が転送されるたびにその語カウンタ
のカウントは増加させられる。比較器346が語カウン
タ342の出力をモニタし、語カウンタの出力(WD 
C−NT)が全部1になった時に転送長#)(DEND
)信号を与えて、指定された数の語が転送されたことを
示す。語カウンタの出力WDCNTは、樹木横断器32
のDLMレジスタファイル112のためのレジスタアド
レスと、形状寸法プロセッサ36のレジスタファイル1
20 、122のためのレジスタアドレスも与える。マ
イクロシーケンサ300は状態/制御レジスタ304を
介して語カウントをモニタすることもできる。
図示の実施例のスタックメモリ126は256K x3
2ピットのダイナミックRAMメモリである。第9図に
示すように、選別動作中に潜在的に見えると判定された
各物体に対して、23語がスタックメモリに格納される
。したがって、スタックメモリ126は1つの横断路に
おいて、あふれることなしに11000以上の物体を受
けることができる。
各順次アクセスが1つの256半語(バイト)ページ内
に含まれるように、データはスタックメモリ126に格
納することが好ましい。さもないと、ページのロールオ
ーバを行えるようにするために、データ転送を中断する
必要があることになる。そのようなロールオーバ状態は
、アドレスカウンタ330によりカウンタリツブル桁上
げ出力(r RO−LLOvERJと名づけられる)信
号線を介してスタック制御論理回路338へ知らされる
。ロールオーバの中断が起ると、アドレスカウンタ33
0からの新しい行アドレスがメモリ制御器332へのス
タックメモリアドレス(STKMEMAD )バスに置
かれた時に、メモリ制御器332からメモリ126への
行アドレスストローブ(RAS)出力線がレベルを高く
される。
ここで説明している実施例における樹木横断器レジスタ
ファイル112は16ビツトの時間的に多重化されたデ
ータを入力および出力する。スタックデータバッファ3
10は双方向バッファであって、スタックメそり126
からのデータをバッファして、スタックデータバス38
の時間的に多重化されたデータバスサイクルを、樹木横
断器レジスタファイル112と形状寸法プロセッサ36
とに一致させる。
スタック制御論理回路338の状態マシンと状態レジス
タ340は第19図に示すようにRESET、IDLE
/REFRESH,LOADED/REFRES、5T
−ARTおよびMEMORY CYCLE  と名づけ
られた5つの大きい状態を有する。それらの状態は「モ
ード」状態と名づけられ、状態変数F 、 E 、 D
Kよシ定められる。各モード状態は、状態変数C9B、
A(第20図)により定められる6つまでの小さい、す
なわち1−逆」状態を含むことができる。
状態マシンのモード状態と逆状態は、状態レジスタ34
0(第18図)により制御信号出力を発生するために用
いられる。
RESETモード状態には電源投入によp入り、スタッ
ク制御器状態マシンはIDLE/REFRESHモード
状態に直ちに入る(第19図)。この状態においては、
スタック制御器状態マシンハスタックメモリ126を周
期的にリフレッシュし、その間にマイクロシーケンサ3
00がスタックデータの転送を開始することを待つ。マ
イクロシーケンサ300がスタック制御論理回路338
と語カウンタ342(l1g18図)へのローカルデー
タバス・スタックメモリスター) (LDBSTKME
MSTRT)制御信号を起動した時に、データ転送が開
始される。
形状寸法プロセッサが宛先またはソースとして選択され
、かつデータの受信または送信の用意ができていないと
すると、スタック制御器状態マシンはLOADED/R
EFRESHモード状態(第19図)へサイドトラック
される( 5idetr^cked)。そのモード状態
においては、スタックモード状態126のリフレッシュ
動作は、形状寸法プロセッサがレディ状態になるまで継
続される。制御語レジスタ336と、形状寸法プロセッ
サ36からのスタックバス38のGP 0UTPUT 
REGISTERLOAD−ED制御線およびGP  
REGISTERAVAILAB−り、E制御線(第2
9A図)との宛先ビットと、向きビットおよびコピービ
ットの関数である形状寸法プロセッサレディ(GPRD
Y)制御信号にょし、形状寸法プロセッサのレディ状態
が示される。スタックメモリスタート(STKMEMS
TRT)制御信号が起動されると、語カウンタ342が
制御語レジスタ336からの語カウントをロードさせら
れる。
形状寸法プロセッサ36がレディ状態である(cpRD
y起動)ことをその形状寸法プロセッサが示すと、第1
9図に示すように、スタック制御器状態マシンは5TA
RT主な状態へ進む。5TART状態への遷移は第21
図にも示されている。その図は、スタックメモリ126
から典型的な読出し動作と、スタックメモリ126への
典型的な書込み動作トに対するレジスタファイルアドレ
スの発生を示すタイミング図である。
5TART主な状態から、スタック制御論理回路338
のスタック状態マシンと状態レジスタ340がメモリサ
イクル(MEMCYCLE )へ進む。このメモリサイ
クル中にはスタックメモリ126からのデータがアクセ
スされる。スタックメモリ126から読出されたデータ
は、樹木横断器のDLMレジスタファイル112と、形
状寸法プロセッサ36のスタックレジスタファイル12
0との少くとも一方に書込まれる。レジスタファイルア
ドレスは語カウンタ342(第18図)の6ピツト出力
(WDCNT )の上位5ビツトにより与えられる。メ
モリサイクル(MEMCYCLE )中は、スタック状
態マシンは語カウンタ342ヘスタックメモリ語カウン
タイネイブルパルス(5TKWDCNTENP)制御信
号を与えて、指定された数の語がスタックメモリ126
から読出されるまでカウンタ342のカウントを増加さ
せる。各レジスタファイルは、2個の逐次16ビツト半
語の32ピット語を、語カウンタ342の出力端子から
の各[偶数J(WDCNT不起動(in−active
)の最下位ビット)アドレスに入力する。
形状寸法プロセッサレジスタファイルとの間のデータの
転送は1クロツクサイクルだけ遅らされる。
ここで説明している実施例においては、樹木横断器32
のDLMレジスタファイル112はウェイチック(We
itek )LO66マルーF−ポー )’vジxタフ
フィル集積回路である。形状寸法プロセッサ36のスタ
ックレジスタファイル120と出力レジスタファイル1
22は、■にマルチボートレジスタファイル集積回路に
よって実現される。第21図に示すように、形状寸法プ
ロセッサ36のスタックレジスタファイルと出力レジス
タファイルは、DLMレジスタファイル112がアドレ
スされてから10メガヘルツクロック周期後に1回アド
レスされる。
したがって、第18図のスタック状態マシンにより発生
された形状寸法プロセッサスタック読出しイネイブル(
cp  5TACK READ ENB)信号または形
状寸法プロセッサスタック書込みイネイブル(GP  
5TACK WRITEENB)信号は、語カウンタ3
42の出力WDCNTの最下位ビット(「奇数アドレス
」)の起動に一致する。スタックメモリ126から読出
されたデータが樹木横断器DLMレジスタファイル11
2へ書込まれるとすると、状態レジスタ340(第18
図)のスタック読出しイネイブル(STK RDEN)
制御信号出力が起動され入−nT有し、・ンスi7了メ
ル11つ≠1ムギー々詰でツlツクメモリ126へ書込
まれるとすると、状態レジスタ340のスタック書込み
イネイブル(STK W−RITE ENB )出力が
起動される。全ての語が転送されると、比較器346の
END出力信号が起動させられる。
第22A図は、樹木横断器DLMレジスタファイル11
2からスタックメモリ126への典型的な書込み動作を
示す。LOAD?イクル中は、適切な制御(アドレスを
含む)信号がDLMレジスタファイル112へ与えられ
る。5TARTサイクル中の1クロツクサイクル後にル
ジスタファイルのメそリセルへアクセスが許され、1ク
ロツクサイクル後に、2つの時間的に多重化された2つ
の16ビツト半語(MBSとLBS )でデータが発生
される。ここで説明している実施例においては、最初の
データが供給されてから1クロック周期後にデータが再
び与えられるように、アドレスが最初に与えられてから
1クロック周期後にアドレスが2回目に与えられる。デ
ータ転送の残りの語に対するアドレスは、メモリサイク
ル中にDLMレジスタファイル112へ与えられる。
スタック制御論理回路338の状態マシンと状態レジス
タ340は、双方向データバッファ310(第18図)
のために制御信号Gと、クロックされるBソース(CB
A)およびクロックされるAツーB(CAB>を発生す
る。スタックデータバッファ310はDLMレジスタフ
ァイル112からのデータを、データバッファ310の
A入力端子/出力端子をスタックメモリ126へ結合す
るAバス347へ送ル。
第22A図に示すように、クロックされるBツー入信号
が起動させられると、DLMレジスタファイルからの最
上位パイ1lsBが約10メガヘルツのクロックの1サ
イクルの間Aバスに出力する。クロックされるBソース
 (CBA)信号が2回目に起動させられると、最下位
のバイトLSBが約10メガヘルツのクロックの別の1
サイクルの間Aバスに与えられる。それらのバイトは、
第22A図に示すように、10メガヘルツクロツクサイ
クルの後の半分の間に、スタックメモリ126のデータ
入力ボートにより入力される。第22B図は別の向きに
おけるデータの転送を示す。すなわち、双方向スタック
データバッファ310を通じてのスタックメモ1712
6から、形状寸法プロセッサの樹木横断器レジスタファ
イル112とスタックレジスタファイル120との少く
とも一方へデータを転送する読出し動作を示す。
第18図の状態マシンによるスタックメモリ制御器33
2に対する適切カ入力信号の発生タイミングを第23図
に示す。スタックメモリ126をアクセスするためにメ
モリ制御器332によυ発生される出力信号も第23図
に示されている。
第19〜22図に示されている大きいすなわち「モード
」状態と小さいすなわち「逆」状態に対する状態式が付
録Aにおいて述べられている。その付録Aに示すように
、モード状態変数りは大きい状態変数F−Dおよび小さ
い状態変数C−Aの関数ばかりでなく、状態rENDJ
 、 rROLLOVERJおよびrREsETJの関
数でもある。r END 」状態は、第18図の語カウ
ンタ342があふれて、指定された数の語が転送された
ことを示した時に起る。
「ROLLOVER」状態は、ページの終りに達したこ
とを第18図のアドレスカウンタ330が示した時に起
る。大きい状態変数EとFは状態r 5TARTBIT
Jの関数でもある。この状態は状態rsTART」の関
数である。その状態rsTARTj  は、スタックメ
モリの転送を開始させるためにマイクロシーケンサがS
TK MEM 5TRT信号を起動した時に起る。スタ
ックメモリ制御器332と双方向スタックデータバッフ
ァ310のための入力制御信号の発生も付fiAに示さ
れている。
第13図のマイクロシーケンサ300のための算術動作
と論理動作が算術論理装置(ALU)314により行わ
れる。それらの動作は零ポインタを調べること、値を増
加または減少させること、スタックのあふれを調べるこ
と、およびフラッグピットをテストすることが含まれる
。第24図に示すように、ALU314は5個の4ビツ
トALU(AMD2901)集積回路350a〜350
eを通常のピットスプライス設計で相互に接続して構成
される。そのされる。第24図のピットスプライス構成
の動作がアドバンスト・マイクローデバイセズ(Adv
a−nced Micro Devices )による
「バイポーラ・マイクロプロセッサ−ロジック・アンド
・インターフェイス(Bipor Microproc
eaaor Logic andInterface 
) J (1983)と題するデータブックの5−5〜
5−31ページに詳しく述べられている。
ALU ユニット350a 〜350eは16個の格納
レジスタと1個のシフトユニットを含む。それらのユニ
ットの動作は第13図のマイクロプロセッサ13により
制御される。状態/制御レジスタ304からの17ビツ
トALU命令(ALUINST)語がソースレジスタと
、動作選択と、宛先レジスタと、AおよびBレジスタ選
択とを指定する。
ALU ユニット350a〜350eの出力がローカル
データバス308へ接続される。この出力は、データを
DLMレジスタファイル112へ書込むべき時に、状態
/制御レジスタ304からのローカルデータバX AL
U 7−X 1/レジスタ択(LDBALUSRCSE
L)ニー・エム・fイー(AMD)2902 桁上?]
’ルックアヘッド集積回路を含む3段桁上げルックアヘ
ッド回路を用いることにより、ALU314の桁上げの
伝わる時間が短縮されている。この3段桁上げルックア
ヘッド回路は桁上げの伝わる時間を1クロツクサイクル
まで短くする。
1つのプログラムされるプレイ論理ユニット354が、
ALUユニット314のための循環桁送シ制御器を構成
する。ALUユニット314のための入力は状態/制御
レジスタ304からのALU命令(ALU−INST)
 語のピット7を含む。そのビットは桁送りを上または
下として指定する。ALU3−ニット314はALU最
上位出力ビット(ALU MSB)と2ビツト(so、
sl)桁送シ命令(SHIFT  lN5T)語も入力
する。この(SHIFT  lN5T)語は桁送シを0
.1、回転または算術桁送りとして定める。
それらの機能は前記アドバンスト・マイクロデパイセズ
のデータブック5−22ページに記載されている。ユニ
ット354のPAL出力01〜04を定める制御式が付
録Cに述べられている。第13図の状態/制御レジスタ
304がALU最上位ビット(ALU MSB)7ラツ
グと、あふれ(ALUOVR)フラッグと、ゼロ(AL
UZERO)フラッグと、桁上(ALUCARRY)フ
ラッグとの任意の1つをテストできるテスト状態マルチ
プレクサを形成する。
第25図は図示の実施例のALU 350a 〜3SO
eのレジスタに格納されているデータを指定する。横断
動作および逆横断動作のためにデータをどのよ。
うにして用いるかについて、マイクロシーケンサ300
の動作の説明に関連して以下に詳しく説明する。
ここで説明している実施例においては、第13図のDL
Mレジスタファイル112はウェイチック(Weite
k)1066集積回路で構成される。第26図に示すよ
うに、  DLMレジスタファイル112は、データバ
ッファ356によ、9 DLMバス34のDLMデータ
バス107へ結合される書込みボー)ZQ−215・を
有する。選別動作および面処理動作を行っている間に表
示リストメモリ16から読出された各パケットの初めの
16語が、第27図に示すようにレジスタ・アドレス0
O−OFに格納されている。第27図はレジスタファイ
ル112の場所の割当てを示す。DLMパケット語のた
めのレジスタアドレスが、表示リストメモリ16からの
レジスタアドレスバス114ヘアドレスバツフア358
により結合されている制御ボー)C18〜C22を通じ
て入力される。
先に述べたように、表示リストメモリ16からDLMレ
ジスタファイル112に格納されているパケット語が、
他のデータに対するポインタを含む。
したがって、たとえば、第4図に示されているようなセ
グメント制御ブロックが同胞セグメントおよび子セグメ
ントに対するポインタと、選別バッファおよびデータバ
ッファに対するポインタとを有する。同様に、各選別ま
たはデータパケットバッファはバッファの次のパケット
に対するポインタを有する。DLMレジスタファイル1
12は、ローカルデータバス308に結合されている3
2ピット読出し/書込みボートDO〜D31を含む。零
ポインタを調べるためにポインタはローカルデータバス
308を介してALU314へ送られ、それからそれら
のポインタは一時的に格納される。表示リストメモリ1
6からのパケットの転送を開始させるために、それらの
ポインタはローカルデータバス308を介してDLMイ
ンターフェイス306へ送ることもできる。樹木横断器
が表示リストメモリ16の表示リストを横断するにつれ
て、横断アルゴリズムに従って、種々のポインタが、第
27図に示すように、レジスタアドレス場所に格納され
る。
DLMレジスタファイル112は、スタックデータバス
38へ結合される16ビツト読出しボートWO〜W15
と16ビツト書込みボートYO〜Y15も有する。調べ
られてALU314に格納されたアドレスポインタと、
ALU314により計算された樹木レベル(ALU語O
A)が、選別過程中に潜在的に見えると判定されたセグ
メントに対して、DLMレジスタファイル112を介し
てスタックメモリ125へ転送される。データが32ピ
ツト語としてALU314から読出しボートwo〜W1
5を介して読出され、16ピツトの時間的に多重化され
たフォーマットで書込みボートYO−Y15を介してス
タックメそり126に書込まれる。
スタックメモリ126からのデータは、読出しボートW
O〜W15を介してDLMレジスタファイル112によ
り読出される。スタックから読出されたデータに対する
レジスタアドレスを表す語カウンタ342の出力が、D
LMレジスタファイル112の制御入力端子C6〜01
GとC24〜02Bへ結合される。スタックメモリ12
6からの語は、第27図に示すように、レジスタアドレ
ス場所1D〜1Fに格納される。
レジスタファイル112はマイクロシーケンサ300(
第13図)のマイクロコードメモリ302によってもア
ドレスされる。マイクロコードメモリ302からのアド
レスはアドレスバッファ360によりバッフアサしてか
ら、DLMレジスタファイル112の制御ボートCI2
〜01BとC30〜C33により入力される。第28図
に詳しく示されているアドレス制御ロジック362は複
数のORゲート363を有する。アドレス制御ロジック
362は、DLM16からDLMデータ妥当(DLM 
DAT VAL)制御信号とDLMレジスタアドレスの
4ビツトを受け、第18図のスタック制御器の状態レジ
スタ340からスタック読出しイネイブル(STK R
D  EN)制御信号とスタック書込みイネイブル(S
TKWRKN)  制御信号を受け、状態/制御レジス
タ3Q4から同期リセット(SYNCHRESBT)制
御信号とレジスタファイル選択(REGFILE 5E
L)制御信号を受けて、C11、C17,C23,C2
9゜C34,C35,C33制御信号として入力された
適切なレジスタファイル制御信号を発生する。
第29A図と第29B図はマイクロシーケンサ300ト
、システムバスインターフェイス100ト、マイクロコ
ードメモリ302と、状態/制御レジスタ304とを詳
しく示す。図示の実施例のマイクロシーケンサ300は
ニー・エムiディー(AMD )2910マイクロシ一
ケンサ集積回路で実現される。状態/制御レジスタ30
4とマイクロシーケンサ300は単一レベルのパイプラ
イン構造で構成される。それの全体的な動作が前記AM
Dデータブックの5−123〜5−139 ヘージに詳
しく記載されている。
入カポ−)I3〜工0に受けた4ビツト命令と、マイク
ロシーケンサ300の内部状態とに応答して、マイクロ
シーケンサは12ビツトマイクロコードアドレス(MI
CAD)をバス364を介してマイクロコードメモリ3
02へ出力する。ここで説明している実施例においては
、マイクロコードメモリ302は2Kx64ビツトのス
タッチツクRAMとして構成される。マイクロコードメ
モリ302は書込み可能な制御記憶装置とも呼ばれる。
マイクロシーケンサ3θ0からのマイクロコードアドレ
スに応答して、マイクロコードメモリ302は64ビッ
ト制御語を、状態/制御レジスタ304のパイプライン
レジスタ366へ出力する。パイプラインレジスタ36
6の出力を介して、マイクロコードメそす302からの
制御語は樹木横断器32の動作を制御する。
パイプラインレジスタ366は24本の出力線(LDB
(29:6))を有し、それらの出力線はローカルデー
タバス308へ接続される。状態/制御レジスタ304
のソース制御デマルチプレクサ368からのローカルデ
ータバスマイクロコード選択(L−DBMICKSEL
)制御信号が起動された時に、パイプラインレジスタ3
66からデータをローカルデータバス308へロードで
きる。ソース制御デマルチプレクサ368は12本の出
力線を有し、各出力線は1度に1本ずつ起動できる。ソ
ース制御デマルチプレクサ368の制御出力信号の多く
は、パイプラインレジスタ366のような特定の装置が
データをローカルデータバス308へ出力できるように
する。起動させられる特定の出力線は、第29A図と第
298図にローカルデータバスソース選択(LD−BS
RC8EL(3:O))で示されているパイプラインレ
ジスタ出力制御語の4ピツトにより決定される。
宛先制御デマルチプレクサ370は、ある特定の装置が
ローカルデータバス308からのデータを入力できるよ
うにする。宛先制御デマルチプレクサ370の可能状態
にされた特定の出力は、パイプラインレジスタ366の
制御語出力のローカルテータバス宛先選択(LDBDI
STSEL (3: O’) )ビットにより選択され
る。
状態/制御レジスタ304は状態フラッグレジスタ37
2も含む。このフラッグは樹木横断器32の種々の装置
と形状寸法プロセッサ36から状態信号とフラッグ信号
を入力する。それらの信号にはALU314(第24図
)からのALUゼ(1!(ALUZ−ero)制御信号
と、ALUあふれ(ALU 0VR)制御信号と、AL
U桁上げ(ALU CARRY )制御信号と、ALU
最上位(ALUMSB)制御信号とが含まれる。
マイクロシーケンサ300はそれらの信号をモニタして
、マイクロプログラムの実行を制御する。レジスタ37
2の状態信号とフラッグ信号は、マイクロシーケンサ3
00により状態フラッグマルチプレクサ374を介して
1度に1つ読出される。マイクロシーケンサ300へ送
られた特定の信号は、パイプラインレジスタ366のマ
イクロコード制御語の状態選択ピッ) (C0NDSE
L)により選択される。
状態フラッグレジスタ372からの各信号は、パイプラ
インレジスタ366のマイクロコード制御語出力の状態
極性(C0NDPOL)ビットに従って反転(または非
反転)できる。
ソースと、動作と、宛先およびAレジスタとBレジスタ
の選択を走めるALU命令語が、パイプラインレジスタ
366のマイクロコード制御語のAL−UINSTビッ
トにより与えられる。AI、U命令語のビット7が、桁
送シが上か下かを判定する。ALU桁送シ命令(SHI
FT  lN5T)は桁送シの種類(0゜1、算術また
は回転)を定めるものであって、パイプラインレジスタ
366のマイクロコード制御語によっても与えられる。
マイクロシーケンサ300は、状態/制御レジスタ30
4のソース制御デマルチプレクサ368のローカルデー
タバスALUソース選択(LDBALUSRC8EL)
制御信号出力線を起動させることにより、ALU314
の出力をローカルデータバス308に置く。
マイクロシーケンサ300は、DLMレジスタファイル
112tたはALU314からのDLMスタートアドレ
スをローカルデータバス308を介してDLMインター
フェイス306へ供給することにより、表示リストメモ
リ16から読出されたデータパケットを開始する。マイ
クロシーケンサ300u、パケット分形状寸法プロセッ
サにコピーすべきかどうかに応じて、形状寸法プロセッ
サコピー(DLM I/FLDWOOP)制御線無しの
表示リストメモリインターフェイスロードと、宛先制御
デマルチプレクサ370の形状寸法プロセッサコピー(
(DLMIβLDWOG?)制御線付きの表示リストメ
モリインターフェイスロードのいずれかの起動も行う。
データパケット転送が、状態フラッグレジスタ372と
状態フラッグレジスタマルチプレクサ374を介してモ
ニタされる。表示リストメモリ16にょシ与えられるD
LMレジスタファイルアドレス(DLMREGAD)信
号の上位3ビツトとDLMデーデー尚(DLPwi D
AT MAL)信号の上位3ビツトがバッファ376を
介して状態フラッグレジスタ372へ入力される。DL
Mインターフェイス30Bにょシ発生されたDLMデー
タ転送終了制御信号(DLMI/FDONE) と、ス
タック制御器312の状態レジスタ340により発生さ
れたモード状態変数「E」とが状態フラッグレジスタ3
72により直接入力される。
データをスタックメモリ126との間で転送させるため
に、マイクロシーケンサ300はスタートスタックアド
レスを、第18図のスタック制御器312のアドレスカ
ウンタ330へ初めにロードする。
スタックアドレスはALU314により計算されて、宛
先制御デマルチプレクサ730からのローカルデータバ
ススタックアドレスロード(LDBSTKAD−LD)
制御信号が起動された時に、 ローカルデータバス30
8からロードされる。マイクロシーケンサ300は転送
すべき語の数と、宛先およびコピーモードを、宛先制御
デマルチプレクサ370のローカルデータバススタック
語カウンタロード(LDBS−TKWDCNTLD)制
御線へのロードも行う。
形状寸法プロセッサ出力レジスタファイル122(第8
図)からスタックメモリ126へ転送するために、形状
寸法プロセッサ36は状態フラッグレジスタ372への
形状寸法プロセッサ出力レジスタロードされた( OP
 0TLDED)信号を起動する。
実際の転送は、ソース制御デマルチプレクサ368のス
タックメモリ転送開始(STKMEM 5TRT)制御
出力線の起動により開始される。転送が終了すると、樹
木横断器32がソース制御デマルチプレクサ368の形
状寸法プロセッサ出力レジスタ利用可能(GPOUTM
EMAVL)制御出力線を起動fる。
形状寸法プロセッサ36からの選別された物体可視(G
P OBJ VIS)制御線上にセグメントの物体が見
えるとして示された時のみ、データは形状寸法プロセッ
サから状態フラッグレジスタ372へ転送される。面処
理中は、スタックデータは形状寸法プロセッサスタック
レジスタファイル120へ転送される。レジスタファイ
ル12Gがロードされると、そのことはソース制御デマ
ルチプレクサ368のTT GP STK MEMLD
EDの起動により、形状寸法プロセッサ3Bへ知らせら
れる。
アドレスカウンタ330のアドレス出力を読出すために
、ソース制御デマルチプレクサ368のローカルデータ
バススタックアドレス選択(LDBST−KADSEL
)出力制御線が起動される。ソース制御デマルチプレク
サ368のローカルデータバススタック語カウンタ選択
(LDBSTKWDCNTSEL)制御信号出力線の起
動により、制御語レジスタ336の制御語出力をローカ
ルデータバス308を介して読出せるようにする。
DLMレジスタファイル112をアドレスするために、
マイクロコードパイプラインレジスタ366から第26
図のアドレス制御論理回路362へのレジスタファイル
選択(REGFIIJ″5EL)制御線出力が起動され
る。アドレスはマイクロコードメモリ302からのマイ
クロコード制御語データバス(MICDATA)の16
ビツトによυ与えられる。
そのアドレスは、関連するデータを利用できる2サイク
ル前に供給される。レジスタファイル112との間でロ
ーカルデータバス308を介してデータの転送を行うた
めに、ソース制御デマルチプレクサ368のローカルデ
ータバスレジスタファイル選択(LDBRGFLESE
I、)制御出力線が起動される。
パイプラインレジスタ366のマイクロコード制御語の
5ビツトが、マイクロシーケンサ300に対する次のマ
イクロコード命令(MICINST)を含む。論理ゲー
ト378を介して受けたマイクロコード命令語に応答し
て、マイクロシーケンサ30Gは次のマイクロコードア
ドレス(MICAD)をマイクロコードメモリ302へ
出力する。アドレスされたマイクロコード制御語がマイ
クロコード命令から読出され、パイプラインレジスタ3
66に格納されて、樹木横断器の動作のために次の制御
信号セットを与える。
マイクロコードメモリ302に格納されている樹木横断
器マイクロコードのプログラム設計言語が付録Bに記載
されている。樹木横断器マイクロコードは「主」プログ
ラムと7個のサブプログラムすなわち手続きを備えてい
る。マイクロコードについてのコメントが/申comm
ent申/の形で与えられる。
主プログラムの第1のステップ(B−2ページ)は、2
行目のコメントにおいて述べられているように、レジス
タとフラッグ初期設定することである。、!25図に示
すように、AT、TTデータ旗柚し・ジスタ語ocが「
逆転およびプロセス」フラッグ(ビット1)を有する。
その「逆転およびプロセス」フラッグは、樹木横断器を
面処理モードに切換えるものとすると、セットされる。
また、「面処理」モードビット(ビット19)は、特定
の面を処理するものとすると、セットされる。それらの
共に表示リストの選別横断の初めに最初にリセットされ
る。
最初に横断すべきセグメントはビューボートセグメント
である。ビューボートセグメントのビューボートパケッ
トを表示プロセッサ40(第1図)へ送ることにより、
ビューボートは初期設定される。
DLMレジスタファイル112(第13図)は、表示リ
ストの選別横断中および面処理逆横断中にセグメントと
バッファポインタを格納するために、いくつかのレジス
タ場所10〜IB(第27図)を有する。DLMレジス
タアドレス場所10〜13には、見える(または潜在的
に見える)と選別作業中に判定された最後のセグメント
物体匡対して、同胞ポインタと、子ポインタと、選別バ
ッファポインタと、ヘッダブロックポインタとが格納さ
れる。
しかし、最初に、第1のセグメントのポインタ(すなわ
ち、ビューボートセグメント)が、主プログラムの5行
目と6行目に述べられているように、最後に見える物体
格納レジスタにロードされる。
スタック制御器のアドレスカウンタ330は、スタック
メモリ126内の現在のメモリ場所を指すスタックポイ
ンタである。スタックポインタがスタックメ七り126
の最初の場所へ戻ったとすると、それは、全てのセグメ
ント(樹木物体)が横断および逆横断されて、表示リス
トを使いきったことを示す。表示リストの全ての物体が
使いきられたとすると、ALU語OC(第25図)のフ
ラッグビット17がセットされる。主プロセツサの8行
目はこの「樹木物′体が使いきられた」フラッグビット
を調べ、樹木物体が使いきられるまで(すなわち、使い
きられた樹木物体のビットがセットされるまで)8行目
のr doループ」ルーチンヲ実行する。
10〜20行に述べられている別のdOループルーチン
は8行目の使いきられた樹木物体dOループ内に入れ子
犬に入れられる。10〜20行のルーチンは、逆および
プロセスモードビット(AKU語OC5ビット1)がセ
ットされるまで繰返えされる。選別横断中に同胞セグメ
ントと子セグメントを持たない見えるセグメントに遭遇
した時にそのモードビットはセットされる。それから樹
木横断器は表示リストの聞処理再横断の切換わる。逆お
よび面モードピットがセットされなかったと仮定すると
、スタックの最大容量をこえて「スタックあふれ状態」
を示したかどうかを判定するために、主プログラム(1
11行目がスタックポインタを調べる。もしこえなけれ
ば、主プログラムは制御を、付録BのB−4ページに述
べられている「物体選別」手続きへ移す。
「最後の物体を探したか」どうかを示す別のフラッグビ
ット(ALU語OC,ビット3)をALU314が維持
する。選別すべきセグメントのための同胞ポインタ、子
ポインタ、選別バッファポインタおよびヘッダーブロッ
クポインタが、DLMレジスタファイル112(第27
図)の「最後に探された物体」レジスタアドレス場所1
4〜17にそれぞれ格納される。このセグメントは「最
後に探された物体」と名づけられる。選別プロセス中に
、セグメントが続いて潜在的に見えるものと判定された
とすると、それらのポインタはDLMレジスタファイル
112のアドレス10〜13の「最後の見える物体」場
所へ転送される。それでそのセグメントは「最後の見え
る物体」と名づけられる。
「最後の物体が探された」フラッグがセットされないと
すると、「物体選別手続き」は制御を付録Bt7)B−
8ページの「最後に探された物体選択」手続きへ移す。
最後の見える物体が同胞セグメントを有するものとする
と(すなわち、同胞ポインタは妥当)、最後に探される
物体選択手続きに最後に見える物体レジスタ(アドレス
10)から同胞ポインタを得て(8行目)、第27図の
最後に探さnた物体ヘッダブロックポインタレジスタ(
アドレス17)に同胞ポインタを格納する。同胞セグメ
ントのそのヘッダブロックポインタはDLMインターフ
ェイス306(第13図ンへ転送されて、DLMレジス
タファイル112へのヘッダブロックパケットの転送を
開始する。このヘッダブロックパケットから同胞セグメ
ントの同胞ポインタと、子ポインタおよび選別バッファ
ポインタ(第4図)が第27図の最後に探された適切な
物体ポインタレジスタ(アドレス14〜16)に与えら
れる。それから樹木横断器が選別バッファDLMインタ
ーフェイス306へ送って、選別のために形状寸法プロ
セッサ36への同胞セグメント選別バッファパケットの
転送を開始する(9行)。次に、「最後の物体が探され
た」フラッグ(ビット3、ALU語OC)がセットされ
、「最後に探された物体同胞/子」フラッグ(ALU語
OC,ビット5)がセットされて、探された最後の物体
が最後知見える物体の同胞であったことを示す。
最後に見える物体が同胞セグメントを持たないが、子セ
グメントを持っているとすると、樹木横断器は子セグメ
ントのヘッダーブロックをフェッチし、それから最後に
探された物体レジスタに子セグメントの適切なポインタ
を選別して、それらのポインタを格納するために、子セ
グメントの選別バッファを形状寸法プロセッサ36へ転
送する(14〜17行)。
最後に見える物体が同胞セグメントまたは子セグメント
を持っていないとすると、樹木横断器は選別横断路の終
9に達したのであって、プロセス面モードビット(AL
U語OC1ビット19)をセットする。また、「最後の
物体が探された」フラッグと「次に探す物体」フラッグ
(それぞれビット3と4)がリセットされる。
それから「最後に探される物体選択手続き」は制御を付
録BのB−4ページの物体選別手続きの6行目へ戻す。
そうすると、その6行目は制御を主プログラムの199
行目戻す。スタックがあふれなかったと仮定すると、1
0〜20行目のdOループが物体選別手続きを再び呼出
す。
最後の物体が探されると(セグメントが選別された)、
物体選別手続きの8行目における樹木横断器が、形状寸
法プロセッサ36が最後に探された物体の選別プロセス
がiって、セグメント属性データを形状寸法プロセッサ
36 (J8図)の出力レジスタファイル122に格納
したかどうかを判定する。
形状寸法プロセッサの出力を利用できないとすると(8
行)、次に探すべき物体のポインタが探された次の物体
のポインタレジスタ18−I B(第27図)にロード
されたかどうかを樹木横断器が判定する。もしロードさ
れなけnば、付録BのB−7ページの次に探す物体手続
きが呼出される。その手続きは、同胞ポインタが妥当で
おれば、すなわち、[探された最後の物体」が同胞を有
するものとすると、「探された次の物体」へラダーブロ
ックポインタ(DLMレジスタファイルアドレスIB 
)を「探された最後の物体」同胞ポインタ(DLMレジ
スタファイルアドレス14)に対して更新する。「探さ
れた最後の物体」セグメントが同胞を持たないとすると
、「探された最後の物体」子ポインタが、妥当であれば
、「探された次の物体」へラダーブロックにコピーされ
る。
探された次の物体へラダーブロックポインタ、次に横断
すべきセグメントのヘッダーブロックにスタートアドレ
スを与える。このヘッダーブロックポインタはDLMイ
ンターフェイス306(第13図)へ転送されて(6行
または10行)、DLMレジスタファイル112へのヘ
ッダーブロックの転送を開始させる。ヘッダーブロック
パケットから同胞ポインタと、子ポインタと、選別バッ
ファポインタとが探された次の適切な物体レジスタアド
レス場所18〜IA (第27図)にコピーされる。
「探された次の物体」フラッグ(ALU語OC1ビット
4)もセットされて(3行)、このセグメントが既に探
されたものであることを示す。探された最後の物体が妥
当な同胞ポインタまたは子ポインタを持たないとすると
、樹木横断器は探された次の物体レジスタの適切なレジ
スタを選別して、「処理すべき面」フラッグビットをセ
ットする。
これにより「探された次の物体」手続きが終る。
物体選別手続きへ戻って、形状寸法プロセッサ出力を利
用できるものとすると、最後の物体が潜在的に見えるも
のと選別手続き中に形状寸法プロセッサ36により判定
さnたかどうかを判定するために、樹木横断器は形状寸
法プロセッサから状態フラッグレジスタ372(第29
A図)までの形状寸法プロセッサが選別した見える物体
(GP 0BJVIS)制御出力線124テストする(
16行)。最後の物体が見えると判定されておれば、樹
木横断器に、付録BのB−6ページに記載さnている「
無条件更新」手続きを開始する。この手続きにおいては
、樹木レベルポインタが増加された後で最後に探された
同胞/子フラッグが「子」にセットされたとすると、最
初のステップ(6行)は、第9図に示すように、探され
た最後の物体ポインタをスタックメモリに格納すること
である。また、探された最後の物体ポインタが最後の見
える物体ポインタレジスタ10〜13(第27図)へ転
送される。探された最後の物体が同胞であるとすると、
形状寸法プロセッサは形状寸法プロセッサ出力レジスタ
ファイル122からの属性データをスタックメモリ12
6(第8区)のみへ転送する。あるいは、探された最後
の物体が子セグメントであると、データは形状寸法プロ
セッサスタックレジスタファイル120にも同様に格納
される(第8図)。先に述べたように、スタックレジス
タファイル120内のデータは属性の相続のために用い
られる。
それから、樹木横断器は探された最後の物体ポインタレ
ジスタ14〜17(第27図)をリセットする(15行
目)。探すべき次の物体のポインタを利用でき、かつそ
のポインタが妥当であるとすると、樹木横断器は探され
た次の物体のポインタ(レジスタアドレス18〜IB)
を探された最後の物体ポインタレジスタに格納する(ア
ドレス14〜17)(19行目)。探された次の物体フ
ラッグ(ALU語QC、ピット4)をリセットした後で
(21行目)、新しい探された最後の物体の選別バッフ
ァが形状寸法プロセッサ36へ送られる。
制御は「物体選別」手続のB−5ページの1行目へ戻る
。探された最後の物体が見えないことが形状寸法プロセ
ッサ36により知らされたとすると、そのセグメントと
、そのセグメントの全ての子孫とが無視され、それ以上
処理さnない。したがって、探された最後の物体が同胞
でろれば、物体選別手続きにおける樹木横断器が最後の
見える物体の同胞ポインタ(DLMレジスタファイル場
所10)を探された最後の物体の同胞ポインタに置き換
える(4行目)。さもないと、最後の見える物体の子ポ
インタが探された最後の物体の同胞ポインタで置き換え
られる。また、探された最後の物体の見えるフラッグが
リセットさnる。
並んでいる次に横断すべき物体が探されると、次の物体
が探された最後の物体の同胞であるならば、探された最
後の物体のポインタレジスタが探された次の物体のポイ
ンタに置き換えられる。しかし、次の物体が探された最
後の物体の子であるとすると、次の物体の載物体が見え
ないと判定されるから、次の物体は選別されない。また
、面プロセスフラッグがセットされる。物体選別手続き
のB−5ページの27行目は制御を主プログラムへ戻す
スタックかめふれを起さなければ、面プロセスがセット
されて、樹木横断器が同胞セグメントまたは子セグメン
トを持たないセグメントに遭遇するまで、主プログラム
は10〜20行のdoルーズの循環と、表示リストのセ
グメントの選別とを続行する。その点で、主プログラム
は「逆および面処理」手続きを呼出す。その手続きによ
り樹木横断器は表示リストを再横断し、横断路の選別さ
れたセグメントの潜在的に見える物体を面処理する(B
−3ページ、2〜4行)。
選別手続き中にスタックメモリ126があふれたとする
と、主プログラムはシステムバスインターフェイス10
0のあふれフリップ70ツブと割込み要求フリップ70
ツブをセットする。それらの7リツプ70ツブは、宛先
制御デマルチバイブレータ370(第29A図)のスタ
ックあふれセット(ST OV FL ST)制御出力
線を起動することによりセットされる。それから樹木横
断器は無限ループへ飛越して、樹木横断器32による割
込み要求に応答した端末プロセッサ12による起動を待
つ。
簡単にいえば、面処理手続きは最後に選別された潜在的
に見える物体の属性データおよび変換マトリックスをス
タックの1番上から形状寸法プロセッサスタックレジス
タファイル120(第8図)へ再ロードすること、およ
び形状寸法プロセッサ36が物体を面処理するためにそ
の物体に対するデータバッファパケットを形状寸法プロ
セッサDLMレジスタファイル115に転送することを
備える。最後に選別された物体に対する面処理が終った
後で、スタックに格納されている残りの選別された物体
が逆および面処理ルーチンにより逆の順序で同様に処理
される。その逆の順序においては、それらの物体は選別
されて、「先入れ、後出し」法で格納される。妥当な子
ポインタを有するスタック物体に遭遇するまで、選別さ
れた潜在的に見える物体の面処理が続行される。その点
において、「選別スべき子」フラッグがセットされ、逆
および面処理ルーチンを出て、制御を主プログラムへ戻
す。
逆および面処理手続きは付録BのB−9〜B−12ペー
ジに述べられている。第1のステップ(5行目)におい
ては、B−13ページの「ポツプスタック」手続きが呼
出される。ポツプスタック手続キニ、子ポインタと物体
へラダーブロックポインタおよびスタックの1番上にお
ける物体の樹木レベルおよびフラッグ語(第9図参照)
を含ム初めの4語をDLMレジスタファイル112(第
8図)へ転送する。選別手続き中に物体が潜在的に見え
るものと判定されたかどうかを判定するために、フラッ
グ語はAIIJ314へ転送される。(11行)。物体
が潜在的に見えるということをそのフラッグ語が示した
とすると(13行)、DLMレジスタファイル112へ
のへラダーブロックの転送を開始させるために、樹木横
断器はヘッダーブロックポインタをDLMインターフェ
イス306(第13図)へ送る(14行)。ヘッダーブ
ロックが妥当なデータバッファポインタを有しておれば
、その物体の面処理操作のために、樹木横断器はその物
体の属性と変換マトリックスをスタックメモリ126か
らスタックバス38を斤して形状寸法プロセッサ36へ
転送する(20行)。物体のヘッダーブロックが妥当な
データバッファポインタを持たず、セグメントが原形を
持たないことを示すと、スタックアドレス(ALU語0
0)が減少させられて、スタック上の次の物体を指す。
同様に、物体の一部が見えると判定されたと物体フラッ
グ語が示したとすると(30行)、スタックアドレスは
減少させられる。スタックアドレスを減少することによ
りアンダーツ0−が生じさせられたとすると、面処理手
続はスタックの1番上に戻っており、「樹木が使いきら
れた]フラッグがセットされる。
そのためにポツプスタック手続が終し、制御を逆および
面処理手続の7行目へ戻す。
物体ヘッダーブロックが呼出し制御ブロックであるとす
ると(8行)、パートナ−ポインタ(語4、第6図)が
0にセットされる(9行)。データバッファポインタが
妥当であって、物体がデータ原形を有し、一部が見える
フラッグ(選別)くツ7ア属性パケットの語2)がそれ
らの原形が潜在的に見えることを示したとすると(12
行)、樹木横断器はその物体のための表示リストメモリ
に格納されているデータパケットの転送を開始する。
樹木横断器はデータバッファポインタをDLMインター
フェイス306へ送る。そのDLMインターフェイスは
パケットの初めの16語をDLMレジスタファイル11
2と形状寸法プロセッサ36のDLMレジスタファイル
115へ送る。ノ(ケラトの長さカ32語であれば、付
加16語が形状寸法プロセッサ36のDLMレジスタフ
ァイル115へ転送される(30るために、樹木横断器
は次のパケットポインタを樹木横断器81Mレジスタフ
ァイル112に格納されている最初のパケットからとυ
出し、そのポインタをDLMインターフェイス306へ
転送して次のパケットの転送を開始させる(27行)。
次のデータバッファポインタが0であって、その物体の
ためのデータバッファ中に付加パケットが無いことを示
すまで、このプロセスは続行される(B−10ページ、
4行)。表示リストメモリ16からのデータパケットと
、スタックメモリ126からの属性および変換マトリッ
クスを用いて、形状寸法プロセッサ36はその物体を面
処理する。そnから、樹木横断器は選別すべき子(AL
U語OC1ピット2)をリセットし、フラッグを逆にし
て、処理する( ALU語OCピット1)(B−10ペ
ージ、8行)。
B−11ページに述べらnている制御を続けて、スタッ
ク上の次の物体を面処理すべきか(見えるならば)、ま
たはスキップすべきか(見えないなきかを樹木横断器は
次に決定する。まず、樹木横断器はスタック上の次の物
体のスタックアドレスを計算する(6行)。そのよう々
次の物体に対する樹木レベルと子ポインタはALU 3
14へ転送される。(7行と8行)。現在の物体(以前
に面処理された物体)の樹木レベルが次のスタック物体
の樹木レベルに等しくないとすると、次のスタック物体
は以前に処理された物体(現在の物体)の親である。次
のスタック物体が呼出しセグメントでないとすると(1
3行)、逆および面処理フラッグがセットされ(22行
)、探された最後の物体の子ポインタと、探された最後
の物体の同胞ポインタが0にされて、樹木横断器t−r
だまして」「逆および面処理」ルーチンに再び入れて次
のスタック物体の面を処理させる。(樹木横断器は、子
セグメントまたは同胞セグメントを持たないセグメント
に遭遇したと樹木横断器には見えるから、先に述べたよ
うに樹木横断器は「逆および面処理」ルーチンに自動的
に入る。) 現在の物体の樹木レベルが次のスタックの物体の樹木レ
ベルに等しければ、それらの物体は同胞である(B−1
2ページ、2行)。次のスタックの物体が妥当な子ポイ
ンタを有するものとすると(6行λ樹木横断器は、探さ
れた最後の物体の同胞ポインタを0にセットし、探され
た最後の物体の子ポインタを次のスタック物体の子ポイ
ンタにセットし、かつ子を選別すべきフラッグにセット
することにより選別横断へ戻る(次のスタック物体の子
セグメントを選別する)(7〜13行)。
次のスタックの物体が妥当な子ポインタを有するものと
すると、先に述べたようにフラッグとポインタをセット
して1−逆および面処理」手続きを再び呼出すことによ
り、次のスタックの物体が面処理される。
妥当な子ポインタを有する見える次のスタック物体に遭
遇するまで(またはスタックが使いきられるまで)、樹
木横断器は逆および面処理ルーチンの再呼出しと、呼出
された各見えるセグメントの面処理を続ける。その点に
おいて、逆および面処理ルー°チンが励起され、ストッ
クが使いきらなければ、樹木横断器は選別横断へ戻って
、スタックの物体の子でスタートする。
次に第13図を参照する。樹木横断器32のシステムバ
スインターフェイス100カシステムパス18からの外
部要求に応答する。ここで説明している実施例において
は、それらの要求は端末プロセッサ12から発生される
。システムバスインターフェイス100はアドレス行と
、アドレス変更予行とシステムバス18のハンドシェイ
ク信号を復号して、要求されている樹木横断器の動作を
決定し、樹木横断器の適切なシステムバスハンドシェイ
ク信号を発生する。そのシステムバス18は■IIE/
<スであるかう、システムバスインターフェイス100
は樹木横断器32が■侶スレーブと■侶インターラック
の機能を実行することを許す。
システムバスインターフェイス100のハードウェアお
よびハンドシェイク書式は、前記■侶インターフェイス
仕様マニュアルに述べられているように、標準的な■侶
インターフェイス要求に合致B32および長い語の転送
■εオプションを実現する。ここで説明している実施例
においては、システムバスインターフェイス10Gは逐
次アドレッシングモードや短い語の転送は行わない。樹
木横断器32は、システムバスの要求中に、推奨された
非I10アドレス変更子コード(09,OA、00.O
E)を認識する。
樹木横断器32に対する■侃により開始された要求すな
わち命令に3つの種類に分けることができる。各種類は
類似のやシ方で実現される命令を含む。それら3種類は
次の通シでらる。
1、 マイクロコードメモリまたは書込み可能な記憶装
置(WCS)の読出し動作および書込み動作。
2)マイクロシーケンサ停止動作とマイクロシーケンサ
再スタート動作および樹木横断器リセット動作。
3、 マイクロシーケンサスタート動作。
装置が動作を開始する時は、端末プロセッサ12が一連
のWCS@込み命令を出す。それらの命令は、・17+
ノーパフIQ−A\−小づスカ自−y−L幸か紺+織断
器のマイクロコードメモリ302へ送る。第29B図に
示されているように、インターフェイス10Gの■侶イ
ンターフェイス同期および制御論理300のマイクロコ
ード格納/■侶イネイブル(MIC8/VMEEN)制
御線出方がマイクロシーケンサ300(第29A図)の
入力端子へ結合される。MIC8/VMEEN  制御
線がアクティブの時は、マイクロシーケンサ300のア
ドレス出力が高インピーダンス状態にされる。その高イ
ンピーダンス状態にょし、システムバスインターフェイ
ス100ハマイクロコードアドレス(MICAD)  
バスを制御すること、およびマイクロコードをマイクロ
コードデータ(MICDATA)バスを介してマイクロ
コードメモリへ転送することを許す。マイクロシーケン
サ300が動作しておれば、読出しおよび書込み可能な
制御記憶装置命令がマイクロシーケンサ300の動作を
直ちに停止させる。■侶システムバス書込み信号(WR
ITE)  は、システムバスに結合されているマイク
ロコードメモリ302とWcsデータバッファ382と
間のデータの流れの向きを定める。
■況インターフェイス同期および制御論理380は、複
数のプログラム可能なプレイ論理装置(PALs )を
含む状態マシンによp実現される。その状態マシンは端
末プロセッサ12からの割込み命令とスレーブ要求命令
を復号する。それらの命令はシステムパス18の■侶ア
ドレス(vA)アドレスを介して送られる。■釦インタ
ーフェイス同期制御論理380の状態マシンは、制御論
理380の内部からのローカル状態信号も復号して、イ
ンターフェイス100とマイクロシーケンサ300を制
御する。
■伍アドレスストローブ(As)が上昇した時に、シス
テムパス18からの■侶アドレス(VA)情報がVεア
ドレスレジスタ384に保持される。それからそのアド
レスは■侃インターフェイスアドレスバス(VADBU
S)上にイネイブルされ、その■侶インターフェイスア
ドレスバスからそのアドレスハ、マイクロコードアドレ
ス(MICAD)バスト、ローカルデータバス(LDB
 )およびマイクロコード分岐アドレス(MICBRA
D)バスに対して複数のアドレスレジスタ386内に受
けられる。
■正データバス(voATABtrs )から来る■正
データは双方向バストランシーババッファ388内ニ保
持され、■侶インターフェイス内部データバス389上
にイネイブルされる。内部データバス389からデータ
はWCSデータバッファ382またはローカルデータバ
ス(LDB)  390に受けられる。割込み中は、D
LMI/F DONEおよびSTK 0VFLのような
樹木横断器状態フラッグが割込みデータバッファ392
からのデータバス389に利用できる。wcsデータバ
ッファ382とローカルデータバスレジスタ32はシス
テムパス18で利用することもできる。
システムパス1Bの外部■正データバスとアドレスバス
は、樹木横断器32を駆動するlQMHzのクロック信
号に同期する。■侶インターフェイス岡期および制御論
理380は、■電システムパス18の非同期■侶ハンド
シェイク信号を麗インターフェイス状態マシンに同期さ
せるパルス同期回路3soa (第30図)を含む。第
30図に示すr らf−后IJt8151a’JRn&
l+ff%nイ −/パ  JHnりと、一対の741
20パルス同期集積回路504,506と、反転された
クロックを用いるAS374  レジスタ集積回路50
8とを含む。すなわち、レジスタ508はクロックサイ
クルの中間点においてクロックされる。同期された信号
は反転されないが、元の信号が受けられてから最少限5
0ナノ秒間遅延させられる。同期回路380aは蜀アド
レス安定(As)信号と、組合わされたデータストロー
ブ(OSOおよびDSI )信号と、割込み確認応答入
力(IACKIN)信号とを利用する。関連する同期さ
れた出力信号は添え字r374Qjで示される。
先に述べたように、書込み可能な制御記憶装置読出し/
書込み命令にマイクロシーケンサ300の動作を停止さ
せる。制御論理380の状態マシンは、マイクロシーケ
ンサのクロックフリップ70ツブ514(第28図)を
リセットすることにより、マイクロシーケンサの動作を
停止させることにより、マイクロシーケンサクロック信
号MSEQCLKを不能状態にする。DLMインターフ
ェイス306とスタック制御器312(第13図)は停
止させられ々いが、割込まれたサイクルによるスタック
およびDIMインターフェイスにおけるデータの損失を
阻止するために動作を続けることを許される。
書込み可能な制御記憶装置(WCS)の動作が終った時
の停止状態にマイクロシーケンサ300は放置される。
スタート命令または再スタート命令を発することにより
、マイクロシーケンサ300は再スタートさせられる。
マイクロシーケンサの再スタート命令と停止命令は、マ
イクロシーケンサのクロックフリップフロップ(第38
図)をそれぞれセットおよびリセットする。樹木横断器
のリセット命令は樹木横断器32のリセット(SYNC
RESET)信号線を起動する。■lIJセット(SY
S RESET)信号と樹木横断器リセット命令はマイ
クロシーケンサ300のクロック信号(MSEQCLK
)を停止させる。
第3の種類の命令はスタート命令を含む。ここで説明し
ている実施例においては、それらのスタート命令は動作
が非常に類似する。スタート命令は、システムバス18
の樹木横断器32の種々の場所に対する読出しと書込み
を可能にする。それらのスタート命令は、スタックメモ
リ126に対する読出しおよび書込みの動作と、スタッ
ク制御器312のスタックアドレスカウンタ330(第
18図)に対する読出しおよび書込みの動作と、スタッ
ク制御器312(第18図)のスタック語カウンタ34
2からの読出し動作、または制御レジスタ336への書
込みとの動作と、ローカルデータバス状態レジスタに対
する読出しまたは書込みの動作と、ローカルデータバス
フラッグレジスタに対する読出しまたは書込みの動作と
、DLMレジスタファイル112(第13図)に対する
読出しまたは書込みの動作と、選別/面処理動作および
ビック/アイデント(ident) in1作を開始さ
せること、DLMインターフェイス306状態の読出し
と、新しいアドレスにおいてマイクロシーケンサ300
をスタートさせることを含む。
マイクロシーケンサのスタート命令の実行においては、
マイクロシーケンサのクロック信号(MSEQCLK)
  をイネイブルさせるために■侶インターフェイス状
態マシンがマイクロシーケンサクロック・フリップフロ
ップを七ッ卜する。■侃状態マシンは■侃アドレスも格
納し、ローカルデータバス(LDB)がそれを利用でき
るようにもする。
書込みスタート動作が選択されたとすると、vMEデー
タバス(VDATABUS)からの■侶データ語も格納
され、ローカルデータバスがそれを利用できるようにさ
れる。
たとえば、重要な書込みスタート命令は、選別/面処理
およびピック/アイデント動作を開始する命令である。
この命令においては、ローカルデータバスが利用できる
ようにされた■侶データ語に表示リストメモリ・ルート
セグメントパケットアドレスを含み、それらの動作を開
始させるためにDLMインターフェイス306により用
いられる。
読出し動作が選ばれると、ローカルデータバスから■[
F]”データレジスタ390に置かれたデータに、シス
テムバス1Bの■侶データバスへ戻される。
スタート命令においては、状態マシンが制御そのゲート
はマイクロシーケンサの場所000Hに飛越させ、■侶
アドレスの下位ビットを、マイクロシーケンサマツプレ
ジスタへのマイクロブランチアドレス(MI CBRA
D )バスに置く。それから、マイクロシーケンサ30
0は、命令サービスルーチンに対するマツプ向は飛越し
命令(マイクロシーケンサオーピーコード2)を実行す
る。このルーチンは、マイクロコードメモリの、マイク
ロブランチアドレス(MICBRAD)バスにより供給
される■侃アドレスの下位12ビツトによυ識別される
アドレスに格納される。そのアドレスは任意の樹木横断
器マイクロコード場所を選択するために十分でらる。
マイクロブランチアドレスは、マイクロコードメモリ3
02からのマイクロコード語の一部を格納する第2のパ
イプラインレジスタ394によっても供給できる。特定
のマイクロブランチアドレスソースは、パイプラインレ
ジスタ366のマイクロコード命令(MICINST)
出力により選択される。そ−kq +、+A・ツバ−a
 20Q Iff此φム引λ インバーl396は2つ
の出力VBRADとVINSTBRヲ有L、それらの出
力はアドレスレジスタ386の出力とパイプラインレジ
スタ394の出力をそれぞれ交互にイネイブルする。
1つの特殊なスタート命令は、マイクロシーケンサ30
0を1つの場所においてループさせ、■正データバスの
それがループするアドレスへ戻させるトラップ命令であ
る。トラップ命令はデータソースとして多目的フィール
ドを選択する。そのフィールドは分岐場所を含むo、 
Mデータレジスタ390は宛先としても選択される。こ
のようにして、トラップ命令はマイクロシーケンサの現
在のアドレスを結果として戻す。
■のインターフェイス同期制御論理380の■伍インタ
ーフェイス状態マシンは、■侶スレーブ要求に応じて3
つの状態を、および割込み要求に対する4つの状態をサ
イクルする。外部■電スレーブサイクルと割込み要求サ
イクルの状態図表現が第31図に示されている。先に述
べたように、同期および制御論理380(第29B図)
の状態マシンをプログラム可能なアレイ論理回路(pu
、a)で実現できる。第31図の状態遷移図で表されて
いる8種類の論理状態が、第32図および第33図のP
AL実現における個々のフリップフロップ510a〜5
10hにおのおの割当てられる。初期設定においては、
アイドル状態(000)フリップフロップ510&がプ
リセットされる。他の全てのフリップ70ツブ510b
〜510hはリセットされる。したがって、論理状態1
がアクティブ制御状態フリップ70ツブへ伝えられる。
制御論理380により割込み要求が検出されたとすると
、■侃インターフェイス状態マシンが第31図の左側に
示されている経路をたどる。それは状態001,011
および010を含む。割込みサイクル中に、下位の3つ
の■侶アドレスビットが割込みアドレスに駆動され、割
込み確認応答線(VME IACK)が低レベルに駆動
される。それからアドレス安定!(AS)が低レベルに
駆動される。割込み確認応答を確めるためにはこれで十
分であるが、この特定のスレーブが確認応答されること
を確めない。
この特定のスレーブが割込みを確認応答したという確認
は、低レベルに駆動されるIACKIN線も含む。
■[F]インターフェイス状態マシンは、それらの条件
が満されたかどうか、および応答の前に樹木横断器側込
みがセットされたかどうかを判定する。
全ての条件が満されたとすると、■侶インターフェイス
状態マシンが割込み確認応答出力(I ACKOUT)
を高レベルに保ち、■侶データストローブ(DS374
Q)を待ち、それから、割込みデータバッファ392に
格納されている状態/IDバイトを■正データバス38
9に置くことを可能にする。おる条件が正しくないとす
ると、■侶インターフェイス状態マシンはシステムバス
18からの信号をシステムバス18に対するI ACK
OUT 出力まで送る。
状態/IDバイトの下位ビットは樹木横断密状態情報、
たとえばRUN/HALT、DLM I/F DONE
STK RUNNINGおよびSTK 0VFLの各条
件を含む。
上位4ビツトは樹木横断器IDである。それは、ここで
説明している実施例においては、1000(2進)であ
る。第32図は、制御論理380の■侶インターフェイ
ス状態マシンの割込み要求サービス部380bを論理的
に実現したものを示す。
■のスレーブ(データ転送)命令が検出されたとするト
、葎インターフェイス状態マシンは第31図の右側に示
されている経路をたどる。それは状態101 、111
 、100および110を含む。命令が舊込み命令の時
には状態111に入る。あるいは、命令が読出し命令の
時には状態100に入る。両方の場合に、鷲アドレス情
報がPALデコーダに保持される。それの論理構成が第
33図に示さnている。■侃アドレス情報はマイクロシ
ーケンサアドレスと、マイクロシーケンサ分岐と、ロー
カルデータバスレジスタ386とにも保持される。樹木
噴断器32はデータを長い語モードで転送するから、■
侶アドレス語の最下位ビットは、この実施例では、常に
0でるる。■侶アドレスにより表されている特定のスレ
ーブ関数が101状態サイクル中に復号される。それら
の命令の書式が第34図に示されている。復号された関
数は前記マイクロシ−ケンサのスタート命令と、ストッ
プ命令と、再スタート命令と、リセット命令と、書込み
可能な制御記憶装置読出し/書込み命令とを含む。それ
らの命令はオーピーコードビット17と18により定め
られる。
それらの命令の実行においては、■侶インターフェイス
状態マシンが■εアドレスの下位部分(ビット1〜13
)をマイクロシーケンサアドレス(MICAD)  パ
スに置けるようにする。読出しWCS動作が選択される
ものとすると、語部分選択として次に下位のビット、た
とえばマイクロコードデータ(MICDATA)語の下
位ビットO〜31または上位ビット32〜63を状態マ
シンは復号する。データトランシーババッファ382の
適切なバッファが、選択さ九たビットを送ることができ
るようにされる。
データストローブ(DS374Q)がアクティブの時に
■侶データレジスタ388がイネイブルされる。
■伍しジスタ388は、■侶転送確認応答が受けられた
時に、ディスエイプルにされる(データストローブDS
374Qが高レベルに戻る)。
書込みWaS動咋が選択されたとすると、■侶インター
フェイス状態マシンが■侶アドレスヲ復号し、WCSデ
ータバック7382に格納されている■侶データを、マ
イクロコードメモリ302に達するマイクロコードデー
タ(MICDATA)バスに与えることができるように
する。この状態マシンはマイクロコードメモリ302の
出力を同時にディスエイブリし、■侶書込み可能制御記
憶装置書込みイネイブル(vwcswRTpNn)制御
線を選択する。それらの書込み制御線は、書込み可能制
御記憶装置命令サイクルが終った時に選択される。
先に述べたように、マイクロシーケンサ書込み開始命令
により、マイクロシーケ/す300は■εアドレスの下
位ビットに含まれているアドレスに開通てられ、マイク
ロシーケンサ300のクロックフリップフロップ(第3
8図)が実行状態にセットされる。■のアドレスの下位
ビットはバッファ386の分岐アト1/スレジスタから
得られる。それらのビットは、状態マシンVBRAD制
御信号が起動された時に、マイクロ;−ド分岐アドレス
(MICBRAD)によう与えられる。選別/面処理動
作およびピック/アイデント動作のための表示リストメ
モリスタートアドレスを含む■侶データ語は、ローカル
データバスバッファ390から得ることができる。デー
タ語と■εアドレスは、マイクロシーケンサの制御の下
に、ローカルデータバス(LDB)上で選択的にイネイ
ブルできる(すなわち、ソース制御デマルチプレクサが
LDVBDATASELまたはLDBVADSEL  
(第29A図)を出力する)。
いくつかの例外を除き、読出し開始命令は書込み開始命
令に非常に類似している。■εアドレスの最上位ビット
、すなわち、■但書込み信号をテストすることによυ、
マイクロシーケンサ300はWスレーブ読出し命令と醒
スレーブ書込み命令を弁別できる。読出し命令により、
マイクロシーケンサ300はデータ語をローカルデータ
バスバッファ390に書込まされる。■eインターフェ
イス状態マシンはローカルデータバス書込み動作を検出
し、■侶データレジスタ38Bを介して7ステムバスへ
データ出力を与えることを可能にする。
システムパス18がデータ転送を確認した時に、状態マ
シンはレジスタ388を不能状態にする。
第32図と第33図に示す状態マシンPAL回路への入
力順の数減少させるために、システムバス1Bからの入
力信号の多くは、第35図の論理回路380dにより表
されているPAL回路へまず与えられて、減少された出
力信号ME 、 IRQX’ INTRPT 。
IACKOUT、WO2および5TARTを発生する。
同期および制御論理380の制御出力を発生するために
、以下に付加PAL回路はもちろん、第32図と第33
図に示す状態マシンPAL回路によって、それらの出力
信号は入力信号として用いられる。
付録りは、アドレスレジスタ386と、VMVLDBレ
ジスタ390ト、WCSデータバック7382と、割込
ミデータバツファ392と、■電データレジスタ388
とを制御する、同期および制御論理380のイネイブル
信号およびクロック線信号のための出力制御論理式を記
述するものである。付録りのレジ。
スタ出力制御論理式の論理回路により実現したものを第
36区に示す。その図に示すように、レジスタ出力制御
論理3soeは第32図および第33図の状態マシン制
御状態情報と、入力減少論理380d (第35図)か
ら選択された状態情報を組合わせて、■侶インターフェ
イス10Gの上記レジスタのための制御信号を発生する
第37図は、システムバス1Bに対する割込み要求(I
RQX)制御信号を発生するための同期および制御論理
380の一部380fを示す。制御論理3Bofはフリ
ップフロップ512を含む。この7リツプ70ツブは、
マイクロシーケンサ30Gのソース制御デマルチプレク
サ368(第29A図)のローカルデータバス割込み選
択(LOB INTERRUPTSEIJCT )制御
信号出力によってセットでき、かつ、割込みがシステム
バス18により確認された時にリセットされる。
第38図に示すように、同期および制御論理380の一
部380gがマイクロシーケンサクロック線Msgqc
t、xを制御する。制御回路380gはフリップフロッ
プ514を含む。このフリップフロップは、マイクロシ
ーケンサのクロックをディスエイプルにすベキ時にリセ
ットされ、マイクロシーケンサのクロックの実行を許す
べき時にセットされる。
フリップフロップ512は樹木横断器同期リセット信号
5YNCHRESETによってリセットでき、がっ、■
侶アドレスのビット16によっても制御される(第34
図)。妥当な樹木横断器■侃命令を受けると、■侃イン
ターフェイス100がその命令を終ると、すなわち、イ
ンターフェイス100が第31図に示されているモード
110を出ると、フリップ70ツブ512は■侶アドレ
スビット16に従ってセットされる。
樹木横断器32の同期リセット信号5YNCHRESE
Tが制御回路380h (第39図)にょシ発生される
。フリップ70ツブ516は、システムバス同期リセッ
ト信号または■侶命令(第34図)のビット15によっ
てセットできる。樹木横断器同期リセット信号は樹木横
断器32のみをリセットする。■侶アドレスビット15
がセットされ、命令が終った後で樹木横断器リセット動
作が始って、樹木横断器■侶インターフェイス100が
i在の命令サイクルを終ることができるようKする。
カウンタ518がリセット制御回路380hに含まれて
、255クロック周期すなわち25.5マイクロ秒とい
うようにリセット時間を最短にする。したがって、ここ
で説明している実施例においては、■電システムリセッ
トが起きて25.5マイクロ秒が経過するまで、樹木横
断器32は■侶指令を受けない。
第40図は、1クロツクのための第38因の実行/停止
回路380gのべ出力を遅延させるための、同期および
論理380の論理回路部3801のフリップ70ツブ5
20を示す。遅延されていない阻取信号が命令駒入カゲ
ート378 (第29A図)へ与えられるとすると、マ
イクロシーケンサ300は再び実行する。その代りに、
フリップフロップ520からのDELAYED RUN
出力信号がマイクロシーケンサ命令アンドゲート378
へ与えられたとすると、マイクロシーケンサがスタート
または再ス(マイクロシーケンサリセット)は命令00
0Hへ飛越させ、先に述べたようにマイクロシーケンサ
割込みとして用いられる。■伍アドレスビット18(第
34図)は、遅延させられたRUN信号と、遅延させら
れていないRUN信号のいずれを選択するかを制御する
スタックのめふれが検出されると、マイクロシーケンサ
300は、宛先制御デマルチプレクサ(第29A図)(
Dスタ7りあふレセット(ST 0VFI、 ST)出
力制御線を起動する。この信号は、同期および制御論理
380(!41図)の一部380jのスタックあふn7
リツプフロツブ522をセットする。また、スタックろ
ふれが検出された後でマイクロシーケンサ300は割込
みを発生する。端末プロセッサ12は割込みを確認し、
割込みデータバッファ392(第29B図)に格納され
ている状態/IDバイトのビット3としてスタックあふ
れフラッグを受ける。■化インターフェイス状態マシン
割込み確認応答サイクルの最後の状態(010)からふ
れ(011)の間に状態/IDバイトが鷲データバッフ
ァ388にロードされ、その後で最後の状態(010)
に変更できる。また、同期リセット(SYNCHRES
ET)信号によりスタックらふれフリップフロップ52
2をリセットできる。
下記の状態のいずれかが起きた時に郁システムバスの誤
シが検出される。
1、 ■g バス制御信号DSLが低レベルの時の割込
み確認応答。
2)  VMEバス長語転送以外のデータ転送。
3、  Mバスデータス)O−プ(O80,081)が
ともに低レベルでない時の長語転送。
4、  VMEアドレスビットA01が高レベルの時の
長語転送。
バス誤り制御信号を発生するための同期および制御論理
380の一部380Kが第42図に示されている。■侶
インターフェイス状態マシンの命令または割込み確認応
答サイクル中にバス誤シが検出されると、バス誤υフリ
ップ7oツブ524がセットされる。そのバスxbフリ
ップフロップ524は、現在のサイクルが終る時または
リセット中にりセットされる。
読取ジスタート命令を支持するためにマイクロコードメ
モリ302がプログラムされるとすると、樹木横断器3
2はデータ値をローカルデータバスバッファ390へ戻
すべきである。更に1端末プロセツサ12は、樹木横断
器32が、別の命令を送る前に、特定のスタート命令を
実行するために十分な時間をとらせるべきである。
第57〜63図はここで説明している実症例における樹
木横断器32を実現するための特定の集積回路の相互接
続を示すものである。
ここで説明している実施例における端末プロセッサ12
はワンチップ汎用マイクロコンピュータである。第43
図は第1図の端末プロセッサ12の詳しいブロック図で
ある。この端末プロセッサ12は副プロセツサ部400
を含み、この副プロセツサ部400はマイクロプロセッ
サと、関連する周辺集積回路チップとを有する。ここで
説明している実権例においては、そのマイクロプロセッ
サはナショナル・セミコンダクタ(National 
Sem1conductor)NS 32032 CP
Uチップで構成でき、周辺チップはナショナル・セミコ
ンダクタNS 32081浮動小数点ユニット(FPU
)ト、ナショナル・セミコンダクタNS 32082メ
モリマネージメントユニツト(MMU)  と、ナショ
ナル・セミコンダクタN532201タイミング制御二
ニツト(TCU)  とを含むことができる。
制プロセッサ部400は、32ビツトローカルデーlバ
ス402と24ピツトローカルアドレスバス404を介
して、端末プロセッサ12の別の部品と交信する。デー
タが副プロセツサ部400とデータバス4020間を、
副プロセツサ部400のデータトランシーバを汗して転
送される。副プロセッサ部400ハ、アドレスバス40
4 K置くべきアドレスを保持するラッチも有する。
端末プロセッサ12は副メモリ部406も含む。
この副メモリ部はダイナミック・ランダムアクセスメモ
リ(DRAM)と読取り専用メモリ(ROM)を402
およびローカルアドレスバス404との間の読出し動作
と書込み動作は、副メモリ部406のバスインターフェ
イスを介して行われる。ランダムアクセスメモリは副プ
ロセツサ部400 、または外部直接メモリアクセス装
置によυアクセスできる。
端末プロセッサ12は外部装置と交信するために4つの
インターフェイスを有する。第1のインターフェイスは
、システムバス18をi末7”1ツサ12のローカルデ
ータバス402 ドローカルアドレスバス404に結合
スるシステムバスインターフェイス408である。先に
述べたように、この実権例のシステムバス18は標準の
VMEパスである。
システムバスインターフェイス408は、全体の■釦パ
スのための仲裁ロジックを含むVMEマスタおよびスレ
ーブインターフェイスである。インターフェイス408
のスレーブ部は、副メモリ部406のランダムアクセス
メモリ部を直接アクセスできる。システム■のバス18
に対するインターフェイスとして、システムバスインタ
ーフェイス408I詩 借二111ζノイらノ1ノl罰
−姉中1111−ズ(read release)  
と、サイクル翻訳およびバイト交換とを含む通常のアド
レスおよびデータ経路制御機能を含む。システムパスイ
ンターフェイス40Bは割込み取扱い器と、タイムアウ
トモジュールと、アドレス復号と、ローカルパス仲裁と
、適切な■のパス同期および制御論理とを有する。
第2のインターフェイス41Gは4本の非同期直列線を
有するインテリジェント直列インターフェイスを構成す
る。各非同期直列線はプログラム可能なボー速度を有し
、少くとも2本は標準のモデム制御器を有することが好
ましい。タブレット20と、キーボード22および表示
装置26(第1図)をそnらの直列ポートを介して端末
プロセッサ12へ結合できる。
インターフェイス410の制御は、この実施例で゛ハロ
809 CPUで構成されるマイクロプロセッサによ9
行われる。インターフェイス410のCPU ハデュア
ル・ユニバーサル非同期受信器/送信器(DUARTS
 5CN68681)を制御する。直列ポート−412
がドライバ/受信器を升してDUARTSへ結合される
。この実施例においては、ドライバ/受信iハR823
2プロトコルとコンパチブルである。
インターフェイス410との間でやシとシされるデータ
は、8ビット周辺パス414に結合されているデュアル
ボートル巴を通る。32ピツト=8ビツト・データバス
インターフェイスが、8ビット周辺バス14を端末プロ
セッサ12の32ビツトローカルデータバス402へ結
合する。
インターフェイス41Gは並列インターフェイスも有す
る。この実施例においては、その並列インターフェイス
はセントロニクス規格(CentronicsStan
dard)に適合するよちに構成さnる。したがって、
インターフェイス410のセントロニクスポート417
をプリンタに結合できる。
イーサネット・インターフェイス418が端末プロセッ
サ12をホストコンピュータに結合する。
イーサネット・インターフェイス418は直接メモリア
クセス制御器を含む。この直接メモリアクセス制御器は
インターフェイス418を24ビツトローカルアドレス
バス404へ結合する。イーサネット・インターフェイ
ス418からのデータはランス(Lance) AM7
990 を通って16ビツト周辺バス420に達する。
その周辺パスは32ビツト→16ビツトデータパスイン
ターフエイスバス422により32ビツトローカルデー
タバス402へ結合される。
ここで説明している実施例においては、イーサネット・
インターフェイス418は取外しできる別のボードに設
けられる。異なる種類のインターフェイスt−11fる
ホストコンピュータに対しては、イーサネット・インタ
ーフェイス418を用いずに、別のインターフェイスポ
ードを用いることができる。
ディスクドライブ(1示せず)を端末プロセッサ120
8ビツト周辺パスへ結合するために、小型コンピュータ
装置インターフェイス(SC8I)424を設けること
ができる。そのSC8Iインターフェイス424は、2
4ビツトローカルアドレスバス404へ結合される直接
メモリアクセス(DMA )制御器を含む。
割込み制御器426は、種々の周辺装置と、樹木横断器
32と、端末プロセッサに結合される形状寸法プロセッ
サ36とのための入来割込み信号を取扱う。端末プロセ
ッサ12は実時間クロック428と、プログラム可能な
タイマ430をも有する。
発生器432が、インターフェイス41Bおよび5C3
Iインターフエイス424のl制御器と、プログラム可
能なタイマ430と、インテリジェント直列/セントロ
みクスインターフエイス410のデュアルボー) RA
Mと、メモリ406の状態ラッチおよびEPROMとの
ためのデータ確認応答1− DTACKj信号を発生す
る。
前記周辺装置のためのインターフェイスを有スるマイク
ロコンピュータと、メモリにグラフィックスデータを書
込むためのプログラムとはこの分野において良く知られ
ている。たとえば、フオレイ(Foley)  および
パン・ダム(Van Dam)著[ファンダメンタルス
・オプ・インターアクティブ、コンピュータ・グラフィ
ックス(Fundamentalsof Intera
ctive Computer Graphics)j
、アデイソン・ウェルズレ−・パブリツシャース(Ad
dison Welsley Publishers)
  発行の第9章にはグラフィックスデータを階層構造
で書くためのいくつかのアルゴリズムが示されている。
第64〜90図、第91A図および第91B図には、こ
の実施例の端末プロセッサを実現するための特殊な集積
回路の相互接続を更に示す。
以上の説明から、グラフィックスデータベースの横断を
容易にする独特のアーキテクチャを本発明が提供するこ
とがわかる。樹木横断器32は、データベースを作成お
よび維持する端末プロセッサとは独立に、表示リストメ
モリへ与える一連のアドレスを迅速に発生し、データベ
ースが完全に処理さnるまでデータベースを横断する。
表示リストメモリ16の出力ポートを形状寸法プロセッ
サ36に結合する専用データ路は、極めて高いデータ帯
域幅バスをメモリ16から形状寸法プロセッサ36まで
発生する最少のハンドシェイク要求を有する。樹木横断
器32と形状寸法プロセッサ36の間の双方向スタック
バス38が全体のデータ処理速度を一層向上させる。
本発明の種々の面の変更は当業者にとっては明らかなこ
とがもちろんわかるであろう。それらの変更のめるもの
は研究を行った後でのみ行われるようなものであり、別
の変更はエレクトロニクスにおける常識桟度のものであ
る。たとえば、vMEバス以外のバスをシステムノ(ス
1Bの代りに使用できる。他の実施例も可能であり、そ
れらの実施例の構成は用途に応じて異なる。したがって
、本発明の範囲は詳細な説明の項において述べた特定の
実施例により限定されるものではなく、特許請求の範囲
のみにより定めるべきである。
swbm!A)り−1wt5ytrr−亦TtTy’−
1)付   懺   A 名  称                ページモー
ド状態式             A−2力ウンタ状
態式            A−3メモリ制御器信号
式          A−4明m否のnta(門合に
ズ叉Vレノ モード状態式(A−2) + F會E脅D11C +  F”E嚢?5命  B +   F會E”5  *            E
ND”RO[、LOVER+  RESET 百−7*百☆5 +F”百☆811B +  F會E會0  *  ( 十VΦD ”              5TART
BIT+   F”E會O會 C*Ill      
”   百に5+   RESET 百 s       F”E會0 +YΦO倉             !;TART1
3fT÷  V*  D 会 で +?*o*a 十  百脅   D II             
                         
       巳1j857+   F*E”D  會
 C*B☆       百汀6÷  RESET 明細書の浄書(内容に変更なし) カウンタ状態式(A−3) K富 X禽 10MH2g 十           B +   RESET 百瓢 百會K C脅に +   F”E”D”       A+RESET ひ 百會に 十        で☆百 +   F’脅E”D”   C 十で會A +RESET STARTBIT− 5TART会5TARTBIT +   F”E嚢り會 +RESET 注$ 10MHz信号は10 MHzクロック信号が反転およ
び遅延させられたものである。
明細書の浄*<内容に変更なしン メモリ制御器信号式−続き STK、MEM、RASZN  ツ V☆ D*ご☆ A 十  V會  D、會   B4 ÷  FEE會011 で會  A +   F”E”D  會 で★B +  F會E”D  舎 C +F嚢E會百會B +  F會E☆Ω 會            END
會ROLLOVER會 STX、MEM、R/W+  
F☆E”[)☆            D、END☆
Rot、LOVER”STK、MEM、R/WSTK、
MEM、CASZN  露 r責E會O介   B會A +   F”E”D  會 C*  A+  FeE会
百禽C青百会  END*ROLLOVER*STK、
MEM、R/W+  F會E”H会 C★百会   D
、END+ROLLOVER”STK、MEM、R/W
+  F會E”D會 STK、MEM、RFR5H− ′f★ D會ご ÷  p*   D *B + Y会 D會     GPRDY +  F會E”D”C會B 會 END+   y会g
*Q*  5TART  BIT明細書の浄書(内容に
変更なし) メモリ制御器信号式−続き 5TK、MEM、ADS  − と o11ζ 十  F*   D  *          5TA
RTBIT十  F★  D 會    B 十  F會  D  ”            GP
RDY+   FmE会D 會   B*に +  r*+:*F  會  百嚢λ +   p青E會i5會(會百★に*   百n6+ 
  FEE會OeC☆B +  F會E*5 會 で舎百會に +   F*E*D”C”B”A”ROLI、0VER
”END階マ前l[可て− F嚢E會D 会 ご☆B +   FEE脅5 ☆ で 十 F☆E*1)1)  B +   F”EtD  會         END”
ROLLOVER*STK、MEM、R/W+   F
”E”D  會        D、END+ROLL
OVER”STK、MEM−R/WSTK、MEM、W
IN  − F會E    嚢   B”    STK、MEM、
R/W十  FEE會百 会 で  ★    百15
ぐ、MEM=1ξ乙4+   F”E會百 ☆    
    ト11で、MEMτlし乙Q+IP+ND*5
TACK、BUS、G  − F會E☆D ☆ +   F*E*D STACK、BIJS、DIR− 9TACK、MEM、R/W STACK、BUS、CAB、ENB  詭  &6+
   F”E”D  *  C”B會 A 會  ST
K、MEM、R/W+  F☆E會′5 会 で 会a
*X*    STに、MEM、R/WSTA(J、B
US、CBA、ENB  −1&&F”E會り*百☆A
 會 STK、MEM、R/WPRDY +  STK、MEM、DESTINATION注 この信号は希望の信号の前駆信号である。
明細書の浄i!F(内容に変更なし) 付  表   D G Low m (Mode 100 + Mode 
ill + Mode 110)舎WC5會VME、A
ddr   14 G High = +Mode 100 + Mode
 111 + Mode 110)会WCS 嘴VME
+Addr   14 VME Addr/Micro Addr Buffe
r 386Enable III (Mode 100
 + Mode All + Mode 110) ”
 WC5Sヒaセus  Byte  Inセrpt 
 Data  Buffer  392Enable 
 ! Mode  OllVME  Data  Bu
s/Local  Data  Bus  Buffe
r  390LocalDataBusReadLoa
ds lOMHz” LocalDataBusSel
ecセ Local  Data  Bus  Write  
Load  !  lOMHz  貴 Mode  1
llGAS −カ汀η万會5TART * WRITE
GBA  s  Local  Data  Bus 
 VME  Data  5elec仁VME  Da
七a/VME  Data  Bus  Buffer
  3BBVME Data Write  Load
 ! DS374Q ” WRITEVME Data
 Read Load m WC5会Mode 100
会10MHzVME oata 5exect    
m 5tart ”  (MCx3@ 100 + M
Ot3e 110)注 lOMHz信号は10MHzクロックの前駆信号である
付   表   B 樹木横断器マイクロコードの プログラム設計言語についての記述 口      次 ページ 主プログラム             B−2物体選
別手続き           B−4無条件更新手続
き          B−6探された次の物体の手続
き      B−7最後に探された物体選択手続き 
   B−8逆および面処理手続き        B
−9ポツプスタック手続き         B−13
主プログラム(B−2) /2データレジスタとフラッグを初期設定*/面プロセ
スモードビット(ALU語DC,ビット19と1)をセ
ット/リセット 初期設定ビューポート 第4のパケット情報を最後の見える物体格納レジメタに
ロード(DLMレジスタフラッグ場所10〜13)(樹
木物体が使いきられる)までdo(ALU語DC。
ビット17) * / スタックポインター第1の場所シ スタックポインタがスタックの最大より大きいならば逆
および面処理(ALU語DC,ビット1)までd。
そうすると / スタックあふれ*/ スタックあふれフリップフロップをセット割込み要求フ
リップフロップをセット 無限ループへ分岐 /3端末プロセッサの動作を待つ2/ ndir 物体選別開始 物体選別路シ 5ndd。
79面処理 / 逆および面処理開始 逆および面処理路シ 逆およびフラッグ処理をリセット enddo/*樹木物体は使いきられた/VME割込み
フラッグをセット 無限ループへ分岐 / 端末プロセッサの動作を待つ / * 、、/’ /′ /′″ノ /′ 、/ 物体選別手続き(B−4) 物体選別開始 (最後の物体が探されなかったとすると(ALU語OC
、ビット3)) /7そうすると / 探された最後の物体の選択開始 探された最後の物体の選択路シ さもないと/*最後の物体は探されたフラッグであった
 / (GP比出力用いられない)とすると / 次の物体を置く*/ (次の物体が探されなければ) 探された次の物体開始 探された次の物体路シ さもないと/*探された次の物体 / endif /*探された次の物体 /endif  
/ GP比出力利用できる /選別結果が受けられるま
で待つ (探された最後の物体か見えるものであれば)無条件更
新手続き開始 無条件更新手続き終り さもないと/*最後に探された物体は見えないν(最後
に探された物体が同胞であれば)最後に探された・物体
の同胞ポインタを最後に探された物体の同胞ポインタに
代える さもないと/*最後に探された物体は子であったν最後
の見える物体の子ポインタを最後に探された物体の同胞
ポインタに代える endif/*最後に探された物体同胞/子ν見える探
された最後の物体フラッグをリセット(探された最後の
物体である)とすると(次の物体が最後に探された物体
の同胞)であれば 最後に探された物体ポインタ更新 新しい最後に探された物体選別 さもないと/ 次の物体が最後に探された物体の子であ
った / 7次の物体フラッシューー親は見えない /探された次
の物体リセット 面処理すべき物体フラッグセット endif /  次の物体同胞/子/endif/ 
探された次の物体/ endif/”最後に探された物体の可視性νendi
f / 探された最後の物体/選別路) 無条件更新手続き(B−6) 開始 (最後に探された同胞フラッグが子にセットされた)と
すると 現在の樹木レベルを高くする endif 探された最後の物体ポインタ(DLM RF’(14−
17)をスタック126に格納 探された最後の物体ポインタを最後に見える物体ポイン
タに格納する(DSM RF  1O−13)(最後に
探された物体の同胞フラッグが同胞にセットされた(A
LU@QC、ビット5))であれば GPアウトデータをスタック126へ転送さもないと/
 最後に探された物体は子である /GPアウトデータ
をスタック126とGPスタックファイル120ヘコピ
ー endif 探された最後の物体ポインタをリセット(DLMRF(
14−17)) (次の物体が探された)とすると 次の物体更新手続き開始 探された次の物体ポインタ(DLM RF(18−IB
))を探された最後の物体ポインタ(DLM RF (
13−17))に格納 探された次の物体フラッグをリセツ)(ALU語OC,
ビット4) (新しい)探された最後の物体の選別原形をGP36へ
送る 次の物体更新手続き終シ endif/”次の物体が探されたν 探された次の物体手続き(B−7) 開始 探された次の物体フラッグ(ALC語OCピット4)を
セット (探された最後の物体の同胞ポインタが妥当)ならば 次の物体ヘッダポインタとフラッグを更新法に探すべき
物体のヘッダブロックを得る次の物体同胞フラッグを同
胞(ビット4)Kセット さもないと(探された最後の物体の子ポインタが妥当)
であれば 次の物体ヘッダポインタとフラッグを更新法に探すべき
物体のヘッダブロックを得る探された次の物体フラッグ
をセット 次の物体の同胞/子フラッグを子にリセットさもないと
/子または同胞なし/ 次の物体の同胞ポインタ、子ポインタ、選別ポインタを
零にする 探された最後の物体のポインタを零にする処理すべき面
ビットをセット(ビット19)探された次の物体フラッ
グをリセット(ビット4) ndlf 最後に探された物体選択手続き(B−8)開始 /*最後に探された物体から選択ν /*最後の見える物体ポインタ / (最後の見える物体同胞ポインタが存在する)ならば 最後の物体が探されたフラッグ(ALU語OC。
ビット3)をセット 最後に探された物体同胞/子フラッグを同胞にセット 探すべき同胞物体のヘッダブロックヲ得る探すべき同胞
物体の選別バッファを選別する(ALU語OC,ビット
5) さもないと/*子ポインタが存在νするならば最後の物
体が探されたフラッグをセット最後の探された物体同胞
/子フラッグを子にセット 探すべき干物体のヘッダブロックを得る探すべき干物体
の選別バッファを選別 さもないと72同胞ポインタまたは子ポインタ存在せず
/ 探すべき次の物体リセット(ビット4)探された最後の
物体フラッグをリセット(ビット3) 面処理すべき物体フラッグをセット(ビットendif
/*次の物体存在ν 終シ 逆および面処理手続き(B−9) /*最後の物体はスタックに格納され、同胞また//*
は子を有しない。最後の物体はインボケーショ///*
ではない(インボケ−ジョンは子を有する)。シボツブ
スタック手続き開始 /*属性をロードし、マトリックスを変換するシボツブ
スタック手続き終ジ インボケ−ジョンビットがセットされたとすると ハードナーポインタを零データポインタに変える endif/”インボケーションピットシ/*データバ
ッファポインタを得る7/データバツフアポインタが妥
当で、ローカル可視性フラッグがセットされるならば /“物体がデータ原形を有しν プロセス原形手続き開始 /原形を分解し、GPへ送る/ 次のデータバッファポインタが零になるまで行メモリ読
出しとCPコピーをセット DLMからデータブロックを読出す / アータバツファOLMポインタを用いるポインタ 
/ /*場所にむいてスタート? /*データブロックは次のブロックポインタ、語カウン
ト、オーピーコードフラッグ、およびN /*データ語を含む /*最最大力カウントブロック当シ32語*//*であ
ることに注意ν データブロックポインタを次のデータブロックポインタ
に・代える 新しいデータブロック語カウントが32であると拡張さ
れたDLMを32へ転送 ndlf DLM転送が終ったことを検証 endo/*データブロックポインタは零ν原形処理手
続き終シ ー!、I!、外層J−/*仏b1峠百撮デー カル沖も
11八木/endif/*物体面処理終了ν 選別すべき子と逆フラッグおよびプロセスフラッグをリ
セット (選別すべき子また°は逆および面処理あるいは樹木が
使いきられる) まで行う * / 次の物体を処理できるが、スキップできるかν/*
または選別された子かを調べる*/次の物体スタックア
ドレスを計算 次のスタック物体樹木レベルを得る 次のスタック物体子ポインタを得る 現在の物体樹木レベルが次のスタック物体樹木レベルに
等しくないとすると ?スタック物体は以前に処理された物体のν/*親であ
る/ スタック物体がインボケ−ジョンであるとすると / 親インボケーンヨンをスキップし、テストをν繰返
えす 現在ノスタックレベル=印#のスタック17ベn−1/
 カウンタをポツプ/ スタックポインタをバンプする/別のスタックを指す さもないと /*親は一定の物体である一面処理できる /スタック
ポインタをバンプする/ スタック物体を指す/ 逆および面処理フラッグをセット 最後の物体子ポインタを零にセット 最後の物体同胞ポインタを零にセット /*逆およびプロセスルーチンにだまして再び入れる 
/ endif/”スタック物体の種類′νさもないと/*
現在の物体の樹木レベルは次のスタック 物体の樹木レベルに等しい*/ / スタック物体は以前次処理された物体の// 同胞
である。インボケ−ジョンにできなV/い/ スタック物体子ポインタが妥当であれば/予選別を構成
/ 最後の物体同胞ポインタを零にセット 最後の物体子ポインタをスタック物体子ポインタに等し
いようにセット 次の物体サーチおよび探された次の物体フラッグをリセ
ット選別すべき子フラッグをセットさもないと/*スタ
ック物体の子ポインタが妥当でない′g/ / スタック物体は子を持たず、面処理で// きる 
/ 逆および面処理フラッグ 最後の物体子ポインタを零にセット 最後の物体同胞ポインタを零にセット endif /  スタック物体の子ポインタ /en
dif /  現在の物体レベル /5nddo/*選
別すべき子または逆および面処理または樹木が使いつく
された / 逆および面処理手続き終シ ポツプスタック手続き(B−13) この手続きは、最後のスタック項目をスタックから形状
寸法プロセッサの入力ヘポツプし、スタックデータを樹
木横断器ヘコビーする。それから、この手続きはデータ
バッファポインタをヘッダブロックアドレスから得る。
このルーチンは逆および面処理ルーチンから呼出される
ポツプスタック手続き開始 スタックの1番上の物体の4語をTTDLMレジスタフ
ァイル112へ転送 現在の樹木レベルを更新 スタックの物体フラッグ語を得る スタックの物体ヘッダポインタを得る (フラッグ語が可視性を示した)とするとDLMからヘ
ッダブロックを読み出す (物体がインボケ−ジョン)であればデータポインタを
零にする ndif ヘッダブロックが妥当なデータバッファポインタを有す
るならば スタックをCPへポツプ / 属性と変換マトリックスをQPヘロードνさもない
と スタックアドレスを減少 endif/*データポインデー当ν さもないと/*フラッグ語が可視性を示す*/スタック
アドレスを減少 @ndif /  フッラグ語可視性テスト /(スタ
ックアドレスがアンダーフロー)ならば使いきられた樹
木ビットをセット ndif ポツプスタック手続き終り 付  表  C 桁送り制御論理式循環 Ql#04脅訂会5O 5l会5O 02−03會3:「会SO 今人LuにSB  ψ Sl 會 5O51会罰 03g02会’!T會S。
+04会S1會5O 51會315 04    −     01  會 H会 s。
+03舎51會5O 51會5O ol  0E  −lN5T  f7102 0E  
−lN5T  (71 030E−INST(71 040E  −INST (7) 注゛OF2は「出力イネイブル」 付   表   D VME  I/Fレジスタ出力制御論理式%式% のηフフ石==ロー VME ^ddr/MLcro Addr Buffe
r  386!nabLe  @  fMode  1
00 + Mod@ All + Node  110
1 11 wc5Status l1yte Intr
pt Data Buffer 392!nabLe 
 m  xode  OllVME  Data  B
us/LocaI Data  Bus  Buffe
r  コ90Local Data Bus R@ad
 Loaa m ]汗正正・ Local Data 
Bus5elecセ LocalDaヒaBusWriteLoadmlOM
hz會MocleillCAB11U百T71χ511
START舎)シRITEGBA  s  Local
  Data  Bus  VME  Data  5
alecセVME Data/Vlu Data Bu
s Buffet  3118VME D&F−8%4
riヒ@ Loaa  −DS374Q  会 WRI
TEVMEDaLaReadLoadmWC5会Mod
e100會l−5ii丁r=。
V)4EQ、−aS@1ectIIStart会(にo
de100+Mode1101注 10MH2信号は10MHzクロックの前駆信号である
【図面の簡単な説明】
第1図は本発明のグラフィックスプロセッサの一実施例
のブロック図、第2図は階層データベースの一例を示す
線図、第3図はデータベースにより表された物体の例を
関連する座標系とともに示す概略斜視図、第4図は第2
図のデータベースのめるセグメント制御ブロックの略図
、第5図は第2図のデータベースの例制御ブロックを示
す略図、第6図は第2図のデータベースの呼出し制御ブ
ーロックの略図、第7図は第2図の選別バッファまたは
データバッファパケットの略図、第8図は第1図のグラ
フィックスプロセッサの形状寸法処理サブシステムのブ
ロック図、第9図は第1図のグラフィックスプロセッサ
の樹木横断器のスタックのデータ書式を示す略図、第1
0図は81図のグラフィックスプロセッサの表示リスト
メモリのブロック図、第11図は第1図のグラフィック
スプロセッサの樹木横断器による読出し動作を示すタイ
ミング図、第12図は第1図のグラフィックスプロセッ
サのシステムバスを汗して行われる書込み動作を示すタ
イミング図、第13図は第8図の樹木横断器の詳しいブ
ロック図、第14図は第13図の樹木横断器のための表
示リストメモリインターフェイスのブロック図、第15
A図〜第15C図は第14図の表示リストメモリインタ
ーフェイスの制御論理回路を実現する論理回路のブロッ
ク図、第16図は第15A図〜第15C図の制御論理回
路の減少された状態遷移図、第17図は第13図の樹木
横断器による典型的な表示リストメモリ読出し動作を示
すタイミング図、第18図は第13図の樹木横断器のス
タック制御回路の詳しいブロック図、第19図および第
20図は第18図のスタック制御器の状態マシ/の状態
遷移図、第21図はスタック転送動作中のレジスタファ
イルの種々のアドレス信号および制御信号のタイミング
関係を示すタイミング図、第22A図および第22B図
は第18図のスタックメモリの書込み動作と読出し動作
をそnぞれ示すタイミング図、第23図は第18図のス
タックメモリ制御器のアドレス信号とデータ信号および
制御信号のタイミング関係を示すりイミング図、第24
図は第13図の算術論理装置の詳しいブロック図、第2
5図は算術論理装置のレジスタの内容を示す略図、第2
6図は表示リストメモリレジスタファイルおよび関連す
るバッファ回路のブロック図、第27図は第26図の表
示リストメモリレジスタファイルの内容を示す略図、第
28図は第26図のアドレス制御ロジックの論理回路を
示すブロック図、第29A図および第29B図は第13
図のマイクロシーケンサと、状態/制御レジスタと、マ
イクロコードメモリとを示すブロック図、第30図は第
13図のシステムバスインターフェイスの同期回路のブ
ロック図、第31図は第29B図の同期および制御論理
の状態マシンの外部スレーブサイクルと割込み要求サイ
クルを表す状態遷移図、第32図は第29B図の同期お
よび制御論理の割込みサイクル状態マシンを実現する論
理回路のブロック図、第33図は第29B図の同期およ
び制御論理の外部スレーブサイクル状態マシンを実現す
る論理回路のブロック図、第34図はシステムバスから
樹木横断器により受けられた命令の書式を示す線図、第
35図は第29B lff1の同期および制御論理の状
態マシン用の入力論理回路のブロック図、第36図は第
29B図の同期および制御論理の状態マシン用の出力論
理回路のブロック図、第37図はシステムバスに対して
割込み要求制御信号を発生するための第29B図の同期
および制御論理の一部を示すブロック図、第38図はマ
イクロシーケンサクロック線を制御するための第298
図の同期および制御論理の一部を示すブロック図、第3
9図は同期リセット制御信号を発生するための第29B
図の同期および制御論理の一部を示すブロック図、第4
0図は第38図の制御回路の出力を遅延させるための第
29B図の同期および制御論理の部分を示すブロック図
、第41図はスタックあふれ制御信号を発生するための
第29B図の同期および制御論理の部分を示すブロック
図、第42図はバス誤シ制御信号を発生するための第2
9B図の同期および制御論理の部分を示すブロック図、
第43図は第1図のグラフィックスプロセッサの端末プ
ロセッサのブロック図である。 12・・・・端末プロセッサ、16・・・・表示リスト
メモリ、18・・・・システムバス、32・・・・樹木
横断器、36・・・・形状寸法プロセッサ、40・・・
・表示プロセッサ、42・・・・フレームバッファ、4
6・・・・Zバッファ、100・・・・システムバスイ
ンターフェイス、102・・・・制御器、112,11
5・・・・DLMレジスタファイル、120・・・・ス
タックレジスタファイル、122・・・・出力レジスタ
ファイル、205・・・・樹木横断器データインターフ
ェイス、206・・・・樹木横断器アドレスインターフ
ェイス、208・・・・樹木横断器制御インターフェイ
ス、210・・・・優先レゾルバ、300・・・・マイ
クロシーケンサ、312・・・・スタック制御器、31
8 、38G・・・・制御論理、330・・・・アドレ
スカウンタ、372・・・・状態フラッグレジスタ、3
82・・・・書込み可能記憶装置データバッファ、39
0・・・・論理データパスレジスタ、394・・・・パ
イプラインレジスタ、400・・・・副プロセツサ部、
426・・・・割込み制御ユニット。 特許出願人  ゼネラル・エレクトリック・カンパニイ
復代理人 山 川 政 樹(f七為2名)図面の浄書(
内容に変更なし) !Fl’C;、9    JITTニア?*A;’;’
777’jtr銚、30 あ。。/ L−ご=− dl(−ムクCにP々ATυρ50ン A6.π 、6o4) 手続補正書ζλ人つ 1.事件の表示 昭和62年特  許願第G52g1号 2)発aflIの名称 坪勿や仁と渚ピも13り゛〉?イ・/7λ7”C1乞”
i93、補正をする者 事件との関係    特    許 出願人5□の日付
 昭和6Z年5 月26日 ′ 二1 6、補正の対象

Claims (21)

    【特許請求の範囲】
  1. (1)複数の記憶場所を有するメモリと、ホストプロセ
    ッサに応答してグラフィックスデータのセグメントをメ
    モリに書込む処理手段とを有し、各場所はアドレスを持
    ち、前記記憶場所は表示すべき物体を表すグラフィック
    スデータのセグメントを格納するためのものであり、グ
    ラフィックスデータのセグメントは階層的な構成で配置
    され、各セグメントのデータは別のセグメントのアドレ
    スを表す少くとも1つのポインタを含む、ホストプロセ
    ッサに使用する物体を表示するグラフィックスプロセッ
    サにおいて、 第1の処理手段に応答してメモリに格納されているグラ
    フィックスデータを逐次読出し、それらの読出されたグ
    ラフィックスデータにより表される物体の映像を表示す
    る第2の処理手段を備え、この第2の処理手段はメモリ
    からポインタを読出し、かつそれらの読出されたポイン
    タにより表されているセグメントアドレスに格納されて
    いるグラフィックスデータを読出す手段を含む物体を表
    示するグラフィックスプロセッサ。
  2. (2)特許請求の範囲第1項記載のグラフィックスプロ
    セッサであって、各セグメントのグラフィックスデータ
    は逐次アドレスを有する複数の語のパケットに格納され
    、第2の処理手段は逐次アドレスを発生するカウンタ手
    段と、パケットのアドレッシング語のアドレスを出力す
    るためにカウンタ手段を初期設定する手段とを備えるグ
    ラフィックスプロセッサ。
  3. (3)特許請求の範囲第1項記載のグラフィックスプロ
    セッサであって、複数のセグメントは同じ階層レベルに
    ある同胞セグメントと、同胞セグメントのアドレスを表
    す同胞ポインタと、より下位の階層レベルの子セグメン
    トと、子セグメントのアドレスを表す子ポインタとを有
    し、第2の処理手段は、セグメントにより表されている
    物体が所定のボリュームの外側にあるかどうかを判定す
    る選別手段を有し、第2の処理手段の読出し手段は、選
    別手段された物体が所定のボリュームの外側にあると判
    定された時に子セグメントのグラフィックスデータを除
    外する手段を有するグラフィックスプロセッサ。
  4. (4)複数の制御線と複数のデータ線および複数のアド
    レス線を有するシステムバスと、 複数のデータ線を有する読取りバスと、 システムバスと読取りバスに結合され、表示すべき物体
    を表すグラフィックスデータのセグメントを格納する複
    数の記憶場所を有するメモリと、システムバスに結合さ
    れ、ホストプロセッサに応答してグラフィックスデータ
    のセグメントをシステムバスを介してメモリに書込み、
    開始アドレスを供給する第1の処理手段と、 システムバスと読取りバスへ結合され、第1の処理手段
    に応答して、第2の処理手段により供給されたセグメン
    トアドレスから始めて、メモリに格納されているグラフ
    ィックスデータを逐次読出し、それらの逐次読出された
    グラフィックスデータにより表される物体の映像を表示
    する第2の処理手段と、 を備え、前記メモリの各前記記憶場所はアドレスを有し
    、かつ表示すべき物体を表すグラフィックスデータのセ
    グメントを格納し、グラフィックスデータのセグメント
    は階層的な構成で配置され、各セグメントのグラフィッ
    クスデータは別のセグメントを表す少くとも1つのポイ
    ンタを含み、前記第2の処理手段はメモリからポインタ
    を読出し、かつ、読出しポインタにより表されているセ
    グメントアドレスに格納されているグラフィックスデー
    タを読出す手段を含む物体を表示し、ホストプロセッサ
    に使用するグラフィックスプロセッサ。
  5. (5)複数の制御線と複数のデータ線および複数のアド
    レス線を有するシステムバスと、 複数のデータ線を有する読取りバスと、 システムバスと読取りバスに結合され、表示すべき物体
    を表すグラフィックスデータのセグメントを格納する複
    数の記憶場所を有するメモリと、システムバスに結合さ
    れ、ホストに応答してホストプロセッサに応答して、グ
    ラフィックスデータのセグメントをシステムバスを介し
    てメモリに書込み、セグメントアドレスを供給するデー
    タベース装置手段と、 メモリに結合され、データベース装置手段に応答して、
    メモリに格納されているグラフィックスデータを第2の
    処理手段により供給されたセグメントアドレスから始め
    て逐次読出すアドレッシング手段と、 読取りバスに結合され、アドレッシング手段によりアド
    レスされたグラフィックスデータを読取りバスを介して
    読取り、読取られたグラフィックスデータにより表され
    ている物体の映像を表示するグラフィックスデータ処理
    手段と、 を備え、前記メモリの各前記記憶場所はアドレスを有し
    、前記記憶場所は表示すべき物体を表すグラフィックス
    データのセグメントを格納し、各セグメントのグラフィ
    ックスデータは階層的な構成で配置され、各セグメント
    のグラフィックスデータは別のセグメントを表す少くと
    も1つのポインタを含み、 前記第2の処理手段はメモリからポインタを読出し、か
    つ、読出されたポインタにより表されているセグメント
    アドレスに格納されているグラフィックスデータをアド
    レッシングするポインタ読出し手段を含む物体を表示し
    、ホストプロセッサに使用するグラフィックスプロセッ
    サ。
  6. (6)特許請求の範囲第5項記載のグラフィックスプロ
    セッサであって、各セグメントは同じ階層レベルにある
    セグメントのアドレスを表す同胞と、より低い階層レベ
    ルにあるセグメントのアドレスを表す子ポインタとを有
    し、セグメントの物体と関連する子ポインタの全ての物
    体を完全に含む囲むボリュームが各セグメントに組合わ
    され、グラフィックスデータ処理手段はセグメントを囲
    むボリュームが所定のボリューム内にあるかどうかを判
    定する選別手段を有し、アドレッシングポインタ手段は
    グラフィックスデータ処理手段に応答して、セグメント
    の囲むボリュームが所定のポインタ内にあることが判定
    された時のみ、セグメント子ポインタに関連するグラフ
    ィックスデータをアドレッシングする手段を含むグラフ
    ィックスプロセッサ。
  7. (7)特許請求の範囲第6項記載のグラフィックスプロ
    セッサであって、各セグメントは親セグメントを定める
    子ポインタを有し、各セグメントは座標系が組合わされ
    、各子セグメントはそれの座標系を親セグメントの座標
    系に変換する変換マトリックスを有し、前記プロセッサ
    は、アドレッシング手段をグラフィックスデータ処理手
    段へ結合するデータ線を有する第3のバスを更に備え、
    前記グラフィックスデータ処理手段は子セグメントの変
    換マトリックスを親セグメントの変換マトリックスに連
    結する手段を有し、前記アドレッシング手段は、セグメ
    ント物体が所定のボリューム内にあることが見出された
    時に、セグメントの連結されたマトリックスを格納する
    手段を有するグラフィックスプロセッサ。
  8. (8)特許請求の範囲第7項記載のグラフィックスプロ
    セッサであって、複数のセグメントの各セグメントのグ
    ラフィックスデータは少くとも1つのグラフィックス原
    形を表す座標データを更に含み、アドレッシング手段は
    、セグメントの座標データをアドレッシングする手段と
    、前記セグメントの格納されている連結されたマトリッ
    クスをグラフィックスデータ処理手段へ転送する手段と
    を有し、前記グラフィックスデータ処理手段はセグメン
    トグラフィックス原形座標データにセグメント連結され
    たマトリックスを乗じて座標データを別の座標系に変換
    する手段を有するグラフィックスプロセッサ。
  9. (9)各セグメントが別のセグメントのアドレスを含ん
    でいるような、メモリに格納されているグラフィックス
    データの前記セグメントにより表されている物体の映像
    を表示するグラフィックスプロセッサにおいて、 メモリの出力端子へ結合され、メモリから読出したグラ
    フィックスデータを転送する一方向データバスと、 データバスとメモリに結合され、メモリに格納されてい
    るグラフィックスデータをアドレッシングして、データ
    バスから選択されたグラフィックスプロセッサを読取っ
    て、グラフィックスプロセッサの別のセグメントのアド
    レスを決定するアドレッシング手段と、 データバスに結合されてデータバスからのグラフィック
    スデータを処理する形状寸法プロセッサと、 を備えるメモリに格納されているグラフィックスデータ
    の前記セグメントにより表されている物体の映像を表示
    するグラフィックスプロセッサ。
  10. (10)各セグメントが別のセグメントのアドレスを含
    んでいるような、メモリに格納されているグラフィック
    スデータの前記セグメントにより表されている物体の映
    像を表示するグラフィックスプロセッサにおいて、 メモリの出力端子へ結合され、メモリから読出したグラ
    フィックスデータを転送する一方向データバスと、 データバスとメモリに結合され、メモリに格納されてい
    るグラフィックスデータをアドレッシングして、データ
    バスから選択されたグラフィックスプロセッサを読取っ
    て、グラフィックスプロセッサの別のセグメントのアド
    レスを決定するアドレッシング手段と、 データバスに結合されてデータバスからのグラフィック
    スデータを処理する形状寸法プロセッサと、 グラフィックスデータを格納するスタックメモリと、形
    状寸法プロセッサとスタックメモリの間でグラフィック
    スデータを転送するため、およびアドレッシング手段と
    スタックメモリの間でグラフィックスデータを転送させ
    るためにアドレッシング手段と形状寸法プロセッサおよ
    びスタックメモリに結合される第2のデータバスと、 を備えるメモリに格納されているグラフィックスデータ
    の前記セグメントにより表されている物体の映像を表示
    するグラフィックスプロセッサ。
  11. (11)特許請求の範囲第10項記載のグラフィックス
    プロセッサであって、形状寸法プロセッサは、グラフィ
    ックスデータのセグメントの物体が所定のボリューム内
    にあるかどうかを判定するための選別手段を備え、前記
    アドレッシング手段は、ボリューム内にあると判定され
    た物体のグラフィックスデータを第2のデータバスを介
    して転送し、かつスタックメモリに格納する手段を有す
    るグラフィックスプロセッサ。
  12. (12)特許請求の範囲第11項記載のグラフィックス
    プロセッサであって、アドレッシング手段は、メモリに
    格納されているグラフィックスデータを形状寸法プロセ
    ッサにより更に処理するために、それらのグラフィック
    スデータを第2のデータバスを介して形状寸法プロセッ
    サへ転送する手段を有するグラフィックスプロセッサ。
  13. (13)特許請求の範囲第12項記載のグラフィックス
    プロセッサであって、付加グラフィックスデータをアド
    レッシングする手段を有し、形状寸法プロセッサは、ス
    タックメモリから転送されたグラフィックスデータに組
    合わせて付加グラフィックスデータを処理する手段を有
    するグラフィックスプロセッサ。
  14. (14)特許請求の範囲第13項記載のグラフィックス
    プロセッサであって、付加グラフィックスデータは物体
    を表すグラフィックス原形であり、付加グラフィックス
    データを処理する形状寸法プロセッサは、所定のボリュ
    ームに対するグラフィックス原形をクリップするクリッ
    プ手段を含むグラフィックスプロセッサ。
  15. (15)おのおのアドレスを持ち、表示すべき物体を表
    すグラフィックスデータのセグメントを格納する複数の
    記憶場所を有するメモリを有し、グラフィックスデータ
    のセグメントは階層的な構成で配置され、各セグメント
    のグラフィックスデータは別のアドレスを表す少くとも
    1つのポインタを含む、物体を表示し、ホストプロセッ
    サに使用するグラフィックスプロセッサにおいて、 複数のデータ線を備え、メモリから読出されたグラフィ
    ックスデータのためのデータ路を構成する読取りバスと
    、 この読取りバスに結合されてメモリからのポインタを格
    納するレジスタファイルと、読取られたポインタにより
    表されているセグメントアドレスに格納されているグラ
    フィックスデータをアドレッシングする手段とを含み、
    メモリに結合されて、メモリに格納されているグラフィ
    ックスデータを逐次アドレッシングするアドレッシング
    手段と、読取りバスに結合され、前記アドレッシング手
    段によりアドレスされたグラフィックスデータを前記読
    取りバスを介して読取り、かつそれらのグラフィックス
    データを処理するグラフィックスデータ処理手段と、 スタックメモリと、 このスタックメモリをアドレッシング手段とグラフィッ
    クスデータ処理手段に結合する第2のバスと、 アドレッシング手段レジスタファイルからポインタを第
    2のバスを介してスタックメモリへ転送し、グラフィッ
    クスデータ処理手段からグラフィックスデータを第2の
    バスを介してスタックメモリへ転送するスタック転送手
    段と、 を備える、物体を表示し、ホストプロセッサに使用する
    グラフィックスプロセッサ。
  16. (16)特許請求の範囲第15項記載のグラフィックス
    プロセッサであって、各セグメントは同じ階層にあるセ
    グメントのアドレスを表す同胞ポインタと、より低い階
    層レベルにあるセグメントのアドレスを表す子ポインタ
    とを有し、セグメントの物体および関連する子ポインタ
    の全ての物体を完全に含む囲むボリュームが各セグメン
    トに組合わされ、グラフィックスデータ手段は、セグメ
    ントを囲むボリュームが所定のボリューム内にあるかど
    うかを判定する選別手段を有し、アドレッシング手段は
    グラフィックスデータ処理手段に応答して、セグメント
    の囲むボリュームが所定のポインタ内にあることが判定
    された時のみ、セグメント子ポインタに関連するグラフ
    ィックスデータをアドレッシングする手段を含むグラフ
    ィックスプロセッサ。
  17. (17)特許請求の範囲第16項記載のグラフィックス
    プロセッサであって、子ポインタを有する各セグメント
    は親セグメントを定め、各セグメントには座標系が組合
    わされ、各子セグメントはそれの座標系を親セグメント
    の座標系に変換する変換マトリックスを有し、前記グラ
    フィックスデータ処理手段、子セグメント変換マトリッ
    クスを親セグメント変換マトリックスに連結する手段を
    有し、前記スタック転送手段は、セグメント物体が所定
    のボリューム内にあることが見出された時に、セグメン
    トの連結されたマトリックスをスタックメモリへ転送す
    る手段を有するグラフィックスプロセッサ。
  18. (18)特許請求の範囲第17項記載のグラフィックス
    プロセッサであって、複数のセグメントの各セグメント
    のグラフィックスデータは少くとも1つのグラフィック
    ス原形を表す座標データを更に含み、アドレッシング手
    段は、セグメントの座標データをアドレッシングする手
    段を有し、前記スタック転送手段はスタックメモリから
    の前記セグメントの格納されている連結されたマトリッ
    クスをグラフィックスデータ処理手段へ転送する手段を
    有し、前記グラフィックスデータ処理手段はスタックグ
    ラフィックス原形座標データにセグメント連結されたマ
    トリックスを乗じて、座標データを別の座標系へ変換す
    る手段を有するグラフィックスプロセッサ。
  19. (19)おのおのアドレスを持ち、表示すべき物体を表
    すグラフィックスデータのセグメントを格納する複数の
    記憶場所を有するメモリに使用し、各セグメントは複数
    のグラフィックスデータパケットを備え、各パケットは
    逐次アドレスを有する記憶場所に格納され、各パケット
    のグラフィックスデータは別のパケットのアドレスを表
    す少くとも1つのポインタを含み、かつメモリから読出
    されたグラフィックスデータのパケットを処理する形状
    寸法プロセッサに使用する横断器において、ポインタの
    受信に応答して逐次アドレスを発生し、メモリの前記ポ
    インタにより表されているアドレスから始ってメモリか
    らグラフィックスデータのパケットを読出すカウンタ手
    段と、 メモリから読出したポインタを格納するレジスタファイ
    ルと、 スタックグラフィックスデータを格納するスタックメモ
    リと、 1)レジスタファイルに以前格納されたポインタをカウ
    ンタ手段へ転送して、パケットを読出す逐次アドレスの
    発生を開始させ、2)レジスタファイルからポインタを
    スタックメモリへ転送してそこに格納し、3)形状寸法
    プロセッサからグラフィックスデータをスタックメモリ
    へ転送してそこに格納し、4)スタックメモリからポイ
    ンタをアドレス手段へ転送して付加パケットを読出すた
    めの逐次アドレスの発生を開始させ、かつ5)スタック
    メモリからグラフィックスデータを更に処理するために
    それらのグラフィックスデータを形状寸法プロセッサへ
    転送させる、ための制御手段と、 を備えるメモリおよび形状寸法プロセッサに使用する横
    断器。
  20. (20)特許請求の範囲第19項記載の横断器であって
    、形状寸法プロセッサは、セグメントの物体が所定のビ
    ューポート内で潜在的に見えるかどうかを判定するため
    の手段を有し、形状寸法プロセッサからのグラフィック
    スデータを格納するためにそれらのグラフィックスデー
    タを形状寸法プロセッサからスタックメモリへ転送する
    制御手段は、形状寸法プロセッサに応答して、潜在的に
    見えると判定された物体のみに対するグラフィックスデ
    ータを転送する横断器。
  21. (21)表示すべき物体を表すグラフィックスデータの
    セグメントを格納する複数の記憶場所を有するメモリと
    形状寸法プロセッサのための横断器であって、各前記記
    憶場所はアドレスを有し、グラフィックスデータのセグ
    メントが階層的な構成で配置され、各セグメントは複数
    のグラフィックスデータパケットを備え、逐次メモリア
    ドレスを有する記憶場所に各パケットは格納され、前記
    セグメントパケットは、親セグメントと子セグメントお
    よび同胞セグメントを含む関連するセグメントに対する
    複数のポインタを備えるヘッダーブロックと、選別バッ
    ファとデータバッファに対するポインタとを備え、各選
    別バッファはセグメントの物体の属性を定めるグラフィ
    ックスデータの複数のパケットを備え、各データバッフ
    ァは物体のグラフィックス原形を定めるグラフィックス
    データのパケットを備え、各パケットはバッファの別の
    パケットに対するポインタを含み、前記形状寸法プロセ
    ッサは、セグメントの物体が所定のビューポート内で潜
    在的に見えるかどうかを判定するために選別バッファパ
    ケットを処理し、かつ、セグメントのグラフィックス原
    形を処理するために以前に処理された選別バッファパケ
    ットからの属性グラフィックスデータに組合わせてデー
    タバッファパケットを処理する、メモリおよび形状寸法
    プロセッサのための横断器において、 ポインタの受信に応答して逐次アドレスを発生し、メモ
    リの前記ポインタにより表されているアドレスから始っ
    てメモリからグラフィックスデータのパケットを読出す
    カウンタ手段と、 メモリから読出したポインタを格納するレジスタファイ
    ルと、 スタックグラフィックスデータを格納するスタックメモ
    リと、 形状寸法プロセッサに応答して、1)セグメントに対す
    るヘッダーブロックパケットをメモリから読出すために
    逐次アドレスの発生を開始させるためにポインタをカウ
    ンタ手段へ供給し、ヘッダーブロックパケットをレジス
    タファイルに格納し、2)レジスタファイルに格納され
    ているヘッダーブロックパケットから選別バッファポイ
    ンタをカウンタ手段へ転送して逐次アドレスの発生を開
    始して、セグメントの選別バッファパケットを読本し、
    選別バッファパケットをレジスタファイルに格納し、3
    )レジスタファイルに格納されている選別バッファパケ
    ットから次の選別バッファポインタをアドレス手段へ転
    送して、メモリから次の選別バッファパケットを読出す
    ために逐次アドレスの発生を開始させ、次の選別バッフ
    ァパケットをレジスタファイルに格納し、4)選別バッ
    ファの全てのセグメントに対して発生されるまでステッ
    プ3を繰返えし、5)セグメントの物体が潜在的に見え
    ることを形状寸法プロセッサが判定したとすると、レジ
    スタファイルからセグメントヘッダーブロックポインタ
    をスタックメモリへ転送し、セグメント物体属性グラフ
    ィックスデータをスタックメモリへ転送し、6)セグメ
    ントが同胞セグメントを有するならばセグメントの同胞
    セグメントに対してステップ−1〜5を繰返えし、7)
    セグメントが同胞セグメントを有せず、セグメントが子
    セグメントを有するならばセグメントの子セグメントに
    対してステップ1〜5を繰返えし、8)同胞セグメント
    または子セグメントを有しないセグメントに対する選別
    バッファパケットが読出されるまでステップ6と7を繰
    返えし、9)スタックに格納されているグラフィックス
    データを有するヘッダーブロックポインタをカウンタ手
    段へ転送して、メモリからのセグメントヘッダーブロッ
    クパケットを読出すための逐次アドレスの発生を開始さ
    せ、読出したセグメントヘッダーブロックポインタをレ
    ジスタファイルに格納し、10)レジスタファイルに格
    納されているヘッダーブロックパケットからデータバッ
    ファポインタをカウンタ手段へ転送して、セグメントの
    データバッファパケットを読出すための逐次アドレスの
    発生を開始させ、データバッファパケットをレジスタフ
    ァイルに格納し、11)レジスタファイルに格納されて
    いるデータバッファパケットから次のデータバッファポ
    インタをカウンタ手段へ転送して、メモリから次のセグ
    メントのデータバッファパケットを読出すための逐次ア
    ドレスの発生を開始させ、次のデータバッファパケット
    をレジスタファイルに格納し、12)セグメントデータ
    バッファの全てのパケットが読出されるまでステップ1
    1を繰返えし、13)セグメント物体属性グラフィック
    スデータをスタックメモリから形状寸法プロセッサへ転
    送し、14)スタックから以前読出されたセグメントの
    同胞セグメントであって、読出されていない選別バッフ
    ァパケットを有する子セグメントを有する前記セグメン
    トに遭遇するまで、スタックに格納されているグラフィ
    ックスデータを有する残りのセグメントに対してステッ
    プ9〜13を繰返えし、15)スタックに格納されてい
    る全てのセグメントグラフィックスデータが形状寸法プ
    ロセッサへ転送されるまでステップ1〜14を繰返えす
    、メモリと形状寸法プロセッサのための横断器。
JP62060281A 1986-03-17 1987-03-17 物体を表示するグラフイツクスプロセツサ Pending JPS62271066A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US06/840,459 US4967375A (en) 1986-03-17 1986-03-17 Fast architecture for graphics processor
US840459 1986-03-17

Publications (1)

Publication Number Publication Date
JPS62271066A true JPS62271066A (ja) 1987-11-25

Family

ID=25282437

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62060281A Pending JPS62271066A (ja) 1986-03-17 1987-03-17 物体を表示するグラフイツクスプロセツサ

Country Status (5)

Country Link
US (1) US4967375A (ja)
JP (1) JPS62271066A (ja)
DE (1) DE3708023A1 (ja)
FR (1) FR2613100A1 (ja)
GB (2) GB8706239D0 (ja)

Families Citing this family (57)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2265802B (en) * 1988-12-05 1994-01-05 Rediffusion Simulation Ltd Image generator
US5182797A (en) * 1989-10-23 1993-01-26 International Business Machines Corporation Multi-processor graphics display system for displaying hierarchical data structures
US5249265A (en) * 1989-10-24 1993-09-28 International Business Machines Corporation Structure storage management in a graphics display device
US6978277B2 (en) * 1989-10-26 2005-12-20 Encyclopaedia Britannica, Inc. Multimedia search system
US5327567A (en) * 1989-11-16 1994-07-05 Texas Instruments Incorporated Method and system for returning emulated results from a trap handler
US5226109A (en) * 1990-04-26 1993-07-06 Honeywell Inc. Three dimensional computer graphic symbol generator
JP2824342B2 (ja) * 1991-03-29 1998-11-11 富士通株式会社 イメージ高速描画装置
WO1992021088A1 (en) * 1991-05-17 1992-11-26 Eastman Kodak Company Novel electrical bus structure
CA2066559A1 (en) * 1991-07-29 1993-01-30 Walter S. Rosenbaum Non-text object storage and retrieval
US5241631A (en) * 1991-08-23 1993-08-31 Nec Technologies, Inc. Personal computer having a local bus interface to a video circuit
US5367621A (en) * 1991-09-06 1994-11-22 International Business Machines Corporation Data processing method to provide a generalized link from a reference point in an on-line book to an arbitrary multimedia object which can be dynamically updated
GB2259432A (en) * 1991-09-06 1993-03-10 Canon Res Ct Europe Ltd Three dimensional graphics processing
JPH05210481A (ja) * 1991-09-18 1993-08-20 Ncr Internatl Inc 直接アクセス式ビデオバス
WO1993007583A1 (en) * 1991-10-10 1993-04-15 Hewlett Packard Company Graphics output system with bounded updating
WO1993007582A1 (en) * 1991-10-10 1993-04-15 Hewlett Packard Company Graphic segment organisation in a graphics system
GB9303009D0 (en) * 1993-02-15 1993-03-31 Canon Res Ct Europe Ltd Processing image data
US5872570A (en) * 1993-02-15 1999-02-16 Canon Kabushiki Kaisha Method and apparatus for use in generating a rendering order for use in rendering images
EP0612027B1 (en) * 1993-02-15 2002-11-13 Canon Kabushiki Kaisha Image processing
GB9315852D0 (en) * 1993-07-30 1993-09-15 Video Logic Ltd Shading three-dimensional images
JP3904244B2 (ja) * 1993-09-17 2007-04-11 株式会社ルネサステクノロジ シングル・チップ・データ処理装置
US5432898A (en) * 1993-09-20 1995-07-11 International Business Machines Corporation System and method for producing anti-aliased lines
US5732262A (en) * 1994-01-31 1998-03-24 International Business Machines Corporation Database definition language generator
JPH0816820A (ja) * 1994-04-25 1996-01-19 Fujitsu Ltd 3次元アニメーション作成装置
US5613049A (en) * 1994-10-26 1997-03-18 The Boeing Company Method for creating spatially balanced bounding volume hierarchies for use in a computer generated display of a complex structure
US6002411A (en) * 1994-11-16 1999-12-14 Interactive Silicon, Inc. Integrated video and memory controller with data processing and graphical processing capabilities
US6067098A (en) * 1994-11-16 2000-05-23 Interactive Silicon, Inc. Video/graphics controller which performs pointer-based display list video refresh operation
US5838334A (en) * 1994-11-16 1998-11-17 Dye; Thomas A. Memory and graphics controller which performs pointer-based display list video refresh operations
US5777629A (en) * 1995-03-24 1998-07-07 3Dlabs Inc. Ltd. Graphics subsystem with smart direct-memory-access operation
US5692020A (en) * 1995-06-07 1997-11-25 Discovision Associates Signal processing apparatus and method
US5717875A (en) * 1995-09-22 1998-02-10 Vlsi Technology, Inc. Computing device having semi-dedicated high speed bus
US5657479A (en) * 1995-12-04 1997-08-12 Silicon Graphics, Inc. Hierarchical display list processing in graphics data retrieval system
US5917505A (en) * 1995-12-19 1999-06-29 Cirrus Logic, Inc. Method and apparatus for prefetching a next instruction using display list processing in a graphics processor
US5956047A (en) * 1997-04-30 1999-09-21 Hewlett-Packard Co. ROM-based control units in a geometry accelerator for a computer graphics system
US6184902B1 (en) * 1997-04-30 2001-02-06 Hewlett-Packard Company Centralized branch intelligence system and method for a geometry accelerator
US5889997A (en) * 1997-05-30 1999-03-30 Hewlett-Packard Company Assembler system and method for a geometry accelerator
WO1999056249A1 (en) * 1998-04-27 1999-11-04 Interactive Silicon, Inc. Graphics system and method for rendering independent 2d and 3d objects
US6097395A (en) * 1998-04-28 2000-08-01 Hewlett Packard Company Dynamic selection of lighting coordinates in a computer graphics system
KR100298789B1 (ko) * 1998-04-29 2001-09-06 윤종용 그래픽 처리에 있어서 클리핑 처리방법
US6170041B1 (en) * 1998-09-24 2001-01-02 Integrated Silicon Soulution, Inc. Integrated circuit memory with a bus transceiver
US7242414B1 (en) * 1999-07-30 2007-07-10 Mips Technologies, Inc. Processor having a compare extension of an instruction set architecture
US6525738B1 (en) 1999-07-16 2003-02-25 International Business Machines Corporation Display list processor for decoupling graphics subsystem operations from a host processor
US7346643B1 (en) * 1999-07-30 2008-03-18 Mips Technologies, Inc. Processor with improved accuracy for multiply-add operations
US6628836B1 (en) * 1999-10-05 2003-09-30 Hewlett-Packard Development Company, L.P. Sort middle, screen space, graphics geometry compression through redundancy elimination
US6567091B2 (en) 2000-02-01 2003-05-20 Interactive Silicon, Inc. Video controller system with object display lists
US6587112B1 (en) * 2000-07-10 2003-07-01 Hewlett-Packard Development Company, L.P. Window copy-swap using multi-buffer hardware support
US7536691B2 (en) * 2001-08-09 2009-05-19 Infineon Technologies Ag Method and apparatus for software-based allocation and scheduling of hardware resources in a wireless communication device
US6747653B2 (en) * 2001-12-31 2004-06-08 Intel Corporation Efficient object storage for zone rendering
US6919896B2 (en) * 2002-03-11 2005-07-19 Sony Computer Entertainment Inc. System and method of optimizing graphics processing
US7450120B1 (en) * 2003-12-19 2008-11-11 Nvidia Corporation Apparatus, system, and method for Z-culling
US20050195186A1 (en) * 2004-03-02 2005-09-08 Ati Technologies Inc. Method and apparatus for object based visibility culling
JP4327175B2 (ja) 2005-07-12 2009-09-09 株式会社ソニー・コンピュータエンタテインメント マルチグラフィックプロセッサシステム、グラフィックプロセッサおよび描画処理方法
US7752427B2 (en) * 2005-12-09 2010-07-06 Atmel Corporation Stack underflow debug with sticky base
GB2442266B (en) * 2006-09-29 2008-10-22 Imagination Tech Ltd Improvements in memory management for systems for generating 3-dimensional computer images
JP5439236B2 (ja) * 2010-03-12 2014-03-12 株式会社日立製作所 計算機システムおよびアプリケーションプログラムの実行方法
KR101993835B1 (ko) * 2013-02-25 2019-06-27 삼성전자주식회사 스택 관리를 위한 방법 및 장치
EP3579219B1 (en) * 2018-06-05 2022-03-16 IMEC vzw Data distribution for holographic projection
CN113760394B (zh) * 2020-06-03 2022-05-13 阿里巴巴集团控股有限公司 数据处理方法、装置、电子设备及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6079477A (ja) * 1983-10-07 1985-05-07 Fujitsu Ltd 3次元物体認識表示方式

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4439762A (en) * 1981-12-28 1984-03-27 Beckman Instruments, Inc. Graphics memory expansion system
US4562435A (en) * 1982-09-29 1985-12-31 Texas Instruments Incorporated Video display system using serial/parallel access memories
SE448789B (sv) * 1983-03-29 1987-03-16 Ericsson Telefon Ab L M Anordning for att i ett datorstyrt presentationssystem generera bilder i raster pa en bildskerm
US4644495A (en) * 1984-01-04 1987-02-17 Activision, Inc. Video memory system
US4694404A (en) * 1984-01-12 1987-09-15 Key Bank N.A. High-speed image generation of complex solid objects using octree encoding
US4648045A (en) * 1984-05-23 1987-03-03 The Board Of Trustees Of The Leland Standford Jr. University High speed memory and processor system for raster display
US4777651A (en) * 1984-06-25 1988-10-11 Tektronix, Inc. Method of pixel to vector conversion in an automatic picture coding system
US4660029A (en) * 1984-07-06 1987-04-21 Tektronix, Inc. Method of providing raster information for a graphics display employing linked lists
US4673930A (en) * 1985-02-08 1987-06-16 Motorola, Inc. Improved memory control for a scanning CRT visual display system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6079477A (ja) * 1983-10-07 1985-05-07 Fujitsu Ltd 3次元物体認識表示方式

Also Published As

Publication number Publication date
GB8721639D0 (en) 1987-10-21
GB8706239D0 (en) 1987-04-23
GB2201568B (en) 1990-02-07
DE3708023A1 (de) 1987-10-15
FR2613100A1 (fr) 1988-09-30
US4967375A (en) 1990-10-30
GB2201568A (en) 1988-09-01

Similar Documents

Publication Publication Date Title
JPS62271066A (ja) 物体を表示するグラフイツクスプロセツサ
CN110827388B (zh) 硬件中树遍历机制的前进和可编程超时的方法
CN110827389B (zh) 严密的光线三角形相交
US7538772B1 (en) Graphics processing system with enhanced memory controller
JP3889195B2 (ja) 画像処理装置、画像処理システムおよび画像処理方法
JP4766906B2 (ja) 拡張グラフィックスパイプラインを提供するシステムおよび方法
JPS62212785A (ja) グラフイツクス表示装置に使用する電子形状寸法プロセツサ回路
US5251322A (en) Method of operating a computer graphics system including asynchronously traversing its nodes
CN110827385A (zh) 树遍历的特定于查询的行为修改
US6948050B1 (en) Single integrated circuit embodying a dual heterogenous processors with separate instruction handling hardware
CN110827390A (zh) 处理无序不透明和α光线/图元交点的方法
GB2559042A (en) Allocation of tiles to processing engines in a graphics processing system
JP2673101B2 (ja) コンピュータ・グラフィクス装置
JPH0749961A (ja) グラフィックアクセラレータの浮動小数点プロセッサ及びその浮動小数点機能を実行する方法
JPH03139777A (ja) グラフイツク表示システム及び方法
JPH03211656A (ja) マルチプロセッサシステム
KR100922780B1 (ko) 그래픽 프로세서를 위한 효율적인 인터페이스 및 어셈블러
MXPA01010828A (es) Dispositivo de produccion de imagenes.
WO1989001664A1 (en) High performance graphics workstation
Moreland IceT users' guide and reference.
US5946004A (en) Enhanced function board for use in processing image data and image processing apparatus using the same
JP2926637B2 (ja) ボリュームレンダリング装置及びこれに好適な方法
US6404428B1 (en) Method and apparatus for selectively providing drawing commands to a graphics processor to improve processing efficiency of a video graphics system
JPS59172064A (ja) ビデオ・システムにおける並列処理方式
JP3793062B2 (ja) メモリ内蔵データ処理装置