SoCフローにおいて、機能的なエンジニアリング変更指示(ECO)とは、合成後のゲートレベル設計に対して直接パッチを適用したり、変更を加えたりする手法です。この変更の理由としては、RTL(合成前)バージョンの設計で発見されたエラーの修正、設計への最適化の適用、あるいは新たな顧客要件に基づく設計の更新などが挙げられます。
合成後のバージョンには直接パッチが適用されるため、論理合成、テクノロジーマッピング、配置・配線、レイアウト抽出、タイミング検証などを含む、設計を完全に再実装するというコストと時間を要するプロセスを回避できます。電子設計自動化(EDA)ツールを使用することで、合成などのタスクの範囲をECOの影響を受ける部分のみに絞り込み、時間を節約することができます。また、これらのツールは、形式手法を用いてRTLとパッチが適用されたゲートレベルの実装との等価性を検証することも可能です。
機能ECO を使用する場合、プロセスを自動化する際には、以下の3つの点を考慮する必要があります。
以下の図は、そのプロセスを示しています:
機能検証(Functional ECO)は、あらゆる設計において極めて重要な最終段階の最適化ステップとなります。この段階で、エラーの修正、最適化の適用、および設計の最終段階における顧客からの要望への対応が行われます。このプロセスは設計サイクルの終盤に行われるため、エラーがシリコンに持ち込まれてしまうリスクが高く、その結果、多大なコストと時間を要する問題を引き起こす恐れがあります。
機能ECO 自動化により、エラーが見逃される可能性を大幅に低減できます。具体的なメリットとしては、次のようなものがあります:
機能的なECOは通常、設計プロセスの後半段階で適用されるため、これらの変更を検証・最適化する機会が限られてしまいます。つまり、変更は「最初から正しい」ものでなければならないのです。克服すべき課題としては、以下のようなものがあります:
シノプシス Formality ECOは、関数型ECOを実装するための、新しく堅牢な手法を提供します。Formality ECOは、処理時間の短縮、パッチサイズの縮小、および結果の品質向上を実現します。以下の図は、これらの利点をまとめたものです:
シノプシス PrimeClosure 業界初のサインオフ主導型ECOクローズソリューションであり、単一のコックピット内でサインオフクローズを実現します。
シノプシス ECO Fusionは、IC Compiler IIを活用して物理実装フェーズにおける迅速な設計変更を可能にし、過度なECOの反復作業を削減することで、フュージョン・サインオフ機能をさらに強化します。これにより、タイミング収束が早まり、設計サイクルを最大30%短縮できます。