JP2007004356A - システム検証ツール - Google Patents

システム検証ツール Download PDF

Info

Publication number
JP2007004356A
JP2007004356A JP2005181900A JP2005181900A JP2007004356A JP 2007004356 A JP2007004356 A JP 2007004356A JP 2005181900 A JP2005181900 A JP 2005181900A JP 2005181900 A JP2005181900 A JP 2005181900A JP 2007004356 A JP2007004356 A JP 2007004356A
Authority
JP
Japan
Prior art keywords
simulation
time
functional module
prediction
model
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
JP2005181900A
Other languages
English (en)
Inventor
Tadaoki Ogiwara
忠意 荻原
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.)
Canon Inc
Original Assignee
Canon 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 Canon Inc filed Critical Canon Inc
Priority to JP2005181900A priority Critical patent/JP2007004356A/ja
Publication of JP2007004356A publication Critical patent/JP2007004356A/ja
Withdrawn legal-status Critical Current

Links

Images

Abstract

【課題】 システム全体に対する各機能モジュールが費やす時間の割合を表示し、容易に最適な速度と精度のモデルを組み合わせてシミュレーションを行う。
【解決手段】 機能モジュールを選択する手段と、機能モジュールのシミュレーションモデルを選択する手段と、テストベクタを選択する手段と、テストベクタにおける機能モジュール毎のシミュレーション時間を予測する手段と、各機能モジュールの予測された時間を基にシステム全体のシミュレーション時間を予測する手段と、予測結果の出力手段と、システム全体で各機能モジュールが費やすシミュレーション時間の割合を表示する手段と、から構成されるシステム検証ツール。
【選択図】 図1

Description

