JPS61296448A - Data writing control system for electronic computer - Google Patents

Data writing control system for electronic computer

Info

Publication number
JPS61296448A
JPS61296448A JP60138403A JP13840385A JPS61296448A JP S61296448 A JPS61296448 A JP S61296448A JP 60138403 A JP60138403 A JP 60138403A JP 13840385 A JP13840385 A JP 13840385A JP S61296448 A JPS61296448 A JP S61296448A
Authority
JP
Japan
Prior art keywords
data
operand
write
address
queue
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP60138403A
Other languages
Japanese (ja)
Inventor
Toshikatsu Mori
俊勝 森
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.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP60138403A priority Critical patent/JPS61296448A/en
Publication of JPS61296448A publication Critical patent/JPS61296448A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To improve the reduction of processing in a bus cycle by forming both address and data comparators, a writing data queue and a control circuit and reducing the number of bus accesses to write data. CONSTITUTION:An operand writing address Adr calculated by an operand address calculating part 1 is sent to the writing data queue 7 together with data length dl and an address comparing result Z and set up in a blank queue. The coincidence/discrepancy between reading and writing operands is discriminated in each 16 bits corresponding to the external data bus width by a reading operand register 4 and a data comparator 5. The compared result C is inputted to a control circuit 6 through a signal line 109. On the basis of the control information of the writing data queue 7 and the data comparing result, the control circuit 6 controls V bits indicating the existence of data in the queue 7.

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は電子計算機の回路構成に関し、特に命令読取り
、解読、ならびに実行を並列に実行するパイプライン制
御構造の電子計算機における書込み制御方式に関する。
DETAILED DESCRIPTION OF THE INVENTION (Field of Industrial Application) The present invention relates to a circuit configuration of an electronic computer, and more particularly to a write control method in an electronic computer with a pipeline control structure that reads, decodes, and executes instructions in parallel.

(従来の技術) 従来、ミニコンピユータや大型電算機では処理速度を向
上させるために内部を並列に動作することが可能な機能
ユニットに分割し、命令の読取り、解読、オペランドの
読取シ、実行、ならびに結果の格納という一連の処理を
流れ作業的に実行する、いわゆるパイプライン方式が採
用されてきた。この場合、各ユニットごとの処理時間は
機能ユニットに分割しない場合に比べて短い時間で済ま
せることが可能であり、また各ユニットを並列に動作さ
せることが可能であるため、高速な処理が実現できる。
(Prior Art) Conventionally, in order to improve processing speed, minicomputers and large computers have been divided into functional units that can operate in parallel to read and decode instructions, read and execute operands, and A so-called pipeline method has been adopted, which executes a series of processes such as storing results and storing results in a flow-like manner. In this case, the processing time for each unit can be shorter than when it is not divided into functional units, and each unit can be operated in parallel, so high-speed processing can be achieved. .

一方、LSI技術の発達に伴って急速に発展してきたマ
イクロプロセサにおいても、集積度の向上により上述の
ようなパイプライン方式を取入i]、ることか可能にな
り、またデバイス技術の向上により高速なスイッチング
が可能になっていた。
On the other hand, even in microprocessors, which have developed rapidly with the development of LSI technology, improvements in the degree of integration have made it possible to incorporate the above-mentioned pipeline method. High-speed switching was possible.

(発明が解決しようとする問題点) 上述のようにマイクロプロセサはLSI技術により高速
化されてきだが、マイクロプロセサの高速化に伴って相
対的にバスサイクルが低下シ、バス速度によりマイクロ
プロセサの性能が抑えられてし壕うという問題が顕在化
してきた。バス速度を高め、マイクロプロセサの性能を
最大限に引出そうとするためKは、キャッシュメモリの
ような高価なハードウェアを付加しなければならない。
(Problems to be Solved by the Invention) As mentioned above, microprocessors have been made faster by LSI technology, but as the speed of microprocessors increases, the bus cycles decrease relatively, and the performance of microprocessors decreases depending on the bus speed. The problem of being suppressed and becoming entrenched has become apparent. In order to increase the bus speed and maximize the performance of the microprocessor, K must add expensive hardware such as cache memory.

本発明の目的は、バスアクセスの回数を減じて書込みケ
行うことによって上記欠点を除去し、バスサイクルによ
る処理の低下を改笹することができるように構成した電
子計算機のデータ1込み制御方式を提供することにある
SUMMARY OF THE INVENTION An object of the present invention is to provide a data one-input control method for an electronic computer, which eliminates the above-mentioned drawbacks by reducing the number of bus accesses and writing operations, and which is able to counteract the deterioration in processing caused by bus cycles. It is about providing.

(問題点を解決するための手段) 本発明による電子計算機のデータ書込み制御方式は少な
くとも命令解読、オペランドアクセス、ならびに命令実
行が並行に行われるパイプライン構造に採用されたもの
であり、アドレス比較回路と、データ比較回路と、書込
みデータキューと、制御回路とを具備して構成したもの
である。
(Means for Solving the Problems) The data writing control method for an electronic computer according to the present invention is adopted in a pipeline structure in which at least instruction decoding, operand access, and instruction execution are performed in parallel. , a data comparison circuit, a write data queue, and a control circuit.

アドレス比較回路は一つの命令中におけるオペランドの
読取りアドレスと書込みアドレスとの一致を検出するた
めのものでおり、データ比較回路は命令における読取り
オペランドと曹込みオペランドとを外部データバスのデ
ータ幅で比較するためのものである。
The address comparison circuit is for detecting a match between the read address and write address of the operand in one instruction, and the data comparison circuit is for comparing the read operand and the write operand in the instruction using the data width of the external data bus. It is for the purpose of

書込みデータキューは曹込みオペランドとそのアドレス
、語長、ならびに制御情報を含むものである。
The write data queue contains the write operand and its address, word length, and control information.

制御回路は、書込みデータキュー内の制御情報を制御す
るためのものである。
The control circuit is for controlling control information in the write data queue.

本発明は上記構成において、書込みオペランドの語長が
外部データバス幅以上であり、且つ、読取りオペランド
と一致する部分があった場合には上記部分のメモリへの
書込みを省略することができるように構成したものであ
る。
In the above configuration, if the word length of the write operand is equal to or greater than the width of the external data bus, and there is a portion that matches the read operand, writing of the portion to the memory can be omitted. It is composed of

(実施例) 次に、本発明について図面を参照して説明する。(Example) Next, the present invention will be explained with reference to the drawings.

第1図は、本発明による電子計算機のデータ書込み制御
方式の一実施例を示すブロック図である。
FIG. 1 is a block diagram showing an embodiment of a data write control method for an electronic computer according to the present invention.

本実施例では、16ビツトの外部データバスを備え、3
2ビツトの内部データ処理単位を有するマイクロプロセ
サを想定している。第1図において、1はオペランドア
ドレス計算部、2は読取リアドレスレジスタ、5はアド
レス比較器、4け読取りオペランドアクスメ、5はデー
タ比較器、6は制御回路、7は誉込みデータキュー、1
0は命令解読部、20は命令実行部である。
In this embodiment, a 16-bit external data bus is provided, and 3
A microprocessor with a 2-bit internal data processing unit is assumed. In FIG. 1, 1 is an operand address calculation unit, 2 is a read read address register, 5 is an address comparator, 4-digit read operand axis, 5 is a data comparator, 6 is a control circuit, 7 is an honorable data queue, 1
0 is an instruction decoding section, and 20 is an instruction execution section.

第1図において、書込みデータキュー7は同一の構造を
もつ2つのレジスタで構成され、それぞれ制御情報(Z
、V)、書込みアドレス(Adr)、書込みデータ長(
dl)、ならびに曹込谷データ(Data)を記憶する
In FIG. 1, the write data queue 7 consists of two registers with the same structure, each containing control information (Z
, V), write address (Adr), write data length (
dl) and Sogodani data (Data).

信号線10B上、ならびに書込みデータキューT内のZ
は読取りオペランドと書込みオペランドとのアドレスが
一致していることを・示す情報で、誓込みアドレスなら
びに曹込みデータ長とともに命令解読部10より伝えら
れる。
Z on signal line 10B and in write data queue T
is information indicating that the addresses of the read operand and write operand match, and is transmitted from the instruction decoder 10 together with the pledge address and the draft data length.

