JPH0215379A - クロスバー変換器および方法 - Google Patents

クロスバー変換器および方法

Info

Publication number
JPH0215379A
JPH0215379A JP1071600A JP7160089A JPH0215379A JP H0215379 A JPH0215379 A JP H0215379A JP 1071600 A JP1071600 A JP 1071600A JP 7160089 A JP7160089 A JP 7160089A JP H0215379 A JPH0215379 A JP H0215379A
Authority
JP
Japan
Prior art keywords
screen
memory
pixel data
data
address
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
JP1071600A
Other languages
English (en)
Inventor
Neil F Trevett
ネイル フランシス トレヴェット
Malcolm E Wilson
マルコム エリック ウィルソン
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.)
3DLabs Ltd
Original Assignee
DuPont Pixel Systems Ltd
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
Priority claimed from GB8806872A external-priority patent/GB2215954A/en
Priority claimed from GB8806878A external-priority patent/GB2215936A/en
Priority claimed from GB8806875A external-priority patent/GB2215957A/en
Priority claimed from US07/297,002 external-priority patent/US5047760A/en
Application filed by DuPont Pixel Systems Ltd filed Critical DuPont Pixel Systems Ltd
Publication of JPH0215379A publication Critical patent/JPH0215379A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Image Processing (AREA)
  • Digital Computer Display Output (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野] 本発明は電算化したイメージ及びグラフィックス表示装
