JPH11328001A - Information processor - Google Patents

Information processor

Info

Publication number
JPH11328001A
JPH11328001A JP13691498A JP13691498A JPH11328001A JP H11328001 A JPH11328001 A JP H11328001A JP 13691498 A JP13691498 A JP 13691498A JP 13691498 A JP13691498 A JP 13691498A JP H11328001 A JPH11328001 A JP H11328001A
Authority
JP
Japan
Prior art keywords
data
read
instruction
register
reading
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
JP13691498A
Other languages
Japanese (ja)
Inventor
Jiro Miyake
二郎 三宅
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP13691498A priority Critical patent/JPH11328001A/en
Publication of JPH11328001A publication Critical patent/JPH11328001A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To enhance the processing performance by executing a following instruction before completion of data read without increasing the number of write ports of a register file at the time of reading out plural data from a memory device by one instruction. SOLUTION: When the instruction decoded by a decoder 1 is an instruction to read out plural data, plural read data are stored in latches L0 to L3 of a read data holding circuit 6, and data are read out from the latch corresponding to a designated read register to perform the operation in following instructions. Correspondence between latches L0 to L3 and registers is designated by the write destination register number of the multiple data read instruction. Storage on read data into latches L0 to L3 and update of a register file 2 due to a following instruction are performed in parallel in this manner, thereby the processing performance is enhanced.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、複数のデータをメ
モリ装置より読み出して演算を行う情報処理装置に関す
る。
The present invention relates to an information processing apparatus for reading a plurality of data from a memory device and performing an operation.

【0002】[0002]

【従来の技術】近年の電子技術の発展により、マイクロ
コンピュータをはじめとして情報処理装置が普及し、あ
らゆる分野で用いられている。
2. Description of the Related Art With the recent development of electronic technology, information processing devices such as microcomputers have become widespread and used in all fields.

【0003】従来、情報処理装置では、処理性能を向上
させるためにパイプライン処理を行うことが多い。パイ
プライン処理とは、1つの命令の処理を複数のステージ
に分け、これらのステージをずらして複数の命令を並列
に実行するものである。
Conventionally, information processing apparatuses often perform pipeline processing in order to improve processing performance. The pipeline processing divides the processing of one instruction into a plurality of stages, and shifts these stages to execute a plurality of instructions in parallel.

【0004】図11は従来の情報処理装置の構成を示す
ブロック図であり、101はメモリ装置140から読み
出した命令120を解読するデコーダであり、解読した
デコード結果113,114、および命令内に含まれる
即値121を出力する。
FIG. 11 is a block diagram showing a configuration of a conventional information processing apparatus. Reference numeral 101 denotes a decoder for decoding an instruction 120 read from a memory device 140, and the decoded results 113 and 114, which are included in the instruction. An immediate 121 is output.

【0005】102は演算に用いるデータを格納するレ
ジスタを複数有するレジスタファイル、103はレジス
タファイル102から読み出されたデータ110,11
1またはデコーダ101が出力する即値121を用いて
演算を行う演算装置、104は、デコーダ101により
命令を解読したデコード結果113に応じて、データを
メモリ装置140から読み出したり、データをメモリ装
置140へ書き込んだりするための制御を行うメモリ制
御回路、105は、デコーダ101において命令を解読
したデコード結果114に応じて、演算装置103ある
いはレジスタファイル102などを制御する実行制御回
路である。
[0005] Reference numeral 102 denotes a register file having a plurality of registers for storing data used for calculation, and 103 denotes data 110 and 11 read from the register file 102.
1 or an arithmetic unit 104 that performs an operation using the immediate value 121 output from the decoder 101. The arithmetic unit 104 reads data from the memory device 140 or sends data to the memory device 140 in accordance with a decoding result 113 obtained by decoding an instruction by the decoder 101. A memory control circuit 105 for performing control for writing or the like is an execution control circuit for controlling the arithmetic unit 103 or the register file 102 according to a decoding result 114 obtained by decoding an instruction in the decoder 101.

【0006】前記従来の情報処理装置において、例えば
1つの命令を5つのステージに分けてパイプライン処理
する場合を説明する。
A description will be given of a case where, in the conventional information processing apparatus, for example, one instruction is divided into five stages and pipelined.

【0007】5つのステージは、命令フェッチステージ
(以下、IFステージという),命令デコードステージ(以
下、DECステージという),演算ステージ(以下、EXステ
ージという),メモリステージ(以下、MEMステージとい
う),書き込みステージ(以下、WBステージという)から
なる。IFステージにおいてメモリ装置140から命令を
読み出し、読み出した命令120をDECステージにおい
てデコーダ101が解読する。
The five stages are an instruction fetch stage
(Hereinafter referred to as IF stage), instruction decode stage (hereinafter referred to as DEC stage), operation stage (hereinafter referred to as EX stage), memory stage (hereinafter referred to as MEM stage), and write stage (hereinafter referred to as WB stage). . The instruction is read from the memory device 140 in the IF stage, and the read instruction 120 is decoded by the decoder 101 in the DEC stage.

【0008】解読した命令が演算命令の場合は、EXステ
ージにおいてレジスタファイル102から読み出したデ
ータ110,111、またはデコーダ101が出力する
即値121を用いて、命令により指定された演算を行
う。演算した結果はWBステージにおいて命令により指定
されたレジスタファイル102中のレジスタへ格納され
る。
If the decoded instruction is an operation instruction, the operation specified by the instruction is performed using the data 110 and 111 read from the register file 102 or the immediate value 121 output from the decoder 101 in the EX stage. The result of the operation is stored in the register in the register file 102 specified by the instruction in the WB stage.

【0009】また、解読された命令がデータ読み出し命
令あるいはデータ書き込み命令である場合は、EXステー
ジにおいて演算装置103はレジスタファイル102か
ら読み出したデータ110,111、または命令によっ
て与えられる即値121を用いて、メモリ装置140内
の場所を示すアドレス115を生成してメモリ制御回路
104へ出力する。
If the decoded command is a data read command or a data write command, the arithmetic unit 103 uses the data 110 and 111 read from the register file 102 or the immediate value 121 given by the command in the EX stage. , An address 115 indicating a location in the memory device 140 and output to the memory control circuit 104.

【0010】そして、解読された命令がデータ読み出し
命令の場合は、メモリ制御回路104はMEMステージに
おいて演算装置103が出力するアドレス115をアド
レス116として出力し、メモリ装置140よりデータ
を読み出し、読み出されたデータ117はレジスタファ
イル102を与えられ、WBステージでレジスタファイル
102内の指定されたレジスタへ格納される。また解読
された命令がデータ書き込み命令の場合は、レジスタフ
ァイル102から読み出されたデータ118がMEMステ
ージでメモリ装置140へ与えられ、同時にメモリ制御
回路104は、演算装置103が出力するアドレス11
5をアドレス116としてメモリ装置140へ与え、WB
ステージにアドレス116で指定される場所へデータ1
18が格納される。
If the decoded instruction is a data read instruction, the memory control circuit 104 outputs the address 115 output by the arithmetic unit 103 as the address 116 in the MEM stage, and reads and reads data from the memory device 140. The data 117 given is given to the register file 102 and stored in a designated register in the register file 102 in the WB stage. If the decoded instruction is a data write instruction, the data 118 read from the register file 102 is given to the memory device 140 in the MEM stage, and at the same time, the memory control circuit 104
5 to the memory device 140 as an address 116,
Data 1 to the location specified by address 116 in the stage
18 is stored.

【0011】図12に前記従来の情報処理装置のパイプ
ライン動作の例を示す。図12では4つの命令を実行し
ている様子を示しており、r0,r1,r2,r4はレジス
タファイル102の中のレジスタの名前である。また、
(r4)はレジスタr4の値をアドレスとして指定されるメ
モリ装置内のデータを示す。第1命令および第3命令は
データ読み出し命令ldであり、第2命令および第4命令
は加算命令addである。
FIG. 12 shows an example of a pipeline operation of the conventional information processing apparatus. FIG. 12 shows a state in which four instructions are being executed, and r0, r1, r2, and r4 are the names of the registers in the register file 102. Also,
(r4) indicates data in the memory device designated by using the value of the register r4 as an address. The first instruction and the third instruction are data read instructions ld, and the second instruction and the fourth instruction are addition instructions add.

【0012】第1命令ldは、レジスタr4の値をアドレ
スとしてメモリ装置140からデータを読み出し、レジ
スタr0へ格納する。第2命令addは、レジスタr2の値
と「1」を加算し、加算結果をレジスタr2に格納す
る。第3命令ldは、レジスタr4の値に「4」を加算
し、その結果をアドレスとしてメモリ装置140からデ
ータを読み出し、レジスタr1に格納する。第4命令add
は、レジスタr2の値と「1」を加算し、加算結果をレ
ジスタr2に格納する。
The first instruction ld reads data from the memory device 140 using the value of the register r4 as an address and stores the data in the register r0. The second instruction add adds the value of the register r2 to “1” and stores the addition result in the register r2. The third instruction ld adds “4” to the value of the register r4, reads data from the memory device 140 using the result as an address, and stores the data in the register r1. 4th instruction add
Adds the value of the register r2 to “1” and stores the addition result in the register r2.

【0013】各命令は、IF,DEC,EX,MEM,WBの5つの
ステージに分割され、各ステージが1クロックサイクル
の期間に実行される。4つの命令は1ステージずつずら
して並列に実行される。したがって、1つ1つの命令の
処理には5クロックサイクルが必要であるが、このよう
なパイプライン処理を行うことによって、命令の結果を
毎サイクル得ることができ、高い処理性能を実現するこ
とができる。
Each instruction is divided into five stages of IF, DEC, EX, MEM, and WB, and each stage is executed during one clock cycle. The four instructions are executed in parallel, shifted by one stage. Therefore, processing of each instruction requires five clock cycles. By performing such pipeline processing, a result of an instruction can be obtained every cycle, and high processing performance can be realized. it can.

【0014】[0014]

【発明が解決しようとする課題】画像あるいは音声のデ
ータを処理する場合、大量のデータをメモリ装置から読
み出して、高速に処理しなければならない。画像データ
あるいは音声データは、メモリ装置上のアドレスに連続
して格納されている場合が多く、連続したデータを複数
まとめて読み出すことができれば、効率よく高速に処理
することが可能になる。
When processing image or audio data, a large amount of data must be read from a memory device and processed at high speed. In many cases, image data or audio data is continuously stored in addresses on a memory device. If a plurality of continuous data can be read out at a time, efficient and high-speed processing can be performed.

【0015】図13に複数データ読み出し命令により複
数のデータを読み出して演算に用いる場合の動作例を示
す。図13において、第1命令ldqは複数データ読み出
し命令であり、レジスタr4の値を先頭アドレスとして
メモリ装置140から4つの連続するデータD0,D1,
D2,D3を読み出し、4つのレジスタr0,r1,r2,r
3に格納する。第3命令から第6命令の4つの加算命令
で4つのレジスタr0,r1,r2,r3のデータを加算し
て、合計の値をレジスタr5へ格納する。複数データ読
み出し命令ldqの書き込みステージは、4つのステージW
B0,WB1,WB2,WB3からなり、それぞれのステージ
にメモリ装置140から読み出されたデータD0,D1,
D2,D3がそれぞれレジスタr0,r1,r2,r3へ書き
込まれる。
FIG. 13 shows an operation example in the case where a plurality of data are read by a plurality of data read command and used for the operation. In FIG. 13, the first instruction ldq is a multiple data read instruction, and four consecutive data D0, D1,
Read D2 and D3, four registers r0, r1, r2, r
3 is stored. The data of the four registers r0, r1, r2, and r3 are added by four addition instructions from the third instruction to the sixth instruction, and the total value is stored in the register r5. The write stage of the multiple data read instruction ldq has four stages W
B0, WB1, WB2, WB3, and data D0, D1, read from the memory device 140 at each stage.
D2 and D3 are written to registers r0, r1, r2 and r3, respectively.

【0016】第2命令movは、値「0」をレジスタr5へ
格納するが、第1命令ldqによるレジスタへのデータの
格納がすべて終わるまで、「0」をレジスタr5へ格納
することができない。これは、レジスタファイル102
の書き込みポートが1つで、同時に2つのデータを書き
込むことができないためである。このように、複数デー
タ読み出し命令を用いることにより、1つの命令によっ
て複数のデータを読み出すことができるが、読み出した
複数のデータすべてをレジスタへ格納するまで、後続の
命令のWBステージを実行することができず、処理性能の
向上があまり得られないという問題があった。
The second instruction mov stores the value "0" in the register r5, but cannot store "0" in the register r5 until all the data has been stored in the register by the first instruction ldq. This is the register file 102
Is a single write port and cannot write two data at the same time. As described above, by using the multiple data read instruction, a plurality of data can be read by one instruction. However, the WB stage of the subsequent instruction must be executed until all of the plurality of read data is stored in the register. However, there is a problem that the processing performance cannot be improved much.

