JPS63251864A - 表示装置 - Google Patents

表示装置

Info

Publication number
JPS63251864A
JPS63251864A JP4598888A JP4598888A JPS63251864A JP S63251864 A JPS63251864 A JP S63251864A JP 4598888 A JP4598888 A JP 4598888A JP 4598888 A JP4598888 A JP 4598888A JP S63251864 A JPS63251864 A JP S63251864A
Authority
JP
Japan
Prior art keywords
word
buffer
destination
display
image
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
JP4598888A
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPS63251864A publication Critical patent/JPS63251864A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/39Control of the bit-mapped memory
    • G09G5/393Arrangements for updating the contents of the bit-mapped memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Digital Computer Display Output (AREA)
  • Image Input (AREA)

Abstract

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

Description

【発明の詳細な説明】 A、産業上の利用分野 本発明は、表示バッフ1のデータを操作することによっ
である位置から他の位置にイメージを移動させる機能を
もつ、画素を表わすデータ用の表示バッファを含む表示
システムに関する。
B、従来技術 表示画面上でイメージ(たとえば、文字)を移動させる
ために、普通rビット・ブロック転送」または「ビット
BLTJと通常呼ばれている技術が開発されている。基
本的に、この技術では、元の位置すなわちソース位置お
よび宛先位置にあるイメージを識別する(たとえば、マ
ウスを使った)コマンドに応答して、画素を示すデータ
を自動的に複写してイメージを形成する論理回路を設け
る。
従来のビット・ブロック転送の実施態様では、メモリ位
置を読み取り、こうして得られたデータを他のメモリ位
置に書き込んで、イメージの1画素を複写する。ソース
(読取り)アドレスおよび宛先(書込み)アドレスを適
切に増分し、その動作を繰り返すことによって、任意の
大きさのイメージ(たとえば、テキストや図形文字)を
一時に1画素ずつ移動させることができる。
このプロセスは、表示されるイメージの画面を生成する
ために実際に走査される表示バッファの部分(すなわち
、表示バッファのオン・スクリーン部分)で、ある位置
から他の位置にイメージを複写するため、および表示バ
ッファのオフ・スクリーン(すなわち、見えない)部分
とオン・スクリーン部分の間でイメージを複写するため
に使用できる。この後者の技術は、全点アドレス可能(
APA)表示バッファで、記号を実際に表示すべきとき
、表示バッファのオフ・スクリーン部分に保持されてい
る記号定義を表示バッファのオン・スクリーン部分に複
写するために使用される。
C0発明が解決しようとする問題点 従来、これは、ストリング移動命令が設けられている場
合、それを使用できるシステム・マイクロプロセッサに
よって行なわれる。しかし、マイクロプロセッサ・シス
テムのバス帯域幅が限られ、また大きな表示では非常に
多量のデータが必要なため、得られるブロック転送速度
は比較的低い。
その結果、たとえば、マウスの移動に応じてリアル・タ
イムで画面上でイメージを移動させることは、(イメー
ジが極めて単純でない限り)通常不可能である。さらに
、オフ・スクリーン記憶域からオン・スクリーン記憶域
にイメージを移動させるにはかなりの時間がかかる。
本発明の目的は、従来技術の機構の欠点をもたない、ソ
ース位置から宛先位置にイメージを複写する機構を備え
た表示システムを提供することである。
D0問題点を解決するための手段 この目的は、各バッファ・ワードに複数のデータ・バイ
トを記憶するようにして画素を示すデータのバイトを記
憶するワード構成表示バッファ、およびソース位置から
宛先位置にイメージを複写する手段を含む表示システム
によって達成される。
前記複写手段は、表示バッファの第1組のワード位置か
ら、ソース位置にあるイメージの画素を示すデータ・バ
イトを含む1つまたは複数のソース・ワードのバースト
を読み取る手段、イメージの画素を示すデータ・バイト
がワード内で宛先順になっている1組の宛先ワードを形
成するように読取りソース・ワードのバースト中でデー
タ・バイトを再配列する手段、およびイメージの画素を
示すデータ・バイトが、宛先位置にあるイメージを表わ
すための正しい表示バッファのバイト位置に記憶される
ように、書込みバースト中の読取りソース・ワードの各
バーストから生成された宛先ワードを、表示バッファ内
の第2組のワード位置に書き込む手段から構成される。
本発明の好ましい実施例では、ソース・ワードのバース
ト中のデータ・バイトを再配列する手段は、データ・ワ
ードを選択可能な整数バイトだけ回転させるワード幅バ
レル・シフタ、イメージの画素を示す前記のデータ・バ
イトを一時的に記憶する先入れ先だしくF I FO)
バッファとして構成された複数のワード幅レジスタ、レ
ジスタ内の個々のバイトがアドレスできるFIFOバッ
ファ・アドレス論理回路、およびイメージの画素を示す
データ・バイトがワード内で宛先順になっている1組の
宛先ワードを形成するように読取リソース・ワードのバ
ースト中でデータ・バイトが再配列されるように、バレ
ル・シフタとFIFOバッファ・アドレス論理回路に制
御信号を送る制御論理回路を含んでいる。
R初の例では、バレル・シフタは、表示バッファから読
取りソース・ワードを受は取り、そのソース・ワードを
選択可能な整数バイトだけ回転させルヨウに、表示バッ
ファのデータ出力線に接続されている。FIFOバッフ
ァのデータ入力線は、回転されたワードを受は取るよう
に、バレル・シックの出力線に接続され、FIFOバッ
ファのデータ出力線は表示バッファのデータ入力線に接
続されている。制御論理回路は、バレル・シフタとFI
FOバッファ・アドレス論理回路に制御信号を送って、
バレル・シフタ内でワード境界を越えて回転された回転
ワードの任意のバイトが、FIFOバッファのバレル・
シフタ内でワード境界を横切って回転されなかった回転
ワードの任意のバイトが記憶されているレジスタに隣接
するレジスタの適切なバイト位置に記憶され、それによ
ってイメージの画素を示す前記データ・バイトがワード
内で宛先順に記憶されている1組の宛先ワードが、FI
FOバッフ1に記憶されるようにする。
別の例では、FIFOバッファは、表示バッファから読
み取られたソース・ワードを受は取るように、表示バッ
ファのデータ出力線に接続されている。バレル・シック
の入力端は、F工FOバッファから選択可能な整数バイ
トだけ回転すべきデータ・ワードを受は取るように、F
IFOバッファの出力線に接続され、バレル・シフタの
出力端は表示バッファのデータ入力線に接続されている
。制御論理回路は、バレル・シフタとFIFOバッファ
・アドレス論理回路に制御信号を送って、バレル・シッ
クのワード境界を横切って回転すべき前記データ・ワー
ドの任意のバイトが、バレル・シフタのワード境界を横
切って回転されない前記データ・ワードの任意のバイト
が読み取られるレジスタに隣接するレジスタの適切なバ
イト位置から読み取られ、それによってイメージの画素
を示すデータ・バイトが宛先順になっている1組の宛先
ワードが、バレル・シックの出力端で回転ワードによっ
て形成されるようにする。
上記の本発明の実施例では、ソース・ワードの1つまた
は複数のバーストを読み取る手段および宛先ワードを書
き込む手段は、そこからソース・ワードを読み取るべき
表示バッファの第1組のアドレスと、宛先ワードを書き
込むべき表示バッファの第2組のアドレスを生成する手
段を含んでいる。
制御論理回路は、表示バッフドアドレス生成手段に、F
IFOが一杯になるかまたはソース位置にあるイメージ
の画素を示すデータ・バイトを含むワードがなくなるか
どちらかの状態が先に生じるまで、読み取るべきソース
・ワードのバーストに対して前記第1組から一連のアド
レスを生成させ、次に表示バッファ・アドレス生成手段
に、FIF”Oバッファでイメージを示すデータ・バイ
トがからになるまで、前記第2組から一連のアドレスを
生成して書込みアドレスのバーストを形成させる。さら
に、制御論理回路は、表示バッファのアドレスと、読取
りソース・ワードのバースト中でデータ・バイトを再配
列する手段の動作とを同期させて、適当な数のソース・
ワードのバーストが読み取られ、再配列され、表示バッ
ファ内の宛先位置に記憶された後、イメージがソース位
置から宛先位置に複写されるようにすることができる。
上記の表示システムは、表示画面上に表示すべき画素を
示すデータ・バイトを記憶するためのオン・スクリーン
部分と、表示画面上に表示されない画素を示すデータ・
バイト用のオフ・スクリーン部分とを含む。この場合、
ソース位置から宛先位置にイメージを複写する手段によ
り、オン・スクリーン部分またはオフ・スクリーン部分
のどちらかでイメージが複写でき、また前記の両部分間
でどちらの方向にもイメージが複写できる。
E、実施例 第1図は、本発明が実施できる表示アダプタを含むワー
クステージ1ンの概観を示す。このワークステージジン
はシステム・バス12を介して接続されたいくつかの異
なるシステム・ユニットを含んでいる。システム・バス
12は、データ・バス14、アドレス・バス18および
制御バス18からなる。システム・バス12には、マイ
クロプロセッサ(CPU)10、ランダム・アクセス・
メモリ(RAM)20、キーボード・アダプタ28、表
示アダプタ32、入出力アダプタ22および通信アダプ
タ26が接続されている。キーボード・アダプタ28は
、キーボード30をシステム・バス12に接続するのに
使用される。本発明の具体的な実施例である表示アダプ
タ32は、システム・バス12を表示装置34に接続す
る。同様に、入出力アダプタ22は、入出力装置24(
たとえば、DASD)とシステム・バス12を接続し、
通信アダプタ26は、ワークステーションを上位プロセ
ッサなどの外部プロセッサ(図示せず)に接続し通信さ
せる。
表示アダプタ32は、全点アドレス可能(APA)表示
バッフ136を含む。表示バッファ36には画面上の個
々の画素に対応するデータを取り出すために表示装置が
アクセスできる(第2A図参照)。データは表示画面の
走査と同期して取り出される。そうしやすくするために
、表示バッファ内の情報は、表示リフレッシュ回路の走
査順に編成される。表示バッファ36は、表示装置によ
って走査される表示画面のオン・スクリーン部分すなわ
ち可視部分の他に、画面上に見えないイメージ(たとえ
ば、文字や記号定義)が記憶されるオフ・スクリーン部
分すなわち不可視部分をも含んでいる。
第2A図は、見える通りに表示画面38を示したもので
ある。画面は、それぞれrXJ個の画素位置を含む行が
「Y」本ある。図のように、画面の行は上端から下方に
向かって0がらy−tまでの番号が付けられている。同
様に、各行内の画素位置も、左から右に、0からX−t
までの番号が付けられている。当然のことながら、この
番号付けはまったく任意に選択でき、他の番号付は方式
も選択できる。
第2A図に示した画面を生成するため、データが表示バ
ッファ36に記憶される。バッファ36のオン・スクリ
ーン部分を第2B図に示す。
この特定の表示バッファは、32ビツトのワードで編成
されている。各画素は、画素の輝度またはカラーあるい
はその両方を定義する8ビツト・バイトのデータで表わ
される。しかし、当然、他の表示バッファ編成も可能で
ある。たとえば、バッファは他の長さのワードで編成で
き、画素の輝度またはカラーあるいはその両方を定義す
るバイトを異なる数のビット(たとえば、8ビツト・ワ
ードや4ビツト・バイト)で編成することもできる。
説明を簡単にするため、表示バッファは、左上の画素に
対するバイトから始まり、各画素に対するバイトが、左
から右に、第1行、第2行と続いて、右下の画素に対す
るバイトで終わる、バッファ内のバイトの線形ストリー
ムとして下端から上方へと編成されているように示しで
あることに留意されたい。表示バッファは、第2A図に
示した表示画面の個々の画素に対するイメージ・データ
を、奇数番号行に関するデータは表示バッファ内の最初
のアドレスから最初の順序で記憶され、偶数番号行に関
するデータは最初の順序の終わり以降に第2のアドレス
から始まる第2の順序で記憶されるように配列すること
により、インターリーブ走査技術(すなわち、奇数番号
行の走査と偶数番号行の走査を交互に行なう技術)を用
いて、リフレ・ンシュされる画面として編成することも
できる。・法として、表示バッフ1を、第2B図に示し
たー順序として編成し、表示走査論理回路に、イ゛ター
リーブ走査表示画面をサポートするため、バッファから
必要なデータを引き出す機能を設けることもできる。
第2A図は、移動すべき長方形のイメージに対する画面
上のソース位置40と宛先位置42を表わす、2つの長
方形のブロック4oと42を示す。
長方形のイメージは6個の画素からなる行を含み、その
左上端は当初画面位Wlb1aにある。宛先位置の左上
端はdvcである。第2B図で、ソース長方形が表示バ
ッフ1内の41に、1組の6バイト・データによって表
わされている。同様に、宛先長方形は、表示バッファ内
の43に、1組の6バイト・データによって表わされて
いる。ソース長方形と宛先長方形に対する各1組のデー
タの表示バッファのワード境界に関する位置合せ(すな
わち、第2B図に示したビット・アドレス0乃至31の
ブロックの左端または右端)は異なることに留意された
い。説明をしやすくするため、図にはただ1行の画素上
にある簡単なイメージを示しであることに留意されたい
。実際には、移動されるイメージは、通常もっと大きく
、通常は複数の行にまたがる。
このアダプタの表示バッファは、32ビツト幅のDRA
Mのアレイがら形成されている。最小のアドレス単位は
32ビツト・ワードである。しがし、表示バッファは、
個々のバイト活動開始を備えているので、各書込みアク
セスごとに必要に応じてOないし4バイト(各8ビツト
)を書込み、その4バイトのうち残りの部分は変更しな
いままにすることもできる。このようにして、表示バッ
ファをAPAバッファとして構成して、たとえ一時に4
バイト(すなわら、1ワード)がアドレスされるとして
も、事情に応じて各画素(すなわち、各8ビツト・バイ
ト)を選択的に書込み、あるいは書き込まないようにす
ることができる。
この点からみれば、表示画面上でイメージを移動する(
すなわち、単一バイトを連続的に読取り、。
その度にこうして得られたデータをバッファの等価な宛
先位置に書込み、それによって全イメージが複写される
まで単一画素を連続的に複写する)ために、従来技術の
手法を適用する゛ことが可能となるはずである。しかし
、この方法は、各バイトが順に処理されるので、非常に
遅い。ワード境界内のバイトの位置が第2B図に示すよ
うにソース・ワードと宛先ワードで異なっているため、
簡単に一時に1ワードを読取り書き込むのは不可能とな
る。
本発明では、表示バッファ・ワードのバーストを読取り
、処理し、記憶する手段を設けることによって、この問
題に対する解決策を提供する。
本明細書で記載する本発明の特定の実施例では、表示バ
ッファはDRAMとして実施され、ワード境界でもバイ
ト境界でもアクセスできるが、本発明はこうした編成に
限られるものではない。本発明は、バッファがワード境
界上でしかアクセスできず、バイト境界上ではアクセス
できない他の技術による表示バッファを用いても同様に
実施できる。
しかし、表示バッファがDRAMとして実施され、かつ
表示バッファ内の連続するワードが、4画素からなる連
続する画素の組を定義するように配列されている場合、
本発明のバースト動作を用いると、たとえばもう一つの
重要な性能上の利点をもたらすDRAMrページ・モー
ド」機能が利用できる。「ページ・モード」はDRAM
に従来から備わっている機能であり、その内部チップ編
成の結果として、ランダム位置よりも順次位置に対して
より迅速にアクセスできる。
第3図は、本発明の特定の実施例である第1図に示した
表示アダプタの、様々な機能要素間の相互関係を示す概
略構成図である。アダプタは制御論理回路44を含み、
制御論理回路44はアドレス・バス16と制御バス18
に接続されている。
制御論理回路44には制御記憶装置46が付随し、制御
記憶装置46はワークステーションRAMから初期設定
データを受は取るためにデータ・バス14に接続されて
いる。
ソースYレジスタ48とソースYレジスタ50および宛
先Yレジスタ52と宛先Xレジスタ54の入力線も、後
で説明する初期設定データの一部として初期位置データ
を受は取るデータ・バス14に接続されている。ソース
Yレジスタ48とソースXレジスタ50および宛先Yレ
ジスタ52と宛先Xレジスタ54の出力線は、ソースX
カウンタ56とソースXカウンタ58および宛先Yカウ
ンタ60と宛先Xカウンタ82にそれぞれ接続されてい
、る。演算論理回路64は、その4つの入力線がそれぞ
れ4つのカウンタ56.58.60162のそれぞれの
出力線に接続されている。演算論理回路64の出力線は
、表示バッフ138のアドレス入力線に接続されている
表示バッファ36のデータ出力線は、バレル・シフタ6
6の入力端に並列接続されている。バレル・シフタ66
はそれ自体既知であり、その目的は、そこに入力された
データ・ワードを整数バイト位置だけ回転させることで
ある。バレル・シフタ66のデータ出力端は、FIFO
バッファ68のデータ入力線に並列接続されている。F
IFOバッファ68は、複数の(この表示アダプタでは
、8個)ワード幅レジスタから形成されている。FIF
Oバッファ68は、アドレス論理回路70を備えており
、FIFOバッファ中の個々のバイトが個別にアドレス
でき、FIFOバッファヘノテータデー線に同時に提示
される個々のバイトが異なるワード中に記憶できるよう
になっている。FIFOバッファ・アドレス論理回路7
oは、FIFOバッファ68内のデータの始めと終わり
を指すバイト・ポインタを含み、それによってFIFO
バッファ・アドレス論理回路70はバッファが満杯の時
および空いている時を決定することができる。FIFO
バッファ68のデータ出力線は表示バッファ36のデー
タ入力線に接続されている。
図では分離しているように示しであるが、表示バッファ
36のデータ入力線と出力線は、実際にはFIFOバッ
ファ68の場合と同様に、共通でもよい。
制御論理回路44は、制御入力端Cを介して、制御記憶
装置46、YレジスタおよびXレジスタ、Xカウンタお
よびXカウンタ、演算論理回路64、表示バッファ36
、バレル・シフタ66およびFIFOバッファ・アドレ
ス論理回路7oに接続されている。FIFOバッファ・
アドレス論理回路70は、また「バッファ満杯」信号お
よび「バッファから」信号を送るように、制御論理回路
44に接続されている。
この特定の表示アダプタでは、図に示した様々な機能単
位が専用回路の形で設けられている。たとえば、論理装
置は組合せ論理回路によって実現されている。しかし、
本発明は、論理回路をソフトウェアおよびプロセッサを
ベースとするシステムとして実施する可能性を排除する
ものではない。
複写すべきイメージは表示アダプタによってバーストと
して処理される。制御論理回路は、まずソース位置にあ
るイメージを表わすバイトを含む表示バッファ・ワード
のバーストを表示バッファから読み出させる。これらの
ワードはバレル・シフタを通過し、そこで、必要に応じ
て回転されて、FIFOバッファ内の適切なバイト位置
に記憶される。FIFOバッファは、バッファ位置がバ
イト毎に、そして実際にはビット毎に宛先表示バッファ
・ワード位置に一致するという望ましい結果を得るため
に、同時に2つのアドレスに書き込む能力をもつ。
ソースが完全に読み取られ、あるいはFIFOバッファ
が満杯になったとき(どちらかが先に起こったとき)、
表示アダプタは自動的に読取りから書込みに切り替わり
、FIFOバッファ内のデータ・ワードのバーストを表
示バッファの宛先位置に記憶させる。上記のプロセスに
より、バッファは書込みのために必要な書式のデータを
含むようになることに留意されたい。すなわち、各バッ
ファ・ワードは、対応する表示バッフトワードに未修正
で書き込める正しく位置合せされたデータを含む。
ソース長方形が大きすぎてFIFOバッファに入らない
場合、表示アダプタは、自動的にFIFOバッファを満
杯にする読取りバーストと宛先表示バッファ位置にFI
FOバッファをダンプする書込みバーストの間で切り替
わる。イメージのX次元のサイズとFIFOバッファの
サイズの比は、このプロセスにとって重要ではない。X
次元のサイズが大きいと、イメージの1つの行を移動さ
せるのに多(のバーストが必要になる。X次元のサイズ
が小さいと、1回のバーストでイメージの多数の行が転
送される。したがって、バッファは論理的に見えない。
第2A図と第2B図に示した例では、ソース・イメージ
は2回の読取りバーストで完全に読み取られる(当然、
イメージのサイズが4×1画素であるありふれた場合で
は、バーストが1回の読取りしか含まないこともある)
。制御論理回路は、ソースXアドレスおよび宛先Xアド
レスから、書込みバースト中に必要となる宛先ワード内
の位置に画素を得るために、右に1だけ回転する必要が
あることを計算する。さらに、別の論理回路が、ワード
内の最後の位置を占める画素を、FIFOバッファの第
1、第2および第3位置にある画素の1つ前の位置に書
き込む必要があることを計算する。バイトrb1 a+
2J、rb、a+1」、「bla」はイメージのソース
位置では同じ表示バッ゛ファ・ワード(第2A図の41
)中にあるが、それと等価なバイトrd1c+2J、「
d1c+1」、「dlc」は、宛先位置で異なる(隣接
する)メモリ・ワード(第2B図の43)中にあること
が分かる。
本発明による表示システムの表示画面上でイメージをど
のように移動させるかをより十分に説明するために、第
4図と第5図の流れ図および第2A図と第2B図を参照
する。
ただし、表示画面を更新するために表示アダプタが表示
バッファのデータを実際に修正する前に、初期設定段階
が必要である。
第1図のワークステーションで、プロセッサ10は、デ
ータ・バス14を介して表示アダプタ32に位置決めデ
ータを送ることにより表示アダプタ32を初期設定する
。位置決めデータは、イメージ・サイズ情報、イメージ
に対する初期位置すなわちソース位置と最終位置すなわ
ち宛先位置に関する情報、および走査方向情報からなる
。これらのデータは、マウスまたはキーボードからの命
令などによる走査から得られ、データ・バス14を介し
て制御記憶装置46に送られる。
ソース位置および宛先位置情報は、そのソース位置およ
び宛先位置にあるイメージの1つの隅(たとえば右下隅
)の画面位置のrXJ値と「y」値を含む。イメージ・
サイズ情報は、イメージの水平辺および垂直辺の長さを
画素数で定義する。
走査方向情報は、データの破損を回避するために、指示
された画面位置からソース・イメージ位置および宛先イ
メージ位置を走査すべき方向を決定する。イメージ位置
が誤った方向に走査された場合、イメージ位置が重なり
合うときある位置で古い画素データが読み出される前に
新しい画素データを受は取ることがあり得る。
第2図のブロックの場合、そのサイズと位置情報は以下
の通りである。
ソース位置情報・崇・・x=a+5、y=b;宛先位置
情報・・・・・・X:C+5、y==ci ;サイズ情
報・・・・・・・・水平6画素、垂直1画素;走査方向
情報・・・・・・y減少、X減少走査方向情報を計算す
るには、データが表示バッファ中で破損されないために
、イメージの画素をどの方向に処理する必要があるか(
すなわち、イメージを走査する必要のある方向)を決定
する必要がある。第2A図と第2B図はソース長方形と
宛先長方形が重なり合わない場合を示しているが、実際
には、表示バッファのオン・スクリーン部分内でイメー
ジを複写するとき、ソース位置と宛先位置のイメージが
重なり合うのが普通である。目的は、表示バッファから
まだ読み出されていない画素データのバイトを含む位置
に書き込む必要がないようにすることである。このこと
は、イメージのソース位置と宛先位置を比較することに
より行なわれる。X方向またはY方向あるいはその両方
でのイメージの走査方向は、イメージの移動方向と逆に
なる。たとえば、イメージの宛先位置がソース位置の右
にある(すなわち、移動方向が右方向である)場合、走
査は右から左に行なわれる。
上記のソース位置および宛先位置情報は、長方形の「走
査」がそこから開始する画面位置を識別する。これらの
値は、イメージ位置情報、イメージ・サイズ情報および
走査方向情報から計算できる。
第2図に示した例では、宛先位置のrxJ値およびrY
J値がソース位置のそれより大きい場合、イメージを右
下から左上に走査すべきことが計算できる。また、ソー
ス・イメージおよび宛先イメージの位置が、イメージ処
理中のある段階でそれらのイメージの左上隅(すなわち
、b%aとdlc)によって定義される場合、右下の画
素位置が計算できる。このワークステーションでは、こ
れらの計算は、アダプタ中ではなく、プロセッサの制御
下でソフトウェアによって実行される。本発明の別の実
施例では、そのために専用組合せ論理回路を表示アダプ
タに組み込むこともできる。この場合、初期Y値および
X値をまず制御記憶装置に読み込み、こうして計算され
た値を次に第3図で制御記憶装置とレジスタの間に示し
た点線を介して送る。どちらの場合でも、走査方向の指
示が制御記憶装置に記憶され、ソース・イメージおよび
宛先イメージの初期Y値およびX位置が、それぞれレジ
スタ48.50.52.54に記憶される。
第2図の例ではレジスタに記憶される値は以下の通りで
ある: ソースYレジスタ・・・・b; ソースXレジスタ・・・・a+5; 宛先Yレジスタ・・・・・・d; 宛先Xレジスタ・・・・・・c+5; 宛先ワード内でソース・ワードのバイトを位置合わせす
るためにバレル・シフタが実行しなければならない回転
のバイト数を決定するため、制御論理回路内に特殊な組
合せ論理回路が設けられている。必要な回転は、宛先X
位置の値からソースX位置の値を引き、その結果に切捨
て操作を施して、ワード中の画素数を記述するのに必要
なビット数を求めることによって計算される。これは、
実際にその通りだが、表示画面上に1行当り整数個のワ
ードがあり、かっ1ワード当りの画素数が2の累乗(た
とえば、この場合4)であると仮定している。本例では
、ソース・アドレスは「a+5」であるが、宛先アドレ
スはrc−F5Jであり、1つのメモリ・ワード中の画
素数を記述するのに必要なビット数は2(すなわち、1
ワード当り4バイト)である。すなわち、その計算は次
のようになる。
回転= (c −a ) trunc 2第2B図に示
すように、必要な回転は実際に左へ!バイトである。こ
の回転の値が、制御記憶装置46に記憶され、バレル・
シフタ66に供給される。
この初期設定情報が決定され記憶されると、表示アダプ
タはいつでも表示バッファ上で演算を開始できる状態に
ある。上記のすべての計算は、組合せ論理回路によって
直接実行されるので、表示アダプタ・ハードウェアのセ
ットアツプ中または表示アダプタ・ハードウェアの動作
中にマイクロプロセッサで時間がかかることはない。
第4図は、制御論理回路内の読取りバースト論理によっ
て実行される演算の論理流れを示し、第5図は、表示バ
ッファ内容の修正中に制御論理回路の書込みバースト論
理で実行される演算の論理流れを示す。これらの流れ図
は、図面に示した各ステップが別々の機械状態に関係す
ることを示唆するように意図されたものではない。複数
の演算か含まれているステップもあれば、実際には、組
合せ論理回路によって並列に実行されるステップもある
。どんな実施態様でも、その目的は、クロック状態の数
を最小にすることである。
ステップ80で、ソース位置にあるイメージの左下部分
のX座標を表わす画面位置の値すが、ソースXレジスタ
48からソースYカウンタ58にロードされる。
ステップ81では、ソース位置のイメージの右下部分の
X座標を表わす画面位置の値a+5が、ソースXレジス
タ50からソースXカウンタ58にロードされる。
ステップ82で、制御論理回路44が、FIFOバッフ
ァ68が満杯かどうかを検査する。これは、FIFOバ
ッファ・アドレス論理回路70からの制御出力を検査す
ることによって行なわれる。
ステップ83で(すなわち、FIFOバッファが満杯の
場合)、第5図に示された後に拡大される書込みバース
トを制御する論理に制御権が移る。
ステップ84で、書込みバーストから戻るとき、または
FIFOバッファ68が満杯でなかった場合、制御論理
回路44は、演算論理回路64にソースYカウンタ56
およびソースXカウンタ58の現在の値によって示され
る画面上の位置に表示される画素のデータ・バイトを含
む表示バッファ36内のワードのアドレスを計算させる
。実行される実際の計算は、表示バッファ36の編成、
1ワード当りの画素数などによって変わる。
ステップ85で、制御論理回路44は、計算されたワー
ド・アドレスが新しいソース・ワードのアドレスである
かどうか判定する。計算されたアドレスがソース・イメ
ージに対して計算した最後のワード・アドレスと同じで
ある場合、ステップ87に制御権が移る。
ステップ86(すなわち、計算したアドレスが新しかっ
た場合)で、制御論理回路44は、演算論理回路64に
よって指示された表示バッファ・ワードを表示バッファ
からバレル・シフタ66に読み出させる。バレル・シフ
タ66内で、そのワードは、制御論理回路44によって
、必要と判定されたバイト数だけ回転される。バレル・
シフタ86は組合せ論理回路から形成されており、した
がって画素を余分のクロック・サイクルなしで、ソース
・ワード中の位置から宛先ワード中の位置へ回転するこ
とができる。
回転されたワードは、バレル・シフタ66の出力端に現
われ、制御論理回路44の制御下でFIFOバッファ・
アドレス論理回路70によってアドレスされるFIFO
バッフT68内の適切なノイイト位置に書き込まれる。
レジスタ内のノ(イト位置は個別に使用可能にでき、し
たがってFIFOバッフドアドレス論理回路70は隣接
する2つのレジスタ中で同時に当該のバイトにアドレス
できることを思い起こされたい。バレル・シック66内
でワード境界を横切って回転された回転ワード中の任意
のバイトは、FIFOバッファ68内の、バレル・シッ
ク66内でワード境界を横切って回転されなかった回転
ワード中の任意の)くイトが記憶されるレジスタに隣接
するレジスタの適切なバイト位置に記憶される。この例
では、1ワード当りのバイト数は4であり、その回転は
工なので、ソース・ワード内でバイト3を占有する画素
(fなわち、第2B図に示した左側のワード位置のバイ
ト)だけが、ワード境界を横切って回転される。
ステップ87で、ステップ86に続いて、あるいは表示
バッファ36のソース・ワード・アドレスが前に決定さ
れた表示バッファ36のソース・ワード・アドレスと同
じであった場合はステップ85に続いて、制御論理回路
48は、長方形イメージの水平方向の長さくすなわち、
水平サイズ)から、現在の画素の行に対してさらに表示
バッファ・アドレスの計算を行なうべきかどうかを判定
する。
これは、制御論理回路44内で現在の行で処理された画
素の数のカウントを維持することによって行なわれる。
まだ画素がある場合、制御論理回路44は、「X減分」
指示が制御記憶装置46に記憶されたときに、ソースX
カウンタ58を減分する。次にステップ82に制御権が
戻る。
イメージの現在の行にこれ以上画素がない場合、ステッ
プ88に制御権が移る。
ステップ88で、制御論理回路44は、長方形イメージ
の垂直方向の長さくすなわち、垂直サイズ)から、イメ
ージに対して処理すべき行がまだあるかどうか判定する
。これは、制御論理回路44内で現在のイメージに対し
て処理された行の数のカウントを維持することによって
行なわれる。
まだ行がある場合、制御論理回路44は、「y減分」指
示が制御記憶装置46に記憶されたときに、ソースXカ
ウンタ56を減分する。次にステップ81に戻り、制御
論理回路44は、X座標の位置の値a +5を、ソース
Xレジスタ50からソースXカウンタ58にロードさせ
る。
ステップ89で、表示バッファ36のソース位置のイメ
ージ画素に関連するデータ・ノくイトがもうないとき、
制御論理回路44は、書込み/(−スト論理に制御権を
渡す。書込みバースト論理から制御権が戻ると、イメー
ジ複写動作は完了し、制御論理回路44はその動作を終
了する。
ステップ90で、書込みバーストに入ると、イメージの
処理中に、書込みバーストへ最初に入ったときはステッ
プ91に、あるいはそうでない場合はステップ95に制
御権が移る。
ステップ91で、宛先位置にあるイメージの右下部分の
X座標に対する画面位置の値dが、宛先Yレジスタ52
から宛先Yカウンタ60にロードされる。
ステップ92で、宛先位置にあるイメージの右下部分の
X座標の画面位置の値c+5が、宛先Xレジスタ54か
ら宛先Xカウンタ62にロードされる。
ステップ93で、制御論理回路46は、表示バッフ13
6の宛先ワード位置に書き込むべきバイトを含むFIF
Oバッファ・ワードがまだあるかどうか検査する。これ
は、FIFOバッファ・アドレス論理回路70からの制
御出力を検査することによって行なわれる。
ステップ94で(すなわち、読み出すべきF’IFOバ
ッフT・ワードがもうない場合)、先にそこから書込み
バースト論理に制御権が移された読取りバースト論理の
ステップ83または89に制御権が戻る。
ステップ95で(すなわち、表示バッファ38に書き込
むべきFIFOバッファ・ワードがある場合)、制御論
理回路44は、演算論理回路64に、宛先Yカウンタ6
0と宛先Xカウンタ62の現在の値によって示される画
面上の位置に表示される画素のデータ・バイトを含む表
示バッファ36内のワードのアドレスを計算させる。実
行される実際の計算は、表示バッファ36の編成、1ワ
ード当りの画素数などによって変わる。
ステップ96で、制御論理回路44は、計算されたアド
レスが新しい表示バッファーアドレスであるかどうか判
定する。計算されたアドレスが新しいものでない場合、
ステップ98に制御権が移る。
ステップ97で(すなわち、計算されたアドレスが新し
かった場合)、制御論理回路44は、次のFIFOバッ
フトワードを演算論理回路64によって指示された表示
バッファ・ワードに書き込ませる。実際には、イメージ
の一部をなすワード中のバイトだけが表示バッファに書
き込まれる。
制御論理回路44は、イメージの一部をなさない表示バ
ッファ36内のバイトの破損を避けるため、宛先ワード
中のイメージの画素を示すバイトの位置を、演算論理回
路64によって指示された表示バッフドアドレス内に書
き込ませる。制御論理回路44は、FIFOバッファ6
8内のバイトをカウントすることによって、どのバイト
を書き込むべきかを追跡する。
ステップ98で、ステップ97に続いて、あるいは表示
バッファの宛先ワード・アドレスが最後に計算された表
示バッファ36の宛先ワード・アドレスと同じであった
場合はステップ96に続いて、制御論理回路44は、長
方形イメージの水平方向の長さから、現在の画素の行に
対してさらに表示バッファ36の宛先ワードの計算を行
なうべきかどうかを判定する。これは、制御論理回路4
4内で現在の行で処理された画素の数のカウントを維持
することによって行なわれる。
まだ画素がある場合、制御論理回路44は、「X減分」
指示が制御記憶装置46に記憶されたときに、宛先Xカ
ウンタ62を減分する。次にステップ93に制御権が戻
る。
イメージの現在の行にこれ以上画素がない場合、ステッ
プ99に制御権が移る。
ステップ99で、制御論理回路44は、「X減分」指示
が制御記憶装置46に記憶されたときに、宛先Yカウン
タ62を減分する。次にステップ92に戻り、制御論理
回路44は、X座標の位置のc+5を、宛先Xレジスタ
54から宛先Xカウンタ62にロードきせる。これが行
なわれる前にFIIi”Oバッファ68からバイトがか
らになるとき、イメージに対して処理すべき行がまだあ
るかどうか判定する必要はない。
本願で特許請求する発明の具体的な実施例について説明
してきたが、当然のことながら、本発明の範囲内で様々
な修正や別の構造が可能である。
たとえば、バレル・シフタ66とFIFOバッファ68
の位置を逆にして、ソース位置にあるイメージを示すデ
ータのワードは直接FIFOバッファ68に読み取り、
次いで、FIFOバッフT68の特殊アドレス機構を使
ってデータ・ワードをコンパイルし、それをバレル・シ
フタ66に送ることができる。バレル・シフタ66内で
、それらのデータ・ワードは回転されて宛先ワードを形
成し、次いで、表示バッファ36の宛先位置に記憶され
る。表示システムのこうした実施例では、FIFOバッ
ファ68は、表示バッファ36から読み出されたソース
・ワードを受は取るように、表示バッファ36のデータ
出力線に接続されている。バレル・シフタ66の入力端
は、FIFO,(ッファ68からデータ・ワードを受は
取って選択可能な整数バイトだけ回転させるように、表
示バッファ36のデータ出力線に接続され、バレル・シ
フタ66の出力端は表示バッファ36のデータ入力線に
接続されている。制御論理回路は、バレル・シフタ66
とFIFOバッファ・アドレス論理回路70に制御信号
を供給して、バレル・シフタ68内でワード境界を横切
って回転すべき前記データ・ワードの任意のバイトが、
バレル・シフタ66内でワード境界を横切って回転され
ない前記データ・ワードの任意のバイトが読み取られる
レジスタに隣接するレジスタの適切なバイト位置から読
み取られるようにする。このようにして、イメージに対
する画素を示す前記データ・バイトが宛先順になってい
る1組の宛先ワードが回転ワードによってバレル・シフ
タ68の出力端で形成される。
上記で具体的に説明した実施例では、画面上に表示され
る領域は長方形である。しか゛し、希望するなら、表示
アダプタ32にマスク論理回路を組み込むことによって
、長方形でないイメージを複写する機能を設けることも
できる。簡単に言うと、これは、第1図のワークスチー
シロン中で、ワークステーションRAM20から表示バ
ッフ136のオフ・スクリーン部分にマスク境界情報を
転送し、続いて前記の説明で説明したように長方形の領
域に対するイメージ・データを複写することによって実
現できる。しかし、この場合、制御論理回路は、マスク
境界の外にある画面部分に関するデータ項目を無視させ
るので、境界内にある長方形のイメージ領域部分だけが
ずらされる。
表示バッフ136にデータ・バイトを単に書き込む代わ
りに、イメージに対する画素を示すバイトを宛先位置に
すでに記憶されているバイトと論理的に組み合わせて、
表示画面上で特定の効果を実現したい場合がある。これ
は、別の演算論理回路を設けて、ソース位置と宛先位置
の間で算術演算および論理演算が行なえるようにするこ
とによって実現できる。各画素はこうした論理回路内で
個別に効果的に処理できるが、実際には、いくつかの画
素が同時に処理できる。各画素に対する演算には、次の
ようなタイプのものがある。
宛先:=ソース(演算)宛先 ただし、演算は排他的論理和、論理積などである。
さらに、シザリング論理回路を用いて、表示バッファ3
6の領域を(複写からではなく)書込みから保護するこ
とができる。たとえば、表示画面上のウィンドーの外側
の領域またはオフ・スクリーン記憶域内の領域をこのよ
うにして保護することができる。
上記の説明では、第3図に部分的に示した表示アダプタ
を、本発明にもとづく表示装置の特定の実施例として示
してきた。しかし、特許請求の範囲で使用した表示装置
という用語はそれに限定されるものではない。表示アダ
プタを含むワークスチーシロンも表示装置として記載す
ることができる。したがって、当然のことながら、本明
細書で使用する表示装置乃至表示システムという用語は
、ワークステーションまたは、その中で表示アダプタが
個別に識別できるものであれできないものであれ、特許
請求の範囲に当てはまる他のいかなるシステムをその範
囲内に含む。また、本発明の特定の実施例では論理回路
は組合せハードウェア論理回路の形をとっているが、本
発明は、その論理回路によって実現される1つまたは複
数の機能がソフトウェアの形で実施されることをもその
範囲内に含むものである。
F0発明の効果 本発明による表示装置を用いると、英数字、テキストさ
らには図形イメージをも(たとえば、マウスの移動によ
って)リアル・タイムで表示画面上で移動させることが
でき、したがってあらゆる種類のイメージを含む画面の
編集(たとえば、デスク・トップ・パブリッシングでの
ページ構成など)が容易になる。その画素の定義がオフ
・スクリーン部分に保持されている記号(たとえば、文
字)を表示するために全点アドレス可能(APA)表示
バッファのオフ・スクリーン部分からオン・スクリーン
部分にイメージを迅速に複写することが可能である。こ
のようにして、英数字、テキストさらには図形をも含む
イメージの画面を、通常コード化バッファ英数字のみの
表示に関連する性能をもつAPA図形表示バッファによ
って駆動される図形表示装置上で作成することができる
【図面の簡単な説明】
第1図は、ワークスチーシロンの構成図である。 第2A図と第2B図は、それぞれ、表示画面上の感知さ
れた画素位置と、それらの画素を示すデータ用の表示バ
ッファ内の対応する記憶位置との関係を示す概略図であ
る。 第3図は、第1図に含まれている表示アダプタのいくつ
かの実施態様を示す概略構成図である。 第4図と第5図は、第3図の表示アダプタの動作の態様
を示す流れ図である。 12・・・・ワークスチーシロン、14・・・・データ
・バス、16・・・・アドレス・バス、18・・・・制
御バス、20・・・・ランダム・アクセス・メモリ、3
2・・・・表示アダプタ、34・・・・表示装置、36
・・・・表示バッフ1.44・・・・制御装置、46・
・・・制御記憶B置、48.50・・・・ソーース・レ
ジスタ、52.54・・・・宛先レジスタ、56.58
・・・・ソース・カウンタ、60162・・・・宛先カ
ウンタ、64・・・・演算論理回路、66・・・・バレ
ル・シフタ、68・・・・FIFOバッファ、70・・
・・FIFOバッファ・アドレス論理回路。 亜 第2A図

Claims (1)

  1. 【特許請求の範囲】 各バッファ・ワードに複数のデータ・バイトを記憶する
    ようにして画素を示すデータのバイトを記憶するワード
    構成表示バッファと、 ソース位置から宛先位置にイメージを複写する手段とを
    含み、 前記複写手段が、表示バッファの第1組のワード位置か
    ら、ソース位置にあるイメージの画素を示すデータ・バ
    イトを含む1つまたは複数のソース・ワードのバースト
    を読み取る手段、 イメージの画素を示すデータ・バイトがワード内で宛先
    順になっている1組の宛先ワードを形成するように読取
    りソース・ワードのバースト中でデータ・バイトを再配
    列する手段、および イメージの画素を示すデータ・バイトが、宛先位置にあ
    るイメージを表わすための正しい表示バッファのバイト
    位置に記憶されるように、書込みバースト中の読取りソ
    ース・ワード中の各バーストから生成された宛先ワード
    を、表示バッファ内の第2組のワード位置に書き込む手
    段を含むことにより成る表示装置。
JP4598888A 1987-04-02 1988-03-01 表示装置 Pending JPS63251864A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB8707851A GB2203317B (en) 1987-04-02 1987-04-02 Display system
GB8707851 1987-04-02

Publications (1)

Publication Number Publication Date
JPS63251864A true JPS63251864A (ja) 1988-10-19

Family

ID=10615089

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4598888A Pending JPS63251864A (ja) 1987-04-02 1988-03-01 表示装置

Country Status (5)

Country Link
EP (1) EP0284905B1 (ja)
JP (1) JPS63251864A (ja)
CA (1) CA1294380C (ja)
DE (1) DE3885926T2 (ja)
GB (1) GB2203317B (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69033283T2 (de) * 1989-07-28 1999-12-30 Hewlett Packard Co Verfahren und Einrichtung zur Beschleunigung von Bildfenstern in graphischen Systemen
WO1995014348A1 (en) * 1993-11-16 1995-05-26 International Business Machines Corporation Method and apparatus for alignment of images for template elimination
DE4405330A1 (de) * 1994-02-21 1995-08-24 Vobis Microcomputer Ag Verfahren zum Scrollen von mehreren Rasterzeilen in einem Fenster eines Grafikmodus betriebenen Bildschirms eines Personalcomputers

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60136793A (ja) * 1983-12-26 1985-07-20 株式会社日立製作所 画像データ処理装置及び方法
JPS60245062A (ja) * 1984-05-18 1985-12-04 Matsushita Electric Ind Co Ltd デ−タ転送装置
JPS61124984A (ja) * 1984-11-22 1986-06-12 松下電器産業株式会社 デ−タ転送装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2123656B (en) * 1982-06-09 1987-02-18 Tatsumi Denshi Kogyo Kk A method and an apparatus for displaying a unified picture on crt screens of multiple displaying devices
DE3587458T2 (de) * 1984-04-10 1994-03-24 Ascii Corp Videoanzeigesteuersystem.
EP0192139A3 (en) * 1985-02-19 1990-04-25 Tektronix, Inc. Frame buffer memory controller

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60136793A (ja) * 1983-12-26 1985-07-20 株式会社日立製作所 画像データ処理装置及び方法
JPS60245062A (ja) * 1984-05-18 1985-12-04 Matsushita Electric Ind Co Ltd デ−タ転送装置
JPS61124984A (ja) * 1984-11-22 1986-06-12 松下電器産業株式会社 デ−タ転送装置

Also Published As

Publication number Publication date
GB2203317A (en) 1988-10-12
GB2203317B (en) 1991-04-03
CA1294380C (en) 1992-01-14
EP0284905A3 (en) 1990-09-19
EP0284905B1 (en) 1993-12-01
EP0284905A2 (en) 1988-10-05
DE3885926D1 (de) 1994-01-13
GB8707851D0 (en) 1987-05-07
DE3885926T2 (de) 1994-05-19

Similar Documents

Publication Publication Date Title
EP0197412B1 (en) Variable access frame buffer memory
US5283867A (en) Digital image overlay system and method
US5587726A (en) Method and apparatus for increasing the speed of operation of a double buffered display system
US5233690A (en) Video graphics display memory swizzle logic and expansion circuit and method
JPH10505935A (ja) 改善されたメモリアーキテクチャ、及びこれを利用するデバイス、システム及び方法
JPS61276074A (ja) フレ−ム・バツフア・メモリ装置
JPS61188582A (ja) マルチウインドウ書込み制御装置
JPS6061794A (ja) 画面分割表示装置
JPH06180685A (ja) マルチバンクフレームバッファランダムアクセスポートへ書込み、およびそれから読出すための装置および画素をマルチバンクフレームバッファへ書込む速度を向上させる方法
JPS61254980A (ja) 文字フオント転送制御方式
EP0398510A2 (en) Video random access memory
JPS6049391A (ja) ラスタ走査表示システム
JPS62166391A (ja) カ−ソル制御装置
EP0215984A1 (en) Graphic display apparatus with combined bit buffer and character graphics store
EP0525986A2 (en) Apparatus for fast copying between frame buffers in a double buffered output display system
JPS61252590A (ja) 表示装置
JPS63251864A (ja) 表示装置
JPS6267632A (ja) コンピュータ表示装置
US4988985A (en) Method and apparatus for a self-clearing copy mode in a frame-buffer memory
KR910003527A (ko) 비디오 그래픽 디스플레이 메모리 스위즐 논리 회로 및 방법
JPS61250729A (ja) シフタ回路
JPS60129791A (ja) ビツトアクセスメモリ装置
JPS60129786A (ja) 画像メモリ装置
JPS6040034B2 (ja) 表示装置
JPS6141183A (ja) デイジタル記憶装置