ModelSim

ASICとFPGAの設計

メンター・グラフィックスは、Verilog、VHDL、SystemCに対応した統合デバッグ環境にシングル・カーネル・シミュレータ(SKS)を業界で初めて組み合わせました。業界をリードするネイティブなSKS性能と最高の統合デバッグ/解析環境を統合したModelSimは、ASICおよびFPGA設計の理想的なシミュレータです。業界の各種標準規格とプラットフォームを幅広くサポートしているため、ほとんどのプロセスやツール・フローに容易に導入できます。

概要

  • リグレッション・スイートにおける最も高速なスループットを実現する統合多言語シミュレーション・エンジン
  • 設計用のVerilog、SystemVerilog、VHDL、SystemCをネイティブにサポートし、最先端の設計環境を効果的に検証
  • 高速デバッグで因果関係を追跡できる多言語デバッグ環境
  • 高度なコード・カバレッジと解析ツールにより、短期間でカバレッジを達成

MODELSIMの操作

Selecting an Embedded OS

オンデマンドWebセミナー[英語]: ModelSimにおけるコード・カバレッジ

技術文献を表示[英語]

 

Selecting an Embedded OS

オンデマンドWebセミナー[英語]: ModelSimを使用したシミュレーション・ランタイムとデバッグ生産性の改善

技術文献を表示[英語]

 

特長

高度なコード・カバレッジ

ModelSimの高度なコード・カバレッジ機能は、非常に使いやすく、体系的な検証のための重要なメトリクスも用意されています。カバレッジ情報はすべて、UCDB(Unified Coverage DataBase)と呼ばれる非常に効率の高いデータベースに収集され、一元化されます。マージやテスト・ランキングなどのコード・カバレッジ・データを解析するユーティリティも用意されています。カバレッジの結果は、シミュレーション後にインタラクティブに表示することも、複数のシミュレーションの実行結果をマージしてから表示することもできます。コード・カバレッジ・メトリクスはインスタンス単位または設計単位でレポートできるため、カバレッジ・データを柔軟に管理できます。

サポートされているカバレッジ・タイプ

  • ステートメント・カバレッジ: 1回のシミュレーションで実行されたステートメントの数
  • ブランチ・カバレッジ: HDL実行の制御フローに影響する式およびcase文
  • コンディション・カバレッジ: 分岐条件の結果が真となる要素と偽となる要素に分類
  • エクスプレッション・カバレッジ: コンディション・カバレッジと同様。分岐の決定の代わりに信号のコンカレント代入文が対象
  • フォーカス・エクスプレッション・カバレッジ:式への独立した各入力を考慮してカバレッジ結果を判定する方法。エクスプレッション・カバレッジのデータを提示
  • 改良型トグル・カバレッジ: デフォルト・モードでは、LowからHighおよびHighからLowへの遷移をカウント。拡張モードでは、起点または終点のいずれかがXとなる遷移をカウント
  • ステート・マシン(FSM)カバレッジ: ステートおよびステート遷移のカバレッジ

混在HDLシミュレーション

ModelSimは優れた性能と大規模対応に加え、高度なコード・カバレッジとデバッグ機能を備えるなど、大規模なブロックやシステムをシミュレーションしてASICのゲートレベル・サインオフを達成するために必要な条件が揃っています。Verilog、SystemVerilog for Design、VHDL、SystemCを包括的にサポートし、単一/多言語の設計検証環境に強固な基盤を提供します。ModelSimの使いやすさと統合デバッグ/シミュレーション環境は、今日のFPGA設計者に対して、ニーズに応じて増強できる高度な機能と生産性を改善できる環境の両方を提供します。

効果的なデバッグ環境

ModelSimには、Verilog、VHDL、SystemCに対応した直観的な機能が幅広く用意されており、ASICとFPGAのどちらにも最適なデバッグ環境を提供します。

インテリジェントに設計されたデバッグ環境によって、設計エラーを容易に検出できます。ModelSimのデバッグ環境は、設計データを効率的な表示およびあらゆる言語の解析とデバッグに対応しています。

ModelSimのデバッグおよび解析機能は、保存したシミュレーション結果に対して実行することも、シミュレーション中にリアルタイムで実行することもできます。例えば、カバレッジ・ビューアではソースコードを解析して、コード・カバレッジの結果(FSMのステートと遷移、ステートメント、エクスプレッション、ブランチ、トグルなどのカバレッジを含む)をアノテーションすることができます。

信号の値をソースウィンドウでアノテーションして波形ビューアで表示することもできます。これにより、オブジェクトとその宣言の間、および参照したファイルの間でハイパーリンクのナビゲーションが行えるようになり、デバッグ時の移動が容易になります。

レース状態、デルタ、イベント・アクティビティは、リストおよび波形ウィンドウで解析できます。ユーザ定義の列挙値を容易に定義できるため、シミュレーション結果を短時間で理解することができます。さらにデバッグの生産性を高めるために、ModelSimにはグラフ形式およびテキスト形式のデータフロー機能も用意されています。