Synopsys
Ansys

機能ECO (設計変更指示書)とは何ですか?

シノプシス 編集部

2020年10月5日 / 読了時間:3分

定義

SoCフローにおいて、機能的なエンジニアリング変更指示(ECO)とは、合成後のゲートレベル設計に対して直接パッチを適用したり、変更を加えたりする手法です。この変更の理由としては、RTL(合成前)バージョンの設計で発見されたエラーの修正、設計への最適化の適用、あるいは新たな顧客要件に基づく設計の更新などが挙げられます。

合成後のバージョンには直接パッチが適用されるため、論理合成、テクノロジーマッピング、配置・配線、レイアウト抽出、タイミング検証などを含む、設計を完全に再実装するというコストと時間を要するプロセスを回避できます。電子設計自動化(EDA)ツールを使用することで、合成などのタスクの範囲をECOの影響を受ける部分のみに絞り込み、時間を節約することができます。また、これらのツールは、形式手法を用いてRTLとパッチが適用されたゲートレベルの実装との等価性を検証することも可能です。

機能ECO はどのように機能するのですか?

機能ECO を使用する場合、プロセスを自動化する際には、以下の3つの点を考慮する必要があります。

  1. 再合成が必要となるRTLの最小範囲を特定する
  2. 反復処理が必要な最小の領域(パッチ)を特定する
  3. ECOによって生じうる構造上の変化を考慮しつつ、結果の正しさを検証する

以下の図は、そのプロセスを示しています:

機能ECO プロセス | シノプシス

機能ECO のメリットは何ですか?

機能検証(Functional ECO)は、あらゆる設計において極めて重要な最終段階の最適化ステップとなります。この段階で、エラーの修正、最適化の適用、および設計の最終段階における顧客からの要望への対応が行われます。このプロセスは設計サイクルの終盤に行われるため、エラーがシリコンに持ち込まれてしまうリスクが高く、その結果、多大なコストと時間を要する問題を引き起こす恐れがあります。

機能ECO 自動化により、エラーが見逃される可能性を大幅に低減できます。具体的なメリットとしては、次のようなものがあります:

  • 効率性。ECOは、手戻りを最小限に抑えて実施されます。
  • 市場投入までの期間。これらの変更はテープアウトの直前に発生するため、適切に対処しなければ、遅延が市場投入の遅れにつながる恐れがあります。
  • 信頼性。 等価性チェック (LEC)の高度なロジックにより、変更によってチップの動作が意図しない形で変化していないことが保証されます。

機能ECO 自動化における課題

機能的なECOは通常、設計プロセスの後半段階で適用されるため、これらの変更を検証・最適化する機会が限られてしまいます。つまり、変更は「最初から正しい」ものでなければならないのです。克服すべき課題としては、以下のようなものがあります:

  • パッチの効率性。非効率なプロセスでは、ネットリストに多くの新しいロジックが追加され、配線の混雑やタイミング上の問題を引き起こす可能性があります。
  • 最適化された合成。再合成が必要な主要領域において、再ターゲット化されたRTLが適切に焦点を当てられていない場合、プロセスに時間がかかりすぎてしまい、市場投入までの期間に影響が出る可能性があります。
  • 堅牢な検証。通常、論理等価性チェック(LEC)は、元の設計と修正後の設計に対して適用され、ECOによって意図しない影響が生じていないことを検証します。一部のECOでは、LECの実施を困難にするような最適化が行われる場合があります(例:データパス最適化)。

機能ECO そして シノプシス

シノプシス Formality ECOは、関数型ECOを実装するための、新しく堅牢な手法を提供します。Formality ECOは、処理時間の短縮、パッチサイズの縮小、および結果の品質向上を実現します。以下の図は、これらの利点をまとめたものです:

Formality ECO:機能的なECOを実現する新しい方法 | シノプシス

シノプシス PrimeClosure 業界初のサインオフ主導型ECOクローズソリューションであり、単一のコックピット内でサインオフクローズを実現します。

シノプシス ECO Fusionは、IC Compiler IIを活用して物理実装フェーズにおける迅速な設計変更を可能にし、過度なECOの反復作業を削減することで、フュージョン・サインオフ機能をさらに強化します。これにより、タイミング収束が早まり、設計サイクルを最大30%短縮できます。

続きを読む

Ask BETA This experience is in beta mode. Please double check responses for accuracy.

チャットを終了する

このウィンドウを閉じると、チャット履歴が消去され、セッションが終了します。本当に このチャットを終了してもよろしいですか?