JPH0950365A - 命令履歴の符号化装置 - Google Patents

命令履歴の符号化装置

Info

Publication number
JPH0950365A
JPH0950365A JP7204414A JP20441495A JPH0950365A JP H0950365 A JPH0950365 A JP H0950365A JP 7204414 A JP7204414 A JP 7204414A JP 20441495 A JP20441495 A JP 20441495A JP H0950365 A JPH0950365 A JP H0950365A
Authority
JP
Japan
Prior art keywords
code
instruction
output
control signal
data
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.)
Withdrawn
Application number
JP7204414A
Other languages
English (en)
Inventor
Haruo Fukuda
春生 福田
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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry 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 Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP7204414A priority Critical patent/JPH0950365A/ja
Publication of JPH0950365A publication Critical patent/JPH0950365A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

(57)【要約】 【課題】 演算処理装置における命令の履歴の符号化を
ハードウェアで実現する。 【解決手段】 実行アドレスadがシフタ20に入力さ
れ、LSB方向へ2ビットシフトされる。データS20
は遅延フィルタ30及び減算器40に入力され、差分ア
ドレス・データS40になる。比較器50は差分アドレ
ス・データS40と“1”との比較を行い、分岐命令以
外の命令が実行されたか否かの判定を行う。分岐命令以
外の命令が実行された場合は、比較器50の制御信号S
50aによりカウンタ61はカウントアップを行う。こ
のため、カウンタ61には非分岐命令連続回数が蓄えら
れる。一方、分岐命令が実行された場合は、カウンタ6
1が出力する非分岐命令連続回数がコード生成部71に
入力されてコード化される。次に、差分アドレスデータ
S40がコード生成部72でコード化される。コード形
成部73は、コード生成部71,72が生成したコード
を順次出力する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、逐次的に命令を解
読して実行する演算処理装置における実行命令の履歴を
符号化する命令履歴の符号化装置に関するものである。
【0002】
【従来の技術】従来、このような分野の技術としては、
例えば、次のような文献に記載されるものがあった。 文献;bit[12](1994)(共立出版)、奥村晴彦
著、「ファイル圧縮技術」P.4-13 本発明の目的に叶う符号化方法は、厳密に原データが再
現される符号化方法であり、一般に可逆符号化と呼ばれ
るものである。前記文献には、例えばUNIXのcom
pressのような従来の可逆符号化方法が開示されて
いる。
【0003】
【発明が解決しようとする課題】しかしながら、前記文
献に記載されている可逆符号化方法では、次のような課
題があった。即ち、前記文献に記載される可逆符号化方
法は、いずれの方法もソフトウェアによる実現を前提と
して構成されているので、例えば参照テーブル等のメモ
リを必要とし、更にアルゴリズムも複雑であり、ハード
ウェアによる実現は困難なものが多い。又、本発明を適
用する実行命令履歴記録装置としては、従来、実行した
命令のアドレスを単純に記録するだけなので、極めてわ
ずかな時間の履歴を保存するだけで膨大なメモリ容量が
必要となっていた。例えば、20MHz で動作する32bit 固
定長命令の演算処理装置の場合、平均で1命令実行する
のに2サイクルを要するとすると、1秒間の実行履歴を
保存するために必要なメモリ容量は、 (20 ×106 /2) ×(32/8)=40 ×106 =40Mバイト となり、通常のデバッガ装置が備えるメモリ容量を越え
た値となる。
【0004】
【課題を解決するための手段】第1の発明は、前記課題
を解決するために、命令を逐次解読し実行する演算処理
装置における命令の履歴を符号化する命令履歴の符号化
装置において、次のような手段を講じている。即ち、前
記演算処理装置からの1命令毎の実行アドレスを1命令
分遅延させる遅延手段と、前記演算処理装置からの1命
令毎の実行アドレスと前記遅延手段の出力信号である遅
延データとの差分アドレスデータを算出する減算器と、
前記差分アドレスデータと予め与えられている定数との
比較を行い、該差分アドレスデータと該定数との値が等
しい場合に第1の制御信号を出力し、該差分アドレスデ
ータと該定数との値が異なる場合に第2の制御信号を出
力する比較器とを、備えている。更に、この符号化装置
には、前記第1の制御信号に基づきカウントアップ動作
を行なって前記命令のうちの分岐命令以外の命令が連続
する回数を蓄積するカウンタと、前記第2の制御信号に
基づき前記カウンタに蓄積された回数をコード化すると
共に第3の制御信号を生成する第1のコード生成部と、
前記第3の制御信号に基づき前記差分アドレスデータを
コード化する第2のコード生成部と、前記第1及び第2
のコード生成部からの各出力コードを順次整列すること
により、前記演算処理装置における命令の履歴を符号化
して外部へ出力するコード形成部とが、設けられてい
る。
【0005】第2の発明では、命令を逐次解読及び実行
する演算処理装置における命令の履歴を符号化する命令
履歴の符号化装置において、次のような手段を講じてい
る。即ち、前記演算処理装置からの1命令毎の実行アド
レスを1命令分遅延させる第1の遅延手段と、前記演算
処理装置からの1命令毎の実行アドレスと前記第1の遅
延手段の出力信号である遅延データとの差分アドレスデ
ータを算出する減算器と、前記差分アドレスデータと予
め与えられている定数との比較を行い、該差分アドレス
データと該定数との値が等しい場合に第1の制御信号を
出力し、該差分アドレスデータと該定数との値が等しく
ない場合に第2の制御信号を出力する第1の比較器と
を、備えている。更に、この符号化装置には、前記第1
の制御信号に基づきカウントアップ動作を行なって前記
命令のうちの分岐命令以外の命令が連続する回数を蓄積
する第1のカウンタと、前記第2の制御信号に基づき前
記第1のカウンタに蓄積された回数をコード化すると共
に第3の制御信号を生成する第1のコード生成部と、前
記第3の制御信号に基づき前記差分アドレスデータをコ
ード化する第2のコード生成部と、前記第1のコード生
成部の出力コードを1命令分遅延させる第2の遅延手段
と、前記第2のコード生成部の出力コードを1命令分遅
延させる第3の遅延手段と、前記第1のコード生成部の
出力コードと前記第2の遅延手段の出力コードとの比
較、及び前記第2のコード生成部の出力コードと前記第
3の遅延手段の出力コードとの比較を行い、これらの各
比較結果が共に等しい場合に第4の制御信号を出力し、
該各比較結果のいずれかが異なる場合に第5の制御信号
を出力する第2の比較器と、前記第4の制御信号に基づ
きカウントアップ動作を行って前記命令の最も内側のル
ープ処理の回数を蓄積する第2のカウンタと、前記第5
の制御信号に基づき前記第2のカウンタに蓄積された前
記命令の最も内側のループ処理の回数をコード化する第
3のコード生成部と、前記第1、第2、及び第3のコー
ド生成部からの各出力コードを順次整列することによ
り、前記演算処理装置における命令の履歴を符号化して
外部へ出力するコード形成部とが、設けられている。
【0006】第1の発明によれば、以上のように命令履
歴の符号化装置を構成したので、演算処理装置からの1
命令毎の実行アドレスが遅延手段で1命令分遅延され、
減算器に入力される。前記演算処理装置からの1命令毎
の実行アドレスと前記遅延手段からの遅延データとの差
分アドレスデータが減算器で算出される。前記差分アド
レスデータは、比較器において予め与えられている定数
と比較される。前記差分アドレスデータと前記定数との
値が等しい場合、比較器から第1の制御信号が出力さ
れ、該差分アドレスデータと該定数との値が異なる場
合、第2の制御信号が出力される。第1の制御信号がカ
ウンタに入力されると、該カウンタはカウントアップ動
作を行なって前記命令のうちの分岐命令以外の命令が連
続する回数を蓄積する。第2の制御信号が第1のコード
生成部に入力されると、前記カウンタに蓄積された回数
は該第1のコード生成部でコード化されると共に第3の
制御信号が生成される。第3の制御信号が第2のコード
生成部に入力されると、前記差分アドレスデータは該第
2のコード生成部でコード化される。前記第1及び第2
のコード生成部からの各出力コードはコード形成部で順
次整列され、演算処理装置における命令の履歴が符号化
される。そのため、小規模の装置で高速の符号化処理が
行われる。
【0007】第2の発明によれば、演算処理装置からの
1命令毎の実行アドレスが第1の遅延手段で1命令分遅
延されて減算器に入力される。前記演算処理装置からの
1命令毎の実行アドレスと前記第1の遅延手段からの遅
延データとの差分アドレスデータが減算器で算出され
る。前記差分アドレスデータは、第1の比較器において
予め与えられている定数と比較される。前記差分アドレ
スデータと前記定数との値が等しい場合、比較器から第
1の制御信号が出力され、該差分アドレスデータと該定
数との値が異なる場合、第2の制御信号が出力される。
第1の制御信号が第1のカウンタに入力されると、該カ
ウンタはカウントアップ動作を行なって前記命令のうち
の分岐命令以外の命令が連続する回数を蓄積する。第2
の制御信号が第1のコード生成部に入力されると、前記
第1のカウンタに蓄積された回数は該第1のコード生成
部でコード化されると共に第3の制御信号が生成され
る。第3の制御信号が第2のコード生成部に入力される
と、前記差分アドレスデータは該第2のコード生成部で
コード化される。前記第1のコード生成部の出力コード
は第2の遅延手段で1命令分遅延され、かつ前記第2の
コード生成部の出力コードが第3の遅延手段で1命令分
遅延される。第1のコード生成部の出力コードと第2の
遅延手段の出力コードとが第2の比較器で比較され、か
つ第2のコード生成部の出力コードと第3の遅延手段の
出力コードとが該第2の比較器で比較され、これらの各
比較結果が共に等しい場合、第4の制御信号が出力さ
れ、該各比較結果のいずれかが異なる場合、第5の制御
信号が出力される。第4の制御信号が第2のカウンタに
入力されると、該第2のカウンタはカウントアップ動作
を行なって命令の最も内側のループ処理の回数を蓄積す
る。第5の制御信号が第3のコード生成部に入力される
と、前記第2のカウンタに蓄積された命令の最も内側の
ループ処理の回数は該第3のコード生成部でコード化さ
れる。第1、第2、及び第3のコード生成部からの各出
力コードはコード形成部で順次整列され、演算処理装置
における命令の履歴が符号化される。そのため、小規模
の装置で高速の符号化処理が行われる。従って、前記課
題を解決できるのである。
【0008】
【発明の実施の形態】第1の実施形態 図1は、本発明の第1の実施形態を示す命令履歴の符号
化装置の概略の構成ブロック図である。この符号化装置
は、命令を逐次解読し実行する図示しない演算処理装置
から出力された命令の実行アドレスadを入力する入力
端子10を有している。入力端子10はシフタ20の入
力側に接続されている。シフタ20は、実行アドレスa
dから語境界以下のビットを削除する機能を有してい
る。シフタ20の出力側は、シフタ20の出力信号S2
0(即ち、前記演算処理装置からの1命令毎の実行アド
レス)を1命令分遅延させる遅延手段(即ち、遅延フィ
ルタ30)を介して減算器40の第1の入力端子に接続
されると共に、減算器40の第2の入力端子に接続され
ている。減算器40は、シフタ20の出力信号S20と
遅延フィルタ30の出力信号S30の出力信号S30の
差分(即ち、差分アドレスデータ)S40を算出する機
能を有している。減算器40の出力端子は、比較器50
の入力端子に接続されている。
【0009】比較器50は、減算器40からの差分アド
レスデータS40と予め与えられている定数(本実施形
態では“1”)との比較を行い、該差分アドレスデータ
S40と前記定数との値が等しい場合、第1の出力端子
から第1の制御信号S50aを出力し、該差分アドレス
データS40と前記定数との値が等しくない場合、第2
の出力端子から第2の制御信号S50bを出力する機能
を有している。比較器50の第1の出力端子は、第1の
処理部60の入力端子に接続されている。この第1の処
理部60はカウンタ61で構成され、第1の制御信号S
50aに基づきカウントアップ動作を行なって前記命令
のうちの分岐命令以外の命令が連続する数を蓄積し、前
記第2の制御信号S50bに基づき初期化される回路で
ある。比較器50の第2の出力端子は、第2の処理部7
0の入力端子に接続されている。この第2の処理部70
は、比較器50からの制御信号S50bに基づきカウン
タ61の出力信号S61をコード化して第1の出力端子
から制御信号S71a、及び第2の出力端子からデータ
信号S71bを出力する第1のコード生成部71を有し
ている。コード生成部71の第1の出力端子は、第2の
コード生成部72の第1の入力端子に接続されている。
又、減算器40の出力端子は、コード生成部72の第2
の入力端子に接続されている。コード生成部72は、制
御信号S71aに基づき差分アドレスデータS40をコ
ード化して制御信号S72a及びデータ信号S72bを
生成する機能を有している。コード生成部72からの制
御信号S72a及びデータ信号S72bは、コード形成
部73へ入力されるようになっている。又、コード生成
部71からのデータ信号S71bもコード形成部73へ
入力されるようになっている。コード形成部73は、コ
ード生成部71,72からの出力信号S71b,S72
を順次整列する機能を有している。コード形成部73の
出力端子は、出力端子80に接続されている。出力端子
80は、この符号化装置により符号化処理が施された符
号化データを外部の図示しないメモリへ出力する端子で
あり、コード形成部73の出力信号S73がこの出力端
子80から出力されるようになっている。
【0010】次に、図1の動作を説明する。但し、対象
とする演算処理装置は、命令が32ビット固定長命令によ
り構成されるものとする。先ず、演算処理装置が1命令
実行する毎に、入力端子10から該命令の実行アドレス
adが入力される。この実行アドレスadはシフタ20
に入力され、右へ(即ち、LSBの方向へ)2ビットシ
フト処理される。このシフト処理は、対象の演算処理装
置からの命令が32ビット固定長命令であるため、実行ア
ドレスadの下位2ビットは常に0となり、有意なデー
タではないので、施すものである。次に、シフタ20か
ら出力されたデータS20は、遅延フィルタ30と減算
器40とに入力される。減算器40では、シフタ20の
出力信号S20と遅延フィルタ30が出力する遅延デー
タS30(即ち、1命令前のアドレス) とを入力し、こ
れらの差分である差分アドレス・データS40を算出す
る。次に、比較器50では、この差分アドレス・データ
S40と定数“1”との比較を行う。即ち、分岐命令以
外の命令が実行された場合、アドレスは単純に1だけ増
加するので、比較器50は、この分岐命令以外の命令が
実行されたか否かの判定を行う。差分アドレス・データ
S40が1である場合、即ち分岐命令以外の命令が実行
された場合には、比較器50はカウンタ61にカウント
アップを行うように制御信号S50aを出力する。この
ため、カウンタ61には分岐命令以外の命令が連続する
回数が蓄えられることになる。一方、差分アドレス・デ
ータS40が1でない場合、即ち分岐命令が実行された
場合には、比較器50は制御信号S50bを出力して第
2の処理系70を起動した後、カウンタ61を初期化す
る。
【0011】第2の処理系70では、先ず、コード生成
部71にカウンタ61が出力する非分岐命令連続回数が
データ信号S61として入力される。図2は、図1中の
コード生成部71,72のコード生成動作を説明するた
めのコードを示す図である。この図を参照しつつ、コー
ド生成部71,72の動作を説明する。コード生成部7
1,72で生成されるコードは、以下の規則に基づき生
成される。コードは8ビット(1バイト)単位の可変長
符号であり、先頭4ビットをマーカコードとする。図2
に示すように、マーカコードは更に2ビット毎のサブコ
ードに分割され、第1サブコードは該コードを生成した
ブロックの番号、及び第2サブコードは該コードに後続
するコードデータ長を示す。但し、第1サブコード
“0”は特殊コードを表すものとする。コード生成部7
1では、カウンタ61から出力されるデータS61を上
記の規則によりコード化する。例えば、入力データS6
1が0x3(但し、0x;16進数)とすると、 第1サブコード;01 第2サブコード;00 入力データ;0011 即ち、生成コード;0100,0011 となり、コード生成部71はコード0x43を生成する。
【0012】又、入力データS61が0x25とすると、 第1サブコード;01 第2サブコード;01 入力データ;0010,0101 即ち、生成コード;0101,0000,0010,0
101 となり、コード生成部71はコード0x5025を生成する。
次に、第2コード生成部72でも、減算器40が出力す
る差分アドレスデータS40に対し、コードを生成す
る。但し、後続コードデータは、データの最上位ビット
を符号ビットとする符号付き整数となる。又、差分デー
タが28ビットを越えた場合のために、特殊コード(0x0)
を割り当てておく。この場合、全データ長は5バイトに
なる。例えば、差分アドレス・データS40が4(即
ち、0100)の場合、 第1サブコード;10 第2サブコード;00 入力データ;0100 即ち、生成コード;1000,0100 となり、コード生成部72はコード0x84を生成する。
又、差分アドレス・データS40が−4(即ち、111111
00)の場合、 第1サブコード;10 第2サブコード;00 入力データ;−4 即ち、生成コード;1000,1100 となり、コード生成部72はコードは0x8cを生成す
る。
【0013】差分アドレス・データS40が1000(即
ち、0011,1110,1000)の場合、 第1サブコード;10 第2サブコード;01 入力データ;0011,1110,1000 即ち、生成コード;1001, 0011,1110,1000 となり、コード生成部72はコードは0x93e8を生成
する。差分アドレス・データS40が0x1fffffffの場
合、このデータを表現するのに必要なビット数は、29
ビット+1ビット(符号ビット)なので、特殊コード(0
x0) を使用する。 第1サブコード;00 第2サブコード;00 入力データ;0x1fffffff 即ち、生成コード;0000,0000,1fffffff となり、コード生成部72はコードは0x001fffffffを生
成する。最後に、コード形成部73は、コード生成部7
1,72が生成したコードを順次出力端子80に出力し
て1命令に対する符号化処理を終了する。以上のよう
に、この第1の実施形態では、カウンタ61は命令のう
ちの分岐命令以外の命令が連続する回数を蓄積し、この
回数をコード生成部71がコード化し、更に、コード生
成部72が減算器40からの差分アドレスデータS40
をコード化するようにしたので、小規模の装置で高速の
符号化処理が行われる。
【0014】第2の実施形態 図3は、本発明の第2の実施形態を示す命令履歴の符号
化装置の概略の構成ブロック図であり、図1中の要素と
共通の要素には共通の符号が付されている。この符号化
装置では、比較器50の第2の出力端子は、第2の処理
部90の入力端子に接続されている。他は図1と同様の
構成である。この第2の処理部90は、比較器50から
の制御信号S50bに基づきカウンタ61の出力信号S
61をコード化して第1の出力端子からコード信号S9
1a、及び第2の出力端子からコード信号S91bを出
力する第1のコード生成部91を有している。コード生
成部91の第1の出力端子は、第2のコード生成部92
の第1の入力端子に接続されている。又、減算器40の
出力端子は、コード生成部92の第2の入力端子に接続
されている。コード生成部92は、制御信号S91aに
基づき差分アドレスデータS40をコード化して第1の
出力端子からコード信号S92a、及び第2の出力端子
からデータ信号S92bを出力する機能を有している。
コード生成部91の第1の出力端子は第2の比較器93
の第1の入力端子に接続されると共に、第2の遅延手段
である遅延フィルタ94を介して比較器93の第2の入
力端子に接続されている。遅延フィルタ94は、コード
生成部91の出力コードS91aを1命令分遅延させる
機能を有している。コード生成部92の第1の出力端子
は比較器93の第3の入力端子に接続されると共に、第
3の遅延手段である遅延フィルタ95を介して比較器9
3の第4の入力端子に接続されている。遅延フィルタ9
5は、コード生成部92の出力コードS92aを1命令
分遅延させる機能を有している。比較器93は、コード
生成部91の出力コードS91aと遅延フィルタ94の
出力信号(即ち、1命令前のコード)S94との比較、
及びコード生成部92の出力コードS92と遅延フィル
タ95の出力信号(即ち、1命令前のコード)S95と
の比較を行い、これらの各比較結果が共に等しい場合に
第1の出力端子から第4の制御信号S93aを出力し、
該各比較結果のいずれかが異なる場合に第2の出力端子
から第5の制御信号S93bを出力する機能を有してい
る。比較器93の第1の出力端子は、第2のカウンタ9
6の入力端子に接続されている。
【0015】カウンタ96は、比較器93からの制御信
号S93aに基づきカウントアップ動作を行って最も内
側のループ処理の回数を蓄積し、制御信号S93bに基
づき初期化される回路である。カウンタ96の出力端子
は、第3のコード生成部97のデータ信号入力端子に接
続されている。又、比較器93の第2の出力端子は、コ
ード生成部97の制御信号入力端子に接続されている。
コード生成部97は、比較器93からの制御信号S93
bに基づきカウンタ96の出力信号(即ち、蓄積された
最も内側のループ処理の回数)S96をコード化して制
御信号S97a及びデータ信号S97bを生成する機能
を有している。コード生成部97からの制御信号S97
a及びデータ信号S97bは、コード形成部98へ入力
されるようになっている。又、コード生成部91からの
データ信号S91b及びコード生成部92からのデータ
信号S92bもコード形成部98へ入力されるようにな
っている。コード形成部98は、コード生成部91,9
2,97からの各出力信号S91b,S92,S97b
を順次整列する機能を有している。コード形成部98の
出力端子は、出力端子100に接続されている。出力端
子100は、この符号化装置により符号化処理が施され
た符号化データを外部の図示しないメモリへ出力する端
子であり、コード形成部98の出力信号S98がこの出
力端子100から出力されるようになっている。次に、
図3の動作を説明する。
【0016】この図3の符号化装置では、比較器50が
制御信号S50aを出力するまでは図1の符号化装置と
同様の動作を行う。比較器50が制御信号S50bを出
力すると、第2の処理部90が起動された後、カウンタ
61が初期化される。第2の処理系90では、先ず、コ
ード生成部91にカウンタ61が出力する非分岐命令連
続回数がデータ信号S61として入力される。図4は、
図3中のコード生成部91,92,97のコード生成動
作を説明するためのコードを示す図である。この図を参
照しつつ、コード生成部91,92,97の動作を説明
する。第1の実施形態と同様に、コード生成部91,9
2で生成されるコードは、以下の規則に基づき生成され
る。コードは8ビット(1バイト)単位の可変長符号で
あり、先頭4ビットをマーカコードとする。図4に示す
ように、マーカコードは更に2ビット毎のサブコードに
分割され、第1サブコードは該コードを生成したブロッ
クの番号、及び第2サブコードは該コードに後続するコ
ードデータ長を示す。但し、第1サブコード“0”は特
殊コードを表すものとする。
【0017】コード生成部91では、カウンタ61から
出力されるデータS61を上記の規則により生成する。
例えば、入力データS61が0x3とすると、 第1サブコード;01 第2サブコード;00 入力データ;0011 即ち、生成コード;0100,0011 となり、コード生成部91はコード0x43を生成する。
又、入力データS61が0x25の場合、 第1サブコード;01 第2サブコード;01 入力データ;0010,0101 即ち、生成コード;0101,0000,0010,0
101 となり、コード生成部91はコード0x5025を生成する。
次に、第2コード生成部92でも減算器40が出力する
差分アドレスデータS40に対し、コードを生成する。
但し、後続コードデータは、データの最上位ビットを符
号ビットとする符号付き整数となる。又、差分データが
28ビットを越えた場合のために、特殊コード(0x0) を割
り当てておく。この場合、全データ長は5バイトにな
る。
【0018】例えば、差分アドレス・データS40が4
(即ち、0100)の場合、 第1サブコード;10 第2サブコード;00 入力データ;0100 即ち、生成コード;1000,0100 となり、コード生成部92はコード0x84を生成する。
又、差分アドレス・データS40が−4(即ち、111111
00)の場合、 第1サブコード;10 第2サブコード;00 入力データ;−4 即ち、生成コード;1000,1100 となり、コード生成部92はコードは0x8cを生成す
る。差分アドレス・データS40が1000(即ち、0011,1
110,1000)の場合、 第1サブコード;10 第2サブコード;01 入力データ;0011,1110,1000 即ち、生成コード;1001, 0011,1110,1000 となり、コード生成部92はコードは0x93e8を生成
する。
【0019】差分アドレス・データS40が0x1fffffff
の場合、このデータを表現するのに必要なビット数は、
29ビット+1ビット(符号ビット)なので、特殊コー
ド(0x0) を使用する。 第1サブコード;00 第2サブコード;00 入力データ;0x1fffffff 即ち、生成コード;0000,0000,1fffffff となり、コード生成部92はコードは0x001fffffffを生
成する。比較器93では、コード生成部91の出力コー
ド信号S91aと遅延フィルタ94が出力するコード生
成部91が前回出力した出力コードS94、及びコード
生成部92が出力した出力コードS92aと遅延フィル
タ95が出力するコード生成部92が前回出力した出力
コードS95とをそれぞれ比較する。両者がいずれも等
しい場合には、比較器93はカウンタ96に対し、カウ
ントアップ動作を行うように制御信号S93aを出力
し、コード生成部97の起動は行わない。一方、両者の
いずれかが異なる場合には、コード生成部97を起動し
た後、カウンタ96を初期化する。
【0020】カウンタ96に蓄えられる値は、命令の最
も内側のループの回数を表している。即ち、通常の命令
シーケンスでは繰り返し処理が多数発生するため、この
回数を使用することにより情報の圧縮が可能となる。コ
ード生成部97では、カウンタ96から入力されるカウ
ントデータS96からコードを生成する。但し、カウン
タ96が出力する値が“0”である場合にはコード生成
を行わない。例えば、入力データS96が0x3とする
と、 第1サブコード;11 第2サブコード;00 入力データ;0011 即ち、生成コード;1100,0011 となり、コード生成部97はコード0xc3を生成する。
最後に、コード形成部98は、コード生成部91,9
2,97が生成したコードを順次出力端子100に出力
して1命令に対する符号化処理を終了する。本実施形態
による符号化処理を行った結果を以下に示す。 原データ;56542118バイト 本実施形態の符号化装置によるデータ;2334720
バイト UNIXcompressによるデータ;5679461バイト これらの結果から、本実施形態の符号化装置が20倍以上
の符号化効率を実現すること、又、UNIXの符号化ユ
ーティリティであるcompressと比べても2倍以上の符号
化効率を有することが分かる。以上のように、この第2
の実施形態では、カウンタ96が、命令の最も内側のル
ープ処理の回数を蓄積し、この回数をコード生成部97
がコード化するようにしたので、第1の実施形態の利点
に加え、20倍以上の符号化効率を実現すること、及びU
NIXの符号化ユーティリティであるcompressと比べて
も2倍以上の符号化効率が実現する。尚、本発明は上記
実施形態に限定されず、例えばコードデータの生成方法
は、データを圧縮できるものであれば、他の方法でも良
【0021】
【発明の効果】以上詳細に説明したように、第1の発明
によれば、カウンタが命令のうちの分岐命令以外の命令
が連続する回数を蓄積し、この回数を第1のコード生成
部がコード化し、更に、第2のコード生成部が減算器か
らの差分アドレスデータをコード化するようにしたの
で、小規模の装置で高速の符号化処理を行うことができ
る。第2の発明によれば、第2のカウンタが、命令の最
も内側のループ処理の回数を蓄積し、この回数を第3の
コード生成部がコード化するようにしたので、第1の発
明の効果に加え、符号化装置が20倍以上の符号化効率を
実現すること、及びUNIXの符号化ユーティリティで
あるcompressと比べても2倍以上の符号化効率を実現す
ることができる。
【図面の簡単な説明】
【図1】本発明の第1の実施形態を示す命令履歴の符号
化装置の構成ブロック図である。
【図2】図1のコード生成動作を説明するためのコード
を示す図である。
【図3】本発明の第2の実施形態を示す命令履歴の符号
化装置の構成ブロック図である。
【図4】図3のコード生成動作を説明するためのコード
を示す図である。
【符号の説明】
20 シフタ 30,94,95 遅延フ
ィルタ(遅延手段) 40 減算器 50,93 比較器 61,96 カウン
タ 71,72,91,92,97 コード
生成部 73,98 コード
形成部

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 命令を逐次解読し実行する演算処理装置
    における命令の履歴を符号化する命令履歴の符号化装置
    において、 前記演算処理装置からの1命令毎の実行アドレスを1命
    令分遅延させる遅延手段と、 前記演算処理装置からの1命令毎の実行アドレスと前記
    遅延手段の出力信号である遅延データとの差分アドレス
    データを算出する減算器と、 前記差分アドレスデータと予め与えられている定数との
    比較を行い、該差分アドレスデータと該定数との値が等
    しい場合に第1の制御信号を出力し、該差分アドレスデ
    ータと該定数との値が異なる場合に第2の制御信号を出
    力する比較器と、 前記第1の制御信号に基づきカウントアップ動作を行な
    って前記命令のうちの分岐命令以外の命令が連続する回
    数を蓄積するカウンタと、 前記第2の制御信号に基づき前記カウンタに蓄積された
    回数をコード化すると共に第3の制御信号を生成する第
    1のコード生成部と、 前記第3の制御信号に基づき前記差分アドレスデータを
    コード化する第2のコード生成部と、 前記第1及び第2のコード生成部からの各出力コードを
    順次整列することにより、前記演算処理装置における命
    令の履歴を符号化して外部へ出力するコード形成部と
    を、 備えたことを特徴とする命令履歴の符号化装置。
  2. 【請求項2】 命令を逐次解読及び実行する演算処理装
    置における命令の履歴を符号化する命令履歴の符号化装
    置において、 前記演算処理装置からの1命令毎の実行アドレスを1命
    令分遅延させる第1の遅延手段と、 前記演算処理装置からの1命令毎の実行アドレスと前記
    第1の遅延手段の出力信号である遅延データとの差分ア
    ドレスデータを算出する減算器と、 前記差分アドレスデータと予め与えられている定数との
    比較を行い、該差分アドレスデータと該定数との値が等
    しい場合に第1の制御信号を出力し、該差分アドレスデ
    ータと該定数との値が等しくない場合に第2の制御信号
    を出力する第1の比較器と、 前記第1の制御信号に基づきカウントアップ動作を行な
    って前記命令のうちの分岐命令以外の命令が連続する回
    数を蓄積する第1のカウンタと、 前記第2の制御信号に基づき前記第1のカウンタに蓄積
    された回数をコード化すると共に第3の制御信号を生成
    する第1のコード生成部と、 前記第3の制御信号に基づき前記差分アドレスデータを
    コード化する第2のコード生成部と、 前記第1のコード生成部の出力コードを1命令分遅延さ
    せる第2の遅延手段と、 前記第2のコード生成部の出力コードを1命令分遅延さ
    せる第3の遅延手段と、 前記第1のコード生成部の出力コードと前記第2の遅延
    手段の出力コードとの比較、及び前記第2のコード生成
    部の出力コードと前記第3の遅延手段の出力コードとの
    比較を行い、これらの各比較結果が共に等しい場合に第
    4の制御信号を出力し、該各比較結果のいずれかが異な
    る場合に第5の制御信号を出力する第2の比較器と、 前記第4の制御信号に基づきカウントアップ動作を行っ
    て前記命令の最も内側のループ処理の回数を蓄積する第
    2のカウンタと、 前記第5の制御信号に基づき前記第2のカウンタに蓄積
    された前記命令の最も内側のループ処理の回数をコード
    化する第3のコード生成部と、 前記第1、第2及び第3のコード生成部からの各出力コ
    ードを順次整列することにより、前記演算処理装置にお
    ける命令の履歴を符号化して外部へ出力するコード形成
    部とを、 備えたことを特徴とする命令履歴の符号化装置。
