基于AD9361的簡(jiǎn)易頻譜分析儀設(shè)計(jì)與實(shí)現(xiàn)
地址0x005為AD9361的RFPLL Dividers寄存器,可以配置該寄存器的值,對(duì)VCO進(jìn)行分頻,得到接收通路的LO頻率信息。
本文引用地址:http://www.ex-cimer.com/article/201608/296189.htm(1)
地址0x012為AD9361的 Parallel Port Configuration寄存器,可以配置AD9361數(shù)字接口的方式,本設(shè)計(jì)中,采用LVDS的雙端口模式,因此,這里設(shè)置該寄存器的值為0x10。
地址0x013為AD9361的ENSM Mode寄存器,可以通過(guò)配置該寄存器AD9361的FDD狀態(tài)機(jī)和TDD狀態(tài)機(jī)之間的轉(zhuǎn)換。本設(shè)計(jì)中,采用FDD模式,因此設(shè)該寄存器的值為0x01。
AD9361的VCO頻率相關(guān)寄存器地址為0x231~0x235,該組寄存器設(shè)置的VCO值可以為6GHz~12GHz,經(jīng)過(guò)0x005寄存器所設(shè)置的值進(jìn)行分頻后,作為AD9361 RX的LO。其計(jì)算公式為:
(2)
(3)
此外,ADI公司提供了基于Xilinx SDK的AD9361控制函數(shù),可以使用這些函數(shù)對(duì)AD9361進(jìn)行配置,這樣可以簡(jiǎn)化AD9361的配置過(guò)程,提高工作效率,并提高配置的準(zhǔn)確性。
2.2 ZYNQ PS與AD9361的通信
ZYNQ PS與AD9361采用SPI和GPIO接口進(jìn)行通信。ZYNQ內(nèi)包含兩個(gè)SPI控制器,可以工作在主/從模式或多主機(jī)模式下。本次設(shè)計(jì)采用ZYNQ PS中的一組SPI控制器對(duì)AD9361的相關(guān)寄存器進(jìn)行讀寫(xiě)。在ZYNQ上,我們可以通過(guò)MIO引出最多54個(gè)GPIO引腳,所有的GPIO都可以單獨(dú)配置成輸入、輸出以及中斷的功能。本設(shè)計(jì)中,采用GPIO對(duì)AD9361的TXNRX、ENABLE以及RESETB引腳進(jìn)行配置,以達(dá)到對(duì)AD9361控制的目的。
2.3 基于ZYNQ PL的頻譜分析模塊
頻譜分析模塊主要由時(shí)序處理模塊、加窗模塊、FFT模塊及DMA模塊完成,F(xiàn)FT的點(diǎn)數(shù)由ZYNQ PS部分通過(guò)AXI_GPIO模塊控制,圖3為ZYNQ PL頻譜分析部分的框圖。
數(shù)字信號(hào)輸入為模擬信號(hào),經(jīng)過(guò)射頻輸入及轉(zhuǎn)換模塊后得到的數(shù)字信號(hào),該數(shù)字信號(hào)的采樣率為60MSPS,由LVDS方式通過(guò)FMC接口輸入至該模塊輸入端。
時(shí)序處理模塊將PL中相關(guān)模塊的時(shí)序和AD9361收發(fā)機(jī)的數(shù)字接口時(shí)序進(jìn)行相互轉(zhuǎn)換,使其頻譜分析模塊可以正常工作。
由于在使用FPGA進(jìn)行信號(hào)處理中,不可能對(duì)無(wú)限長(zhǎng)的信號(hào)進(jìn)行測(cè)量和分析,只能對(duì)信號(hào)進(jìn)行截?cái)啵?duì)截?cái)嗖糠诌M(jìn)行周期拓展并進(jìn)行處理。但這樣得到的信號(hào)會(huì)發(fā)生頻譜泄露現(xiàn)象。為了減小頻譜泄露的影響,需在計(jì)算FFT變換之前采用加窗技術(shù),常見(jiàn)的窗有:hanning窗、hamming窗以及Gaussian窗等。本設(shè)計(jì)采用8192點(diǎn)的hanning窗,以減少由于信號(hào)截?cái)嗨鶐?lái)的頻譜泄露現(xiàn)象。
FFT模塊對(duì)輸入的數(shù)據(jù)進(jìn)行FFT或IFFT變換,得到時(shí)域數(shù)據(jù)的頻譜信息或頻域數(shù)據(jù)的時(shí)域信息。其中FFT模塊的計(jì)算點(diǎn)數(shù)為8~8192點(diǎn),F(xiàn)FT模塊使用Xilinx官方提供的IP 核。
ZYNQ PS模塊為頻譜分析模塊提供控制信息,并接收由AXI_DMA傳輸?shù)念l譜數(shù)據(jù)。ZYNQ PS與AXI_GPIO通過(guò)AXI4協(xié)議進(jìn)行數(shù)據(jù)傳輸,與AXI_DMA通過(guò)AXI_Lite協(xié)議進(jìn)行控制信號(hào)傳輸。FFT與DMA之間使用AXI_Stream協(xié)議進(jìn)行數(shù)據(jù)傳輸。
DMA與ZYNQ PS HP接口之間通過(guò)AXI協(xié)議進(jìn)行傳輸,這樣可以擁有很高的吞吐率和性能,但需要花費(fèi)額外的邏輯資源。
2.4 ZYNQ與PC通信
為了更方便地進(jìn)行頻譜分析以及對(duì)頻譜分析儀的控制,設(shè)計(jì)參考文獻(xiàn)[7]采用串口方式將得到的頻譜分析數(shù)據(jù)發(fā)送到PC端,頻譜分析首先數(shù)據(jù)經(jīng)過(guò)DMA傳輸?shù)絇S的內(nèi)存中,然后通過(guò)串口將數(shù)據(jù)發(fā)送到PC端。串口速率傳輸較慢,F(xiàn)FT轉(zhuǎn)換并不是持續(xù)轉(zhuǎn)換,一次轉(zhuǎn)換數(shù)據(jù)全部通過(guò)串口發(fā)送完畢后,再進(jìn)行下一次轉(zhuǎn)換。
3 系統(tǒng)測(cè)試
為了方便觀察結(jié)果,我們?cè)诠こ讨屑尤肓薎LA模塊監(jiān)視AD采集到的數(shù)據(jù),如圖4所示,在Vivado中的Hardware Manager中抓取的AD輸入數(shù)據(jù),圖5為串口收到對(duì)應(yīng)FFT后的數(shù)據(jù)。
將AD9361的本振設(shè)置為1.9GHz,外接信號(hào)源設(shè)置為1.902GHz,且頻率為-50dBm,得到的頻譜數(shù)據(jù)經(jīng)過(guò)上位機(jī)處理后得出圖6所示的結(jié)果,其中MATLAB所計(jì)算出來(lái)的2MHz的功率值為-49.7101dBm。
表1為利用該頻譜分析儀測(cè)試的一些數(shù)據(jù),測(cè)試時(shí)本振設(shè)置為1.9GHz。
測(cè)試結(jié)果表明,該頻譜分析儀通帶范圍為L(zhǎng)O-20MHz到LO+20MHz,在該通帶范圍內(nèi)可以較為準(zhǔn)確地分析的信號(hào)功率為0dBm到-65dBm,平均誤差小于1.5dB。當(dāng)信號(hào)源頻率與LO頻率相差為20MHz時(shí),絕對(duì)誤差約為1dB左右。經(jīng)過(guò)分析,是AD9361內(nèi)部的模擬低通濾波器部分對(duì)信號(hào)造成了消減,因此產(chǎn)生了誤差。
4 總結(jié)與展望
論文采用ZedBoard平臺(tái)以及AD9361射頻收發(fā)機(jī)設(shè)計(jì)并實(shí)現(xiàn)了一款簡(jiǎn)易頻譜分析儀,該頻譜分析儀核心部件為AD9361和ZedBoard,外加一臺(tái)電腦,成本低廉,方便可靠,成品作為個(gè)人或小型團(tuán)隊(duì)使用。如果對(duì)傳輸速率有更高的要求,可以利用ZedBoard的網(wǎng)口將頻譜分析后的數(shù)據(jù)傳送到PC端。
參考文獻(xiàn):
[1]Harikrishnan B, Raghul R, Shibu R M, et al. All programmable SOC based standalone SDR platform for researchers and academia[C]// Computational Systems and Communications (ICCSC), 2014 First International Conference on. IEEE, 2014:384 - 386.
[2]陸佳華, 江舟, 馬岷. 嵌入式系統(tǒng)軟硬件協(xié)同設(shè)計(jì)實(shí)戰(zhàn)指南:基于Xilinx Zynq[M]. 北京:機(jī)械工業(yè)出版社, 2013.
[3]Analog Devices, Inc. RF Agile Transceiver AD9361 Data Sheet[EB/OL]. http://www.analog.com/media/en/technical-documentation/data-sheets/AD9361.pdf.
[4]Analog,Devices.AD-FMCOMMS3-EBZ-UserGuide[EB/OL].http://wiki.analog.com/resources/eval/user-guides/ad-fmcomms3-ebz.
[5]孟憲元. Xilinx新一代FPGA設(shè)計(jì)套件Vivado應(yīng)用指南[M]. 清華大學(xué)出版社, 2014.
[6]Louise, H. Crockett, Ross, A. Elliot, Martin, A. Enderwitz, Robert, W. Stewart. The Zynq Book Tutorials[J/OL]. http://www.zynqbook.com/downloads.html.
[7]夏柯, 門(mén)蘭寧. 基于ZYNQ-7000 DMA控制器的UART數(shù)據(jù)傳輸?shù)脑O(shè)計(jì)與實(shí)現(xiàn)[J]. 信息系統(tǒng)工程, 2014, (9):113-114.
本文來(lái)源于中國(guó)科技期刊《電子產(chǎn)品世界》2016年第8期第49頁(yè),歡迎您寫(xiě)論文時(shí)引用,并注明出處
評(píng)論