JPH0762835B2 - Memory access control system - Google Patents

Memory access control system

Info

Publication number
JPH0762835B2
JPH0762835B2 JP3226154A JP22615491A JPH0762835B2 JP H0762835 B2 JPH0762835 B2 JP H0762835B2 JP 3226154 A JP3226154 A JP 3226154A JP 22615491 A JP22615491 A JP 22615491A JP H0762835 B2 JPH0762835 B2 JP H0762835B2
Authority
JP
Japan
Prior art keywords
memory
data
address
processing unit
register
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 - Lifetime
Application number
JP3226154A
Other languages
Japanese (ja)
Other versions
JPH05250253A (en
Inventor
ディー アサル マイケル
エム グッタグ カール
ヴァン アーケン ジェリー
テブット ネール
エフ ノヴァク マーク
エム プレストン トーマス
Original Assignee
テキサス インスツルメンツ インコーポレイテツド
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 テキサス インスツルメンツ インコーポレイテツド filed Critical テキサス インスツルメンツ インコーポレイテツド
Publication of JPH05250253A publication Critical patent/JPH05250253A/en
Publication of JPH0762835B2 publication Critical patent/JPH0762835B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Image Input (AREA)
  • Digital Computer Display Output (AREA)
  • Memory System (AREA)
  • Controls And Circuits For Display Device (AREA)

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、コンピュータグラフィ
ックの分野に係る。より詳細には、本発明は、コンピュ
ータメモリが、ディスプレイの各個々の画素又はピクセ
ルに対するデータを、ディスプレイにおけるそのピクセ
ルの位置に対応するメモリの位置に記憶するようなビッ
トマップ式のコンピュータグラフィックの分野に係る。
ビットマップ式のコンピュータグラフィックはダイナミ
ックランダムアクセスメモリ(DRAM)のビット当た
りのコストが低いことにより顕著な利点がある。メモリ
のビット当たりのコストが低いことから、より大きく且
つより複雑な表示をビットマップモードで形成すること
ができる。
FIELD OF THE INVENTION The present invention relates to the field of computer graphics. More particularly, the present invention relates to the field of bit-mapped computer graphics in which a computer memory stores data for each individual pixel or pixel of the display at a memory location corresponding to that pixel location in the display. Pertain to.
Bitmapped computer graphics have significant advantages due to the low cost per bit of dynamic random access memory (DRAM). Due to the lower cost per bit of memory, larger and more complex displays can be created in bitmap mode.

【0002】[0002]

【従来の技術】メモリのビット当たりのコストが減少さ
れ、ひいては、ビットマップ式のコンピュータグラフィ
ックの容量が増加されることにより、ビットマップ式メ
モリをコンピュータグラフィックの分野に効果的に利用
することのできる処理装置が必要とされている。特に、
コンピュータのメインプロセッサの制御のもとで線や円
のような簡単な図形を描くことのできる或る形式の装置
が形成されている。更に、この形式の幾つかの装置は、
ビットブロック転送(BIT−BLT又はラスタ動作と
して知られている)のための或る限定された機能を備え
ており、これは、メモリの或る位置から別の位置へ像デ
ータを転送すると共に、そのデータをメモリ内の指定位
置のデータと論理的又は演算的に組合せることを含む。
2. Description of the Related Art Bitmap memories can be effectively used in the field of computer graphics by reducing the cost per bit of memory and thus increasing the capacity of bitmap computer graphics. A processing device is needed. In particular,
Some form of device has been created that is capable of drawing simple figures such as lines and circles under the control of the computer's main processor. Furthermore, some devices of this type
It provides some limited functionality for bit block transfers (known as BIT-BLT or raster operation), which transfers image data from one location in memory to another. Logically or arithmetically combining that data with the data at the specified location in memory.

【0003】[0003]

【発明が解決しようとする問題点】線を描くと共に他の
基本的なグラフィック動作を実行する固定布線機能を有
したこれらのビットマップ制御器は、ビットマップディ
スプレイの性能要求に合致する1つの解決策を代表する
ものである。しばしば使用されている大部分のグラフィ
ック動作の幾つかを実行する内蔵アルゴリズムは、全シ
ステム性能を改善する1つの方法を提供する。然し乍
ら、有用なグラフィックシステムは、このような固定布
線式の制御器で実行される幾つかの機能に加えて、多数
の機能をしばしば必要とする。これらの付加的に要求さ
れる機能は、コンピュータの主プロセッサによりソフト
ウェアで実施させねばならない。典型的に、これらの固
定布線式のビットマップ制御器では、プロセッサがビッ
トマップメモリに対して限定されたアクセスを行なうこ
としかできず、従って、固定布線式制御器の固定された
1組の機能的な容量をソフトウェアによって増大するこ
とのできる程度が制限される。そこで、より強力なグラ
フィック制御器を提供するか或いはシステムプロセッサ
によってこのメモリへ良好なアクセスを行なえるように
するか又はその両方によって、ビットマップ式メモリの
内容を制御するという問題に対して融通性の高い解決策
を提供できれば非常に有用である。
These bitmap controllers, which have a fixed wiring function for drawing lines and performing other basic graphic operations, have been designed to meet the performance requirements of bitmap displays. It represents a solution. Built-in algorithms that perform some of the most frequently used graphics operations provide one way to improve overall system performance. However, useful graphics systems often require a large number of functions in addition to some functions performed by such fixed-wiring controllers. These additional required functions must be implemented in software by the main processor of the computer. Typically, these fixed-wired bitmap controllers only allow the processor to have limited access to the bitmap memory, and thus, a fixed set of fixed-wired controllers. Limits the extent to which the functional capacity of the can be increased by software. Thus, the flexibility to control the contents of the bitmapped memory by providing a more powerful graphics controller and / or allowing the system processor to have good access to this memory. It would be very useful if we could provide a high solution.

【0004】[0004]

【問題点を解決するための手段】本発明の特徴は、可変
の優先順位に基づいて作動するメモリ(アクセス)優先
順位制御器にある。ビットマップグラフィックシステム
においては、ビットマップメモリへのアクセスに対して
多数の装置がしばしば競合する。主として、ビットマッ
プから表示すべきデータを呼び出すためには、メモリを
周期的に読み取らねばならない。ビットマップメモリが
ダイナミックランダムアクセスメモリで形成されている
場合には、このメモリを周期的に更新しなければならな
い。更に、ビットマップメモリは、ディスプレイを制御
するためにビットマップ内のデータを操作するグラフィ
ックデータプロセッサによってアクセスされねばならな
い。更に、システムの主たるデータ処理機能を発揮する
ホストプロセッサもビットマップメモリへアクセスする
ことができる。
A feature of the present invention is a memory (access) priority controller that operates on a variable priority basis. In bitmap graphics systems, many devices often compete for access to bitmap memory. Primarily, the memory must be read periodically to retrieve the data to be displayed from the bitmap. If the bitmap memory is a dynamic random access memory, this memory must be updated periodically. In addition, the bitmap memory must be accessed by the graphics data processor that manipulates the data in the bitmap to control the display. Further, the host processor, which exhibits the main data processing function of the system, can also access the bitmap memory.

【0005】ビットマップメモリへアクセスする優先順
位についての判断は、比較的簡単である。第1の優先順
位は、ディスプレイを更新しなければならず、さもなく
ば、ディスプレイは不安定となる。次の優先順位は、一
般に、メモリをリフレッシュさせる。というのは、この
機能は、ビットマップ内のデータが失われないようにす
るからである。大部分のシステムにおいて、ホストプロ
セッサは、グラフィックデータプロセッサより高い優先
順位を有している。というのは、ホストプロセッサは、
グラフィックデータプロセッサに勝る監視能力を有して
いるからである。このような優先順位ハイアラーキの実
施は、困難なものではない。
Determining the priority of accessing the bitmap memory is relatively straightforward. The first priority is that the display must be updated or the display will be unstable. The next priority generally causes the memory to refresh. This feature ensures that the data in the bitmap is not lost. In most systems, the host processor has a higher priority than the graphics data processor. Because the host processor
This is because it has a monitoring capability superior to that of the graphic data processor. Implementation of such a priority hierarchy is not difficult.

【0006】上記のハイアラーキは、或る問題を生じ
る。このハイアラーキによれば、グラフィックデータプ
ロセッサが最も低い優先順位となる。これは、ビットマ
ップの内容を制御する装置であり、従って、ディスプレ
イの内容は、最も低い優先順位となる。これにより、デ
ィスプレイを変更する機能が比較的速度の遅いものとな
る。本発明の実施例によれば、ディスプレイの変更速度
は、可変の優先順位を用いることによって増加される。
ビットマップメモリへのアクセス要求がペンディングに
なる場合には、優先順位のハイアラーキは上記したもの
となる。然し乍ら、ペンディングのアクセス要求が他に
ない場合には、グラフィックデータプロセッサが第1の
優先順位となる。従って、ディスプレイの変更速度は、
ディスプレイのリフレッシュ、メモリのリフレッシュ及
びホストプロセッサのアクセスが比較的頻繁でない場合
に増加される。
The above hierarchy creates some problems. According to this hierarchy, the graphics data processor has the lowest priority. This is the device that controls the contents of the bitmap, so the contents of the display have the lowest priority. This makes the function of changing the display relatively slow. According to an embodiment of the invention, the changing speed of the display is increased by using a variable priority.
When the access request to the bitmap memory is pending, the priority hierarchy is as described above. However, if there are no other pending access requests, the graphics data processor will be the first priority. Therefore, the display change speed is
Increased when display refresh, memory refresh and host processor access are relatively infrequent.

【0007】本発明の効果的な実施例においては、グラ
フィックデータプロセッサの1つのメモリアクセスに多
数のメモリサイクルが要求される。このような場合、グ
ラフィックデータプロセッサのその後のアクセス要求
は、グラフィックデータプロセッサの最初のメモリアク
セス要求よりも高い優先順位となる。これは、2つ以上
の多数のメモリサイクルのメモリグラフィックアクセス
の重畳を効果的に防止する。これらのその後のメモリア
クセスサイクルは、ディスプレイのリフレッシュ、メモ
リのリフレッシュ及びホストプロセッサのアクセスより
も低い優先順位となる。従って、グラフィックデータプ
ロセッサの多数のサイクルのメモリアクセスは、メモリ
サイクル間に配置された1つ以上の優先順位の高いメモ
リアクセスとなる。このシステムは、ビットマップメモ
リへの競合するアクセス要求間で良好な兼ね合いをとる
ように働く。
In an advantageous embodiment of the invention, a memory access of the graphics data processor requires a large number of memory cycles. In such a case, subsequent access requests of the graphics data processor will have a higher priority than the initial memory access requests of the graphics data processor. This effectively prevents superposition of memory graphic accesses for multiple memory cycles of two or more. These subsequent memory access cycles are of lower priority than the display refresh, memory refresh and host processor access. Therefore, multiple cycles of memory accesses of the graphics data processor are one or more high priority memory accesses located between memory cycles. This system serves to make a good tradeoff between competing access requests to the bitmap memory.

【0008】[0008]

【実施例】本発明のこれら及び他の目的は、添付図面を
参照した以下の詳細な説明より容易に理解されよう。図
1は、本発明の原理に基づいて構成したグラフィックコ
ンピュータシステム100のブロック図である。このグ
ラフィックコンピュータシステム100には、ホスト処
理システム110、グラフィックプロセッサ120、メ
モリ130、シフトレジスタ140、ビデオパレット1
50、デジタル−ビデオコンバータ160及びビデオデ
ィスプレイ170が含まれている。
These and other objects of the invention will be readily understood by the following detailed description in conjunction with the accompanying drawings. FIG. 1 is a block diagram of a graphic computer system 100 constructed according to the principles of the present invention. The graphic computer system 100 includes a host processing system 110, a graphic processor 120, a memory 130, a shift register 140, and a video palette 1.
50, a digital-to-video converter 160 and a video display 170 are included.

【0009】ホスト処理システム110は、グラフィッ
クコンピュータシステム100用に大きな計算容量を備
えている。ホスト処理システム110は、少なくとも1
個のマイクロコンピュータ、リードオンリメモリ、ラン
ダムアクセスメモリ及び周辺機器を備えて完全なコンピ
ュータシステムを構成することが望ましい。ホスト処理
システム110は、更に、キーボード或いはマウス等の
ある形式の入力装置とディスクドライブ等のある形式の
長期間記憶装置も備えていることが望ましい。ホスト処
理システム110の構造は、一般的な公知のものである
から、ここでは、され以上詳くは述べない。ホスト処理
システム110の本質的な特徴は、本発明に関する限
り、このホスト処理システム110がユーザーに示す可
視表示の内容を決定することである。
The host processing system 110 has a large computing capacity for the graphic computer system 100. The host processing system 110 has at least one
It is desirable to configure a complete computer system with a microcomputer, read only memory, random access memory and peripherals. The host processing system 110 preferably also includes some form of input device such as a keyboard or mouse and some form of long term storage such as a disk drive. The structure of the host processing system 110 is generally known and will not be described in detail here. An essential feature of the host processing system 110, as far as the invention is concerned, is that the host processing system 110 determines the content of the visual display presented to the user.

【0010】グラフィックプロセッサ120は、特定の
ビデオ表示をユーザに与えるために、本発明により優れ
たデータ操作性を備えている。グラフィックプロセッサ
120は、ホストバス115を通じて、ホスト処理シス
テム110に両方向接続されている。本発明によれば、
グラフィックプロセッサ120は、ホスト処理システム
110からの独立データプロセッサとして作動する。然
し乍ら、グラフィックプロセッサ120は、ホストバス
115を通じたホスト処理システム110からの要求に
も応答することが予想される。グラフィックプロセッサ
120は、更に、メモリ130と通信すると共に、ビデ
オメモリバス122を通じてビデオパレット150とも
通信する。グラフィックプロセッサ120は、ビデオメ
モリバス122を通じて、ビデオRAM132内に記憶
されているデータを制御する。グラフィックプロセッサ
120は、更に、ビデオRAM132内或いはリードオ
ンリメモリ134内のいずれかに記憶されているプログ
ラムによって制御される。リードオンリメモリ134
は、1つ以上のフォント型の英文字数字キャラクタ及び
頻繁に使用される像等の各種グラフィックイメージデー
タを更に含んでいてもよい。グラフィックプロセッサ1
20は、更に、ビデオパレット150内に記憶されてい
るデータも制御する。この特徴については、以下に詳述
する。グラフィックプロセッサ120は、更に、ビデオ
制御バス124を通じて、デジタル−ビデオコンバータ
160も制御する。グラフィックプロセッサ120は、
ビデオ制御バス124を通じてデジタル−ビデオコンバ
ータ160の制御によって、ユーザに提示されるビデオ
像のフレーム当たりの走査線の本数と走査線の長さとを
制御することができる。
The graphics processor 120 has superior data manipulability in accordance with the present invention to provide a particular video display to the user. The graphic processor 120 is bidirectionally connected to the host processing system 110 via the host bus 115. According to the invention,
The graphics processor 120 operates as an independent data processor from the host processing system 110. However, it is expected that the graphics processor 120 will also respond to requests from the host processing system 110 over the host bus 115. The graphics processor 120 further communicates with the memory 130 and also with the video palette 150 via the video memory bus 122. The graphics processor 120 controls the data stored in the video RAM 132 via the video memory bus 122. The graphics processor 120 is further controlled by a program stored either in the video RAM 132 or in the read only memory 134. Read only memory 134
May further include various graphic image data such as one or more font-type alphanumeric characters and frequently used images. Graphic processor 1
The 20 also controls the data stored in the video palette 150. This feature will be described in detail below. The graphics processor 120 also controls the digital-to-video converter 160 via the video control bus 124. The graphic processor 120 is
The control of the digital-to-video converter 160 through the video control bus 124 can control the number of scan lines and the length of the scan lines per frame of the video image presented to the user.

【0011】ビデオメモリ130は、ビデオバス122
を通じてグラフィックプロセッサ120に両方向接続さ
れているビデオRAM132を含んでいると共に、リー
ドオンリメモリ134も含んでいる。ビデオRAM13
2は、前述したように、ビットマップされたグラフィッ
クデータを含んでおり、このグラフィックデータが、ユ
ーザに与えられるビデオ像を制御する。このビデオデー
タは、ビデオバス122を通じて、グラフィックプロセ
ッサ120によって操作される。更に、現在の表示スク
リーンに対応するビデオデータは、ビデオ出力バス13
6を通じてビデオRAM132からの出力である。ビデ
オ出力バス136からのデータは、ユーザに示される画
素に対応する。ビデオRAM132は、好ましい実施例
においては、本発明の譲受者であるテキサス・インスト
ゥルメンツ・コーポレーション(Texas Instruments Co
rporation)社製の複数のTMS4161 64K動的ラ
ンダムアクセス集積回路によって形成される。このTM
S4161 64K集積回路は、デュアルポートを含ん
でおり、このデュアルポートによって、表示の再生と表
示の更新とを干渉なしに行うことができる。
The video memory 130 has a video bus 122.
It includes a video RAM 132 which is bidirectionally connected to the graphics processor 120 through a read-only memory 134. Video RAM 13
2 contains bit-mapped graphic data, as described above, which control the video image presented to the user. This video data is operated by the graphic processor 120 via the video bus 122. In addition, the video data corresponding to the current display screen is displayed on the video output bus 13
6 is an output from the video RAM 132. The data from the video output bus 136 corresponds to the pixels shown to the user. Video RAM 132, in the preferred embodiment, is Texas Instruments Co., the assignee of the present invention.
RMS) TMS4161 64K dynamic random access integrated circuit. This TM
The S4161 64K integrated circuit includes a dual port, which allows playback of the display and updating of the display without interference.

【0012】シフトレジスタ140は、ビデオRAM1
30からビデオデータを受け取り、そのデータを表示ビ
ット流に構成する。このメモリは、ビデオランダムアク
セスメモリ132の典型的な構成に基づいて多数の別々
のランダムアクセスメモリ集積回路によって構成され
る。これらの集積回路の各々の出力は、典型的には、わ
ずか1ビット幅である。従って、ユーザに提示する像を
指定するための充分に高いデータ出力率を得るために
は、複数の回路からのデータを集めることが必要であ
る。シフトレジスタ140は、ビデオ出力バス136か
ら並列にロードされる。このデータは、ライン140と
直列の出力である。このようにして、シフトレジスタ1
40は、表示ビット流を構成し、この表示ビット流が、
ラスタ走査ビデオ表示内の各ドットを指定するのに充分
な高い率でビデオデータを供給する。
The shift register 140 is a video RAM 1
Receives video data from 30 and organizes the data into a display bit stream. This memory is constructed by a number of separate random access memory integrated circuits based on the typical configuration of video random access memory 132. The output of each of these integrated circuits is typically only 1 bit wide. Therefore, it is necessary to collect data from multiple circuits in order to obtain a sufficiently high data output rate to specify the image presented to the user. The shift register 140 is loaded in parallel from the video output bus 136. This data is the output in series with line 140. In this way, the shift register 1
40 constitutes a display bit stream, and this display bit stream is
It provides video data at a rate high enough to specify each dot in a raster-scan video display.

【0013】ビデオパレット150は、バス145を通
じて、シフトレジスタ140からの高速ビデオデータを
受け取る。ビデオパレット150は、メモリバス122
を通じて、グラフィックプロセッサ120からのデータ
も受け取る。ビデオパレット150は、バス145に受
け取ったデータをバス155のビデオレベル出力に変換
する。この変換は、ルック・アップテーブルによって行
われる。このルック・アップテーブルは、ビデオメモリ
バス122を通じて、グラフィックプロセッサ120に
よって指定される。ビデオパレット150の出力は、各
画素について色相と彩度とを含んでいてもよいし、各ピ
クセルについて赤、緑及び青の三原色レベルを含んでい
てもよい。ビデオメモリ132内に記憶されているコー
ドからの変換テーブルと、バス155を通じたデジタル
レベル出力とは、ビデオメモリバス122を通じて、グ
ラフィックプロセッサ120によって制御される。
Video palette 150 receives high speed video data from shift register 140 over bus 145. The video palette 150 has a memory bus 122.
Through, also receives data from the graphics processor 120. Video palette 150 converts the data received on bus 145 into a video level output on bus 155. This conversion is done by a look-up table. This look-up table is specified by the graphics processor 120 via the video memory bus 122. The output of video palette 150 may include hue and saturation for each pixel, and may include red, green and blue primary levels for each pixel. The conversion table from the code stored in the video memory 132 and the digital level output via the bus 155 are controlled by the graphics processor 120 via the video memory bus 122.

【0014】デジタル−ビデオコンバータ160は、バ
ス155を通じてビデオパレット150からデジタルビ
デオ情報を受け取る。デジタル−ビデオコンバータ16
0は、ビデオ制御バス124を通じてグラフィックプロ
セッサ120によって制御される。デジタル−ビデオコ
ンバータ160は、ビデオパレット150のデジタル出
力をビデオ出力165を通じてビデオディスプレイ17
0に供給するための希望のアナログレベルに変換するよ
うに働く。デジタル−ビデオコンバータ160は、水平
走査線当たりのピクセル数とフレーム当たりの走査線の
数とを指定するために、例えば、ビデオ制御バス124
を通じてグラフィックプロセッサ120によって制御さ
れる。グラフィックプロセッサ120内のデータは、同
期信号と帰線消去信号と帰線信号の発生を、デジタル−
ビデオコンバータ160を通じて制御する。ビデオ信号
のこれらの部分は、ビデオメモリ132内に記憶された
データによっては指定されず、希望のビデオ出力を指定
するために必要な制御信号を形成する。
Digital-to-video converter 160 receives digital video information from video palette 150 via bus 155. Digital-video converter 16
0 is controlled by the graphics processor 120 through the video control bus 124. The digital-to-video converter 160 outputs the digital output of the video palette 150 to the video display 17 via the video output 165.
Works to convert to the desired analog level to feed zero. The digital-to-video converter 160 may, for example, specify the number of pixels per horizontal scan line and the number of scan lines per frame, for example, the video control bus 124.
Is controlled by the graphic processor 120. The data in the graphic processor 120 is generated by digitally generating the sync signal, the blanking signal and the blanking signal.
It is controlled through the video converter 160. These portions of the video signal are not specified by the data stored in the video memory 132 and form the control signals necessary to specify the desired video output.

【0015】更に、ビデオディスプレイ170は、ビデ
オ出力ライン165を通じてデジタル−ビデオコンバー
タ160からのビデオ出力を受け取る。ビデオディスプ
レイ170は、グラフィックコンピュータシステムのオ
ペレータが見る指定のビデオ像を発生する。ビデオパレ
ット150、デジタル−ビデオコンバータ160及びビ
デオディスプレイ170は、2つの主要なビデオ技術に
基づいて操作されるということに注意されたい。第1の
技術では、ビデオデータが色相と彩度に関して各ピクセ
ルについて指定される。他方の技術では、赤、緑及び青
の三原色レベルが各ピクセルについて指定される。これ
らの主要な技術のどちを選択するかは、選択が可能であ
る。ビデオパレット150、デジタル−ビデオコンバー
タ160及びビデオディスプレイ170は、この技術と
両立するように構成しなければならない。然し乍ら、本
発明の原理は、グラフィックプロセッサ120の操作に
関しては、ビデオ技術のどちらを選択しても、変わりは
ない。
In addition, video display 170 receives the video output from digital-to-video converter 160 on video output line 165. Video display 170 produces a designated video image for viewing by an operator of the graphic computer system. Note that video palette 150, digital-to-video converter 160 and video display 170 operate on the basis of two major video technologies. In the first technique, video data is specified for each pixel in terms of hue and saturation. In the other technique, red, green and blue three primary color levels are specified for each pixel. It is possible to choose which of these major technologies is selected. Video palette 150, digital-to-video converter 160 and video display 170 must be configured to be compatible with this technology. However, the principles of the present invention remain the same with respect to operating the graphics processor 120 regardless of which video technology is selected.

【0016】図2は、グラフィックプロセッサ120を
更に詳細に示すものである。グラフィックプロセッサ1
20は、中央処理ユニット200、特別グラフィックハ
ードウェア210、命令キャッシュ230、ホストイン
ターフェイス240、メモリインターフェイス250、
入力/出力レジスタ260及びビデオ表示制御器270
を含んでいる。
FIG. 2 illustrates the graphics processor 120 in more detail. Graphic processor 1
20 is a central processing unit 200, special graphics hardware 210, an instruction cache 230, a host interface 240, a memory interface 250,
Input / output register 260 and video display controller 270
Is included.

【0017】グラフィックプロセッサ120の心臓部
は、中央処理ユニット200である。中央処理ユニット
200は、汎用中央処理ユニットに通常含まれる多数の
算術処理及び論理処理を含む一般データ処理を行うため
の容量を備えている。更に、中央処理ユニット200
は、単独で、或いは特別グラフィックハードウェア20
0と共に、多数の特別なグラフィック命令を制御する。
The heart of the graphics processor 120 is the central processing unit 200. The central processing unit 200 has the capacity to perform general data processing, including many arithmetic and logic operations typically included in general purpose central processing units. Further, the central processing unit 200
Stand alone or with special graphics hardware 20
Together with 0, it controls a number of special graphic instructions.

【0018】グラフィックプロセッサ120は、主バス
205を含んでおり、この主バス205は、中央処理ユ
ニット200を含むグラフィックプロセッサ120の大
部分に接続されている。中央処理ユニット200は、多
数のデータレジスタを含む1組のレジスタファイルに、
両方向レジスタバス202を通じて、両方向に接続され
ている。レジスタファイル220は、中央処理ユニット
200によって使用される時に利用可能なデータの保管
場所として作用する。以後に更に詳しく述べるように、
レジスタファイル220は、中央処理ユニット200に
よって使用される汎用レジスタを含んでいる上に、グラ
フィック命令用の暗黙のオペランドを記憶するために使
用される多数のデータレジスタを含んでいる。
The graphics processor 120 includes a main bus 205, which is connected to most of the graphics processor 120 including the central processing unit 200. The central processing unit 200 includes a set of register files containing a number of data registers,
It is connected in both directions through a bidirectional register bus 202. Register file 220 acts as a repository for available data when used by central processing unit 200. As will be described in more detail below,
Register file 220 contains general purpose registers used by central processing unit 200, as well as a number of data registers used to store implicit operands for graphic instructions.

【0019】中央処理ユニット200は、命令キャッシ
ュバス204を通じて命令キャッシュ230に接続され
ている。命令キャッシュ230は、更に、汎用バス20
5に接続されており、ビデオメモリバス122とメモリ
インターフェイス250とを通じてビデオメモリ130
からの命令ワードをロードすることもできる。命令キャ
ッシュ230の目的は、中央処理ユニット200のある
機能の実行をスピードアップすることである。反復機能
或いは中央処理ユニット200によって実行されるプロ
グラムの特定の部分内で頻繁に使用される機能は、命令
キャッシュ230内に記憶することもできる。命令キャ
ッシュバス204を通じた命令キャッシュ230へのア
クセスは、ビデオメモリ130へのアクセスよりも更に
速いものである。従って、中央処理ユニット200によ
って実行されるプログラムは、反復命令或いは頻繁に使
用される一連の命令を命令キャッシュ230内に予備的
にロードすることによってスピードアップすることがで
きる。これを行うと、これらの命令は、速く取り出すこ
とができるために、速く実行することができる。命令キ
ャッシュ230は、同一の組の命令を常に含んでいる必
要はないが、中央処理ユニット200によって実行され
るプログラムの特定の部分内で頻繁に使用される特定の
組の命令をロードすることができる。
The central processing unit 200 is connected to the instruction cache 230 through the instruction cache bus 204. The instruction cache 230 further includes the general-purpose bus 20.
5 and is connected to the video memory 130 through the video memory bus 122 and the memory interface 250.
You can also load the instruction word from The purpose of instruction cache 230 is to speed up the performance of certain functions of central processing unit 200. Iterative functions or functions that are frequently used within a particular portion of a program executed by central processing unit 200 may also be stored in instruction cache 230. Accessing the instruction cache 230 through the instruction cache bus 204 is even faster than accessing the video memory 130. Thus, the program executed by central processing unit 200 can be sped up by preloading iterative instructions or a frequently used sequence of instructions into instruction cache 230. If you do this, these instructions can execute faster because they can be fetched faster. The instruction cache 230 need not always contain the same set of instructions, but may load a particular set of instructions that are frequently used within a particular portion of a program executed by the central processing unit 200. it can.

【0020】ホストインターフェイス240は、ホスト
インターフェイスバス206を通じて中央処理ユニット
200に接続されている。ホストインターフェイス24
0は、更にホストシステムバス115を通じてホスト処
理システム110にも接続されている。ホストインター
フェイス240は、ホスト処理システム110とホスト
システムバス115との間の通信を制御刷るように作用
する。ホストインターフェイス240は、ホスト処理シ
ステム110とグラフィックプロセッサ120との間の
データ転送のタイミングを制御する。この点について
は、ホストインターフェイス240は、ホスト処理シス
テム110がグラフィックプロセッサ120に割り込む
ことを可能にするか、或いは、逆に、グラフィックプロ
セッサ120がホスト処理システム110に割り込むこ
とを可能にする。ホストインターフェイス240は、更
に、主バス205に接続されており、これによって、ホ
スト処理システム110がメモリ130内に記憶されて
いるデータを直接制御することを可能にする。典型的に
は、ホストインターフェイス240は、ホスト処理シス
テム110からグラフィックプロセッサ120へのグラ
フィック要求を通信して、ホストシステムがビデオディ
スプレイ170によって発すべき表示の種類を指定する
ことを可能にし、グラフィックプロセッサ120に希望
のグラフィック機能を実行させる。
The host interface 240 is connected to the central processing unit 200 through the host interface bus 206. Host interface 24
0 is also connected to the host processing system 110 via the host system bus 115. The host interface 240 acts to control the communication between the host processing system 110 and the host system bus 115. The host interface 240 controls the timing of data transfer between the host processing system 110 and the graphic processor 120. In this regard, the host interface 240 allows the host processing system 110 to interrupt the graphics processor 120, or vice versa. The host interface 240 is also connected to the main bus 205, which allows the host processing system 110 to directly control the data stored in the memory 130. Typically, the host interface 240 communicates graphics requests from the host processing system 110 to the graphics processor 120 to allow the host system to specify the type of display to be emitted by the video display 170, and the graphics processor 120. Lets you perform the desired graphic function.

【0021】中央処理ユニット200は、グラフィック
ハードウェアバス208を通じて特別なグラフィックハ
ードウェア210に接続されている。特別なグラフィッ
クハードウェア210は、更に、主バス205にも接続
されている。特別なグラフィックハードウェア210
は、中央処理ユニット200と共同して、特別のグラフ
ィック処理動作を実行する。中央処理ユニット200
は、その汎用データ処理機能を備えている他に、特別グ
ラフィックハードウェア210の使用を制御して、各種
の特別なグラフィック命令を実行する。これらの特別な
グラフィック命令は、ビデオRAM132のビットマッ
プされたデータの操作に係るものである。特別なグラフ
ィックハードウェア210は、中央処理ユニット200
の制御のもとで作動し、ビデオRAM132内のデータ
に関する特に有利なデータ操作を可能にする。
The central processing unit 200 is connected to special graphics hardware 210 via a graphics hardware bus 208. Special graphics hardware 210 is also connected to the main bus 205. Special graphics hardware 210
Cooperates with the central processing unit 200 to perform special graphics processing operations. Central processing unit 200
In addition to its general purpose data processing capability, it controls the use of special graphics hardware 210 to execute various special graphics instructions. These special graphic instructions relate to manipulating the bit mapped data in video RAM 132. Special graphics hardware 210 is provided for central processing unit 200.
Of the video RAM 132 and enables particularly advantageous data manipulation with respect to the data in the video RAM 132.

【0022】メモリインターフェイス250は、主バス
205に接続されており、更に、ビデオメモリバス12
2にも接続されている。メモリインターフェイス250
は、グラフィックプロセッサ120とメモリ130との
間のデータと命令の通信を制御するように作用する。メ
モリ130は、ビデオディスプレイ170を通じて表示
すべきビットマップされたデータを含むと共に、グラフ
ィックプロセッサ120の動作の制御に必要な命令とデ
ータとを含んでいる。これらの機能には、メモリアクセ
スのタイミングの制御と、データ及びメモリのマルチプ
レクサ動作制御とが含まれている。好ましい実施例にお
いては、ビデオメモリバス122は、マルチプレクサさ
れたアドレス及びデータの情報が含まれている。メモリ
インターフェイス250は、グラフィックプロセッサ1
20がメモリ130をアクセスするのに適当な時間でビ
デオメモリ122バスに適当な出力を供給できるように
する。
The memory interface 250 is connected to the main bus 205, and further, the video memory bus 12 is connected.
It is also connected to 2. Memory interface 250
Operate to control the communication of data and instructions between the graphics processor 120 and the memory 130. The memory 130 contains the bit-mapped data to be displayed through the video display 170, as well as the instructions and data necessary to control the operation of the graphics processor 120. These functions include controlling the timing of memory access and controlling the multiplexer operation of data and memory. In the preferred embodiment, the video memory bus 122 contains multiplexed address and data information. The memory interface 250 is the graphic processor 1
20 to provide the appropriate output to the video memory 122 bus at the appropriate time to access the memory 130.

【0023】グラフィックプロセッサ120は、最後
に、入力/出力レジスタ260と、ビデオ出力制御器2
70とを含んでいる。入力/出力レジスタ260は、こ
れらのレジスタ内で読み取りと書き込みとができるよう
にするために、主バス205に両方向接続されている。
入力/出力レジスタ260は、中央処理ユニット200
の通常のメモリスペース内にあることが望ましい。入力
/出力レジスタ260は、ビデオ出力制御器270の制
御パラメータを指定するデータを含んでいる。ビデオ出
力制御器270は、入力/出力レジスタ260内に記憶
されているデータに従ってデジタル−ビデオコンバータ
160を希望通りに制御できるようにビデオ制御バス1
24に信号を発する。入力/出力レジスタ260内のデ
ータには、水平走査線当たりのピクセル数と、フレーム
当たりの水平走査線数と垂直同期帰線消去信号とを指定
するためのデータが含まれている。入力/出力レジスタ
260は、フレーム飛越しの種類を指定すると共に他の
種類のビデオ制御機能を指定するためのデータを含むこ
ともできる。最後に入力/出力レジスタ260は、他の
特定の種類の入力パラメータと出力パラメータのための
保存場所である。この入力パラメータと出力パラメータ
については、後に詳しく述べる。
The graphics processor 120 finally includes an input / output register 260 and a video output controller 2.
70 and. Input / output registers 260 are bidirectionally connected to main bus 205 to allow reading and writing within these registers.
The input / output register 260 is the central processing unit 200.
It is desirable to be within the normal memory space of. Input / output register 260 contains data that specifies control parameters for video output controller 270. The video output controller 270 controls the video control bus 1 to control the digital-to-video converter 160 as desired according to the data stored in the input / output register 260.
Signal to 24. The data in the input / output register 260 includes data for specifying the number of pixels per horizontal scanning line, the number of horizontal scanning lines per frame, and the vertical synchronization blanking signal. The input / output register 260 may also contain data for specifying the type of frame interlace as well as other types of video control functions. Finally, the input / output register 260 is a storage location for other particular types of input and output parameters. The input parameters and output parameters will be described later in detail.

【0024】グラフィックプロセッサ120は、2つの
異なるアドレスモードでアドレスメモリ130に作用す
る。これら2つのアドレスモードとは、XYアドレスモ
ードとリニアアドレスモードである。グラフィックプロ
セッサ120がビットマップされたグラフィックデータ
と通常のデータ及び命令の両方で動作するため、アドレ
スメモリ130の異なる部分を、最も好都合には異なる
アドレスモードによってアドレスすることができる。選
択された特定のアドレスモードとは無関係に、メモリイ
ンターフェイス250は、アクセスすべき適当なデータ
のための適当な物理アドレスを発生する。リニアアドレ
スモードにおいては、フィールドの開始アドレスは単一
のマルチビットリニアアドレスで形成される。フィール
ドのサイズは、中央処理ユニット200の状態レジスタ
内のデータによって定められる。XYアドレスモードに
おいては、開始アドレスは一対のX及びYの座標値であ
る。フィールドのサイズは、ピクセルのサイズ、即ち特
定のピクセルの特定のデータを指定するのに必要なビッ
トの数と等しい。
The graphics processor 120 operates on the address memory 130 in two different address modes. These two address modes are the XY address mode and the linear address mode. Because the graphics processor 120 operates on both bitmapped graphics data and regular data and instructions, different parts of the address memory 130 can be addressed most conveniently by different address modes. Regardless of the particular address mode selected, the memory interface 250 will generate the appropriate physical address for the appropriate data to be accessed. In the linear address mode, the starting address of the field is formed by a single multi-bit linear address. The size of the field is defined by the data in the status register of central processing unit 200. In the XY address mode, the start address is a pair of X and Y coordinate values. The size of the field is equal to the size of the pixel, ie the number of bits needed to specify the particular data of a particular pixel.

【0025】図3は、XYアドレスモードによるピクセ
ルデータの構成を示すものである。同様に、図4には、
リニアアドレスモードによる類似のデータの構成を示す
ものである。図3は、ピクセルのXYマトリクスの基準
点として作用する原点310を示す。原点310は、X
Y開始アドレスとして指定されるが、メモリ内の最初の
アドレス位置である必要はない。ピクセルのアレイに対
応するデータの位置、例えば、特定に定められた像エレ
メントは、原点アドレス310と関連して指定れる。こ
れには、X開始アドレス340とY開始アドレス330
とが含まれる。X開始アドレス340とY開始アドレス
330とが、原点と共に、希望する特定の像の最初のピ
クセルデータ371の開始アドレスを示す。ピクセルの
像の幅は、量デルタX350によって示される。ピクセ
ルの像の高さは、量デルタY360によって示される。
図3に示す例では、像は、参照番号371ないし379
で示す9つのピクセルを含んでいる。これらの各ピクセ
ルの物理アドレスを指定するために必要な最後のパラメ
ータは、多数のビットのメモリの幅を示すスクリーンピ
ッチ320である。これらのパラメータ、特に、X開始
アドレス340、Y開始アドレス330、量デルタX3
50、量デルタY360及びスクリーンピッチ320の
指定により、メモリインターフェイス250が指定され
たXYアドレス技術に基づいて指定された物理アドレス
を備えることが可能になる。
FIG. 3 shows the structure of pixel data in the XY address mode. Similarly, in FIG.
It shows a structure of similar data in the linear address mode. FIG. 3 shows an origin 310 that serves as a reference point for the XY matrix of pixels. Origin 310 is X
Specified as the Y start address, but need not be the first address location in memory. The location of the data corresponding to the array of pixels, eg, the specifically defined image element, is designated in association with the origin address 310. This includes an X start address 340 and a Y start address 330.
And are included. The X start address 340 and the Y start address 330, together with the origin, indicate the start address of the first pixel data 371 of the particular image desired. The width of the image of a pixel is indicated by the quantity Delta X350. The image height of the pixel is indicated by the quantity delta Y360.
In the example shown in FIG. 3, the images are designated by reference numerals 371-379.
It contains 9 pixels shown by. The last parameter needed to specify the physical address of each of these pixels is the screen pitch 320, which indicates the width of the memory in bits. These parameters, in particular X start address 340, Y start address 330, quantity delta X3
The designation of 50, the amount delta Y 360 and the screen pitch 320 allows the memory interface 250 to have a designated physical address based on a designated XY addressing technique.

【0026】図4は、同様に、リニアな形式のメモリ構
成を示すものである。1組のフィールド441ないし4
46が図4に示されている。この1組のフィールド44
1ないし446は、図3に示すピクセル371ないし3
76と同一であってもよい。以下のパラメータは、リニ
アなアドレス技術に従って特定の素子を指定するのに必
要である。第1のパラメータは、希望のアレイの最初の
フィールド441の最初のリニア開始アドレスである開
始アドレス410である。第2のパラメータは、多数の
ビットのフィールドの特定のセグメントの長さを示す量
デルタX420である。第3のパラメータは、特定のア
レイの特定のセグメントの数を示す量デルタY(図4に
は示さず)である。最後のパラメータは、近隣のアレイ
セグメント間のリニア開始アドレスの相違を示すリニア
ピッチ430である。XYアドレスモードの場合と同様
に、これらのリニアアドレスパラメータの指定により、
メモリインターフェイス250が指定される適当な特定
の物理アドレスを発生できるようにする。
Similarly, FIG. 4 shows a linear format memory configuration. A set of fields 441-4
46 is shown in FIG. This set of fields 44
1 to 446 are pixels 371 to 3 shown in FIG.
It may be the same as 76. The following parameters are needed to specify a particular device according to the linear addressing technique. The first parameter is the start address 410, which is the first linear start address of the first field 441 of the desired array. The second parameter is the quantity delta X420 which indicates the length of a particular segment of a multi-bit field. The third parameter is the quantity delta Y (not shown in FIG. 4) that indicates the number of particular segments in a particular array. The final parameter is the linear pitch 430, which indicates the linear start address difference between neighboring array segments. As in the XY address mode, by specifying these linear address parameters,
Allows memory interface 250 to generate the appropriate specific physical address to be designated.

【0027】2つのアドレスモードは、異なった目的に
有効である。XYアドレスモードは、スクリーンメモリ
と称される、ビデオRAM132のビットマップデータ
を含む部分に最も有用である。このスクリーンメモリ
は、表示を制御するメモリの一部分である。リニアアド
レスモードは、命令や現在表示されていない像データ等
のオフ・スクリーンメモリに最も有用である。この後者
の種類には、英文字数字型フォント及び像等のコンピュ
ータシステムによって使用される種々の標準記号が含ま
れている。時には、XYアドレスをリニアアドレスに変
換することができることが望ましいことである。この変
換は、次の式に従って行う。
The two addressing modes serve different purposes. The XY address mode is most useful for the portion of the video RAM 132 that contains the bitmap data, called the screen memory. This screen memory is part of the memory that controls the display. The linear addressing mode is most useful for off-screen memory of instructions, image data not currently displayed, etc. This latter type includes various standard symbols used by computer systems such as alphanumeric fonts and images. At times, it is desirable to be able to translate XY addresses into linear addresses. This conversion is performed according to the following formula.

【0028】 LA=OFF+(Y×SP)+(X×PS) ここで、LAはリニアアドレスであり、OFFは、XY
座標系の原点のリニアアドレスであるスクリーンオフセ
ットであり、SPはビット単位のスクリーンピッチであ
り、XはXアドレスであり、PSはビット単位のピクセ
ルサイズである。どちらのアドレスモードを使用するか
に拘りなく、メモリ250は、メモリ130へのアクセ
スに適した物理アドレスを発する。
LA = OFF + (Y × SP) + (X × PS) Here, LA is a linear address, and OFF is XY.
The screen offset is a linear address of the origin of the coordinate system, SP is the screen pitch in bits, X is the X address, and PS is the pixel size in bits. Regardless of which address mode is used, the memory 250 issues a physical address suitable for accessing the memory 130.

【0029】図5は、メモリ130のデータワード内へ
のピクセル保存方法を示すものである。本発明の好まし
い実施例によれば、メモリ130は、16ビット毎のデ
ータワードによって構成されている。これらの16ビッ
トは、図5に、16個のディジットOないしFで概略的
に示されている。本発明の好ましい実施例によれば、メ
モリ130内のピクセル当たりのビット数は、2の累乗
の数であるが、16ビットは越えない。このように限定
されるので、メモリ130内の各16ビットワードは、
整数の、そのようなピクセルを含むことができる。図5
は、1ビット、2ビット、4ビット、8ビット及び16
ビットのピクセル長にそれぞれ対応する5つの利用可能
なピクセルを示すものである。データワード510は、
16個の1ビットピクセル511ないし526を示すも
のであり、これによって、16個の1ビットピクセルを
各々の16ビットデータワード内に配置することができ
る。データワード530は、16ビットデータワード内
に配置される8個の2ビットピクセル531ないし53
8を示すものである。データワード540は、16ビッ
トデータワード内に配置される4個の4ビットピクセル
541ないし544を示すものである。データワード5
50は、16ビットデータワード内に配置される2個の
8ビットピクセル551ないし552を示すものであ
る。最後に、データワード560は、16ビットデータ
内に配置される1個の16ビットピクセル561を示す
ものである。各ピクセル、特に、2の累乗の整数のビッ
ト数で物理ワード境界に配列された各ピクセルをこのよ
うな形式で供給することにより、グラフィックプロセッ
サ120を通じてのピクセル操作性が高められる。これ
は、物理ワードを処理することで整数のピクセルを操作
することになるからである。ビデオ表示を指定するビデ
オRAM132内の部分で各ピクセルの水平走査線が図
5に示されるような一連の連続的なワードによって割り
当てられるということが理解されよう。
FIG. 5 illustrates a method of storing pixels in a data word of memory 130. According to the preferred embodiment of the present invention, the memory 130 is organized by 16-bit data words. These 16 bits are schematically represented in FIG. 5 by the 16 digits O through F. In accordance with the preferred embodiment of the present invention, the number of bits per pixel in memory 130 is a power of 2 but does not exceed 16 bits. Because of this limitation, each 16-bit word in memory 130 is
An integer number of such pixels can be included. Figure 5
Is 1 bit, 2 bits, 4 bits, 8 bits and 16
Figure 5 shows five available pixels, each corresponding to a pixel length of bits. The data word 510 is
Sixteen 1-bit pixels 511-526 are shown, which allows 16 1-bit pixels to be placed in each 16-bit data word. Data word 530 includes eight 2-bit pixels 531 to 53 arranged in a 16-bit data word.
8 is shown. Data word 540 illustrates four 4-bit pixels 541-544 arranged in a 16-bit data word. Data word 5
50 shows two 8-bit pixels 551 to 552 arranged in a 16-bit data word. Finally, the data word 560 shows one 16-bit pixel 561 arranged in 16-bit data. Providing each pixel, particularly each pixel arranged on a physical word boundary with an integer number of powers of 2 bits, in this manner enhances pixel manipulability through the graphics processor 120. This is because processing a physical word involves manipulating an integer number of pixels. It will be appreciated that in the portion of the video RAM 132 that specifies the video display, the horizontal scan line for each pixel is assigned by a series of consecutive words as shown in FIG.

【0030】図6は、種々のグラフィック命令用の暗黙
のオペランドを記憶するレジスタファイル220のある
部分の内容を示すものである。図6に示すレジスタ60
1ないし611の各々は、グラフィックプロセッサ12
0の中央処理ユニット200のレジスタアドレススペー
スにある。図6に示すこれらのレジスタファイルは、可
能なレジスタを全てレジスタファイル220内に含むた
めのものではないということに注意されたい。対照的
に、典型的なシステムは、中央処理ユニット200によ
って各種のプログラム指定機能用に採用することのでき
る多数の汎用未指定レジスタを含んでいる。
FIG. 6 shows the contents of a portion of the register file 220 that stores implicit operands for various graphic instructions. Register 60 shown in FIG.
Each of 1 to 611 is a graphics processor 12
0 in the central processing unit 200 register address space. Note that these register files shown in FIG. 6 are not meant to contain all possible registers in register file 220. In contrast, a typical system includes a number of general purpose unspecified registers that can be employed by central processing unit 200 for various programmed functions.

【0031】レジスタ601は、ソースアドレスを記憶
する。このアドレスは、ソースアレイの左下角のアドレ
スである。このソースアドレスは、XYアドレスモード
におけるXYアドレス340とYアドレス330との組
合せであるか、或いは、リニアアドレスモードにおける
リニア開始アドレス410である。レジスタ602は、
ソースピッチ、即ち、ソースアレイの隣接する列の間の
リニア開始アドレスの差を記憶する。このソースピッチ
は、XYアドレス形式とリニアアドレス形式のどちらを
採用するかによって、図3に示すソースピッチ340と
なるか、或いは、図4に示すリニアピッチ430とな
る。
The register 601 stores the source address. This address is the address in the lower left corner of the source array. The source address is a combination of the XY address 340 and the Y address 330 in the XY address mode, or the linear start address 410 in the linear address mode. Register 602 is
The source pitch, i.e. the difference in linear starting address between adjacent columns of the source array, is stored. The source pitch is the source pitch 340 shown in FIG. 3 or the linear pitch 430 shown in FIG. 4 depending on which of the XY address format and the linear address format is adopted.

【0032】レジスタ603及びレジスタ604は、こ
れらのレジスタが先行開始アドレスと先行ピッチとを含
んでいることを除いては、レジスタ601及びレジスタ
602にそれぞれ類似している。レジスタ603に記憶
されている行先開始アドレスは、XYアドレスモード又
はリニアアドレスモードの行先アレイの左下角のアドレ
スである。同様に、レジスタ604に記憶されている行
先ピッチは、隣接する列の間のリニア開始アドレスの差
である。換言すれば、行先ピッチは、選択するアドレス
モードによってスクリーンピッチ320或いはリニアピ
ッチ340のいずれかとなる。
Registers 603 and 604 are similar to registers 601 and 602, respectively, except that they contain a leading start address and a leading pitch. The destination start address stored in the register 603 is the address at the lower left corner of the destination array in XY address mode or linear address mode. Similarly, the destination pitch stored in register 604 is the difference in the linear start address between adjacent columns. In other words, the destination pitch will be either the screen pitch 320 or the linear pitch 340 depending on the address mode selected.

【0033】レジスタ605は、オフセットを記憶す
る。オフセットは、XYアドレス座標系の原点に対応す
るリニアビットアドレスである。前述したように、XY
アドレス機構の原点310は、メモリの物理開始アドレ
スである必要はない。レジスタ605に記憶されたオフ
セットは、このXY座標系の原点310のリニア開始ア
ドレスである。このオフセットは、リニアアドレスとX
Yアドレスとの間の変換に用いられる。
The register 605 stores the offset. The offset is a linear bit address corresponding to the origin of the XY address coordinate system. As mentioned above, XY
The address mechanism origin 310 need not be the physical start address of the memory. The offset stored in the register 605 is the linear start address of the origin 310 of this XY coordinate system. This offset is the linear address and X
Used for conversion to and from the Y address.

【0034】レジスタ606及びレジスタ607は、ス
クリーンメモリ内のウィンドウに対応するアドレスを記
憶する。レジスタ606に記憶されているウィンドウ開
始アドレスは、ディスプレイウィンドウの左下角のアド
レスである。同様に、レジスタ607は、このディスプ
レイウィンドウの右上角のXYアドレスであるウィンド
ウエンドを記憶する。これら2つのレジスタ内の各アド
レスは、指定されたディスプレイウィンドウの境界を定
めるために用いられる。グラフィックディスプレイ内の
ウィンドウ内の像は、公知のグラフィック技術に従っ
て、背景の像と異なるものとすることができる。これら
のレジスタ内に含まれるウィンドウ開始アドレスとウィ
ンドウ終了アドレスは、特定のXYアドレスがウィンド
ウの内側にあるか外側にあるかをグラフィックプロセッ
サ120が定めることができるようにウィンドウの範囲
を指定するのに用いられる。
Registers 606 and 607 store the addresses corresponding to the windows in screen memory. The window start address stored in the register 606 is the address in the lower left corner of the display window. Similarly, register 607 stores the window end, which is the XY address in the upper right corner of this display window. Each address in these two registers is used to demarcate a specified display window. The image in the window in the graphic display can be different from the background image according to known graphic techniques. The window start and window end addresses contained in these registers are used to specify a window range so that the graphics processor 120 can determine whether a particular XY address is inside or outside the window. Used.

【0035】レジスタ608は、デルタY/デルタXデ
ータを記憶する。このレジスタ608は、2つの独立し
た半部分に分けられ、上半分(高位ビット)はソースア
レイ(デルタY)の高さを指定し、下半分(低位ビッ
ト)はソースアレイ(デルタX)の幅を指定する。レジ
スタ608に記憶されているデルタY/デルタXデータ
は、ソースアレイが指定された方法によってXYアドレ
ス形成或いはリニアアドレス形成のいずれかで供給する
ことができる。2つの量デルタX及びデルタYの意味に
ついては、図3及び図4に共に、前に述べられている。
Register 608 stores delta Y / delta X data. This register 608 is divided into two independent halves, the upper half (high order bit) specifying the height of the source array (delta Y) and the lower half (low order bit) width of the source array (delta X). Is specified. The Delta Y / Delta X data stored in register 608 can be provided in either XY addressing or linear addressing depending on how the source array is specified. The meaning of the two quantities Delta X and Delta Y has been previously described in both FIGS. 3 and 4.

【0036】レジスタ609及びレジスタ610は、各
々がピクセルデータを含んでいる。レジスタ609に記
憶されている色0データは、第1色指定色0に対応する
レジスタ全体にわたって複写されるピクセル値を含んで
いる。同様に、レジスタ610に記憶されている色1デ
ータは、第2色値指定色1に対応するレジスタ全体にわ
たって複写されるピクセル値を含んでいる。グラフィッ
クプロセッサ120のあるグラフィック命令は、そのデ
ータ操作に、上記の色値のいずれか或いは両方を用いて
いる。これらのレジスタの使用については、後に詳しく
述べる。
Registers 609 and 610 each contain pixel data. The color 0 data stored in the register 609 includes the pixel value copied over the entire register corresponding to the first color designation color 0. Similarly, the color 1 data stored in the register 610 contains the pixel value copied over the entire register corresponding to the second color value designated color 1. Certain graphics instructions in the graphics processor 120 use either or both of the above color values to manipulate their data. The use of these registers will be described in detail later.

【0037】更に、レジスタファイル220は、スタッ
クポインタアドレスを記憶するレジスタ611を含んで
いる。レジスタ611に記憶されているスタックポイン
タアドレスは、データスタックの最上部であるビデオR
AM132内のビデオアドレスを指定する。この値は、
データがデータスタックに押し込まれるように或いはデ
ータスタックから飛び出るように調整される。このよう
にして、このスタックボインタアドレスは、データスタ
ックに最後に入力されたデータのアドレスを示すように
作用する。
In addition, the register file 220 includes a register 611 that stores a stack pointer address. The stack pointer address stored in the register 611 is the video R which is the top of the data stack.
Designate the video address in AM132. This value is
The data is arranged to be pushed into or out of the data stack. In this way, the stack pointer address acts to indicate the address of the last input data on the data stack.

【0038】図7は、アレイがオフスクリーンメモリか
らスクリーンメモリに移動するプロセスを概略的な形式
で示したものである。図7は、スクリーンメモリ705
とオフスクリーンメモリ715とを含むビデオRAM1
32を示すものである。図7は、ピクセル780のある
アレイ(より正確には、ピクセルのあるアレイに対応す
るデータ)が、オフスクリーンメモリ715からスクリ
ーンメモリ705に転送されてピクセル790のあるア
レイとなる。
FIG. 7 illustrates, in schematic form, the process by which the array moves from off-screen memory to screen memory. FIG. 7 shows a screen memory 705.
Video RAM 1 including off-screen memory 715
32 is shown. In FIG. 7, an array with pixels 780 (more precisely, data corresponding to the array with pixels) is transferred from off-screen memory 715 to screen memory 705 into an array with pixels 790.

【0039】アレイ移動動作を行う前に、あるデータ
を、レジスタファイル220の指定されたレジスタに記
憶しなけれはならない。レジスタ601には、ピクセル
のソースアレイの開始アドレス710をロードしなけれ
ばならない。図7に示す例では、このロードは、リニア
アドレスモードで指定される。ソースピッチ720は、
レジスタ602に記憶される。レジスタ603には、行
先アドレスがロードされる。図7に示す例では、このロ
ードは、Xアドレス730とYアドレス770とを含む
XYアドレスモードで指定される。レジスタ604は行
先ピッチ645を備えており、行先ピッチ645は、レ
ジスタ604の内部に記憶されている。XY座標系の原
点のリニアアドレスとオフセットアドレス770とは、
レジスタ605に記憶される。最後に、デルタY750
とデルタX760は、レジスタ608の別々の半分に記
憶される。
Prior to performing an array move operation, certain data must be stored in a designated register in register file 220. Register 601 must be loaded with the starting address 710 of the source array of pixels. In the example shown in FIG. 7, this load is designated in the linear address mode. The source pitch 720 is
It is stored in the register 602. The destination address is loaded into the register 603. In the example shown in FIG. 7, this load is specified in the XY address mode including the X address 730 and the Y address 770. The register 604 has a destination pitch 645, and the destination pitch 645 is stored inside the register 604. The linear address of the origin of the XY coordinate system and the offset address 770 are
It is stored in the register 605. Finally, Delta Y750
And Delta X 760 are stored in separate halves of register 608.

【0040】図7に概略的に示されるアレイ移動動作
は、レジスタファイル220の各レジスタに記憶されて
いるデータに関連して実行される。好ましい実施例によ
れば、ピクセル当たりのビット数は、整数のピクセルが
単一の物理データワードに記憶されるように選択され
る。この選択により、グラフィックプロセッサは、主と
して全でのデータワードを転送することによって、ピク
セル780のアレイをピクセル790のアレイに転送す
ることもできる。このように物理データワードのビット
数に関連してピクセル当たりのビット数を選択した場合
でも、ある場合には、アレイ境界の部分ワードを扱うこ
とが必要である。然し乍ら、この設計上の選択は、部分
データワードのアクセスと転送を行う必要が最小になる
ように作用する。
The array move operation illustrated schematically in FIG. 7 is performed with respect to the data stored in each register of register file 220. According to the preferred embodiment, the number of bits per pixel is chosen such that an integer number of pixels are stored in a single physical data word. This selection also allows the graphics processor to transfer an array of pixels 780 to an array of pixels 790, primarily by transferring the entire data word. Thus, even if the number of bits per pixel is selected in relation to the number of bits of the physical data word, in some cases it is necessary to handle partial words at the array boundaries. However, this design choice serves to minimize the need to access and transfer partial data words.

【0041】本発明の好ましい実施例によれば、図7に
概略的に示されているデータの転送は、多数の異なるデ
ータが変形される特殊な場合である。ソース像と行先像
の対応する各アクセス位置からのピクセルデータは、命
令によって指定される方法で結合される。データの結合
は、論理演算(例えばAND又はOR)であっても、算
術演算(例えば加算又は減算)であってもよい。このよ
うにしてピクセル790のアレイに記憶された新しいデ
ータは、ピクセル780のアレイのデータとピクセル7
90の現在のデータの両方の関数である。図7に示すデ
ータの転送は、より一般的な変形の特殊な場合であり、
この場合は、行先アレイに最終的に記憶されるデータは
と、前にそこに記憶されたデータには依存しない。
In accordance with the preferred embodiment of the present invention, the transfer of data shown schematically in FIG. 7 is a special case where a number of different data are transformed. Pixel data from each corresponding access location of the source and destination images are combined in the manner specified by the instruction. The combination of data may be a logical operation (eg AND or OR) or an arithmetic operation (eg addition or subtraction). The new data thus stored in the array of pixels 790 is the same as the data in the array of pixels 780
Both functions of the 90 current data. The data transfer shown in FIG. 7 is a special case of a more general variant,
In this case, the data finally stored in the destination array does not depend on the data previously stored there.

【0042】このプロセスは、図8に、フローチャート
で示されている。好ましい実施例によれば、転送は、物
理データによって順次行われる。プロセスが一度始まる
と(開始ブロック801)、レジスタ601に記憶され
ているデータが、ソースアドレスを得るために読み取ら
れる(処理ブロック802)。次に、グラフィックプロ
セッサ120が、表示ソースアドレスに対応した表示デ
ータワードをメモリ130から引き出す(処理ブロック
803)。ソースアドレスがXY形式で指定される場合
は、このデータの呼び戻しには、XYアドレスを対応す
る物理アドレスに変換するステップが含まれている。レ
ジスタ603から行先アドレスを呼び戻して(処理ブロ
ック804)、次に表示物理データワードを引き出す
(処理ブロック805)類似のプロセスが、行先位置に
含まれているデータのために行われる。
This process is shown in the flow chart of FIG. According to the preferred embodiment, the transfer is done sequentially by physical data. Once the process begins (start block 801), the data stored in register 601 is read to obtain the source address (processing block 802). Next, the graphics processor 120 retrieves the display data word corresponding to the display source address from the memory 130 (processing block 803). If the source address is specified in XY format, recalling this data includes converting the XY address to the corresponding physical address. A similar process is performed for the data contained in the destination location by recalling the destination address from register 603 (processing block 804) and then retrieving the displayed physical data word (processing block 805).

【0043】この結合されたデータは、次いで、その前
に定められた行先位置に復帰する(処理ブロック80
6)。ソース及び行先のピクセルデータは、次いで、実
行される結合モードに従って結合される。この結合は、
物理データワードが2つ以上のピクセルに対応するデー
タを含んでいる場合でもピクセルを基本としてピクセル
で行われる。この結合されたデータは、次いで、指定の
行先位置に書き込まれる(処理ブロック807)。
This combined data is then returned to its previously defined destination location (processing block 80).
6). The source and destination pixel data are then combined according to the combination mode performed. This bond is
It is done on a pixel by pixel basis even if the physical data word contains data corresponding to more than one pixel. This combined data is then written to the specified destination location (processing block 807).

【0044】グラフィックプロセッサ120は、レジス
タ608に記憶されているデルタY/デルタX情報に関
して、最後のデータが転送されたかどうかを検出するこ
とによって、データ全体の転送が行われたかどうかを判
断する(判断ブロック808)。データ全体の転送が実
行されていない場合は、ソースアドレスが更新される。
レジスタ601に記憶されているソースアドレスは、レ
ジスタ601に前に記憶されたソースアドレスとレジス
タ602に記憶されているソースピッチデータとに関連
して、転送すべき次のデータワードを参照するために更
新される(処理ブロック809)。同様に、レジスタ6
03に記憶されている行先アドレスは、レジスタ604
に記憶されている行先ピッチデータに関連して、行先の
次のデータワードを参照するために更新される(処理ブ
ロック810)。このプロセスは、レジスタ601に記
憶されている新しいソースとレジスタ603に記憶され
ている新しい行先データとを用いて繰り返される。
The graphics processor 120 determines whether the entire data transfer has occurred by detecting whether the last data has been transferred with respect to the delta Y / delta X information stored in the register 608 ( Decision block 808). If the entire data transfer has not been performed, the source address is updated.
The source address stored in register 601 is associated with the source address previously stored in register 601 and the source pitch data stored in register 602 to reference the next data word to be transferred. It is updated (processing block 809). Similarly, register 6
The destination address stored in 03 is stored in the register 604.
Updated to reference the next data word of the destination in relation to the destination pitch data stored at (processing block 810). This process is repeated with the new source stored in register 601 and the new destination data stored in register 603.

【0045】上記したように、レジスタ608に記憶さ
れているデルタY/デルタXデータは、転送すべき像の
限界を定めるために用いられる。像全体が上記したよう
にレジスタ608に記憶されているデルタY/デルタX
データを参照しながら転送されている(判定ブロック8
08)ときは、命令の実行が完了して(終了ブロック8
11)、グラフィックプロセッサ120は、そのプログ
ラムの命令を実行することで動作し続ける。上記したよ
うに、好ましい実施例においては、この図8に示すプロ
セスは、命令マイクロコードで実施される。データ変形
プロセス全体は、アレイ移動と称されるが、グラフィッ
クプロセッサ120への単一命令に応答して実行され
る。
As mentioned above, the delta Y / delta X data stored in register 608 is used to define the limit of the image to be transferred. The entire image is stored in register 608 as described above Delta Y / Delta X
Transferred while referring to data (decision block 8)
08), the execution of the instruction is complete (end block 8
11), the graphic processor 120 continues to operate by executing the instructions of the program. As mentioned above, in the preferred embodiment, the process shown in FIG. 8 is implemented in instruction microcode. The entire data transformation process, referred to as array move, is performed in response to a single instruction to graphics processor 120.

【0046】図9は、本発明に関する入力/出力レジス
タ260の幾つかを示すものである。入力/出力レジス
タ260は、入力/出力制御に関する情報の保管専用の
レジスタであるレジスタ901ないし910を含んであ
る。レジスタ901は、表示開始アドレスを記憶する。
レジスタ902は、表示リフレッシュアドレスを記憶す
る。レジスタ903は、表示アドレス増分を記憶する。
これら3つのレジスタが共同して、ビデオRAM132
のビデオ表示を指定する部分を制御する。レジスタ90
1に記憶されている表示開始アドレスは、ビデオRAM
132内の開始アドレスであり、メモリは、このビデオ
RAM132で、ビデオ表示の開始を指定する。ディス
プレイのフレームが新しくなる度に、その開始時に、レ
ジスタ901内のデータが、表示リフレッシュアドレス
を定めるためにレジスタ902にロードされる。表示リ
フレッシュアドレスは、ビデオ表示を定めるために必要
な、ビデオRAM132の次に読み取るべき部分を記憶
する。このアドレスは、一般的に、ビデオ走査の走査線
の開始アドレスである。各水平帰線期間中は、レジスタ
903に記憶されている表示アドレスの増分に対応する
データは、レジスタ902内に記憶されているデータに
加えられ、それによって、表示リフレッシュアドレスを
形成する。このプロセスは、レジスタ902がレジスタ
901からの表示開始アドレスを再びロードされるこの
特定のビデオフレームが終了するまで続けられる。水平
リセット信号と垂直リセット信号とを発するためのハー
ドウェアが図15に示されている。
FIG. 9 shows some of the input / output registers 260 of the present invention. The input / output register 260 includes registers 901 to 910 dedicated to storing information regarding input / output control. The register 901 stores the display start address.
The register 902 stores the display refresh address. Register 903 stores the display address increment.
These three registers work together to make a video RAM 132.
Controls which part of the video display is specified. Register 90
The display start address stored in 1 is the video RAM.
This is the start address in 132, and the memory specifies the start of video display in this video RAM 132. At the beginning of each new display frame, the data in register 901 is loaded into register 902 to define the display refresh address. The display refresh address stores the portion of video RAM 132 to be read next that is needed to define the video display. This address is generally the start address of the scan line for video scanning. During each horizontal blanking period, the data corresponding to the increment of the display address stored in register 903 is added to the data stored in register 902, thereby forming the display refresh address. This process continues until register 902 is reloaded with the display start address from register 901 until the end of this particular video frame. The hardware for issuing the horizontal reset signal and the vertical reset signal is shown in FIG.

【0047】入力/出力レジスタ260のレジスタ90
4は、ビデオRAMリフレッシュアドレスを記憶する。
図1に示すシステムのような典型的なシステムにおいて
は、ビデオRAM132は、ダイナミックランダムアク
セスメモリによって構成される。このメモリは、大部
分、記憶された情報を保持するために周期的にリフレッ
シュされる。レジスタ904に記憶されているビデオR
AMリフレッシュアドレスは、次にリフレッシュすべき
列アドレスである。この列アドレスは、公知の原理に基
づいて、リフレッシュ信号と共にビデオRAM132に
加えられ、これによって、選択された全ての行をリフレ
ッシュする。この作業が一度行われると、レジスタ90
4内のデータは、次いで、次の列に増分される。このよ
うにして、ビデオRAMリフレッシュアドレスは、次に
リフレッシュすべきアドレスに対応する。ダイナミック
ランダムアクセスメモリリフレッシュ要求を発するため
のハードウェアが図16に示されている。
Register 90 of input / output register 260
4 stores the video RAM refresh address.
In a typical system, such as the system shown in FIG. 1, video RAM 132 is comprised of dynamic random access memory. This memory is mostly refreshed periodically to retain the stored information. Video R stored in register 904
The AM refresh address is a column address to be refreshed next. This column address is applied to the video RAM 132 along with the refresh signal according to a known principle, thereby refreshing all the selected rows. Once this work is done, register 90
The data in 4 is then incremented to the next column. In this way, the video RAM refresh address corresponds to the address to be refreshed next. The hardware for issuing a dynamic random access memory refresh request is shown in FIG.

【0048】レジスタ905、906、907、908
及び909は、ホスト処理システム110がメモリ13
0に直接アクセスすることを可能にする。これは、レジ
スタ905にホストデータを設け、レジスタ906にホ
ストの最下位データを設け、レジスタ907にホストの
最上位データを設けることによって達せられる。これら
3つのレジスタは、ホスト処理システム110がメモリ
インターフェイス250を通じてメモリ130への書き
込み又はメモリ130からの読み取りを行えるように作
用する。これは、ホスト処理システム110からの制御
信号とレジスタ908及び909に記憶されているデー
タとによって達せられる。これらのレジスタ908及び
909は、ホストの最下位制御ビットとホストの最上位
制御ビットをそれぞれ記憶する。好ましい実施例におい
ては、これら2つのレジスタは、8ビット幅であり、一
方、他のレジスタ260は16ビット幅である。これら
2つの8ビット幅レジスタを備えることにより、8ビッ
ト外部バスとして作動するホスト処理システム110が
単一のメモリサイクルでこれらのレジスタの各々に直接
読み取り又は書き込みを行うことが可能となる。一方、
グラフィックプロセッサ120が16ビット幅の外部バ
スを備えているため、これら2つのレジスタは、単一の
メモリサイクルで読み取り又は書き込みを行なわれるこ
とができる。
Registers 905, 906, 907, 908
And 909, the host processing system 110 has a memory 13
Allows direct access to 0. This is accomplished by providing register 905 with host data, register 906 with the host's least significant data, and register 907 with the host's most significant data. These three registers serve to allow the host processing system 110 to write to or read from the memory 130 through the memory interface 250. This is accomplished by the control signals from the host processing system 110 and the data stored in registers 908 and 909. These registers 908 and 909 store the least significant control bit of the host and the most significant control bit of the host, respectively. In the preferred embodiment, these two registers are 8 bits wide, while the other register 260 is 16 bits wide. Having these two 8-bit wide registers allows the host processing system 110, which acts as an 8-bit external bus, to directly read or write to each of these registers in a single memory cycle. on the other hand,
Since the graphics processor 120 has a 16-bit wide external bus, these two registers can be read or written in a single memory cycle.

