JPH07191957A - ハードウェアシミュレータ - Google Patents

ハードウェアシミュレータ

Info

Publication number
JPH07191957A
JPH07191957A JP33208893A JP33208893A JPH07191957A JP H07191957 A JPH07191957 A JP H07191957A JP 33208893 A JP33208893 A JP 33208893A JP 33208893 A JP33208893 A JP 33208893A JP H07191957 A JPH07191957 A JP H07191957A
Authority
JP
Japan
Prior art keywords
event
unit
time
simulation
firing
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
JP33208893A
Other languages
English (en)
Other versions
JP2720778B2 (ja
Inventor
Katsuhiko Okada
克彦 岡田
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 Corp
Original Assignee
NEC Corp
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 Corp filed Critical NEC Corp
Priority to JP33208893A priority Critical patent/JP2720778B2/ja
Publication of JPH07191957A publication Critical patent/JPH07191957A/ja
Application granted granted Critical
Publication of JP2720778B2 publication Critical patent/JP2720778B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Abstract

(57)【要約】 【構成】イベント格納メモリ部1はシミュレーションで
生じるイベントに発火する時刻を付加して蓄える。次時
刻保持部2は蓄えられたイベントが発火する最も現シミ
ュレーション時刻に近い時刻を保持する。発火イベント
取出部3は保持されたシミュレーション時刻に発火する
イベントを取り出す。演算実行部4は取り出されたイベ
ントの演算情報を取り出し演算を行う。イベント発生決
定部5は演算された演算単位の演算結果を接続先に伝播
するか否か決定する。イベント発生部6はイベント発生
決定部5でイベント発生が認められたときに、演算実行
部4の演算結果に発火時刻を付加したイベントを発生す
る。イベント格納部7は発生したイベントをイベント格
納メモリ部1に格納し、次時刻保持部2にイベントの発
生時刻を通知する。 【効果】大容量のモデルシミュレーションを高速に実行
することができる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はハードウェアシミュレー
タに関し、特にイベント駆動方式の専用ハードウェアシ
ミュレータに関する。
【0002】
【従来の技術】シミュレータにおいてシミュレーション
で生じるイベントが演算されるべき状態になることを
“発火”と表現しているが、従来、ハードウェアシミュ
レータでは、標準遅延においてはタイムホイール方式を
採用しており、同一時刻に発火するイベントは一つのメ
モリに集め、遅延できるクロック数分、メモリ数十枚を
使用して演算を行っていた。
【0003】
【発明が解決しようとする課題】上述した従来のハード
ウェアシミュレータでは、下記の問題点を有していた。
【0004】クロックごとにメモリを最大演算単位数分
用意するので非常に大規模なメモリ容量を必要とする
が、標準遅延ではクロック当りの発火イベントはそれほ
ど多くなく、イベントが発火しないクロックもあるた
め、使われないメモリ部が多く無駄にメモリ容量をとっ
ていた。そして、イベントの発生していないクロックの
メモリを検索するという無駄な処理をして時間をとられ
無駄な時間を費やしていた。
【0005】さらに、上記の方法では同じクロックに同
じ演算単位がイベント発火することがある。このとき一
時的にイベントが大量に発生することになるが、同じ演
算単位の演算は最後に発火するイベントの最終入力値に
よる演算以外は意味のないものとなり、無駄な演算時間
を費やすことになっていた。
【0006】本発明の目的は、無駄な演算時間を費やす
こともなく大容量のモデルシミュレーションを高速に実
行することができるハードウェアシミュレータを提供す
ることにある。
【0007】
【課題を解決するための手段】第1の発明のハードウェ
アシミュレータは、イベント駆動方式を行うハードウェ
アシミュレータにおいて、シミュレーションで生じるイ
ベントに、前記イベントが演算されるべき状態であるこ
とを示す“発火”状態になるシミュレーション時刻を付
加した発火時刻付きイベントを格納するイベント格納メ
モリ部と、前記イベント格納メモリ部の中の発火時刻付
きイベントが発火する最も現シミュレーション時刻に近
い時刻を保持する次時刻保持部と、前記次時刻保持部に
保持されたシミュレーション時刻に発火するイベントを
取り出す発火イベント取出部と、前記発火イベント取出
部で取り出されたイベントの演算情報を取り出し演算を
行う演算実行部と、前記演算実行部で演算された演算単
位の演算結果を接続先に伝播するか否か決定するイベン
ト発生決定部と、前記イベント発生決定部でイベント発
生が認められたときに、前記演算実行部の演算結果に発
火時刻を付加したイベントを発生するイベント発生部
と、前記イベント発生部で発生したイベントを前記イベ
ント格納メモリ部に格納し、前記次時刻保持部にイベン
トの発生時刻を通知するイベント格納部とを備えて構成
されている。
【0008】また、第2の発明のハードウェアシミュレ
ータは、第1の発明のハードウェアシミュレータにおい
て、前記イベント格納部により格納されるイベントとし
て同じシミュレーション時刻に発火する同じ演算単位の
イベントが複数あるとき、それらのイベントを一つに
し、同じ演算単位は1シミュレーション時刻において1
回のみシミュレーションさせる演算イベント統合部を備
えて構成されている。
【0009】
【実施例】次に、本発明の実施例について図面を参照し
て説明する。
【0010】図1は第1の発明のハードウェアシミュレ
ータの一実施例を示すブロック図である。
【0011】図2〜図7は図1のハードウェアシミュレ
ータにおける各部の動作の一例を示す説明図である。
【0012】図1に示すハードウェアシミュレータは、
シミュレーションで生じるイベントに発火する時刻を付
加した発火時刻付きイベントを全て蓄えるイベント格納
メモリ部1、イベント格納メモリ部1の中のイベントが
発火する最も現シミュレーション時刻に近い時刻を保持
する次時刻保持部2、次時刻保持部2に保持されたシミ
ュレーション時刻に発火するイベントを取り出す発火イ
ベント取出部3、発火イベント取出部3で取り出された
イベントの演算情報を取り出し演算を行う演算実行部
4、演算実行部4で演算された演算単位の演算結果を接
続先に伝播するか否か決定するイベント発生決定部5、
イベント発生決定部5でイベント発生が認められたとき
に、演算実行部4の演算結果に発火時刻を付加したイベ
ントを発生するイベント発生部6、イベント発生部6で
発生したイベントをイベント格納メモリ部1に格納し、
次時刻保持部2にイベントの発生時刻を通知するイベン
ト格納部7から構成されている。
【0013】次に、図面を参照して動作を説明する。
【0014】図2に示すように、イベント格納メモリ部
1には、次に示す3つのイベント(第1番目のイベント
〜第3番目のイベント)が格納されているものとする。
【0015】第1番目のイベントは、シミュレーション
時刻が“1”、演算単位番号が“1”、入力状態値が
“3:5”(010111Z)である。
【0016】第2番目のイベントは、シミュレーション
時刻が“5”、演算単位番号が“1”、入力状態値が
“0:3”(000Z)である。
【0017】第3番目のイベントは、シミュレーション
時刻が“3”、演算単位番号が“2”、入力状態値が
“5:1”(1Z)である。
【0018】まず、シミュレーション初期時に、次時刻
保持部2より出力されるシミュレーション時刻は“1”
であるため、発火イベント取出部3により、図3に示す
ようにシミュレーション時刻が“1”の演算単位が検索
され、第1番目のイベントがイベント格納メモリ部1か
ら取り出され、シミュレーション時刻,演算単位番号,
及び入力状態値を演算実行部4へ通知し、かつ演算単位
番号のみをイベント発生決定部5及びイベント発生部6
に通知する。
【0019】次に、演算実行部4では、図4に示すよう
に、通知された演算単位番号“1”で示される演算単位
の演算情報を、入力状態値メモリ及び演算単位情報格納
メモリより取り出し、シミュレーションを行い、出力値
“11111Z”をイベント発生決定部5及びイベント
発生部6に伝達する。
【0020】次に、イベント発生決定部5は、発火イベ
ント取出部3より通知された演算単位番号“1”の出力
状態メモリから、過去の出力値(11100Z)を取り
出しておき、演算実行部4から伝達された出力値(11
111Z)と比較し、出力値が異るので、イベント発生
部6にイベント発生要求を通知する。そして、出力値
“11111Z”を出力メモリの演算単位番号“1”の
場所に書き込み、出力値を“11100”から“111
11”に更新する。
【0021】次に、イベント発生部6は、イベント発生
決定部5よりイベント発生要求を受け取ると、発火イベ
ント取出部3より通知された演算単位番号“1”の接続
先メモリを読み、接続のある回数分、遅延情報メモリよ
り、発火クロック情報(シミュレーション時刻“3”)
を、また接続先メモリより演算単位番号“3”、及びそ
のビット位置“0:5”を読み、発火時刻付きイベント
を作ってイベント格納部7へ伝播する。
【0022】さらに、図5に示すように、イベント格納
部7は、イベント格納メモリ部1のイベント未格納の場
所に、イベント発生部6から伝播された発火時刻付きイ
ベント(シミュレーション時刻“3”,演算単位番号
“3”,入力状態値が“3:5”(010111Z))
を格納し、次時刻保持部2へイベント発火時刻を伝達す
る。
【0023】次に、次時刻保持部2では、伝達されたイ
ベント発火時刻であるシミュレーション時刻“3”と、
内部に保持している次シミュレーション時刻とを比較
し、現シミュレーション実行クロックに近いシミュレー
ション時刻“3”を次シミュレーション時刻(次時刻)
とする。
【0024】その結果、イベントは下記に示すようにな
る。
【0025】第2番目のイベントは、シミュレーション
時刻が“5”、演算単位番号が“1”、入力状態値が
“0:3”(000Z)である。
【0026】第3番目のイベントは、シミュレーション
時刻が“3”、演算単位番号が“2”、入力状態値が
“5:1”(1Z)である。
【0027】第4番目のイベントは、シミュレーション
時刻が“3”、演算単位番号が“3”、入力状態値が
“0:5”(11111Z)である。
【0028】次に、図6に示すように、発火イベント取
出部3で、次時刻保持部2より出力されるシミュレーシ
ョン時刻は“1”であるため、シミュレーション時刻
“1”の演算単位が検索されるが、シミュレーション時
刻“1”の発火イベントは存在しないため、次時刻保持
部2に次時刻表示伝達要求を送る。
【0029】次に、図7に示すように、次時刻保持部2
で、次時刻表示伝達要求を発火イベント取出部から受取
ると、内部に保持する次シミュレーション時刻“3”
が、実行するシミュレーションクロック例えば“10”
の指定内であるか否かをみて、指定内なので、発火イベ
ント取出部3へ次シミュレーション時刻“3”を伝達す
る。
【0030】次に、発火イベント取出部3で、次時刻保
持部で伝達された次シミュレーション時刻により、再度
イベント格納メモリ部1を検索して3番目のイベント
(シミュレーション時刻“3”,演算単位番号“2”,
入力状態値が“5:1”(1Z))を得る。
【0031】同様にしてシミュレーションを行い、発火
イベント取出部3で発火イベントが取り出せる間シミュ
レーションを続ける。
【0032】このように、本発明のハードウェアシミュ
レータは、標準遅延のシミュレーションをタイムホイー
ル方式を用いずに実行するため、大容量のモデルシミュ
レーションを高速に実行することができる。
【0033】図8は第2の発明のハードウェアシミュレ
ータの一実施例を示すブロック図である。
【0034】図9及び図10は図8のハードウェアシミ
ュレータにおける各部の動作の一例を示す説明図であ
る。
【0035】図8に示すハードウェアシミュレータは、
シミュレーションで生じるイベントに発火する時刻を付
加した発火時刻付きイベントを全て蓄えるイベント格納
メモリ部1、イベント格納メモリ部1の中のイベントが
発火する最も現シミュレーション時刻に近い時刻を保持
する次時刻保持部2、次時刻保持部2に保持されたシミ
ュレーション時刻に発火するイベントを取り出す発火イ
ベント取出部3、発火イベント取出部3で取り出された
イベントの演算情報を取り出し演算を行う演算実行部
4、演算実行部4で演算された演算単位の演算結果を接
続先に伝播するか否か決定するイベント発生決定部5、
イベント発生決定部5でイベント発生が認められたとき
に、演算実行部4の演算結果に発火時刻を付加したイベ
ントを発生するイベント発生部6、イベント発生部6で
発生したイベントをイベント格納メモリ部1に格納し、
次時刻保持部2にイベントの発生時刻を通知するイベン
ト格納部7、イベント格納部7で格納されるイベントに
同じシミュレーション時刻に発火する同じ演算単位のイ
ベントが複数あるとき、それらのイベントを一つにし、
同じ演算単位は1シミュレーション時刻において1回の
みシミュレーションさせる演算イベント統合部8から構
成されている。
【0036】次に、図面を参照して動作を説明する。
【0037】図8の実施例の動作説明は、図1の実施例
の動作説明において図2に示したイベント格納部メモリ
部1に格納されている3つのイベントの説明部分から、
図4に示したイベント発生決定部5の動作説明部分、す
なわちイベント発生決定部5がイベント発生部6にイベ
ント発生要求を通知し、出力値“11111Z”を出力
メモリの演算単位番号“1”の場所に書き込み、出力値
を“11100”から“11111”に更新するまでの
説明と同じであるので省略する。
【0038】従って、図8のハードウェアシミュレータ
における各部の動作説明は、図9に示すようにイベント
発生決定部5からイベント発生要求の通知を受けたイベ
ント発生部6の動作より説明する。
【0039】イベント発生決定部5からイベント発生要
求の通知を受けたイベント発生部6は、図9に示すよう
に発火イベント取出部3より通知された演算単位番号
“1”の接続先メモリを読み、接続のある回数分、遅延
情報メモリより発火クロック情報(シミュレーション時
刻“3”)を読む。また接続先メモリより演算単位番号
“2”、及びそのビット位置“0:5”を読み、発火時
刻付きイベントを作ってイベント格納部7へ伝播する。
【0040】さらに、図10に示すように、イベント格
納部7は、イベント格納メモリ部1のイベント未格納の
場所に、イベント発生部6から伝播された発火時刻付き
イベント(シミュレーション時刻“3”,演算単位番号
“2”,入力状態値が“0:5”(111111Z))
を格納し、次時刻保持部2へイベント発火時刻を伝達す
る。
【0041】次に、イベント統合部8においてイベント
格納メモリ部1を検索し、同シミュレーション時刻,同
演算単位番号のイベントがあればこれを一つに統合し、
イベント格納メモリ部1に登録し直し、同シミュレーシ
ョン時刻,同演算単位番号のイベントを一つにする。
【0042】次に、次時刻保持部2では、伝達されたイ
ベント発火時刻であるシミュレーション時刻“3”と、
内部に保持している次シミュレーション時刻とを比較
し、現シミュレーション実行クロックに近いシミュレー
ション時刻“3”を次シミュレーション時刻(次時刻)
とする。
【0043】その結果、イベントは下記に示すようにな
る。
【0044】第2番目のイベントは、シミュレーション
時刻が“5”、演算単位番号が“1”、入力状態値が
“0:3”(000Z)である。
【0045】第3番目のイベントは、シミュレーション
時刻が“3”、演算単位番号が“2”、入力状態値が
“0:6”(111111Z)である。
【0046】同様にしてシミュレーションを行い、発火
イベント取出部3で発火イベントが取り出せる間シミュ
レーションを続ける。
【0047】
【発明の効果】以上説明したように、本発明のハードウ
ェアシミュレータは、標準遅延のシミュレーションをタ
イムホイール方式を用いずに実行するため、大容量のモ
デルシミュレーションを高速に実行することができると
いう効果を有している。
【図面の簡単な説明】
【図1】第1の発明のハードウェアシミュレータの一実
施例を示すブロック図である。
【図2】図1のハードウェアシミュレータにおけるイベ
ント格納メモリ部の動作の一例を示す説明図である。
【図3】図1のハードウェアシミュレータにおける発火
イベント取出部及びイベント格納メモリ部の動作の一例
を示す説明図である。
【図4】図1のハードウェアシミュレータにおける演算
実行部,イベント発生決定部及びイベント発生部の動作
の一例を示す説明図である。
【図5】図1のハードウェアシミュレータにおけるイベ
ント格納メモリ部,次時刻保持部及びイベント格納部の
動作の一例を示す説明図である。
【図6】図1のハードウェアシミュレータにおける発火
イベント取出部及びイベント格納メモリ部の動作の一例
を示す説明図である。
【図7】図1のハードウェアシミュレータにおけるイベ
ント格納メモリ部,次時刻保持部及び発火イベント取出
部の動作の一例を示す説明図である。
【図8】第2の発明のハードウェアシミュレータの一実
施例を示すブロック図である。
【図9】図8のハードウェアシミュレータにおけるイベ
ント発生部の動作の一例を示す説明図である。
【図10】図8のハードウェアシミュレータにおけるイ
ベント格納メモリ部,イベント格納部及びイベント統合
部の動作の一例を示す説明図である。
【符号の説明】
1 イベント格納メモリ部 2 次時刻保持部 3 発火イベント取出部 4 演算実行部 5 イベント発生決定部 6 イベント発生部 7 イベント格納部 8 イベント統合部

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 イベント駆動方式を行うハードウェアシ
    ミュレータにおいて、 シミュレーションで生じるイベントに、前記イベントが
    演算されるべき状態であることを示す“発火”状態にな
    るシミュレーション時刻を付加した発火時刻付きイベン
    トを格納するイベント格納メモリ部と、前記イベント格
    納メモリ部の中の発火時刻付きイベントが発火する最も
    現シミュレーション時刻に近い時刻を保持する次時刻保
    持部と、前記次時刻保持部に保持されたシミュレーショ
    ン時刻に発火するイベントを取り出す発火イベント取出
    部と、前記発火イベント取出部で取り出されたイベント
    の演算情報を取り出し演算を行う演算実行部と、前記演
    算実行部で演算された演算単位の演算結果を接続先に伝
    播するか否か決定するイベント発生決定部と、前記イベ
    ント発生決定部でイベント発生が認められたときに、前
    記演算実行部の演算結果に発火時刻を付加したイベント
    を発生するイベント発生部と、前記イベント発生部で発
    生したイベントを前記イベント格納メモリ部に格納し、
    前記次時刻保持部にイベントの発生時刻を通知するイベ
    ント格納部とを備えることを特徴とするハードウェアシ
    ミュレータ。
  2. 【請求項2】 請求項1記載のハードウェアシミュレー
    タにおいて、前記イベント格納部により格納されるイベ
    ントとして同じシミュレーション時刻に発火する同じ演
    算単位のイベントが複数あるとき、それらのイベントを
    一つにし、同じ演算単位は1シミュレーション時刻にお
    いて1回のみシミュレーションさせる演算イベント統合
    部を備えることを特徴とするハードウェアシミュレー
    タ。
JP33208893A 1993-12-27 1993-12-27 ハードウェアシミュレータ Expired - Lifetime JP2720778B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP33208893A JP2720778B2 (ja) 1993-12-27 1993-12-27 ハードウェアシミュレータ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP33208893A JP2720778B2 (ja) 1993-12-27 1993-12-27 ハードウェアシミュレータ

Publications (2)

Publication Number Publication Date
JPH07191957A true JPH07191957A (ja) 1995-07-28
JP2720778B2 JP2720778B2 (ja) 1998-03-04

Family

ID=18251017

Family Applications (1)

Application Number Title Priority Date Filing Date
JP33208893A Expired - Lifetime JP2720778B2 (ja) 1993-12-27 1993-12-27 ハードウェアシミュレータ

Country Status (1)

Country Link
JP (1) JP2720778B2 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02122337A (ja) * 1988-10-31 1990-05-10 Pfu Ltd アクセラレータ
JPH02252065A (ja) * 1989-03-24 1990-10-09 Matsushita Electric Ind Co Ltd 論理シミュレーション方法
JPH0464164A (ja) * 1990-07-03 1992-02-28 Internatl Business Mach Corp <Ibm> シミユレーシヨン方法及び装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02122337A (ja) * 1988-10-31 1990-05-10 Pfu Ltd アクセラレータ
JPH02252065A (ja) * 1989-03-24 1990-10-09 Matsushita Electric Ind Co Ltd 論理シミュレーション方法
JPH0464164A (ja) * 1990-07-03 1992-02-28 Internatl Business Mach Corp <Ibm> シミユレーシヨン方法及び装置

Also Published As

Publication number Publication date
JP2720778B2 (ja) 1998-03-04

Similar Documents

Publication Publication Date Title
US6097885A (en) Digital system simulation
US4815005A (en) Semantic network machine for artificial intelligence computer
US4787062A (en) Glitch detection by forcing the output of a simulated logic device to an undefined state
US20160267207A1 (en) Modelling and simulation method
JP3290548B2 (ja) 階層形チェックポイントを使用する論理シミュレータ
JPH07191957A (ja) ハードウェアシミュレータ
US5740085A (en) Data processing apparatus for the modeling of logic circuitry
JPS5814257A (ja) 論理シミユレ−シヨン用デ−タ処理装置
US5855010A (en) Data processing apparatus
JPH027180A (ja) 命令一斉発火方式
JPS60173483A (ja) 論理回路シミュレーション装置
JPH0458070B2 (ja)
JP2001142385A (ja) 分散シミュレーションシステムおよび分散シミュレーション方法
JPS6312039A (ja) 論理シミユレ−タ
JP2002124088A (ja) 連想メモリ装置およびそのメモリデータ移動方法
JPS6244843A (ja) シミユレ−タ
JPH09244521A (ja) シミュレータ
JPH0689262A (ja) 会話型処理における動的レコード制御方式
JPS6235961A (ja) シミユレ−シヨン方法
JP2610028B2 (ja) 濁音及び半濁音変換処理装置
JP2659410B2 (ja) データフローコンピュータの実行一時停止方式
JPH0535815A (ja) 論理シミユレータ
JPS59212972A (ja) メモリの有効利用方式
JPH02216533A (ja) ルールベース実行装置及び方法
JPH11175344A (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: 19971021