JP2636074B2 - Microprocessor - Google Patents

Microprocessor

Info

Publication number
JP2636074B2
JP2636074B2 JP2300114A JP30011490A JP2636074B2 JP 2636074 B2 JP2636074 B2 JP 2636074B2 JP 2300114 A JP2300114 A JP 2300114A JP 30011490 A JP30011490 A JP 30011490A JP 2636074 B2 JP2636074 B2 JP 2636074B2
Authority
JP
Japan
Prior art keywords
instruction
signal
nop
unit
bus
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP2300114A
Other languages
Japanese (ja)
Other versions
JPH04171534A (en
Inventor
和彦 滝田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NIPPON DENKI AISHII MAIKON SHISUTEMU KK
Original Assignee
NIPPON DENKI AISHII MAIKON SHISUTEMU KK
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 NIPPON DENKI AISHII MAIKON SHISUTEMU KK filed Critical NIPPON DENKI AISHII MAIKON SHISUTEMU KK
Priority to JP2300114A priority Critical patent/JP2636074B2/en
Publication of JPH04171534A publication Critical patent/JPH04171534A/en
Application granted granted Critical
Publication of JP2636074B2 publication Critical patent/JP2636074B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はマイクロプロセッサに関し、特にパイプライ
ン方式を取り入れているマイクロプロセッサに関する。
Description: BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a microprocessor, and more particularly, to a microprocessor employing a pipeline system.

〔従来の技術〕[Conventional technology]

マイクロプロセッサは高性能化・高速化が著しく、動
作周波数は16MHz,25MHz,33MHzと伸びてきているが、そ
の周辺デバイスはリカバリ時間(読み出し/書き込みパ
ルスのインアクティブ時間)が200nsec前後と大きい。
そのため、連続してI/Oアクセスを行う場合には、I/O命
令とI/O命令の間にnop(no operation)などの他の命令
を挿入したりして、リカバリ時間を保障していた。とこ
ろが、最近のマイクロプロセッサでは、高速化のためほ
とんどのものがパイプライン方式を採り入れており、命
令フェッチ,命令デコード,オペランドアドレス計算,
オペランドアクセス,命令実行などを同時に行ってしま
う。
Microprocessors have remarkably improved in performance and speed, and the operating frequency has been increasing to 16 MHz, 25 MHz, and 33 MHz. However, peripheral devices have a long recovery time (inactive time of read / write pulse) of about 200 nsec.
Therefore, when performing continuous I / O access, another instruction such as a nop (no operation) is inserted between I / O instructions to ensure the recovery time. Was. However, in recent microprocessors, most of the microprocessors adopt a pipeline system for speeding up. Instruction fetch, instruction decode, operand address calculation,
Operand access, instruction execution, etc. are performed simultaneously.

第2図に、従来のパイプライン方式のマイクロプロセ
ッサのブロック図を示す。
FIG. 2 shows a block diagram of a conventional pipeline type microprocessor.

第2図において、バス制御部101,プリフェッチ部102,
命令デコード部103,命令実行部104が示されている。バ
ス制御部101により、外部データバス105,並びに外部ア
ドレスバス106を制御する。バス制御部101が外部データ
バス105から採り込んだ命令列を、内部データバス107を
介してプリフェッチ部102が受け取る。プリフェッチ部1
02は、プリフェッチキューに命令を蓄え、順次命令デコ
ード部103へ渡す。プリフェッチキューに“空き”が生
じた場合には、命令フェッチ要求信号108によってバス
制御部101に要求し、バス制御部101はバスサイクルを起
動し、命令列を取り込む。命令デコード部103は、受け
取った命令をデコードし、オペランドアドレスを内部ア
ドレスバス110を介してバス制御部101へ渡し、命令デコ
ード情報111を命令実行部104へ渡す。命令実行部104
は、命令デコード部103から受け取った命令デコード情
報111に従って、命令を実行する。その際、オペランド
ライトがある場合には、ライトデータがそろった時点で
リクエスト信号114をアクティブにし、それによってバ
ス制御部101はバスサイクルを起動する。
In FIG. 2, a bus control unit 101, a prefetch unit 102,
The instruction decoding unit 103 and the instruction execution unit 104 are shown. An external data bus 105 and an external address bus 106 are controlled by a bus control unit 101. The prefetch unit 102 receives an instruction sequence fetched from the external data bus 105 by the bus control unit 101 via the internal data bus 107. Prefetch unit 1
02 stores instructions in a prefetch queue and sequentially transfers them to the instruction decoding unit 103. When "empty" occurs in the prefetch queue, a request is made to the bus control unit 101 by the instruction fetch request signal 108, and the bus control unit 101 starts a bus cycle and fetches an instruction sequence. The instruction decode unit 103 decodes the received instruction, passes an operand address to the bus control unit 101 via the internal address bus 110, and passes instruction decode information 111 to the instruction execution unit 104. Instruction execution unit 104
Executes an instruction according to the instruction decode information 111 received from the instruction decode unit 103. At this time, if there is an operand write, the request signal 114 is activated when the write data is completed, whereby the bus control unit 101 starts a bus cycle.

I/O命令の場合にも同様に、IN命令の場合には命令を
実行した時点でリクエスト信号114をアクティブにし、O
UT命令の場合にはライトデータがそろった時点でリクエ
スト信号114をアクティブにする。
Similarly, in the case of an I / O instruction, in the case of an IN instruction, the request signal 114 is activated when the instruction is executed, and the O
In the case of the UT instruction, the request signal 114 is activated when the write data is completed.

ここで示したようなパイプライン方式のマイクロプロ
セッサでは、第8図に示すように、バスサイクルとは関
係なく命令が実行されるため、out命令とout命令の
間のnop命令ではリカバリ時間を保障することができ
ず、さらに多数のnop命令の挿入が必要である。
In the pipeline type microprocessor as shown here, as shown in FIG. 8, since the instruction is executed regardless of the bus cycle, the recovery time is guaranteed for the nop instruction between the out instructions. Cannot be executed, and more nop instructions need to be inserted.

第8図中、クロック信号(CLK)に対する命令,
,が示されているが、out命令では、フェッチ,
デコード,アドレス計算,命令実行,I/Oライトの各動作
命令が順に行われる。nop命令,out命令も、順序は
同様である。
In FIG. 8, an instruction for a clock signal (CLK),
, Are shown, but in the out instruction, fetch,
Decode, address calculation, instruction execution, and I / O write operation instructions are sequentially performed. The order of the nop instruction and the out instruction is the same.

〔発明が解決しようとする課題〕[Problems to be solved by the invention]

以上説明したように、第2図に示すような、プリフェ
ッチ部102を備えたマイクロプロセッサでは、命令デコ
ード部への命令供給に時間を要することもなく、命令の
実行はバスサイクルとは非同期に行われる。そのため、
第9図に示すように、out命令の前にメモリライトを
伴うような命令(mov)オペランド,ライトがあった
場合、バスの状態によっては、nop命令,nop命令か
らなる命令が2つでもI/Oアクセスが続いてしまう場合
もあり、確実にI/Oリカバリ時間を保障するためには、
プリフェッチキューを満たすだけの多くのnop命令を挿
入し、I/O命令の後、次に実行するI/O命令との間にフェ
ッチバスサイクルが入るようにしなければならなかっ
た。
As described above, in the microprocessor having the prefetch unit 102 as shown in FIG. 2, the instruction supply to the instruction decode unit does not take a long time, and the execution of the instruction is performed asynchronously with the bus cycle. Will be for that reason,
As shown in FIG. 9, when there is an instruction (mov) operand and memory write accompanied by a memory write before the out instruction, depending on the state of the bus, even if there are two instructions consisting of the nop instruction and the nop instruction, / O access may continue, and in order to guarantee I / O recovery time,
It was necessary to insert as many nop instructions as needed to fill the prefetch queue so that a fetch bus cycle was inserted between the I / O instruction and the next I / O instruction to be executed.

本発明の目的は、前記問題点を解決し、少ないnop命
令を挿入するだけで、リカバリ時間を保障できるように
したマイクロプロセッサを提供することにある。
SUMMARY OF THE INVENTION It is an object of the present invention to provide a microprocessor which solves the above-mentioned problem and can guarantee a recovery time by inserting a small number of nop instructions.

〔課題を解決するための手段〕[Means for solving the problem]

本発明のマイクロプロセッサの構成は、命令デコード
部と、バス制御部と、命令実行部とを備え、I/O命令とn
op命令が連続したことを前記命令デコード部から前記命
令実行部へ通知する第1の信号と、前記バス制御部から
前記命令実行部へバスサイクルが停止したことを通知す
る第2の信号とを設け、前記nop命令で前記第1の信号
がアクティブの場合、前記第2の信号がアクティブにな
るまで前記nop命令の実行を遅らせることを特徴とす
る。
The configuration of the microprocessor according to the present invention includes an instruction decoding unit, a bus control unit, and an instruction execution unit, and includes an I / O instruction and n
a first signal for notifying the instruction execution unit that the op instruction has continued to the instruction execution unit, and a second signal for notifying that the bus cycle has been stopped from the bus control unit to the instruction execution unit. When the first signal is active by the nop instruction, the execution of the nop instruction is delayed until the second signal becomes active.

〔実施例〕〔Example〕

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

第1図は本発明の一実施例のマイクロプロセッサを示
すブロック図である。第1図において、本実施例は、バ
ス制御部101,プリフェッチ部102,命令デコード部103,命
令実行部104とを備えている。ここで、信号112は、I/O
命令とnop命令とが連続したことを、命令デコード部103
から命令実行部104へ通知する第1の信号である。信号1
13は、バス制御部101から命令実行部104へバスサイクル
が停止したことを通知する第2の信号である。
FIG. 1 is a block diagram showing a microprocessor according to one embodiment of the present invention. 1, the present embodiment includes a bus control unit 101, a prefetch unit 102, an instruction decoding unit 103, and an instruction execution unit 104. Here, the signal 112 is I / O
The instruction decode unit 103 reports that the instruction and the nop instruction have continued.
Is a first signal to be notified to the instruction execution unit 104 from. Signal 1
Reference numeral 13 denotes a second signal notifying that the bus cycle has been stopped from the bus control unit 101 to the instruction execution unit 104.

バス制御部101により、外部データバス105,並びに外
部アドレスバス106を制御する。バス制御部101が外部デ
ータバス105から取り込んだ命令列を、内部データバス1
07を介してプリフェッチ部102が受け取る。プリフェッ
チ部102は、プリフェッチキューに命令を蓄え、順次命
令デコード部103へ渡す。プリフェッチキューに“空
き”が生じた場合は、命令フェッチ要求信号108によっ
てバス制御部101に要求し、バス制御部101はバスサイク
ルを起動し、命令列を取り込む。
An external data bus 105 and an external address bus 106 are controlled by a bus control unit 101. The instruction sequence fetched from the external data bus 105 by the bus control unit 101 is transferred to the internal data bus 1
The prefetch unit 102 receives the data via 07. The prefetch unit 102 stores instructions in a prefetch queue and sequentially passes the instructions to the instruction decode unit 103. When "empty" occurs in the prefetch queue, a request is made to the bus control unit 101 by the instruction fetch request signal 108, and the bus control unit 101 starts a bus cycle and fetches an instruction sequence.

命令デコード部103は、受け取った命令をデコード
し、オペランドアドレスを内部アドレスバス110を介し
てバス制御部101へ渡し、命令デコード情報111を命令実
行部104へ渡す。命令実行部104は、命令デコード部103
から受け取った命令デコード情報111に従って、命令を
実行する。その際、オペランドライトがある場合には、
ライトデータがそろった時点でリクエスト信号114をア
クティブにし、それによってバス制御部101はバスサイ
クルを起動する。I/O命令の場合にも同様に、IN命令の
場合には命令を実行した時点でリクエスト信号114をア
クティブにし、OUT命令の場合にはライトデータがそろ
った時点でリクエスト信号114をアクティブにする。リ
クエスト信号114は、クロックの立ち下がりに同期して
変化するものとする。
The instruction decode unit 103 decodes the received instruction, passes an operand address to the bus control unit 101 via the internal address bus 110, and passes instruction decode information 111 to the instruction execution unit 104. The instruction execution unit 104 includes an instruction decoding unit 103
The instruction is executed according to the instruction decode information 111 received from. At that time, if there is an operand light,
When the write data is completed, the request signal 114 is activated, whereby the bus control unit 101 starts a bus cycle. Similarly, in the case of an I / O instruction, in the case of an IN instruction, the request signal 114 is activated when the instruction is executed, and in the case of an OUT instruction, the request signal 114 is activated when the write data is completed. . The request signal 114 changes in synchronization with the fall of the clock.

I/O命令とnop命令とが連続したことを命令デコード部
103が検出した場合には、I/Oとnop検出信号112により命
令実行部104へ通知する。
The instruction decode unit reports that the I / O instruction and the nop instruction have continued.
When the signal 103 is detected, the instruction execution unit 104 is notified by the I / O and the nop detection signal 112.

第5図を用いて、第1図におけるnop命令の場合の命
令実行部104の動作を説明する。第5図において、セレ
クタ501のセレクト信号511により、命令デコード情報11
1,ラッチ504から抽出した制御信号,インクリメンタ506
から出力されるインクリメントされたマイクロアドレス
のうち、いずれかが選択され、選択されたマイクロアド
レスに対応するマイクロプログラムROM503の内容が読み
出されてラッチ504に保持され、マイクロ命令デコーダ5
05がラッチ504の内容をデコードして、制御信号を出力
することにより、命令が実行される。
The operation of the instruction execution unit 104 in the case of the nop instruction in FIG. 1 will be described with reference to FIG. In FIG. 5, the instruction decode information 11 is transmitted by the select signal 511 of the selector 501.
1, control signal extracted from latch 504, incrementer 506
Of the microprogram ROM 503 corresponding to the selected microaddress is read and held in the latch 504, and the microinstruction decoder 5
05 decodes the contents of latch 504 and outputs a control signal, thereby executing the instruction.

ラッチ出力信号508の命令デコード情報111は、マイク
ロアドレスを指定するための複数の信号線であり、その
うちの1本とI/Oとnop検出信号112とがANDゲートを通さ
れ、通常のnop命令と、I/O命令の後のnop命令では違う
マイクロアドレスがマイクロアドレスレジスタ502にセ
ットされることとなり、マイクロプログラムROM503から
異なるマイクロプログラムがラッチ,デコードされるこ
ととなる。通常のnop命令の場合は、バスサイクル停止
信号113に関係なくセレクト信号511が生成され、次の命
令デコード情報111が選択される。I/O命令の後のnop命
令の場合は、バスサイクル停止信号113と制御情報510が
組み合わされ、ラッチに蓄えられた制御信号から抽出し
た信号508を選択し、同じマイクロアドレスを繰り返す
ことによって、nop命令の実行を保留する。バスサイク
ル停止信号113がアクティブになると、インクリメンタ
の出力信号を選択し、nop命令の実行を開始する。
The instruction decode information 111 of the latch output signal 508 is a plurality of signal lines for designating a micro address. One of the signal lines, the I / O and the nop detection signal 112 are passed through an AND gate, and the normal nop instruction Then, in the nop instruction after the I / O instruction, a different micro address is set in the micro address register 502, and a different micro program is latched and decoded from the micro program ROM 503. In the case of a normal nop instruction, the select signal 511 is generated regardless of the bus cycle stop signal 113, and the next instruction decode information 111 is selected. In the case of the nop instruction after the I / O instruction, the bus cycle stop signal 113 and the control information 510 are combined, a signal 508 extracted from the control signal stored in the latch is selected, and the same micro address is repeated. Suspends execution of the nop instruction. When the bus cycle stop signal 113 becomes active, the output signal of the incrementer is selected, and the execution of the nop instruction is started.

次に、バス制御部101に於ける、オペランドアクセス
のための制御構成例を第3図に示す。
Next, FIG. 3 shows an example of a control configuration for operand access in the bus control unit 101.

第3図において、内部アドレスバス110を介して送ら
れてきたオペランドアドレスを、三個のアドレスレジス
タ3011,3012,3013に取り入れ、同時に付加情報を付加情
報フラグ3021,3022,3023に蓄える。このアドレスレジス
タ3011,3012,3013は、FIFO(First In/First Out)とな
っており、この構成例では3段になっている。付加情報
フラグ3021,3022,3023と、命令実行部から送られてくる
リクエスト信号114により、組み合せ回路3031,3032,303
3でアクセス要求信号301を生成する。付加情報フラグ30
21,3022,3023は、バリッド,R/,mem/▲▼の3ビッ
トで構成され、メモリ・リードの場合にはすぐにアクセ
ス要求にいき、ライトまたはI/Oの場合には、リクエス
ト信号114がきた時点でアクセス要求にいく。組み合せ
回路304は、アクセス要求信号301,リセット信号310,レ
ディー信号311,TIステート信号314,T1ステート信号313,
T2ステート信号312を入力し、バスサイクルを制御する
ためのステート準備信号TOTI305,TOT1306,TOT2307を出
力する。この組み合せ回路304の入出力の組み合せを第
6図に示す。
In FIG. 3, the operand addresses sent via the internal address bus 110 are taken into three address registers 3011, 3012, 3013, and at the same time, the additional information is stored in the additional information flags 3021, 3022, 3023. The address registers 3011, 3012, 3013 are FIFO (First In / First Out), and have three stages in this configuration example. Combination circuits 3031, 3032, and 303 are generated by additional information flags 3021, 3022, and 3023 and request signal 114 sent from the instruction execution unit.
In step 3, an access request signal 301 is generated. Additional information flag 30
21, 3022, 3023 are composed of 3 bits of valid, R /, mem / ▲ ▼, and immediately go to an access request in the case of memory read, and request signal 114 in the case of write or I / O. When it comes, it goes to the access request. The combination circuit 304 includes an access request signal 301, a reset signal 310, a ready signal 311, a TI state signal 314, a T1 state signal 313,
A T2 state signal 312 is input, and state preparation signals TOTI305, TOT1306, and TOT2307 for controlling a bus cycle are output. FIG. 6 shows an input / output combination of the combination circuit 304.

第6図において、すべてアクティブレベルは「1」で
あり、「−」は参照しないことを表す。外部アクセスの
バスサイクルは、T1ステート,T2ステートの2クロック
で終結する。T1ステートの次には必ずT2ステートがくる
が、T2ステートの次には、レディーがインアクティブの
場合にはウエイト状態となりT2ステートを繰り返し、ア
クセス要求によって、TIステートまたはT1ステートへと
遷移する。T2ステートからTIステートへ遷移した場合を
バスサイクルの停止と見なし、バスサイクル停止信号11
3をアクティブにして、命令実行部へ通知する。フリッ
プフロップ308は、TI,T1,T2をクロックで切り換えるた
めのDフリップフロップである。
In FIG. 6, the active levels are all "1", and "-" indicates that no reference is made. The external access bus cycle ends with two clocks of the T1 state and the T2 state. After the T1 state, the T2 state always comes. However, when the ready is inactive, the T2 state is followed by a wait state. The T2 state is repeated, and the access request makes a transition to the TI state or the T1 state. The transition from the T2 state to the TI state is regarded as a bus cycle stop, and the bus cycle stop signal 11
Activate 3 and notify the instruction execution unit. The flip-flop 308 is a D flip-flop for switching between TI, T1, and T2 with a clock.

命令デコード部103に於て、I/O命令の次のnop命令を
検出する構成例を第4図に示す。
FIG. 4 shows a configuration example in which the instruction decoding unit 103 detects the nop instruction next to the I / O instruction.

第4図において、I/O命令を検出すると、I/O命令の場
合にだけアクティブになるI/O命令検出信号402によって
Dフリップフロップ404をセットし、nop命令を検出した
場合に、nop命令検出信号403と、I/O命令保持信号405の
ANDをとることによって、I/Oとnop検出信号112を生成
し、命令実行部に通知する。
In FIG. 4, when an I / O instruction is detected, a D flip-flop 404 is set by an I / O instruction detection signal 402 which becomes active only in the case of an I / O instruction. Of the detection signal 403 and the I / O instruction holding signal 405
By taking the AND, an I / O and a nop detection signal 112 is generated and notified to the instruction execution unit.

第7図に、nop命令の後にnop命令があり、その後にou
t命令がある場合のパイプライン動作を示す。このマイ
クロプロセッサは、命令フェッチ,命令デコード,アド
レス計算,オペランドアクセス,命令実行の5段のパイ
プラインを持ち、各ステージは1クロックで終結し、外
部アクセスはウエイトがない場合、2クロックで終結す
るものとする。命令実行部では、I/O命令を実行し、
クロックの立ち下がりに同期してリクエスト信号をアク
ティブにし、I/O命令の実行を終了する。I/O命令の
後のnop命令であるから、命令デコード部ではI/O&no
p検出信号をアクティブとし、それによって、nop命令
を実行しようとしていた命令実行部は、バスサイクル停
止信号がアクティブになるまでnop命令の実行を保留
する。のout命令のI/Oライトサイクルが終了して、T2
ステートからアイドル状態のTIステートになると、バス
サイクル停止信号がアクティブになり、nop命令が実
行される。
In FIG. 7, there is a nop instruction after the nop instruction, and then ou
This shows the pipeline operation when there is a t instruction. This microprocessor has a five-stage pipeline of instruction fetch, instruction decode, address calculation, operand access, and instruction execution. Each stage ends with one clock, and external access ends with two clocks when there is no wait. Shall be. The instruction execution unit executes I / O instructions,
The request signal is activated in synchronization with the falling edge of the clock, and the execution of the I / O instruction ends. Because it is a nop instruction after the I / O instruction, the instruction decode unit uses I / O & no
The p detection signal is activated, whereby the instruction execution unit that has attempted to execute the nop instruction suspends execution of the nop instruction until the bus cycle stop signal becomes active. When the I / O write cycle of the out instruction ends, T2
When the state changes from the idle state to the idle state, the bus cycle stop signal becomes active, and the nop instruction is executed.

このように、1つのnop命令で、前のI/Oアクセスと後
のI/Oアクセスの間に数クロックの余裕を持つことが実
現できる。
As described above, it is possible to realize a margin of several clocks between the previous I / O access and the subsequent I / O access by one nop instruction.

従来のパイプライン方式のマイクロプロセッサでは、
I/Oのリカバリ時間を得るために、I/O命令とI/O命令の
間に多数のnop命令の挿入が必要だったが、これに対し
て本実施例では2本の信号と、必要最小限のnop命令でI
/Oのリカバリ時間を保障することができる。
With traditional pipelined microprocessors,
In order to obtain the I / O recovery time, it was necessary to insert a number of nop instructions between I / O instructions. In contrast, in this embodiment, two signals were required. I with minimal nop instructions
/ O recovery time can be guaranteed.

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

以上説明したように、従来のパイプライン方式のマイ
クロプロセッサでは、I/Oリカバリ時間を得るために挿
入するnop命令が意味を持たなくなり、多くのnop命令が
必要であったが、本発明のマイクロプロセッサでは、周
辺デバイスのI/Oリカバリ時間に合わせてnop命令を1か
ら数個挿入するだけで良く、また連続するI/Oアクセス
でもポートが違うなどでI/Oリカバリ時間を必要としな
い場合には、nop命令を挿入しないことによって連続し
てI/Oアクセスができ、従ってプログラム・サイズの縮
小ができ、またコンピュータシステムの性能を向上させ
るという効果がある。
As described above, in the conventional pipelined microprocessor, the nop instruction inserted to obtain the I / O recovery time has no meaning, and many nop instructions are needed. The processor only needs to insert one to several nop instructions in accordance with the I / O recovery time of the peripheral device, and when the I / O recovery time is not necessary due to different ports even in continuous I / O access In this method, the I / O access can be continuously performed by not inserting the nop instruction, so that the program size can be reduced and the performance of the computer system can be improved.

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

第1図は本発明の一実施例のマイクロプロセッサを示す
ブロック図、第2図は従来のマイクロプロセッサに於け
るブロック図、第3図は第1図で示したバス制御部のブ
ロック図、第4図は第1図で示した命令デコード部のブ
ロック図、第5図は第1図で示した命令実行部のブロッ
ク図、第6図は第2図に於ける組み合せ回路の真理値表
を示す図、第7図は第1図に於けるパイプライン動作の
図、第8図及び第9図はいずれも従来の技術に於けるパ
イプライン動作の図である。 101……バス制御部、102……プリフェッチ部、103……
命令デコード部、104……命令実行部、105……外部デー
タバス、106……外部アドレスバス、107……内部データ
バス、108……命令フェッチ要求信号、109……内部デー
タバス2、110……内部アドレスバス、111……命令デコ
ード情報、112……I/Oとnop検出信号、113……バスサイ
クル停止信号、114……リクエスト信号、301……アクセ
ス要求信号、302……選択信号、303……ポインタ回路、
304,507……組み合せ回路、305……ステート準備信号TO
TI、306……ステート準備信号TOT1、307……ステート準
備信号TOT2、308,404……Dフリップフロップ、309……
クリア信号、310……リセット信号、311……レディー信
号、312……T2ステート信号、313……T1ステート信号、
314……TIステート信号、315……アドレスラッチ、3011
……アドレスレジスタ0、3012……アドレスレジスタ
1、3013……アドレスレジスタ2、3021……付加情報フ
ラグ0、3022……付加情報フラグ1、3023……付加情報
フラグ2、3031……組み合せ回路0、3032……組み合せ
回路1、3033……組み合せ回路2、401……命令コー
ダ、402……I/O命令検出信号、403……nop命令検出信
号、405……I/O命令保持信号、406……ANDゲート、501
……セレクタ、502……マイクロアドレス・レジスタ、5
03……マイクロプログラムROM、504……マイクロ命令ラ
ッチ、505……マイクロ命令デコーダ、506……インクリ
メンタ、508……ラッチに蓄えられた制御情報から抽出
した信号、509……インクリメンタの出力信号、510……
制御信号、511……セレクト信号。
FIG. 1 is a block diagram showing a microprocessor according to an embodiment of the present invention, FIG. 2 is a block diagram of a conventional microprocessor, FIG. 3 is a block diagram of a bus control unit shown in FIG. 4 is a block diagram of the instruction decoding unit shown in FIG. 1, FIG. 5 is a block diagram of the instruction execution unit shown in FIG. 1, and FIG. 6 is a truth table of the combinational circuit in FIG. FIG. 7 is a diagram of the pipeline operation in FIG. 1, and FIGS. 8 and 9 are diagrams of the pipeline operation in the prior art. 101: Bus control unit, 102: Prefetch unit, 103:
Instruction decode unit, 104 Instruction execution unit, 105 External data bus, 106 External address bus, 107 Internal data bus, 108 Instruction fetch request signal, 109 Internal data bus 2, 110 … Internal address bus, 111… instruction decode information, 112… I / O and nop detection signal, 113… bus cycle stop signal, 114… request signal, 301… access request signal, 302… selection signal, 303 ... pointer circuit,
304,507 …… Combination circuit, 305 …… State preparation signal TO
TI, 306 State preparation signal TOT1, 307 State preparation signal TOT2, 308, 404 D flip-flop, 309
Clear signal, 310 reset signal, 311 ready signal, 312 T2 state signal, 313 T1 state signal,
314: TI state signal, 315: Address latch, 3011
... Address registers 0, 3012 ... Address registers 1, 3013 ... Address registers 2, 3021 ... Additional information flags 0, 3022 ... Additional information flags 1, 3023 ... Additional information flags 2, 3031 ... Combination circuit 0 , 3032 combination circuit 1, 3033 combination circuit 2, 401 instruction coder, 402 I / O instruction detection signal, 403 nop instruction detection signal, 405 I / O instruction holding signal, 406 …… AND gate, 501
...... Selector, 502 ... Micro address register, 5
03: Micro program ROM, 504: Micro instruction latch, 505: Micro instruction decoder, 506: Incrementer, 508: Signal extracted from control information stored in the latch, 509: Output signal of incrementer , 510 ……
Control signal, 511 ... Select signal.

Claims (1)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】命令デコード部と、バス制御部と、命令実
行部とを備え、I/O命令とnop命令が連続したことを前記
命令デコード部から前記命令実行部へ通知する第1の信
号と、前記バス制御部から前記命令実行部に対して、前
記I/O命令のバスサイクル実行開始とともに非アクテイ
ブとなり、前記I/O命令のバスサイクル実行終了ととも
にアクテイブとなる、バスサイクルが停止したことを通
知する第2の信号とを設け、前記nop命令において前記
第1の信号がアクテイブの場合、前記第2の信号がアク
テイブになるまで前記nop命令の実行を遅らせることを
特徴とするマイクロプロセッサ。
A first signal for notifying that the I / O instruction and the nop instruction have continued from the instruction decode unit to the instruction execution unit, comprising: an instruction decode unit; a bus control unit; and an instruction execution unit. When the bus control unit instructs the instruction execution unit to deactivate the bus cycle execution of the I / O instruction, the bus control unit becomes inactive when the bus cycle execution of the I / O instruction ends. And a second signal for notifying that the execution of the nop instruction is delayed until the second signal becomes active if the first signal is active in the nop instruction. .
JP2300114A 1990-11-06 1990-11-06 Microprocessor Expired - Lifetime JP2636074B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2300114A JP2636074B2 (en) 1990-11-06 1990-11-06 Microprocessor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2300114A JP2636074B2 (en) 1990-11-06 1990-11-06 Microprocessor

Publications (2)

Publication Number Publication Date
JPH04171534A JPH04171534A (en) 1992-06-18
JP2636074B2 true JP2636074B2 (en) 1997-07-30

Family

ID=17880892

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2300114A Expired - Lifetime JP2636074B2 (en) 1990-11-06 1990-11-06 Microprocessor

Country Status (1)

Country Link
JP (1) JP2636074B2 (en)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03136136A (en) * 1989-10-23 1991-06-10 Fujitsu Ltd Instruction execution time control system

Also Published As

Publication number Publication date
JPH04171534A (en) 1992-06-18

Similar Documents

Publication Publication Date Title
US5923893A (en) Method and apparatus for interfacing a processor to a coprocessor
JP2810068B2 (en) Processor system, computer system, and instruction processing method
US6505290B1 (en) Method and apparatus for interfacing a processor to a coprocessor
US5150469A (en) System and method for processor pipeline control by selective signal deassertion
US5006980A (en) Pipelined digital CPU with deadlock resolution
US5974440A (en) Microprocessor with circuits, systems, and methods for interrupt handling during virtual task operation
US5440747A (en) Data processor with control logic for storing operation mode status and associated method
US5887129A (en) Asynchronous data processing apparatus
US6760835B1 (en) Instruction branch mispredict streaming
JP3242508B2 (en) Microcomputer
JPH0736155B2 (en) Method and apparatus for addressing microinstruction stack in high speed CPU
US5479622A (en) Single cycle dispatch delay in a multiple instruction dispatch mechanism of a data processing system
KR100210205B1 (en) Apparatus and method for providing a stall cache
US6012138A (en) Dynamically variable length CPU pipeline for efficiently executing two instruction sets
EP0279953B1 (en) Computer system having mixed macrocode and microcode instruction execution
US5761492A (en) Method and apparatus for uniform and efficient handling of multiple precise events in a processor by including event commands in the instruction set
US20030172258A1 (en) Control forwarding in a pipeline digital processor
JP2636074B2 (en) Microprocessor
US5895497A (en) Microprocessor with pipelining, memory size evaluation, micro-op code and tags
US20060095723A1 (en) Method and apparatus for interfacing a processor to a coprocessor
JP2636821B2 (en) Parallel processing unit
JP3102399B2 (en) Data processing apparatus and method
JPS61118840A (en) Control system of electronic computer
JP3147884B2 (en) Storage device and information processing device
JP2785820B2 (en) Parallel processing unit