【0049】図10は、ホストの最上位制御ビット90
9とホストの最下位制御ビット908との結合に対応す
るホスト制御レジスタ1000の内容を示すものであ
る。ホスト制御レジスタ1000は、ホスト処理システ
ム110とグラフィックプロセッサ120との間の通信
を可能にする多数のサブ部分を含んでいる。メッセージ
入力部分1001は、ホスト処理システム110がグラ
フィックプロセッサ120へメッセージを送ることを可
能にする。このメッセージ入力部分1001は、割込み
入力ビット1002と共に用いられる。この割込み入力
ビット1002は、ホスト処理システム110がホスト
処理システム110のある要求に応答してグラフィック
プロセッサ120の動作に割り込むことを可能にする。
同様に、メッセージ出力部分1003は、グラフィック
プロセッサ120がホスト処理システム110へメッセ
ージを送ることを可能にする。このメッセージ出力部分
1003と結合されるのは、割込み出力ビット1004
である。この割込み出力ビット1004は、グラフィッ
クプロセッサ120がある優先動作の要求に応答してホ
スト処理システム110の動作に割り込むことを可能に
する。部分1005及び1006は、ホスト処理システ
ム110がメモリ130に関して読み取り動作と書き込
み動作を行っている間に使用される。増分書き込みビッ
ト1005が設定されている場合は、ホストの最下位制
御ワードアドレス906とホストの最上位ワードアドレ
ス907とによって形成されるアドレスが、ホスト処理
システム110によって読み取り動作が行われる度に増
加される。増分書き込みビット1005が設定されてい
ない場合は、これらのアドレスレジスタは、書き込み動
作時に増加されない。同様に、増分書き込みビット10
06が設定されている場合は、ホストの最下位制御ワー
ドアドレス906とホストの最上位ワードアドレス90
7とによって形成されるアドレスが、ホスト処理システ
ム110によって読み取り動作が行われる度に増加され
る。もし、逆に、増分書き込みビット1006が設定さ
れていない場合は、上記のような増加は、読み取り動作
時には行われない。そのような自動増分読み取り及び書
き込み動作を行う能力により、ホスト処理システム11
0は、メモリ130内のメモリブロックからの読み取り
又はメモリブロックへの書き込みを、次のアドレスを連
続的に供給する必要なしに行うことができる。
FIG. 10 shows the host's most significant control bit 90.
9 shows the contents of the host control register 1000 corresponding to the combination of 9 and the least significant control bit 908 of the host. The host control register 1000 includes a number of sub-portions that allow communication between the host processing system 110 and the graphics processor 120. Message input portion 1001 enables host processing system 110 to send a message to graphics processor 120. This message input portion 1001 is used with the interrupt input bit 1002. This interrupt input bit 1002 allows the host processing system 110 to interrupt the operation of the graphics processor 120 in response to certain requests from the host processing system 110.
Similarly, message output portion 1003 enables graphics processor 120 to send a message to host processing system 110. Combined with this message output portion 1003 is an interrupt output bit 1004.
Is. This interrupt output bit 1004 allows the graphics processor 120 to interrupt the operation of the host processing system 110 in response to a request for some priority operation. Portions 1005 and 1006 are used while host processing system 110 is performing read and write operations on memory 130. If the incremental write bit 1005 is set, the address formed by the host's lowest control word address 906 and the host's highest word address 907 is incremented each time a read operation is performed by the host processing system 110. It If the incremental write bit 1005 is not set, then these address registers are not incremented during a write operation. Similarly, incremental write bit 10
If 06 is set, the host's lowest control word address 906 and the host's highest word address 90
The address formed by 7 and 7 is incremented each time a read operation is performed by the host processing system 110. Conversely, if the incremental write bit 1006 is not set, then the above increments are not performed during a read operation. The ability to perform such automatic incremental read and write operations results in host processing system 11
A 0 can read from or write to a memory block in memory 130 without having to continuously supply the next address.

【0050】キャッシュフラッシュビット1007と停
止ビット1008とにより、ホスト処理システム100
を通じてグラフィックプロセッサ120を追加制御する
ことが可能になる。キャッシュフラッシュビット100
7が設定されている場合、グラフィックプロセッサ12
0は、命令キャッシュ230に記憶されている全てのデ
ータを、即時に消去する。この機能は、ホスト処理シス
テム110がメモリ130にグラフィックプロセッサ1
20のための命令ブロックをロードしているときに最も
有用である。このようにして命令キャッシュのフラッシ
ュを行うことにより、グラフィックプロセッサ120が
命令キャッシュ230に前に記憶されていた古い命令を
行わず、メモリ130からの更新された命令を読み取る
ことが確実となる。停止ビット1008が設定されてい
る場合、グラフィックプロセッサ120は、このビット
がリセットされるまで停止される。この動作は、ホスト
処理システム110がグラフィックプロセッサ120の
ための一組の新たな動作を定義している間にグラフィッ
クプロセッサ120の動作を全て停止させるのに有用で
ある。従って、例えば、ホスト処理システム110がグ
ラフィックプロセッサ120によって使用される命令及
びデータを再定義でき、この動作の期間中、スプリアス
レスポンスを避けるために、グラフィックプロセッサ1
20が停止される。本発明の好ましい実施例によれば、
上記したビデオの更新動作とメモリのリフレッシュ動作
は、グラフィックプロセッサ120が停止されていると
きも継続される。これにより、停止間隔中の現在の表示
とメモリデータとが保存される。
By the cache flush bit 1007 and the stop bit 1008, the host processing system 100
It is possible to additionally control the graphic processor 120 through. Cash flush bit 100
If 7 is set, the graphics processor 12
0 immediately erases all data stored in the instruction cache 230. This function is performed by the host processing system 110 in the memory 130 by the graphic processor 1.
Most useful when loading an instruction block for 20. Flushing the instruction cache in this manner ensures that the graphics processor 120 does not perform old instructions previously stored in the instruction cache 230, but reads updated instructions from the memory 130. If the stop bit 1008 is set, the graphics processor 120 will be stopped until this bit is reset. This operation is useful for halting all operations of graphics processor 120 while host processing system 110 is defining a set of new operations for graphics processor 120. Thus, for example, the host processing system 110 can redefine the instructions and data used by the graphics processor 120, and to avoid spurious responses during this operation, the graphics processor 1
20 is stopped. According to a preferred embodiment of the present invention,
The above video update operation and memory refresh operation are continued even when the graphic processor 120 is stopped. This saves the current display and memory data during the stop interval.

【0051】図9に示される最後のレジスタは、制御レ
ジスタ910である。制御レジスタ910は、グラフィ
ックプロセッサ120の内部動作の制御に用いられるデ
ータを記憶する。本発明に最も関連するのは、リフレッ
シュ速度部911である。リフレッシュ速度部911
は、2ビットであり、この2ビットがビデオRAM13
2を形成するダイナミックランダムアクセスメモリのリ
フレッシュ速度を定める。表1は、このリフレッシュ速
度部911の好ましい実施例を示したものである。ダイ
ナミックランダムアクセスメモリは、グラフィックプロ
セッサ120の32命令サイクル毎或いは64命令サイ
クル毎に更新することができるか、或いはこのビットの
状態によってリフレッシュを延期することができるとい
うことに注意されたい。特定のリフレッシュ速度が、グ
ラフィックプロセッサ120を応用する用途に応じて選
択される。然し乍ら、メモリ130内に記憶されている
データの保全性を確保するために、リフレッシュ速度
は、ある短い時間以上に設定してはならない。
The last register shown in FIG. 9 is the control register 910. The control register 910 stores data used for controlling the internal operation of the graphic processor 120. Most relevant to the present invention is the refresh rate unit 911. Refresh speed section 911
Is 2 bits, and these 2 bits are the video RAM 13.
2 defines the refresh rate of the dynamic random access memory forming 2. Table 1 shows a preferred embodiment of the refresh speed unit 911. Note that the dynamic random access memory can be updated every 32 or 64 instruction cycles of the graphics processor 120, or the refresh can be deferred depending on the state of this bit. The particular refresh rate is selected depending on the application to which the graphic processor 120 will be applied. However, in order to ensure the integrity of the data stored in memory 130, the refresh rate should not be set above a certain short time.

【0052】 表 1 RRビット リフレッシュレート 0 0 32クロックサイクル 0 1 64クロックサイクル 1 0 未使用 1 1 DRAMリフレッシュなし 図11は、状態レジスタ1100の種々のフィールドを
示している。状態レジスタ1100は、グラフィックプ
ロセッサ120の動作に関する種々の指示を記憶する。
ビット1101、1102、1103及び1104は、
中央処理ユニット200による動作の結果に基づいてセ
ット又はリセットされる。中央処理ユニット200の動
作の出力が否定であった場合には、否定ビット1101
がセットされ、さもなくば、このビットはリセットされ
る。中央処理ユニット200の動作が桁上げ出力を発生
する場合には、桁上げビット1102だセットされ、さ
もなくば、このビットがリセットされる。同様に、ゼロ
出力の指示がゼロビット1103を経て形成され、オー
バーフロー出力の指示がオーバーフロービット1104
によって形成される。状態レジスタ1100のこれらの
ビットは、中央処理ユニット200の動作に基づいて自
動的にセットされる。
Table 1 RR Bits Refresh Rate 0 0 32 Clock Cycles 0 1 64 Clock Cycles 1 0 Unused 1 1 No DRAM Refresh FIG. 11 shows the various fields of the status register 1100. The status register 1100 stores various instructions regarding the operation of the graphics processor 120.
Bits 1101, 1102, 1103 and 1104 are
It is set or reset based on the result of the operation by the central processing unit 200. If the output of the operation of the central processing unit 200 is negative, a negative bit 1101
Is set, otherwise this bit is reset. If the operation of central processing unit 200 produces a carry output, then carry bit 1102 is set, otherwise this bit is reset. Similarly, a zero output indication is formed via zero bit 1103, and an overflow output indication is overflow bit 1104.
Formed by. These bits of status register 1100 are automatically set based on the operation of central processing unit 200.

【0053】図11に示された状態レジスタ1100の
他の部分は、本発明の動作により関連したものである。
これらの部分は、中央処理ユニット200によってセッ
トすることができ、2組の別々のフィールドサイズ及び
フィールド拡張オプションを定める。フィールドサイズ
0部分1105は、中央処理ユニット200によって作
用を受けるフィールドの長さを指示する5ビットであ
る。本発明の好ましい環境によれば、中央処理ユニット
200は、32個のビットに対して同時に作用する。グ
ラフィックプロセッサ120は、フィールドサイズ0部
分1105内にセットされたフィールドサイズに基づい
て1ないし32ビットのフィールドサイズに対して作用
を与えることができる。5ビットの同様のフィールドサ
イズ1部分1107は、第2のフィールドサイズを指示
する。可変のフィールドサイズで作動することのできる
中央処理ユニット200の命令は、選択されたフィール
ドサイズの長さを指示するように状態レジスタ1100
のフィールドサイズ0部分1105又はフィールドサイ
ズ1部分1107を指示する1つのビットを含む。フィ
ールド拡張0ビット1106及びフィールド拡張1ビッ
ト1108は、各々のフィールドサイズに対する符号拡
張オプションを指示する。中央処理ユニット200によ
って作用を受けるフィールドサイズが32ビットより小
さい場合には、残りのビットを或るやり方で満たさなけ
ればならない。各々のフィールド拡張0ビット1106
又はフィールド拡張1ビット1108が「0」である時
には、中央処理ユニット200の32ビットワードのこ
れらの残り部分に0が満たされる。一方、このビットが
「1」である場合には、中央処理ユニット200によっ
て作用を受ける数の符号が拡張される。この点について
は、その数が正である場合には、これらの付加的なフィ
ールド拡張ビットが「0」にセットされる。もしこの数
が負である場合には、これらの付加的なフィールド拡張
ビットが「1」にセットされる。これは、負の数を表わ
すための2の補数演算の使用に対応する。選択されたフ
ィールドサイズ及びフィールドが拡張の動作は、添付図
面を参照して以下で詳細に説明する。
The other parts of the status register 1100 shown in FIG. 11 are more relevant to the operation of the present invention.
These parts can be set by the central processing unit 200 and define two sets of separate field sizes and field expansion options. The field size 0 portion 1105 is 5 bits which indicates the length of the field acted upon by the central processing unit 200. In accordance with the preferred environment of the present invention, central processing unit 200 operates on 32 bits simultaneously. The graphics processor 120 may operate on a field size of 1 to 32 bits based on the field size set in the field size 0 portion 1105. A similar field size 1 portion 1107 of 5 bits indicates a second field size. The instructions of central processing unit 200, which is capable of operating with variable field sizes, cause status register 1100 to indicate the length of the selected field size.
Field size 0 portion 1105 or field size 1 portion 1107. Field extension 0 bit 1106 and field extension 1 bit 1108 indicate the sign extension option for each field size. If the field size acted upon by the central processing unit 200 is smaller than 32 bits, the remaining bits must be filled in some way. Each field extension 0 bit 1106
Or, when the field extension 1 bit 1108 is "0", these remaining portions of the central processing unit 200 32-bit word are filled with 0s. On the other hand, if this bit is "1", the number of codes operated by the central processing unit 200 is expanded. In this regard, these additional field extension bits are set to "0" if the number is positive. If this number is negative, these additional field extension bits are set to "1". This corresponds to the use of 2's complement arithmetic to represent negative numbers. The operation of the selected field size and field expansion will be described in detail below with reference to the accompanying drawings.

【0054】図12は、アドレスレジスタ1200を示
している。好ましい実施例では、アドレスレジスタ12
00は32ビット長さであり、これは、中央処理ユニッ
ト200によって使用されるデータワードの長さと同じ
である。好ましい実施例では、可変フィールドサイズの
選択について、アドレスレジスタ1200は、より一般
的なワードの指定ではなくて、メモリ130内の特定ビ
ットを指定する。従って、アドレスレジスタ1200
は、4ビットのビットアドレス部分1201と、28ビ
ットのワードアドレス部分1202とを含んでいる。ワ
ードアドレス部分1202は、好ましい実施例では、メ
モリ130内の個々の16ビットワードを指定する。ビ
ットアドレス1201は、その選択されたワード内の特
定のビットを指定する。グラフィックプロセッサ120
からメモリ130に送られるアドレスは、ワードアドレ
ス1202のみを含んでいる。ビットアドレス1201
は、所望のビットを選択するようにグラフィックプロセ
ッサ120内で使用される。
FIG. 12 shows the address register 1200. In the preferred embodiment, the address register 12
00 is 32 bits long, which is the same as the length of the data word used by the central processing unit 200. In the preferred embodiment, for variable field size selection, the address register 1200 specifies a particular bit within the memory 130 rather than a more general word specification. Therefore, the address register 1200
Includes a 4-bit bit address portion 1201 and a 28-bit word address portion 1202. Word address portion 1202, in the preferred embodiment, points to an individual 16-bit word in memory 130. Bit address 1201 specifies a particular bit within the selected word. Graphic processor 120
The address sent from the to the memory 130 includes only the word address 1202. Bit address 1201
Are used within the graphics processor 120 to select the desired bits.

【0055】図13は、メモリ130内の特定のワード
境界と選択されたフィールドサイズとの関係の種々の場
合を示している。本発明の好ましい実施例によれば、グ
ラフィックプロセッサ120は、1ビットから32ビッ
トまでの選択された巾のフィールドサイズをメモリ13
0に書き込んだりここから読み取ったりすることができ
る。更に、本発明の好ましい実施例では、メモリ130
は、16ビットワードに編成される。図13は、メモリ
130の16ビットワードと選択されたフィールドサイ
ズ及びそのフィールドのスタートとの関係の各々の考え
られる場合を示している。
FIG. 13 illustrates various cases of the relationship between a particular word boundary in memory 130 and a selected field size. In accordance with the preferred embodiment of the present invention, the graphics processor 120 stores a field size of selected width from 1 bit to 32 bits in the memory 13.
You can write to 0 and read from here. Further, in the preferred embodiment of the present invention, the memory 130
Are organized into 16-bit words. FIG. 13 shows each possible case of the 16-bit word of the memory 130 and the relation between the selected field size and the start of that field.

【0056】図13Aないし図13Dは、1つのワード
アクセスが全指定フィールドをアクセスできるに充分で
あるような場合を示している。図13Aは、最も簡単な
場合である。図13Aにおいて、メモリ130の16ビ
ットワードNに厳密に一致する16ビットフィールドが
指定される。図13Aに示された場合には、読み取りフ
ィールドの動作に単一のデータワードNの読み取りが必
要とされる。書き込みフィールドの動作も同様に単一の
メモリワードNの書き込みを伴う。
FIGS. 13A-13D show the case where one word access is sufficient to access all designated fields. FIG. 13A is the simplest case. In FIG. 13A, a 16-bit field that exactly matches the 16-bit word N of memory 130 is designated. In the case shown in FIG. 13A, a read of a single data word N is required for read field operation. The operation of the write field likewise involves writing a single memory word N.

【0057】図13Bないし図13Dに示された場合と
なるのは、指定のフィールドがメモリ130の単一のデ
ータワードN内に完全に存在するが、このデータワード
Nに完全に一致しない時である。図13Bは、指定のフ
ィールドの最下位ビットがデータワードNの開始と一致
しないが、指定フィールドの最上位ビットがデータワー
ドNの最上位ビットと一致するような場合を示してい
る。同様に、図13Cは、データフィールドの最下位ビ
ットがメモリワードNの最下位ビットに整列されるが、
最上位ビットは整列されないようにな場合を示してい
る。更に、図13Dは、フィールドが最下位ビットにも
最上位ビットにも整列せずにデータワードN内に完全に
含まれる場合を示している。
The case shown in FIGS. 13B-13D is when the specified field is entirely within a single data word N of memory 130 but does not exactly match this data word N. is there. FIG. 13B illustrates the case where the least significant bit of the designated field does not match the start of data word N, but the most significant bit of the designated field matches the most significant bit of data word N. Similarly, FIG. 13C shows that the least significant bit of the data field is aligned with the least significant bit of memory word N,
The most significant bit shows the case that it is not aligned. Further, FIG. 13D illustrates the case where the field is completely contained within the data word N without being aligned with the least significant bit or the most significant bit.

【0058】図13Bないし図13D図の各々の場合に
おいて、指定のフィールドを読み取る場合には、メモリ
130から単一のデータワードNのみを読み取りそして
この指定のフィールド内に含まれないビットをマスクす
ることが必要とされる。一方、図13Bないし図13D
に示されたようなフィールドを書き込むためには、コン
パウンド動作が必要とされる。先ず第1に、データワー
ドNをメモリ130から呼び出し、次いで、指定のフィ
ールドに対応するビットを、データワードNの他のビッ
トを変更せずに変更しなければならない。最後に、この
変更されたデータワードは、メモリ130内のデータワ
ードNと同じ位置に書き込まれる。動作のこの組合せ
は、読み取り/変更/書き込み動作と称する。
In each case of FIGS. 13B-13D, when reading a specified field, only a single data word N is read from memory 130 and bits not contained within this specified field are masked. Is needed. Meanwhile, FIGS. 13B to 13D
A compound operation is required to write a field as shown in. First of all, the data word N must be retrieved from the memory 130 and then the bit corresponding to the specified field must be changed without changing the other bits of the data word N. Finally, this modified data word is written into memory 130 at the same location as data word N. This combination of operations is called a read / modify / write operation.

【0059】図13Eないし図13Hは、指定のフィー
ルドをアクセスする時にメモリ130内の2つの連続す
るデータワードをアクセスしなければならない例を示し
ている。図13Eは、これら場合の最も簡単な例を示し
ている。図13Eにおいて、メモリ130内の一対の連
続するデータワード(データワードN及びデータワード
N+1)に厳密に対応する32ビットのフィールドが指
定される。図13Eに示されたようなフィールドを読み
取る時には、2つの連続的な読み取り動作が必要とされ
る。同様に、図13Eに示されたようなフィールドを書
き込む時には、2つの連続的な全ワード書き込み動作が
必要とされる。
FIGS. 13E through 13H show an example where two consecutive data words in memory 130 must be accessed when accessing a specified field. FIG. 13E shows the simplest example of these cases. In FIG. 13E, a 32-bit field is designated that corresponds exactly to a pair of consecutive data words (data word N and data word N + 1) in memory 130. When reading a field as shown in Figure 13E, two consecutive read operations are required. Similarly, when writing a field as shown in FIG. 13E, two consecutive full word write operations are required.

【0060】図13Fないし図13Hは、指定のフィー
ルドが1つのデータワード境界と交差する場合を示して
いる。図13Fにおいて、指定のフィールドは、データ
ワードN内の或る位置で開始し、データワードN+1の
終りで終了する。このようなデータフィールドを読み取
る時には、指定フィールド内に含まれていないビットを
除去するために第1の読み取り動作に対して対応的なマ
スクを施して2つの連続する読み取り動作を行なわねば
ならない。このようなフィールドを書き込む時には、デ
ータワードNに対して読み取り/変更/書き込み動作を
行ないそしてデータワードN+1に対して簡単な書き込
み動作を行なわねばならない。図13Gは、指定のフィ
ールドがデータワードNの最下位ビットで開始し、次の
データワードN+1内の或る場所で終了する場合を示し
ている。このようなデータフィールドを読み取る時に
は、対応するマスキングを行なって2つの連続する読み
取り動作を行なうことが必要である。このようなデータ
フィールドを書き込む時には、データワードNに対して
1つの書き込み動作を行ないそしてデータワードN+1
に対して読み取り/変更/書き込み動作を行なうことが
必要である。図13Hは、データフィールドがデータワ
ードN内で開始し、ワードの境界と交差し、データワー
ドN+1で終了するような場合を示している。このよう
なデータフィールドを読み取るためには、対応するマス
キングを行なって2つの連続する読み取り動作を行なう
ことが必要とされる。このようなデータフィールドを書
き込む場合には、データワードN及びデータワードN+
1に対して2つの連続する読み取り/修正/書き込み動
作を行なうことを必要とする。
13F to 13H show the case where the designated field intersects one data word boundary. In FIG. 13F, the designated field begins at some position within data word N and ends at the end of data word N + 1. When reading such a data field, two consecutive read operations must be performed with a corresponding mask applied to the first read operation in order to remove bits not included in the designated field. When writing such a field, a read / modify / write operation must be performed on data word N and a simple write operation on data word N + 1. FIG. 13G illustrates the case where the designated field starts at the least significant bit of data word N and ends somewhere within the next data word N + 1. When reading such a data field, it is necessary to perform two consecutive read operations with corresponding masking. When writing such a data field, one write operation is performed on the data word N and the data word N + 1.
It is necessary to perform read / modify / write operations on the. FIG. 13H illustrates the case where the data field starts within data word N, crosses word boundaries, and ends at data word N + 1. Reading such a data field requires two successive read operations with corresponding masking. When writing such a data field, data word N and data word N +
It is necessary to perform two consecutive read / modify / write operations for one.

【0061】図13Iは、本発明の好ましい実施例によ
るワード境界に関連したフィールドの最も簡単な場合を
示している。図13Iにおいて、指定のフィールドは、
NデータワードNで開始し、2つの連続するデータワー
ド境界に交差し、データワードN+2内の或る場所で終
了する。このようなデータフィールドを読み取る時に
は、指定のデータフィールド内に存在しないデータワー
ドN及びデータワードN+2のビットを除去するために
対応的なマスキングを行なって3つの連続するメモリ読
み取り動作を行なうことが必要である。このようなデー
タフィールドを書き込む時には、データワードNに対し
て読み取り/変更/書き込み動作を行ない、データワー
ドN+1への書き込みを行ないそしてデータワードN+
2に基づいて読み取り/変更/書き込み動作を行なうこ
とが必要である。
FIG. 13I shows the simplest case of a field associated with a word boundary according to the preferred embodiment of the present invention. In FIG. 13I, the designated field is
Starting with N data words N, crossing two consecutive data word boundaries and ending somewhere within data word N + 2. When reading such a data field, it is necessary to perform three consecutive memory read operations with corresponding masking to remove bits of data word N and data word N + 2 that do not exist in the designated data field. Is. When writing such a data field, a read / modify / write operation is performed on the data word N, a write is performed on the data word N + 1 and a data word N +
It is necessary to perform read / modify / write operations based on 2.

【0062】図14は、メモリインターフェイス250
内のハードウェアと、1組の優先順位に基づいてメモリ
130にアクセスできるようにすると共に指定のフィー
ルドサイズで中央処理ユニット200を経てメモリ13
0にアクセスできるようにするグラフィックプロセッサ
120の別の部分とを示している。図14は、入力/出
力レジスタ260の一部分である複数のレジスタ90
2、904、906/907及び905を示している。
更に、図13は、中央処理ユニットのアドレスレジスタ
1200を示している。これらレジスタの各々は、バス
122へ接続するためにメモリインターフェイス250
に接続される。又、メモリインターフェイス250には
データラッチも接続されており、これは、中央処理ユニ
ットの最上位ビットデータラッチ1440と、中央処理
ユニットの最下位ビットデータラッチ1445とを含ん
でいる。
FIG. 14 shows a memory interface 250.
And the memory 130 through the central processing unit 200 with a specified field size to allow access to the memory 130 based on the hardware within and a set of priorities.
0 and another part of the graphics processor 120 which makes it possible to access 0. FIG. 14 shows a plurality of registers 90 that are part of the input / output register 260.
2, 904, 906/907 and 905 are shown.
Further, FIG. 13 shows the address register 1200 of the central processing unit. Each of these registers has a memory interface 250 for connection to the bus 122.
Connected to. Also connected to the memory interface 250 is a data latch, which includes a central processing unit most significant bit data latch 1440 and a central processing unit least significant bit data latch 1445.

【0063】メモリインターフェイス250の動作の制
御は、シーケンサ1400によって行なわれる。シーケ
ンサ1400は、種々の入力制御及びデータ信号を受け
取る。制御信号は、入力1401に現われる表示リフレ
ッシュ要求と、ライン1402に現われるDRAMリフ
レッシュ要求と、ライン1403に現われるホストアク
セス要求と、ライン1404に現われるホスト読み取り
/書き込み制御と、ライン1405に現われる中央処理
ユニットのアクセス要求と、ライン1406に現われる
中央処理ユニットの読み取り/書き込み制御とを含む。
The operation of memory interface 250 is controlled by sequencer 1400. Sequencer 1400 receives various input control and data signals. The control signals are the display refresh request appearing on input 1401, the DRAM refresh request appearing on line 1402, the host access request appearing on line 1403, the host read / write control appearing on line 1404, and the central processing unit appearing on line 1405. It includes access requests and read / write control of the central processing unit appearing on line 1406.

【0064】シーケンサ1400は、多数のソースから
データ信号を受け取る。先ず、中央処理ユニットのアド
レスレジスタ1200からのビットアドレス1201は
ゼロ検出器1420に供給される。ビットアドレス12
01のビットは、ライン1407を経てシーケンサ14
00に供給される。ゼロ検出器1420からのゼロ検出
信号は、ライン1408を経てシーケンサ1400に供
給される。ビットアドレスレジスタ1201からのビッ
トアドレスは、加算器1418にも送られる。加算器1
418は、バス1417からフィールドサイズを受け取
る。前記したように、フィールドサイズは状態レジスタ
1100から送られる。フィールドサイズ1105又は
フィールドサイズ1107のいずれかが、中央処理ユニ
ット200により実行される特定の命令によって選択さ
れる。この選択により、5ビットのフィールドサイズが
バス1417を経て加算器1418に送られる。加算器
1418の出力は、ラッチ1419内に記憶される6ビ
ット量である。最下位の4ビット(ビット0ないし3と
示された)は、ゼロ検出器1421へ送られる。これら
4つの最下位ビットは、バス1411を経てシーケンサ
1400に送られる。ゼロ指示信号は、ライン1412
を経てシーケンサ1400に送られる。ラッチ1419
の最上位2ビット(ビット5及び4と示された)は、各
々、ライン1409及び1410を経てシーケンサに送
られる。シーケンサ1400は、出力1413、141
4、1415及び1416を発生する。これら出力の制
御構成については、以下で説明する。
Sequencer 1400 receives data signals from multiple sources. First, the bit address 1201 from the address register 1200 of the central processing unit is supplied to the zero detector 1420. Bit address 12
The 01 bit is sent to the sequencer 14 via line 1407.
00 is supplied. The zero detect signal from zero detector 1420 is provided to sequencer 1400 via line 1408. The bit address from the bit address register 1201 is also sent to the adder 1418. Adder 1
418 receives the field size from bus 1417. The field size is sent from the status register 1100, as described above. Either field size 1105 or field size 1107 is selected by the particular instruction executed by central processing unit 200. With this selection, a 5-bit field size is sent to adder 1418 via bus 1417. The output of adder 1418 is a 6-bit quantity stored in latch 1419. The four least significant bits (designated bits 0 through 3) are sent to the zero detector 1421. These four least significant bits are sent to sequencer 1400 via bus 1411. The zero indication signal is on line 1412.
And is sent to the sequencer 1400. Latch 1419
The two most significant bits of (indicated as bits 5 and 4) are sent to the sequencer on lines 1409 and 1410, respectively. The sequencer 1400 outputs the outputs 1413 and 141.
4, 1415 and 1416 are generated. The control configuration of these outputs will be described below.

【0065】マルチプレクサ1430は、メモリバス1
22に送られる特定のデータを制御する。マルチプレク
サ1430は、バス1431を経て表示リフレッシュア
ドレスを受け取るようにレジスタ904に接続される。
同様に、マルチプレクサ1430は、レジスタ906及
び907からバス1433を経て合成ホストアドレスを
受け取る。ホストデータを含むレジスタ905は、バス
1434を経てマルチプレクサ1430に両方向接続さ
れる。中央処理ユニットのアドレスレジスタ1200の
ワードアドレス部分1202は、バス1435を経てマ
ルチプレクサ1430に送られる。バス1436は、マ
ルチプレクサ1430を、右マスク1437、左マスク
1438、入力/出力ラッチ1439に両方向接続し、
そしてバス205を経て中央処理ユニット200に接続
する。右マスク1437は、シーケンサ1400からラ
イン1413を経て制御される。同様に、左マスク14
38は、シーケンサ1400によりライン1414を経
て制御される。右マスク1437は、マルチプレクサ1
430からバス1436を経て入力/出力ラッチ143
9に送られるデータの最下位ビット部分をマスクするよ
うに働く。同様に、左マスク1438は、このデータ転
送の最上位ビットをマスクするように働く。
The multiplexer 1430 is connected to the memory bus 1
Controls the specific data sent to 22. Multiplexer 1430 is connected to register 904 to receive the display refresh address via bus 1431.
Similarly, multiplexer 1430 receives the composite host address from registers 906 and 907 via bus 1433. Register 905 containing host data is bidirectionally connected to multiplexer 1430 via bus 1434. The word address portion 1202 of central processing unit address register 1200 is provided to multiplexer 1430 via bus 1435. Bus 1436 bidirectionally connects multiplexer 1430 to right mask 1437, left mask 1438, input / output latch 1439,
Then, it is connected to the central processing unit 200 via the bus 205. The right mask 1437 is controlled from the sequencer 1400 via line 1413. Similarly, the left mask 14
38 is controlled by sequencer 1400 via line 1414. The right mask 1437 is the multiplexer 1
Input / output latch 143 from 430 via bus 1436
9 acts to mask the least significant bit portion of the data sent to 9. Similarly, the left mask 1438 acts to mask the most significant bits of this data transfer.

【0066】中央処理ユニットは、中央処理ユニットの
最上位ビットデータラッチ1440及び中央処理ユニッ
トの最下位ビットデータラッチ1445を備えており、
これらは、バス205を経て入力/出力ラッチ1439
に両方向接続される。シーケンサ1400からのライン
1415は、データ転送が最上位ビット1440から生
じるか又は最下位ビット1445から生じるかを決定す
る。中央処理ユニット200は、更に、中央処理ユニッ
トのデータラッチ1440及び1445の2つの部分に
両方向接続されたバレルシフタ1450を備えている。
バレルシフタ1450は、中央処理ユニットの最上位ビ
ットデータラッチ1440及び中央処理ユニットの最下
位ビットデータラッチ1445の組合せ体から受け取っ
たデータを中央処理ユニット200によって指定された
ようにシフトする。バレルシフタ1450は、フィール
ド符号/ゼロ拡張制御器1451によって制御される。
図11について述べたように、フィールド拡張0ビット
1106又はフィールド拡張1ビット1108は、フィ
ールドが拡張された符号であるか拡張されたゼロである
かを指定する。状態レジスタ1100のこれら2つのビ
ットの1つが拡張された特定の命令によって選択され
る。この制御は、バレルシフタ1450に送られ、以下
で述べるように用いられる。バレルシフタ1450は、
バス1455を経て中央処理ユニット200の他の部分
に接続される。
The central processing unit comprises a central processing unit most significant bit data latch 1440 and a central processing unit least significant bit data latch 1445.
These are input / output latches 1439 via bus 205.
Is connected in both directions. Line 1415 from sequencer 1400 determines whether the data transfer originates from most significant bit 1440 or least significant bit 1445. Central processing unit 200 further includes a barrel shifter 1450 bidirectionally connected to two portions of central processing unit data latches 1440 and 1445.
Barrel shifter 1450 shifts the data received from the combination of central processing unit most significant bit data latch 1440 and central processing unit least significant bit data latch 1445 as specified by central processing unit 200. Barrel shifter 1450 is controlled by field code / zero extend controller 1451.
As described with respect to FIG. 11, field extension 0 bit 1106 or field extension 1 bit 1108 specify whether the field is an extended code or an extended zero. One of these two bits of the status register 1100 is selected by the extended specific instruction. This control is sent to the barrel shifter 1450 and used as described below. Barrel shifter 1450
It is connected to other parts of the central processing unit 200 via the bus 1455.

【0067】メモリ制御器250の一般的な動作を、図
14について以下に説明する。シーケンサ1400によ
って受信された特定の制御及びデータ信号に基づいて、
シーケンサ1400は、バス122を経てメモリ130
へ供給するためにマルチプレクサ1430に送られる1
つのソースを選択する。従って、例えば、シーケンサ1
400は、マルチプレクサ1430が、レジスタ902
に記憶された表示リフレッシュアドレスを、ライン14
01の表示リフレッシュ要求に応答してメモリに接続で
きるようにする。同様に、ライン1402上のDRAM
リフレッシュ要求は、シーケンサ1400がマルチプレ
クサ1430を制御して、レジスタ904に記憶された
ビデオRAMリフレッシュアドレスをメモリ132に供
給するようにする。ライン1403に現われるホストア
クセス要求及びライン1404に現われるホスト読み取
り/書き込み制御信号により、シーケンサ1400は、
マルチプレクサ1430を制御して、両レジスタ906
及び907に記憶されたホストアドレスをバス122を
経てメモリ130に供給できるようにすると共に、選択
された動作に基づいてメモリとレジスタ905との間で
データを交換できるようにする。更に、ライン1405
に現われる中央処理ユニットのアクセス要求と、ライン
1406に現われる中央処理ユニットの読み取り/書き
込み制御信号とにより、シーケンサ1400は、中央処
理ユニットのアドレスレジスタ1200のサブ部分12
02に記憶された中央処理ユニットのワードアドレスを
マルチプレクサ1430を経てメモリ130へ接続でき
るようにする。次いで、入力1406に現われる中央処
理ユニットの読み取り/書き込み制御信号によって選択
された読み取り又は書き込み動作に基づいて、メモリ1
30と中央処理ユニットとの間でバス1436を経てデ
ータの交換が行なわれる。この場合、このデータは、シ
ーケンサ1400から制御ライン1413及び1414
を各々経て送られた制御信号に基づいて右マスク143
7及び左マスク1438によってマスクされる。このデ
ータは、次いで、以下で詳細に述べるように、中央処理
ユニットの最下位ビットデータラッチ1445及び中央
処理ユニットの最上位ビットデータラッチ1440から
のデータと交換される。
The general operation of the memory controller 250 is described below with respect to FIG. Based on the particular control and data signals received by the sequencer 1400,
The sequencer 1400 has a memory 130 via the bus 122.
1 sent to multiplexer 1430 for feeding to
Choose one source. Therefore, for example, the sequencer 1
400 includes a multiplexer 1430 and a register 902.
The display refresh address stored in
Enables connection to memory in response to 01 display refresh request. Similarly, DRAM on line 1402
The refresh request causes the sequencer 1400 to control the multiplexer 1430 to provide the video RAM refresh address stored in the register 904 to the memory 132. With the host access request appearing on line 1403 and the host read / write control signal appearing on line 1404, sequencer 1400
The multiplexer 1430 is controlled to control both registers 906.
And 907 to provide the host address stored in the memory 130 via the bus 122 and to exchange data between the memory and the register 905 based on the selected operation. In addition, line 1405
In response to the central processing unit access request appearing on line 1406 and the central processing unit read / write control signal appearing on line 1406, sequencer 1400 causes central processing unit address register 1200 subpart 12
The word address of the central processing unit stored in 02 can be connected to the memory 130 via the multiplexer 1430. Then, based on the read or write operation selected by the read / write control signal of the central processing unit appearing at input 1406, the memory 1
Data is exchanged between 30 and the central processing unit via bus 1436. In this case, this data is sent from the sequencer 1400 to control lines 1413 and 1414.
The right mask 143 based on the control signals sent via
7 and the left mask 1438. This data is then exchanged with data from the least significant bit data latch 1445 of the central processing unit and the most significant bit data latch 1440 of the central processing unit, as described in detail below.

【0068】図15は、表示要求信号をライン1401
に発生できるようにする水平及び垂直のリセット信号を
発生する構造体を示している。図15に示された構造体
は、ビデオディスプレイ170によるビデオ表示の形成
を制御するビデオ表示制御器270の一部分である。ド
ットレート、即ち、ビデオディスプレイ170における
ピクセル表示レートのビデオクロックが入力1501に
受け取られる。このビデオクロックは、カウンタ151
0のカウント入力に送られる。比較器1520は、カウ
ンタ1510のカウントを受け取り、これを、水平ライ
ンにおけるピクセル又はピクセル等化物の全数に対応す
るレジスタ1530に記憶されたカウントと比較する。
これら2つのカウントが等しい場合には、比較器152
0が水平リセット信号に対応する出力をライン1502
に発生する。この出力は、カウンタ1510のリセット
入力に送られてこのカウンタをリセットし、次のライン
についてのカウントを開始させる。水平リセット信号1
502は、ディスプレイリフレッシュ要求1401をシ
ーケンサ1400に供給できるようにする信号である。
FIG. 15 shows the display request signal on line 1401.
2 shows a structure for generating horizontal and vertical reset signals that can be generated at the same time. The structure shown in FIG. 15 is part of a video display controller 270 that controls the formation of the video display by video display 170. A video clock at the dot rate, ie the pixel display rate at the video display 170, is received at the input 1501. This video clock uses the counter 151
Sent to count input of 0. Comparator 1520 receives the count of counter 1510 and compares it with the count stored in register 1530 corresponding to the total number of pixels or pixel equalizations in a horizontal line.
If these two counts are equal, the comparator 152
0 indicates the output corresponding to the horizontal reset signal on the line 1502.
Occurs in. This output is sent to the reset input of counter 1510 to reset it and start counting for the next line. Horizontal reset signal 1
502 is a signal that enables the display refresh request 1401 to be supplied to the sequencer 1400.

【0069】比較器1520によって発生された水平リ
セット1502は、第2のカウンタ1540に供給され
る。カウンタ1540は、水平リセット信号をカウント
し、このカウントを比較器1550に供給する。又、比
較器1550は、垂直フレーム当たりのライン又はライ
ン等化物の全数を記憶するレジスタ1506からのカウ
ントも受け取る。比較器1550は、これら2つのカウ
ントが等しい時の垂直リセットに対応する出力信号をラ
イン1503に発生する。この垂直リセット信号は、カ
ウンタ1540のリセット入力に送られ、このカウンタ
をリセットする。垂直リセット信号1503の発生によ
り、レジスタ901に記憶された表示アドレスの開始点
がレジスタ902に記憶され、表示リフレッシュアドレ
スを新たなビデオフレームの開始点にリセットする。
The horizontal reset 1502 generated by the comparator 1520 is supplied to the second counter 1540. The counter 1540 counts the horizontal reset signal and supplies this count to the comparator 1550. Comparator 1550 also receives a count from register 1506, which stores the total number of lines or line equalizations per vertical frame. Comparator 1550 produces an output signal on line 1503 corresponding to a vertical reset when these two counts are equal. This vertical reset signal is sent to the reset input of the counter 1540 to reset this counter. When the vertical reset signal 1503 is generated, the start point of the display address stored in the register 901 is stored in the register 902, and the display refresh address is reset to the start point of a new video frame.

【0070】図16は、シーケンサ1400の入力14
02に送られるDRAMリフレッシュ要求信号を発生す
る構造体を示している。中央処理ユニットのクロック信
号は、入力1601に受け取られる。この中央処理ユニ
ットのクロック信号は、中央処理ユニット200を作動
してその作動速度を制御するクロック信号である。この
信号は、プログラム可能な除算器1610に送られる。
プログラム可能な除算器1610には、ライン1602
を経て制御信号も供給される。この制御信号は、高速/
低速デコーダ1620から受け取られる。高速/低速デ
コーダ1620は、制御ビットレジスタ910の一部分
でありリフレッシュレートビット911に作用する。前
記したように、好ましい実施例によれば、このビット
は、ダイナミックランダムアクセスメモリが32個の中
央処理ユニットサイクルごとに1度リフレッシュされる
か64個のサイクルごとに一度リフレッシュされるかを
指示するか、或いは、ダイナミックランダムアクセスメ
モリのリフレッシュ信号が発生されないかどうかを指示
する。制御レジスタ910のリフレッシュレートビット
911によれば、高速/低速デコーダ1620は、プロ
グラム可能な除算器1610に信号を発生する。プログ
ラム可能な除算器1610は、この制御信号を受け取
り、ダイナミックランダムアクセスメモリリフレッシュ
要求信号を選択されたレートで出力1603に発生す
る。これは、ダイナミックランダムアクセスメモリのリ
フレッシュ要求を発するためにシーケンサ1400の入
力1402に供給される。
FIG. 16 shows the input 14 of the sequencer 1400.
2 shows a structure for generating a DRAM refresh request signal sent to the H.02. The central processing unit clock signal is received at input 1601. The central processing unit clock signal is the clock signal that operates the central processing unit 200 to control its operating speed. This signal is sent to programmable divider 1610.
Programmable divider 1610 has line 1602
A control signal is also supplied via. This control signal is high speed /
Received from the slow decoder 1620. The fast / slow decoder 1620 is part of the control bit register 910 and operates on the refresh rate bits 911. As mentioned above, according to the preferred embodiment, this bit indicates whether the dynamic random access memory is refreshed once every 32 central processing unit cycles or once every 64 cycles. Alternatively, it indicates whether the refresh signal of the dynamic random access memory is not generated. According to the refresh rate bit 911 of the control register 910, the fast / slow decoder 1620 generates a signal to the programmable divider 1610. Programmable divider 1610 receives this control signal and generates a dynamic random access memory refresh request signal at output 1603 at a selected rate. It is fed to the input 1402 of the sequencer 1400 to issue a refresh request for the dynamic random access memory.

【0071】図17は、シーケンサ1400の詳細なブ
ロック図である。シーケンサ1400は、1組のラッチ
1700、プログラム可能な入力アドレスの論理アレイ
1710、アドレスレジスタ1720、制御リードオン
リメモリ1730及びマイクロシーケンサ1740を備
えている。種々の要求信号は、1組のラッチ1700内
の個々のラッチに送られる。これらラッチの信号は、プ
ログラム可能な入力アドレス論理アレイ1710に送ら
れ、これは、制御リードオンリメモリ1730へ供給す
るための入力アドレスを発生する。この導出された入力
アドレスは、アドレスレジスタ1720に記憶される。
この入力アドレスがいったん発生されると、制御リード
オンリメモリ1730は、シーケンサ1400の種々の
出力信号を発生するようにマイクロシーケンサ1740
の動作を制御する。
FIG. 17 is a detailed block diagram of the sequencer 1400. The sequencer 1400 comprises a set of latches 1700, a programmable input address logic array 1710, an address register 1720, a control read only memory 1730 and a microsequencer 1740. Various request signals are sent to individual latches within the set of latches 1700. The signals in these latches are sent to a programmable input address logic array 1710, which generates the input address for supply to the control read only memory 1730. The derived input address is stored in the address register 1720.
Once this input address is generated, the control read-only memory 1730 causes the microsequencer 1740 to generate the various output signals of the sequencer 1400.
Control the behavior of.

【0072】ラッチ1700は、シーケンサ1400に
供給される種々の要求及び制御信号を記憶するための1
組のラッチを備えている。ラッチ1700は、表示リフ
レッシュ信号を受信する表示要求ラッチ1701を備え
ている。DRAMリフレッシュ要求ラッチ1702は、
ライン1400のDRAMリフレッシュ要求信号を受け
取る。ホスト要求ラッチ1703は、ライン1403の
ホスト要求信号を受け取る。ホスト読み取り/書き込み
制御ラッチ1704は、ライン1404のホスト読み取
り/書き込み制御信号を受け取る。中央処理ユニットの
第3の要求ラッチ1705は、以下で詳細に述べるよう
に、マイクロシーケンサ1740により、制御ライン1
743を経てセットされる。同様に、中央処理ユニット
の第2の要求ラッチ1706は、マイクロシーケンサ1
740によってセットされる。中央処理ユニットの第1
の要求ラッチ1707は、ライン1405に現われる中
央処理ユニットの要求信号を受け取る。更に、中央処理
ユニットの読み取り/書き込みラッチ1708は、ライ
ン1406に現われる中央処理ユニットの読み取り/書
き込み制御信号を受け取る。
Latch 1700 is for storing various request and control signals provided to sequencer 1400.
It has a set of latches. The latch 1700 includes a display request latch 1701 that receives a display refresh signal. The DRAM refresh request latch 1702 is
Receive the DRAM refresh request signal on line 1400. Host request latch 1703 receives the host request signal on line 1403. Host read / write control latch 1704 receives the host read / write control signal on line 1404. The third request latch 1705 of the central processing unit is controlled by the microsequencer 1740 as described in detail below.
It is set after 743. Similarly, the second request latch 1706 of the central processing unit is the microsequencer 1
740. First of the central processing unit
The request latch 1707 of FIG. 1 receives the central processing unit request signal appearing on line 1405. In addition, the central processing unit read / write latch 1708 receives the central processing unit read / write control signal appearing on line 1406.

【0073】プログラム可能な入力アドレス論理アレイ
1710は、ラッチ1700の各々からの信号を受け取
る。更に、プログラム可能な入力アドレス論理アレイ1
710は、マイクロシーケンサ1740から制御信号1
742を受け取る。この制御信号は、主として、マイク
ロシーケンサ1740が現在のメモリアクセス要求の対
応に拘っているかどうかを指示する。プログラム可能な
入力アドレス論理アレイ1710に送られる信号に基づ
いて、制御リードオンリメモリ1730内の入力点を指
定するアドレスが発生される。このアドレスは、アドレ
スレジスタ1720に送られ、ここに記憶される。
Programmable input address logic array 1710 receives signals from each of latches 1700. In addition, programmable input address logic array 1
710 is a control signal 1 from the microsequencer 1740.
Receive 742. This control signal primarily indicates whether the microsequencer 1740 is committed to serving the current memory access request. An address designating an input point in the control read only memory 1730 is generated based on the signal sent to the programmable input address logic array 1710. This address is sent to the address register 1720 and stored there.

【0074】アドレスレジスタ1720、制御リードオ
ンリメモリ1730及びマイクロシーケンサ1740
は、プログラム可能な制御器を構成する。プログラム可
能な入力点論理アレイ1710により制御リードオンリ
メモリ1730内で選択された入力点は、対応するメモ
リアクセス要求に応じるためのサブルーチンの開始点で
ある。制御リードオンリメモリ1730に記憶されたこ
れらサブルーチンの命令は、マイクロシーケンサ174
0に順次に供給され、該マイクロシーケンサは、ライン
1413、1414、1415及び1416に現われる
これらの命令に基づいて種々の出力動作を実行する。こ
の点について、次の命令を呼び出せるようにするために
通常の命令が実行されるたびにマイクロシーケンサ17
40からライン1741を経てアドレスレジスタ172
0へ増加信号が供給される。上記の出力に加えて、マイ
クロシーケンサ1740は、ライン1743を経てラッ
チ1700へ制御出力を発生する。この制御出力は、ラ
ッチ1700内の種々のラッチのセット及びリセットに
関連している。更に、マイクロシーケンサ1740は、
ライン1404を経てホスト読み取り/書き込み制御信
号を受け取ると共に、ライン1406を経て中央処理ユ
ニットの読み取り/書き込み制御信号を受け取る。制御
リードオンリメモリ1730内の特定の制御サブルーチ
ンの一般的な概要を、図18、図19、図20及び図2
1について以下に詳細に説明する。
Address register 1720, control read only memory 1730 and micro sequencer 1740
Constitute a programmable controller. The input point selected in the control read-only memory 1730 by the programmable input point logic array 1710 is the starting point of a subroutine for responding to the corresponding memory access request. The instructions of these subroutines stored in the control read-only memory 1730 are stored in the micro sequencer 174.
0 sequentially, the microsequencer performs various output operations based on these instructions appearing on lines 1413, 1414, 1415 and 1416. In this regard, the microsequencer 17 is executed each time a normal instruction is executed so that the next instruction can be called.
40 through line 1741 to address register 172
An increment signal is provided to zero. In addition to the outputs described above, the microsequencer 1740 produces a control output to the latch 1700 via line 1743. This control output is associated with setting and resetting the various latches within latch 1700. In addition, the microsequencer 1740
A host read / write control signal is received via line 1404 and a central processing unit read / write control signal is received via line 1406. A general overview of a specific control subroutine within the control read-only memory 1730 is shown in FIGS. 18, 19, 20 and 2.
1 will be described in detail below.

【0075】図18は、プログラム可能な入力アドレス
論理アレイ1710の動作を詳細に示すプログラム18
00の図である。特に、プログラム1800は、プログ
ラム可能な入力アドレス論理アレイ1710により入力
点アドレスを決定する際の動作の優先順位を示してい
る。好ましい実施例では、図18に示す機能を実行する
ためにプログラム可能な入力アドレス論理アレイ171
0に特殊なハードウェア論理を使用しているが、この同
じ機能を実行するためのプログラムを制御リードオンリ
メモリ1730内に設けることもできる。
FIG. 18 illustrates Program 18 which details the operation of programmable input address logic array 1710.
It is a figure of 00. In particular, program 1800 illustrates the priority of operations in determining the input point address by programmable input address logic array 1710. In the preferred embodiment, an input address logic array 171 programmable to perform the functions shown in FIG.
Although a special hardware logic is used for 0, a program for performing this same function can be provided in the control read only memory 1730.

【0076】プログラム18は、メモリアクセス要求が
優先順に処理されるような連続的なループを構成する。
マイクロシーケンサ1740がその手前のサイクル中ア
イドリング状態でない場合には、プログラム1800
は、受け取った要求が表示リフレッシュ要求であるかど
うかを判断する(判断ブロック1801)。このような
場合には、表示リフレッシュ要求が処理される(処理ブ
ロック1802)。これは、ディスプレイをリフレッシ
ュするためのサブルーチンを含む制御リードオンリメモ
リ1730内の開始アドレスを発生することにより達成
される。前記したように、その表示リフレッシュには、
次に表示すべきデータをビデオRAM132から呼び出
し、レジスタ903に記憶された表示アドレス増分によ
りレジスタ902に記憶された表示リフレッシュアドレ
スを更新することを含む。新たなフレームが開始した場
合には、レジスタ901に記憶された表示アドレスの開
始点をレジスタ902にロードして、表示リフレッシュ
アドレスをリセットすることを含む。このプロセスは一
般的なもので良く知られているから、ここではこれ以上
説明しない。
The program 18 constitutes a continuous loop in which memory access requests are processed in priority order.
If the microsequencer 1740 is not idle during the previous cycle, the program 1800
Determines whether the received request is a display refresh request (decision block 1801). In such a case, the display refresh request is processed (processing block 1802). This is accomplished by generating a starting address in control read-only memory 1730 that contains a subroutine for refreshing the display. As mentioned above, the display refresh is
This includes calling the data to be displayed next from the video RAM 132 and updating the display refresh address stored in the register 902 by the display address increment stored in the register 903. When a new frame starts, this includes loading the start point of the display address stored in the register 901 into the register 902 and resetting the display refresh address. This process is well known in the art and will not be discussed further here.

【0077】ペンディングになっている要求が表示リフ
レッシュ要求でない場合には、プロセス1800は、ペ
ンディングになっている要求がDRAMリフレッシュ要
求であるかどうかを判断するテストを行なう(判断ブロ
ック1803)。ペンディングになっている要求がこの
ようなDRAMリフレッシュ要求である場合には、この
DRAMリフレッシュ要求が処理される(処理ブロック
1804)。このDRAMリフレッシュ要求は、表示リ
フレッシュ要求について上記したように処理される。プ
ログラム可能な入力アドレス論理アレイ1710は、D
RAMリフレッシュ要求を実行するようにマイクロシー
ケンサ1740を制御するプログラムを含んだ制御リー
ドオンリメモリ1730内のサブルーチンの開始アドレ
スを発生する。このプロセスは、一般的なものであり、
これ以上は説明しない。このリフレッシュ要求が処理さ
れた後に、プログラム1800は、処理ブロック180
1において表示リフレッシュ要求が最高の優先順位の動
作であるかどうか判断するテストに復帰する。
If the pending request is not a display refresh request, process 1800 tests to determine if the pending request is a DRAM refresh request (decision block 1803). If the pending request is such a DRAM refresh request, then the DRAM refresh request is processed (processing block 1804). This DRAM refresh request is processed as described above for the display refresh request. The programmable input address logic array 1710 is
A start address of a subroutine in the control read-only memory 1730 including a program for controlling the micro sequencer 1740 to execute the RAM refresh request is generated. This process is general
No further explanation will be given. After this refresh request has been processed, program 1800 proceeds to processing block 180.
Return to the test at 1 to determine if the display refresh request is the highest priority operation.

【0078】ペンディングになっている要求がDRAM
リフレッシュ要求でない場合には、プログラム1800
は、そのペンディングの要求がホストメモリアクセス要
求であるかどうか判断するようにチェックを行なう(判
断ブロック1805)。このペンディングの要求がホス
トメモリアクセス要求である場合には、この要求が処理
される(処理ブロック1806)。このホストメモリア
クセス要求は、制御リードオンリメモリ1730内のサ
ブルーチンの入力により上記したように処理される。こ
のホストメモリアクセス要求が処理されると、プログラ
ム1800は、判断ブロック1801において表示リフ
レッシュが最も優先順位の高いアクセスであるかどうか
判断するテストに復帰する。
DRAM is pending request
If it is not a refresh request, the program 1800
Checks to determine if the pending request is a host memory access request (decision block 1805). If the pending request is a host memory access request, then the request is processed (processing block 1806). This host memory access request is processed as described above by the input of the subroutine in the control read only memory 1730. When this host memory access request is processed, program 1800 returns to the test at decision block 1801 to determine if display refresh is the highest priority access.

【0079】プログラム1800は、ペンディングにな
っている要求が中央処理ユニットの第3のアクセス要求
であるかどうか判断するテストを行なう(判断ブロック
1807)。図13Iに示すように、中央処理ユニット
200からのフィールドアクセス要求は、3つの連続す
るメモリワードアクセスの実行を要求することができ
る。中央処理ユニットの第2のアクセス要求が処理され
そして中央処理ユニットの第3のアクセス要求が必要と
される場合には、マイクロシーケンサ1740がライン
1743に制御信号を発生し、中央処理ユニットの第3
要求ラッチ1705をセットする。このような場合に
は、中央処理ユニットの第3アクセス要求が処理される
(処理ブロック1808)。このプロセスは、図21に
示されたプログラム2100に関連して以下で詳細に説
明する。
Program 1800 tests to determine if the pending request is a third access request of the central processing unit (decision block 1807). As shown in FIG. 13I, a field access request from central processing unit 200 can request execution of three consecutive memory word accesses. When the second access request of the central processing unit is processed and the third access request of the central processing unit is required, the microsequencer 1740 generates a control signal on line 1743 to cause the third access of the central processing unit to be completed.
The request latch 1705 is set. In such a case, the third access request of the central processing unit is processed (processing block 1808). This process is described in detail below in connection with program 2100 shown in FIG.

【0080】ペンディングになっている要求が中央処理
ユニットの第3のアクセス要求でない場合には、プログ
ラム1800は、これが中央処理ユニットの第2のアク
セス要求であるかどうか判断するようにテストする(判
断ブロック1809)。再び、図13を参照すれば、図
13Eないし図13Iから明らかなように、中央処理ユ
ニット200によるフィールドアクセスが2つ(又はそ
れ以上)の連続するメモリワードアクセスを必要とする
ような多数の場合がある。中央処理ユニットの第1のア
クセス要求が処理されそして中央処理ユニットの第2の
アクセス要求が必要とされることが決定された場合に
は、マイクロシーケンサ1740がライン1743に制
御信号を発生し、中央処理ユニットの第2の要求ラッチ
1706をセットする。この場合には、中央処理ユニッ
トのこの第2のアクセス要求が処理される(処理ブロッ
ク1810)。このプロセスは、図20に示したプログ
ラム2000について以下で詳細に説明する。前記した
場合と同様に、このアクセス要求が処理されると、プロ
グラム1800は判断ブロック1801に復帰し、表示
リフレッシュ要求が発せられたかどうか判断される。
If the pending request is not the central processing unit's third access request, the program 1800 tests to determine if this is the central processing unit's second access request (decision). Block 1809). Referring again to FIG. 13, as is apparent from FIGS. 13E-13I, in many cases where a field access by central processing unit 200 requires two (or more) consecutive memory word accesses. There is. If it is determined that the first access request of the central processing unit is processed and the second access request of the central processing unit is needed, the microsequencer 1740 generates a control signal on line 1743, The second request latch 1706 of the processing unit is set. In this case, this second access request of the central processing unit is processed (processing block 1810). This process is described in detail below for the program 2000 shown in FIG. Once this access request has been processed, as before, program 1800 returns to decision block 1801 to determine if a display refresh request has been issued.

【0081】他のメモリアクセス要求がペンディングに
なっていない場合に、中央処理ユニットのアクセス要求
に第1の優先順位を与えるために、プログラム1800
は、中央処理ユニットの第1のアクセス要求以外にペン
ディングのアクセス要求があるかどうかを決定するテス
トを行なう(判断ブロック1811)。他のアクセス要
求がペンディングになっている場合には、プログラムの
流れが判断ブロック1801に復帰し、それより高い優
先順位のメモリアクセス要求があるかどうかテストす
る。然し乍ら、ペンディングになっているアクセス要求
が他にない場合には、プログラム1800はこれが中央
処理ユニットの第1のアクセス要求であるかどうかを判
断するようにテストする(判断ブロック1812)。中
央処理ユニット200がメモリ130にアクセスしよう
とする時には、該ユニットがライン1405を経てシー
ケンサ1400にこの要求を発する。このような要求の
発信が中央処理ユニットの第1のアクセス要求である。
このような中央処理ユニットのアクセス要求が発せられ
ない場合には、プログラム1800は、それより優先順
位の高い他のアクセス要求がペンディングになっている
かどうかのテストに復帰する(判断ブロック181
1)。このシーケンスは、このループに保持されるが、
それより優先順位の高い要求が発せられた場合には、判
断ブロック1811においてプログラムの流れが判断ブ
ロック1801に向けられ、その要求がテストされて処
理されるか、或いは、中央処理ユニットの第1のアクセ
ス要求が発せられた場合には、これが処理される(処理
ブロック1813)。
In order to give the central processing unit access request a first priority when another memory access request is not pending, the program 1800
Performs a test to determine if there is a pending access request other than the central processing unit first access request (decision block 1811). If another access request is pending, program flow returns to decision block 1801 to test for a higher priority memory access request. However, if there are no other pending access requests, then program 1800 tests to determine if this is the central processing unit's first access request (decision block 1812). When central processing unit 200 attempts to access memory 130, it issues this request to sequencer 1400 via line 1405. Issuing such a request is the first access request of the central processing unit.
If no such central processing unit access request is issued, the program 1800 returns to the test if another higher priority access request is pending (decision block 181).
1). This sequence is kept in this loop,
If a higher priority request is issued, then in decision block 1811 the program flow is directed to decision block 1801 to test and process the request, or alternatively to the first of the central processing units. If an access request was issued, it is processed (processing block 1813).

【0082】この優先順位技術は、2つ以上のメモリア
クセス要求が同時にペンディングになった場合にメモリ
アクセスの順序を制御するように働く。2つ以上のメモ
リアクセス要求が同時にペンディングになった場合に
は、それらが優先順位に実行される。この場合、表示リ
フレッシュ要求が最も優先順位が高く、次いで、DRA
Mリフレッシュ要求、ホストアクセス要求、中央処理ユ
ニットの第3のアクセス要求、中央処理ユニットの第2
のアクセス要求、そして最後に、中央処理ユニットの第
1のアクセス要求と続く。中央処理ユニットの次々のア
クセス要求に対して次第に高い別々の優先順位を与える
ことにより、2つの結果が得られる。先ず第1に、中央
処理ユニットのマルチワードアクセス要求が部分的に完
了され、次いで、それより優先順位の高い要求によって
割り込まれる。更に、このような中央処理ユニットのマ
ルチワードアクセス要求では次々のワードアクセスに次
第に高い優先順位が与えられるので、中央処理ユニット
は、別の個別の中央処理ユニットアクセスを処理できる
までこのようなマルチワードアクセスの完了を待機しな
ければならない。これは、中央処理ユニットの2つのア
クセス要求が干渉するのを防止する。判断ブロック18
11及び1812を含むループは、他のアクセス要求が
ペンディングでない場合には中央処理ユニットの第1の
アクセス要求が最も高い優先順位を有するようにする
が、他のメモリアクセス要求がペンディングになってい
る場合には最も低い優先順位を有するようにする。
This priority technique serves to control the order of memory accesses when two or more memory access requests are pending at the same time. If two or more memory access requests are pending at the same time, they are executed in priority order. In this case, the display refresh request has the highest priority, and then the DRA
M refresh request, host access request, central processing unit third access request, central processing unit second
Access request, and finally, the first access request of the central processing unit. By giving progressively higher and different priorities to successive access requests of the central processing unit, two results are obtained. First of all, the multi-word access request of the central processing unit is partially completed and then interrupted by the higher priority request. Moreover, since the multi-word access requests of such a central processing unit will be given progressively higher priorities to successive word accesses, the central processing unit will not be able to process such individual multi-word access until another individual central processing unit access can be processed. You have to wait for access to complete. This prevents the two access requests of the central processing unit from interfering. Decision block 18
The loop including 11 and 1812 ensures that the first access request of the central processing unit has the highest priority if no other access request is pending, but other memory access requests are pending. If so, have the lowest priority.

【0083】前記したように、図18に示したプロセス
は、プロセッサによって実行されるプログラムによるの
ではなくて、プログラム可能な入力アドレス論理アレイ
1710を用いて実行されるのが好ましい。プログラム
可能な入力アドレス論理アレイ1710は、表示要求ラ
ッチ1701がセットされた時に表示リフレッシュ要求
を処理するために、制御リードオンリメモリ1730内
のプログラムシーケンスの開始アドレスを発生する。表
示リフレッシュ要求がない時にDRAMリフレッシュ要
求ラッチ1702がセットされた場合には、プログラム
可能な入力アドレス論理アレイ1710は、ERAMリ
フレッシュ要求に応じるために制御リードオンリメモリ
1730内の開始アドレスを発生する。同様に、プログ
ラム可能な入力アドレス論理アレイ1710は、要求ラ
ッチ1700のいずれかがセットされた時に図18につ
いて前記した優先順位に基づいて動作を実行するため
に、制御リードオンリメモリ1730内の開始アドレス
を発生する。
As noted above, the process shown in FIG. 18 is preferably performed using programmable input address logic array 1710, rather than by a program being executed by a processor. Programmable input address logic array 1710 generates the start address of the program sequence in control read-only memory 1730 to process the display refresh request when display request latch 1701 is set. If the DRAM refresh request latch 1702 is set when there is no display refresh request, the programmable input address logic array 1710 will generate a starting address in the control read only memory 1730 to satisfy the ERAM refresh request. Similarly, programmable input address logic array 1710 is configured to control the start address in control read only memory 1730 to perform operations based on the priorities described above with respect to FIG. 18 when any of request latches 1700 are set. To occur.

【0084】図19は、中央処理ユニットの第1アクセ
ス要求を処理するプログラム1900を示している。こ
のプログラム1900は、図18に示した処理ブロック
1813に対応するもので、制御リードオンリメモリ1
730に記憶されたサブルーチンを処理する1組のメモ
リアクセスの1つである。このプログラムに入ると(ス
タートブロック1901)、プログラムは、最初に、ア
クセス要求が読み取りアクセスであるかどうか判断する
テストを行なう(判断ブロック1902)。この判断
は、ライン1406を経てシーケンサ1400に送られ
る中央処理ユニットの読み取り/書き込み信号の状態に
基づいて行なわれる。メモリアクセス要求がメモリの読
み取りを要求する場合には、メモリが読み取られる(処
理ブロック1903)。これは、中央処理ユニットのア
ドレスレジスタ1202に記憶されたアドレスをメモリ
読み取り信号と共にマルチプレクサ1430を経てメモ
リ130に送ることによって実行される。このメモリ位
置に記憶されたデータワードは、次いで、入力/出力ラ
ッチ1439にロードされる。右マスク1437及び左
マスク1438は、このデータ転送に対して何の影響も
与えない。このデータは、次いで、中央処理ユニットの
最下位ビットデータラッチ1445にロードされる(処
理ブロック1904)。所望のデータフィールド内に存
在しないメモリのデータは、以下で述べるように、バレ
ルシフタ1450において除去される。次いで、プログ
ラムは、判断ブロック1914へと進み、中央処理ユニ
ットの第2のアクセス要求が必要であるかどうかテスト
される。
FIG. 19 shows a program 1900 for processing the first access request of the central processing unit. This program 1900 corresponds to the processing block 1813 shown in FIG.
730 is one of a set of memory accesses to process the subroutine stored in 730. Upon entering the program (start block 1901), the program first tests (decision block 1902) to determine if the access request is a read access. This decision is made based on the state of the central processing unit read / write signal sent to the sequencer 1400 via line 1406. If the memory access request requires a read of memory, then the memory is read (processing block 1903). This is done by sending the address stored in the address register 1202 of the central processing unit to the memory 130 via the multiplexer 1430 along with the memory read signal. The data word stored in this memory location is then loaded into the input / output latch 1439. Right mask 1437 and left mask 1438 have no effect on this data transfer. This data is then loaded into the least significant bit data latch 1445 of the central processing unit (processing block 1904). Memory data that is not present in the desired data field is removed at barrel shifter 1450, as described below. The program then proceeds to decision block 1914 where it is tested whether a second access request of the central processing unit is needed.

【0085】中央処理ユニットのアクセス要求が書き込
み要求であり、読み取り要求ではない場合には、プログ
ラム1900は、ビットアドレスがゼロであるかどうか
判断するテストを行なう(判断ブロック1905)。こ
のテストは、ゼロ検出回路1420によって簡単に行な
われる。この回路は、ビットアドレスを受け取り、ビッ
トアドレスがゼロであるかどうかを指示する信号をライ
ン1408に発生する。ビットアドレスがゼロの場合に
は、所望のデータフィールドがメモリワードの境界で開
始する。これは、図13A、図13C、図13E図及び
図13Gに示された場合に対応する。ビットアドレスが
ゼロの場合には、プログラム1900は、ビットアドレ
ス及びフィールドサイズの和が16に等しいか又はそれ
より大きいかどうかを判断するテストを行なう(判断ブ
ロック1906)。加算器1418により形成されたビ
ットアドレス及びフィールドサイズの和は、ライン14
09及び1410とバス1411とを経てシーケンサ1
400に送られる。更に、ゼロ検出回路1421は、こ
の和の最下位4ビット(ビット0−3)がゼロであるか
どうかの指示を与える。この和は、ライン1409のビ
ット5が「1」であるか又はライン1410のビット4
が「1」であり且つビット0−3が非ゼロであることが
ライン1412によって指示された場合に、16より大
きくなる。もしこうであって、図13A、図13E及び
図13Gの場合に対応すれば、中央処理ユニットの第1
のアクセス要求は、簡単な書き込み動作となる。入力/
出力ラッチは、中央処理ユニットの最下位ビットデータ
ラッチ1445からロードされる(処理ブロック190
7)。次いで、プログラムは、入力/出力ラッチのデー
タを、レジスタ1202に記憶された中央処理ユニット
のワードアドレスで指示されたメモリに書き込む(処理
ブロック1913)。前記したように、プログラム19
00は、中央処理ユニットの第2のアクセスが要求され
るかどうか判断するテストを行なう(判断ブロック19
14)。
If the central processing unit access request is a write request and not a read request, program 1900 tests to determine if the bit address is zero (decision block 1905). This test is simply done by the zero detect circuit 1420. This circuit receives the bit address and produces a signal on line 1408 indicating whether the bit address is zero. If the bit address is zero, the desired data field starts at a memory word boundary. This corresponds to the case shown in FIGS. 13A, 13C, 13E and 13G. If the bit address is zero, program 1900 tests to determine if the sum of the bit address and field size is greater than or equal to 16 (decision block 1906). The sum of the bit address and field size formed by the adder 1418 is the line 14
09 and 1410 and the bus 1411 and the sequencer 1
Sent to 400. Furthermore, the zero detection circuit 1421 gives an indication as to whether the least significant 4 bits (bits 0-3) of this sum are zero. This sum is either bit 5 of line 1409 is "1" or bit 4 of line 1410.
Is '1' and bits 0-3 are non-zero, as indicated by line 1412, then greater than 16. If this is the case and corresponds to the case of FIGS. 13A, 13E and 13G, the first central processing unit
Access request is a simple write operation. input/
The output latch is loaded from the least significant bit data latch 1445 of the central processing unit (processing block 190).
7). The program then writes the data in the input / output latch to the memory pointed to by the word address of the central processing unit stored in register 1202 (processing block 1913). As mentioned above, the program 19
00 performs a test to determine if a second access of the central processing unit is required (decision block 19).
14).

【0086】ビットアドレスがゼロでない場合には、プ
ログラム1900は、ビットアドレスに対応する右マス
ク1427をセットする。ビットアドレスは、バス14
07を経てシーケンサ1400に送られる。ビットアド
レスが非ゼロであるか、或いは、ビットアドレスがゼロ
であって且つビットアドレスとフィールドサイズとの和
が16又は32のいずれかである場合には、プログラム
1900は、ビットアドレスとフィールドサイズとの和
が16より大きいかどうか判断するテストを行なう(判
断ブロック1909)。この和が16より小さい場合に
は、ビットアドレスがゼロであるか非ゼロであるかに拘
りなく、この和に基づいて左マスクがセットされる(処
理ブロック1910)。もしそうでなければ、フィール
ドがメモリワードの境界まで又はこれを越えて延びるた
めに、左マスクは不要となる。いずれにせよ、入力/出
力ラッチ1439は、中央処理ユニットの最下位ビット
データラッチ1445からロードされる(処理ブロック
1911)。レジスタ1202に記憶された中央処理ユ
ニットのワードアドレスによって指示されたメモリワー
ドが読み取られ、これが右マスク1437及び左マスク
1438と共に使用されて、入力/出力ラッチ1439
内のデータを変更する(処理ブロック1912)。この
プロセスは、選択されたデータフィールド内に存在しな
いメモリワードの部分が変えられないようにし、一方、
選択されたデータフィールド内のメモリワードの部分が
中央処理ユニットのデータラッチからそれまでにロード
されたデータと取り替えられるようにする。このように
して変更されたデータが同じメモリ位置に書き込まれる
(処理ブロック1913)。
If the bit address is not zero, program 1900 sets right mask 1427 corresponding to the bit address. Bit address is bus 14
It is sent to the sequencer 1400 via 07. If the bit address is non-zero, or if the bit address is zero and the sum of the bit address and the field size is either 16 or 32, the program 1900 sets the bit address and field size A test is made to determine if the sum of the two is greater than 16 (decision block 1909). If the sum is less than 16, then the left mask is set based on the sum, regardless of whether the bit address is zero or nonzero (processing block 1910). If not, the left mask is not needed because the field extends to or beyond the memory word boundary. In any case, the input / output latch 1439 is loaded from the least significant bit data latch 1445 of the central processing unit (processing block 1911). The memory word pointed to by the central processing unit word address stored in register 1202 is read and used with right mask 1437 and left mask 1438 to input / output latch 1439.
Modify the data within (processing block 1912). This process ensures that the parts of the memory word that are not within the selected data field are unchanged, while
Allows a portion of the memory word within the selected data field to be replaced by the data previously loaded from the central processing unit data latch. The data thus modified is written to the same memory location (processing block 1913).

【0087】プログラム1900は、中央処理ユニット
の第2のアクセスが必要とされるかどうかをテストする
ことによって終了する。これは、ビットアドレスとフィ
ールドサイズとの和が16より大きいかどうかをチェッ
クすることによって決定される。(判断ブロック191
4)。この和が16より大きい場合には、第2のアクセ
スが必要とされる。これは、中央処理ユニットの第2の
アクセス要求ラッチ1706をセットすることによって
指示される(処理ブロック1915)。これは、マイク
ロシーケンサ1740からライン1743を経て要求ラ
ッチ1700へ信号される。いずれにせよ、中央処理ユ
ニットの第1の要求のラッチがリセットされ(処理ブロ
ック1916)、要求が処理されたことを指示する。次
いで、プログラム1900が終了となる(終了ブロック
1917)。前記したように、プログラム1900は、
図18に示す処理ブロック1813と同等である。
Program 1900 ends by testing whether a second access of the central processing unit is required. This is determined by checking if the sum of the bit address and field size is greater than 16. (Decision Block 191
4). If this sum is greater than 16, then a second access is required. This is indicated by setting the second access request latch 1706 of the central processing unit (processing block 1915). This is signaled from the microsequencer 1740 via line 1743 to the request latch 1700. In any case, the first request latch of the central processing unit is reset (processing block 1916) indicating that the request has been processed. The program 1900 then ends (end block 1917). As mentioned above, the program 1900
This is equivalent to the processing block 1813 shown in FIG.

【0088】図20は、中央処理ユニットの第2のアク
セス要求を処理するプログラム2000を示している。
このプログラム2000は、図18に示した処理ブロッ
ク1810に対応し、これは、制御リードオンリメモリ
1730に記憶されたサブルーチンを処理する1組のメ
モリアクセスの1つである。このプログラムの開始は、
図19に示したプログラム1900と同様である。レジ
スタ1202に記憶された中央処理ユニットのワードア
ドレスは、中央処理ユニットの第2アクセスにおける正
しいメモリデータワードを参照するために増加しなけれ
ばならないことに注意されたい。中央処理ユニットのア
ドレスレジスタ1200に記憶されたアドレスは、ビッ
トアドレス1201を含んでいるので、次のメモリワー
ドを参照するためには、アドレスレジスタ1200に数
字16を追加しなければならない。
FIG. 20 shows a program 2000 for processing the second access request of the central processing unit.
This program 2000 corresponds to the processing block 1810 shown in FIG. 18, which is one of a set of memory accesses for processing a subroutine stored in the control read only memory 1730. The start of this program is
It is the same as the program 1900 shown in FIG. Note that the central processing unit word address stored in register 1202 must be incremented to reference the correct memory data word on the second access of the central processing unit. Since the address stored in the address register 1200 of the central processing unit contains the bit address 1201, the number 16 must be added to the address register 1200 to reference the next memory word.

【0089】このプログラムに入る時に(スタートブロ
ック2001)、最初に、アクセス要求が読み取りアク
セスであるかどうか判断するテストか行なわれる(判断
ブロック2002)。この判断は、ライン1406を経
てシーケンサ1400に供給される中央処理ユニットの
読み取り/書き込み信号の状態に基づいて行なわれる。
メモリアクセス要求がメモリの読み取りを必要とする場
合には、処理ブロック1903について上記したのと同
様に、メモリが読み取られる(処理ブロック200
3)。このようにしてメモリ130から呼び出されたデ
ータは、中央処理ユニットの最上位ビットデータラッチ
1440にロードされる(処理ブロック2004)。所
望のデータフィールド内に存在しないメモリのデータ
は、以下で詳細に述べるように、バレルシフタ1450
において除去される。次いで、プログラムは、判断ブロ
ック2011へと進み、中央処理ユニットの第3のアク
セス要求ガ必要であるかどうかのテストが行なわれる。
When entering this program (start block 2001), a test is first performed to determine if the access request is a read access (decision block 2002). This decision is made based on the state of the central processing unit read / write signal provided to sequencer 1400 via line 1406.
If the memory access request requires a memory read, then the memory is read as described above for processing block 1903 (processing block 200).
3). The data thus retrieved from memory 130 is loaded into the most significant bit data latch 1440 of the central processing unit (processing block 2004). The data in the memory that is not in the desired data field is stored in the barrel shifter 1450, as described in detail below.
Is removed at. The program then proceeds to decision block 2011 where a test is made as to whether a third access request of the central processing unit is required.

【0090】中央処理ユニットの第2のアクセス要求が
書き込み要求であって読み取り要求ではない場合には、
プログラム2000は、ビットアドレスとフィールドサ
イズとの和が32以上であるかどうかを判断するテスト
を行なう(判断ブロック2005)。ライン1409の
和のビット5が「1」である場合には、和が32以上で
ある。この和が32以上である場合には、書き込み動作
が第2ワードの境界を越えて延びる。このような場合に
は、中央処理ユニットの第2のアクセスが簡単な書き込
み動作である。従って、入力/出力ラッチは、中央処理
ユニットの最上位ビットデータラッチ1440からロー
ドされ(処理ブロック2006)、入力/出力ラッチの
データがメモリに書き込まれる(処理ブロック201
0)。読み取り動作の場合と同様に、プログラムは、次
いで、判断ブロック2011へ進み、中央処理ユニット
の第3のアクセス要求が必要であるかどうかのテストが
行なわれる。
If the second access request of the central processing unit is a write request and not a read request,
Program 2000 performs a test to determine if the sum of the bit address and field size is greater than or equal to 32 (decision block 2005). If bit 5 of the sum of line 1409 is "1", the sum is 32 or greater. If this sum is greater than or equal to 32, the write operation extends beyond the second word boundary. In such a case, the second access of the central processing unit is a simple write operation. Accordingly, the input / output latches are loaded from the central processing unit most significant bit data latch 1440 (processing block 2006) and the data from the input / output latch is written to memory (processing block 201).
0). As with the read operation, the program then proceeds to decision block 2011 where a test is made as to whether a third access request of the central processing unit is required.

【0091】ビットアドレスとフィールドサイズとの和
が32より小さい場合には、左マスクが必要とされる。
この左マスクは、ビットアドレスとフィールドサイズと
の和に基づいてセットされる(処理ブロック200
7)。入力/出力ラッチには、中央処理ユニットの最上
位ビットデータラッチ1440からデータがロードされ
る(処理ブロック2008)。中央処理ユニットのワー
ドアドレスにより指示されたメモリワードは、メモリ1
30から呼び出され、左マスク1438によってマスク
されながら入力/出力ラッチにロードされる(処理ブロ
ック2009)。このプロセスは、図19に示された処
理ブロック1912に関連して上記したものと同じであ
る。中央処理ユニットの第2のアクセスは当然メモリワ
ードの最下位ビットを含むことになるから、右マスクは
不要であることに注意されたい(図13E、図13F、
図13G、図13H及び図13I参照)。これで、入力
/出力ラッチは、メモリ130から呼び出して、選択さ
れたフィールド内のビットに対するフィールド書き込み
動作によって必要とされるように変更されたデータを含
むことになる。
If the sum of the bit address and field size is less than 32, a left mask is needed.
This left mask is set based on the sum of the bit address and the field size (processing block 200).
7). The input / output latches are loaded with data from the central processing unit most significant bit data latch 1440 (processing block 2008). The memory word designated by the word address of the central processing unit is the memory 1
Called from 30 and loaded into the input / output latch while being masked by the left mask 1438 (processing block 2009). This process is similar to that described above in connection with processing block 1912 shown in FIG. Note that the right mask is not needed, since the second access of the central processing unit will of course involve the least significant bit of the memory word (FIGS. 13E, 13F,
13G, 13H and 13I). The input / output latches will now contain the modified data as required by the field write operation, which is called from memory 130 and for the bits in the selected field.

【0092】プログラム2000は、中央処理ユニット
の第3のアクセスが必要とされるかどうかをテストする
ことによって終了となる。これは、ビットアドレスとフ
ィールドサイズとの和が32より大きいかどうかをチェ
ックすることにより決定される(判断ブロック201
1)。この和が32より大きい場合には、第3のアクセ
スが必要とされる。これは、中央処理ユニットの第3ア
クセス要求ラッチ1705をセットすることによって信
号される(処理ブロック2012)。これは、マイクロ
シーケンサ1740からライン1743を経て要求ラッ
チ1700へ信号される。いずれにせよ、中央処理ユニ
ットの第1要求ラッチがリセットされ(処理ブロック2
013)、要求が処理されたことを指示する。これで、
プログラム2000が終了となる(終了ブロック201
4)。前記したように、プログラム2000は、図18
に示す処理ブロック1810と同等である。
The program 2000 ends by testing whether a third access of the central processing unit is required. This is determined by checking if the sum of the bit address and field size is greater than 32 (decision block 201).
1). If this sum is greater than 32, then a third access is required. This is signaled by setting the third access request latch 1705 of the central processing unit (processing block 2012). This is signaled from the microsequencer 1740 via line 1743 to the request latch 1700. In any case, the first request latch of the central processing unit is reset (processing block 2
013), indicating that the request has been processed. with this,
The program 2000 ends (end block 201)
4). As described above, the program 2000 includes the program shown in FIG.
Is the same as the processing block 1810 shown in FIG.

【0093】図21は、中央処理ユニットの第3のアク
セス要求を処理するプログラム2100を示している。
このプログラム2100は、図22のワード整列図に関
連して最も良く理解できよう。最初に、中央処理ユニッ
トのアドレスレジスタ1200は、第2のアクセス後の
次のメモリワードを参照するために16だけ増加しなけ
ればならない。この点について、プログラムは、上記し
た中央処理ユニットの第2のアクセス要求の処理に類似
している。図21に示したプログラム2100は、図1
8に示した処理ブロック1808のプロセスに対応して
いる。
FIG. 21 shows a program 2100 for processing the third access request of the central processing unit.
This program 2100 will be best understood in relation to the word alignment diagram of FIG. First, the central processing unit address register 1200 must be incremented by 16 to reference the next memory word after the second access. In this respect, the program is similar to the processing of the second access request of the central processing unit described above. The program 2100 shown in FIG.
This corresponds to the process of processing block 1808 shown in FIG.

【0094】プログラム2100が始まると(スタート
ブロック2101)。アクセス要求が読み取りアクセス
要求であるかどうか判断するテストが行なわれる(判断
ブロック2102)。その要求が読み取り要求である場
合には、ビットアドレスによって右マスク1437がセ
ットされる(処理ブロック2103)。このプロセス
は、図22を参照して最も良く理解できよう。フィール
ド2200は、少なくともその一部分としてメモリワー
ド2201、2202及び2203を含んでいる。これ
は、図13Iに示す場合であり、即ち、第3の処理アク
セス要求が必要な唯一の場合である。フィード2200
は、3つのサブフィールド、即ち、メモリワード220
1内に完全に含まれたサブフィールド2211と、メモ
リワード2202に一致するサブフィールド2212
と、メモリワード2203内に完全に含まれた最後のサ
ブフィールド2213とに分割することができる。
When the program 2100 starts (start block 2101). A test is performed to determine if the access request is a read access request (decision block 2102). If the request is a read request, the right mask 1437 is set by the bit address (processing block 2103). This process can best be understood with reference to FIG. Field 2200 contains memory words 2201, 2202 and 2203 as at least a portion thereof. This is the case shown in FIG. 13I, that is, the only case where a third processing access request is required. Feed 2200
Are in three subfields, namely memory word 220.
1 contained in subfield 2211 and subfield 2212 corresponding to memory word 2202
, And the last subfield 2213 contained entirely within memory word 2203.

【0095】中央処理ユニットの第1アクセスは、サブ
フィールド2211を、中央処理ユニットの最下位ビッ
トデータラッチ1445の上位ビットに記憶するように
作用する。中央処理ユニットの第2のアクセスは、メモ
リワード2202に対応するサブフィールド2212
を、中央処理ユニットの最上位ビットデータラッチ14
40に記憶する。中央処理ユニットの第3のアクセス
は、前記した読み取り/変更/書き込み動作と同様の読
み取り、マスク及び変更動作でなければならない。予め
呼び出されたサブフィールド2211を含む中央処理ユ
ニットの最下位ビットデータラッチ1445からのデー
タは、入力/出力ラッチにロードされる(処理ブロック
2104)。メモリワード2203はメモリ130から
呼び出され、サブフィールド2212を含む右マスク1
437によって決定された部分は、入力/出力ラッチ1
439にロードされる(処理ブロック2105)。それ
により得られる入力/出力ラッチのデータは、中央処理
ユニットの最下位ビットデータラッチ1445に記憶さ
れる(処理ブロック2106)。これにより得られるデ
ータは、第1のサブフィールド2211と、第3のサブ
フィールド2213とを備えている。前記の読み取りア
クセスの場合と同様に、バレルシフタ1450は、中央
処理ユニット200によって適切に使用されるようにデ
ータを整列させる。これは、図23に関連して以下に詳
細に説明する。
The first access of the central processing unit serves to store the subfield 2211 in the upper bit of the least significant bit data latch 1445 of the central processing unit. The second access of the central processing unit is the subfield 2212 corresponding to the memory word 2202.
The most significant bit data latch 14 of the central processing unit
Store in 40. The third access of the central processing unit should be a read, mask and modify operation similar to the read / modify / write operation described above. The data from the least significant bit data latch 1445 of the central processing unit containing the previously called subfield 2211 is loaded into the input / output latch (processing block 2104). Memory word 2203 is called from memory 130 and contains right sub-field 2212, right mask 1
The portion determined by 437 is the input / output latch 1
439 is loaded (processing block 2105). The resulting input / output latch data is stored in the least significant bit data latch 1445 of the central processing unit (processing block 2106). The data obtained by this includes a first subfield 2211 and a third subfield 2213. As with the read access described above, barrel shifter 1450 aligns the data for proper use by central processing unit 200. This will be described in detail below in connection with FIG.

【0096】中央処理ユニットの第3のアクセスが書き
込みアクセスである場合には、読み取り/変更/書き込
みサイクルが必要とされる。左マスク1438は、ビッ
トアドレス1201とフィールドサイズとの和に対応す
るようにセットされる(処理ブロック2107)。中央
処理ユニットの最下位ビットデータラッチ1445に記
憶されたデータは、入力/出力ラッチにロードされる
(処理ブロック2108)。メモリワード2203は、
メモリ130から読み取られ、左マスク1438を用い
て入力/出力ラッチ1439にロードされる(処理ブロ
ック2109)。この時、入力/出力ラッチ1439
は、サブフィールド2213に対応する最下位ビット
と、メモリワード2203の最上位ビットに対応する最
上位ビットを備えている。入力/出力ラッチ1439の
このデータは、次いで、メモリワード2203と同じ位
置でメモリ130に書き込まれ(処理ブロック211
0)、読み取り/変更/書き込み動作を完了する。いず
れにせよ、中央処理ユニットの第3のアクセスは、中央
処理ユニットの第3要求ラッチをリセットすることによ
って完了され(処理ブロック2111)、プログラム2
100が完了する(終了ブロック2112)。
If the third access of the central processing unit is a write access, a read / modify / write cycle is required. Left mask 1438 is set to correspond to the sum of bit address 1201 and field size (processing block 2107). The data stored in the least significant bit data latch 1445 of the central processing unit is loaded into the input / output latch (processing block 2108). Memory word 2203 is
It is read from memory 130 and loaded into input / output latch 1439 using left mask 1438 (processing block 2109). At this time, input / output latch 1439
Comprises the least significant bit corresponding to subfield 2213 and the most significant bit corresponding to the most significant bit of memory word 2203. This data in input / output latch 1439 is then written to memory 130 at the same location as memory word 2203 (processing block 211
0), complete read / modify / write operations. In any case, the third access of the central processing unit is completed by resetting the third request latch of the central processing unit (processing block 2111) and program 2
100 is complete (end block 2112).

【0097】第1のサブフィールド2211及び第3の
サブフィールド2213を中央処理ユニットの最下位ビ
ットデータラッチ1445に入力する技術は、中央処理
ユニットの3ワードデータラッチの必要性を排除する。
好ましい実施例では、フィールドの長さが32ビットを
越えないことに注意されたい。然し乍ら、ビットアドレ
ス及びフィールドサイズの幾つかの組合せでは、選択さ
れたフィールドが3つの連続するメモリワードの部分を
占有することが必要である。2つのサブフィールドは、
図示された2つの16ビット半部分を含む単一の32ビ
ットラッチ内に受け入れられる。従って、第3の16ビ
ットデータラッチを設けることは、回路の領域を浪費す
ることになる。データラッチの1つの半部分に2つのサ
ブフィールドを記憶することにより、追加回路が不要と
なる。上記のマスキングにより、これらのサブフィール
ドを適切に分離することができる。中央処理ユニットの
最上位ビットデータラッチ1440及び中央処理ユニッ
トの最下位ビットデータラッチ1445内でデータを円
形にシフトすることによりサブフィールドをビット順に
適切に整列することができる。
The technique of inputting the first subfield 2211 and the third subfield 2213 to the least significant bit data latch 1445 of the central processing unit eliminates the need for a three word data latch of the central processing unit.
Note that in the preferred embodiment, the length of the field does not exceed 32 bits. However, some combinations of bit address and field size require that the selected field occupy a portion of three consecutive memory words. The two subfields are
It is accommodated in a single 32-bit latch containing the two 16-bit halves shown. Therefore, providing a third 16-bit data latch wastes circuit area. By storing two subfields in one half of the data latch, no additional circuitry is needed. With the above masking, these subfields can be properly separated. Circulating the data in the most significant bit data latch 1440 of the central processing unit and the least significant bit data latch 1445 of the central processing unit allows the subfields to be properly aligned in bit order.

【0098】好ましい実施例によれば、中央処理ユニッ
ト200内の全てのフィールド動作は、データを右に調
整しながら実行される。フィールド書き込み動作を実行
する時には、バレルシフタ1450は、中央処理ユニッ
トのデータラッチ1440及び1445にロードする前
にビットアドレスに等しい量だけデータを左に円形シフ
トする。これは、フィールド書き込み動作のためにデー
タを適切に整列するように働く。この左への円形シフト
により、図22に示すように、中央処理ユニットの最下
位ビットデータラッチ1445内に第1のサブフィール
ド2211及び第3のサブフィールド2213が自動的
に形成される。
According to the preferred embodiment, all field operations within central processing unit 200 are performed while adjusting the data to the right. When performing a field write operation, barrel shifter 1450 circularly shifts data left by an amount equal to the bit address before loading into central processing unit data latches 1440 and 1445. This serves to properly align the data for field write operations. This circular shift to the left automatically forms a first subfield 2211 and a third subfield 2213 in the least significant bit data latch 1445 of the central processing unit, as shown in FIG.

【0099】上記したように、メモリ130から読み取
られたデータは、中央処理ユニット200で使用するた
めにバレルシフタ1450によって整列される。このプ
ロセスが図23に示されている。中央処理ユニットのデ
ータラッチ1440及び1445からのデータは、最上
位ビット2301及び最下位ビット2302を含んでい
る。選択されたフィールド2310は、最上位ビット2
301と最下位ビット2302との間のワード境界に交
差するものとして示されている。この整列は解説のため
のみに与えられるものである。というのは、この技術が
他の全てのフィールド整列にも等しく適用されるからで
ある。最初に、フィールドは、ビットアドレスによって
指示されたビット量だけ右に円形シフトすることにより
右に調整される。このプロセスが2311で概略的に示
されている。フィールドが図22に2211、2212
及び2213で示されたような3つのサブフィールドに
分割される場合でも、このシフトにより、全フィールド
2310が適切な順序で右に調整される。選択されたフ
ィールド2310内に含まれないデータワードの他の部
分は、次のプロセスで失われるので、重要ではない。
As mentioned above, the data read from memory 130 is aligned by barrel shifter 1450 for use by central processing unit 200. This process is shown in FIG. The data from the central processing unit data latches 1440 and 1445 include the most significant bit 2301 and the least significant bit 2302. Selected field 2310 has most significant bit 2
It is shown as crossing the word boundary between 301 and the least significant bit 2302. This alignment is given for illustration purposes only. This technique is equally applicable to all other field alignments. First, the field is aligned to the right by circularly shifting it to the right by the amount of bits indicated by the bit address. This process is shown schematically at 2311. The fields are 2211 and 2212 in FIG.
, And 2213, even when divided into three subfields, this shift causes all fields 2310 to be adjusted to the right in the proper order. The other parts of the data word that are not included in the selected field 2310 are not significant as they will be lost in the next process.