JP7204414A 1995-08-10 1995-08-10 命令履歴の符号化装置 Withdrawn JPH0950365A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7204414A JPH0950365A (ja) 1995-08-10 1995-08-10 命令履歴の符号化装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7204414A JPH0950365A (ja) 1995-08-10 1995-08-10 命令履歴の符号化装置

Publications (1)

Publication Number Publication Date
JPH0950365A true JPH0950365A (ja) 1997-02-18

Family

ID=16490152

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7204414A Withdrawn JPH0950365A (ja) 1995-08-10 1995-08-10 命令履歴の符号化装置

Country Status (1)

Country Link
JP (1) JPH0950365A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008529112A (ja) * 2005-01-21 2008-07-31 インターナショナル・ビジネス・マシーンズ・コーポレーション アプリケーション・プロセス実行の範囲内での非決定論的オペレーションを管理、ロギング、またはリプレイするための予測方法
JP2008529113A (ja) * 2005-01-21 2008-07-31 インターナショナル・ビジネス・マシーンズ・コーポレーション アプリケーション・プロセスにおいて内部イベントをリプレイするための非侵入的方法およびこの方法を実装するシステム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008529112A (ja) * 2005-01-21 2008-07-31 インターナショナル・ビジネス・マシーンズ・コーポレーション アプリケーション・プロセス実行の範囲内での非決定論的オペレーションを管理、ロギング、またはリプレイするための予測方法
JP2008529113A (ja) * 2005-01-21 2008-07-31 インターナショナル・ビジネス・マシーンズ・コーポレーション アプリケーション・プロセスにおいて内部イベントをリプレイするための非侵入的方法およびこの方法を実装するシステム

