たとえば、特定のパイプラインを最大限に活用するために、リタイミングや c-slow を最大限に活用するにはどうすればよいでしょうか。
リタイミングを使用すると、入力にシフト レジスタを配置することでより良い結果が得られるモジュール (フォワード レジスタ バランシング) と、出力にシフト レジスタを配置することでより良い結果が得られるモジュール (バックワード レジスタ バランシング) があります。
今のところ、次の方法を使用します。
- コード hdl (Verilog)
- 特定のモジュールのタイミング制約を作成する
- 合成、マップ、配置、配線 (ISE 13.1 を使用)
- 改善するモジュールの配置配線後のタイミングと、ロジック レベルの最大数を調べます。
- この数のロジック レベルを使用して、挿入するフリップフロップの数を推測してください。
- フリップフロップを挿入し、レジスタのバランスを有効にし、最善を尽くします
現状では、この方法はヒット&ミスです。かなり良い結果が得られることもあれば、がらくたになることもあります。では、そのようなリタイミングの成功率を向上させるにはどうすればよいでしょうか?
これを支援できるツールはありますか?また、リンク、論文、書籍の推奨事項も大歓迎です。