詳細
スケーラブルでないシステム クロックに関連するモジュールが、タイミングを満たしていません。特定カーネルに関連する達成された周波数では、スケーラブルでないシステム クロックを持つコンポーネントを正しく動作できません。
説明
自動周波数スケーリング機能を使用すると、ユーザー カーネルは意図したよりも低い周波数でもハードウェアで動作させることができます。コンパイラは、スケーラブルでないすべてのクロックのタイミングを満たしますが、ターゲットのカーネル クロック周波数またはスケーリングされたカーネルのクロック周波数を達成できません。スケーラブルでないクロックの例は、たとえば、固定クロック周波数に依存する IO コンポーネントで使用されるクロックなどです。また、ランタイム ソフトウェアによってランタイムで制御できないクロックは、スケーラブルではありません。結局のところ、スケーラブルなクロック ドメインとスケーラブルでないクロック ドメインを定義するのはプラットフォームです。
推奨
通常、xocc は –kernel_frequency
オプションをサポートしているので、合成用のカーネル周波数を定義できます。また、クロックのばらつきを使用して、HLS スケジューラが 1 サイクル内で操作をスケジュールできる時間の長さに影響を与えることも可能です。どちらの場合でも、結果のスケジュールは異なり、デザインが過剰な制約を受けていなければ、タイミング要件を満たすはずです。
注記: WNS 値を含め、スラック値には次のような意味があります。スラック値が負の場合、タイミングを満たすことができなかったことを意味します。スラック値が 0 または正の場合は、通常タイミング チェックをパスしたことを意味します。しきい値も正の値である場合は、例外となる可能性があります。