JP3620860B2 - シミュレーション装置 - Google Patents

シミュレーション装置 Download PDF

Info

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
Application number
JP17181292A
Other languages
English (en)
Other versions
JPH05342298A (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.)
MegaChips Corp
Original Assignee
MegaChips 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 MegaChips Corp filed Critical MegaChips Corp
Priority to JP17181292A priority Critical patent/JP3620860B2/ja
Priority to US08/073,810 priority patent/US5437037A/en
Publication of JPH05342298A publication Critical patent/JPH05342298A/ja
Application granted granted Critical
Publication of JP3620860B2 publication Critical patent/JP3620860B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/43Checking; Contextual analysis
    • G06F8/436Semantic checking
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; 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

【0001】
【産業上の利用分野】
この発明は、シミュレーション装置に関し、特に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記載の発明に係るシミュレーション装置は、請求項記載のシミュレーション装置において、上記プログラミング言語情報を計算機が直接処理できるデータに変換するデータ変換手段を備えるようにしたものである。
【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により、使用されている記憶装置を抽出し、記憶装置リスト1aを得る。記憶装置リスト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記載のシミュレーション装置において、
    上記順序処理変換手段は、
    環状の待ち行列リストを記憶することにより現在のシミュレーション時間から近未来に実行される予定の事象を登録するためのリング状登録手段と、
    該リング状登録手段に登録されるよりも先の未来に実行される予定の事象を登録するためのオーバー・タイム登録手段と、
    時間経過を実行条件としない事象を登録するサスペンド登録手段と、
    上記リング状登録手段、オーバー・タイム登録手段、およびサスペンド登録手段を制御する登録制御手段とを備えたことを特徴とするシミュレーション装置。
  3. 請求項2記載のシミュレーション装置において、
    上記登録制御手段は、実行条件の成立した順に上記リング状登録手段から登録された事象を取り出し、
    上記オーバー・タイム登録手段に登録された事象の中で最も最近に実行される予定の事象を上記リング状登録手段に登録することを特徴とするシミュレーション装置。
  4. 請求項1記載のシミュレーション装置において、
    上記変換された順序処理を計算機で用いられるプログラミング言語に変換するプログラミング言語翻訳手段を備えたことを特徴とするシミュレーション装置。
  5. 請求項記載のシミュレーション装置において、
    上記プログラミング言語情報を計算機が直接処理できるデータに変換するデータ変換手段を備えたことを特徴とするシミュレーション装置。
  6. 請求項4または5記載のシミュレーション装置において、
    ハードウエア情報と、計算機で用いられるプログラミング言語で記述された情報とが混在した記述の中からプログラミング言語情報を抽出するプログラミング言語抽出手段を備え、
    上記ハードウエア情報とプログラミング言語情報とが混在した情報に基づきシミュレーションを実行可能としたことを特徴とするシミュレーション装置。
JP17181292A 1992-06-05 1992-06-05 シミュレーション装置 Expired - Fee Related JP3620860B2 (ja)

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)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5661661A (en) * 1990-12-21 1997-08-26 Synopsys, Inc. Method for processing a hardware independent user description to generate logic circuit elements including flip-flops, latches, and three-state buffers and combinations thereof
US5680583A (en) 1994-02-16 1997-10-21 Arkos Design, Inc. Method and apparatus for a trace buffer in an emulation 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
US6132109A (en) * 1994-04-12 2000-10-17 Synopsys, Inc. Architecture and methods for a hardware description language source level 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
US5870608A (en) * 1994-06-03 1999-02-09 Synopsys, Inc. Method and apparatus for displaying text including context sensitive information derived from parse tree
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
US5983016A (en) * 1996-11-12 1999-11-09 International Business Machines Corporation Execution engine in an object modeling tool
US5907706A (en) * 1996-11-12 1999-05-25 International Business Machines Corporation Interactive modeling agent for an object-oriented system
US6011559A (en) * 1996-11-12 2000-01-04 International Business Machines Corporation Layout method for arc-dominated labelled graphs
US5917498A (en) * 1996-11-12 1999-06-29 International Business Machines Corporation Multi-object views in an object modeling tool
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
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
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
EP1202166B1 (de) * 2000-10-27 2003-08-06 Interactive Objects Software GmbH 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
WO2009067538A1 (en) * 2007-11-19 2009-05-28 Mentor Graphics Corporation 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)

* Cited by examiner, † Cited by third party
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

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) 编译器、编译方法
US20070276644A1 (en) Conversion of circuit description to a transaction model
EP0584828B1 (en) LSI automated design system and method
US20060130005A1 (en) Method of generating ASIC design database
JP2003178173A (ja) プロジェクト・リスク管理方法及び装置及びプログラム
CN110442929B (zh) 一种基于perl实现芯片系统顶层自动例化的方法
US10884714B2 (en) Method for modifying models for generating source code
JPH0540616A (ja) プログラム仕様生成方法
JP3318051B2 (ja) 翻訳処理方法
Goorden et al. Modeling guidelines for component-based supervisory control synthesis
Ditzel et al. Using CAD Tools in the Design of CRISP
JP2820184B2 (ja) ロードモジュール単体テスト支援装置
CN112733323B (zh) 一种面向RoboSim模型实时系统的模型检测方法
JP2990882B2 (ja) 機能シミュレーション装置
JP3726992B2 (ja) 一括関数呼出化方法
JP2982418B2 (ja) 機能シミュレーション装置
Azuma et al. Distributed memory architecture for high-level synthesis of embedded controllers from Erlang
JP2765911B2 (ja) データ駆動型制御方法およびコンパイル装置
JP2902972B2 (ja) 論理シミュレータ及びハードウエア記述変換装置
JP2001022808A (ja) 論理回路削減装置ならびに論理シミュレーション方法および装置
US8375376B2 (en) Description processing device, description processing method, and recording medium

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