JPH05120080A - Firmware execution history storage system - Google Patents

Firmware execution history storage system

Info

Publication number
JPH05120080A
JPH05120080A JP3284324A JP28432491A JPH05120080A JP H05120080 A JPH05120080 A JP H05120080A JP 3284324 A JP3284324 A JP 3284324A JP 28432491 A JP28432491 A JP 28432491A JP H05120080 A JPH05120080 A JP H05120080A
Authority
JP
Japan
Prior art keywords
address
instruction
circuit
address register
storage circuit
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
JP3284324A
Other languages
Japanese (ja)
Inventor
Tsuneo Fujiwara
常雄 藤原
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 Ibaraki Ltd
Original Assignee
NEC Ibaraki 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 Ibaraki Ltd filed Critical NEC Ibaraki Ltd
Priority to JP3284324A priority Critical patent/JPH05120080A/en
Publication of JPH05120080A publication Critical patent/JPH05120080A/en
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

PURPOSE:To improve the coverage rate of operation at the time of the debugging of firmware by leaving history about the branch of a jump instruction too, as the history of the execution of the firmware. CONSTITUTION:An address register 3 fetches an instruction address a processor 1 executes, and the address register 4 fetches the instruction address executed one step before the instruction address. An arithmetic circuit 5 subtracts the output of the address register 4 from the output of the address register 3, and if this result is +1, a calculated output signal 501 is made logic '1'. Storage circuits 7 to 9 are constituted of the memories of the same address capacity as an instruction storage circuit 2 and of the data width of 1-bit. The signal of logic '1' of a data line 502, the calculated output signal 501 of the arithmetic circuit 5, and the signal obtained by inverting the logic of the signal 501 are written in the storage circuits 7 to 9. For instance, the address in which '1' is written as the data of the storage circuit 9 shows that it jumps without going forward to the address next to this address.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明はファームウェア実行履歴
記憶方式に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a firmware execution history storage system.

【0002】[0002]

【従来の技術】従来、ファームウェアの実行は、命令格
納回路と同じアドレス容量でデータが1ビット幅の記憶
回路を有し、ファームウェア実行時に当該アドレスのデ
ータに論理“1”を書き込むことにより記録していた。
2. Description of the Related Art Conventionally, execution of firmware is recorded by writing a logical "1" into the data of the address when the firmware has a storage circuit having the same address capacity as the instruction storage circuit and data of 1-bit width. Was there.

【0003】[0003]

【発明が解決しようとする課題】この従来のファームウ
ェア実行履歴記憶方式では、ファームウェアがそのアド
レスを通ったか否かは判断できるものの、条件ジャンプ
命令の次のアドレスの命令が他のアドレスからシャンプ
してくるような場合に、そのアドレスが条件ジャンプ命
令が成立せず、次のアドレスに進んできた為に通ったも
のか、上記他のアドレスからジャンプしてきたものなの
かは判断ができず、ファームウェアのデバッグ時等に動
作の網羅率を調べるうえで不十分であるという問題点が
あった。
In this conventional firmware execution history storage system, it is possible to judge whether or not the firmware has passed through that address, but the instruction at the address next to the conditional jump instruction is shrunk from another address. In this case, it is not possible to determine whether the address has been passed because the conditional jump instruction was not satisfied and the address has advanced to the next address, or the address has jumped from another address above. There was a problem that it was insufficient to check the coverage of operations during debugging.

【0004】[0004]