イ3号線104上、ならびに書込みデータキュー7内の
イル号Vは書込みデータが入っていることを示す情報で
あり1通常、命令実行部10から書込みオペランドが伝
えられると% 1 #になり、メモリへの書込みが終了
すると%0IV(lなる。
The I3 number V on the A3 line 104 and the ILE number V in the write data queue 7 is information indicating that write data is contained.1 Normally, when a write operand is transmitted from the instruction execution unit 10, it becomes %1 #, and the memory When writing to %0IV(l is completed).

オペランドアドレス計算部1は命令解読部10に置かれ
ているオペランドアドレス計算手段であり、ここでオペ
ランドの読取)/書込みアドレスが命令実行部20での
命令実行に先立って計算される。オペランドの読取りア
ドレスは一時的に読取りアドレスレジスタ2にラッチさ
れ、オペランドの書込みアドレス計算時にはアドレス比
較器3により書込みアドレスと一致しているか否か判断
される。
The operand address calculation section 1 is an operand address calculation means placed in the instruction decoding section 10, and the read/write address of the operand is calculated here before the instruction execution section 20 executes the instruction. The read address of the operand is temporarily latched in the read address register 2, and when calculating the write address of the operand, it is determined by the address comparator 3 whether or not it matches the write address.

オペランドアドレス計算部1で計算逼ノ1だオペランド
の書込みアドレスはデータ長dlやアドレス比較結果2
とともに書込みデータキュー7に送出され、書込みデー
タキュー7の空いている方のレジスタにセットされる。
The operand address calculation unit 1 calculates the operand write address based on the data length dl and address comparison result 2.
It is also sent to the write data queue 7, and set in an empty register in the write data queue 7.

書込みデータキュー1のデータレジスタは16ビツトよ
シ成り、データ長が32ビツトである場合にはデータは
書込みデータキュー7の2つのレジスタに16ピツトス
つセットされる。
The data register of write data queue 1 consists of 16 bits, and when the data length is 32 bits, data is set in two registers of write data queue 7 with 16 bits.

読取リオペランドレジスタ4およびデータ比較器5によ
り、読取りオペランドと書込みオペランドとが一致して
いるか否かが判断される。なお、データの比較は外部デ
ータバス幅に相当する16ビツト単位で行われる。比較
結果Cは信号線109を介して制御回路6に入力される
。書込みデータキュー1の制御情報およびデータ比較結
果により、制御回路6は書込みデータキュー7における
データの有無を示すVビットを制御する。
A read operand register 4 and a data comparator 5 determine whether the read and write operands match. Note that data comparison is performed in units of 16 bits, which corresponds to the external data bus width. The comparison result C is input to the control circuit 6 via the signal line 109. Based on the control information of the write data queue 1 and the data comparison result, the control circuit 6 controls the V bit indicating the presence or absence of data in the write data queue 7.

第2図は制御回路6が書込みデータキュー7の制御情報
(Z)、データ長(dA’)、ならびにデータ比較器5
からの比較結果Cにより、どのようにVビットを制御す
るかを示した説明図である。
FIG. 2 shows that the control circuit 6 inputs the control information (Z) and data length (dA') of the write data queue 7, as well as the data comparator 5.
FIG. 3 is an explanatory diagram showing how to control the V bit based on the comparison result C from the above.

第1表において、2はオペランドアドレスの一致を示す
情報であシ、10Iのときに不一致、%11のときに一
致を表わす。diはオペランドのデータ長を表わす情報
であり、%OOlのときに1バイト、%01 lのとき
に2バイト % 11 Nのときに4バイトを表わす。
In Table 1, 2 is information indicating a match between the operand addresses; 10I indicates a mismatch, and %11 indicates a match. di is information representing the data length of the operand; %OOl represents 1 byte, %01l represents 2 bytes, %11 N represents 4 bytes.

Cは2バイト単位のオペランドの一致を表わす情報であ
り、%Olは不一致を表わし、111は一致を表わす。
C is information representing a match between operands in units of 2 bytes, %Ol represents a mismatch, and 111 represents a match.

Vl、V2は書込みデータキュー7にデータが存在する
が否かを示す情報であり、101はデータなしを表わし
、%11はデータありを表わす。
Vl and V2 are information indicating whether data exists in the write data queue 7, 101 represents no data, and %11 represents data present.

第2(!Iを参照すると、例えばアドレスが一致し、オ
ペランドのデータ長が32ビツトの場合(Z=1idl
=11)に、読込みオペランドと書込みオペランドの上
位16ビツトと下位16ビツトとがともに等しい(C=
11)の場合には、Vビットは%a1のままであるため
、メモリへの誓込みは行われない。下位16ビツトのみ
が等しい(C=01)の場合には、最初に使用されるべ
きレジスタのVビット(Vl)のみが%11になシ、次
に使用されるはずであったレジスタのVビット(V2)
は%Olになる。上位16ビツトのみが等しい場合には
、最初に使用されるはずであったレジスタのVビット(
Vl)は%Olになり、次に使用されるはずであるレジ
スタのVビット754’l#になる。
Referring to the second (!I), for example, if the addresses match and the operand data length is 32 bits (Z=1idl
=11), the upper 16 bits and lower 16 bits of the read and write operands are both equal (C=
In case 11), the V bit remains at %a1, so no commitment to memory is made. If only the lower 16 bits are equal (C=01), only the V bit (Vl) of the register that should be used first is %11, and the V bit of the register that should be used next (V2)
becomes %Ol. If only the upper 16 bits are equal, the V bit (
Vl) becomes %Ol, which becomes the V bit 754'l# of the register that should be used next.

斯かる場合、メモリへの書込み動作は一回だけ行われる
。上位16ビツトと下位16ビツトとが等しくない場合
には、Vl 、V2の両ビットはともに亀1〃になり、
メモリへの書込み動作は二回だけ行われる。
In such a case, the write operation to the memory is performed only once. If the upper 16 bits and lower 16 bits are not equal, both bits Vl and V2 will be 1,
Write operations to memory are performed only twice.

本例においては、データ長dlについては変更を加えて
いない。これはdlの下位1ビツトをみれば1バイトを
アクセスするか、あるいは2バイトをアクセスするかが
容易に判別できるからである。
In this example, no change is made to the data length dl. This is because by looking at the lower 1 bit of dl, it can be easily determined whether 1 byte or 2 bytes are to be accessed.

(発明の効果) 以上説明したように本発明は、同一のアドレスを有する
オペランドに対して読み/Wき動作を行う場合に、読取
9時のデータと書込み時のデータとを比較し、変更のあ
った部分についてのみ実際の書込みを行うことによυ、
特に内部処理のデータ幅と外部バスのデータ幅とが異な
るマイクログロセサ(例えば、内部処理を32ビツトデ
一タ幅で行い、外部データバスが8ビツトあるいは16
ビツトであるようなプロセサ)において、バスアクセス
回数を低減し、処理速度を高めることができるという効
果がある。
(Effects of the Invention) As explained above, the present invention compares the data at the time of reading and the data at the time of writing when performing a read/write operation on operands having the same address, and changes are made. By actually writing only the parts that were there υ,
In particular, a microgrocer whose internal processing data width and external bus data width are different (for example, internal processing is performed with a 32-bit data width, and the external data bus is 8-bit or 16-bit data width)
This has the effect of reducing the number of bus accesses and increasing processing speed in (bit processors).

【図面の簡単な説明】[Brief explanation of the drawing]

第1図は、本発明による電子計算機のデータ書1・・・
オペランドのアドレス酊算部 2・・・読取りアドレスレジスメ 3・・・アドレス比較器 411・・読取りオペランドレジスタ 5・・・データ比較器 6・m−制御回路 1・・・書込みデータキュー 10・・・命令解読部 20・・・命令実行部 101〜103−−−バ ス 104〜110・・・信号線 特許田願入 日本電気株式会社 代理人 弁理士 井ノ ロ   壽 第2図
FIG. 1 shows a data document 1 of an electronic computer according to the present invention.
Operand address adjustment unit 2...Read address register 3...Address comparator 411...Read operand register 5...Data comparator 6.m-control circuit 1...Write data queue 10...・Instruction decoding unit 20...Instruction execution unit 101-103---Bus 104-110...Signal line patent application NEC Corporation representative Patent attorney Hisashi Inoro Figure 2

Claims (1)

【特許請求の範囲】[Claims] 少なくとも命令解読、オペランドアクセス、ならびに命
令実行が並行に行われるパイプライン構造の電子計算機
のデータ書込み制御方式であつて、一つの命令中におけ
るオペランドの読取りアドレスと書込みアドレスとの一
致を検出するためのアドレス比較回路と、前記命令にお
ける読取りオペランドと書込みオペランドとを外部デー
タバスのデータ幅で比較するためのデータ比較回路と、
書込みオペランドとそのアドレス、語長、ならびに制御
情報を含む書込みデータキューと、前記書込みデータキ
ュー内の制御情報を制御するための制御回路とを具備し
、書込みオペランドの語長が外部データバス幅以上であ
り、且つ、読取りオペランドと一致する部分があつた場
合には前記部分のメモリへの書込みを省略することがで
きるように構成したことを特徴とする電子計算機のデー
タ書込み制御方式。
A data write control method for an electronic computer with a pipeline structure in which at least instruction decoding, operand access, and instruction execution are performed in parallel, and for detecting a match between a read address and a write address of an operand in one instruction. an address comparison circuit; and a data comparison circuit for comparing a read operand and a write operand in the instruction using the data width of an external data bus;
A write data queue including a write operand, its address, word length, and control information, and a control circuit for controlling the control information in the write data queue, and the word length of the write operand is greater than or equal to the width of an external data bus. 1. A data write control method for an electronic computer, characterized in that, if there is a portion that matches a read operand, writing of said portion to memory can be omitted.
JP60138403A 1985-06-25 1985-06-25 Data writing control system for electronic computer Pending JPS61296448A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP60138403A JPS61296448A (en) 1985-06-25 1985-06-25 Data writing control system for electronic computer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60138403A JPS61296448A (en) 1985-06-25 1985-06-25 Data writing control system for electronic computer

Publications (1)

Publication Number Publication Date
JPS61296448A true JPS61296448A (en) 1986-12-27

Family

ID=15221140

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60138403A Pending JPS61296448A (en) 1985-06-25 1985-06-25 Data writing control system for electronic computer

Country Status (1)

Country Link
JP (1) JPS61296448A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05143323A (en) * 1991-01-30 1993-06-11 Internatl Business Mach Corp <Ibm> Method and apparatus for executing type-1 diadic instruction

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05143323A (en) * 1991-01-30 1993-06-11 Internatl Business Mach Corp <Ibm> Method and apparatus for executing type-1 diadic instruction

Similar Documents

Publication Publication Date Title
EP0368332B1 (en) Pipeline data processor
KR940009094B1 (en) Data processing system
US4398245A (en) Data processing system having an instruction pipeline for processing a transfer instruction
US5155817A (en) Microprocessor
JPS61107434A (en) Data processor
US5802359A (en) Mapping processor state into a millicode addressable processor state register array
US4750110A (en) Method and apparatus for executing an instruction contingent upon a condition present in another data processor
US4992932A (en) Data processing device with data buffer control
US4670836A (en) Device for detecting an overlap of operands to be accessed
JPH0527971A (en) Information processor
JPS6014338A (en) Branch mechanism for computer system
US5051894A (en) Apparatus and method for address translation of non-aligned double word virtual addresses
US5742842A (en) Data processing apparatus for executing a vector operation under control of a master processor
CA2060137C (en) Circuit for executing conditional branch instructions in pipeline process
JP2690406B2 (en) Processor and data processing system
KR910001708B1 (en) Central processing unit
US8583897B2 (en) Register file with circuitry for setting register entries to a predetermined value
JPS61296448A (en) Data writing control system for electronic computer
JPH02123442A (en) Accelerated memory
US5829049A (en) Simultaneous execution of two memory reference instructions with only one address calculation
JP2003202981A (en) Address range checking circuit and method of operation
JP2667851B2 (en) Information processing device
JPH0377137A (en) Information processor
US6289439B1 (en) Method, device and microprocessor for performing an XOR clear without executing an XOR instruction
JP2877468B2 (en) Electronic computer