置におけるウィンドウ管理及びイメージ管理の分野、並
びにイメージの記憶装置及び記憶方法に関する。
(発明の概要) 本発明は、並列なイメージ・データを配列に書式化する
装置及び方法を含む。好適な実施例に示した装置おいて
は、32ビット幅のラスタ走査データを用い、5x4個
の8ビット画素の配列に変換するステートマシン(st
ate machine)の制御の下で複数個のFIF
O(先入れ先出しメモリ)とマルチプレクサを使用して
いる。
〔従来の技術〕 電算機によるイメージ処理及びグラフィックス装置にお
いては、相互に関連のあるなしは別としいくつかの異な
ったイメージをビデオモニター上に同時に表示し処理す
ることが必要である、または、望ましいことが良くある
例えば、建築の分野であれば、一つの物に対するいくつ
かの異なフた図面を一度に表示することができれば有用
である。また、シミュレーション訓練の場であれば、現
実の現場環境をシミュレートするために訓練生が対象物
、表示装置、プログラム出力をいくつか同時に見えるよ
うにする必要もあろう。
複数イメージの一斉表示を実現するために、電算機装置
にはウィンドウ機能として知られる概念が利用されてい
る。表示画面上の各ウィンドウは一つのイメージに対す
るビューボートとして作用し、各ビューボートに現われ
るイメージは別個のプロセスによりオペレーティング・
システムをとおして制御される。従来の7ri算機装置
においては、多数の矩形ウィンドウをモニター上に自由
に配列して表示することができる。つまり、ウィンドウ
どうしを隣合わせて、あるいは重ね合わせて表示するこ
とができる。ウィンドウによっては「ベン」や「ズーム
」なと゛の操作ができるものもある。ウィンドウ化(w
indowing )技術を用いたグラフィック表示装
置の一例が、スコンク(Sukonick)らにより「
位置及び内容が任意である複数のビューボートを有する
グラフィック表示装置(GRAPHIC5DISPLA
Y SYSTEM WITHVIEWPORTS OF
八へBITRARY LOGATTON AND C0
NTEN) Jなる名称で米国特許4,533,910
号に示されており、以下詳細に述べるように、それは参
照により本明細書に完全に含めである。
ウィンドウの操作及び管理は電算機のプログラマ−や設
計者にとって多くの問題となる。従来のイメージ及びグ
ラフィックス装置の多くは2つ以上のウィンドウを重ね
合わせて表示するが、そうした場合、前景に現われたウ
ィンドウが背景に現われたウィンドウの一部を部分的に
不明瞭にしてしまう。
ウィンドウどうしを重ね合わせたように見せるためには
、背景のイメージは覆われていない(見える)部分の輪
郭まで切り落としくクリップ)をしなければならない。
従来、ウィンドウの輪郭に合わせたイメージの切り落と
しには、覆われていない部分を「タイル」 (矩形の区
画)に分割するソフトウェアを応用している。そのウィ
ンドウ内で操作をする度に、そのウィンドウは、表示さ
れるイメージがウィンドウの覆われていない部分にだけ
現われるように、各タイルに対し交互に切り落としが行
なわれる。
その後前景のウィンドウが穆勤または削除された場合、
背景のウィンドウは元の形及び内容を回復するように修
復する必要がある。これについては従来、ウィンドウの
覆われた部分を再生するために必要な操作の「表示−覧
」をメモリに蓄えておき、重ね合わせが解除されたとぎ
にそれらの操作を復帰させて対応している。
タイル切り落とし及び表示−覧の復帰によりウィンドウ
の再生・修復は可能であるが、視覚的効果の点からも処
理装置の負荷の点からも時間的負担となる。更に、込み
入ったイメージや操作を含む場合には、タイル切り落と
し・表示−覧法は困難であったり不可能なことさえある
。カメラまたはその他の映像源からのイメージの実時間
人力を伴う操作の場合は特にそうである。
一方、ネモト(Nemoto)らにより米国特許4.6
42,821号に開示されているようなハードウェアに
よる解決方法も公開されているが、これらの従来の解決
方法には、矩形の切り落とし領域に制限がある。参照文
献として、米国特許4,642,621号、Nemot
o他、名称「電算化断層X線写真装置のためのイメージ
表示装置(IMAGE DISPLAY SYSTEM
FORCOMPUTERIZED TOMO−GRAP
H5)を挙げるが、但し、これは以下詳細に述べるよう
に、本明細書に完全に含めである。
表示をウィンドウ化するために、表示中の画面リフレッ
シュ・メモリの映像データ出力からくるイメージ・デー
タの映像率(video rate)を選択する方法も
他に考えられる。この方法によれば表示されているウィ
ンドウを効率よく操作できるものと思われるが、不利な
点も幾つかある。第一に、表示モニタの解像度が増すに
つれて、映像率でデータを計算し操作することが更に困
難になる。第二に、ビデオRA Mで構成されるイメー
ジ・メモリの線活動時間(active 1ine t
ie)内に任意の表示する画素を選択することは複雑な
問題である。第三に、通常は画面リフレッシュ・メモリ
のどの部分のデータも表示できる必要があることから、
メモリ全体を2ボー 1・化する必要があり、根本的な
費用増となる。画面大のイメージを多数操作する可能性
が求められる場合には、2ボート・イメージ・メモリの
費用が問題となり、手が出ないほど効果になることさえ
あり得る。
そこで、映像率によるウィンドウを速く効率的に処理す
る代替案があり、ウィンドウの切り落とし・修復操作を
素早く、仕つCP Ll負荷を最小に保って行なうこと
ができれば大いに望ましい。また、複雑な或は特殊なソ
フトウェア手法を必要とする事なく込み入った操作を行
なうことができるウィンドウ管理装置があれば便利であ
る。更に、イメージを任意の形のウィンドウに切り落と
すことができれば非常に望ましい。
念のため述べれば、「イメージ」という用語は当技術分
野においては実物から得られるデータによって規定され
るピクチャを指すために用いられることがあり、一方「
グラフィックJは合成されるかまたはプログラムされた
ピクチャを言うために用いられることがある。本件を考
慮しここでは、用語「イメージ」を広義に用い、生成方
法やそのデータの発生元に関わりなく全てのピクチャを
指すものとする。
切り落とし、ウィンドウ化、及び一般のグラフィック処
理などの概念が分かる木が幾つか出ている。これらの他
に関連する概念に付いて特によく解説されているのは次
の木である。WNliam M。
Newman及びRobert F、 5proul共
著、「対話型コンピュータ・グラフィックスの原理(P
rinciples    of  Interact
ive  ComputerGraphics) J 
 (第2版10刷、マグロウ・ヒル出版社、二ニー・ヨ
ーク、1983) ; Stevenl(arring
ton著、「コンピュータ・グラフィックス−ブロク゛
ラミンク′ ・アプローチJ (初版、マグロウ・ヒル
出版社、二ニー・ヨーク、1983) : Donal
d Hearn  及びM、 Paultne Bak
er著、「コンピュータ・グラフィ・ンクス」 (プレ
ンティスホール・インターナショナル(英)、198[
i)。前記の名称の本の内容は総て、各々以下詳細に述
べるように参照により本明細書に完全に含めである。
(実施例〕 IS) m要 本発明はハードウェアを用いてイメージ及びウィンドウ
の管理を行なう装置及び方法より成る。
本発明の装置及び方法の望ましい実施例はには、高速且
つ効率的ウィンドウ管理に寄与するいくつかの下位装置
(サブシステム)を含む。
一つの実施例においては、本発明の装置(システム)及
び方法はスクリーン・リフレッシュ・メモリ102及び
オフ・スクリーン・メモリ104を同時に利用すること
により、イメージ・アドレス翻訳及び/または高速コピ
ー操作を可能にしている。同時動作のスクリーン・リフ
レッシュ及びオフ・スクリーン・メモリ102.104
にょフて、本発明の装置及び方法は一つのウィンドウが
他を覆っている状況下であっても表示モニタ(示してい
ない)上の各々のイメージの完全なコピーを保有するこ
とが可能である。
もう一つの実施例においては、RAMを用いた自在形状
クリッパ112を具備し、イメージ・データが操作用の
ソフトウェアを用いることなく任意の形状に自動的に切
り落とされるようになっている。
本発明の装置(システム)及び方法の更なる実施例はR
AMを用いた自在形状クリッパ112と同時動作のスク
リーン・リフレッシュ及びオフ・スクリーン・メモリ1
02.104との両方を含んでいる。本発明の装置及び
方法では、カメラのような入力装置(示していない)か
らウィンドウを直接表示できるようにI10クロスバ−
Rjh B2O2を利用することも可能である。
本発明のこれらのサブシステムは一つの画素デ−タ・バ
ス118を共用している。このバスは160ビット幅で
、20個の8ビットの情報で定義される画素からなるグ
ループに対する画素情報の転送に使用できるので望まし
い。この画素データのグループは水平方向に5画素、垂
直方向に4画素の配列に都合良く編成される。この5x
4画素のグループをパッチ(patch >と言うこと
にする。一つの表示画面はこれらの矩形のパッチから成
り立っていると考えることができる。
典型的な高解像度表示モニタにおいては(図示していな
い)、水平な各行に1280画素、各列に1024画素
がある。従って、その画面は、256x256個のパッ
チから成る一つの配列によって覆われ、更に各パッチは
水平方向5垂直方向4の画素から構成されることになる
。バッチ単位に処理することによって、本装置及び方法
の帯域幅を大いに広げる技術的特徴を容易に活かすこと
ができる。念のため述べれば、8ビット画素5x8構成
のパッチが望ましいが、本発明は如何なる大きさのパッ
チに対しても、つまり一個ずつ(即ち、単一画素)でも
、各画素が何ビットで定義されていても機能する。
(b)同時動作のオン・スクリーン及びオフ・スクリー
ン・メモリ 本装置の一実施例はオフ・スクリーン・メモリ104を
一個含んでいる。このオフ・スクリーン・メモリ104
を用いてイメージ・データをスクリーン・リフレッシュ
・メモリ102に書き込むと同時にその完全なコピーを
格納することができる。本発明の同時動作のオン・スク
リーン及びオフ・スクリーン・メモリの望ましい構成は
第1図の参照に更に良く理解されるものと思われる。
第1図にグラフィック・プロセッサ100、スクリーン
・リフレッシュ・メモリ102、オフ・スクリーン・メ
モリ+04、スクリーン・リフレッシュ・メモリ・アド
レス生成器(ジェネレータ)106、オフ・スクリーン
・メモリ・アドレス生成器108、オフ・スクリーン・
メモリXYオフセット・ロジック110、自在形状クリ
ッパ112、及びANDゲート114を示す。
グラフィック・プロセッサ100は基本的にはビット・
スライス型の中央処理装置であり、標準的なイメージ処
理とグラフィック機能を最適に行なうように設計されて
いる物である。グラフィック・プロセッサと言うものは
この分野で知られておりグラフィック・コントローラと
も言われている。
グラフィック・プロセッサ100は本発明の装置及び方
法に対し制御信号及びデータ信号を供給する。供給され
る信号にはアドレス・データ・バス116、画素データ
・バス118、スクリーン・リフレッシュ・メモリ書込
許可(ライト・イネーブル)線120、オフ・スクリー
ン・メモリ書込許可線122、スクリーン・リフレッシ
ュ・メモリ読出許可(リード・イネーブル)線124、
オフ・スクリーン・メモリ読出許可線126、読出及び
書込許可線132.134、及び自在クリッパ制御線が
含まれている。
グラフィック・プロセッサはアドレス・データ・バス1
16からデータを読み戻すことができるように(即ち、
このバスに関して双方向にデータを転送することができ
るように)設計されているものが望ましい。グラフィッ
ク・プロセッサとして望ましいものはデュ・ボン・シス
テムズGIPで、デュ・ボン・ビクセル・システムズ社
(旧ベンチマーク・テクノロジー社)、在5 Penr
hynRoad、  Kingston−upon−T
hames、  5urrey  KTI  2BT。
Englandより人手可能である。
画素データ・バス118は160ビット幅が望ましい。
データ転送速度を速めるためには画素データはパッチで
アクセスすることが望ましい。第1図に示すように、画
素データ・バス118は、スクリーン・リフレッシュ・
メモリ102とオフ・スクリーン・メモリ104とに共
有されていて、一方のメモリがアクセスできるデータな
ら他方のメモリもアクセスできるようになフている。
スクリーン・リフレッシュ・メモリ102とオフ・スク
リーン・メモリ104とは別個の書込許回線120と1
22を持っているので、グラフィック・プロセッサ10
0は両メモリの両方にまたは片方だけに書き込むことが
できる。また、スクリーン・リフレッシュ・メモリ10
2とオフ・スクリーン・メモリ104は同様に別個の読
出許可線124、】26を各々持っている。ある与えら
れた時間にメモリ102.104の一方だけが読み出し
を許可される。
スクリーン・リフレッシュ・メモリの書込許可(ライト
・イネーブル)線120は、ANDゲート114によっ
て自在形状クリッパ112の出力と論理的にANDをと
られており、スクリーン・リフレッシュ・メモリに対し
有資格書込許可信号(線121に)を発生するようにな
っている。
ANDゲートの目的については本明細丹後出の「自在形
状クリッパ」の節で詳細に説明する。オフ・スクリーン
・メモリの書込許可線122は直接オフ・スクリーン・
メモリによって使用される。これらの読出及び書込許可
信号によって、読出及び書込制御線を経由してグラフィ
ック・プロセッサ100から両メモリ102と104に
直接送られる実際の読出及び書込制御信号が有効となる
スクリーン・リフレッシュ及びオフ・スクリーン・メモ
リ102.104は、スクリーン・リフレッシュ・メモ
リ102だけが表示される事と潜在的に容量が異なる点
を除けば、グラフィック・プロセッサ100の側から見
れば同一の機能を有する。これによって、グラフィック
・プロセッサ100のソフトウェアから見えないように
、出所及び行き先メモリ102.104の選択が可能と
なる。スクリーン・リフレッシュ・メモリ102で可能
な操作は全てオフ・スクリーン・メモリ104において
も可能である。このように両方で可能な代表的なことは
、ブレーン・マスキング、ページ・モード・アクセス、
及びバッチ・ベースのプロセッサに対してはバッチ内の
画素を選択的に書き込みマスクすることである。
スクリーン・リフレッシュ・メモリ102は2ボートの
ビデオRAMのメモリであることが望ましい。このメモ
リは表示モニタの画面上のイメージを再描画するために
使用される。この分野に精通していれば了解のことと思
われるが、このスクリーン・リフレッシュ・メモリのボ
ートの一つはイメージ・データの読み出しと書き込みに
使用し、他方のポートは映像表示モニタで観察されるイ
メージの形成に使用する。
本発明の装置(システム)及び方法の現在望ましいと思
われる実施例においては、リフレッシュ・メモリが12
80x1024の高解像度画面にビット・マツプされて
いるものと仮定する。スクリーン・リフレッシュ・メモ
リで望ましいものはデュ・ボン・システムズbFsフレ
ームスドア(フレーム記憶装置)で、デュ・ボン・ビク
セル・システムズ社、在5 Penrhyn Road
、 Kingston−upon−Thames、 5
urrey KTI 2BT、 Englandより入
手可能である。しかしながら、適当なフレーム記憶装置
を使用しできることは言うまでもない。
オフ・スクリーン・メモリ104は動的RAMを用いて
設計されることが好ましいが、アクセス時間及びその他
の設計上配慮すべき条件を満たすものであれば他のメモ
リ装置を使用してもよい。
スクリーン・リフレッシュ・メモリ102とオフ・スク
リーン・メモリ104の両方とも二次元的にアクセスで
きるように設計することが望ましい。つまり、行(ロウ
)アドレス・ストローブ(RAS)を用いてXアドレス
を指定し、列(コラム)アドレス・ストローブ(CAS
)を用いてXアドレスを指定する。
オフ・スクリーン・メモリ104で望ましいものはデュ
・ボン・システムズbFxフレームスドア・エクステン
ション(拡弓長フレーム記+’J 装M )で、デュ・
ボン・ピクセル・システムズ社、在5Penrhyn 
Road、にingston−upon−Thames
、 5urreyにTl 2BT、 Englandよ
り人手可能である。
アドレス・データ・バス116は、最低、スクリーン・
リフレッシュ・メモリかオフ・スクリーン・メモリの何
れか大容二の方の各メモリ位置をアクセスできるだけの
ビット幅でなければならない。メモリが二次元にアクセ
スされる場合、−度には一つの成分しかロードしない装
置においてはアドレス・データ・バス116はXまたは
Yアドレスを運ぶだけのビット幅は必要としない。
我々が試験した実施例においては、アドレス・データ・
バス116の幅は16ビットであったが、アドレス生成
器】06.108、及びXYオフセット・ロジック11
0にアドレスをロードし12ビット・アドレスに変換し
た。Yアドレスには16ビット・データ・バスの値の下
位12ビットを使用した。Xアドレスには16ビット・
アドレス・データ・バスの値の全部を使用し、モジュロ
5 変JM P ROMを通して、これで5x4のパッ
チ配列が分かるが、12ビットの出力を作り出した。バ
ッチを使用しないか、または各バッチの次元が1の自乗
である場合には、このモジュロ5変換器は省略すること
ができる。
オフ・スクリーン・メモリ104はスクリーン・リフレ
ッシュ・メモリ102より大きいことが望ましい。オフ
・スクリーン・メモリ104は一度の画面に開かれる可
能性のあるウィンドウの最大数に間に合う程度の大きさ
にするべきである。
我々が試験した一実施例においては、スクリーン・リフ
レッシュ・メモリ102は1280x1024バイトで
あった。オフ・スクリーン・メモリ104は8x (1
280xl 024)バイト塩れるように設計した。我
々はオフ・スクリーン・メモリをスクリーン・リフレッ
シュ・メモリの8倍の大ぎさにすれば大抵の機能を達成
するのに十分であることを発見した。オフ・スクリーン
・メモリ104をスクリーン・リフレッシュ・メモリ1
02より大ぎくすることによって、オフ・スクリーン・
メモリに完全な形で格納される各ウィンドウは任意の大
きさでよく、必ずしも画面の大きさと同じである必要が
ないので好都合である。
ウィンドウは画面の大きさより小さくても、大きくても
、または等しくても良いのである。更に、オフ・スクリ
ーン・メモリ104が大きくした場合、オフ・スクリー
ン・メモリのいろいろな部分からスクリーン・リフレッ
シュ・メモリにある一つのウィンドウに一連の高速コピ
ーを行なうことにより、アニメーションなどの操作が可
能とな(>×下/!?>色) る。格納できる完全なウィンドウの数はオフ・スクリー
ン・メモリの容量につれて増大すると言うことができる
。アドレス・データバス116はスクリーン・リフレッ
シュ・メモリのアドレス生成器106とオフ・スクリー
ン・メモリのXYオフセット・ロジック110とに共有
されている。
アドレス生成器(ジェネレータ)1o6及び108はス
クリーン・リフレッシュ及びオフ・スクリーン・メモリ
のような二次元的にアドレス指定されるメモリに対しア
ドレスを生成するために使用される型の物である。アド
レス生成器はイメージ・メモリのXY両アドレスを保持
するために別個のカウンタ1002.1004(第10
図)、1102.1104(第11図)を使用している
。これらのカウンタの一方または両方を数えることによ
って、イメージ・メモリにおける現在アドレス指定され
ている位置を二次元的に容易に移動することが可能であ
る。
我々が試験を行なった実施例においては、カウンタは1
2ビット幅であり、アドレス・データ・バスの構成が分
かる。グラフィック・プロセッサ100はアドレス・デ
ータ・バス116から(オフ・スクリーン・メモリのア
ドレス生成器108の場合はXYオフセット・ロジック
を通して間接的に)何時でもカウンタ値を初期化するこ
とが可能である。
オフ・スクリーン・メモリが表示されているメモリを模
倣できるようにするためには、両アドレス生成器106
及び108は一緒にロートして数える必要がある。グラ
フィック・プロセッサ100はメモリ・アシビレッシン
グに関係するいくつかの制御信号を9える。それは次の
通り;Xカウンタ・ロード許可1008(メモリ・アド
レス生成器106.108の内部で列アドレス・カウン
タ1002.1102にロードして使用される)5Yカ
ウン々・ロード許可1o1o (メモリ・アドレス生成
器106.108の内部で行アドレス・カウンタ]00
4.1104にロードして使用される)、及び行/列ア
ドレス選択1012(列及び行アドレス間の選択に使用
され、またスクリーン・リフレッシュ及びオフ・スクリ
ーン・メモリによって行及び列のアドレス・タイミング
イエ号としても使用される)。
スクリーン・リフレッシュ及びオフ・スクリーン・メモ
リに対し直線的なアドレッシング方法を用いても良いが
、この構成はイメージやグラフィックの処理環境として
はあまり好ましくない。
次的アドレス可能なメモリを用いた場合、グラフィック
・プロセッサ100またはその他のCPUはメモリ・ア
ドレス線を直接的に具備するように使用するこができる
。この場合、アドレス生成器は省略できる。
XYオフセット・ロジック110は第5図を参照すれば
分かりやすいと思われる。これには、2個のレジスタ5
02,504 (X及びYオフセット・データを保持す
るために使用される)、2:1マルチブセクサ506、
及びアトI/ス・データに前記オフセット値を加算する
(オフ・スクリーン・メモリのアドレス生成器10Bに
ロードされる)ために使用される加算器508を含む。
我々が試験を行なった一実施例においては、X及びYオ
フセット・レジスタ51]2.504は16ビット・レ
ジスタ(試験を行なった本実施例では12ビットのみ使
用した)であり、マルチプセクサ506は12ビット幅
の2:1マルチブセクサ506、加算器508は12ビ
ット加算器であった。グラフィック・プロセッサ100
がスクリ一ン・リフレッシュ及びオフ・スクリーン・メ
モリの両方に並行して書き込みを行なっているときは、
グラフィック・プロセッサは常に同期を取りながら両メ
モリに対するアドレス生成器にロードしカウントする。
しかし、スクリーン・リフレッシュ・メモリにス、1し
て、オフ・スクリーン・メモリに使用される実1遼のア
トし・スのオフセットを応用ソフトウェアから透過的に
常に■る必要がある。グラフィック・プロセッサ100
は、希望の値を2個のオフセット・レジスタ502,5
04にロードすることにより、ハードウェアでオフセッ
トを制御することができる。−度これを行なっておけば
、グラフィック・プロセッサ100がXまたはYアドレ
スを両アドレス生成器にロードする度に、マルチブセク
サ506は適当なXまたはYオフセット(どちらのカウ
ンタがロードされたかに応して)を選択し、アドレスが
XYオフセット・ロジックの出力線514を経由してオ
フ・スクリーン・メモリのアドレス生成器にロードされ
る前に加算器508はこのオフセットをアドレスに加算
する。
もしこのプロセッサがアドレスのXとYの両成分を同時
にロードすることが可能ならば、加算器は2個必要にな
るが、マルチブセクサは1個でよいことに注意すること
。直線的なアドレスを使用する場合には、オフセット・
アトlメスの加算には単一のビット幅の広い加算器を使
用することになる。オフセット・レジスタ502.50
4には負のオフセットをロードしてアドレスに加えるこ
とができるので望ましい。これにより、画面右寄りのい
くつかのウィンドウをオフ・スクリーン・、メモリの左
側近くに同時に格納することが可能となる。
代わりの構成として、オフ・スクリーン・メモリに対し
、アドレス生成器の後方に、単一のアドレス生成器と一
個のオフセット加算器を使用することも可能である。こ
の方法の利点は、唯一アドレスのロードに関しては余計
な時間的負担を受けないことである。一般に、アドレス
のロードはカウンタのインクリメントに伴うメモリのア
クセスはどは顕緊に起こらない。また、アドレス生成器
を独立して2個使用することは他の種々のアルゴリズム
に対して役に立つことがある。
ここで、第5.11.13、!4A、及び14B図を参
照してMUX (マルチプセクサ)許可信−号の動作に
付いて説明する。
MUX許可線(イネーブルライン)1410はオフセッ
トM U X 505及び読み戻しMUX1106の制
御に使用する。オフセットMUX506において、線1
410で送られるMUX選択信号により、MUX505
はそのXオフセット・レジスタからの入力(Xオフセッ
ト値)を出力するか、Yオフセット・レジスタからの入
力(Xオフセット値)を出力するかを選択する。MUX
選択信号は都合良くグラフィック・プロセッサ100上
のP A L 1402 (programmabte
 logicarray)によって生成されており、こ
れにはXカウンタ・読出許可線1404及びXカウンタ
・ロード許可線1008(何れも都合良くグラフィック
・プロセッサで生成されている)で送られる信号の論理
和を用いている。PAL、1402内部の動作の論理表
現を第14図Bに示す。
X及びYカウンタ・ロード許可(イネーブル)線too
a、1010はグラフィック・プロセッサ100で生成
したX及びYロード許可信号を運ぶ。これらの信号は装
置のアドレス生成器106.108内部のX及びYカウ
ンタにロードさせるために使用する。X及びYカウンタ
読出許可!、!i!1404、!406はグラフィ・ツ
ク・プロセッサによって生成されたX及びYカウンタ読
出許可信号を運ぶ。これらの信号を使うことにより、グ
ラフィック・プロセッサ100ばオフ・スクリーン・メ
モリのアドレス生成器108からアドレスを読み戻す(
この過程は後述する)ことが可能になる。
MUX選択信号(MUX選択線1410(7)) (7
)場合、Xカウンタ読出許可またはXカウンタ読出制御
信号が真となる度に、オフセットMUX506(第5図
)はそのXオフセット人力を選択し、if戻しMUX1
302(第13図)はその列アドレス入力1106を選
択する。Xカウンタ読出許可またはXカウンタ読出制御
信号が共に真テナイ場合、MUX506及び1302は
各々Yオフセット及び行アドレス人力を選択する。言う
までもないが、Yカウンタ読出許可信号及びYカウンタ
ilJ御信号の論理和を取ることによって、これら2つ
の信号の論理和に基づいて両MUXがYオフセット及び
行アドレス入力を選択するように、両MUXを容易に制
御することも可能である。
アルゴリズムによっては、アドレス生成器からグラフィ
ック−プロセッサにアドレスを読み戻すことが要求され
ることがある。例えば、多角形を走査変換の目的に、終
点−覧(endpotnt 1ist )に基づいて点
を生成するべくアドレス生成器を使用することがある。
このような場合、オフ・スクリーン・アドレス生成器1
08の方がリフレッシュ・メモリ・アドレス生成器f0
6よりアドレス空間が大きいために、オフ・スクリーン
・アドレス生成器108を読み戻す方が望ましいのであ
る。そうすれば、リフレッシュ・メモリ・アドレス生成
器のアドレス範囲より大ぎい対象を生成することが可能
となる。とは言え、このために、オフ・スクリーン・ア
ドレスがXYオフセット・ロジックの現在のオフセット
値でオフセットを取られているという問題が起こる。こ
れによって、読み戻した値をリフレッシュまたはオフ・
スクリーン・アドレス生成器の何れかに再ロー・ドする
ために使用して、何れかのメモリに対象を生成すること
ができるのである。この問題を解決するために、ハード
ウェア減算器1304(第13図)をオフ・スクリーン
・メモリ・アドレス生成器108からの読み戻り経路に
含め、オフ・スクリ−ン・メモリ・アドレス生成器10
8のX及びYアドレス出力から、X及びYオフセット・
レジスタ502.504における現在のオフセット値を
自動的に減算を行なうようにしである。
読み戻しロジックに付いては第13図を参照すれば理解
し易いものと思われる。読み戻しロジックは望ましいよ
うに減算器1304.2:1マルチブセクサ1302(
読み戻し用マルチブセクサ)、及び3状態バツフy13
06を含む。バッファ許可信号(バッファ許可信号線1
408の)はグラフィック・プロセッサ100のPAL
1402(第14図)によって生成される。
オフ・スクリーン・メモリの絶対(即ち、オフセットで
ない)アドレスを読み戻す場合は、読み戻しMUX13
02が列アドレス人力1106.61行アドレス人力I
LO8の何れかを選択するようにMUX選択線1410
の信号を変化させる。これらのアドレスは減算器130
4の人力に交互に供給される。同様にして、MUX選択
信号の制御下でX及びYオフセットが減算器1304の
二つめの入力に供給される。読み戻しMUX1302と
オフセットMUX506は同じMUX選択線で制御され
ているので、Xオフセットは列アドレスと同時に減算器
に与えられ、YオフセットはYオフセット・アドレスと
同時に減算器に与えられる。その結果減算器1304の
出力はオフ・スクリーン・メモリのオフセットでない列
または行(即ちX及びY)アドレスとなる。MUX許可
イ3号(MUX許可線1410の)の生成はこれまでに
説明した。ここで、バッファ許可信号(バッファ許可信
号線1408の)の生成と動作に付いて、第13.14
A、14B図を参照して説明する。
バッファ許可(イネーブル)信号は、読み戻しロジック
1400が読み戻し情報をアドレス・データ・バス11
6に乗せてグラフィック・プロセッサに読めるようにす
るために使用される。バッファ許可信号がLowの場合
、減算器1304の出力は3状態バッファ1306によ
ってアドレス・データ・バス116に乗せられる。バッ
ファ許可信号がHighの場合、3状憇バッファは高イ
ンピーダンス状態になる。言うまでもなく、バッファ1
306、減算器1304、及びマルチブセクサ1302
は全てオフ・スクリーン・メモリの全アドレヌ幅を収容
するに足るビット幅を持たなければならない。
バッファ許可(イネーブル)信号はグラフィック・プロ
セッサ100上のPAL1402によって、Xカウンタ
読出許可及びYカウンタ読出許可信号(線1404.1
406上の)の論理NORとして生成される。グラフィ
ック・プロセッサ100がオフ・スクリーン・メモリの
アドレスを読み戻そうとする度に、バッファ許可信号は
、Xカウンタ読出許可またはYカウンタ読出許可信号を
次々に出して読み戻しデータがアドレス・データ・バス
に置かれるようにする。前記のように、アドレス・デー
タ・バス116は双方向なので、グラフィック・プロセ
ッサ100はそこに現われるデータは全て読むことがで
きる。出力バッファ1306に許可を与える他、一連の
Xカウンタ読出許可及びYカウンタ読出許可信号により
、X及びYアドレス及びオフセット・データを正しく選
択することができる。バッファ許可信号は読み戻しの全
周期に渡って常に出ている。減算器1304はTI 7
4AS181チツプ(テキサス・インスツルメントより
入手可能)を用いて望ましく設計されている。
本発明の同時動作スクリーン・リフレッシュ・メモリ/
オフ・スクリーン・メモリ装置(システム)及び方法は
、種々の構成において、動作許可を与えることが可能で
ある。グラフィック・プロセッサ100は読み込みのた
めに何時でも両メモリの何れか一方を許可することがで
きる。ある時にどのメモリが選択されているかは応用ソ
フトウェアからは見ることができない。また、グラフィ
ック・プロセッサ100は、どのメモリが読み出しに選
択されているかに拘らず、書き込みのために両メモリの
如何なる組合せも許可(一方のみ許可、両方許可または
禁止)することができる。許可のモードに応じて、グラ
フィック・プロセッサが読出及び書込の制御線に信号を
送ると、許可されたメモリは読み出されたり書き込まれ
たりする。
イメージをスクリーン・リフレッシュ・メモリ102の
中だけで処理したい場合、グラフィック・プロセッサ1
00の読み出し及び書き込み時にスクリーン・リフレッ
シュ・メモリ102を許可し、書き込み時はオフ・スク
リーン・メモリ104を禁止する。このモードにおいて
は、画素データは、スクリーン・リフレッシュ・メモリ
102とグラフィック・プロセッサ100または画素デ
ータ・バス118上の何れかの装置との間を移動する。
画素データはオフ・スクリーン・メモリ104のデータ
入力端子に現われるが、メモリへの書き込みは起こらな
い。新しい画素データをスクリーン・リフレッシュ・メ
モリ102に書き込み、表示モニタを再描画するために
使用することができる。オフ・スクリーン・メモリ10
4には依然として古い更新されていないデータが入って
いる。また、データを読みたければスクリーン・リフレ
ッシュ・メモリ102から読み出すことができる。
本発明のオフ・スクリーン・メモリのアクセス・モード
も同様に動作する。グラフィック・プロセッサ100の
読み出し時及び書き込み時共に、オフ・スクリーン・メ
モリ104は許可され、書き込み時はスクリーン・リフ
レッシュ・メモリ102が禁止される。この動作モード
においては、画素データはオフ・スクリーン・メモリ1
04との間のみを移動する。表示モニタはスクリーン・
リフレッシュ・メモリからの古い更新されないデータに
よって再描画される状態が続く。
したければ、オフ・スクリーン・メモリの8売み出しを
行なうこともできる。
注意しなければならないのは、スクリーン・リフレッシ
ュ及びオフ・スクリーンの両メモリに同時に書き込むこ
とはできるが、データは一度に一方のメモリからしか読
み出すことができないことである。仮に両メモリから同
時にデータを読み出すと、画素データ・バス118で干
渉が起きてしまう。
同時書き込みは、スクリーン・リフレッシュ・メモリ1
02とオフ・スクリーン・メモリ104の両方に並行し
て書き込むことにより行なうことができる。部分的に見
えるいくつかのウィンドウを処理しながら、この構成が
利用できるので効果的である。本発明のこのような面に
よって、高速フーリエ変換、ヒストグラム、ラスター走
査、及び完全なイメージ・データ(オフ・スクリーン・
メモリに格納されている)に対する画素データの読み出
しを必要とするその他の操作などの処理が可能となる。
これらの処理の出力はスクリーン・リフレッシュ・メモ
リを用いて画面上に表示することかできる。オフ・スク
リーン・メモリは新しいイメージ・データと同時に更新
することが可能である。
その代わりに、最初の同時書き込みの後、オフ・スクリ
ーン・メモリを書き込み禁止にしても良い。言い替えれ
ば、新しいイメージ・データはオフ・スクリーン・メモ
リに元から在るイメージ・データに上書ぎしない。
元のイメージ・データをオフ・スクリーン・メモリの内
部に完全な形で残して置くと、変形する予定のイメージ
の変形前のコピーを保存する必要がある場合には非常に
役に立つことがある。例えば、イメージがいろいろに歪
得る場合、オフ・スクリーン・メモリにより従来の技術
に優る効果が得られる。これは、−数的に元のイメージ
から新たに歪んだイメージを形成する方が、既に歪んだ
イメージに対してデータに再操作を加えるよりはるかに
容易だからである。
ブロック・コピーを行なうときは、グラフィック・プロ
セッサ100は書き込みでスクリーン・リフレッシュ・
メモリ102を許可し、読み出しでオフ・スクリーン・
メモリ104を許可する。
グラフィック・プロセッサ100がアドレス・データ・
バス116にアドレス・データを発生したときく画素デ
ータは自動的にオフ・スクリーン・メモリ104から読
み出され、スクリーン・リフレッシュ・メモリ102に
書き込まれる。このことは、この二個のメモリが共通の
画素データ・バスを共有し、スクリーン・リフlフッシ
ュ・メモリ102が書き込み許可されることを考えれば
容易に理解されよう。ブロック・コピーは、両メモリに
逆方向に読み出し及び書き込み許可を与えることによっ
て、スクリーン・リフレッシュ・メモリ102からオフ
・スクリーン・メモリ104に対しても行なうことが可
能である。
本発明の装置(システム)及び方法においては、ブロッ
ク転送動作はグラフィック・プロセッサ100が実行す
るマイクロコートを使用することによフて行なっても良
い。
我々が試験を行なった一実陥例においては、両メモリ間
で毎秒120Mバイトの転送速度が達成された。マイク
ロコードによフて、デー・夕をどの方向にも転送するこ
とができ、出所及び行き先に対し矩形領域の大ぎさと位
置を自由に通訳することができる。二次元のバッチを用
いた場合には、転送はバッチの境界に沿って起こるはず
である。
この装置を使用することにより、グラフィック・プロセ
ッサ100はブロック・コヒ゛−をする目的でイメージ
・データを読み出す必要はないことに注意することが必
要である。必要なのはメモリを正しく許可し、(必要な
場合には)xYオフセット・ロジックを初期化し、そし
てアドレス・データを生成することだけである。
第1図より、本発明のアドレス・データ・バス116は
オフ・スクリーン・メモリのXYオフセット・ロジック
】10に接続されていることが分かる。オフ・スクリー
ン・メモリのアクセス(8売み出しまたは書き込み)が
起こる前に、グラフィック・プロセッサ100は決めら
れたオフセット値でそのXYオフセット・ロジックを初
期化することができる。グラフィック・プロセッサ1o
からのアドレス情報はXYアドレス・ロジック110を
通るので、そのアドレス情報は前記の決められたオフセ
ット値でオフセットがとられる。
このオフセット値はいくつかの機能を果たす。
画素データの書き込み動作時には、オフ・スクリーン・
メモリ104に書き込まれるーrメージ情報は、スクリ
ーン・リフレッシュ・メモリにおいてそれが現われる場
所以瀉のメ(り領域に自動的に翻訳される。これはXY
オフセッ1−・ロジックをゼロ以外のオフセット値で初
期化することによって行なわれる。同様の原理はオフ・
スクリー)・・メモリ104の読み出し動作にも適用で
きる。X及びYオフセット値が分かっているか、または
既にXYオフセット・ロジックにロードされている場合
、イメージ・データは、オフ・スクリーン・メモリ10
4からスクリーン・リフレッシュ・メモリ102に直接
コピーされ、映像画面の希望の表示位置に現われるよう
に自動的に翻訳される。
本発明におけるオフセット機能の効果は第2及び3図を
参照すれば理解できよう。これらの図を用いて重ね合っ
ているウィンドウが表示されるところを例をあげて説明
する。一番目のウィン1ζつ202のイメージ・データ
は最初に本装置の同時書き込みモードを用いてスクリー
ン・リフレッシュ・メモリ102どオフ・スクリーン・
メモリ104の両方に書き込まれる。
一番目のウィンドウ202のイメージ・データはスクリ
ーン・リフレッシュ・メモリ102に書き込んで、その
左下の角がリフレッシュ・メモリの物理的な原点206
(即ち、メモリ・アト1、・スが0,0)からのオフセ
ットXa、Yaに置かれるようにする。一番目のウィン
ドウのイメージ。
データはオフ・スクリーン・メモリ104の画素データ
人力時カ所にも現われるであろう。書き込み周期の始ま
るntにXYオフセット・ロジック110をオフセンl
−値(Xc−Xa、Yc−Ya)  (第3図に示す)
で初期化することにより、オフ・スクリーン・メモリに
書き込まれたイメージ・データはその物理的原点302
からスクリー・ン・リフレッシュ・メモリ内のオフセッ
ト(Xa、Ya)ではなくオフセット(Xc、Yc)に
置かれる。
そし2で、二番目のウィンドウがスクリーン・リフレッ
シュ・メモリ102とオフ・スクリーン・メモリ104
の両方に同時アクセス・モードを用いて書き込まれる。
二番目のウィンドウのデータがスクリーン・リフレッシ
ュ・メモリ102に書き込まれるとき、物理的原点20
4からのオフセット(Xb、Yb)が与えられ、一番目
のウィンドウ202に対し2つのウィンドウが重なり合
う場所にデータを上書きする。X、Yオフセット・ロジ
ックをオフセット値(Xd−Xb、Yd−Yb)を用い
て初期化することにより、二番目のウィンドウ204は
オフ・スクリーン・メモリの新しいオフセット値(Xd
、Yd)の位置に同時に書き込むことができ、二番目の
ウィンドウ204が一番目のウィンドウ202にデータ
を上書きしないようにすることができるので効果的であ
る。
書ぎ込み周期の終わったとき、リフレッシュ・メモリは
二番目のウィンドウ204に付いては完全なデータを、
一番目のウィンドウ202に付いてはおおわれていない
部分のみのデータを含んでいる。表示されるイメージは
、スクリーン・リフレッシュ・メモリから送られるので
、ウィンドウ202.204を重ね合っているように見
える。
オフ・スクリーン・メモリに格納されたイメージ・デー
タは両ウィンドウ202.204に対し完全なイメージ
・データである。つまり、オフ・スクリーン・メモリ1
04は一番目のウィンドウの覆われている領域からデー
タを失っていないことになる。
本発明のこの過程は逆の場合も等しく作用する。仮に二
番目のウィンドウを表示から取り去るとする。これを行
なうためには、スクリーン・リフレッシュ・メモリ10
2にある二番目のウィンドウのイメージに対するイメー
ジ・データに新しいデータを上書きする必要がある。こ
うすると、一番目のウィンドウのそれまで二番目のウィ
ンドウで覆われていた部分にすき間が残る。
この様子゛は第4図に示されている。このすき間を埋め
るために、従来の装置においては残フているウィンドウ
に対する表示リストを再実行し、それによって失われた
角を再生するのが普通である。XYオフセット・ロジッ
クとブロック・コピー操作を用いることにより、一番目
のウィンドウに対するイメージ・データをそのすき間を
修復するために使用することが可能である。このために
しなければならないことは、XYオフセット・ロジック
をオフ・スクリーン・メモリのオフセット値(Xc−X
a、Yc−Ya)で初期化し、そのウィンドウの失われ
ている角をオフ・スクリーン・メモリ104からスクリ
ーン・リフレッシュ・メモリ102の適当なアドレス空
間へブロック・コピーすることだけである。
XYオフセット・ロジックの現在望ましいと思われる実
施例は、レジスタとマルチブセクサの両方の機能を果た
す集積回路AMD29520を用いて設計されている。
また、29520チツプに2つのXYオフセットを交互
に格納し、重ねてマルチプセクサ機能を行なわせる方法
も可能である。AMD29520はカリフォルニア州す
ニヴエイルのAdvanced Micro Devi
ce社製である。
本発明のオフ・スクリーン・メモリ104がスクリーン
・リフレッシュ・メモリ102より容量が大きい場合、
表示画面の境界線に合わせてイメージを切り落とす準備
をするべきである。オフ・スクリーン・メモリに蓄えら
れたイメージがスクリーン・リフレッシュ・メモリより
大きい場合の例を用いて、画面検出型の切り落とし回路
が必要であることを説明する。仮にそのようなイ、メー
ジをスクリーン・リフレッシュ・メモリにコピーしたと
すれば、スクリーン・リフレッシュ・メモリのアドレス
・カウンタは環状に(即ち、アドレスの上限を越えると
ゼロに戻る)なってしまい、画面に表示されるイメージ
も巻ぎ返って見えることになる。
対象が画面の境界線を越えて描かれているような状況に
おいては、従来の画面検出型クリッパを用いて画面の巻
き返しを防ぐことができる。このようなりリッパの例は
Nemoto他による米国特許第4.642,621号
に見られる。
画面検出型クリッパで望ましいものとしては、デュ・ボ
ン・ビクセル・システムズbFx拡張フレ−ム記憶装置
が利用可能で、デュ・ボン・ビクセル・システムズ社、
在5 Penrhyn Road、 Kingston
−upon−Thames、 5urrey KTI 
2BT、 Englandより入手可能である。
前記の望ましい画面検出クリッパはハードウェアのクリ
ッパで、オフ・スクリーン・メモリのオフセット・アト
Iノスを設定された矩形領域と比較するためのハードウ
ェア・コンパレータを4個使用した物である。巻き返し
を防ぐには、前記矩形領域をリフレッシュ・メモリの物
理アドレスの大ぎさに永久的に設定することによって可
能である。この画面検出クリッパはオフ・スクリーン・
メモリのアドレス生成器108(これはスクリーン・リ
フレッシュ・メモリのアドレス生成器106よりビット
幅が大きい)が生成するオフセット・アドレスを使用し
て、オフ・スクリーン・メモリのアドレス空間全体にわ
たって巻き返しを防ぐ。
試験を行なった実施例では、オフ・スクリーン・メモリ
のアドレス範囲はX方向に−5から+15に%Y力方向
−8から+8K(スクリーン・リフレッシュ・メモリの
アドレス範囲に対して測定)である。画面の全ての縁で
巻き返しが防ぐことができるように、アドレス範囲には
負の領域を含むことが望ましい。
実際のオフ・スクリーン・アドレスは現在のXYオフセ
ット値によりオフセットをとられていることに注意が必
要である。従って、オフセット値がオフセット・レジス
タにロードされたときは、ソフトウェアも画面検出クリ
ッパの値を元の値の変化分と同じ量だけ調節する必要が
ある。これは切り落とし領域をリフレッシュ・メモリの
物理アドレス空間に固定しておくために必要である。な
ぜなら、前記クリッパは物理的に、現在のオフセラトイ
直でオフセットをとられているオフ・スクリーン・アド
レスを使用するからである。
(以 下 余 白) 画面検出クリッパが、現在のリフレッシュ・メモリ・ア
ドレスが物理リフレッシュ・メモリ領域を越えているこ
とを検出すると、出力を論理ゼロに設定する。その他の
場合はこの線に論理的なゼロを出力する。この出力線は
スクリーン・リフレッシュ・メモリ102への書込許可
信号を有効にすることによってスクリーン・リフレッシ
ュ・メモリに書き込みを許可するために使用される。画
面検出クリッパが論理ゼロを出力した場合、スクリーン
・リフレッシュ・メモリ書込許可は禁止状態に保たれる
。画面検出クリッパが論理1を出力した場合、スクリー
ン・リフレッシュ・メモリは(他に許可を与える信号が
ある場合には、それらの全てが正しく設定されたとして
)書き込みが許可される。
(C) ウィンドウの操作及び修復 本装置により、設計者及びプログラマはいくつかの重要
な機能を極めて高速に処理することができるようになる
。とりわけウィンドウの操作と修復がそうである。
ウィンドウの修復に伴う処理も大体説明に含めてきた。
まず、背景にあるイメージのウィンドウはスクリーン・
リフレッシュ・メモリとオフ・スクリーン・メモリに同
時に書き込まれる。この書き込み中に、オフ・スクリー
ン・メモリに与えられるアドレスは、最初のイメージが
スクリーン・リフレッシュ・メモリに置かれる位置とは
異なったメモリ位置に置かれるようなX及び/またはY
の値だけスクリーン・リフレッシュ・メモリのアドレス
からオフセットをとられている。
次に、前景の(覆っている)ウィンドウはスクリーン・
リフレッシュ・メモリとオフ・スクリーン・メモリに同
時に書き込まれる。オフ・スクリーン・メモリに与えら
れるアドレスは、やはり、スクリーン・リフレッシュ・
メモリに与えられるアドレスからオフセットがとられて
いる。この場合、オフ・スクリーン・メモリに用いられ
るオフセットはこの2つのウィンドウのお互いからのオ
フセットとなり、またオフ・スクリーン・メモリ内の他
のすべてのウィンドウからのオフセットとなり重なり合
う領域がないことは重要である。
この分野に精通していれば分かることであるが、全ての
ウィンドウをオフ・スクリーン・メモリにオフセット・
アドレスで書き込む必要はない。必要なことは、オフ・
スクリーン・アドレスどうしが、ウィンドウが重なり合
うことのないように、車にお互いにオフセットがとねで
いる事だけである。
前景の(Nっでいる)ウィンドウが移動または削除され
た場合背景の(部分的に覆われている)ウィンドウを修
復するためには、覆われている部分をスクリーン・リフ
レッシュ・メモリの適当なアドレスへブロック・コピー
で戻してやる。オフセット・レジスタにオフセットの初
期値をロードすることにより、そのオフセットはブロッ
ク・コピー中に効率的に減算(または、オフセットが負
の場合には加算)が行なわれる。
同様に、オフ・スクリーン・メモリは背景及び前景のウ
ィンドウの相対位置を変更(即ち、背景を前景に持って
きたり、その逆にしたり)することにも使用することが
できる。これは前記のように初期のメモリ書き込みを行
なう(オフ・スクリーン・メモリ内の何れも完全なウィ
ンドウに対するイメージ・データを新たに書き込む)こ
とによってなされる。どのウィンドウが上にあるかを変
更したい場合は、上の移動するウィンドウに対する重複
領域をオフ・スクリーン・メモリからスクリーン・リフ
レッシュ・メモリの重複している(上書きされている)
領域にブロック・コピーを行なう6更に前景から背景に
戻すには、その隅の部分をオフ・スクリーン・メモリの
新たに背景となるウィンドウ領域からスクリーン・リフ
レッシュ・メモリにコピーする。
オフ・スクリーン・メモリによるウィンドウ操作の例は
この他に次のとおりである。
オフ・スクリーン・メモリの異なる部分からウィンドウ
へのコピーを繰り返すことによるアニメーションの生成
スクリーン・リフレッシュ・メモリをクリアし、全ての
ウィンドウをオフ・スクリーン・メモリから優先度の低
い順に完全にコピーすることによるウィンドウの位置及
び大きざの変更。
クリアした後に、ウィンドウ移動後の画面の修復に必要
なイメージの部分を選択してコピーすることによる、ウ
ィンドウの大きさ及び位置の変更。
(d)自在形状クリッパ 多くのイメージ及びグラフィック装置においては、切り
落とす必要があったり切り落としたいと思うことがある
。切り落とす場合、希望の輪郭に合わせるためにイメー
ジの表示が部分的に禁止されるのが普通である。そして
、ソフトウェアでなされるため、一般に低速で複雑であ
る。切り落としはハードウェアで行なうこともできる。
本発明の装置(システム)及び方法は、好ましくなるよ
うに、画面上の許可及び禁止領域の地図をRAMに格納
して使用することにより動作する自在形状クリッパ(A
SC)を採用している。書き込みの間じゅう、スクリー
ン・リフレッシュ・メモリへ送られるアドレスを用いて
前記地図が自動的にアクセスされる。地図の内容によっ
て、その書き込み動作が効果を表わすのを許すかどうか
が決定される。本自在形状クリッパは、任意の形状を前
記RAMの地図に書き込むことができるので、どんな輪
郭が与えられてもイメージを切り落とすことができる利
点は見逃せない。
自在形状クリッパの一実施例は8個のRAMを含み、そ
の各々が表示画面の完全な地図を有しており、その内−
つは活動中のウィンドウに関するものである。そのウィ
ンドウの見える領域は論理1として格納されており、画
面のその他の部分は論理Oとして格納されている。これ
らのRAMをアクセスすることによって、8個までの表
示されたウィンドウは自動的に切り落とされる。各処理
ですべきことは、そのウィンドウに対応したRAMをア
クセスするだけである。この切り落とし操作は自在形状
クリッパによって自動的の行なわれる。
第1図を参照すれば自在形状クリッパの動作は良く理解
されよう。イメージ処理が開始される度に、本コンピュ
ータ装置のグラフィック・プロセッサ100は、そのウ
ィンドウに対応する切り落とし地図を持つ自在形状クリ
ッパ内部のRAMを選択する。スクリーン・リフレッシ
ュ・メモリのアドレス・生成器106がスクリーン・リ
フレッシュ・メモリ102のアドレス指定を開始すると
き、そのアドレス情報は自在形状クリッパにも与えられ
る。
自在形状クリッパ内部では、前記スクリーン・アドレス
情報は選択されたRAMをアクセスするのに使用される
。このRAMはアクセスされたスクリーン・リフレッシ
ュ・メモリの各位置に対し一ビットの情報を出力する。
この情報はスクリーン・リフレッシュ・メモリの書込許
可信号と論理積がとられる。自在形状クリッパのRAM
の地図が論理1を含むアドレスに対して、スクリーン・
リフレッシュ・メモリ102は書き込みが許可される。
前記RAMの地図が論理0を含むアドレスに対しては、
スクリーン・リフレッシュ・メモリ102は書き込みが
許可されない。
160ビット・データ・バスを使用することにより、自
在形状クリッパのRAM地図はスクリーン・リフレッシ
ュ・メモリより小さくすることができる。各周期に5x
4画素からなるバッチがアクセスされる場合、表示画面
は64に個の別々にアドレス指定可能な場所からなり、
これによって各自在形状クリッパRAMに必要な大きさ
は1ビット単位の64Kに減らされる。
我々は高解像度モニタにこのようなバッチを用いても、
バッチの境界線上に置かれるのはウィンドウの境界線だ
けであるため、イメージの切り落としには知覚できるほ
どの影うはないことを発見した。これによる解像度はウ
ィンドウの大きさ及び位置のなめらかに変化させるに足
るほど微細である。更に微細な繊細さが必要な場合は、
より大きな地図用RAMを用いて、画面上の各画素を別
々にアドレス指定すればよい。
自在形状クリッパ内のRAMは速さの点からスタティッ
ク型が望ましい。自在形状クリッパ112においては、
イメージ・データが書き込み準備される前までにリフレ
ッシュ・メモリが許可または禁止されるのを保証するた
め、リフレッシュ・メモリのアクセス周期に遅延書き込
みを利用している。この原理は第6及び7図を参照すれ
ば、分かりやすいものと思われる。
第7図は自在形状クリッパ・ロジックのブロック図であ
る。2個の8ビット・ラッチ702.704は8ビット
の行及び列アドレスをラッチし、1組の16ビット幅の
内部アドレス・バス706を形成するのに使用される。
8ビット・ラッチの一方は行アドレス・ストローブ(R
AS)602に同期してラッチするように設け、他方は
列アドレス・ストローブ(CAS)604に同期してラ
ッチする必要がある。これはRAS及びCASを直接用
いて、またはこの技術分野でよく知られている(ような
)タイミング・ロジックを追加して行なわれる。
スタティックRAM708.710.712.714.
716.718.720.722は少なくても64Kx
lが望ましく、例えば米国カリフォルニアのIDTより
人手可能なID77187のような型である。各スタテ
ィックRAMはデータ人力、データ出力、1ビット・チ
ップ選択人力、1ビット書込許可人力、及びアドレス人
力を含む。RAM全体のデータ出力ビンはチップ出力線
130に一緒に接続されている。
望ましい実施例においては、自在形状クリッパ(ASC
)112の動作は次のものによって制御される。即ち、
1個のモード・ビット(即ち、線724のチップ/書込
モード・ビット)□ASCを「チップ」モードまたは「
書込」モードの何れかに設定する、8個の選択ビット7
28□各ビットは各々のRAMに対応しており切り藩と
しの際には1つのRAMを選択し書き込みの際にはRA
Mどうしの任意の組合せを選択する、及び8個のデータ
・ビット726−書込モードにおいて書き込まれるデー
タを各RAMに供給する。チップ/書込モード・ビット
(線724)は全てのRAMの書込許可ビンに接続され
ている。
これら17個の制御ビットは都合良く全てグラフィック
・プロセッサ100から出ており、自在形状クリッパの
制御線128で送られる。我々が試験を行なった実施例
においては、チップ選択線728はグラフィック・プロ
セッサ100内臓のプログラマブル・ロジック・アレー
(PAL)730によって生成した。前記モード・ビッ
トは前記PALへの入力として使用した。
PAL730はチップ/書込モードビット(線724)
をゲート信号として使用し、RAMどうしの競合を避け
るためにクリッパがチップ・モードの時に単一チップの
みに対して許可を出すことを保証している。チップ・モ
ードの場合、使用されるウィンドウ切り落としバタンを
保有しているRAMは書き込み許可はされないが絶えず
チップ許可される。その他のRAMは全てチップ許可さ
れないので、選択されたRAMだけがクリッパ出力線1
30を駆動する。書込モードにおいては、RAMの任意
の組合せに対して書き込みを行なうことができる。
これを行なうためには、全てのRAMをチップ/書込モ
ード線724によって常に書込許可を与えておくと、R
AMに書き込むときには単にチップ許可を出すだけでよ
い。プロセッサは8本の制御線をマスク・バタンとして
使用し、PALに8個のチップ許可728の任意の組合
せを出力させる。更に、前記PALはまた書込モードに
おいてチップ許可616の時間を調節しくグラフィック
・プロセッサからのタイミング・パルスを都合良く用い
て)、アドレス・ラッチが有効なデータ(第6図参照)
をラッチした時のみRAMに許可を与える(と共に書き
込む)ようにする。プログラマブル・アレーのプログラ
ム方法はこの分野に精通していれば良く分かる。
また、そうするかわりに、17個の制御ビットを全てA
SCに直接通し、PALを省略することも可能である。
しかしこの場合、チップ許可信号が1個でも書込許可信
号と同じタイミングで出ることのないように、また書込
モードのチップ許可のタイミングが保証されるように、
グラフィック・プロセッサ100をプログラムするよう
に注意しなければならない。
第6図を参照すれば、切り落とし動作の実際のタイミン
グ、及びASCにお・いてスタティック(ダイナミック
との対比として)RAMを用いる理由が理解し易い。第
6図はスクリーン・リフレッシュ・メモリ102への遅
延書き込みのタイミング図である。チップ動作を行なう
ためには、2個の8ビット・ラッチ702,704には
最初にアドレス・バス127(第1図)から行及び列ア
ドレスをロードしなければならない。
第6図から分かるように、列アドレスは通常、行アドレ
スより遅れ、遅延書ぎ込み606のための書込許可パル
ス(線134)の約40ns前に現れロードされる。フ
レーム格納メモリ(即ちスクリーン・リフレッシュとオ
フ・スクリーン・メモリ)への書込パルスが発生する前
にASCが直ちに動作準備を完了し出力を生成すること
ができるように、チップ選択732(そして当然チップ
許可728)及びその他の制御信号は書込周期に先行し
て設定を行なう必要がある。ASCは約40nsの間に
、書込許可ビット(線120)を有効にしスクリーン・
リフレッシュ・メモリ102の所で安定させなければな
らないことが第6図から分かる。このためには、約40
nsからANDゲート114の伝送遅延時間(約5ns
第1図参照)とラッチ704の伝送遅延時間(約Ion
s)とを引いた時間内に、データをASCの選択された
スタティックRAMの出力ビンに出し安定させなければ
ならない。
ASCのRAMに要求される速さをできる限り得るため
に、列アドレス・ラッチ704はD型レジスタではなく
、透過型ラッチである。ラッチ・トリガ信号はCAS自
体ではないが列アドレスが有効になる僅か前にそのラッ
チを許可する関連したタイミング信号である。従って、
アドレス生成器からの列アドレスは有効になると、ただ
ちに前記透過型ラッチを直接通過して、D型レジスタの
通過で現われるクロック動作による遅延を避けるように
する。行アドレス・ストローブにはきわどいタイミング
要素がないので、行アドレス・ラッチ702はD型ラッ
チでも透過型ラッチでもよい。試験を行なった実施例で
はラッチ702はD型ラッチであった。
現在は、これらの時間的制約を満足し得るスタティック
RAMで高価でないものが入手できる。
それほど高くないダイナミックRAMやその他の装置で
やはりこれらの制約を満たすものが出て来るものと予想
している。従って、前記スタティックRAMは十分なタ
イミング特性のRAMであればどんな物でも代用できる
ものと思われる。言うまでもないが、第7図の回路は更
に大きいRAMを実装するように容易に変更し、切り落
としの繊細度(現在の実施例では5x4パツチ)を増す
ようにしてもよい。
或は前記の代替方法として、よりアクセスの遅いRAM
を使用しなければならない場合には、フレーム格納RA
Mのアクセス周期時間を延長する(より長くする)こと
もできる。しかし、この方法は更に速い(即ち高速スタ
ティック)RAMを用いるより好ましいとは言えない、
というのは装置の性能が低下しがちになるという点であ
る。
自在形状クリッパ112はソフトウェアの総体的負担を
一切掛けずにプログラムできるので効果的である。スク
リーン・リフレッシュ・メモリ102が初期化されたと
き、自在形状クリッパ112内部のRAMも全RAM内
の全メモリ位置が論理Oを含むように初期化することが
できる。
ウィンドウ領域のクリアに先立ち、自在形状クリッパ1
12内部のRAMに書き込みを許可してもよい。スクリ
ーン・リフレッシュ・メモリ内部のアドレス指定された
全ての位置(これはウィンドウ領域に対応する)に対し
、グラフィック・プロセッサ100は、自在形状クリッ
パ内のそのウィンドウへの切り落としパタンを保持する
べく選択されたRAMの対応するアドレスに論理1の書
き込みを開始する。このようにして、操作中のウィンド
ウまたはその処理に関わる諸ウィンドウが自動的に作成
される。
最初のウィンドウに覆い重なる新しいウィンドウが開か
れた場合、最初のウィンドウ地図があるRAMは新しい
輪郭に合わせて自動的に修正することができる。これを
行なうには、クリッパRAM全てに書き込みを許可し、
前記ウィンドウのRAMに対するデータ・ビットを論理
0の設定し、その他のクリッパRAMに対するデータ・
ビットを論理Oに設定する。前記ウィンドウのアドレス
がアドレス・バス127に現われたときに、論理1はそ
のウィンドウのクリッパRAMのアドレス指定された領
域に書き込まれ、一方論理0はその他のクリッパRAM
のアドレス指定された領域に書き込まれる。新しいウィ
ンドウが古いウィンドウに覆い重なるアドレス領域はそ
にために上書きされ、覆い隠されたウィンドウが新しい
ウィンドウ領域にデータを書くのを防ぐようにする。
(e)画素データ・バス上の広帯域幅I10画素データ
・バスを、160ビット幅の望ましい形式で、用いてI
10装置に対し広い帯域幅を達成することができる。I
loに対しこの画素データ・バスを用いることにより、
オフ・スクリーン・メモリ及び自在形状クリッパの便利
さを高解像度ビット・マツプ表示モニタ上の実時間映像
ウィンドウ処理に活かすことができる。パッチ・クロス
バ−変換器を用いて標準入出力装置の並列入力をパッチ
形式(例えば8ビット5x4構成など)に変換してもよ
い。このようにして変換されたI10データはオフ・ス
クリーン・メモリや自在形状クリッパが高転送速度で使
用することができる。
第8図を参照すればI10データの画素データ・バスへ
の入り口が最もよく分かる。本発明のクロスバ−変換器
は画素データ・バスをスクリーン・リフレッシュ・メモ
リとオフ・スクリーン・メモリと共に共有している。望
ましい実施例においては、クロスバ−変換器は32ビッ
トの並列I10データ(従来の直線的輝線操作形式の)
を輝線走査の連続である2次元バッチ(望ましいように
各画素が8ビット・データで定義される5重4画素構成
にした)に変換するために使用している。
32ビットI10制御器802及びクロスバ−変換器8
00は、グラフィック・プロセッサのマイクロコードを
用いて行なうのが望ましいが、グラフィック・プロセッ
サ100の制御下におく必要がある。これを特徴とする
一実施例ではマイクロコードの1個のビットをステート
・マシーンのクロックを許可及び禁止するために充てる
必要がある。マイクロコードの二つ目のビットをデータ
の流れをI10制御器に入る及び/またほから出る方向
へと制御する(例えば、データ入力側でハンドシェイク
線を制御し及び/または出力側でデータ・クロックを止
めることによって)ために使用することもできる。
またはその代わりに、クロスバ−変換器はグラフィック
・プロセッサの制御下におき、32ビットI10制御器
はそれ自身の単独制御としてもよい。この方法を用いた
場合、クロスバ−変、換器と32ピツ′ト■10装置と
の間のデータの流れの制御は従来のハンドシェイク技術
を用いて行なうことができる。
グラフィック・プロセッサ100は必然的にクロスバ−
制御器からのデータの流れを制御するという事実により
、データはクロスバ−変換器の画素バス側の出力からリ
フレッシュ・メモリ、オフ・スクリーン・メモリ及びグ
ラフィック・プロセッサのどの順列へも流されることに
なる。I10装置からのウィンドウ・データはグラフィ
ック・プロセッサまたはオフ・スクリーン・メモリから
のウィンドウ・データと同様に切り落とすことができる
。言うまでもなく、クロスバ−変換器は更に160ビッ
トのバッチ形式から32ビットの並列I10形式へのデ
ータ変換機能を果たすことも可能である。
オフ・スクリーン・メモリはまたI10データを得て処
理するという点で更に効果的である。オフ・スクリーン
・メモリと組み合わせてクロスパー変換器800または
フレーム採取装置を用いることによフて、映像イメージ
やグラフィック装置どうしのフレーム速度の不均衡から
生じる多くの問題を取り除くことができる。
例えば、典型的な高解像度ビット・マツプ・モニターは
飛び越し走査せずに60Hzで表示するが、典型的なカ
メラは飛び越し走査をして25から30Hzである。本
装置を用いれば、カメラからオフ・スクリーン・メモリ
へカメラの速度でデータをコピーし、更にオフ・スクリ
ーン・メモリから画面へ完全なイメージのみを(普通ど
うり表示速度に同期して)ブロック・コピーを行い2重
にFi街することによりこの問題を解決することができ
る。
このように、高品位実時間ウィンドウを生成することが
可能である。またこの実時間ウィンドウは自在形状クリ
ッパ112を活用できるので効果的である。更に、オフ
・スクリーン・メモリは容量が大きいので、これを使っ
てI10装置からの一連のイメージを完全に格納するこ
とにより後の表示及び/または処理が可能となる。
第9図の参照により、クロスバ−変換器が詳細によく分
かる。32ビットのデータ列からバッチ形式への変換ま
たはその逆変換にはデータの再編成が必要である。入力
(即ち、32ビットのデータ列からバッチへの変換)時
には、クロスバ−変換器は多くのハードウェアの先入れ
先出しくFifo)バッファを利用する。32ビット・
データ値が受は取られると、ステート・マシーン922
(RAMとする)は前記32ビット・ワードのどの部分
をとのFifoに送り、とのFi foにデータをロー
ドするかを制御する。
この配列により、32ビット・データ列を、連続して人
力される画素は行に沿った流れとなっている輝線バタン
になって到着する一連の画素として取り扱うことができ
る。Fi foバッファがバッチの行全体を保持できる
場合、グラフィック・プロセッサ100は一連のバッチ
転送を開始し、そのデータをスクリーン・リフレッシュ
・メモリ102及び/またはオフ・スクリーン・メモリ
104にロードすることができる。
クロスバ−変換器の望ましい実施例では5個の8ビット
4:1マルチブセクサ902.904.906.908
.910を使用している。各マルチブセクサは、入力で
、32ビット並列I10データ・ワードの全部で4バイ
トを受は取る。各バイトは各マルチブセクサへの4つの
人力の1つとして使用される。8ビット幅の4=1マル
チブセクサの各々の出力は、8ビット深さ512のFi
fo4個組のバッファ912.914.916.918
.920(全部で20個のFifoバッファを成してい
る)に接続されている。これによって電気的には、5個
のマルチブセクサはその出力をそのマルチブセクサと結
ばれている4個の8ビットFi foバッファのどれに
でも格納することができる。任意の与えられた時間には
、20個のうち5個だけがデータ入力に活発に使用され
ている。これらの使用されている5個のFi foは人
力データ列を格納する。
4個のFifoバッファ912のグループの更に詳細な
図を第15図に示す。4個の8ビット幅x256深のバ
ッファ1502.15o4.1506.1508は、そ
れらの人力で、8ビット4:1マルチプセクサ902か
ら共通の8ビット・データを受は取る。各Fifoはス
テート・マシーンからロード許可データ1510゜15
12.1514.1516の1ビットを別々に受は取る
。全FIFOの出力は、他の4グループ914.916
.918、及び920からの出力と並行に、160ビッ
トの画素データ・バス118(第1.8図に示し、また
第9図ではr160ビット・バッチ・データ・バス」と
表示)に接続される。4個のFifoの出力1518.
1520.1522.1524はバス160における5
x4パツチの1列(垂直方向の4画素)を形成する。そ
のグループの各Fif。
バッファは前記列の1画素に寄与する。グループ914
.916.918及び920は同様な構成である。これ
らのグループの各出力は5 x 4 ti成のバッチの
別個の列(垂直方向の4画素)をそれぞれ構成する。
動作において、5個のマルチブセクサはデータを20個
のFifoバッファへ経路をつけて転送する。5個のF
ifoからなるグループは人力された完全な1行分のデ
ータを格納する。各32ビット・ワードが前記Fi f
oバッファにロードされるとき、5個のFifoのうち
4個だけがロードされる。ステート・マシーン922は
マルチブセクサの選択入力及びFifoのロード許可入
力を与えて制御するために使用される。32ビット人カ
ワードが受は取られる度に、マルチプセクサは4個の人
力バイトを現在の線につながっている5個のFf fo
バッファのうち4個(Fifoのうち1個は書き込みが
許可されていない)に経路をつけて送る。経路付けと書
き込み許可の組合せは5個の32ビット値が受は取られ
る度毎に繰り返し・循環する。
完全に4木分のデータが格納されたとき、20個のFi
foバッファ全ての出力が160ビット画素データ・バ
スを形成するようにグラフィック・プロセッサによって
並列に読み出される。
この回路の目的を更に明確にするために32ビットI1
0ワードの構造をバッチの構造と対比させて考える。3
2ビットI10ワードが4個の8ビット画素AO,BO
,Co、Doを含むものとする。送られてくるデータは
次のような流れとしてクロスバ−変換器に到着する。
Ao、80.Go、Do  At、Bl、CI、Di 
 A2,82.C2,02、、、Ax、Bx、Cx、D