【課題を解決するための手段】本発明のファームウェア
実行履歴記憶方式は、プロセッサが実行する命令を記憶
している命令格納回路と、 プロセッサが実行したアド
レスを格納する第1のアドレスレジスタと、該第1のア
ドレスレジスタにより示される命令の1命令前に実行し
たアドレスを格納する第2のアドレスレジスタと、該第
2のアドレスレジスタと前記第1のアドレスレジスタの
出力データを演算する演算回路と、前記命令格納回路と
同じアドレス容量で3ビットの入出力データ幅を持つ第
1の記憶回路と、該第1の記憶回路にプロセッサからの
指示により、記憶の指示を行なう指示制御回路とを有
し、前記第1の記憶回路のアドレスラインに前記第2の
アドレスレジスタの出力データが接続され、又前記第1
の記憶回路の3ビットの入力データラインに論理“1”
の信号1ビットと前記演算回路の演算出力信号及び該信
号の論理の反転した信号が接続され、前記プロセッサに
供給される実行クロックが前記第1のアドレスレジスタ
及び前記第2のアドレスレジスタ及び前記第1の記憶回
路の書き込み信号に接続されていることを特徴とする。
A firmware execution history storage system of the present invention includes an instruction storage circuit for storing instructions executed by a processor, a first address register for storing an address executed by the processor, and A second address register for storing an address executed one instruction before the instruction indicated by the first address register; an arithmetic circuit for arithmetically operating output data of the second address register and the first address register; A first storage circuit having the same address capacity as the instruction storage circuit and a 3-bit input / output data width, and an instruction control circuit for issuing a storage instruction to the first storage circuit according to an instruction from a processor. The output data of the second address register is connected to the address line of the first memory circuit, and
"1" on the 3-bit input data line of the memory circuit
1 bit of the signal is connected to the operation output signal of the operation circuit and the inverted signal of the signal, and the execution clock supplied to the processor is the first address register, the second address register, and the second address register. 1 is connected to the write signal of the memory circuit.

【0005】[0005]

【実施例】次に本発明について図面を参照して説明す
る。図1は本発明の一実施例のブロック図である。
The present invention will be described below with reference to the drawings. FIG. 1 is a block diagram of an embodiment of the present invention.

【0006】図1において、プロセッサ1は、命令アド
レス101に実行するアドレスを出力し、命令格納回路
2の命令バス201より命令を受け取り、クロック00
1により命令を実行する。
In FIG. 1, the processor 1 outputs the address to be executed to the instruction address 101, receives the instruction from the instruction bus 201 of the instruction storage circuit 2, and receives the clock 00.
The instruction is executed by 1.

【0007】命令の実行アドレスの履歴を記憶する場合
には、プロセッサ1は指示信号102により指示制御回
路110に指示を出す。指示制御回路110は書き込み
信号111をクロック001が送出されるたびに出力す
る。
When the history of the execution address of the instruction is stored, the processor 1 issues an instruction to the instruction control circuit 110 by the instruction signal 102. The instruction control circuit 110 outputs the write signal 111 every time the clock 001 is transmitted.

【0008】記憶回路7,8および9は、命令格納回路
2と同じアドレス容量でデータ幅が1ビットのメモリで
構成されており、アドレス121によりアドレスが示さ
れ、演算出力信号501及びデータライン502が入力
データであり、書込み信号111により書き込まれる。
尚データライン502は常に論理“1”となっている。
The memory circuits 7, 8 and 9 are composed of a memory having the same address capacity as the instruction storage circuit 2 and a data width of 1 bit, an address is indicated by an address 121, an operation output signal 501 and a data line 502. Is input data and is written by the write signal 111.
The data line 502 is always logic "1".

【0009】アドレスレジスタ3はプロセッサ1の実行
した命令アドレスを、アドレスレジスタ4は、その1ス
テップ前に実行した命令アドレスを書き込み信号111
により取り込む。又、演算回路5はアドレスレジスタ3
からアドレスレジスタ4を減算し、その結果が+1の場
合に演算出力信号501を論理“1”とする。
The address register 3 writes the instruction address executed by the processor 1, and the address register 4 writes the instruction address executed one step before the write signal 111.
Take in by. Further, the arithmetic circuit 5 is the address register 3
The address register 4 is subtracted from the result, and when the result is +1, the operation output signal 501 is set to logic "1".

【0010】読み出し制御回路6は、記憶回路7,8お
よび9からデータを読み出す時に、読み出し指示信号1
12より指示を受け取り、セレクト信号601を用い
て、読み出し制御回路6より出力されるアドレス602
を記憶回路7,8および9に読み出しアドレスを与え
る。
The read control circuit 6 reads the data from the memory circuits 7, 8 and 9 when reading data 1
12, an address 602 output from the read control circuit 6 by using the select signal 601
Is applied to the memory circuits 7, 8 and 9.

【0011】今、プロセッサ1より命令アドレスの履歴
の記憶指示が指示信号102により出されている状態
で、図3に示すような命令が命令格納回路2に入ってい
る場合を考える。
Now, consider a case where an instruction as shown in FIG. 3 is stored in the instruction storage circuit 2 while the instruction signal 102 is instructed to store a history of instruction addresses by the processor 1.

【0012】図3におけるNEXTは、その命令実行後
次のアドレスに進むことを示し、条件JUMP(n+
2)はある条件成立時に、アドレスn+2にジャンプす
る命令を示す。
NEXT in FIG. 3 indicates that after the instruction is executed, the program advances to the next address, and the condition JUMP (n +
2) indicates an instruction to jump to address n + 2 when a certain condition is satisfied.

【0013】又、図4に示すようにアドレスが進んだと
する。この場合には、図5に示すタイムチャートに示さ
れるように動作を行ない、その結果として図6に示され
るようにデータが記憶回路7,8およびに書込まれるこ
とになる。
It is also assumed that the address advances as shown in FIG. In this case, the operation is performed as shown in the time chart shown in FIG. 5, and as a result, the data is written in the memory circuits 7, 8 and as shown in FIG.

【0014】記憶回路7のデータとして“1”が書き込
まれているアドレスは、プロセッサ1がそのアドレスの
命令を実行したことを示し、“0”のところはそのアド
レスを実行していないことを示す。又、記憶回路8のデ
ータとして“1”が書き込まれているところは、その示
すアドレスに対し次にアドレス(アドレス+1)に進ん
だことを示し、“0”であれば次のアドレスに進まずに
ジャンプしたことを示す。又、記憶回路9のデータとし
て“1”が書き込まれているアドレスは、そのアドレス
の次に進まずにジャンプしたことを示す。
An address in which "1" is written as the data of the memory circuit 7 indicates that the processor 1 has executed the instruction of the address, and "0" indicates that the address is not executed. .. Where "1" is written as the data of the memory circuit 8, it indicates that the address (address + 1) has been advanced to the address indicated by it, and if "0", it does not proceed to the next address. Indicates that you jumped to. An address in which "1" is written as the data of the memory circuit 9 indicates that the address jumps without advancing to the next address.

【0015】図示はしていないが、記憶回路8及び9が
同一アドレスにてデータが“1”となっている場合に
は、そのアドレスより次のアドレスに進んだ場合と、次
のアドレス以外にジャンプしたという動作を両方共に行
なったことを示すことになる。この結果を読み取り指示
信号112により指示があった場合、読み取り制御回路
6によりセレクト信号601がアドレス602側に切り
替え順次インクリメントすることにより、読み出しデー
タ701,801,901より記憶回路7,8および9
内のデータを読み出すことになる。
Although not shown, when the memory circuits 8 and 9 have the same address and the data is "1", it is possible to proceed to the next address from that address and to other than the next address. This means that both of the actions of jumping are performed. When this result is instructed by the read instruction signal 112, the read control circuit 6 switches the select signal 601 to the address 602 side and sequentially increments the read data 701, 801, 901 to the storage circuits 7, 8 and 9.
The data inside will be read.

【0016】上述した結果と同じ結果が得られる別の回
路構成を図2に示す。
FIG. 2 shows another circuit configuration which can obtain the same result as the above.

【0017】図2において、あらかじめ命令格納回路2
0に入っているジャンプ命令のアドレスを調べておき、
そのアドスのジャンプ先として、次のアドレスを記憶回
路150に、次のアドレスでないジャンプ先を記憶回路
160に記憶させておく。よってアドレス401から出
力させるアドレス命令がジャンプ命令であった場合に記
憶回路150の読み出しデータ151より次のアドレス
が出力され、記憶回路160の読み出しデータ161よ
り次のアドレスでないジャンプアドレスが出力されるこ
とになる。
In FIG. 2, the instruction storage circuit 2 is previously stored.
Check the address of the jump instruction in 0,
As the jump destination of the address, the next address is stored in the storage circuit 150, and the jump destination which is not the next address is stored in the storage circuit 160. Therefore, when the address instruction output from the address 401 is a jump instruction, the next address is output from the read data 151 of the storage circuit 150, and a jump address other than the next address is output from the read data 161 of the storage circuit 160. become.

【0018】読み出しデータ151と161を命令アド
レス301とコンパレータ130,140で比較するこ
とにより、一致した側の出力信号131,141がどち
らか“1”になることになり、そのデータが記憶回路8
0および90に書き込まれる。
By comparing the read data 151 and 161 with the instruction address 301 and the comparators 130 and 140, either of the output signals 131 and 141 on the matched side becomes "1", and the data is stored in the storage circuit 8.
Written to 0 and 90.

