LabVIEWCompactRIO 開發(fā)指南33 測試和調(diào)試LabVIEW FPGA代碼
LabVIEWCompactRIO?開發(fā)指南33
測試和調(diào)試LabVIEW?FPGA代碼
如前所述,應(yīng)在仿真模式下開發(fā)LabVIEWFPGA?VI,以快速迭代設(shè)計并避免冗長的編譯時間。當(dāng)需要測試和調(diào)試VI時,可以保持仿真模式或利用其他幾個選項。應(yīng)該根據(jù)功能驗證與性能的要求以及要測試的代碼類型(單元、組件或系統(tǒng))選擇執(zhí)行模式。每種類型的代碼都有不同的屬性和驗證要求,如下所述。
Unit
“Unit”是可以構(gòu)建的最基本級別的IP,因為它映射到特定的處理函數(shù)或算法。不會拆分它并將其作為一組較小的功能單元進行測試。
希望保持這些簡單,因此在以下情況下將其稱為單位:
■它可以封裝為用戶可能希望在設(shè)計的其他部分重用的子VI
■不包括I/O、數(shù)據(jù)通信或任何目標(biāo)資源
■它沒有多個并行或以不同速率運行的回路
■它本質(zhì)上是功能性的——可以提供一些已知的輸入并測試預(yù)期的輸出
■它可能保持狀態(tài),在這種情況下,可能需要多次調(diào)用它來驗證它,但它的行為不應(yīng)依賴于顯式的特定時間流逝或控制
Component
Component是更復(fù)雜的邏輯片段,包括可能更關(guān)注系統(tǒng)中時序的元素。根據(jù)定義,它們是可組合的,并且通常具有明確的任務(wù)或目標(biāo)要完成。FPGA應(yīng)用通??梢苑纸鉃槎鄠€組件,此級別的驗證可確保組件在集成到更大的組件中時按預(yù)期交互??赡苓€希望確保子組件與I/O或主機正確交互(通過主機接口),而無需等到整個系統(tǒng)組裝完畢。
系統(tǒng)
可以將系統(tǒng)級別視為最頂層的組件。它由頂級FPGA?VI以及通過組件級IP(CLIP)節(jié)點導(dǎo)入的任何其他HDLIP表示。它與其他組件有些不同,因為它的接口向主機應(yīng)用程序公開,因此驗證測試要么類似于運行主機應(yīng)用,要么是主機應(yīng)用。因此,驗證需要使用主機接口API以及將實際I/O信號連接到系統(tǒng)。一個系統(tǒng)通常包含多個While循環(huán)或SCTL。
表5.2提供了有關(guān)應(yīng)使用哪種執(zhí)行模式進行驗證和調(diào)試的指導(dǎo)。請記住,如果可以在單元和組件級別執(zhí)行廣泛的調(diào)試和驗證,則可以減少系統(tǒng)級別的驗證工作。
表5.2.用于驗證和調(diào)試LabVIEW?FPGA代碼的不同執(zhí)行模式

在WindowsPC上執(zhí)行LabVIEW?FPGA代碼
可以通過將FPGA?VI拖動到LabVIEW項目中的“我的電腦”目標(biāo),在WindowsPC上執(zhí)行FPGA?VI。這是調(diào)試、測試單元級代碼的最快、最簡單的方法。LabVIEW?FPGA選板中包含的所有函數(shù)(不包括目標(biāo)資源)都可以在桌面環(huán)境中執(zhí)行。
這種方法有幾個好處。為了進行調(diào)試,可以訪問標(biāo)準(zhǔn)LabVIEWdebuging功能和可視化選項(圖形、圖表等)。出于測試目的,可以訪問LabVIEW中的數(shù)個用于桌面編程選板的庫。
在此上下文中,不要更改LabVIEW?FPGA代碼,因為不再被限制在有限的LabVIEW?FPGA選板中,并且可能會引入僅在桌面上支持的結(jié)構(gòu)。MyComputer執(zhí)行環(huán)境是開發(fā)測試的理想選擇,這些測試涉及圍繞LabVIEW?FPGA?VI編寫代碼。
在模擬模式下執(zhí)行
另一種選擇是使用LabVIEW?FPGA仿真。仿真使用內(nèi)置的高保真、位精確仿真器在主機上執(zhí)行FPGA代碼。假設(shè)設(shè)計可以以所需的速率編譯,則在仿真SCTL中包含的代碼時,模擬器是周期精確的。該仿真器支持FPGA目標(biāo)資源,如I/O、內(nèi)存項和DMA?FIFO,因此可以用于單元和組件級的代碼。可以將LabVIEW?FPGA?VI配置為在仿真模式下運行,只需在LabVIEW項目中右擊FPGA目標(biāo),然后選擇在?Development?Computer?with?Simulated?I/O。

圖5.29.更改LabVIEW?FPGA?VI的執(zhí)行模式
?
需要說明的是,上述的例程和文檔,都是可以下載的,雙擊即可打開,其中壓縮文件是可以采用粘貼復(fù)制的方式,拷貝到硬盤上。這不是圖片,各位小伙伴看到后嘗試一下,這個問題就不用加微信咨詢了。有關(guān)LabVIEW編程、LabVIEW開發(fā)等相關(guān)項目,可聯(lián)系們。附件中的資料這里無法上傳,可去公司網(wǎng)站搜索下載。