JPH08110919A - ソフトウェアおよびハードウェアのシミュレータの統合によるシステム・レベル・シミュレーションを行う方法と装置 - Google Patents

ソフトウェアおよびハードウェアのシミュレータの統合によるシステム・レベル・シミュレーションを行う方法と装置

Info

Publication number
JPH08110919A
JPH08110919A JP7137457A JP13745795A JPH08110919A JP H08110919 A JPH08110919 A JP H08110919A JP 7137457 A JP7137457 A JP 7137457A JP 13745795 A JP13745795 A JP 13745795A JP H08110919 A JPH08110919 A JP H08110919A
Authority
JP
Japan
Prior art keywords
module
subsystem
message
sbus
processor
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
JP7137457A
Other languages
English (en)
Inventor
Manpop A Lau
マンポップ・アルバート・ロー
Loran Ball
ローラン・ボール
Raju Joshi
ラジュ・ジョシ
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.)
Sun Microsystems Inc
Original Assignee
Sun Microsystems Inc
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 Sun Microsystems Inc filed Critical Sun Microsystems Inc
Publication of JPH08110919A publication Critical patent/JPH08110919A/ja
Withdrawn 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

Abstract

(57)【要約】 【目的】 試験のためのより正確でより高速なシステム
・レベル・シミュレーションができるように、論理レベ
ル・シミュレーションと命令レベル・シミュレーション
を統合する方法および装置を提供する。 【構成】 ホスト・システムまたはプロセッサ(CP
U)は、命令レベル・シミュレータによってシミュレー
トされ、入出力サブシステムのシミュレーションは、論
理レベル・シミュレータによってモデル化される。2つ
のシミュレーションは並行的に動作し、プロセス間通信
(IPC)装置を介して通信し、共に、読取り/書込み
アクセスを実行する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、システム・レベル・シ
ミュレーションの分野に関する。詳細には、本発明は、
論理レベル・シミュレータと命令レベル・シミュレータ
の統合によるシステム・レベル・シミュレーション用の
方法と装置に関する。
【0002】
【従来の技術】従来、システム全体、すなわち、プロセ
ッサを含め、マザーボードの構成要素のシミュレーショ
ンは、ワイヤ・ラッピングおよびその他のブレッド・ボ
ーディング技法を使用してハードウェア・プロトタイプ
を構成することによって行われている。ソフトウェアの
試験は、そのようなプロトタイプを使用して行われてい
る。残念なことに、ワイヤ・ラッピングおよびその他の
ブレッド・ボーディング技法を使用するプロトタイプ作
製は通常、高性能システム・シミュレーションの速度お
よび密度を取り扱ううえで助けとはならない。プリント
回路ボードが最初のプロトタイプとして与えられている
場合、組み立てられた回路ボードをデバッグするには新
しいボードを構成することが必要になることが多く、し
たがって、このようなデバッグは時間がかかる。
【0003】システム・レベル・シミュレーションに関
するプロトタイプ作製実務の改良には、実際のソフトウ
ェアがシミュレートされたハードウェアと相互作用でき
る環境でのハードウェア・シミュレーションが含まれ
る。このハードウェア・シミュレーション環境では、混
合レベル論理シミュレータを使用して、レジスタ転送レ
ベル(RTL)/ゲート・レベルでのプロセッサ、シス
テム、および入出力装置がモデル化される。残念なこと
に、CPUのシミュレーションでは、シミュレーション
・サイクルを増加させる必要がある。また、システム・
レベル・シミュレーション用の実際のソフトウェアと組
み合わされた論理レベル・シミュレータを使用する、
「An Engineering Environme
nt forHardware/Software C
o−simulation」と題する論文(デビッド・
ベッカー(David Becker)著、29th
ACM/IEEE Design Automatio
n Conference)に記載された従来技術は、
シミュレートされるハードウェア装置がスレーブ装置で
あることを仮定している。さらに、そのような従来技術
では直接メモリ・アクセス(DMA)はサポートされな
い。
【0004】装置ドライバや診断プログラムなどシステ
ム・ソフトウェアのシミュレーションは、プロセッサお
よびシステムをシミュレートするシステム・シミュレー
タによって行われる。従来技術のシステム・レベル・シ
ミュレーション方法は、上級プログラマのシステムに対
する視点をモデル化する命令レベル・シミュレータを使
用している。命令レベル・シミュレータは、論理レベル
・シミュレータよりも高速に動作するが、入出力装置を
正確にモデル化することはできない。
【0005】要するに、命令レベル・シミュレータは、
入出力装置を正確にモデル化することができず、論理レ
ベル・シミュレータは、プロセッサおよびシステムのシ
ミュレーションによって発生するオーバヘッドのために
低速すぎる。また、システム・レベル・シミュレーショ
ン用のプロトタイプ作製は時間がかかり、かつ難しいプ
ロセスである。したがって、論理レベル・シミュレータ
の精度と命令レベル・シミュレータの高性能さとを利用
し、それによって、システム・レベル・シミュレーショ
ンに関するシミュレーションの精度と速度を共に増加さ
せる、命令レベル・シミュレータと論理レベル・シミュ
レータを統合する装置と方法が必要である。さらに、統
合シミュレータは、システム・レベル・シミュレーショ
ンおよび試験用のプロトタイプをデバッグし、あるいは
再構成する必要を低減させ、したがって、概念から市場
までのターンアラウンド時間を短縮する。
【0006】
【発明が解決しようとする課題】本発明の目的は、より
正確で高速なシステム・レベル・シミュレーションを行
えるように論理レベル・シミュレーションと命令レベル
・シミュレーションを統合する方法および装置を提供す
ることである。
【0007】
【課題を解決するための手段】装置ドライバや診断プロ
グラムなどシステム・ソフトウェアをシミュレートする
命令レベル・シミュレータは通常、命令アキュレート・
シミュレータである。命令レベル・シミュレータは、論
理レベル・シミュレータよりも高速に動作するが(最大
10000倍)、入出力装置を正確にはモデル化しな
い。論理レベル・シミュレータは通常、RTL/ゲート
・レベルでのプロセッサ、システム、および入出力装置
をモデル化するために使用され、非常に正確であるが、
通常、システム中のプロセッサをシミュレートするシミ
ュレーション・サイクルを増加させるオーバヘッドのた
めに低速である。
【0008】命令レベル・シミュレータによって提供さ
れる速度と、論理レベル・シミュレータによって提供さ
れる精度を利用するには、2種類のシミュレーションを
統合して、より高速で正確なシステム・レベル・シミュ
レーションを行う。
【0009】好ましい実施例では、プロセッサの論理レ
ベル・シミュレーションを、命令レベル・シミュレータ
のMPSAS(登録商標)によってシミュレートされた
ホスト・システムのシミュレーションで置き換える。さ
らに、入出力サブシステムのシミュレーションを、論理
レベル・シミュレータのVerilog XL(登録商
標)によってモデル化する。2つのシミュレーション
は、並行的に動作し、プロセス間通信(IPC)装置を
介して通信する。シミュレーション間でのメッセージの
送受信に責任を負う専用モジュールを両方のシミュレー
ションに用意する。命令レベル・シミュレータ側では、
ホスト・システムが、シミュレートされた入出力サブシ
ステムとの間でメッセージの送受信を行う。同様に、論
理レベル・シミュレーション側では、入出力サブシステ
ムが、試験中のASICまたはカスタム集積回路とホス
ト・システムの間の送受信に責任を負う。入出力サブシ
ステムは、アービタ、マスタ、およびスレーブの機能を
サポートし、2つのシミュレーションの間のデッドロッ
ク状況を解決する。
【0010】本発明の統合シミュレータは、スレーブ・
アクセスと直接メモリ・アクセス(DMA)を共にサポ
ートする。論理レベル・シミュレーションと命令レベル
・シミュレーションは共に、任意の所与の時点でマスタ
・アクセスおよびスレーブ・アクセスを行うことができ
る。そのため、DMAアクセスとスレーブ・アクセスが
同時に行われ、両方のシミュレータが同時に相互にデー
タおよび肯定応答を待つデッドロック状況が発生する恐
れがある。入出力サブシステムは、論理レベル・シミュ
レーション側で非DMAトランザクションを遅延させる
ことによって、このデッドロック状況を解決する。命令
レベル・シミュレータは、事象依存であるに過ぎず、論
理レベル・シミュレータは時間依存である。これら2種
類のシミュレータの同期が解決され、2つのシミュレー
タは、非同期対等サブシステムとして動作することがで
きる。
【0011】
【作用・効果】要するに、命令レベル・シミュレータと
論理レベル・シミュレータを統合することにより、論理
レベル・シミュレータを使用して入出力サブシステムを
モデル化し、命令レベル・シミュレータを使用してホス
ト・システムまたはプロセッサ(CPU)をシミュレー
トすることによって、入出力装置を正確にシミュレート
することができる。そのような統合によって、全体的に
高速でより正確なシステム・レベル・シミュレーション
がもたらされ、プロトタイプをデバッグするのにかかる
時間が短縮され、それによって、概念から最初の作業プ
ロトタイプまでのより高速なターンアラウンドが可能に
なる。
【0012】
【実施例】命令レベル・シミュレータと論理レベル・シ
ミュレータの統合を使用するシステム・レベル・シミュ
レーションおよび試験用の装置および方法を開示する。
以下の説明では、説明のために、本発明を完全に理解し
てもらうために特定のモジュールなどを記載する。しか
し、当業者には、このような特定の詳細なしで本発明を
実施できることが明らかになろう。他の例では、本発明
を不必要にあいまいにしないように周知の回路および装
置をブロック図形式で示す。
【0013】図1は、システムをシミュレートし、試験
するために使用される本発明の典型的なコシミュレーシ
ョン(co-simulation )環境を示す。コシミュレーショ
ン環境は、共にUNIX(登録商標)13上で動作す
る、命令レベル・シミュレータ・プログラムのMPSA
S(登録商標)10と、論理レベル・シミュレータ・プ
ログラムのVerilog XL 11とから成る。U
NIX(登録商標)13上で動作するVerilog
XL(登録商標)11は、コシミュレーションを開始す
るために、UNIX(登録商標)13上でソケット(ア
ドレス)をオープンするコマンドを実行し、MPSAS
(登録商標)10とリンクされるのを待つ。続いて、M
PSAS(登録商標)10が、ネットワーク14を介し
て開始され、UNIX(登録商標)13上で動作し始め
る。MPSAS(登録商標)10は次いで、UNIX
(登録商標)13上でオープンされたソケットを介して
Verilog XL(登録商標)11にリンクされ
る。MPSAS(登録商標)10とVerilog X
L(登録商標)11は、ネットワーク14を介してリン
クされた後、試験用のコシミュレーションを使用して、
ユーザの要求に応じてシステムのシミュレーションを開
始する。MPSAS(登録商標)によってシミュレート
された部分とVerilog XL(登録商標)によっ
てシミュレートされた部分の間で送信されるメッセージ
・パケットは、UNIX(登録商標)IPC(プロセス
間通信)17を介してソケット・モジュール15および
16によって送信される。
【0014】図2は、本発明の典型的な統合システム・
レベル・シミュレーションのブロック図である。統合シ
ステム・レベル・シミュレーションは、MPSAS(登
録商標)によってシミュレートされた並行的に活動状況
になるホスト・システムと、シミュレートされた入出力
サブシステムを試験するために使用されるVerilo
g XL(登録商標)によってシミュレーションされた
入出力サブシステムとから成る。
【0015】部分100は、MPSAS(登録商標)に
よってシミュレートされたホスト・システムである。こ
のホスト・システム100は、プロセッサ110と、こ
のプロセッサ110とメイン・メモリ130およびMB
us/SBusインタフェース140とを相互接続する
MBusモジュール120と、要求待ち行列160の読
取りアクセスを優先させるホスト・システムSBusモ
ジュール150と、どのプロセスが読取りアクセス優先
順位を有するかを示すスロット170と、ソケット・モ
ジュール180と、割込み制御装置モジュール185と
を備える。部分200は、Verilog XL(登録
商標)によってシミュレートされた入出力サブシステム
であり、入出力サブシステム・モジュール220と入出
力SBusモジュール210とから成る。
【0016】両方のシミュレーション上のソケット・モ
ジュールは、それぞれのシミュレーションの間のメッセ
ージの送受信に責任を負う。ソケット・モジュール18
0は、シミュレートされたホスト・システム100とシ
ミュレートされた入出力サブシステム200の間でメッ
セージを送受信する。入出力サブシステム200側で
は、ソケット・インタフェース215と、PLIタスク
213と、SBusインタフェース218とを備える入
出力サブシステムSBusモジュール210が、試験中
のASICとホスト・システム100の間でメッセージ
を送受信する。
【0017】バス・トランザクションは、当技術分野で
周知のようにメッセージによって表すことができる。マ
スタ/スレーブ動作および割込み動作を表すには、2種
類のメッセージが必要である。2つのメッセージ・タイ
プ、すなわち、マスタ/スレーブ動作と割込み動作は共
に、各メッセージに関連する2種類のパケットを有す
る。各メッセージは、通信チャネル(図2ではプロセス
間通信(IPC)190によって示す)を介して送信さ
れるデータのフォーマットを指定するヘッダ・パケット
(本明細書では「socket_pkt」と呼ぶ)で始
まる。メッセージは次いで、特定のトランザクション・
パケットで終わる。このトランザクション・パケット
は、マスタ/スレーブ動作の場合、読取り/書込み動作
を定義するデータおよびその他の情報を含むgen_b
us_pktである。割込み動作用のトランザクション
・パケットは、信号レベル対応割込みを発信するために
使用されるgen_int_pktから成る。
【0018】代替実施例で、論理レベル・シミュレータ
のVerilog XL(登録商標)は、入出力サブシ
ステム・モジュール220および入出力SBusモジュ
ール210をシミュレートするだけでなく、MBus/
SBusインタフェース140によって示されたメモリ
・プロセッサ・バスと、その右側の部分とをシミュレー
トする。さらに、命令レベル・シミュレータのMPSA
S(登録商標)は、プロセッサしかシミュレートしな
い。
【0019】図3は、本発明のコシミュレーション環境
を使用するプロセッサ入出力読取り動作のフローチャー
トである。このフローチャートを図1のブロック図の構
成要素に関して説明する。論理ブロック500で、プロ
セッサ110は、読み取るべきメモリ・アドレスと、実
行すべきトランザクションのサイズと、MBusモジュ
ール120への読取りモード情報とを含むgen_bu
s_pktを送信することによって、読取りサイクル・
トランザクションを開始する。MBusモジュール12
0は、gen_bus_pktを受信し、要求をMBu
s/SBusインタフェース140に転送する。インタ
フェース140は次いで、gen_bus_pktをホ
スト・システムSBusモジュール150に転送する。
論理ブロック501で、ホスト・システムSBusモジ
ュール150は、gen_bus_pktを受けた後、
プロセッサ110がスロット170中の装置にアクセス
する読取り要求を行ったことを示すように要求待ち行列
160にマーク付けする。ホスト・システムSBusモ
ジュール150は次いで、gen_bus_pktをソ
ケット・モジュール180に転送する。
【0020】論理ブロック502で、ソケット・モジュ
ール180は、gen_bus_pktを受けた後、メ
ッセージのgen_bus_pktにsocket_p
ktを加えてマスタ/スレーブ・メッセージを作成す
る。socket_pktは、パケット発信識別子(こ
の場合は、MBusモジュール120)、socket
_pktに続くトランザクション・パケットのタイプ
(この場合はgen_bus_pkt)、トランザクシ
ョン・パケットのサイズなどの情報を運ぶ。論理ブロッ
ク503で、ソケット・モジュール180は、プロセス
間通信(IPC)190を介して入出力サブシステム2
00にメッセージ(socket_pktとgen_b
us_pkt)を送信する。プロセッサ110は次い
で、遊休状態に入り、入出力サブシステム200からの
肯定応答を待つ。入出力サブシステムSBusモジュー
ル210は、ソケット・インタフェース215を介して
このメッセージを受け、デッドロックに関して検査する
入出力サブシステムSBusモジュール210のPLI
タスク213にこのメッセージを送信する(デッドロッ
ク状況およびデッドロック状況の解消については、DM
A/マスタ・スレーブ動作に関する次の説明でさらに詳
しく説明する)。
【0021】論理ブロック504で、入出力サブシステ
ムSBusモジュール210のソケット・インタフェー
ス215は、入出力サブシステムSBusドライバ・ル
ーチンを開始する。次いで、読取りアクセス・メッセー
ジが入出力サブシステム・モジュール220にドライブ
され、モジュール220は続いて、この要求に応答して
データおよび肯定応答を返す。入出力サブシステムSB
usモジュール210中のSBusインタフェース21
8は、入出力サブシステム・モジュール220によって
返されたデータをラッチし、入出力サブシステムSBu
sモジュール210内のPLIタスク213にデータを
渡す。PLIタスク213は、着信ヘッダ・パケットに
データを追加し、ヘッダ・パケット中のデータを含むメ
ッセージ中の肯定応答フラグをセットする。入出力サブ
システム・モジュールは次いで、このメッセージをホス
ト・システム100に送信する。
【0022】論理ブロック505で、ソケット・モジュ
ール180は前記メッセージを受けて、ホスト・システ
ムSBusモジュール150に転送する。ホスト・シス
テムSBusモジュール150は、前記メッセージを受
けた後、要求待ち行列160からプロセッサ要求を削除
して、MBus/SBusインタフェース140に前記
メッセージを転送する。論理ブロック506で、MBu
s/SBusインタフェース140は、MBusモジュ
ール120に前記メッセージを転送し、モジュール12
0は続いて、プロセッサ110に前記メッセージを転送
し、プロセッサ読取りアクセスが完了する。プロセッサ
110による書込みサイクル要求は、前述の読取りサイ
クル要求と同時に実行され、プロセッサ110による書
込みサイクル要求が完了した後、プロセッサ110は、
肯定応答フラグに対するリターン・メッセージを受信す
る。
【0023】図4のタイミング図は、前記のマスタ・ス
レーブ動作の入出力読取り事象を示す。図4は、事象ド
リブン命令レベル・シミュレータと時間ドリブン論理レ
ベル・シミュレータをどのように同期するかも示す。時
間線325および350は、図の時点で発生する事象の
シーケンスを示す。ホスト・システム100の時間線3
25と入出力サブシステム200の時間線350は共
に、それぞれ、時間A、DおよびB、Cがマークされ、
時間A、B、C、Dで発生する事象を示すように図3の
フローチャートの論理ブロック500ないし506が示
されている。入出力サブシステム200の時間線350
は、入出力サブシステムSBusクロック300のクロ
ック・パルスによって示されている。
【0024】時間Aで、ホスト・システム100のソケ
ット・モジュール180は、前述の読取りアクセス・メ
ッセージを入出力サブシステム200に送信し、ホスト
・システム100は、入出力サブシステム200からの
リターン・メッセージを待つ間、待機状態に入る。点B
で、入出力サブシステムSBusモジュール210のソ
ケット・インタフェース215は、読取りメッセージを
受け、デッドロックに関して検査し、情報を処理し、読
取りが完了すると、読み取ったデータを前記メッセージ
に追加し、肯定応答フラグを前記メッセージにセット
し、前記メッセージをホスト・システム100に送り返
す。点Cで、入出力サブシステム200は、遊休状態に
入り、点Dで、ホスト・システム100のソケット・モ
ジュール180は、ホスト・システムSBusモジュー
ル150に前記メッセージを転送し、その後、前記メッ
セージは最終的に、プロセッサ110に転送される。
【0025】図5は、入出力サブシステム200によっ
て開始されたDMA読取り動作のフローチャートであ
る。論理ブロック600で、入出力サブシステム・モジ
ュール220は、入出力サブシステムSBusモジュー
ル210で要求線をアサートすることによって、DMA
読取りトランザクションを開始する。論理レベル・シミ
ュレータSBusモジュール210の入出力サブシステ
ムSBus制御インタフェースは、バスの調停を行い、
入出力サブシステム・モジュール220にバスを与え
る。入出力サブシステムSBusインタフェース218
は次いで、マスタの要求に応答し、入出力サブシステム
SBusモジュール210のPLIタスク213は、ト
ランザクション情報をソケット・インタフェース215
に渡す。論理ブロック601で、入出力サブシステムS
Busモジュール210のPLIタスク213は、情報
をトランザクション・メッセージgen_bus_pk
tとしてパックし、DMA読取りサイクル要求に必要な
すべての情報を運ぶsocket_pktを作成する。
このメッセージは次いで、IPC190を介してホスト
・システム100に送信される。入出力サブシステムS
Busクロックは、入出力サブシステムSBusインタ
フェース218が、要求されたデータを待つ間、動作し
続ける。
【0026】論理ブロック602で、ソケット・モジュ
ール180は、ホスト・システムSBusモジュール1
50に読取りメッセージを転送し、モジュール150は
続いて、MBus/SBusインタフェース140に読
取りメッセージを転送し、入出力サブシステム・モジュ
ール220がスロット170を所有していることを示す
ように要求待ち行列160にマーク付けし、入出力サブ
システム・モジュール220読取りトランザクションが
完了するまでスロット170にアクセスすることはでき
なくなる。MBus/SBusインタフェース140
は、MBusモジュール120に読取りメッセージを送
信し、モジュール120は続いて、読取りメッセージを
メイン・メモリ130に転送する。
【0027】論理ブロック603で、メイン・メモリ1
30は、読取りメッセージのgen_bus_pktに
含まれる情報で示されたメイン・メモリ130中のアド
レスのデータを読み取る。メイン・メモリ130は、読
み取られたデータを読取りメッセージに追加し、このメ
ッセージ中の肯定応答フラグをセットし、MBusモジ
ュール120にメッセージを転送する。論理ブロック6
04で、MBusモジュール120は、MBus/SB
usインタフェース140に読取りメッセージを転送
し、インタフェース140は続いて、ホスト・システム
SBusモジュール150にこのメッセージを転送す
る。最後に、ホスト・システムSBusモジュール15
0は、この読取りメッセージをソケット・モジュール1
80に転送し、入出力サブシステム・モジュール220
読取り要求を要求待ち行列160から削除する。
【0028】論理ブロック605で、ソケット・モジュ
ール180は、読取りメッセージを受けた後、gen_
bus_pktにsocket_pktを追加してマス
タ/スレーブ・メッセージを作成し、入出力サブシステ
ム200にこのメッセージを転送する。論理ブロック6
06で、入出力サブシステムSBusモジュール210
のSBusインタフェース218は、このメッセージを
受信し、データおよび肯定応答を入出力サブシステム・
モジュール220にドライブすることによって、DMA
読取りサイクルを完了する。
【0029】図6は、前述のDMA読取り事象を示すタ
イミング図である。時間Aの間、入出力サブシステム2
00の入出力サブシステム220は、DMA読取りトラ
ンザクションを開始し、入出力サブシステムSBusモ
ジュール210のソケット・インタフェース215は、
読取りメッセージをホスト・システム100に送信す
る。時間Bで、ホスト・システム100のソケット・モ
ジュール180は、読取りメッセージを受けて、ホスト
・システムSBusモジュール150に転送し、ソケッ
ト・モジュール180は最終的に、読取りメッセージを
返す。点Cで、入出力サブシステムSBusモジュール
210のソケット・インタフェース215は、ホスト・
システム100から返された読取りメッセージを受け
る。
【0030】入出力サブシステム200によって開始さ
れた割込み動作では、入出力サブシステムSBusモジ
ュール210は、割込み線がアサートされたことを検出
し、割込みメッセージをホスト・システム100に送信
する。割込みメッセージは、socket_pktとg
en_int_pktとから成る。ソケット・モジュー
ル180は次いで、割込み制御装置185にgen_i
nt_pktを転送し、指定された割込みレベルがアサ
ートされたことを割込み制御装置モジュール185に通
知する。割込み線がクリアされたことを入出力サブシス
テムSBusモジュール210が検出すると、割込みメ
ッセージが送信され、割込み制御装置モジュール185
で割込み線がクリアされる。
【0031】図7は、マスタ/スレーブ読取り要求とD
MA読取り要求が共に、並行的に行われる状況のフロー
チャートである。論理ブロック700で、プロセッサ1
10は、プロセッサ読取り要求メッセージをMBusモ
ジュール120に送信し、MBusモジュール120は
続いて、プロセッサ読取り要求メッセージをMBus/
SBusインタフェース140に転送する。論理ブロッ
ク701で、MBus/SBusインタフェース140
は、プロセッサ読取り要求メッセージを受けてホスト・
システムSBusモジュール150に転送する。これと
並行的に、入出力サブシステム・モジュール220は、
読取り入出力サブシステムSBus信号をアサートする
ことによって、DMA読取りトランザクションを開始し
てDMA要求を生成する。入出力サブシステムSBus
モジュール210中のSBusインタフェース218、
PLIタスク213、およびソケット・インタフェース
215は、DMA要求を処理し、DMA読み要求メッセ
ージをホスト・システム100に送信する。
【0032】論理ブロック702で、ソケット・モジュ
ール180はDMA読取り要求メッセージを受信する。
論理ブロック703で、入出力サブシステム200は次
いで、ホスト・システム100からのDMAリターン・
メッセージを待つ間、待機状態に入る。この間に論理ブ
ロック703で、ホスト・システムSBusモジュール
150は、プロセッサ110によって送信されたプロセ
ッサ読取り要求メッセージを受信し、ホスト・システム
SBusモジュール150は、プロセッサ読取り要求が
スロット170中の装置にアクセスしていることを示す
ように要求待ち行列160にマーク付けする。
【0033】論理ブロック704で、ホスト・システム
SBusモジュール150は、プロセッサ読取り要求メ
ッセージをソケット・モジュール180に転送し、ソケ
ット・モジュール180は、DMA読取り要求メッセー
ジをホスト・システムSBusモジュール150に転送
する。論理ブロック705で、ホスト・システムSBu
sモジュール150は、DMA読取り要求メッセージを
受けた後、スロット170がすでにプロセッサ110に
よって所有されているので、DMA読み要求メッセージ
を要求待ち行列160の終りへプッシュする。
【0034】この間に論理ブロック706で、入出力サ
ブシステムSBusモジュール210のソケット・イン
タフェース215は、プロセッサ読取り要求メッセージ
をホスト・システム100から受信し、デッドロックを
検出する。論理ブロック707で、入出力サブシステム
SBusモジュール210のソケット・インタフェース
215は、プロセッサ読取り要求メッセージ中のビジー
・フラグをセットし、プロセッサ読取り要求メッセージ
をホスト・システム100に送り返す。
【0035】論理ブロック708で、ホスト・システム
100のソケット・モジュール180は、プロセッサ読
取り要求メッセージを入出力サブシステム200から受
けてホスト・システムSBusモジュール150に転送
する。ホスト・システムSBusモジュール150は、
プロセッサ読取り要求メッセージを受けた後、プロセッ
サ読取り要求メッセージ中のビジー・フラグを検出し、
プロセッサ読取り要求を要求待ち行列160の終りへプ
ッシュし、プロセッサ110によって所有されているス
ロット170のマーク付けを解除する。ホスト・システ
ムSBusモジュール150は次いで、DMA読取り要
求を処理し、入出力サブシステム・モジュール220が
スロット170を所有していることを示すように要求待
ち行列160にマーク付けし、DMA読取り要求メッセ
ージをMBus/SBusインタフェース140に転送
する。
【0036】MBus/SBusインタフェース140
は、DMA読取り要求メッセージをMBusモジュール
120に送信し、MBusモジュール120は続いて、
DMA読み要求メッセージをメイン・メモリ130に転
送する。論理ブロック709で、メイン・メモリ130
は、DMA読取り要求メッセージで示されたメイン・メ
モリ130のアドレス位置にあるデータを読み取り、D
MA読取り要求メッセージにそのデータを追加し、この
メッセージ中の肯定応答フラグをセットする。メイン・
メモリ130は次いで、処理されたDMA読取り要求メ
ッセージをMBusモジュール120に返し、モジュー
ル120は、DMA読取り要求メッセージをMBus/
SBusインタフェース140に転送する。インタフェ
ース140は続いて、DMA読取りメッセージをホスト
・システムSBusモジュール150に転送する。ホス
ト・システムSBusモジュール150は、リターンD
MA読取りメッセージを受けた後、リターンDMA読取
りメッセージをソケット・モジュール180に転送し、
入出力サブシステム・モジュール220のDMA読取り
要求を要求待ち行列160から削除する。
【0037】論理ブロック710で、ソケット・モジュ
ール180は、リターンDMA読取り要求メッセージを
受けて入出力サブシステム200に送信する。この時点
で、入出力サブシステムSBusモジュール210のソ
ケット・インタフェース215は、リターンDMA読取
り要求メッセージをホスト・システム100から受け、
リターンDMA要求メッセージに含まれるデータをシミ
ュレーションに渡す。この間に論理ブロック711で、
ホスト・システムSBusモジュール150は、未処理
のプロセッサ読取り要求メッセージを処理し、要求待ち
行列160は、プロセッサ読取り要求がスロット170
中の装置にアクセスしていることを示すようにマーク付
けされ、ホスト・システムSBusモジュール150
は、プロセッサ読取り要求メッセージをソケット・モジ
ュール180に転送する。ソケット・モジュール180
は、プロセッサ読取り要求メッセージを受けた後、プロ
セッサ読取り要求メッセージを入出力サブシステム20
0に送信する。入出力サブシステムSBusモジュール
210のソケット・インタフェース215は、プロセッ
サ読取り要求メッセージを受信し、デッドロックに関し
て検査する。
【0038】論理ブロック712で、ソケット・インタ
フェース215は、デッドロックがないことを検出した
後、プロセッサ読取り要求メッセージを入出力サブシス
テム・モジュール220に送信し、読取りが完了する。
論理ブロック713で、ソケット・インタフェース21
5は、入出力サブシステム・モジュール220から読み
取られたデータをプロセッサ読取り要求メッセージに追
加し、プロセッサ読取り要求メッセージ中の肯定応答フ
ラグをセットする。ソケット・インタフェース215は
次いで、リターン・プロセッサ読取り要求メッセージを
ホスト・システム100に送り返す。
【0039】論理ブロック714で、ソケット・モジュ
ール180は、リターン・プロセッサ要求メッセージを
入出力サブシステム200から受けてホスト・システム
SBusモジュール150に送信する。モジュール15
0は、プロセッサ読取り要求を要求待ち160から削除
し、MBus/SBusインタフェース140に前記メ
ッセージを転送する。MBus/SBusインタフェー
ス140は続いて、MBusモジュール120にメッセ
ージを転送する。最後に、MBusモジュール120
は、リターン・プロセッサ読取り要求メッセージをプロ
セッサ110に転送し、プロセッサ読取りアクセスが完
了する。並行的なマスタ/スレーブ書込み要求およびD
MA書込み要求が前述の読取り要求と同時に実行され、
リターン・プロセッサ書込み要求メッセージおよびリタ
ーンDMA書込み要求メッセージが肯定応答フラグと共
に返される。
【0040】図8は、同時タイム・フレーム内で発生す
るプロセッサ読取り事象とDMA読取り事象を示すタイ
ミング図である。入出力サブシステム200は時間Bま
で遊休状態のままである。この間に時間Aで、ホスト・
システム100のプロセッサ110は、プロセッサ読取
り要求メッセージをMBusモジュール120に転送
し、モジュール120はMBus/SBusインタフェ
ース140にこのメッセージを転送する。MBus/S
Busインタフェース・モジュール140は、ホスト・
システムSBusモジュール150にこのメッセージを
転送する。この間に時間Bで、入出力サブシステム20
0の入出力サブシステム・モジュール220は、DMA
読取りトランザクションを開始し、DMA読取り要求メ
ッセージがホスト・システム100に送信される。この
点で、入出力サブシステム200は待機状態に入り、ホ
スト・システム100からのリターン・メッセージを待
つ。
【0041】再び時間Aで、ホスト・システム100の
ソケット・モジュール180は、DMA読取り要求メッ
セージを受ける。この間に、ホスト・システムSBus
モジュール150は、プロセッサ読取り要求メッセージ
を受信し、プロセッサ読取り要求がスロット170中の
装置にアクセスしていることを示すように要求待ち行列
160にマーク付けする。プロセッサ読取り要求メッセ
ージは次いで、ソケット・モジュール180に転送さ
れ、モジュール180は続いて、DMA読取り要求メッ
セージをホスト・システムSBusモジュール150に
転送する。時間Cで、ホスト・システムSBusモジュ
ール150は、DMA読取り要求メッセージを受信し、
スロット170がプロセッサ110によって所有されて
いることを検出して、DMA読取り要求を要求待ち行列
160の終りに置く。ソケット・モジュール180は次
いで、プロセッサ読取り要求メッセージを入出力サブシ
ステム200に転送する。時間Dで、入出力サブシステ
ムSBusモジュール210のソケット・インタフェー
ス215は、プロセッサ読取り要求メッセージを受け、
デッドロックを検出し、プロセッサ読取り要求メッセー
ジ中のビジー・フラグをセットし、プロセッサ読取り要
求メッセージをホスト・システム100に送り返す。入
出力サブシステム200は次いで、それが送信したDM
A読取り要求メッセージに関するリターン・メッセージ
を待つ際、待機状態に入る。
【0042】時間Eで、ホスト・システム100のソケ
ット・モジュール180は、プロセッサ読取り要求メッ
セージを入出力サブシステム200から受け、ホスト・
システムSBusモジュール150にそのメッセージを
転送する。ホスト・システムSBusモジュール150
は、プロセッサ読取り要求メッセージ中のビジー・フラ
グを検出し、プロセッサ読取り要求を要求待ち行列16
0の終りへプッシュし、プロセッサ110によって所有
されているスロット170のマーク付けを解除する。ホ
スト・システムSBusモジュール150は、次いで、
DMA読取り要求を処理し、入出力サブシステム・モジ
ュール220がスロット170中の装置を所有している
ことを示すように要求待ち行列160にマーク付けす
る。次いで、DMA読取りメッセージがMBus/SB
usインタフェース140およびMBusモジュール1
20を介してメイン・メモリ130に転送される。メイ
ン・メモリ130は、要求されたデータを読み取ってD
MA読取り要求メッセージに追加し、DMA読取り要求
メッセージ中の肯定応答フラグをセットし、DMA読取
り要求メッセージをMBusモジュール120およびM
Bus/SBusインタフェース・モジュール140を
介してホスト・システムSBusモジュール150に返
す。ホスト・システムSBusモジュール150は、リ
ターンDMA読取り要求メッセージを受けた後、入出力
サブシステム・モジュール220のDMA要求を要求待
ち行列160から削除する。入出力サブシステムSBu
sモジュール220のソケット・インタフェース215
は、ホスト・システム100から返されたリターンDM
A読取り要求メッセージを受信し、入出力サブシステム
・モジュール220にそのデータを渡す。依然として時
間Eで、ホスト・システムSBusモジュール150
は、未処理のプロセッサ読取り要求メッセージを処理
し、要求待ち行列160は、プロセッサ読取り要求がス
ロット170中の装置にアクセスしていることを示すよ
うにマーク付けされ、ホスト・システムSBusモジュ
ール150は、プロセッサ読取りメッセージをソケット
・モジュール150に転送する。モジュール180は続
いて、プロセッサ読取りメッセージを入出力サブシステ
ム200に転送し、その時点で、ホスト・システム10
0は待機状態に入り、プロセッサ読取り要求に関する入
出力サブシステム200からのリターン読取りメッセー
ジを待つ。
【0043】時間FおよびGで、入出力サブシステムS
Busモジュール220のソケット・インタフェース2
15は、プロセッサ読取り要求メッセージをホスト・シ
ステム100から受信し、デッドロック状況に関して検
査する。デッドロックが見つからなかったとき、入出力
サブシステムSBusモジュールは、プロセッサ読取り
要求メッセージを入出力サブシステム・モジュール22
0に転送する。読取りが完了すると、入出力サブシステ
ムSBusモジュール210のソケット・インタフェー
ス215は、読み取ったデータをプロセッサ読取り要求
メッセージに追加し、プロセッサ読取り要求メッセージ
中の肯定応答フラグをセットし、リターン・プロセッサ
読取り要求メッセージをホスト・システム100に送り
返す。この点で、入出力サブシステム200は遊休状態
に戻る。
【0044】最後に、DMA読取り要求とプロセッサ読
取り要求はともに、時間Hで完了する。ソケット・モジ
ュール180は、リターン・プロセッサ読取り要求メッ
セージを入出力サブシステム200から再び受けてホス
ト・システムSBusモジュール150に転送する。モ
ジュール150は、プロセッサ読取り要求を要求待ち行
列160から削除し、MBus/SBusインタフェー
ス・モジュール140およびMBusモジュール120
を介してプロセッサ110にメッセージを送り返す。
【0045】本発明を使用して、Verulog XL
(登録商標)によってシミュレートされた入出力サブシ
ステムを試験し、MPSAS(登録商標)によってシミ
ュレートされたホスト・システム上で動作する診断プロ
グラムを試験することができる。試験できる入出力サブ
システムの一例は、クワッド・イーサネット制御装置
(QEC)と、イーサネット・パケットを送受信する送
受信装置と、着信イーサネット・パケットおよび発信イ
ーサネット・パケット用のバッファとから成る。シミュ
レートされたこの入出力サブシステムは、シミュレート
されたホスト・システム上で動作するループ・バック試
験によって試験することができる。図2の構成要素を参
照して、ループ・バック試験について説明する。
【0046】ループ・バック試験では、QECは、イー
サネット・パケット(書込み要求メッセージ)の形のメ
イン・メモリ130中の送信バッファの内容を入出力サ
ブシステムの受信バッファに移動する。このプロセス
は、前述のスレーブ・アクセスを介して実行される。Q
ECは次いで、イーサネット・パケットをメイン・メモ
リ130に送信するよう送受信装置に通知する。このプ
ロセスは、前述のDMAアクセスを介して実行される。
ループ・バック試験が完了すると、メイン・メモリ13
0の送信バッファの内容と受信バッファの内容が比較さ
れる。送信バッファの内容と受信バッファの内容が同じ
である場合、シミュレートされた入出力サブシステムは
ループ・バック試験に合格する。そうでない場合、ルー
プ・バック試験は、シミュレートされたホスト・システ
ム上で動作している入出力サブシステムまたは診断プロ
グラム、あるいはその両方に問題があることを示す。
【0047】試験のための統合システム・レベル・シミ
ュレーションができるように命令レベル・シミュレーシ
ョンと論理レベル・シミュレーションを統合することに
ついて説明した。統合システム・レベル・シミュレーシ
ョンは、潜在的なデッドロック状況と、命令レベル・シ
ミュレーションと論理レベル・シミュレーションの間の
同期問題も解決する。
【0048】ある典型的な実施例を詳細に説明し、添付
の図面で図示したが、当業者には他の様々な修正が思い
つくであろうから、そのような実施例が広範囲な本発明
を例示するものに過ぎず、それを制限するものではな
く、本発明が、図示し説明した特定の構成および構造に
限らないことを理解されたい。
【図面の簡単な説明】
【図1】 本発明の典型的なコシミュレーション環境を
示す図である。
【図2】 図1のコシミュレーション環境におけるMP
SAS(登録商標)によってシミュレートされたホスト
・システムとVerilog XL(登録商標)によっ
てシミュレートされた入出力サブシステムの典型的なシ
ミュレーションを示す図である。
【図3】 図2のシミュレーションに関するプロセッサ
入出力読取り事象のフローチャートである。
【図4】 図2のシミュレーションに関するプロセッサ
入出力読取り事象を示すタイミング図である。
【図5】 図2のシミュレーションのDMA読取り事象
のフローチャートである。
【図6】 図2のシミュレーションに関するDMA読取
り事象を示すタイミング図である。
【図7】 図2のシミュレーションに関する、プロセッ
サ入出力事象およびDMA読取り事象と、それらの事象
の相互作用とのフローチャートである。
【図8】 図2のシミュレーションに関する、プロセッ
サ入出力事象およびDMA読取り事象と、それらの事象
の相互作用とを示すタイミング図である。
【符号の説明】
10 MPSAS 11 Verilog XL 13 UNIX 14 ネットワーク 15 ソケット・モジュール 17 UNIX IPC 100 ホスト・システム 110 プロセッサ 120 MBusモジュール 130 メイン・メモリ 140 MBus/SBusインタフェース 150 ホスト・システムSBusモジュール 160 要求待ち行列 170 スロット 185 割込み制御装置モジュール 200 入出力サブシステム 210 入出力サブシステムSBusモジュール 218 SBusインタフェース 220 入出力サブシステム・モジュール
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ローラン・ボール アメリカ合衆国 95008 カリフォルニア 州・キャンベル・トウイラ レイン・4036 (72)発明者 ラジュ・ジョシ アメリカ合衆国 94087 カリフォルニア 州・サニーヴェイル・コネマラ ウェイ・ 125

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 入出力サブシステムとプロセッサとを有
    するシステムのシステム・レベル・シミュレーションを
    行う方法において、 論理レベル・シミュレータを使用して入出力サブシステ
    ムをシミュレートするステップと、 これと並行的に、前記入出力サブシステムと前記ホスト
    ・システムの間で送信される信号と共に、命令レベル・
    シミュレータを使用してホスト・システムをシミュレー
    トするステップを含むことを特徴とする方法。
  2. 【請求項2】 さらに、直接メモリ・アクセスを介して
    前記入出力サブシステムと前記ホスト・システムの間の
    読取り/書込みデータ事象をシミュレートするステップ
    を含むことを特徴とする請求項1に記載の方法。
  3. 【請求項3】 さらに、プロセッサ読取り/書込みアク
    セスを介して前記入出力サブシステムと前記ホスト・シ
    ステムの間の読取り/書込みデータ事象をシミュレート
    するステップを含むことを特徴とする請求項1に記載の
    方法。
  4. 【請求項4】 システム・レベル・シミュレーションを
    行う装置において、 入出力サブシステムをシミュレートする論理レベル・シ
    ミュレータと、 これと並行的にホスト・システムをシミュレートし、前
    記入出力サブシステムと前記ホスト・システムがプロセ
    ス間通信を介して相互に通信する命令レベル・シミュレ
    ータとを備えたことを特徴とする装置。
  5. 【請求項5】 さらに、CPUとメモリとを備えること
    を特徴とする請求項4に記載の装置。