x このI10データは輝線形式である(ラスタ・フォーマ
ット)、官い替えると、このデータはモニタを横切る完
全な水平走査線が−続きになったものを形成するには正
しい順番で到着する。典型的な高解像度ビット・マツプ
・モニタにおいては、計1280バイト(即ち320.
32ビット・ワード)が1本の完全な水平走査線の表示
に用いられる。
32ビットI10デ一タ形式に付いての問題はバッチの
形を考えれば明かであろう。バッチの望ましい配列は8
ビット画素力で5x4個(即ち160ビット)である。
パッチ単位にアクセスする装置(例えば、本発明の装置
の望ましい実施例)においては、データは概して、その
ようなグループに編成された画素データ・バスの沿って
渡される。この装置の画素データの構成に一貫性を保つ
には、32ビットの輝線走査形式(ラスタ・スキャン・
フォーマット)をバッチ形式に変換しなければならない
。一般にこれを行なうには、クロスバ−変換器よりパッ
チ・データを出力する前に、I10装置からの輝線走査
形式の完全な行4木分のデータを集める必要がある。そ
こで、データを一度の1バツチづつ画素データ・バスに
出力することが可能となり、画素データ・バスの利用可
能な帯域幅を最大限に利用することができる。
(以 下 余 白) 効率よく緩衝するためには、20個のFif。
バッファは完全なパッチ行を2行分保持するのに十分な
大きさであることが望ましい。こうすれば、グラフィッ
ク・プロセッサは1つの完全な形のパッチ行をアクセス
が中断される事なく読み出すことができ、一方間時に次
のパッチ行をクロスバ−変換器から入力することができ
る。
望ましい実施例は512ワードの深さのFifoを使用
しているので、2行分の完全なパッチを格納できること
により、2重緩衝方式を使用することが可能となる。つ
まり、5x4パッチ256個分のデータが典型的な高解
像度モニタを水平に横切って表示される。これによフて
、データ入力速度をグラフィック・プロセッサ100の
160ビット画素データ・バス118での最高データ転
送速度より低くすることができるので効果的である。こ
の場合、プロセッサは採取したデータを転送することに
はできるだけ少ない時間で済ませ、残りの時間を他の仕
事を処理するために利用することができる。グラフィッ
ク・プロセッサが何時バッチ行を転送できるかを決定す
るためにクロスパー変換器800に問い合わせる必要を
避けるために、クロスバ−変換器800がバッチ行を受
は付けられるときにグラフィック・プロセッサ100に
割り込みを掛けられることが望ましい。
I10制御器が飛び越し走査形式でデータを出力する場
合、クロスバ−変換器の現在の好ましい実施例は画素デ
ータ・バスへデータを出力する前に、(4行続きのもの
から)2行だけを集めることが必要である。このために
は、グラフィック・プロセッサ100はマスク付き画素
書き込み(即ち、格納されたパッチの選択された部分の
みの上書きす)ができる必要がある。
オフ・スクリーンまたはリフレッシュ・メモリからデー
タを出力するためには、この順序を逆にすれば可能であ
る。まず、パッチ・データをFifoの出力部に画素デ
ータ・バスに乗って到着したとうりにロードする。次に
ステート・マシーンの制御にしたがって、マルチブセク
サを用いてパッチを32ビット幅のデータの流れを構成
する。
ステート・マシーンがRAMの場合、データ転送サイク
ルの前にグラフィック・プロセッサによってプログラム
してもよい。従来のアルゴリズムを不変に保つつもりま
らば、ステート・マシーンのRAMを装置起動中に初期
化するか、または読み出し専用記憶(ROM)を利用す
ることもで籾る。
第12図にステート・マシーンのRAMまたはROM9
22に対する1つの可能な形式を示す。
5個の2ビット・フィールドは各マルチブセクサ902
.904.906.908.910に関係する4個のF
i foの各々に対し選択ビットを与えるために使用さ
れる。5個の4ビット・フィールドは各マルチプセクサ
に関係する4個のFi foの各々に対しロード許可ビ
ットを与えるために使用される。
以下に示す表1−1は、この形式を用いた制御ワードを
どの様に設定すれば、水平走査線4木分の非飛び越し走
査による32ビット並列人力I10画素データから取り
込みバッチ・データ(8ビット画素から成る5x4の配
列)を形成できるかの例である(表1−1の例は従来の
1280x1024高解像度モニタ、即ち1行あたり1
280画素を想定している)。
表1−1 XX=任意、0はFifoが禁止されることを示す。
ワード MUX制御 番号  バイト選択 Fjfoロード制御000110
11XX 011011XXO0 1011XXOOO1 11XXOOO110 XXOOOlloll 上記(ooot−ooos)の手順はワード番号320
まで繰り返され、これにより最初の1走査線分の全画素
データが完了する。
(2番目の走査線が以下のように開始する)00011
011XX 011011XXOO 1011XXOOO1 11XXOOO110 XXOOOlloll 上記(0321−0325)の手順はワード番号640
まで繰り返され、これにより2番目の1走査線分の全画
素データが完了する。
(3番目の走査線が以下のように開始する)00011
011XX 011011XXOO 1011XXOOO1 11XXOOO110 XXOOOlloll 上記(0641−0645)の手順はワード番号960
まで繰り返され、これにより3番目の1走査線分の全画
素データが完了する。
(4番目の走査線が以下のように開始する)00011
011XX 011011XXOO 1011XXOOO1 11XXOOO110 XXOOOlloll 上記(0961−0965)の手順はワード番号128
0まで繰り返され、これにより4番目の1走査線分の全
画素データが完了する。
ワード1280が格納された後は、8ビット画素から成
る5x4構成のバッチの完全な1行分を処理することが
できる。前記手順は4行分の32ビットI10データ毎
に繰り返されることになる。
表1−1から、完全にバッチを読み出すためにグラフィ
ック・プロセッサ100は20個のFi foを並列に
読んでいることが分かる0画素データは先入れ先出し式
に格納されているわけであるから、バッチは当然、表示
画面を水平に横切って現われるように、順番にアクセス
される。
グラフィック・プロセッサ100は単に一つの所定の制
御線を用いることにより全てのFif。
の読み出し線を同時に操作してFi foを読むことが
できる。使用したFifoチップ(IDT7201、米
カリフォルニアのIDTより入手可能)は、バッファが
半分になった(256ワード格納した)ことを示すフラ
グを1個と、−杯になった(512ワードを格納した)
ことを示すフラグを1個持っている。これらのフラグを
用いてグラフィック・プロセッサ100に割り込みを掛
け、全パッチを読み出し始める時間であることを知らせ
ることができる。一般には、前記プロセッサはFifo
が半分になったときに割り込みが掛けられる(これは読
み出すことができるバッチが少なくても256個はあり
、且つFi foが溢れるまでには更に256個のバッ
チをクロスバ−変換器からまだ受は付けることができる
ことを意味する)。通常は、5個のFifoのうち最下
行のものが変換器からロードされる最後の行なので、こ
の行にあるFi foの一つからのハーフ・フル・フラ
グが割り込み発生に使用される。Ftf。
は全て同時に読み出され書き込まれる。Fif。
は深さが512ワードなので、画面2行分のバッチを完
全に格納することで、2重緩衝方式が利用できる。Fi
foに2行分のバッチを完全に格納することはグラフィ
ック・プロセッサ100がバッチを(より低速な非ペー
ジ・アドレシングに対し)ページ・モードで読み出すこ
とを可能にするので効果的である。これによりデータ転
送速度をかなり速めることが可能である。また、人力デ
ータがFi foバッファから画素の大きなグループで
転送することができるので、割り込みルーチンでの画素
データを読み出しに関するプロセッサの総体的負担が軽
減される。
代わりに、クロスバ−を切り替える構成に4個の4=1
マルチブセクサを含めて、連続する画素が行ではなく列
をなして続く輝線バタンで表わされるデータを入力でき
るようにしてもよい。あるいは、各Fifoの入力に4
:1マルチブセクサを付けてステート・マシーンから十
分制御することにより、垂直または水平な輝線形式のデ
ータを人力することも可能である。これは5個の4:1
マルチブセクサを後に付けた4個の4:1マルチブセク
サによっても機能的に実現可能である。
クロスバ−変換器の設計を容易に変更して、任意の帯域
幅のデータ・ストリームをバッチ形式に変換するように
することができる。
(f)結論 この技術分野に精通していれば多くの変更が考えられる
。例えば、オフ・スクリーン・メモリを複数用いてもよ
い。また、自在形状クリッパをオフ・スクリーン・メモ
リに対して使用することもできる。ここにおいて、この
分野に精通していれば、オフ・スクリーン・メモリ及び
自在形状クリッパを組み合わせて強力な処理手段を構成
することができることも分かるであろう。例えば、イメ
ージ・データをオフ・スクリーン・メモリからスクリー
ン・リフレッシュ・メモリヘコビーしながら切り落とす
ことができる。更に、I10データを(例えば、クロス
バ−変換器を経て)画素データ・バスに乗せて、実時間
イメージを切り落としながらスクリーン・リフレッシュ
・メモリへ送ることが可能である。また、クロスバ−変
換器を改造して、異なった大きさのワード(例えば、1
6ビット、64ビット、128ビット)をここで採用し
た8ビット5x4以外の様々なバッチ構成に変換するこ
とも可能である。
従って、望ましい実施例をいくつか説明してきたが、そ
れらは本発明を制限するものではなく、単にその模範例
に過ぎないと考えるべきである。
〔発明の効果〕
我々は、ウィンドウ管理とイメージ操作に関する多くの
複雑な問題に対し新規な解答を与える装置(システム)
及び方法を発明した。これらの装置と方法のいくつかの
実施例では、オフ・スクリーン・メモリを利用している
(+)同時オフ・スクリーン・メモリ:本発明の装置(
システム)及び方法のオフ・スクリーン・メモリは、異
なったアドレス領域に置かれたフレーム・メモリとプロ
グラム・メモリとを用いた選択的構成とは明確に区別す
るべきである。選択的構成とは異なり、本装置のオフ・
スクリーン・メモリはスクリーン・リフレッシュ・メモ
リと同じ画素アドレス・データで同様にアドレス指定が
できる。また、本装置及び方法のオフ・スクリーン・メ
モリはスクリーン・リフレッシュ・メモリと同じイメー
ジ・データに同時にアクセスすることもできる。本明細
書によればその他多くの際だった特徴が明らかになるで
あろう。
実施例の中には、オフ・スクリーン・メモリによりウィ
ンドウを高速且つ容易に修復・移動できるものがある。
また、オフ・スクリーン・メモリが実時間映像人力用の
バッファを提供する実施例もある。更に、オフ・スクリ
ーン・メモリをイメージの操作と歪形(warping
 )に使用できる実施例もある。
(i i)柔軟な出所7行き先の制御:革新的かつ柔軟
な出所7行き先の制御を利用することにより、本装置及
び方法は多くの有意義な仕事を著しく速く容易に成し遂
げることができる。本装置及び方法においては、オフ・
スクリーン・メモリとスクリーン・リフレッシュ・メモ
リは、その数に拘らず、共通のイメージ・データ・バス
を共有することが可能である。独立した読み出し・書き
込み制御によって、全てのメモリまたは他の出所と、そ
の他のメモリまたはメモリ・グループまたは他の行き先
との間でも、どの方向にもデータをこのバス上で転送す
ることが可能である。
この柔軟な制御の結果の一つとして、オフ・スクリーン
・メモリは、イメージ・データがスクリーン・リフレッ
シュ・メモリに書き込まれるときに、その(模擬の)コ
ピーを同時に受は取ることができる。更に、イメージ・
データはスクリーン・リフレッシュ・メモリとオフ・ス
クリーン・メモリとの間で何れの方向へも迅速に転送す
ることができ、その間にグラフィック・プロセッサがそ
のデータを読んだり操作することも可能である。
概して、本装置及び方法においては概して柔軟な出所7
行き光制御を使用すれば、プロセッサ、I10デバイス
、または他の出所及び任意の数のオフ・スクリーン・メ
モリとスクリーン・リフレッシュ・メモリとの組合せと
の間で何れの方向へも経路を定めてイメージ・データを
転送することが可能である。これはイメージの歪形(w
arping)などに応用すれば大いに役立つ。歪形す
るイメージの記録保管用のコピーを取って置くために本
装置及び方法の柔軟な出所7行き先の制御を使用するこ
とができる。
(Iii)イメージの歪形(Image Warpin
 )  :本装置(システム)及び方法における柔軟な
出所7行き先の制御の効果はイメージ歪形の例によって
具体的に示すことができる。本装置及び方法を使用すれ
ば、イメージは、最初にスクリーン・リフレッシュ・メ
モリに書き込まれたときに、オフ・スクリーン・メモリ
にも経路ができて転送される。そこで、オフ・スクリー
ン・メモリは書き込みが禁止され、スクリーン・リフレ
ッシュ・メモリにあるイメージに対し歪形またはその他
の操作が可能となる。
効果的なことに、本装置及び方法においては、柔軟な出
所7行き先の制御により、装置のグラフィック・プロセ
ッサがスクリーン・リフレッシュ・メモリまたはオフ・
スクリーン・メモリの何れかに格納されたイメージ・デ
ータを読むことができるのである。このことは、表示さ
れたイメージを更に歪形するには、グラフィック・プロ
セッサにオフ・スクリーン・メモリからの歪形されてい
ないデータを読ませ、その歪形されていないデータに計
算を行ない、新しく歪形されたイメージをスクリーン・
リフレッシュ・メモリにだけ送り出してやれば済むと言
うことを意味する。既に歪形されたイメージに対して画
素データを計算するより歪形前のイメージを歪形する方
がはるかに簡単であるため、これによりイメージ歪形や
類似の技法がかなり高速化される。
更に、歪形されないデータを表示したい場合には、本装
置及び方法の柔軟な出所7行き先の制御によって、グラ
フィック・プロセッサはオフ・スクリーン・メモリ及び
スクリーン・リフレッシュ・メモリ間のブロック単位の
コピーを高速で行なうことが可能となる。歪形は、本装
置及び方法の柔軟な出所7行き先の制御が如何に利用可
能であるかということの単なる一例に過ぎないことは言
うまでもない。
いくつかの実施例はXYオフセット及び独立アドレス生
成のロジックも用いて設計されている。
我々は共通に与えられたアドレスのデータを差引計算(
offset)する装置及び方法を発見した。それを用
いればウィンドウ管理速度を大いに高めることができる
。本装置及び方法のXYオフオセット及び独立アドレス
生成により、オフ・スクリーン・メモリは表示画面上の
各ウィンドウを覆い隠されていない完全な形で素通し的
に維持することが可能となり、これはオフ・スクリーン
・メモリのどの領域においても、あるウィンドウがスク
リーン・リフレッシュ・メモリに部分的または完全に上
書きされた場合でさえも可能である。
本装置(システム)及び方法を利用すれば、グラフィッ
ク・プロセッサはオフセット・アルゴリズムを用いてウ
ィンドウ・オフセットの初期値を計算し、オフ・スクリ
ーン・メモリ上のXYオフォセット・ロジックに格納す
ることができる。
XYオフォセット・ロジックと共に高速コピー・ロジッ
クを用いることにより、本装置及び方法はウィンドウの
修復と8勅とを殆ど同時に行なうことができる。オフ・
スクリーン・メモリからスクリーン・リフレッシュ・メ
モリへとイメージが素早くコピーされると、XYオフオ
セット・ロジックは、そのイメージが表示画面の希望の
位置に現われるように、自動アドレス翻訳の準備をする
。そして、オフ・スクリーン・メモリに対し相対的に何
れかの方向へデータが移動すると、XYオフォセット・
ロジックはイメージのアドレス翻訳をハードウェアで、
アプリケーション・プログラムから見えるように行なう
ことができる。オフ・スクリーン・メモリからの高速コ
ピーは、ウィンドウを瞬時に8勅したり、覆い隠してい
たウィンドウがB動したり削除された場合にウィンドウ
を完全な形に回復させるために使用することも可能であ
る。更に、オフ・スクリーン・イメージは表示されてい
るイメージの破壊、上書きまたは処理に関わりなく完全
なイメージ・データを与える基準として用いてもよい。
この柔軟な装置及び方法が示唆する意義は実に豊富であ
る。例えば、オフ・スクリーン・メモリを操作して、ス
クリーン・イメージをスクリーン・リフレッシュ・メモ
リ上の格納領域とは異なるアドレス領域に自動的に翻訳
しながら、スクリーン・イメージの変化を模倣させるこ
とが可能である。これによりオフ・スクリーン・メモリ
は、仮に背景にあるウィンドウの重ね合わされた部分が
既にイメージ・メモリに無くても、視覚的に重ね合わさ
っている多数のウィンドウの完全なコピーを格納するこ
とが可能である。これらのウィンドウの完全なコピーは
、ウィンドウまたは内部のイメージ・データの任意の部
分を移動、再構築、処理または操作に利用することがで
きる。画面のイメージ・ウィンドウ上で操作または破壊
した部分を完全なオフ・スクリーン・データに基づいて
操作することも可能である。また、本装置及び方法は、
ビデオRAMをスクリーン・リフレッシュ・メモリに使
用することが可能となっており、加えて表示されていな
いデータを保持するためには単ポートのRAMを使用す
ることも許されるという点で、価格的にも効率的である
会と」し1乏状り」二りへ! 我々はまたイメージ切り落としのための革新的且つ柔軟
な装置及び方法を発見した。本装置及び方法(自在形状
クリッパ)は、イメージを複雑な輪郭に、しかも従来の
装置が単純な矩形に切り落とすよりも速く切り落とすた
めに使用することかできる。また、本装置及び方法によ
れば、イメージの切り落とし時間が短縮し、複雑なウィ
ンドウ管理が許される。
本装置及び方法のいくつかの実施例には、クリッパ・メ
そり(RAM)が含まれており、表示中のウィンドウの
覆われていない部分の形による規定に従ってビット・マ
ツプされたパタンの格納に使用される。このパタンはウ
ィンドウの覆われていない部分の輪郭に合わせてイメー
ジを自動的に切り落とすことに使用されるが、この場合
その可動中のウィンドウの覆われている全ての部分に対
応するアドレスに対してはスクリーン・リフレッシュ・
メモリは書き込みが禁止される。RAMに格納されてい
るビット・マツプ・バタンにより、イメージを殆ど瞬時
に、しかも任意に複雑な輪郭に切り落とすことができる
ので効果的である。
本装置及び方法のいくつかの実施例の更なる際だって顕
著な特徴は、切り落としバタンが自動的に更新され得る
ことである。この事が特に役立つのは、新しいウィンド
ウがスクリーン・リフレッシュ・メモリに書かれた場合
、ウィンドウが背景から前景に移された場合、またはそ
の他、ウィンドウの表示部分が修正された場合である。
本装置においては、スクリーン・リフレッシュ・メモリ
に書き込んだときと同じアドレスを用いることにより、
新規のまたは移動したウィンドウのビット・マツプ・バ
タンをクリッパ・メモリに書き込み、それと同時に画面
自体が初期化されている間にその他の表示中のウィンド
ウのビット・マツプ・バタンを更新することが可能であ
る。
(vi)イメージ・データ・バス上の広帯域■ o:我
々はまたオフ・スクリーン・メモリの豊富な機能を発揮
させ、自在形状クリッパをI10装置などの外部資源も
利用できるようにする装置及び方法を発見した。本装置
及び方法のオン・スクリーンとオフ・スクリーンのメモ
リ及び自在形状クリッパに同時につながるイメージ・デ
ータ・バスにI10データを乗せることにより、これら
の資源を実時間ベースで利用可能になる0例えば、表示
された画面上に実時間ウィンドウをいくつか、途中でイ
メージを切り落としながら、生成することが可能である
(vii)クロスバ−換器: 本装置及び方法のいくつかの実施例においては、外部か
ら与えられたデータを効率の良い2次元形式(patc
h )の編成となるように実時間で再変換することがで
きるので効果的である。実施例の幾つかにおいては、本
装置及び方法に広帯域幅を実現するために160ビット
幅のイメージ・データ・バスを利用している。この広帯
域幅はI10装置に対しても利用できる。
(vill)  時間イメージ・バッファリング:前記
の装置及び方法の数々は相互に結合して動作し、多才な
イメージ管理装置を提供するので効果的である。この点
において、我々はオフ・スクリーン・メモリを実時間フ
レーム・バッファとして利用する数々の装置及び方法を
発見したわけである。例えば、典型的な高解像度ビット
・マツプ・モニターは非飛び越し走査の60Hzで表示
するが、一方典型的なカメラは飛び越し走査をして25
から30Hzである。本装置を用いれば、カメラのデー
タをカメラの速度でオフ・スクリーン・メモリにコピー
し、完全なイメージだけをオフ・スクリーン・メモリか
ら画面上にブロック・コピー(普通どおり表示速度に合
わせて)をして二重バッファリングを行なうことによっ
て、この問題を解決することができる。このように、上
質の実時間ウィンドウを生成することが可能である。
これらの装置及び方法には映像率によるウィンドウ処理
を必要としないので効果的である。
住旦A8個別構成要素の部品表 スクリーン・リフレッシュ・メモリ(102)ビデオR
AM 日立 HM53462 オフ・スクリーン・メモリ(104) ダイナミックRAM Tl   7MS4256  (256Kxl)AND
ゲート(114) TI    74ASO8 Xオフセット・レジスタ(502) Yオフセット・レジスタ(504) N−way2:1マルチブセクサ(506)AMD  
29520マルチレベル・パイプラインレジスタ ×2 加算器(508)、減算器(1304)Tl 74AS181 (各3個) 8ビット・ラッチ(702) TI    74AS374 8ビット・ラッチ(704) AMD  29845 スタティックRAM(708,710,712,714
,716,718,720,722)ID7  718
7 アドレス生成器(tOa) Tl   74AS269、 AMD   16R4B
(X またはYカウンタに付き1個) ASC(112)、支援PAL AMD   16L8B 付録B。
グラフィック・プロセッサ100により本発明の装置に
与えられる出力制御信号及びデータ信号の説明。
アドレス・データ アドレス・データ・バス116上の12ビットのX成分
、12ビットのY成分。
画素データ 160ビット幅の画素データ・バス 120上の8ビット画素5x4構成のバッチ形式データ
読出許可(リード・イネーブル)(124,スクリーン
・リフレッシュ及びオフ・スクリーン・メモリに対し各
1ビット。与えられた時間に両メモリのどれか一方に読
み出しを許可する。
書込許可(ライト・イネーブル)(+22.前記両メモ
リに対し各1ビット。両メモリを書ぎ込みを許可する。
読出制御 1ビット。許可されているメモリからの読みだしに使用
する。
書込制御 1ビット。書ぎ込みが許可されているメモリへの画素デ
ータの書き込みに使用する。
Xオフセット・ロード許可(イネーブル)Xオフセット
・レジスタへのXオフセット・データのロードに使用す
る。
Yオフセット・ロード許可(イネーブル)(5t 2) Yオフセット・レジスタへのYオフセット・データのロ
ードに使用する。
MUX選択(1410) 人力の中から与えられた1個を選択するように、オフセ
ットMUX506及び読み戻しMUX1302を制御す
る。
バッファ許可(イネーブル)(1408)バッファ13
06を許可して、読み戻しデータをアドレス・データ・
バスに乗せるようにする。
Xカウンタ・ロード許可(イネーブル)アドレス生成器
において列アドレス・カウンタ1002.1102のロ
ードに使用する。
Yカウンタ・ロード許可(イネーブル)(,1010) アドレス生成器において行アドレス・カウンタ1004
.1104のロードに使用する。
行/列アドレス選択(t o i o)行及び列アドレ
スをフレーム格納メモリ(102,104)に交互に出
力するためにアドレス生成器のマルチプセクサ 5061006.1106が使用す る。
ASC制御線(ASC制御バスで与えられる)チップ許
可データ(8ビット) 切り落としモードにおいては1個の RAMに読み出しのためのチップ許可を与え、書込モー
ドにおいては書き込みのために8個のRAMを出力禁止
にするためにASCが使用する。
チップ/書込モード信号(1ビット) 書き込みモードにおいてASCの全 RAMに対する書き込み許可に使用さ れ、更にASC内部のPAL730によフて使用されA
SCのRAMが書込許可(書込モード)の間、それ以上
チップ許可を出さないようにチップ選択信号に制限を加
える。
タイミング・パルス信号(1ビット) 書込モードにおいて有効なデータが ASCのRAMに書き込まれることを保証するために内
部PAL730が使用する。
ASCデータ・ビット(8ビット・バス726)8個の
ASC−RAMをビット・マツプされた切り落としパタ
ンでプログラムするために使用される。
【図面の簡単な説明】
第1図は、本発明の装置(システム)及び方法の一実施
例について、イメージ及びグラフィック処理環境におけ
るオフ・スクリーン・メモリ及び自在形状クリッパを示
す概略ブロック図である。 第2図は、前景ウィンドウ204が背景ウィンドウ20
2を部分的に覆い隠すところを示すスクリーン・リフレ
ッシュ・メモリのマツプのグラフ表示図である。 第3図は、第2図に示す前景及び背景のウィンドウの覆
い隠されず完全なものが本発明のオフ・スクリーン・メ
モリに本発明の方法により格納される様子をグラフ表示
した図である。 第4図は、覆い隠している前景ウィンドウ(描かねてい
ない)が移動または削除した後、背景ウィンドウ202
がスクリーン・リフレッシュ・メモリに現われる通すを
示すグラフィック表示図である。 第5図は、本発明による装置(システム)及び方法のオ
フ・スクリーン・メモリにおいてXYオフセット・ロジ
ック(第1図のブロック110)の一実施例を示すブロ
ック図である。 第6図は、本発明によるフレーム格納時の遅延書き込み
動作及び自在形状切り落とし動作のタイミング図である
。 第7図は、自在形状クリッパ・ロジック(第1図のブロ
ック112)においてグラフィック・プロセッサPAL
730を示すブロック図である。 第8図は、本発明を適用したクロスバ−変換器を含むブ
ロック図である。 第9図は、第8図に示したクロスパー変換器800の一
実施例の更に詳細なブロック図である。 第10図は、本発明を適用したスクリーン・リフレッシ
ュ・メモリにおけるアドレス生成器106の一実施例を
示すブロック図である。 第11図は、本発明のオフ・スクリーン・メモリのアド
レス生成器108の一実施例のブロック図である。 第12図は、ステート・マシーンとしてRAMまたはR
OMを用いた本発明のクロスバ−変換器に対する制御デ
ータの望ましいフォーマットを示す図である。 第13図は、本発明を適用したオフ・スクリーン・メモ
リのアドレス読み戻しロジックの望ましい一実施例を示
すブロック図である。 第14A図は、MUX選択信号及びバッファ・イネーブ
ル信号のための内部にプール方程式を含む本発明の制御
PAL1402を示すブロック図である。 第14B図は第14A図の制御PAL1402の論理動
作を示すブロック図である。 第15図は、第9図に示した深さ256のFifo(先
入れ先出し)バッファ912による4個の8ビツ ト幅のグループを更に詳細に示す図 である。 Figure 2 × Σ

Claims (1)

  1. 【特許請求の範囲】 1)所定のバイト数からなるラスタ・フォーマット化さ
    れた画素データである32ビット(4バイト)並列グル
    ープを、5個の1バイト画素に等しいX軸基数と4個の
    1バイト画素に等しいY軸基数を有する2次元バッチ形
    式である、160ビットに変換するためのステップとし
    て、 (A)ラスタ・フォーマット化された画素データである
    前記並列グループの第1の水平走査線内の連続する各バ
    イトを、5個のFifoバッファに含まれる第1のグル
    ープに格納して、5個の連続するバイトから成る各グル
    ープが前記Fifoバッファの順次より深い水準に格納
    されるようにし、 (B)ラスタ・フォーマット化された画素データである
    前記並列グループの第2の水平走査線内の連続する各バ
    イトを、5個のFifoバッファに含まれる第2のグル
    ープに格納して、5個の連続するバイトから成る各グル
    ープが前記Fifoバッファの順次より深い水準に格納
    されるようにし、 (C)ラスタ・フォーマット化された画素データである
    前記並列グループの第3の水平走査線内の連続する各バ
    イトを、5個のFifoバッファに含まれる第3のグル
    ープに格納して、5個の連続するバイトから成る各グル
    ープが前記Fifoバッファの順次より深い水準に格納
    されるようにし、 (D)ラスタ・フォーマット化された画素データである
    前記並列グループの第4の水平走査線内の連続する各バ
    イトを、5個のFifoバッファに含まれる第4のグル
    ープに格納して、5個の連続するバイトから成る各グル
    ープが前記Fifoバッファの順次より深い水準に格納
    されるようにし、 (E)前記5個のFifoバッファに含まれる4つのグ
    ループ内の画素データを、並列的に先入れ先だし式にア
    クセスすることにより、前記Fifoバッファ内に格納
    された画素データが表示モニタの水平スキャン方向を横
    切る一連のバッチとしてアクセスする ことを特徴とする変換方法。 2)請求項第1項の方法において、前記ステップ(A)
    、(B)、(C)および(9)の各々が、Fifoバッ
    ファの前記各グループ内のバイトをステート・マシーン
    により与えられる制御情報にしたがって格納することを
    特徴とする変換方法。 3)請求項第1項の方法において、ステップ(E)が5
    個のFifoバッファに含まれる4つのグループ内の画
    素データをステート・マシーンにより与えられる制御情
    報にしたがってアクセスすることを特徴とする変換方法
    。 4)請求項第2項の方法において、前記ステート・マシ
    ーンをRAMとしたことを特徴とする変換方法。 5)請求項第4項の方法において、前記RAMをROM
    としたことを特徴とする変換方法。 6)請求項第2項の方法において、ステップ(E)が生
    じたときに、ラスタ・フォーマット化された画素データ
    から成る並列な前記各グループ内の第5の水平走査線に
    ある連続した各バイトを5個のFifoバッファの第5
    のグループに、連続した5バイトから成る各グループが
    前記Fifoの順次より深い水準に格納されるように、
    格納するステップを更に含むことを特徴とする変換方法
    。 7)各行が5個の1バイト画素から成る4行を有する2
    次元バッチに構成された画素データの並列なグループで
    ある160ビット(20バイト)を所定のバイト数から
    成るラスタ・フォーマット化された画素データの32ビ
    ット(4バイト)並列グループに変換するためのステッ
    プとして、(A)各バッチの第1行が5個のFifoバ
    ッファの第1のサブグループにあり、各パッチの第2行
    が5個のFifoバッファの第2のサブグループにあり
    、各バッチの第3行が5個のFifoバッファの第3の
    サブグループにあり、各パッチの第4行が5個のFif
    oバッファの第4のサブグループにあるという具合いに
    前記Fifoの順次より深い水準に各バッチが格納され
    るように、一連の160ビットのバッチが20個の8ビ
    ットFifoバッファから成る一つのグループに格納し
    、 (B)第1の水平走査線を表わす画素データが32ビッ
    トの連続したグループとなって最初にアクセスされるよ
    うに、5個のバッファの第1のサブグループの予め選択
    された4個の中にある画素データを先入れ先出し式にア
    クセスし、 (C)第2の水平走査線を表わす画素データが32ビッ
    トの連続したグループとなって最初にアクセスされるよ
    うに、5個のバッファの第2のサブグループの予め選択
    された4個の中にある画素データを先入れ先出し式にア
    クセスし、 (D)第3の水平走査線を表わす画素データが32ビッ
    トの連続したグループとなって最初にアクセスされるよ
    うに、5個のバッファの第3のサブグループの予め選択
    された4個の中にある画素データを先入れ先出し式にア
    クセスし、 (E)第4の水平走査線を表わす画素データが32ビッ
    トの連続したグループとなって最初にアクセスされるよ
    うに、5個のバッファの第4のサブグループの予め選択
    された4個の中にある画素データを先入れ先出し式にア
    クセスする ことを特徴とする変換方法。 8)スクリーン・リフレッシュ・メモリと、オフ・スク
    リーン・メモリと、 前記スクリーン・リフレッシュ・メモリと前記オフ・ス
    クリーン・メモリとグラフィック・プロセッサとの間で
    バッチ形式イメージ・データに流れをもたらす動作が可
    能な画素データ・バスと、 前記スクリーン・リフレッシュ・メモリ及び前記オフ・
    スクリーン・メモリにメモリ・アドレスを与える手段と
    、 前記スクリーン・リフレッシュ・メモリに与えられたア
    ドレスに対し、前記オフ・スクリーン・メモリに与えら
    れたアドレスをオフセットする手段と、 与えられたイメージを表わすデータを前記スクリーン・
    リフレッシュ・メモリと前記オフ・スクリーン・メモリ
    の両方に書き込むことができる動作が可能な制御手段と
    、 前記画素データ・バスと通信しつつ並列イメージ・デー
    タを前記パッチ形式イメージ・データに変換するための
    クロスバー変換手段と、 データの切り落とし制御を与える切り落とし手段と、 データの切り落とし制御に応じて、前記スクリーン・リ
    フレッシュ・メモリへの書き込みを禁止するロジック手
    段と を具備したことを特徴とするイメージ処理及びグラフィ
    ック表示システム。 9)各々が複数の画素を表わす並列ワードとして与えら
    れるラスタ・フォーマット化された画素データ、及び、
    水平X個垂直Y個の画素から成るパッチを各々が表わす
    並列ワードとして与えられるパッチ・フォーマット化さ
    れた画素データにおいて、前記ラスタ・フォーマット化
    された画素データを前記パッチ・フォーマット化された
    画素データに変換する方法として、 (A)前記パッチ内の画素数に等しい複数のバッファを
    具備し、 (B)前記バッファ内の任意の与えられた位置に対し、
    全てのバッファにおける前記位置にあるデータが同じパ
    ッチに属するように、Y本のラスタ・走査線にあたる前
    記ラスタ・フォーマット化された画素データを前記バッ
    ファ上に分配し、 (C)前記バッファよりデータを並列に読み出すこと を特徴とする変換方法。
