JP3620860B2 - シミュレーション装置 - Google Patents
シミュレーション装置 Download PDFInfo
- Publication number
- JP3620860B2 JP3620860B2 JP17181292A JP17181292A JP3620860B2 JP 3620860 B2 JP3620860 B2 JP 3620860B2 JP 17181292 A JP17181292 A JP 17181292A JP 17181292 A JP17181292 A JP 17181292A JP 3620860 B2 JP3620860 B2 JP 3620860B2
- Authority
- JP
- Japan
- Prior art keywords
- event
- simulation
- processing
- information
- programming language
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/43—Checking; Contextual analysis
- G06F8/436—Semantic checking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/33—Design verification, e.g. functional simulation or model checking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computational Linguistics (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Devices For Executing Special Programs (AREA)
Description
【産業上の利用分野】
この発明は、シミュレーション装置に関し、特にCAD(Computor Aided Design )において、システム装置,半導体集積回路,電子回路等の回路の動作,機能,論理を、装置を実際に組み立てることなく検証する装置に関するものである。
【0002】
【従来の技術】
従来のシミュレーション装置は、ネットリスト情報、モデル動作情報、等を含んだ「ハードウェア記述情報」を、例えば図3に示すワークステーション等で直接解釈し実行していた。
【0003】
図3において、1はこのようなシミュレーション処理を実行するワークステーション本体、2はこのシミュレーション処理に必要な各種の情報を記憶する記憶装置、3はシミュレーション処理に必要な各種の入力やシミュレーション処理過程およびシミュレーション処理結果等を表示する高解像度ディスプレイ、4は操作者がワークステーション本体1に対し各種の指示を入力等するための、マウス等のポインティングデバイスである。
【0004】
そして、このワークステーションによって実現されたシミュレーション装置の具体的な処理手順は以下の通りである。
【0005】
(1) 字句解析
ハードウェア記述情報を、その予約語、定義語、その他の字句種類に基づいて分析,分類する。
【0006】
(2) 構文解析
分類された字句種類の接続関係より、ハードウェア記述情報をその構文規則と照らし合わせ、それが正常であるならばその接続構造を含めてシミュレーション装置の保有するデータベースに登録する。
【0007】
(3) 内部データ接続
シミュレーションを行う際に頻繁に読み出し、または書込みされるデータ項目をあらかじめ検出し、それらをデータ的に相互に接続しておく。
【0008】
(4) 初期化
シミュレーションを開始するにあたり、シミュレーション時間、シミュレーション中に使用される記憶装置の初期化を行う。また、一番最初に処理が必要なデータ構造をあらかじめ探しだし、それを「事象順序記憶装置」に記憶しておく。
【0009】
(5) 事象順序記憶装置から処理対象データ構造の検索
現在時間に処理すべきデータ構造を事象順序記憶装置から読み取る。
【0010】
(6) 実行
(5) の検索で選ばれたデータ構造のそれぞれに関して、1)順序処理、2)事象起因処理の判断を行う。
【0011】
1)順序処理
それぞれの順序処理を、そのデータ構造を解釈しながら順次実行する。
【0012】
2)事象起因処理
事象が起こった条件を計算し、データ構造で指定された条件を満足してい
れば、順序処理と同等な処理を行う。
【0013】
(7) 事象起因検査
(6) の実行をすべて行った後、その処理の際のデータ操作に伴って事象が発生したかどうかを検査する。発生していれば、その関連するデータ構造を実行予定時間の事象順序記憶装置に記憶しておく。
【0014】
(8) 事象順序記憶装置検査
現在時間の事象順序記憶装置の内容を検査し、処理すべきデータ構造があるなら(5) の処理へ移る。なければ、次に実行すべき時間を事象順序記憶装置から探し、その時間を現在時間とし、(5) の処理へ移る。
【0015】
未来時間に実行すべきデータ構造がなくなれば、シミュレーションは終了する。
【0016】
【発明が解決しようとする課題】
従来のシミュレーション装置は、以上のように構成されており、処理を実行する際にそのデータ構造の解釈、実行を逐次行っていたため、いわゆるインタプリタに相当する方式で処理を実行することになり、シミュレーション処理の実行時間が非常に多くかかり、大規模システムになるほど、回路の動作、機能、論理の短時間での検証が困難となっていた。
【0017】
この発明は、上記のような従来のものの問題点を解消するためになされたもので、その処理実行時間を大幅に短縮できるシミュレーション装置を得ることを目的とする。
【0018】
【課題を解決するための手段】
本願の請求項1記載の発明に係るシミュレーション装置は、装置を実際に組み立てることなく動作、機能、論理等の検証を行うシミュレーション装置において、シミュレーションすべき装置の構成を記述したハードウエア情報の中からシミュレーション処理手順を分離し、時間の経過にともなって実行が可能となる処理である順序処理および事象の生起の有無に応じて実行が決定される事象起因処理とを得るシミュレーション処理手順分離手段と、該シミュレーション処理手順分離手段により得られた事象起因処理より各事象起因処理とそれらを接続する遷移ベクトル情報から事象起因処理の集合である事象遷移空間を作成し、当該事象遷移空間から順序処理と事象起因処理とを分離する遷移空間限定手段と、該遷移空間限定手段により得られた事象起因処理を順序処理に書き換える順序処理変換手段とを備えるようにしたものである。
【0019】
また、本願の請求項2記載の発明に係るシミュレーション装置は、請求項1記載のシミュレーション装置において、上記順序処理変換手段は、環状の待ち行列リストを記憶することにより現在のシミュレーション時間から近未来に実行される予定の事象を登録するためのリング状登録手段と、該リング状登録手段に登録されるよりも先の未来に実行される予定の事象を登録するためのオーバー・タイム登録手段と、時間経過を実行条件としない事象を登録するサスペンド登録手段と、上記リング状登録手段、オーバー・タイム登録手段、およびサスペンド登録手段を制御する登録制御手段とを備えるようにしたものである。
【0020】
また、本願の請求項3記載の発明に係るシミュレーション装置は、請求項2記載のシミュレーション装置において、上記登録制御手段は、実行条件の成立した順に上記リング状登録手段から登録された事象を取り出し、上記オーバー・タイム登録手段に登録された事象の中で最も最近に実行される予定の事象を上記リング状登録手段に登録するようにしたものである。
【0021】
また、本願の請求項4記載の発明に係るシミュレーション装置は、請求項1記載のシミュレーション装置において、上記変換された順序処理を計算機で用いられるプログラミング言語に変換するプログラミング言語翻訳手段を備えるようにしたものである。
【0022】
また、本願の請求項5記載の発明に係るシミュレーション装置は、請求項4記載のシミュレーション装置において、上記プログラミング言語情報を計算機が直接処理できるデータに変換するデータ変換手段を備えるようにしたものである。
【0023】
また、本願の請求項6記載の発明に係るシミュレーション装置は、請求項4または5記載のシミュレーション装置において、ハードウエア情報と、計算機で用いられるプログラミング言語で記述された情報とが混在した記述の中からプログラミング言語情報を抽出するプログラミング言語抽出手段を備え、上記ハードウエア情報とプログラミング言語情報とが混在した情報に基づきシミュレーションを実行可能としたものである。
【0028】
【作用】
この発明においては、上述のように構成したことにより、ハードウエア情報の中から、可能なものから順に順序処理に変換するようにしたので、本質的に並列処理を含むハードウエア情報を、逐次処理方式の計算機にて実行可能とする。
【0029】
この発明においては、上述のように構成したことにより、順序処理変換手段を実現するようにしたので、事象起因処理を順序処理に変換することを可能とする。
【0030】
この発明においては、上述のように構成したことにより、登録制御手段がリング状登録手段に生じた事象の登録の空きを、オーバー・タイム登録手段に登録されている、最も近未来の事象で補填するようにしたので、時間順の事象の流れが作り出され、シミュレーションを順序処理にて実行することを可能にする。
【0031】
また、この発明においては、上述のように構成したので、順序処理がプログラミング言語情報に変換されるため、計算機による実行を可能とする。
【0032】
また、本発明においては、上述のようにプログラミング情報を計算機が直接処理できるデータに変換するため、シミュレーションを高速に実行することを可能とする。
【0033】
また、本発明においては、上述のように構成したことにより、ハードウエア情報としては記述しにくい部分を、プログラミング言語で記述でき、そのシミュレーションを可能とする。
【0038】
【実施例】
以下、この発明の一実施例を図について説明する。図1は本発明の一実施例によるシミュレーション装置を示し、これは例えば、図3に示すようなワークステーションによって実現されている。図において、11は外部から入力された、HDL(Hardware Discription Language) 等のハードウェア記述情報100のなかからシミュレーションを実行するために必要な記憶装置を抽出する記憶装置抽出手段、12はこの記憶装置抽出手段11により抽出された記憶装置リスト11aに基づき使用する記憶装置の容量を最適化する記憶装置最適化手段、13は外部から入力されたハードウェア記述情報100のなかから本来のシミュレーション処理手順を分離するシミュレーション処理分離手段、14はこのシミュレーション処理分離手段13により分離された順序処理13aおよび事象起因処理13bのうち、事象起因処理13bの遷移空間領域を限定する遷移空間領域限定手段、15は遷移空間領域限定手段14が出力した順序処理14aおよび事象起因処理14bのうち、事象起因処理14bを順序処理に変換する順序処理変換手段、16は記憶装置最適化手段が出力した最適化記憶装置リスト12bおよび順序処理13a,14a,15aを用いて、これをプログラミング言語に変換するプログラミング言語変換手段、17はこのプログラミング言語変換手段16により変換されたプログラミング言語記述情報16aを翻訳し計算機が実行可能な情報17aに変換するプログラミング言語翻訳器、18は予めその内部に構築されている事象処理順序決定装置19を用いて実行可能情報17aを実行する計算機である。なお、この計算機18は前述のワークステーション自身であってもよいし、これ以外の他の計算機であってもよい。
【0039】
次に動作について説明する。まず、シミュレーション処理分離手段13により、ネットリスト情報,モデル動作情報等を含んだ「ハードウェア記述情報」100をその処理の単位で分離し、「順序処理」13a、「事象起因処理」13bの2つの情報を得る。このうち、順序処理13aに関してはこれは順次実行可能なものであるため問題はないが、事象起因情報は、シミュレーション実行仮想時刻において並列動作をする可能性があり、かつ時間待ちまたは事象待ちによりその実行が決定されるため、これはそのままでは順序処理として扱うことができない。
【0040】
また、事象起因処理の処理順序は、それぞれの事象起因処理中に記述された「事象発生命令」により決定されるため、それぞれの事象起因処理とそれらを接続する遷移ベクトル情報から事象遷移空間を作ることにより、事象起因処理の集合を見つけることが可能になる。その事象起因処理集合1つからは、新たに順序処理と1つの事象起因処理とにこれを分離することが可能になる(「遷移空間領域限定」)。遷移空間限定手段14は以上の原理に基づいて事象起因処理13bを順序処理14aと1つの事象起因処理14bとに分離する作業を行なう。そして、この作業により、事象の遷移をグループ化できるので、シミュレーション処理の高速化に寄与することができる。
【0041】
事象起因処理は、あらかじめ「事象処理順序決定装置」があると想定すれば、これを順序処理の塊として扱うことが可能である。すなわち、事象起因処理中の「事象検出命令」と「事象発生命令」の処理を「事象処理順序決定装置」との交信により行うとすれば、これを順序処理として扱うことが可能になる。従って、本質的に並列処理となりうる事象起因処理を、現行の逐次処理方式の計算機で処理できる順序処理に変換してこれを実行できる。
【0042】
順序変換処理手段15は以上のような原理に基づき、事象処理順序決定装置と交信することによりこれを順序処理として実行できるような記述に、事象起因処理14bを書き換える。
【0043】
ところで、この「事象処理順序決定装置」は、「タイム・ホイール」と呼ばれる1つの環状の待ち行列リストの他にそれぞれ「オーバー・タイム・キュー」,「サスペンド・キュー」と呼ばれる2つの線状の待ち行列リストを記憶する記憶装置と、それらを制御する制御機構をもつ装置であり、これは予め計算機18側に構築されている。
【0044】
以下、この事象処理順序決定装置の動作を、このシミュレーション装置の残りの変換処理の説明に先立って説明する。
【0045】
事象処理順序決定装置19において、事象は、現在のシミュレーション時間からの実行予定時間、または、実行予定条件により、タイム・ホイールか、オーバー・タイム・キュー、サスペンド・キューのいずれかに登録される。タイム・ホイールは、あらかじめその登録時間範囲が決まっており、現在のシミュレーション時間から近い未来に実行される予定である事象の登録に用いられる。それより遠い未来で実行される予定の事象は、オーバー・タイム・キューに登録される。時間経過を実行条件としない事象は、サスペンド・キューに登録される。
【0046】
事象処理順序決定装置19は、実行条件の成立した事象をそれぞれの待ち行列リストから外し、「事象実行装置」、即ち、計算機18における、その全てが順序処理に変換されたシミュレーション処理にそれらの事象情報を渡す。現在のシミュレーション時間に実行すべき事象がすべて無くなったときには、次に実行すべき事象の時刻までシミュレーション時間を変更する。
【0047】
シミュレーション時間を増加する際に、空きとなったタイム・ホイールの時間項目において、オーバー・タイム・キューにおけるもっとも最近に実行される可能性のある事象が現在の時間とタイム・ホイール・キュー分の時間を加算した時間に該当するならば、その事象をオーバー・タイム・キューから外し、空きとなったタイム・ホイール項目に登録する。
【0048】
このような事象処理順序決定装置19を予め計算機18側に作成しておくことにより、一般にその実行順序が確定していない事象起因処理を、その実行順序が確定している順序処理に変換することができ、これにより全てのシミュレーション動作を、逐次処理方式の現在の計算機により実行できるものに変換できる。
【0049】
以下、本シミュレーション装置で実行される、残りの変換処理について説明すると、ハードウェア記述情報100は前述の処理とは別処理として、「記憶装置抽出」手段11により、使用されている記憶装置を抽出し、記憶装置リスト11aを得る。記憶装置リスト11aは、それぞれの順序処理、事象起因処理で使用されているかどうかの判断に使用され、「記憶装置最適化」手段12により、それらの順序処理、事象起因処理の使用記憶装置として区別される情報が「最適化記憶装置リスト」12bとして得られる。この「記憶装置最適化」処理によりシミュレーション実行のために必要な記憶装置があらかじめ抽出され、その重複を検査され、最適な容量分の記憶装置が確保されるので、シミュレーション実行に際しそのアクセスを高速化でき、シミュレーション実行の高速化に寄与する。また、使用記憶容量を低減化でき、高効率のシミュレーション実行を可能とする。
【0050】
「プログラム言語変換」手段16は、今までの処理で得た、「最適化記憶装置リスト」12bと複数個ある「順序処理」の情報13a,14b,15bをもとに、シミュレーションを計算機で実行させるべく、これを計算機のプログラム言語であるC言語のソース・ファイル(「プログラミング言語ソース・ファイル」)に変換する。
【0051】
この生成されたプログラミング言語記述情報(プログラミング言語ソース・ファイル)16aは、「プログラミング言語翻訳器」17により計算機18が直接実行可能な情報17aに翻訳され、あらかじめ計算機18側に作成されている「事象処理順序決定装置」19と共にこれを実行することにより、シミュレーションを高速に実行することが可能となる。
【0052】
このように、上記実施例によれば、シミュレータの入力情報であるハードウェア記述言語を事象起因処理集合の単位に分離し、それぞれの処理遷移情報を抽出し、それらの事象起因記憶処理装置を選択的に処理することにより、遷移の段階がもっとも少ない遷移木構造の情報を作成し、それらの情報から逐次処理集合を作成し、これを計算機で使用されるプログラミング言語に変換することにより、逐次解析の必要のない効率に良いシミュレーションを実行することができる。そしてこれにより、本質的に並列処理を含むシミュレーションを、逐次処理に変換してこれを効率よく実行できるので、大規模システムであってもこれを短期間で検証できる。
【0053】
なお、本発明の他の実施例を示す図2のように、ハードウエア記述情報とプログラミング言語記述情報とが混在した情報101からプログラミング言語記述情報16bを抽出し、これをプログラミング言語翻訳器17に出力するプログラミング言語抽出器20を設けるようにしてもよく、これにより、プログラミング言語に変換する際に、ハードウェア記述情報だけでなく、プログラミング言語で記述された処理機構も共に実行することが可能になる。
【0054】
また、上述のような処理によりシミュレーションすべき内容を分析,変換する計算機と、その変換結果を実行する計算機とは別個のものであってもよく、これにより、負荷の大きい側の計算機を高性能なものとすることにより、処理を一層高速化できる。
【0055】
また、上記実施例では、シミュレーションすべき内容を分析,変換する計算機としてワークステーションを用いたものを示したが、これに限るものでないことは言うまでもない。
【0056】
さらに、事象処理順序決定装置のタイム・ホイール、オーバー・タイム・キュー、サスペンド・キューはハード化されたものであってもよく、これによりより一層の処理の高速化が期待できる。
【0057】
【発明の効果】
以上のように、本発明に係るシミュレーション装置によれば、シミュレーションの入力であるハードウェア記述情報を解析し、あらかじめ計算機で直接実行可能な情報に変換することにより、シミュレーション実行を直接計算機で処理することができ、大規模シミュレーションを高速に実行することができる。
【図面の簡単な説明】
【図1】この発明の一実施例によるシミュレーション装置を示すブロック図である。
【図2】この発明の他の実施例によるシミュレーション装置を示すブロック図である。
【図3】シミュレーション装置が実現されるハードウエアを示すブロック図である。
【符号の説明】
1 ワークステーション本体
2 記憶装置
3 高解像度ディスプレイ
4 ポインティングデバイス
11 記憶装置抽出手段
12 記憶装置最適化手段
13 シミュレーション処理分離手段
14 遷移空間領域限定手段
15 順序処理変換手段
16 プログラミング言語変換手段
17 プログラミング言語翻訳器
18 計算機
19 事象処理順序決定装置
20 プログラミング言語抽出器
Claims (6)
- 装置を実際に組み立てることなく動作、機能、論理等の検証を行うシミュレーション装置において、
シミュレーションすべき装置の構成を記述したハードウエア情報の中からシミュレーション処理手順を分離し、時間の経過にともなって実行が可能となる処理である順序処理および事象の生起の有無に応じて実行が決定される事象起因処理とを得るシミュレーション処理手順分離手段と、
該シミュレーション処理手順分離手段により得られた事象起因処理より各事象起因処理とそれらを接続する遷移ベクトル情報から事象起因処理の集合である事象遷移空間を作成し、当該事象遷移空間から順序処理と事象起因処理とを分離する遷移空間限定手段と、
該遷移空間限定手段により得られた事象起因処理を順序処理に書き換える順序処理変換手段とを備えたことを特徴とするシミュレーション装置。 - 請求項1記載のシミュレーション装置において、
上記順序処理変換手段は、
環状の待ち行列リストを記憶することにより現在のシミュレーション時間から近未来に実行される予定の事象を登録するためのリング状登録手段と、
該リング状登録手段に登録されるよりも先の未来に実行される予定の事象を登録するためのオーバー・タイム登録手段と、
時間経過を実行条件としない事象を登録するサスペンド登録手段と、
上記リング状登録手段、オーバー・タイム登録手段、およびサスペンド登録手段を制御する登録制御手段とを備えたことを特徴とするシミュレーション装置。 - 請求項2記載のシミュレーション装置において、
上記登録制御手段は、実行条件の成立した順に上記リング状登録手段から登録された事象を取り出し、
上記オーバー・タイム登録手段に登録された事象の中で最も最近に実行される予定の事象を上記リング状登録手段に登録することを特徴とするシミュレーション装置。 - 請求項1記載のシミュレーション装置において、
上記変換された順序処理を計算機で用いられるプログラミング言語に変換するプログラミング言語翻訳手段を備えたことを特徴とするシミュレーション装置。 - 請求項4記載のシミュレーション装置において、
上記プログラミング言語情報を計算機が直接処理できるデータに変換するデータ変換手段を備えたことを特徴とするシミュレーション装置。 - 請求項4または5記載のシミュレーション装置において、
ハードウエア情報と、計算機で用いられるプログラミング言語で記述された情報とが混在した記述の中からプログラミング言語情報を抽出するプログラミング言語抽出手段を備え、
上記ハードウエア情報とプログラミング言語情報とが混在した情報に基づきシミュレーションを実行可能としたことを特徴とするシミュレーション装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP17181292A JP3620860B2 (ja) | 1992-06-05 | 1992-06-05 | シミュレーション装置 |
US08/073,810 US5437037A (en) | 1992-06-05 | 1993-06-07 | Simulation using compiled function description language |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP17181292A JP3620860B2 (ja) | 1992-06-05 | 1992-06-05 | シミュレーション装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH05342298A JPH05342298A (ja) | 1993-12-24 |
JP3620860B2 true JP3620860B2 (ja) | 2005-02-16 |
Family
ID=15930190
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP17181292A Expired - Fee Related JP3620860B2 (ja) | 1992-06-05 | 1992-06-05 | シミュレーション装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US5437037A (ja) |
JP (1) | JP3620860B2 (ja) |
Families Citing this family (53)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5530841A (en) * | 1990-12-21 | 1996-06-25 | Synopsys, Inc. | Method for converting a hardware independent user description of a logic circuit into hardware components |
US5680583A (en) * | 1994-02-16 | 1997-10-21 | Arkos Design, Inc. | Method and apparatus for a trace buffer in an emulation system |
US6132109A (en) * | 1994-04-12 | 2000-10-17 | Synopsys, Inc. | Architecture and methods for a hardware description language source level debugging system |
US5937190A (en) * | 1994-04-12 | 1999-08-10 | Synopsys, Inc. | Architecture and methods for a hardware description language source level analysis and debugging system |
US5920712A (en) * | 1994-05-13 | 1999-07-06 | Quickturn Design Systems, Inc. | Emulation system having multiple emulator clock cycles per emulated clock cycle |
US5528516A (en) * | 1994-05-25 | 1996-06-18 | System Management Arts, Inc. | Apparatus and method for event correlation and problem reporting |
WO1995034038A1 (en) * | 1994-06-03 | 1995-12-14 | Synopsys, Inc. | Method and apparatus for context sensitive text displays |
US5764951A (en) * | 1995-05-12 | 1998-06-09 | Synopsys, Inc. | Methods for automatically pipelining loops |
US5819065A (en) * | 1995-06-28 | 1998-10-06 | Quickturn Design Systems, Inc. | System and method for emulating memory |
US5923865A (en) * | 1995-06-28 | 1999-07-13 | Quickturn Design Systems, Inc. | Emulation system having multiple emulated clock cycles per emulator clock cycle and improved signal routing |
US5822564A (en) * | 1996-06-03 | 1998-10-13 | Quickturn Design Systems, Inc. | Checkpointing in an emulation system |
US5841967A (en) | 1996-10-17 | 1998-11-24 | Quickturn Design Systems, Inc. | Method and apparatus for design verification using emulation and simulation |
US5907706A (en) * | 1996-11-12 | 1999-05-25 | International Business Machines Corporation | Interactive modeling agent for an object-oriented system |
US5983016A (en) * | 1996-11-12 | 1999-11-09 | International Business Machines Corporation | Execution engine in an object modeling tool |
US5991536A (en) * | 1996-11-12 | 1999-11-23 | International Business Machines Corporation | Object-oriented tool for registering objects for observation and causing notifications to be made in the event changes are made to an object which is being observed |
US6011559A (en) * | 1996-11-12 | 2000-01-04 | International Business Machines Corporation | Layout method for arc-dominated labelled graphs |
US5893913A (en) * | 1996-11-12 | 1999-04-13 | International Business Machines Corporation | Method for synchronizing classes, objects, attributes and object properties across an object-oriented system |
US5917498A (en) * | 1996-11-12 | 1999-06-29 | International Business Machines Corporation | Multi-object views in an object modeling tool |
US5949990A (en) * | 1996-12-05 | 1999-09-07 | Hewlett-Packard Co. | Method of efficiently modeling tri-state gates |
US5880975A (en) * | 1996-12-05 | 1999-03-09 | Hewlett-Packard, Co. | Method of producing simplified code from a circuit compiler |
US5910900A (en) * | 1996-12-05 | 1999-06-08 | Hewlett-Packard, Co. | Method of producing cache optimized code from a circuit compiler |
GB2321118B (en) * | 1997-01-14 | 2002-03-27 | Integral Design Res Ltd | Development of integrated circuits |
US5960191A (en) | 1997-05-30 | 1999-09-28 | Quickturn Design Systems, Inc. | Emulation system with time-multiplexed interconnect |
US5970240A (en) | 1997-06-25 | 1999-10-19 | Quickturn Design Systems, Inc. | Method and apparatus for configurable memory emulation |
US5920830A (en) * | 1997-07-09 | 1999-07-06 | General Electric Company | Methods and apparatus for generating test vectors and validating ASIC designs |
US6226776B1 (en) * | 1997-09-16 | 2001-05-01 | Synetry Corporation | System for converting hardware designs in high-level programming language to hardware implementations |
JP3838756B2 (ja) * | 1997-09-16 | 2006-10-25 | 株式会社東芝 | 回路設計支援装置 |
US6898782B1 (en) | 1997-10-14 | 2005-05-24 | International Business Machines Corporation | Reference-based associations using reference attributes in an object modeling system |
US6321295B1 (en) | 1998-03-19 | 2001-11-20 | Insilicon Corporation | System and method for selective transfer of application data between storage devices of a computer system through utilization of dynamic memory allocation |
US6842853B1 (en) * | 1999-01-13 | 2005-01-11 | Sun Microsystems, Inc. | Thread suspension system and method |
DE19921128A1 (de) * | 1999-05-07 | 2000-11-23 | Vrije Universiteit Brussel Bru | Verfahren zum Erzeugen von zielsystemspezifischen Programmcodes, Simulationsverfahren sowie Hardwarekonfiguration |
US7013252B1 (en) | 1999-09-02 | 2006-03-14 | Micron Technology, Inc. | Simulated circuit node initializing and monitoring |
US20020138244A1 (en) * | 1999-09-30 | 2002-09-26 | Meyer Steven J. | Simulator independent object code HDL simulation using PLI |
DE50003210D1 (de) * | 2000-10-27 | 2003-09-11 | Interactive Objects Software G | System zur Verifikation von Software-Anwendungsmodellen in Ketten von Software-Entwurfswerkzeugen |
US20020124085A1 (en) * | 2000-12-28 | 2002-09-05 | Fujitsu Limited | Method of simulating operation of logical unit, and computer-readable recording medium retaining program for simulating operation of logical unit |
US6694497B2 (en) * | 2001-10-26 | 2004-02-17 | Stmicroelectronics Limited | Method of testing integrated circuitry at system and module level |
US7243342B2 (en) * | 2002-06-11 | 2007-07-10 | Intel Corporation | Methods and apparatus for determining if a user-defined software function is a memory allocation function during compile-time |
US20040093198A1 (en) * | 2002-11-08 | 2004-05-13 | Carbon Design Systems | Hardware simulation with access restrictions |
US7194705B1 (en) * | 2003-03-14 | 2007-03-20 | Xilinx, Inc. | Simulation of integrated circuitry within a high-level modeling system using hardware description language circuit descriptions |
US6928629B2 (en) * | 2003-05-09 | 2005-08-09 | Hewlett-Packard Development Company, L.P. | System and method for parsing HDL events for observability |
US7137087B1 (en) * | 2003-08-20 | 2006-11-14 | Adaptec, Inc. | Integrated circuit verification scheme |
US20050229170A1 (en) * | 2004-04-08 | 2005-10-13 | Matthew Bellantoni | Optimized system-level simulation |
US20050228628A1 (en) * | 2004-04-08 | 2005-10-13 | Matthew Bellantoni | System-level simulation of interconnected devices |
US20050228627A1 (en) * | 2004-04-08 | 2005-10-13 | Matthew Bellantoni | System-level simulation of devices having diverse timing |
CN1713192A (zh) * | 2004-06-25 | 2005-12-28 | 国际商业机器公司 | 处理逻辑建模与执行方法和设备 |
US20060085176A1 (en) * | 2004-10-14 | 2006-04-20 | Matthew Bellantoni | Generating an optimized system-level simulation |
US8332201B1 (en) | 2006-05-26 | 2012-12-11 | Marvell International Ltd. | Innovative verification methodology for deeply embedded computational element |
US7810073B2 (en) * | 2006-09-05 | 2010-10-05 | International Business Machines Corporation | Method of translating n to n instructions employing an enhanced extended translation facility |
US7908474B2 (en) * | 2006-09-22 | 2011-03-15 | International Business Machines Corporation | Method for improved key management for ATMs and other remote devices |
US20090132979A1 (en) * | 2007-11-19 | 2009-05-21 | Simon Joshua Waters | Dynamic pointer dereferencing and conversion to static hardware |
US8402449B1 (en) * | 2008-01-10 | 2013-03-19 | The Mathworks, Inc. | Technique for automatically assigning placement for pipeline registers within code generated from a program specification |
JP2018200634A (ja) * | 2017-05-29 | 2018-12-20 | 富士通株式会社 | SystemCモデル生成方法およびSystemCモデル生成プログラム |
CN111290846B (zh) * | 2020-02-26 | 2023-08-18 | 杭州涂鸦信息技术有限公司 | 一种分布式任务调度方法及系统 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63223869A (ja) * | 1987-03-13 | 1988-09-19 | Hitachi Ltd | プログラム生成方法 |
US5068812A (en) * | 1989-07-18 | 1991-11-26 | Vlsi Technology, Inc. | Event-controlled LCC stimulation |
US5084824A (en) * | 1990-03-29 | 1992-01-28 | National Semiconductor Corporation | Simulation model generation from a physical data base of a combinatorial circuit |
-
1992
- 1992-06-05 JP JP17181292A patent/JP3620860B2/ja not_active Expired - Fee Related
-
1993
- 1993-06-07 US US08/073,810 patent/US5437037A/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPH05342298A (ja) | 1993-12-24 |
US5437037A (en) | 1995-07-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3620860B2 (ja) | シミュレーション装置 | |
US5557774A (en) | Method for making test environmental programs | |
KR100186869B1 (ko) | 회로와 시스템들의 고레벨의 의미론적 명세들과 기술들로부터 회로와 시스템들의 실행가능한 저레벨의 구조적 기술과 정당한물리적구현들을추론하는방법론 | |
JP2862886B2 (ja) | Asic用計算機支援設計システム | |
CN100465895C (zh) | 编译器、编译方法 | |
EP0584828B1 (en) | LSI automated design system and method | |
US20060130005A1 (en) | Method of generating ASIC design database | |
JP2003178173A (ja) | プロジェクト・リスク管理方法及び装置及びプログラム | |
CN110442929B (zh) | 一种基于perl实现芯片系统顶层自动例化的方法 | |
JPH0540616A (ja) | プログラム仕様生成方法 | |
CN112114817A (zh) | 基于cobol语言的数据字典字段信息获取方法及装置 | |
JP3318051B2 (ja) | 翻訳処理方法 | |
Sharov et al. | Syntax-directed implementation of visual languages based on automaton graphical grammars | |
JP2820184B2 (ja) | ロードモジュール単体テスト支援装置 | |
CN112733323B (zh) | 一种面向RoboSim模型实时系统的模型检测方法 | |
JP2990882B2 (ja) | 機能シミュレーション装置 | |
JP3726992B2 (ja) | 一括関数呼出化方法 | |
JP2982418B2 (ja) | 機能シミュレーション装置 | |
GELEN et al. | On Deadlock/Livelock Studies Based on Reachability Graph of Petri Nets by Using TINA | |
Azuma et al. | Distributed memory architecture for high-level synthesis of embedded controllers from Erlang | |
Uzam et al. | On Deadlock/Livelock Studies Based on Reachability Graph of Petri Nets by Using TINA | |
JP2902972B2 (ja) | 論理シミュレータ及びハードウエア記述変換装置 | |
JP2001022808A (ja) | 論理回路削減装置ならびに論理シミュレーション方法および装置 | |
US8375376B2 (en) | Description processing device, description processing method, and recording medium | |
JP2001014356A (ja) | プログラミング言語モデル作成可能な高位合成装置、及びプログラミング言語モデル作成可能な高位合成方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041007 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20041116 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081126 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091126 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101126 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111126 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |