それぞれ独自のアルゴリズムを持つ 2 つのモジュールのタイミング解析を含む、かなり複雑なモジュールを作成していますが、入力として 2 つの符号付き数値を取り込み、符号付き数値を出力します。
ザイリンクスを合成ツールとして使用し、Verilog で FPGA 用にこのモジュールを設計しています。これで、ザイリンクスは通常、どのモジュールに対してもワースト ケースのタイミング解析を提供することを理解しました。これは、ルーティング時間を含めて入力から出力までに 250 ピコ秒かかる数値の範囲がある場合、400 ピコ秒かかる入力セットが 1 つでもある場合、ザイリンクスが示すタイミング解析は 400 ピコ秒になることを意味します。
私の目標は見つけることです:
1) モジュール 1 がモジュール 2 よりも任意の数値セットで速い場合。
1) モジュール 1 がモジュール 2 よりも高速な数値の範囲。
私が考えることができる唯一の論理的なアプローチは、モジュールの動作周波数を上げることです。これは、400 ピコ秒ではなく 300 ピコ秒後に両方のモジュールに出力を与えるように強制することです。
明らかに、動作周波数を上げると、テストベンチの入力の一部が誤った出力を出します。私の仮説は、最初に誤った回答を出し始めるモジュールがアルゴリズムを持っているというものです。
だから私の疑問は次のとおりです。
1) ザイリンクスを使用して Verilog でモジュールの動作周波数を上げることは可能ですか (合成または解析中に強制する必要のある設定があります)。そうでない場合、タイミング解析を行うためのより良いツールはありますか?
2) このアプローチは実行可能ですか? Cadence を使用してゲート レベルの合成を行う以外に、Verilog を使用して各ゲートの符号付き数値の各セットの実際の時間遅延解析を見つけることができますか?