【0017】そこで、複数データ読み出しによりメモリ
装置から複数のデータを同時に読み出し、複数のデータ
を複数のレジスタへ同時に書き込むようにすれば、すぐ
に後続の命令の処理を行うことができて、処理性能の向
上を図ることができる。ところが、複数のデータを同時
に複数のレジスタへ書き込むためには、レジスタファイ
ルの書き込みポートを複数にする必要があり、回路規模
が増大するという問題があった。
Therefore, if a plurality of data are simultaneously read from a memory device by reading a plurality of data and a plurality of data are simultaneously written to a plurality of registers, processing of a subsequent instruction can be performed immediately, and processing performance can be improved. Can be improved. However, in order to write a plurality of data to a plurality of registers at the same time, it is necessary to provide a plurality of register file write ports, which causes a problem of an increase in circuit scale.

【0018】また、レジスタのビット数より少ないビッ
ト数のデータを複数読み出す場合、例えばレジスタのビ
ット数が32ビットであって、8ビットのデータを4つ
読み出す場合には、4つの8ビットデータが連結された
ものを32ビットのデータとして読み出し、その32ビ
ットのデータを1つのレジスタへ格納した後、いくつか
の命令を用いて8ビットずつ取り出して処理を行うよう
にしている。この場合、8ビットのデータを32ビット
のレジスタから取り出す複数の命令が必要であって、こ
のために処理性能の低下を来すという問題があった。
When a plurality of data having a smaller number of bits than the number of bits of the register are read, for example, when the number of bits of the register is 32 bits and four data of 8 bits are read, four 8-bit data are read. The concatenated data is read out as 32-bit data, the 32-bit data is stored in one register, and then processed by taking out 8 bits at a time using some instructions. In this case, a plurality of instructions for extracting 8-bit data from a 32-bit register are required, which causes a problem that processing performance is reduced.

【0019】さらに、複数のデータを読み出して複数の
レジスタに格納する場合には、その前に複数のレジスタ
に保持していたデータをメモリ装置などに一旦退避さ
せ、複数データ読み出し命令により読み出したデータの
処理が終わった後、メモリ装置へ退避させていたデータ
をレジスタへ復帰させる必要があり、このため処理性能
の低下を来すという問題があった。
Further, when a plurality of data are read and stored in a plurality of registers, the data previously held in the plurality of registers is temporarily saved in a memory device or the like, and the data read by a plurality of data read commands is read. After the above processing is completed, it is necessary to restore the data saved in the memory device to the register, which causes a problem that the processing performance is reduced.

【0020】本発明は、前記従来における課題に鑑み、
メモリから複数のデータを読み出す命令を実行しても、
複数のデータのすべての読み出しが完了する前に後続の
命令の実行を可能にし、処理性能の高い情報処理装置を
提供することを目的とする。
The present invention has been made in view of the above-mentioned conventional problems,
Even if you execute an instruction to read multiple data from memory,
It is an object of the present invention to provide an information processing device that enables execution of a subsequent instruction before reading of all of a plurality of data is completed, and has high processing performance.

【0021】[0021]

【課題を解決するための手段】前記課題を解決するた
め、本発明の情報処理装置は、複数のデータを格納する
メモリ装置と、データを格納するレジスタを複数有する
レジスタファイルと、与えられたデータを用いて演算を
行う演算手段と、命令を解読し、解読結果と、解読した
命令が複数データ読み出し命令である場合に、複数デー
タ読み出し信号を出力する命令解読手段と、前記命令解
読手段が出力する解読結果に応じて、前記演算手段によ
る演算と前記レジスタファイルに対するデータの読み出
し、および書き込みを制御する命令実行制御手段と、前
記複数データ読み出し信号が与えられると、前記メモリ
装置から複数のデータを読み出すメモリ制御手段と、前
記複数データ読み出し信号に従って、前記メモリ装置か
ら読み出された複数のデータを保持するデータ保持手段
と、前記データ保持手段に保持されたデータのうち、前
記解読結果により指示される読み出しレジスタに対応す
るデータを読み出し、データ選択信号を出力するデータ
読み出し手段と、前記データ選択信号に従って、前記レ
ジスタファイルから読み出したデータ、あるいは前記デ
ータ保持手段から読み出されたデータを選択して前記演
算手段へ出力するデータ選択手段とを備えたことを特徴
とする。
In order to solve the above problems, an information processing apparatus according to the present invention comprises: a memory device for storing a plurality of data; a register file having a plurality of registers for storing the data; And an instruction decoding means for decoding the instruction, decoding the instruction, and outputting a multiple data read signal when the decoded instruction is a multiple data read instruction. Command execution control means for controlling the operation by the operation means and the reading and writing of data from and to the register file in accordance with the decoding result to be read; Memory control means for reading, and a plurality of data read from the memory device according to the plurality of data read signals. A data holding unit for holding data, a data reading unit for reading data corresponding to a read register indicated by the decoding result from among the data held in the data holding unit, and outputting a data selection signal; Data selecting means for selecting data read from the register file or data read from the data holding means according to a selection signal and outputting the selected data to the arithmetic means.

【0022】また、本発明の情報処理装置は、複数のデ
ータを格納するメモリ装置と、データを格納するレジス
タを複数有するレジスタファイルと、与えられたデータ
を用いて演算を行う演算手段と、命令を解読し、解読結
果と、解読した命令が複数データ読み出し命令である場
合に、複数データ読み出し信号を出力する命令解読手段
と、前記命令解読手段が出力する解読結果に応じて、前
記演算手段による演算と前記レジスタファイルに対する
データの読み出し、および書き込みを制御する命令実行
制御手段と、前記複数データ読み出し信号が与えられる
と、前記メモリ装置から複数のデータを読み出すメモリ
制御手段と、前記複数データ読み出し信号に従って、前
記メモリ装置から読み出した複数のデータを保持するデ
ータ保持手段と、前記データ保持手段にデータが格納さ
れたことを示すデータ有効フラグと、前記データ保持手
段に保持されたデータのうち、前記解読結果により指示
される読み出しレジスタに対応するデータを読み出し、
データ選択信号を出力するデータ読み出し手段と、前記
データ選択信号に従って、前記レジスタファイルから読
み出したデータ、あるいは前記データ保持手段から読み
出されたデータを選択して前記演算手段へ出力するデー
タ選択手段とを備え、前記データ読み出し手段は、前記
データ保持手段からデータを読み出すときに、前記デー
タ有効フラグによってデータが前記データ保持手段に格
納されていないことが示された場合に、実行停止信号を
出力して命令の処理を停止させることを特徴とする。
Also, the information processing apparatus of the present invention has a memory device for storing a plurality of data, a register file having a plurality of registers for storing the data, an arithmetic means for performing an arithmetic operation using given data, And, in the case where the decoded result is a multiple data read instruction, a command decoding means for outputting a multiple data read signal, and the arithmetic means in accordance with the decryption result output by the command decode means. Command execution control means for controlling operation and reading and writing of data to and from the register file; memory control means for reading a plurality of data from the memory device when the plurality of data read signals are provided; Data holding means for holding a plurality of data read from the memory device, A data valid flag indicates that the data in the serial data holding means is stored, among the data held in the data holding means, it reads the data corresponding to the read register indicated by the decoding result,
Data reading means for outputting a data selection signal, and data selection means for selecting data read from the register file or data read from the data holding means and outputting the selected data to the arithmetic means according to the data selection signal. The data reading unit outputs an execution stop signal when reading data from the data holding unit, when the data valid flag indicates that data is not stored in the data holding unit. To stop the processing of the instruction.

【0023】また、本発明の情報処理装置は、複数のデ
ータを格納するメモリ装置と、データを格納するレジス
タを複数有するレジスタファイルと、与えられたデータ
を用いて演算を行う演算手段と、命令を解読し、解読結
果と、解読した命令が複数データ読み出し命令である場
合に、複数データ読み出し信号を出力する命令解読手段
と、前記命令解読手段が出力する解読結果に応じて、前
記演算手段による演算と前記レジスタファイルに対する
データの読み出しおよび書き込みを制御する命令実行制
御手段と、前記複数データ読み出し信号が与えられる
と、前記メモリ装置から複数のデータを読み出して、デ
ータバス上へ出力させるメモリ制御手段と、データのサ
イズに従って、前記データバスの特定の位置からデータ
取り出して出力するデータ取り出し手段と、前記複数デ
ータ読み出し信号に従って、前記データ取り出し手段が
出力する複数のデータを保持するデータ保持手段と、前
記データ保持手段に保持されたデータのうち、前記解読
結果により指示される読み出しレジスタに対応するデー
タを読み出し、データ選択信号を出力するデータ読み出
し手段と、前記データ選択信号に従って、前記レジスタ
ファイルから読み出したデータ、あるいは前記データ保
持手段から読み出されたデータを選択して前記演算手段
へ出力するデータ選択手段とを備えたことを特徴とす
る。
Further, the information processing apparatus of the present invention has a memory device for storing a plurality of data, a register file having a plurality of registers for storing the data, an arithmetic means for performing an arithmetic operation using given data, And, in the case where the decoded result is a multiple data read instruction, a command decoding means for outputting a multiple data read signal, and the arithmetic means in accordance with the decryption result output by the command decode means. Command execution control means for controlling operations and reading and writing of data to and from the register file; and memory control means for reading a plurality of data from the memory device and outputting the data to a data bus when the plurality of data read signals are provided. And takes out data from a specific position on the data bus according to the size of the data and outputs the data. Data extracting means, data holding means for holding a plurality of data output by the data extracting means in accordance with the plurality of data read signals, and, among the data held in the data holding means, designated by the decryption result. Reading data corresponding to a read register and outputting a data selection signal; and selecting and reading data read from the register file or data read from the data holding means according to the data selection signal. Data selecting means for outputting to the calculating means.

【0024】[0024]

【発明の実施の形態】以下、本発明の実施の形態につい
て、図1〜図10を参照して説明する。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Embodiments of the present invention will be described below with reference to FIGS.

【0025】図1は本発明の第1実施形態における情報
処理装置の構成を示すブロック図であり、1は、メモリ
装置40から読み出した命令20を解読し、かつ解読し
たデコード結果13,14および命令20内に含まれる
即値21を出力するデコーダ、2は演算に用いるデータ
を格納するレジスタを複数有するレジスタファイル、3
は与えられたデータ10,11またはデコーダ1が出力
する即値21を用いて演算を行う演算装置、4は、デコ
ーダ1のデコード結果13に応じて、データをメモリ装
置40から読み出したり、データをメモリ装置40へ書
き込んだりするための制御を行うメモリ制御回路、5
は、デコーダ1のデコード結果14に応じて、演算装置
3,レジスタファイル2などを制御する実行制御回路、
6は、4つのラッチL0,L1,L2,L3と選択回路30
とを備え、複数データ読み出し命令によってメモリ装置
40から読み出したデータを一時的に保持する読み出し
データ保持回路であって、メモリ装置40から読み出さ
れた4つのデータは、ラッチL0,L1,L2,L3に格納
される。
FIG. 1 is a block diagram showing the configuration of an information processing apparatus according to a first embodiment of the present invention. In FIG. 1, reference numeral 1 denotes an instruction for decoding an instruction 20 read from a memory device 40, and decode results 13, 14 and A decoder for outputting an immediate 21 included in the instruction 20; a register file 2 having a plurality of registers for storing data used for the operation;
Is an arithmetic unit that performs an operation using given data 10 and 11 or an immediate 21 output by the decoder 1. The arithmetic unit 4 reads data from the memory device 40 or stores data in the memory 40 in accordance with the decoding result 13 of the decoder 1. A memory control circuit for controlling writing to the device 40;
Is an execution control circuit that controls the arithmetic unit 3, the register file 2, and the like according to the decoding result 14 of the decoder 1,
6 includes four latches L0, L1, L2, L3 and a selection circuit 30.
And a read data holding circuit for temporarily holding data read from the memory device 40 by a multiple data read command, wherein the four data read from the memory device 40 are latches L0, L1, L2, Stored in L3.

