JPH0444125A - Microprocessor - Google Patents

Microprocessor

Info

Publication number
JPH0444125A
JPH0444125A JP15197990A JP15197990A JPH0444125A JP H0444125 A JPH0444125 A JP H0444125A JP 15197990 A JP15197990 A JP 15197990A JP 15197990 A JP15197990 A JP 15197990A JP H0444125 A JPH0444125 A JP H0444125A
Authority
JP
Japan
Prior art keywords
branch
address
instruction
microprocessor
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.)
Pending
Application number
JP15197990A
Other languages
Japanese (ja)
Inventor
Mitsunori Shinozaki
光教 篠崎
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 JP15197990A priority Critical patent/JPH0444125A/en
Publication of JPH0444125A publication Critical patent/JPH0444125A/en
Pending legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)

Abstract

PURPOSE:To obtain a microprocessor suited to the tracing operations by outputting a branching origine address and a branching destination address in the idle cycles set after the execution of a branching instruction with no superposition caused between those addresses and an instruction fetch. CONSTITUTION:When a pipeline hazard occurs due to a bus error, etc., a normal microprocessor 22 having an n-stage pipeline structure outputs a branching side address and a branched side address through an address bus and a data bus respectively in the same idle bus cycle set before the execution of the next instruction after the branch of the branched side address of a register PC (program counter) of an instruction decoding stage DEC out of the PCS (program counter stack) registers 10 at every stage set for a retry to reset a normal operation and the branching side address of a tracing PC stack register 10 which stacks continuously the branching side address until an instruction stored in the branched side address is executed. Thus the branching side address or the branched side address can be easily traced.

Description

【発明の詳細な説明】 産業上の利用分野 本発明は複数段のパイプライン構造を持つマイクロプロ
セッサであって、実行流プログラムのトレースに適した
マイクロプロセッサに関する。
DETAILED DESCRIPTION OF THE INVENTION Field of the Invention The present invention relates to a microprocessor having a multi-stage pipeline structure and suitable for tracing an execution flow program.

従来の技術 近年、情報処理の高速化は重要な課題であり、パイプラ
イン処理が実行される。このようなマイクロプロセッサ
を用いた装置をトレースする従来のトレース装置として
は、分岐処理のアドレスを記録して行く方法がある。た
とえば、分岐命令が実行された場合に、その分岐元アド
レスと、それに続いて実行された分岐先アドレスをトレ
ース・メモリに記憶するとともに、記録されたアドレス
が分岐命令を格納しているアドレスか否かの分岐命令情
報も同時にトレース・メモリの内容の最下位ビットに記
憶し、その他の、プログラムの流れを変えない命令が実
行されたときには、それらのアドレスは記録しないよう
に構成しており、その動作を第4図のタイミングチャー
トで示す。第3図はこの従来の装置の構成を示すブロッ
ク図であり、1は前記の各アドレスを記録するトレース
メモリ、2はトレースメモリアドレスカウンタ、3はト
レース用アドレス、4はトレースコントローラ、5はカ
ウンタ用クロック信号(分岐命令のときのみ出力)、6
は書込み許可信号、7は分岐命令情報(記録されたアド
レスが分岐元アドレスであった場合は1、そうでない場
合は0)、8は命令コードバス、9はアドレスバスであ
る。
BACKGROUND OF THE INVENTION In recent years, increasing the speed of information processing has become an important issue, and pipeline processing has been implemented. As a conventional tracing device for tracing a device using such a microprocessor, there is a method of recording addresses of branch processing. For example, when a branch instruction is executed, the branch source address and the subsequently executed branch destination address are stored in the trace memory, and whether the recorded address is the address that stores the branch instruction or not. The branch instruction information is also stored in the least significant bit of the contents of the trace memory, and when other instructions that do not change the flow of the program are executed, their addresses are not recorded. The operation is shown in the timing chart of FIG. FIG. 3 is a block diagram showing the configuration of this conventional device, in which 1 is a trace memory for recording each address, 2 is a trace memory address counter, 3 is a trace address, 4 is a trace controller, and 5 is a counter. clock signal (output only for branch instructions), 6
7 is a write permission signal, 7 is branch instruction information (1 if the recorded address is a branch source address, otherwise 0), 8 is an instruction code bus, and 9 is an address bus.

