




摘 要: 為了獲得適用于光纖傳感及光纖通信系統的各種調制及驅動信號,提出了一種基于FPGA的多用途信號發生器的設計方案。以FPGA器件為硬件平臺,應用分頻技術和DDS技術產生任意中低頻信號并能同時輸出一種脈沖信號和一種DDS信號及直流信號。脈沖信號的脈沖寬度和重復頻率均可鍵控調節,其最小脈寬可達8 ns,且其脈寬偏差小于0.5 ns,重復頻率為0.05 Hz~100 MHz可調;DDS信號的輸出頻率范圍為0.058 2 Hz~100 kHz,其頻率分辨率可達0.058 2 Hz。實驗結果表明,該信號發生器產生的各種信號穩定性好、精度高且適用于多種場合。
關鍵詞: 信號發生器; 分頻技術; 脈沖信號; FPGA; DDS
中圖分類號: TN911?34 文獻標識碼: A 文章編號: 1004?373X(2016)13?0072?05
Abstract: To obtain different modulating and driving signals suiting for optical fiber sensing and optical fiber communication system, a design scheme of the multipurpose signal generator based on FPGA is proposed. In the scheme, the FPGA device is taken as the hardware platform, and the frequency division technology and DDS technology are used to generate the arbitrary low and medium frequency signal, and output a pulse signal, a DDS signal and DC signal at the same time. Both pulse width and repetition frequency of the pulse signal can be regulated by control keys. The minimum pulse width of pulse signal can reach up to 8 ns, the minimun pulse width deviation is less than 0.5 ns, and the repetition frequency is adjusted from 0.05 Hz to 100 MHz. The output frequency range of the DDS signal is 0.058 2 Hz~100 kHz, and the minimum frequency can reach up to 0.058 2 Hz. The experimental results show that all signals generated by the signal generator have good stability and high precision, and the generator is suitable for various fields.
Keywords: signal generator; frequency division technology; pulse signal; FPGA; DDS
0 引 言
在光纖傳感與光纖通信技術中,常需要對在光纖中傳輸的光載波信號做相應的調制處理以便能在信號接收端接收到按一定規律變化的光信號,以便有利于在信號接收端容易進行信號解調。例如,在分布式光纖傳感技術中,常需要在AOM或EOM的射頻端加載脈沖調制信號對窄線寬激光器輸出的連續激光做脈沖寬度調制以便獲得脈沖激勵光信號[1?2];此外,在光纖通信領域的信道監測技術中,常需要在發射機發出的信號上疊加一個小幅度的低頻正弦信號作為標記,對于不同的信道采用不同的調制頻率,通過在各中繼端檢測不同頻率的調制信號辨別相應光信號的功率電平變化[3?4]。
然而,無論是對在光纖中傳輸的光載波做相應的信號調制處理,還是對相關的調制器加載驅動信號以使調制器正常工作,都必須解決調制信號和驅動信號的產生問題,尤其是產生穩定性好、高精度以及頻率和幅度等參數可調的各種脈沖信號、正弦信號、鋸齒波和方波等調制和驅動信號,對在信號接收端做信號的接收、轉換與解調處理至關重要。而傳統的信號發生設備往往功能單一、可產生的信號類型少或者儀器體積大而笨重且價格昂貴、使用環境受限制。鑒于近年來蓬勃發展的FPGA器件具有低成本、高度集成化與小型化、靈活的接口方式和控制方式、高速的運算能力和高性能等優勢,采用FPGA為硬件平臺,借助Quartus Ⅱ開發軟件和Verilog HDL硬件描述語言設計信號發生器更顯靈活和方便,且可用于多種工作場合,同時也縮減了相應儀器的體積和成本[5?6]。
1 多功能信號發生器的總體設計
該多功能信號發生器是基于FPGA設計的,以Altera公司生產的CYCLONEⅣE系列 EP4CE15F17C8芯片為設計核心,在QuartusⅡ13.0開發環境下采用Verilog HDL硬件描述語言編寫模塊化程序設計和實現各模塊化電路。信號發生器的基本功能是能夠產生任意中低頻調制信號和驅動信號,并能同時輸出一種脈沖信號和一種DDS信號及直流信號,脈沖信號的類型、重復頻率、脈沖寬度和DDS信號的類型、輸出頻率、相位、幅值以及是否產生并輸出直流信號都可通過鍵控方式調節。設計方案中同時應用分頻技術和DDS技術可產生單脈沖信號、雙脈沖信號、直流信號及各種形式的DDS信號,脈沖信號的脈沖寬度能分別以4 ns和5 ns為最小步進量進行鍵控調節;直流信號則通過讓FPGA的外部引腳按實際需要持續輸出高電平獲得,并通過外接可調放大電路對直流電壓信號進行幅值調節;DDS信號則通過外接12位D/A轉換器和低通濾波器進行D/A轉換和濾波處理后輸出模擬波形。多功能信號發生器的結構框圖如圖1所示。
2 主要組成電路
該信號發生器主要由晶振單元電路、PLL倍頻電路、鍵控模塊、直流信號產生電路、脈沖信號產生電路、DDS信號發生模塊以及外接的直流信號濾波放大電路、脈沖信號濾波放大電路、D/A轉換器和低通濾波器構成,其中PLL倍頻電路、鍵控模塊、直流信號產生電路、脈沖信號產生電路、DDS信號發生模塊及D/A轉換器的驅動電路是基于FPGA設計的。
2.1 PLL倍頻電路
為了達到設計要求和設計目標,以FPGA開發板上的晶振電路輸出的50 MHz時鐘信號為基準時鐘,在QuartusⅡ13.0開發環境下編程設計PLL倍頻電路模塊,并調用PLL宏功能模塊進行倍頻參數設置,實驗中對50 MHz的晶振時鐘信號同時做4倍頻和5倍頻處理以便同時獲得200 MHz和250 MHz的參考時鐘信號,對其做時序約束處理后將250 MHz的倍頻時鐘信號同時作為鍵控模塊、直流信號產生電路、DDS信號發生模塊和D/A轉換器的參考輸入時鐘信號,而將250 MHz和200 MHz兩個倍頻時鐘信號同時作為脈沖信號產生電路的輸入時鐘信號,其對應的最小時鐘周期分別為4 ns和5 ns。
2.2 鍵控模塊
鍵控模塊主要包括按鍵濾抖電路和按鍵編碼電路,其目的是對FPGA開發板上的按鍵資源進行抖動消除和按鍵的功能編碼,以便能通過按鍵對FPGA輸出的脈沖信號和DDS信號進行各參數的調節控制,以及控制直流信號產生電路是否產生并輸出直流信號。按鍵濾抖電路以PLL倍頻電路輸出的250 MHz倍頻時鐘信號作為輸入參考時鐘,并以計數器對該參考時鐘信號的時鐘周期進行計數延時的方式完成按鍵的抖動濾除。各按鍵濾抖后再對其進行功能編碼,使各按鍵在單擊時分別調節DDS信號的波形、輸出頻率、相位和幅值參數及直流信號的產生與輸出,按鍵長按時調節脈沖信號的類型、脈沖寬度和重復頻率。
2.3 直流信號產生電路及其放大電路
PLL倍頻電路輸出的250 MHz倍頻信號用作直流信號產生電路的參考輸入時鐘信號,在此倍頻時鐘信號的作用下,被指定的FPGA輸出管腳在直流信號控制鍵允許輸出直流電壓信號的狀態下將會連續地輸出邏輯高電平,從而將FPGA內部集成電路的3.3 V?LVTTL電平信號轉換成穩定的直流電壓信號輸出,通過外接可調放大電路對此直流電壓信號進行電壓幅值的連續調節。直流信號放大電路選用ADI公司的低噪聲、低漂移、高精度OP37G集成運放芯片,采用±18 V直流電源供電,采用同相比例放大電路對FPGA輸出的直流電壓信號進行放大。直流信號放大電路的電路原理圖如圖2所示。
由式(4)可知,調節的阻值便可改變直流電壓的放大倍數,調節的阻值亦可改變輸出直流電壓的幅度。實驗中采用±18 V直流電源電壓供電時,運放電路實際輸出的直流電壓值為0~16 V可調。在直流放大電路輸出端設置固定電阻和可調電阻不僅在同相放大電路中實現了輸出電壓從零到最大值全域可調的目的,同時也能在運放電路的輸出端起到限流及分壓的作用。
2.4 脈沖信號產生電路
脈沖信號產生電路以PLL倍頻電路輸出的250 MHz和200 MHz兩路倍頻時鐘信號同時作為輸入參考時鐘信號,采用分頻技術對兩路參考時鐘信號進行分頻,以獲得重復頻率和脈沖寬度均可鍵控調節的單脈沖信號及重復頻率、雙脈沖寬度與雙脈沖間距均可鍵控調節的雙脈沖信號。分頻技術的核心是利用計數器對參考時鐘信號的時鐘周期進行計數,使分頻電路按實際需要的重復頻率和脈沖寬度輸出相應的高電平。單脈沖信號的脈沖寬度通過下式確定:
式中:與同式(5);為分頻計數器的初始計數值;為脈沖信號的重復頻率調節參數且為整數且為自然數,重復頻率的最小步進量與和有關,越大且越小,則重復頻率的最小步進量越小,重復頻率的單位為MHz。在確定時,當取時,重復頻率向逐漸增大的趨勢調節,當取時,重復頻率向逐漸減小的趨勢調節。
對于雙脈沖信號的獲取,當倍頻系數取5時,同時采用兩個計數器對250 MHz倍頻信號的時鐘周期進行計數并輸出兩路單脈沖信號,其中一個計數器在倍頻時鐘的上升沿開始計數,另一個計數器則在倍頻時鐘的下降沿開始計數,使兩個計數器的計數周期相同但讓兩路單脈沖信號在不同的時鐘位置處輸出高電平且兩路單脈沖信號的脈寬相同,再將兩路單脈沖信號進行或邏輯運算;當倍頻系數取4時,只用一個計數器對倍頻信號的時鐘周期進行計數,并使其在兩個不同的時鐘位置處輸出高電平并讓兩個高電平所占的時鐘周期相等,對兩個不同倍頻系數的倍頻時鐘信號的切換則通過按鍵控制實現。實驗中為保證脈沖信號具有較高的保真度[7?8],雙脈沖信號的兩個近鄰單脈沖之間的時間間隔需不低于10 ns且可調節。雙脈沖信號的兩個近鄰單脈沖寬度同樣可由式(5)確定,而二者之間的時間間隔則由下式確定:
式中:參數同式(5);為雙脈沖信號的兩個近鄰單脈沖之間的間距調節次數;的單位為ns,其最小步進量依而定,分別為4 ns和5 ns。雙脈沖信號的遠鄰重復頻率同樣可由式(5)確定。
經過FPGA管腳直接輸出的脈沖信號在未做信號處理時,往往伴隨有超限噪聲、下過沖和振鈴[9],且脈沖信號的幅值通常較小,常常不能直接將其用作調制信號,因此,需要對脈沖信號進行濾波和放大處理。實驗中選用TI公司的THS3001C運放芯片設計脈沖信號放大電路,它是一款-3 dB帶寬為420 MHz、具有6 500 V/μs的電壓轉換速率、差分增益誤差低于0.01%的高精度、高速和大帶寬的電流負反饋式運算放大芯片,經過以此芯片為核心設計的信號濾波放大電路處理后,脈沖信號的超限噪聲、下過沖及振鈴均可被有效抑制,且脈沖信號的峰值將被適當放大以滿足使用要求。
2.5 DDS信號發生模塊
2.5.1 DDS的基本原理
DDS信號發生模塊是基于直接數字頻率合成技術(Direct Digital Frequency Synthesis,DDS),利用全數字的方法先產生和頻率相對應的波形相位量化序列,再完成相位到幅度的轉換,對DDS信號發生模塊輸出的數據進行D/A轉換并由低通濾波器濾波后輸出期望的模擬波形[10?11]。
DDS信號發生模塊主要由位的相位累加器、相位調整器、波形選擇器、ROM波形存儲表和乘法器構成,其中,DDS信號發生模塊以相位累加器為核心,用于接收頻率控制字及反饋值并完成相位累加運算,它由位的加法器和位的寄存器構成[12?13]。DDS信號發生模塊的結構示意圖如圖3所示。
2.5.2 DDS信號發生模塊的工作過程
相位累加器的加法器接收到當前參考時鐘作用下的頻率控制字時,將其與相位累加器在上一個參考時鐘作用下產生并輸出的相位數據進行累加運算,在參考時鐘作用下,運算結果一方面被再次反饋到相位累加器的加法器輸入端用作下一個參考時鐘周期下的相位數據輸入量繼續和頻率控制字做線性累加,相位累加器加滿時便產生一次溢出形成一個周期,此周期就是DDS合成信號的一個周期。另一方面,相位累加器每次輸出的運算結果也將作為相位調整器的輸入量之一,當有相位調整字輸入相位調整器時,相位調整器將二者進行加法運算并截取其運算結果的高位作為ROM波形表的取樣地址,每個ROM波形存儲表中存有一個完整波形的幅值信息,因此,通過地址尋址方式對ROM表進行查表即可從ROM波形數據表中讀出相應的波形數據,從而完成波形相位到幅值的轉換,通過D/A轉換器對讀出的波形數據進行數模轉換后輸出階梯波形,為提高模擬信號波形的幅度精度,實驗中選用TI公司的12位寬的TLV5618芯片,其波形幅度分辨率可達D/A轉換器輸出的階梯波形經過低通濾波器平滑濾波輸出期望的模擬波形。
2.5.3 DDS信號的頻率掃描
相位累加器將接收到的相位增量作為步長進行相位的線性累加,而相位增量的量化值又決定了DDS信號的輸出頻率,因此,相位增量也被稱作DDS信號的頻率控制字,頻率控制字和DDS信號的輸出頻率之間呈簡單的線性關系:
式中為DDS信號的最小輸出頻率,即頻率分辨率,因此,實驗中DDS信號的最小輸出頻率可達0.058 2 Hz。DDS信號的輸出頻率通過鍵控模塊中的頻率控制鍵進行調節。
2.5.4 DDS信號相位、波形及幅值的改變
DDS信號輸出相位的改變通過位的相位調整器實現,相位調整器將位相位累加器輸出的高位數據和輸入的位相位控制字做加法運算,再將此運算結果重新作為ROM波形存儲表的采樣地址對ROM波形存儲表進行查找即可;DDS信號波形的切換則通過編寫程序設計狀態機的方式在ROM查找表的前面設置一個波形選擇器即可實現;對波形幅值的改變則通過在ROM查找表后設置一個乘法器,對ROM表中讀出的波形數據按比例做行縮減即可實現。
3 實驗結果
4 結 語
本文以FPGA為硬件平臺設計多用途信號發生器,不僅設計方式更為靈活,結合分頻技術和DDS技術可同時輸出直流信號和一種脈寬及重復頻率可調的脈沖信號以及一種波形、相位、頻率及幅值均可調的DDS信號,該信號發生器輸出的各種信號穩定可靠、精度高,尤其適合在光纖傳感及光纖通信系統中作為調制信號及驅動信號使用,且可用于多種工作場合,同時也縮減了相應儀器的體積和成本。
注:本文通訊作者為萬生鵬。
參考文獻
[1] 胡佳成,陳福昌,林尊琪.基于布里淵光時域反射的分布式光纖傳感入侵定位檢測系統[J].光電子·激光,2012,23(5):944?949.
[2] 張旭蘋.全分布式光纖傳感技術[M].北京:科學出版社,2013.
[3] 楊東,蔣華勤.WDM在光纖通信實驗中的設計與實現[J].實驗室研究與探索,2014,33(6):36?39.
[4] 楊英杰,趙小蘭.光纖通信原理及應用[M].北京:電子工業出版社,2011.
[5] ATHANAS P, CUMPLIDO R, FEREGRINO?URIBE C, et al. Introduction to special issue on FPGA devices and applications [J]. Microprocessors and microsystems, 2014, 38(8): 843?844.
[6] 楊海鋼,孫嘉斌,王慰.FPGA器件設計技術發展綜述[J].電子與信息學報,2010,32(3):714?723.
[7] 郭利文,鄧月明,莫曉山.FPGA/CPLD的管腳設置對信號完整性的影響分析研究[J].現代電子技術,2015,38(17):61?64.
[8] ZHANG H Q, KROOSWYK S, OU J. PCB design for signal integrity [M]// MITZNER K. High speed digital design. Amsterdam: Elsevier, 2015: 27?39.
[9] 佟星元,朱樟明,楊銀堂,等.信號完整性設計中的抖動與振鈴消除技術[J].西安電子科技大學學報(自然科學版),2012,39(6):136?140.
[10] 楊東霞,巨永鋒.基于FPGA和DDS的數字調制信號發生器設計與實現[J].電子設計工程,2013,21(6):90?93.
[11] SHI Yanbin, GUO Jian, CUI Ning. High precision digital frequency signal source based on FPGA [J]. Physics procedia, 2012, 25(27): 1342?1347.
[12] 曾菊容.基于FPGA和DDS技術的任意波形發生器設計[J].現代電子技術,2010,33(24):98?100.
[13] 王煒珽,李淑華,張文旭.基于FPGA實現直接數字頻率合成脈沖線性調頻信號[J].現代電子技術,2015,38(10):10?15.