JP2808985B2 - Information processing device and debug device - Google Patents
Information processing device and debug deviceInfo
- Publication number
- JP2808985B2 JP2808985B2 JP4157461A JP15746192A JP2808985B2 JP 2808985 B2 JP2808985 B2 JP 2808985B2 JP 4157461 A JP4157461 A JP 4157461A JP 15746192 A JP15746192 A JP 15746192A JP 2808985 B2 JP2808985 B2 JP 2808985B2
- Authority
- JP
- Japan
- Prior art keywords
- pipeline
- information processing
- microprocessor
- instruction
- debug
- 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 - Fee Related
Links
Landscapes
- Debugging And Monitoring (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Advance Control (AREA)
Description
【0001】[0001]
【産業上の利用分野】本発明は情報処理装置に関し、特
にその情報処理装置を応用した装置を開発する際に利用
するデバッグ装置及び、そのデバッグ装置に搭載する中
央処理装置に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an information processing apparatus, and more particularly, to a debugging apparatus used when developing an apparatus to which the information processing apparatus is applied, and a central processing unit mounted on the debugging apparatus.
【0002】[0002]
【従来の技術】まず、情報処理装置における検査手段で
あるスキャンパスについて説明する。図3は、一般的な
情報処理装置45の内部構造を疑似的に表したものであ
る。実際には、ループバック回路等によりもっと複雑に
なる。情報処理装置45は、入力を決めると一意出力が
決定される組合回路46と、内部状態を保持し入力を決
めただけでは出力が確定しない順序回路47との組合せ
からなっている。組合せ回路46としてはANDゲート
等が、順序回路47としてはラッチ回路がある。2. Description of the Related Art First, a scan path which is an inspection means in an information processing apparatus will be described. FIG. 3 schematically shows the internal structure of a general information processing device 45. In practice, the situation is further complicated by a loopback circuit or the like. The information processing device 45 is composed of a combination circuit 46 in which a unique output is determined when an input is determined, and a sequential circuit 47 in which an internal state is retained and an output is not determined only by determining an input. The combinational circuit 46 includes an AND gate and the like, and the sequential circuit 47 includes a latch circuit.
【0003】情報処理装置の動作検査を行うには、入力
端子からテストパターンを入力し、出力端子へ出力され
るパターンと期待値を照合することにより行われてい
た。入力パターンとしては、基本的に内部順序回路の状
態を全て変化させるようなパターンが必要であるが、入
力端子から離れた順序回路の状態を変化させるには複雑
な入力パターン列を入力端子から入力する必要があり、
実質的に不可能となっていた。In order to perform an operation test on an information processing apparatus, a test pattern is input from an input terminal, and a pattern output to an output terminal is compared with an expected value. As an input pattern, a pattern that basically changes all the states of the internal sequential circuit is required, but to change the state of the sequential circuit far from the input terminal, a complex input pattern sequence is input from the input terminal. Need to
It was virtually impossible.
【0004】そこで、図4に示すように新たにテストモ
ード端子19を設け、端子19がインアクティブの場合
本来の情報処理装置の接続状態に、アクティブの場合順
序回路を構成するラッチ48の出力を他のラッチの入力
へ接続、またラッチのクロック入力を全て接続し、最初
のラッチ入力,最後のラッチ出力,クロック入力を外部
端子へ取り出す。すると、ラッチが図4のように直列に
接続され、シフトレジスタを構成することになる。Therefore, as shown in FIG. 4, a new test mode terminal 19 is provided, and when the terminal 19 is inactive, the original connection state of the information processing device is set. Connect to the inputs of other latches and all the clock inputs of the latches, and take out the first latch input, last latch output, and clock input to external terminals. Then, the latches are connected in series as shown in FIG. 4 to constitute a shift register.
【0005】ここで、スキャンパスクロック入力端子1
8にテストクロックを入力することにより、ラッチの内
容が順次出力端子17へ出力され各ラッチ48にどのよ
うな値がセットされていたかを知ることができる。さら
にスキャンパスデータ入力端子21へ値をセットしスキ
ャンパスクロック入力端子18へパルスを入力すること
により、ラッチ48に任意の値をセットすることができ
検査を容易に行うことができるようになる。このような
検査手段をスキャンパス方式と呼ぶ。Here, scan path clock input terminal 1
By inputting a test clock to 8, the contents of the latch are sequentially output to the output terminal 17, and it is possible to know what value has been set in each latch 48. Further, by setting a value to the scan path data input terminal 21 and inputting a pulse to the scan path clock input terminal 18, an arbitrary value can be set to the latch 48, and the inspection can be easily performed. Such an inspection means is called a scan path method.
【0006】次に近年の情報処理装置の性能向上の手段
として用いられているパイプライン処理について図5を
用いて説明する。パイプライン処理では、一つの命令を
いくつかの基本動作(ステージという)に分解し、これ
を時間的に処理してゆく方法である。ここにあげた例で
は、一つの命令を5つの基本動作(IF,RD,AL
U,MEM,WB)に分解している。Next, a pipeline process used as a means for improving the performance of an information processing apparatus in recent years will be described with reference to FIG. In the pipeline processing, one instruction is decomposed into several basic operations (called stages), and this is temporally processed. In the example given here, one instruction is used for five basic operations (IF, RD, AL
U, MEM, WB).
【0007】IFステージで命令を読み込み、RDステ
ージで命令デコードおよびレジスタ読み込みを行う。A
LUステージでオペレーション(演算等)を行い、ME
Mステージでメモリへのアクセスを行う。最後のWBス
テージでレジスタへの書き込みを行うものである。この
基本動作を同時に実行するハードウェアを準備すること
により、ある時点で5つの命令を並列に処理しているこ
とになる。[0007] Instructions are read in the IF stage, and instruction decoding and register reading are performed in the RD stage. A
Perform operations (operations, etc.) at the LU stage and
The memory is accessed at the M stage. In the last WB stage, writing to the register is performed. By preparing hardware that executes the basic operation at the same time, five instructions are being processed in parallel at a certain point in time.
【0008】このようなパイプライン処理を行った場
合、ディレイスロットと呼ばれる事象が発生する。この
例では、ディレイスロットとしてロードディレイスロッ
トとブランチディレイスロットの2つが発生する。図6
で、ロード命令(命令1)を処理する過程で、外部メモ
リからデータを読み込むため、ロード命令のMEMステ
ージが終了するまで値が確定しない。そのため、次の命
令(命令2)ではロード命令でロードされる値をALU
ステージで使用することができない。さらに次の命令
(命令3)では利用することができる。この命令2の部
分をロードディレイスロットと呼ぶ。When such pipeline processing is performed, an event called a delay slot occurs. In this example, two delay slots, a load delay slot and a branch delay slot, occur. FIG.
Since the data is read from the external memory in the process of processing the load instruction (instruction 1), the value is not determined until the MEM stage of the load instruction ends. Therefore, in the next instruction (instruction 2), the value loaded by the load instruction is
Cannot be used on stage. It can be used in the next instruction (instruction 3). This part of the instruction 2 is called a load delay slot.
【0009】図7(b)で分岐命令(命令1)がRDス
テージでデコード(レジスタ読み込み)され、分岐アド
レスが確定するが、その時にはすでに次の命令(命令
2)のIFステージの処理を終わっているため、次の命
令(命令3)ではじめて分岐アドレスのインストラクシ
ョンフェッチを行うことが可能になる。この命令2の部
分をブランチディレイスロットと呼び、この命令(命令
2)は分岐する/しないにかかわらず必ず実行される。In FIG. 7B, the branch instruction (instruction 1) is decoded (register read) at the RD stage, and the branch address is determined. At that time, the processing of the IF stage of the next instruction (instruction 2) has already been completed. Therefore, the instruction fetch of the branch address can be performed only by the next instruction (instruction 3). The part of this instruction 2 is called a branch delay slot, and this instruction (instruction 2) is always executed regardless of branching.
【0010】このようなディレイスロットを回避するた
めに、ハードウェアの制御回路を設ける方法と、ソフト
ウェアで処理する方法がある。ソフトウェア処理の場
合、ディレイスロットが発生した場合、パイプラインの
流れを一時停止させ次の命令をディレイスロットからは
ずす方法が取られる。ソフトウェア処理の場合、ディレ
イスロットを有効に使用するように命令の順序を入替え
る方法をとる。この他回避方法には各種の方法がある。In order to avoid such a delay slot, there are a method of providing a hardware control circuit and a method of processing by software. In the case of software processing, when a delay slot occurs, a method of temporarily stopping the flow of the pipeline and removing the next instruction from the delay slot is adopted. In the case of software processing, a method of changing the order of instructions so as to use delay slots effectively is used. In addition, there are various methods for avoiding this.
【0011】図8に上記スキャンパス方式を採用したパ
イプライン型マイクロプロセッサの内部構造を処理経路
を中心に示す。二重線のブロックが各ステージの処理を
制御するコントローラブロックになっている。図面を簡
単にするため、各信号/ラッチは1つの線/ラッチで表
しているが、実際には複数の信号線/ラッチから構成さ
れている。図面には明記していないがラッチにはスキャ
ンパスの回路が組込まれており、スキャンパスのデータ
経路の抜粋のみ図面に記入してある。FIG. 8 shows an internal structure of a pipeline type microprocessor employing the above-described scan path system, mainly on a processing path. The double-lined block is a controller block that controls the processing of each stage. Although each signal / latch is represented by one line / latch for simplicity of the drawing, it is actually composed of a plurality of signal lines / latches. Although not shown in the drawing, the scan path circuit is incorporated in the latch, and only an excerpt of the data path of the scan path is shown in the drawing.
【0012】IFステージにはIFブロック1があり、
命令入力端子23からデータ、すなわち命令コードを読
み込み、ラッチ2へパスする。ラッチ2を通った命令コ
ードは、RFブロック3とCDEブロック4へ渡され
る。The IF stage has an IF block 1,
Data, that is, an instruction code is read from the instruction input terminal 23 and passed to the latch 2. The instruction code passed through the latch 2 is passed to the RF block 3 and the CDE block 4.
【0013】RFブロック3は、命令コードから参照さ
れるレジスタを決め、所定の3ステートバッファ13を
開けてレジスタデータをラッチ6へパスさせる。同時に
DECブロック4では命令をデコードし、その結果をラ
ッチ5へパスする。ラッチ5を通ったレジスタ内容と命
令デコード結果は、ALUブロック7へ渡され、演算が
実行され、その結果がラッチ8へパスされる。The RF block 3 determines a register referred to from the instruction code, opens a predetermined three-state buffer 13, and passes register data to the latch 6. At the same time, the DEC block 4 decodes the instruction and passes the result to the latch 5. The contents of the register and the instruction decode result passed through the latch 5 are passed to the ALU block 7, where the operation is executed, and the result is passed to the latch 8.
【0014】ラッチ8を通った演算結果はMEMブロッ
ク9へパスされ、必要であればデータ交換端子24とデ
ータ交換を行い、その結果をラッチ10へパスする。ラ
ッチ10を通ったデータはWBブロック11へ引渡さ
れ、その結果をレジスタであるラッチ12へ書込む。各
ステージを分割するラッチのクロック信号は、マイクロ
プロセッサのクロック入力端子22へ接続されている。
このようにラッチを使って各ステージを時間的に分割す
ることにより、パイプライン動作を実現することができ
る。The operation result passed through the latch 8 is passed to the MEM block 9, where necessary, data is exchanged with the data exchange terminal 24, and the result is passed to the latch 10. The data passing through the latch 10 is transferred to the WB block 11, and the result is written to the latch 12, which is a register. The clock signal of the latch dividing each stage is connected to the clock input terminal 22 of the microprocessor.
As described above, by dividing each stage in time using the latch, a pipeline operation can be realized.
【0015】次に、情報処理装置が正しく動作している
かどうかを確認するデバッグ装置について説明する。こ
こでは情報処理装置として、マイクロプロセッサ応用製
品を取上げる。Next, a debugging device for checking whether the information processing device is operating properly will be described. Here, a microprocessor application product is taken as an information processing device.
【0016】図9は、マイクロプロセッサ応用製品39
とデバッグ装置の概略構成を示したものである。マイク
ロプロセッサ応用製品39のハードウェアとして、マイ
クロプロセッサ40,RAM42,ROM41,I/O
43から構成されている。デバッグ装置は、プローブ2
6等マイクロプロセッサ応用製品39とデバッグ装置を
接続する手段を有し、デバッグ用マイクロプロセッサ3
3と各種事象を検出するイベント検出回路28、その他
の制御回路から構成され、デバッグ情報を表示またデバ
ッグ装置を制御するコマンドを入力するためにコンソー
ル30等のユーザインタフェースを持っている。FIG. 9 shows a microprocessor application product 39.
And a schematic configuration of a debugging device. As hardware of the microprocessor application product 39, a microprocessor 40, a RAM 42, a ROM 41, an I / O
43. The debug device is probe 2
A means for connecting the microprocessor application product 39 and the like to the debug device, and the debug microprocessor 3
3 and an event detection circuit 28 for detecting various events, and other control circuits, and has a user interface such as a console 30 for displaying debug information and inputting commands for controlling the debug device.
【0017】マイクロプロセッサ応用製品39上のマイ
クロプロセッサ40を抜取り、そこへプローブ26を介
してデバッグ装置を接続し、デバッグ装置からマイクロ
プロセッサ応用製品39を制御し、マイクロプロセッサ
や、その応用製品の状態をコンソール30へ表示した
り、変更して動作を確認してゆくものである。The microprocessor 40 is withdrawn from the microprocessor application product 39, a debug device is connected to the microprocessor 40 via the probe 26, and the microprocessor application product 39 is controlled from the debug device. Is displayed on the console 30 or changed to confirm the operation.
【0018】デバッグ装置の重要な機能として、ブレー
ク機能がある。デバッグ装置の内部構成をブレーク機能
の実現方法を中心に説明する。デバッグ装置内にはデバ
ッグ用マイクロプロセッサ33があり、これは普通のマ
イクロプロセッサ40の機能のほかに、割込み信号と同
様なプログラム実行を強制的に所定のプログラムエント
リへ変更できるブレーク入力端子20のブレーク信号を
有する。An important function of the debugging device is a break function. The internal configuration of the debug device will be described focusing on a method for realizing a break function. A debugging microprocessor 33 is provided in the debugging device. The debugging microprocessor 33 has a function of an ordinary microprocessor 40 and a break at the break input terminal 20 for forcibly changing the program execution similar to an interrupt signal to a predetermined program entry. Signal.
【0019】イベント検出回路28は、外部イベント3
2(例えば、ある番地へデータを書込んだ)を検出し、
ブレーク入力端子20にブレーク信号を生成する。ま
た、それに伴ってプローブ26へ接続されるバッファ3
4を切り、内部バス31のバッファ35を開ける制御信
号も生成する。The event detection circuit 28 detects an external event 3
2 (for example, data has been written to a certain address)
A break signal is generated at the break input terminal 20. The buffer 3 connected to the probe 26
The control signal for turning off the buffer 4 and opening the buffer 35 of the internal bus 31 is also generated.
【0020】内部バス31には、デバッグプログラム3
8やI/O29が接続されている。I/O29にはコン
ソール30が接続されている。デバッグ用マイクロプロ
セッサ33は、ユーザプログラムを実行中バッファ制御
信号をインアクティブとし、プローブ側のバッファ34
を開け、マイクロプロセッサ応用製品39上の資源(R
OM41,RAM42,I/O43)を制御している。The internal bus 31 has a debug program 3
8 and I / O 29 are connected. The console 30 is connected to the I / O 29. The debug microprocessor 33 inactivates the buffer control signal during execution of the user program, and
And open the resources (R
OM41, RAM42, I / O43).
【0021】イベント検出回路28でイベントを検出す
ると、ブレーク入力端子20のブレーク信号をアクティ
ブとし、かつバッファ制御信号をアクティブとする。す
ると、デバッグ用マイクロプロセッサ33は内部バス3
1上の資源(デバッグプログラム38,I/O29,イ
ベント検出回路28)にアクセスを行えるようになる。When an event is detected by the event detection circuit 28, the break signal at the break input terminal 20 is activated and the buffer control signal is activated. Then, the debug microprocessor 33 is connected to the internal bus 3
1 (debug program 38, I / O 29, event detection circuit 28).
【0022】デバッグプログラム38には、(デバッグ
用)マイクロプロセッサ33の内部情報(例えばレジス
タの内容)を出力させ、コンソール30からのコマンド
にしたがいコマンド処理を行うプログラムが格納されて
いる。ブレーク動作からのユーザプログラムを実行する
には、内部バス31上のデバッグプログラム38の制御
のもと、レジスタの値をセットし、ユーザプログラムに
制御を渡す時に内部バッファ35を切り、プローブ側の
バッファ34を開けマイクロプロセッサ応用製品39上
のユーザプログラムへ制御を移す。The debug program 38 stores a program for outputting internal information (for example, the contents of a register) of the microprocessor 33 (for debugging) and performing command processing according to a command from the console 30. To execute the user program from the break operation, the register value is set under the control of the debug program 38 on the internal bus 31, the internal buffer 35 is cut off when the control is passed to the user program, and the buffer on the probe side is turned off. 34 is opened and the control is transferred to the user program on the microprocessor application product 39.
【0023】この動作を図10に示している。このよう
に、マイクロプロセッサ応用製品上の資源と内部バス上
の資源を排他的に制御することにより、所定のイベント
が発生した時にプログラム実行を中断させ、マイクロプ
ロセッサの状態確認等のデバッグを行うようになってい
た。This operation is shown in FIG. As described above, by exclusively controlling the resources on the microprocessor application product and the resources on the internal bus, the program execution is interrupted when a predetermined event occurs, and debugging such as checking the state of the microprocessor is performed. Had become.
【0024】[0024]
【発明が解決しようとする課題】以上のようなパイプラ
イン処理による情報処理装置(マイクロプロセッサ)に
対するデバッグ装置では、ブレーク時にブレーク動作に
よりデバッグプログラムへ制御を移しレジスタストアを
行い、ブレーク動作からの復帰時にレジスタロードを行
い分岐命令によってデバッグプログラムからユーザプロ
グラムへ制御を移していた。そのため、ロードディレイ
スロットやブランチディレイスロットが発生し、それを
回避する手段を準備しなければならず、デバッグ装置が
複雑になっていた。In a debugging apparatus for an information processing apparatus (microprocessor) using the above-described pipeline processing, control is transferred to a debug program by a break operation at the time of a break, register storage is performed, and return from the break operation is performed. Sometimes, register loading was performed and control was transferred from the debug program to the user program by a branch instruction. Therefore, a load delay slot and a branch delay slot are generated, and a means for avoiding the load delay slot and the branch delay slot must be prepared, so that the debugging device is complicated.
【0025】さらにパイプライン構造からみると、ユー
ザプログラムへ制御が移った時点でパイプライン状態が
元の状態でないために、ディレイスロットによって発生
する問題点がブレーク動作させることにより正しく動作
したり、正しく動作するプログラムが異常動作したりす
る場合がある。Further, from the viewpoint of the pipeline structure, when the control is transferred to the user program, the pipeline state is not the original state. An operating program may operate abnormally.
【0026】また、近年の情報処理装置では処理速度
(クロック周波数)が上がり、内部バスとプローブバッ
ファの切換えが間に合わなくなったり、プローブバッフ
ァによって(デバッグ用)マイクロプロセッサの出力遅
延時間等のAC特性が変化し、実際のマイクロプロセッ
サ応用製品の動作とデバッグ装置を接続した動作にギャ
ップが発生し問題となっていた。Further, in recent information processing apparatuses, the processing speed (clock frequency) increases, and the switching between the internal bus and the probe buffer cannot be made in time, or the probe buffer reduces the AC characteristics such as the output delay time of the microprocessor (for debugging). As a result, a gap has arisen between the operation of the actual microprocessor application product and the operation of connecting the debugger, which has been a problem.
【0027】本発明の目的は、パイプライン状態が変化
することにより発生する問題点を回避する情報処理装置
及びデバッグ装置を提供することにある。An object of the present invention is to provide an information processing apparatus and a debugging apparatus which avoid problems caused by a change in pipeline state.
【0028】[0028]
【課題を解決するための手段】前記目的を達成するた
め、本発明に係る情報処理装置は、1つの命令を複数の
基本動作に分割し、該基本動作を時間的に分割して処理
を進めるパイプライン処理型情報処理装置において、外
部からの要求により、パイプライン動作を一時停止させ
る手段と、前記パイプライン動作を一時停止させると共
に、前記パイプラインをテストモードに設定し、テスト
クロックを入力することにより、前記パイプラインの内
部順序回路の情報をテスト出力し、あるいはテスト入力
するスキャンパス回路とを有し、 前記パイプラインを一
時停止させた状態で前記スキャンパス動作を行うもので
ある。In order to achieve the above object, an information processing apparatus according to the present invention divides one instruction into a plurality of basic operations, and temporally divides the basic operations to advance processing. In a pipeline processing type information processing apparatus, a means for temporarily stopping a pipeline operation in response to an external request and a method for temporarily stopping the pipeline operation are provided.
At the same time, the pipeline is set to the test mode, and the test is performed.
By inputting a clock, the pipeline
Test output or test input of sequential circuit information
And a scan path circuit for one of the pipeline
The scan path operation is performed in a stopped state .
【0029】また、本発明に係るデバック装置は、前記
情報処理装置を用い、該情報処理装置の応用製品の動作
を強制的に中断させた状態を確認/変更することによ
り、該応用製品の動作を確認するデバッグ装置におい
て、前記スキャンパス回路を動作させ、その情報から前
記情報処理装置の内部状態を設定/表示する手段を有す
るものである。Moreover, debugging device according to the present invention, the
Operation of an application product of the information processing device using the information processing device
Confirm / change the status where the
In a debugging device to confirm the operation of the application product.
Te, operates the scan path circuit, and has a means for setting / displaying the internal state of the information processing apparatus from the information.
【0030】[0030]
【作用】情報処理装置において、ブレーク時にパイプラ
イン動作を一時停止させ、パイプライン動作を停止した
状態でスキャンパス方式により情報処理装置の内部状態
を、デバッグ装置から読み出したり、あるいはセットし
たりする。In the information processing device, the pipeline operation is temporarily stopped at the time of a break, and the internal state of the information processing device is read out from the debug device or set by the scan path method while the pipeline operation is stopped.
【0031】またこのような情報処理装置を用いたデバ
ッグ装置において、ブレーク動作時にパイプラインを停
止し、上記スキャンパス方式を用いてデバッグ情報を取
り出したり、セットしたりする。In a debug device using such an information processing device, the pipeline is stopped at the time of a break operation, and debug information is taken out or set using the scan path method.
【0032】[0032]
【実施例】次に本発明について図面を参照して説明す
る。図1は、本発明の一実施例に係る情報処理装置(マ
イクロプロセッサ)をパイプライン状態を中心に示した
図である。DESCRIPTION OF THE PREFERRED EMBODIMENTS Next, the present invention will be described with reference to the drawings. FIG. 1 is a diagram mainly showing a pipeline state of an information processing apparatus (microprocessor) according to an embodiment of the present invention.
【0033】図において、本実施例では、図8の従来の
マイクロプロセッサのパイプラインフロー図に対し、ブ
レーク入力端子20からのブレーク信号をインバータゲ
ート15で反転した信号と、クロック入力端子22にA
NDゲート16とが追加され、ブレーク入力端子20と
スキャンパスモード設定入力端子(TEST端子)19
にORゲート14が追加されている。In this embodiment, in the present embodiment, a signal obtained by inverting a break signal from a break input terminal 20 by an inverter gate 15 and an A signal to a clock input terminal 22 are different from the pipeline flow chart of the conventional microprocessor shown in FIG.
An ND gate 16 is added, and a break input terminal 20 and a scan path mode setting input terminal (TEST terminal) 19
Has an OR gate 14 added.
【0034】このようなマイクロプロセッサにおいてブ
レーク要求が入ると、ラッチへのクロックが停止するた
め、パイプラインが保持された状態で停止する。また、
同時にスキャンパステストモード信号がアクティブとな
り、すべてのラッチはスキャンパスデータ入力端子(T
IN端子)21を入力、スキャンパスデータ出力端子
(TOUT端子)17を出力とするシフトレジスタを構
成し、スキャンパスクロック入力端子(TCK)18へ
パルスを与えることにより順次内容を取り出したり、セ
ットしたりできるようになる。When a break request is received in such a microprocessor, the clock to the latch is stopped, so that the microprocessor stops with the pipeline held. Also,
At the same time, the scan path test mode signal becomes active, and all the latches are connected to the scan path data input terminal (T
A shift register having an IN terminal 21 as an input and a scan path data output terminal (TOUT terminal) 17 as an output is constituted, and a pulse is applied to a scan path clock input terminal (TCK) 18 to sequentially extract or set contents. Or be able to.
【0035】このようなマイクロプロセッサにおいて、
ブレーク状態でレジスタの内容を表示するには、TOU
T端子17から最初に出力されるデータ列がレジスタの
内容を表しているので、このシリアルデータをレジスタ
幅のパラレルデータとして表示することにより実現でき
る。In such a microprocessor,
To display the contents of a register in the break state, use TOU
Since the data string output first from the T terminal 17 represents the contents of the register, this can be realized by displaying this serial data as parallel data of the register width.
【0036】またレジスタの内容を変更するには、セッ
トしたいレジスタデータ(パラレルデータ)をシリアル
データへ変更し、TIN端子21から入力しTCK18
へパルスを所定回数入力することによりセットすること
ができる。To change the contents of the register, the register data (parallel data) to be set is changed to serial data, input from the TIN terminal 21, and the TCK 18
Can be set by inputting a pulse a predetermined number of times.
【0037】その他、各ステージのデータを変更するこ
ともできる。例えばIFブロックのラッチ2の値を変更
することによりパイプラインに入っている命令を変更し
たり、ALUブロックのラッチ8の値を変更することに
より演算結果を修正することができる。In addition, the data of each stage can be changed. For example, the instruction in the pipeline can be changed by changing the value of the latch 2 of the IF block, and the operation result can be corrected by changing the value of the latch 8 of the ALU block.
【0038】また、ユーザプログラムへ制御を戻す場合
でも、TIN21からブレーク時に取り出したデータを
入力することによりパイプライン状態へ戻し、ブレーク
入力端子20のブレーク信号を解除することにより、パ
イプライン状態を含めてユーザプログラムへ復帰させる
ことができるようになる。When the control is returned to the user program, the pipeline state is restored by inputting the data taken out of the TIN 21 at the time of the break, and the break signal at the break input terminal 20 is released to include the pipeline state. To return to the user program.
【0039】本発明の実施例2として、上記マイクロプ
ロセッサを利用したデバッグ装置の構成図を図2に示
す。デバッグ用マイクロプロセッサ25は直接プローブ
26へ接続され、デバッグ用マイクロプロセッサ25の
スキャンパス制御信号はスキャンパス制御回路27へ接
続されている。As a second embodiment of the present invention, FIG. 2 shows a configuration diagram of a debugging device using the above-mentioned microprocessor. The debug microprocessor 25 is directly connected to the probe 26, and the scan path control signal of the debug microprocessor 25 is connected to the scan path control circuit 27.
【0040】スキャンパス制御回路27にはイベント検
出回路28のブレーク入力端子20からのブレーク信号
が接続され、ブレーク状態かどうかを検出できるように
なっている。A break signal from the break input terminal 20 of the event detection circuit 28 is connected to the scan path control circuit 27 so that it is possible to detect whether or not a break state has occurred.
【0041】また、内部バス31へも接続され、実施例
1で説明したマイクロプロセッサ内部情報をI/O29
を通してコンソール30へ表示したり、コンソール30
からの指示により変更したりできる経路を構成してい
る。イベント検出回路28から出ていたバッファの切換
え信号は不要となっている。Further, it is also connected to the internal bus 31 to transfer the microprocessor internal information described in the first embodiment to the I / O 29.
Display on the console 30 through the
A route that can be changed in accordance with an instruction from is configured. The buffer switching signal output from the event detection circuit 28 is unnecessary.
【0042】[0042]
【発明の効果】以上説明したように本発明は、ブレーク
要求がきたときパイプライン動作を一時停止させ、情報
処理装置内部の状態をスキャンパス経由でリード/ライ
トすることにより、パイプラインフローを変更すること
なく内部状態を変更することができるという結果を有す
る。これにより、従来のデバッグ装置で問題となったデ
ィレイスロットによる誤動作を回避できることになる。As described above, the present invention changes the pipeline flow by suspending the pipeline operation when a break request is received and reading / writing the internal state of the information processing device via the scan path. The result is that the internal state can be changed without having to do so. As a result, it is possible to avoid a malfunction due to the delay slot, which is a problem in the conventional debugging device.
【0043】また、実施例2に示したようにプローブと
内部バスへの切換えバッファが不要となり、バッファに
よる処理速度の遅延やAC特性の変化がなくなり、デバ
ッグ装置と実際のマイクロプロセッサの動作の違いを小
さくすることができるというメリットが有る。Further, as shown in the second embodiment, the buffer for switching between the probe and the internal bus is not required, the delay in processing speed and the change in AC characteristics due to the buffer are eliminated, and the difference between the operation of the debugging device and the actual operation of the microprocessor is eliminated. There is an advantage that can be reduced.
【図1】本発明によるマイクロプロセッサを示す構成図
である。FIG. 1 is a configuration diagram showing a microprocessor according to the present invention.
【図2】本発明によるデバッグ装置を示す図である。FIG. 2 is a diagram showing a debugging device according to the present invention.
【図3】情報処理装置の内部構造を示す図である。FIG. 3 is a diagram illustrating an internal structure of the information processing apparatus.
【図4】スキャンパス方式を示す図である。FIG. 4 is a diagram illustrating a scan path method.
【図5】パイプライン処理方式を示す図である。FIG. 5 is a diagram showing a pipeline processing method.
【図6】ロードディレイスロット動作を示す図である。FIG. 6 is a diagram illustrating a load delay slot operation.
【図7】ブランチディレイスロット動作を示す図であ
る。FIG. 7 is a diagram illustrating a branch delay slot operation.
【図8】従来のパイプライン処理マイクロプロセッサを
示す構成図である。FIG. 8 is a configuration diagram showing a conventional pipeline processing microprocessor.
【図9】マイクロプロセッサ応用製品とデバッグ装置と
の関係を示す図である。FIG. 9 is a diagram showing a relationship between a microprocessor application product and a debugging device.
【図10】従来のデバッグ装置におけるユーザプログラ
ム/デバッグプログラム制御フローを示す図である。FIG. 10 is a diagram showing a user program / debug program control flow in a conventional debug device.
1 IFブロック(インストラクションフェッチ動作制
御) 2 ラッチ(IFブロック用) 3 RFブロック(レジスタフェッチ動作制御) 4 DECブロック(命令デコード動作制御) 5 ラッチ(DECブロック用) 6 ラッチ(RFブロック用) 7 ALUブロック(演算動作制御) 8 ラッチ(ALUブロック用) 9 MEMブロック(メモリアクセス制御) 10 ラッチ(MEMブロック用) 11 WBブロック(ライトバック動作制御) 12 ラッチ(レジスタ) 13 3ステートバッファ(レジスタ出力用) 14 ORゲート 15 インバータゲート 16 ANDゲート 17 スキャンパスデータ出力端子 18 スキャンパスクロック入力端子 19 スキャンパスモード設定入力端子 20 ブレーク入力端子 21 スキャンパスデータ入力端子 22 クロック入力端子 23 命令入力端子 24 データ交換端子 25 デバッグ用マイクロプロセッサ 26 プローブ 27 スキャンパス制御回路 28 イベント検出回路 29 I/O(デバッグ装置用) 30 コンソール 31 内部バス 32 外部イベント 33 従来のデバッグ用マイクロプロセッサ 34 バッファ(デバッグ用マイクロプロセッサバス←
→プローブ) 35 バッファ(デバッグ用マイクロプロセッサバス←
→内部バス) 36 インバータ 37 デバッグ用マイクロプロセッサバス 38 デバッグプログラム 39 マイクロプロセッサ応用製品 40 マイクロプロセッサ 41 ROM 42 RAM 43 I/O 44 マイクロプロセッサバス 45 情報処理装置 46 組合回路 47 順序回路 48 ラッチReference Signs List 1 IF block (instruction fetch operation control) 2 Latch (for IF block) 3 RF block (register fetch operation control) 4 DEC block (instruction decode operation control) 5 Latch (for DEC block) 6 Latch (for RF block) 7 ALU Block (arithmetic operation control) 8 Latch (for ALU block) 9 MEM block (memory access control) 10 Latch (for MEM block) 11 WB block (write-back operation control) 12 Latch (register) 13 3-state buffer (for register output) 14 OR gate 15 Inverter gate 16 AND gate 17 Scan path data output terminal 18 Scan path clock input terminal 19 Scan path mode setting input terminal 20 Break input terminal 21 Scan path data input terminal 22 Clock Input Terminal 23 Command Input Terminal 24 Data Exchange Terminal 25 Debug Microprocessor 26 Probe 27 Scan Path Control Circuit 28 Event Detection Circuit 29 I / O (for Debug Device) 30 Console 31 Internal Bus 32 External Event 33 For Conventional Debugging Microprocessor 34 buffer (microprocessor bus for debugging ←
→ Probe 35 buffer (microprocessor bus for debugging)
→ Internal bus) 36 Inverter 37 Debug microprocessor bus 38 Debug program 39 Microprocessor application product 40 Microprocessor 41 ROM 42 RAM 43 I / O 44 Microprocessor bus 45 Information processor 46 Combination circuit 47 Sequential circuit 48 Latch
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.6,DB名) G06F 9/38 G06F 11/22 G06F 11/28──────────────────────────────────────────────────続 き Continued on the front page (58) Field surveyed (Int.Cl. 6 , DB name) G06F 9/38 G06F 11/22 G06F 11/28
Claims (2)
該基本動作を時間的に分割して処理を進めるパイプライ
ン処理型情報処理装置において、 外部からの要求により、パイプライン動作を一時停止さ
せる手段と、前記パイプライン動作を一時停止させると共に、前記パ
イプラインをテストモードに設定し、テストクロックを
入力することにより、前記パイプラインの内部順序回路
の情報をテスト出力し、あるいはテスト入力するスキャ
ンパス回路とを有し、 前記パイプラインを一時停止させた状態で前記スキャン
パス動作を行う ことを特徴とする情報処理装置。 1. An instruction is divided into a plurality of basic operations.
In the pipeline processing-type information processing apparatus proceed by dividing the basic operation time, in response to a request from an outside, and means for temporarily stopping the pipeline operation, the pipeline operation with temporarily stopping, the path
Set the pipeline to test mode and set the test clock
By inputting, the internal sequential circuit of the pipeline
The test output or the test input
A scan circuit in a state where the pipeline is temporarily stopped.
An information processing device for performing a pass operation .
情報処理装置の応用製品の動作を強制的に中断させた状
態を確認/変更することにより、該応用製品の動作を確
認するデバッグ装置において、 前記スキャンパス回路を動作させ、その情報から前記情
報処理装置の内部状態を設定/表示する手段を有するこ
とを特徴とするデバッグ装置。2. The information processing apparatus according to claim 1, wherein
A state in which the operation of an information processing device application product was forcibly interrupted.
Confirm / change the status to confirm the operation of the application product.
A debug apparatus for operating the scan path circuit and setting / displaying an internal state of the information processing apparatus based on information of the scan path circuit.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4157461A JP2808985B2 (en) | 1992-05-25 | 1992-05-25 | Information processing device and debug device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP4157461A JP2808985B2 (en) | 1992-05-25 | 1992-05-25 | Information processing device and debug device |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH05324322A JPH05324322A (en) | 1993-12-07 |
JP2808985B2 true JP2808985B2 (en) | 1998-10-08 |
Family
ID=15650172
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4157461A Expired - Fee Related JP2808985B2 (en) | 1992-05-25 | 1992-05-25 | Information processing device and debug device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2808985B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102016102218A1 (en) | 2016-02-09 | 2017-08-10 | Atm Gmbh | Ripper |
-
1992
- 1992-05-25 JP JP4157461A patent/JP2808985B2/en not_active Expired - Fee Related
Non-Patent Citations (1)
Title |
---|
情報処理ハンドブック、社団法人情報処理学会、オーム社、(平成元年5月30日)、p.213、350−351、391−397、864−866 |
Also Published As
Publication number | Publication date |
---|---|
JPH05324322A (en) | 1993-12-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0528585A1 (en) | Processing system with internal instruction cache | |
RU2137182C1 (en) | Execution of data processing instruction | |
JP2581018B2 (en) | Data processing device | |
EP3572943A1 (en) | Semiconductor device and debug method | |
JP2808985B2 (en) | Information processing device and debug device | |
JP2812630B2 (en) | Test method and test apparatus for buffer storage device | |
US5404499A (en) | Semi-automatic program execution error detection | |
JPH08171504A (en) | Emulation device | |
JPH1115661A (en) | Self-diagnosis method for cpu | |
JP3456894B2 (en) | Sequence controller | |
JP2002116926A (en) | Program processor and program processing method | |
JP2967741B2 (en) | CPU compatibility test equipment | |
JPH06202907A (en) | Debug support device | |
JPH05165737A (en) | Memory test system | |
JPH01131934A (en) | Dynamic single clock tracing system | |
JPH0612292A (en) | Microcomputer | |
JPS60193046A (en) | Detecting system for instruction exception | |
JPS6276756A (en) | Semiconductor device with self-inspecting circuit | |
JPS63217424A (en) | Information processor for pipeline control | |
JPH0282323A (en) | Debugging system for digital signal processor | |
JPH04324536A (en) | Microcomputer | |
JPS6236578B2 (en) | ||
JPS63216141A (en) | Microcomputer device | |
JPH0756765A (en) | Debugging device for input/output processor | |
JPS6167146A (en) | Pseudo fault generating system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |