NI矢量信號(hào)收發(fā)器的FPGA編程
雖然頂層FPGA VI集合了13個(gè)儀器設(shè)計(jì)庫的功能,然而在主機(jī)上對(duì)所有這些庫進(jìn)行獨(dú)立編程仍然不方便,并且此應(yīng)用層主機(jī)代碼一點(diǎn)也不像傳統(tǒng)的VSA或者VSG API。為了解決此問題,Simple VSA/VSG項(xiàng)目樣例包含了一個(gè)附加主機(jī)層,將這些儀器設(shè)計(jì)庫集合在一個(gè)接口內(nèi),提供了與供應(yīng)商定義的VSA/VSG API相類似的功能。LabVIEW類為此提供了一個(gè)方便的機(jī)制,即提供一個(gè)嚴(yán)格類型的會(huì)話,公有和私有方法,以及一個(gè)方便的子VI圖標(biāo)頭文件保持機(jī)制。 請(qǐng)注意,LabVIEW類中面向?qū)ο蟮睦^承,并沒有用于此主機(jī)接口。
圖 10.LabVIEW類提供了一個(gè)方便的功能集合和主機(jī)接口保持機(jī)制。
這個(gè)簡單的 VSA/VSG樣例項(xiàng)目還提供了常見的RF VSA和VSG操作所用的若干個(gè)主機(jī)樣例,這些樣例說明了如何正確使用主機(jī)接口。這些樣例涵蓋頻域和I/Q采集;CW和基于序列的波形發(fā)生;以及多輸入多輸出(MIMO)同步。
圖 11.一些主機(jī)樣例說明了Simple VSA/VSG項(xiàng)目樣例使用基于類的主機(jī)接口的方法
簡單 VSA/VSG項(xiàng)目樣例包含極多功能,并提供了熟悉的主機(jī)接口。然而該實(shí)用工具的代價(jià)就是代碼的復(fù)雜度。具體地說,F(xiàn)PGA上的DRAM采用基于波形的抽 取,顯著增加代碼量、復(fù)雜度,以及VST FPGA資源占用。然而,并不是所有應(yīng)用均需要基于波形或者儀器數(shù)據(jù)移動(dòng)范式。一些應(yīng)用更加適合實(shí)時(shí)流數(shù)據(jù)移動(dòng)架構(gòu)。對(duì)于這些應(yīng)用,VST Streaming項(xiàng)目范例是一個(gè)更好的起點(diǎn),自定義的自由度更廣。
圖 12.VST Streaming項(xiàng)目樣例在主機(jī)和FPGA上集合了儀器設(shè)計(jì)庫,提供了一個(gè)靈活地開發(fā)實(shí)時(shí)、低滯后信號(hào)處理和嵌入式應(yīng)用的起
評(píng)論