JP2905446B2 - データストリング生成方法、コンピュータ動作方法、ピクセル値セット生成方法及びコンピュータ - Google Patents

データストリング生成方法、コンピュータ動作方法、ピクセル値セット生成方法及びコンピュータ

Info

Publication number
JP2905446B2
JP2905446B2 JP8180010A JP18001096A JP2905446B2 JP 2905446 B2 JP2905446 B2 JP 2905446B2 JP 8180010 A JP8180010 A JP 8180010A JP 18001096 A JP18001096 A JP 18001096A JP 2905446 B2 JP2905446 B2 JP 2905446B2
Authority
JP
Japan
Prior art keywords
bit
data string
instruction
bits
sequence
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP8180010A
Other languages
English (en)
Other versions
JPH0926770A (ja
Inventor
マッキンゼー サイドウェル ネイサン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ESU TEII MAIKUROEREKUTORONIKUSU Ltd
Original Assignee
ESU TEII MAIKUROEREKUTORONIKUSU 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
Application filed by ESU TEII MAIKUROEREKUTORONIKUSU Ltd filed Critical ESU TEII MAIKUROEREKUTORONIKUSU Ltd
Publication of JPH0926770A publication Critical patent/JPH0926770A/ja
Application granted granted Critical
Publication of JP2905446B2 publication Critical patent/JP2905446B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/76Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30018Bit or string instructions
    • 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/02Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the way in which colour is displayed
    • G09G5/024Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the way in which colour is displayed using colour registers, e.g. to control background, foreground, surface filling

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Executing Machine-Instructions (AREA)
  • Image Processing (AREA)
  • Controls And Circuits For Display Device (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はコンピュータにおけ
るデータの拡張に関する。本発明は、全体的というわけ
ではないが、詳細にはデータを拡張してディスプレイに
おけるピクセルのディスプレイ状態を画定するピクセル
値のセットを生成することに関する。
【0002】
【従来の技術及び発明が解決しようとする課題】ディス
プレイの第1及び第2領域のピクセルのピクセル値を生
成することがコンピュータディスプレイにとって頻繁に
必要になる。ディスプレイの各領域のピクセルは共通特
性、例えばカラーを共有している。一つの例はディスプ
レイにキャラクタ又は他の画像を生成することであり、
その画像はディスプレイの第1領域を画定してフォアグ
ランドカラーで表示され、一方ディスプレイの第2領域
はバックグラウンドカラーを有するバックグラウンドで
ある。そのようなキャラクタ又は画像を画定するフォン
トは各ピクセル当たり1ビットを使用して保存される。
例えば、ゼロはバックグラウンドを示し、1はフォアグ
ランドを示す。
【0003】対照的に、ビデオディスプレイデバイスは
幾つかのカラーを同時に表示するために各ピクセルを画
定する幾つかのビットを必要とする。従って、各ピクセ
ル値はビットのシーケンス、例えば8又は32ビットに
よって表される。
【0004】保存したフォントをこのディスプレイデバ
イスにディスプレイするために、圧縮したフォント情報
を拡張することが必要になり、その結果各ピクセルはデ
ィスプレイデバイスで使用される必要なビットシーケン
ス長によって表される。
【0005】既存のシステムでは、これは単一のビット
フォントデータをワード毎に使用して、各ワードに対し
てフルの拡張マスクを有するルックアップテーブルにア
ドレスすることによって行われる。これは、ルックアッ
プテーブルがメモリに保持されなければならず、大量の
メモリ容量を使い切ってしまう。これはキャッシュアク
セスにあまり良くない影響を与え、コンピュータシステ
ムの速度を遅くする。
【0006】
【課題を解決するための手段】一つの態様では、本発明
は、コンピュータシステムにおいてこの拡張を実行する
単純且つ有効な方法を提供する。
【0007】本発明の一態様に従うと、本発明は、単一
のアドレスによってアドレス可能な予め決められたビッ
ト容量を有するレジスタ記憶装置にデータストリングを
生成する方法が提供されており、その方法は、前記予め
決められたビット容量よりも少ない複数のビットから成
る少なくとも一つのビットシーケンスを有するビットス
トリングを識別し、ビットシーケンスの各ビットを選択
し、選択された各ビットをレジスタ記憶装置の複数の隣
接位置に複製して前記ビット容量にマッチするビット長
を有し各々が複数の前記複製ビットを有する複数の拡張
ビットシーケンス数からなるデータストリングを生成す
る。
【0008】識別されたビットストリングが複数の隣接
位置に位置するビットシーケンスを有する場合、この方
法は複製のためにビットシーケンスのうちの一つを選択
することを含む。
【0009】識別されたビットストリングは生成したデ
ータストリングのビット長にマッチするビット長を有す
る。
【0010】好適な実施の形態では、隣接位置に位置す
ビットシーケンスは識別されたビットストリングの最
上位ビットシーケンスと最下位ビットシーケンスとの間
に順番に配置され、この場合、最下位ビットシーケンス
のビットが複製のために選択される。これは、本発明の
物理的な実施において拡張するシーケンスを識別する必
要がないという利点を有する。識別されたビットストリ
ングがレジスタ記憶装置内の予め決められた位置で最下
位ビットシーケンスを有して常にレジスタ記憶装置に配
置される場合にそのビットシーケンスは自動的に複製さ
れる。識別されたビットストリングの次のビットシーケ
ンスが複製される場合、レジスタ内でビットシーケンス
をシフトするだけでよく、従って次位ビットシーケンス
は最下位ビットシーケンスの予め決められた位置を占有
する。
【0011】識別されたビットストリングは、単一のア
ドレスによってアドレス可能で予め決められたビット容
量と同じビット容量を有するレジスタ記憶装置に保持さ
れる。
【0012】一つの実施の形態では、レジスタ記憶装置
は64ビット位置を有し、ビット数は8で各拡張ビット
シーケンスは1バイト長である。
【0013】一つの構成では、第1レジスタ記憶装置は
識別されたビットストリングを有し、第2レジスタ記憶
装置は生成データストリングの連続位置を提供する。生
成データストリングを保持し識別ビットストリングに上
書きするために第1レジスタ記憶装置を使用することも
勿論可能である。
【0014】説明される実施の形態では、ビットは複数
のデータパスを介して前記隣接位置に同時に複製され
る。これによって単一のビット拡張ユニットにおけるビ
ットの同時複製が可能になる。
【0015】本発明は、更にコンピュータを動作させる
方法を提供しており、その方法は、データストリングの
サブストリングを形成する少なくとも一つのビットシー
ケンスをデータ記憶装置に保持し、更に、少なくとも一
つの拡張インストラクションを含むインストラクション
シーケンスを実行し、拡張インストラクション又は各拡
張インストラクションは単一のアドレスによってアドレ
ス可能な予め決められたビット容量を有するレジスタ記
憶装置の複数の隣接位置に前記少なくとも一つのビット
シーケンスの各ビットを複製し、前記ビット容量にマッ
チするビット長を有し各々が複数の前記複製ビットを有
する複数の拡張ビットシーケンスからなる新しいデータ
ストリングを生成する。
【0016】更なる態様では、本発明はプロセッサ、メ
モリ及び各々がデータストリング内にサブストリングを
形成するビットシーケンスを保持するデータ記憶回路を
有するコンピュータを提供しており、前記コンピュータ
は、前記メモリにインストラクションシーケンスを記憶
し、前記インストラクションシーケンスは、データスト
リング内の前記サブストリングの一つを選択し、選択し
たサブストリングの各ビットを複数の隣接位置に複製し
て各々が複数の複製ビットを有する複数のサブストリン
グからなる新たなデータストリングを生成する第1イン
ストラクション及びデータストリング内の前記サブスト
リングの識別なしで新しいデータストリングの少なくと
も幾つかのサブストリングに共通動作を指定する第2イ
ンストラクションを含む。
【0017】本発明はコンピュータを動作させる方法も
提供しており、その方法は、各々がデータストリングの
複数のサブストリングの一つを形成する複数のビットシ
ーケンスをデータ記憶装置に保持し、第1インストラク
ションを実行してデータストリング内の前記サブストリ
ングのうちの少なくとも一つを選択し、選択サブストリ
ングの各ビットを複数の隣接位置に複製して各々が複数
の複製ビットを含む複数のサブストリングからなる新し
いデータストリングを生成し、第2インストラクション
を実行してデータストリング内の前記サブストリングの
識別なしで新しいデータストリングの少なくとも幾つか
のサブストリングに共通動作を指定する。
【0018】ビット拡張ユニットにおいて、データスト
リングは入力バッファに保持され、新しいデータストリ
ングは、選択されたサブストリングのビットを入力バッ
ファと出力バッファとの間に配置される複数のデータパ
スを介して同時に複製することによって出力バッファで
生成される。
【0019】有益な共通動作は新しいデータストリング
の少なくとも幾つかのサブストリングと別のデータスト
リングとの間のビット毎のAND処理である。
【0020】本発明は、第1及び第2ディスプレイ領域
を有するディスプレイにおける複数のピクセルのディス
プレイ状態を画定するピクセル値のセットを生成するた
めに使用される場合に特に有益である。本発明の更なる
態様に従うと、このような方法は、複数のビットを含む
ビットシーケンスをコンピュータ記憶装置で識別し、各
ビットはそのビットによって表されるピクセルが第1デ
ィスプレイ領域又は第2ディスプレイ領域のどちらにあ
るかを示し、前記ビットシーケンスの各ビットを複数の
隣接位置に複製することによって前記ビットシーケンス
からデータストリングを生成し、前記データストリング
は各々が複数の前記複製ビットを有する前記複数の拡張
ビットシーケンスからなり、ロジカルAND動作を使用
して前記データストリングを少なくとも一つの他のデー
タストリングと組み合わせ、該他のデータストリング
は、各々が前記拡張ビットシーケンスのビット数と同じ
ビット数を有する複数のビットシーケンスからなり、該
他のデータストリングの各ビットシーケンスは第1及び
第2ディスプレイ領域のうちの一つのカラーを表し、そ
のディスプレイ領域の第1ピクセル表示を生成し、前記
第1ピクセル表示は前記ピクセル値のセットを提供す
る。
【0021】前記データストリングはロジカルAND動
作を使用して第2の他のデータストリングとも組み合わ
せられて第2ピクセル表示を生成し、前記第1及び第2
ピクセル表示はロジカルOR動作を使用して組み合わさ
れて前記ピクセル値のセットを生成する。
【0022】第1及び第2ディスプレイ領域は種々の異
なる効果を達成するように画定される。一つの構成で
は、第1領域は第2領域にクリップマスクを画定する。
クリップマスクはその中で画像が画定されるディスプレ
イのゾーンを画定する。
【0023】別の構成では、第1及び第2領域はスティ
ップルパターンに従って二つの異なるカラーの領域を埋
めるように画定されることができる。ある慣例では、ス
ティップルパターンがフォアグランドカラーにおいて画
定され、バックグランドカラーはフォアグランドカラー
とは異なる。
【0024】別の一般的なアプリケーションは、バック
グランド領域上にフォアグランドカラーのキャラクタ又
は画像を画定することである。
【0025】
【発明の実施の形態】本発明をより理解し、どのように
実行されるかを示すために、添付図面を例として参照さ
れる。
【0026】図1は本発明の第1実施の形態に従ったプ
ロセッサを示す。プロセッサは三つの実行ユニットを有
し、これらのユニットは従来通りの演算ユニット2及び
メモリアクセスユニット4を有する。更に、パック演算
ユニット6も有する。プロセッサはインストラクション
フェッチャー8、インストラクションレジスタ10、レ
ジスタファイル12及びインストラクションポインタ1
4も有し、これらは全てプロセッサのコントロールユニ
ット16の制御によって動作する。レジスタファイルは
レジスタのセットを有し、各レジスタは予め決められた
ビット容量を有し、単一のアドレスでアドレス可能であ
る。レジスタ内の個々の位置にアドレスすることは出来
ない。レジスタにアクセスすると、レジスタの全体的内
容が考慮される。プロセッサは更に定数ユニット18及
び選択ユニット20を有する。定数ユニット18及び選
択ユニット20も制御ユニット16の制御によって動作
する。プロセッサはメモリ22と協働して動作し、該メ
モリはプロセッサの動作を実行するためのインストラク
ション及びデータ値を保持する。データ値及びインスト
ラクションはデータバス24を介してメモリ22へ及び
該メモリ22から与えられる。データバス24はメモリ
データ入力26を介してメモリ22へ及び該メモリ22
からデータ値を与える。データバス24はフェッチャー
データ入力28を介してインストラクションフェッチャ
ー8にデータを与え、メモリアクセス読み取り入力30
を介してメモリアクセスユニット4にデータを与える。
メモリは選択ユニット20を介してアドレス入力32で
アドレスされる。選択ユニット20は制御ユニット16
からのフェッチ信号34を介して制御されてフェッチャ
ー8からアドレス36を選択するか又はメモリアクセス
ユニット4からアドレス38を選択する。制御ユニット
16からの読み書き制御ライン40、42はメモリ22
から及び該メモリ22への読み書き動作を制御する。イ
ンストラクションフェッチャー8は制御ユニット16の
制御によってメモリ22からのインストラクションを以
下のようにフェッチする。インストラクションが読み取
られるアドレス36が選択ユニット20を介してメモリ
22に与えられる。これらのインストラクションはデー
タバス24を介してフェッチャーデータ入力28に与え
られる。インストラクションフェッチャーが次にインス
トラクションをフェッチすると、又は任意のイベントに
おいて次のインストラクションが実行可能になると、ラ
イン44を介してReady 信号が制御ユニット16に出さ
れる。実行されるインストラクションはインストラクシ
ョンラインInst46に沿ってインストラクションレジス
タ10に与えられ、実行中該レジスタに保持される。イ
ンストラクションポインタ14は、インストラクション
ポインタライン48を介してフェッチャー8から与えら
れ実行されるインストラクションのアドレスを保持す
る。制御ユニット16からのNewInst 信号53に応答し
たGet 信号47によって、インストラクションレジスタ
10はInstライン46の次のインストラクションを記憶
し、フェッチャー8は次のインストラクションの準備を
する。NewInst 信号53によってインストラクションポ
インタ14は次のインストラクションのアドレスを記憶
する。制御ユニット116からのブランチライン50に
よってフェッチャー8はブランチを実行する。
【0027】インストラクションレジスタ10は、ソー
ス1及ソース2レジスタアドレスをReg1及びReg2として
レジスタファイルに提供する。結果レジスタアドレスは
Destとして提供される。オペコードはライン51に沿っ
て制御ユニット16に与えられる。更に、幾つかのイン
ストラクションは一つの又は両方のソースレジスタをエ
ンコードする代わりに定数オペランドを与える。定数は
定数ユニット18によって提供される。インストラクシ
ョンのソース値は、入力E1,E2 でS1Reg 及びS2Reg 信号
を適切に設定することによってソース1バス52、ソー
ス2バス54に与えられる。ライン51のオペコードに
従って制御ユニット16からのPack Ops、Mem Ops 及び
ALU Ops の適切な値を提供することによって正確な実行
ユニットがイネーブルとなる。イネーブルになったユニ
ットは普通結果バス56に結果Res を与える。これは普
通レジスタファイル12の選択された結果レジスタDest
に記憶される。これには幾つかの例外がある。
【0028】幾つかのインストラクションはダブル長結
果を提供する。これらのインストラクションは結果の第
1部分を通常の方法で記憶する。連続する追加の段階で
は、結果の第2部分はDouble信号58を表すことによっ
てレジスタファイル12の次のレジスタに記憶される。
【0029】Branch50にはインストラクションポイン
タ14を読み取り且つ調節することが要求される。これ
らのBranchによってS1Reg 信号は表されないため、イン
ストラクションポインタ14はライン60にソース1の
値を提供する。ソース2の値は通常の方法で(レジスタ
ファイル12のレジスタからか又は定数ユニット18か
ら)与えられる。演算ユニット2はブランチ演算を実行
し、その結果はレジスタファイル12ではなくNew IP入
力64でフェッチャー8に記憶されて制御ユニット16
からのBranchライン50によって信号が送られる。これ
によって新しいアドレスからフェッチャーがスタートす
る。
【0030】条件ライン62の状態に応じて二つの段階
で条件ブランチが実行されなければならない。第1段階
では、ReadDest信号45を表すことによって別のソース
としてDestレジスタを使用する。条件が満たされると、
次に通常のブランチソースオペランドが読み取られブラ
ンチが実行される。
【0031】コールはリターンアドレスをセーブしなけ
ればならない。これは、ブランチターゲットを計算する
前にデスティネーションレジスタにインストラクション
ポインタ値を記憶することによって行われる。
【0032】本明細書で述べられるコンピュータは幾つ
かの重要な性質を有する。
【0033】ソースオペランドは常に自然ワード長であ
る。一つ、二つ又は三つのソースオペランドがありう
る。
【0034】結果は常に自然ワード長であるか又は自然
ワード長の2倍の長さである。自然ワード長の2倍の長
さである場合は、一つではなく二つのレジスタに記憶
し、二つのレジスタを占有する特別の段階を踏むため動
作ペナルティがある。このコンピュータでは、64ビッ
トの自然ワード長とする。つまり、レジスタファイルの
各レジスタは64ビットの予め決められた容量を有す
る。
【0035】実行ユニット2、4、6はインストラクシ
ョン実行間に何らの状態も保持しない。従って、連続す
るインストラクションは独立的である。
【0036】アンパックインストラクション 演算ユニット2及びメモリアクセスユニット4は制御ユ
ニット16と共に従来通りのインストラクションセット
の以下のインストラクションを実行することができる。
以下の定義において、レジスタは、当該技術分野の技術
者には公知であるように、レジスタの中身及び記憶位置
としてのレジスタ自体を示すために使用される。
【0037】mov 定数又はレジスタをレジスタに移
動する。 add 2個のレジスタを加算して結果を第3レジスタ
(ソースのいずれかと同様である)に記憶する。
【0038】sub 2個のレジスタを減算し結果を第
3レジスタに記憶する。 load 一つのレジスタをアドレスとして使用してメモ
リの位置から読み取り結果を別のレジスタに記憶する。
【0039】store 一つのレジスタをアドレスとして
使用し、別のレジスタの中身をアドレスによって特定さ
れた位置でメモリに記憶する。
【0040】compe 2個のレジスタ(又はレジスタと
定数)が等しいかを比較する。等しい場合、1をデステ
ィネーションレジスタに記憶し、そうでない場合はゼロ
を記憶する。
【0041】compge 2個のレジスタ(又はレジスタと
定数)の順序性を比較する。2番目が1番目より小さく
なければ、デスティネーションレジスタに1を記憶し、
そうでない場合はゼロを記憶する。
【0042】jump 新しい位置へ無条件にジャンプ
する。 jumpz 特定のレジスタの中身がゼロである場合、新し
いプログラム位置にジャンプする。
【0043】jumpnz 特定のレジスタの中身がゼロで
なければ新しいプログラム位置にジャンプする。
【0044】shr 定数又は別のレジスタによってレ
ジスタのビット毎の右シフトを実行する。符号ビットは
シフトの際複製されるため、シフトは符号が付けられ
る。
【0045】shl 定数又は別のレジスタによってレ
ジスタのビット毎の左シフトを実行して結果をデスティ
ネーションレジスタに記憶する。
【0046】or/xor 2個のレジスタでビット毎のロジ
ック動作(or/xor) を実行し、結果をデスティネーショ
ンレジスタに記憶する。
【0047】パックユニット 図2はパック演算ユニット6のブロック図を示す。これ
は別個のユニットの集合として示され、各々はパック演
算インストラクションの幾つかのサブセットに対して応
答可能である。別の実施では異なる方法で機能を組み合
わせることがあり得るかもしれない。このユニットはバ
イト複製ユニット70、ツイスト及びジップユニット7
4、明確なパック演算ユニット80及び本明細書では説
明されないが他のパック演算ユニット72、76、78
を含む。これらは演算ユニット70乃至80を選択的に
制御するルートオペコードユニット82に応答して動作
する。演算ユニット70乃至80のオペランドはソース
1バス52、ソース2バス54に沿って与えられる。演
算ユニットからの結果は結果バス56に与えられる。ル
ートオペコードユニット82へのOP入力は制御ユニット
16(図1)からのPack Opsインストラクションを受け
る。ソース1バス及びソース2バスに与えられるオペラ
ンドは演算ユニットのそれぞれの入力バッファにロード
され、結果は一つ又は二つの出力バッファからレジスタ
ファイル12の一つ又は二つのディスティネーションレ
ジスタに与えられる。
【0048】明確なパック演算 明確なパック演算ユニット80は、二つのソースオペラ
ンドを各々が幾つかのパックオブジェクトを含むものと
して扱い、二つのオペランドのオブジェクトの各ペアに
動作して各ソースと同じ数のパックオブジェクトを含む
結果を生成する。サポートされる動作は、加算、減算、
比較、乗算、左シフト、右シフト等である。上記に説明
されたように、単一のアドレスを使用してレジスタをア
ドレスすることによって、オペランドがアクセスされ
る。オペランドは個々にアドレスできない複数のオブジ
ェクトを有する。
【0049】図3はパック演算ユニット6の演算ユニッ
トを例示した図において使用される記号を示す。
【0050】図4は、パック16ビット数の加算、減
算、比較及び乗算を実行することができる明確なパック
演算ユニットを示す。この場合、ソース及び結果バスの
幅は64ビットであるため、4つのパックオブジェクト
があり、それぞれは各バスで16ビットの長さである。
【0051】明確なパック演算ユニット80は4つの演
算ロジカルユニットALU0-ALU3 を有し、各ユニットはラ
イン100のオペコードによって制御され、このライン
は図2のルートオペコードユニット82から導出され
る。ソースレジスタ1SRC1から与えられた64ビットワ
ードは4つのパックオブジェクトS1[0]-S1[3] を含む。
ソースレジスタ2SRC2から与えられた64ビットワード
は4つのパックオブジェクトS2[0]-S2[3] を含む。これ
らは第1入力バッファ90及び第2入力バッファ92に
記憶される。第1演算ロジックユニットALU0は各オペラ
ンドの第1パックオブジェクトS1[0],S2[0] に動作して
結果R[0]を生成する。第2乃至第4演算ロジックユニッ
トALU1-ALU3 も同様にオブジェクトの第2ペア乃至第4
ペアを使用してそれぞれ結果R[1]乃至R[3]を生成する。
これらは結果バッファ102に記憶される。従って、結
果ワードは4つのパックオブジェクトを含む。イネーブ
ルユニット101はユニットのうちのいくつがアクティ
ブであるべきかを決定し、出力バッファがその出力を表
すかどうかを制御する。
【0052】インストラクションは以下の通りに表され
る。 add2p 各S1[i] にその2の補数S2[i] を加えてR[i]を
生成する。オーバーフローは無視される。
【0053】sub2p 各S2[i] の2の補数S1[i] から各
S2[i] を減算してR[i]を生成する。オーバーフローは無
視される。
【0054】cmpe2p S1[i] とS2[i] を比較する。等し
い場合はR[i]を全て1に設定し、異なる場合はR[i]をゼ
ロに設定する。 cmpge2ps S1[i] と符号が付けられたその2の補数のS2
[i] を比較する。S1[i]がS2[i] より大きいかS2[i] に
等しい場合はR[i]を全てゼロに設定し、S1[i] がS2[i]
より小さければR[i]をゼロに設定する。 mul2ps S1[i] とその符号付き2の補数のS2[i] を乗
算してR[i]をフル(32ビット)プロダクトの最下位1
6ビットに設定する。
【0055】幾つかの明確なパック演算インストラクシ
ョンは、普通一つのパックソースオペランド及び一つの
アンパックソースオペランドを使用する。図5はそのよ
うなユニットを示す。
【0056】図5のパック演算ユニットの中身は、実質
的には図4の中身と同様である。唯一異なる点は、第2
ソースオペランドの入力バッファ92’はアンパック形
態のソースオペランドを受けることである。入力バッフ
ァ92’は前のようにパック形態の第1ソースオペラン
ドを受ける。アンパックソースオペランド及びパックソ
ースオペランドを使用したインストラクションの一つの
例は、シフトインストラクションであり、シフトの量は
パックされないため、全てのパックオブジェクトに対し
て同じシフトが与えられる。シフト量はアンパックであ
る必要はないが、この方がより有益である。
【0057】shl2p S1[i] をS2(パックされていな
い)だけ左にシフトしてR[i]を結果に設定する。
【0058】shr2ps 各S1[i] をS2(パックされていな
い)だけ右にシフトしてR[i]を結果に設定する。シフト
の際符号ビットが複製されるため、シフトは符号付きで
ある。
【0059】同じセットの動作がパック8ビット及びパ
ック32ビットオブジェクトに与えられることが予想さ
れる。このインストラクションは類似した名前を有する
が、"2”を "1”又は "4に置き換えたものである。
【0060】バイト複製 図6はバイト複製ユニット70を示す。バイト複製ユニ
ットは入力バッファ104を有し、このバッファは単一
のオペランドを受け、このオペランドは図6では8つの
パック8ビットオブジェクトS[0]乃至S[7]を含む64ビ
ットワードとして例示される。第1マルチプレクサ10
6は入力として第1オブジェクトS[0]及び第2オブジェ
クトS[1]を受ける。第2マルチプレクサ108は入力と
して第1オブジェクトS[0]及び第3オブジェクトS[2]を
受ける。第3マルチプレクサ110は入力として第1マ
ルチプレクサ108の出力及び第4オブジェクトS[3]を
受ける。バイト複製ユニットは出力バッファ112も有
する。出力バッファは8つの8ビットオブジェクトR[0]
乃至R[7]としてパックされた64ビットワードを保持す
る。出力バッファ112の第1及び第5の8ビット位置
は入力バッファ104の第1の8ビットに直接接続す
る。出力バッファ112の第2及び第6の8ビット位置
は、第1マルチプレクサ106の出力を受けるように接
続される。出力バッファ112の第3及び第7の8ビッ
ト位置は第2マルチプレクサ108の出力を受けるよう
に接続される。出力バッファ112の第4及び第8の8
ビット位置は第3マルチプレクサ110の出力を受ける
ように接続される。出力バッファの8ビット結果オブジ
ェクトはR[0]乃至R[7]と称される。タイプユニット11
4は図2のルートオペコードユニット82から導出され
たライン118のオペコードを受ける。タイプユニット
は複製されるオブジェクトのサイズを選択して3つの出
力信号Do8,Do16,Do32 の内の一つを与える。これらの出
力信号はORゲート120に与えられる。ORゲートの出力
によって出力バッファ112がイネーブルとなる。Do16
及びDo32信号は第2ORゲート122への入力であり、そ
の出力は第1マルチプレクサ106を制御する。Do32信
号自体が第2マルチプレクサ108及び第3マルチプレ
クサ110を制御する。従って、バイト複製ユニットは
ソースオペランドの最下位オブジェクト(8、16、又
は32ビット)を使用してそれを8、4又は2倍に複製
して出力バッファ112に保持されるパック64ビット
結果を生成する。動作は8ビットピースに分解され、S
[i]及びR[i]の各々は8ビットである。幾つかのロジッ
クが異なる複製において共有される。タイプユニット1
14は16ビットシーケンス又は32ビットシーケンス
のどちらを複製するかを決定する。Do16又はDo32のどち
らの信号も表されない場合、8ビットシーケンスが複製
される。
【0061】バイト複製ユニットによってサポートされ
る三つのインストラクションは以下の通りである。 re
plp S[0]をR[0]乃至R[7]のそれぞれに複製する。
【0062】rep2p S[0]及びS[1]をi が0から3まで
のR[2i] 及びR[2i+1] に複製して16ビットを複製す
る。
【0063】rep4p S[0]及びS[3]をi が0から1まで
のR[4i] からR[4i+3] に複製して32ビットを複製す
る。
【0064】ビット拡張 図7はビット拡張ユニット78を示す。これはソースオ
ペランドの最下位8、4又は2ビットを使用してそれぞ
れ8倍、16倍、32倍に拡張して8、16、32ビッ
トオブジェクトのパック64ビット結果を生成する。ロ
ジックパスの幾つかは異なる拡張間で共有される。
【0065】このユニットによって実行されるインスト
ラクションは以下の通りである。 mask1p ソースオペランドの最下位8ビットを8倍
に拡張して8個のパック8ビットオブジェクトからなる
64ビット結果を生成する mask2p ソースオペランドの最下位4ビットを16
倍に拡張して4個のパック16ビットオブジェクトから
なる64ビット結果を生成する mask4p ソースオペランドの最下位2ビットを32
倍に拡張して2個のパック32ビットオブジェクトから
なる64ビット結果を生成する
【0066】ビット拡張ユニット78は入力バッファ1
24を有し、この入力バッファは説明される実施の形態
ではレジスタ記憶装置から64ビットを受ける。64ビ
ットワードはSRC1で示される。図7では最初の8ビ
ットはB0からB7として個々にラベル付けされる。第
1ビットB0は第1マルチプレクサ126及び第1拡張
ユニット128の第1入力として与えられる。第1ビッ
トB0は第2マルチプレクサ127の第1入力としても
与えられる。第2ビットB1は第1マルチプレクサ12
6の第2入力及び第3マルチプレクサ130且つ第4マ
ルチプレクサ132の第1入力として与えられる。第2
ビットB1は第2マルチプレクサ127の第2入力とし
ても与えられる。
【0067】第3ビットB2は第3マルチプレクサ13
0の別の入力及び第5マルチプレクサ134の第1入力
として与えられる。
【0068】第4ビットB3は第6マルチプレクサ13
6の一つの入力及び第4マルチプレクサ132の別の入
力として与えられる。第5ビットB4から第8ビットB
7はそれぞれ第7マルチプレクサ138から第10マル
チプレクサ144の入力として与えられる。
【0069】第1マルチプレクサ126の出力は第5マ
ルチプレクサ134及び第6マルチプレクサ136の別
の入力として与えられる。第3マルチプレクサ130の
出力は第7マルチプレクサ138及び第8マルチプレク
サ140の別の入力として与えられる。第4マルチプレ
クサ132の出力は第9マルチプレクサ142及び第1
0マルチプレクサ144の別の入力として与えられる。
第2マルチプレクサ及び第5から第10マルチプレクサ
の出力は拡張ユニット146から158に与えられる。
これらの拡張ユニットの各々は単一の入力信号を有し、
入力信号の複製である8個の出力信号を生成する。拡張
ユニットからの出力信号は出力バッファ160に与えら
れ、この出力バッファは結果バイトR
〔0〕からR
〔7〕を保持する。これらはビット拡張の出力として結
果バス162を介して与えられる。タイプユニット16
4はライン118でオペコードを受け、ビット拡張ユニ
ットによって実行されるインストラクションのタイプを
選択する。タイプユニットは選択されたインストラクシ
ョンのタイプに応じて3つの信号Do8、Do16及び
Do32を出力する。Do8信号はORゲート166に
与えられ、その出力は出力バッファ160を制御する。
Do16信号はORゲート168に与えられ、その出力
はORゲート166に与えられる。Do32信号はOR
ゲート168の入力として与えられ、第1マルチプレク
サ126、第3マルチプレクサ130及び第4マルチプ
レクサ132を制御する。ORゲート168の出力は第
2マルチプレクサ127及び第5マルチプレクサ134
から第10マルチプレクサ144を制御する。これによ
って種々のロジックパスの共有が可能になる。
【0070】ビット拡張ユニットがmask1pインストラク
ションを実行する場合、結果は入力バッファ124の第
1の8ビットの各々を複製して拡張ビットシーケンスR
〔0〕からR〔7〕を生成することで得られ、各拡張ビ
ットシーケンスは結果バッファ160では1バイト長で
ある。
【0071】ビット拡張インストラクションの使用の一
つの例はフォント拡張である。このインストラクション
のアプリケーションを例示した図8が参照される。キャ
ラクタ等のフォントは普通ピクセル毎に1ビットを使用
してメモリに保存され、ゼロはバックグランドを示し、
1はフォアグランドを示す。例えば図8ではキャラクタ
Aが示され、このキャラクタはゼロのバックグランド上
に1のフォアグランドで画定されている。しかしなが
ら、ビデオディスプレイデバイスは幾つかのカラーを同
時にディスプレイするために幾つかのビットを使用して
起動されてディスプレイに各ピクセルを画定する。8又
は32ビットがピクセルを画定するビットシーケンスの
一般的な長さである。
【0072】図8に示された方法で保存されているフォ
ントをディスプレイデバイスに表示するためには、圧縮
フォント情報をピクセル当たりに必要なビット数に拡張
してデバイスを起動する必要がある。上記に述べられた
ビット拡張インストラクションがこれに関連して使用さ
れてマスクを生成し、このマスクはフォアグランドカラ
ーが配置される1及びバックグランドカラーが配置され
る0からなる。これらのマスクはフォアグランドカラー
及びバックグランドカラーの表示と組み合わされてディ
スプレイデバイスにキャラクタを表示するためのピクセ
ル値のセットを生成する。
【0073】図8では保存したフォントの各行を画定す
るビットシーケンスが抽出される。図8では第3行が抽
出されている。インストラクションは既に行1及び行2
に実行されたことが理解される。第3行を表す8ビット
シーケンスはレジスタファイルのレジスタの最下位ビッ
ト位置に読み出される。ビット拡張インストラクション
の実行の際、レジスタの内容はビット拡張ユニットの入
力バッファに読み出される。これによって図8に図解で
示される拡張動作が実行される。ビット拡張ユニットの
出力バッファ160の内容は結果R
〔0〕−R〔7〕と
して図8に表される。
【0074】結果の拡張ビットシーケンスR
〔0〕−R
〔7〕はロジカルAND動作を使用してフォアグランド
表示Rep1と組み合わされてフォアグランドピクセル
値のセットを生成する。拡張ビットシーケンスもロジカ
ルAND動作を使用してバックグランド表示Rep2と
組み合わされてバックグランドピクセル値のセットを生
成する。
【0075】最後にフォアグランドピクセル値のセット
及びバックグランドピクセル値のセットはロジカルOR
動作を使用して組み合わされてディスプレイデバイスを
起動させるピクセル値のセットを形成する。
【0076】フォアグランド表示はビットシーケンスの
セットからなり、各ビットシーケンスは結果R
〔0〕−
R〔7〕の拡張ビットシーケンスと同じ長さを有しフォ
アグランドカラーを表す。フォアグランド表示は前述の
複製インストラクションをフォアグランドバイトに適用
することによって生成される。バックグランド表示も同
様にして得られる。これは単一のフォアグラントバイト
Fore及びBackに適用されるワード複製の使用に
よって図解で図8に示されている。
【0077】上記に説明された動作を実行するためのコ
ードシーケンスは外1に示される。
【0078】
【外1】
【0079】バックグランドがトランスペアレントであ
る場合、スクリーンはアップデートされる前に読み出さ
れなければならず、その内容はバックグランド情報を生
成するために使用される。この場合、外1のシーケンス
におけるループコードは以下の外2のシーケンスにおけ
るループコードに置き換えられる。
【0080】
【外2】
【0081】ビット拡張インストラクションの別のアプ
リケーションは、その中で画像が画定されるディスプレ
イの領域であるクリップマスクを画定することである。
【0082】図9はこのインストラクションのアプリケ
ーションを例示している。
【0083】円の3/4の形態であるクリップマスクC
Mは図9の一番上に示されている。クリップマスクはデ
ータ記憶装置において1ピクセル当たり1ビットとして
画定される。ブラック領域(1)はクリップマスクを画
定し、バックグランドは0で表される。
【0084】図9中の次の図はクリップマスク内のディ
スプレイに画定されるオブジェクト0の保存表示であ
る。オブジェクトは三角形である。このオブジェクトは
複数のビットシーケンスを有するピクセル表示として画
定され、各ビットシーケンスはピクセルを画定し8ビッ
トの長さを有する。
【0085】図9中のその次の図は原ディスプレイOD
であり、これは表示される複数の異なるカラーを有して
示され、各ピクセルは8ビットのビットシーケンスによ
って画定されている。
【0086】クリップマスク内に三角形を表示するため
に、最初に拡張インストラクションがクリップマスクの
各行に与えられる。図9では第6行目に実行されている
のが示されており、同じ動作が1行目から5行目に既に
実行されていることが理解される。ビット拡張インスト
ラクションR
〔0〕−R〔7〕の結果はロジカルAND
動作を使用して画定されたオブジェクトの対応する行R
ep1と組み合わされる。この動作は図9に示される第
2データストリングを生成する。ビット拡張インストラ
クションの結果はロジカルNAND動作を使用して原デ
ィスプレイの6行目(Rep2)とも組み合わされて図
9の第3データストリングを生成する。最後に第2及び
第3データストリングはロジカルOR動作を使用して組
み合わされて新しいディスプレイのためのピクセル値の
セットを生成する。これらの動作の結果は図9中の最後
の図に示され、これは新しいディスプレイNDを表す。
【0087】ビット拡張インストラクションの別のアプ
リケーションは、スティップルパターンに従って二つの
異なるカラーを有する領域を埋めることである。これを
例示した図10が参照される。
【0088】図10では、第1図はピクセル当たり1ビ
ットとしてメモリに保存されるスティップルパターンS
Pを表す。スティップルパターンはゼロのバックグラン
ドにブラック(1)で画定される。
【0089】スティップルパターンカラーシーケンスR
ep1は、複製インストラクションを使用して各々が8
ビット長の8ビットシーケンスとして生成される。保存
されたスティップルパターンの各行にビット拡張インス
トラクションが実行される。図10では、5行目が拡張
されているところが示されており、イベントの同じシー
ケンスが既に1行目から4行目に対して実行されたこと
が理解される。ビット拡張インストラクションの結果R
〔0〕−R〔7〕はロジカルAND動作を使用してステ
ィップルパターンのカラーシーケンスRep1と組み合
わされて図10に示される第2データストリングを生成
する。
【0090】原ディスプレイODは図10中の3番目の
図に示されている。原ディスプレイの対応する行5(R
ep2)はロジカルNAND動作を使用して拡張ビット
シーケンスと組み合わされて図10における第3データ
ストリングを生成する。最後に、第2及び第3データス
トリングはロジカルOR動作を使用して組み合わされて
新しいディスプレイに対応する行5を生成する。従っ
て、複製カラーシーケンスによって画定された必要なカ
ラーのスティップルパターンがディスプレイに生成され
る。
【0091】図10の例のスティップルパターンは煉瓦
積みを想像させる。スティップルパターンは、垂直及び
水平方向の両方に永久に繰り返すことができる。従っ
て、この例では、ディスプレイの煉瓦間のモルタルにカ
ラーが付けられる。
【図面の簡単な説明】
【図1】コンピュータのプロセッサ及びメモリのブロッ
ク図である。
【図2】パック演算ユニットのブロック図である。
【図3】図面において使用される記号の意味を示す。
【図4】2つのパックソースオペランドに動作する明確
なパック演算ユニットのブロック図である。
【図5】パックソースオペランド及びアンパックソース
オペランドに動作する明確な演算パックユニットのブロ
ック図である。
【図6】バイト複製ユニットを示す。
【図7】ビット拡張ユニットを示す。
【図8】ビット拡張インストラクションを使用してキャ
ラクタのピクセル値のセットを生成することを示す。
【図9】クリップマスクのビット拡張インストラクショ
ンのアプリケーションを示す。
【図10】スティップルパターンを画定するためのビッ
ト拡張インストラクションのアプリケーションを示す。
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.6,DB名) G09G 5/00 - 5/40

Claims (27)

    (57)【特許請求の範囲】
  1. 【請求項1】 単一のアドレスによってアドレス可能な
    予め決められたビット容量を有するレジスタ記憶装置に
    データストリングを生成する方法であって、 前記予め決められたビット容量よりも小さい複数のビッ
    トから成る少なくとも一つのビットシーケンスを有する
    ビットストリングを識別し、 前記ビットシーケンスの各ビットを選択し、 前記レジスタ記憶装置の複数の隣接位置に選択されたビ
    ットを複製して前記ビット容量にマッチするビット長を
    有し各々が複数の前記複製ビットを有する複数の拡張ビ
    ットシーケンスからなる前記データストリングを生成す
    る、 データストリング生成方法。
  2. 【請求項2】 前記識別されたビットストリングは、同
    じビット数を有する複数の隣接位置に位置するビットシ
    ーケンスを含み、この方法は、複製のために前記ビット
    シーケンスのうちの一つを選択することを含む、請求項
    1記載の方法。
  3. 【請求項3】 前記識別されたビットストリングは生成
    したデータストリングのビット長にマッチするビット長
    を有する、請求項2記載の方法。
  4. 【請求項4】 前記隣接位置に位置するビットシーケン
    スは、前記識別されたビットストリングの最上位ビット
    シーケンスと最下位ビットシーケンスとの間に順番に配
    置され、前記最下位ビットシーケンスのビットが複製の
    ために選択される、請求項2又は3記載の方法。
  5. 【請求項5】 前記ビットシーケンスのビットの選択の
    前に、前記識別されたビットストリングは単一のアドレ
    スによってアドレス可能で前記予め決められたビット容
    量と同じビット容量を有するレジスタ記憶装置に保持さ
    れる、前述の請求項のいずれかに従った方法。
  6. 【請求項6】 前記レジスタ記憶装置は64ビット位置
    を有し、ビット数は8で各拡張ビットシーケンスは1バ
    イト長である、前述の請求項のいずれかに従った方法。
  7. 【請求項7】 第1レジスタ記憶装置は前記識別された
    ビットストリングを保持し、第2レジスタ記憶装置は生
    成されたデータストリングの連続位置を提供する、請求
    項5又は6記載の方法。
  8. 【請求項8】 前記ビットは複数のデータパスを介して
    前記隣接位置に同時に複製される、前述の請求項のいず
    れかに従った方法。
  9. 【請求項9】 コンピュータを動作させる方法であっ
    て、その方法は、データストリングのサブストリングを
    形成する少なくとも一つのビットシーケンスをデータ記
    憶装置に保持し、 少なくとも一つの拡張インストラクションを含むインス
    トラクションシーケンスを実行し、拡張インストラクシ
    ョン又は各拡張インストラクションは単一のアドレスに
    よってアドレス可能な予め決められたビット容量を有す
    るレジスタ記憶装置の複数の隣接位置に前記少なくとも
    一つのビットシーケンスの各ビットを複製して前記ビッ
    ト容量にマッチするビット長を有し各々が前記複数の複
    製ビットを含む複数の拡張ビットシーケンスからなる新
    しいデータストリングを生成する、 コンピュータ動作方法。
  10. 【請求項10】 各々がデータストリングの複数のサブ
    ストリングの一つを形成する複数のビットシーケンスを
    前記データ記憶装置に保持することを含む、請求項9記
    載の方法。
  11. 【請求項11】 各データストリングは新しいデータス
    トリングの予め決められたビット長と同じ予め決められ
    たビット長を有する、請求項10記載の方法。
  12. 【請求項12】 サブストリングは前記データストリン
    グの最上位サブストリングと最下位サブストリングとの
    間に順序付けられたシーケンスで配置され、前記最下位
    サブストリングのビットが複製のために選択される、請
    求項10又は11記載の方法。
  13. 【請求項13】 プロセッサ、メモリ及び各々がデータ
    ストリング内にサブストリングを形成するビットシーケ
    ンスを保持するデータ記憶回路を有するコンピュータで
    あって、前記コンピュータは、前記メモリにインストラ
    クションシーケンスを保持し、前記インストラクション
    シーケンスは、データストリング内の前記サブストリン
    グの一つを選択し、選択したサブストリングの各ビット
    を複数の隣接位置に複製して各々が複数の複製ビットを
    有する複数のサブストリングからなる新しいデータスト
    リングを生成する第1インストラクションを含み、デー
    タストリング内の前記サブストリングの識別なしで新し
    いデータストリングの少なくとも幾つかのサブストリン
    グに共通動作を指定する第2インストラクションを含
    む、コンピュータ。
  14. 【請求項14】 データストリング及び新しいデータス
    トリングは共通の予め決められたビット長を有する、請
    求項13記載のコンピュータ。
  15. 【請求項15】 前記第2インストラクションの実行の
    前に前記新しいデータストリングを保持するために単一
    のアドレスによってアドレス可能な予め決められたビッ
    ト容量を有するレジスタ記憶装置を有する、請求項13
    又は14記載のコンピュータ。
  16. 【請求項16】 データストリングは入力バッファに保
    持され、新しいデータストリングは、前記入力バッファ
    と出力バッファとの間に配置される複数のデータパスを
    介して前記選択されたサブストリングのビットを同時に
    複製することによって出力バッファに生成される、請求
    項13乃至15記載のコンピュータ。
  17. 【請求項17】 前記インストラクションシーケンス
    は、データストリング内の前記サブストリングの識別な
    しで前記データストリングのサブストリングに共通動作
    を指定する更なるインストラクションを含み、前記更な
    るインストラクションは、前記インストラクションシー
    ケンスに配置されて前記第1インストラクションに先立
    って実行される、請求項13乃至16記載のコンピュー
    タ。
  18. 【請求項18】 コンピュータ動作方法であって、その
    方法は、各々がデータストリングの複数のサブストリン
    グのうちの一つを形成する複数のビットシーケンスをデ
    ータ記憶装置に保持し、第1インストラクションを実行
    してデータストリング内の前記サブストリングの少なく
    とも一つを選択し、選択サブストリングの各ビットを複
    数の隣接位置に複製して複数の複製ビットを有する複数
    のサブストリングからなる新しいデータストリングを生
    成し、第2インストラクションを実行してデータストリ
    ング内の前記サブストリングの識別なしで新しいデータ
    ストリングのうち少なくとも幾つかのサブストリングに
    共通動作を実行する、コンピュータ動作方法。
  19. 【請求項19】 第1インストラクションによって生成
    された新しいデータストリングはデータストリングのビ
    ット長にマッチする予め決められたビット長を有する、
    請求項18記載の方法。
  20. 【請求項20】 前記新しいデータストリングは前記第
    2インストラクションの実行に先立って、単一のアドレ
    スによってアドレス可能な予め決められたビット容量を
    有するレジスタ記憶装置に保持される、請求項18又は
    19記載の方法。
  21. 【請求項21】 データストリングは入力バッファに保
    持され、新しいデータストリングは、前記入力バッファ
    と出力バッファとの間に配置された複数のデータパスを
    介して前記選択サブストリングのビットを同時に複製す
    ることによって出力バッファに生成される、請求項18
    乃至20記載の方法。
  22. 【請求項22】 前記第1インストラクションの実行に
    先立って、更なるインストラクションを実行してデータ
    ストリング内の別個のサブストリングの識別なしで前記
    データストリングのサブストリングに共通動作を実行す
    る、請求項18乃至21記載の方法。
  23. 【請求項23】 第1及び第2ディスプレイ領域を有す
    るディスプレイにおける複数のピクセルのディスプレイ
    状態を画定するピクセル値のセットを生成する方法であ
    って、 複数のビットを有するビットシーケンスをコンピュータ
    記憶装置で識別し、各ビットはビットによって表される
    ピクセルが第1ディスプレイ領域にあるか又は第2ディ
    スプレイ領域にあるかを示し、 前記ビットシーケンスの各ビットを複数の隣接位置に複
    製することによって前記ビットシーケンスからデータス
    トリングを生成し、前記データストリングは、各々が複
    数の前記複製ビットを有する前記複数の拡張ビットシー
    ケンスからなり、 ロジカルAND動作を使用して前記データストリングを
    複数のビットシーケンスからなる少なくとも一つの他の
    データストリングと組み合わせ、各ビットシーケンスは
    各前記拡張ビットシーケンスと同じビット数を有し、前
    記他のデータストリングの各ビットシーケンスは第1及
    び第2ディスプレイ領域のうちの一つのカラーを表して
    そのディスプレイ領域の第1ピクセル表示を生成し、前
    記第1ピクセル表示は前記ピクセル値のセットを提供す
    る、 ピクセル値セット生成方法。
  24. 【請求項24】 前記データストリングはロジカルAN
    D動作を使用して第2の他のデータストリングとも組み
    合わされて第2ピクセル表示を生成し、前記第1及び第
    2ピクセル表示はロジカルOR動作を使用して組み合わ
    されて前記ピクセル値のセットを生成する、請求項23
    記載の方法。
  25. 【請求項25】 ディスプレイの第1領域はディスプレ
    イの第2領域内にクリップマスクを画定する、請求項2
    3又は24記載の方法。
  26. 【請求項26】 ディスプレイの第1領域は第1カラー
    のスティップルパターンを画定するために選択され、デ
    ィスプレイの第2領域は第2カラーである、請求項23
    又は24記載の方法。
  27. 【請求項27】 ディスプレイの第1領域はキャラクタ
    を画定するフォアグランド領域であり、ディスプレイの
    第2領域はバックグランド領域である、請求項23又は
    24記載の方法。
JP8180010A 1995-07-03 1996-06-20 データストリング生成方法、コンピュータ動作方法、ピクセル値セット生成方法及びコンピュータ Expired - Fee Related JP2905446B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GBGB9513515.8A GB9513515D0 (en) 1995-07-03 1995-07-03 Expansion of data
GB9513515-8 1995-07-03

Publications (2)

Publication Number Publication Date
JPH0926770A JPH0926770A (ja) 1997-01-28
JP2905446B2 true JP2905446B2 (ja) 1999-06-14

Family

ID=10777053

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8180010A Expired - Fee Related JP2905446B2 (ja) 1995-07-03 1996-06-20 データストリング生成方法、コンピュータ動作方法、ピクセル値セット生成方法及びコンピュータ

Country Status (5)

Country Link
US (1) US6100905A (ja)
EP (1) EP0752643B1 (ja)
JP (1) JP2905446B2 (ja)
DE (1) DE69625552D1 (ja)
GB (1) GB9513515D0 (ja)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6529284B1 (en) * 1998-08-07 2003-03-04 Texas Instruments Incorporated Efficient rendering of masks to a screened buffer using a lookup table
US6172623B1 (en) * 1999-03-22 2001-01-09 Rise Technology Company Efficient bit scan mechanism
WO2001016702A1 (en) 1999-09-01 2001-03-08 Intel Corporation Register set used in multithreaded parallel processor architecture
US6671797B1 (en) * 2000-02-18 2003-12-30 Texas Instruments Incorporated Microprocessor with expand instruction for forming a mask from one bit
US7681018B2 (en) * 2000-08-31 2010-03-16 Intel Corporation Method and apparatus for providing large register address space while maximizing cycletime performance for a multi-threaded register file set
US20020053017A1 (en) * 2000-09-01 2002-05-02 Adiletta Matthew J. Register instructions for a multithreaded processor
US7437724B2 (en) * 2002-04-03 2008-10-14 Intel Corporation Registers for data transfers
GB2409066B (en) * 2003-12-09 2006-09-27 Advanced Risc Mach Ltd A data processing apparatus and method for moving data between registers and memory
GB2411974C (en) * 2003-12-09 2009-09-23 Advanced Risc Mach Ltd Data shift operations
GB2409059B (en) * 2003-12-09 2006-09-27 Advanced Risc Mach Ltd A data processing apparatus and method for moving data between registers and memory
GB2411975B (en) * 2003-12-09 2006-10-04 Advanced Risc Mach Ltd Data processing apparatus and method for performing arithmetic operations in SIMD data processing
GB2409065B (en) * 2003-12-09 2006-10-25 Advanced Risc Mach Ltd Multiplexing operations in SIMD processing
GB2409064B (en) * 2003-12-09 2006-09-13 Advanced Risc Mach Ltd A data processing apparatus and method for performing in parallel a data processing operation on data elements
GB2409063B (en) * 2003-12-09 2006-07-12 Advanced Risc Mach Ltd Vector by scalar operations
GB2411973B (en) * 2003-12-09 2006-09-27 Advanced Risc Mach Ltd Constant generation in SMD processing
GB2409062C (en) * 2003-12-09 2007-12-11 Advanced Risc Mach Ltd Aliasing data processing registers
GB2409061B (en) * 2003-12-09 2006-09-13 Advanced Risc Mach Ltd Table lookup operation within a data processing system
GB2411976B (en) * 2003-12-09 2006-07-19 Advanced Risc Mach Ltd A data processing apparatus and method for moving data between registers and memory
GB2409060B (en) * 2003-12-09 2006-08-09 Advanced Risc Mach Ltd Moving data between registers of different register data stores
GB2409067B (en) * 2003-12-09 2006-12-13 Advanced Risc Mach Ltd Endianess compensation within a SIMD data processing system
GB2409068A (en) * 2003-12-09 2005-06-15 Advanced Risc Mach Ltd Data element size control within parallel lanes of processing
GB2410097B (en) * 2004-01-13 2006-11-01 Advanced Risc Mach Ltd A data processing apparatus and method for performing data processing operations on floating point data elements
GB2411978B (en) * 2004-03-10 2007-04-04 Advanced Risc Mach Ltd Inserting bits within a data word
US9557994B2 (en) * 2004-07-13 2017-01-31 Arm Limited Data processing apparatus and method for performing N-way interleaving and de-interleaving operations where N is an odd plural number
JP5306652B2 (ja) * 2004-11-03 2013-10-02 ティジックス インコーポレイテッド 集積された画像プロセッサ
US20160179520A1 (en) * 2014-12-23 2016-06-23 Intel Corporation Method and apparatus for variably expanding between mask and vector registers
US10296334B2 (en) * 2014-12-27 2019-05-21 Intel Corporation Method and apparatus for performing a vector bit gather

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5095301A (en) * 1985-11-06 1992-03-10 Texas Instruments Incorporated Graphics processing apparatus having color expand operation for drawing color graphics from monochrome data
JP2835719B2 (ja) * 1986-07-14 1998-12-14 株式会社日立製作所 画像処理装置
US4878181A (en) * 1986-11-17 1989-10-31 Signetics Corporation Video display controller for expanding monochrome data to programmable foreground and background color image data
WO1990005334A1 (en) * 1988-11-04 1990-05-17 Davin Computer Corporation Parallel string processor and method for a minicomputer
US5283561A (en) * 1989-02-24 1994-02-01 International Business Machines Corporation Color television window for a video display unit
US5119082A (en) * 1989-09-29 1992-06-02 International Business Machines Corporation Color television window expansion and overscan correction for high-resolution raster graphics displays
US5327254A (en) * 1992-02-19 1994-07-05 Daher Mohammad A Method and apparatus for compressing and decompressing image data
CA2108730C (en) * 1992-12-07 1999-10-12 James Corona Apparatus for, and methods of providing a universal format of pixels and for scaling fields in the pixels
US5442751A (en) * 1993-11-09 1995-08-15 Microsoft Corporation Method and apparatus for processing data through a register portion by portion
GB9509983D0 (en) * 1995-05-17 1995-07-12 Sgs Thomson Microelectronics Replication of data
US5675382A (en) * 1996-04-08 1997-10-07 Connectix Corporation Spatial compression and decompression for video

Also Published As

Publication number Publication date
US6100905A (en) 2000-08-08
JPH0926770A (ja) 1997-01-28
EP0752643B1 (en) 2003-01-02
DE69625552D1 (de) 2003-02-06
GB9513515D0 (en) 1995-09-06
EP0752643A1 (en) 1997-01-08

Similar Documents

Publication Publication Date Title
JP2905446B2 (ja) データストリング生成方法、コンピュータ動作方法、ピクセル値セット生成方法及びコンピュータ
JP3150286B2 (ja) データストリング生成方法、コンピュータ動作方法、コンピュータシステムによるマトリックス乗算方法、及びコンピュータ
JP3138209B2 (ja) マトリックス転置方法
JP3771968B2 (ja) コンピュータ及びコンピュータ動作方法
US5859789A (en) Arithmetic unit
US5822619A (en) System and method for restructuring data strings
US20180189066A1 (en) Processor
US5053953A (en) Apparatus for aligning arithmetic operands during fetch
US5832288A (en) Element-select mechanism for a vector processor
JP3954171B2 (ja) コンピュータにおけるスカラ値をベクトルに記入する方法
EP0755015B1 (en) Combining data values
US4823281A (en) Color graphic processor for performing logical operations
JPH07287567A (ja) 複数の独立区分と各区分からの結果を記憶するレジスタとを有する算術論理装置
JP2001504959A (ja) Riscアーキテクチャを有する8ビットマイクロコントローラ
JP2551167B2 (ja) マイクロコンピュータ
JPH0454679A (ja) 演算装置
US6552730B1 (en) Method and apparatus for bit operational process
JPS6058487B2 (ja) デ−タ処理装置
JPH07271755A (ja) データ駆動型情報処理装置
JP3696625B2 (ja) データ駆動型情報処理装置
JP3132566B2 (ja) 命令先行制御装置
KR960016401B1 (ko) 레지스터 페이지 포인터를 이용한 레지스터 페이지간의 페이지 선택회로
JP3473506B2 (ja) パイプライン処理装置
JP2024525798A (ja) 述語技術
JPH01156851A (ja) 情報処理装置

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees