JPS62248041A - Data processor and memory access controller - Google Patents
Data processor and memory access controllerInfo
- Publication number
- JPS62248041A JPS62248041A JP1391087A JP1391087A JPS62248041A JP S62248041 A JPS62248041 A JP S62248041A JP 1391087 A JP1391087 A JP 1391087A JP 1391087 A JP1391087 A JP 1391087A JP S62248041 A JPS62248041 A JP S62248041A
- Authority
- JP
- Japan
- Prior art keywords
- memory
- data
- address
- processing unit
- central processing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000012545 processing Methods 0.000 claims description 295
- 230000004044 response Effects 0.000 claims description 7
- 238000000034 method Methods 0.000 description 41
- 230000008569 process Effects 0.000 description 30
- 238000005452 bending Methods 0.000 description 26
- 238000012360 testing method Methods 0.000 description 24
- 238000010586 diagram Methods 0.000 description 20
- 230000006870 function Effects 0.000 description 16
- 238000012546 transfer Methods 0.000 description 12
- 238000005516 engineering process Methods 0.000 description 5
- 230000000873 masking effect Effects 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000000737 periodic effect Effects 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 230000036961 partial effect Effects 0.000 description 2
- 230000003466 anti-cipated effect Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 235000015115 caffè latte Nutrition 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000013329 compounding Methods 0.000 description 1
- 238000013501 data transformation Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 238000011010 flushing procedure Methods 0.000 description 1
- 235000013305 food Nutrition 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000010899 nucleation Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000002829 reductive effect Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
Landscapes
- Image Input (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。(57) [Summary] This bulletin contains application data before electronic filing, so abstract data is not recorded.
Description
【発明の詳細な説明】
産業上の利用分野
本発明は、コンピュータグラフィックの分野に係る。よ
り詳細には、本発明は、コンピュータメモリが、ディス
プレイの各個々の画素又はピクセルに対するデータを、
ディスプレイにおけるそのピクセルの位置に対応するメ
モリの位置に記憶するようなビットマツプ式のコンピュ
ータグラフィックの分野に係る。ビットマツプ式のコン
ピュータグラフィックは、ダイナミックランダムアクセ
スメモリ(DRAM)のビット当たりのコストが低いこ
とにより顕著な利点がある。メモリのビット当たりのコ
ストが低いことがら、より大きく且つより複雑な表示を
ビットマツプモードで形成することができる。DETAILED DESCRIPTION OF THE INVENTION Field of Industrial Application The present invention relates to the field of computer graphics. More particularly, the present invention provides that computer memory stores data for each individual pixel or pixels of a display.
It pertains to the field of computer graphics where bitmaps are stored in memory locations that correspond to the locations of their pixels in a display. Bitmap 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.
従来の技術
メモリのビット当たりのコストが減少され、ひいては、
ビットマツプ式のコンピュータグラフィックの容量が増
加されることにより、ビットマツプ式メモリをコンピュ
ータグラフィックの分野に効果的に利用することのでき
る処理装置が必要とされている。特に、コンピュータの
メインプロセッサの制御のもとて線や円のような簡単な
図形を描くことのできる成る形式の装置が形成されてい
る。更に、この形式の幾つかの装置は、ビットブロック
転送(BIT−BLT又はラスタ動作として知られてい
る)のための成る限定された機能を備えており、これは
、メモリの成る位置から別の位置へ像データを転送する
と共に、そのデータをメモリ内の指定位置のデータと論
理的又は演算的に組合せることを含む。The cost per bit of conventional technology memory is reduced and thus
As the capacity of bitmap computer graphics increases, there is a need for a processing device that can effectively utilize bitmap memory in the computer graphics field. In particular, devices have been developed that are capable of drawing simple figures such as lines and circles under the control of a computer's main processor. Additionally, some devices of this type have a limited capability for bit block transfers (known as BIT-BLT or raster operations), which involve transferring data from one memory location to another. It involves transferring image data to a location and logically or computationally combining that data with data at a specified location in memory.
発明が解決しようとする問題点
線を描くと共に他の基本的なグラフィック動作を実行す
る固定布線機能を有したこれらのビットマツプ制御器は
、ビットマツプディスプレイの性能要求に合致する1つ
の解決策を代表するものである。しばしば使用されてい
る大部分のグラフィック動作の幾つかを実行する内蔵ア
ルゴリズムは、全システム性能を改善する1つの方法を
提供する。然し乍ら、有用なグラフィックシステムは。PROBLEM SOLVED BY THE INVENTION These bitmap controllers, with fixed wiring functions for drawing dotted lines and performing other basic graphical operations, represent one solution that meets the performance requirements of bitmap displays. It is something to do. Built-in algorithms that perform some of the most commonly used graphics operations provide one way to improve overall system performance. However, it is a useful graphics system.
このような固定布線式の制御器で実行される幾つかの機
能に加えて、多数の機能をしばしば必要とする。これら
の付加的に要求される機能は、コンピュータの主プロセ
ツサによりソフトウェアで実施されねばならない、典型
的に、これらの固定布線式のビットマツプ制御器では、
プロセッサがビットマツプメモリに対して限定されたア
クセスを行なうことしかできず、従って、固定布線式制
御器の固定された1組の機能的な容量をソフトウェアに
よって増大することのできる程度が制限される。そこで
、より強力なグラフィック制御器を提供するか或いはシ
ステムプロセッサによってこのメモリへ良好なアクセス
を行なえるようにするか又はその両方によって、ビット
マツプ式メモリの内容を制御するという問題に対して融
通性の高い解決策を提供できれば非常に有用である。Many functions are often required in addition to the few functions performed by such hard-wired controllers. These additional required functions must be implemented in software by the computer's main processor, typically with these hard-wired bitmap controllers.
The processor has only limited access to bitmap memory, thus limiting the extent to which software can augment the functional capacity of a fixed set of hard-wired controllers. Ru. We have therefore developed a flexible solution to the problem of controlling the contents of bitmapped memory, either by providing more powerful graphics controls and/or by allowing better access to this memory by the system processor. It would be very useful if you could provide a high-quality solution.
問題点を解決するための手段
本発明は、データ処理装置と、このデータ処理装置を動
作させるためのデータを記憶するメモリとの組合せに係
る。データ処理装置とメモリとの間に接続されたメモリ
アクセス制御器は、メモリの読み取り及び書き込み動作
が所望の結果を生じるようデータの交換を制御する。Means for Solving the Problems The present invention relates to a combination of a data processing device and a memory for storing data for operating the data processing device. A memory access controller connected between the data processing device and the memory controls the exchange of data so that memory read and write operations produce desired results.
本発明の1つの特徴によれば、データ処理装置は1選択
的に可変なフィールドサイズを有するデータに基づいて
動作し、メモリは、固定長さのワードを使用している。According to one feature of the invention, the data processing device operates on data having a selectively variable field size, and the memory uses fixed length words.
データ処理装置によって使用されるフィールドサイズは
、所定のサブセットの状態レジスタによってセットされ
る。状態レジスタのこの部分内のデータは、フィールド
の長さを指示する。データ処理装置は、好ましい実施例
によれば、2つの部分でメモリアドレスを指定する。ア
ドレスの最上位部分は、ワードアドレスと称され、メモ
リ内の全ワードを指示する。アドレスの最下位部分は、
指定されたフィールドが始まるメモリワード内の厳密な
ビットを指定し、ビットアドレスと称される。The field size used by the data processing device is set by the status register of a given subset. The data in this portion of the status register indicates the length of the field. The data processing device specifies memory addresses in two parts, according to a preferred embodiment. The most significant part of the address is called the word address and points to the entire word in memory. The lowest part of the address is
Specifies the exact bit within the memory word where the specified field begins, and is called the bit address.
メモリアクセス制御器は、データ処理装置とメモリとの
間で所望のデータを転送できるようにする。このメモリ
アクセス制御器は、フィールドサイズデータ、ワードア
ドレス及びビットアドレスを用いて、所望のフィールド
を含むメモリ内のメモリワードを決定する。読み取り動
作においては、所望のフィールドの一部分を含む各メモ
リワードが呼び出される。このデータは、バレルシフタ
を用いたデータ処理装置によって正しく使用されるかど
うか判断される。このバレルシフタは、データ処理装置
の最大データ長さいっばいにフィールドを広げる符号又
はゼロによって所望のフィールド内にない呼び出された
データを排除するように働く。A memory access controller allows desired data to be transferred between the data processing device and the memory. The memory access controller uses the field size data, word address, and bit address to determine the memory word within the memory that contains the desired field. In a read operation, each memory word containing a portion of the desired field is accessed. This data is determined to be used correctly by a data processing device using a barrel shifter. This barrel shifter serves to eliminate called data that is not within the desired field by a sign or zero that extends the field to the maximum data length of the data processing device.
書き込み動作においては、このバレルシフタは、書き込
むべきフィールドを、ビットアドレスによって指定され
たビット境界に対してビット整列させるのに用いられる
。書き込み動作は、読み取り/変更/書き込みシーケン
ス゛として実行される。書き込むべきフィールドの部分
を含むメモリ内の各メモリワードが次いで呼び出される
。この呼び出されたデータは、書き込むべきフィールド
に対応するこのメモリワードの部分に取って代わるよう
に変更される。この変更されたデータは、次いで、メモ
リ内の同じ位置に書き込まれ、従って、指定フィールド
内に含まれたビットにおいてのみメモリに書き込まれる
。In a write operation, this barrel shifter is used to bit-align the field to be written to the bit boundaries specified by the bit address. Write operations are performed as a read/modify/write sequence. Each memory word in memory containing a portion of the field to be written is then accessed. The recalled data is modified to replace the portion of this memory word that corresponds to the field to be written. This modified data is then written to the same location in memory, and thus only in the bits contained within the designated field.
メモリアクセス制御器は、メモリサイクル数の制御を含
む。指定のフィールドは、ワードの境界に合致する必要
がないので、フィールドの読み取り又は書き込み動作に
は、指定のフィールドが1つ以上のワード境界に交差す
るために多数のメモリサイクルが含まれる。メモリサイ
クル数の制御は、ビットアドレスとフィールドサイズと
の和に基づくものである。更に、この技術は、データ処
理装置の最大ワード長さがメモリのワード長さに等しく
ない時には容易に使用することができる。The memory access controller includes control of the number of memory cycles. Because a specified field does not have to match a word boundary, a read or write operation of a field involves multiple memory cycles for the specified field to cross one or more word boundaries. Control of the number of memory cycles is based on the sum of the bit address and field size. Furthermore, this technique can be easily used when the maximum word length of the data processing device is not equal to the word length of the memory.
従って、このメモリアクセス制御器は、別々のワード長
さで作動する装置を合致させるように働く。This memory access controller thus serves to match devices operating at different word lengths.
本発明の別の特徴は、可変の優先順位に基づいて作動す
るメモリアクセス優先順位制御器にある。ビットマツプ
グラフィックシステムにおいては、ビットマツプメモリ
へのアクセスに対して多数の装置がしばしば競合する。Another feature of the invention is a memory access priority controller that operates on a variable priority basis. In bitmap graphics systems, multiple 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 formed by dynamic random access memory, this memory must be updated periodically. Furthermore, the bitmap memory must be accessed by a graphics data processor that manipulates the data in the bitmap to control the display. Additionally, the host processor, which performs the primary data processing functions of the system, also has access to the bitmap memory.
ビットマツプメモリへアクセスする優先順位についての
判断は、比較的簡単である。第1の優先順位は、ディス
プレイを更新しなければならず、さもなくば、ディスプ
レイは不安定となる。次の優先順位は、一般に、メモリ
をリフレッシュさせる。というのは、この機能は、ビッ
トマツプ内のデータが失われないようにするからである
。大部分のシステムにおいて、ホストプロセッサは、グ
ラフィックデータプロセッサより高い優先順位を有して
いる。というのは、ホストプロセッサは。Determining the priority order for accessing bitmap memory is relatively easy. The first priority must be to update the display, otherwise the display will become unstable. The next priority generally causes memory to be refreshed. This is because this feature ensures that data within the bitmap is not lost. In most systems, the host processor has higher priority than the graphics data processor. That is, the host processor.
グラフィックデータプロセッサに勝る監視能力を有して
いるからである。このような優先順位ハイアラーキの実
施は、回連なものではない。This is because it has superior monitoring capabilities to graphic data processors. The implementation of such a priority hierarchy is not continuous.
上記のハイアラーキは、成る問題を生じる。The above hierarchy gives rise to the following problem.
このハイアラーキによれば、グラフィックデータプロセ
ッサが最も低い優先順位となる。これは、ビットマツプ
の内容を制御する装置であり、従って、ディスプレイの
内容は、最も低い優先順位となる。これにより、ディス
プレイを変更する機能が比較的速度の遅いものとなる。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 display contents have the lowest priority. This makes the ability to change the display relatively slow.
本発明の実施例によれば、ディスプレイの変更速度は、
可変の優先順位を用いることによって増加される。ビッ
トマツプメモリへのアクセス要求がベンディングになる
場合には、優先順位のハイアラーキは上記したものとな
る。然し乍ら、ベンディングのアクセス要求が他にない
場合には、グラフィックデータプロセッサが第1の優先
順位となる。従って、ディスプレイの変更速度は、ディ
スプレイのリフレッシュ、メモリのリフレッシュ及びホ
ストプロセッサのアクセスが比較的頻繁でない場合に増
加さ ′れる。According to an embodiment of the invention, the speed of change of the display is:
Increased by using variable priorities. When the bitmap memory access request is bending, the priority hierarchy is as described above. However, if there are no other bending access requests, the graphics data processor will have first priority. Thus, the speed of display changes is increased when display refreshes, memory refreshes, and host processor accesses are relatively infrequent.
本発明の効果的な実施例においては、グラフィックデー
タプロセッサの1つのメモリアクセスに多数のメモリサ
イクルが要求される。このような場合、グラフィックデ
ータプロセッサのその後のアクセス要求は、グラフィッ
クデータプロセッサの最初のメモリアクセス要求よりも
高い優先順位となる。これは、2つ以上の多数のメモリ
サイクルのメモリグラフィックアクセスの重畳を効果的
に防止する。これらのその後のメモリアクセスサイクル
は、ディスプレイのリフレッシュ、メモリのリフレッシ
ュ及びホストプロセッサのアクセスよりも低い優先順位
となる。従って、グラフィックデータプロセッサの多数
のサイクルのメモリアクセスは、メモリサイクル間に配
置された1つ以上の優先順位の高いメモリアクセスとな
る。このシステムは、ビットマツプメモリへの競合する
アクセス要求間で良好な兼ね合いをとるように働く。In advantageous embodiments of the invention, one memory access of the graphics data processor requires a large number of memory cycles. In such a case, the graphics data processor's subsequent access requests will have a higher priority than the graphics data processor's initial memory access request. This effectively prevents the overlap of memory graphic accesses of two or more multiple memory cycles. These subsequent memory access cycles have lower priority than display refreshes, memory refreshes, and host processor accesses. Therefore, multiple cycle memory accesses of the graphics data processor result in one or more high priority memory accesses placed between memory cycles. This system works to provide a good trade-off between competing access requests to bitmap memory.
実施例
本発明のこれら及び他の目的は、添付図面を参照した以
下の詳細な説明より容易に理解されよう。BRIEF DESCRIPTION OF THE DRAWINGS These and other objects of the invention will be more readily understood from the following detailed description taken in conjunction with the accompanying drawings.
第1図は、本発明の原理に基づいて構成したグラフィッ
クコンピュータシステム100のブロック図である。こ
のグラフィックコンピュータシステム100には、ホス
ト処理システム110、グラフィックプロセッサ120
.メモリ130、シフトレジスタ140.ビデオパレッ
ト150、デジタル−ビデオコンバータ160及びビデ
オディスプレイ170が含まれている。FIG. 1 is a block diagram of a graphics computer system 100 constructed in accordance with the principles of the present invention. This graphics computer system 100 includes a host processing system 110, a graphics processor 120,
.. Memory 130, shift register 140. A video palette 150, a digital-to-video converter 160, and a video display 170 are included.
ホスト処理システム110は、グラフインクコンピュー
タシステム100用に大きな計算容量を備えている。ホ
スト処理システム110は、少なくとも1個のマイクロ
プロセッサ、リードオンリメモリ、ランダムアクセスメ
モリ及び周辺機器を備えて完全なコンピュータシステム
を構成することが望ましい。ホスト処理システム110
は、更に、キーボード或いはマウスの等のある形式の呪
力装置とディスクドライブ等のある形式の長期間記憶装
置も備えていることが望ましい。ホスト処理システム1
10の構造は、一般的な公知のものであるから、ここで
は、これ以上詳くは述べない。ホスト処理システム11
0の本質的な特徴は、本発明に関する限り、このホスト
処理システム110がユーザに示す可視表示の内容を決
定することである。Host processing system 110 provides large computational capacity for GraphInk computer system 100. Preferably, host processing system 110 includes at least one microprocessor, read-only memory, random access memory, and peripherals to form a complete computer system. host processing system 110
It is also desirable to include some type of power device, such as a keyboard or mouse, and some type of long-term storage, such as a disk drive. Host processing system 1
Since the structure of No. 10 is generally known, it will not be described in further detail here. host processing system 11
The essential feature of 0, as far as the present invention is concerned, is that this host processing system 110 determines the content of the visual display shown to the user.
グラフィックプロセッサ120は、特定のビデオ表示を
ユーザに与えるために、本発明により優れたデータ操作
性を備えている。グラフィックプロセッサ120は、ホ
ストバス115を通じて、ホスト処理システム110に
両方向接続されている。本発明によれば、グラフィック
プロセッサ120は、ホスト処理システム110からの
独立データプロセッサとして作動する。然し乍ら、グラ
フィックプロセッサ120は、ホストバス115を通じ
たホスト処理システム110からの要求にも応答するこ
とが予想される。グラフィックプロセッサ120は、更
に、メモリ130と通信すると共に、ビデオメモリバス
122を通じてビデオパレット150とも通信する。グ
ラフィックプロセッサ120は、ビデオメモリバス12
2を通じて、ビデオRAM132内に記憶されているデ
ータを制御する。グラフィックプロセッサ120は、更
に、ビデオRAM 132内或いはリードオンリメモリ
134内のいずれかに記憶されているプログラムによっ
て制御される。リードオンリメモリ134は、1つ以上
のフォント型の英文字数字キャラクタ及び頻繁に使用さ
れる像等の各種グラフィックイメージデータを更に含ん
でいてもよい。Graphics processor 120 is provided with greater data manipulation in accordance with the present invention in order to provide a particular video display to the user. Graphics processor 120 is bidirectionally connected to host processing system 110 via host bus 115. In accordance with the present invention, graphics processor 120 operates as an independent data processor from host processing system 110. However, it is anticipated that graphics processor 120 will also respond to requests from host processing system 110 over host bus 115. Graphics processor 120 further communicates with memory 130 and with video palette 150 via video memory bus 122. Graphics processor 120 connects video memory bus 12
2 to control data stored in video RAM 132. Graphics processor 120 is further controlled by programs stored either in video RAM 132 or in 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.
グラフィックプロセッサ120は、更に、ビデオパレッ
ト150内に記憶されているデータも制御する。この特
徴については、以下に詳述する。グラフィックプロセッ
サ120は、更に、ビデオ制御バス124を通じて、デ
ジタル−ビデオコンバータ160も制御する。グラフィ
ックプロセッサ120は、ビデオ制御バス124を通じ
たデジタル−ビデオコンバータ160の制御によって、
ユーザに提示されるビデオ像のフレーム当たりの走査線
の本数と走査線の長さとを制御することができる。Graphics processor 120 also controls data stored within video palette 150. This feature will be explained in detail below. Graphics processor 120 also controls digital-to-video converter 160 through video control bus 124 . Graphics processor 120, under control of digital-to-video converter 160 via video control bus 124,
The number of scan lines per frame of the video image presented to the user and the length of the scan lines can be controlled.
ビデオメモリ130は、ビデオバス122を通じてグラ
フィックプロセッサ120に両方向接続されているビデ
オRAM132を含んでいると共に、リードオンリメモ
リ134も含んでいる。Video memory 130 includes video RAM 132 bidirectionally connected to graphics processor 120 via video bus 122 and also includes read-only memory 134.
ビデオRAM132は、前述したように、ビットマツプ
されたグラフィックデータを含んでおり、このグラフイ
ンクデータが、ユーザに与えられるビデオ像を制御する
。このビデオデータは、ビデオバス122を通じて、グ
ラフィックプロセッサ120によって操作される。更に
、現在の表示スクリーンに対応するビデオデータは、ビ
デオ出力バス136を通じたビデオRAM132からの
出力である。ビデオ出力バス136からのデータは、ユ
ーザに示される画素に対応する。ビデオRAM132は
、好ましい実施例においては、本発明の譲受者であるチ
クサス・インストウルメンツ・コーポレーション(Te
xas Instruments Corporati
on)社製の複数の1MS4161 64.に動的ラン
ダムアクセス集積回路によって形成される。この1MS
4161 64に集積回路は、デュアルポートを含んで
おり、このデュアルポートによって、表示の再生と表示
の更新とを干渉なしに行うことができる。Video RAM 132, as previously described, contains bitmapped graphics data that controls the video images presented to the user. This video data is manipulated by graphics processor 120 over video bus 122 . Additionally, video data corresponding to the current display screen is output from video RAM 132 via video output bus 136. Data from video output bus 136 corresponds to the pixels shown to the user. Video RAM 132, in the preferred embodiment, is manufactured by Chixas Instruments Corporation (Te), the assignee of this invention.
xas Instruments Corporation
on) multiple 1MS4161 64. formed by a dynamic random access integrated circuit. This 1MS
The integrated circuit at 416164 includes dual ports that allow display playback and display updating without interference.
シフトレジスタ140は、ビデオRAM130からビデ
オデータを受は取り、そのデータを表示ビット流に構成
する。このメモリは、ビデオランダムアクセスメモリ1
32の典型的な構成に基づいて多数の別々のランダムア
クセスメモリ集積回路によって構成される。これらの集
積回路の各々の出力は、典型的には、わずか1ビット幅
である。従って、ユーザに提示する像を指定するための
充分に高いデータ出力率を得るためには、複数の回路か
らのデータを集めることが必要である。Shift register 140 receives video data from video RAM 130 and organizes the data into a display bit stream. This memory is video random access memory 1
It is constructed by a number of separate random access memory integrated circuits based on a typical configuration of 32. The output of each of these integrated circuits is typically only one bit wide. Therefore, in order to obtain a sufficiently high data output rate to specify the image to be presented to the user, it is necessary to collect data from multiple circuits.
シフトレジスタ140は、ビデオ出力バス136から並
列にロードされる。このデータは、ライン140と直列
の出力である。このようにして、シフトレジスタ140
は1表示ビット流を構成し、この表示ビット流が、ラス
ク走査ビデオ表示内の各ドツトを指定するのに充分な高
い率でビデオデータを供給する。Shift register 140 is loaded in parallel from video output bus 136. This data is output in series with line 140. In this way, shift register 140
constitutes a display bitstream that provides video data at a rate high enough to specify each dot in the rask scan video display.
ビデオパレット150は、バス145を通じて、シフト
レジスタ140からの高速ビデオデータを受は取る。ビ
デオパレット150は、メモリバス122を通じて、グ
ラフィックプロセッサ120からのデータも受は取る。Video palette 150 receives and receives high speed video data from shift register 140 via bus 145. Video palette 150 also receives data from graphics processor 120 via memory bus 122.
ビデオパレット150は、バス145に受は取ったデー
タをバス155のビデオレベル出力に変換する。この変
換は、ルック・アップテーブルによって行われる。この
ルック・アップテーブルは、ビデオメモリバス122を
通じて、グラフィックプロセッサ120によって指定さ
れる。ビデオパレット150の出力は、各画素について
色相と彩度とを含んでいてもよいし、各ピクセルについ
て赤、緑及び青の三原色レベルを含んでいてもよい。ビ
デオメモリ132内に記憶されているコードからの変換
テーブルと、バス155を通じたデジタルレベル出力と
は、ビデオメモリバス122を通じて、グラフィックプ
ロセッサ120によって制御される。Video palette 150 converts the data received on bus 145 to a video level output on bus 155. This conversion is performed by a look up table. This look up table is specified by graphics processor 120 via video memory bus 122. The output of video palette 150 may include hue and saturation for each pixel, and may include the red, green, and blue primary color levels for each pixel. Conversion tables from code stored in video memory 132 and digital level output over bus 155 are controlled by graphics processor 120 through video memory bus 122.
デジタル−ビデオコンバータ160は、バス155を通
じてビデオパレット150からデジタルビデオ情報を受
は取る。デジタル−ビデオコンバータ160は、ビデオ
制御バス124を通じてグラフィックプロセッサ120
によって制御される。デジタル−ビデオコンバータ16
0は、ビデオパレット150のデジタル出力をビデオ出
力165を通じてビデオディスプレイ170に供給する
ための希望のアナログレベルに変換するように働く。デ
ジタル−ビデオコンバータ160は、水平走査線当たり
のピクセル数とフレーム当たりの走査線の数とを指定す
るために1例えば、ビデオ制御バス124を通じてグラ
フィックプロセッサ120によって制御される。グラフ
ィックプロセッサ120内のデータは、同期信号と帰線
消去信号と帰線信号の発生を、デジタル−ビデオコンバ
ータ160を通じて制御する。ビデオ信号のこれらの部
分は、ビデオメモリ132内に記憶されたデータによっ
ては指定されず、希望のビデオ出力を指定するために必
要な制御信号を形成する。Digital-to-video converter 160 receives digital video information from video palette 150 over bus 155. Digital-to-video converter 160 connects graphics processor 120 through video control bus 124.
controlled by Digital-video converter 16
0 serves to convert the digital output of video palette 150 to the desired analog level for feeding to video display 170 via video output 165. Digital-to-video converter 160 is controlled by graphics processor 120 via video control bus 124, for example, to specify the number of pixels per horizontal scan line and the number of scan lines per frame. Data within graphics processor 120 controls the generation of synchronization, blanking, and retrace signals through digital-to-video converter 160. These portions of the video signal are not specified by data stored in video memory 132 and form the control signals necessary to specify the desired video output.
更に、ビデオディスプレイ170は、ビデオ出力ライン
165を通じてデジタル−ビデオコンバータ160から
のビデオ出力を受は取る。ビデオディスプレイ170は
、グラフィックコンピュータシステムのオペレータが見
る指定のビデオ像を発生する。ビデオパレット150、
デジタル−ビデオコンバータ160及びビデオディスプ
レイ170は、2つの主要なビデオ技術に基づいて操作
されるということに注意されたい。第1の技術では、ビ
デオデータが、色相と彩度に関して各ピクセルについて
指定される。他方の技術では、赤、緑及び青の三原色レ
ベルが各ピクセルについて指定される。これらの主要な
技術のどちらを選択するかは1選択が可能である。ビデ
オパレット150、デジタル−ビデオコンバータ160
及びビデオディスプレイ170は、この技術と両立する
ように構成しなければならない。然し乍ら、本発明の原
理は、グラフィックプロセッサ120の操作に関しては
、ビデオ技術のどちらを選択しても、変わりはない。Additionally, video display 170 receives video output from digital-to-video converter 160 through video output line 165. Video display 170 produces designated video images for viewing by an operator of the graphics computer system. video palette 150,
Note that digital-to-video converter 160 and video display 170 operate based on two primary video technologies. In the first technique, video data is specified for each pixel in terms of hue and saturation. In the other technique, the primary color levels of red, green and blue are specified for each pixel. It is possible to select one of these major technologies. Video palette 150, digital-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 regardless of the video technology selected with respect to the operation of graphics processor 120.
第2図は、グラフィックプロセッサ120を更に詳細に
示すものである。グラフィックプロセッサ120は、中
央処理ユニット200.特別グラフィックハードウェア
210.命令キャッシュ230、ホストインターフェイ
ス240.メモリインターフェイス250、入力/出力
レジスタ260及びビデオ表示制御器270を含んでい
る。FIG. 2 shows graphics processor 120 in more detail. Graphics processor 120 includes central processing unit 200. Special graphics hardware 210. Instruction cache 230, host interface 240. Includes memory interface 250, input/output registers 260 and video display controller 270.
グラフィックプロセッサ120の心臓部は、中央処理ユ
ニット200である。中央処理ユニット200は、汎用
中央処理ユニットに通常含まれる多数の算術処理及び論
理処理を含む一般データ処理を行うための容量を備えて
いる。更に、中央処理ユニット200は、単独で、或い
は特別グラフィックハードウェア200と共に、多数の
特別なグラフィック命令を制御する。The heart of graphics processor 120 is central processing unit 200 . Central processing unit 200 has the capacity to perform general data processing, including many arithmetic and logical operations typically included in a general purpose central processing unit. Additionally, central processing unit 200, alone or in conjunction with specialized graphics hardware 200, controls many specialized graphics instructions.
グラフインクプロセッサ120は、主バス2o5を含ん
でおり、この主バス205は、中央処理ユニット200
を含むグラフィックプロセッサ120の大部分に接続さ
れている。中央処理ユニット200は、多数のデータレ
ジスタを含む1組のレジスタファイルに、両方向レジス
タバス202を通じて、両方向接続されている。レジス
タファイル220は、中央処理ユニット200によって
使用される時に利用可能なデータの保管場所として作用
する。以後に更に詳しく述べるように、レジスタファイ
ル220は、中央処理ユニット200によって使用され
る汎用レジスタを含んでいる上に、グラフィック命令用
の暗黙のオペランドを記憶するために使用される多数の
データレジスタを含んでいる。The graph ink processor 120 includes a main bus 2o5, which is connected to the central processing unit 200.
is connected to most of the graphics processor 120, including the Central processing unit 200 is bidirectionally connected via bidirectional register bus 202 to a set of register files containing a number of data registers. Register file 220 acts as a repository for data available for use by central processing unit 200. As discussed in more detail below, register file 220 includes general purpose registers used by central processing unit 200, as well as a number of data registers used to store implicit operands for graphics instructions. Contains.
中央処理ユニット200は、命令キャッシュバス204
を通じて命令キャッシュ230に接続されている。命令
キャッシュ230は、更に、汎用バス205に接続され
ており、ビデオメモリバス122とメモリインターフェ
イス250とを通じてビデオメモリ130からの命令ワ
ードをロードすることもできる。命令キャッシュ230
の目的は、中央処理ユニット200のある機能の実行を
スピードアップすることである0反復機能或いは中央処
理ユニット200によって実行されるプログラムの特定
の部分内で頻繁に使用される機能は、命令キャッシュ2
30内に記憶することもできる。命令キャッシュバス2
04を通じた命令キャッシュ230へのアクセスは、ビ
デオメモリ130へのアクセスよりも更に速いものであ
る。従って、中央処理ユニット200によって実行され
るプログラムは、反復命令或いは頻繁に使用される一連
の命令を命令キャッシュ230内に予備的にロードする
ことによってスピードアップすることができる。これを
行うと、これらの命令は、速く取り出すことができるた
めに、速く実行することができる。命令キャッシュ23
0は、同一の組の命令を常に含んでいる必要はないが、
中央処理ユニット200によって実行されるプログラム
の特定の部分内で頻繁に使用される特定の組の命令をロ
ードすることができる。The central processing unit 200 has an instruction cache bus 204.
The instruction cache 230 is connected to the instruction cache 230 through the instruction cache 230. Instruction cache 230 is further connected to general purpose bus 205 and can also be loaded with instruction words from video memory 130 through video memory bus 122 and memory interface 250. instruction cache 230
The purpose of the CPU 200 is to speed up the execution of certain functions of the central processing unit 200. Zero-iteration functions or functions that are frequently used within a particular part of a program executed by the central processing unit 200 are stored in the instruction cache 2.
It can also be stored within 30. Instruction cache bus 2
Accessing instruction cache 230 through 04 is even faster than accessing video memory 130. Accordingly, programs executed by central processing unit 200 can be sped up by preloading repetitive instructions or frequently used sequences of instructions into instruction cache 230. Doing this allows these instructions to execute faster because they can be fetched faster. instruction cache 23
0 need not always contain the same set of instructions, but
A particular set of instructions that are frequently used within a particular portion of a program executed by central processing unit 200 may be loaded.
ホストインターフェイス240は、ホストインターフェ
イスバス206を通じて中央処理ユニット200に接続
されている。ホストインターフェイス240は、更に、
ホストシステムバス115を通じてホスト処理システム
110にも接続されている。ホストインターフェイス2
40は、ホスト処理システム110とホストシステムバ
ス115との間の通信を制御するように作用する。ホス
トインターフェイス240は、ホスト処理システム11
0とグラフィックプロセッサ120との間のデータ転送
のタイミングを制御する。この点については、ホストイ
ンターフェイス240は、ホスト処理システム110が
グラフィックプロセッサ120に割り込むことを可能に
するか、或いは、逆に、グラフィックプロセッサ120
がホスト処理システム110に割り込むことを可能にす
る。ホストインターフェイス240は、更に、主バス2
05に接続されており、これによって、ホスト処理シス
テム110がメモリ130内に記憶されているデータを
直接制御することを可能にする。典型的には、ホストイ
ンターフェイス240は、ホスト処理システム110か
らグラフィックプロセッサ120へのグラフィック要求
を通信して、ホストシステムがビデオディスプレイ17
0によって発すべき表示の種類を指定することを可能に
し、グラフィックプロセッサ120に希望のグラフィッ
ク機能を実行させる。Host interface 240 is connected to central processing unit 200 through host interface bus 206. Host interface 240 further includes:
It is also connected to host processing system 110 through host system bus 115 . host interface 2
40 acts to control communications between host processing system 110 and host system bus 115. Host interface 240 connects host processing system 11
0 and the graphics processor 120. In this regard, host interface 240 may allow host processing system 110 to interrupt graphics processor 120 or, conversely,
to interrupt host processing system 110. Host interface 240 further includes main bus 2
05, thereby allowing host processing system 110 to directly control the data stored within memory 130. Typically, host interface 240 communicates graphics requests from host processing system 110 to graphics processor 120 so that the host system can display video display 17.
0 allows specifying the type of display to be generated and causes the graphics processor 120 to perform the desired graphics function.
中央処理ユニット200は、グラフィックハードウェア
バス208を通じて特別なグラフィックハードウェア2
10に接続されている。特別なグラフィックハードウェ
ア210は、更に、主バス205にも接続されている。Central processing unit 200 connects special graphics hardware 2 via graphics hardware bus 208.
10. Special graphics hardware 210 is also connected to main bus 205.
特別なグラフィックハードウェア210は、中央処理ユ
ニット2゜Oと共同して、特別のグラフィック処理動作
を実行する。中央処理ユニット200は、その汎用デー
タ処理機能を備えている他に、特別グラフィックハード
ウェア210の使用を制御して、各種の特別なグラフィ
ック命令を実行する。これらの特別なグラフィック命令
は、ビデオRAM132のビットマツプされたデータの
操作に係るものである。特別なグラフィックハードウェ
ア210は、中央処理ユニット200の制御のもとで作
動し。Special graphics hardware 210 cooperates with central processing unit 20 to perform special graphics processing operations. In addition to its general-purpose data processing capabilities, central processing unit 200 controls the use of special graphics hardware 210 to execute various special graphics instructions. These special graphics instructions involve manipulating bitmapped data in video RAM 132. Special graphics hardware 210 operates under the control of central processing unit 200.
ビデオRAM132内のデータに関する特に有利なデー
タ操作を可能にする。This allows particularly advantageous data manipulation of data within video RAM 132.
メモリインターフェイス250は、主バス205に接続
されており、更に、ビデオメモリバス122にも接続さ
れている。メモリインターフェイス250は、グラフィ
ックプロセッサ120とメモリ130との間のデータと
命令の通信を制御するように作用する。メモリ130は
、ビデオディスプレイ170を通じて表示すべきビット
マツプされたデータを含むと共に、グラフィックプロセ
ッサ120の動作の制御に必要な命令とデータとを含ん
でいる。これらの機能には、メモリアクセスのタイミン
グの制御と、データ及びメモリのマルチプレクス動作制
御とが含まれている。好ましい実施例においては、ビデ
オメモリバス122は、マルチプレクスされたアドレス
及びデータの情報が含まれている。メモリインターフェ
イス250は、グラフィックプロセッサ120がメモリ
130をアクセスするのに適当な時間でビデオメモリ1
22バスに適当な出力を供給できるようにする。Memory interface 250 is connected to main bus 205 and also to video memory bus 122. Memory interface 250 serves to control communication of data and instructions between graphics processor 120 and memory 130. Memory 130 contains bitmapped data to be displayed through video display 170 as well as instructions and data necessary to control the operation of graphics processor 120. These functions include controlling the timing of memory accesses and controlling data and memory multiplexing operations. In the preferred embodiment, video memory bus 122 includes multiplexed address and data information. Memory interface 250 provides access to video memory 1 at a time appropriate for graphics processor 120 to access memory 130.
22 bus can be supplied with an appropriate output.
グラフィックプロセッサ120は、最後に、入力/出力
レジスタ260と、ビデオ出力制御器270とを含んで
いる。入力/出力レジスタ260は、これらのレジスタ
内で読み取りと書き込みとができるようにするために、
主バス205に両方向接続されている。入力/出力レジ
スタ260は、中央処理ユニット200の通常のメモリ
スペース内にあることが望ましい。入力/出力レジスタ
260は、ビデオ出力制御器270の制御パラメータを
指定するデータを含んでいる。ビデオ出力制御器270
は、入力/出力レジスタ260内に記憶されているデー
タに従ってデジタル−ビデオコンバータ160を希望通
りに制御できるようにビデオ制御バス124に信号を発
する。入力/出力レジスタ260内のデータには、水平
走査線光たりのピクセル数と、フレーム当たりの水平走
査線数と垂直同期帰線消去信号とを指定するためのデー
タが含まれている。入力/出力レジスタ260は、フレ
ーム飛越しの種類を指定すると共に他の種類のビデオ制
御機能を指定するためのデータを含むこともできる。最
後に入力/出力レジスタ260は、他の特定の種類の入
力パラメータと出力パラメータのための保存場所である
。この入力パラメータと出力パラメータについては、後
に詳しく述べる。Graphics processor 120 finally includes input/output registers 260 and video output controller 270. Input/output registers 260 include:
It is bidirectionally connected to the main bus 205. Input/output registers 260 are preferably within the normal memory space of central processing unit 200. Input/output register 260 contains data specifying control parameters for video output controller 270. Video output control 270
issues signals to video control bus 124 to enable desired control of digital-to-video converter 160 according to data stored in input/output registers 260. Data in input/output register 260 includes data for specifying the number of pixels per horizontal scan line, the number of horizontal scan lines per frame, and the vertical sync blanking signal. Input/output registers 260 specify the type of frame skipping and may also include data to specify other types of video control functions. Finally, input/output registers 260 are storage locations for other specific types of input and output parameters. These input parameters and output parameters will be described in detail later.
グラフィックプロセッサ120は、2つの異なるアドレ
スモードでアドレスメモリ130に作用する。これら2
つのアドレスモードとは、XYアドレスモードとリニア
アドレスモードである。Graphics processor 120 operates on address memory 130 in two different address modes. These 2
The two address modes are an XY address mode and a linear address mode.
グラフィックプロセッサ120がビットマツプされたグ
ラフィックデータと通常のデータ及び命令の両方で動作
するため、アドレスメモリ130の異なる部分を、最も
好都合には異なるアドレスモ−ドによってアドレスする
ことができる。選択された特定のアドレスモードとは無
関係に、メモリインターフェイス250は、アクセスす
べき適当なデータのための適当な物理アドレスを発生す
る。Because graphics processor 120 operates on both bitmapped graphics data and regular data and instructions, different portions of address memory 130 can most advantageously be addressed by different addressing modes. Regardless of the particular address mode selected, memory interface 250 generates the appropriate physical address for the appropriate data to be accessed.
リニアアドレスモードにおいては、フィールドの開始ア
ドレスはm−のマルチビットリニアアドレスで形成され
る。フィールドのサイズは、中央処理ユニット200の
状態レジスタ内のデータによって定められる。XYアド
レスモードにおいては。In linear address mode, the starting address of the field is formed by m- multi-bit linear addresses. The size of the field is determined by data in the status register of central processing unit 200. In XY address mode.
開始アドレスは一対のX及びYの座標値である。The starting 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 required to specify specific data for a specific pixel.
第3図は、xYアドレス七−ドによるピクセルデータの
構成を示すものである。同様に、第4図は、リニアアド
レスモードによる類似のデータの構成を示すものである
。第3図は、ピクセルのXYマトリクスの基準点として
作用する原点310を示す。原点310は、XY開始ア
ドレスとして指定されるが、メモリ内の最初のアドレス
位置である必要はない。ピクセルのアレイに対応するデ
ータの位置1例えば、特定に定められた像エレメントは
、原点アドレス310と関連して指定される。これには
、X開始アドレス340とY開始アドレス330とが含
まれる。X開始アドレス340とY開始アドレス330
とが、原点と共に、希望する特定の像の最初のピクセル
データ371の開始アドレスを示す。ピクセルの像の幅
は、量デルタX350によって示される。ピクセルの像
の高さは、量デルタY360によって示される。FIG. 3 shows the structure of pixel data based on seven xY addresses. Similarly, FIG. 4 shows a similar data structure in linear address mode. FIG. 3 shows an origin 310 that serves as the reference point for the XY matrix of pixels. The origin 310 is designated as the XY starting address, but need not be the first address location in memory. A location of data corresponding to an array of pixels, eg, a specifically defined image element, is specified in conjunction with an origin address 310. This includes an X start address 340 and a Y start address 330. X start address 340 and Y start address 330
indicates, along with the origin, the starting address of the first pixel data 371 of the desired specific image. The width of the image in pixels is indicated by the quantity delta X350. The image height of a pixel is indicated by the quantity delta Y360.
第3図に示す例では、像は、参照番号371ないし37
9で示す9つのピクセルを含んでいる。これらの各ピク
セルの物理アドレスを指定するために必要な最後のパラ
メータは、多数のビットのメモリの幅を示すスクリーン
ピッチ320である。In the example shown in FIG. 3, the images are numbered 371 to 37.
It contains nine pixels, denoted by 9. 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 number of bits.
これらのパラメータ、特に、X開始アドレス340、Y
開始アドレス330、量デルタX350、量デルタY3
60及びスクリーンピッチ320の指定により、メモリ
インターフェイス250が指定されたXYアドレス技術
に基づいて指定された物理アドレスを備えることが可能
になる。These parameters, in particular, X starting address 340, Y
Start address 330, amount delta X350, amount delta Y3
The designation of 60 and screen pitch 320 allows memory interface 250 to be provided with a designated physical address based on a designated XY addressing technique.
第4図は、同様に、リニアな形式のメモリ構成を示すも
のである。1組のフィールド441ないし446が第4
図に示されている。この1組のフィールド441ないし
446は、第3図に示すピクセル371ないし376と
同一であってもよい。以下のパラメータは、リニアなア
ドレス技術に従って特定の素子を指定するのに必要であ
る。FIG. 4 similarly shows a linear memory configuration. One set of fields 441 to 446 is the fourth
As shown in the figure. This set of fields 441-446 may be identical to pixels 371-376 shown in FIG. The following parameters are necessary to specify a particular element according to the linear addressing technique.
第1のパラメータは、希望のアレイの最初のフィールド
441の最初のリニア開始アドレスである開始アドレス
410である。第2のパラメータは、多数のビットのフ
ィールドの特定のセグメン1−の長さを示す量デルタx
420である。第3のパラメータは、特定のアレイの特
定のセグメントの数を示す量デルタY(第4図には示さ
ず)である。The first parameter is the starting address 410, which is the first linear starting address of the first field 441 of the desired array. The second parameter is a quantity delta x indicating the length of a particular segment 1- of a field of many bits
It is 420. The third parameter is the quantity delta Y (not shown in FIG. 4), which indicates the number of a particular segment of a particular array.
最後のパラメータは、近隣のアレイセグメント間のリニ
ア開始アドレスの相違を示すリニアピッチ430である
。XYアドレスモードの場合と同様に、これらのリニア
アドレスパラメータの指定により、メモリインターフェ
イス250が指定される適当な特定の物理アドレスを発
生できるようにする。The final parameter is linear pitch 430, which indicates the difference in linear starting addresses between neighboring array segments. As with the XY address mode, the specification of these linear address parameters allows memory interface 250 to generate the appropriate specific physical address to be specified.
2つのアドレスモードは、異なった目的に有効である。The two addressing modes are useful for different purposes.
XYアドレスモードは、スクリーンメモリと称される、
ビデオRAM132のビットマツプデータを含む部分に
最も有用である。このスクリーンメモリは、表示を制御
するメモリの一部分である。リニアアドレスモードは、
命令や現在表示されていない像データ等のオフ・スクリ
ーンメモリに最も有用である。この後者の種類には、英
文字数字型フォント及び像等のコンピュータシステムに
よって使用される種々の標準記号が含まれている。時に
は、XYアドレスをリニアアドレスに変換することがで
きることが望ましいことである。この変換は、次の式に
従って行う。The XY address mode is called screen memory.
It is most useful for the portion of video RAM 132 that contains bitmap data. This screen memory is the portion of memory that controls the display. Linear address mode is
Most useful for off-screen memory such as instructions or image data not currently displayed. This latter category includes various standard symbols used by computer systems, such as alphanumeric fonts and images. Sometimes it is desirable to be able to convert an XY address to a linear address. This conversion is performed according to the following formula.
LA=OFF+ (YXSP)+ (XXPS)ここで
、LAはリニアアドレスであり、OFFは、XY座標系
の原点のリニアアドレスであるスクリーンオフセットで
あり、SPはビット単位のスクリーンピッチであり、X
はXアドレスであり、PSはビット単位のピクセルサイ
ズである。どちらのアドレスモードを使用するかに拘り
なく、メモリ250は、メモリ130へのアクセスに適
した物理アドレスを発する。LA = OFF + (YXSP) + (XXPS) where LA is the linear address, OFF is the screen offset which is the linear address of the origin of the XY coordinate system, SP is the screen pitch in bits, and
is the X address and PS is the pixel size in bits. Regardless of which addressing mode is used, memory 250 issues a physical address suitable for accessing memory 130.
第5図は、メモリ130のデータワード内へのビクセル
保存方法を示すものである0本発明の好ましい実施例に
よれば、メモリ130は、16ビツト毎のデータワード
によって構成されている。FIG. 5 illustrates how pixels are stored within data words of memory 130. According to a preferred embodiment of the present invention, memory 130 is organized into data words of every 16 bits.
これらの16ビツトは、第5図に、16個のディジット
0ないしFで概略的に示されている。本発明の好ましい
実施例によれば、メモリ130内のピクセル当たりのビ
ット数は、2の累乗の数であるが、16ビツトは越えな
い、このように限定されるので、メモリ130内の各1
6ビツトワードは、整数の、そのようなピクセルを含む
ことができる。第5図は、1ビツト、2ビツト、4ビツ
ト、8ビツト及び16ビツトのピクセル長にそれぞれ対
応する5つの利用可能なピクセルを示すものである。デ
ータワード510は、16個の1ビツトピクセル511
ないし526を示すものであり、これによって、16個
の1ピッI−ピクセルを各々の16ビツ1へデータワー
ド内に配置することができる。データワード530は、
16ビツトデータワード内に配置される8個の2ビツト
ピクセル531ないし538を示すものである。データ
ワード540は、16ビツトデータワード内に配置され
る4個の4ビツトピクセル541ないし544を示すも
のである。データワード550は、16ビツトデータワ
ード内に配置される2個の8ビツトビクセル551ない
し552を示すものである。These 16 bits are shown schematically in FIG. 5 as 16 digits 0 through F. According to a preferred embodiment of the invention, the number of bits per pixel in memory 130 is a power of two, but not more than 16 bits, so that each pixel in memory 130 is
A 6-bit word can contain an integer number of such pixels. FIG. 5 shows five available pixels, corresponding to pixel lengths of 1 bit, 2 bits, 4 bits, 8 bits, and 16 bits, respectively. Data word 510 consists of 16 1-bit pixels 511
to 526, thereby allowing 16 1-bit I-pixels to be placed into each 16-bit 1 within a data word. The data word 530 is
Eight 2-bit pixels 531-538 are shown arranged within a 16-bit data word. Data word 540 shows four 4-bit pixels 541-544 arranged within a 16-bit data word. Data word 550 shows two 8-bit pixels 551-552 arranged within a 16-bit data word.
最後に、データワード560は、16ビツトデータワー
ド内に配置される1個の16ビツトピクセル561を示
すものである。各ピクセル、特に、2の累乗の整数のビ
ット数で物理ワード境界に配列された各ピクセルをこの
ような形式で供給することにより、グラフィックプロセ
ッサ120を通じてのピクセル操作性が高められる。こ
れは、各物理ワードを処理することで整数のピクセルを
操作することになるからである。ビデオ表示を指定する
ビデオRAM 132内の部分で各ピクセルの水平走査
線が第S図に示されるような一連の連続的なワードによ
って割り当てられるということが理解されよう。Finally, data word 560 shows one 16-bit pixel 561 located within the 16-bit data word. Providing each pixel in this manner, and particularly each pixel aligned on a physical word boundary with an integer number of bits that is a power of two, enhances pixel operability through graphics processor 120. This is because processing each physical word involves operating on an integer number of pixels. It will be appreciated that in the portion of video RAM 132 that specifies video display, each horizontal scan line of pixels is assigned by a series of consecutive words as shown in FIG.
第6図は、種々のグラフィック命令用の暗黙のオペラン
ドを記憶するレジスタファイル220のある部分の内容
を示すものである。第6図に示すレジスタ601ないし
611の各々は、グラフィックプロセッサ120の中央
処理ユニット200のレジスタアドレススペースにある
。第6図に示すこれらのレジスタファイルは、可能なレ
ジスタを全てレジスタファイル220内に含むためのも
のではないということに注意されたい。対照的に、典型
的なシステムは、中央処理ユニット200によって各種
のプログラム指定機能用に採用することのできる多数の
汎用未指定レジスタを含んでいる。FIG. 6 illustrates the contents of a portion of register file 220 that stores implicit operands for various graphics instructions. Each of registers 601-611 shown in FIG. 6 resides in the register address space of central processing unit 200 of graphics processor 120. Note that the register files shown in FIG. 6 are not intended to include all possible registers within register file 220. In contrast, typical systems include a large number of general purpose unspecified registers that can be employed by central processing unit 200 for various program specified functions.
レジスタ601は、ソースアドレスを記憶する。このア
ドレスは、ソースアレイの左下角のアドレスである。こ
のソースアドレスは、XYアドレスモードにおけるXア
ドレス340とYアドレス330との組合せであるか、
或いは、リニアアドレスモードにおけるリニア開始アド
レス410である。Register 601 stores the source address. This address is the address of the lower left corner of the source array. Is this source address a combination of X address 340 and Y address 330 in XY address mode?
Alternatively, it is the linear start address 410 in linear address mode.
レジスタ602は、ソースピッチ、即ち、ソースアレイ
の隣接する列の間のリニア開始アドレスの差を記憶する
。このソースピッチは、XYアドレス形式とリニアアド
レス形式のどちらを採用するかによって、第3図に示す
ソースピッチ340となるか、或いは、第4図に示すリ
ニアピッチ430となる。Register 602 stores the source pitch, ie, the difference in linear starting addresses between adjacent columns of the source array. This source pitch becomes the source pitch 340 shown in FIG. 3 or the linear pitch 430 shown in FIG. 4 depending on whether the XY address format or the linear address format is adopted.
レジスタ603及びレジスタ604は、これらのレジス
タが行先開始アドレスと行先ピッチとを含んでいること
を除いては、レジスタ601及びレジスタ602にそれ
ぞれ類似している。レジスタ603に記憶されている行
先開始アドレスは、XYアドレスモード又はリニアアド
レスモードの行先アレイの左下角のアドレスである。同
様に、レジスタ604に記憶されている行先ピッチは、
隣接する列の間のリニア開始アドレスの差である。Register 603 and register 604 are similar to register 601 and register 602, respectively, except that these registers contain a destination start address and a destination pitch. The destination start address stored in register 603 is the address of 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 linear starting addresses between adjacent columns.
換言すれば、行先ピッチは1選択するアドレスモ−ドに
よってスクリーンピッチ320或いはリニアピッチ34
0のいずれかとなる。In other words, the destination pitch can be 1 screen pitch 320 or linear pitch 34 depending on the selected address mode.
It will be either 0.
レジスタ605は、オフセットを記憶する。Register 605 stores the offset.
オフセットは、XYアドレス座標系の原点に対応するリ
ニアビットアドレスである。前述したように、XYアド
レス機構の原点310は、メモリの物理開始アドレスで
ある必要はない。レジスタ605に記憶されたオフセッ
トは、このXY座標系の原点310のリニア開始アドレ
スである。このオフセットは、リニアアドレスとXYア
ドレスとの間の変換に用いられる。The offset is a linear bit address corresponding to the origin of the XY address coordinate system. As mentioned above, the origin 310 of the XY addressing mechanism need not be the physical starting address of memory. The offset stored in register 605 is the linear starting address of the origin 310 of this XY coordinate system. This offset is used to convert between linear addresses and XY addresses.
レジスタ606及びレジスタ607は、スクリーンメモ
リ内のウィンドウに対応するアドレスを記憶する。レジ
スタ606に記憶されているウィンドウ開始アドレスは
、ディスプレイウィンドウの左下角のアドレスである。Register 606 and register 607 store addresses corresponding to windows in screen memory. The window start address stored in register 606 is the address of the lower left corner of the display window.
同様に、レジスタ607は、このディスプレイウィンド
ウの右上角のXYアドレスであるウィンドウエンドを記
憶する。これら2つのレジスタ内の各アドレスは、指定
されたディスプレイウィンドウの境界を定めるために用
いられる。グラフィックディスプレイ内のウィンドウ内
の像は、公知のグラフィック技術に従って、背景の像と
異なるものとすることができる。これらのレジスタ内に
含まれるウィンドウ開始アドレスとウィンドウ終了アド
レスは、特定のXYアドレスがウィンドウの内側にある
か外側にあるかをグラフィックプロセッサ120が定め
ることができるようにウィンドウの範囲を指定するのに
用いられる。Similarly, register 607 stores the window end, which is the XY address of the upper right corner of this display window. Each address within these two registers is used to delimit a specified display window. The image within the window within the graphic display can be different from the background image according to known graphics techniques. The window start address and window end address contained within these registers are used to specify the range of the window so that graphics processor 120 can determine whether a particular XY address is inside or outside the window. used.
レジスタ608は、デルタY/デルタXデータを記憶す
る。このレジスタ608は、2つの独立した半部分に分
けられ、上半分(高位ビット)はソースアレイ(デルタ
Y)の高さを指定し、下半分(低位ビット)はソースア
レイ(デルタX)の幅を指定する。レジスタ60gに記
憶されているデルタY/デルタXデータは、ソースアレ
イが指定された方法によってXYアドレス形式或いはリ
ニアアドレス形式のいずれかで供給することができる。Register 608 stores delta Y/delta X data. This register 608 is divided into two independent halves, with the top half (high bits) specifying the height of the source array (Delta Y) and the bottom half (low bits) specifying the width of the source array (Delta X). Specify. The delta Y/delta X data stored in register 60g can be provided in either an XY address format or a linear address format depending on how the source array is specified.
2つの量デルタX及びデルタYの意味については、第3
図及び第4図と共に、前に述べられている。For the meaning of the two quantities delta X and delta Y, see Part 3.
As previously discussed in conjunction with FIGS.
レジスタ609及びレジスタ610は、各々がピクセル
データを含んでいる。レジスタ609に記憶されている
色0データは、第1色指定色Oに対応するレジスタ全体
にわたって複写されるピクセル値を含んでいる。同様に
、レジスタ610に記憶されている色1データは、第2
色値指定色1に対応するレジスタ全体にわたって複写さ
れるピクセル値を含んでいる。グラフィックプロセッサ
120のあるグラフィック命令は、そのデータ操作に、
上記の色値のいずれか或いは両方を用いている。これら
のレジスタの使用については、後に詳しく述べる。Register 609 and register 610 each contain pixel data. Color 0 data stored in register 609 includes pixel values that are copied across the register corresponding to the first designated color O. Similarly, the color 1 data stored in register 610 is
Contains pixel values to be copied across registers corresponding to color value designation color 1. Certain graphics instructions of graphics processor 120 may include, for its data operations,
Either or both of the above color values are used. The use of these registers will be discussed in detail later.
更に、レジスタファイル220は、スタックポインタア
ドレスを記憶するレジスタ611を含んでいる。レジス
タ611に記憶されているスタックポインタアドレスは
、データスタックの最上部であるビデオRAM 132
内のビットアドレスを指定する。この値は、データがデ
ータスタックに押し込まれるように或いはデータスタッ
クから飛び出るように調整される。このようにして、こ
のスタックポインタアドレスは、データスタックに最後
に入力されたデータのアドレスを示すように作用する。Additionally, register file 220 includes a register 611 that stores a stack pointer address. The stack pointer address stored in register 611 points to the top of the data stack, video RAM 132.
Specify the bit address within. This value is adjusted so that data is pushed into or out of the data stack. In this way, this stack pointer address serves to indicate the address of the last data entered on the data stack.
第7図は、アレイがオフスクリーンメモリからスクリー
ンメモリに移動するプロセスを概略的な形式で示したも
のである。第7図は、スクリーンメモリ705とオフス
クリーンメモリ715とを含むビデオRAM132を示
すものである。第7図では、ピクセル780のあるアレ
イ(より正確には、ピクセルのあるアレイに対応するデ
ータ)が、オフスクリーンメモリ715からスクリーン
メモリ705に転送されてピクセル790のあるアレイ
となる。FIG. 7 illustrates in schematic form the process by which an array is moved from off-screen memory to screen memory. FIG. 7 shows video RAM 132 including screen memory 705 and off-screen memory 715. In FIG. 7, an array of pixels 780 (more precisely, data corresponding to an array of pixels) is transferred from off-screen memory 715 to screen memory 705 to become an array of pixels 790.
アレイ移動動作を行う前に、あるデータを、レジスタフ
ァイル220の指定されたレジスタに記憶しなければな
らない。レジスタ601には、ピクセルのソースアレイ
の開始アドレス710をロードしなければならない。第
7図に示す例では、このロードは、リニアアドレスモー
ドで指定される。ソースピッチ720は、レジスタ60
2に記憶される。レジスタ603には、行先アドレスが
ロードされる。第7図に示す例では、このロードは、X
アドレス730とYアドレス770とを含むXYアドレ
スモードで指定される。レジスタ604は行先ピッチ6
45を備えており5行先ピッチ645は、レジスタ60
4の内部に記憶されている。XY座標系の原点のリニア
アドレスとオフセラ1−アドレス770とは、レジスタ
605に記憶される。最後に、デルタY750とデルタ
X760は、レジスタ608の別々の半分に記憶される
。Before performing an array move operation, certain data must be stored in designated registers of register file 220. Register 601 must be loaded with the starting address 710 of the pixel's source array. In the example shown in FIG. 7, this load is specified in linear address mode. The source pitch 720 is the register 60
2 is stored. Register 603 is loaded with the destination address. In the example shown in Figure 7, this load is
It is specified in an XY address mode including address 730 and Y address 770. Register 604 is destination pitch 6
45 and the pitch 645 is five rows ahead of the register 60.
It is stored inside 4. The linear address of the origin of the XY coordinate system and offset 1-address 770 are stored in register 605. Finally, delta Y 750 and delta X 760 are stored in separate halves of register 608.
第7図に概略的に示されるアレイ移動動作は、レジスタ
ファイル220の各レジスタに記憶されているデータに
関連して実行される。好ましい実施例によれば、ピクセ
ル当たりのビット数は、整数のピクセルが単一の物理デ
ータワードに記憶されるように選択される。この選択に
より、グラフィックプロセッサは、主として全てのデー
タワードを転送することによって、ピクセル780のア
レイをピクセル790のアレイに転送することもできる
。このように物理データワードのビット数に関連してピ
クセル当たりのビット数を選択した場合でも、ある場合
には、アレイ境界の部分ワードを扱うことが必要である
。然し乍ら、この設計上の選択は、部分データワードの
アクセスと転送を行う必要が最小になるように作用する
。The array move operations shown schematically in FIG. 7 are performed in conjunction with data stored in each register of register file 220. According to a preferred embodiment, the number of bits per pixel is selected such that an integral 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 all data words. Even with this selection of the number of bits per pixel 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.
本発明の好ましい実施例によれば、第7図に概略的に示
されているデータの転送は、多数の異なるデータが変形
される特殊な場合である。ソース像と行先像の対応する
各アドレス位置からのピクセルデータは、命令によって
指定される方法で結合される。データの結合は、論理演
算(例えばAND又はOR)であっても、算術演算(例
えば加算又は減算)であってもよい。このようにしてピ
クセル790のアレイに記憶された新しいデータは、ピ
クセル780のアレイのデータとピクセル790の現在
のデータの両方の関数である。第7図に示すデータの転
送は、より一般的な変形の特殊な場合であり、この場合
は、行先アレイに最終的に記憶されるデータは、前にそ
こに記憶されたデータには依存しない。According to a preferred embodiment of the invention, the data transfer shown schematically in FIG. 7 is a special case in which a large number of different data are transformed. Pixel data from each corresponding address location in the source and destination images are combined in a manner specified by the instructions. The combination of data may be a logical operation (eg, AND or OR) or an arithmetic operation (eg, addition or subtraction). The new data stored in the array of pixels 790 in this manner is a function of both the data in the array of pixels 780 and the current data in pixels 790. The data transfer shown in Figure 7 is a special case of a more general variant, in which the data ultimately stored in the destination array does not depend on the data previously stored there. .
このプロセスは、第8図に、フローチャートで示されて
いる。好ましい実施例によれば、転送は、物理データに
よって順次行われる。プロセスが一度始まると(開始ブ
ロック801)、レジスタ601に記憶されているデー
タが、ソースアドレスを得るために読み取られる(処理
ブロック802)0次に、グラフィックプロセッサ12
0が、表示ソースアドレスに対応した表示データワード
をメモリ130から引き出す(処理ブロック8゜3)。This process is illustrated in flow chart form in FIG. According to a preferred embodiment, the transfer is performed 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, graphics processor 12
0 retrieves the display data word corresponding to the display source address from memory 130 (processing block 8.3).
ソースアドレスがXY形式で指定される場合は、このデ
ータの呼び戻しには、XYアドレスを対応する物理アド
レスに変換するステップが含まれている。レジスタ60
3がら行先アドレスを呼び戻して(処理ブロック804
)、次に表示物理データワードを引き出す(処理ブロッ
ク8o5)類似のプロセスが、行先位置に含まれている
データのために行われる。If the source address is specified in XY format, recalling this data includes converting the XY address to a corresponding physical address. register 60
3 to recall the destination address (processing block 804).
), then derive the display physical data word (processing block 8o5) A similar process is performed for the data contained in the destination location.
この結合されたデータは1次いで、その前に定められた
行先位置に復帰する(処理ブロック806)。ソース及
び行先のピクセルデータは、次いで、実行される結合モ
ードに従って結合される。The combined data is then returned to its previously defined destination location (processing block 806). The source and destination pixel data are then combined according to the combination mode performed.
この結合は、物理データワードが2つ以上のピクセルに
対応するデータを含んでいる場合で゛もピクセルを基本
としてピクセルで行われる。この結合されたデータは、
次いで、指定の行先位置に書き込まれる(処理ブロック
807)。This combination is performed pixel by pixel even if the physical data word contains data corresponding to more than one pixel. This combined data is
It is then written to the specified destination location (processing block 807).
グラフィックプロセッサ120は、レジスタ608に記
憶されているデルタY/デルタX情報に関して、最後の
データが転送されたかどうかを検出することによって、
データ全体の転送が行われたかどうかを判断する(判断
ブロック808)。Graphics processor 120 determines whether the last data has been transferred with respect to the delta Y/delta X information stored in register 608.
A determination is made whether the entire data has been transferred (decision block 808).
データ全体の転送が実行されていない場合は、ソースア
ドレスが更新される。レジスタ601に記憶されている
ソースアドレスは、レジスタ601に前に記憶されたソ
ースアドレスとレジスタ602に記憶されているソース
ピッチデータとに関連して、転送すべき次のデータワー
ドを参照するために更新される(処理ブロック809)
、同様に。If the entire data transfer has not been performed, the source address is updated. The source address stored in register 601 is used to refer to the next data word to be transferred in relation to the source address previously stored in register 601 and the source pitch data stored in register 602. Updated (processing block 809)
, as well.
レジスタ603に記憶されている行先アドレスは。The destination address stored in register 603 is:
レジスタ604に記憶されている行先ピッチデータに関
連して、行先の次のデータワードを参照するために更新
される(処理ブロック81o)。このプロセスは、レジ
スタ601に記憶されている新しいソースとレジスタ6
03に記憶されている新しい行先データとを用いて繰り
返される。The destination pitch data stored in register 604 is updated to reference the next data word of the destination (processing block 81o). This process creates a new source stored in register 601 and register 6
The process is repeated using the new destination data stored in 03.
上記したように、レジスタ608に記憶されているデル
タY/デルタXデータは、転送すべき像の限界を定める
ために用いられる。像全体が上記したようにレジスタ6
08に記憶されているデルタY/デルタXデータを参照
しながら転送されている(判定ブロック808)ときは
、命令の実行が完了して(終了ブロック811)、グラ
フィックプロセッサ120は、そのプログラムの命令を
実行することで動作し続ける。上記したように。As mentioned above, the delta Y/delta X data stored in register 608 is used to define the limits of the image to be transferred. The entire image is in register 6 as described above.
When the data is transferred while referring to the delta Y/delta It continues to work by running As mentioned above.
好ましい実施例においては、この第8図に示すプロセス
は、命令マイクロコードで実施される。データ変形プロ
セス全体は、アレイ移動と称されるが、グラフィックプ
ロセッサ120への単一命令に応答して実行される。In the preferred embodiment, the process shown in FIG. 8 is implemented in instruction microcode. The entire data transformation process, referred to as array movement, is performed in response to a single instruction to graphics processor 120.
第9図は、本発明に関する入力/出力レジスタ260の
幾つかを示すものである。入力/出力レジスタ260は
、入力/出力制御に関する情報の保管専用のレジスタで
あるレジスタ901ないし910を含んでいる。レジス
タ901は、表示開始アドレスを記憶する。レジスタ9
02は5表示リフレッシュアドレスを記憶する。レジス
タ903は、表示アドレス増分を記憶する。これら3つ
のレジスタが共同して、ビデオRAM132のビデオ表
示を指定する部分を制御する。レジスタ901に記憶さ
れている表示開始アドレスは、ビデオRAM 132内
の開始アドレスであり、メモリは、このビデオRAM1
32で、ビデオ表示の開始を指定する。ディスプレイの
フレームが新しくなる度に、その開始時に、レジスタ9
01内のデータが、表示リフレッシュアドレスを定める
ためにレジスタ902にロードされる。表示リフレッシ
ュアドレスは、ビデオ表示を定めるために必要な、ビデ
オRAMP32の次に読み取るべき部分を記憶する。こ
のアドレスは、一般的に、ビデオ走査の走査線の開始ア
ドレスである。各水平帰線期間中は、レジスタ903に
記憶されている表示アドレスの増分に対応するデータは
、レジスタ902内に記憶されているデータに加えられ
、それによって、表示リフレッシュアドレスを形成する
。このプロセスは、レジスタ902がレジスタ901か
らの表示開始アドレスを再びロードされるこの特定のビ
デオフレームが終了するまで続けられる。水平リセット
信号と垂直リセット信号とを発するためのハードウェア
が第15図に示されている。FIG. 9 illustrates some of the input/output registers 260 for the present invention. Input/output registers 260 include registers 901-910, which are registers dedicated to storing information regarding input/output control. Register 901 stores a display start address. register 9
02 stores the 5 display refresh address. Register 903 stores the display address increment. Together, these three registers control the portion of video RAM 132 that specifies video display. The display start address stored in register 901 is the start address in video RAM 132, and the memory
At 32, the start of video display is specified. At the beginning of each new display frame, register 9 is
The data in 01 is loaded into register 902 to define the display refresh address. The display refresh address stores the next portion of video RAMP 32 to be read, necessary to define the video display. This address is typically the starting address of the scan line of the video scan. During each horizontal retrace interval, data corresponding to the display address increment stored in register 903 is added to the data stored in register 902, thereby forming the display refresh address. This process continues until the end of this particular video frame when register 902 is again loaded with the display start address from register 901. The hardware for issuing the horizontal and vertical reset signals is shown in FIG.
入力/出力レジスタ260のレジスタ904は、ビデオ
RAMリフレッシュアドレスを記憶する。第1図に示す
システムのような典型的なシステムにおいては、ビデオ
RAM132は、ダイナミックランダムアクセスメモリ
によって構成される。このメモリは、大部分、記憶され
た情報を保持するために周期的にリフレッシュされる。Register 904 of input/output registers 260 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, for the most part, refreshed periodically to retain stored information.
レジスタ904に記憶されているビデオRAMリフレッ
シュアドレスは1次にリフレッシュすべき列アドレスで
ある。この列アドレスは、公知の原理に基づいて、リフ
レッシュ信号と共にビデオRAM132に加えられ、こ
れによって、選択された全ての行をリフレッシュする。The video RAM refresh address stored in register 904 is the column address to be primarily refreshed. This column address is applied to video RAM 132 along with a refresh signal to refresh all selected rows, based on known principles.
この作業が一度行われると、レジスタ904内のデータ
は、次いで。Once this operation is done, the data in register 904 is then changed to .
次の列に増分される。このようにして、ビデオRAMリ
フレッシュアドレスは、次にリフレッシュすべきアドレ
スに対応する。ダイナミックランダムアクセスメモリリ
フレッシュ要求を発するためのハードウェアが第16図
に示されている。Incremented to the next column. In this way, the video RAM refresh address corresponds to the next address to be refreshed. Hardware for issuing dynamic random access memory refresh requests is shown in FIG.
レジスタ905.906,907.908及び909は
、ホスト処理システム110がメモリ130に直接アク
セスすることを可能にする。これは、レジスタ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 allow host processing system 110 to directly access memory 130. This is accomplished by providing register 905 with host data, register 906 with host least significant data, and register 907 with host most significant data. These three registers operate to allow host processing system 110 to write to or read from memory 130 through memory interface 250 . This is accomplished by control signals from host processing system 110 and data stored in registers 908 and 909. These registers 908 and 909 store the host's least significant control bit and host's most significant control bit, 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 host processing system 110, operating 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 graphics processor 120 has a 16-bit wide external bus, these two registers can be read or written in a single memory cycle.
第10図は、ホストの最上位制御ビット909とホスト
の最下位制御ビット908との結合に対応するホスト制
御レジスタ1000の内容を示すものである。ホスト制
御レジスタ1000は、ホスト処理システム110とグ
ラフィックプロセッサ120との間の通信を可能にする
多数のサブ部分を含んでいる。メツセージ入力部分1o
01は、ホスト処理システム110がグラフィックプロ
セッサ120へメツセージを送ることを可能にする。こ
のメツセージ入力部分1001は1割込み入力ビツト1
002と共に用いられる。この割込み入力ビット100
2は、ホスト処理システム110がホスト処理システム
110のある要求に応答してグラフィックプロセッサ1
20の動作に割り込むことを可能にする。同様に、メツ
セージ出力部分1003は、グラフィックプロセッサ1
2oがホスト処理システム110ヘメツセージを送るこ
とを可能にする。このメツセージ出力部分1003と結
合されるのは、割込み出力ビット1004である。この
割込み出力ビット1004は、グラフィックプロセッサ
120がある優先動作の要求に応答してホスト処理シス
テム110の動作に割り込むことを可能にする。部分1
005及び10o6は、ホスト処理システム110がメ
モリ130に関して読み取り動作と書き込み動作を行っ
ている間に使用される。増分書き込みビット1005が
設定されている場合は、ホストの最下位制御ワードアド
レス906とホストの最上位ワードアドレス907とに
よって形成されるアドレスが、ホスト処理システム11
0によって読み取り動作が行われる度に増加される。増
分書き込みビット1005が設定されていない場合は、
これらのアドレスレジスタは、書き込み動作時に増加さ
れない。同様に、増分書き込みビット1006が設定さ
れている場合は、ホストの最下位制御ワードアドレス9
06とホストの最上位ワードアドレス907とによって
形成されるアドレスが、ホスト処理システム110によ
って読み取り動作が行われる度に増加される。もし、逆
に、増分書き込みビット1006が設定されていない場
合は、上記のような増加は、読み取り動作時には行われ
ない。そのような自動増分読み取り及び書き込み動作を
行う能力により、ホスト処理システム110は、メモリ
130内のメモリブロックからの読み取り又はメモリブ
ロックへの書き込みを1次のアドレスを連続的に供給す
る必要なしに行うことができる。FIG. 10 shows the contents of host control register 1000 corresponding to the combination of host most significant control bit 909 and host least significant control bit 908. Host control register 1000 includes a number of sub-portions that enable communication between host processing system 110 and graphics processor 120. Message input part 1o
01 allows host processing system 110 to send messages to graphics processor 120. This message input part 1001 has 1 interrupt input bit 1
Used with 002. This interrupt input bit 100
2, the host processing system 110 activates the graphics processor 1 in response to a certain request of the host processing system 110.
20 operations can be interrupted. Similarly, the message output part 1003 is the graphic processor 1
2o to send messages to host processing system 110. Coupled with this message output portion 1003 is an interrupt output bit 1004. This interrupt output bit 1004 allows graphics processor 120 to interrupt the operation of host processing system 110 in response to requests for certain priority operations. part 1
005 and 10o6 are used while host processing system 110 performs read and write operations with respect to 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 most significant word address 907 is written to the host processing system 11.
It is incremented by 0 each time a read operation is performed. If incremental write bit 1005 is not set, then
These address registers are not incremented during write operations. Similarly, if the incremental write bit 1006 is set, the host's lowest control word address 9
06 and the host's most significant word address 907 is incremented each time a read operation is performed by the host processing system 110. If, on the other hand, the increment write bit 1006 is not set, then such an increment will not occur during a read operation. The ability to perform such automatic incremental read and write operations allows host processing system 110 to read from or write to memory blocks within memory 130 without having to continuously supply primary addresses. be able to.
キャッシュフラッシュビット1007と停止ビット10
08とにより、ホスト処理システム110を通じてグラ
フィックプロセッサ120を追加制御することが可能に
なる。キャッシュフラッシュビット1007が設定され
ている場合、グラフィックプロセッサ120は、命令キ
ャッシュ230に記憶されている全てのデータを、即時
に消去する。この機能は、ホスト処理システム110が
メモリ130にグラフィックプロセッサ120のための
命令ブロックをロードしているときに最も有用である。Cache flush bit 1007 and stop bit 10
08 allows for additional control of graphics processor 120 through host processing system 110. If cache flush bit 1007 is set, graphics processor 120 immediately erases all data stored in instruction cache 230. This feature is most useful when host processing system 110 is loading blocks of instructions for graphics processor 120 into memory 130.
このようにして命令キャッシュのフラッシュを行うこと
により、グラフィックプロセッサ12’Oが命令キャッ
シュ230に前に記憶されていた古い命令を行わず、メ
モリ130がらの更新された命令を読み取ることが確実
となる。Flushing the instruction cache in this manner ensures that graphics processor 12'O does not perform old instructions previously stored in instruction cache 230, but instead reads updated instructions from memory 130. .
停止ビット1008が設定されている場合、グラフィッ
クプロセッサ120は、このビットがリセットされるま
で停止される。この動作は、ホスト処理システム110
がグラフィックプロセッサ120のための一組の新たな
動作を定義している間にグラフインクプロセッサ120
の動作を全て停止させるのに有用である。従って、例え
ば、ホスト処理システム110がグラフィックプロセッ
サ120によって使用される命令及びデータを再定義で
き、この動作の期間中、スプリアスレスポンスを避ける
ために、グラフィックプロセッサ120が停止される。If stop bit 1008 is set, graphics processor 120 is stopped until this bit is reset. This operation is performed by host processing system 110
defines a new set of operations for the graphics processor 120 while the graph ink processor 120
This is useful for stopping all operations. Thus, for example, host processing system 110 may redefine the instructions and data used by graphics processor 120, and during this operation graphics processor 120 is halted to avoid spurious responses.
本発明の好ましい実施例によれば、上記したビデオの更
新動作とメモリのリフレッシュ動作は、グラフィックプ
ロセッサ120が停止されているときも継続される。こ
れにより、停止間隔中の現在の表示とメモリデータとが
保存される。In accordance with a preferred embodiment of the present invention, the video update and memory refresh operations described above are continued even when graphics processor 120 is stopped. This saves the current display and memory data during the stop interval.
第9図に示される最後のレジスタは、制御レジスタ91
0である。制御レジスタ910は、グラフィックプロセ
ッサ120の内部動作の制御に用いられるデータを記憶
する。本発明に最も関連するのは、リフレッシュ速度部
911である。リフレッシュ速度部911は、2ビツト
であり、この2ビツトがビデオRAM 132を形成す
るダイナミックランダムアクセスメモリのリフレッシュ
速度を定める。第1表は、このリフレッシュ速度部91
1の好ましい実施例を示したものである。The last register shown in FIG. 9 is control register 91.
It is 0. Control register 910 stores data used to control internal operations of graphics processor 120. The refresh rate section 911 is most relevant to the present invention. Refresh rate section 911 is two bits that determine the refresh rate of the dynamic random access memory forming video RAM 132. Table 1 shows this refresh rate section 91
1 shows a preferred embodiment.
ダイナミックランダムアクセスメモリは、グラフィック
プロセッサ120の32命令サイクル毎或いは64命令
サイクル毎に更新することができるか、或いはこのビッ
トの状態によってリフレッシュを延期することができる
ということに注意されたい。特定のリフレッシュ速度が
、グラフィックプロセッサ120を応用する用途に応じ
て選択される。然し乍ら、メモリ130内に記憶されて
いるデータの保全性を確保するために、リフレッシュ速
度は、ある短い時間以上に設定してはならなり)。Note that the dynamic random access memory can be updated every 32 or 64 instruction cycles of graphics processor 120, or refresh can be deferred depending on the state of this bit. The particular refresh rate is selected depending on the application for graphics processor 120. However, to ensure the integrity of the data stored in memory 130, the refresh rate should not be set above a certain short period of time).
RRビット リフレッシュレート
00 32クロツクサイクル
01 64クロツクサイクル
10 未使用
1 1 DRAMリフレッシュなし紅
第11図は、状態レジスタ1100の種々のフィールド
を示している。状態レジスタ1100は、グラフィック
プロセッサ120の動作に関する種々の指示を記憶する
。ビット1101.1102.1103及び1104は
、中央処理ユニット200による動作の結果に基づいて
セット又はリセットされる。中央処理ユニット200の
動作の出力が否定であった場合には、否定ビット110
1がセットされ、さもなくば、このビットはリセットさ
れる。中央処理ユニット200の動作が桁上げ出力を発
生する場合には、桁上げビット1102がセットされ、
さもなくば、このビットがリセットされる。同様に、ゼ
ロ出力の指示がゼロビット1103を経て形成され、オ
ーバーフロー出力の指示がオーバーフロービット110
4によって形成される。状態レジスタ1100のこれら
のビットは、中央処理ユニット200の動作に基づいて
自動的にセットされる。RR Bit Refresh Rate 00 32 Clock Cycles 01 64 Clock Cycles 10 Unused 1 1 DRAM No Refresh Red FIG. 11 shows the various fields of status register 1100. Status register 1100 stores various instructions regarding the operation of graphics processor 120. Bits 1101.1102.1103 and 1104 are set or reset based on the results of operations by central processing unit 200. If the output of the operation of the central processing unit 200 is negative, the negative bit 110
Set to 1, otherwise this bit is reset. If the operation of central processing unit 200 generates a carry output, 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 formed via overflow bit 110.
Formed by 4. These bits of status register 1100 are automatically set based on the operation of central processing unit 200.
第11図に示された状態レジスタ1100の他の部分は
、本発明の動作により関連したものである。これらの部
分は、中央処理ユニット200によってセットすること
ができ、2組の別々のフィールドサイズ及びフィールド
拡張オプションを定める。フィールドサイズ0部分11
05は、中央処理ユニット200によって作用を受ける
フィールドの長さを指示する5ビツトである。本発明の
好ましい環境によれば、中央処理ユニット2゜Oは、3
2個のビットに対して同時に作用する。Other portions of status register 1100 shown in FIG. 11 are more relevant to the operation of the present invention. These portions can be set by central processing unit 200 to define two separate sets of field size and field expansion options. field size 0 portion 11
05 is 5 bits that indicates the length of the field acted upon by central processing unit 200. According to a preferred environment of the invention, the central processing unit 2°O comprises 3
Acts on two bits simultaneously.
グラフィックプロセッサ120は、フィールドサイズ0
部分1105内にセットされたフィールドサイズに基づ
いて工ないし32ビツトのフィールドサイズに対して作
用を与えることができる。5ビツトの同様のフィールド
サイズ1部分1107は、第2のフィールドサイズを指
示する。可変のフィールドサイズで作動することのでき
る中央処理ユニット200の命令は5選択されたフィー
ルドサイズの長さを指示するように状態レジスタ110
0のフィールドサイズ0部分1105又はフィールドサ
イズ1部分1107を指示する1つのビットを含む。フ
ィールド拡張Oビット11Q6及びフィールド拡張1ビ
ツト1108は、各々のフィールドサイズに対する符号
拡張オプションを指示する。中央処理ユニット200に
よって作用を受けるフィールドサイズが32ビツトより
小さい場合には、残りのビットを成るやり方で満たさな
ければならない。各々のフィールド拡張Oビット110
6又はフィールド拡張1ビツト1108が「0」である
時には、中央処理ユニット200の32ビツトワードの
これらの残り部分にOが満たされる。一方、このビット
が「1」である場合には、中央処理ユニット200によ
って作用を受ける数の符号が拡張される。この点につい
ては、その数が正である場合には、これらの付加的なフ
ィールド拡張ビットが「o」にセットされる。もしこの
数が負である場合には、これらの付加的なフィールド拡
張ビットが「1」にセットされる。The graphics processor 120 has a field size of 0.
Based on the field size set in portion 1105, an effect can be applied to a field size of 1 to 32 bits. A similar field size 1 portion 1107 of 5 bits indicates the second field size. The instructions of the central processing unit 200, which is capable of operating with variable field sizes, 5.
Contains one bit to indicate field size 0 portion 1105 or field size 1 portion 1107 of 0. Field extension O bit 11Q6 and field extension 1 bit 1108 indicate the sign extension option for each field size. If the field size operated on by central processing unit 200 is less than 32 bits, the remaining bits must be filled in the following manner. Each field extension O bit 110
These remaining portions of the 32-bit word of central processing unit 200 are filled with O's when the 6 or field extension 1 bit 1108 is ``0''. On the other hand, if this bit is "1", the sign of the number acted upon by the central processing unit 200 is expanded. In this regard, these additional field extension bits are set to 'o' if the number is positive. If this number is negative, these additional field extension bits are set to '1'.
こ九は、負の数を表わすための2の補数演算の使用に対
応する。選択されたフィールドサイズ及びフィールド拡
張の動作は、添付図面を参照して以下で詳細に説明する
。This number corresponds to the use of two's complement arithmetic to represent negative numbers. The operation of selected field sizes and field extensions will be described in detail below with reference to the accompanying drawings.
第12図は、アドレスレジスタ1200を示している。FIG. 12 shows address register 1200.
好ましい実施例では、アドレスレジスタ1200は32
ビット長さであり、これは、中央処理ユニット200に
よって使用されるデータワードの長さと同じである。好
ましい実施例では、可変フィールドサイズの選択につい
て、アドレスレジスタ1200は、より一般的なワード
の指定ではなくて、メモリ130内の特定ビットを指定
する。従って、アドレスレジスタ1200は、4ビツト
のピントアドレス部分1201と、28ビツトのワード
アドレス部分1202とを含んでいる。ワードアドレス
部分12o2は、好ましい実施例では、メモリ130内
の個々の16ビツトワードを指定する。ビットアドレス
1201は、その選択されたワード内の特定のビットを
指定する。In the preferred embodiment, address register 1200 has 32
bit length, which is the same as the length of the data word used by central processing unit 200. In the preferred embodiment, for variable field size selection, address register 1200 specifies a particular bit within memory 130 rather than a more general word specification. Therefore, address register 1200 includes a 4-bit focus address portion 1201 and a 28-bit word address portion 1202. Word address portion 12o2 specifies individual 16-bit words within memory 130 in the preferred embodiment. Bit address 1201 specifies a particular bit within the selected word.
グラフィックプロセッサ120からメモリ130に送ら
れるアドレスは、ワードアドレス1202のみを含んで
いる。ビットアドレス1201は、所望のビットを選択
するようにグラフィックプロセッサ120内で使用され
る。The address sent from graphics processor 120 to memory 130 includes only word address 1202. Bit address 1201 is used within graphics processor 120 to select the desired bit.
第13図は、メモリ130内の特定のワード境界と選択
されたフィールドサイズとの関係の種々の場合を示して
いる。本発明の好ましい実施例によれば、グラフィック
プロセッサ120は、1ビツトから32ビツトまでの選
択された巾のフィールドサイズをメモリ130に書き込
んだりここから読み取ったりすることができる。更に、
本発明の好ましい実施例では、メモリ130は、16ビ
ツトワードに編成される。第13図は、メモリ130の
16ビツトワードと選択されたフィールドサイズ及びそ
のフィールドのスタートとの関係の各々の考えられる場
合を示している。FIG. 13 illustrates various cases of the relationship between specific word boundaries in memory 130 and selected field sizes. In accordance with a preferred embodiment of the present invention, graphics processor 120 can write to and read from memory 130 field sizes of selected widths from 1 bit to 32 bits. Furthermore,
In the preferred embodiment of the invention, memory 130 is organized into 16-bit words. FIG. 13 shows each possible case of the relationship between a 16-bit word of memory 130 and the selected field size and start of that field.
第13A図ないし第13D図は、1つのワードアクセス
が全指定フィールドをアクセスできるに充分であるよう
な場合を示している。第13A図は、最も簡単な場合で
ある。第13A図において、メモリ130の16ビツト
ワードNに厳密に一致する16ビツトフイールドが指定
される。第13A図に示された場合には、読み取りフィ
ールドの動作に単一のデータワードNの読み取りが必要
とされる。杏き込みフィールドの動作も同様に単一のメ
モリワードNの書き込みを伴う。Figures 13A-13D illustrate the case where one word access is sufficient to access all specified fields. Figure 13A is the simplest case. In FIG. 13A, a 16-bit field is specified that exactly matches the 16-bit word N of memory 130. In the case shown in FIG. 13A, the operation of the read field requires reading a single data word N. The operation of the read field similarly involves writing a single memory word N.
第13B図ないし第13D図に示された場合となるのは
、指定のフィールドがメモリ130の単一のデータワー
ドN内に完全に存在するが、このデータワードNに完全
に一致しない時である。The case shown in FIGS. 13B-13D occurs when the specified field is completely within a single data word N of memory 130, but does not match exactly this data word N. .
第13B図は、指定のフィールドの最下位ビットがデー
タワードNの開始と一致しないが、指定フィールドの最
上位ビットがデータワードNの最上位ビットと一致する
ような場合を示している。同様に、第13C図は、デー
タフィールドの最下位ビットがメモリワードNの最下位
ビットに整列されるが、最上位ビットは整列されないよ
うな場合を示している。更に、第13D図は、フィール
ドが最下位ビットにも最上位ビットにも整列せずにデー
タワードN内に完全に含まれる場合を示している。FIG. 13B illustrates the case where the least significant bit of the designated field does not coincide with the start of data word N, but the most significant bit of the designated field does coincide with the most significant bit of data word N. Similarly, FIG. 13C shows the case where the least significant bit of the data field is aligned with the least significant bit of memory word N, but the most significant bit is not. Furthermore, FIG. 13D shows the case where the field is completely contained within data word N without being aligned to either the least significant bit or the most significant bit.
第13B図ないし第13D図の各々の場合において、指
定のフィールドを読み取る場合には、メモリ130から
単一のデータワードNのみを読み取りそしてこの指定の
フィールド内に含まれないビットをマスクすることが必
要とされる。一方。In each case of FIGS. 13B-13D, when reading a designated field, it is possible to read only a single data word N from memory 130 and mask the bits that are not contained within this designated field. Needed. on the other hand.
第13B図ないし第13D図に示されたようなフィール
ドを書き込むためには、コンパウンド動作が必要とされ
る。先ず第1に、データワードNをメモリ130から呼
び出し、次いで、指定のフィールドに対応するビットを
、データワードNの他のビットを変更せずに変更しなけ
ればならない。A compounding operation is required to write fields such as those shown in FIGS. 13B-13D. First, data word N must be recalled from memory 130 and then the bits corresponding to the specified fields must be changed without changing the other bits of data word N.
最後に、この変更されたデータワードは、メモリ130
内のデータワードNと同じ位置に書き込まれる。動作の
この組合せは、読み取り/変更/書き込み動作と称する
。Finally, this modified data word is stored in memory 130
is written to the same location as data word N in the data word N. This combination of operations is referred to as a read/modify/write operation.
第13E図ないし第13H図は、指定のフィールドをア
クセスする時にメモリ130内の2っの連続するデータ
ワードをアクセスしなければならない例を示している。Figures 13E-13H illustrate an example where two consecutive data words in memory 130 must be accessed when accessing a specified field.
第13E図は、これら場合の最も簡単な例を示している
。第13E図において、メモリ130内の一対の連続す
るデータワード(データワードN及びデータワードN+
1)に厳密に対応する32ビツトのフィールドが指定さ
れる。第13E図に示されたようなフィールドを読み取
る時には、2つの連続的な読み取り動作が必要とされる
。同様に、第13E図に示されたようなフィールドを書
き込む時には、2つの連続的な全ワード芽き込み動作が
必要とされる。Figure 13E shows the simplest example of these cases. In FIG. 13E, a pair of consecutive data words (data word N and data word N+) in memory 130 are shown.
A 32-bit field that corresponds exactly to 1) is specified. When reading a field such as that shown in Figure 13E, two consecutive read operations are required. Similarly, when writing a field such as that shown in FIG. 13E, two consecutive full word seeding operations are required.
第13F図ないし第13 H図は、指定のフィールドが
1つのデータワード境界と交差する場合を示している。Figures 13F-13H illustrate the case where a specified field intersects one data word boundary.
第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つの連続する読み取り/修正/書き込み動作を
行なうことを必要とする。In FIG. 13F, the specified field begins at a position within data word N and ends at the end of data word N+1. When reading such a data field, two successive read operations must be performed with a corresponding mask applied to the first read operation to remove bits that are not contained within 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 must be performed on data word N+1. FIG. 13G shows the case where the specified field starts at the least significant bit of data word N and ends somewhere in 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, it is necessary to perform one write operation on data word N and a read/modify/write operation on data word N+1. FIG. 13H shows that the data field starts within data word N, crosses a word boundary, and crosses data word N.
This shows a case where the number ends with +1. To read such a data field, it is necessary to perform two consecutive read operations with corresponding masking. Writing such a data field requires two consecutive read/modify/write operations on data word N and data word N+1.
第13I図は、本発明の好ましい実施例によるワード境
界に関連したフィールドの最も簡単な場合を示している
。第13I図において、指定のフィールドは、Nデータ
ワードNで開始し、2つの連続するデータワード境界に
交差し、データワードN+2内の成る場所で終了する。FIG. 13I shows the simplest case of fields associated with word boundaries according to a preferred embodiment of the invention. In FIG. 13I, a designated field begins at N data words N, crosses two consecutive data word boundaries, and ends somewhere within data words N+2.
このようなデータフィールドを読み取る時には、指定の
データフィールド内に存在しないデータワードN及びデ
ータワードN+2のビットを除去するために対応的なマ
スキングを行なって3つの連続するメモリ読み取り動作
を行なうことが必要である。このようなデータフィール
ドを書き込む時には、データワードNに対して読み取り
/変更/書き込み動作を行ない、データワードN+1へ
の書き込みを行ないそしてデータワード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 are not present in the specified data field. It is. Writing such a data field requires performing a read/modify/write operation on data word N, a write to data word N+1, and a read/modify/write operation based on data word N+2. It is.
第14図は、メモリインターフェイス250内のハード
ウェアと、1組の優先順位に基づいてメモリ130にア
クセスできるようにすると共に指定のフィールドサイズ
で中央処理ユニット200を経てメモリ130にアクセ
スできるようにするグラフィックプロセッサ120の別
の部分とを示している。第14図は、入力/出力レジス
タ260の一部分である複数のレジスタ902,904
.906/907及び905を示している。更に、第1
3図は、中央処理ユニットのアドレスレジスタ1200
を示している。これらレジスタの各々は、バス122へ
接続するためにメモリインターフェイス250に接続さ
れる。又、メモリインターフェイス250にはデータラ
ッチも接続されており、これは、中央処理ユニットの最
上位ピットデータラッチ1440と、中央処理ユニット
の最下位ピットデータラッチ1445とを含んでいる。FIG. 14 illustrates hardware within memory interface 250 that provides access to memory 130 based on a set of priorities and provides access to memory 130 via central processing unit 200 with a specified field size. Another portion of graphics processor 120 is shown. FIG. 14 shows a plurality of registers 902, 904 that are part of input/output registers 260.
.. 906/907 and 905 are shown. Furthermore, the first
Figure 3 shows the address register 1200 of the central processing unit.
It shows. Each of these registers is connected to memory interface 250 for connection to bus 122. Also connected to the memory interface 250 are data latches, including a central processing unit top pit data latch 1440 and a central processing unit bottom pit data latch 1445.
メモリインターフェイス250の動作の制御は、シーケ
ンサ1400によって行なわれる。シーケンサ1400
は、種々の入力制御及びデータ信号を受は取る。制御信
号は、入力1401に現われる表示リフレッシュ要求と
、ライン1402に現われるDRAMリフレッシュ要求
と、ライン1403に現われるホストアクセス要求と、
ライン1404に呪われるホスト読み取り/書き込み制
御と、ライン1405に現われる中央処理ユニットのア
クセス要求と、ライン1406に現われる中央処理二二
ノ1−の読み取り/書き込み制御とを含む。Control of the operation of memory interface 250 is performed by sequencer 1400. sequencer 1400
receives and takes various input control and data signals. The control signals include a display refresh request appearing on input 1401, a DRAM refresh request appearing on line 1402, and a host access request appearing on line 1403.
Includes host read/write control cursed on line 1404, central processing unit access request appearing on line 1405, and central processing unit read/write control appearing on line 1406.
シーケンサ1400は、多数のソースからデータ信号を
受は取る。先ず、中央処理ユニットのアドレスレジスタ
1200からのビットアドレス1201はゼロ検出器1
420に供給される。ビットアドレス1201のビット
は、ライン1.407を経てシーケンサ1400に供給
される。ゼロ検出器1420からのゼロ検出信号は、ラ
イン1408を経てシーケンサ1400に供給される。Sequencer 1400 receives data signals from multiple sources. First, the bit address 1201 from the address register 1200 of the central processing unit is zero detector 1.
420. The bit at bit address 1201 is provided to sequencer 1400 via line 1.407. A zero detection signal from zero detector 1420 is provided to sequencer 1400 via line 1408.
ビットアドレスレジスタ1201からのビットアドレス
は、加算器1418にも送られる。加算器1418は、
バス1417からフィールドサイズを受は取る。前記し
たように、フィールドサイズは状態レジスタ1100か
ら送られる。フィールドサイズ1105又はフィールド
サイズ1107のいずれかが、中央処理ユニット200
により実行される特定の命令によって選択される。この
選択により、5ビツトのフィールドサイズがバス141
7を経て加算器1418に送られる。加算器1418の
出力は、ラッチ1419内に記憶される6ビツト量であ
る。最下位の4ビツト(ビットOないし3と示された)
は、ゼロ検出器1421へ送られる。これら4つの最下
位ビットは、バス1411を経てシーケンサ1400に
送られる。The bit address from bit address register 1201 is also sent to adder 1418. Adder 1418 is
The field size is received from bus 1417. As mentioned above, the field size is sent from status register 1100. Either field size 1105 or field size 1107 is determined by central processing unit 200.
selected by the specific instruction executed by. This selection results in a field size of 5 bits for bus 141.
7 and is sent to adder 1418. The output of adder 1418 is a 6-bit quantity stored in latch 1419. 4 least significant bits (denoted as bits 0 to 3)
is sent to zero detector 1421. These four least significant bits are sent to sequencer 1400 via bus 1411.
ゼロ指示信号は、ライン1412を経てシーケンサ14
00に送られる。ラッチ1419の最上位2ビツト(ビ
ット5及び4と示された)は、各々。The zero indication signal is sent to the sequencer 14 via line 1412.
Sent to 00. The two most significant bits of latch 1419 (designated bits 5 and 4) are respectively.
ライン1409及び1410を経てシーケンサに送られ
る。シーケンサ1400は、出力1413゜1414.
1415及び1416を発生する。これら出力の制御構
成については、以下で説明する。It is sent to the sequencer via lines 1409 and 1410. The sequencer 1400 outputs 1413°, 1414.
1415 and 1416 are generated. The control configuration for these outputs will be explained below.
マルチプレクサ143oは、メモリバス122に送られ
る特定のデータを制御する。マルチプレクサ1430は
、バス1431を経て表示リフレッシュアドレスを受は
取るようにレジスタ904に接続される。同様に、マル
チプレクサ1430は、レジスタ906及び907から
バス1433を経て合成ホストアドレスを受は取る。ホ
ストデータを含むレジスタ905は、バス1434を経
てマルチプレクサ1430に両方向接続される。Multiplexer 143o controls specific data sent to memory bus 122. Multiplexer 1430 is connected to register 904 to receive and receive display refresh addresses 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.
中央処−1ユニットのアドレスレジスタ1200のワー
ドアドレス部分1202は、バス1435を経てマルチ
プレクサ1430に送られる。バス1436は、マルチ
プレクサ1430を、右マスク1437、左マスク14
38.入力/出力ラツテ1439に両方向接続し、そし
てバス205を経て中央処理ユニット200に接続する
。右マスク1437は、シーケンサ1400からライン
1413を経て制御される。同様に、左マスク1438
は、シーケンサ1400によりライン1414を経て制
御される。右マスク1437は、マルチプレクサ143
0からバス1436を経て入力/出力ラッチ1439に
送られるデータの最下位ビット部分をマスクするように
働く。同様に、左マスク1438は、このデータ転送の
最上位ビットをマスクするように働く。Word address portion 1202 of address register 1200 of central processing unit 1 is sent to multiplexer 1430 via bus 1435. Bus 1436 connects multiplexer 1430 to right mask 1437, left mask 14
38. It is bidirectionally connected to input/output latte 1439 and to central processing unit 200 via bus 205. Right mask 1437 is controlled via line 1413 from sequencer 1400. Similarly, left mask 1438
is controlled by sequencer 1400 via line 1414. The right mask 1437 is the multiplexer 143
0 to input/output latch 1439 via bus 1436. Similarly, left mask 1438 serves to mask the most significant bits of this data transfer.
中央処理ユニットは、中央処理ユニットの最上位ビット
データラッチ1440及び中央処理ユニットの最下位ビ
ットデータラッチ1445を備えており、これらは、バ
ス205を経て入力/出力ラッチ1439に両方向接続
される。シーケンサ1400からのライン1415は、
データ転送が最上位ビット1440から生じるか又は最
下位ビット1445から生じるかを決定する。中央処理
ユニット200は、更に、中央処理ユニットのデータラ
ッチ1440及び1445の2つの部分に両方向接続さ
れたバレルシフタ1450を備えている。バレルシフタ
1450は、中央処理ユニットの最上位ピットデータラ
ッチ144o及び中央処理ユニットの最下位ピットデー
タラッチ1445の組合せ体から受は取ったデータを中
央処理ユニット200によって指定されたようにシフト
する。バレルシフタ1450は、フィールド符号/ゼロ
拡張制御器1451によって制御される。The central processing unit includes a central processing unit most significant bit data latch 1440 and a central processing unit least significant bit data latch 1445, which are bidirectionally connected to input/output latch 1439 via bus 205. Line 1415 from sequencer 1400 is
Determine whether the data transfer occurs from the most significant bit 1440 or the least significant bit 1445. Central processing unit 200 further includes a barrel shifter 1450 bidirectionally connected to two portions of data latches 1440 and 1445 of the central processing unit. Barrel shifter 1450 shifts data received from the combination of central processing unit top pit data latch 144o and central processing unit bottom pit data latch 1445 as specified by central processing unit 200. Barrel shifter 1450 is controlled by field code/zero extension controller 1451.
第11図について述べたように、フィールド拡張Oビッ
ト1106又はフィールド拡張1ビツト1108は、フ
ィールドが拡張された符号であるか拡張されたゼロであ
るかを指定する。状態レジスタ1100のこれら2つの
ビットの1つが拡張された特定の命令によって選択され
る。この制御は、バレルシフタ1450に送られ、以下
で述べるように用いられる。バレルシフタ1450は、
バス1455を経て中央処理ユニット200の他の部分
に接続される。As discussed with respect to FIG. 11, the Field Extension O bit 1106 or Field Extension 1 bit 1108 specifies whether the field is an extended sign or an extended zero. One of these two bits of status register 1100 is selected by the extended specific instruction. This control is sent to barrel shifter 1450 and used as described below. The barrel shifter 1450 is
It is connected to other parts of central processing unit 200 via bus 1455.
メモリ制御器250の一般的な動作を、第14図につい
て以下に説明する。シーケンサ1400によって受信さ
れた特定の制御及びデータ信号に基づいて、シーケンサ
1400は、バス122を経てメモリ130へ供給する
ためにマルチプレクサ143oに送られる1つのソース
を選択する。The general operation of memory controller 250 is described below with respect to FIG. Based on the particular control and data signals received by sequencer 1400, sequencer 1400 selects one source that is sent to multiplexer 143o for feeding to memory 130 via bus 122.
従って、例えば、シーケンサ1400は、マルチプレク
サ1430が、レジスタ902に記憶された表示リフレ
ッシュアドレスを、ライン1401の表示リフレッシュ
要求に応答してメモリに接続できるようにする。同様に
、ライン1402上のDRAMリフレッシュ要求は、シ
ーケンサ1400がマルチプレクサ1430を制御して
、レジスタ904に記憶されたビデオRAMリフレッシ
ュアドレスをメモリ132に供給するようにする。Thus, for example, sequencer 1400 enables multiplexer 1430 to connect a display refresh address stored in register 902 to memory in response to a display refresh request on line 1401. Similarly, a DRAM refresh request on line 1402 causes sequencer 1400 to control multiplexer 1430 to provide the video RAM refresh address stored in register 904 to memory 132 .
ライン1403に現われるホストアクセス要求及びライ
ン1404に現われるホスト読み取り/書き込み制御信
号により、シーケンサ1400は、マルチプレクサ14
30を制御して、両レジスタ906及び907に記憶さ
れたホストアドレスをバス122を経てメモリ130に
供給できるようにすると共に1選択された動作に基づい
てメモリとレジスタ905との間でデータを交換できる
ようにする。更に、ライン1405に現われる中央処理
ユニットのアクセス要求と、ライン1406に現われる
中央処理ユニットの読み取り/書き込み制御信号とによ
り、シーケンサ1400は、中央処理ユニットのアドレ
スレジスタ1200のサブ部分1202に記憶された中
央処理ユニットのワードアドレスをマルチプレクサ14
30を経てメモリ130へ接続できるようにする6次い
で、入力1406に現われる中央処理ユニットの読み取
り/書き込み制御信号によって選択された読み取り又は
書き込み動作に基づいて、メモリ130と中央処理ユニ
ットとの間でバス1436を経てデータの交換が行なわ
れる。この場合、このデータは、シーケンサ1400か
ら制御ライン1413及び1414を各々経て送られた
制御信号に基づいて右マスク1437及び左マスク14
38によってマスクされる。このデータは、次いで、以
下で詳細に述べるように、中央処理ユニットの最下位ピ
ットデータラッチ1445及び中央処理ユニットの最上
位ピットデータラッチ1440からのデータと交換され
る。A host access request appearing on line 1403 and a host read/write control signal appearing on line 1404 cause sequencer 1400 to
30 to enable the host addresses stored in both registers 906 and 907 to be provided to memory 130 via bus 122 and to exchange data between the memory and register 905 based on the selected operation. It can be so. Additionally, the central processing unit access request appearing on line 1405 and the central processing unit read/write control signal appearing on line 1406 cause the sequencer 1400 to cause the central processing unit access request appearing on line 1405 to cause the sequencer 1400 to access the central The word address of the processing unit is sent to the multiplexer 14.
30 to memory 130 via 6. The bus is then connected between memory 130 and the central processing unit based on the read or write operation selected by the central processing unit read/write control signal appearing at input 1406. Data is exchanged via 1436. In this case, this data is transmitted to right mask 1437 and left mask 14 based on control signals sent from sequencer 1400 via control lines 1413 and 1414, respectively.
38. This data is then exchanged with data from the central processing unit bottom pit data latch 1445 and the central processing unit top pit data latch 1440, as described in more detail below.
第15図は1表示要求信号をライン1401に発生でき
るようにする水平及び垂直のリセット信号を発生する構
造体を示している。第15図に示された構造体は、ビデ
オディスプレイ170によるビデオ表示の形成を制御す
るビデオ表示制御器270の一部分である。ドツトレー
ト、即ち。FIG. 15 shows a structure for generating horizontal and vertical reset signals that allows the display 1 request signal to be generated on line 1401. The structure shown in FIG. 15 is part of a video display controller 270 that controls the formation of a video display by video display 170. Dot rate, ie.
ビデオディスプレイ170におけるピクセル表示レート
のビデオクロックが入力1501に受は取られる。この
ビデオクロックは、カウンタ1510のカウント入力に
送られる。比較器1520は、カウンタ1510のカウ
ントを受は取り、これを、水平ラインにおけるピクセル
又はピクセル等化物の全数に対応するレジスタ153o
に記憶されたカウントと比較する。これら2つのカウン
トが等しい場合には、比較器1520が水平リセット信
号に対応する出力をライン1502に発生する。A video clock at the pixel display rate on video display 170 is received at input 1501 . This video clock is sent to the count input of counter 1510. Comparator 1520 receives the count of counter 1510 and transfers it to register 153o corresponding to the total number of pixels or pixel equivalents in the horizontal line.
Compare with the count stored in . If these two counts are equal, comparator 1520 produces an output on line 1502 that corresponds to the horizontal reset signal.
この出力は、カウンタ1510のリセット入力に送られ
てこのカウンタをリセットし、次のラインについてのカ
ウントを開始させる。水平リセット信号1502は、デ
ィスプレイリフレッシュ要求1401をシーケンサ14
00に供給できるようにする信号である。This output is sent to the reset input of counter 1510 to reset the counter and start counting for the next line. A horizontal reset signal 1502 sends a display refresh request 1401 to the sequencer 14.
00.
比較器1520によって発生された水平リセッ)−15
02は、第2のカウンタ1540に供給される。カウン
タ1540は、水平リセット信号をカウントし、このカ
ウントを比較器1550に供給する。又、比較器155
0は、垂直フレーム当たりのライン又はライン等化物の
全数を記憶するレジスタ1506からのカウントも受は
取る。Horizontal reset generated by comparator 1520) -15
02 is provided to the second counter 1540. Counter 1540 counts the horizontal reset signal and provides this count to comparator 1550. Also, comparator 155
0 also takes a count from register 1506 which stores the total number of lines or line equalizers per vertical frame.
比較器1550は、これら2つのカウントが等しい時の
垂直リセットに対応する出力信号をライン1503に発
生する。この垂直リセット信号は、カウンタ1540の
リセット入力に送られ、このカウンタをリセットする。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 counter 1540 to reset the counter.
垂直リセット信号1503の発生により、レジスタ90
1に記憶された表示アドレスの開始点がレジスタ902
に記憶され、表示リフレッシュアドレスを新たなビデオ
フレームの開始点にリセットする。Due to the generation of the vertical reset signal 1503, the register 90
The starting point of the display address stored in 1 is the register 902.
to reset the display refresh address to the start of a new video frame.
第16図は、シーケンサ1400の入力1402に送ら
れるDRAMリフレッシュ要求信号を発生する構造体を
示している。中央処理ユニットのクロック信号は、入力
1601に受は取られる。FIG. 16 shows a structure that generates a DRAM refresh request signal that is sent to input 1402 of sequencer 1400. A central processing unit clock signal is received at input 1601.
この中央処理ユニットのクロック信号は、中央処理ユニ
ット200を作動してその作動速度を制御するクロック
信号である。この信号は、プログラム可能な除算器16
10に送られる。プログラム可能な除算器1610には
、ライン1602を経て制御信号も供給される。この制
御信号は、高速/低速デコーダ1620から受は取られ
る。高速/低速デコーダ1620は、制御ピットレジス
タ910の一部分であるリフレッシュレートビット91
1に作用する。前記したように、好ましい実施例によれ
ば、このビットは、ダイナミックランダムアクセスメモ
リが32個の中央処理二二ッ1−サイクルごとに1度リ
フレッシュされるか64個のサイクルごとに一度リフレ
ッシュされるかを指示するか、或いは、ダイナミックラ
ンダムアクセスメモリのリフレッシュ信号が発生されな
いかどうかを指示する。制御レジスタ910のリフレッ
シュレートビット911によれば、高速/低速デコーダ
1620は、プログラム可能な除算器161oに信号を
発生する。プログラム可能な除算器1610は、この制
御信号を受は取り、ダイナミックランダムアクセスメモ
リリフレッシュ要求信号を選択されたレートで出力16
o3に発生する。This central processing unit clock signal is a clock signal that operates the central processing unit 200 and controls its operating speed. This signal is passed to programmable divider 16
Sent to 10. Programmable divider 1610 is also provided with a control signal via line 1602. This control signal is received from the fast/slow decoder 1620. The fast/slow decoder 1620 detects refresh rate bits 91 which are part of the control pit register 910.
1. As mentioned above, in accordance with the preferred embodiment, this bit indicates that the dynamic random access memory is refreshed once every 32 central processing cycles or once every 64 cycles. or whether a dynamic random access memory refresh signal is not generated. According to refresh rate bit 911 of control register 910, fast/slow decoder 1620 generates a signal to programmable divider 161o. A programmable divider 1610 receives and receives this control signal and outputs a dynamic random access memory refresh request signal 1610 at a selected rate.
Occurs on o3.
これは、ダイナミックランダムアクセスメモリのリフレ
ッシュ要求を発するためにシーケンサ14oOの入力1
402に供給される。This is used at input 1 of sequencer 14oO to issue a dynamic random access memory refresh request.
402.
第17図は、シーケンサ1400の詳細なブロック図で
ある。シーケンサ1400は、1組のラッチ1700、
プログラム可能な入力アドレスの論理アレイ1710、
アドレスレジスタ1720、制御リードオンリメモリ1
730及びマイクロシーケンサ174oを備えている。FIG. 17 is a detailed block diagram of sequencer 1400. The sequencer 1400 includes a set of latches 1700,
a logical array of programmable input addresses 1710;
Address register 1720, control read-only memory 1
730 and a micro sequencer 174o.
種々の要求信号は、1組のラッチ1700内の個々のラ
ッチに送られる。これらラッチの信号は、プログラム可
能な入力アドレス論理アレイ1710に送られ、これは
、制御リードオンリメモリ1730へ供給するための入
力アドレスを発生する。この導出された入力アドレスは
、アドレスレジスタ1720に記憶される。この入力ア
ドレスがいったん発生されると、制御リードオンリメモ
リ1730は、シーケンサ1400の種々の出力信号を
発生するようにマイクロシーケンサ1740の動作を制
御する。Various request signals are sent to individual latches within the set of latches 1700. The signals of these latches are sent to a programmable input address logic array 1710, which generates input addresses for supply to control read-only memory 1730. This derived input address is stored in address register 1720. Once this input address is generated, control read-only memory 1730 controls the operation of microsequencer 1740 to generate the various output signals of sequencer 1400.
ラッチ1700は、シーケンサ1400に供給される種
々の要求及び制御信号を記憶するための1組のラッチを
備えている。ラッチ1700は、表示リフレッシュ信号
を受信する表示要求ラッチ1701を備えている。DR
AMリフレッシュ要求ランチ1702は、 ライン14
00(7)DRAMリフレッシュ要求信号を受は取る。Latch 1700 includes a set of latches for storing various request and control signals provided to sequencer 1400. Latch 1700 includes a display request latch 1701 that receives a display refresh signal. D.R.
AM refresh request launch 1702 is line 14
00(7) Receives a DRAM refresh request signal.
ホスト要求ラッチ1703は、ライン1403のホスト
要求信号を受は取る。ホスト読み取り/書き込み制御ラ
ッチ1704は、ライン1404のホスト読み取り/書
き込み制御信号を受は取る。中央処理ユニットの第3の
要求ラッチ1705は、以下で詳細に述へるように、マ
イクロシーケンサ174oにより、制御ライン1743
を経てセットされる。Host request latch 1703 receives and receives a host request signal on line 1403. Host read/write control latch 1704 receives and receives host read/write control signals on line 1404. The third request latch 1705 of the central processing unit is activated by the microsequencer 174o on the control line 1743, as described in detail below.
It is set after
同様に、中央処理ユニットの第2の要求ラッチ1706
は、マイクロシーケンサ1740によってセットされる
。中央処理ユニットの第1の要求ラッチ1707は、ラ
イン1405に現われる中央処理ユニットの要求信号を
受は取る。更に、中央処理ユニットの読み取り/書き込
み制御ラッチ1708は、ライン1406に呪われる中
央処理ユニットの読み取り/書き込み制御信号を受は取
る。Similarly, the second request latch 1706 of the central processing unit
is set by microsequencer 1740. The central processing unit first request latch 1707 receives and receives the central processing unit request signal appearing on line 1405. Additionally, a central processing unit read/write control latch 1708 receives and receives a central processing unit read/write control signal on line 1406.
プログラム可能な入力アドレス論理アレイ1710は、
ランチ1700の各々からの信号を受は取る。更に、プ
ログラム可能な入力アドレス論理アレイ1710は、マ
イクロシーケンサ1740から制御信号1742を受は
取る。この制御信号は、主として、マイクロシーケンサ
1740が現在のメモリアクセス要求の対応に拘ってい
るかどうかを指示する。プログラム可能な入力アドレス
論理アレイ1710に送られる信号に基づいて、制御リ
ードオンリメモリ1730内の入力点を指定するアドレ
スが発生される。このアドレスは、アドレスレジスタ1
720に送られ、ここに記憶される。Programmable input address logic array 1710 includes:
It receives and receives signals from each of the launches 1700. Additionally, programmable input address logic array 1710 receives and receives control signals 1742 from microsequencer 1740. This control signal primarily indicates whether microsequencer 1740 is concerned with servicing the current memory access request. Based on signals sent to programmable input address logic array 1710, addresses specifying input points within control read-only memory 1730 are generated. This address is address register 1
720 and stored here.
アドレスレジスタ1720.制御リードオンリメモリ1
730及びマイクロシーケンサ1740は、プログラム
可能な制御器を構成する。プログラム可能な入力点論理
アレイ1710により制御リードオンリメモリ1730
内で選択された入力点は、対応するメモリアクセス要求
に応じるためのサブルーチンの開始点である。制御リー
ドオンリメモリ1730に記憶されたこれらサブルーチ
ンの命令は、マイクロシーケンサ1740に順次に供給
され、該マイクロシーケンサは、ライン1413.14
14.1415及び1416に現われるこれらの命令に
基づいて種々の出力動作を実行する。この点について、
次の命令を呼び出せるようにするために通常の命令が実
行されるたびにマイクロシーケンサ1740からライン
1741を経てアドレスレジスタ172oへ増加信号が
供給される。上記の出力に加えて、マイクロシーケンサ
174oは、ライン1743を経てラッチ1700へ制
御出力を発生する。この制御出力は、ラッチ1700内
の種々のラッチのセット及びリセットに関連している。Address register 1720. Control read only memory 1
730 and microsequencer 1740 constitute a programmable controller. Read-only memory 1730 controlled by programmable input point logic array 1710
The input point selected within is the starting point of a subroutine for responding to the corresponding memory access request. The instructions for these subroutines stored in control read-only memory 1730 are sequentially supplied to a microsequencer 1740, which is connected to lines 1413.14.
14. Perform various output operations based on these instructions appearing at 1415 and 1416. in this regard,
An increment signal is provided from microsequencer 1740 via line 1741 to address register 172o each time a normal instruction is executed to enable the next instruction to be called. In addition to the outputs described above, microsequencer 174o generates a control output to latch 1700 via line 1743. This control output is related to setting and resetting various latches within latch 1700.
更に、マイクロシーケンサ174oは、ライン1404
を経てホスト読み取り/書き込み制御信号を受は取ると
共に、ライン1406を経て中央処理ユニットの読み取
り/書き込み制御信号を受は取る。制御リードオンリメ
モリ1730内の特定の制御サブルーチンの一般的な概
要を、第18図、第19図、第20図及び第21図につ
いて以下に詳細に説明する。Furthermore, the microsequencer 174o
It receives host read/write control signals via line 1406 and central processing unit read/write control signals via line 1406. A general overview of certain control subroutines within control read-only memory 1730 is described in detail below with respect to FIGS. 18, 19, 20, and 21.
第18図は、プログラム可能な入力アドレス論理アレイ
1710の動作を詳細に示すプログラム1800の図で
ある。特に、プログラム1800は、プログラム可能な
入力アドレス論理アレイ1710により入力点アドレス
を決定する際の動作の優先順位を示している。好ましい
実施例では。FIG. 18 is a diagram of a program 1800 detailing the operation of programmable input address logic array 1710. In particular, program 1800 illustrates the priority of operations in determining input point addresses by programmable input address logic array 1710. In a preferred embodiment.
第18図に示す機能を実行するためにプログラム可能な
入力アドレス論理アレイ1710に特殊なハードウェア
論理を使用しているが、この同じ機能を実行するための
プログラムを制御リードオンリメモリ1730内に設け
ることもできる。Special hardware logic is used in programmable input address logic array 1710 to perform the functions shown in FIG. 18, but a program is provided in control read-only memory 1730 to perform the same functions. You can also do that.
プログラム18は、メモリアクセス要求が優先順に処理
されるような連続的なループを構成する。マイクロシー
ケンサ1740がその手前のすイクル中にアイドリング
状態でない場合には、プログラム1800は、受は取っ
た要求が表示リフレッシュ要求であるかどうかを判断す
る(判断ブロック1801)。このような場合には、表
示リフレッシュ要求が処理される(処理ブロック180
2)。これは、ディスプレイをリフレシュするためのサ
ブルーチンを含む制御リードオンリメモリ1730内の
開始アドレスを発生することにより達成される。前記し
たように、この表示リフレッシュには、次に表示すべき
データをビデオRAM132から呼び出し、レジスタ9
03に記憶された表示アドレス増分によりレジスタ90
2に記憶された表示リフレッシュアドレスを更新するこ
とを含む。新たなフレームが開始した場合には。Program 18 constitutes a continuous loop in which memory access requests are processed in priority order. If microsequencer 1740 was not idle during the previous cycle, program 1800 determines whether the received request is a display refresh request (decision block 1801). In such a case, a display refresh request is processed (processing block 180
2). This is accomplished by generating a starting address in control read-only memory 1730 that contains a subroutine to refresh the display. As mentioned above, for this display refresh, the data to be displayed next is called from the video RAM 132, and the data to be displayed next is read from the register 9.
The display address increment stored in register 90
This includes updating the display refresh address stored in 2. If a new frame starts.
レジスタ901に記憶された表示アドレスの開始点をレ
ジスタ902にロードして1表示リフレッシュアドレス
をリセットすることを含む。このプロセスは一般的なも
ので良く知られているから。It includes loading the start point of the display address stored in register 901 into register 902 and resetting the 1 display refresh address. This process is common and well known.
ここではこれ以上説明しない。I will not explain it further here.
ベンディングになっている要求が表示リフレッシュ要求
でない場合には、プログラム1800は、ベンディング
になっている要求がDRAMリフレッシュ要求であるか
どうかを判断するテストを行なう(判断ブロック180
3)。ベンディングになっている要求がこのようなりR
AMリフレッシュ要求である場合には、このDRAMリ
フレッシュ要求が処理される(処理ブロック1804)
。If the bending request is not a display refresh request, program 1800 performs a test to determine whether the bending request is a DRAM refresh request (decision block 180).
3). The request that is bending looks like this
If it is an AM refresh request, the DRAM refresh request is processed (processing block 1804).
.
このD RA Mリフレッシュ要求は1表示リフレッシ
ュ要求について上記したように処理される。プロゲラ1
1可能な入力アドレス論理アレイ1710は、DRAM
リフレッシュ要求を実行するようにマイクロシーケンサ
1740を制御するプログラムを含んだ制御リードオン
リメモリ1730内のサブルーチンの開始アドレスを発
生する。このプロセスは、一般的なものであり、これ以
上は説明しない。このリフレッシュ要求が処理された後
に。This DRAM refresh request is processed as described above for the 1 display refresh request. progera 1
1 possible input address logic array 1710 is a DRAM
Generates the starting address of a subroutine in control read-only memory 1730 that contains the program that controls microsequencer 1740 to perform refresh requests. This process is generic and will not be described further. After this refresh request is processed.
プログラム1800は、処理ブロック18o1において
表示リフレッシュ要求が最高の優先順位の動作であるか
どうか判断するテストに復帰する。The program 1800 returns to testing to determine if the display refresh request is the highest priority operation at processing block 18o1.
ベンディングになっている要求がDRAMリフレッシュ
要求でない場合には、プログラム1800は、そのベン
ディングの要求がホストメモリアクセス要求であるかど
うか判断するようにチェックを行なう(判断ブロック1
805)。このベンディングの要求がホストメモリアク
セス要求である場合には、この要求が処理される(処理
ブロック1806)。このホストメモリアクセス要求は
、制御リードオンリメモリ1730内のサブルーチンの
入力により上記したように処理される。If the bending request is not a DRAM refresh request, program 1800 checks to determine whether the bending request is a host memory access request (decision block 1).
805). If the bending request is a host memory access request, the request is processed (processing block 1806). This host memory access request is processed as described above by inputting a subroutine in control read-only memory 1730.
このホストメモリアクセス要求が処理されると、プログ
ラム1800は、判断ブロック1801において表示リ
フレッシュが最も優先順位の高いアクセスであるかどう
か判断するテストに復帰する。Once this host memory access request has been processed, the program 1800 returns to testing at decision block 1801 to determine whether a display refresh is the highest priority access.
プログラム1800は、ベンディングになっている要求
が中央処理ユニットの第3のアクセス要求であるかどう
か判断するテストを行なう(判断ブロック1807)。Program 1800 performs a test to determine whether the request being bent is the central processing unit's third access request (decision block 1807).
第13I図に示すように、中央処理ユニット200から
のフィールドアクセス要求は、3つの連続するメモリワ
ードアクセスの実行を要求することができる。中央処理
二ニットの第2のアクセス要求が処理されそして中央処
理ユニットの第3のアクセス要求が必要とされる場合に
は、マイクロシーケンサ1740がライン1743に制
御信号を発生し、中央処理ユニットの第3要求ラツチ1
705をセットする。このような場合には、中央処理ユ
ニットの第3アクセス要求が処理される(処理ブロック
1808)。このプロセスは、第21図に示されたプロ
グラム2100に関連して以下で詳細に説明する。As shown in FIG. 13I, a field access request from central processing unit 200 may require the performance of three consecutive memory word accesses. When the second access request of the central processing unit is processed and a third access request of the central processing unit is required, the microsequencer 1740 generates a control signal on line 1743 to 3 request latch 1
Set 705. In such case, the central processing unit's third access request is processed (processing block 1808). This process is described in detail below in connection with program 2100 shown in FIG.
ベンディングになっている要求が中央処理ユニットの第
3のアクセス要求でない場合には、プログラム1800
は、これが中央処理ユニットの第2のアクセス要求であ
るかどうか判断するようにテストする(判断ブロック1
809)。再び。If the request being bent is not the third access request of the central processing unit, the program 1800
tests to determine if this is the central processing unit's second access request (decision block 1
809). again.
第13図を参照すれば、第13E図ないし第13工図か
ら明らかなように、中央処理ユニット200によるフィ
ールドアクセスが2つ(又はそれ以上)の連続するメモ
リワードアクセスを必要とするような多数の場合がある
。中央処理ユニットの第1のアクセス要求が処理されそ
して中央処理ユニットの第2のアクセス要求が必要とさ
れることが決定された場合には、マイクロシーケンサ1
740がライン1743に制御信号を発生し、中央処理
ユニットの第2の要求ラッチ1706をセットする。こ
の場合には、中央処理ユニットのこの第2のアクセス要
求が処理される(処理ブロック1810)、このプロセ
スは、第20図に示したプログラム2000について以
下で詳細に説明する。前記した場合と同様に、このアク
セス要求が処理されると、プログラム1800は判断ブ
ロック1801に復帰し、表示リフレッシュ要求が発せ
られたかどうか判断される。Referring to FIG. 13, it is apparent from FIGS. 13E-13 that a large number of field accesses by central processing unit 200 require two (or more) consecutive memory word accesses. There are cases where When the first access request of the central processing unit has been processed and it is determined that the second access request of the central processing unit is required, the microsequencer 1
740 generates a control signal on line 1743 to set the second request latch 1706 of the central processing unit. In this case, this second access request of the central processing unit is processed (processing block 1810), a process described in detail below with respect to program 2000 shown in FIG. As before, once this access request has been processed, program 1800 returns to decision block 1801 to determine whether a display refresh request has been issued.
他のメモリアクセス要求がベンディングになっていない
場合に、中央処理ユニットのアクセス要求に第1の優先
順位を与えるために、プログラム1800は、中央処理
ユニットの第1のアクセス要求以外にベンディングのア
クセス要求があるかどうかを決定するテストを行なう(
判断ブロック1811)。他のアクセス要求がベンディ
ングになっている場合には、プログラムの流れが判断ブ
ロック1801に復帰し、それより高い優先順位のメモ
リアクセス要求があるかどうかテストする。然し乍ら、
ベンディングになっているアクセス要求が他にない場合
には、プログラム1800はこれが中央処理ユニットの
第1のアクセス要求であるかどうかを判断するようにテ
ストする(判断ブロックL 812)。中央処理ユニッ
ト200がメモリ130にアクセスしようとする時には
、該ユニットがライン1405を経てシーケンサ140
0にこの要求を発する。このような要求の発信が中央処
理ユニットの第1のアクセス要求である。このような中
央処理ユニットのアクセス要求が発せられない場合には
、プログラム1800は。In order to give the central processing unit's access request first priority when no other memory access request is bending, the program 1800 assigns a bending access request to a bending access request other than the central processing unit's first access request. Perform a test to determine whether there is (
decision block 1811). If another access request is bending, program flow returns to decision block 1801 to test whether there is a higher priority memory access request. However,
If no other access request is bending, program 1800 tests to determine if this is the central processing unit's first access request (decision block L 812). When central processing unit 200 wishes to access memory 130, it communicates with sequencer 140 via line 1405.
Issue this request to 0. The origination of such a request is the central processing unit's first access request. If no such central processing unit access request is issued, program 1800.
それより優先順位の高い他のアクセス要求がベンディン
グになっているかどうかのテストに復帰する(判断ブロ
ック1811)。このシーケンスは、このループに保持
されるが、それより優先順位の高い要求が発せられた場
合には、判断ブロック1811においてプログラムの流
れが判断ブロック18o1に向けられ、その要求がテス
トされて処理されるか、或いは、中央処理ユニットの第
1のアクセス要求が発せられた場合には、これが処理さ
れる(処理ブロック1813)。The process returns to testing whether other higher priority access requests are bending (decision block 1811). This sequence is maintained in this loop, but if a higher priority request is issued, decision block 1811 directs program flow to decision block 18o1 to test and process the request. Alternatively, if a central processing unit first access request is issued, it is processed (processing block 1813).
この優先順位技術は、2つ以上のメモリアクセス要求が
同時にペンティングになった場合にメモリアクセスの順
序を制御するように働く。2つ以上のメモリアクセス要
求が同時にベンディングになった場合には、それらが優
先順に実行される。This priority technique works 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 become bending at the same time, they are executed in priority order.
この場合、表示リフレッシュ要求が最も優先順位が高く
、次いで、DRAMリフレッシュ要求、ホストアクセス
要求、中央処理ユニットの第3のアクセス要求、中央処
理ユニットの第2のアクセス要求、そして最後に、中央
処理ユニットの第1のアクセス要求と続く。中央処理ユ
ニットの次々のアクセス要求に対して次第に高い別々の
優先順位を与えることにより、2つの結果が得られる。In this case, the display refresh request has the highest priority, followed by the DRAM refresh request, the host access request, the central processing unit third access request, the central processing unit second access request, and finally the central processing unit This is followed by the first access request. By giving progressively higher and different priorities to successive access requests of the central processing unit, two results are obtained.
先ず第1に、中央処理ユニットのマルチワードアクセス
要求が部分的に完了され、次いで、それより優先順位の
高い要求によって割り込まれる。更に、このような中央
処理ユニットのマルチワードアクセス要求では次々のワ
ードアクセスに次第に高い優先順位が与えられるので、
中央処理ユニットは、別の個別の中央処理ユニットアク
セスを処理できるまでこのようなマルチワードアクセス
の完了を待機しなければならない。これは、中央処理ユ
ニットの2つのアクセス要求が干渉するのを防止する。First, the central processing unit's multiword access request is partially completed and then interrupted by a higher priority request. Furthermore, in such a multi-word access request of a central processing unit, successive word accesses are given progressively higher priority.
The central processing unit must wait for such multiword access to complete until it can process another individual central processing unit access. This prevents the two access requests of the central processing unit from interfering.
判断ブロック1811及び1812を含むループは、他
のアクセス要求がベンディングでない場合には中央処理
ユニットの第1のアクセス要求が最も高い優先順位を有
するようにするが、他のメモリアクセス要求がベンディ
ングになっている場合には最も低い優先順位を有するよ
うにする。The loop including decision blocks 1811 and 1812 ensures that the central processing unit's first access request has the highest priority if the other access request is not bending, but if the other memory access request is bending. If so, it has the lowest priority.
前記したように、第18図に示したプロセスは、プロセ
ッサによって実行されるプログラムによるのではなくて
、プログラム可能な入力アドレス論理アレイ1710を
用いて実行されるのが好ましい。プログラム可能な入力
アドレス論理アレイ171oは、表示要求ラッチ170
1がセントされた時に表示リフレッシュ要求を処理する
ために、制御リードオンリメモリ1730内のプログラ
ムシーケンスの開始アドレスを発生する。表示リフレッ
シュ要求がない時にDRAMリフレッシュ要求ラッチ1
702がセットされた場合には。As mentioned above, the process illustrated in FIG. 18 is preferably performed using programmable input address logic array 1710 rather than by a program executed by a processor. Programmable input address logic array 171o provides display request latch 170
Generates the starting address of a program sequence in control read-only memory 1730 to process a display refresh request when a 1 is entered. DRAM refresh request latch 1 when there is no display refresh request
If 702 is set.
プログラム可能な入力アドレス論理アレイ1710は、
DRAMリフレッシュ要求に応じるために制御リードオ
ンリメモリ173o内の開始アドレスを発生する。同様
に、プログラム可能な入力アドレス論理アレイ1710
は、要求ラッチ1700のいずれかがセットされた時に
第18図について前記した優先順位に基づいて動作を実
行するために、制御リードオンリメモリ1730内の開
始アドレスを発生する。Programmable input address logic array 1710 includes:
Generates a starting address in control read-only memory 173o to respond to a DRAM refresh request. Similarly, programmable input address logic array 1710
generates a starting address in control read-only memory 1730 to perform the operations based on the priority order described above with respect to FIG. 18 when any of the request latches 1700 are set.
第19図は、中央処理ユニットの第1アクセス要求を処
理するプログラム1900を示している。このプログラ
ム1900は、第18図に示した処理ブロック1813
に対応するもので、制御リードオンリメモリ1730に
記憶されたサブルーチンを処理する1組のメモリアクセ
スの1つである。このプログラムに入ると(スタートブ
ロック1901)、プログラムは、最初に、アクセス要
求が読み取りアクセスであるかどうか判断するテストを
行なう(判断ブロック1902)。この判断は、ライン
1406を経てシーケンサ1400に送られる中央処理
ユニットの読み取り/書き込み信号の状態に基づいて行
なわれる。メモリアクセス要求がメモリの読み取りを要
求する場合には、メモリが読み取られる(処理ブロック
1903)。これは、中央処理ユニットのアドレスレジ
スタ1202に記憶されたアドレスをメモリ読み取り信
号と共にマルチプレクサ1430を経てメモリ130に
送ることによって実行される。このメモリ位置に記憶さ
れたデータワードは1次いで5人力/出力ラッチ143
9にロードされる。右マスク1437及び左マスク14
38は、このデータ転送に対して何の影響も与えない。FIG. 19 shows a program 1900 for processing the first access request of the central processing unit. This program 1900 includes processing block 1813 shown in FIG.
is one of a set of memory accesses for processing subroutines stored in control read-only memory 1730. Upon entering the program (start block 1901), the program first tests to determine whether the access request is a read access (decision block 1902). This determination is made based on the state of the central processing unit read/write signal sent to sequencer 1400 via line 1406. If the memory access request requests a read of memory, then the memory is read (processing block 1903). This is accomplished by sending the address stored in the central processing unit's address register 1202 along with the memory read signal to the memory 130 via multiplexer 1430. The data word stored in this memory location is 1 then 5 in the input/output latch 143.
9 is loaded. Right mask 1437 and left mask 14
38 has no effect on this data transfer.
このデータは1次いで、中央処理ユニットの最下位ビッ
トデータラッチ1445にロードされる(処理ブロック
1904)。所望のデータフィールド内に存在しないメ
モリのデータは、以下で述べるように。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 in the desired data field, as described below.
バレルシフタ1450において除去される。次いで、プ
ログラムは1判断ブロック1914へと進み、中央処理
ユニットの第2のアクセス要求が必要であるかどうかテ
ストされる。It is removed at barrel shifter 1450. The program then proceeds to decision block 1914, which tests whether a second central processing unit access request is needed.
中央処理ユニットのアクセス要求が書き込み要求であり
、読み取り要求ではない場合には、プログラム1900
は、ビットアドレスがゼロであるかどうか判断するテス
トを行なう(判断ブロックl 905)。このテストは
、ゼロ検出回路1420によって簡単に行なわれる。こ
の回路は、ビットアドレスを受は取り、ビットアドレス
がゼロであるかどうかを指示する信号をライン1408
に発生する。ビットアドレスがゼロの場合には、所望の
データフィールドがメモリワードの境界で開始する。こ
れは、第13A図、第13C図、第13E図及び第13
G図に示された場合に対応する。ビットアドレスがゼロ
の場合には、プログラム190oは、ビットアドレス及
びフィールドサイズの和が16に等しいか又はそれより
大きいかどうかを判断するテストを行なう(判断ブロッ
ク1906)。加算器1418により形成されたビット
アドレス及びフィールドサイズの和は、ライン1409
及び1410とバス1411とを経てシーケンサ140
0に送られる。更に、ゼロ検出回路1421は、この和
の最下位4ビツト(ビット0−3)がゼロであるかどう
かの指示を与える。If the central processing unit access request is a write request and not a read request, the program 1900
performs a test to determine whether the bit address is zero (decision block l 905). This test is simply performed by zero detection circuit 1420. This circuit receives the bit address and sends a signal on line 1408 indicating whether the bit address is zero.
occurs in If the bit address is zero, the desired data field begins on a memory word boundary. This is shown in Figures 13A, 13C, 13E and 13.
This corresponds to the case shown in Figure G. If the bit address is zero, program 190o tests to determine whether the sum of the bit address and field size is equal to or greater than 16 (decision block 1906). The sum of the bit address and field size formed by adder 1418 is added to line 1409.
and the sequencer 140 via 1410 and bus 1411.
Sent to 0. Additionally, zero detection circuit 1421 provides an indication of whether the four least significant bits (bits 0-3) of this sum are zero.
この和は、ライン1409のビット5が「1」であるか
又はライン1410のビット4が「1」であり且つビッ
ト0−3が非ゼロであることがライン1412によって
指示された場合に、16より大きくなる。もしこうであ
って、第13A図、第13E図及び第13G図の場合に
対応すれば、中央処理ユニットの第1のアクセス要求は
、簡単な書き込み動作となる。入力/出力ラッチは、中
央処理ユニッ1−の最下位ピットデータラッチ1445
からロードされる(処理ブロック1907)。This sum is 16 if line 1412 indicates that bit 5 of line 1409 is a ``1'' or bit 4 of line 1410 is a ``1'' and bits 0-3 are non-zero. Become bigger. If this is the case and corresponds to the cases of FIGS. 13A, 13E, and 13G, the first access request of the central processing unit will be a simple write operation. The input/output latch is the lowest pit data latch 1445 of the central processing unit 1-
(processing block 1907).
次いで、プログラムは、入力/出力ラッチのデータを、
レジスタ1202に記憶された中央処理ユニットのワー
ドアドレスで指示されたメモリに書き込む(処理ブロッ
ク1913)。前記したように、プログラム1900は
、中央処理ユニットの第2のアクセスが要求されるかど
うか判断するテストを行なう(判断ブロック1914)
。The program then sets the data in the input/output latches to
Write to the memory indicated by the central processing unit word address stored in register 1202 (processing block 1913). As described above, program 1900 performs a test to determine whether a second central processing unit access is required (decision block 1914).
.
ビットアドレスがゼロでない場合には、プログラム19
00は、ピッ1−アドレスに対応する右マスク1427
をセットする。ビットアドレスは、バス1407を経て
シーケンサ1400に送られる。ビットアドレスが非ゼ
ロであるか、或いは、ビットアドレスがゼロであって且
つビットアドレスとフィールドサイズとの和が16又は
32のいずれかである場合には、プログラム1900は
、ビットアドレスとフィールドサイズとの和が16より
大きいかどうか判断するテストを行なう(判断ブロック
1909)。この和が16より小さい場合には、ビット
アドレスがゼロであるか非ゼロであるかに拘りなく、こ
の和に基づいて左マスクがセットされる(処理ブロック
1910)、もしそうでなければ、フィールドがメモリ
ワードの境界まで又はこれを越えて延びるために、左マ
スクは不要となる。いずれにせよ、入力/出力ラッチ1
439は、中央処理ユニットの最下位ピットデータラッ
チ1445からロードされる(処理ブロック1911)
。レジスタ1202に記憶された中央処理ユニットのワ
ードアドレスによって指示されたメモリワーIくが読み
取られ、これが右マスク14 :37及び左マスク14
38と共に使用されて、入力/出力ラッチ1439内の
データを変更する(処理ブロック1912)。このプロ
セスは。If the bit address is not zero, program 19
00 is the right mask 1427 corresponding to the pin 1 address
Set. The bit address is sent to sequencer 1400 via bus 1407. If the bit address is non-zero, or if the bit address is zero and the sum of the bit address and field size is either 16 or 32, program 1900 adds the bit address and field size. A test is performed to determine whether the sum of is greater than 16 (decision block 1909). If this sum is less than 16, then the left mask is set based on this sum (processing block 1910), regardless of whether the bit address is zero or non-zero, otherwise the field Since the left mask extends to or beyond the memory word boundary, the left mask is not needed. In any case, input/output latch 1
439 is loaded from the lowest pit data latch 1445 of the central processing unit (processing block 1911).
. The memory word pointed to by the word address of the central processing unit stored in register 1202 is read and this is used as right mask 14:37 and left mask 14.
38 to modify the data in input/output latch 1439 (processing block 1912). This process is.
選択されたデータフィールド内に存在しないメモリワー
ドの部分が変えられないようにし、一方、選択されたデ
ータフィールド内のメモリワードの部分が中央処理ユニ
ットのデータラッチからそれまでにロードされたデータ
と取り替えられるようにする。このようにして変更され
たデータが同じメモリ位置に害き込まれる(処理ブロッ
ク1913)。The portion of the memory word that is not present within the selected data field is not changed, while the portion of the memory word that is within the selected data field is replaced with the data previously loaded from the data latches of the central processing unit. be able to do so. The data thus modified is corrupted to the same memory location (processing block 1913).
プログラム1900は、中央処理ユニットの第2のアク
セスが必要とされるかどうかをテストすることによって
終了する。これは、ビットアドレスとフィールドサイズ
との和が16より大きいかどうかをチェックすることに
よって決定される(判断ブロック1914)。この和が
16より大きい場合には、第2のアクセスが必要とされ
る。The program 1900 ends by testing whether a second access of the central processing unit is needed. This is determined by checking whether the bit address plus field size is greater than 16 (decision block 1914). If this sum is greater than 16, a second access is required.
これは、中央処理ユニットの第2アクセス要求ラツチ1
706をセットすることによって指示される(処理ブロ
ック1915)。これは、マイクロシーケンサ1740
からライン1743を経て要求ラッチ1700へ信号さ
れる。いずれにせよ、中央処理ユニットの第1要求のラ
ッチがリセットされ(処理ブロック1916)、要求が
処理されたことを指示する。次いで、プログラム190
0が終了となる(終了ブロック1917)、前記したよ
うに、プログラム1900は、第18図に示す処理ブロ
ック1813と同等である。This is the second access request latch 1 of the central processing unit.
706 (processing block 1915). This is a micro sequencer 1740
to request latch 1700 via line 1743. In any event, the central processing unit's first request latch is reset (processing block 1916), indicating that the request has been processed. Then program 190
0 is the end (end block 1917). As mentioned above, the program 1900 is equivalent to the processing block 1813 shown in FIG.
第20図は、中央処理ユニット・の第2のアクセス要求
を処理するプログラム2000を示している。このプロ
グラム2000は、第18図に示した処理ブロック18
10に対応し、これは、制御リードオンリメモリ173
oに記憶されたサブルーチンを処理する1組のメモリア
クセスの1つである。このプログラムの開始は、第19
図に示したプログラム1900と同様である。レジスタ
1202に記憶された中央処理ユニットのワードアドレ
スは、中央処理ユニットの第2アクセスにおける正しい
メモリデータワードを参照するために増加しなければな
らないことに注意されたい。FIG. 20 shows a program 2000 for processing the second access request of the central processing unit. This program 2000 includes processing block 18 shown in FIG.
10, which corresponds to control read-only memory 173
This is one of a set of memory accesses that process the subroutine stored in o. The program started on the 19th
This is similar to the program 1900 shown in the figure. Note that the central processing unit word address stored in register 1202 must be incremented to refer to the correct memory data word on the central processing unit's second access.
中央処理ユニットのアドレスレジスタ1200に記憶さ
れたアドレスは、ビットアドレス1201を含んでいる
ので1次のメモリワードを参照するためには、アドレス
レジスタ1200に数字16を追加しなければならない
。Since the address stored in address register 1200 of the central processing unit includes bit address 1201, the number 16 must be added to address register 1200 to refer to the primary memory word.
このプログラムに入る時に(スタートブロック2001
)、最初に、アクセス要求が読み取りアクセスであるか
どうか判断するテストが行なわれる(判断ブロック20
02)。この判断は、ライン1406を経てシーケンサ
1400に供給される中央処理ユニットの読み取り/書
き込み信号の状態に基づいて行なわれる。メモリアクセ
ス要求がメモリの読み取りを必要とする場合には、処理
ブロック1903について上記したのと同様に。When entering this program (start block 2001
), a test is first performed to determine whether the access request is a read access (decision block 20).
02). This determination 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 reading memory, as described above for processing block 1903.
メモリが読み取られる(処理ブロック2003)。Memory is read (processing block 2003).
このようにしてメモリ130から呼び出されたデータは
、中央処理ユニットの最上位ピットデータラッチ144
0にロードされる(処理ブロック2004)。所望のデ
ータフィールド内に存在しないメモリのデータは、以下
で詳細に述べるように、バレルシフタ1450において
除去される。次いで、プログラムは、判断ブロック20
11へと進み、中央処理ユニットの第3のアクセス要求
が必要であるかどうかのテストが行なわれる。The data retrieved from memory 130 in this manner is stored in the most significant pit data latch 144 of the central processing unit.
0 (processing block 2004). Data in memory that is not within the desired data field is removed at barrel shifter 1450, as described in detail below. The program then proceeds to decision block 20.
11, a test is made as to whether a third access request of the central processing unit is necessary.
中央処理ユニットの第2のアクセス要求が書き込み要求
であって読み取り要求ではない場合には、プログラム2
000は、ビットアドレスとフィールドサイズとの和が
32以上であるかどうかを判断するテストを行なう(判
断ブロック2005)。ライン14o9の和のビット5
が「1」である場合には、和が32以上である。この和
が32以上である場合には、書き込み動作が第2ワード
の境界を越えて延びる。このような場合には、中央処理
ユニットの第2のアクセスが簡単な書き込み動作である
。従って、入力/出力ラッチは、中央処理ユニットの最
上位ビットデータラッチ1440からロードされ(処理
ブロック2006)、入力/出力ラッチのデータがメモ
リに書き込まれる(処理ブロック2010)。読み取り
動作の場合と同様に、プログラムは、次いで、判断ブロ
ック2011へ進み、中央処理ユニットの第3のアクセ
ス要求が必要であるかどうかのテストが行なわれる。If the second access request of the central processing unit is a write request and not a read request, program 2
000 performs a test to determine whether the sum of the bit address and field size is greater than or equal to 32 (decision block 2005). Bit 5 of the sum of line 14o9
is "1", the sum is 32 or more. 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 latch is loaded from the most significant bit data latch 1440 of the central processing unit (processing block 2006), and the data in the input/output latch is written to memory (processing block 2010). As with the read operation, the program then proceeds to decision block 2011 where a test is made as to whether a third central processing unit access request is required.
ビットアドレスとフィールドサイズとの和が32より小
さい場合には、左マスクが必要とされる。この左マスク
は、ビットアドレスとフィールドサイズとの和に基づい
てセットされる(処理ブロック2007)。入力/出力
ラッチには、中央処理ユニットの最上位ピットデータラ
ッチ1440からデータがロードされる(処理ブロック
2008)6中央処理ユニツトのワードアドレスにより
指示されたメモリワードは、メモリ130から呼び出さ
れ、左マスク1438によってマスクされながら入力/
出力ラッチにロードされる(処理ブロック2009)。If the bit address plus field size is less than 32, a left mask is required. This left mask is set based on the bit address plus field size (processing block 2007). The input/output latches are loaded with data from the central processing unit's top pit data latch 1440 (processing block 2008).6 The memory word pointed to by the central processing unit's word address is recalled from memory 130 and left input while being masked by mask 1438/
The output latch is loaded (processing block 2009).
このプロセスは、第19図に示された処理ブロック19
12に関連して上記したものと同じである。中央処理ユ
ニットの第2のアクセスは当然メモリワードの最下位ビ
ットを含むことになるから、右マスクは不要であること
に注意されたい(第13E図、第13F図、第13G図
、第13I(図及び第13I図参照)、これで、入力/
出力ラッチは、メモリ130から呼び出して、選択され
たフィールド内のビットに対するフィールド書き込み動
作によって必要とされるように変更されたデータを含む
ことになる。This process is shown in processing block 19 in FIG.
The same as described above in connection with No. 12. Note that the right mask is not required since the central processing unit's second access will naturally involve the least significant bit of the memory word (Figures 13E, 13F, 13G, 13I). (see Figure and Figure 13I), now you can input /
The output latch will contain the data retrieved from memory 130 and modified as required by the field write operation for the bits within the selected field.
プログラム2000は、中央処理ユニットの第3のアク
セスが必要とされるかどうかをテストすることによって
終了となる。これは、ビットアドレスとフィールドサイ
ズとの和が32より大きいかどうかをチェックすること
により決定される(判断ブロック2011)。この和が
32より大きい場合には、第3のアクセスが必要とされ
る。The program 2000 concludes by testing whether a third access of the central processing unit is required. This is determined by checking whether the bit address plus field size is greater than 32 (decision block 2011). If this sum is greater than 32, a third access is required.
これは、中央処理ユニットの第3アクセス要求ラツチ1
705をセットすることによって信号される(処理ブロ
ック2012)。これは、マイクロシーケンサ1740
からライン1743を経て要求ラッチ1700へ信号さ
れる。いずれにせよ、中央処理ユニットの第1要求ラツ
チがリセットされ(処理ブロック2013)、要求が処
理されたことを指示する。これで、プログラム2000
が終了となる(終了ブロック2014)。前記したよう
に、プログラム200oは、第18図に示す処理ブロッ
ク1810と同等である。This is the third access request latch 1 of the central processing unit.
705 (processing block 2012). This is a micro sequencer 1740
to request latch 1700 via line 1743. In any event, the first request latch of the central processing unit is reset (processing block 2013), indicating that the request has been processed. Now program 2000
is the end (end block 2014). As mentioned above, program 200o is equivalent to processing block 1810 shown in FIG.
第21図は、中央処理ユニットの第3のアクセス要求を
処理するプログラム210oを示している。このプログ
ラム2100は、第22図のワード整列図に関連して最
も良く理解できよう。最初に、中央処理ユニットのアド
レスレジスタ1200は、第2のアクセス後の次のメモ
リワードを参照するために16だけ増加しなければなら
ない。FIG. 21 shows a program 210o that processes the third access request of the central processing unit. This program 2100 is best understood in conjunction with the word alignment diagram of FIG. Initially, the central processing unit's address register 1200 must be incremented by 16 to reference the next memory word after the second access.
この点について、プロセスは、上記した中央処理ユニッ
トの第2アクセス要求の処理に類似している。第21図
に示したプログラム2100は、第18図に示した処理
ブロック18o8のプロセスに対応している。In this respect, the process is similar to the central processing unit's processing of the second access request described above. The program 2100 shown in FIG. 21 corresponds to the process of processing block 18o8 shown in FIG.
プログラム210oが始まると(スタートブロック21
01)、アクセス要求が読み取りアクセス要求であるか
どうか判断するテストが行なねれる(判断ブロック21
02)。その要求が読み取り要求である場合には、ビッ
トアドレスによって右マスク1437がセットされる(
処理ブロック2LO3)。このプロセスは、第22図を
参照して最も良く理解できよう。フィールド2200は
、少なくともその一部分としてメモリワード2201.
2202及び2203を含んでいる。これは、第13I
図に示す場合であり、即ち、第3の処理アクセス要求が
必要な唯一の場合である。When the program 210o starts (start block 21
01), a test is performed to determine whether the access request is a read access request (decision block 21).
02). If the request is a read request, the right mask 1437 is set by the bit address (
Processing block 2LO3). This process is best understood with reference to FIG. Field 2200 includes, at least in part, memory words 2201 .
2202 and 2203 are included. This is the 13th I
This is the case shown in the figure, ie the only case where a third process access request is necessary.
フィールド2200は、3つのサブフィールド、即ち、
メモリワード2201内に完全に含まれたサブフィール
ド2211と、メモリワード2202に一致するサブフ
ィールド2212と、メモリワード2203内に完全に
含まれた最後のサブフィールド2213とに分割するこ
とができる。Field 2200 has three subfields:
It can be divided into a subfield 2211 contained entirely within memory word 2201, a subfield 2212 corresponding to memory word 2202, and a final subfield 2213 contained entirely within memory word 2203.
中央処理ユニットの第1アクセスは、サブフィールド2
211を、中央処理ユニットの最下位ビットデータラッ
チ1445の上位ビットに記憶するように作用する。中
央処理ユニットの第2のアクセスは、メモリワード22
02に対応するサブフィールド2212を、中央処理ユ
ニットの最上位ビットデータラッチ144oに記憶する
。中央処理ユニットの第3のアクセスは、前記した読み
取り/変更/書き込み動作と同様の読み取り、マスク及
び変更動作でなければならない。予め呼び出されたサブ
フィールド2211を含む中央処理ユニットの最下位ビ
ットデータラッチ1445からのデータは、入力/出力
ラッチにロードされる(処理ブロック2104)。メモ
リワード2203はメモリ130から呼び出され、サブ
フィールド2212を含む右マスク1437によって決
定された部分は、入力/出力ラッチ1439にロードさ
れる(処理ブロック2105)。それにより得られる入
力/出力ラッチのデータは、中央処理ユニットの最下位
ビットデータラッチ1445に記憶される(処理ブロッ
ク2106)。これにより得られるデータは、第1のサ
ブフィールド2211と、第3のサブフィールド221
3とを備えている。前記の読み取りアクセスの場合と同
様に、バレルシフタ1450は、中央処理ユニット20
0によって適切に使用されるようにデータを整列させる
。これは、第23図に関連して以下に詳細に説明する。The first access of the central processing unit is to subfield 2.
211 in the upper bits of the least significant bit data latch 1445 of the central processing unit. The second access of the central processing unit is to access memory word 22.
The subfield 2212 corresponding to 02 is stored in the most significant bit data latch 144o of the central processing unit. The third access of the central processing unit must be a read, mask and modify operation similar to the read/modify/write operations described above. Data from the central processing unit's least significant bit data latch 1445, including the previously called subfield 2211, is loaded into the input/output latch (processing block 2104). Memory word 2203 is recalled from memory 130 and the portion determined by right mask 1437, including subfield 2212, is loaded into input/output latch 1439 (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 is the first subfield 2211 and the third subfield 221.
3. As with the read access described above, barrel shifter 1450 provides access to central processing unit 20.
0 to align the data for proper use. This is explained in detail below in connection with FIG. 23.
中央処理ユニットの第3のアクセスが書き込みアクセス
である場合には、読み取り/変更/書き込みサイクルが
必要とされる。左マスク1438は、ビットアドレス1
201とフィールドサイズとの和に対応するようにセッ
トされる(処理ブロック2107)。中央処理ユニット
の最下位ビットデータラッチ1445に記憶されたデー
タは、入力/出力ラッチにロードされる(処理ブロック
2108)、メモリワード2203は、メモリ130か
ら読み取られ、左マスク1438を用いて入力/出力ラ
ッチ1439にロードされる(処理ブロック2109)
。この時、入力/出力ラッチ1439は、サブフィール
ド2213に対応する最下位ビットと、メモリワード2
203の最上位ビットに対応する最上位ビットとを備え
ている。If the central processing unit's third access is a write access, a read/modify/write cycle is required. Left mask 1438 is bit address 1
201 and the field size (processing block 2107). The data stored in the central processing unit's least significant bit data latch 1445 is loaded into the input/output latch (processing block 2108); the memory word 2203 is read from memory 130 and input/output using the left mask 1438. Loaded into output latch 1439 (processing block 2109)
. At this time, input/output latch 1439 has the least significant bit corresponding to subfield 2213 and memory word 2.
203, and a most significant bit corresponding to the most significant bit of No. 203.
入力/出力ラッチ1439のこのデータは、次いで、メ
モリワード2203と同じ位置でメモリ130に書き込
まれ(処理ブロック2110)、読み取り/変更/書き
込み動作を完了する。いずれにせよ、中央処理ユニット
の第3アクセスは、中央処理ユニットの第3要求ラツチ
をリセットすることによって完了され(処理ブロック2
111)、プロゲラt、 2 L OOが完了する(終
了ブロック2112)。This data in input/output latch 1439 is then written to memory 130 at the same location as memory word 2203 (processing block 2110) to complete the read/modify/write operation. 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 2).
111), progera t, 2 L OO is completed (end block 2112).
第1のサブフィールド2211及び第3のサブフィール
ド2213を中央処理ユニツ1−の最下位ビットデータ
ラッチ1445に入力する技術は、中央処理ユニットの
3ワードデータラツチの必要性を排除する。好ましい実
施例では、フィールドの長さが32ビツトを越えないこ
とに注意されたい。然し乍ら、ビットアドレス及びフィ
ールドサイズの幾つかの組合せでは、選択されたフィー
ルドが3つの連続するメモリワードの部分を占有するこ
とが必要である。2つのサブフィールドは。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 1- eliminates the need for a three word data latch in the central processing unit. Note that in the preferred embodiment, the field length does not exceed 32 bits. However, some combinations of bit addresses and field sizes require that the selected field occupy portions of three consecutive memory words. The two subfields are.
図示された2つの16ビツト半部分を含む単一の32ビ
ツトラツチ内に受は入れられる。従って、第3の16ビ
ツトデータラツチを設けることは。The reception is housed in a single 32-bit latch containing the two 16-bit halves shown. Therefore, providing a third 16-bit data latch is advantageous.
回路の領域を浪費することになる。データラッチの1つ
の手部分に2つのサブフィールドを記憶することにより
、追加回路が不要となる。上記のマスキングにより、こ
れらのサブフィールドを適切に分離することができる。This results in wasted circuit area. By storing two subfields in one hand of the data latch, no additional circuitry is required. The above masking allows these subfields to be properly separated.
中央処理ユニットの最上位ビットデータラッチ1440
及び中央処理ユニットの最下位ビットデータラッチ14
45内でデータを円形にシフトすることによりサブフィ
ールドをビット順に適切に整列することができる。Central processing unit most significant bit data latch 1440
and the least significant bit data latch 14 of the central processing unit.
By circularly shifting the data within 45, the subfields can be properly aligned in bit order.
好ましい実施例によれば、中央処理ユニット200内の
全てのフィールド動作は、データを右に調整しながら実
行される。フィールド書き込み動作を実行する時には、
バレルシフタ145oは、中央処理ユニットのデータラ
ッチ1440及び1445にロードする前にビットアド
レスに等しい量だけデータを左に円形シフトする。これ
は、フィールド書き込み動作のためにデータを適切に整
列するように働く。この左への円形シフトにより、第2
2図に示すように、中央処理ユニットの最下位ビットデ
ータラッチ1445内に第1のサブフィールド2211
及び第3のサブフィールド2213が自動的に形成され
る。According to a preferred embodiment, all field operations within central processing unit 200 are performed while adjusting data to the right. When performing a field write operation,
Barrel shifter 145o circularly shifts the data to the left by an amount equal to the bit address before loading into data latches 1440 and 1445 of the central processing unit. This serves to properly align the data for field write operations. This circular shift to the left causes the second
As shown in FIG.
and a third subfield 2213 are automatically formed.
上記したように、メモリ130から読み取られたデータ
は、中央処理ユニット200で使用するためにバレルシ
フタ145oによって整列される。このプロセスが第2
3図に示されている。中央処理ユニットのデータラッチ
144o及び1445からのデータは、最上位ビット2
301及び最下位ビット2302を含んでいる。選択さ
れたフィールド2310は、最上位ビット23o1と最
下位ビット2302との間のワード境界に交差するもの
として示されている。この整列は解説のためのみに与え
られるものである。というのは。As discussed above, data read from memory 130 is aligned by barrel shifter 145o for use by central processing unit 200. This process is the second
This is shown in Figure 3. The data from central processing unit data latches 144o and 1445 is the most significant bit 2
301 and the least significant bit 2302. The selected field 2310 is shown crossing the word boundary between the most significant bit 23o1 and the least significant bit 2302. This alignment is provided for illustrative purposes only. I mean.
この技術が他の全てのフィールド整列にも等しく適用さ
れるからである。最初に、フィールドは、ビットアドレ
スによって指示されたビット量だけ右に円形シフトする
ことにより右に調整される。This technique applies equally to all other field alignments. First, the field is adjusted to the right by circularly shifting it to the right by the amount of bits indicated by the bit address.
このプロセスが2311で概略的に示されてし)る。This process is shown schematically at 2311).
フィールドが第22図に2211.2212及び221
3で示されたような3つのサブフィールドに分割される
場合でも、このシフトにより、全フィールド2310が
適切な順序で右に調整される。The fields are 2211, 2212 and 221 in Figure 22.
This shift adjusts the entire field 2310 to the right in the proper order, even when divided into three subfields as shown at 3.
選択されたフィールド2310内に含まれなし)データ
ワードの他の部分は、次のプロセスで失われるので、重
要ではない。Other parts of the data word (not included within selected field 2310) are not important as they will be lost in the next process.
次いで、フィールドは、フィールドサイズより32ビツ
ト小さい量だけ左へ論理的にシフトすることにより左に
調整される。2312で概略的に示されたこのプロセス
は、選択されたフィールドの最上位ビットよりも高い順
位のビットを排除するように作用する。フィールド23
10の最下位ビットより桁の小さいビットは1次の段階
で除去すべきであり、従って、重要ではない。フィール
ド2310は、再び、フィールドサイズより32ビツト
小さい量だけ最後に右に論理的にシフトされる。これに
より、フィールド2310の最下位ビットより桁の小さ
いビットが除去される。それより上位のビットは、状態
レジスタ11oOからの作用フィールド拡張ビット11
o6又は1108の状態に基づいて発生される。中央処
理ユニット200によって実行される特定の命令は、フ
ィールドサイズ0 1105及びフィールド拡張0 1
106が作用するか或いはフィールドサイズ1107及
びフィールド拡張1108が作用するかを指定する。状
態レジスタ110oの選択されたフィールド拡張ビット
がゼロの拡張を示す場合には、全て「0」である上位の
ビット2320が発生される。一方、フィールド拡張オ
プションが符号の拡張を指示する場合には、全てフィー
ルド2310の最上位ビットに等しい上位ビット233
0が発生される。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, illustrated schematically at 2312, operates to eliminate bits of higher order than the most significant bit of the selected field. field 23
Bits smaller than the 10 least significant bits should be removed in the first order stage and are therefore not important. Field 2310 is again finally logically shifted to the right by an amount 32 bits less than the field size. This removes bits of lower order than the least significant bit of field 2310. The upper bits are the effect field extension bit 11 from the status register 11oO.
Generated based on the status of o6 or 1108. The specific instructions executed by central processing unit 200 include field size 0 1105 and field extension 0 1
106 or field size 1107 and field extension 1108. If the selected field extension bit of status register 110o indicates a zero extension, upper bits 2320 of all "0"s are generated. On the other hand, if the field extension option instructs sign extension, all upper bits 233 equal to the most significant bit of field 2310
0 is generated.
以上、本発明の好ましい実施例を詳細に説明した。この
好ましい実施例では、幾つかの設計上の選択を行なった
が、これらは本発明を実施する上で必要なものではない
。例えば、中央処理ユニットは32ビット長さのデータ
を用いるものとして説明し、一方、メモリは16ビツト
長さのワードを用いるものとして説明した。当業者であ
れば。The preferred embodiments of the present invention have been described in detail above. Although several design choices were made in this preferred embodiment, these are not necessary to practice the invention. For example, the central processing unit has been described as using data that is 32 bits long, while the memory has been described as using words that are 16 bits long. If you are a person skilled in the art.
これらが単に設計上の便宜的な選択に過ぎず、本発明の
要旨ではないことが明らかであろう。本発明の範囲は、
特許請求の範囲によって規定されるものとする。It will be clear that these are merely convenient design choices and are not the essence of the invention. The scope of the present invention is
shall be defined by the claims.
以上の記載に関連して、以下の各項を開示する。In connection with the above description, the following items are disclosed.
(1)選択された数のビットMを記憶するように中央処
理ユニツ1へに接続されたフィールドサイズレジスタを
更に備えた特許請求の範囲に記載のデータ処理システム
。A data processing system as claimed in the claims, further comprising: (1) a field size register connected to the central processing unit 1 to store a selected number of bits M.
(2)上記フィールドメモリアクセスコマンドの各々は
、第1のデータ長さを有する第1のフィールドサイズ又
は第2のデータ長さを有する第2のフィールドサイズを
指示するためのフィールドサイズ選択部分を備え、
上記メモリアクセス制御器は、上記フィールドメモリア
クセスコマンドに応答し、上記フィールドサイズ選択部
分が上記第1フイールドサイズを指示する場合には上記
第1データ長さに等しいMビットデータフィールドを有
する上記メモリをアクセスしそして上記フィールドサイ
ズ選択部分が上記第2フイールドサイズを指示する場合
には上記第2データ長さに等しいMビットデータフィー
ルドを有する上記メモリをアクセスする前記第1項に記
載のデータ処理システム。(2) Each of the field memory access commands includes a field size selection portion for indicating a first field size having a first data length or a second field size having a second data length. , the memory access controller is responsive to the field memory access command to access the memory having an M-bit data field equal to the first data length if the field size selection portion indicates the first field size; and accessing said memory having an M-bit data field equal to said second data length if said field size selection portion indicates said second field size. .
(3)アドレス、データ及び読み取り/書き込み制御信
号を送信するためのメモリインターフェイスと、
選択可能な数のビットMを有するデータフィールドに基
づいて作動し、フィールド読み取りメモリコマンド及び
フィールド書き込みメモリコマンドを発生する中央処理
ユニットと、
中央処理ユニットに接続され、Mビットデータフィール
ドの始めにメモリ内の個々のビットを指示するための複
数のビットを有したアドレスレジスタと。(3) a memory interface for transmitting address, data, and read/write control signals; and operating on a data field having a selectable number of bits M to generate field read memory commands and field write memory commands. a central processing unit; and an address register connected to the central processing unit and having a plurality of bits for indicating individual bits in the memory at the beginning of an M-bit data field.
上記メモリインターフェイス、上記中央処理二二ッ1〜
及び上記アドレスレジスタに接続され、複数のメモリ位
置に記憶されたNビットデータワードを有するメモリに
接続するようにされたメモリアクセス制御器とを具備し
。The above memory interface, the above central processing 221~
and a memory access controller connected to the address register and adapted to connect to a memory having N-bit data words stored in a plurality of memory locations.
メモリのNビットデータワードに対応するメモリ読み取
り信号及びアドレス信号を上記メモリインターフェイス
に供給して、上記Nビットデータワードを呼び出すよう
にし、各々のこのようなNビットデータワードは、フィ
ールド読み取りメモリコマンドに応答して上記アドレス
レジスタにより指示された上記Mビットデータフィール
ドの一部分を含むものであり、
更に、メモリのNビットデータワードに対応するメモリ
読み取り信号及びアドレス信号を上記メモリインターフ
ェイスに供給して、上記Nビットデータワードを呼び出
し、上記Mビットデータフィールドに対応するビットと
取り替えることにより上記呼び出されたNビットデータ
ワードを変更し、そしてメモリ書き込み信号、上記変更
されたNビットデータワード及び上記アドレス信号を上
記メモリインターフェイスに供給して、上記変更された
Nピッ1〜データワードをメモリに書き込み、各々のこ
のようなNビットデータワードは、フィールド書き込み
メモリコマンドに応答して上記アドレスレジスタにより
指示された上記Mビットデータフィールドの一部分を含
むものであることを特徴とするデータ処理装置。Memory read signals and address signals corresponding to N-bit data words of memory are provided to said memory interface to access said N-bit data words, each such N-bit data word being responsive to a field read memory command. responsively includes a portion of the M-bit data field pointed to by the address register, and further provides a memory read signal and an address signal to the memory interface corresponding to the N-bit data word of the memory to modifying the retrieved N-bit data word by calling an N-bit data word and replacing the bits corresponding to the M-bit data field; and transmitting a memory write signal, the modified N-bit data word and the address signal. said memory interface to write said modified N-bit data words into memory, each such N-bit data word being written to said memory interface with said modified N-bit data words directed to said address register by said address register in response to a field write memory command; A data processing device comprising a portion of an M-bit data field.
(4)上記選択された数のビットMを記憶するように中
央処理ユニットに接続されたフィールドサイズレジスタ
を更に具備した上記第3項に記載のデータ処理装置。(4) The data processing device of claim 3, further comprising a field size register connected to the central processing unit to store the selected number of bits M.
(5)上記フィールドメモリアクセスコマンドの各々は
、第1のデータ長さを有する第1のフィールドサイズ又
は第2のデータ長さを有する第2のフィールドサイズを
指示するためのフィールドサイズ選択部分を備え、
上記メモリアクセス制御器は、上記フィールドメモリア
クセスコマンドに応答し、上記フィールドサイズ選択部
分が上記第1フイールドサイズを指示する場合には上記
第1データ長さに等しいMビットデータフィールドを有
する上記メモリをアクセスしそして上記フィールドサイ
ズ選択部分が上記第2フイールドサイズを指示する場合
には上記第2データ長さに等しいMビットデータフィー
ルドを有する上記メモリをアクセスする前記第5項に記
載のデータ処理システム。(5) Each of the field memory access commands includes a field size selection portion for indicating a first field size having a first data length or a second field size having a second data length. , the memory access controller is responsive to the field memory access command to access the memory having an M-bit data field equal to the first data length if the field size selection portion indicates the first field size; and accessing said memory having an M-bit data field equal to said second data length if said field size selection portion indicates said second field size. .
(6)上記第1データ長さ及び上記第2データ長さを記
憶するように中央処理ユニットに接続されたフィールド
サイズレジスタを更に具備した上記第2項又は第5項に
記載のデータ処理システム。(6) The data processing system according to item 2 or 5, further comprising a field size register connected to the central processing unit to store the first data length and the second data length.
(7)上記アドレスレジスタの所定数の最上位ピッ1〜
が個々のNピッI−データワードのアドレス位置を指示
し、その最下位ビットが上記Nビットデータワード内の
ビットアドレスを指示する上記第1項又は第4項に記載
のデータ処理装置。(7) The predetermined number of highest bits 1 to 1 of the above address register.
5. A data processing apparatus as claimed in claim 1 or 4, wherein the bits indicate address locations of individual N-bit I-data words, the least significant bits of which indicate bit addresses within said N-bit data words.
(8)上記メモリアクセス制御器は、上記ビットアドレ
スとフィールドサイズとを加算する加算器を備え、上記
メモリアクセス制御器は、Nに対する上記和の関係に基
づいて多数のNビットデータワードをアクセスする上記
第4項又は第7項に記載のデータ処理装置。(8) the memory access controller includes an adder for adding the bit address and the field size; the memory access controller accesses a number of N-bit data words based on the relationship of the sum to N; The data processing device according to item 4 or 7 above.
(9)上記メモリアクセス制御器は、上記ビットアドレ
スとフィールドサイズの上記和をNで除算した商をそれ
に最も近い整数に丸めたものに等しい数のNピッI−デ
ータフードをアクセスする上記第8項に記載のデータ処
理装置。(9) The memory access controller accesses a number of N-pi I-data foods equal to the sum of the bit address and field size divided by N, rounded to the nearest integer. The data processing device described in section.
(10)データを記憶したり呼び出したりするための複
数のアドレス位置を有するメモリと、上記メモリの次々
のアドレス位置から可視表示に対応する表示データを呼
び出すために周期的な表示更新アクセス要求を発生する
表示更新制御器と、
上記メモリに接続され、上記呼び出された表示データに
対応するビデオ表示を発生するビデオ表示装置と。(10) A memory having a plurality of address locations for storing and recalling data, and generating periodic display update access requests to recall display data corresponding to the visual display from successive address locations of the memory. and a video display device connected to the memory and generating a video display corresponding to the retrieved display data.
上記メモリからデータを読み取るためのローカルメモリ
読み取り動作と上記メモリにデータを書き込むためのロ
ーカルメモリ書き込み動作とを含むデータに基づく動作
を実行するローカル処理ユニットとを具備し、このロー
カル処理ユニットは、メモリ読み取り動作又はメモリ書
き込み動作が要求された時にローカルプロセッサメモリ
アクセス信号を発生すると共に、読み取り又は書き込み
のいずれが要求されたかを指示する読み取り/書き込み
制御信号を発生し、上記ローカル処理ユニットは、上記
メモリ内のアドレス位置の1つを指定するローカルアド
レスレジスタと、メモリ読み取り動作中に上記メモリか
らのデータを受は取りそしてメモリ書き込み動作中に上
記メモリへデータを供給するローカルプロセッサデータ
レジスタとを有しており、そして
更に、上記メモリ、上記表示更新タイマ及び上記ローカ
ル処理ユニットに接続され、メモリアクセス要求を受は
取り、これらのメモリアクセス要求を許可されるまでベ
ンディング状態に保持し。a local processing unit that performs operations based on the data, including local memory read operations to read data from the memory and local memory write operations to write data to the memory, the local processing unit comprising: generating a local processor memory access signal when a read operation or a memory write operation is requested, and generating a read/write control signal indicating whether a read or a write is requested; a local address register that specifies one of the address locations within the processor; and a local processor data register that receives data from the memory during memory read operations and provides data to the memory during memory write operations. and further connected to the memory, the display update timer, and the local processing unit to receive memory access requests and hold these memory access requests in a bending state until granted.
対応するアドレス信号、メモリアクセス要求信号及び対
応する読み取り/′8き込み信号を上記メモリに供給す
ることにより上記メモリへのアクセスを優先順に許可す
るメモリ優先順位制御器を具備し、このメモリ優先順位
制御器は、これがベンディングのメモリアクセス要求を
それまで有していた場合には上記ローカルプロセッサの
アクセス要求よりも高い優先順位にある上記表示更新ア
クセス要求を許可しそしてこのメモリ優先順位制御器が
ベンディングのメモリアクセス要求をそれまで有してい
ない場合には上記表示更新アクセス要求よりも高い優先
順位にある上記ローカルプロセッサアクセス要求を許可
することを特徴とするメモリアクセス制御システム。a memory priority controller for granting access to said memory in priority order by providing a corresponding address signal, a memory access request signal and a corresponding read/'8 write signal to said memory; The controller grants the display update access request at a higher priority than the local processor's access request if it previously had a bending memory access request, and the memory priority controller grants the bending memory access request. If the local processor access request has no previous memory access request, the local processor access request having a higher priority than the display update access request is permitted.
(11)上記表示更新制御器は、次に呼び出すべき表示
データが記憶された上記メモリ内のアドレス位置の1つ
を指定するための表示更新アドレスレジスタと、上記表
示更新要求信号を周期的に発生する表示更新タイマと、
各表示更新メモリアクセスが許可された際に1次に呼び
出すべき表示データを参照するために上記表示更新アド
レスレジスタに記憶された上記アドレスを増加するため
の表示更新アドレスレジスタ増加手段とを備えている前
記第10項に記載のメモリアクセス制御システム。(11) The display update controller includes a display update address register for specifying one of the address locations in the memory where display data to be called next is stored, and periodically generates the display update request signal. a display update timer to
display update address register increasing means for increasing the address stored in the display update address register in order to refer to display data to be called primarily when each display update memory access is permitted; The memory access control system according to item 10 above.
(12)上記メモリは、データを保持するために周期的
なリフレッシュを必要とするダイナミックメモリであり
、上記メモリアクセス制御システムは、更に、リフレッ
シュメモリアクセス信号を周期的に発生するメモリリフ
レッシュ制御器を含み、上記メモリアクセス制御器は、
次にリフレッシュすべきアドレスが記憶されたリフレッ
シュアドレスレジスタを有し、そして上記メモリ優先順
位制御器は、更に、上記リフレッシュメモリアクセス信
号を受信すると共に、上記メモリ優先順位制御器がベン
ディングのメモリアクセス要求をそれまで有していた場
合には上記表示更新アクセス要求より低く且つ上記ロー
カルプロセッサアクセス要求より高い優先順位にある上
記リフレッシュメモリアクセス信号を許可しそして上記
メモリ優先順位制御器がベンディングのメモリアクセス
要求をそれまで有していない場合には上記ローカルプロ
セッサアクセス要求及び上記表示更新アクセス要求より
も低い優先順位にある上記リフレッシュメモリアクセス
要求を許可するように、上記メモリリフレッシュ制御器
に接続されている前記第10項に記載のメモリアクセス
制御システム。(12) The memory is a dynamic memory that requires periodic refresh 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 includes:
a refresh address register storing an address to be refreshed next; and the memory priority controller further receives the refresh memory access signal and the memory priority controller is configured to bend a memory access request. If the memory priority controller previously had a bending memory access request, the memory priority controller grants the refresh memory access signal with a lower priority than the display update access request and higher priority than the local processor access request; is connected to the memory refresh controller to grant the refresh memory access request at a lower priority than the local processor access request and the display update access request if the refresh memory access request does not previously have a refresh memory access request. The memory access control system according to item 10.
(13)アドレス、データ及び読み取り/書き込み制御
信号を送信するためのメモリインターフェイスと、
可視表示に対応するメモリ表示データを次々のアドレス
位置から呼び出すように周期的な表示更新アクセス要求
を発生する表示更新制御器と、上記メモリインターフェ
イスに接続され、上を己メモリインターフェイスがメモ
リからデータを読み取るための指定のアドレス及び読み
取り制御信号を発生するようにさせるローカルメモリ読
み取り動作と、上記メモリインターフェイスがメモリに
データを書き込むための指定のアドレス及び書き込み制
御信号を発生するようにさせるローカル書き込みメモリ
動作とを含むデータに基づく動作を実行するローカル処
理ユニットとを具備し。(13) a memory interface for transmitting address, data, and read/write control signals and a display update for generating periodic display update access requests to recall memory display data corresponding to the visual display from successive address locations; a controller connected to the memory interface and configured to cause the memory interface to generate specified address and read control signals for reading data from memory; and a local memory read operation for causing the memory interface to read data from memory. a local processing unit for performing operations on the data, including a specified address for writing the data and a local write memory operation for generating a write control signal.
このローカル処理ユニットは、メモリ読み取り動作又は
メモリ書き込み動作のいずれかが要求された時にローカ
ルプロセッサメモリアクセス信号を発生すると共に読み
取り又は書き込みのいずれの動作が要求されたかを指示
する読み取り/書き込み制御信号を発生し、上記ローカ
ル処理ユニットは、アドレス位置を指定するためのロー
カルアドレスレジスタと、メモリ読み取り動作中に上記
メモリインターフェイスからデータを受は取りそしてメ
モリ書き込み動作中に上記メモリインターフェイスにデ
ータを供給するローカルプロセッサデータレジスタとを
有し、そして
更に、上記メモリインターフェイス、上記表示更新タイ
マ及び上記ローカル処理ユニットに接続され、メモリア
クセス要求を受は取り、これらのメモリアクセス要求を
許可されるまでベンディング状態に保持し、そして対応
するアドレス信号。The local processing unit generates a local processor memory access signal when either a memory read or write operation is requested and a read/write control signal indicating whether a read or write operation is requested. the local processing unit has a local address register for specifying an address location, and a local processing unit that receives data from the memory interface during memory read operations and provides data to the memory interface during memory write operations. a processor data register, and further connected to the memory interface, the display update timer, and the local processing unit to receive memory access requests and hold these memory access requests in a bending state until granted. and the corresponding address signal.
メモリアクセス要求信号及び対応する読み取り/書き込
み信号を上記メモリインターフェイスに供給することに
より上記メモリへのアクセスを優先順に許可するための
メモリ優先順位制御器を具備し、このメモリ優先順位制
御器は、該制御器がベンディングのメモリアクセス要求
をそれまで有していた場合には上記ローカルプロセッサ
のアクセス要求より高い優先順位の上記表示更新アクセ
ス要求を許可しそしてこのメモリ優先順位制御器がベン
ディングのメモリアクセス要求をそれまで有していなか
った場合には上記表示更新アクセス要求より高い優先順
位の上記ローカルプロセッサアクセス要求を許可するこ
とを特徴とするメモリアクセス制御システム。a memory priority controller for granting access to the memory in priority order by providing a memory access request signal and a corresponding read/write signal to the memory interface; If the controller previously had a bending memory access request, it grants the display update access request with a higher priority than the local processor's access request, and the memory priority controller handles the bending memory access request. The memory access control system is characterized in that, if the local processor access request has not been previously held, the local processor access request having a higher priority than the display update access request is granted.
(14)上記表示更新制御器は、次に呼び出すべき表示
データが記憶されたメモリ内の上記アドレス位置の1つ
を指定する表示更新アドレスレジスタと、上記表示更新
要求信号を周期的に発生する表示更新タイマと、各々の
表示更新メモリアクセスが許可された時に次に呼び出す
べき表示データを参照するために上記表示更新アドレス
レジスタに記憶された上記アドレスを増加する表示更新
アドレスレジスタ増加手段とを備えている前記第13項
に記載のメモリアクセス制御システム。(14) The display update controller includes a display update address register that specifies one of the address locations 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 a display update address register incrementing means for incrementing the address stored in the display update address register in order to refer to display data to be called next when each display update memory access is permitted. 14. The memory access control system according to item 13.
(15)上記メモリインターフェイスに接続され、リフ
レッシュメモリアクセス信号を周期的に発生するメモリ
リフレッシュ制御器を備え、上記メモリアクセス制御器
は、次にリフレッシュすべきアドレスが記憶されたリフ
レッシュアドレスレジスタを有し、上記メモリ優先順位
制御器は、更に、上記メモリリフレッシュ制御器に接続
されていて、上記リフレッシュメモリアクセス信号を受
は取ると共に、上記メモリ優先順位制御器がベンディン
グのメモリアクセス要求をそれまで有していた場合には
上記表示更新アクセス要求より低く且つ上記ローカルプ
ロセッサアクセス要求より高い優先順位の上記リフレッ
シュメモリアクセス信号を許可しそして上記メモリ優先
順位制御器がベンディングのメモリアクセス要求をそれ
まで有していない場合には上記ローカルプロセッサのア
クセス要求及び上記表示更新アクセス要求より低い優先
順位の上記リフレッシュメモリアクセス要求を許可する
上記第13項に記載のメモリアクセス制御システム。(15) A memory refresh controller connected to the memory interface and periodically generating a refresh memory access signal, the memory access controller having a refresh address register storing an address to be refreshed next. , the memory priority controller is further connected to the memory refresh controller to receive and receive the refresh memory access signal, and the memory priority controller is further connected to the memory refresh controller to receive and receive the refresh memory access signal and to determine whether the memory priority controller previously has a bending memory access request. the refresh memory access signal of lower priority than the display update access request and higher than the local processor access request if the memory priority controller previously had a bending memory access request; 14. The memory access control system according to item 13, wherein if there is no access request from the local processor, the refresh memory access request having a lower priority than the local processor access request and the display update access request is permitted.
第1図は、本発明の原理に基づいて構成されたグラフィ
ック機能を有するコンピュータのブロック図、
第2図は1本発明のグラフィック処理回路の好ましい実
施例を示すブロック図、
第3図は、XYアドレス技術によりビットマツプメモリ
内の個々のピクセルアドレスをいかに指定するかを示す
図、
第4図は、リニアなアドレス技術によりフィールドアド
レスをいかに指定するかを示す図、第5図は、本発明の
好ましい実施例により1つのデータワード内に色々な長
さのピクセルデータを記憶する好ましい実施例を示す図
、第6図は、本発明の好ましい実施例によりレジスタメ
モリ内に記憶されたオペランドの内容の構成を示す図、
第7図は1本発明のビットマツプメモリ内でのアレイ移
動動作の特性を示す図、
第8図は、本発明によるビットブロック転送即ちアレイ
移動動作のフローチャート、第9図は、本発明の好まし
い実施例に用いられる入力/出力レジスタの幾つかを示
す図。
第10図は、第9図に示されたホスト制御レジスタを詳
細に示す図、
第11図は、本発明の好ましい実施例による状態レジス
タを詳細に示す図。
第12図は、本発明の好ましい実施例によるアドレスレ
ジスタを詳細に示す図、
第13A図ないし第13I図は1本発明の好ましい実施
例による選択されたフィールドとメモリワードとの関係
についての種々の場合を示す図、第14図は、本発明の
好ましい実施例によるメモリアクセス制御器の構造を示
す図。
第15図は、本発明の好ましい実施例により水平及び垂
直リセッ1〜信号を発生する構造体を示す図。
第16図は、本発明の好ましい実施例によりDRAMリ
フレッシュ信号を発生する構造体を示す図、
第17図は、第14図に示したシーケンサを詳細に示す
図、
第18図は、本発明の好ましい実施例により第17図に
示したプログラム可能な入力アドレス論理アレイの動作
を説明するフローチャート、第19図は、本発明の好ま
しい実施例により中央処理ユニットの第1メモリアクセ
スを実行する時のシーケンサの動作を説明するフローチ
ャート。
第20図は、本発明の好ましい実施例により中央処理ユ
ニットの第2メモリアクセスを実行する時のシーケンサ
の動作を説明するフローチャート。
第21図は1本発明の好ましい実施例により中央処理ユ
ニットの第3メモリアクセスを実行する時のシーケンサ
の動作を説明するフローチャート。
第22図は1本発明により2つのメモリワード境界に交
差するフィールドをいかに記憶し操作するかを示す図、
そして
第23図は、第14図に示したバレルシフタの動作を示
す図である。
100・・・グラフィックコンピュータシステム110
・・・ホスト処理システム
115・・・ホストバス
120・・・グラフィックプロセッサ
122・・・ビデオメモリバス
130・・・メモリ 132・・・ビデオRAM134
・・・リードオンリメモリ
140・・・シフトレジスタ
150・・・ビデオパレット
160・・・デジタル−ビデオコンバータ170・・・
ビデオディスプレイ
200・・・中央処理ユニット
210・・・グラフィックハードウェア220・・・レ
ジスタファイル
230・・・命令キャッシュ
240・・・ホストインターフェイス
250・・・メモリインターフェイス
260・・・入力/出力レジスタ
270・・・ビデオ表示制御器
く の ”
CI +、。
電 !
工 −→手続補正書
く方式) 52,4.30昭和 年 月 日FIG. 1 is a block diagram of a computer having a graphic function configured based on the principles of the present invention; FIG. 2 is a block diagram showing a preferred embodiment of the graphic processing circuit of the present invention; FIG. FIG. 4 is a diagram illustrating how individual pixel addresses in a bitmap memory are specified using addressing techniques; FIG. 4 is a diagram illustrating how field addresses are specified using linear addressing techniques; FIG. FIG. 6 is a diagram illustrating a preferred embodiment of storing pixel data of various lengths within one data word according to a preferred embodiment of the present invention. FIG. FIG. 7 is a diagram showing the characteristics of the array movement operation within the bitmap memory of the present invention; FIG. 8 is a flowchart of the bit block transfer, that is, the array movement operation according to the present invention; FIG. , a diagram illustrating some of the input/output registers used in the preferred embodiment of the invention. 10 is a detailed diagram of the host control register shown in FIG. 9; FIG. 11 is a detailed diagram of the status register according to a preferred embodiment of the present invention. FIG. 12 is a detailed illustration of an address register according to a preferred embodiment of the present invention, and FIGS. 13A-13I are diagrams showing various relationships between selected fields and memory words according to a preferred embodiment of the present invention. FIG. 14 is a diagram showing the structure of a memory access controller according to a preferred embodiment of the present invention. FIG. 15 is a diagram illustrating structures for generating horizontal and vertical reset 1 signals in accordance with a preferred embodiment of the present invention. FIG. 16 is a diagram illustrating a structure for generating a DRAM refresh signal according to a preferred embodiment of the present invention; FIG. 17 is a detailed diagram of the sequencer shown in FIG. 14; FIG. A flowchart illustrating the operation of the programmable input address logic array shown in FIG. 17 in accordance with a preferred embodiment; FIG. A flowchart explaining the operation. FIG. 20 is a flowchart illustrating the operation of the sequencer when performing the second memory access of the central processing unit in accordance with a preferred embodiment of the present invention. FIG. 21 is a flowchart illustrating the operation of the sequencer when performing the third memory access of the central processing unit according to a preferred embodiment of the present invention. FIG. 22 is a diagram illustrating how fields that intersect two memory word boundaries are stored and manipulated according to the present invention;
FIG. 23 is a diagram showing the operation of the barrel shifter shown in FIG. 14. 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...Graphics hardware 220...Register file 230...Instruction cache 240...Host interface 250...Memory interface 260...Input/output registers 270...・Video display controller
CI+,. Electric!
52, 4. 30 Showa year month day
Claims (1)
位置にNビットのデータワードを記憶するようにされた
メモリと、 選択可能な数のビットMを有するデータフィールドに基
づいて作動し、少なくとも1つの形式のフィールドメモ
リアクセスコマンドを発生するための中央処理ユニット
と、 上記中央処理ユニットに接続され、Mビットデータフィ
ールドの始めに上記メモリ内の個々のビットを指示する
ための複数のビットを有しているアドレスレジスタと、 上記メモリ、上記中央処理ユニット及び上記アドレスレ
ジスタに接続され、上記アドレスレジスタによって指示
されたMビットデータフィールドの部分を含む上記メモ
リの各Nビットデータワードに対応するメモリアドレス
を発生しそして上記Nビットデータワードの各々をアク
セスすることにより、フィールドメモリアクセスコマン
ドに応答して上記メモリ内に記憶された少なくとも1つ
のNビットデータワードをアクセスするメモリアクセス
制御器とを具備したことを特徴とするデータ処理システ
ム。Claims: Based on a memory having a plurality of address locations and adapted to store an N-bit data word in each address location, and a data field having a selectable number of bits M. a central processing unit operatively connected to said central processing unit for generating at least one type of field memory access command; an address register having a plurality of bits; and each N-bit data word of said memory connected to said memory, said central processing unit and said address register and comprising a portion of an M-bit data field pointed to by said address register. and accessing at least one N-bit data word stored in said memory in response to a field memory access command by generating a memory address corresponding to and accessing each of said N-bit data words. A data processing system characterized by comprising a device.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US82163486A | 1986-01-23 | 1986-01-23 | |
US821644 | 1986-01-23 | ||
US821634 | 1986-01-23 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP3226154A Division JPH0762835B2 (en) | 1986-01-23 | 1991-09-05 | Memory access control system |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS62248041A true JPS62248041A (en) | 1987-10-29 |
Family
ID=25233902
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP1391087A Pending JPS62248041A (en) | 1986-01-23 | 1987-01-23 | Data processor and memory access controller |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS62248041A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0282329A (en) * | 1988-09-06 | 1990-03-22 | Internatl Business Mach Corp <Ibm> | Method of transferring data |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS59174958A (en) * | 1983-03-24 | 1984-10-03 | Ricoh Co Ltd | Method for writing data in memory |
JPS60245062A (en) * | 1984-05-18 | 1985-12-04 | Matsushita Electric Ind Co Ltd | Data transfer device |
-
1987
- 1987-01-23 JP JP1391087A patent/JPS62248041A/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS59174958A (en) * | 1983-03-24 | 1984-10-03 | Ricoh Co Ltd | Method for writing data in memory |
JPS60245062A (en) * | 1984-05-18 | 1985-12-04 | Matsushita Electric Ind Co Ltd | Data transfer device |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0282329A (en) * | 1988-09-06 | 1990-03-22 | Internatl Business Mach Corp <Ibm> | Method of transferring data |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4103331A (en) | Data processing display system | |
US5404445A (en) | External interface for a high performance graphics adapter allowing for graphics compatibility | |
US5140687A (en) | Data processing apparatus with self-emulation capability | |
US4237543A (en) | Microprocessor controlled display system | |
US5056041A (en) | Data processing apparatus with improved bit masking capability | |
US4566005A (en) | Data management for plasma display | |
EP0279229B1 (en) | A graphics display system | |
US5095301A (en) | Graphics processing apparatus having color expand operation for drawing color graphics from monochrome data | |
JPS62288984A (en) | Video display unit | |
JPS61159686A (en) | Image display unit | |
JP2792625B2 (en) | Apparatus for displaying video image on display screen by line and point frame sweep | |
US5522082A (en) | Graphics display processor, a graphics display system and a method of processing graphics data with control signals connected to a central processing unit and graphics circuits | |
US5185859A (en) | Graphics processor, a graphics computer system, and a process of masking selected bits | |
US5678037A (en) | Hardware graphics accelerator system and method therefor | |
US6072508A (en) | Method and apparatus for shortening display list instructions | |
US5293587A (en) | Terminal control circuitry with display list processor that fetches instructions from a program memory, character codes from a display memory, and character segment bitmaps from a font memory | |
JPS61233776A (en) | Video apparatus | |
JPS62248041A (en) | Data processor and memory access controller | |
US5699498A (en) | Technique and apparatus for color expansion into a non-aligned 24 bit RGB color-space format | |
JP2683489B2 (en) | Data transfer control device | |
JPS6329291B2 (en) | ||
JPH05250253A (en) | Memory access control system | |
JPS59165137A (en) | Display management system for plasma gas panel display | |
JPS6330633B2 (en) | ||
JP2587415B2 (en) | Data processing system with variable memory bank selection |