目次
Vitis HLS で Export RTL 時にエラーが出る問題
ERROR: '2201211612' is an invalid argument. Please specify an integer value.
while executing
"rdi::set_property core_revision 2201211612 {component component_1}"
invoked from within
"set_property core_revision $Revision $core"
(file "run_ippack.tcl" line 857)
高位合成で作成した回路をIP化しようとすると、エラーが発生してIPが作成できない問題が発生しました。(2022年問題?)
‘2201211612’ はタイムスタンプなので実行時刻により異なります (2201211612 は2022年1月21日 16時12分)
直接の原因はタイムスタンプの数値が int 型で表現できる範囲を超えていること。int は32ビット符号付き整数で -2147483648 〜 2147483647 の範囲の整数を表現できますが、2022年以降のタイムスタンプはintの範囲をオーバーしてしまいます。
対策方法
Xilinx公式に対応方法の記事があります。
■ Export IP Invalid Argument / Revision Number Overflow Issue (Y2K22)
https://support.xilinx.com/s/article/76960?language=ja
パッチをダウンロードして適用すると修正されます。Vitis HLS と Vivado HLS の 2021.2 までの全バージョンが影響を受ける様子。
ほかにも関連する質問が出ていました。
■ 2022 timestamp overflow: ERROR: ‘2201011128’ is an invalid argument. Please specify an integer value
https://support.xilinx.com/s/question/0D52E00006uxnnFSAQ/2022-timestamp-overflow-error-2201011128-is-an-invalid-argument-please-specify-an-integer-value?language=ja
■ Export IP Invalid Argument / Revision Number Overflow Issue
https://support.xilinx.com/s/question/0D52E00006vDlvJSAS/export-ip-invalid-argument-revision-number-overflow-issue?language=ja
インストール方法
公式の記事内にパッチファイルのダウンロードリンクとインストール方法の説明があります。詳細はそちらを見ていただけば問題なく進められると思います。
以下、備忘録です。インストール後は正常に動作しています。
環境はUbuntu 20.04 LTS、Vitis HLS 2021.1。
インストール手順
(1) 上記の公式記事のページ最下部にパッチのzipファイルが添付されているので、ダウンロードします。
(2) Xilinxツールのインストールディレクトリでzipファイルを展開します。
デフォルトのインストールディレクトリは、
Windows は、 C:\Xilinx
Linux は、 /opt/Xilinx または /tools/Xilinx
(4) READMEファイルに、ツールバージョンごとのインストール方法 (コマンド) が記載されています。私が使っている2021.1はこんな感じ。
* 2021.1
On all Linux Flavors (Centos, RHEL, Ubuntu 18,… ) where python version 3.8.3 used, follow the instructions below
export LD_LIBRARY_PATH=$PWD/Vivado/2021.1/tps/lnx64/python-3.8.3/lib/
Vivado/2021.1/tps/lnx64/python-3.8.3/bin/python3 y2k22_patch/patch.py
On Windows run:
Vivado\2021.1\tps\win64\python-3.8.3\python.exe y2k22_patch\patch.py
(5) 先ほどのインストールディレクトリに移動してコマンドを実行します。sudoを忘れずに。
コメントを残す