JPH04278643A - 命令列生成装置 - Google Patents

命令列生成装置

Info

Publication number
JPH04278643A
JPH04278643A JP3104945A JP10494591A JPH04278643A JP H04278643 A JPH04278643 A JP H04278643A JP 3104945 A JP3104945 A JP 3104945A JP 10494591 A JP10494591 A JP 10494591A JP H04278643 A JPH04278643 A JP H04278643A
Authority
JP
Japan
Prior art keywords
instruction
data
instructions
sequence
string
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.)
Granted
Application number
JP3104945A
Other languages
English (en)
Other versions
JP2644389B2 (ja
Inventor
Hiroshi Goto
寛 後藤
Ryotaro Hayashi
亮太郎 林
Jiro Hisayuki
次郎 久行
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP3104945A priority Critical patent/JP2644389B2/ja
Publication of JPH04278643A publication Critical patent/JPH04278643A/ja
Application granted granted Critical
Publication of JP2644389B2 publication Critical patent/JP2644389B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、命令列を生成する装置
に関する。
【0002】計算機系統の全体的な設計確認および正常
性確認は1つの命令単位ごとに機能試験を行なうことに
より行なっている。特に、系統全体としてのテストを行
なう時は、タイミング動作、系統の性能等を調べるため
に、複数の命令を組み合わせてこれを、実行させている
。しかし、一般的なハードウェアの対象命令は百数十種
類あるので、全ての命令の組み合わせについてテストを
行なうことは実用的ではない。
【0003】例えば、命令数が100あった場合の命令
の組み合わせ数は100100 といった膨大な値とな
る。 そのため、命令の組み合わせパターン中に含まれる冗長
性を排除する有効な手段が望まれていた。
【0004】
【従来の技術】図7は、従来の命令列の生成方法につい
て説明する図である。従来は、乱数発生部21、命令生
成部22、命令設定レジスタ23、および命令格納制御
部24とを用いた構成によりメモリ域25に命令列を生
成していた。
【0005】乱数発生部21の乱数発生器26は、rビ
ットの命令コード部27と(q−r)ビットの原始オペ
ランド部28からなるqビットのランダムデータを発生
する。該ランダムデータは命令生成部22に渡される。
【0006】命令生成部22は、命令コード部27の内
容をデコードするデコーダ29と、該デコードした命令
コード部の制限事項を記憶した命令生成条件テーブル3
0と、論理積回路13と、論理和回路14とにより構成
される。命令生成部22は、命令コードの情報に基づい
て、不適切なオペランドが設定されないように原始オペ
ランドを論理積回路13、論理和回路14を用いて修正
してこれを命令設定レジスタ23に渡している。
【0007】命令格納制御部24は命令設定レジスタ2
3に設定された命令を取り出してメモリ域25に命令列
33を生成する命令の設定制御31と、次の命令の生成
を指示するリトライ制御32とで構成している。このよ
うな従来の技術については、本出願人により、「テスト
データ発生装置」(特公昭62−53857)が提出さ
れている。
【0008】
【発明が解決しようとする課題】以上のように、従来の
命令列の生成方法を用いると、ランダムかつ有効な命令
列を生成することができた。しかし、該命令列をパイプ
ライン制御を有する処理装置上で実行させ、テストする
場合には、数多くの不要な命令列のテストが行なわれて
いた。
【0009】例えば、パイプライン段数が3である処理
装置が、命令を100種類有する場合、従来のように1
00個の命令から構成する列を生成する必要はなく、3
個の命令から構成する列を生成すればよいことが容易に
わかる。このとき、100100 と1003 とを比
較すると明らかなように、従来の命令列の中には、かな
りの冗長性が含まれていたことがわかる。
【0010】本発明は、上述したような従来の問題点に
鑑み、パイプライン制御を有する処理装置に対するテス
ト用の命令列を、冗長性を排除した形で生成する装置、
並びに該装置を用いた性能測定方法を提供することを目
的とする。
【0011】
【課題を解決するための手段】本発明によれば、上述の
目的は、前記特許請求の範囲に記載した手段により達成
される。
【0012】すなわち、請求項1の発明は、n個の異な
る命令の中からm個の命令を単位とする命令列を生成す
る装置であって、Kが2K ≦nを満たすとき、前記n
個の異なる命令をKビットのデータにエンコードする手
段と、該エンコードしたKビットのデータをm個用意し
、該m個のデータをそれぞれ格納するm個のカウントレ
ジスタ回路と、前記各m個のデータの値を1〜nにし、
該m個のデータで構成するデータ列をnm 種類生成す
る様に制御する手段と、該データ列を順次前記m個のカ
ウントレジスタ回路に格納する手段と、該m個のカウン
トレジスタ回路に格納されたデータ列を順次取り出す手
段と、該取り出したデータ列を構成するm個のデータの
値を各々デコードして、m個の命令からなる列を生成す
る手段とを具備する命令列生成装置である。
【0013】また、請求項2の発明は、P個の異なる命
令の中からm個の命令を単位とする命令列を生成する装
置であって、前記P個の異なる命令を、機能要素を基に
それぞれ、P1 個, P2 個, …, Pn 個の
命令から構成されるn個の異なる命令群に分割する手段
と、Kが2K ≦nを満たすとき、前記n個の異なる命
令群をKビットのデータにエンコードする手段と、該エ
ンコードしたKビットのデータをm個用意し、該m個の
データをそれぞれ格納するm個のカウントレジスタ回路
と、前記各m個のデータの値を1〜nにし、該m個のデ
ータで構成するデータ列をnm 種類生成する様に制御
する手段と、該データ列を順次前記m個のカウントレジ
スタ回路に格納する手段と、該m個のカウントレジスタ
回路に格納されたデータ列を順次取り出す手段と、該取
り出したデータ列を構成するm個のデータの値を各々デ
コードして、m個の命令群からなる列に変換する手段と
、ある命令群が上記デコードすることにより得られたと
き、該命令群を構成する任意の命令を抽出し、上記m個
の命令群からなる列より、m個の命令からなる列を生成
する手段とを具備する命令列生成装置である。
【0014】また、請求項3の発明は、mが3であって
、3個のKビットのデータをI1 ,I2 ,I3 で
表わしたとき、該3個のデータI1 ,I2 ,I3 
で構成するデータ列をn3 種類生成する様に制御する
手段に替えて、I1 ,I2 ,I3 に関して3つの
条件、すなわち、I1 ≧I2 ,I1 ≧I3 ,I
1 =I2 のときI3 =1、を満たす様にI1 ,
I2,I3 の値を制御する手段を具備する命令列生成
装置である。
【0015】また、請求項4の発明は、カウントレジス
タ回路に格納されるI2 およびI3 の値がI2 =
I3 =1のときに生成されるべき3個の命令の列に替
えて、“1”の値をデコードすることにより得られる命
令1個で構成する1個の命令の列を生成する手段と、該
1個の命令の列と同等の命令列を、命令列生成装置が生
成する一連の命令列の先頭と最後に付加する手段とを具
備する命令列生成装置である。
【0016】また、請求項5の発明は、パイプライン段
数がm段であるパイプライン制御を有するプロセッサに
おいて、請求項1から請求項4までのいずれかの命令列
生成装置から生成される命令列を格納する手段と、該命
令列の実行時間を測定する手段とを用いる計算機系統の
性能測定方法である。
【0017】
【作用】図1は、本発明による命令列生成装置の原理説
明図である。該命令列生成装置は、カウンタ制御部1、
カウントレジスタ部2、並びに命令テーブル部3から構
成する。
【0018】カウントレジスタ部2は、パイプライン段
数mの数のカウントレジスタ回路5を有し、該カウント
レジスタ回路5は、エンコードされた命令を示すデータ
を格納している。命令数がn種類あった場合、各カウン
トレジスタ回路5はn≦2K を満たすKビットにより
構成する。
【0019】カウンタ制御部1は、カウントレジスタ部
2の各カウントレジスタ回路5に格納される値を制御す
るカウンタ制御回路4によって構成する。
【0020】命令テーブル部3は、カウントレジスタ部
2の各カウントレジスタ回路5に対して設けられ、エン
コードされている命令をデコードするデコーダ6と、n
種類の命令をテーブル化したテーブル7とで構成する。
【0021】m個あるカウントレジスタ回路5にそれぞ
れ1つずつ命令を割り当てれば、m個の命令列を生成す
ることができる。
【0022】
【実施例】図2は、請求項1の発明の実施例について説
明する図である。図2において、命令数は26種類、カ
ウントレジスタ回路5は5ビットで構成され、命令がエ
ンコードされたデータは、Ij (j=1,2,…,m
)にもたせてある。カウンタ制御部1の中の桁あふれ判
断では、直前で加算したIj(j=1,2,…,m)の
値が27になると桁あふれが生じる様になっており、桁
あふれが生じた場合にはIj を強制的に1にして、I
j−1 (j=2,3,…,m)を1ずつ加算していく
。もしも、I1 について桁あふれが生じた場合には、
命令列の生成処理を終了する。
【0023】図2において、命令テーブル8はA命令,
B命令,…,Z命令の26個の命令を有している。カウ
ントレジスタ部2のいずれかのカウントレジスタ回路5
の値が変化したときに、カウントレジスタ回路5に格納
されてある特定の命令を示す値をデコーダ6によってデ
コードし、A命令〜Z命令の中から該当する命令を取り
出す。m個の命令テーブル8から各1つずつ命令を得れ
ばm個を単位とした命令列を生成することができる。
【0024】具体的に、n=4、m=3とし、“1”を
ロード命令、“2”をストア命令、“3”を比較命令、
“4”をシフト命令とすると、3個の命令を単位として
111 112 113 114 121 122 1
23 124 131 ・・・ 141 142 14
3 144211 212 213 214 221 
・・・・・・・・・・・ 241 242 243 2
44311 ・・・・・・・・・・・・・・・・・・・
・・・・ 343 344411 ・・・・・・・・・
・・・・・・・・・・・・・・・・ 444 といった命令列が生成される。命令組合せ数は43 で
64種類であり、命令組合せステップは43 ×3で1
92ステップとなる。
【0025】図3は、請求項2の発明の実施例について
説明する図である。図3において、カウンタ制御部1の
カウンタ制御回路4及びカウントレジスタ部2のカウン
トレジスタ回路5は、図2にあるものと同様の作用をす
るものとする。
【0026】図3において、命令群テーブル部3は第1
段目のテーブルである命令群アドレステーブル9と、第
2段目のテーブル10とを用いることにより構成する。 請求項2の発明では命令を機能別にn個の群に分け、同
系統の命令を第2段目のテーブルにまとめてある。命令
群は、ロード系、ストア系、演算系等に区分けし、例え
ば演算系の命令テーブルには加算命令、減算命令等をも
たせる。これは、命令組み合わせ例のテストでは、同系
の命令については同様のテスト結果が得られると考えら
れるためである。
【0027】図3において、デコーダ6によってn個の
中からある命令群が選択されたあと、該命令群に区分け
された任意の命令を次のデコーダ6′によって選択する
ことによりm個を単位とした命令列を生成することがで
きる。
【0028】図4は、請求項3の発明の実施例について
説明する図である。図4において、各2つずつある英字
符A,B,C,D,およびEは、図中では切れているが
実際には繋がっている。また、図中、上下にあるカウン
タ制御部11も、実際には繋がっており1つである。図
4では、命令テーブル部については図示されていないが
、これは、請求項1または請求項2のものを使用するも
のとする。
【0029】図4において、カウントレジスタ部12は
、3個のカウントレジスタ回路5を有し、その前段には
論理積回路13、論理和回路14等が設けられている。 該カウントレジスタ回路5に新しい値が設定される度に
、不図示の命令群テーブルから3個の命令を単位とした
命令列が生成する。
【0030】3個の命令からなる1単位の命令列が生成
されて、次の命令列を生成するときには、図4の下側の
カウンタ制御部11の比較回路による制御が行なわれる
。すなわち、図中、英字符Xで示される比較回路により
条件I1 ≧I2 が満たされ、英字符Yで示される比
較回路により条件I1 ≧I3 が満たされる。該2つ
の比較回路は、I1 <I2 またはI1 <I3 と
ならないようにI1 =I2 またはI1 =I3 と
なった時点で制御を移している。
【0031】例えば、I1 =n,I2 =n,I2 
=1がそれぞれのカウントレジスタ回路5に設定された
後、英字符Xで示される比較回路の制御により、英字符
Aの経路を経て、I1 に1が足される。I1 =n+
1となると、英字符Zで示される比較回路の制御により
、命令列の生成処理が終了する。但し、該英字符Zで示
される比較回路は図2におけるものと同様の作用を有す
るものとする。
【0032】具体的に、n=4とし、“1”をロード命
令、“2”をストア命令、“3”を比較命令、“4”を
シフト命令とすると、3個の命令を単位として、111 211 212         221 311 3
12 313     321 322 323   
  331 411 412 413 414 421
 422 423 424 431 432 433 
434 441  といった命令列が生成される。命令組合せ数は24種類
であり、命令組合せステップは43 +(4×2)で7
2ステップとなる。
【0033】請求項3の命令列生成装置より得られる命
令列のコードを並べ、パイプライン段階の“3”で順次
区切ると、 となり、命令組合せ数24種の並びからは、111から
444まで64種の命令組合せケースが存在している。
【0034】図5は、請求項4の発明の実施例について
説明する図である。図5においては、請求項4の発明の
優先制御部15とカウントレジスタ部12の一部とが図
示されているが、その他の機構については図4の説明に
おいて用いられたものを使用する。
【0035】図5の優先制御部15はカウンタ制御部1
1のいずれの制御機構よりも優先的に作用するものであ
る。まず、英字符Fで示す経路は、命令列生成装置の起
動後、最初にまた終了前最後に通過するものである。該
Fを通過することにより1の値をデコードして得られる
1つの命令が生成し、これが全命令列の先頭と最後にそ
れぞれ付加される。
【0036】また、図5の英字符V及びWで示される比
較回路は、カウントレジスタ回路5に格納されたI2 
およびI3 がどちらも1であった場合に、1の値をデ
コードして得られる1つの命令が生成される様に作用し
ている。ここでは、I2 =1かつI3 =1のときは
I1 およびI2 を排除し、I3 のみを有効として
いる。
【0037】具体的に、n=4とし、“1”をロード命
令、“2”をストア命令、“3”を比較命令、“4”を
シフト命令とすると、 1 1   1 212         221   1 3
12 313     321 322 323   
  331   1 412 413 414 421
 422 423 424 431 432 433 
434 441 1  といった命令列が生成される。先頭と最後にある1はい
ずれか一方を有効とすれば命令組合せステップは43 
+3−1で66ステップとなる。
【0038】請求項4の命令列生成装置より得られる命
令列のコードを並べ、パイプライン段数の“3”で順次
区切ると、 となり、圧縮した命令組合せ数列の並びからは、111
〜444まで64種の命令組合せケースが存在している
【0039】図6は、本発明による性能測定の例につい
て説明する図である。生成命令列格納領域17は、本発
明による命令列生成装置19より生成される命令列を格
納する。タイマの起動部16は、命令列格納領域17に
格納した命令列の実行が開始するとタイマを起動し、タ
イマ解除部18は該命令列の実行が終了するとタイマを
止める。これにより、命令列の実行時間を測定できるの
で中央処理装置やマイクロプロセッサなどの計算機系統
の性能評価を行なうことができる。
【0040】
【発明の効果】以上説明したように、本発明によれば、
パイプライン制御を有する計算機の系統に対して命令の
組合せ試験をする場合において、冗長性を排除して圧縮
された命令の組合せを得ることができるので、効率のよ
い必要十分な試験を行なえるという利点がある。
【図面の簡単な説明】
【図1】本発明による命令列生成装置の原理説明図であ
る。
【図2】請求項1の発明の実施例について説明する図で
ある。
【図3】請求項2の発明の実施例について説明する図で
ある。
【図4】請求項3の発明の実施例について説明する図で
ある。
【図5】請求項4の発明の実施例について説明する図で
ある。
【図6】本発明による性能測定の例について説明する図
である。
【図7】従来の技術について説明する図である。
【符号の説明】
1    カウンタ制御部 2    カウントレジスタ部 3    命令テーブル部 4    カウンタ制御回路 5    カウントレジスタ回路 6,6′  デコーダ 7    命令テーブル 8    命令テーブル 9    命令群テーブル 10    命令テーブル 11    カウンタ制御部 12    カウントレジスタ部 13    論理積回路 14    論理和回路 15    優先制御部 16    タイマの起動部 17    生成命令列格納領域 18    タイマの解除部 19    命令列生成装置 21    乱数発生部 22    命令生成部 23    命令設定レジスタ 24    命令格納制御部 25    メモリ域 26    乱数発生器 27    命令コード部 28    原始オペランド部 29    デコーダ 30    命令生成条件テーブル 31    命令の設定制御 32    リトライ制御 33    命令列

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】  n個の異なる命令の中からm個の命令
    を単位とする命令列を生成する装置であって、Kが2K
     ≦nを満たすとき、前記n個の異なる命令をKビット
    のデータにエンコードする手段と、該エンコードしたK
    ビットのデータをm個用意し、該m個のデータをそれぞ
    れ格納するm個のカウントレジスタ回路と、前記各m個
    のデータの値を1〜nにし、該m個のデータで構成する
    データ列をnm 種類生成する様に制御する手段と、該
    データ列を順次前記m個のカウントレジスタ回路に格納
    する手段と、該m個のカウントレジスタ回路に格納され
    たデータ列を順次取り出す手段と、該取り出したデータ
    列を構成するm個のデータの値を各々デコードして、m
    個の命令からなる列を生成する手段とを具備することを
    特徴とする命令列生成装置。
  2. 【請求項2】  P個の異なる命令の中からm個の命令
    を単位とする命令列を生成する装置であって、前記P個
    の異なる命令を、機能要素を基にそれぞれ、P1 個、
    P2 個、…、Pn 個の命令から構成されるn個の異
    なる命令群に分割する手段と、Kが2K ≦nを満たす
    とき、前記n個の異なる命令群をKビットのデータにエ
    ンコードする手段と、該エンコードしたKビットのデー
    タをm個用意し、該m個のデータをそれぞれ格納するm
    個のカウントレジスタ回路と、前記各m個のデータの値
    を1〜nにし、該m個のデータで構成するデータ列をn
    m 種類生成する様に制御する手段と、該データ列を順
    次前記m個のカウントレジスタ回路に格納する手段と、
    該m個のカウントレジスタ回路に格納されたデータ列を
    順次取り出す手段と、該取り出したデータ列を構成する
    m個のデータの値を各々デコードして、m個の命令群か
    らなる列に変換する手段と、ある命令群が上記デコード
    することにより得られたとき、該命令群を構成する任意
    の命令を抽出し、上記m個の命令群からなる列より、m
    個の命令からなる列を生成する手段とを具備する命令列
    生成装置。
  3. 【請求項3】  mが3であって、3個のKビットのデ
    ータをI1 ,I2 ,I3 で表わしたとき、該3個
    のKビットのデータI1 ,I2 ,I3 で構成する
    データ列をn3種類生成する様に制御する手段に替えて
    、I1 ,I2 ,I3 の値に関して3つの条件、す
    なわち、I1 ≧I2 、 I1 ≧I3 、 I1 =I2 のときI3 =1、 を満たす様にI1 ,I2 ,I3 の値を制御する手
    段を具備する請求項1または請求項2の命令列生成装置
  4. 【請求項4】  カウントレジスタ回路に格納されるI
    2 およびI3 の値がI2 =I3 =1のときに、
    生成されるべき3個の命令の列に替えて“1”の値をデ
    コードすることにより得られる命令1個で構成する1個
    の命令の列を生成する手段と、該1個の命令の列と同等
    の命令列を、命令列生成装置が生成する一連の命令列の
    先頭と最後に付加する手段とを具備する請求項3記載の
    命令列生成装置。
  5. 【請求項5】  パイプライン段数がm段であるパイプ
    ライン制御を有するプロセッサにおいて、請求項1から
    請求項4までのいずれかの命令列生成装置から生成され
    る命令列を格納する手段と、該命令列の実行時間を測定
    する手段とを用いる計算機系統の性能測定方法。
JP3104945A 1991-03-06 1991-03-06 命令列生成装置 Expired - Fee Related JP2644389B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3104945A JP2644389B2 (ja) 1991-03-06 1991-03-06 命令列生成装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3104945A JP2644389B2 (ja) 1991-03-06 1991-03-06 命令列生成装置

Publications (2)

Publication Number Publication Date
JPH04278643A true JPH04278643A (ja) 1992-10-05
JP2644389B2 JP2644389B2 (ja) 1997-08-25

Family

ID=14394231

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3104945A Expired - Fee Related JP2644389B2 (ja) 1991-03-06 1991-03-06 命令列生成装置

Country Status (1)

Country Link
JP (1) JP2644389B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008210275A (ja) * 2007-02-27 2008-09-11 Mitsubishi Electric Corp 試験仕様生成装置及び試験システム及び試験仕様生成方法及びプログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008210275A (ja) * 2007-02-27 2008-09-11 Mitsubishi Electric Corp 試験仕様生成装置及び試験システム及び試験仕様生成方法及びプログラム

Also Published As

Publication number Publication date
JP2644389B2 (ja) 1997-08-25

Similar Documents

Publication Publication Date Title
CN109889205B (zh) 编码方法及系统、解码方法及系统、编解码方法及系统
JPS5818754A (ja) 命令処理ユニツト
US10698697B2 (en) Adaptive routing to avoid non-repairable memory and logic defects on automata processor
JPH07297728A (ja) パターン一致を探索するための方法およびシステム
JPH05233212A (ja) データを圧縮するための装置及び方法並びにデータ処理システム
GB1120428A (en) Improvements in data processing systems
JP2001357048A (ja) ブロックソート圧縮データの検索方法、および検索に適したブロックソート圧縮法の符号化方法
TW200401206A (en) Enhanced multiway radix tree and related methods
JPS62502151A (ja) 大型コンピユ−タシステムのコンピユ−タ機能をシミユレ−トするための配列
JPS6037833A (ja) 符号語の複号装置及び読み取り装置
US8542137B2 (en) Decoding encoded data
JP7495933B2 (ja) ソート方法、装置、電子デバイス及びコンピュータプログラム
JP2001005675A (ja) プログラム変換装置及びプロセッサ
Mullin et al. A tale of three spelling checkers
JPH04278643A (ja) 命令列生成装置
JPH024026B2 (ja)
Royals et al. On the design and implementation of a lossless data compression and decompression chip
JP2006318092A (ja) 乱数生成エージェント
US8117507B2 (en) Decompressing method and device for matrices
JPH09246990A (ja) 可変長符号復号化器
JP2690910B2 (ja) 制御記憶装置
CN117290674B (zh) 一种大数据量随机比特序列重码统计和定位的方法和系统
JPH0644051A (ja) マイクロコンピュータ
JP3229690B2 (ja) 可変長符号復号器
JPH0750596A (ja) 符号化装置及び符号化方法

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19970415

LAPS Cancellation because of no payment of annual fees