是的,當您在沒有「g0」aoc 命令選項的情況下編譯核心檔案時,適用于 OpenCL™ 離線編譯器的 Intel® FPGA SDK 將產生具有嵌入式除錯資訊和原始碼的最終.aocx檔案。這會發生在 16.1 版本的工具中。
剖析核心時,如果您在 aoc 指令中同時包含-profile和-g0離線編譯器命令選項,則核心與 IP 的原始代碼仍會顯示在產生的 .aocx 檔案中。
執行 aoc 編譯時使用「-g0」旗標,以防止偵錯資訊和來原始程式碼嵌入 .aocx 檔案中
範例: aoc -g0
若要在建物後以預設選項手動從 .aocx 檔案中移除原始碼:
1. 執行 aocl binedit 清單命令,並找到所有以「.acl.source」或「.acl.clang_ir」開頭的章節。
2. 執行 aocl binedit 更新 指令,用於步驟 1 中識別的每一節。
- 對於 Windows,為 nul
- 對 Linux 來說,是 /dev/null
若要使用 Intel 提供的 Perl 腳本自動移除原始碼:
1. 下載strip_source Perl 腳本。
2. 在目前的工作目錄中解壓縮 strip_source.zip 檔案,然後執行 perl strip_source.pl 命令。
注意:若要在 Windows 上執行腳本,您必須在命令列中提供 Perl。 請確保將路徑新增到 Perl 到 PATH 使用者環境變數設定。
此問題排定在 OpenCL 離線編譯器的 Intel FPGA SDK 未來版本中修復。