BY Anatoli Curran
在 Vivado/ISE 中遇到許可問題時(shí),該怎么辦呢?
本文介紹了使用不同類型的許可證時(shí)可能遇到的不同問題。您可單擊以下標(biāo)題,以跳轉(zhuǎn)到當(dāng)前使用的許可證類型的相關(guān)內(nèi)容。
首先值得注意的是,賽靈思可提供單機(jī)版許可證和浮動(dòng)許可證(或者網(wǎng)絡(luò)浮動(dòng)許可證服務(wù)器)。
單機(jī)版許可證是鎖定到特定機(jī)器或硬件保護(hù)裝置的加密“密鑰”。許可證不予計(jì)數(shù),這表示在任一機(jī)器上可供任一用戶同時(shí)運(yùn)行的許可證數(shù)量沒有限制。
網(wǎng)絡(luò)浮動(dòng)許可證允許用戶在可訪問已標(biāo)識(shí)的許可證服務(wù)器的任何機(jī)器上使用許可證。而加密“密鑰”則鎖定到運(yùn)行 FLEX 許可證服務(wù)器守護(hù)程序的許可證服務(wù)器主機(jī)。對(duì)于此類許可證的使用將進(jìn)行“計(jì)數(shù)”,即 FLEX 許可證管理器會(huì)記錄該服務(wù)器托管的“席位”數(shù)量。
根據(jù)所使用的許可證類型,如下建議將有助于解決您遇到的許可問題。
浮動(dòng)許可證相關(guān)問題
單機(jī)版許可證相關(guān)問題
硬件保護(hù)裝置相關(guān)許可信息和已知問題
IP 核許可證相關(guān)問題
浮動(dòng)許可證相關(guān)問題:
首先,您需要確認(rèn)問題源自于浮動(dòng)許可證服務(wù)器端還是來自于客戶端。
所謂“浮動(dòng)許可證服務(wù)器端”,指的是用于運(yùn)行浮動(dòng)許可證的服務(wù)器。
“客戶端”指的是用于運(yùn)行出現(xiàn)許可問題的賽靈思工具的 PC。
首先,請(qǐng)檢查浮動(dòng)許可證服務(wù)器端。
浮動(dòng)許可證服務(wù)器端:
在客戶端上,確認(rèn)浮動(dòng)許可證服務(wù)器是否已啟動(dòng)并且正常運(yùn)行。
打開命令提示符,使用 CD 命令轉(zhuǎn)至 lnx64.o 所在位置,例如:../Xilinx/Vivado/2019.1/bin/unwrapped/lnx64.o
在其中運(yùn)行以下命令:
lmutil lmstat –a –c @ -i
(例如,lmutil lmstat –a –c 2100@server123 -i)
Windows:
從 win64.o 所在位置(例如:C:/Xilinx/Vivado/2019.1/bin/unwrapped/win64.o)運(yùn)行以下命令
lmutil lmstat –a –c @ -i
(例如,lmutil lmstat –a –c 2100@server123 -i)
接下來檢查 lmgrd 和 xilinxd 是否均已啟動(dòng),如下所示:
如果服務(wù)器未啟動(dòng),您將會(huì)看到錯(cuò)誤消息,指示服務(wù)器尚未運(yùn)行。
在此階段,您可集中識(shí)別導(dǎo)致服務(wù)器未運(yùn)行的原因。
建議最好從浮動(dòng)許可證服務(wù)器 debug.log 文件開始調(diào)試。在此文件中會(huì)顯示有關(guān)為何該服務(wù)器未啟動(dòng)或無法運(yùn)行的詳情。
浮動(dòng)許可證服務(wù)器一旦啟動(dòng)后,就會(huì)創(chuàng)建 debug.log 文件。許可證服務(wù)器管理員知曉此文件的位置。
根據(jù)該日志文件中的消息,下一步您應(yīng)該就可以在賽靈思網(wǎng)站上搜索此特定錯(cuò)誤或參考信息,因?yàn)樵凇按饛?fù)記錄”中已經(jīng)識(shí)別并記錄了大量已知問題:https://china.xilinx.com/support/answer-navigation/design-tools/licensin...
此外,還請(qǐng)查閱Vivado 2017.3 許可變更論壇主題。
其中有一項(xiàng)重大變更與將許可實(shí)用程序升級(jí)到 Flex 11.14.1 相關(guān)。
(賽靈思答復(fù)記錄 69377)中陳述如下,使用 Vivado 2017.3 和更高版本的 Vivado 時(shí),所有浮動(dòng)許可證用戶都必須將其許可證實(shí)用工具升級(jí)到 FlexLM 11.14.1.0 或更高版本,這樣 Vivado 才能提取這些許可證。
低于 Vivado 2017.3 的 Vivado 版本以及 ISE 14.7 和更低版本可以正常使用所有先前版本的 flexlm 實(shí)用程序,例如,v11.13。但是,賽靈思建議升級(jí)到 FlexLM 11.14.1.0 或更高版本。
運(yùn)行以上命令 (lmutil lmstat…) 時(shí),您還會(huì)看到服務(wù)器啟動(dòng)時(shí)所使用的 flexlm 版本。
您應(yīng)該可以看到,對(duì)于 lmgrd 和 xilinxd,版本均為 v11.14.1,如下圖所示:
在某些情況下,lmgrd 以 v11.14.1 啟動(dòng),但 xilinxd 仍使用較低版本(如 v11.13)運(yùn)行。
在此類情況下,Vivado 仍將無法從服務(wù)器中識(shí)別并檢出必要的許可證。
如果發(fā)生這種情況,可從 china.xilinx.com 下載頁(yè)面找到并獲取許可實(shí)用程序。
對(duì)應(yīng) Windows 或 Linux 操作系統(tǒng)使用的實(shí)用程序是不同的。
完成下載并將其解壓到服務(wù)器后,請(qǐng)從上述實(shí)用程序的解壓位置使用 lmgrd 啟動(dòng)浮動(dòng)許可證服務(wù)器。
隨后,它將調(diào)用 xilinxd 供應(yīng)商守護(hù)程序(此守護(hù)程序與 lmgrd v11.14 位于相同位置)。
注意:如果浮動(dòng)許可證明確指向特定版本的 xilinxd.exe 位置(即,直接指向浮動(dòng)許可證文件內(nèi)部),那么將改為調(diào)出該版本的 xilinxd 供應(yīng)商守護(hù)程序,而不是調(diào)用更高版本的 v11.14。
如果情況如此,請(qǐng)編輯 lic 文件并指向最新 xilinxd.exe 的位置,或者從許可證文件的 VENDOR 行中移除此路徑。
如果浮動(dòng)許可證服務(wù)器位于 Windows 操作系統(tǒng)上并且在此機(jī)器上未安裝任何 Vivado 工具,那么使用 lmgrd v11.14 啟動(dòng)浮動(dòng)許可證服務(wù)器后,在 debug.log 文件中可能會(huì)顯示“xilinxd exited with status 53”之類的錯(cuò)誤。如果發(fā)生此類情況,請(qǐng)參閱(賽靈思答復(fù)記錄 69969),以了解有關(guān)如何解決此類問題的詳情。
如需了解有關(guān)如何啟動(dòng)浮動(dòng)許可證服務(wù)器的一般說明,請(qǐng)參閱 (UG973)。其中第 3 章包含一節(jié)題為“提供基于證書的浮動(dòng)許可證 (Serving Certificate-Based Floating Licenses)”的內(nèi)容。
完成上述檢查后,下一步是檢查客戶端以了解為何客戶端機(jī)器無法從浮動(dòng)許可證服務(wù)器獲取必要的許可證。
客戶端:
關(guān)于在客戶端上出現(xiàn)的此類行為,有幾個(gè)常見的原因:
環(huán)境變量:
在含網(wǎng)絡(luò)路徑(格式為 port@server)的客戶端 PC 中,可能未將 XILINXD_LICENSE_FILE 或 LM_LICENSE_FILE 環(huán)境變量設(shè)置為指向許可證服務(wù)器。
注意:XILINXD_LICENSE_FILE 環(huán)境變量旨在用于指向任意賽靈思相關(guān)許可證,而 LM_LICENSE_FILE 環(huán)境變量則應(yīng)用于其他非賽靈思相關(guān)許可證(例如,Mentor Graphics、Synopsys 許可證等)。
“版本已到期”限制:
客戶端可能已安裝更新版本的 Vivado 發(fā)行版,由于存在“版本已到期”限制,當(dāng)前浮動(dòng)許可證對(duì)于此類版本無效。
如需了解版本限制及其工作方式的相關(guān)說明,請(qǐng)參閱(賽靈思答復(fù)記錄 33770)。
如需了解更多信息,請(qǐng)參閱“許可常見問題解答 (Licensing FAQ)”頁(yè)面上的“到期與保修期 (Expiration and Warranty Period)”部分:http://china.xilinx.com/tools/faq.htm
選項(xiàng)文件 INCLUDE 列表:
當(dāng)特定浮動(dòng)許可證文件上已設(shè)置選項(xiàng) (.opt) 文件時(shí),可能會(huì)發(fā)生此問題。選項(xiàng)文件允許您控制哪些用戶有權(quán)或無權(quán)從浮動(dòng)許可證服務(wù)器檢出特定許可功能或者整個(gè)許可證文件。
對(duì)于未添加到 .opt 文件的 INCLUDE 列表中的用戶,將在 debug.log 文件中顯示類似“user is not on INCLUDE list for feature”的消息。
如需了解 Flexera 選項(xiàng)文件的創(chuàng)建和管理的相關(guān)信息,請(qǐng)查閱 Flexnet 許可文檔。
以上列出的均為最常見的問題,當(dāng)然可能導(dǎo)致客戶端無法從浮動(dòng)許可證服務(wù)器檢出許可證的因素并不止于此。
單機(jī)版許可證相關(guān)問題:
如果賽靈思軟件/工具無法識(shí)別許可證,問題可能出在哪里?
在此類情況下,常見問題原因包括:
Windows:
許可證位于 Vivado 無法檢測(cè)的文件夾中:
如果單機(jī)版許可證不在默認(rèn)位置 %APPDATA%/.Xilinx(在 Windows 操作系統(tǒng)中默認(rèn)位置通常為 C:/.Xilinx),并且未設(shè)置 XILINXD_LICENSE_FILE 或 LM_LICENSE_FILE,那么 Vivado/ISE 工具將無法檢測(cè)單機(jī)版許可證。
請(qǐng)參閱 http://china.xilinx.com/tools/faq.htm 上的“賽靈思軟件工具(CORE Generator 除外)查找許可證的搜索順序和位置 (What are the search order and locations...)”部分,以了解合法搜索路徑。
主機(jī) ID 錯(cuò)誤:
如果許可證的 hostID 與所使用的機(jī)器的 hostID 不匹配,那么該功能仍會(huì)顯示在 VLM/XLCM 中,但無法使用。
Linux:
許可證位于 Vivado 無法檢測(cè)的文件夾中:
在 Linux 操作系統(tǒng)上,單機(jī)版許可證的默認(rèn)許可位置為 $HOME/.Xilinx。
如果許可證不在此位置,并且未設(shè)置 XILINXD_LICENSE_FILE 或 LM_LICENSE_FILE,那么 Vivado/ISE 工具將無法檢測(cè)單機(jī)版許可證。
主機(jī) ID 錯(cuò)誤:
如果許可證的 hostID 與所使用的機(jī)器的 hostID 不匹配,那么該功能仍會(huì)顯示在 VLM/XLCM 中,但無法使用。
以太網(wǎng)地址報(bào)告為“000000000000”
有一個(gè) Linux 上獨(dú)有的命令問題,即用于 Flex 許可證的 HostID 以太網(wǎng)地址在某些機(jī)器上報(bào)告為“000000000000”。
在此情況下,Vivado Flex Licensing API 不會(huì)對(duì) HostID 進(jìn)行驗(yàn)證,導(dǎo)致無法授予許可證。
此問題的解決方案是更改端口名稱。如需了解更多信息,請(qǐng)參閱(賽靈思答復(fù)記錄 60510)。
硬件保護(hù)裝置相關(guān)許可信息和已知問題:
什么是硬件保護(hù)裝置?為何使用它?
如果要在其他機(jī)器上使用單機(jī)版許可證,那么就需要考慮向 Flexera 購(gòu)買和使用硬件保護(hù)裝置。
硬件保護(hù)裝置并非 USB 記憶棒,它只是一個(gè)可轉(zhuǎn)移 ID(硬件保護(hù)裝置的主機(jī) ID)。
以下是 Flexnet 硬件保護(hù)裝置示例:
在生成單機(jī)版許可證時(shí),您可以選擇并指定此許可證的硬件保護(hù)裝置的 FlEX ID。
請(qǐng)參閱(賽靈思答復(fù)記錄 42410),以了解詳情。
這樣您就可以將此硬件保護(hù)裝置與自己的許可證一起從一臺(tái) PC 轉(zhuǎn)移到另一臺(tái) PC,并且隨后賽靈思工具將能夠在不同機(jī)器上檢測(cè)并使用此許可證。
從何處購(gòu)買硬件保護(hù)裝置?
賽靈思已停售硬件保護(hù)裝置。
可直接向 Flexera 購(gòu)買該裝置。
如需了解有關(guān)訂購(gòu)硬件保護(hù)裝置的其他信息,請(qǐng)聯(lián)系 Flexera。
Flexera 的硬件保護(hù)裝置申請(qǐng)電子郵件地址為:flexid@flexerasoftware.com
注意:在 Linux 操作系統(tǒng)上針對(duì) FLEX ID 硬件保護(hù)裝置不提供官方支持。僅在 Windows 平臺(tái)上才支持 USB 硬件保護(hù)裝置許可。根據(jù)(賽靈思答復(fù)記錄 35027)中的信息,對(duì)于 Linux 操作系統(tǒng)上的許可,賽靈思不提供用于支持 USB 硬件保護(hù)裝置的驅(qū)動(dòng)。
雖然無官方支持,但部分客戶已報(bào)告稱其能夠安裝并成功使用 Linux FlexID-9 硬件保護(hù)裝置驅(qū)動(dòng)來獲取 FLEX 許可。
通常只要系統(tǒng)能夠識(shí)別硬件保護(hù)裝置,F(xiàn)LEX 許可就有效。
要獲取硬件守護(hù)裝置的 FLEX ID 并檢查是否已識(shí)別出該硬件守護(hù)裝置,請(qǐng)通過命令提示符使用 CD 轉(zhuǎn)至 win64.o 的位置。
例如:C:/Xilinx/Vivado/2019.2/bin/unwrapped/win64.o
在其中運(yùn)行以下命令
lmutil lmhostid -flexid
如果已識(shí)別出硬件保護(hù)裝置,那么 Vivado 應(yīng)該可以正常發(fā)現(xiàn)并使用以該硬件保護(hù)裝置的 FLEX ID 為目標(biāo)生成的許可證。
如果未能識(shí)別該硬件保護(hù)裝置,請(qǐng)參閱下文以獲取更多詳細(xì)信息。
與硬件保護(hù)裝置相關(guān)的已知問題:
① Vivado 2017.3 和更高版本使用較低版本的 HASP4 硬件保護(hù)裝置時(shí),無法檢測(cè)到有效的單機(jī)版許可證。
如需了解解決方案,請(qǐng)參閱(賽靈思答復(fù)記錄 70201)
② 在 64 位 Windows 操作系統(tǒng)上無法識(shí)別出第二個(gè) FlexNet ID 硬件保護(hù)裝置。
要了解解決方案,請(qǐng)參閱(賽靈思答復(fù)記錄 43209)
③ 在 Windows 中安裝和下載 USB 硬件保護(hù)裝置驅(qū)動(dòng)。
如需了解更多信息,請(qǐng)參閱(賽靈思答復(fù)記錄 47132)
如果 Vivado 無法識(shí)別 FLEXId-9 硬件保護(hù)裝置,我該怎么辦?
調(diào)試流程如下所述:
將硬件保護(hù)裝置插入機(jī)器后,如果已正確安裝其驅(qū)動(dòng),那么該硬件保護(hù)裝置的紅色指示燈將點(diǎn)亮,如下圖所示:
如果紅色指示燈未點(diǎn)亮,則表明該硬件保護(hù)裝置的驅(qū)動(dòng)很可能存在問題。
在此情況下,請(qǐng)遵循(賽靈思答復(fù)記錄 47132)中概述的步驟,以使 Windows 操作系統(tǒng)能夠識(shí)別出此裝置。
注意:對(duì)于(賽靈思答復(fù)記錄 47132)中的步驟 6,您必須將 haspsrm_win64.dll 和 haspsrm_win32.dll 一并復(fù)制到 %windir%/System32 中,然后還需要將這兩個(gè)庫(kù)(haspsrm_win64.dll 和 haspsrm_win32.dll)都復(fù)制到 %windir%/SysWOW64 中。
僅將 haspsrm_win32.dll 復(fù)制到 %windir%/System32 中并將 haspsrm_win64.dll 復(fù)制到 %windir%/SysWOW64 中是無效的,因?yàn)槿缟衔乃觯@兩個(gè)文件在這兩處位置中都必須存在。
完成上述操作后,請(qǐng)重新啟動(dòng) PC。這樣硬件保護(hù)裝置上的指示燈應(yīng)顯示為紅色,從而表明已成功檢測(cè)到此硬件保護(hù)裝置。
另請(qǐng)參閱(賽靈思答復(fù)記錄 70201),以了解以下問題:
如果 FlexNet 硬件保護(hù)裝置為舊的 HASP4 硬件保護(hù)裝置,而非新型 HASP HL 硬件保護(hù)裝置,那么 Vivado 2017.3(和更高版本的 Vivado)將無法檢測(cè)出該硬件保護(hù)裝置,這樣也就無法從中檢出許可證。
如果使用的是舊硬件保護(hù)裝置(如 HASP4),那么可供選擇的操作如下:
訂購(gòu)新型 HASP HL 硬件保護(hù)裝置,以配合新工具一起使用
重新生成許可證,以 NIC ID(網(wǎng)絡(luò)接口卡 ID)或 DISK_SERIAL_NUM(而非您的硬件保護(hù)裝置的 ID)為目標(biāo)。
IP 核許可證相關(guān)問題:
對(duì)于任何 IP 核許可問題,您需要確認(rèn)問題在于 IP 核許可證文件本身(許可證安裝問題、許可證文件遇到“版本已到期”限制或者設(shè)計(jì)中的特定 IP 存在 IP 核許可證錯(cuò)誤或缺失等),還是賽靈思工具無法在浮動(dòng)許可證服務(wù)器或本地機(jī)器中找到并檢出有效的 IP 核許可證文件。
如果您在 Vivado 中遇到 IP 核許可錯(cuò)誤,要確認(rèn)設(shè)計(jì)中包含具體哪些 IP 以及針對(duì)這些 IP 核找到了哪些許可證,請(qǐng)打開 Vivado,并單擊位于“Reports”標(biāo)簽下的“Report IP Status”。
或者,您可在 Tcl 控制臺(tái)中運(yùn)行“report_ip_status”命令,這樣即可生成“IP 狀態(tài)匯總 (IP Status Summary)”。
“IP 狀態(tài)匯總 (IP Status Summary)”將包含有關(guān)設(shè)計(jì)中找到的所有 IP 以及針對(duì)這些 IP 找到的許可證的信息。
您可在其中看到 Purchased/Bought、Hardware_Evaluation (HW_Eval)、Design_Linking 或 Included。
要生成比特流,需要 bought(完整)IP 核許可證或完整系統(tǒng)硬件評(píng)估 (Full Hardware Evaluation) IP 核許可證。
如果在某個(gè) IP 核上出現(xiàn) Design_Linking,那么它就是 Vivado 中出現(xiàn) IP 核許可錯(cuò)誤的原因。
如需了解 LogiCORE IP 核完整系統(tǒng)硬件評(píng)估許可證和 LogiCORE IP 核設(shè)計(jì)鏈接許可證的相關(guān)限制,請(qǐng)參閱以下答復(fù)記錄:
(賽靈思答復(fù)記錄 42380)- LogiCORE IP 核硬件評(píng)估許可證有什么特性/限制?
(賽靈思答復(fù)記錄 42379)- LogiCORE IP 核僅仿真 (Design_Linking) 許可證有什么特性/限制?
XILINXD_LICENSE_FILE 變量
如果許可證列為 Design_Linking,但您擁有有效的許可證,且該許可證已正確安裝并顯示在 Vivado License Manager (VLM) 中,那么可能 Vivado 無法檢測(cè)此 IP 核許可證的位置。
建議將 XILINXD_LICENSE_FILE 環(huán)境變量設(shè)置為指向默認(rèn)位置 %APPDATA%/.Xilinx(通常在 Windows 上此位置為 C:/.Xilinx,或者在 Linux 上此位置為 $HOME/.Xilinx),即使 IP 核單機(jī)版許可證位于此 .Xilinx 文件夾中也是如此。
這樣 Vivado 將在此處查找 IP 核許可證。
下一步是重新打開 Vivado,并再次執(zhí)行 report_ip_status 掃描。
然后確認(rèn)這次針對(duì)設(shè)計(jì)中找到的所有 IP 是否能顯示 Purchased/Bought 或 HW_Eval(而不是 Design_Linking)。
只要顯示的是這兩種許可之一,那么下一步即可更新當(dāng)前網(wǎng)表。
網(wǎng)表更新:
曾經(jīng)出現(xiàn)過這樣的情況,用戶已添加有效的新許可證,但由于存在 IP 核相關(guān)許可問題,導(dǎo)致比特流生成仍以失敗告終。
這其中問題在于添加新的完整 (Full) 許可證或硬件評(píng)估 (HW Eval) 許可證后,未更新當(dāng)前網(wǎng)表。
生成 IP 核時(shí),許可信息存儲(chǔ)在網(wǎng)表文件中,即使許可證情況發(fā)生變化,也是如此。例如,原先您沒有許可證,但隨后添加了完整 (full purchased) 許可證(而非評(píng)估 (evaluation) 許可證)。
在此情況下,您將需要更新存在問題的 IP 上的輸出產(chǎn)品(或者對(duì)于塊設(shè)計(jì),改為針對(duì)塊設(shè)計(jì)執(zhí)行此操作),以更新網(wǎng)表。
否則,只要不更新輸出產(chǎn)品,就不會(huì)更新網(wǎng)表,而且仍將指向舊許可證,即使已安裝有效的許可證后也是如此。
請(qǐng)遵循(賽靈思答復(fù)記錄 58758)中的步驟進(jìn)行操作,這些步驟應(yīng)可幫助您解決此 IP 核許可問題。
IP 核:
在某些情況下,還需要清除 IP 高速緩存。
您可通過兩種方式清除 IP 高速緩存。
在 GUI 中的 IP 設(shè)置下,有一個(gè)按鈕用于清除工程的 IP 高速緩存:
或者,可通過運(yùn)行以下 Tcl 命令來清除 IP 高速緩存:
config_ip_cache -clear_output_repo
編輯:hfy
-
Linux
+關(guān)注
關(guān)注
87文章
11496瀏覽量
213254 -
服務(wù)器
+關(guān)注
關(guān)注
13文章
9753瀏覽量
87575 -
ISE
+關(guān)注
關(guān)注
1文章
102瀏覽量
37602 -
Vivado
+關(guān)注
關(guān)注
19文章
834瀏覽量
68494
發(fā)布評(píng)論請(qǐng)先 登錄
評(píng)論