NI矢量信號收發(fā)器的FPGA編程
VST Streaming項(xiàng)目樣例的頂層FPGA VI的架構(gòu)與簡單 VSA/VSG項(xiàng)目樣例相近。然而如果仔細(xì)考察,會發(fā)現(xiàn)要簡單得多。可以明顯看出,VST Streaming沒有代碼量極多的配置過程。配置循環(huán)也簡單得多,只有一條寄存器總線而非兩條,并且所有子系統(tǒng)均包在一個(gè)子VI中。
圖 13.VST Streaming項(xiàng)目樣例中的FPGA VI配置回路,只有一個(gè)寄存器總線接口,比Simple VSA / VSG要簡單得多
VST Streaming項(xiàng)目樣例沒有獨(dú)立的采集和發(fā)生循環(huán),而是所有模擬I/O均采用一個(gè)循環(huán)。對于要求RF輸入輸出之間的相位關(guān)系已知的應(yīng)用,由于ADC和 DAC使用相同的采樣時(shí)鐘,此架構(gòu)提供了兩者之間的確定性同步。DSP和VST Streaming項(xiàng)目樣例的校準(zhǔn)類似于VSA / VSG。
兩個(gè)項(xiàng)目樣例FPGA VI之間的主要區(qū)別是:VST Streaming項(xiàng)目樣例使用輕質(zhì)機(jī)制完成與主機(jī)之間的數(shù)據(jù)收發(fā)。它采用簡單的流控制器,支持基本觸發(fā)、連續(xù)和間斷流,以及溢出和下溢檢測。這些控制器 中斷信號源與目的地之間的2線握手信號,有效地選通數(shù)據(jù)流??刂破鞑恢С秩?線握手方案,該方案能夠調(diào)整上游節(jié)點(diǎn)或者被下游節(jié)點(diǎn)所調(diào)整;因此,系統(tǒng)特性化 以及確保這些流控制器控制的所有FIFO均能夠以要求的速率產(chǎn)生或消耗數(shù)據(jù)就落到了程序員的肩上。在VST Streaming項(xiàng)目樣例中通過簡單的更改默認(rèn)情況下完成與主機(jī)之間的數(shù)據(jù)收發(fā)的FIFO,可以支持?jǐn)?shù)據(jù)流傳輸?shù)絍ST FPGA上的其他位置以進(jìn)行進(jìn)一步處理,或者通過PXI Express背板,利用P2P傳輸至其他模塊。
圖 14.FPGA流控制器和FIFO封裝實(shí)現(xiàn)基本流控制,并且能夠輕松改變數(shù)據(jù)流的源及目的地路線。
現(xiàn)在來看VST Streaming項(xiàng)目樣例的主機(jī)端,雖然機(jī)制與Simple VSA/VSG不同,也存在類似于儀器設(shè)計(jì)庫主機(jī)組件的集成,。VST Streaming項(xiàng)目樣例不使用LabVIEW類,而是將功能簡單地集成到子VI中,并將會話傳遞至子VI之間的寄存器總線。此寄存器總線會話還包含有 FPGA VI 引用,因此所有這些子VI不僅能夠訪問寄存器總線通信策略,而且還可以訪問NI-RIO FIFO和控制器。另外,不存在獨(dú)立的數(shù)據(jù)采集和生成會話;所有VI均使用同一會話。
圖 15.VST Streaming項(xiàng)目樣例主機(jī)接口具有一個(gè)基于寄存器總線的會話線,用于采集和生成subVI。在邏輯上,此樣例將采集和生成分組成為獨(dú)立的行,以方便閱讀。.
評論