Curve Curve

News! EVE’s ZeBu-Server Supports Smart Debug Methodology


ZeBuスマートデバッグ(Smart Debug)手法の概要

EVEのZeBu高速エミュレータは、一連の優れたデバッグ機能を統合し、ASIC開発中に、速やかにバグを発見し修正することを可能にします。とはいえ、このテクノロジをもってしても、数十億サイクルにわたる極めて深い状態空間に存在する複雑なバグを見つけ出すのには十分ではありません。 また、テストを再現し、数十億サイクルのデータにあるデバッグ情報だけを取り出して、効率的にデバッグの収束を達成できるようにするために、効果的な"スマート"デバッグの手法が必要となります。


伝統的なエミュレータのデバッグ技術

伝統的なエミュレータにおけるデバッグでは、ロジックアナライザ(LA)とトリガの使用に基づいており、
一般的にインサーキットエミュレーション(ICE)の環境で使用されています。 信号は、ボード上にある
トレースメモリに結線され、LAによって、信号のキャプチャが行われます。この手法は、エミュレーション
を全速で実行できる利点がありますが、固定されたトレース窓の幅が制限されていることが欠点です。
トレース窓に制限があるため、最適なトリガの選択が、デバッグの成功において、非常に重要になります。
特に、テストが決定論的でないICEの環境では、不具合やトリガが、実行するたびに異なるサイクルで
発生する可能性があります。


トランザクションベースのエミュレーション
Debug

デバッグ
ZeBuのトランザクションベース・エミュレーションはサイクル精度かつ完全な再現性がある環境を提供し、
これこそがスマートデバッグ手法を実現します。 トランザクタは非決定論的なICE環境においても、
スマートデバッグ機能の実現
をサポートしています!


多層的な抽象度レベルの活用

ZeBuのデバッグ技術は、アクセシビリティと実行性能の間のトレードオフを調整できるデザインへのアクセスに
ついて、複数の形態を提供します。 ZeBuのスマートデバッグ手法としては、まずは、最高速のプローブおよび
トレーサーを利用し、障害の時間と場所を切り分けます。次に、広い範囲で、アサーションやチェッカー、
プローブなどを利用し、問題に関するトリガやサブシステムを明確にします。最後に設計者が詳細な分析が
できるように、サブシステムの完全な波形を生成します。


マルチフェーズ、マルチパス手法
Smart Debug

スマートデバッグ
ZeBuのスマートデバッグ手法は3つのフェーズに分けられるマルチパス手法です。

  • 準備フェーズ - デザインのエミュレーションの前に、スタティックプローブ(Static Probes), フレキシブルプローブ(Flexible Probes)及び、SystemVerilogアサーションをデザインとともにコンパイルします。ZEMI-3 トランザクタやLAトリガをRTB(Reconfigurable Testbench)に追加します。
  • 解析フェーズ - テストがフェイルした後、テストを再現し、ZeBuのランタイム環境、SWデバッガおよびコンパイル済みのプローブ、アサーションとチェッカー/トレーサーを用いて、フェイルしたサイクル/トリガを正確に切り分けます。同様に、疑わしいサブブロックも切り分けます。
  • 詳細デバッグフェーズ - トリガ/フェイルポイントに迅速に達するために、フェイルしたテストの再現、またはセーブ/リストア機能を活用します。その後、ダイナミックプローブ(Dynamic Probes)を使用し、完全な波形生成を行います。
    そして、使い慣れた波形表示ツールを使用し、詳細なデバッグを行います。


次ページ: スマートデバッグ手法:準備フェーズ

Curve Curve