JP7137457A 1994-05-16 1995-05-12 ソフトウェアおよびハードウェアのシミュレータの統合によるシステム・レベル・シミュレーションを行う方法と装置 Withdrawn JPH08110919A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US245201 1994-05-16
US08/245,201 US5493672A (en) 1994-05-16 1994-05-16 Concurrent simulation of host system at instruction level and input/output system at logic level with two-way communication deadlock resolution

Publications (1)

Publication Number Publication Date
JPH08110919A true JPH08110919A (ja) 1996-04-30

Family

ID=22925714

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7137457A Withdrawn JPH08110919A (ja) 1994-05-16 1995-05-12 ソフトウェアおよびハードウェアのシミュレータの統合によるシステム・レベル・シミュレーションを行う方法と装置

Country Status (4)

Country Link
US (1) US5493672A (ja)
EP (1) EP0683463B1 (ja)
JP (1) JPH08110919A (ja)
DE (1) DE69519892T2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8250545B2 (en) 2002-06-25 2012-08-21 Fujitsu Semiconductor Limited Associated apparatus and method for supporting development of semiconductor device

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5600579A (en) * 1994-07-08 1997-02-04 Apple Computer, Inc. Hardware simulation and design verification system and method
US5857091A (en) * 1995-03-14 1999-01-05 Siemens Business Communication Systems, Inc. Machine and method for simulating a processor-based digital system
GB2303230B (en) * 1995-07-13 1998-08-12 Advanced Risc Mach Ltd Digital circuit simulation
US5838948A (en) * 1995-12-01 1998-11-17 Eagle Design Automation, Inc. System and method for simulation of computer systems combining hardware and software interaction
US5768567A (en) * 1996-05-14 1998-06-16 Mentor Graphics Corporation Optimizing hardware and software co-simulator
US5771370A (en) * 1996-05-14 1998-06-23 Mentor Graphics Corporation Method and apparatus for optimizing hardware and software co-simulation
JP3492105B2 (ja) * 1996-08-30 2004-02-03 株式会社東芝 ハードウェア/ソフトウェア協調シミュレーション装置及びシミュレーション方法
JP3904645B2 (ja) * 1996-12-26 2007-04-11 株式会社東芝 ハードウェア/ソフトウェア協調シミュレーション装置
US5960188A (en) * 1997-03-13 1999-09-28 Delco Electronics Corporation Method for modeling electrical interconnections in a cycle based simulator
US6152612A (en) * 1997-06-09 2000-11-28 Synopsys, Inc. System and method for system level and circuit level modeling and design simulation using C++
US6083269A (en) * 1997-08-19 2000-07-04 Lsi Logic Corporation Digital integrated circuit design system and methodology with hardware
GB9814014D0 (en) * 1998-06-29 1998-08-26 Sgs Thomson Microelectronics Design of an application specific processor (ASP)
GB9814015D0 (en) * 1998-06-29 1998-08-26 Sgs Thomson Microelectronics Design of an application specific processor (ASP)
GB9814017D0 (en) * 1998-06-29 1998-08-26 Sgs Thomson Microelectronics Design of an application specific processor (ASP)
US6601024B1 (en) * 1998-11-12 2003-07-29 Synopsys, Inc. Code translation between hardware design languages
US6336088B1 (en) * 1998-12-22 2002-01-01 Unisys Corporation Method and apparatus for synchronizing independently executing test lists for design verification
JP3953243B2 (ja) * 1998-12-29 2007-08-08 インターナショナル・ビジネス・マシーンズ・コーポレーション システム分析のためにバス・アービトレーション制御を使用する同期方法及び装置
US6230114B1 (en) 1999-10-29 2001-05-08 Vast Systems Technology Corporation Hardware and software co-simulation including executing an analyzed user program
GB2370134A (en) * 2000-12-15 2002-06-19 Sharp Kk Method of co-simulating a digital circuit
JP4529063B2 (ja) * 2001-03-30 2010-08-25 ルネサスエレクトロニクス株式会社 システムシミュレータ、シミュレーション方法及びシミュレーションプログラム
US7548841B2 (en) * 2001-11-16 2009-06-16 Canon Kabushiki Kaisha Method for logic checking to check operation of circuit to be connected to bus
US7024654B2 (en) * 2002-06-11 2006-04-04 Anadigm, Inc. System and method for configuring analog elements in a configurable hardware device
US20040010401A1 (en) * 2002-07-11 2004-01-15 International Business Machines Corporation Unified simulation system and method for selectively including one or more cores in an integrated circuit simulation model
US6856951B2 (en) 2002-11-15 2005-02-15 Rajat Moona Repartitioning performance estimation in a hardware-software system
US7146581B2 (en) * 2002-11-15 2006-12-05 Russell Alan Klein Automated repartitioning of hardware and software components in an embedded system
US20060217950A1 (en) * 2005-03-22 2006-09-28 Heybruck William F Method of creating a simulation model of a disk drive
US9245591B2 (en) * 2005-06-16 2016-01-26 Lexmark International, Inc. Addressing, command protocol, and electrical interface for non-volatile memories utilized in recording usage counts
US8521970B2 (en) * 2006-04-19 2013-08-27 Lexmark International, Inc. Addressing, command protocol, and electrical interface for non-volatile memories utilized in recording usage counts
US8423959B1 (en) * 2006-12-11 2013-04-16 Synopsys, Inc. Techniques for coordinating and controlling debuggers in a simulation environment
US9317636B1 (en) * 2006-12-11 2016-04-19 Synopsys, Inc. System and method for stopping integrated circuit simulation
US8397220B1 (en) 2007-02-12 2013-03-12 Synopsys, Inc. Simulation control techniques
FR2918193A1 (fr) * 2007-06-28 2009-01-02 Airbus France Sas Carte electrique apte a executer une commande provenant d'un systeme de simulation et une commande provenant d'un module de diagnostic et procede de simulation associe
FR2918232B1 (fr) 2007-06-28 2010-11-26 Airbus France Procedes et dispositifs pour la communication de donnees de diagnostic dans un reseau de communication temps reel
US20090055155A1 (en) * 2007-08-20 2009-02-26 Russell Klein Simulating execution of software programs in electronic circuit designs
US9459890B2 (en) * 2008-07-10 2016-10-04 Mentor Graphics Corporation Controlling real time during embedded system development

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62182939A (ja) * 1986-02-07 1987-08-11 Hitachi Ltd 情報処理装置の論理シミユレ−シヨン方法
US5126966A (en) * 1986-06-25 1992-06-30 Ikos Systems, Inc. High speed logic simulation system with stimulus engine using independent event channels selectively driven by independent stimulus programs
US5134705A (en) * 1988-10-21 1992-07-28 Unisys Corporation System and method for concurrency simulation
JPH04257974A (ja) * 1991-02-13 1992-09-14 Nec Corp 論理設計評価システムの乗り移り評価方式

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8250545B2 (en) 2002-06-25 2012-08-21 Fujitsu Semiconductor Limited Associated apparatus and method for supporting development of semiconductor device

