JPS63148329A - Instruction prefetch control system - Google Patents

Instruction prefetch control system

Info

Publication number
JPS63148329A
JPS63148329A JP29583686A JP29583686A JPS63148329A JP S63148329 A JPS63148329 A JP S63148329A JP 29583686 A JP29583686 A JP 29583686A JP 29583686 A JP29583686 A JP 29583686A JP S63148329 A JPS63148329 A JP S63148329A
Authority
JP
Japan
Prior art keywords
instruction
bus
queue register
instructions
fetched
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
JP29583686A
Other languages
Japanese (ja)
Inventor
Masahiro Kamiizumi
上泉 真裕
Makoto Sato
誠 佐藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC IC Microcomputer Systems Co Ltd
Original Assignee
NEC IC Microcomputer Systems 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 NEC IC Microcomputer Systems Co Ltd filed Critical NEC IC Microcomputer Systems Co Ltd
Priority to JP29583686A priority Critical patent/JPS63148329A/en
Publication of JPS63148329A publication Critical patent/JPS63148329A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To improve the use efficiency of a bus to increase the processing speed of a system by stopping to prefetch instructions from a queue register when it is detected that a specific instruction is stored in the queue register. CONSTITUTION:Instructions are fetched from an instruction storage part 1 to a queue register 3 through a bus 8 and instructions are transferred to an instruction executing part 4 in the order of fetching. In this stream, a decoder 10 always decodes a decode information signal 12 to monitor instructions fetched in the queue register 3. If a branch instruction is fetched, the decoder 10 reports it to a bus control part 5A by a detection signal 13. The bus control part 5A stops the following fetch operation by a control circuit 11. When the branch instruction is executed by the instruction executing part 4 thereafter, the bus control part 5A starts fetching on the basis of the branch address.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は制御装置の並列動作における命令先取り制御方
式に関する。
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to an instruction preemption control system in parallel operation of a control device.

〔従来の技術〕[Conventional technology]

従来のこの種の命令先取り方式を第3図を参照して説明
する。1は命令を記憶する命令記憶回路、2はデータを
記憶するデータ記憶回路、3はフェッチした命令を記憶
するキューレジスタ、4はキューレジスタ3より取り出
した命令を解読して実行する命令実行部、5は命令実行
部4及びキューレジスタ3からのバス使用要求を制御す
るバス制御部、6はキューレジスタ3からのバス使用要
求信号、7は命令実行部4からのバス使用要求信号、8
は記憶回路1及び2を制御するためのアドレス、データ
書き込み/読み出し信号を伝達するためのバス、94よ
キューレジスタ3にフェッチされた命令を命令実行部4
へ送るための信号である。
A conventional instruction prefetching method of this type will be explained with reference to FIG. 1 is an instruction storage circuit that stores instructions; 2 is a data storage circuit that stores data; 3 is a queue register that stores fetched instructions; 4 is an instruction execution unit that decodes and executes the instructions taken out from the queue register 3; 5 is a bus control unit that controls bus use requests from the instruction execution unit 4 and the queue register 3; 6 is a bus use request signal from the queue register 3; 7 is a bus use request signal from the instruction execution unit 4; 8
94 is a bus for transmitting addresses for controlling the memory circuits 1 and 2 and data write/read signals;
This is a signal to send to.

バス制御部5はまずバス8を介してキューレジスタ3へ
命令をとり込む。キューレジスタ3に命令がフェッチさ
れると命令実行部4は信号9をとり込みその命令を解読
して、データ記憶回路2とのデータのやりとりが必要で
あればバス制御部5に対して、バス使用要求信号7を送
る。キューレジスタ3は初期状態では有効な命令がない
状態であり、命令がフェッチされるたびに有効な命令で
満たされていき、あきがある限りバス使用要求信号6に
よってバス制御部5に対して命令フェッチを要求するが
、キューレジスタ3が有効な命令で満たされるとそれ以
上のフェッチ要求はしない。
The bus control unit 5 first takes in an instruction to the queue register 3 via the bus 8. When an instruction is fetched into the queue register 3, the instruction execution section 4 takes in the signal 9, decodes the instruction, and if data exchange with the data storage circuit 2 is necessary, sends a signal to the bus control section 5 to send the instruction to the bus controller 5. A use request signal 7 is sent. In the initial state, the queue register 3 is in a state where there are no valid instructions, and each time an instruction is fetched, it is filled with valid instructions. A fetch is requested, but once the queue register 3 is filled with valid instructions, no further fetch requests are made.