【0100】次いで、フィールドは、フィールドサイズ
より32ビット小さい量だけ左へ論理的にシフトするこ
とにより左に調整される。2312で概略的に示された
このプロセスは、選択されたフィールドの最上位ビット
よりも高い順位のビットを排除するように作用する。フ
ィールド2310の最下位ビットより桁の小さいビット
は、次の段階で除去すべきであり、従って、重要ではな
い。フィールド2310は、再び、フィールドサイズよ
り32ビット小さい量だけ最後に右に論理的にシフトさ
れる。これにより、フィールド2310の最下位ビット
より桁の小さいビットが除去される。それより上位のビ
ットは、状態レビスタ1100からの作用フィールド拡
張ビット1106又は1108の状態に基づいて発生さ
れる。中央処理ユニット200によって実行される特定
の命令は、フィールドサイズ01105及びフィールド
拡張0 1106が作用するか或いはフィールドサイズ
1107及びフィールド拡張1108が作用するかを指
定する。状態レジスタ1100の選択されたフィールド
拡張ビットがゼロの拡張を示す場合には、全て「0」で
ある上位のビット2320が発生される。一方、フィー
ルド拡張オプションが符号の拡張を指示する場合には、
全てフィールド2310の最上位ビットに等しい上位ビ
ット2330が発生される。
The field is then adjusted to the left by logically shifting it to the left by an amount 32 bits less than the field size. This process, shown generally at 2312, acts to eliminate bits of higher order than the most significant bits of the selected field. Bits that are less significant than the least significant bit of field 2310 should be removed in the next step and are therefore not significant. Field 2310 is again logically shifted right by an amount of 32 bits less than the field size. This removes bits that are less significant than the least significant bit of field 2310. The higher bits are generated based on the state of the action field extension bit 1106 or 1108 from the state revista 1100. The particular instruction executed by central processing unit 200 specifies whether field size 01105 and field extension 0 1106 work or field size 1107 and field extension 1108 work. If the selected field extension bit of the status register 1100 indicates a zero extension, then the high order bit 2320, which is all "0" s, is generated. On the other hand, when the field extension option indicates the extension of the code,
An upper bit 2330 is generated, which is all equal to the most significant bit of field 2310.

【0101】以上、本発明の好ましい実施例を詳細に説
明した。この好ましい実施例では、幾つかの設計上の選
択を行なったが、これらは本発明を実施する上で必要な
ものではない。例えば、中央処理ユニットは32ビット
長さのデータを用いるものとして説明し、一方、メモリ
は16ビット長さのワードを用いるものとして説明し
た。当業者であれば、これらが単に設計上の便宜的な選
択に過ぎず、本発明の要旨ではないことが明らかであろ
う。本発明の範囲は、特許請求の範囲によって規定され
るものとする。
The preferred embodiments of the present invention have been described above in detail. In the preferred embodiment, some design choices have been made, but these are not necessary to practice the invention. For example, the central processing unit has been described as using 32-bit long data, while the memory has been described as using 16-bit long words. It will be apparent to those skilled in the art that these are merely design conveniences and not the subject matter of the present invention. The scope of the invention is defined by the claims.

【0102】以上の記載に関連して、以下の各項を開示
する。 (1) 上記表示更新制御器は、次に呼び出すべき表示
データが記憶された上記メモリ内のアドレス位置の1つ
を規定するための表示更新アドレスレジスタと、上記表
示更新要求信号を周期的に発生する表示更新タイマと、
各表示更新メモリアクセスが許可された際に、次に呼び
出すべき表示データを参照するために上記表示更新アド
レスレジスタに記憶された上記アドレスを増加するため
の表示更新アドレスレジスタ増加手段とを備えている特
許請求の範囲1項に記載のメモリアクセス制御システ
ム。 (2) 上記メモリは、データを保持するために周期的
なリフレッシュを必要とするダイナミックメモリであ
り、上記メモリアクセス制御システムは、更に、リフレ
ッシュメモリアクセス信号を周期的に発生するメモリリ
フレッシュ制御器を含み、上記メモリアクセス制御器
は、次にリフレッシュすべきアドレスが記憶されたリフ
レッシュアドレスレジスタを有し、そして上記メモリ優
先順位制御器は、更に、上記リフレッシュメモリアクセ
ス信号を受信すると共に、上記メモリ優先順位制御器が
ペンディングのメモリアクセス要求をそれまで有してい
た場合には上記表示更新アクセス要求より低く且つ上記
ローカルプロセッサアクセス要求より高い優先順位にあ
る上記リフレッシュメモリアクセス信号を許可しそして
上記メモリ優先順位制御器がペンディングのメモリアク
セス要求をそれまで有していない場合には上記ローカル
プロセッサアクセス要求及び上記表示更新アクセス要求
よりも低い優先順位にある上記リフレッシュメモリアク
セス要求を許可するようにし、上記メモリリフレッシュ
制御器に接続されている前記第1項に記載のメモリアク
セス制御システム。 (3) 上記表示更新制御器は、次に呼び出すべき表示
データが記憶されたメモリ内の上記アドレス位置の1つ
を指定する表示更新アドレスレジスタと、上記表示更新
要求信号を周期的に発生する表示更新タイマと、各々の
表示更新メモリアクセスが許可された時に次に呼び出す
べき表示データを参照するために上記表示更新アドレス
レジスタに記憶された上記アドレスを増加する表示更新
アドレスレジスタ増加手段とを備えている前記第2項に
記載のメモリアクセス制御システム。 (4) 上記メモリインターフェイスに接続され、リフ
レッシュメモリアクセス信号を周期的に発生するメモリ
リフレッシュ制御器を備え、上記メモリアクセス制御器
は、次にリフレッシュすべきアドレスが記憶されたリフ
レッシュアドレスレジスタを有し、上記メモリ優先順位
制御器は、更に、上記メモリリフレッシュ制御器に接続
されていて、上記リフレッシュメモリアクセス信号を受
け取ると共に、上記メモリ優先順位制御器がペンディン
グのメモリアクセス要求をそれまで有していた場合には
上記表示更新アクセス要求より低く且つ上記ローカルプ
ロセッサアクセス要求より高い優先順位の上記リフレッ
シュメモリアクセス信号を許可しそして上記メモリ優先
順位制御器がペンディングのメモリアクセス要求をそれ
まで有していない場合には上記ローカルプロセッサのア
クセス要求及び上記表示更新アクセス要求より低い優先
順位の上記リフレッシュメモリアクセス要求を許可する
特許請求の範囲第2項に記載のメモリアクセス制御シス
テム。
The following items will be disclosed in relation to the above description. (1) The display update controller periodically generates a display update address register for defining one of the address positions in the memory in which display data to be called next is stored, and the display update request signal. Display update timer to
Display update address register increasing means for increasing the address stored in the display update address register for referring to display data to be called next when each display update memory access is permitted. The memory access control system according to claim 1. (2) The memory is a dynamic memory that requires periodic refreshing to retain data, and the memory access control system further includes a memory refresh controller that periodically generates a refresh memory access signal. The memory access controller further includes a refresh address register in which an address to be refreshed next is stored, and the memory priority controller further receives the refresh memory access signal and the memory priority controller. If the priority controller has had a pending memory access request, then grants the refresh memory access signal which is lower in priority than the display update access request and higher than the local processor access request, and the memory priority Rank control If the memory has no pending memory access request, the refresh memory access request having a lower priority than the local processor access request and the display update access request is permitted, and the memory refresh control is performed. The memory access control system according to claim 1, which is connected to a container. (3) The display update controller is a display update address register that specifies one of the address positions in the memory in which display data to be called next is stored, and a display that periodically generates the display update request signal. An update timer and display update address register increment means for incrementing the address stored in the display update address register for referencing the display data to be called next when each display update memory access is permitted. 3. The memory access control system according to the above 2nd item. (4) A memory refresh controller connected to the memory interface and periodically generating a refresh memory access signal is provided, and the memory access controller has a refresh address register in which an address to be refreshed next is stored. , The memory priority controller is further connected to the memory refresh controller to receive the refresh memory access signal and the memory priority controller has had a pending memory access request up to that point. In the case where the refresh memory access signal having a priority lower than the display update access request and higher than the local processor access request is permitted and the memory priority controller has not had a pending memory access request so far. 3. The memory access control system according to claim 2, wherein the refresh memory access request having a lower priority than the access request of the local processor and the display update access request is permitted.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明の原理に基づいて構成されたグラフィッ
ク機能を有するコンピュータのブロック図、
FIG. 1 is a block diagram of a computer having a graphic function configured according to the principles of the present invention;

【図2】本発明のグラフィック処理回路の好ましい実施
例を示すブロック図、
FIG. 2 is a block diagram showing a preferred embodiment of the graphic processing circuit of the present invention;

【図3】XYアドレス技術によりビットマップメモリ内
の個々のピクセルアドレスをいかに指定するかを示す
図、
FIG. 3 is a diagram showing how to specify an individual pixel address in a bitmap memory by an XY address technique;

【図4】リニアなアドレス技術によりフィールドアドレ
スをいかに指定するかを示す図、
FIG. 4 is a diagram showing how to specify a field address by a linear address technique,

【図5】本発明の好ましい実施例により1つのデータワ
ード内に色々な長さのピクセルデータを記憶する好まし
い実施例を示す図、
FIG. 5 is a diagram showing a preferred embodiment for storing pixel data of various lengths in one data word according to a preferred embodiment of the present invention;

【図6】本発明の好ましい実施例によりレジスタメモリ
内に記憶されたオペランドの内容の構成を示す図、
FIG. 6 is a diagram showing the structure of the contents of operands stored in a register memory according to the preferred embodiment of the present invention;

【図7】本発明のビットマップメモリ内でのアレイ移動
動作の特性を示す図、
FIG. 7 is a diagram showing characteristics of an array moving operation in the bitmap memory of the present invention,

【図8】本発明によるビットブロック転送即ちアレイ移
動動作のフローチャート、
FIG. 8 is a flowchart of a bit block transfer or array move operation according to the present invention;

【図9】本発明の好ましい実施例に用いられる入力/出
力レジスタの幾つかを示す図、
FIG. 9 shows some of the input / output registers used in the preferred embodiment of the present invention,

【図10】図9に示されたホスト制御レジスタを詳細に
示す図、
10 is a detailed diagram of the host control register shown in FIG. 9;

【図11】本発明の好ましい実施例による状態レジスタ
を詳細に示す図、
FIG. 11 is a detailed diagram of a status register according to a preferred embodiment of the present invention;

【図12】本発明の好ましい実施例によるアドレスレジ
スタを詳細に示す図、
FIG. 12 is a diagram showing in detail an address register according to a preferred embodiment of the present invention;

【図13】本発明の好ましい実施例による選択されたフ
ィールドとメモリワードとの関係についての種々の場合
を示す図、
FIG. 13 is a diagram showing various cases of a relation between a selected field and a memory word according to a preferred embodiment of the present invention;

【図14】本発明の好ましい実施例によるメモリアクセ
ス制御器の構造を示す図、
FIG. 14 is a diagram showing a structure of a memory access controller according to a preferred embodiment of the present invention;

【図15】本発明の好ましい実施例により水平及び垂直
リセット信号を発生する構造体を示す図、
FIG. 15 illustrates a structure for generating horizontal and vertical reset signals according to a preferred embodiment of the present invention,

【図16】本発明の好ましい実施例によりDRAMリフ
レッシュ信号を発生する構造体を示す図、
FIG. 16 shows a structure for generating a DRAM refresh signal according to a preferred embodiment of the present invention,

【図17】図14に示したシーケンサを詳細に示す図、FIG. 17 is a diagram showing in detail the sequencer shown in FIG.

【図18】本発明の好ましい実施例により図17に示し
たプログラム可能な入力アドレス論理アレイの動作を説
明するフローチャート、
FIG. 18 is a flowchart illustrating the operation of the programmable input address logic array shown in FIG. 17, according to a preferred embodiment of the present invention.

【図19】本発明の好ましい実施例により中央処理ユニ
ットの第1メモリアクセスを実行する時のシーケンサの
動作を説明するフローチャート、
FIG. 19 is a flowchart illustrating the operation of the sequencer when performing the first memory access of the central processing unit according to the preferred embodiment of the present invention;

【図20】本発明の好ましい実施例により中央処理ユニ
ットの第2メモリアクセスを実行する時のシーケンサの
動作を説明するフローチャート、
FIG. 20 is a flowchart illustrating the operation of the sequencer when performing the second memory access of the central processing unit according to the preferred embodiment of the present invention;

【図21】本発明の好ましい実施例により中央処理ユニ
ットの第3メモリアクセスを実行する時のシーケンサの
動作を説明するフローチャート、
FIG. 21 is a flowchart illustrating the operation of the sequencer when performing the third memory access of the central processing unit according to the preferred embodiment of the present invention;

【図22】本発明により2つのメモリワード境界に交差
するフィールドをいかに記憶し操作するかを示す図、そ
して
FIG. 22 is a diagram showing how a field intersecting two memory word boundaries is stored and manipulated in accordance with the present invention; and

【図23】図14に示したバレルシフタの動作を示す図
である。
23 is a diagram showing an operation of the barrel shifter shown in FIG. 14. FIG.

【符号の説明】[Explanation of symbols]

100 グラフィックコンピュータシステム 110 ホスト処理システム 115 ホストバス 120 グラフィックプロセッサ 122 ビデオメモリバス 130 メモリ 132 ビデオRAM 134 リードオンリメモリ 140 シフトレジスタ 150 ビデオパレット 160 デジタル−ビデオコンバータ 170 ビデオディスプレイ 200 中央処理ユニット 210 グラフィックハードウェア 220 レジスタファイル 230 命令キャッシュ 240 ホストインターフェイス 250 メモリインターフェイス 260 入力/出力レジスタ 270 ビデオ表示制御器 100 Graphic Computer System 110 Host Processing System 115 Host Bus 120 Graphic Processor 122 Video Memory Bus 130 Memory 132 Video RAM 134 Read Only Memory 140 Shift Register 150 Video Palette 160 Digital-Video Converter 170 Video Display 200 Central Processing Unit 210 Graphic Hardware 220 Register file 230 Instruction cache 240 Host interface 250 Memory interface 260 Input / output register 270 Video display controller

───────────────────────────────────────────────────── フロントページの続き (72)発明者 ジェリー ヴァン アーケン アメリカ合衆国 テキサス州 77478 シ ュガーランド ファーンヒル 13563 (72)発明者 ネール テブット フランス国 6620 ゴルフ ジュアン シ ュマン ド ミノザ マス レ プーネ (番地なし) (72)発明者 マーク エフ ノヴァク アメリカ合衆国 ミシガン州 48197 イ プシランティ スピンネイカー ウェイ シー 2 −8845 (72)発明者 トーマス エム プレストン 英国 ベッドフォードシャー サーリー クロセンド レーン ユー ツリー ハウ ス (番地なし) (56)参考文献 特開 昭60−117338(JP,A) ─────────────────────────────────────────────────── ─── Continued Front Page (72) Inventor Jerry Van Aken Kensington, Texas, United States 77478 Sugherland Fernhill 13563 (72) Inventor Neil Tebut France 6620 Golf Juan Simando Minoza Masre Pune (No address) (72) Invention Mark Ef Novak, Michigan, USA 48197 Ypsilanti Spinnaker Weissie 2-8845 (72) Inventor Thomas M. Preston England Bedfordshire Surrey Crossend Lane You Treehouse (No Address) (56) Reference JP 60-117338 (JP, A)

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】 データを記憶したり呼び出したりするた
めの複数のアドレス位置を有するメモリと、 上記メモリの次々のアドレス位置から可視表示に対応す
る表示データを呼び出すために周期的な表示更新アクセ
ス要求を発生する表示更新制御器と、 上記メモリからデータを読み取るためのローカルメモリ
読み取り動作と上記メモリにデータを書き込むためのロ
ーカルメモリ書き込み動作とを含むデータに基づく動作
を実行するローカル処理ユニットとを具備し、このロー
カル処理ユニットは、メモリ読み取り動作又はメモリ書
き込み動作が要求された時にローカルプロセッサメモリ
アクセス信号を発生すると共に、読み取り又は書き込み
のいずれが要求されたかを指示する読み取り/書き込み
制御信号を発生し、上記ローカル処理ユニットは、上記
メモリ内のアドレス位置の1つを指定するローカルアド
レスレジスタと、メモリ読み取り動作中に上記メモリか
らのデータを受け取りそしてメモリ書き込み動作中に上
記メモリへデータを供給するローカルプロセッサデータ
レジスタとを有しており、そして更に、上記メモリ、上
記表示更新制御器及び上記ローカル処理ユニットに接続
され、メモリアクセス要求を受け取り、これらのメモリ
アクセス要求を許可されるまでペンディング状態に保持
し、対応するアドレス信号、メモリアクセス要求信号及
び対応する読み取り/書き込み信号を上記メモリに供給
することにより上記メモリへのアクセスを優先順に許可
するメモリ優先順位制御器を具備し、このメモリ優先順
位制御器は、これがペンディングのメモリアクセス要求
をそまで有していた場合には上記ローカルプロセッサ
のアクセス要求よりも高い優先順位上記表示更新アク
セス要求を許可しそしてこのメモリ優先順位制御器がペ
ンディングのメモリアクセス要求をそれまで有していな
い場合には上記表示更新アクセス要求よりも高い優先順
上記ローカルプロセッサアクセス要求を許可するこ
とを特徴とするメモリアクセス制御システム。
1. A memory having a plurality of address locations for storing and recalling data, and a periodic display update access request for recalling display data corresponding to a visible display from successive address locations of the memory. And a local processing unit for performing data-based operations including a local memory read operation for reading data from the memory and a local memory write operation for writing data to the memory. However, the local processing unit generates a local processor memory access signal when a memory read operation or a memory write operation is requested, and a read / write control signal indicating whether a read or a write is requested. , The above local processing unit A local address register that designates one of the address locations in the memory and a local processor data register that receives data from the memory during a memory read operation and supplies data to the memory during a memory write operation. And further connected to the memory, the display update controller and the local processing unit to receive memory access requests, hold these memory access requests pending until granted, and address the corresponding address signal. , A memory priority controller that allows access to the memory in priority order by supplying a memory access request signal and corresponding read / write signals to the memory, which memory priority controller is Re Zeng memory access request or If if had the above a higher priority than access requests of local processors allow the display update access request and the memory priority controller does not have a memory access request pending until it memory access control system and permits the local processor access request at a higher priority than the display update access request.
【請求項2】 アドレス、データ及び読み取り/書き込
み制御信号を送信するためのメモリインターフェイス
と、 可視表示に対応するメモリ表示データを次々のアドレス
位置から呼び出すように周期的な表示更新アクセス要求
を発生する表示更新制御器と、 上記メモリインターフェイスに接続され、上記メモリイ
ンターフェイスがメモリからデータを読み取るための指
定のアドレス及び読み取り制御信号を発生するようにさ
せるローカルメモリ読み取り動作と、上記メモリインタ
ーフェイスがメモリにデータを書き込むための指定のア
ドレス及び書き込み制御信号を発生するようにさせるロ
ーカル書き込みメモリ動作とを含むデータに基づく動作
を実行するローカル処理ユニットとを具備し、このロー
カル処理ユニットは、メモリ読み取り動作又は書き込み
動作のいずれかが要求された時にローカルプロセッサメ
モリアクセス信号を発生すると共入力読み取り又は書き
込みのいずれの動作が要求されたかを指示する読み取り
/書き込み制御信号を発生し、上記ローカル処理ユニッ
トは、アドレス位置を指定するためのローカルアドレス
レジスタと、メモリ読み取り動作中に上記メモリインタ
ーフェイスからデータを受け取りそしてメモリ書き込み
動作中に上記メモリインターフェイスにデータを供給す
るローカルプロセッサデータレジスタとを有し、そして
更に、上記メモリインターフェイス、上記表示更新制御
器及び上記ローカル処理ユニットに接続され、メモリア
クセス要求を受け取り、これらのメモリアクセス要求を
許可されるまでペンディング状態に保持し、そして対応
するアドレス信号、メモリアクセス要求信号及び対応す
る読み取り/書き込み信号を上記メモリインターフェイ
スに供給することにより上記メモリへのアクセスを優先
順に許可するためのメモリ優先順位制御器を具備し、こ
のメモリ優先順位制御器は、該制御器がペンディングの
メモリアクセス要求をそれまで有していた場合には上記
ローカルプロセッサのアクセス要求より高い優先順位
上記表示更新アクセス要求を許可しそしこのメモリ優先
順位制御器がペンディングのメモリアクセス要求をそれ
まで有していなかった場合には上記表示更新アクセス要
求より高い優先順位上記ローカルプロセッサアクセス
要求を許可することを特徴とするメモリアクセス制御シ
ステム。
2. A memory interface for transmitting address, data and read / write control signals, and a periodic display update access request for calling memory display data corresponding to a visible display from successive address locations. A display update controller, a local memory read operation connected to the memory interface and causing the memory interface to generate a specified address and a read control signal for reading data from the memory; A local processing unit for performing data-based operations including a specified address for writing a write control signal and a local write memory operation for generating a write control signal. Or a local processor memory access signal when either a write operation is requested, a read / write control signal indicating which co-input read or write operation is requested is generated, and the local processing unit comprises: A local address register for designating address locations, a local processor data register for receiving data from the memory interface during a memory read operation and providing data to the memory interface during a memory write operation, and further Connected to the memory interface, the display update controller and the local processing unit to receive memory access requests, hold these memory access requests pending until granted, and respond. The memory priority controller comprises a memory priority controller for permitting access to the memory in priority order by supplying an address signal, a memory access request signal and a corresponding read / write signal to the memory interface. , if the controller had a memory access request pending until it permits <br/> the display update access request at a higher priority than access requests of the local processor and this memory priority control vessel memory access control system and permits the local processor access request at a higher priority than the display update access request when the memory access request pending did not have before.
JP3226154A 1986-01-23 1991-09-05 Memory access control system Expired - Lifetime JPH0762835B2 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US82164486A 1986-01-23 1986-01-23
US82163486A 1986-01-23 1986-01-23
US821634 1986-01-23
US821644 1986-01-23

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP1391087A Division JPS62248041A (en) 1986-01-23 1987-01-23 Data processor and memory access controller

Publications (2)

Publication Number Publication Date
JPH05250253A JPH05250253A (en) 1993-09-28
JPH0762835B2 true JPH0762835B2 (en) 1995-07-05

Family

ID=27124581

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3226154A Expired - Lifetime JPH0762835B2 (en) 1986-01-23 1991-09-05 Memory access control system

Country Status (1)

Country Link
JP (1) JPH0762835B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11345165A (en) * 1997-12-05 1999-12-14 Texas Instr Inc <Ti> Traffic controller using priority and burst control for reducing access times
CN114554126B (en) * 2022-01-29 2023-08-25 山东云海国创云计算装备产业创新中心有限公司 Baseboard management control chip, video data transmission method and server

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4628449A (en) * 1983-11-14 1986-12-09 Tandem Computers Incorporated Vector interrupt system and method

Also Published As

Publication number Publication date
JPH05250253A (en) 1993-09-28

Similar Documents

Publication Publication Date Title
US5140687A (en) Data processing apparatus with self-emulation capability
US4103331A (en) Data processing display system
EP0279229B1 (en) A graphics display system
US4237543A (en) Microprocessor controlled display system
US5404445A (en) External interface for a high performance graphics adapter allowing for graphics compatibility
US4622546A (en) Apparatus and method for displaying characters in a bit mapped graphics system
US5249266A (en) Data processing apparatus with self-emulation capability
US5056041A (en) Data processing apparatus with improved bit masking capability
US4933878A (en) Graphics data processing apparatus having non-linear saturating operations on multibit color data
US5095301A (en) Graphics processing apparatus having color expand operation for drawing color graphics from monochrome data
JPS59210495A (en) Plasma gas panel display system
JPH0532769B2 (en)
JPS62288984A (en) Video display unit
JPS61159686A (en) Image display unit
US5185859A (en) Graphics processor, a graphics computer system, and a process of masking selected bits
US5596767A (en) Programmable data processing system and apparatus for executing both general purpose instructions and special purpose graphic instructions
US5539428A (en) Video font cache
EP0279225B1 (en) Reconfigurable counters for addressing in graphics display systems
US5670993A (en) Display refresh system having reduced memory bandwidth
US5678037A (en) Hardware graphics accelerator system and method therefor
US6072508A (en) Method and apparatus for shortening display list instructions
JPS61233776A (en) Video apparatus
JPH0762835B2 (en) Memory access control system
JPS6329291B2 (en)
JPS59165137A (en) Display management system for plasma gas panel display

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

EXPY Cancellation because of completion of term