LabVIEWCompactRIO?開(kāi)發(fā)指南33
測(cè)試和調(diào)試LabVIEW?FPGA代碼
如前所述,應(yīng)在仿真模式下開(kāi)發(fā)LabVIEWFPGA?VI,以快速迭代設(shè)計(jì)并避免冗長(zhǎng)的編譯時(shí)間。當(dāng)需要測(cè)試和調(diào)試VI時(shí),可以保持仿真模式或利用其他幾個(gè)選項(xiàng)。應(yīng)該根據(jù)功能驗(yàn)證與性能的要求以及要測(cè)試的代碼類(lèi)型(單元、組件或系統(tǒng))選擇執(zhí)行模式。每種類(lèi)型的代碼都有不同的屬性和驗(yàn)證要求,如下所述。
Unit
“Unit”是可以構(gòu)建的最基本級(jí)別的IP,因?yàn)樗成涞教囟ǖ奶幚砗瘮?shù)或算法。不會(huì)拆分它并將其作為一組較小的功能單元進(jìn)行測(cè)試。
希望保持這些簡(jiǎn)單,因此在以下情況下將其稱為單位:
■它可以封裝為用戶可能希望在設(shè)計(jì)的其他部分重用的子VI
■不包括I/O、數(shù)據(jù)通信或任何目標(biāo)資源
■它沒(méi)有多個(gè)并行或以不同速率運(yùn)行的回路
■它本質(zhì)上是功能性的——可以提供一些已知的輸入并測(cè)試預(yù)期的輸出
■它可能保持狀態(tài),在這種情況下,可能需要多次調(diào)用它來(lái)驗(yàn)證它,但它的行為不應(yīng)依賴于顯式的特定時(shí)間流逝或控制
Component
Component是更復(fù)雜的邏輯片段,包括可能更關(guān)注系統(tǒng)中時(shí)序的元素。根據(jù)定義,它們是可組合的,并且通常具有明確的任務(wù)或目標(biāo)要完成。FPGA應(yīng)用通常可以分解為多個(gè)組件,此級(jí)別的驗(yàn)證可確保組件在集成到更大的組件中時(shí)按預(yù)期交互??赡苓€希望確保子組件與I/O或主機(jī)正確交互(通過(guò)主機(jī)接口),而無(wú)需等到整個(gè)系統(tǒng)組裝完畢。
系統(tǒng)
可以將系統(tǒng)級(jí)別視為最頂層的組件。它由頂級(jí)FPGA?VI以及通過(guò)組件級(jí)IP(CLIP)節(jié)點(diǎn)導(dǎo)入的任何其他HDLIP表示。它與其他組件有些不同,因?yàn)樗慕涌谙蛑鳈C(jī)應(yīng)用程序公開(kāi),因此驗(yàn)證測(cè)試要么類(lèi)似于運(yùn)行主機(jī)應(yīng)用,要么是主機(jī)應(yīng)用。因此,驗(yàn)證需要使用主機(jī)接口API以及將實(shí)際I/O信號(hào)連接到系統(tǒng)。一個(gè)系統(tǒng)通常包含多個(gè)While循環(huán)或SCTL。
表5.2提供了有關(guān)應(yīng)使用哪種執(zhí)行模式進(jìn)行驗(yàn)證和調(diào)試的指導(dǎo)。請(qǐng)記住,如果可以在單元和組件級(jí)別執(zhí)行廣泛的調(diào)試和驗(yàn)證,則可以減少系統(tǒng)級(jí)別的驗(yàn)證工作。
表5.2.用于驗(yàn)證和調(diào)試LabVIEW?FPGA代碼的不同執(zhí)行模式
?
在WindowsPC上執(zhí)行LabVIEW?FPGA代碼
可以通過(guò)將FPGA?VI拖動(dòng)到LabVIEW項(xiàng)目中的“我的電腦”目標(biāo),在WindowsPC上執(zhí)行FPGA?VI。這是調(diào)試、測(cè)試單元級(jí)代碼的最快、最簡(jiǎn)單的方法。LabVIEW?FPGA選板中包含的所有函數(shù)(不包括目標(biāo)資源)都可以在桌面環(huán)境中執(zhí)行。
這種方法有幾個(gè)好處。為了進(jìn)行調(diào)試,可以訪問(wèn)標(biāo)準(zhǔn)LabVIEWdebuging功能和可視化選項(xiàng)(圖形、圖表等)。出于測(cè)試目的,可以訪問(wèn)LabVIEW中的數(shù)個(gè)用于桌面編程選板的庫(kù)。
在此上下文中,不要更改LabVIEW?FPGA代碼,因?yàn)椴辉俦幌拗圃谟邢薜腖abVIEW?FPGA選板中,并且可能會(huì)引入僅在桌面上支持的結(jié)構(gòu)。MyComputer執(zhí)行環(huán)境是開(kāi)發(fā)測(cè)試的理想選擇,這些測(cè)試涉及圍繞LabVIEW?FPGA?VI編寫(xiě)代碼。
在模擬模式下執(zhí)行
另一種選擇是使用LabVIEW?FPGA仿真。仿真使用內(nèi)置的高保真、位精確仿真器在主機(jī)上執(zhí)行FPGA代碼。假設(shè)設(shè)計(jì)可以以所需的速率編譯,則在仿真SCTL中包含的代碼時(shí),模擬器是周期精確的。該仿真器支持FPGA目標(biāo)資源,如I/O、內(nèi)存項(xiàng)和DMA?FIFO,因此可以用于單元和組件級(jí)的代碼。可以將LabVIEW?FPGA?VI配置為在仿真模式下運(yùn)行,只需在LabVIEW項(xiàng)目中右擊FPGA目標(biāo),然后選擇在?Development?Computer?with?Simulated?I/O。
圖5.29.更改LabVIEW?FPGA?VI的執(zhí)行模式文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-457683.html
需要說(shuō)明的是,上述的例程和文檔,都是可以下載的,雙擊即可打開(kāi),其中壓縮文件是可以采用粘貼復(fù)制的方式,拷貝到硬盤(pán)上。這不是圖片,各位小伙伴看到后嘗試一下,這個(gè)問(wèn)題就不用加微信咨詢了。有關(guān)LabVIEW編程、LabVIEW開(kāi)發(fā)等相關(guān)項(xiàng)目,可聯(lián)系們。附件中的資料這里無(wú)法上傳,可去公司網(wǎng)站搜索下載。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-457683.html
到了這里,關(guān)于LabVIEWCompactRIO 開(kāi)發(fā)指南33 測(cè)試和調(diào)試LabVIEW FPGA代碼的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!