一方で命令実行部4がフェッチされた順に命令を引き取
っていき、キューレジスタ3は引き取られるごとにあき
状態になっていく。
On the other hand, the instruction execution unit 4 receives instructions in the order in which they are fetched, and the queue register 3 becomes empty each time the instructions are received.

バス制御部5はキューレジスタ3からのバス使用要求信
号6に対して、命令実行部4がらのバス使用要求信号7
を優先的に受けつけるが、命令実行部4からのバス使用
要求信号7がなければキューレジスタ3からのバス使用
要求信号6を受けつける。このように、命令実行部4が
らのバス使用要求信号7が優先されるが、一度キューレ
ジスタ3からのバス使用要求を受けっけ、そのバスサイ
クルが始まってしまうと、そのサイクルが終了するまで
は、命令実行部4からのバス使用要求は受付けられない
The bus control unit 5 receives a bus use request signal 7 from the instruction execution unit 4 in response to the bus use request signal 6 from the queue register 3.
However, if there is no bus use request signal 7 from the instruction execution unit 4, the bus use request signal 6 from the queue register 3 is accepted. In this way, the bus use request signal 7 from the instruction execution unit 4 is given priority, but once a bus use request from the queue register 3 is received and that bus cycle has started, the bus use request signal 7 from the instruction execution unit 4 is given priority. In this case, a bus use request from the instruction execution unit 4 is not accepted.

第4図は従来例でのタイミングを示す。まずT1のタイ
ミングで命令実行部からの第一のバス使用要求EXRQ
Iがあり、その要求をもとにT1〜T3の間命令実行部
のバスサイクルEXIが実行される。T2のタイミング
でキューレジスタからのバス使用要求PFRQがありT
3〜T5の間命令のフェッチサイクルPFが実行される
。T4のタイミングで命令実行部からの第二のバス使用
要求EXRQ2があったが命令のフェッチサイクルが実
行中であるため命令実行部からの第二のバス使用要求は
T5まで待たされ、T5〜7でバスサイクルEX2が実
行される。
FIG. 4 shows the timing in the conventional example. First, at timing T1, the first bus use request EXRQ is sent from the instruction execution unit.
There is a bus cycle EXI of the instruction execution unit between T1 and T3 based on the request. There is a bus use request PFRQ from the queue register at timing T2.
The instruction fetch cycle PF is executed from 3 to T5. There was a second bus use request EXRQ2 from the instruction execution unit at timing T4, but since the instruction fetch cycle was being executed, the second bus use request from the instruction execution unit was made to wait until T5, and from T5 to T7. Bus cycle EX2 is executed.

ここで命令フェッチのためのバスサイクルPFによって
フェッチされた命令が無駄な命令であった場合は、バス
サイクルEX2は何の意味もなくT5まで待たされたこ
とになる。
If the instruction fetched by bus cycle PF for instruction fetch is a useless instruction, bus cycle EX2 is meaningless and has to wait until T5.

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

上述した従来の命令先取り制御方式では、先取りした命
令が分岐命令であってもキューレジスタにあきがある限
り命令の先取りを続けるため、結果的に無駄なバスアク
セスを行ってしまい、そのバスに接続されているシステ
ム全体の処理速度を低下させるという欠点がある。
In the conventional instruction prefetch control method described above, even if the prefetched instruction is a branch instruction, instructions are continued to be prefetched as long as there is space in the queue register, resulting in unnecessary bus accesses and The disadvantage is that it slows down the processing speed of the entire system.

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

本発明の命令先取り制御方式は、命令を記憶する記憶手
段と、先取りした命令を記憶するキューレジスタと、命
令を先取りしてキューレジスタに格納するための命令読
み出し手段とを有する命令先取り制御方式に於いて、前
記キューレジスタに格納された命令が特定の命令である
ことを検知する手段と、該検知手段が前記特定の命令を
検知したとき前記キューレジスタからの命令の先取りを
停止する手段とを有することを特徴とする。
The instruction prefetch control method of the present invention is an instruction prefetch control method having a storage means for storing instructions, a queue register for storing the prefetched instructions, and an instruction reading means for prefetching the instructions and storing them in the queue register. means for detecting that the instruction stored in the queue register is a specific instruction; and means for stopping prefetching of instructions from the queue register when the detection means detects the specific instruction. It is characterized by having.

〔実施例〕〔Example〕

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

第1図は本発明の一実施例のブロック図である。FIG. 1 is a block diagram of one embodiment of the present invention.

