非常に大きなプロジェクトコードで小さなモジュールを正式に検証しようとしています。私は分析し、デザインを精緻化しました。ツールが私に "Found Combinational Loop"エラーを与えるので、私は小さなモジュールを確認できません。HDLコードの組合せループエラーを無視する方法はありますか?
この小さなモジュールがこのループエラーの影響を受けないことは間違いありません。だから私はこのエラーを取得avaidしたい。それも可能ですか?
ありがとうございます!
非常に大きなプロジェクトコードで小さなモジュールを正式に検証しようとしています。私は分析し、デザインを精緻化しました。ツールが私に "Found Combinational Loop"エラーを与えるので、私は小さなモジュールを確認できません。HDLコードの組合せループエラーを無視する方法はありますか?
この小さなモジュールがこのループエラーの影響を受けないことは間違いありません。だから私はこのエラーを取得avaidしたい。それも可能ですか?
ありがとうございます!
JasperGoldの正式なツールでは、どのツールを使用したか分かりませんが、次のコマンド設定を使用して組み合わせループを解除できます。 (あなたはあなたのツールを実行するにはTclファイルを使用している場合)
stopat u_DUT.signal_a
はちょうどあなたのTCLファイルに
prove -all
前にそれを置きます。
JapserGoldのマニュアルでstopat
コマンドを使用して、櫛ループを簡単に破ることができるかどうかを確認してください。
正式なツールを使用した経験はほとんどありませんが、スタティックタイミングアナライザ(_static_も)が混乱したり、見つけにくいパスを見つけたりする可能性があります。おそらくそれはこの道が何であるかを言うでしょう?おそらくダミーロジックを追加してこのループを破ることができますか? (たとえあなたが誤った道だと思うとしても)明らかに、ツールを責め始める前に、コードを非難するのはいつもベストです。ツールが誤った経路を見つけたと確信していますか? –
デザインに組み合わせループがある場合は、大きな問題です。したがって、最初にこのバグを無視するよりも、このバグを修正するか、バグのある設計について正式な検証方法を試す必要があります。 – Paebbels
@MatthewTaylor:最初は、私の正式なツールをこの小さなモジュールに差し込んで、検証に成功しました。今私は高レベルで正式なツールをプラグインしようとしているので、私はこのエラーが表示されます。ツールが言及しているパスは正しいパスです。しかし、私は設計上何かを変更することは許されていません(インターン)。だから私は何とかそれをマスクすることができ、このモジュールが期待どおりに動作することを証明したいのですか? – kkdev