2016-03-31 5 views
1

私は壊れたプロジェクトの修正に取り組んでいます。この過程で私が遭遇したことの一つは、多くの人が信号を宣言したことがありますが、信号を使用していないということでした。未使用信号の合成はハードウェアリソースを浪費しますか?

シンセサイザー廃棄物のハードウェアリソースは、これらの宣言されていますが、未使用の信号を実装するか、それがちょうどそれらを無視するでしょうによってでしょうか?

+5

いいえ、合成ツールは、未使用のハードウェアを積極的に取り除きます。最初にシミュレーションでテストされていない場合は、設計エラーの結果として、完全に空のデザインになることがあります。 –

+1

@BrianDrummondこれは合成ツールで採用されている標準的なアプローチですか、あるいはいくつかの合成ツールでのみ使用されていますか? – Aboudi

+2

標準的なアプローチ。 –

答えて

1

合成自体は非常に複雑な作業です。シンセサイザーは、自分が望むロジックを、自分が提供する構造にマップする必要があります。だから、FPGAのために、彼はスタンダードセルのために何か他のことをしなければならない。この作業の間、彼は最適化します。たくさん!未使用の信号を取り除こうとします。また、有限オートマトンを最適化することもできます。それは非常に強力なツールです。

しかし、その合成が複雑であることを忘れないでください。ハードウェアの動作のプログラミングもそうです。合成の前に糸くずれの段階を行うことは、通常、良い考えです。 lintingツールは、デザインに関する情報を提供します。エラーが発生しやすいコード、間違ったリセット動作を自動的に検出します。 lintingでは、後で問題になる可能性のあるコードを見つけることができます。

TL; DR はい、シンセサイザはあなたの未使用のロジックとの接続をトリミングすることができます。それはより多くのことをします。しかし、それには注意してください。それは逆行するかもしれない。

関連する問題