本発明は、システムの設計ツールにおいて、機能モジュール毎にシミュレーションモデルを選択することができる手段を有し、設計者がシミュレーションを実行するためにシミュレーションモデルを選択し、システム全体のシミュレーションを行うためのシミュレーションモデルを生成することのできる設計ツールに関するものである。
プロセス技術の進歩によりLSIの集積度が増大し、これまでボードで実現していたシステムをシステムLSIとして1チップ上に搭載することが可能となった。チップ上に搭載する機能モジュールも多様化し、回路規模が増大している。
これに伴い、システムLSIを効率的に設計する手法として、システム記述言語による設計が普及してきた。
システム記述言語により記述したモジュールを、ブロック図入力画面で入力し、システムLSIの設計を行うことが可能になっている。
システムLSIの設計が終了すると、設計支援ツールからシミュレーションモデルを生成し、シミュレータを起動してシステムシミュレーションを行い、システムLSIの機能や性能を確認できるものである。
システム記述言語によるモジュール記述には、記述の抽象度により以下の3種類の記述レベルが一般に知られている。
トランザクションレベル(TL):
モジュール間の通信を捉えて機能を記述する抽象度レベルである。通信の開始および終了の時間、通信データにより動作するため、クロックに対する精度は非常に低い。イベントにより機能をシミュレートするため、シミュレーション速度は非常に速い。
バスサイクルアキュレート(BCA):
モジュールの入力と出力のイベントとして機能を記述する抽象度レベルである。動作クロックに対し、入力および出力部で正確にシミュレートすることができる。
レジスタトランスファレベル(RTL):
レジスタファイル間の同期転送を捉えて回路を記述する抽象度レベルである。動作クロックに対し、正確に機能動作をシミュレートすることができ精度が非常に高い。1クロック毎に機能をシミュレートするため、シミュレーション速度は非常に遅い。
抽象度が高いほど、シミュレーション速度は速く、抽象度が低いほど、シミュレーション精度は高くなる。システムLSIの設計では、抽象度の高い記述が徐々に抽象度の低い記述へと、モジュールの機能が詳細化されていく。
設計者は、各種抽象度で記述されたモジュールを選択し、システムLSIの設計を行うのが一般的である。
又、従来例としては、例えば特許文献1をあげることが出来る。
特開平11−191116号公報
しかしながら、上記従来例では、設計者がシミュレーションにかかる時間を把握することができず、不適切な速度と精度のモデルを組み合わせてシミュレーションを行う結果となっていた。このため、シミュレーションの目的に合った精度で結果を得ることができず、また、シミュレーションに膨大な時間をかけることになっていた。また、最適なシミュレーションモデルの組み合わせでシミュレーションを行うためには、設計者が経験を必要とし、すぐに実現できるものではなかった。
上記の目的を達成するために本発明では、設計者がシステムを構成する機能モジュールを選択し、当該機能モジュールに対するシミュレーションモデルを選択すると、シミュレーションモデルを解析し、シミュレーションにかかる時間を予測計算し、システム全体と機能モジュール毎のシミュレーション時間、機能モジュール毎のシステム全体に対するシミュレーション時間などの割合をブロック図入力画面上に表示することを特徴とする。
設計者は、シミュレーションモデルを選択すると同時に、シミュレーションにかかる時間をシステム全体についてだけでなく、機能モジュール毎にも知ることができ、さらに割合を容易に知ることができるので、簡易に最適な速度および精度のシミュレーションモデルを組み合わせ、シミュレーションを実行することが可能となる。
以上説明したように、本発明において、シミュレーションにかかる時間を予測し、システム全体のシミュレーション予測時間だけでなく、機能モジュール毎のシミュレーション予測時間と全体での割合をも画面上に表示するようにしたので、設計者がシステム全体のシミュレーションにかかる時間を容易に知ることができるのに加え、機能モジュール毎の時間、全体での割合をも容易に知ることができ、より最適なシミュレーションモデルの組み合わせでシミュレーションを実行できる。これにより、シミュレーション時間の膨大化、シミュレーション時間を短くすることによる精度の低下といった問題がなくなる。また、シミュレーションモデルのプロセス数やコード量を予測に使用することにより、精度の高い予測が可能である。さらに、シミュレーションを繰り返すことにより、予測に使う係数を計算し直すことで、システム全体のシミュレーション時間、機能モジュール毎のシミュレーション時間を非常に高い精度で求めることが可能となる。
本発明の実施の形態について図面を参照して説明する。
(第1の実施例)
図1は本発明のシステム検証ツールの1実施例を示す図である。図2は本発明の第1の実施例における構成の1例である。
図1において、101はブロック図の入力および編集を行うブロック図表示部である。設計者はマウス(210)またはキーボード(209)を使い、ブロック図表示部(101)上でシステムを構成する機能モジュールの選択を行う。102は各ブロックに対しシミュレーションモデルを選択するモデル選択部である。設計者は、機能モジュールに対するシミュレーションモデルの選択を実行する。モデル選択部(102)は、ブロック図表示部(101)内のブロック図を構成するシンボルのうち1つを選択することで表示させることができる。ここで、ブロック図は選択されたシンボルにより色分けされることも考えられ、これにより可読性が増す。103はシステム全体のシミュレーションにかかる予測時間を表示するシミュレーション予測結果全体表示部である。104は各機能モジュールのシミュレーションにかかる予測時間のシステム全体における割合(%)を表示するシミュレーション予測結果個別表示部である。これは、割合のほか、時間(h, min)や速度(cycle/sec)で表示することも考えられる。また、文字ではなく、グラフで表示することも考えられる。
図2において、201はブロック図編集制御部である。ブロック図の追加・削除および編集を制御し、編集された設計データを設計データベース(203)へ格納する手段である。ブロック図編集制御部(201)のブロック図入力・削除・編集の機能は従来からなるCAD技術と同様である。ブロック図編集制御部(201)は、画面編集制御部(2011)、モデル選択制御部(2012)を持つ。画面編集制御部(2011)は、設計対象のブロック図を構成するシンボルやラインの追加・削除や編集を制御するための手段であり、機能モジュールを選択する手段である。ここで、シンボルは機能モジュールを代表し、ラインはバスや信号線を代表したものとして扱う。ブロック図表示部(101)上では、機能モジュールを代表するシンボルは箱状に、バスや信号線を代表するラインは線状に表示される。モデル選択制御部(2012)は、画面編集制御部(2011)により追加・削除および編集された機能モジュールまたはバスに対し、シミュレーションモデルの選択を行い管理するための手段である。選択可能なシミュレーションモデルは、設計データベース(203)内にライブラリとして保持されている。202はシミュレーション時間予測部である。ブロック図編集制御部(201)において、機能モジュールまたはバスに対するシミュレーションモデルの選択が実行されると、機能モジュールまたはバス毎にシミュレーション時間を予測し、システム全体のシミュレーション時間を計算し、システム全体のシミュレーション予測時間をシミュレーション予測結果全体表示部(103)へ表示し、各機能モジュールのシミュレーション予測時間のシステム全体における割合をシミュレーション予測結果個別表示部(104)へ表示する。シミュレーション時間予測部(202)は、シミュレーション予測時間演算部(2021)、予測時間表示制御部(2022)、予測時間割合算出部(2023)、予測時間割合表示制御部(2024)を持つ。シミュレーション予測時間演算部(2021)は、機能モジュールまたはバス毎にシミュレーション時間を予測し、システム全体のシミュレーション時間を計算するための手段である。シミュレーション時間係数データベース(204)からシミュレーションモデル毎に与えられた係数を使用して、シミュレーション時間を演算する。予測時間表示制御部(2022)は、シミュレーション予測時間演算部(2021)により計算されたシミュレーション時間をシミュレーション予測結果全体表示部(103)とシミュレーション予測結果個別表示部(104)へ出力するための手段である。さらに、シミュレーション予測結果個別表示部(104)には、予測時間割合算出部(2023)で算出された各機能モジュールのシステム全体における割合が、予測時間割合表示制御部(2024)により表示される。ユーザインタフェース制御部(205)は、ブロック図編集制御部(201)、シミュレーション時間予測部(202)とインタフェースをとる手段である。出力部(206)を介してモニタ(207)へ設計情報を表示し、入力部(208)を介して設計者からの入力を受け付ける。出力部(206)は、モニタ(207)へ設計情報を表示するための手段である。入力部(208)は、設計者がキーボード(209)およびマウス(210)から入力した情報を受けるための手段である。キーボード(209)およびマウス(210)は、設計者はブロック図の追加・削除および編集を実行し、シミュレーションモデルの選択を行うための入力手段である。設計データベース(203)は、設計情報をデータベースとして記憶する手段である。ブロック図編集制御部(201)により作成されたブロック図、既存モジュールの設計情報、各機能モジュールに対応した各種シミュレーションモデル、バスの設計情報、バスに対応した各種シミュレーションモデルを格納している。テストベクタ選択制御部(211)は、システムのシミュレーションに使用するテストベクタの選択を行い管理するための手段である。選択可能なテストベクタは、テストデータベース(212)内に保持されている。テストデータベース(212)は、テストベクタをデータベースとして記憶する手段である。
図3は処理の流れに従い動作を説明するフローチャートである。S301において、設計者がブロック図表示部(101)に表示されているブロック図から、ブロックを構成している機能モジュールのうち1つを選択する。設計者が機能モジュールの選択を行い、シミュレーションモデル選択のためのコマンドを入力すると、モデル選択部(102)が表示される。次に、設計者により機能モジュールのシミュレーションモデルが選択される(S302)。設計者は、ブロック図内の機能モジュールのうちモデルを変更したい機能モジュールを選択する。設計者によりブロック図内の機能モジュールが1つ選択されると、モデル選択部(102)が画面上に表示される。機能モジュールのシミュレーションモデルは、設計データベース(203)内に格納されているものが表示される。機能モジュールに対し、TL記述、BCA記述、RTL記述の3種類が格納されていれば、モデル選択部(102)に3種類のシミュレーションモデルが表示され選択可能となる。TL記述の1種類しか格納されていない場合には、モデル選択部(102)には1種類のシミュレーションモデルが表示される。設計者が機能モジュールのシミュレーションモデルを選択しない場合、機能モジュールのシミュレーションモデルは最も抽象度の高いものが選択される。通常、TL記述のシミュレーションモデルが選択されることになる。S303において、選択すべき機能モジュールが全て選択されているかを判断し、選択すべき機能モジュールが残っている場合は、機能モジュールの選択およびシミュレーションモデルの選択を繰り返す。設計者が、機能モジュールの選択および機能モジュールに対するシミュレーションモデルの選択を終了すると、テストベクタの選択を実行する(S304)。システムのシミュレーションに使用するテストベクタを、テストデータベース(212)から選択し指定する。設計者によるテストベクタの選択が終了すると、シミュレーション時間予測部(202)で、機能モジュール毎のシミュレーション時間を予測し、システム全体のシミュレーションにかかる時間の計算、各機能モジュールのシステム全体に対するシミュレーション時間の割合を算出する(S305,S306)。シミュレーション時間の予測計算のために、TL記述、BCA記述、RTL記述のシミュレーション毎のシミュレーション時間係数がシミュレーション時間係数データベース(204)に格納されている。シミュレーション時間係数は、記述毎のシミュレーション実時間から求められた係数である。シミュレーションに最も時間のかかるRTL記述に対する係数が最も大きくなる。シミュレーションにかかる時間が短いTL記述に対する係数が最も小さい。RTL記述に対する係数はTL記述に対する係数の数百倍から千倍になる。機能モジュールに対応したシミュレーションモデルに含まれるプロセス数、シミュレーション時間係数から機能モジュール毎の予測シミュレーション時間が計算される。システム全体の予測シミュレーション時間は、機能モジュール毎の予測シミュレーション時間の和として計算される。既存モジュールに対しては、予め該当するモジュールのシミュレーションモデルに対するシミュレーション時間を測定しておき、シミュレーション時間係数データベース(204)に格納しておくことも可能である。この場合、既存機能モジュールのシミュレーション予測時間として測定したシミュレーション時間を使用し、シミュレーション予測を行う。機能モジュール毎のシミュレーション時間の予測とシステム全体のシミュレーション時間の計算、各機能モジュールのシステム全体に対するシミュレーション時間の割合が算出されると、シミュレーション予測時間全体表示部(103)とシミュレーション予測結果個別表示部(104)に予測結果、算出結果が表示される(S307)。機能モジュールの選択および機能モジュールに対するシミュレーションモデルの選択により作成されたシステムの設計情報を設計データベース(203)へ記憶する。
(第2の実施例)
第1の実施例では、シミュレーション時間の予測に、シミュレーションモデル内のプロセス数を使用したが、プロセスのコード量を使用することも可能である。
(第3の実施例)
第1の実施例では、シミュレーション時間の予測に、シミュレーションモデル内のプロセス数を使用したが、シミュレーションの実行毎に、シミュレーション時間を測定し、予測時間係数Kを計算することにより、次のシミュレーション時間予測に使用することも可能である。
第1の実施例の画面表示例を示す図である。 第1の実施例の構成例を示す図である。 第1の実施例の処理を示すフローチャートである。
符号の説明
101 ブロック図表示部
102 モデル選択部
103 シミュレーション予測結果全体表示部
104 シミュレーション予測結果個別表示部
201 ブロック図編集制御部
2011 画面編集制御部
2012 モデル選択制御部
202 シミュレーション時間予測部
2021 シミュレーション予測時間演算部
2022 シミュレーション予測時間表示制御部
2023 シミュレーション予測時間割合算出部
2024 シミュレーション予測時間割合表示制御部
203 設計データベース
204 シミュレーション時間係数データベース
205 ユーザインタフェース制御部
206 出力部
207 モニタ
208 入力部
209 キーボード
210 マウス
211 テストベクタ選択制御部
212 テストデータベース