【0026】22および23は、それぞれ選択信号3
5,36に従って、読み出しデータ保持回路6の選択回
路30から出力されたデータ、あるいはレジスタファイ
ル2から出力されたデータのいずれかを選択して演算装
置3へ入力データ10,11として出力する選択回路、
31は、読み出し制御信号32を選択回路30に出力し
て、4つのラッチL0〜L3に格納されたデータを読み出
すと同時に、選択信号35,36を出力するデータ読み
出し制御回路である。
Reference numerals 22 and 23 indicate selection signals 3
A selection circuit that selects either the data output from the selection circuit 30 of the read data holding circuit 6 or the data output from the register file 2 and outputs the selected data to the arithmetic unit 3 as the input data 10 and 11 in accordance with 5, 36. ,
Reference numeral 31 denotes a data read control circuit that outputs a read control signal 32 to the selection circuit 30 to read data stored in the four latches L0 to L3, and outputs selection signals 35 and 36 at the same time.

【0027】図2は前記データ読み出し制御回路31の
構成を示すブロック図であり、33はラッチL0〜L3に
格納されるデータに対応するレジスタの情報を保持する
レジスタ情報回路、E0,E1,E2,E3はそれぞれラッ
チL0,L1,L2,L3に格納されたデータを読み出すか
否かを示す読み出しイネーブルビット、34は、デコー
ド結果26によってレジスタの読み出しが要求される
と、対応するデータがラッチL0〜L3に保持されていれ
ば読み出し制御信号32を出力して読み出し、同時に選
択信号35,36を出力する制御回路である。
FIG. 2 is a block diagram showing the configuration of the data read control circuit 31. Reference numeral 33 denotes a register information circuit for holding register information corresponding to data stored in latches L0 to L3, and E0, E1, and E2. , E3 are read enable bits indicating whether data stored in the latches L0, L1, L2, L3 are to be read, respectively. When a register read is requested by the decode result 26, the corresponding data is latched in the latch L0. A control circuit that outputs the read control signal 32 if it is held at L3 and outputs the select signals 35 and 36 at the same time.

【0028】この第1実施形態においても、図11〜図
13に示す従来例と同様に、IFステージ,DECステー
ジ,EXステージ,MEMステージ、およびWBステージの5
つのステージに分けて命令を処理する。複数データ読み
出し命令以外のデータ読み出し,データ書き込み、およ
び演算命令は従来と同様に処理される。
In the first embodiment, as in the conventional example shown in FIGS. 11 to 13, five stages of the IF stage, the DEC stage, the EX stage, the MEM stage, and the WB stage are used.
Processes instructions in two stages. Data read, data write, and operation instructions other than the multiple data read instruction are processed in the same manner as in the related art.

【0029】複数データ読み出し命令の処理について説
明する。複数データ読み出し命令は、指定したアドレス
を用いてメモリから複数のデータを読み出し、読み出し
たデータを読み出しデータ保持回路6の複数のラッチL
0〜L3に格納する。従来例では読み出された複数のデ
ータはレジスタファイルへ格納されるが、第1実施形態
ではレジスタファイルへは格納されない。複数データ読
み出し命令には書き込み先のレジスタ番号が含まれ、読
み出しデータ保持回路6に保持されたデータには書き込
み先レジスタが対応付けられる。それ以降の命令におい
て、対応付けられたレジスタが読み出しレジスタとして
指定されると、読み出しデータ保持回路6から対応する
データが読み出される。
The processing of a multiple data read command will be described. The multiple data read command reads a plurality of data from the memory using the designated address, and reads the read data from the plurality of latches L of the data holding circuit 6.
Store it in 0 to L3. In a conventional example, a plurality of read data are stored in a register file, but in the first embodiment, they are not stored in a register file. The multiple data read instruction includes the register number of the write destination, and the data held in the read data holding circuit 6 is associated with the write destination register. In the subsequent instructions, when the associated register is designated as a read register, the corresponding data is read from the read data holding circuit 6.

【0030】図1,図2を参照して複数データ読み出し
命令の動作を説明する。例えば、複数データ読み出し命
令ldq(r4),r0は、レジスタr4を先頭アドレスとし
て、4つの連続するデータを読み出す命令であり、読み
出された4つのデータはラッチL0〜L3に格納される。
書き込み先レジスタとしてr0が指定されており、ラッ
チL0〜L3はそれぞれレジスタr0〜r3に対応付けられ
る。この命令ldqがメモリ装置40から読み出されると
デコーダ1によって解読されて、解読したデコード結果
13,14,26および複数データ読み出し信号27が
出力される。メモリ制御回路4は、複数データ読み出し
信号27が与えられると、MEMステージにおいて演算装
置3から出力されたアドレス15をメモリ装置40へア
ドレス16として出力し、メモリ装置40に対して複数
データの読み出しを要求する。データ読み出し制御回路
31の読み出しイネーブルビットE0〜E3は、複数デー
タ読み出し信号27が与えられるとすべて「1」にセッ
トされる。
The operation of the multiple data read instruction will be described with reference to FIGS. For example, the multiple data read instruction ldq (r4), r0 is an instruction to read four consecutive data with the register r4 as the start address, and the four read data are stored in the latches L0 to L3.
R0 is specified as the write destination register, and the latches L0 to L3 are associated with the registers r0 to r3, respectively. When the instruction ldq is read from the memory device 40, it is decoded by the decoder 1, and the decoded results 13, 14, 26 and the multiple data read signal 27 are output. When the multiple data read signal 27 is given, the memory control circuit 4 outputs the address 15 output from the arithmetic unit 3 to the memory device 40 as the address 16 in the MEM stage, and reads the multiple data from the memory device 40. Request. The read enable bits E0 to E3 of the data read control circuit 31 are all set to "1" when the multiple data read signal 27 is given.

【0031】複数データ読み出し命令ldqの場合、WBス
テージは複数のステージに分けられる。例えば4つのデ
ータを読み出す場合には、4つのステージWB0,WB1,
WB2,WB3に分けられ、それぞれのステージにデータ
を、1つずつ読み出しデータ保持回路6のラッチL0,L
1,L2,L3に順に格納される。
In the case of the multiple data read instruction ldq, the WB stage is divided into a plurality of stages. For example, to read four data, four stages WB0, WB1,
The data is divided into WB2 and WB3, and the data is read to each stage one by one.
1, L2, and L3.

【0032】レジスタファイル2のレジスタの個数をr
0〜r7の8個とすると、ldq命令において書き込み先レ
ジスタとして指定されるのは、r0〜r3あるいはr4〜r
7の2種類である。したがって、データ読み出し制御回
路31のレジスタ情報回路33は書き込み先レジスタの
情報として1ビットの情報を保持する。すなわち、書き
込み先レジスタとしてr0〜r3が指定された場合には
「0」が、またr4〜r7が指定された場合には「1」がそれ
ぞれ格納される。この指定はデコード結果26に含まれ
ている。命令ldq(r4),r0の場合はレジスタ情報回路
33には「0」が格納される。
The number of registers in the register file 2 is represented by r
Assuming that there are eight registers from 0 to r7, the ldq instruction specifies the write destination registers as r0 to r3 or r4 to r4.
7 types. Therefore, the register information circuit 33 of the data read control circuit 31 holds 1-bit information as information of the write destination register. That is, "0" is stored when r0 to r3 are specified as the write destination registers, and "1" is stored when r4 to r7 are specified. This designation is included in the decoding result 26. In the case of the instructions ldq (r4), r0, “0” is stored in the register information circuit 33.

【0033】複数データ読み出し命令ldqの以降の命令
の実行においては、読み出しイネーブルビットE0〜E3
およびレジスタ情報回路33に保持されている値が用い
られる。複数データ読み出し命令ldqの以降の命令のデ
コード結果26には読み出しレジスタの番号が含まれて
おり、制御回路34は、この読み出しレジスタの番号
と、レジスタ情報回路33に保持されている値と、読み
出しイネーブルビットE0〜E3とを用いて、実行する命
令がラッチL0〜L3のデータを使うのか否かの判断を行
う。レジスタ情報回路33に保持されている値が「0」
の場合には、読み出しレジスタがr0〜r3であり、対応
する読み出しイネーブルビットE0〜E3の値が「1」で
あれば、読み出しレジスタに対応したラッチL0〜L3の
データが用いられる。
In the execution of the instruction following the multiple data read instruction ldq, the read enable bits E0 to E3
The value held in the register information circuit 33 is used. The decode result 26 of the instruction subsequent to the multiple data read instruction ldq includes the number of the read register. The control circuit 34 reads the read register number, the value held in the register information circuit 33, Using the enable bits E0 to E3, it is determined whether the instruction to be executed uses the data of the latches L0 to L3. The value held in the register information circuit 33 is “0”
In this case, if the read registers are r0 to r3 and the values of the corresponding read enable bits E0 to E3 are "1", the data of the latches L0 to L3 corresponding to the read registers is used.

【0034】ラッチL0〜L3のデータを用いる場合、制
御回路34は読み出し制御信号32を選択回路30に出
力して読み出しレジスタに対応するラッチL0〜L3を読
み出す。同時に制御信号35,36を選択回路22,2
3へ出力し、読み出したラッチL0〜L3のデータを演算
装置3へ出力するように指示する。ラッチL0〜L3が読
み出された後、対応する読み出しイネーブルビットE0
〜E3が「0」にリセットされる。読み出しイネーブル
ビットE0〜E3の値が「0」の場合、対応するラッチL
0〜L3は読み出されない。すなわち、複数データ読み
出し命令の後、ラッチL0〜L3はそれぞれ1回だけ読み
出され、その後はレジスタファイル2から読み出され
る。
When using the data of the latches L0 to L3, the control circuit 34 outputs a read control signal 32 to the selection circuit 30 to read the latches L0 to L3 corresponding to the read register. At the same time, control signals 35 and 36 are applied to selection circuits 22 and 2
3 and instructs the arithmetic unit 3 to output the read data of the latches L0 to L3. After the latches L0-L3 are read, the corresponding read enable bit E0
~ E3 is reset to "0". When the value of the read enable bits E0 to E3 is “0”, the corresponding latch L
0 to L3 are not read. That is, each of the latches L0 to L3 is read only once after the multiple data read command, and thereafter read from the register file 2.

【0035】図3のタイミング図を参照して複数データ
読み出し命令を用いた例を具体的に説明する。第1命令
は4データ読み出し命令ldqである。レジスタr0の値A
を先頭アドレスとして、連続する4つの32ビットデー
タD0,D1,D2,D3を読み出す。読み出された4つの
データは書き込みステージWB0,WB1,WB2,WB3にそ
れぞれ1データずつ、読み出しデータ保持回路6におけ
る4つのラッチL0,L1,L2,L3にそれぞれ格納され
る。ldq命令の書き込み先はレジスタr0となっているた
め、4つのラッチL0〜L3はそれぞれレジスタr0〜r3
に対応付けられる。メモリ装置40から読み出された4
つのデータは、ラッチL0〜L3に格納されるだけであっ
て、レジスタr0〜r3へは格納されない。
An example in which a multiple data read instruction is used will be specifically described with reference to the timing chart of FIG. The first instruction is a four data read instruction ldq. Value A of register r0
, The four consecutive 32-bit data D0, D1, D2, D3 are read. The four read data are stored in the write stages WB0, WB1, WB2, and WB3, one data each, and are stored in the four latches L0, L1, L2, and L3 of the read data holding circuit 6, respectively. Since the write destination of the ldq instruction is the register r0, the four latches L0 to L3 are stored in the registers r0 to r3, respectively.
Is associated with. 4 read from the memory device 40
The two data are only stored in the latches L0 to L3, but are not stored in the registers r0 to r3.

【0036】したがって、次の命令のWBステージとldq
命令のWB0〜WB3ステージとが重なっても、次の命令は
待たされることなくレジスタファイル2へデータを書き
込むことができる。第3,第4,第5,第6命令addは
加算命令であり、それぞれ演算に用いる読み出しレジス
タにはr0,r1,r2,r3が指定されており、対応する
読み出しイネーブルビットE0〜E3が「1」であるた
め、レジスタr0〜r3の代わりにラッチL0〜L3が読み
出されて、レジスタr4の値と加算されて結果がレジス
タr4へ格納される。したがって、第3,第4,第5,
第6命令addによって、4つのデータD0,D1,D2,D
3が加算され、合計の値がレジスタr4に書き込まれる。
Therefore, the WB stage of the next instruction and ldq
Even if the instruction WB0 to WB3 stages overlap, the next instruction can write data to the register file 2 without waiting. The third, fourth, fifth, and sixth instructions add are addition instructions, and r0, r1, r2, and r3 are specified in the read registers used for the operations, respectively, and the corresponding read enable bits E0 to E3 are set to "0". Since it is "1", the latches L0 to L3 are read instead of the registers r0 to r3, added to the value of the register r4, and the result is stored in the register r4. Therefore, the third, fourth, fifth and fifth
By the sixth instruction add, four data D0, D1, D2, D
3 is added, and the total value is written to the register r4.

