JPH0661039B2 - Memory access control circuit - Google Patents

Memory access control circuit

Info

Publication number
JPH0661039B2
JPH0661039B2 JP62297536A JP29753687A JPH0661039B2 JP H0661039 B2 JPH0661039 B2 JP H0661039B2 JP 62297536 A JP62297536 A JP 62297536A JP 29753687 A JP29753687 A JP 29753687A JP H0661039 B2 JPH0661039 B2 JP H0661039B2
Authority
JP
Japan
Prior art keywords
data
address
switching
data bus
bus
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP62297536A
Other languages
Japanese (ja)
Other versions
JPH01140196A (en
Inventor
智久 小檜山
正幸 吉田
賢一 斎藤
義弘 藤上
卓夫 小山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP62297536A priority Critical patent/JPH0661039B2/en
Publication of JPH01140196A publication Critical patent/JPH01140196A/en
Publication of JPH0661039B2 publication Critical patent/JPH0661039B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Controls And Circuits For Display Device (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はメモリアクセス制御回路に係り、特にデイスプ
レイ装置のフレームメモリと主記憶の間のラスタオペレ
ーシヨンを含む描画を行うのに適したメモリアクセス制
御回路に関する。
Description: BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a memory access control circuit, and more particularly, to a memory access suitable for performing drawing including raster operation between a frame memory and a main memory of a display device. Regarding the control circuit.

〔従来の技術〕[Conventional technology]

近年、ICメモリやマイクロプロセツサ(以下CPUと
記す)の製造技術の発達により、低価格で高性能なビツ
トマツプ方式のデイスプレイ装置が普及してきた。これ
に伴ない、ビツトマツプ画面特有の豊かな表現能力を生
かすソフトウエアの開発も盛んに行なわれており、年々
それらソフトウエア財産の蓄積が進んでいる。
2. Description of the Related Art In recent years, due to the development of manufacturing technology of IC memories and microprocessors (hereinafter referred to as CPU), low-cost, high-performance bit map type display devices have become widespread. Along with this, development of software that makes full use of the rich expressive ability peculiar to Bitmap screens is being actively conducted, and the accumulation of such software assets is advancing year by year.

このようなビツトマツプ画面の操作の中で特有なものが
ラスタオペレーシヨン(以下ラスタOPと記す)とよば
れる演算操作である。これは画面上の画像データと別の
画像データを論理演算し、その演算結果を新たな画像デ
ータとするもので、この操作により画像の合成,重ね合
わせ,複元,色変化などの効果を得ることができる。初
期のビツトマツプデイスプレイ装置では、これらの演算
を全てCPUのソフトウエア処理で行つていた。しかし
ビツトマツプ画面の画素数の増加や画素の階調,色数の
増加に伴い、ラスタOPに必要な演算量は増加の一途を
たどつており、このため処理時間が問題となつてきた。
A particular operation among such operations on the bit map screen is a calculation operation called raster operation (hereinafter referred to as raster OP). This is a logical operation of image data on the screen and another image data, and the result of the operation is new image data. By this operation, effects such as image composition, superposition, duplication, and color change are obtained. be able to. In the early bit map display devices, all of these calculations were performed by the software processing of the CPU. However, as the number of pixels on the bit map screen increases, the number of gradations of pixels and the number of colors increase, the amount of calculation required for the raster OP continues to increase, which causes a problem in processing time.

この処理時間の問題を解決するため、従来より高速化の
ための技術が知られている。例えば特開昭58−209784号
公報に示されるのがこの技術である。第2図は上記従来
技術を示した図である。同図において1はビツトマツプ
デイスプレイ装置の描画制御を行うマイクロプロセツサ
(以下CPUと記す),7は主メモリ(メインストレー
ジ:以下MSと記す),6は画像データを記憶するフレ
ームバツフア(以下FBと記す),8は表示器(以下Di
SPと記す),12はCPU1のアドレスバス,11はCPU
1のデータバス,17はFB6のデータバス,22はデータ
バス切換えスイツチ,4はデータを一時蓄えるレジスタ
(ソースデータレジスタ:以下SREGと記す),5は論理
演算器(以下ALUと記す)である。
In order to solve this processing time problem, a technique for speeding up the process has been known. For example, this technique is disclosed in Japanese Patent Laid-Open No. 209784/1983. FIG. 2 is a diagram showing the above conventional technique. In the figure, 1 is a microprocessor (hereinafter referred to as CPU) for controlling drawing of a bit map display device, 7 is a main memory (main storage: hereinafter referred to as MS), and 6 is a frame buffer (hereinafter referred to as image data). FB), 8 is an indicator (hereinafter Di
12) CPU 1 address bus, 11 CPU
1 is a data bus, 17 is an FB6 data bus, 22 is a data bus switching switch, 4 is a register for temporarily storing data (source data register: hereinafter referred to as SREG), and 5 is a logical operation unit (hereinafter referred to as ALU). .

同図では簡単のため、FB6が1プレーンのときを表し
たものであるが、カラー表示や多階調表示のときには9
のように一点鎖線で囲んだ部分を単位として、この部分
を何枚か設ければよい。
For simplification, the drawing shows the case where the FB 6 is one plane, but when the FB 6 is in color display or multi-gradation display, it is 9
It is sufficient to provide some of these parts with the part surrounded by the one-dot chain line as a unit.

上記技術によれば、SREG4にあらかじめ書き込んだデー
タとデータバス18上のデータをALL5でラスタ演算し
た結果をFB6に書き込むことができる。一般にはFB
6を読み出すとバススイツチ22のAとCが接続され、F
B6からの読出しデータはデータバス17と18を経由して
SREG4に書き込まれるよう制御する。またFB6に書き
込み動作を行うとバススイツチ22のBとCが接続され、
CPU1の書き込みデータがデータバス11と18を経由し
てALU5に与えられ、SREG4のデータもデータバス19
を介してALU5に与えられるから、この2つのデータ
の演算結果がデータバス17を介してFB6に書き込まれ
る。CPU1の書き込みデータは2通り考えられる。1
つはMS7に記憶されたデータ、他の1つはFB6のデ
ータである。どちらの場合もデータはあらかじめCPU
1が読みとつておく。(FB6のデータはバススイツチ
22のAとBを接続することで読出すことができる。) 〔発明が解決しようとする問題点〕 上記従来技術は、FB6に対するラスタOPを行うこと
ができるが、MS7に対するラスタOPは行うことがで
きない。近年のビツトマツプ画面を扱うソフトウエアに
おいては、MS7の一部を仮想的なFBとみてMS7に
対して描画するものが多い。このため、FB6と同様、
MS7に対しても等しい描画性能が要求される。
According to the above-mentioned technique, it is possible to write the result of raster calculation of the data previously written in SREG4 and the data on the data bus 18 by ALL5 to FB6. Generally FB
When 6 is read, A and C of bus switch 22 are connected, and F
Read data from B6 via data buses 17 and 18
Control to write to SREG4. When the write operation is performed on FB6, B and C of the bus switch 22 are connected,
The write data of the CPU 1 is given to the ALU 5 via the data buses 11 and 18, and the data of the SREG 4 is also given to the data bus 19.
Since it is given to the ALU 5 via the, the calculation result of these two data is written to the FB 6 via the data bus 17. There are two possible write data for the CPU 1. 1
One is the data stored in the MS 7, and the other is the data in the FB 6. In either case, the data is already stored in the CPU
Read 1. (FB6 data is a bus switch
It can be read by connecting A and B of 22. [Problems to be Solved by the Invention] In the above-described conventional technique, raster OP for FB6 can be performed, but raster OP for MS7 cannot be performed. In recent years, in software that handles a bit map screen, most of the MS 7 is regarded as a virtual FB and drawn on the MS 7. Therefore, like FB6,
The same drawing performance is required for the MS7 as well.

すなわち、上記従来技術はMS7に対するラスタOPに
対して配慮がされていないため、FB6に描画するプロ
グラムはハードウエアを生かした高速描画ができるもの
の、MS7に対する描画は全てCPUのソフトウエア処
理によるラスタOPを行つたのちに描画しなければなら
ないという問題があつた。第2図では簡単のため、2値
のラスタOPを行う回路で説明したが、3値(すなわち
もう1組のデータバスがALU5に入力されているも
の)のラスタOPをMS7に対して行う場合にはソフト
ウエアの負担はFB6に対して描画する場合の5倍以上
に増大する。すなわち、FB6とMS7に対して対等の
描画を行えないのが第1の問題点である。
That is, since the prior art described above does not consider the raster OP for the MS 7, the program for drawing in the FB 6 can perform high-speed drawing by utilizing the hardware, but the drawing for the MS 7 is all raster OP by the software processing of the CPU. There was a problem that I had to draw after I did. In FIG. 2, a circuit for performing binary raster OP has been described for the sake of simplicity. However, in the case of performing ternary raster OP (that is, another set of data buses is input to ALU5) for MS7. However, the load on the software is more than five times as large as when drawing on the FB6. That is, the first problem is that the FB6 and the MS7 cannot be equally drawn.

次に、従来技術を用いたラスタOPでは、基本的にCP
U1はデータの転送を行うだけで所定の描画を行うこと
ができる。つまり演算はALU5が行うのであつてCP
U1は単にデータを移動させるのみである。一方、近年
のCPUでは連続して複数のデータを転送する命令(こ
れはストリング命令と呼ばれている)を備えたものが少
なくない。これはソース領域からデイステイネーシヨン
領域にデータ転送を行うもので、1命令で大量のデータ
を転送でき、命令実行中はデータ転送以外にデータバス
を使用しないことから高速の転送処理を行える利点があ
る。
Next, in the raster OP using the conventional technique, the CP is basically
U1 can perform predetermined drawing only by transferring data. In other words, the calculation is performed by the ALU5,
U1 simply moves the data. On the other hand, in recent years, many CPUs have an instruction (which is called a string instruction) for continuously transferring a plurality of data. This is to transfer data from the source area to the destination area. A large amount of data can be transferred with one instruction, and a high-speed transfer process can be performed because the data bus is not used for other than data transfer while the instruction is being executed. There is.

ところでラスタOPを行うには入力のデータとして2つ
(3値ラスタOPの場合は3つ)のデータが必要であ
る。したがつて1回のデータ転送命令でラスタOPを行
うためには少くとも2個以上のソースアドレスを示すパ
ラメータと1個のデイステイネーシヨンアドレスを示す
パラメータの計3個以上のパラメータ指定ができなけれ
ばならない。しかし現在あるCPUのストリング命令は
単にソース,デイステイネーシヨン各1個、計2個のパ
ラメータを示せるにすぎない。
By the way, in order to perform the raster OP, two pieces of data (three pieces in the case of the ternary raster OP) are required as input data. Therefore, in order to perform the raster OP with one data transfer instruction, at least two parameters indicating the source address and one parameter indicating the one destination address can be specified. There must be. However, the existing CPU string instructions can only indicate two parameters, one for the source and one for the destination.

このように従来技術では、CPUのストリング命令を利
用して高速のラスタOPを行うという考えに基いていな
いため、何ステツプにも及ぶ単体のデータ転送命令を組
み合せてラスタOPを行つていた。このため、ラスタO
Pの部分をハードウエアで構成しているにもかかわら
ず、何ステツプものデータ転送命令を実行するためのソ
フトウエアオーバヘツドにより最高の性能(バスの利用
率を最大にする)ことができないという問題があつた。
これが第2の問題点である。
As described above, in the conventional technique, since the high-speed raster OP is not performed by using the string instruction of the CPU, the raster OP is performed by combining the individual data transfer instructions for many steps. Therefore, raster O
The problem that the highest performance (maximizing the bus utilization rate) cannot be achieved due to the software overhead for executing many steps of data transfer instructions even though the P part is configured by hardware. I got it.
This is the second problem.

本発明の目的は、FBとMSの区別なくラスタOP処理
を行なえ、かつCPUのストリング命令で2値や3値の
ラスタOPのできるメモリアクセス制御回路を提供する
ことにある。
An object of the present invention is to provide a memory access control circuit which can perform raster OP processing without distinction between FB and MS and can perform binary or ternary raster OP with a string instruction of a CPU.

〔問題点を解決するための手段〕[Means for solving problems]

上記目的は、第1のALUの出力データバスを従来のF
Bに接続するパスの他にMSに接続するパスを設け、第
2にCPUのストリング命令で指定されるソース領域と
は別の他のソース領域を示すアドレスを発生するアドレ
スジエネレータ(以下AGと記す)と、CPUとAGの
発生するアドレスを切換えてMSに対するアクセスを制
御するアクセスコントローラ(以下AGと記す)を備え
ることにより達成される。
The above-mentioned purpose is to use the output data bus of the first ALU as a conventional F
An address generator (hereinafter referred to as AG) that provides a path to connect to the MS in addition to the path to connect to B and secondly generates an address indicating another source area different from the source area specified by the string instruction of the CPU. This is achieved by providing an access controller (hereinafter referred to as AG) that controls access to the MS by switching addresses generated by the CPU and AG.

〔作用〕[Action]

まずALUの出力データバスがMSのデータバスに接続
されるパスを設けることで、演算結果をMSに書き込む
(MSに描画する)ことができるようになる。またAG
の発生するアドレスはCPUのデータ転送をラスタOP
に利用する上で不足する第2(AGを更にもう一つ設け
れば第2,第3)のソース領域を示すことができる。
First, by providing a path in which the output data bus of the ALU is connected to the data bus of the MS, it becomes possible to write the operation result to the MS (draw on the MS). Also AG
The address generated by the
It is possible to indicate the second (second and third) source regions that are lacking in use in the above (if another AG is provided).

また、ストリング命令は読出し,書き込みが1つのペア
となり、このペアが繰り返し実行されてデータ転送を行
うが、この書き込みのタイミングをとらえて書き込み動
作終了直後にCPUを停止させ、前記のAGの示すアド
レスからデータを読み込み、このデータを蓄えた後にC
PUに制御を返せばCPUからみた動作は単にソース,
デイステイネーシヨン間のデータ転送であるにもかかわ
らず、2値,3値のラスタOP描画を行うことができ
る。
In addition, the string instruction is a pair of read and write, and this pair is repeatedly executed to transfer data. However, the timing of this write is caught, the CPU is stopped immediately after the end of the write operation, and the address indicated by the above-mentioned AG. After reading the data from and storing this data, C
If the control is returned to the PU, the operation seen from the CPU is simply the source,
Despite data transfer between days, binary and ternary raster OP drawing can be performed.

〔実施例〕〔Example〕

以下、本発明の第一の実施例を第1図,第3図〜第6図
により説明する。
A first embodiment of the present invention will be described below with reference to FIGS. 1 and 3 to 6.

第1図は本発明の第一の実施例の構成図である。同図に
おいて、1はCPU,2はアドレスジエネレータ(A
G),3はアドレスコントローラ(AC),7はメイン
ストレージ(MS),6はフレームバツフア(FB),
8は表示器(DiSP),4はソースのデータを一時格納す
るレジスタ(SREG),5はラスタOPをするための論理
演算器(ALU),21はCPU1のアドレスバス13とA
Gのアドレスバス14を切換えてMS7とFB6のアドレ
スバスに接続するアドレスバススイツチ,22はCPU1
のデータバス11とFB6のデータバス17を切換えて内部
データバス18に接続するデータバススイツチ,23はAL
U5のデータ出力20をFB6のデータバス17とMS7の
データバス11′に切換えるデータバススイツチ,24はC
PU1のデータバス11とMS7のデータバス11′を接続
か切断の状態にするためのデータバススイツチである。
FIG. 1 is a block diagram of the first embodiment of the present invention. In the figure, 1 is a CPU, 2 is an address generator (A
G), 3 is an address controller (AC), 7 is a main storage (MS), 6 is a frame buffer (FB),
8 is a display unit (DiSP), 4 is a register (SREG) for temporarily storing source data, 5 is a logical operation unit (ALU) for performing a raster OP, 21 is the address bus 13 and A of the CPU 1.
An address bus switch for switching the G address bus 14 to connect it to the MS7 and FB6 address buses, and 22 for the CPU 1
The data bus switch for switching the data bus 11 of 11 and the data bus 17 of the FB 6 to connect to the internal data bus 18, and 23 for AL
A data bus switch for switching the data output 20 of U5 to the data bus 17 of FB6 and the data bus 11 'of MS7, and 24 is C
A data bus switch for connecting or disconnecting the data bus 11 of PU1 and the data bus 11 'of MS7.

図中、ALU5にはALUとしてどのような演算(論理
和,論理積,否定およびそれらの組み合せ)を行うかを
指定する演算モードを記憶しておくレジスタを含む。ま
たAC3にはバススイツチ21〜24をCPU1の読出し,
書き込み動作に対応してどのように切換えるかを指定す
る動作モードレジスタを含む。
In the figure, the ALU 5 includes a register for storing a calculation mode that specifies what kind of calculation (logical sum, logical product, negation and combination thereof) as the ALU. In addition, the bus switches 21 to 24 are read out by the CPU 1 to the AC3,
It includes an operation mode register that specifies how to switch in response to a write operation.

次に動作を説明する。第3図は本発明の回路を用いたC
PU1の連続データ転送命令(ストリング命令)による
ラスタOP処理の実行フローである。2値のラスタOP
処理は2個のソースデータを演算し、結果をデイステイ
ネーシヨンに格納するものである。本実施例では、2つ
のソースデータおよびデイステイネーシヨンのデータが
MS7,FB6のいずれかにあつてもラスタOP処理を
CPUのストリング命令で実行できる。
Next, the operation will be described. FIG. 3 shows C using the circuit of the present invention.
It is an execution flow of raster OP processing by a continuous data transfer instruction (string instruction) of PU1. Binary raster OP
The process calculates two source data and stores the result in the destination. In the present embodiment, the raster OP process can be executed by the string instruction of the CPU even if the two source data and the data of the destination are in either MS7 or FB6.

はじめに2つのソースおよび1つのデイステイネーシヨ
ンが全てFB6にある場合を説明する。
First, the case where two sources and one destination are all in the FB6 will be described.

第4図はこの場合のデータの流れを第3図のフローに合
せて示した図である。第4図を参照しながら第3図を説
明する。第3図の1ラインラスタOP処理とは、複数の
データに対してラスタOPを行うことを示す。処理100
ではどのようなラスタOPをするかを設定する。つまり
ラスタOPの演算の種類をALU5内の演算モードレジ
スタ(図示せず)に設定し、かつ本例では2つのソース
(S0 300,S1 301)およびデイステイネーシヨン
(D302)がFB6に存在することをAC3内の動作モ
ードレジスタ(図示せず)に設定する。
FIG. 4 is a diagram showing the data flow in this case in accordance with the flow of FIG. FIG. 3 will be described with reference to FIG. The 1-line raster OP process in FIG. 3 indicates that the raster OP is performed on a plurality of data. Processing 100
Then, what kind of raster OP is performed is set. That is, the calculation type of the raster OP is set in the calculation mode register (not shown) in the ALU 5, and in this example, two sources (S0 300, S1 301) and a destination (D302) exist in the FB6. This is set in the operation mode register (not shown) in AC3.

処理101ではAG2を初期設定する。本例では、AG2
が発生するアドレスがS0 300のアドレスを示し、C
PU1の読み出しアドレスがS1 301のアドレスを示
し、CPU1の書き込みアドレスがD302のアドレスを
示すものとする。第5図はAG2の要部の具体的構成例
である。同図(a)は、AG2の発生するアドレスが連続
していればよいときに適するもので、アドレスの本数が
n+1本必要な場合にはn+1ビツトのプリセツト可能
なカウンタ(あるいはアツプダウンカウンタ)500でA
G2を構成したものである。同図(b)はAG2の発生す
るアドレスとして、あるオフセツト値ごとに離散的に増
(減)する値を必要とする場合に適する構成で、最新の
アドレス値を保持するアドレスレジスタ502と増減のキ
ザミを保持するオフセツトレジスタ501と加算器503から
成るものである。処理101では第5図(a)の場合ならカウ
ンタ500に領域S0 300の先頭アドレスをプリセツト
し、(b)の場合ならアドレスレジスタ502に領域S0 30
0の先頭アドレスを、またオフセツトレジスタ501にキザ
ミ幅の値を設定する。
In process 101, AG2 is initialized. In this example, AG2
Is the address of S0 300, and C
It is assumed that the read address of PU1 shows the address of S1 301 and the write address of CPU1 shows the address of D302. FIG. 5 shows a specific configuration example of the main part of AG2. The diagram (a) is suitable when the addresses generated by the AG2 are required to be consecutive. When the number of addresses required is n + 1, an n + 1-bit presettable counter (or up-down counter) 500 is required. And then A
This is a configuration of G2. FIG. 7B shows a configuration suitable for the case where a value that is discretely increased (decreased) for each offset value is required as an address generated by AG2, and the address register 502 that holds the latest address value and the increase / decrease It consists of an offset register 501 for holding a flaw and an adder 503. In the processing 101, in the case of FIG. 5 (a), the counter 500 is pre-set with the start address of the area S0 300, and in the case of FIG. 5 (b), the area S0 30 is stored in the address register 502.
The leading address of 0 is set, and the value of the scratch width is set in the offset register 501.

処理101が終了するとAC3はCPU1がAG2に設定
完了したことを検知して(AG2に対する書き込みをミ
ニタすることで検知できる)、CPU1に対し、バスの
解放を要求する。この要求にCPU1が応答するとAC
3はアドレスバススイツチ21を切換え、AとCを接続す
る(初期状態はBとCが接続されている)。これと同時
にAC3はデータバススイツチのAとCを接続する。そ
の後、処理200′として、AC3はAG2の出力するア
ドレスを用いて領域S0 300のデータを読出すととも
に、そのデータをSREG4にストアする。
When the processing 101 is completed, the AC3 detects that the CPU1 has completed setting the AG2 (it can be detected by miniaturizing the writing to the AG2), and requests the CPU1 to release the bus. When the CPU1 responds to this request, AC
3 switches the address bus switch 21 to connect A and C (B and C are connected in the initial state). At the same time, AC3 connects A and C of the data bus switch. After that, as a process 200 ', the AC3 reads the data in the area S0 300 using the address output from the AG2 and stores the data in the SREG4.

処理201′ではAC3は信号線15にパルスを送出し、A
G2のカウンタ500あるいはアドレスレジスタ502の値を
更新する。この処理の終了後、AC3はアドレスバスス
イツチ21のBとCを接続し、バスの制御権をCPU1に
返還する。
In process 201 ', AC3 sends a pulse to the signal line 15, and A3
The value of the counter 500 of G2 or the address register 502 is updated. After this processing is finished, the AC3 connects B and C of the address bus switch 21 and returns the control right of the bus to the CPU1.

処理102では、CPU1はストリング命令(複数データ
の連続転送命令)を行うためのCPU1内レジスタ、例
えばS1 301領域のアドレス値,D302領域のアドレス
値および転送するデータの数を保持するレジスタ(図示
せず)の初期設定を行う。
In process 102, the CPU 1 registers in the CPU 1 for executing a string instruction (a continuous transfer instruction of a plurality of data), for example, a register for holding the address value of the S1 301 area, the address value of the D302 area and the number of data to be transferred (not shown). No.) is initialized.

次の処理103〜105迄は単一のストリング命令の処理内容
である。処理103では、CPU1がFB6内のデータを
CPU1内部に読み出す。このとき、AC3はバススイ
ツチ22のAちBを接続してデータの経路を作成する。処
理104ではCPU1はいま内部にとり込んだデータをF
B6に書き込もうとする。このときAC3はバススイツ
チ22のBとCを接続し、CPU1からの書き込みデータ
をALU5の片側の入力に供給する経路を作る。ALU
5の他の入力には、SREG4の内容があらかじめ与えられ
ているので、ALU5の出力は結果的に領域S0 300
と領域S1 301のデータを処理100で設定したALU5
の論理演算モードにしたがつて演算したものとなる。A
C3はこのときバススイツチ23のAとCを接続してFB
6に対する書き込みデータの経路も作成する。ここまで
の処理で、第1回目のラスタOP処理が完了した。FB
6に対する書き込みを検出すると、AC3は次回のラス
タOPのために次のS0 300内のデータを書き込む作
業に移る。
The next processings 103 to 105 are processing contents of a single string instruction. In process 103, the CPU 1 reads the data in the FB 6 into the CPU 1. At this time, AC3 connects A and B of the bus switch 22 to create a data path. In process 104, the CPU 1 performs F
Attempt to write to B6. At this time, AC3 connects B and C of the bus switch 22 to form a path for supplying the write data from the CPU1 to the input on one side of the ALU5. ALU
Since the contents of SREG4 are previously given to the other inputs of A5, the output of ALU5 results in area S0 300.
And ALU5 set in the process 100 with the data of area S1 301
The operation is performed according to the logical operation mode of. A
At this time, C3 connects A and C of the bus switch 23 to FB.
A write data path for 6 is also created. With the processing up to this point, the first raster OP processing has been completed. FB
When the writing to 6 is detected, the AC 3 shifts to writing the data in the next S0 300 for the next raster OP.

処理200では、AC3はCPU1に対しバス解放の要求
を出し、バスの制御権を得る。次にアドレスバススイツ
チ21のAとCを接続し、またデータバススイツチ22のA
とCを接続してFB6の領域S0 300の内容を読み出
してSREG4にストアする。処理201では処理201′と同様
に、信号線15を用いてAG2のアドレスを領域S0 30
0の次の位置に更新するとともに、アドレスバススイツ
チ21のBとCを接続してバス制御権をAC3からCPU
1に戻す。処理200と200′,処理201と201′は、その処
理の起動条件が異るのみであとの処理内容は同一であ
る。すなわち、処理200′と201′はCPU1がAG2の
初期設定を完了したときに起動され、処理200と201はC
PU1がデータの書き込みを行つたことで起動される。
また、1ラインラスタOP処理においては、処理200′
と201′ははじめの第1回目のみの領域S0 300内デー
タ読み出しに用いられ、2回目以降は全て処理200,201
によつて読み出される。
In process 200, the AC3 issues a bus release request to the CPU1 and obtains control of the bus. Next, connect A and C of the address bus switch 21 and A of the data bus switch 22.
And C are connected to read the contents of the area S0 300 of the FB6 and store them in SREG4. In process 201, as in process 201 ′, the address of AG2 is set to the area S0 30 using the signal line 15.
The address is updated to the next position of 0, and B and C of the address bus switch 21 are connected to transfer the bus control right from AC3 to the CPU.
Return to 1. The processes 200 and 200 'and the processes 201 and 201' have the same process contents except that the starting conditions of the processes are different. That is, the processes 200 'and 201' are started when the CPU 1 completes the initialization of the AG2, and the processes 200 and 201 are C
It is activated when PU1 has written data.
In the 1-line raster OP process, the process 200 '
And 201 'are used for reading the data in the area S0 300 for the first time only, and all the processing 200, 201 for the second time and thereafter.
It is read by.

処理105はCPU1の内部処理である。ここでは処理102
で設定した、データ転送の繰り返し回数だけ転送が行わ
れたかをCPU1内部で判断し、所定の回数データ転送
が行われておれば処理を終らし、そうでなければ処理10
3に戻る。
Process 105 is an internal process of the CPU 1. Here, process 102
In the CPU 1, it is judged whether the data has been transferred the number of times of repeating the data transfer set in step 2. If the data has been transferred a predetermined number of times, the process is ended, and if not, the process 10
Return to 3.

ここで注目すべきは、実際にラスタOPが行われる処理
103〜105迄の中で、CPU1は1度も命令フエツチを行
わないことである。換言するとバスは100%データ転送
に利用できるため、そのバスに許される最も速い速度で
処理を行うことができる。
What should be noted here is the process in which the raster OP is actually performed.
In the steps 103 to 105, the CPU 1 never executes the instruction fetch. In other words, the bus is 100% available for data transfer, so it can be processed at the fastest speed allowed by the bus.

次に2つのソース及びデイステイネーシヨンの3つの格
納領域が全てMS7内に存在する場合の処理について、
第6図を参照しながら第3図で説明する。処理100で前
回と異るのは3つの領域がMS7にあることをAC3内
の動作モードレジスタに設定することである。
Next, regarding the processing in the case where all the three storage areas of the two sources and the day station exist in the MS 7,
This will be described with reference to FIG. 3 with reference to FIG. What differs from the last time in the process 100 is that the three areas in the MS7 are set in the operation mode register in the AC3.

処理101で行うことは前回と同じくAG2内の領域S0
300を示すアドレスの初期設定である。処理200′では
AG2の初期設定を起動条件として、AC3がまずバス
使用権を得る。次にAC3はアドレスバススイツチ21の
AとCを接続し、またデータバススイツチ22のBとC,
データバススイツチ24のAとB(これは通常接続された
状態にある)を接続状態にしてMS7内の領域S0 30
0のデータをSREG4にストアする。その後、処理201′で
AG2のアドレスを更新し、アドレスバススイツチのB
とCを接続してAC3は制御をCPU1に戻す。処理10
2では前回同様、ストリング命令の初期設定を行う。
What is done in process 101 is the area S0 in AG2 as in the previous time.
This is the initial setting of the address indicating 300. In process 200 ', the initial setting of AG2 is used as a starting condition, and AC3 first obtains the bus use right. Next, AC3 connects A and C of the address bus switch 21, and B and C of the data bus switch 22,
The area S0 30 in the MS 7 is set by connecting A and B of the data bus switch 24 (which is normally connected).
The data of 0 is stored in SREG4. After that, the address of AG2 is updated in processing 201 ', and B of the address bus switch is updated.
And C are connected and AC3 returns control to CPU1. Processing 10
In 2, the string commands are initialized as in the previous time.

処理103ではデータバススイツチ24のAとBが接続状態
にあるから、CPU1は領域S1 301のデータをCP
U1内部に読みこむ。処理104ではAC3はCPU1の
書き込みサイクルを検出してデータバススイツチ24のA
とBを切断,バススイツチ22のBとC,バススイツチ23
のBとCを接続状態にする。これにより、CPU1の書
き込みデータとSREG4内のデータがALU5で論理演算
され、その結果がMS7内の領域D 302に書き込まれ
る。書き込みが終了すると、AC3はバススイツチ23の
AとCを接続,バススイツチ24のAとBを接続状態にす
る。これで第1回目のラスタOPが完了した。
In process 103, since A and B of the data bus switch 24 are in the connected state, the CPU 1 sends the data of the area S1 301 to the CP.
Read inside U1. In the process 104, the AC3 detects the write cycle of the CPU1 and detects the A of the data bus switch 24.
Cut B and B, B and C of bus switch 22 and Bass switch 23
B and C are connected. As a result, the write data of the CPU 1 and the data in the SREG 4 are logically operated by the ALU 5, and the result is written in the area D 302 in the MS 7. When the writing is completed, the AC 3 connects A and C of the bus switch 23 and connects A and B of the bus switch 24. This completes the first raster OP.

MS7への書き込みを起動条件として処理200と処理201
が起動する。これらは処理200′,201′と同様の手続き
を経てMS7内の領域S0 300からデータを読み出
し、SREG4にストアする。処理105では処理の回数判定
をして所定回数だけ処理103〜105をくり返す。これによ
り、ソースおよびデイステイネーシヨンがすべてMS7
内にある場合でもストリング命令を用いたラスタOPが
実現できる。
Processing 200 and processing 201 with writing to MS7 as the start condition
Will start. These read data from the area S0 300 in the MS 7 through the same procedure as the processing 200 'and 201' and store it in SREG4. In process 105, the number of processes is determined and processes 103 to 105 are repeated a predetermined number of times. As a result, the source and day station are all MS7.
A raster OP using a string instruction can be realized even if it is inside.

領域S0 300,S1 301,D302がMS7およびFB
6内にある場合の組み合せは8通り考えられるが、これ
らはいままで述べた処理の部分を組み合せることにより
実現が可能である。それぞれに異るのはバススイツチ2
2,23,24をどのように切換えるかの違いのみであるた
め、説明を省略する。
Areas S0 300, S1 301, D302 are MS7 and FB
There are eight possible combinations when the number is within 6, but these can be realized by combining the processing parts described so far. Bass switch 2 is different for each
The only difference is how to switch 2, 23, and 24, so the description is omitted.

以上本発明の第1の実施例を説明したが、本実施例によ
れば1組のAG2,AC3とバススイツチ21〜24を設け
るだけで2値のラスタOPをCPU1のストリング命令
を用いてFB6,MS7に対して対等に行うことができ
るため、描画する領域のいかんにかかわらずバスの性能
を最高に引き出した描画を行える効果がある。
Although the first embodiment of the present invention has been described above, according to this embodiment, a binary raster OP is generated by using the string instruction of the CPU 1 by only providing one set of AG2, AC3 and the bus switches 21-24. Since it can be equally performed for the MS 7, there is an effect that drawing can be performed with the best performance of the bus regardless of the drawing area.

次に第7図,第8図により、本発明の第2の実施例を説
明する。第7図は本発明の第2の実施例のブロツク構成
図である。第1図の実施例が2値のラスタOPに適して
いるのに対し、第7図の実施例は3値のラスタOPに適
する。構成上の違いは、第7図では第1図に比べてA
G′2′およびSREG′4′が増えたこと、ALU5が3
値入力となつたこと、アドレスバススイツチ21の切換接
点A′が増えたことである。これに伴い、AC3の制御
が少し異る。第7図の構成による動作のフローを第8図
に示す。第3図の制御と異る点はAG′2′とSREG′
4′が増加した分の処理が追加になる点だけである。第
1の実施例で説明した動作をみれば当業者であれば容易
に3値のラスタOPに拡張できるので詳細な説明は省略
する。本実施例によれば3値のラスタOPをFB6とM
S7に対して対等かつ高速に行える。従来技術ではFB
6とMS7へは対等に描画できなかつたため、ソフトウ
エアを別々に開発しなければならず、FB6への処理に
比べ、MS7への処理は5倍以上の時間がかかつてい
た。本実施例を用いると、描画ソフトウエアをMS7,
FB6共通に開発でき、かつストリング命令によりバス
効率を100%近くにまであげて描画できるため、従来の
FB6に対するラスタOP描画の3倍以上、またMS7
に対しては15倍以上の高速化が図れるという効果があ
る。
Next, a second embodiment of the present invention will be described with reference to FIGS. FIG. 7 is a block diagram of the second embodiment of the present invention. The embodiment of FIG. 1 is suitable for a binary raster OP, whereas the embodiment of FIG. 7 is suitable for a ternary raster OP. The difference in structure is that in FIG.
Increase in G'2 'and SREG'4', ALU5 is 3
This means that the value is input and the number of switching contacts A'of the address bus switch 21 is increased. Along with this, the control of AC3 is slightly different. FIG. 8 shows a flow of the operation by the configuration of FIG. The difference from the control in Fig. 3 is AG'2 'and SREG'.
The only difference is that the additional processing for 4'is added. Those skilled in the art can easily expand the operation to the ternary raster OP by observing the operation described in the first embodiment, and thus detailed description thereof will be omitted. According to this embodiment, the ternary raster OP is FB6 and M.
It can be done at the same speed as S7. FB in the conventional technology
6 and MS7 could not be drawn equally, so the software had to be developed separately, and the processing for MS7 took 5 times or more the time for processing for FB6. Using this embodiment, the drawing software is MS7,
FB6 can be developed in common, and string instructions can be used to increase the bus efficiency to nearly 100%, so it is more than 3 times the raster OP drawing for conventional FB6, and MS7
There is an effect that the speed can be increased more than 15 times.

〔発明の効果〕〔The invention's effect〕

ラスタOPは画像の重ね合せ、強調づけなどに必須の機
能である。またMSへの描画は特にプリンタに出力する
画像の描画に多く用いられる。本発明によれば、表示器
に表示する画像の描画だけでなくプリンタに出力する画
像の描画も10倍以上高速化できるので、これをパーソナ
ルコンピユータやワードプロセツサに実施すれば、より
ユーザの待ち時間の少ない、応答性のよいシステムを構
成できる効果がある。
The raster OP is an essential function for superimposing and emphasizing images. Further, drawing on the MS is often used especially for drawing an image to be output to a printer. According to the present invention, not only the drawing of the image displayed on the display but also the drawing of the image output to the printer can be speeded up by a factor of 10 or more. There is an effect that a system with a short time and a good response can be configured.

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

第1図は本発明の第1の実施例を示す図、第2図は従来
例を示す図、第3図,第4図および第6図は第1の実施
例の動作説明図、第5図(a),(b)はアドレスジエネレー
タ部の構成の例を示す図、第7図は本発明の第2の実施
例を示す図、第8図は第2の実施例の動作説明図であ
る。 1…CPU、2…アドレスジエネレータ、3…アクセス
コントローラ、4…レジスタ、5…ALU、6…フレー
ムバツフア、7…メインストレージ、8…表示器、21…
アドレスバススイツチ、22〜24…データバススイツチ
FIG. 1 is a diagram showing a first embodiment of the present invention, FIG. 2 is a diagram showing a conventional example, and FIGS. 3, 4, and 6 are operation explanation diagrams of the first embodiment, and FIG. 7 (a) and 7 (b) are diagrams showing an example of the configuration of the address generator, FIG. 7 is a diagram showing a second embodiment of the present invention, and FIG. 8 is an operation explanatory diagram of the second embodiment. Is. 1 ... CPU, 2 ... Address generator, 3 ... Access controller, 4 ... Register, 5 ... ALU, 6 ... Frame buffer, 7 ... Main storage, 8 ... Display, 21 ...
Address bus switch, 22 to 24 ... Data bus switch

───────────────────────────────────────────────────── フロントページの続き (72)発明者 斎藤 賢一 神奈川県横浜市戸塚区吉田町292番地 株 式会社日立製作所マイクロエレクトロニク ス機器開発研究所内 (72)発明者 藤上 義弘 神奈川県横浜市戸塚区吉田町292番地 株 式会社日立製作所マイクロエレクトロニク ス機器開発研究所内 (72)発明者 小山 卓夫 神奈川県横浜市戸塚区吉田町292番地 株 式会社日立製作所マイクロエレクトロニク ス機器開発研究所内 ─────────────────────────────────────────────────── ─── Continuation of front page (72) Kenichi Saito Kenichi Saito, 292 Yoshida-cho, Totsuka-ku, Yokohama-shi, Kanagawa Hitachi, Ltd. Microelectronics Equipment Development Laboratory (72) Inventor Yoshihiro Fujikami Totsuka, Yokohama-shi, Kanagawa 292 Yoshida-cho, Tokyo, Hitachi, Ltd. Microelectronics equipment development laboratory (72) Inventor Takuo Koyama 292, Yoshida-cho, Totsuka-ku, Yokohama, Kanagawa Hitachi, Ltd. Microelectronics equipment development laboratory

Claims (3)

【特許請求の範囲】[Claims] 【請求項1】少なくともプロセツサと該プロセツサの命
令やデータを格納する第1のメモリ群と、表示手段に表
示するデータを格納する第2のメモリ群を持つシステム
において、論理演算手段と、該論理演算手段の出力を前
記第1,第2のメモリ群に切換えて接続する第1切換手
段と、アドレス発生手段と、該アドレス発生手段からの
アドレスと前記プロセツサが発生するアドレスとを切換
えて、前記第1,第2のメモリ群のアクセスを制御する
手段とからなるメモリアクセス制御回路。
1. A system comprising at least a processor, a first memory group for storing instructions and data of the processor, and a second memory group for storing data to be displayed on a display means, and a logical operation means and the logical operation means. The first switching means for switching and connecting the output of the arithmetic means to the first and second memory groups, the address generating means, the address from the address generating means and the address generated by the processor are switched, A memory access control circuit comprising means for controlling access to the first and second memory groups.
【請求項2】データを一時的に保持し、その出力が前記
論理演算手段に接続された、少なくとも一個のデータ保
持手段と、前記プロセツサのデータバス,前記第1のメ
モリ群のデータバス及び前記第2のメモリ群のデータバ
スを切換えて、該データ保持手段あるいは前記論理演算
手段に接続する第2切換手段と、前記第1のメモリ群の
データバスに、前記マイクロプロセツサのデータバスと
前記論理演算手段の出力を切換て接続する第3切換手段
とを有する特許請求の範囲第1項記載のメモリアクセス
制御回路。
2. A data holding means for temporarily holding data, the output of which is connected to the logical operation means, a data bus of the processor, a data bus of the first memory group, and the data bus of the first memory group. Second switching means for switching the data bus of the second memory group to connect to the data holding means or the logical operation means, the data bus of the first memory group, the data bus of the microprocessor and the data bus of the microprocessor. The memory access control circuit according to claim 1, further comprising a third switching means for switching and connecting the output of the logical operation means.
【請求項3】少なくともプロセツサと前記プロセツサの
命令やデータを格納する第1のメモリ群と、表示手段に
表示するデータを格納する第2のメモリ群をもつシステ
ムにおいて、前記第1および第2のメモリ群のアドレス
を発生する1系統以上のアドレス発生手段と、前記アド
レスを発生する手段により発生したアドレスに格納され
たデータを格納する1組以上のデータ格納手段と、論理
演算手段と、前記マイクロプロセツサのアドレスと前記
アドレス発生手段の発生するアドレスを切換えて前記第
1および第2のメモリ群のアドレス入力に接続する第1
切換接続手段と、前記データ格納手段あるいは前記論理
演算手段の入力に前記マイクロプロセツサのデータバス
と前記第1のメモリ群のデータバスと前記第2のメモリ
群のデータバスを切換えて接続する第2切換接続手段
と、前記第1のメモリ群のデータバスに前記マイクロプ
ロセツサのデータバスと前記論理演算手段の出力を切換
えて接続する第3切換接続手段と、前記第2のメモリ群
のデータバスに前記マイクロプロセツサのデータバスと
前記論理演算手段の出力を切換えて接続する第4切換接
続手段と、前記第1,第2,第3,第4切換接続手段を
制御する手段とを備えたことを特徴とするメモリアクセ
ス制御回路。
3. A system having at least a processor, a first memory group for storing instructions and data of the processor, and a second memory group for storing data to be displayed on a display means. One or more systems of address generating means for generating addresses of the memory group, one or more sets of data storing means for storing data stored at the addresses generated by the means for generating the addresses, logical operation means, and the micro A first connection for switching the address of the processor and the address generated by the address generating means and connecting to the address input of the first and second memory groups
A switching connection means, a data bus of the microprocessor, a data bus of the first memory group, and a data bus of the second memory group are connected to the input of the data storage means or the logical operation means by switching. 2 switch connection means, 3rd switch connection means for switching and connecting the data bus of the microprocessor and the output of the logical operation means to the data bus of the first memory group, and the data of the second memory group. A bus is provided with fourth switching connection means for switching and connecting the data bus of the microprocessor and the output of the logical operation means, and means for controlling the first, second, third and fourth switching connection means. A memory access control circuit characterized by the above.
JP62297536A 1987-11-27 1987-11-27 Memory access control circuit Expired - Lifetime JPH0661039B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62297536A JPH0661039B2 (en) 1987-11-27 1987-11-27 Memory access control circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62297536A JPH0661039B2 (en) 1987-11-27 1987-11-27 Memory access control circuit

Publications (2)

Publication Number Publication Date
JPH01140196A JPH01140196A (en) 1989-06-01
JPH0661039B2 true JPH0661039B2 (en) 1994-08-10

Family

ID=17847809

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62297536A Expired - Lifetime JPH0661039B2 (en) 1987-11-27 1987-11-27 Memory access control circuit

Country Status (1)

Country Link
JP (1) JPH0661039B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3164832B2 (en) * 1991-03-22 2001-05-14 株式会社日立製作所 Drawing control device

Also Published As

Publication number Publication date
JPH01140196A (en) 1989-06-01

Similar Documents

Publication Publication Date Title
US6553487B1 (en) Device and method for performing high-speed low overhead context switch
JPH02235156A (en) Information processor
JPH09212371A (en) Register saving and restoring system
JPH03288934A (en) Data transfer control system for virtual computer system
JPH07120338B2 (en) Method for a data processor to coordinate the execution of instructions by a coprocessor and the data processor
JPH0661039B2 (en) Memory access control circuit
JPH1083349A (en) Cache memory bank controller
JP2003108989A (en) Image processing processor and information processing system
JP2744152B2 (en) Data driven data processor
JP3277903B2 (en) Multi-window high-speed drawing apparatus and multi-window high-speed drawing method
JP2768352B2 (en) Graphic drawing processing system
JPS60250438A (en) Information processor
JP2003186666A (en) Microcomputer and dma control circuit
JPH0347536B2 (en)
JPH0683640A (en) Interruption response processing system
JPH04245333A (en) Information processor
JPH087714B2 (en) Cache control method
JPH0333954A (en) Information processor
JPS63233429A (en) Additional processor control system
JPS6120139A (en) Interruption control system
JPH06110855A (en) Multiprocessor
JPS5942331B2 (en) Prosetsusasouchinoseigiohoshiki
JPH05233523A (en) Inter-processor data transfer device
JP2000207227A (en) Arithmetic and logic unit
JPH0782456B2 (en) Cache control method