JPS63106046A - Data processor - Google Patents

Data processor

Info

Publication number
JPS63106046A
JPS63106046A JP61252302A JP25230286A JPS63106046A JP S63106046 A JPS63106046 A JP S63106046A JP 61252302 A JP61252302 A JP 61252302A JP 25230286 A JP25230286 A JP 25230286A JP S63106046 A JPS63106046 A JP S63106046A
Authority
JP
Japan
Prior art keywords
instruction
data
area
execution
storage device
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.)
Granted
Application number
JP61252302A
Other languages
Japanese (ja)
Other versions
JPH0695305B2 (en
Inventor
Tatsuya Ueda
達也 上田
Toyohiko Yoshida
豊彦 吉田
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP61252302A priority Critical patent/JPH0695305B2/en
Publication of JPS63106046A publication Critical patent/JPS63106046A/en
Publication of JPH0695305B2 publication Critical patent/JPH0695305B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Abstract

PURPOSE:To increase effective processing speed, by fetching an instruction data from a first memory device directly to an execution device through a bypassing circuit when an instruction prefetching device is vacant, and registering the instruction data passing through the bypassing circuit in a second memory device. CONSTITUTION:In a data processor provided with the prefetching function of data, an instruction queue 1 as the instruction prefetching device, an instruction decoding part 2, an instruction executing part 3 as the execution device, an instruction cache 4 as a second memory device, and the bypassing circuit 5 as the bypassing circuit, are provided. And when the instruction prefetching device 1 becomes vacant, the instruction data is fetched from a main memory directly to the instruction decoding part 2 through the bypassing circuit 5, and the instruction data passed through the bypassing circuit 5 is stored in the second memory device 4. In such way, it is possible to increase the effective processing speed.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、命令のブリフェッチ機能を備えたデータ処理
装置に関するものである。
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a data processing device having an instruction brief fetch function.

〔従来の技術〕[Conventional technology]

第3図は、命令のブリフェッチ機能を備えた従来のマイ
クロプロセッサのブロック系統図である。
FIG. 3 is a block system diagram of a conventional microprocessor equipped with an instruction briefetch function.

第3図において、■は命令キュー、2は命令デコード部
、3は命令実行部である。
In FIG. 3, ■ is an instruction queue, 2 is an instruction decode section, and 3 is an instruction execution section.

次に第3図のマイクロプロセッサの動作について説明す
る。マイクロプロセッサでは、主記憶をアクセスするの
に要する時間は、プロセッサ内部のデータをアクセスす
るのに要する時間に比べて非常に長い、命令をフェッチ
するたびに主記憶をアクセスするのでは、いくらマイク
ロプロセッサが高速に動作しても、実効的な速度は上が
らない。
Next, the operation of the microprocessor shown in FIG. 3 will be explained. In a microprocessor, the time required to access main memory is much longer than the time required to access data inside the processor. Even if it operates at high speed, the effective speed does not increase.

この点を改善するため、第3図のマイクロプロセッサで
は、主記憶がアクセスされていない時間を利用して命令
をあらかじめ命令キュー1に取り込んでおき、次に実行
する命令を命令キュー1から命令デコード部2にフェッ
チすることにより、デコード処理装置の実効的な速度を
上げている。しかし、ある命令列を実行後、命令デコー
ド部2が命令キュー1に命令フェッチ要求を出した時、
命令キュー1が空であれば、次に実行される命令は、主
記憶から直接取り込まなければならない。
To improve this point, the microprocessor shown in Figure 3 uses the time when the main memory is not being accessed to load instructions into instruction queue 1 in advance, and then decodes the next instruction to be executed from instruction queue 1. By fetching the data into part 2, the effective speed of the decoding processing device is increased. However, when the instruction decoder 2 issues an instruction fetch request to the instruction queue 1 after executing a certain instruction sequence,
If instruction queue 1 is empty, the next instruction to be executed must be fetched directly from main memory.

〔発明が解決しようとする問題点〕[Problem that the invention seeks to solve]

従来の命令のブリフェッチ機能を備えたデータ処理装置
は、上述したように、命令キュー1が空であれば、次に
実行される命令が主記憶から直接フェッチされるまでの
間実行を中断しなければならないため、実行速度が低下
するという問題があった。
As described above, in a data processing device equipped with a conventional instruction briefetch function, if instruction queue 1 is empty, execution must be suspended until the next instruction to be executed is directly fetched from main memory. There was a problem in that the execution speed slowed down.

本発明はこのような点に鑑みてなされたものであり、そ
の目的とするところは、命令キューが空になった場合に
主記憶へ命令データをアクセスする可能性を低くしたデ
ータ処理装置を得ることにある。
The present invention has been made in view of the above points, and an object thereof is to obtain a data processing device that reduces the possibility of accessing instruction data to main memory when an instruction queue becomes empty. There is a particular thing.

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

このような目的を達成するために本発明は、一定規則に
従う領域認識記号で順序付けされた複数の領域に複数の
命令を格納する第1の記憶装置と、この第1の記憶装置
の第1の領域認識記号で区別される領域に格納された1
つ又は複数の命令からなる第1の命令列を実行する実行
装置と、第1の命令列が実行装置で実行されている間に
第1の領域認識記号で区別される領域に引き続いた順序
の第2の領域認識記号で区別される領域に格納された1
つ又は複数の命令からなる第2の命令列を取り込む命令
先取り装置と、この命令先取り装置に取り込まれている
命令データがなくなったとき第1の記憶装置の第3の領
域認識記号で区別される領域に格納された1つ又は複数
の命令よりなる第3の命令列を命令先取り装置を通さず
直接に実効装置へ取り込むための迂回回路と、この迂回
回路を通った第3の命令列を第3の領域認識記号を索引
として記憶する第2の記憶装置とをデータ処理装置に設
けるようにしたものである。
To achieve such an object, the present invention provides a first storage device that stores a plurality of instructions in a plurality of areas ordered by area recognition symbols according to a certain rule, and a first storage device of the first storage device. 1 stored in an area distinguished by an area recognition symbol
an execution device that executes a first instruction sequence consisting of one or more instructions; and an execution device that executes a first instruction sequence consisting of one or more instructions; 1 stored in the area distinguished by the second area recognition symbol
An instruction prefetching device that captures a second instruction sequence consisting of one or more instructions, and a third area recognition symbol of the first storage device when the instruction data captured in this instruction prefetching device runs out. A detour circuit for directly fetching a third instruction string consisting of one or more instructions stored in the area into the execution device without passing through the instruction prefetching device; In this embodiment, the data processing device is provided with a second storage device that stores the area recognition symbol No. 3 as an index.

〔作用〕[Effect]

本発明においては、命令先取り装置−が空になった時、
主記憶から迂回回路を通って命令デコード部へ命令デー
タを直接取り込み、上記迂回回路を通った命令データを
第2の記憶装置に格納する。
In the present invention, when the instruction prefetch device becomes empty,
Instruction data is directly fetched from the main memory to the instruction decoding section through the detour circuit, and the instruction data that has passed through the detour circuit is stored in the second storage device.

〔実施例〕〔Example〕

第1図は、本発明に係わるデータ処理装置のマイクロプ
ロセッサの一実施例を示すブロック系統図である。第1
図において、1は命令先取り装置としての命令キュー、
2は命令デコード部、3は実行装置としての命令実行部
、4は第2の記憶装置としての命令キャッシュ、5は迂
回回路としてのバイパス回路である。
FIG. 1 is a block system diagram showing one embodiment of a microprocessor of a data processing device according to the present invention. 1st
In the figure, 1 is an instruction queue as an instruction prefetching device;
2 is an instruction decoding section, 3 is an instruction execution section as an execution device, 4 is an instruction cache as a second storage device, and 5 is a bypass circuit as a detour circuit.

第2図は、エントリ番号Q −、−nの場合の命令キャ
ッシュ4の構成例を示しており、同図において、6は領
域認識記号としてのアドレスタグ、7はアドレスタグ6
のアドレスから始まる4バイトの命令データである。
FIG. 2 shows an example of the structure of the instruction cache 4 in the case of entry numbers Q - and -n. In the figure, 6 is an address tag as an area recognition symbol, and 7 is an address tag 6.
This is 4-byte instruction data starting from the address.

次に第1図のマイクロプロセッサの動作について説明す
る。通常、命令デコード部2は命令キュー1より2バイ
トのデータをフェッチしてデコードを行なっており、命
令キュー1は、一定規則に従う領域認識記号で順序付け
された複数の領域に複数の命令を格納する第1の記憶装
置としての主記憶よりキューイングを行なっている。
Next, the operation of the microprocessor shown in FIG. 1 will be explained. Normally, the instruction decoding unit 2 fetches and decodes 2-byte data from the instruction queue 1, and the instruction queue 1 stores multiple instructions in multiple areas ordered by area recognition symbols that follow certain rules. Queuing is performed from the main memory as the first storage device.

しかし、ある命令列を実行中に命令キュー1が空になる
と、命令キュー1は命令キャッシュ4を参照する。命令
キャッシュ4には、最近のある命令列の実行中に命令キ
ュー1が空になった時の次に取り込むべき命令のアドレ
スをアドレスタグ6とし、そのアドレスから始まる4バ
イトの命令データ7が格納されている。命令列が初めて
実行される場合や、実行されてから他の命令が何度も登
録されて命令キャッシュ4に所望のデータがない場合に
はキャッシュミスとなる。この場合は、主記憶より取り
込んだ4バイトの命令データの先頭の2バイトをバイパ
ス回路5を通して直接命令デコード部2に入力する。そ
れと同時にバイパス回路5を通った4バイトの命令デー
タをその先頭アドレスとともに命令キャッシュ4に登録
する。命令キュー1には、命令キャッシュ4に今回登録
された4バイトの命令データのうちの後半2バイトがキ
ューイングされる。
However, when the instruction queue 1 becomes empty while a certain instruction sequence is being executed, the instruction queue 1 refers to the instruction cache 4. In the instruction cache 4, the address of the next instruction to be fetched when the instruction queue 1 becomes empty during the execution of a recent instruction sequence is set as an address tag 6, and 4-byte instruction data 7 starting from that address is stored. has been done. A cache miss occurs when an instruction sequence is executed for the first time, or when other instructions are registered many times after execution and the desired data is not present in the instruction cache 4. In this case, the first two bytes of the four-byte instruction data fetched from the main memory are directly input to the instruction decoding section 2 through the bypass circuit 5. At the same time, the 4-byte instruction data that has passed through the bypass circuit 5 is registered in the instruction cache 4 along with its starting address. The last 2 bytes of the 4 bytes of instruction data currently registered in the instruction cache 4 are queued in the instruction queue 1.

一方、実行された命令列が最近実行されたものであり前
回実行された時にも命令キュー1が空であったならば、
キャツシュヒツトとなる可能性が高い。キャッシュヒン
トした場合には、命令キュー1は、命令キャッシュ4に
格納しである命令データをキューイングする。従って、
主記憶から命令が取り込まれるのを待つ必要がなくなる
On the other hand, if the executed instruction sequence was recently executed and instruction queue 1 was empty the last time it was executed, then
There is a high possibility that it will be a catschhit. In the case of a cache hint, the instruction queue 1 queues instruction data stored in the instruction cache 4. Therefore,
There is no need to wait for instructions to be fetched from main memory.

ループの実行時などにおいては、一度ある命令列が実行
された時に命令キュー1が空になると、再び同じ命令列
が実行された時にも同じ状況になることが多く、キャッ
シュのヒント率が上がるため、命令キャッシュ4の付加
により、主記憶に命令データをアクセスする可能性が低
(なる。また、バイパス回路5の付加により、キャッシ
ュミスの場合も主記憶からの命令データがバイパス回路
5を通して直接命令デコード部2に取り込まれるため効
率がよい。
When executing a loop, if instruction queue 1 becomes empty when a certain instruction sequence is executed, the same situation will often occur when the same instruction sequence is executed again, increasing the cache hint rate. With the addition of the instruction cache 4, the possibility of accessing instruction data to the main memory is reduced.In addition, with the addition of the bypass circuit 5, even in the case of a cache miss, the instruction data from the main memory is directly accessed through the bypass circuit 5. It is efficient because it is taken into the decoding section 2.

以上のように、命令キャッシュ4およびバイパス回路5
の付加により、マイクロプロセッサの実効的な速度を上
げることができる。
As described above, the instruction cache 4 and the bypass circuit 5
By adding , the effective speed of the microprocessor can be increased.

また、分岐命令実行後では命令キュー1はキャンセルさ
れるのでキューが空になり、分岐先の命令データが登録
され、最近実行された分岐命令の実行後の命令フェッチ
も高速に行なえる。
Furthermore, since the instruction queue 1 is canceled after execution of a branch instruction, the queue becomes empty, instruction data of the branch destination is registered, and instruction fetch after execution of the recently executed branch instruction can be performed at high speed.

なお本発明の他の実施例として、命令キャッシュ4を参
照した時に命令データの前半2バイトを命苓キャッシュ
4から命令デコード部2へ直接取り込むための命令キュ
ー1のバイパス回路を備えてもよい。
As another embodiment of the present invention, a bypass circuit for the instruction queue 1 may be provided for directly fetching the first two bytes of instruction data from the instruction cache 4 into the instruction decoding section 2 when the instruction cache 4 is referenced.

〔発明の効果〕〔Effect of the invention〕

以上説明したように本発明は、命令先取り装置が空のと
き迂回回路を通して命令データを第1の記憶装置より実
行装置へ直接取り込むと共に、迂回回路を通った命令デ
ータを第2の記憶装置に登録することにより、再び同じ
命令列が実行されたときに第2の記憶装置から命令デー
タを取り込むことができるので、第1の記憶装置より命
令が取り込まれるのを待つ必要がなく、データ処理装置
の実効的な処理速度を上げることができる効果がある。
As explained above, the present invention allows instruction data to be directly fetched from a first storage device to an execution device through a detour circuit when the instruction prefetch device is empty, and to register instruction data that has passed through the detour circuit in a second storage device. By doing so, when the same instruction sequence is executed again, the instruction data can be fetched from the second storage device, so there is no need to wait for instructions to be fetched from the first storage device, and the data processing device This has the effect of increasing the effective processing speed.

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

第1図は本発明に係わるデータ処理装置のマイクロプロ
セッサの一実施例を示すブロック系統図、第2図は命令
キャッシュの構成例を示す構成図、第3図は従来のデー
タ処理装置のマイクロプロセッサを示すブロック系統図
である。 1・・・命令キュー、2・・・命令デコード部、3・・
・命令実行部、4・・・命令キャッシュ、5・・・バイ
パス回路。
FIG. 1 is a block system diagram showing an embodiment of a microprocessor in a data processing device according to the present invention, FIG. 2 is a block diagram showing an example of the structure of an instruction cache, and FIG. 3 is a block diagram showing an example of a microprocessor in a conventional data processing device. FIG. 1...Instruction queue, 2...Instruction decoding section, 3...
- Instruction execution unit, 4... instruction cache, 5... bypass circuit.

Claims (1)

【特許請求の範囲】[Claims] 一定規則に従う領域認識記号で順序付けされた複数の領
域に複数の命令を格納する第1の記憶装置と、この第1
の記憶装置の第1の領域認識記号で区別される領域に格
納された1つ又は複数の命令からなる第1の命令列を実
行する実行装置と、第1の命令列が前記実行装置で実行
されている間に第1の領域認識記号で区別される領域に
引き続いた順序の第2の領域認識記号で区別される領域
に格納された1つ又は複数の命令からなる第2の命令列
を取り込む命令先取り装置と、この命令先取り装置に取
り込まれている命令データがなくなったとき第1の記憶
装置の第3の領域認識記号で区別される領域に格納され
た1つ又は複数の命令よりなる第3の命令列を前記命令
先取り装置を通さず直接に実効装置へ取り込むための迂
回回路と、この迂回回路を通った第3の命令列を第3の
領域認識記号を索引として記憶する第2の記憶装置とを
備えたことを特徴とするデータ処理装置。
a first storage device that stores a plurality of instructions in a plurality of areas ordered by area recognition symbols according to a certain rule;
an execution device that executes a first instruction sequence consisting of one or more instructions stored in an area distinguished by a first area recognition symbol of a storage device; and an execution device that executes the first instruction sequence by the execution device. A second instruction sequence consisting of one or more instructions stored in an area distinguished by a second area recognition symbol in the order subsequent to the area distinguished by the first area recognition symbol while being It consists of an instruction prefetching device to be fetched, and one or more instructions stored in an area distinguished by a third area recognition symbol of the first storage device when the instruction data fetched by the instruction prefetching device runs out. a detour circuit for directly fetching a third instruction string into the execution device without passing through the instruction pre-fetching device; and a second circuit for storing the third instruction string that has passed through the detour circuit using a third area recognition symbol as an index. A data processing device comprising: a storage device.
JP61252302A 1986-10-22 1986-10-22 Data processing device Expired - Lifetime JPH0695305B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP61252302A JPH0695305B2 (en) 1986-10-22 1986-10-22 Data processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61252302A JPH0695305B2 (en) 1986-10-22 1986-10-22 Data processing device

Publications (2)

Publication Number Publication Date
JPS63106046A true JPS63106046A (en) 1988-05-11
JPH0695305B2 JPH0695305B2 (en) 1994-11-24

Family

ID=17235357

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61252302A Expired - Lifetime JPH0695305B2 (en) 1986-10-22 1986-10-22 Data processing device

Country Status (1)

Country Link
JP (1) JPH0695305B2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02224023A (en) * 1988-10-11 1990-09-06 Mips Computer Syst Inc Processor control type interface having instruction stream function
JPH0318932A (en) * 1989-06-15 1991-01-28 Hitachi Ltd Instruction read control system
JPH0540628A (en) * 1991-07-15 1993-02-19 Fujitsu Ltd Simultaneous executing system for plural instructions

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS50152629A (en) * 1974-05-27 1975-12-08
JPS5999552A (en) * 1982-11-30 1984-06-08 Matsushita Electric Ind Co Ltd Microcomputer
JPS59202544A (en) * 1983-05-02 1984-11-16 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション Order buffer bypass apparatus

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS50152629A (en) * 1974-05-27 1975-12-08
JPS5999552A (en) * 1982-11-30 1984-06-08 Matsushita Electric Ind Co Ltd Microcomputer
JPS59202544A (en) * 1983-05-02 1984-11-16 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション Order buffer bypass apparatus

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02224023A (en) * 1988-10-11 1990-09-06 Mips Computer Syst Inc Processor control type interface having instruction stream function
JPH0318932A (en) * 1989-06-15 1991-01-28 Hitachi Ltd Instruction read control system
JPH0540628A (en) * 1991-07-15 1993-02-19 Fujitsu Ltd Simultaneous executing system for plural instructions

Also Published As

Publication number Publication date
JPH0695305B2 (en) 1994-11-24

Similar Documents

Publication Publication Date Title
JPS6356731A (en) Data processor
US4847753A (en) Pipelined computer
JPS62221036A (en) Calculator
JPH0425939A (en) Micro processor
JP3683248B2 (en) Information processing apparatus and information processing method
JPS63106046A (en) Data processor
JPH06161779A (en) Interruption control system for data processor
JPH01169633A (en) Information processor
JP2508021B2 (en) Data processing device
JP4413663B2 (en) Instruction cache system
JPS6051947A (en) Instruction prefetching system in virtual storage computer
JPS6324327A (en) Instruction fetch processing system
JPS6393039A (en) Computer
JPH03268041A (en) Cache operation clarifying computer
JPS63314644A (en) Data processor
JP2766114B2 (en) Instruction prefetch device
JP2902847B2 (en) Self-modifying code execution method
JPH0462637A (en) Microprocessor
JPH01193938A (en) Instruction pre-reader
JPH01106141A (en) Data processor
JPS6235694B2 (en)
JPH04145531A (en) Microprogram controller
JPH05298091A (en) Method for information processing and device therefor
JPS62288974A (en) Vector processor
JPH027128A (en) Information processor

Legal Events

Date Code Title Description
S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

EXPY Cancellation because of completion of term