JP7215244B2 - 記述変換方法、シミュレーション方法及び記述変換プログラム - Google Patents
記述変換方法、シミュレーション方法及び記述変換プログラム Download PDFInfo
- Publication number
- JP7215244B2 JP7215244B2 JP2019042590A JP2019042590A JP7215244B2 JP 7215244 B2 JP7215244 B2 JP 7215244B2 JP 2019042590 A JP2019042590 A JP 2019042590A JP 2019042590 A JP2019042590 A JP 2019042590A JP 7215244 B2 JP7215244 B2 JP 7215244B2
- Authority
- JP
- Japan
- Prior art keywords
- register
- variables
- circuit model
- evaluation order
- register variables
- 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.)
- Active
Links
Images
Classifications
-
- 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
- G06F30/3308—Design verification, e.g. functional simulation or model checking using simulation
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)
- Stored Programmes (AREA)
- Debugging And Monitoring (AREA)
Description
図1は、実施例1に係るシミュレーション装置10の機能的構成の一例を示すブロック図である。図1に示すシミュレーションシステム1は、デジタル回路の設計を支援する側面から、HDLで記述された回路モデルの動作を検証する論理シミュレーションの機能を提供するものである。
HDLの回路モデルは、プロセスとレジスタ変数から構成されるネットワークである。このうち、プロセスは、組み合せ回路と順序回路など、並行動作するモジュールを表す。以下、レジスタ変数を入力に演算処理を行い、その結果をレジスタ変数に出力する動作をプロセスに実行させることを「プロセスを評価する」と表記する。また、レジスタ変数は、FFやラッチなど、値を保持する信号線を表す。レジスタ変数は、現在値と次時刻値の2つの値を持ち、プロセスの入力に対しては現在値を、出力には次時刻値を用いる。プロセスの評価後にΔt(微小時間)経過すると、レジスタ変数の現在値は次時刻値で上書きされる。以下、レジスタ変数の現在値は次時刻値で上書きすることを「レジスタを更新する」と表記する。
近年のプロセッサ、例えばマルチコアCPUやGPU等の回路は大規模であるため、そのHDL記述は多くのプロセスとレジスタ変数を持つ。特に、レジスタ変数の多さは、論理シミュレーションでのレジスタ更新の回数に影響するため、論理シミュレーションの実行が低下する要因となっている。
そこで、本実施例では、シミュレーション実行を高速化するために、HDLで記述された回路モデルのレジスタ変数をブロッキング変数へ変換することで、レジスタ変数を削減する。
次に、本実施例に係る論理シミュレータの機能を搭載するシミュレーション装置10の機能的構成について説明する。図1に示すように、シミュレーション装置10は、通信インタフェース部11と、記憶部13と、制御部15とを有する。なお、図1には、データの授受の関係を表す実線が示されているが、説明の便宜上、最小限の部分について示されているに過ぎない。すなわち、各処理部に関するデータの入出力は、図示の例に限定されず、図示以外のデータの入出力、例えば処理部及び処理部の間、処理部及びデータの間、並びに、処理部及び外部装置の間のデータの入出力が行われることとしてもかまわない。
このような定式化が行われるのは、レジスタ変数に対して、全てのReadが実行された後でWriteが実行される場合、そのRead中は現在値(curr)と次時刻値(next)は一致したままであるからである。この事実がプロセスの評価順序の決定時に考慮される、レジスタ変数のブロッキング変数への変換に使われる。
このような定式化が行われるのは、HDLの回路モデルでは、組合せ回路プロセスは、その全ての入力値が確定した後で評価が行われる為である。
このような定式化が行われるのは、HDLの回路モデルでは、レジスタ変数への複数回の書き込みは、最後の書き込みが次時刻値(next)に反映される為である。
次に、本実施例に係るシミュレーション装置10の処理の流れについて説明する。図13は、実施例1に係るシミュレーション処理の手順を示すフローチャートである。この処理は、あくまで一例として、クライアント端末50から論理シミュレーションの実行リクエストを受け付けた場合に開始される。
2)Read-Write制約(C)の複数Write制約を満たさないとき、-∞(マイナス無限大)
3)上記1)及び2)以外、0
上述してきたように、本実施例に係るシミュレーション装置10は、論理シミュレーションの動作を保証するRead-Write制約を満たすレジスタ変数をブロッキング変数に変換する。したがって、本実施例に係るシミュレーション装置10によれば、レジスタ変数を削減し、レジスタの更新回数を低減し、ひいてはシミュレーション実行を高速化することが可能である。
また、図示した各装置の各構成要素は、必ずしも物理的に図示の如く構成されておらずともよい。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、HDL記述取得部15A、関係抽出部15B、評価順序決定部15C、レジスタ変数変換部15Dまたはシミュレーション実行部15Eをシミュレーション装置10の外部装置としてネットワーク経由で接続するようにしてもよい。また、HDL記述取得部15A、関係抽出部15B、評価順序決定部15C、レジスタ変数変換部15Dまたはシミュレーション実行部15Eを別の装置がそれぞれ有し、ネットワーク接続されて協働することで、上記のシミュレーション装置10の機能を実現するようにしてもよい。
また、上記の実施例で説明した各種の処理は、予め用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。そこで、以下では、図15を用いて、上記の実施例と同様の機能を有する記述変換プログラムを実行するコンピュータの一例について説明する。
前記回路モデルに含まれるプロセス及びレジスタ変数の間における読み込み及び書き込みの関係を抽出し、
抽出された関係が所定の条件を満たすレジスタ変数の個数に基づいて前記プロセスの評価順序を決定し、
前記回路モデルに含まれるレジスタ変数のうち、決定された前記プロセスの評価順序で前記条件を満たすレジスタ変数をブロッキング変数に変換する、
処理をコンピュータが実行する記述変換方法。
前記回路モデルに含まれるプロセス及びレジスタ変数の間における読み込み及び書き込みの関係を抽出し、
抽出された関係が所定の条件を満たすレジスタ変数の個数に基づいて前記プロセスの評価順序を決定し、
前記回路モデルに含まれるレジスタ変数のうち、決定された前記プロセスの評価順序で前記条件を満たすレジスタ変数をブロッキング変数に変換し、
決定されたプロセスの評価順序に従って、前記レジスタ変数が前記ブロッキング変数へ変換された回路モデルに論理シミュレーションを実行する、
処理をコンピュータが実行するシミュレーション方法。
前記回路モデルに含まれるプロセス及びレジスタ変数の間における読み込み及び書き込みの関係を抽出し、
抽出された関係が所定の条件を満たすレジスタ変数の個数に基づいて前記プロセスの評価順序を決定し、
前記回路モデルに含まれるレジスタ変数のうち、決定された前記プロセスの評価順序で前記条件を満たすレジスタ変数をブロッキング変数に変換する、
処理をコンピュータに実行させる記述変換プログラム。
前記回路モデルに含まれるプロセス及びレジスタ変数の間における読み込み及び書き込みの関係を抽出し、
抽出された関係が所定の条件を満たすレジスタ変数の個数に基づいて前記プロセスの評価順序を決定し、
前記回路モデルに含まれるレジスタ変数のうち、決定された前記プロセスの評価順序で前記条件を満たすレジスタ変数をブロッキング変数に変換し、
決定されたプロセスの評価順序に従って、前記レジスタ変数が前記ブロッキング変数へ変換された回路モデルに論理シミュレーションを実行する、
処理をコンピュータに実行させるシミュレーションプログラム。
前記回路モデルに含まれるプロセス及びレジスタ変数の間における読み込み及び書き込みの関係を抽出する抽出部と、
抽出された関係が所定の条件を満たすレジスタ変数の個数に基づいて前記プロセスの評価順序を決定する決定部と、
前記回路モデルに含まれるレジスタ変数のうち、決定された前記プロセスの評価順序で前記条件を満たすレジスタ変数をブロッキング変数に変換する変換部と、
を有することを特徴とする記述変換装置。
前記回路モデルに含まれるプロセス及びレジスタ変数の間における読み込み及び書き込みの関係を抽出する抽出部と、
抽出された関係が所定の条件を満たすレジスタ変数の個数に基づいて前記プロセスの評価順序を決定する決定部と、
前記回路モデルに含まれるレジスタ変数のうち、決定された前記プロセスの評価順序で前記条件を満たすレジスタ変数をブロッキング変数に変換する変換部と、
決定されたプロセスの評価順序に従って、前記レジスタ変数が前記ブロッキング変数へ変換された回路モデルに論理シミュレーションを実行する実行部と、
を有することを特徴とするシミュレーション装置。
11 通信インタフェース
13 記憶部
13A 関係データ
15 制御部
15A HDL記述取得部
15B 関係抽出部
15C 評価順序決定部
15D レジスタ変数変換部
15E シミュレーション実行部
50 クライアント端末
Claims (7)
- ハードウェア記述言語で記述された回路モデルを取得し、
前記回路モデルに含まれるプロセス及びレジスタ変数の間における読み込み及び書き込みの関係を抽出し、
抽出された関係が所定の条件を満たすレジスタ変数の個数に基づいて前記プロセスの評価順序を決定し、
前記回路モデルに含まれるレジスタ変数のうち、決定された前記プロセスの評価順序で前記条件を満たすレジスタ変数をブロッキング変数に変換する、
処理をコンピュータが実行する記述変換方法。 - 前記決定する処理は、抽出された関係が所定の条件を満たすレジスタ変数の個数が最大となるプロセスの評価順序を決定することを特徴とする請求項1に記載の記述変換方法。
- 前記決定する処理は、順序回路に対応するプロセスによる読み込みが書き込みよりも先に実行され、組合せ回路に対応するプロセスによる書き込みが読み込みよりも先に実行され、かつ、複数のプロセスによる同一のレジスタ変数への書き込みが順序通りに実行される条件を満たすレジスタ変数の個数が最大となるプロセスの評価順序を決定する請求項2に記載の記述変換方法。
- 前記レジスタ変数が前記ブロッキング変数へ変換された回路モデルを所定のシミュレータへ出力すると共に、決定されたプロセスの評価順序を前記シミュレータの制御情報として前記シミュレータへ出力する処理を前記コンピュータがさらに実行することを特徴とする請求項1、2または3に記載の記述変換方法。
- 前記取得する処理によりマルチスレッド対応の回路モデルが取得された場合、スレッドごとに、当該スレッドに割り当てられたプロセス及びレジスタ変数を入力とし、前記抽出する処理、前記決定する処理および前記変換する処理を行うことを特徴とする請求項1~4のいずれか1つに記載の記述変換方法。
- ハードウェア記述言語で記述された回路モデルを取得し、
前記回路モデルに含まれるプロセス及びレジスタ変数の間における読み込み及び書き込みの関係を抽出し、
抽出された関係が所定の条件を満たすレジスタ変数の個数に基づいて前記プロセスの評価順序を決定し、
前記回路モデルに含まれるレジスタ変数のうち、決定された前記プロセスの評価順序で前記条件を満たすレジスタ変数をブロッキング変数に変換し、
決定されたプロセスの評価順序に従って、前記レジスタ変数が前記ブロッキング変数へ変換された回路モデルに論理シミュレーションを実行する、
処理をコンピュータが実行するシミュレーション方法。 - ハードウェア記述言語で記述された回路モデルを取得し、
前記回路モデルに含まれるプロセス及びレジスタ変数の間における読み込み及び書き込みの関係を抽出し、
抽出された関係が所定の条件を満たすレジスタ変数の個数に基づいて前記プロセスの評価順序を決定し、
前記回路モデルに含まれるレジスタ変数のうち、決定された前記プロセスの評価順序で前記条件を満たすレジスタ変数をブロッキング変数に変換する、
処理をコンピュータに実行させる記述変換プログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019042590A JP7215244B2 (ja) | 2019-03-08 | 2019-03-08 | 記述変換方法、シミュレーション方法及び記述変換プログラム |
US16/789,664 US11068632B2 (en) | 2019-03-08 | 2020-02-13 | Simulation apparatus, description conversion method and simulation method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019042590A JP7215244B2 (ja) | 2019-03-08 | 2019-03-08 | 記述変換方法、シミュレーション方法及び記述変換プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020144765A JP2020144765A (ja) | 2020-09-10 |
JP7215244B2 true JP7215244B2 (ja) | 2023-01-31 |
Family
ID=72336457
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019042590A Active JP7215244B2 (ja) | 2019-03-08 | 2019-03-08 | 記述変換方法、シミュレーション方法及び記述変換プログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US11068632B2 (ja) |
JP (1) | JP7215244B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117112452B (zh) * | 2023-08-24 | 2024-04-02 | 上海合芯数字科技有限公司 | 寄存器模拟配置方法、装置、计算机设备和存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010237858A (ja) | 2009-03-30 | 2010-10-21 | Sharp Corp | 高位合成装置および高位合成方法、半導体集積回路の製造方法、制御プログラム、可読記憶媒体 |
JP2013196245A (ja) | 2012-03-19 | 2013-09-30 | Renesas Electronics Corp | シミュレーション方法、シミュレーション装置及びシミュレーションプログラム |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03278447A (ja) * | 1990-03-28 | 1991-12-10 | Toshiba Corp | Lsi設計支援装置 |
JPH08106476A (ja) | 1994-10-05 | 1996-04-23 | Matsushita Electric Ind Co Ltd | 論理回路自動合成方法 |
JPH1027185A (ja) | 1996-07-10 | 1998-01-27 | Hitachi Ltd | 論理シミュレーション装置 |
JPH1185810A (ja) * | 1997-09-09 | 1999-03-30 | Mitsubishi Electric Corp | 半導体集積回路の論理回路検証装置および論理回路検証装置における論理回路検証方法 |
JPH1185832A (ja) | 1997-09-16 | 1999-03-30 | Toshiba Corp | 回路変換方法および回路設計支援装置および記録媒体 |
JP2001338008A (ja) | 2000-05-26 | 2001-12-07 | Nec Microsystems Ltd | 論理等価検証方法及びその方法を実施する装置 |
US7080365B2 (en) * | 2001-08-17 | 2006-07-18 | Sun Microsystems, Inc. | Method and apparatus for simulation system compiler |
US20130304450A1 (en) * | 2012-05-08 | 2013-11-14 | StarDFX Technologies, Inc. | Method for Unified High-Level Hardware Description Language Simulation Based on Parallel Computing Platforms |
-
2019
- 2019-03-08 JP JP2019042590A patent/JP7215244B2/ja active Active
-
2020
- 2020-02-13 US US16/789,664 patent/US11068632B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010237858A (ja) | 2009-03-30 | 2010-10-21 | Sharp Corp | 高位合成装置および高位合成方法、半導体集積回路の製造方法、制御プログラム、可読記憶媒体 |
JP2013196245A (ja) | 2012-03-19 | 2013-09-30 | Renesas Electronics Corp | シミュレーション方法、シミュレーション装置及びシミュレーションプログラム |
Non-Patent Citations (1)
Title |
---|
松本敦 外1名,高位仕様記述からの非同期式回路自動合成について,電子情報通信学会論文誌,社団法人電子情報通信学会,2006年,Vol. J89-D, No. 4,pp. 660-673 |
Also Published As
Publication number | Publication date |
---|---|
US20200285793A1 (en) | 2020-09-10 |
US11068632B2 (en) | 2021-07-20 |
JP2020144765A (ja) | 2020-09-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4994393B2 (ja) | 単一のマスターモデルから異なる抽象化レベルの複数のモデルを生成するシステムと方法 | |
US20130179142A1 (en) | Distributed parallel simulation method and recording medium for storing the method | |
US8594988B1 (en) | Method and apparatus for circuit simulation using parallel computing | |
US8589837B1 (en) | Constructing inductive counterexamples in a multi-algorithm verification framework | |
JP7215244B2 (ja) | 記述変換方法、シミュレーション方法及び記述変換プログラム | |
US10209990B2 (en) | Conditional atomic operations in single instruction multiple data processors | |
JP5233355B2 (ja) | プロパティ生成システムおよびプロパティ検証システム | |
US8418095B1 (en) | Compilation and simulation of a circuit design | |
US9639644B1 (en) | Method and apparatus for master-clone optimization during circuit analysis | |
US10599802B2 (en) | Methods for automatic engineering change order (ECO) bug fixing in integrated circuit design | |
US20140325468A1 (en) | Storage medium, and generation apparatus for generating transactions for performance evaluation | |
EP3910521A1 (en) | Simulator and simulation method | |
CN114416460A (zh) | 分析基带性能的方法和仿真系统 | |
US20190012418A1 (en) | Simulation program, method, and device | |
JP5390464B2 (ja) | シミュレーション装置、シミュレーション装置の制御方法およびプログラム | |
JP5262678B2 (ja) | 動作合成システム、動作合成方法、及び動作合成用プログラム | |
US11734080B1 (en) | Memory efficient and scalable approach to stimulus (waveform) reading | |
US8813005B1 (en) | Debugging using tagged flip-flops | |
CN113688587B (zh) | 一种电路布图的生成方法、装置、计算机设备及存储介质 | |
JP5233354B2 (ja) | プロパティ検証システム、プロパティ検証方法、及びプログラム | |
US8775987B1 (en) | Generation of a replay module for simulation of a circuit design | |
US12039240B2 (en) | Integrated circuit simulation and design method and system thereof | |
US20230205969A1 (en) | Techniques for modeling and verification of convergence for hierarchical domain crossings | |
US20220147676A1 (en) | Integrated circuit simulation and design method and system thereof | |
US10908934B2 (en) | Simulation program, method, and device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20211208 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20221209 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20221220 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230102 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7215244 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |