Vivado® ML Editionで表示されるメッセージについて 【第1回】
![Vivado® ML Editionで表示されるメッセージについて 【第1回】](https://www.paltek.co.jp/dcms_media/image/tb221228-top2.jpg)
皆さん、こんにちは。
今回は、Vivado® ML EditionでSynthesis/Implementationの実行時に表示されるメッセージについて解説します。
さらにSynthesis実行時に表示されるメッセージについても実際の例を用いて記載します。
それでは始めましょう。
このブログは「FPGA設計ブログ一覧」の
3. 論理合成(ツールが言語を回路図化する)の
ひとつです。
目次
はじめに
Synthesis/Implementationは、AMD ザイリンクス社の以下のようなツールとなります。
- Synthesis:
- デバイス用の合成ツール
- Implementation:
- デバイス用の配置配線ツール
Synthesis/Implementationの実行時に表示されるメッセージについて
メッセージは、以下のような意味を含みます。
※重要度の高い順に記載しています。
・ERROR
デザインを使用することができない問題が発生しています。
ユーザー側で修正or変更の必要があります。
・CRITICAL WARNING
制約の一部が適用できない等によりデザインに対して良い結果が得られません。
ユーザー側で修正or変更の必要があります。
・WARNING
制約が意図通りに適用できない可能性があるため、デザイン結果が最適なものにはならない状態を指します。
ユーザー側で修正が可能、また現状維持も可能です。
→メッセージの内容確認必要となります。
・INFO
メッセージIDが含まれており、アンサー レコードを検索して問題について確認することが可能です。
・STATUS
一般的なステータス、デザインに関するユーザー側への通知です。
Synthesis/Implementationのメッセージの重要度は同じです。
メッセージの内容は、ユーザーの設計によって多数ありますので、本ブログでは、表示例として記述します。
今回は、Synthesis実行時に表示されるメッセージについて記載します。
Synthesis実行時に表示されるメッセージについて
XDCファイルに関するメッセージ例1
制約のセル/ポート/ピン/ネットが見つからないというメッセージです。
対応するオブジェクトがRTLに存在していますが、名前が異なっているためメッセージが表示されています。
オブジェクト名は合成中に変更されることがあるため、同じオブジェクトでも名前が異なる可能性がありますので、レポートの確認が必要です。
メッセージの回避策として、XDC制約でget_nets の代わりに get_cells/get_pins の構文を使用すると良いです。
ネット名は、セル名やピン名よりもよく変更されるためです。
合成後に制約が機能するため、メッセージを無視しても問題ないですが、ワーニングでもユーザーで確認いただいたほうが良いと思います。
XDCファイルに関するメッセージ例2
このクリティカルワーニングは、XDCファイル内で制約を与えているモジュール名の不一致が原因のため、制約が適用できないことを示しています。
※プロジェクトにXDCファイルがない場合、IPコアの一部となっている可能性があります。
IPコアに含まれるXDCファイルの確認として、以下のコマンドを使用します。
で検出されます。
XDCファイルに関するメッセージ例3
XDCファイルで次のとおり制約している場合に表示されます。
通常、RTLデザインでは、TOPファイルに信号の方向定義を行っているため、このコマンドは適用されません。
XDCファイルから対象のコマンドを削除することでメッセージ表示されなくなります。
XDCファイルに関するメッセージ例4
このクリティカルワーニングは、XDC制約に必要な文字列でないことが原因です。
この構文エラーが原因で制約が適用にならないことを示しています。
XDCファイルの記述では、
正しくは、
となります。
構文内の”セミコロン”の有無によりクリティカルワーニングが発生しています。
XDCファイルに関するメッセージ例5
このクリティカルワーニングは、XDC制約に必要な文字列でないことが原因です。
この構文エラーが原因で制約が適用にならないことを示しています。
XDCファイルの記述では、
正しくは、
となります。
構文内のスペースの有無によりクリティカルワーニングが発生しています。
おわりに
XDCファイルの記述に注意しましょう。見直しをお勧めします。
ワーニングについては無視する/しないはユーザーで判断が必要です。
次回は、Implementationで表示されるメッセージについて記載する予定です。
最後までご覧いただきありがとうございました。
このブログは「FPGA設計ブログ一覧」の
3. 論理合成(ツールが言語を回路図化する)の
ひとつです。
弊社ではFPGA設計や回路図設計、レイアウト設計、ソフトウェア設計、筐体設計などを受託開発しています。サービス内容をWEBサイトに掲載していますので、ぜひご覧ください。