JP1071600A 1988-03-23 1989-03-23 クロスバー変換器および方法 Pending JPH0215379A (ja)

Applications Claiming Priority (8)

Application Number Priority Date Filing Date Title
GB8806872A GB2215954A (en) 1988-03-23 1988-03-23 Window management
GB8806878A GB2215936A (en) 1988-03-23 1988-03-23 Video frame and rate conversion
GB8806875 1988-03-23
GB8806872 1988-03-23
GB8806875A GB2215957A (en) 1988-03-23 1988-03-23 Video signal format crossbar converter
GB8806878 1988-03-23
US297002 1989-01-13
US07/297,002 US5047760A (en) 1988-03-23 1989-01-13 Crossbar converter

Publications (1)

Publication Number Publication Date
JPH0215379A true JPH0215379A (ja) 1990-01-19

Family

ID=27450062

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1071600A Pending JPH0215379A (ja) 1988-03-23 1989-03-23 クロスバー変換器および方法

Country Status (1)

Country Link
JP (1) JPH0215379A (ja)

Similar Documents

Publication Publication Date Title
US5047760A (en) Crossbar converter
JP2512250B2 (ja) 動画表示ワ―クステ―ション
CA2050652C (en) Dual programmable block texturing and complex clipping in a graphics rendering processor
US4800431A (en) Video stream processing frame buffer controller
EP0403122B1 (en) Processor controlled image overlay
US5943065A (en) Video/graphics memory system
JPH0230512B2 (ja)
KR100328424B1 (ko) 고속카피수단을갖는프레임버퍼를구성하기위한방법및장치
US4839828A (en) Memory read/write control system for color graphic display
EP0403121B1 (en) Computer controlled screen animation
JPH09500462A (ja) 高性能複数層zバッファを有するコンピュータ・グラフィックス・システム
JPS62248030A (ja) ラスタ走査ビデオ制御装置において更新プロセスと表示プロセスとの間で表示メモリをプログラム可能に振り分ける装置
US5678037A (en) Hardware graphics accelerator system and method therefor
US4748442A (en) Visual displaying
JPS59231591A (ja) 画像表示装置
JPH0429479A (ja) 画像出力制御装置
GB2215956A (en) Arbitrary shape clipper
JPH0215379A (ja) クロスバー変換器および方法
WO1986005910A1 (en) Video display apparatus
Ackland et al. Real time animation playback on a frame store display system
GB2215955A (en) Off screen memory
GB2215958A (en) Window management
JPS6385984A (ja) 画像処理装置
AU3063792A (en) Method and apparatus for updating a clut during horizontal blanking
JPS61290486A (ja) 表示制御装置