JP3129286B2 - システムレベルシミュレーション方法及びその装置並びにプログラムを記録した機械読み取り可能な記録媒体 - Google Patents

システムレベルシミュレーション方法及びその装置並びにプログラムを記録した機械読み取り可能な記録媒体

Info

Publication number
JP3129286B2
JP3129286B2 JP10134560A JP13456098A JP3129286B2 JP 3129286 B2 JP3129286 B2 JP 3129286B2 JP 10134560 A JP10134560 A JP 10134560A JP 13456098 A JP13456098 A JP 13456098A JP 3129286 B2 JP3129286 B2 JP 3129286B2
Authority
JP
Japan
Prior art keywords
circuit
processing
partial circuit
partial
emulation
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
Application number
JP10134560A
Other languages
English (en)
Other versions
JPH11312186A (ja
Inventor
義行 伊藤
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 JP10134560A priority Critical patent/JP3129286B2/ja
Priority to US09/299,568 priority patent/US20030033131A1/en
Publication of JPH11312186A publication Critical patent/JPH11312186A/ja
Application granted granted Critical
Publication of JP3129286B2 publication Critical patent/JP3129286B2/ja
Priority to US10/419,151 priority patent/US20030229486A1/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking
    • G06F30/3308Design verification, e.g. functional simulation or model checking using simulation
    • G06F30/331Design verification, e.g. functional simulation or model checking using simulation with hardware acceleration, e.g. by using field programmable gate array [FPGA] or emulation

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、コンピュータシス
テム等の入出力装置の操作を含むシステムのシステムレ
ベルシミュレーションの分野に関し、特に、シミュレー
ション対象装置の一部を書き換え型ハードウェアを用い
てエミュレーションするようにした技術に関する。
【0002】
【従来の技術】コンピュータシステム等のシミュレーシ
ョン対象装置全体のシミュレーションを行う従来のシス
テムレベルシミュレーション装置の一例が、特開平8-11
0919号公報に記載されている。
【0003】図4はこの文献に記載されているシステム
レベルシミュレーション装置5の構成を示したブロック
図であり、命令レベルシミュレーション装置51と、論理
レベルシミュレーション装置52とを含んでいる。命令レ
ベルシミュレーション装置51,論理レベルシミュレーシ
ョン装置52は、ソフトウェアによって実現されるもので
ある。
【0004】命令レベルシミュレーション装置51は、論
理レベルシミュレーション装置52に比較して高速に動作
するが、入出力装置の操作を含むシステム全体の動作は
正確にシミュレーションすることはできないものであ
る。一方、論理レベルシミュレーション装置52は、非常
に正確なシミュレーションを行うことはできるが、処理
速度が非常に遅いものである。
【0005】図5は、図4に示したシステムレベルシミ
ュレーション装置5がシミュレーション対象するコンピ
ュータシステムの一例を示したブロック図であり、ホス
トシステム6と、入出力システム7とから構成されてい
る。
【0006】以下、図4,図5を参照して従来のシステ
ムレベルシミュレーション装置5の動作について説明す
る。
【0007】命令レベルシミュレーション装置51は、ホ
ストシステム6の構成要素であるプロセッサ61,システ
ムバス62,メモリ63,インターフェース64をシミュレー
ションする。これによりコンピュータシステムの主要部
分の機能がシミュレーションされる。一方、論理レベル
シミュレーション装置52は、入出力システム7の構成要
素である入出力管理装置72のシミュレーションを行い、
システムレベルのシミュレーションに必要な入出力操作
を行う。
【0008】更に、命令レベルシミュレーション装置51
によってシミュレーションされたホストシステム6内の
ソケットモジュール65と、論理レベルシミュレーション
装置52によってシミュレーションされた入出力システム
7内のソケットインターフェース71とを用いて、ホスト
システム6と入出力システム7との間で相互に動作内容
を通知する。このような動作により、システムレベルの
シミュレーションが行われる。
【0009】上述した図4に示した従来のシステムレベ
ルシミュレーション装置5は、処理速度が速い命令レベ
ルシミュレーション装置51を用いてホストシステム6の
シミュレーションを行い、命令レベルシミュレーション
装置51では正確なシミュレーションを行うことができな
い入出力システム7については論理レベルシミュレーシ
ョン装置52を用いてシミュレーションを行うことによ
り、システムレベルシミュレーションの高速化を図って
いる。
【0010】しかしながら、上記した従来のシステムレ
ベルシミュレーション装置5は、ソフトウェアによって
実現される命令レベルシミュレーション装置51と論理レ
ベルシミュレーション装置52とを統合することにより構
成されているため、処理速度の高速化には限界がある。
【0011】ところで、シミュレーション対象となる回
路をFPGA(フィールドプログラマブルゲートアレイ)に
マッピングし、それを使用してシミュレーション(エミ
ュレーション)する技術も従来から知られている(例え
ば、特表平8-508599号公報)。FPGAを使用した場合は、
ソフトウェアによって実現される命令レベルシミュレー
ション装置, 論理レベルシミュレーション装置を使用す
る場合に比較して、処理速度を格段に速くすることがで
きる。
【0012】そこで、処理速度を向上させるために、FP
GAを用いたエミュレーション装置を作成し、それを利用
してシステムレベルシミュレーションを行うということ
が考えられる。
【0013】
【発明が解決しようとする課題】上記したようにFPGAを
用いて構成したエミュレーション装置を利用してシステ
ムレベルシミュレーションを行うようにすれば、図4に
示したシステムレベルシミュレーション装置を用いる場
合に比較してはるかに高速にシステムレベルシミュレー
ションを行うことができる。
【0014】しかし、FPGAを用いて構成したエミュレー
ション装置を利用してシステムレベルシミュレーション
を行う場合には、次のような問題が生じる。
【0015】コンピュータシステムの開発時において
は、ホストシステムの一部の構成要素しか仕様が決定さ
れていない状況でシステムレベルシミュレーションを行
うことが必要になる場合がある。このような場合であっ
ても、上記した方法では、コンピュータシステムの全て
の構成要素の動作をエミュレーションできるエミュレー
ション装置をFPGAを用いて作成しておくことが必要にな
る。例えば、コンピュータシステムの構成要素の内、プ
ロセッサしか仕様が決定されていないような場合であっ
ても、システムバス,メモリ等の他の構成要素も含め
て、全ての構成要素の動作をエミュレーションできるエ
ミュレーション装置を作成しておくことが必要になる。
【0016】FPGAによりエミュレーション装置を作成す
るには、多くの労力, 時間が必要になる。このように多
くの労力,時間が必要になるFPGAによりエミュレーショ
ン装置の作成を、仕様が確定していない構成要素につい
ても行うということは、多くの労力, 時間が無駄になる
危険性が高く、効率良くシステムレベルシミュレーショ
ンを行うことができなくなる危険性が高くなる。つま
り、作成したエミュレーション装置の構成の内、仕様が
決定されていない構成要素に対応する部分の構成が、そ
の後に決定された構成要素の仕様と一致しない場合に
は、再びエミュレーション装置を作成し直さなければな
らないため、効率の良いシステムレベルシミュレーショ
ンを行うことができなくなってしまう。また、FPGAによ
るエミュレーション装置は、エミュレーション対象とな
る装置とは動作速度に差があるため、エミュレーション
対象の外部に付加する入出力装置等の操作や管理を行う
ことが困難である。そのため、本来ならば外部に付加す
るだけである入出力装置もエミュレーション対象に含め
てエミュレーションするか、あるいは動作速度整合のた
めのインターフェースを設ける必要があり、エミュレー
ション装置作成に必要となる労力を増加させる一因とな
っている。
【0017】〔発明の目的〕そこで、本発明の目的は、
効率良く、且つ高速にシステムレベルシミュレーション
を行えるようにすることにある。
【0018】
【課題を解決するための手段】本発明は上記目的を達成
するため、シミュレーション対象装置(図3の4)を第
1,第2の部分回路(図3の41,43)に分割し、第1の
部分回路(図3の41)の動作を、高速動作が可能なFPGA
等の書き換え型ハードウェアによって構成されたエミュ
レーション対象回路(図3の11)によってエミュレーシ
ョンし、第2の部分回路(図3の43)の動作を、ソフト
ウェアによって構成された柔軟性の高い部分回路処理代
行手段(図3の22)によってシミュレーションし、部分
回路処理代行手段(図3の22)は、第2の部分回路が行
う入出力動作を、OS呼出し手段(図3の23)を用いて
OSを呼び出し、OSにシミュレーションさせ、OS呼
出し手段(図3の23)は、OSが保持している入力装置
からの処理要求がエミュレーション対象回路(図3の1
1)に対する処理要求なのか、部分回路処理代行手段
(図3の22)に対する処理要求なのかを判断し、エミュ
レーション対象回路(図3の11)に対する処理要求であ
ると判断した場合は、エミュレーション対象回路(図3
の11)へ処理要求を通知することを部分回路処理代行手
段(図3の22)に対して指示し、部分回路処理代行手段
(図3の22)に対する処理要求であると判断した場合
は、処理要求を部分回路処理代行手段(図3の22)に渡
す。
【0019】より具体的には、シミュレーション対象装
置(図3の4)を第1,第2の部分回路(図3の41,4
3)に分割した際の、前記第1の部分回路(図3の41)
の動作をエミュレーションする、書き換え型ハードウェ
アによって構成されたエミュレーション対象回路(図3
の11)と、前記第2の部分回路(図3の43)の動作をシ
ミュレーションする、ソフトウェアによって構成された
部分回路処理代行手段(図3の22)であって、前記第2
の部分回路が行う入出力動作を、OS呼出し手段(図3
の23)を用いて呼び出したOSにシミュレーションさせ
る部分回路処理代行手段(図3の22)と、OSを呼び出
すと共に、前記OSが保持している入力装置からの処理
要求が前記エミュレーション対象回路(図3の11)に対
する処理要求なのか、前記部分回路処理代行手段(図3
の22)に対する処理要求なのかを判断し、前記エミュレ
ーション対象回路(図3の11)に対する処理要求である
と判断した場合は、前記エミュレーション対象回路(図
3の11)へ前記処理要求を通知することを前記部分回路
処理代行手段(図3の22)に対して指示し、前記部分回
路処理代行手段(図3の22)に対する処理要求であると
判断した場合は、前記処理要求を前記部分回路処理代行
手段(図3の22)に渡すOS呼出し手段(図3の23)
と、前記エミュレーション対象回路(図3の11)と前記
部分回路処理代行手段(図3の22)との間で、シミュレ
ーションに必要となる情報をやり取りする通信手段(図
3の12,21)とを備えている。
【0020】
【0021】
【0022】
【0023】
【発明の実施の形態】次に本発明の実施の形態について
図面を参照して詳細に説明する。
【0024】図1は本発明の実施の形態の一例を示すブ
ロック図であり、書き換え型ハードウェアを利用したエ
ミュレーション装置1と、プログラム制御により動作す
るホストコンピュータ2と、キーボード等の入力装置31
およびディスプレイ装置等の出力装置32からなる入出力
装置3と、記録媒体Kとを含む。
【0025】書き換え型ハードウェアを利用したエミュ
レーション装置1は、エミュレーション対象回路11と、
対ホストコンピュータ通信回路12とを備えている。
【0026】エミュレーション対象回路11は、書き換え
型ハードウェアによって構成された回路であり、コンピ
ュータシステム等のシミュレーション対象装置の構成要
素の内の、既に仕様が決定され、且つ書き換え型ハード
ウェアによってエミュレーション可能な構成要素からな
る部分回路(第1の部分回路)と等価に動作する。尚、
書き換え型ハードウェアとしては、例えば、FPGAを使用
することができる。また、書き換え型ハードウェアによ
ってエミュレーションできない構成要素としては、例え
ば、実際に入出力装置とのインターフェースを行う部分
等がある。これは、実際の入出力装置の動作速度と書き
換え型ハードウェアの動作速度に速度差があるためであ
る。
【0027】対ホストコンピュータ通信回路12は、ホス
トコンピュータ2からの指示に従ってエミュレーション
対象回路11の動作を制御したり、エミュレーション対象
回路11の動作内容をホストコンピュータ2に対して通知
したりする。ここで、対ホストコンピュータ通信回路12
がホストコンピュータ2に通知するエミュレーション対
象回路11の動作内容は、例えば、エミュレーション対象
回路11によってエミュレーションされる第1の部分回路
が発行する入力要求,出力要求,終了通知や、コンピュ
ータシステムの進行アドレス等の状態等である。これら
の動作内容は、FPGAによって構成されるエミュレーショ
ン対象回路11の該当する部分に信号線を接続することに
より取り出すことができる。
【0028】ホストコンピュータ2は、対エミュレーシ
ョン装置通信装置21と、ソフトウェアによって実現され
る部分回路処理代行手段22と、OS(オペレーティング
システム)24と、OS呼出し手段23と、入出力制御装置
25とを備える。
【0029】対エミュレーション装置通信装置21は、エ
ミュレーション装置1から通知されるエミュレーション
対象回路11の動作内容を受け取り、部分回路処理代行手
段22に内容を渡すか、若しくは入出力制御装置25を操作
する。また、部分回路処理代行手段22により要求される
エミュレーション対象回路11に対する制御の内容をエミ
ュレーション装置1に通知する。
【0030】部分回路処理代行手段22は、シミュレーシ
ョン対象装置の構成要素の内、エミュレーション対象回
路11によってエミュレーションされていない構成要素か
らなる部分回路(第2の部分回路)の動作をシミュレー
ションする機能を有する。より具体的には、対エミュレ
ーション装置通信装置21より渡されるエミュレーション
対象回路11の動作内容に応じた処理を行う機能や、OS
呼出し手段23にOS24の呼び出しを要求する機能や、エ
ミュレーション対象回路11に対する制御内容を対エミュ
レーション装置通信装置21に渡す機能等を有する。
【0031】OS呼出し手段23は、部分回路処理代行手
段22からの要求により動作内容に応じた引数を作成し、
OS24に処理を行わせ、結果の戻り値を第2の部分回路
の動作内容として部分回路処理代行手段22に通知する。
【0032】OS24は、入出力制御装置25を制御して出
力装置32にデータを出力したり、入力装置31からの入力
データを保持しOS呼出し手段23の要求に応じて入力デ
ータを引き渡す等、入出力装置3の管理を行う。
【0033】ホストコンピュータ2に接続されている記
録媒体Kは、ディスク,半導体メモリ,その他の記録媒
体であり、システムレベルシミュレーション用のプログ
ラムが記録されている。この記録媒体Kに記録されてい
るシステムレベルシミュレーション用のプログラムは、
ホストコンピュータ2によって読み取られ、ホストコン
ピュータ2の動作を制御することで、ホストコンピュー
タ2上に、対エミュレーション装置通信装置21,部分回
路処理代行手段22,OS呼出し手段23を実現する。
【0034】図2は図1の動作例を示す流れ図であり、
以下図1,図2を参照して本実施の形態の動作について
詳細に説明する。
【0035】エミュレーション装置1内のエミュレーシ
ョン対象回路11は、エミュレーション対象としている第
1の部分回路の動作を逐次エミュレーションし、動作内
容を対ホストコンピュータ通信回路12を用いてホストコ
ンピュータ2に通知している。
【0036】エミュレーション対象回路11がエミュレー
ションしている第1の部分回路の動作内容が、対ホスト
コンピュータ通信回路12および対エミュレーション装置
通信装置21を介して通知されると、部分回路処理代行手
段22は、通知された動作内容を調べ、エミュレーション
対象回路11からの処理要求或いは終了報告が到達してい
るか否かを調べる(図3のステップA701)。入力要求,
出力要求等の処理要求が到達している場合は、部分回路
処理代行手段22は、要求内容を受理する(ステップA70
2)。
【0037】部分回路処理代行手段22は、エミュレーシ
ョン対象回路11でエミュレーションされていない第2の
部分回路と等価な手順を代行しているが、エミュレーシ
ョン装置1からの処理要求を受理している場合には要求
内容に応じた処理を行う(ステップA703)。
【0038】また、部分回路処理代行手段22は、第2の
部分回路の処理代行中に(ステップA703)、OS24を利
用することが必要になった場合(ステップA704)は、O
S呼出し手段23により引数を引き渡し(ステップA70
5)、OS24を呼び出す(ステップA706)。その後、O
S24の処理が完了し次第、戻り値を受取る(ステップA7
07)。
【0039】OS24は、呼出し内容に応じて入出力制御
装置25を制御することにより、キーボード等の入力装置
31の停止,起動を制御したり、ディスプレイ装置等の出
力装置32にデータを出力する。
【0040】また、第2の部分回路の処理代行中に(ス
テップA703)、エミュレーション装置1を部分回路処理
代行手段22の側から制御する必要がある場合は(ステッ
プA708)、部分回路処理代行手段22は、対エミュレーシ
ョン装置通信装置21および対ホストコンピュータ通信回
路12を経由してエミュレーション対象回路11を制御する
(ステップA710)。
【0041】キーボード等の入力装置31から処理要求が
到達していた場合、つまりOS24が入力装置31からの処
理要求を保持していた場合(ステップA710)は、OS呼
出し手段23は、その処理要求がエミュレーション装置1
に対する要求なのか、部分回路処理代行手段22に対する
要求なのかを判断する(ステップA711, A712)。
【0042】そしてエミュレーション装置1に対する要
求であると判断した場合は、部分回路処理代行手段22に
その処理要求を渡し、エミュレーション装置1に通知す
ることを指示する(ステップA709)。これに対して、部
分回路処理代行手段22に対する処理要求であると判断し
た場合は、部分回路処理代行手段22にその処理要求を渡
し、処理要求に応じた動作を行わせる(ステップA702,A
703 )。
【0043】エミュレーション装置1からの動作内容が
終了報告を示す場合(ステップA790)、もしくはキーボ
ード等の入力装置31からの処理要求が、処理の終了要求
であった場合(ステップA791)は、部分回路処理代行手
段22は、その処理を終了する。
【0044】本実施の形態では、書き換え型ハードウェ
アによって実現されるエミュレーション対象回路11と、
ホストコンピュータ2上にソフトウェアによって実現さ
れる部分回路処理代行手段22とが、対ホストコンピュー
タ通信回路12,対エミュレーション装置通信装置21を介
してシミュレーションを行うために必要となるデータを
やりとりしながら並列動作するので、シミュレーション
対象装置内の、既に仕様が確定している構成要素からな
る第1の部分回路をエミュレーション対象回路11によっ
てエミュレーションし、第1の部分回路以外の第2の部
分回路を部分回路処理代行手段22によってシミュレーシ
ョンするということが可能になる。この結果、効率良く
システムレベルシミュレーションを行うことが可能にな
る。
【0045】つまり、作成に多くの労力,時間を要する
エミュレーション対象回路11は、既に仕様が決定してい
る第1の部分回路の動作をエミュレーションできる構成
だけを備えていれば良く、シミュレーション対象装置の
全構成要素をエミュレーションするエミュレーション対
象回路を予め作成しておく方法に比較して、短時間でエ
ミュレーション対象回路11を作成することができるの
で、システムレベルシミュレーションを効率的に行うこ
とが可能になる。更に、新たな構成要素の仕様が決定さ
れた場合は、その部分をエミュレーションする構成だけ
をエミュレーション対象回路11に追加すれば良く、シミ
ュレーション対象装置の全ての構成要素を全てエミュレ
ーションするエミュレーション対象回路11を予め作成し
ておく方法のように、既に作成されているエミュレーシ
ョン対象回路11の構成を変更するといった無駄な作業を
行わなくて済むので、システムレベルシミュレーション
を効率良く行うことが可能になる。尚、エミュレーショ
ン対象回路11の変更に伴って部分回路処理代行手段22の
構成を変更することが必要になるが、部分回路処理代行
手段22はソフトウェアに実現されるものであるので、そ
の変更は容易に行うことができる。
【0046】次に、具体例を挙げて本実施の形態の動作
を説明する。
【0047】図3に示すように、シミュレーション対象
装置4をシミュレーションする際、シミュレーション対
象装置4内を、既に仕様が決定され、且つ書き換え型ハ
ードウェアによってエミュレーション可能な構成要素か
らなる第1の部分回路41と、それ以外の構成要素からな
る第2の部分回路43とに分割する。更に、第1の部分回
路41と第2の部分回路43との間の接続関係を境界接続回
路42として分離する。
【0048】シミュレーション対象装置4をシミュレー
ションする場合、エミュレーション装置1には、第1の
部分回路41と等価な動作を行う、書き換え型ハードウェ
アによって作成されたエミュレーション対象回路11を実
装する。一方、ホストコンピュータ2には、第2の部分
回路43と等価な動作を行う、ソフトウェアによって実現
される部分回路処理代行手段22を実装する。
【0049】第1の部分回路41の動作は、エミュレーシ
ョン装置1内のエミュレーション対象回路11によって代
行される。
【0050】一方、第2の部分回路43の動作は、ホスト
コンピュータ2内の部分回路処理代行手段22によって代
行される(ステップA703)。
【0051】境界接続回路42を通る、第1の部分回路41
と、第2の部分回路43との間の信号のやり取りは、対ホ
ストコンピュータ通信回路12および対エミュレーション
装置通信装置21を経由して行われる、エミュレーション
対象回路11と部分回路処理代行手段22との間の通信とし
て実現される(ステップA702,A709)。
【0052】シミュレーション対象装置4内の第2の部
分回路43が入出力制御装置44を操作する動作は、部分回
路処理代行手段22からOS呼出し手段23およびOS24を
経由して入出力制御装置25を操作することでシミュレー
ションされる(ステップA705〜A707)。
【0053】尚、上述した説明においては、第2の部分
回路43が入出力制御装置44を操作する動作を、OS24に
よってシミュレーションするようにしたが、部分回路処
理代行手段22によってシミュレーションするようにして
も良い。但し、そのようにすると、部分回路処理代行手
段22を作成する際に、部分回路処理代行手段22にOS24
に行わせていた処理を組み込むことが必要になり、部分
回路処理代行手段22の作成に手間がかかってしまうの
で、実施の形態のようにするのが望ましい。
【0054】
【発明の効果】以上説明したように本発明は、エミュレ
ーション対象回路と部分回路処理代行手段との間で、シ
ミュレーションに必要となる情報をやり取りする通信手
段を備えており、エミュレーション対象回路でエミュレ
ーションする第1の部分回路と部分回路処理代行手段で
シミュレーションする第2の部分回路との境界を自由に
設定できるので、システムレベルシミュレーションを効
率良く行うことができる。つまり、新たな構成要素の仕
様が決定される毎に、エミュレーション対象回路に仕様
が新たに決定された構成要素の動作をエミュレーション
する構成を追加するというようなことが可能になるの
で、システムレベルシミュレーションを効率良く行うこ
とが可能になる。
【0055】また、本発明は、既に仕様が決定している
構成要素の動作は、FPGA等の書き換え型ハードウェアに
よって構成したエミュレーション対象回路でエミュレー
ションするので、処理速度を高速化することができる。
【0056】更に、本発明は、第2の部分回路が行う入
出力動作を、OSにシミュレーションさせるようにして
いるので、部分回路処理代行手段の構成を簡単なものに
することができる。
【図面の簡単な説明】
【図1】本発明の実施の形態の構成例を示すブロック図
である。
【図2】本発明の実施の形態の動作例を示す流れ図であ
る。
【図3】本発明の実施の形態の動作の具体例を示す図で
ある。
【図4】従来の技術の一構成例を示すブロック図であ
る。
【図5】従来の技術の動作を説明するための図である。
【符号の説明】
1…書き換え型ハードウェアによるエミュレーション装
置 11…エミュレーション対象回路 12…対ホストコンピュータ通信回路 2…ホストコンピュータ 21…対エミュレーション装置通信装置 22…部分回路処理代行手段 23…OS呼出し手段 24…OS 25…入出力制御装置 3…入出力装置 31…入力装置 32…出力装置 4…シミュレーション対象装置 41…第1の部分回路 42…境界接続回路 43…第2の部分回路 44…入出力制御装置 5…システムレベルシミュレーション装置 51…命令レベルシミュレーション装置 52…論理レベルシミュレーション装置 6…命令レベルシミュレーション装置によりシミュレー
ションされるホストシステム 61…プロセッサ 62…システムバス 63…メモリ 64…インターフェース 65…ソケットモジュール 7…論理レベルシミュレーション装置によりシミュレー
ションされる入出力シテム 71…ソケットインターフェース 72…入出力管理装置
フロントページの続き (56)参考文献 特開 平8−263321(JP,A) 特開 平4−333171(JP,A) 特開 平8−6810(JP,A) 特開 平9−153077(JP,A) 特開 平9−293002(JP,A) 特開 平11−232309(JP,A) 特表 平4−502985(JP,A) 伊藤義行、外1名、”汎用マイクロプ ロセッサ向けハードウェア/ソフトウェ ア協調シミュレーションの一手法”、電 子情報通信学会技術研究報告(VLD96 −97)、電子情報通信学会、平成9年3 月、Vol.96、No.558、p.9〜 15 (58)調査した分野(Int.Cl.7,DB名) G06F 17/50 664

Claims (5)

    (57)【特許請求の範囲】
  1. 【請求項1】 シミュレーション対象装置を第1,第2
    の部分回路に分割し、 前記第1の部分回路の動作を書き換え型ハードウェアに
    よって構成したエミュレーション対象回路によってエミ
    ュレーションし、 前記第2の部分回路の動作をソフトウェアによって構成
    される部分回路処理代行手段でシミュレーションし、 前記部分回路処理代行手段は、前記第2の部分回路が行
    う入出力動作を、OS呼出し手段を用いてOSを呼び出
    し、該OSにシミュレーションさせ、 前記OS呼出し手段は、前記OSが保持している入力装
    置からの処理要求が前記エミュレーション対象回路に対
    する処理要求なのか、前記部分回路処理代行手段に対す
    る処理要求なのかを判断し、前記エミュレーション対象
    回路に対する処理要求であると判断した場合は、前記エ
    ミュレーション対象回路へ前記処理要求を通知すること
    を前記部分回路処理代行手段に対して指示し、前記部分
    回路処理代行手段に対する処理要求であると判断した場
    合は、前記処理要求を前記部分回路処理代行手段に渡
    し、 前記エミュレーション対象回路と前記部分回路処理代行
    手段との間で通信を行いながら、前記シミュレーション
    対象装置の動作をシミュレーションすることを特徴とす
    るシステムレベルシミュレーション方法。
  2. 【請求項2】 前記書き換え型ハードウェアは、FPGAで
    あること特徴とする請求項1記載のシステムレベルシミ
    ュレーション方法。
  3. 【請求項3】 シミュレーション対象装置を第1,第2
    の部分回路に分割した際の、前記第1の部分回路の動作
    をエミュレーションする、書き換え型ハードウェアによ
    って構成されたエミュレーション対象回路と、 前記第2の部分回路の動作をシミュレーションする、ソ
    フトウェアによって構成された部分回路処理代行手段で
    あって、前記第2の部分回路が行う入出力動作を、OS
    呼出し手段を用いて呼び出したOSにシミュレーション
    させる部分回路処理代行手段と、 OSを呼び出すと共に、前記OSが保持している入力装
    置からの処理要求が前 記エミュレーション対象回路に対
    する処理要求なのか、前記部分回路処理代行手段に対す
    る処理要求なのかを判断し、前記エミュレーション対象
    回路に対する処理要求であると判断した場合は、前記エ
    ミュレーション対象回路へ前記処理要求を通知すること
    を前記部分回路処理代行手段に対して指示し、前記部分
    回路処理代行手段に対する処理要求であると判断した場
    合は、前記処理要求を前記部分回路処理代行手段に渡す
    OS呼出し手段と、 前記エミュレーション対象回路と前記部分回路処理代行
    手段との間で、シミュレーションに必要となる情報をや
    り取りする通信手段とを備えたことを特徴とするシステ
    ムレベルシミュレーション装置。
  4. 【請求項4】 前記書き換え型ハードウェアは、FPGAで
    あることを特徴とする請求項3記載のシステムレベルシ
    ミュレーション装置。
  5. 【請求項5】 シミュレーション対象装置を第1,第2
    の部分回路に分割した際の、前記第1の部分回路の動作
    をエミュレーションする、書き換え型ハードウェアによ
    って構成されたエミュレーション対象回路と通信を行い
    ながら前記第2の部分回路の動作をシミュレーションす
    る処理をコンピュータに行わせるためのプログラムを記
    録した機械読み取り可能な記録媒体であって、 前記コ
    ンピュータ上に、 前記第2の部分回路の動作をシミュレーションする部分
    回路処理代行手段であって、前記第2の部分回路が行う
    入出力動作を、OS呼出し手段を用いて呼び出したOS
    にシミュレーションさせる部分回路処理代行手段、 OSを呼び出すと共に、前記OSが保持している入力装
    置からの処理要求が前記エミュレーション対象回路に対
    する処理要求なのか、前記部分回路処理代行手段に対す
    る処理要求なのかを判断し、前記エミュレーション対象
    回路に対する処理要求であると判断した場合は、前記エ
    ミュレーション対象回路へ前記処理要求を通知すること
    を前記部分回路処理代行手段に対して指示し、前記部分
    回路処理代行手段に対する処理要求であると判断した場
    合は、前記処理要求を前記部分回路処理代行手段に渡す
    OS呼出し手段、 前記エミュレーション対象回路と前記部分回路処理代行
    手段との間で、シミュレーションに必要となる情報をや
    り取りする通信手段、 を実現するためのプログラムを記録した機械読み取り可
    能な記録媒体。
JP10134560A 1998-04-28 1998-04-28 システムレベルシミュレーション方法及びその装置並びにプログラムを記録した機械読み取り可能な記録媒体 Expired - Fee Related JP3129286B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP10134560A JP3129286B2 (ja) 1998-04-28 1998-04-28 システムレベルシミュレーション方法及びその装置並びにプログラムを記録した機械読み取り可能な記録媒体
US09/299,568 US20030033131A1 (en) 1998-04-28 1999-04-27 System level simulation method and device
US10/419,151 US20030229486A1 (en) 1998-04-28 2003-04-21 System level simulation method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10134560A JP3129286B2 (ja) 1998-04-28 1998-04-28 システムレベルシミュレーション方法及びその装置並びにプログラムを記録した機械読み取り可能な記録媒体

Publications (2)

Publication Number Publication Date
JPH11312186A JPH11312186A (ja) 1999-11-09
JP3129286B2 true JP3129286B2 (ja) 2001-01-29

Family

ID=15131195

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10134560A Expired - Fee Related JP3129286B2 (ja) 1998-04-28 1998-04-28 システムレベルシミュレーション方法及びその装置並びにプログラムを記録した機械読み取り可能な記録媒体

Country Status (2)

Country Link
US (1) US20030033131A1 (ja)
JP (1) JP3129286B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7638596B2 (en) * 2006-05-24 2009-12-29 Eastman Chemical Company Crystallizer temperature control via jacketing/insulation
JP2009157649A (ja) * 2007-12-26 2009-07-16 Fujitsu Microelectronics Ltd 命令チェックプログラム、命令チェック方法、命令チェック装置およびi/oシミュレータ
CN110750946B (zh) * 2018-07-19 2023-08-18 澜至电子科技(成都)有限公司 集成电路网表仿真加速方法及其***

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
伊藤義行、外1名、"汎用マイクロプロセッサ向けハードウェア/ソフトウェア協調シミュレーションの一手法"、電子情報通信学会技術研究報告(VLD96−97)、電子情報通信学会、平成9年3月、Vol.96、No.558、p.9〜15

Also Published As

Publication number Publication date
US20030033131A1 (en) 2003-02-13
JPH11312186A (ja) 1999-11-09

Similar Documents

Publication Publication Date Title
US6188975B1 (en) Programmatic use of software debugging to redirect hardware related operations to a hardware simulator
US6269409B1 (en) Method and apparatus for concurrent execution of operating systems
JPH05216712A (ja) コンピュータシステムおよびこのコンピュータシステム上で内観的タスクを遂行する方法並びにi/oプロセッサアセンブリ
KR101035832B1 (ko) 집적 종단점 장치와, 집적 pci 익스프레스 종단점 장치및 pci 익스프레스 통신 시스템
US10552190B2 (en) Precise error injection for driver testing
US20040088150A1 (en) System and method for hardware and software co-verification
CN116681013B (zh) 网络芯片的仿真验证方法、平台、装置、设备及介质
CN111353263A (zh) 软硬件设计与验证平台***
US10467078B2 (en) Crash dump extraction of guest failure
US6834359B2 (en) Method and system for testing a processor
CN112764981B (zh) 一种协同测试***及方法
JP3129286B2 (ja) システムレベルシミュレーション方法及びその装置並びにプログラムを記録した機械読み取り可能な記録媒体
CN113032246A (zh) Ssd固件运行方法、装置、可读存储介质及电子设备
CN116611375A (zh) 软硬件协同仿真平台及软硬件测试方法
CN115878267A (zh) 对固件***的仿真装置、方法、存储介质及电子设备
US9892010B2 (en) Persistent command parameter table for pre-silicon device testing
CN116107648A (zh) 一种云桌面环境下物理光驱重定向方法、***和装置
US11151294B1 (en) Emulated register access in hybrid emulation
CN117785593B (zh) 一种基于UVM的xHCI驱动的实现***及方法
US20230419006A1 (en) Smart feedback design for verification
CN117851276A (zh) 一种模拟外设的内存配置方法及装置
CN117172206B (zh) 测试用例生成方法、装置、电子设备及存储介质
CN110865960B (zh) 在网络上模拟PCIe总线
JP3110418B2 (ja) インサーキットエミュレータおよび制御方法
CN116107896A (zh) 基于虚拟串口实现自动化测试的方法、装置及存储介质

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071117

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081117

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081117

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091117

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091117

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101117

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111117

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111117

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121117

Year of fee payment: 12

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121117

Year of fee payment: 12

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131117

Year of fee payment: 13

LAPS Cancellation because of no payment of annual fees