圖2展示了包含選擇濾波器拓撲、定點設計工具以及用于定點和浮點設計仿真與分析的范例VI。這個VI提供了能夠隨著仿真運行對實現參數進行交互式修改的接口。首先,可以保持定點建模參數不變,使用默認的濾波器拓撲,使用正態分布的白噪聲信號作為濾波器輸入,測試濾波器在所有頻率下的響應。圖3給出了仿真結果。很明顯,定點濾波器并沒有給出與浮點仿真相同的結果,盡管設計的濾波器具有幾乎相同的幅度、相位和零極點圖。濾波器分析報告指出由于在乘法、加法、延遲中產生了上溢出和下溢出,因此得到的結果不夠理想。利用在VI環境中給出的信息,用戶可以對定點實現進行運行時修改,例如增加問題區域中的整數字長、嘗試其他濾波器拓撲或是修改定點建模的其他屬性。對于這個設計而言,提高乘法、加法和延遲的整數字長就可以得到希望的定點設計結果,如圖4所示。
 圖2:程序框圖展示了濾波器的設計,可以修改濾波器拓撲、整數字長、對正態分步的白噪聲進行定點和浮點設計仿真以及仿真分析。

圖3:前面板顯示了定點濾波器設計和浮點濾波器設計的幅度、相位和零極點圖特性以及仿真結果和第一個測試的分析。

圖4:根據在濾波器分析報告中提供的信息,增加了加法、乘法和延遲的整數字長,現在定點設計和浮點設計的仿真結果能夠匹配。
設計驗證與發布
虛擬儀器通過與測試測量應用中所需的硬件自然整合在一起,改進了工程設計。在上述數字濾波器設計中, PCI數據采集設備能夠獲得實際信號,將它與仿真信號進行比較,就更加能確保濾波器設計的正確性。由于LabVIEW與NI以及眾多第三方廠家的數據采集硬件緊密整合,這點在工程設計中又是一個重要的優點。
許多測試與測量應用需要具有能夠在包括實時系統與嵌入式系統在內的多平臺之間的可移植性。這點又是與工程設計相關的,其中VI需要可以被用于各種通用操作系統,包括Windows、Mac、Linux,以及支持LabVIEW的FPGA、DSP和任何32位微處理器等嵌入式系統。數字濾波器設計工具包是LabVIEW的一個附件,它提供了定點建模工具和LabVIEW FPGA以及ANSI-C代碼生成。DSP工程師現在可以利用LabVIEW的強大功能進行完整的數字濾波器開發,從設計到驗證直至嵌入式系統發布。
數字濾波器設計工具包為學術應用和工業應用都提供了發布方案。一種是將濾波器參數保存到文件中,這也是最簡單的發布方式,它將所有實現細節保存到文件中,供以后使用。使用LabVIEW DSP模塊,可以讀取過去保存在文件中的濾波器參數,并在DSP上實時實現。LabVIEW DSP將圖形化編程帶入到多個硬件平臺上,能夠廣泛地應用于學術中,其中包括了NI SPEEDY-33和Texas Instruments C6711、C6713、C6416 DSK,用于對DSP進行設計、快速原型開發和發布。它很好地支持了快速VI(Express VIs),可以加速開發速度,能夠對板卡上的模擬及數字IO進行直接存取,并支持圖形編程環境的調試。
另一種方案是FPGA發布,數字濾波器設計工具包能根據定點數字濾波器設計生成LabVIEW FPGA代碼,并在LabVIEW FPGA模塊中使用生成的代碼,它利用Xilinx編譯器直接同步位于NI可重配置I/O(RIO)硬件上的FPGA。具有RIO技術的設備有著多種外形規格,包括PCI、PXI以及CompactRIO可編程自動化控制器。LabVIEW FPGA提供了在數字濾波器應用中 對數字I/O線路和模擬I/O線路的直接訪問。
ANSI-C代碼生成是另一種發布數字濾波器設計的選擇。LabVIEW嵌入式開發模塊利用第三方嵌入式工具鏈和操作系統,能對LabVIEW生成的C代碼進行編譯、連接,并下載到任何32位微處理器目標中。使用LabVIEW嵌入式模塊,您可以在前面板和程序框圖中交互式地調試程序,訪問板卡的外圍I/O,使用任何用于嵌入式應用的1000個內置數字處理和信號處理VI。

圖5:LabVIEW DSP、LabVIEW FPGA和LabVIEW嵌入式模塊將圖形化編程的強大功能引入到無限的硬件平臺中。
虛擬儀器是用于測試和測量系統設計與實現的可行方法。虛擬儀器思想所采用的獨特方法可以應用到工程設計應用和信號處理開發中,并且實現在理論設計、分析測試與發布實現中使用同一工具。
|