Claims (1)

  1. システムを構成する少なくとも一つの機能モジュールを指定する手段と、
    当該機能モジュールのシミュレーションモデルを複数の抽象度から選択する手段と、
    テストベクタを選択する手段と、
    当該テストベクタにおける機能モジュールのシミュレーションモデルのシミュレーション時間を予測する手段と、
    予測結果の出力手段と、
    を有することを特徴とするシステム設計ツールにおいて、
    当該機能モジュール毎のシミュレーション時間を表示する手段と、
    当該機能モジュール毎のシステム全体に対するシミュレーション時間の割合を算出する手段と、
    算出結果を表示する手段と、
    を有することを特徴とするシステム設計ツール。
JP2005181900A 2005-06-22 2005-06-22 システム検証ツール Withdrawn JP2007004356A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005181900A JP2007004356A (ja) 2005-06-22 2005-06-22 システム検証ツール

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005181900A JP2007004356A (ja) 2005-06-22 2005-06-22 システム検証ツール

Publications (1)

Publication Number Publication Date
JP2007004356A true JP2007004356A (ja) 2007-01-11

Family

ID=37689941

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005181900A Withdrawn JP2007004356A (ja) 2005-06-22 2005-06-22 システム検証ツール

Country Status (1)

Country Link
JP (1) JP2007004356A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8924199B2 (en) 2011-01-28 2014-12-30 Fujitsu Limited Voice correction device, voice correction method, and recording medium storing voice correction program

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8924199B2 (en) 2011-01-28 2014-12-30 Fujitsu Limited Voice correction device, voice correction method, and recording medium storing voice correction program

Similar Documents

Publication Publication Date Title
US8719742B2 (en) Conversion of circuit description to an abstract model of the circuit
JP3027009B2 (ja) 設計取り込みシステム
CN104573169B (zh) 以自动流水线操作能力设计集成电路的方法和工具
WO2009100208A1 (en) Clock tree synthesis graphical user interface
JP2009517764A (ja) 階層的soc設計でマージするタイミング規制
US9262359B1 (en) Method and system for implementing pipeline flip-flops
US6546536B1 (en) System and method for disabling schematics
KR100704577B1 (ko) 타이밍 버지트 설계 방법
JP5444985B2 (ja) 情報処理装置
JP2008299464A (ja) 消費電力計算方法、消費電力計算プログラムおよび消費電力計算装置
JP2010033493A (ja) レイアウト配線混雑予測装置およびその方法、並びにプログラム
JP2009223661A (ja) 検証支援プログラム、該プログラムを記録した記録媒体、検証支援装置、および検証支援方法
JP2007004356A (ja) システム検証ツール
US6928401B1 (en) Interactive repeater insertion simulator (IRIS) system and method
WO2001035283A2 (en) System for performing parallel circuit simulation in a high level description language
JP2006285860A (ja) シミュレーションモデル生成方法およびその装置
JP2007004357A (ja) システム設計ツール
JP2006215928A (ja) システム設計支援装置及び方法
JP4673689B2 (ja) 論理合成方法及び論理合成装置
JP4764687B2 (ja) 設計支援システム及び情報処理方法
JP2006172317A (ja) 情報処理装置、情報処理方法
JP2006201825A (ja) 集積回路の遅延解析方法及び遅延解析プログラム
RU2319196C1 (ru) Устройство поиска минимального значения интенсивности в системах с линейной организацией при направленной передаче информации
JP2009205449A (ja) マクロ内端子配線を考慮したネットリストによって信号の遅延時間を予測する設計方法、及び、プログラム
JP2007026363A (ja) システム設計ツール

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20080902