【0019】以下記憶回路70,80および90に書き
込まれるデータは図1で説明した結果と同一の結果が得
られることになる。
The data written in the memory circuits 70, 80 and 90 will be the same as the result described with reference to FIG.

【0020】以上により、プロセッサ10の実行したア
ドレスとして単にアドレスの命令を実行したという履歴
のみでなくジャンプ命令の分岐に対しても履歴を知るこ
とが可能となる。
As described above, the history can be known not only for the history that the instruction of the address was simply executed as the address executed by the processor 10 but also for the branch of the jump instruction.

【0021】[0021]

【発明の効果】以上説明したように構成を採用すること
により、本発明はファームウェアのデバッグ時にファー
ムウェアの動作として条件JUMP命令の分岐について
も履歴を残すことが可能となり、動作の網羅率を高める
ことが可能となる効果がある。
By adopting the configuration as described above, according to the present invention, it becomes possible to leave a history of the branch of the conditional JUMP instruction as the operation of the firmware during the debugging of the firmware, thereby increasing the coverage rate of the operation. There is an effect that becomes possible.

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

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

【図2】本発明の他の実施例のブロック図である。FIG. 2 is a block diagram of another embodiment of the present invention.

【図3】本発明の動作を説明するための命令群の一例を
示す図である。
FIG. 3 is a diagram showing an example of an instruction group for explaining the operation of the present invention.

【図4】図3の命令群を実行する順序を示す図である。FIG. 4 is a diagram showing an order of executing the instruction group of FIG.

【図5】図4に示した命令実行のタイムチャートであ
る。
5 is a time chart of the instruction execution shown in FIG.

【図6】図5による動作の結果による記憶回路の記憶内
容を示す図である。
FIG. 6 is a diagram showing stored contents of a storage circuit as a result of the operation shown in FIG.

【符号の説明】[Explanation of symbols]