これらの各構成要素より構成された従来のトレース装置
により、分岐命令を与えたアドレスに対してはトレース
メモリの内容の最下位ビットに0を付し、その上位ビッ
トはそのときの分岐元アドレスを示すものとする。また
、分岐先アドレスに対してはトレースメモリの内容の最
下位ビットに1を付して、先の分岐命令に引き続き実行
された命令であるものとし、上位ビットはそのときの分
岐先アドレスを示すものとしている。
A conventional trace device made up of these components adds 0 to the lowest bit of the contents of the trace memory for the address to which the branch instruction was given, and its upper bits indicate the branch source address at that time. shall be indicated. Furthermore, for the branch destination address, 1 is added to the least significant bit of the contents of the trace memory, indicating that the instruction was executed following the previous branch instruction, and the upper bit indicates the branch destination address at that time. I take it as a thing.

発明が解決しようとする課題 このような従来の構成では、マイクロプロセッサがn段
のパイプライン構造をもつ場合に、最小n−1サイクル
だけ分岐先アドレスが分岐元アドレスより遅れることが
課題となる。すなわち、この間の空きバスサイクルには
不定のデータが出力し、分岐命令の実行サイクルに引き
続いて実行される分岐先命令の実行はあるサイクル間(
アドレッシングモードなどに依存)経過後に実行される
Problem to be Solved by the Invention In such a conventional configuration, when a microprocessor has an n-stage pipeline structure, a problem arises in that the branch destination address lags the branch source address by a minimum of n-1 cycles. In other words, undefined data is output to the empty bus cycle during this period, and the execution of the branch destination instruction that is executed following the execution cycle of the branch instruction is delayed for a certain cycle (
(depending on the addressing mode, etc.) is executed after the elapsed time.

このような場合、分岐先アドレスをトレースメモリに取
込むタイミング信号(書き込み許可信号6)の制御によ
り、前記バスの情報から分岐元アドレスまたは分岐先ア
ドレスのみを取り出してトレースすることは可能ではあ
るが、n段のパイプライン構造を持つマイクロプロセッ
サにおいては、複雑なアドレッシングモードを準備して
いるため、分岐元アドレスおよび分岐先アドレスのみを
トレースするには困難さを極めるという問題点を有して
いた。また、トレース装置の構成も複雑なものになると
いう課題もあった。
In such a case, it is possible to extract only the branch source address or branch destination address from the information on the bus and trace it by controlling the timing signal (write enable signal 6) to capture the branch destination address into the trace memory. , microprocessors with an n-stage pipeline structure have complex addressing modes, so it is extremely difficult to trace only the branch source address and branch destination address. . Another problem was that the configuration of the tracing device was complicated.

本発明は上記問題を解決するもので、n段のパイプライ
ン構造をもつマイクロプロセッサにおいて、分岐元アド
レスまたは分岐先アドレスを容易にトレースでき、トレ
ース装置を構成が簡素化できるマイクロプロセッサを提
供することを目的とする。
The present invention solves the above problem, and provides a microprocessor having an n-stage pipeline structure that can easily trace a branch source address or a branch destination address and simplify the configuration of a tracing device. With the goal.

課題を解決するための手段 本発明は上記目的を達成するために、複数段のパイプラ
イン構成のマイクロプロセッサが前記パイプラインのそ
れぞれに対応するプログラムカウンタスタックレジスタ
を備え、前記各レジスタは対応するパイプラインの実行
したアドレスをスタックして記憶しているものとするマ
イクロプロセッサにおいて、前記マイクロプロセッサの
内部に、前記マイクロプロセッサが分岐命令を実行した
ことを検出して分岐検出信号を出力する分岐命令検出手
段と、分岐トレース許可信号を発生する分岐トレース許
可信号発生手段と、前記分岐検出信号により分岐元アド
レスをスタックして記憶するトレース用プログラムカウ
ンタスタックレジスタと、前記許可信号の制御で前記プ
ログラムカウンタスタックレジスタ内の分岐先アドレス
を選択して、オペランドアドレスと切り替えてアドレス
バスに出力する第1の選択手段と、前記分岐トレース許
可信号の制御で前記トレース用プログラムカウンタスタ
ックレジスタ内の分岐元アドレスを選択して、実行デー
タと切り替えてデータバスに出力する第2の切り替え手
段とを設け、前記分岐元アドレスと分岐先アドレスは分
岐命令実行後の空きサイクルに命令フェッチと重畳せぬ
ように出力されるものとするマイクロプロセッサとする
Means for Solving the Problems In order to achieve the above object, the present invention provides a microprocessor having a multi-stage pipeline configuration, which includes a program counter stack register corresponding to each of the pipelines, and each register having a program counter stack register corresponding to each pipeline. In a microprocessor that stores the executed addresses of lines in a stacked manner, a branch instruction detection device that detects that the microprocessor has executed a branch instruction and outputs a branch detection signal is installed inside the microprocessor. means for generating a branch trace enable signal, a trace program counter stack register for stacking and storing a branch source address according to the branch detection signal, and a trace program counter stack register for stacking and storing a branch source address according to the branch detection signal; a first selection means that selects a branch destination address in a register, switches it with an operand address, and outputs it to an address bus; and selects a branch source address in the trace program counter stack register under the control of the branch trace enable signal. and a second switching means for switching with the execution data and outputting it to the data bus, and the branch source address and the branch destination address are output in an empty cycle after execution of the branch instruction so as not to overlap with the instruction fetch. A microprocessor shall be used.

作用 本発明は前記した構成により、n段のパイプライン構造
を持つ通常のマイクロプロセッサが、バスエラーなどで
パイプラインハザードが発生したときに、正常動作に戻
すリトライを目的に設けた各ステージごとのPC8(プ
ログラムカウンタスタック)レジスタのうち、命令解読
ステージDECのレジスタのPC(プログラムカウンタ
)すなわち、分岐先アドレスと、分岐先アドレスに格納
されである命令が実行されるまで分岐元アドレスをスタ
ックしておくトレース用PCスタックレ/スタの分岐元
アドレスが、分岐後から次の命令実行までの空きバスサ
イクル中に、アドレスバスより分岐先アドレスが、また
データバスより分岐元アドレスが同一サイクル内で出力
される。
Effect of the Invention The present invention has the above-described configuration, so that when a normal microprocessor having an n-stage pipeline structure generates a pipeline hazard due to a bus error or the like, each stage is provided for the purpose of retrying to return to normal operation. Among the PC8 (program counter stack) registers, the PC (program counter) of the register of the instruction decoding stage DEC, that is, the branch destination address and the branch source address are stacked until the instruction stored at the branch destination address is executed. The branch source address of the trace PC stack register/star is output from the address bus and the branch source address from the data bus during an empty bus cycle from the branch to the next instruction execution in the same cycle. Ru.

実施例 以下、本発明の一実施例のマイクロプロセッサについて
、図面を参照しながら説明する。
Embodiment Hereinafter, a microprocessor according to an embodiment of the present invention will be described with reference to the drawings.

第1図は本発明の一実施例のプログラムアドレストレー
ス装置の構成を示すブロック図である。
FIG. 1 is a block diagram showing the configuration of a program address tracing device according to an embodiment of the present invention.

図において、10はPC3(プログラムカウンタスタッ
ク)、11はアドレスバス、12はデータバス、13は
分岐先アドレスバス、14は分岐元アドレスバス、15
はOA(オペランドアドレス)バス、16はEX(実行
)データバス、]7〜21はセレクタである。
In the figure, 10 is a PC3 (program counter stack), 11 is an address bus, 12 is a data bus, 13 is a branch destination address bus, 14 is a branch source address bus, 15
is an OA (operand address) bus, 16 is an EX (execution) data bus, and ]7 to 21 are selectors.

上記各構成要素の相互の関係とその動作を4段のパイプ
ラインについて説明する(第1図)。なお、これが4段
以上の多段となっても段数が増えるたけで基本動作は変
わらない。
The mutual relationship and operation of each of the above components will be explained for a four-stage pipeline (FIG. 1). Note that even if this becomes multi-stage with four or more stages, the basic operation remains the same, only the number of stages increases.

分岐命令のトレースを行なうとき、分岐トレース要求信
号をマイクロプロセッサが受理することにより、分岐ト
レース許可信号発生手段および分岐命令検出手段よりの
信号を受けて、マイクロプロセッサは分岐命令の実行が
確定したサイクル■の次のサイクル■でPC3IOのD
EC用レジスタの内容すなわち分岐先アドレスをセレク
タ5ELIで選択して分岐先アドレスバス13に出力し
、セレクタ5EL3を介してアドレスバス11に出力さ
れる。
When tracing a branch instruction, when the microprocessor receives a branch trace request signal, the microprocessor receives signals from the branch trace enable signal generation means and the branch instruction detection means, and the microprocessor traces the cycle in which execution of the branch instruction has been determined. D of PC3IO in the next cycle ■ of ■
The contents of the EC register, ie, the branch destination address, are selected by the selector 5ELI and output to the branch destination address bus 13, and then output to the address bus 11 via the selector 5EL3.

同様に、PC810のトレース用レジスタの内容すなわ
ち分岐元アドレスをセレクタ5EL2で選択して、同じ
サイクルVで分岐元アドレスバス14に出力し、5EL
4を介してデータバス12に出力される。
Similarly, the content of the trace register of the PC 810, that is, the branch source address, is selected by the selector 5EL2, and output to the branch source address bus 14 in the same cycle V.
4 to the data bus 12.

これら各バスのデータは、分岐命令の実行が確定したサ
イクル■の次のサイクル■でマイクロフロセッサの外部
に設けた(図に記載せず)分岐元用および分岐先用のト
レースメモリに書込む。
The data on each of these buses is written to the branch source and branch destination trace memories provided outside the microprocessor (not shown) in the cycle (2) following the cycle (2) in which the execution of the branch instruction has been determined.

このように、分岐命令のみのトレースを行なう場合には
、マイクロプロセッサは上記の特殊なバスサイクルを実
行する。通常のバスサイクル時には5EL3はOAババ
ス選択し、5EL4または5EL5はEXデータバスを
選択している。
In this manner, when tracing only branch instructions, the microprocessor executes the above-mentioned special bus cycle. During a normal bus cycle, 5EL3 selects the OA bus, and 5EL4 or 5EL5 selects the EX data bus.

サイクルに対するパイプラインステージの各動作と、そ
のときのバスの状態およびPC8の状態(第2図)につ
いて説明する。
Each operation of the pipeline stage for a cycle and the state of the bus and the state of the PC 8 at that time (FIG. 2) will be explained.

第2図は分岐命令Bが実行されてから分岐先命令Tが実
行されるまでの各パイプラインステージごとでの処理状
態と、それに対応する各PCSレジスタおよび各バスの
状態の流れを示すタイミング図で、各バスに出力される
分岐元アドレスRPC。
Figure 2 is a timing diagram showing the processing state at each pipeline stage from execution of branch instruction B until execution of branch destination instruction T, and the flow of the corresponding states of each PCS register and each bus. The branch source address RPC is output to each bus.

分岐先アドレスTPC,分岐命令Bまたは分岐先命令T
の状態と、PC8内の各レジスタにおけるその時の分岐
元アドレスRPCまたは分岐先アドレスTPCの状態を
示している。
Branch destination address TPC, branch instruction B or branch destination instruction T
, and the state of the branch source address RPC or branch destination address TPC at that time in each register in the PC8.

PC8内の各レジスタは、それぞれ対応するステージで
命令が実行されるサイクルの半サイクル前から、そのス
テージごとで実行される命令が格納されたアドレスを常
にプッシュしている。
Each register in the PC 8 always pushes an address in which an instruction to be executed in each stage is stored, starting half a cycle before the cycle in which the instruction is executed in the corresponding stage.

分岐命令のみのトレースを行なうときには、分岐命令B
を実行した(サイクル■)後にPC8内のDEC用レジ
スタとトレース用レジスタの内容が次の空きバスサイク
ル■でアドレスバス、データバスにそれぞれ出力される
When tracing only branch instructions, branch instruction B
After executing (cycle 2), the contents of the DEC register and trace register in the PC 8 are output to the address bus and data bus, respectively, in the next empty bus cycle 2.

このときのトレース用レジスタの動作は、分岐命令Bが
実行されたときに分岐元アドレスB、PCをブツシュし
、次の分岐先の命令が実行されるまではポツプせず、こ
れが実行されて初めて分岐先アドレスTPCをブツシュ
する。
The operation of the trace register at this time is that when branch instruction B is executed, it boots the branch source address B and PC, and does not pop until the next branch destination instruction is executed, and only after this is executed. Bush the branch destination address TPC.

このように本発明の実施例のマイクロプロセラサによれ
ば、4段のパイプライン構成のマイクロプロセッサが前
記パイプラインのそれぞれに対応するプログラムカウン
タスタックレジスタを備え、前記各レジスタは対応する
パイプラインの実行したアドレスをスタックして記憶し
ているものとするマイクロプロセッサにおいて、前記マ
イクロプロセッサの内部に、前記マイクロプロセッサが
分岐命令を実行したことを検出して分岐検出信号を出力
する分岐命令検出手段と、分岐トレース許可信号を発生
する分岐トレース許可信号発生手段と、前記分岐検出信
号により分岐元アドレスをスタックして記憶するトレー
ス用プログラムカウンタスタックレジスタと、前記許可
信号の制御で、4個のプログラムカウンタスタックレジ
スタPC8の内、パイプラインステージDECに対応す
るDEC用のプログラムカウンタスタックレジスタ内の
分岐先アドレスを選択して、オペランドアドレスと切り
替えてアドレスバスに出力する第1の選択手段と、前記
分岐トレース許可信号の制御で前記トレース用プログラ
ムカウンタスタックレジスタ内の分岐元アドレスを選択
して、実行データと切り替えてデータバスに出力する第
2の切り替え手段とを設け、前記分岐元アドレスと分岐
先アドレスは分岐命令実行後の空きサイクルに命令フェ
ッチと重畳せぬように出力されるものとするマイクロプ
ロセッサとすることにより、4段のパイプライン構成の
マイクロプロセッサであっても、既存のPC8を活用し
ながら、分岐元アドレスと分岐先アドレスが簡単に得ら
れ、トレースに適したマイクロプロセッサを得ることが
できる。
As described above, according to the microprocessor according to the embodiment of the present invention, the microprocessor having a four-stage pipeline configuration is provided with a program counter stack register corresponding to each of the pipelines, and each register is connected to the corresponding pipeline. In a microprocessor that stores executed addresses in a stacked manner, the microprocessor includes branch instruction detection means for detecting that the microprocessor has executed a branch instruction and outputting a branch detection signal. , a branch trace permission signal generating means for generating a branch trace permission signal, a trace program counter stack register for stacking and storing branch source addresses according to the branch detection signal, and four program counters under the control of the permission signal. a first selection means for selecting a branch destination address in a program counter stack register for the DEC corresponding to the pipeline stage DEC in the stack register PC8, switching it with an operand address and outputting it to the address bus; and second switching means for selecting the branch source address in the trace program counter stack register under control of the permission signal, switching it with execution data and outputting it to the data bus, wherein the branch source address and the branch destination address are By using a microprocessor that outputs data in a free cycle after executing a branch instruction so as not to overlap with an instruction fetch, even a microprocessor with a four-stage pipeline configuration can be used while utilizing the existing PC8. , the branch source address and the branch destination address can be easily obtained, and a microprocessor suitable for tracing can be obtained.

なお、実施例では、分岐元アドレスおよび分岐先アドレ
スをサイクルVで出力したが、他の空きサイクル■また
は■で出力してもよいことは、タイミングチャートから
明らかであることはいうまでもない。
Incidentally, in the embodiment, the branch source address and the branch destination address are output in cycle V, but it goes without saying that it is clear from the timing chart that they may be output in other empty cycles (2) or (2).

発明の効果 以上の実施例から明らかなように、本発明は複数段のパ
イプライン構成のマイクロプロセッサが前記パイプライ
ンのそれぞれに対応するプログラムカウンタスタックレ
ジスタを備え、前記各レジスタは対応するパイプライン
の実行したアドレスをスタックして記憶しているものと
するマイクロプロセッサにおいて、前記マイクロプロセ
ッサの内部に、前記マイクロプロセッサが分岐命令を実
行したことを検出して分岐検出信号を出力する分岐命令
検出手段と、分岐トレース許可信号を発生する分岐トレ
ース許可信号発生手段と、前記分岐検出信号により分岐
元アドレスをスタックして記憶するトレース用プログラ
ムカウンタスタックレジスタと、前記許可信号の制御で
前記プログラムカウンタスタックレジスタ内の分岐先ア
ドレスを選択して、オペランドアドレスと切り替えてア
ドレスバスに出力する第1の選択手段と、前記分岐トレ
ース許可信号の制御で前記トレース用プログラムカウン
タスタックレジスタ内の分岐元アドレスを選択して、実
行データと切り替えてデータバスに出力する第2の切り
替え手段とを設け、前記分岐元アドレスと分岐先アドレ
スは分岐命令実行後の空きサイクルに命令フェッチと重
畳せぬように出力されるものとするマイクロプロセッサ
とすることにより、多段のパイプライン構成のマイクロ
プロセッサであっても、既存のPC8を活用しながら、
分岐元アドレスと分岐先アドレスが簡単に得られ、トレ
ースに適したマイクロプロセッサを得ることができる。
Effects of the Invention As is clear from the embodiments described above, the present invention provides a microprocessor having a multi-stage pipeline configuration, which includes a program counter stack register corresponding to each of the pipelines, and each register having a program counter stack register corresponding to each of the pipelines. In a microprocessor that stores executed addresses in a stacked manner, the microprocessor includes branch instruction detection means for detecting that the microprocessor has executed a branch instruction and outputting a branch detection signal. , a branch trace enable signal generating means for generating a branch trace enable signal; a trace program counter stack register for stacking and storing branch source addresses according to the branch detection signal; a first selection means for selecting a branch destination address, switching it with an operand address, and outputting it to an address bus; and selecting a branch source address in the trace program counter stack register under the control of the branch trace enable signal. , a second switching means for switching with the execution data and outputting it to the data bus, and the branch source address and the branch destination address are outputted in an empty cycle after execution of the branch instruction so as not to overlap with an instruction fetch. By creating a microprocessor with
A branch source address and a branch destination address can be easily obtained, and a microprocessor suitable for tracing can be obtained.

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

第1図は本発明の一実施例のマイクロプロセッサの構成
を示すブロック図、第2図は本発明のマイクロプロセッ
サの動作を示すタイミングチャート、第3図は従来のト
レース装置の構成を示すブロック図、第4図は従来のト
レース装置の動作を示すタイミングチャートである。 10・・・・・・プログラムカウンタスタックレジスタ
、11・・・・・・アドレスバス、12・・・・・・デ
ータバス、13・・・・・・分岐先アドレスバス、14
・・・・・・分岐元アドレスバス、15・・・・・・オ
ペランドアドレス、16・・・・・・実行アドレス、1
7.19・・・・・・セレクタ(第1の選択手段)、1
8,20.21・・・・・・セレクタ(第2の選択手段
)、22・・・・・・マイクロプロセッサ。
FIG. 1 is a block diagram showing the configuration of a microprocessor according to an embodiment of the present invention, FIG. 2 is a timing chart showing the operation of the microprocessor according to the present invention, and FIG. 3 is a block diagram showing the configuration of a conventional tracing device. , FIG. 4 is a timing chart showing the operation of a conventional tracing device. 10...Program counter stack register, 11...Address bus, 12...Data bus, 13...Branch destination address bus, 14
...Branch source address bus, 15...Operand address, 16...Execution address, 1
7.19...Selector (first selection means), 1
8, 20. 21... Selector (second selection means), 22... Microprocessor.

Claims (1)