Also Published As

Publication number Publication date
EP0683463A3 (en) 1997-03-12
DE69519892T2 (de) 2001-09-20
EP0683463B1 (en) 2001-01-17
US5493672A (en) 1996-02-20
EP0683463A2 (en) 1995-11-22
DE69519892D1 (de) 2001-02-22

Similar Documents

Publication Publication Date Title
US5493672A (en) Concurrent simulation of host system at instruction level and input/output system at logic level with two-way communication deadlock resolution
US8644305B2 (en) Method and system for modeling a bus for a system design incorporating one or more programmable processors
US7036114B2 (en) Method and apparatus for cycle-based computation
US7072825B2 (en) Hierarchical, network-based emulation system
US8327039B2 (en) Integrated DMA processor and PCI express switch for a hardware-based functional verification system
US7792933B2 (en) System and method for performing design verification
US5911059A (en) Method and apparatus for testing software
US20110307847A1 (en) Hybrid system combining TLM simulators and HW accelerators
US20030144828A1 (en) Hub array system and method
US6810373B1 (en) Method and apparatus for modeling using a hardware-software co-verification environment
JP2008140405A (ja) 電子回路と制御プログラムとのコバリデーション方法
US20190095547A9 (en) Modeling a bus for a system design incorporating one or more programmable processors
Bacivarov et al. Timed HW-SW cosimulation using native execution of OS and application SW
Pasricha et al. Fast exploration of bus-based communication architectures at the CCATB abstraction
Hassoun et al. A transaction-based unified architecture for simulation and emulation
Yoo et al. Hardware/software cosimulation from interface perspective
JP3953243B2 (ja) システム分析のためにバス・アービトレーション制御を使用する同期方法及び装置
Bombieri et al. On the automatic transactor generation for TLM-based design flows
Whangbo et al. Exploring Industry Standard System Integration for Hardware-Software Co-Design of PCI Express
Yoo et al. Fast timed cosimulation of HW/SW implementation of embedded multiprocessor SoC communication
Pasricha et al. High level design space exploration of shared bus communication architectures
Gudla Design and implementation of clocked Open Core Protocol interfaces for Intellectual Property cores and on-chip network fabric
Låte Transaction Level Modeling of a PCI Express Root Complex
Bauer et al. Modeling interrupts for HW/SW co-simulation based on a VHDL/C coupling
Hahn et al. Implementation of a PCI bus virtual driver using PLI, named pipes, and signals

Legal Events

Date Code Title Description
A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20040831