第1図の構成について従来の同じものについては従来例
を示す第3図と同一の番号を付す。10はフェッチした
命令が分岐命令であることを検知するためのデコーダ、
11は従来からのバス制御部の機能に、フェッチを停止
させる機能を加えて制御部5Aとする制御回路、12は
キューレジスタ3に格納されている有効な命令群に分岐
命令が含まれることを判別するために必要なデコーダ情
報信号、13はデコーダ10により分岐命令が検知され
たことをバス制御部5Aに対して知らしめる検知信号で
ある。命令記憶部1からバス8を通してキューレジスタ
3へ命令がフェッチされ、先にフェッチされた命令から
順番に命令実行部4へ転送されていく一連の流れのなか
で、デコーダ10はデコード情報信号12を常時デコー
ドし続けることにより、キューレジスタ3にフェッチさ
れた命令を監視して、もし分岐命令がフェッチされると
、デコーダ10は検知信号13によりバス制御部5Aへ
知らせる。バス制御部5Aは制御回路11により、それ
以降のフェッチ動作を停止する。
Components that are the same as those in the conventional structure shown in FIG. 1 are given the same numbers as in FIG. 3, which shows the conventional example. 10 is a decoder for detecting that the fetched instruction is a branch instruction;
Reference numeral 11 denotes a control circuit that adds a function to stop fetch to the conventional bus control unit function to form the control unit 5A. Reference numeral 12 indicates that a branch instruction is included in the valid instruction group stored in the queue register 3. The decoder information signal 13 necessary for the determination is a detection signal that notifies the bus control unit 5A that a branch instruction has been detected by the decoder 10. In a series of steps in which instructions are fetched from the instruction storage unit 1 to the queue register 3 via the bus 8 and transferred to the instruction execution unit 4 in order from the instruction fetched first, the decoder 10 receives the decode information signal 12. By constantly decoding, the instructions fetched into the queue register 3 are monitored, and if a branch instruction is fetched, the decoder 10 notifies the bus control unit 5A with a detection signal 13. The bus control unit 5A uses the control circuit 11 to stop subsequent fetch operations.

その後、命令実行部4により分岐命令が実行されると、
バス制御部5Aは分岐したアドレスをもとにフェッチを
開始する。
After that, when the branch instruction is executed by the instruction execution unit 4,
The bus control unit 5A starts fetching based on the branched address.

本実施例によるバス使用要求信号とバスサイクルの関係
を第2図のタイミング図を参照して説明する。
The relationship between the bus use request signal and the bus cycle according to this embodiment will be explained with reference to the timing diagram of FIG.

第2図の本実施例のタイミング図によれば、前記キュー
レジスタからのバス使用要求信号PFRQが停止されて
いるため、命令実行部からの第二のバス使用要求EXR
Q2に対するバスサイクルEX2はT4から開始され、
従来例に比較し、明らかにバスの使用効率が向上してい
る。
According to the timing diagram of this embodiment shown in FIG. 2, since the bus use request signal PFRQ from the queue register is stopped, the second bus use request EXR from the instruction execution unit
Bus cycle EX2 for Q2 starts from T4,
Compared to the conventional example, bus usage efficiency is clearly improved.

本実施例では請求の範囲で示した特定の命令として分岐
命令の場合で説明したが、それ以降のフェッチを停止さ
せたい命令であれば、本実施例と同様な効果がある。
Although this embodiment has been described using a branch instruction as the specific instruction shown in the claims, any instruction to stop subsequent fetches will have the same effect as this embodiment.

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

以上説明したように本発明では、キューレジスタにフェ
ッチされた命令が例えば分岐命令のようなその命令以降
の連続したアドレスでのフェッチが無意味な場合に、以
降のフェッチを停止することにより、バスの使用効率を
上げ、システムの処理速度を向上できる効果がある。
As explained above, in the present invention, when the instruction fetched into the queue register is meaningless to fetch at consecutive addresses after the instruction, such as a branch instruction, the subsequent fetches are stopped. This has the effect of increasing usage efficiency and improving system processing speed.

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