【0037】ラッチL0〜L3が読み出された後、読み出
しイネーブルビットE0〜E3はそれぞれ「0」にリセッ
トされ、ldq命令の後、2回目以降のレジスタr0〜r3
の読み出しの場合には、ラッチL0〜L3ではなくレジス
タr0〜r3の値が読み出される。第7命令addの読み出
しレジスタはr0であり、このとき、読み出しイネーブ
ルビットE0は「0」であるため、レジスタr0の値が読
み出され、これに値「16」が加算されて結果がレジスタ
r0に格納される。このとき、レジスタr0から読み出さ
れた値は第1命令ldqの以前に格納されていた値Aであ
る。
After the latches L0 to L3 are read, the read enable bits E0 to E3 are reset to "0", respectively, and after the ldq instruction, the second and subsequent registers r0 to r3
In this case, the values of the registers r0 to r3 are read instead of the latches L0 to L3. The read register of the seventh instruction add is r0. At this time, since the read enable bit E0 is “0”, the value of the register r0 is read, and the value “16” is added to the result.
Stored in r0. At this time, the value read from the register r0 is the value A stored before the first instruction ldq.

【0038】このように、本実施例においては、複数デ
ータ読み出し命令によってメモリ装置40から複数デー
タを読み出しても、これをレジスタファイル2に格納し
ないため、メモリ装置40からの読み出しの完了を待た
ずに次の命令を実行することができる。さらに、複数デ
ータ読み出し命令のWBステージと以降の命令のWBステー
ジとが重なっても、レジスタファイル2の書き込みポー
トを増やすことなく、両方のWBステージを同時に実行す
ることができ、レジスタファイル2の回路を増加するこ
となく、処理性能を向上させることができる。また、複
数データ読み出し命令によってレジスタファイル2のデ
ータは書き換えることはできないため、予めレジスタフ
ァイル2のデータをメモリ装置40へ退避させる必要が
なく、処理性能の低下を防ぐことができる。特にレジス
タファイル2のレジスタの個数が少ない情報処理装置に
おいては有効である。
As described above, in the present embodiment, even if a plurality of data are read from the memory device 40 by a plurality of data read commands, they are not stored in the register file 2, so that the completion of reading from the memory device 40 is not waited for. The next instruction can be executed. Furthermore, even if the WB stage of the multiple data read instruction and the WB stage of the subsequent instructions overlap, both WB stages can be executed simultaneously without increasing the number of write ports of the register file 2, and the circuit of the register file 2 can be executed. The processing performance can be improved without increasing. Further, since the data of the register file 2 cannot be rewritten by the multiple data read command, it is not necessary to save the data of the register file 2 to the memory device 40 in advance, and it is possible to prevent the processing performance from lowering. This is particularly effective in an information processing apparatus in which the number of registers in the register file 2 is small.

【0039】また、読み出しデータ保持回路に格納され
たデータを読み出すために通常のレジスタにおける読み
出す命令を用いることができ、新たな命令を用意する必
要がなく、命令のビット長を短くすることができる。こ
れにより、プログラムのサイズを小さくしてプログラム
を格納するメモリの容量を小さくすることができるため
低コスト化に有効である。
Further, an instruction to read data from a normal register can be used to read data stored in the read data holding circuit, and it is not necessary to prepare a new instruction, and the bit length of the instruction can be shortened. . Thus, the size of the program can be reduced and the capacity of the memory for storing the program can be reduced, which is effective for cost reduction.

【0040】なお、図3に示す例では、メモリ装置40
から1回の転送により1つのデータが転送されるが、1
回の転送によって複数のデータを転送するとしてもよ
い。
In the example shown in FIG. 3, the memory device 40
One data is transferred by one transfer from
A plurality of data may be transferred by one transfer.

【0041】図4のタイミング図および図1を参照して
1回の転送によって4つのデータを転送する場合の動作
の例を示す。
Referring to the timing chart of FIG. 4 and FIG. 1, an example of the operation when four data are transferred by one transfer will be described.

【0042】図4において、第1命令ldqは、レジスタr
0の値を先頭アドレスとしてメモリ装置40内に連続し
て格納されている4つのデータを一度に読み出し、WBス
テージに読み出しデータ保持回路6の4つのラッチL0
〜L3に格納する。書き込み先レジスタにはr0が指定さ
れているため、ラッチL0〜L3がレジスタr0〜r3に対
応付けられる。第3命令addでは、読み出しレジスタと
してr0とr2が指定されているため、対応するラッチL
0とL2の値が読み出されて加算が行われ、結果がレジ
スタr4に格納される。同様に第4命令addでは、読み出
しレジスタr1,r3に対応したラッチL1,L3のデータ
が読み出されて演算装置3により加算され、レジスタフ
ァイル2のレジスタr5に格納される。第5命令addで
は、読み出しレジスタとしてr0を指定しているが、こ
れは複数データ読み出し命令ldqの後の2回目のレジス
タr0の指定であり、対応する読み出しイネーブルビッ
トE0が「0」であるため、この命令に対してはラッチL
0からではなくレジスタファイル2のレジスタr0の値
Aが読み出される。
In FIG. 4, the first instruction ldq is a register r
The four data continuously stored in the memory device 40 are read at once with the value of 0 as the start address, and the four latches L0 of the read data holding circuit 6 are read to the WB stage.
To L3. Since r0 is specified as the write destination register, the latches L0 to L3 are associated with the registers r0 to r3. In the third instruction add, since r0 and r2 are specified as read registers, the corresponding latch L
The values of 0 and L2 are read out and added, and the result is stored in the register r4. Similarly, in the fourth instruction add, the data of the latches L1 and L3 corresponding to the read registers r1 and r3 are read, added by the arithmetic unit 3, and stored in the register r5 of the register file 2. In the fifth instruction add, r0 is specified as the read register. This is the second specification of the register r0 after the multiple data read instruction ldq, and the corresponding read enable bit E0 is “0”. , Latch L for this instruction
The value A of the register r0 of the register file 2 is read instead of 0.

【0043】このように複数のデータを一度に読み出す
ことにより、複数のデータを直ぐに用いることができ、
処理性能の向上に効果的である。
By reading a plurality of data at a time, a plurality of data can be used immediately.
It is effective in improving processing performance.

【0044】図3,図4に示す例では、ldq命令により
4つのデータを読み出しデータ保持回路6の4つのラッ
チL0〜L3に格納するが、4つのラッチL0〜L3を分割
して、分割した部分に別々にデータを格納してもよい。
データを格納するラッチL0〜L3の指定は、書き込み先
レジスタの番号の下位2ビットと格納するデータの個数
で指定される。例えば、書き込み先レジスタがr6であ
って2つのデータを格納する場合にはラッチL2とL3に
格納される。図2に示すデータ読み出し制御回路31の
読み出しイネーブルビットE0〜E3には、さらにデコー
ド結果26が与えられ、ラッチL0〜L3の指定と同様、
デコード結果26にて示される書き込み先レジスタ番号
における下位2ビットと格納するデータの個数によっ
て、「1」にセットされる読み出しイネーブルビットE
0〜E3が指定される。
In the examples shown in FIGS. 3 and 4, four data are stored in the four latches L0 to L3 of the read data holding circuit 6 by the ldq instruction, but the four latches L0 to L3 are divided and divided. Data may be separately stored in the parts.
The latches L0 to L3 for storing data are specified by the lower 2 bits of the number of the write destination register and the number of data to be stored. For example, when the write destination register is r6 and two data are stored, the data is stored in latches L2 and L3. The decode result 26 is further given to the read enable bits E0 to E3 of the data read control circuit 31 shown in FIG. 2 and, similarly to the designation of the latches L0 to L3,
The read enable bit E which is set to “1” according to the lower two bits of the write destination register number indicated by the decode result 26 and the number of data to be stored.
0 to E3 are specified.

【0045】図5に示すタイミング図を参照して2つの
データを読み出す命令lddを2回用いて、最初にラッチL
0,L1にデータを格納し、次にラッチL2,L3にデー
タを格納する場合の動作の例を説明する。図3,図4に
示す例では、データ読み出し制御回路31のレジスタ情
報回路33はラッチL0〜L3がレジスタr0〜r3に対応
するのか、またはレジスタr4〜r7に対応するのかを示
す1ビットの情報を保持するが、図5に示す例では、ラ
ッチL0〜L3のそれぞれに対してレジスタの対応付けを
示す1ビットのレジスタ情報W0〜W3を保持する。
Referring to the timing chart shown in FIG. 5, an instruction ldd for reading two data is used twice to first latch L
An example of an operation when data is stored in 0 and L1 and then data is stored in latches L2 and L3 will be described. In the examples shown in FIGS. 3 and 4, the register information circuit 33 of the data read control circuit 31 has 1-bit information indicating whether the latches L0 to L3 correspond to the registers r0 to r3 or the registers r4 to r7. In the example shown in FIG. 5, 1-bit register information W0 to W3 indicating register correspondence is held for each of the latches L0 to L3.

【0046】図5において、第1命令lddは、レジスタr
0にて示されるメモリ装置40内のアドレスAから連続
する2つのデータD0,D1を同時に読み出し、WBステー
ジにおいてラッチL0,L1に格納する。データの個数が
2個であって書き込み先レジスタとしてr0が示されて
いるため、ラッチL0,L1に対応するレジスタ情報W
0,W1には共に「0」が設定され、さらにラッチL0,
L1に対応する読み出しイネーブルビットE0,E1には
「1」が設定される。同様に第2命令lddは、レジスタr
2にて示されるメモリ装置内のアドレスBから2つのデ
ータF0,F1を読み出してラッチL2、L3に格納する。
データの個数が2個であって書き込み先レジスタとして
r6が示されているため、ラッチL2,L3に対応するレ
ジスタ情報W2,W3および読み出しイネーブルビットE
2,E3には「1」が設定される。第4命令addは読み出
しレジスタとしてr0とr6を指定しているため、レジス
タ情報W0,W2によりラッチL0,L2はレジスタr0,r
6が対応していることが示され、ラッチL0,L2からデ
ータD0,F0がそれぞれ読み出されて、演算装置3にお
いて加算されて結果がレジスタr4に格納される。同様
に第5命令addは、読み出しレジスタとしてr1とr7を
指定しているため、対応したラッチL1,L3からデータ
D1,F1がそれぞれ読み出され、演算装置3において加
算されて結果がレジスタr5に格納される。レジスタr
4,r5のデータは、それぞれメモリ装置40への書き
込み命令である第6命令st,第7命令stによって、レジ
スタr1の値Cのアドレスと値(C+4)のアドレスに
格納される。
In FIG. 5, the first instruction ldd is a register r
Two consecutive data D0 and D1 are simultaneously read from the address A in the memory device 40 indicated by "0" and stored in the latches L0 and L1 in the WB stage. Since the number of data is two and r0 is indicated as the write destination register, the register information W corresponding to the latches L0 and L1
“0” is set to both 0 and W1, and the latches L0 and
"1" is set to the read enable bits E0 and E1 corresponding to L1. Similarly, the second instruction ldd has a register r
2, two data F0 and F1 are read from address B in the memory device and stored in latches L2 and L3.
When the number of data is 2 and it is a write destination register
Since r6 is shown, register information W2 and W3 corresponding to latches L2 and L3 and read enable bit E
"1" is set to 2, E3. Since the fourth instruction add specifies r0 and r6 as the read registers, the latches L0 and L2 store the registers r0 and r2 according to the register information W0 and W2.
6, the data D0 and F0 are read from the latches L0 and L2, respectively, added in the arithmetic unit 3, and the result is stored in the register r4. Similarly, since the fifth instruction add specifies r1 and r7 as the read registers, the data is read from the corresponding latches L1 and L3.
D1 and F1 are read, respectively, added in the arithmetic unit 3, and the result is stored in the register r5. Register r
The data of 4 and r5 are stored in the address of the value C and the address of the value (C + 4) of the register r1 by a sixth instruction st and a seventh instruction st, which are write instructions to the memory device 40, respectively.

