syn.directive.expression_balance - 2023.2 日本語

Vitis 高位合成ユーザー ガイド (UG1399)

Document ID
UG1399
Release Date
2023-12-18
Version
2023.2 日本語

説明

C/C++ コードが演算のシーケンスで記述され、RTL で長い演算チェーンが生成されることがあります。クロック周期が短い場合、これによりデザイン レイテンシが増加する可能性あります。デフォルトでは、Vitis HLS ツールで演算の関連性および接続性を考慮して、演算が並べ替えられます。これにより、ツリーのバランスが取られてチェーンが短くなるので、ハードウェア リソースは増加しますが、デザインのレイテンシを削減できます。

演算式バランス調整では、演算子を並べ替えてバランスの取れたツリーを構築することにより、レイテンシを削減します。

  • 整数演算の演算式バランス調整はデフォルトでオンになっていますが、オフにすることもできます。
  • 浮動小数点演算では、演算式バランス調整はデフォルトでオフになっていますが、オンにすることもできます。

syn.directive.expression_balance コマンドを使用すると、この演算式バランス調整を指定範囲内でオン/オフにできます。

構文

syn.directive.expression_balance=[OPTIONS] <location>
  • <location>: 演算式バランス調整をオン/オフにする場所を function[/label] の形式で指定します。

オプション

off
指定の場所で演算式バランス調整をオフにします。
syn.directive.expression_balance を指定すると、指定したスコープで演算式バランス調整が有効になります。off オプションを追加すると、ディスエーブルになります。

関数 My_Func 内で演算式バランス調整をオフにします。

syn.directive.expression_balance=off My_Func

関数 My_Func2 で演算式バランス調整をオンにします。

set_directive_expression_balance=My_Func2