第1図は本発明の一実施例のブロック図、第2図は第1
図の動作を示すタイミング図、第3図は従来例のブロッ
ク図、第4図は第3図の動作を示すタイミング図である
。 1・・・命令記憶回路、2・・・データ記憶回路、3・
・・キューレジスタ、4・・・命令実行部、5・・・バ
ス制御部、6,7・・・バス使用要求信号、8・・・バ
ス、9・・・命令転送のための信号、10・・・デコー
ダ、11・・・制御回路、12・・−デコード情報信号
、13・・・検知信号。 代理人 弁理士 内 原  音と棒、・ろ1ジ 〈−
FIG. 1 is a block diagram of one embodiment of the present invention, and FIG. 2 is a block diagram of an embodiment of the present invention.
FIG. 3 is a block diagram of a conventional example, and FIG. 4 is a timing diagram showing the operation of FIG. 3. 1... Command storage circuit, 2... Data storage circuit, 3.
... Queue register, 4... Instruction execution unit, 5... Bus control unit, 6, 7... Bus use request signal, 8... Bus, 9... Signal for instruction transfer, 10 ... decoder, 11 ... control circuit, 12 ... -decode information signal, 13 ... detection signal. Agent Patent Attorney Uchihara Oto to Bo, Ro1ji〈−

Claims (1)

【特許請求の範囲】[Claims] 命令を記憶する記憶手段と、先取りした命令を記憶する
キューレジスタと、命令を先取りしてキューレジスタに
格納するための命令読み出し手段とを有する命令先取り
制御方式に於いて、前記キューレジスタに格納された命
令が特定の命令であることを検知する手段と、該検知手
段が前記特定の命令を検知したとき前記キューレジスタ
からの命令の先取りを停止する手段とを有することを特
徴とする命令先取り制御方式。
In an instruction prefetch control system having a storage means for storing an instruction, a queue register for storing a prefetched instruction, and an instruction reading means for prefetching an instruction and storing the prefetched instruction in the queue register, An instruction prefetch control comprising: means for detecting that the received instruction is a specific instruction; and means for stopping prefetching of instructions from the queue register when the detecting means detects the specific instruction. method.
JP29583686A 1986-12-11 1986-12-11 Instruction prefetch control system Pending JPS63148329A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP29583686A JPS63148329A (en) 1986-12-11 1986-12-11 Instruction prefetch control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP29583686A JPS63148329A (en) 1986-12-11 1986-12-11 Instruction prefetch control system

Publications (1)

Publication Number Publication Date
JPS63148329A true JPS63148329A (en) 1988-06-21

Family

ID=17825810

Family Applications (1)

Application Number Title Priority Date Filing Date
JP29583686A Pending JPS63148329A (en) 1986-12-11 1986-12-11 Instruction prefetch control system

Country Status (1)

Country Link
JP (1) JPS63148329A (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5136037A (en) * 1974-09-21 1976-03-26 Hitachi Ltd MEMORISEIGYO HOSHIKI
JPS6074033A (en) * 1983-09-30 1985-04-26 Fujitsu Ltd Instruction readout system
JPS61133439A (en) * 1984-12-04 1986-06-20 Nec Corp Instruction advance fetch control system
JPS61217834A (en) * 1985-03-25 1986-09-27 Nec Corp Data processor

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5136037A (en) * 1974-09-21 1976-03-26 Hitachi Ltd MEMORISEIGYO HOSHIKI
JPS6074033A (en) * 1983-09-30 1985-04-26 Fujitsu Ltd Instruction readout system
JPS61133439A (en) * 1984-12-04 1986-06-20 Nec Corp Instruction advance fetch control system
JPS61217834A (en) * 1985-03-25 1986-09-27 Nec Corp Data processor

Similar Documents

Publication Publication Date Title
EP1421490B1 (en) Methods and apparatus for improving throughput of cache-based embedded processors by switching tasks in response to a cache miss
EP0391517B1 (en) Method and apparatus for ordering and queueing multiple memory access requests
US6738837B1 (en) Digital system with split transaction memory access
JP3420091B2 (en) Microprocessor
JP2000056970A (en) Look-ahead method for instruction and data, micro controller, pseudo instruction detection circuit and recording medium
US6738867B1 (en) Disk array system reading ahead operand databackground of the invention
JPS63148329A (en) Instruction prefetch control system
JPH02287828A (en) Prefetch control system
JP4111645B2 (en) Memory bus access control method after cache miss
US20040098564A1 (en) Status register update logic optimization
JP2695156B2 (en) Information processing device
US20070198754A1 (en) Data transfer buffer control for performance
CN111782272B (en) Execution control method and device for repeated program in VLIW processor
JPH0342723A (en) Data processor
JPH08286914A (en) Memory controller
JP3476314B2 (en) Microprocessor
JPS6240555A (en) Prefetch control system
JPH0373021A (en) Microcomputer
JPH08272608A (en) Pipeline processor
JPH01230152A (en) Cache memory
JPH027128A (en) Information processor
JPH0361213B2 (en)
JPH0298735A (en) Instruction pre-fetch system
JPH0321941B2 (en)
JP2002007119A (en) Exception processing system and method for the same and processor