【0047】このように2つの異なるアドレスA,Bに
関連したデータを同時に読み出しデータ保持回路6のラ
ッチに保持することができるため、異なるアドレスのデ
ータ間における演算を効率よく行うことができる。な
お、レジスタ情報回路33は、ラッチL0〜L3に対し
て、それぞれ1ビットの情報を持つように構成したが、
ビット数を増やして、ラッチL0〜L3とレジスタの対応
をさらに柔軟に設定できるようにしてもよい。逆に、図
3,図4に示す例と同様にラッチL0〜L3に対して共通
の1ビットの情報を持つようにしてもよい。
As described above, since the data related to the two different addresses A and B can be simultaneously held in the latch of the read data holding circuit 6, the operation between the data having different addresses can be performed efficiently. Note that the register information circuit 33 is configured to have 1-bit information for each of the latches L0 to L3.
The number of bits may be increased so that the correspondence between the latches L0 to L3 and the register can be set more flexibly. Conversely, similar to the examples shown in FIGS. 3 and 4, the latches L0 to L3 may have common 1-bit information.

【0048】なお、本実施例においては、ラッチL0〜L
3に対応するレジスタをr0〜r3またはr4〜r7とした
が、対応するレジスタを例えばr0〜r3だけというよう
に固定してもよい。この場合、データ読み出し制御回路
31のレジスタ情報回路33は不要である。
In this embodiment, the latches L0 to L
Although the registers corresponding to 3 are r0 to r3 or r4 to r7, the corresponding registers may be fixed to, for example, only r0 to r3. In this case, the register information circuit 33 of the data read control circuit 31 is unnecessary.

【0049】また、本実施例においては、ラッチL0〜L
3のデータが読み出すことができるのは、それぞれ複数
データ読み出し命令の後に1回だけであるが、複数デー
タ読み出し命令、あるいは予め別の命令によりラッチL
0〜L3のデータを読み出せる回数を指定するようにし
てもよい。
In this embodiment, the latches L0 to L
3 can be read only once after each of the multiple data read commands. However, the latch L can be read by a multiple data read command or another command in advance.
The number of times data 0 to L3 can be read may be specified.

【0050】また、本実施例においては、演算装置3の
2つの入力のそれぞれに対して、選択回路を設けたが、
回路削減のために、いずれか一方だけを設けるようにし
てもよい。
In this embodiment, the selection circuit is provided for each of the two inputs of the arithmetic unit 3.
Only one of them may be provided to reduce the number of circuits.

【0051】次に、本発明の第2実施形態について説明
する。なお、以下の説明において図1,図2を参照して
説明した部材に対応する部材には同一符号を付して詳し
い説明は省略する。
Next, a second embodiment of the present invention will be described. In the following description, members corresponding to the members described with reference to FIGS. 1 and 2 are denoted by the same reference numerals, and detailed description is omitted.

【0052】第2実施形態では、複数データ読み出し命
令を実行してから複数データ読み出し解除命令を実行す
るまで、ラッチL0〜L3に対応するレジスタを読み出す
と常に対応するラッチL0〜L3からデータが読み出され
る。
In the second embodiment, when the register corresponding to the latches L0 to L3 is read from the execution of the multiple data read instruction to the execution of the multiple data read release instruction, data is always read from the corresponding latch L0 to L3. It is.

【0053】図6は第2実施形態におけるデータ読み出
し制御回路31の構成を示すブロック図であり、28は
複数データ読み出し解除信号であって、デコーダ1が解
読した命令が複数データ読み出し解除命令であるときに
デコーダ1が出力する信号である。図2に示される第1
実施形態におけるデータ読み出し制御回路31との違い
は、読み出しイネーブルビットがラッチL0〜L3に対し
て共通に1ビットEだけである点と読み出しイネーブル
ビットEのリセットの仕方にある。図2に示す例では、
制御回路34が読み出し制御信号32を出力してラッチ
L0〜L3のデータを読み出すと、読み出したラッチL0
〜L3に対応する読み出しイネーブルビットE0〜E3が
「0」にリセットされるが、この第2実施形態では、複
数データ読み出し解除信号28が与えられたときに、読
み出しイネーブルビットEが「0」にリセットされる。
つまり、読み出しイネーブルビットEは、複数データ読
み出し命令を実行したときに「1」にセットされ、複数
データ読み出し解除命令を実行した時に「0」にリセッ
トされ、この間、何回でもラッチL0〜L3のデータを読
み出すことができる。
FIG. 6 is a block diagram showing the configuration of the data read control circuit 31 according to the second embodiment. Reference numeral 28 denotes a multiple data read release signal, and the instruction decoded by the decoder 1 is a multiple data read release instruction. This is a signal output from the decoder 1 at times. The first shown in FIG.
The difference from the data read control circuit 31 in the embodiment lies in that the read enable bit is only one bit E in common for the latches L0 to L3 and in the way of resetting the read enable bit E. In the example shown in FIG.
The control circuit 34 outputs the read control signal 32 and latches it.
When the data of L0 to L3 is read, the read latch L0
The read enable bits E0 to E3 corresponding to .about.L3 are reset to "0". In the second embodiment, when the multiple data read release signal 28 is given, the read enable bit E is reset to "0". Reset.
That is, the read enable bit E is set to “1” when the multiple data read instruction is executed, and is reset to “0” when the multiple data read release instruction is executed. During this time, the latches L0 to L3 Data can be read.

【0054】図7に示すタイミング図を参照して第2実
施形態の動作を説明する。図7において、第1命令ldd
は、レジスタr0で示されるメモリ装置40内のアドレ
スAから連続する2つのデータD0,D1を同時に読み出
し、WBステージにおいてラッチL0,L1に格納する。ME
Mステージにおいて複数データ読み出し信号27が出力
され、読み出しイネーブルビットEが「1」にセットさ
れる。第3命令addは、読み出しレジスタとしてr0とr
1を指定しており、読み出しイネーブルビットEが
「1」であるため、対応するラッチL0,L1からデータ
D0,D1がそれぞれ読み出され、演算装置3において加
算されて結果がレジスタr4に格納される。同様に第4
命令subは、読み出しレジスタとしてr0とr1を指定し
ており、読み出しイネーブルビットEが「1」であるた
め、対応するラッチL0,L1からデータD0,D1がそれ
ぞれ読み出され、演算装置3により減算されて結果がレ
ジスタr5に格納される。第5命令resetldは、複数デー
タ読み出し解除命令であって、EXステージに複数データ
読み出し解除信号28が出力され、読み出しイネーブル
ビットEが「0」にリセットされる。第6命令addは、
読み出しレジスタとしてr0を指定しているが、読み出
しイネーブルビットEが「0」であるため、対応したラ
ッチL0ではなく、レジスタファイル2のレジスタr0の
データが読み出され、演算装置3により加算されて結果
がレジスタr0に格納される。第6命令addにより読み出
されるレジスタr0の値は、複数データ読み出し命令ldd
の実行前に保持していた値Aである。
The operation of the second embodiment will be described with reference to the timing chart shown in FIG. In FIG. 7, the first instruction ldd
Simultaneously reads two consecutive data D0 and D1 from the address A in the memory device 40 indicated by the register r0 and stores them in the latches L0 and L1 in the WB stage. ME
At the M stage, the multiple data read signal 27 is output, and the read enable bit E is set to “1”. The third instruction add includes r0 and r as read registers.
1 and the read enable bit E is “1”, so that the data is read from the corresponding latch L0, L1.
D0 and D1 are read, respectively, added in the arithmetic unit 3, and the result is stored in the register r4. Similarly the fourth
The instruction sub specifies r0 and r1 as read registers, and since the read enable bit E is “1”, data D0 and D1 are read from the corresponding latches L0 and L1, respectively, and are subtracted by the arithmetic unit 3. The result is stored in the register r5. The fifth instruction resetld is a multiple data read release instruction. The multiple data read release signal 28 is output to the EX stage, and the read enable bit E is reset to “0”. The sixth instruction add
Although r0 is designated as the read register, since the read enable bit E is "0", the data of the register r0 of the register file 2 is read instead of the corresponding latch L0, and the data is added by the arithmetic unit 3. The result is stored in the register r0. The value of the register r0 read by the sixth instruction add is a multiple data read instruction ldd.
Is the value A held before the execution of.

【0055】このように、読み出しイネーブルビットE
のリセットを、複数データ読み出し解除命令を解読して
出力される複数データ読み出し解除信号28によって行
うことにより、複数データ読み出し命令により読み出し
たデータを何度も使用することができ、処理性能の向上
に効果が大きい。
As described above, the read enable bit E
Is reset by the multiple data read release signal 28 output by decoding the multiple data read release instruction, so that the data read by the multiple data read instruction can be used many times, and the processing performance can be improved. Great effect.

【0056】第2実施形態においては、読み出しイネー
ブルビットを1ビットとしたが、4つのラッチL0〜L3
のそれぞれに対応させて4ビットE0〜E3としてもよ
い。読み出しイネーブルビットE0〜E3の指定は、複数
データ読み出し命令および複数データ読み出し解除命令
により書き込み先レジスタと読み出すデータの個数を示
すことによって行われる。
In the second embodiment, the read enable bit is set to one bit, but the four latches L0 to L3
May be set to four bits E0 to E3. The specification of the read enable bits E0 to E3 is performed by indicating the write destination register and the number of data to be read by the multiple data read instruction and the multiple data read release instruction.

【0057】ところで、メモリ装置40の構成によって
は、データの読み出しに要する時間が実行時の状態によ
って変わる場合がある。例えば、メモリ装置40がキャ
ッシュメモリと主記憶装置の2階層の構成であると、読
み出そうとしているデータがキャッシュメモリに格納さ
れている場合は読み出し時間は短いが、キャッシュメモ
リに格納されていない場合には、主記憶装置から読み出
すために長い時間が必要になる。
Incidentally, depending on the configuration of the memory device 40, the time required for reading data may vary depending on the state at the time of execution. For example, when the memory device 40 has a two-layer structure of a cache memory and a main storage device, when data to be read is stored in the cache memory, the read time is short, but the data is not stored in the cache memory. In such a case, it takes a long time to read from the main storage device.

【0058】そこで、本発明の第3実施形態における情
報処理装置は、データの読み出しに要する時間が長い場
合、あるいは予め分からない場合に対応することができ
るようにしたものである。
Therefore, the information processing apparatus according to the third embodiment of the present invention can cope with a case where the time required for reading data is long or a case where it is not known in advance.

【0059】図8は本発明の第3実施形態における情報
処理装置の構成を表すブロック図であり、同図におい
て、図1に示した情報処理装置にて説明した部材に対応
する部材には同一符号を付して詳しい説明は省略し、異
なる点を中心に説明する。
FIG. 8 is a block diagram showing the configuration of an information processing apparatus according to the third embodiment of the present invention. In FIG. 8, the same elements as those described in the information processing apparatus shown in FIG. The detailed description is omitted by attaching the reference numerals, and different points will be mainly described.

【0060】図8において、50は4つの有効フラグV
0,V1,V2,V3を保持する有効レジスタである。4
つの有効フラグV0〜V3は、それぞれラッチL0〜L3に
対応して、ラッチL0〜L3のそれぞれにデータが格納さ
れたか否かを示し、有効フラグV0〜V3の値が「1」の
場合は、対応するラッチL0〜L3にデータが格納されて
いる。
In FIG. 8, reference numeral 50 denotes four valid flags V
This is an effective register that holds 0, V1, V2, and V3. 4
One of the valid flags V0 to V3 indicates whether data is stored in each of the latches L0 to L3, corresponding to the latches L0 to L3, respectively. When the values of the valid flags V0 to V3 are “1”, Data is stored in corresponding latches L0 to L3.

【0061】データ読み出し制御回路31は図2に示す
構成と同様であるが、さらに、制御回路34に有効フラ
グV0〜V3の値が与えられる。
The data read control circuit 31 has the same configuration as that shown in FIG. 2, but the control circuit 34 is further provided with valid flags V0 to V3.

【0062】複数データ読み出し命令、例えば4つのデ
ータの読み出しを要求する命令がデコーダ1でデコード
されると、複数データ読み出し信号27によって4つの
有効フラグV0〜V3がすべて「0」にリセットされる。
第1実施形態と同様にメモリ制御回路4によってメモリ
装置40に対し複数データの読み出しが要求される。デ
ータがメモリ装置40から読み出されると、ラッチL0
〜L3へ順に格納される。4つのラッチL0〜L3のそれ
ぞれにデータが格納されると同時に、対応する有効フラ
グV0〜V3に「1」がセットされる。複数データ読み出
し命令によって読み出されたデータは、第1実施形態と
同様にレジスタファイル2には格納されない。ラッチL
0〜L3は、複数データ読み出し命令の書き込み先レジ
スタ番号に対応付けられて、以降の命令において対応付
けられたレジスタを読み出そうとした場合に、レジスタ
ファイル2からではなくて、対応するラッチL0〜L3よ
り読み出される。
When a multiple data read instruction, for example, an instruction requesting the reading of four data is decoded by the decoder 1, all the four valid flags V0 to V3 are reset to "0" by the multiple data read signal 27.
As in the first embodiment, the memory control circuit 4 requests the memory device 40 to read a plurality of data. When data is read from the memory device 40, the latch L0
LL3. At the same time when data is stored in each of the four latches L0 to L3, "1" is set in the corresponding valid flags V0 to V3. Data read by the multiple data read command is not stored in the register file 2 as in the first embodiment. Latch L
0 to L3 are associated with the write destination register number of the multiple data read instruction, and when an attempt is made to read the register associated with the subsequent instruction, the corresponding latch L0 is used instead of the register file 2. ~ L3.

【0063】このとき、データ読み出し制御回路31の
制御回路34は、デコーダ1から与えられるデコード結
果26によって指定される読み出しレジスタの番号と、
レジスタ情報回路33に保持されている情報と、読み出
しイネーブルビットE0〜E3とにより、読み出すレジス
タがラッチL0〜L3に対応することが示されると、対応
する有効フラグV0〜V3の値が調べられる。有効フラグ
の値が「1」の場合は、制御回路34は読み出し制御信
号32を選択回路30に出力して対応するラッチV0〜V
3のデータを読み出し、同時に選択回路22,23に対
して、選択回路30が出力するデータを選択して演算装
置3へ与えるように選択信号35,36を出力する。ま
た、有効フラグの値が「0」の場合は、実行停止信号5
1を実行制御回路5などへ出力して命令の実行を停止さ
せる。その後、メモリ装置40よりデータが読み出さ
れ、対応するラッチL0〜L3に格納され、対応する有効
フラグV0〜V3が「1」にセットされると実行停止信号
51を解除し、命令の実行を再開する。
At this time, the control circuit 34 of the data read control circuit 31 determines the number of the read register specified by the decode result 26 given from the decoder 1 and
When the information held in the register information circuit 33 and the read enable bits E0 to E3 indicate that the register to be read corresponds to the latches L0 to L3, the values of the corresponding valid flags V0 to V3 are checked. When the value of the valid flag is “1”, the control circuit 34 outputs the read control signal 32 to the selection circuit 30 and outputs the corresponding latch V0 to V
3 and simultaneously outputs selection signals 35 and 36 to the selection circuits 22 and 23 so that the data output from the selection circuit 30 is selected and supplied to the arithmetic unit 3. When the value of the valid flag is “0”, the execution stop signal 5
1 is output to the execution control circuit 5 or the like to stop the execution of the instruction. Thereafter, data is read from the memory device 40 and stored in the corresponding latches L0 to L3. When the corresponding valid flags V0 to V3 are set to "1", the execution stop signal 51 is released, and the execution of the instruction is executed. To resume.

【0064】このように、複数データ読み出し命令によ
ってデータが読み出される前に、以降の命令がそのデー
タを用いる場合に、読み出しに要する時間が変わったと
きにも、データが読み出されるまで命令の実行を待たせ
ることによって、正しく処理を行うことができる。ま
た、すべてのデータの読み出しが完了しなくても、すで
に読み出されたデータを用いて処理を行うことができ
る。
As described above, when data is read by a plurality of data read commands and the subsequent command uses the data, even if the time required for reading is changed, the instruction is executed until the data is read. By waiting, correct processing can be performed. Further, even if reading of all data is not completed, processing can be performed using data that has already been read.

【0065】図9に示すタイミング図を参照して複数デ
ータ読み出し命令を用いた例を具体的に説明する。第1
命令は複数データ読み出し命令ldqである。レジスタr0
の値を先頭アドレスとして、連続する4つのデータD
0,D1,D2,D3を読み出す。読み出された4つのデ
ータは読み出しデータ保持回路6の4つのラッチL0,L
1,L2,L3にそれぞれ格納される。ldq命令の書き込
みステージはWB0,WB1,WB2,WB3の4つのステージ
において、それぞれのステージに1つのデータがラッチ
L0〜L3に格納される。ldq命令の書き込み先はレジス
タr0となっているが、第1実施形態と同様にメモリ装
置40から読み出された4つのデータは、読み出しデー
タ保持回路6に格納されるだけであって、レジスタファ
イル2へは格納されない。複数データ読み出し命令が実
行されると、複数データ読み出し信号27が出力され、
有効フラグV0〜V3がすべて「0」にリセットされる。
Referring to the timing chart shown in FIG. 9, an example using a multiple data read instruction will be specifically described. First
The instruction is a multiple data read instruction ldq. Register r0
4 data D with the value of
Read 0, D1, D2, D3. The four read data are stored in four latches L0 and L of the read data holding circuit 6.
1, L2, and L3, respectively. The ldq instruction has four write stages, WB0, WB1, WB2, and WB3. One data is latched in each stage.
Stored in L0 to L3. Although the write destination of the ldq instruction is the register r0, the four data read from the memory device 40 are only stored in the read data holding circuit 6 as in the first embodiment. 2 is not stored. When the multiple data read command is executed, a multiple data read signal 27 is output,
All the valid flags V0 to V3 are reset to "0".

【0066】図9において第1実施形態における図3に
示すタイミング図の動作と異なる点は、メモリ装置40
からそれぞれのデータを読み出すために余分に1クロッ
クサイクルが必要である点である。メモリ装置40から
読み出された4つのデータD0〜D3は、それぞれサイク
ルC6,C8,C10,C12にラッチL0〜L3に格納され
る。第3命令addの読み出しレジスタはr0であり、レジ
スタr0に対応するラッチL0のデータD0を読み出して
加算を行うが、サイクルC5のときには、まだデータD0
はラッチL0へ格納されていない。このとき、読み出し
データ保持回路6の有効レジスタ50の有効フラグV0
〜V3はそれぞれ「0」のままであり、制御回路34
は、第3命令addのデコード結果26によって指定され
る読み出しレジスタr0に対応するラッチL0の有効フラ
グV0が「0」であるため、実行停止信号51を出力し
て、第3命令addの実行ステージ(EXステージ)の処理
を待機させる。サイクルC6においてデータD0がラッチ
L0に格納されると有効フラグV0に「1」がセットさ
れ、制御回路34は実行停止信号51を解除し、第3命
令addのEXステージを実行する。
FIG. 9 is different from the operation of the timing chart shown in FIG.
In this case, an extra clock cycle is required to read each data from. The four data D0 to D3 read from the memory device 40 are stored in the latches L0 to L3 in cycles C6, C8, C10, and C12, respectively. The read register of the third instruction add is r0, and the data D0 of the latch L0 corresponding to the register r0 is read and added. However, in the cycle C5, the data D0 is still present.
Are not stored in the latch L0. At this time, the valid flag V0 of the valid register 50 of the read data holding circuit 6
To V3 remain “0”, and the control circuit 34
Outputs the execution stop signal 51 because the valid flag V0 of the latch L0 corresponding to the read register r0 specified by the decoding result 26 of the third instruction add is “0”, and outputs the execution stage of the third instruction add. (EX stage) waits for processing. Data D0 is latched in cycle C6
When stored in L0, the valid flag V0 is set to "1", the control circuit 34 releases the execution stop signal 51, and executes the EX stage of the third instruction add.

【0067】このとき、ラッチL0のデータD0が選択回
路30によって選択され、その出力を選択回路23が選
択して演算装置3の入力11へ与える。演算装置3はD
0とレジスタr4のデータの加算を実行する。同様に第
4命令addは、読み出しレジスタr1に対応するラッチL
1のデータD1とレジスタr4のデータの加算を行うが、
サイクルC7のとき、データD1はまだ格納されていな
い。ラッチL1に対応する有効フラグV1は「0」である
ため、制御回路34は実行停止信号51を出力して第4
命令addのEXステージの実行を待機させる。サイクルC8
においてデータD1がラッチL1に格納されると、有効フ
ラグV1が「1」にセットされ、制御回路34は実行停
止信号51を解除し、第4命令addのEXステージの処理
を行う。
At this time, the data D0 of the latch L0 is selected by the selection circuit 30, and its output is selected by the selection circuit 23 and applied to the input 11 of the arithmetic unit 3. Arithmetic unit 3 is D
0 is added to the data of the register r4. Similarly, the fourth instruction add is a latch L corresponding to the read register r1.
1 is added to the data D1 of the register r4.
In cycle C7, data D1 has not been stored yet. Since the valid flag V1 corresponding to the latch L1 is “0”, the control circuit 34 outputs the execution stop signal 51 and
Causes the execution of the EX stage of the instruction add to wait. Cycle C8
When the data D1 is stored in the latch L1, the valid flag V1 is set to "1", the control circuit 34 releases the execution stop signal 51, and performs the processing of the EX stage of the fourth instruction add.

【0068】このように、複数データ読み出し命令によ
るデータの読み出しが遅れても、有効フラグV0〜V3を
用いて実行停止信号51を出力することによって、複数
データ読み出し命令により読み出すデータを使用する命
令を待たせることができ、誤ったデータを用いた誤動作
を防ぐことができる。
As described above, even if the data read by the multiple data read command is delayed, by outputting the execution stop signal 51 using the valid flags V0 to V3, the instruction using the data to be read by the multiple data read command is issued. It is possible to make the user wait, and it is possible to prevent a malfunction using erroneous data.

【0069】複数データ読み出し命令により読み出すデ
ータを使用しない命令は、ラッチL0〜L3へデータが格
納されていなくても実行することができる。
An instruction that does not use data to be read by the multiple data read instruction can be executed even if no data is stored in the latches L0 to L3.

【0070】図10は本発明の第4実施形態における情
報処理装置の構成を示すブロック図であり、同図におい
て、図1に示した情報処理装置にて説明した部材に対応
する部材には同一符号を付して詳しい説明は省略し、異
なる点を中心に説明する。この第4実施形態の情報処理
装置は、複数データ読み出し命令で読み出すそれぞれの
データのビット長がレジスタファイル2のレジスタのビ
ット長より短い場合の処理を効率よく行うことができる
ものである。
FIG. 10 is a block diagram showing the configuration of an information processing apparatus according to a fourth embodiment of the present invention. In FIG. 10, the same elements as those described in the information processing apparatus shown in FIG. The detailed description is omitted by attaching the reference numerals, and different points will be mainly described. The information processing apparatus according to the fourth embodiment can efficiently perform processing when the bit length of each data read by the multiple data read instruction is shorter than the bit length of the register of the register file 2.

【0071】図10において、52は、メモリ装置40
からデータバス17上に連結して読み出された複数デー
タから、データのサイズに従ってそれぞれのデータを分
離して取り出して、対応するラッチL0〜L3へ出力する
データ取り出し回路である。
In FIG. 10, reference numeral 52 denotes a memory device 40
Is a data extracting circuit that separates and extracts each data according to the data size from a plurality of data connected and read on the data bus 17 and outputs the separated data to the corresponding latches L0 to L3.

【0072】レジスタのビット長が32ビットであり、
複数データ読み出し命令により8ビットのデータを4つ
読み出す場合、例えばldqb(r4),r0という命令を実
行する場合を説明する。この命令は、レジスタr4の
値、例えばAを先頭アドレスとして、連続する4つの8
ビットデータD0,D1,D2,D3を読み出す命令であ
る。書き込み先レジスタとしてr0が指定されている
が、前記第1実施形態と同様に、読み出したデータは、
読み出しデータ保持回路6のラッチL0〜L3に格納され
て、レジスタファイル2には格納されない。ラッチL0
〜L3はそれぞれ、書き込み先レジスタとして指定され
ているr0〜r3に対応付けられる。メモリ装置40から
一度に読み出されるデータのビット長を32ビットとす
ると、複数データ読み出し命令により読み出される4つ
の8ビットデータD0〜D3は連結する32ビットのデー
タとして、メモリ装置40から一度に読み出される。
The bit length of the register is 32 bits,
A case where four 8-bit data are read by a multiple data read instruction, for example, a case where an instruction called ldqb (r4), r0 is executed will be described. This instruction is a sequence of four consecutive 8 bits with the value of register r4, for example, A as the starting address.
This is an instruction for reading the bit data D0, D1, D2, and D3. Although r0 is specified as the write destination register, the read data is, as in the first embodiment,
The data is stored in the latches L0 to L3 of the read data holding circuit 6, and is not stored in the register file 2. Latch L0
To L3 are respectively associated with r0 to r3 designated as write destination registers. Assuming that the bit length of data read from the memory device 40 at one time is 32 bits, the four 8-bit data D0 to D3 read by the multiple data read command are read from the memory device 40 at one time as concatenated 32-bit data. .

【0073】すなわち、読み出された32ビットのデー
タをRD[31:0]とすると、RD[7:0],RD[15:8],RD[23:1
6],RD[31:24]は、それぞれD0,D1,D2,D3であ
る。データ取り出し回路52は、読み出された32ビッ
トのデータRD[31:0]から4つの8ビットデータRD[7:
0],RD[15:8],RD[23:16],RD[31:24]を取り出し、それ
ぞれをラッチL0,L1,L2,L3へ出力する。ラッチL
0〜L3は、それぞれ32ビットのラッチであり、8ビ
ットのデータを格納する場合、残りの上位の24ビット
は0(ゼロ)拡張または符号拡張されて格納される。デ
ータ取り出し回路52は、データのタイプ、すなわち、
符号なしデータあるいは符号付きデータかに応じて0拡
張または符号拡張してデータを出力する。このデータの
タイプは複数データ読み出し命令により指定することが
できる。
That is, assuming that the read 32-bit data is RD [31: 0], RD [7: 0], RD [15: 8], RD [23: 1]
6] and RD [31:24] are D0, D1, D2 and D3, respectively. The data extracting circuit 52 converts the read 32-bit data RD [31: 0] into four 8-bit data RD [7:
0], RD [15: 8], RD [23:16], RD [31:24] are taken out and output to the latches L0, L1, L2, L3. Latch L
Each of 0 to L3 is a 32-bit latch. When storing 8-bit data, the remaining upper 24 bits are stored with 0 (zero) extension or sign extension. The data retrieval circuit 52 determines the type of data, that is,
The data is output with 0 extension or sign extension depending on whether it is unsigned data or signed data. This data type can be specified by a multiple data read command.

【0074】また、複数データ読み出し命令により4つ
の16ビットデータD0〜D3を読み出す場合、2回に分
けてメモリ装置40から読み出される。最初にデータD
0とD1が一度に読み出される。このとき、RD[15:0]とR
D[31:16]がそれぞれD0とD1であり、データ取り出し回
路52はそれぞれのデータD0,D1を取り出してラッチ
L0、L1へ出力する。2回目の読み出しではデータD2
とD3が一度に読み出される。このとき、RD[15:0]とRD
[31:16]がそれぞれD2とD3であり、データ取り出し回
路52はそれぞれのデータD2,D3を取り出してラッチ
L2,L3へ出力する。データ取り出し回路52は、デー
タのタイプに従って残りの上位16ビットを0拡張また
は符号拡張してラッチL0〜L3へ出力する。
When four 16-bit data D0 to D3 are read by a multiple data read command, they are read from the memory device 40 in two separate steps. First data D
0 and D1 are read at once. At this time, RD [15: 0] and R
D [31:16] are D0 and D1, respectively, and the data extracting circuit 52 extracts and latches the respective data D0 and D1.
Output to L0 and L1. In the second read, data D2
And D3 are read at once. At this time, RD [15: 0] and RD
[31:16] are D2 and D3, respectively, and the data retrieval circuit 52 retrieves and latches the respective data D2 and D3.
Output to L2 and L3. The data extraction circuit 52 extends the remaining upper 16 bits by 0 or sign extension according to the type of data and outputs the result to the latches L0 to L3.

【0075】このように、データ取り出し回路52は、
データのサイズに応じて、メモリ装置40から読み出さ
れたデータにおける適切な位置から必要な部分を取り出
して、ラッチL0〜L3へ出力する。
As described above, the data extracting circuit 52
A necessary portion is extracted from an appropriate position in the data read from the memory device 40 according to the size of the data, and is output to the latches L0 to L3.

【0076】なお、第4実施形態において、0拡張また
は符号拡張は、データ取り出し回路52からラッチL0
〜L3へ出力するときに行うとしたが、データのタイプ
の情報を保存しておいて、以降の命令によりラッチL0
〜L3よってデータを読み出すときに選択回路30が行
ってもよい。
In the fourth embodiment, 0 extension or sign extension is performed by the latch L0 from the data extracting circuit 52.
To L3, but the information of the data type is stored, and the latch L0 is output by a subsequent instruction.
The selection circuit 30 may perform the operation when reading data according to L3.

【0077】複数データ読み出し命令の後の命令により
ラッチL0〜L3のデータを読み出して演算に用いる動作
は、第1実施形態と同様の動作である。
The operation of reading the data of the latches L0 to L3 according to the instruction after the multiple data read instruction and using the data for the operation is the same as the operation in the first embodiment.

【0078】このように、レジスタのビット長より短い
複数のデータを一度に読み出す場合、それぞれのデータ
を分離してラッチL0〜L3へ格納することによって、そ
の後の命令によりデータを分離する必要がなく、処理能
力の向上、プログラム量の削減を図ることができる。
As described above, when a plurality of data shorter than the bit length of the register are read at a time, each data is separated and stored in the latches L0 to L3, so that there is no need to separate the data by a subsequent instruction. Thus, it is possible to improve the processing capacity and reduce the amount of programs.

【0079】なお、第4実施形態の説明においては、メ
モリ装置40から読み出されるデータを32ビットとし
たが、64ビットまたは128ビットなど他のビット長
でも前記と同様な動作が行われる。
In the description of the fourth embodiment, the data read from the memory device 40 is 32 bits. However, the same operation as described above is performed with other bit lengths such as 64 bits or 128 bits.

【0080】[0080]

【発明の効果】以上のように本発明に係る情報処理装置
は、複数のデータを保持する読み出しデータ保持手段
と、データ読み出し手段とを備えることにより、複数デ
ータ読み出し命令の実行によりメモリ装置より読み出し
た複数のデータを読み出しデータ保持手段に格納して、
レジスタファイルへは格納せず、後の命令によりレジス
タを指定して対応するデータを読み出しデータ保持手段
より読み出して用いることができるため、メモリ装置か
らの複数データの読み出しの完了を待たずに、次の命令
の処理が可能となり、処理時間の短縮を図って、処理性
能の向上を実現することができ、極めて有用である。
As described above, the information processing apparatus according to the present invention includes the read data holding means for holding a plurality of data and the data read means, so that the data can be read from the memory device by executing the plurality of data read instructions. Read data stored in the data holding means,
The data is not stored in the register file, and the corresponding data can be read out from the data holding means by designating the register by a later instruction, and can be used by reading the data. The processing of this instruction can be performed, the processing time can be reduced, and the processing performance can be improved, which is extremely useful.

【0081】また、複数データ読み出し命令で読み出さ
れた複数のデータはレジスタファイルに書き込まれない
ので、レジスタファイルのデータをメモリ装置へ一旦退
避させる必要がなく、処理性能の低下を防ぐことがで
き、極めて有用である。
Further, since a plurality of data read by the plurality of data read instructions are not written in the register file, there is no need to temporarily save the data in the register file to the memory device, and it is possible to prevent a reduction in processing performance. Very useful.

【0082】また、複数データ読み出し命令によるメモ
リ装置からの複数データの読み出しが完了したか否かを
示すデータ有効フラグを備えることにより、データの読
み出しが完了する前に読み出しデータ保持手段から間違
った値を読み出すことを防ぐことができ、極めて有用で
ある。
Further, by providing a data valid flag indicating whether or not reading of a plurality of data from the memory device by the plurality of data read command is completed, an incorrect value is read from the read data holding means before the data reading is completed. Can be prevented from being read out, which is extremely useful.

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

【図1】本発明の第1実施形態を説明するための情報処
理装置の構成を示すブロック図
FIG. 1 is a block diagram showing a configuration of an information processing apparatus for explaining a first embodiment of the present invention;

【図2】第1実施形態における読み出しデータ制御回路
の構成を示すブロック図
FIG. 2 is a block diagram illustrating a configuration of a read data control circuit according to the first embodiment.

【図3】第1実施形態による情報処理装置の動作タイミ
ング図
FIG. 3 is an operation timing chart of the information processing apparatus according to the first embodiment;

【図4】第1実施形態における情報処理装置の他の動作
を示すタイミング図
FIG. 4 is a timing chart showing another operation of the information processing apparatus according to the first embodiment;

【図5】第1実施形態における情報処理装置の他の動作
を示すタイミング図
FIG. 5 is a timing chart showing another operation of the information processing apparatus according to the first embodiment;

【図6】本発明の第2実施形態を説明するための情報処
理装置における読み出し制御回路の構成を示すブロック
FIG. 6 is a block diagram showing a configuration of a read control circuit in an information processing apparatus for explaining a second embodiment of the present invention;

【図7】第2実施形態による情報処理装置の動作タイミ
ング図
FIG. 7 is an operation timing chart of the information processing apparatus according to the second embodiment;

【図8】本発明の第3実施形態を説明するための情報処
理装置の構成を示すブロック図
FIG. 8 is a block diagram showing a configuration of an information processing apparatus for explaining a third embodiment of the present invention.

【図9】第3実施形態による情報処理装置の動作タイミ
ング図
FIG. 9 is an operation timing chart of the information processing apparatus according to the third embodiment;

【図10】本発明の第4実施形態を説明するための情報
処理装置の構成を示すブロック図
FIG. 10 is a block diagram showing a configuration of an information processing apparatus for explaining a fourth embodiment of the present invention;

【図11】従来の情報処理装置の構成を示すブロック図FIG. 11 is a block diagram showing a configuration of a conventional information processing apparatus.

【図12】従来のデータ処理装置のパイプライン動作を
示す図
FIG. 12 is a diagram showing a pipeline operation of a conventional data processing device.

【図13】従来のデータ処理装置のパイプライン動作を
示す図
FIG. 13 is a diagram showing a pipeline operation of a conventional data processing device.

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

1 デコーダ 2 レジスタファイル 3 演算装置 4 メモリ制御装置 5 実行制御回路 6 読み出しデータ保持回路 10,11,12,17,18,24 データ 13,14,26 デコード結果 15,16 アドレス 21 即値 22,23,30 選択回路 27 複数データ読み出し信号 28 複数データ読み出し解除信号 31 データ読み出し制御回路 32 読み出し制御信号 33 レジスタ情報回路 34 制御回路 35,36 選択信号 40 メモリ装置 50 有効レジスタ 51 実行停止信号 52 データ取り出し回路 L0,L1,L2,L3 ラッチ E0,E1,E2,E3 読み出しイネーブルビット DESCRIPTION OF SYMBOLS 1 Decoder 2 Register file 3 Arithmetic unit 4 Memory control unit 5 Execution control circuit 6 Read data holding circuit 10, 11, 12, 17, 18, 24 Data 13, 14, 26 Decoding result 15, 16 Address 21 Immediate value 22, 23, 30 selection circuit 27 multiple data read signal 28 multiple data read release signal 31 data read control circuit 32 read control signal 33 register information circuit 34 control circuit 35, 36 selection signal 40 memory device 50 valid register 51 execution stop signal 52 data extraction circuit L0 , L1, L2, L3 Latch E0, E1, E2, E3 Read enable bit

Claims (10)

