新聞中心

EEPW首頁(yè) > 設(shè)計(jì)應(yīng)用 > NI矢量信號(hào)收發(fā)器的FPGA編程

NI矢量信號(hào)收發(fā)器的FPGA編程

作者: 時(shí)間:2014-07-11 來(lái)源:網(wǎng)絡(luò) 收藏

本文引用地址:http://butianyuan.cn/article/259368.htm

另外,這些庫(kù)在默認(rèn)情況下處于鎖定狀態(tài),用戶(hù)在修改內(nèi)容之前,需要先通過(guò)會(huì)話(huà)框?qū)I解鎖。下文所述是使用這些儀器設(shè)計(jì)庫(kù)的詳細(xì)信息,適用于任何更改。

在給定儀器設(shè)計(jì)庫(kù)的主機(jī)與FPGA之間交換數(shù)據(jù)可采用多種機(jī)制。所有采用LabVIEW RIO架構(gòu)和LabVIEW FPGA的產(chǎn)品均使用-RIO驅(qū)動(dòng),此驅(qū)動(dòng)提供了單點(diǎn)方式的、存儲(chǔ)器映射、基于寄存器的主機(jī)至FPGA以及FPGA至主機(jī)通信,還有從主機(jī)至 FPGA以及FPGA至主機(jī)的多點(diǎn)連續(xù)DMA FIFO。這些都是功能強(qiáng)大的數(shù)據(jù)交換機(jī)制,實(shí)現(xiàn)主機(jī)與FPGA之間的有效通信不需要了解或者只要些許了解底層總線(xiàn)架構(gòu)。

儀器設(shè)計(jì)庫(kù)的一個(gè)常見(jiàn)要求是:主機(jī)代碼需要將大量的設(shè)置下載到設(shè)備中,例如要對(duì)與FPGA相連接的芯片寄存器進(jìn)行編程,或者更新設(shè)置組,例 如FPGA上的濾波器抽頭。由于一些儀器設(shè)計(jì)庫(kù)要求采用此策略,并且設(shè)備的DMA通道數(shù)目有限,所以這些庫(kù)可能需要共享一個(gè)FIFO,從而需要在主機(jī)端和 FPGA端增加額外的邏輯來(lái)實(shí)現(xiàn)。另外,對(duì)于大數(shù)據(jù)集來(lái)說(shuō),此類(lèi)通信一般為單向,但是可能也需要提供從FPGA至主機(jī)的某種單點(diǎn)確認(rèn),例如確認(rèn)所有設(shè)置均 已成功應(yīng)用等等。所有這些概念組成為一個(gè)單獨(dú)概念,稱(chēng)為寄存器總線(xiàn),并為一些儀器設(shè)計(jì)庫(kù)所采用。

寄存器總線(xiàn)使用一個(gè)主機(jī)到FPGA端的 DMA FIFO來(lái)下載設(shè)置,以及一些寄存器/-RIO控制器和指示器,用于握手,將單點(diǎn)數(shù)據(jù)返回主機(jī),或者發(fā)出信號(hào),確認(rèn)已下載設(shè)置中的指令已經(jīng)應(yīng)用。

圖 2. 寄存器總線(xiàn)是基于NI-RIO DMA、控制器和指示器構(gòu)建的輕質(zhì)協(xié)議,實(shí)現(xiàn)了大量設(shè)置組至FPGA的高效下載,這是給定儀器設(shè)計(jì)庫(kù)的主機(jī)與FPGA側(cè)之間的常見(jiàn)要求。

為了完成仲裁,每個(gè)儀器設(shè)計(jì)庫(kù)均有一個(gè)獨(dú)一無(wú)二的子系統(tǒng)ID,從而使得多個(gè)庫(kù)能夠共享一條寄存器總線(xiàn)。為了更好地總結(jié)VST儀器設(shè)計(jì)庫(kù)的通信策略,表2說(shuō)明了每個(gè)庫(kù)所采用的策略。

控制器和指示器DMA FIFOs寄存器總線(xiàn)
DSPX
RF InX
RF OutX
BasecardX
多記錄采集XX
波形序列器XX
觸發(fā)同步X
嵌入式配置X

表 2. NI PXIe-5644R儀器設(shè)計(jì)庫(kù)的主機(jī)與FPGA數(shù)據(jù)交換機(jī)制。

另外,通過(guò)與嵌入式配置儀器設(shè)計(jì)庫(kù)配合使用,寄存器總線(xiàn)還可以在不牽涉主機(jī)的情況下完成FPGA觸發(fā)的重新配置。



評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