本篇簡單介紹Xilinx的A7 FPGA板卡在連接著下載器時,無法從flash中讀取配置信息。
在測試新的FPGA板卡時,發(fā)現(xiàn)板卡連接著下載器時,無法從flash中讀取配置好的數(shù)據(jù)。
經(jīng)過多次嘗試,發(fā)現(xiàn)以下幾個現(xiàn)象:
····不連接下載器時,重啟板卡后,直接可以獲取到flash內(nèi)的內(nèi)容。
····連接下載器時,且打開著vivado的下載界面時,重啟板卡后,無法獲取到flash內(nèi)的內(nèi)容。
····連接下載器時,關閉著vivado的下載器界面時,重啟板卡后,可以獲取到flash內(nèi)的內(nèi)容。
經(jīng)過查詢,從xilinx的官網(wǎng)上,得到以下信息:
Vivado 2016.1以后的硬件管理器新增的功能:當某個板卡斷電或電纜斷開時,Vivado會關閉硬件管理器中的硬件目標。
當板卡重新通電或重新連接電纜時,Vivado將自動嘗試在硬件管理器中重新打開硬件目標。除了重新打開硬件目標,硬件管理器將嘗試刷新所有設備寄存器,包括讀取配置狀態(tài)寄存器。
由于這種新行為,如果滿足以下所有條件,則可能會出現(xiàn)間歇性配置故障:
····使用除JTAG以外的任何配置接口
····Vivado硬件管理器已打開,并連接了Digilent或Xilinx USB編程電纜
····主板重啟或通電。
如果使用了任何配置接口(除了JTAG ),并且還連接了JTAG電纜,則配置可能會被JTAG鏈自動檢測和/或寄存器讀取中斷,并且不會在加電或重啟時完成配置。
產(chǎn)生這種問題的深入分析
該問題可能在三種情況下發(fā)生:
····設備通電或重啟。脈沖PROGRAM_B不會導致此問題,因為Vivado硬件管理器不會看到電纜斷開,并執(zhí)行電纜自動檢測。
····用戶發(fā)出“刷新硬件設備“命令
····用戶插入JTAG電纜
解決方案如下:
1)設置以下參數(shù),禁用通電檢測set_param labtools.auto_update_hardware 0注意:您需要創(chuàng)建一個Vivado_init.tcl腳本并在其中添加上述參數(shù)。
關于Vivado_init.tcl的其他信息:當您啟動Xilinx設計工具時,它會尋找Vivado_init.tcl兩個不同位置的初始化腳本:
1)在軟件安裝中:安裝目錄/viva do/version/scripts/viva do _ init . TCL安裝目錄是Vivado設計套件的安裝目錄。
2)在本地用戶目錄中:對于Windows 7:% APPDATA % Roaming Xilinx viva do viva do _ init . TCL對于Linux:$HOME/。Xilinx/Vivado/Vivado_init.tcl?如果Vivado_init.tcl存在于這兩個位置,Vivado首先從安裝目錄獲取文件,然后從您的主目錄獲取文件。如需更多信息,請參閱(UG894)中的加載和運行Tcl腳本一章使用Tcl腳本的Vivado設計套件用戶指南.https://docs.amd.com/access/sources/dita/map?Isla test = true & URL = ug 894-vivado-TCL-scripting & ft:locale = en-US2)在通電或重啟之前,拔下電纜。
3)減緩輪詢的發(fā)生。例如,要每小時輪詢一次,請使用以下選項啟動hw_server:hw_server -e "set jtag-poll-delay 3600000000"This command should be called in the CMD window instead of Vivado Tcl console.
4)按如下方式在JTAG模式下關閉并重新打開目標,以防止發(fā)生任何輪詢,然后恢復到正常模式: a)在JTAG模式下關閉并重新打開目標:set tmp_target [ get_hw_targets -filter { IS_OPENED == 1 }]close_hw_target $tmp_targetopen_hw_target -jtag_mode on $tmp_targetset_property LOCK true [get_property ?HW_JTAG $tmp_target]b)一旦部件啟動,恢復到正常模式:set_property LOCK false [get_property ?HW_JTAG $tmp_targetclose_hw_target $tmp_targetopen_hw_target $tmp_target
上述方式,歡迎小伙伴進行驗證(筆者暫未驗證,以上信息來自xilinx的官方網(wǎng)站)。
本篇內(nèi)容中有部分資源來源于網(wǎng)絡,如有侵權,請聯(lián)系作者。