【特許請求の範囲】[Claims] 【請求項1】 複数のデータを格納するメモリ装置と、 データを格納するレジスタを複数有するレジスタファイ
ルと、 与えられたデータを用いて演算を行う演算手段と、 命令を解読し、解読結果と、解読した命令が複数データ
読み出し命令である場合に、複数データ読み出し信号を
出力する命令解読手段と、 前記命令解読手段が出力する解読結果に応じて、前記演
算手段による演算と前記レジスタファイルに対するデー
タの読み出しおよび書き込みを制御する命令実行制御手
段と、 前記複数データ読み出し信号が与えられると、前記メモ
リ装置から複数のデータを読み出すメモリ制御手段と、 前記複数データ読み出し信号に従って、前記メモリ装置
から読み出された複数のデータを保持するデータ保持手
段と、 前記データ保持手段に保持されたデータのうち、前記解
読結果により指示される読み出しレジスタに対応するデ
ータを読み出し、データ選択信号を出力するデータ読み
出し手段と、 前記データ選択信号に従って、前記レジスタファイルか
ら読み出したデータ、あるいは前記データ保持手段から
読み出されたデータを選択して、前記演算手段へ出力す
るデータ選択手段と、 を備えたことを特徴とする情報処理装置。
1. A memory device for storing a plurality of data, a register file having a plurality of registers for storing data, an operation means for performing an operation using given data, an instruction for decoding an instruction, When the decoded instruction is a multiple data read instruction, an instruction decoding unit that outputs a multiple data read signal, and in accordance with a decryption result output by the instruction decryption unit, performs an operation by the arithmetic unit and a data of the register file. Command execution control means for controlling read and write; memory control means for reading a plurality of data from the memory device when the plurality of data read signals are provided; and read from the memory device according to the plurality of data read signals. Data holding means for holding a plurality of pieces of data, and holding in the data holding means Data read means for reading data corresponding to a read register indicated by the decoding result and outputting a data selection signal, among the read data, data read from the register file according to the data selection signal, or the data An information processing apparatus, comprising: data selection means for selecting data read from the holding means and outputting the data to the arithmetic means.
【請求項2】 前記データ読み出し手段は、前記複数デ
ータ読み出し信号が与えられると、前記解読結果で示さ
れる書き込み先レジスタの情報を保持し、以降の命令の
解読結果により示される読み出しレジスタ番号と保持し
ている前記書き込み先レジスタの情報とにより、読み出
しレジスタに対応するデータが前記データ保持手段に含
まれる場合は、対応するデータを前記データ保持手段よ
り読み出し、同時にデータ選択信号を出力することを特
徴とする請求項1記載の情報処理装置。
2. The data read means, when given the plurality of data read signals, holds information of a write destination register indicated by the decoding result, and holds a read register number indicated by a decoding result of a subsequent instruction and a holding value. When data corresponding to a read register is included in the data holding means according to the information of the write destination register, the corresponding data is read from the data holding means and a data selection signal is output at the same time. The information processing apparatus according to claim 1.
【請求項3】 前記データ読み出し手段は、前記解読結
果により示される書き込み先レジスタの情報を、前記デ
ータ保持手段に格納されるそれぞれのデータごとに保持
することを特徴とする請求項2記載の情報処理装置。
3. The information according to claim 2, wherein said data reading means holds information of a write destination register indicated by said decryption result for each data stored in said data holding means. Processing equipment.
【請求項4】 前記データ読み出し手段は、前記複数デ
ータ読み出し信号が与えられた後、データ保持手段に格
納されたそれぞれのデータを所定の回数だけ読み出し、
読み出したデータを前記演算手段へ与えるように指示す
るデータ選択信号を出力することを特徴とする請求項1
記載の情報処理装置。
4. The data reading means reads the respective data stored in the data holding means a predetermined number of times after receiving the plurality of data reading signals,
2. A data selection signal for instructing the arithmetic means to supply the read data is output.
An information processing apparatus according to claim 1.
【請求項5】 複数のデータを格納するメモリ装置と、 データを格納するレジスタを複数有するレジスタファイ
ルと、 与えられたデータを用いて演算を行う演算手段と、 命令を解読し、解読結果と、解読した命令が複数データ
読み出し命令である場合に、複数データ読み出し信号を
出力し、解読した命令が複数データ読み出し解除命令の
場合に、複数データ読み出し解除信号を出力する命令解
読手段と、 前記命令解読手段が出力する解読結果に応じて、前記演
算手段による演算と前記レジスタファイルに対するデー
タの読み出しおよび書き込みを制御する命令実行制御手
段と、 前記複数データ読み出し信号が与えられると、前記メモ
リ装置から複数のデータを読み出すメモリ制御手段と、 前記複数データ読み出し信号に従って、前記メモリ装置
から読み出した複数のデータを保持するデータ保持手段
と、 前記複数データ読み出し信号を受けてから前記複数デー
タ読み出し解除信号を受けるまでの間、前記データ保持
手段に保持されたデータのうち、前記解読結果により指
示される読み出しレジスタに対応するデータを読み出
し、データ選択信号を出力するデータ読み出し手段と、 前記データ選択信号に従って、前記レジスタファイルか
ら読み出したデータ、あるいは前記データ保持手段から
読み出されたデータを選択して前記演算手段へ出力する
データ選択手段と、 を備えたことを特徴とする情報処理装置。
5. A memory device for storing a plurality of data, a register file having a plurality of registers for storing data, an operation means for performing an operation using given data, an instruction for decoding an instruction, Command decoding means for outputting a multiple data read signal when the decoded command is a multiple data read command and outputting a multiple data read release signal when the decoded command is a multiple data read release command; Command execution control means for controlling the operation by the operation means and the reading and writing of data to and from the register file in accordance with the decoding result output by the means; and Memory control means for reading data; and the memory according to the plurality of data read signals. A data holding unit for holding a plurality of data read from the device; and, from receiving the plurality of data read signals to receiving the plurality of data read release signals, among the data held by the data holding unit, Data reading means for reading data corresponding to the read register indicated by the result and outputting a data selection signal; data read from the register file or data read from the data holding means according to the data selection signal And a data selecting means for selecting and outputting to the arithmetic means.
【請求項6】 複数のデータを格納するメモリ装置と、 データを格納するレジスタを複数有するレジスタファイ
ルと、 与えられたデータを用いて演算を行う演算手段と、 命令を解読し、解読結果と、解読した命令が複数データ
読み出し命令である場合に、複数データ読み出し信号を
出力する命令解読手段と、 前記命令解読手段が出力する解読結果に応じて、前記演
算手段による演算と前記レジスタファイルに対するデー
タの読み出しおよび書き込みを制御する命令実行制御手
段と、 前記複数データ読み出し信号が与えられると、前記メモ
リ装置から複数のデータを読み出すメモリ制御手段と、 前記複数データ読み出し信号に従って、前記メモリ装置
から読み出した複数のデータを保持するデータ保持手段
と、 前記データ保持手段にデータが格納されたことを示すデ
ータ有効フラグと、 前記データ保持手段に保持されたデータのうち、前記解
読結果により指示される読み出しレジスタに対応するデ
ータを読み出し、データ選択信号を出力するデータ読み
出し手段と、 前記データ選択信号に従って、前記レジスタファイルか
ら読み出したデータ、あるいは前記データ保持手段から
読み出されたデータを選択して前記演算手段へ出力する
データ選択手段と、を備え、 前記データ読み出し手段は、前記データ保持手段からデ
ータを読み出すときに、前記データ有効フラグによって
データが前記データ保持手段に格納されていないことが
示された場合に、実行停止信号を出力して命令の処理を
停止させることを特徴とする情報処理装置。
6. A memory device for storing a plurality of data, a register file having a plurality of registers for storing data, an operation means for performing an operation using given data, an instruction for decoding an instruction, a decoding result, When the decoded instruction is a multiple data read instruction, an instruction decoding unit that outputs a multiple data read signal, and in accordance with a decryption result output by the instruction decryption unit, performs an operation by the arithmetic unit and a data of the register file. Command execution control means for controlling reading and writing; memory control means for reading a plurality of data from the memory device when the plurality of data read signals are provided; and a plurality of data read from the memory device according to the plurality of data read signals. Data holding means for holding the data of A data validity flag indicating that the data has been stored, and a data readout unit that reads out data corresponding to a readout register indicated by the decoding result from among the data held in the data holding unit, and outputs a data selection signal, Data reading means for selecting data read from the register file or data read from the data holding means according to the data selection signal, and outputting the selected data to the arithmetic means. When reading data from the data holding means, if the data valid flag indicates that data is not stored in the data holding means, an execution stop signal is output to stop processing of the instruction. Information processing device.
【請求項7】 前記データ有効フラグは、前記データ保
持手段に格納される複数のデータのそれぞれに対応した
複数のビットからなり、それぞれのデータが格納された
ことを示すことを特徴とする請求項6記載の情報処理装
置。
7. The data valid flag comprises a plurality of bits corresponding to each of a plurality of data stored in the data holding means, and indicates that each data is stored. 6. The information processing apparatus according to 6.
【請求項8】 複数のデータを格納するメモリ装置と、 データを格納するレジスタを複数有するレジスタファイ
ルと、 与えられたデータを用いて演算を行う演算手段と、 命令を解読し、解読結果と、解読した命令が複数データ
読み出し命令である場合に、複数データ読み出し信号を
出力する命令解読手段と、 前記命令解読手段が出力する解読結果に応じて、前記演
算手段による演算と前記レジスタファイルに対するデー
タの読み出しおよび書き込みを制御する命令実行制御手
段と、 前記複数データ読み出し信号が与えられると、前記メモ
リ装置から複数のデータを読み出し、データバス上へ出
力させるメモリ制御手段と、 データのサイズに従って、前記データバスの特定の位置
からデータを取り出して出力するデータ取り出し手段
と、 前記複数データ読み出し信号に従って、前記データ取り
出し手段が出力する複数のデータを保持するデータ保持
手段と、 前記データ保持手段に保持されたデータのうち、前記解
読結果により指示される読み出しレジスタに対応するデ
ータを読み出し、データ選択信号を出力するデータ読み
出し手段と、 前記データ選択信号に従って、前記レジスタファイルか
ら読み出したデータ、あるいは前記データ保持手段から
読み出されたデータを選択して前記演算手段へ出力する
データ選択手段と、 を備えたことを特徴とする情報処理装置。
8. A memory device for storing a plurality of data, a register file having a plurality of registers for storing data, an operation means for performing an operation using given data, an instruction for decoding an instruction, When the decoded instruction is a multiple data read instruction, an instruction decoding unit that outputs a multiple data read signal, and in accordance with a decryption result output by the instruction decryption unit, performs an operation by the arithmetic unit and a data of the register file. Command execution control means for controlling reading and writing; memory control means for reading a plurality of data from the memory device when the plurality of data read signals are provided; and outputting the plurality of data to a data bus; A data extracting means for extracting data from a specific position on the bus and outputting the data; A data holding unit for holding a plurality of data output by the data extracting unit in accordance with a multiple data read signal; and, of data held in the data holding unit, data corresponding to a read register indicated by the decoding result. Data reading means for reading and outputting a data selection signal; data selection for selecting data read from the register file or data read from the data holding means and outputting to the arithmetic means according to the data selection signal An information processing apparatus comprising: means.
【請求項9】 前記データ取り出し手段は、前記データ
バスから取り出したデータが符号付きデータか、あるい
は符号なしデータかに応じて、前記取り出しデータを符
号拡張あるいはゼロ拡張して、前記データ保持手段に出
力することを特徴とする請求項8記載の情報処理装置。
9. The data fetching means sign-extends or zero-extends the fetched data according to whether the data fetched from the data bus is signed data or unsigned data, and sends the data to the data holding means. The information processing apparatus according to claim 8, wherein the information is output.
【請求項10】 前記データ保持手段は、前記データ取
り出し手段より与えられたデータが符号付きデータか、
あるいは符号なしデータかに応じて、前記保持したデー
タを符号拡張あるいはゼロ拡張して、前記データ選択手
段に出力することを特徴とする請求項8記載の情報処理
装置。
10. The data holding means according to claim 1, wherein said data provided by said data extracting means is signed data.
9. The information processing apparatus according to claim 8, wherein the held data is sign-extended or zero-extended according to the unsigned data and output to the data selection unit.
JP13691498A 1998-05-19 1998-05-19 Information processor Pending JPH11328001A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP13691498A JPH11328001A (en) 1998-05-19 1998-05-19 Information processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP13691498A JPH11328001A (en) 1998-05-19 1998-05-19 Information processor

Publications (1)

Publication Number Publication Date
JPH11328001A true JPH11328001A (en) 1999-11-30

Family

ID=15186535

Family Applications (1)

Application Number Title Priority Date Filing Date
JP13691498A Pending JPH11328001A (en) 1998-05-19 1998-05-19 Information processor

Country Status (1)

Country Link
JP (1) JPH11328001A (en)

Similar Documents

Publication Publication Date Title
JP3592230B2 (en) Data processing device
JP3658101B2 (en) Data processing device
US6832305B2 (en) Method and apparatus for executing coprocessor instructions
JP3203401B2 (en) Data processing device
US7546442B1 (en) Fixed length memory to memory arithmetic and architecture for direct memory access using fixed length instructions
JP2773471B2 (en) Information processing device
JPH0248732A (en) Micro processor for instruction pipe line system
JPH03233630A (en) Information processor
JPH11110214A (en) Command control system and method for the same
JP2000122919A (en) Processor and memory control method
KR19980024622A (en) Program execution method and device using the method
JP2553200B2 (en) Information processing device
JPH11328001A (en) Information processor
US20030005269A1 (en) Multi-precision barrel shifting
JP2861560B2 (en) Data processing device
JPH0651984A (en) Microprocessor
JP2824484B2 (en) Pipeline processing computer
US6922760B2 (en) Distributed result system for high-performance wide-issue superscalar processor
JPH0544049B2 (en)
JP2000181703A (en) Information processor
JP3147884B2 (en) Storage device and information processing device
JP2867798B2 (en) Advance control unit
JPH07200289A (en) Information processor
JPH0816392A (en) Computer system, computer-system operating method and computer-instruction-sequence execution method
JP3668643B2 (en) Information processing device