Similar Documents

Publication Publication Date Title
JP3332619B2 (ja) 復号装置およびその方法
US9054728B2 (en) Data compression systems and methods
JPH03280624A (ja) 可変長データの復号装置
US5313203A (en) Coding apparatus and method for coding information symbol strings by assigning fixed length codes thereto
JPS63148717A (ja) データ圧縮復元処理装置
WO2002039591A1 (en) Content independent data compression method and system
JP3179588B2 (ja) データ符号化装置及び方法
JPH0950365A (ja) 命令履歴の符号化装置
JP3077858B2 (ja) 直列データ・デコーダ
JPH08130652A (ja) 2次元画像データの圧縮方式および伸長方式
JP2638426B2 (ja) 可変長符号化装置
JPS6276931A (ja) デ−タ圧縮装置
KR0176635B1 (ko) 비트스트림의 병직렬 변환회로
JP2594766B2 (ja) データ圧縮方式およびデータ圧縮方法
JP3239664B2 (ja) 可変長符号復号方法
JP2728818B2 (ja) 可変長復号化器
JPH056260A (ja) 日本語データ圧縮方式
KR100227777B1 (ko) 가변 복호화 코드 길이 생성회로
JPH04175036A (ja) データ圧縮方式
JPH0323729Y2 (ja)
JP2000259187A (ja) 音声データ圧縮方法
JPH11308116A (ja) ハフマン復号化装置
JPS60152155A (ja) 符号化方式
JP2002344326A (ja) 合成インデックスによるデータ圧縮方法及び圧縮データの完全復元方法
JPH0358572A (ja) データ圧縮方式

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20021105