苗鑫
基于FPGA的低噪聲三角波信號(hào)發(fā)生器設(shè)計(jì)
苗鑫
(沐曦集成電路(南京)有限公司,江蘇 南京 210000)
基于XC7K325T FPGA邏輯控制和AD9783數(shù)模轉(zhuǎn)換模塊設(shè)計(jì)一款低噪聲三角波信號(hào)發(fā)生器,輸出阻抗為50 Ω,電平噪聲小于5 mV的低噪聲三角波調(diào)制信號(hào)。實(shí)測(cè)結(jié)果表明,該發(fā)生器與專用的信號(hào)發(fā)生器相比,其輸出的三角波調(diào)制信號(hào)電平噪聲較低,提高了三角波信號(hào)發(fā)生器的信號(hào)質(zhì)量。
XC7K325T FPGA邏輯控制;AD9783數(shù)模轉(zhuǎn)換;三角波信號(hào)發(fā)生器;三角波調(diào)制信號(hào)
信號(hào)發(fā)生器是一種提供頻率、波形和輸出電平電信號(hào)的設(shè)備,廣泛應(yīng)用于各種電路。目前,專用的信號(hào)發(fā)生器雖然精度較高,但價(jià)格昂貴,不便于攜帶,無法應(yīng)用于小型產(chǎn)品中。
目前數(shù)據(jù)處理通常采用數(shù)字信號(hào)處理(digital signal processing, DSP)專用芯片和現(xiàn)場(chǎng)可編程門陣列(field programmable gate array, FPGA)器件來實(shí)現(xiàn)[1]。其中,DSP存在成本高、難以編程、頻率低的問題,不利于并行處理任務(wù);FPGA可用于高速信號(hào)處理,大量的I/O接口方便擴(kuò)展設(shè)計(jì),且時(shí)鐘管理塊可產(chǎn)生高頻時(shí)鐘,提高了數(shù)據(jù)處理和傳輸?shù)乃俾蔥2]。
本文設(shè)計(jì)了以FPGA為邏輯控制模塊,AD9783為數(shù)模轉(zhuǎn)換模塊的三角波信號(hào)發(fā)生器,實(shí)現(xiàn)低噪聲的三角波調(diào)制信號(hào)輸出。
基于FPGA的低噪聲三角波信號(hào)發(fā)生器由XC7K325T FPGA邏輯控制、DC-DC電源轉(zhuǎn)換、以太網(wǎng)數(shù)據(jù)傳輸、AD9783數(shù)模轉(zhuǎn)換和AD8009信號(hào)放大5個(gè)模塊組成,如圖1所示。
圖1 基于FPGA的低噪聲三角波信號(hào)發(fā)生器總體設(shè)計(jì)
XC7K325T FPGA邏輯控制模塊主要對(duì)AD9783數(shù)模轉(zhuǎn)換模塊進(jìn)行控制,包括SPI接口配置和LVDS數(shù)據(jù)發(fā)送等。
DC-DC電源轉(zhuǎn)換模塊由DC電源提供5 V輸入電壓,輸出電壓分別為1.2 V(給XC7K325T FPGA邏輯控制模塊供電)、1.8 V(給以太網(wǎng)數(shù)據(jù)傳輸模塊供電)、1.8 V(給AD9783數(shù)模轉(zhuǎn)換模塊供電)、1.8 V(給AD8009信號(hào)放大模塊供電)。
以太網(wǎng)數(shù)據(jù)傳輸模塊通過千兆以太網(wǎng)口連接上位機(jī)與XC7K325T FPGA邏輯控制模塊。
AD9783數(shù)模轉(zhuǎn)換模塊通過SPI接口接收XC7K-325T FPGA邏輯控制模塊的工作模式配置信息,并將XC7K325T FPGA邏輯控制模塊輸出的LVDS差分?jǐn)?shù)據(jù)轉(zhuǎn)換為模擬信號(hào),輸出給AD8009信號(hào)放大模塊。
AD8009信號(hào)放大模塊對(duì)AD9783數(shù)模轉(zhuǎn)換后的信號(hào)進(jìn)行放大濾波,產(chǎn)生滿足幅度、寬度、噪聲要求的三角波調(diào)制信號(hào)[3]。
XC7K325T FPGA擁有478 k邏輯單元;時(shí)鐘管理塊CMT可支持500 MHz高頻時(shí)鐘;高速收發(fā)器支持12.5 Gb/s的傳輸速率,可用于千兆以太網(wǎng)接口[4];多達(dá)400個(gè)寬范圍(HR)和高性能(HP)I/O可產(chǎn)生SPI控制信號(hào)以及LVDS差分?jǐn)?shù)據(jù)信號(hào),用于高速DAC接口連接。XC7K325T FPGA有豐富的接口資源,如表1所示,可以滿足本設(shè)計(jì)的需求。
表1 XC7K325T FPGA I/O資源數(shù)量 單位:個(gè)
千兆比特收發(fā)器(GTXs)連接XC7K325T FPGA和以太網(wǎng)口;寬范圍(HR)和高性能(HP)I/O連接XC7K325T FPGA和AD9783數(shù)模轉(zhuǎn)換芯片;時(shí)鐘管理器(CMTs)產(chǎn)生高頻輸出I/O時(shí)鐘[5-7]。
上位機(jī)通過以太網(wǎng)將控制命令傳輸給XC7K325T FPGA邏輯控制模塊。XC7K325T FPGA與千兆以太網(wǎng)接口連接如圖2所示。
圖2 XC7K325T FPGA與千兆以太網(wǎng)接口連接圖
125 MHz的差分晶振連接XC7K325T FPGA的MGTREFCLKP/N LVDS差分接口,作為參考時(shí)鐘[8-9];XC7K325T FPGA的MGTXRXP/N和MGTXTXP/N LVDS差分接口分別連接千兆以太網(wǎng)口的RD+/-和TD+/-接口,用來傳輸以太網(wǎng)物理層差分電信號(hào)。在PCB布線時(shí),為使PCB的阻抗匹配,需將LVDS差分線分別做等長(zhǎng)設(shè)置、阻抗100 Ω的匹配處理。
AD9783是一款高速數(shù)模轉(zhuǎn)換芯片,具有高動(dòng)態(tài)范圍、低噪聲等特點(diǎn)。XC7K325T FPGA邏輯控制模塊和AD9783數(shù)模轉(zhuǎn)換模塊的接口連接如圖3所示。
XC7K325T FPGA擁有高性能(HP)和寬范圍(HR)2種I/O組[10]。本設(shè)計(jì)中SPI寄存器配置接口使用寬范圍(HR)I/O組,500 MHz LVDS差分時(shí)鐘和數(shù)據(jù)使用高性能(HP)I/O組。PCB的LVDS差分線需要設(shè)置為等長(zhǎng)、做阻抗100 Ω的匹配處理。
圖3 XC7K325T FPGA和AD9783的接口連接圖
FPGA三模式以太網(wǎng)可實(shí)現(xiàn)以太網(wǎng)數(shù)據(jù)傳輸。FPGA三模式以太網(wǎng)MAC設(shè)計(jì)與開放系統(tǒng)互連(open system interconnection, OSI)參考模型中的數(shù)據(jù)鏈路層和物理層相關(guān)[11]。其中,數(shù)據(jù)鏈路層的MAC和MAC控制子層描述以太網(wǎng)幀協(xié)議的數(shù)據(jù)格式、錯(cuò)誤檢測(cè)以及實(shí)時(shí)流量控制操作;物理層由PCS、PMA和PMD子層組成,主要定義了比特信號(hào)發(fā)送時(shí)相關(guān)的電氣、時(shí)序和其他接口。本設(shè)計(jì)使用2種主要的物理層連接為BASE_T PHYs(MAC和電口連接)、BASE_X PHYs(MAC和光口連接)。FPGA以太網(wǎng)MAC設(shè)計(jì)框圖如圖4所示。
圖4 FPGA以太網(wǎng)MAC設(shè)計(jì)框圖
FPGA三模式以太網(wǎng)MAC的IP核選擇物理接口GMII,MAC速率為1 000 Mb/s。IP核的物理接口與以太網(wǎng)PHY設(shè)備連接,可支持BASE_T標(biāo)準(zhǔn),數(shù)據(jù)傳輸速率分別為1 Gb/s、100 Mb/s和10 Mb/s。PHY設(shè)備可支持GMII/MII、RGMII、以太網(wǎng)1000BASE-X PCS/PMA 或SGMII、SGMII。
以太網(wǎng)MAC的用戶端和FIFO連接,此端口與開關(guān)或者路徑連接。GMII接口時(shí)鐘為125 MHz,數(shù)據(jù)傳輸速率為1 Gb/s。用戶端根據(jù)標(biāo)準(zhǔn)以太網(wǎng)數(shù)據(jù)框架將數(shù)據(jù)寫入FIFO中,并按照數(shù)據(jù)框架要求,一幀數(shù)據(jù)量不大于1 500個(gè)字節(jié)[12]。為保證數(shù)據(jù)傳輸?shù)臏?zhǔn)確性,每一幀數(shù)據(jù)最后4個(gè)字節(jié)為校驗(yàn)數(shù)據(jù)。32-bit循環(huán)冗余校驗(yàn)碼(CRC)的計(jì)算公式為
圖5中,信號(hào)crc_state表示狀態(tài)機(jī)的狀態(tài),信號(hào)ip_tx_start為觸發(fā)crc_state狀態(tài)從IDLE跳轉(zhuǎn)為TOT_LEN的條件;信號(hào)crc_cks表示當(dāng)前狀態(tài)下需要產(chǎn)生的信號(hào)值,直到一幀數(shù)據(jù)產(chǎn)生完成。
圖5 一幀數(shù)據(jù)狀態(tài)流程圖
XC7K325T FPGA邏輯控制使用OSERDES2原語(yǔ)產(chǎn)生LVDS差分采樣時(shí)鐘信號(hào)CLKP/CLKN和LVDS差分?jǐn)?shù)據(jù)信號(hào)D15P、D15N~D0P、D0N,輸出給AD9783數(shù)模轉(zhuǎn)換模塊。XC7K325T FPGA的OSERDES2原語(yǔ)如圖6所示。
XC7K325T FPGA邏輯控制中對(duì)OSERDES2原語(yǔ)進(jìn)行例化使用,OSERDES2原語(yǔ)例化VHDL RTL如下:
u_dclk_inst : OSERDESE2
generic map (
DATA_RATE_OQ => "DDR",
DATA_RATE_TQ => "DDR",
DATA_WIDTH => 4,
INIT_OQ => '0',
INIT_TQ => '0',
SERDES_MODE => "MASTER",
SRVAL_OQ => '0',
SRVAL_TQ => '0',
TBYTE_CTL => "FALSE",
TBYTE_SRC => "FALSE",
TRISTATE_WIDTH => 4
) port map (
…
);
OSERDES2原語(yǔ)中的generic map是需要配置的參數(shù)屬性。本設(shè)計(jì)中主要配置的參數(shù)屬性為數(shù)據(jù),以DDR形式輸出,數(shù)據(jù)位寬為4,模式為MASTER,三態(tài)轉(zhuǎn)換位寬為4。OSERDES2原語(yǔ)輸出給XC7K325T FPGA的高性能(HP)I/O組。
圖6 OSERDES2原語(yǔ)
本文利用500 MHz帶寬、5 GSa/s采樣率的示波器對(duì)基于FPGA的低噪聲三角波信號(hào)發(fā)生器輸出的三角波調(diào)制信號(hào)分別進(jìn)行幅度和噪聲電平的測(cè)試。三角波調(diào)制信號(hào)的幅度如圖7所示。
圖7 三角波調(diào)制信號(hào)的幅度
圖7中,示波器設(shè)置歐姆檔為50Ω,測(cè)得三角波調(diào)制信號(hào)的峰-峰值為1.19V。
將圖7中三角波調(diào)制信號(hào)放大,測(cè)試三角波調(diào)制信號(hào)的噪聲,如圖8所示。
圖8 三角波調(diào)制信號(hào)的噪聲圖
圖8中,三角波調(diào)制信號(hào)被放大后,顯示出其底部的噪聲電平,測(cè)得三角波噪聲幅度小于5mV。5mV的電平噪聲與1.19V的峰-峰值對(duì)比,信噪比為47 dB。
本文利用XC7K325T FPGA和AD9783設(shè)計(jì)基于FPGA的低噪聲三角波信號(hào)發(fā)生器,并介紹了信號(hào)發(fā)生器的硬件部分和FPGA開發(fā)。經(jīng)高頻示波器測(cè)試顯示,三角波調(diào)制信號(hào)的噪聲電平小于5 mV,該設(shè)計(jì)達(dá)到了預(yù)期的效果。
[1] 胡楊,朱鶴元.1.55 μm全光纖相干多普勒激光測(cè)風(fēng)雷達(dá)[J].紅外與激光工程,2016,45(S1):78-82.
[2] 羅甜,胡芳仁,朱海龍.測(cè)風(fēng)激光雷達(dá)信號(hào)載噪比和有效性算法研究[J].微型機(jī)與應(yīng)用,2017,36(12):8-12.
[3] 崔永俊,王晉偉,賈磊,等.基于FPGA的DDS信號(hào)發(fā)生器的設(shè)計(jì)與實(shí)現(xiàn)[J].電子器件,2016,39(2):339-343.
[4] 賀軍義,蔣堅(jiān),李男男.基于FPGA的DDS信號(hào)發(fā)生器設(shè)計(jì)[J].計(jì)算機(jī)測(cè)量與控制,2017,25(2):231-233;237.
[5] 南楠,趙立新.基于FPGA的DDS信號(hào)源研究與設(shè)計(jì)[J].沈陽(yáng)工程學(xué)院學(xué)報(bào)(自然科學(xué)版),2016,12(1):74-82.
[6] 劉曉東,吳佳琪,黃旭,等.基于FPGA的多功能數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)[J].傳感器與微系統(tǒng),2017,36(7):96-99.
[7] 孫嘉霖,李艷輝,霍琦,等.基于FPGA的六維并聯(lián)機(jī)構(gòu)的數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)[J].機(jī)電工程技術(shù),2021,50(5):121-124.
[8] 周希辰,張志武,翟剛毅,等.基于FPGA與高速AD9144的信號(hào)源設(shè)計(jì)[J].雷達(dá)與對(duì)抗,2018,38(1):30-33.
[9] 張新,吳鳳云,王帆.基于FPGA與諧波合成信號(hào)發(fā)生器的實(shí)現(xiàn)[J].現(xiàn)代電子技術(shù),2018,41(2):174-178;182.
[10] 史偉,房強(qiáng),李錦輝,等.激光雷達(dá)用高性能光纖激光器[J].紅外與激光工程,2017,46(8):9-13.
[11] 萬瑋華,仇振安,郝培育,等.一種kHz、窄脈寬、高能量激光器的研究[J].電光與控制,2018,25(4):74-77;91.
[12] 冉自博,馬游春,劉紅雨,等.基于FPGA三角波周期隨機(jī)變化數(shù)字信號(hào)發(fā)生器的設(shè)計(jì)[J].計(jì)算機(jī)測(cè)量與控制,2013, 21(9):2604-2606.
Design of Low Noise Triangular Wave Signal Generator Based on FPGA
MIAO Xin
(MetaX Integrated Circuits(Nanjing) Co., Ltd., Nanjing 210000, China)
Design a low noise triangular wave signal generator based on XC7K325T FPGA logic control and AD9783 analog-to-digital conversion module. The output impedance is 50 Ω, and the level noise is less than 5 mV for a low noise triangular wave modulation signal. The actual measurement results show that compared with a dedicated signal generator, the generator outputs a triangular wave modulation signal with lower level noise, which improves the signal quality of the triangular wave signal generator.
XC7K325T FPGA logic control; AD9783 digital to analog conversion; triangular wave signal generator; triangular wave modulation signal
TP274.2
A
1674-2605(2023)04-0004-06
10.3969/j.issn.1674-2605.2023.04.004
苗鑫,男,1987年生,碩士研究生,工程師,主要研究方向:集成電路。E-mail: the3try@163.com
:苗鑫.基于FPGA的低噪聲三角波信號(hào)發(fā)生器設(shè)計(jì)[J].自動(dòng)化與信息工程,2023,44(4):19-23;27.
MIAO Xin. Design of low noise triangular wave signal generator based on FPGA[J]. Automation & Information Engi- neering, 2023,44(4):19-23;27.