【特許請求の範囲】[Claims] 複数段のパイプライン構成のマイクロプロセッサが前記
パイプラインのそれぞれに対応するプログラムカウンタ
スタックレジスタを備え、前記各レジスタは対応するパ
イプラインの実行したアドレスをスタックして記憶して
いるものとするマイクロプロセッサにおいて、前記マイ
クロプロセッサの内部に、前記マイクロプロセッサが分
岐命令を実行したことを検出して分岐検出信号を出力す
る分岐命令検出手段と、分岐トレース許可信号を発生す
る分岐トレース許可信号発生手段と、前記分岐検出信号
により分岐元アドレスをスタックして記憶するトレース
用プログラムカウンタスタックレジスタと、前記許可信
号の制御で前記プログラムカウンタスタックレジスタ内
の分岐先アドレスを選択して、オペランドアドレスと切
り替えてアドレスバスに出力する第1の選択手段と、前
記分岐トレース許可信号の制御で前記トレース用プログ
ラムカウンタスタックレジスタ内の分岐元アドレスを選
択して、実行データと切り替えてデータバスに出力する
第2の切り替え手段とを設け、前記分岐元アドレスと分
岐先アドレスは分岐命令実行後の空きサイクルに命令フ
ェッチと重畳せぬように出力するようにしてなるマイク
ロプロセッサ。
A microprocessor having a multi-stage pipeline configuration, comprising a program counter stack register corresponding to each of the pipelines, and each register storing a stack of addresses executed by the corresponding pipeline. In the microprocessor, branch instruction detection means detects execution of a branch instruction by the microprocessor and outputs a branch detection signal, and branch trace permission signal generation means generates a branch trace permission signal; A tracing program counter stack register stores a branch source address in a stacked manner according to the branch detection signal, and a branch destination address in the program counter stack register is selected under the control of the enable signal and is switched to an operand address to be transferred to an address bus. and a second switching means that selects a branch source address in the trace program counter stack register under the control of the branch trace permission signal, switches it with execution data, and outputs it to the data bus. and the branch source address and the branch destination address are output in an empty cycle after execution of a branch instruction so as not to overlap with an instruction fetch.
JP15197990A 1990-06-11 1990-06-11 Microprocessor Pending JPH0444125A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP15197990A JPH0444125A (en) 1990-06-11 1990-06-11 Microprocessor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP15197990A JPH0444125A (en) 1990-06-11 1990-06-11 Microprocessor

Publications (1)

Publication Number Publication Date
JPH0444125A true JPH0444125A (en) 1992-02-13

Family

ID=15530409

Family Applications (1)

Application Number Title Priority Date Filing Date
JP15197990A Pending JPH0444125A (en) 1990-06-11 1990-06-11 Microprocessor

Country Status (1)

Country Link
JP (1) JPH0444125A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013125389A (en) * 2011-12-14 2013-06-24 Renesas Electronics Corp Semiconductor device and method of controlling the same

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013125389A (en) * 2011-12-14 2013-06-24 Renesas Electronics Corp Semiconductor device and method of controlling the same

Similar Documents

Publication Publication Date Title
US6959367B2 (en) System having read-modify-write unit
US4027291A (en) Access control unit
KR960011613A (en) Data processing device
US5673415A (en) High speed two-port interface unit where read commands suspend partially executed write commands
US7111152B1 (en) Computer system that operates in VLIW and superscalar modes and has selectable dependency control
JPH0444125A (en) Microprocessor
JPS63228225A (en) Digital computer system
US5454090A (en) Apparatus for furnishing instructions in a microprocessor with a multi-stage pipeline processing unit for processing instruction phase and having a memory and at least three additional memory units
CA2157435C (en) Vector data bypass mechanism for vector computer
JP2924736B2 (en) Pipeline arithmetic unit
US20030028756A1 (en) Programmable unit
JPS6259829B2 (en)
JP3001547B1 (en) In-circuit emulator
JP3446603B2 (en) Information processing apparatus and pipeline processing method
JP2511063B2 (en) Pipeline control method
JP3366235B2 (en) Data read control device
JP2761324B2 (en) High-speed processing method
JP2000003279A (en) Vliw processor, program generator and recording medium
JPH0228724A (en) System for controlling branching instruction
JP2817675B2 (en) Program debug device
JPS58181155A (en) Storage device of state history
JP2001084142A (en) Microprocessor
JPH0252301B2 (en)
JPH02115963A (en) Pre-charge time control circuit
JPH06110686A (en) Register interference preventing device