樊汝森,王 勇,裴秀高,張 源,宋 辰,劉 丹
(1.上海電力學(xué)院,上海 200090;2.山東萊蕪供電公司,山東萊蕪 271100;3.青島大學(xué),山東青島 266071)
隨著曼徹斯特編碼和m序列在通信、以太網(wǎng)領(lǐng)域的廣泛應(yīng)用,作為一種數(shù)據(jù)傳輸通道性能檢測(cè)的設(shè)備,數(shù)字信號(hào)傳輸性能分析儀在數(shù)據(jù)傳輸系統(tǒng)的安裝與調(diào)試及日后系統(tǒng)的維護(hù)中起著越來(lái)越重要的作用.通過(guò)觀察眼圖,可以得到信號(hào)的畸變范圍、噪音的容限,以及門限電平和定時(shí)誤差靈敏度等有效信息,以此可以定性反映碼間干擾的大小和噪音的強(qiáng)弱,因此可通過(guò)觀察眼圖來(lái)分析信道傳輸性能.
現(xiàn)場(chǎng)可編程門陣列(Field-Programmable Gate Array,F(xiàn)PGA)基于反镕絲技術(shù)或SRAM 技術(shù),具有良好的抗干擾性能,其并行運(yùn)算處理速度快,因此FPGA的數(shù)字化設(shè)計(jì)已經(jīng)成為數(shù)字邏輯電路設(shè)計(jì)的重要發(fā)展方向.
為了擴(kuò)寬信號(hào)分析帶寬,特別是低頻信號(hào)的分析帶寬,提高眼圖顯示的穩(wěn)定性、測(cè)試精度,以及系統(tǒng)的抗干擾性能,降低系統(tǒng)功耗,節(jié)約能源,本文提出了一種基于FPGA的新穎設(shè)計(jì)方法.該方法以FPGA為系統(tǒng)控制核心,采用改進(jìn)型計(jì)數(shù)方式控制曼徹斯特編碼數(shù)據(jù)率,在采集信號(hào)后先進(jìn)行數(shù)字濾波,再進(jìn)行信號(hào)分析,達(dá)到實(shí)時(shí)刷新提取同步時(shí)鐘信號(hào)的目的,這不僅大大簡(jiǎn)化了設(shè)計(jì)復(fù)雜的外部硬件電路,而且極大地提高了眼圖顯示的穩(wěn)定性和信道性能測(cè)試的精確性.
系統(tǒng)結(jié)構(gòu)框圖如圖1所示.系統(tǒng)主要由5個(gè)模塊構(gòu)成,即:PS2控制輸入模塊;曼徹斯特編碼發(fā)生模塊;m序列發(fā)生模塊;數(shù)字信號(hào)分析模塊;眼圖顯示模塊.系統(tǒng)采用PS2鍵盤輸入曼徹斯特編碼(用來(lái)模擬傳輸信號(hào))的時(shí)鐘頻率,F(xiàn)PGA接受控制信號(hào)后產(chǎn)生m序列并采用曼徹斯特編碼,在數(shù)據(jù)率為10~1×106b/s時(shí)連續(xù)可調(diào),然后將信號(hào)送入低通濾波器(用來(lái)模擬信道數(shù)字信號(hào)傳輸特性).濾波器輸出的信號(hào)與隔直的數(shù)據(jù)率10 Mb/s高頻m序列(用來(lái)模擬信道噪音)相疊加,F(xiàn)PGA控制高速AD進(jìn)行信號(hào)采樣后經(jīng)數(shù)字信號(hào)分析模塊提取曼徹斯特編碼同步時(shí)鐘頻率,利用所提取的同步時(shí)鐘頻率進(jìn)行同步,采用示波器顯示信號(hào)眼圖.
圖1 系統(tǒng)結(jié)構(gòu)框圖
為了便于系統(tǒng)測(cè)試,故設(shè)計(jì)低通濾波器來(lái)模擬信道數(shù)字信號(hào)的傳輸特性,采用硬件電阻分壓來(lái)調(diào)整信道噪音大小.
系統(tǒng)采用截止頻率分別為100 kHz,200 kHz,500 kHz的有源低通濾波器,且每個(gè)濾波器帶外衰減不少于50 dB/10倍頻程,采用4階無(wú)限增益多路反饋濾波電路,其中截止頻率為100 kHz的濾波電路如圖2所示.
圖2 截至頻率100 kHz的濾波電路
信道噪音大小可通過(guò)硬件電阻分壓的方法來(lái)調(diào)整m序列發(fā)生器輸出信號(hào)的幅值實(shí)現(xiàn).調(diào)整后的m序列輸出端信號(hào)經(jīng)隔直電容疊加到低通濾波器輸出端,疊加后的信號(hào)作為數(shù)字信號(hào)分析電路的輸入信號(hào).
數(shù)字信號(hào)發(fā)生模塊包括PS2控制輸入模塊、m序列發(fā)生模塊和曼徹斯特編碼發(fā)生模塊.系統(tǒng)采用高頻m序列來(lái)模擬信道噪音,系統(tǒng)測(cè)試信號(hào)m序列采用曼徹斯特編碼,曼徹斯特編碼的時(shí)鐘頻率采用PS2鍵盤輸入,數(shù)據(jù)率的控制采用改進(jìn)型計(jì)數(shù)方式.
由于FPGA內(nèi)部采用門陣列結(jié)構(gòu),能夠很方便地產(chǎn)生m序列和曼徹斯特編碼,系統(tǒng)采用12級(jí)m序列:
來(lái)模擬信道噪音,其中:
其12級(jí)m序列線性反饋移位寄存器結(jié)構(gòu)如圖 3 所示[1].
圖3 12級(jí)m序列線性反饋移位寄存器結(jié)構(gòu)示意
其線性移位寄存器可表示為:
其反饋函數(shù)方程為:
數(shù)字信號(hào)發(fā)生器為:
其m序列采用曼徹斯特編碼輸出.在曼徹斯特編碼過(guò)程中,每一位的中間有一個(gè)上升沿或下降沿的跳變.此跳變既可作時(shí)鐘信號(hào),又可作數(shù)據(jù)信號(hào),上升沿表示“0”,下降沿表示“1”,可有效防止同步時(shí)鐘信號(hào)的丟失[2,3].
FPGA產(chǎn)生的時(shí)鐘頻率普遍采取計(jì)數(shù)比較方式,這種方式存在缺陷,只能生成指定周期整數(shù)倍的時(shí)鐘頻率,不能完全隨機(jī)指定頻率.本系統(tǒng)采用了改進(jìn)方案,即采用定點(diǎn)小數(shù)對(duì)比累加方式進(jìn)行時(shí)鐘生成,用此種方式生成的時(shí)鐘可以保證在一段時(shí)間(取決于定點(diǎn)小數(shù)的位數(shù),在此為65 536個(gè)生成時(shí)鐘周期)的統(tǒng)計(jì)特性上達(dá)到小數(shù)位數(shù)最小步進(jìn)值乘以生成周期的精度.雖然無(wú)法保證每個(gè)周期長(zhǎng)度都完全相等(誤差在正負(fù)1個(gè)主時(shí)鐘周期——在此為100 ns以內(nèi)),但只要生成時(shí)鐘的周期遠(yuǎn)大于這個(gè)值,即可忽略其左右的偏移.數(shù)字信號(hào)發(fā)生模塊流程如圖4所示.
圖4 數(shù)字信號(hào)發(fā)生模塊流程示意
系統(tǒng)采用美國(guó)德州儀器的8位半閃速結(jié)構(gòu)的高阻抗并行AD轉(zhuǎn)換器TLC5510,將疊加后的信號(hào)采集到FPGA系統(tǒng).由于采集到的信號(hào)噪音太大,須先進(jìn)行數(shù)字濾波處理才可進(jìn)行相應(yīng)的信號(hào)分析[4].
經(jīng)Modelsim仿真后,數(shù)字濾波處理仿真如圖5所示.
圖5中,Source為低通濾波器輸出信號(hào);Niose為生成的模擬隨機(jī)噪音,幅值約為滿值的50%;AD_data為疊加噪音后的AD采集信號(hào);Smooth為濾波處理后的波形,有些尖脈沖來(lái)自于后仿真ps級(jí)的跳變不同步信號(hào);Data_out為經(jīng)寄存器后得到的反向有效輸出信號(hào).
圖5 平滑數(shù)字濾波處理仿真
通過(guò)FPGA檢測(cè)曼徹斯特編碼上升沿和下降沿的間隔時(shí)間,可以得到曼徹斯特編碼的時(shí)鐘周期.提取曼徹斯特編碼同步時(shí)鐘的流程見(jiàn)圖6.
圖6 提取曼徹斯特編碼同步時(shí)鐘的流程
為了滿足時(shí)鐘的統(tǒng)計(jì)特性,需要對(duì)多次采集的結(jié)果取平均值,曼徹斯特編碼上升沿和下降沿間隔時(shí)間只有1倍周期和1/2倍周期兩種情況,每次上升沿和下降沿的時(shí)間間隔與現(xiàn)有的生成時(shí)鐘計(jì)數(shù)進(jìn)行比較判斷,確定是否滿足上述兩種情況.若滿足,則將當(dāng)前計(jì)數(shù)放入求平均的寄存器入口,否則更新求平均的所有寄存器的值為當(dāng)前測(cè)量值.
最終利用曼徹斯特編碼的跳變沿對(duì)生成的時(shí)鐘信號(hào)進(jìn)行實(shí)時(shí)刷新,以達(dá)到同步的效果.
測(cè)試儀器為數(shù)字存儲(chǔ)式示波器,采用數(shù)控式線性直流穩(wěn)壓電源.
首先使用PS2鍵盤預(yù)設(shè)曼徹斯特編碼時(shí)鐘頻率,然后將FPGA提取到的曼徹斯特編碼同步時(shí)鐘信號(hào)輸入示波器任意通道,使用示波器觀察提取的同步時(shí)鐘頻率,見(jiàn)表1.
表1 曼徹斯特編碼時(shí)鐘頻率測(cè)試記錄 kHz
測(cè)試表明,系統(tǒng)可以從10~1×106Hz的任一整數(shù)數(shù)值預(yù)設(shè)曼徹斯特編碼時(shí)鐘頻率,并且數(shù)字分析電路能夠提取曼徹斯特編碼同步時(shí)鐘頻率.經(jīng)計(jì)算,預(yù)設(shè)與提取時(shí)鐘頻率的誤差小于0.3%.
眼圖采用示波器顯示,將提取到的同步時(shí)鐘信號(hào)輸入示波器的外部觸發(fā)端,將疊加有噪音的曼徹斯特編碼信號(hào)輸入示波器任一通道,即可在示波器上生成正確眼圖.當(dāng)噪音較小時(shí),眼圖顯示見(jiàn)圖7,當(dāng)噪音較大時(shí),眼圖顯示見(jiàn)圖8.
圖7 噪音較小時(shí)的眼圖顯示
當(dāng)存在噪音時(shí),眼圖的線跡變成較為模糊的帶狀線.噪音越大,線條越寬,越模糊,“眼睛”張開(kāi)得越小.其最佳抽樣時(shí)刻應(yīng)是“眼睛”張開(kāi)最大的時(shí)刻;眼圖斜邊的斜率決定了系統(tǒng)對(duì)抽樣定時(shí)誤差的靈敏程度,斜率越大,定時(shí)誤差越靈敏;模糊帶狀垂直高度表示信號(hào)的畸變范圍;中央的橫軸位置對(duì)應(yīng)于判決門限電平;抽樣時(shí)刻的上下兩陰影區(qū)的間隔距離一半為噪音容限,噪音瞬時(shí)值超過(guò)它就可能發(fā)生錯(cuò)誤判斷[5].
圖8 噪音較大時(shí)的眼圖顯示
經(jīng)測(cè)試,數(shù)字分析電路提取的同步時(shí)鐘信號(hào)能夠觸發(fā)疊加噪音的曼徹斯特編碼,并能在示波器上準(zhǔn)確顯示眼圖.當(dāng)噪音峰峰值提高時(shí),仍然能較好地在示波器上顯示眼圖,噪音峰峰值最大為2 Vpp.
系統(tǒng)整體性能良好.曼切斯特編碼數(shù)據(jù)率可以實(shí)現(xiàn)從10~1×106b/s連續(xù)可調(diào),當(dāng)噪音峰峰值為2 Vpp時(shí),仍可以正確提取同步時(shí)鐘信號(hào),并能滿足大部分用戶的使用.但系統(tǒng)在提取同步時(shí)鐘信號(hào)時(shí)仍存在不足,需要進(jìn)一步改善.
[1] 樊昌信,曹麗娜.通信原理(第6版)[M].北京:國(guó)防工業(yè)出版社,2006:379-390.
[2] 付林,任志平,劉承杰.基于FPGA技術(shù)的曼徹斯特編碼器設(shè)計(jì)[J].現(xiàn)代電子技術(shù),2007(17):55-56.
[3] 晏磊.基于FPGA曼徹斯特碼數(shù)據(jù)傳輸系統(tǒng)的實(shí)現(xiàn)[J].微計(jì)算機(jī)信息,2006,22(2):169-170.
[4] 鄭君里,應(yīng)啟珩,楊為理.信號(hào)與系統(tǒng):下冊(cè)(第3版)[M].北京:高等教育出版社,2011:209-237.
[5] 樊昌信,張甫翊,徐炳祥,等.通信原理(第5版)[M].北京:國(guó)防工業(yè)出版,2001:115-116.