1,10 プロセッサ 2,20 命令格納回路 3,4,30,40 アドレスレジスタ 5 演算回路 6,60 読み出し制御回路 7,8,9,70,80,90,150,160 記
憶回路 11,110 指示制御回路 12,120 セレクタ 130,140 コンパレータ
1, 10 processor 2, 20 instruction storage circuit 3, 4, 30, 40 address register 5 arithmetic circuit 6, 60 read control circuit 7, 8, 9, 70, 80, 90, 150, 160 storage circuit 11, 110 instruction control Circuit 12,120 Selector 130,140 Comparator

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】 プロセッサが実行する命令を記憶してい
る命令格納回路と、 プロセッサが実行したアドレスを格納する第1のアドレ
スレジスタと、該第1のアドレスレジスタにより示され
る命令の1命令前に実行したアドレスを格納する第2の
アドレスレジスタと、 該第2のアドレスレジスタと前記第1のアドレスレジス
タの出力データを演算する演算回路と、 前記命令格納回路と同じアドレス容量で3ビットの入出
力データ幅を持つ第1の記憶回路と、 該第1の記憶回路にプロセッサからの指示により、記憶
の指示を行なう指示制御回路とを有し、 前記第1の記憶回路のアドレスラインに前記第2のアド
レスレジスタの出力データが接続され、又前記第1の記
憶回路の3ビットの入力データラインに論理“1”の信
号1ビットと前記演算回路の演算出力信号及び該信号の
論理の反転した信号が接続され、前記プロセッサに供給
される実行クロックが前記第1のアドレスレジスタ及び
前記第2のアドレスレジスタ及び前記第1の記憶回路の
書き込み信号に接続されていることを特徴とするファー
ムウェア実行履歴記憶方式。
1. An instruction storage circuit for storing an instruction executed by a processor, a first address register for storing an address executed by the processor, and one instruction before the instruction indicated by the first address register. A second address register for storing the executed address, an arithmetic circuit for arithmetically operating the output data of the second address register and the first address register, and 3-bit input / output with the same address capacity as the instruction storage circuit. A first memory circuit having a data width, and an instruction control circuit for giving a memory instruction to the first memory circuit according to an instruction from a processor, and the second memory is provided on an address line of the first memory circuit. Output data of the address register is connected, and a 1-bit signal of logic "1" and the operation are connected to the 3-bit input data line of the first memory circuit. And an execution clock supplied to the processor is a write signal for the first address register, the second address register, and the first memory circuit. A firmware execution history storage method characterized by being connected to.
【請求項2】 前記演算回路を有さず、 前記命令格納回路内の条件ジャンプ命令の格納されてい
るアドレスに1を加えたアドレスデータをあらかじめ格
納している第2の記憶回路と、 同命令のジャンプ先アドレスデータを格納してある第3
の記憶回路とを有し、 前記第2のアドレスレジスタの出力が前記第2の記憶回
路及び第3の記憶回路のアドレスに接続され、該第2の
アドレスレジスタのアドレスデータの命令が条件ジャン
プ命令の場合に該命令のアドレスに1を加えたアドレス
が前記第2の記憶回路よりシャンプ先のアドレスが前記
第3の記憶回路より出力され前記第2の記憶回路及び第
3の記憶回路の出力が個々に前記第1のアドレスレジス
タの出力と共にコンパレータに入力し、比較の結果を一
致信号として前記第1の記憶回路の入力データに接続す
ることを特徴とする請求項1記載のファームウェア実行
履歴記憶方式。
2. A second memory circuit which does not have the arithmetic circuit and which stores in advance address data obtained by adding 1 to the address where the conditional jump instruction in the instruction storage circuit is stored, and the same instruction. No. 3 that stores the jump destination address data of
Storage circuit, the output of the second address register is connected to the addresses of the second storage circuit and the third storage circuit, and the instruction of the address data of the second address register is a conditional jump instruction. In this case, the address obtained by adding 1 to the address of the instruction is output from the second storage circuit as the shamp destination address, and the third storage circuit outputs the second storage circuit and the third storage circuit. 2. The firmware execution history storage system according to claim 1, wherein the output of the first address register is individually input to a comparator, and the result of the comparison is connected to the input data of the first storage circuit as a coincidence signal. ..
JP3284324A 1991-10-30 1991-10-30 Firmware execution history storage system Pending JPH05120080A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3284324A JPH05120080A (en) 1991-10-30 1991-10-30 Firmware execution history storage system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3284324A JPH05120080A (en) 1991-10-30 1991-10-30 Firmware execution history storage system

Publications (1)

Publication Number Publication Date
JPH05120080A true JPH05120080A (en) 1993-05-18

Family

ID=17677081

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3284324A Pending JPH05120080A (en) 1991-10-30 1991-10-30 Firmware execution history storage system

Country Status (1)

Country Link
JP (1) JPH05120080A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07200348A (en) * 1993-11-23 1995-08-04 Rockwell Internatl Corp Method and apparatus for compression of program address dataand apparatus for quickening of debugging processing of program

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07200348A (en) * 1993-11-23 1995-08-04 Rockwell Internatl Corp Method and apparatus for compression of program address dataand apparatus for quickening of debugging processing of program

Similar Documents

Publication Publication Date Title
US4040030A (en) Computer instruction control apparatus and method
US4639866A (en) Pipelined data processing apparatus
US4949242A (en) Microcomputer capable of accessing continuous addresses for a short time
US4040031A (en) Computer instruction control apparatus and method
JPS58115673A (en) System and device for stored information control
JPH05120080A (en) Firmware execution history storage system
KR19990071604A (en) Processing system and method for reading and restoring information in RAM configuration
US5151993A (en) Data processor performing operation on data having length shorter than one-word length
JPH0310129B2 (en)
JP2002268876A (en) Pipeline processing method and information processor
JPH0233173B2 (en)
JP3446603B2 (en) Information processing apparatus and pipeline processing method
JP2727947B2 (en) Address trace method
JPS5936853A (en) Operation processor
EP0305530A1 (en) High-speed floating point arithmetic unit
JPH01274252A (en) Activity history memory
JPS60101652A (en) Program tracing device
JPH0228724A (en) System for controlling branching instruction
JPH0250740A (en) Address tracer
JPS59178693A (en) Memory reading system
JPH05289908A (en) Program tracer
JPS6014335A (en) Information processor
JPS62196745A (en) Register writing system
JPH0454257B2 (en)
JPH0239812B2 (en)