Real Intent、フォーマル検証とマルチクロックの問を解するツールをデモ
盜EDAベンチャーのReal Intent社は、先月にパシフィコ横pで行われたEDS Fairにおいて、b理設の検証作業を楽にするツールAscentと、数のクロックが引きこすCDC(clock domain crossing)問を解するツールMeridianをデモした。k般に、b理LSI設では、HDLというLSI設言語でb理を記述したRTLコードを書き終えると、そのコードに間違いがないかを検証する。検証を終えたらb理合成ツールによりv路を收する。それを配配線に落とし、シミュレーションで確認する。
Ascentは、RTLコードが間違っていないかどうかを検証するためのツールであり、フォーマル検証ツールと}ばれている。来は、入のテストベクターを作りその出値を予R値と比較して誤りの~無を検出していた。これでは作成するテストベクターすべての組み合わせをカバーできない。このため、数学的な}法を使ってすべての組み合わせをカバーできるようにするのが、最Z、登場してきたフォーマル検証である。このAscentはO動的にフォーマル検証する。テストベクターを作る要がない。設したRTLコードのどこが間違っているかを出してくれるため、設vはデバッグだけを行えばよい。
AscentにはLint解析機Δあり、誤り個所を指~する。シンタックス(構文)や合成のミスマッチなどチェックし、}順も解析する。チェックするところは、データバスが合しないか、出がフローティングになっていないか、デッドロックがないか、などのX況である。
Ascentのようなフォーマル検証ツールはタイミングについてはく確認できない。このため、あとの工になる配配線ツールを使ってb理v路を実際のシリコンに焼きけるようなX(実際にはまだシリコンに落とさない)にしてからタイミングを検証してみる。
もうkつのMeridianは、そのタイミング検証ツールのkつであり、昨今の数|類のクロックをWする複雑なSoCの設検証に使う。kつのクロックと別のクロックが同時にkつのゲートv路に入ると不差腓こすことがある。このCDCと}ばれる不差腓鬟船Д奪するのがMeridianである。
CDC(クロックドメインが交わる所)は、フロップからフロップへのパスとして定Iされ、そこでは送信フロップがp信フロップのクロックと同期のクロックによってトリガーされている。クロックドメインAとクロックドメインBは互いに同期である。
Meridianは基本的なフォーマルチェックを行う。人}でCDCを見つけるとすると、j変な作業になる。Meridianは、CDCのテンプレートを作成する要はなく、まずクロックドメインがT図することをO動的に推bする。次に、CDCが同期で働いていてもW定なX(1と0の中間のXで、時間が経つにつれどちらかになる)なのかW定なXなのかを瑤。W定であれば、クロックを調Dする。このようにして、いろいろなv路ブロックに渡り、CDCの検証を行い、階層的に推bし、最終的にシミュレーションT果をまとめる。
O動推bによるこの桔,聾‐攣間を70%]縮できる、と同社社長兼CEOのPrakash Narainは言う。ベンダーが設するx販のIPにもこの}法を使うことで、CDCデザインがKいIPではグリッチが見つかったとしている。