基于LVDS的超高速ADC數(shù)據(jù)接收設(shè)計
摘要:超高速ADC通常采用LVDS電平傳輸數(shù)據(jù),高采樣率使輸出數(shù)據(jù)速率很高,達(dá)到百兆至吉赫茲量級,如何正確接收高速LVDS數(shù)據(jù)成為一個難點。本文以ADS42LB69芯片的數(shù)據(jù)接收為例,從信號傳輸和數(shù)據(jù)解碼兩方面,詳述了實現(xiàn)LVDS數(shù)據(jù)接收應(yīng)該注意的問題及具體實現(xiàn)方法,并進(jìn)行實驗測試、驗證了方法的正確性。
本文引用地址:http://m.butianyuan.cn/article/201610/306150.htm關(guān)鍵詞:LVDS ADC數(shù)據(jù)接收信號完整性FPGA
1 引言
軟件無線電概念要求雷達(dá)系統(tǒng)的數(shù)字化盡量靠近天線,因此數(shù)字接收系統(tǒng)對模數(shù)轉(zhuǎn)換器的速率提出了很高要求。高速高精度ADC會輸出多位高速數(shù)據(jù)流,目前主流的數(shù)據(jù)傳輸電平為低電壓差分信號(LVDS)。LVDS的差分傳輸特性使其產(chǎn)生的電磁干擾很小,還可有效抑制共模噪聲,增大抗干擾能力。隨著數(shù)據(jù)速率的提高,多位數(shù)據(jù)同步接收的時間窗變小,如何保證多通道數(shù)據(jù)的正確接收成為了設(shè)計難點。為了降低此難度,目前ADC器件普遍采用串行方式,利用較少數(shù)據(jù)線完成多位采樣數(shù)據(jù)的傳輸。本文針對多位高速LVDS數(shù)據(jù)傳輸?shù)碾y題,研究了實現(xiàn)LVDS數(shù)據(jù)正確接收的方法,并以ADS42LB69為例,設(shè)計了一套基于 Xilinx公司FPGA平臺的數(shù)據(jù)采集板,進(jìn)行了試驗驗證。下面從信號傳輸和數(shù)據(jù)解碼兩方面,詳細(xì)介紹設(shè)計中需注意的問題以及具體的實現(xiàn)方法。
2 信號傳輸
為完成數(shù)據(jù)正確接收,首先要保證信號傳輸?shù)耐暾?,減小失真,使接收端能正確獲取串行LVDS數(shù)據(jù)。信號完整性可以分為時序、噪聲和電磁干擾三種。對于高速數(shù)字信號傳輸,信號完整性包括波形完整性和時序完整性兩方面。
2.1 波形完整性
波形完整性指傳輸線對信號的電壓電流功率等電氣性能的影響。影響波形完整性的主要噪聲源有三類:單一網(wǎng)絡(luò)的信號完整性,兩個或多個網(wǎng)絡(luò)間的串?dāng)_,來自系統(tǒng)的電磁干擾和輻射。針對每種噪聲源,設(shè)計中需要通過不同的方式解決。
第一類問題指在信號傳輸路徑上阻抗不連續(xù)引起的反射與失真。式(1)給出了射頻傳輸線的反射系數(shù)與傳輸線阻抗的關(guān)系(其中,γ為反射系數(shù),為負(fù)載阻抗,ZL為傳輸線特性阻抗)。由式可知,當(dāng)負(fù)載阻抗與傳輸線特性阻抗相等時,反射系數(shù)為零,信號才能無失真?zhèn)鬏?。因此,為了保證信號波形完整性,要求傳輸線阻抗連續(xù),且接收端阻抗要進(jìn)行精確匹配。傳輸線阻抗連續(xù)要求PCB布線時進(jìn)行特別設(shè)計,包括對差分信號線進(jìn)行100Ω阻抗控制,數(shù)據(jù)線盡量在同一層走線,參考平面要連續(xù)等。負(fù)載阻抗匹配通過在接收端放置100Ω電阻實現(xiàn)。為降低布板難度,Xilinx公司FPGA內(nèi)部集成了匹配電阻,阻值可依應(yīng)用需求配置。
當(dāng)信號傳輸路徑與相鄰網(wǎng)絡(luò)間存在互感或互容時,信號會從一個網(wǎng)絡(luò)到達(dá)另一個網(wǎng)絡(luò),從而引起網(wǎng)絡(luò)間的串?dāng)_。為減小此類問題,要求在PCB布線時,相鄰信號線間距要遠(yuǎn),線長盡可能短。系統(tǒng)的電磁干擾問題需要在系統(tǒng)設(shè)計時,統(tǒng)籌考慮,減小各部件的輻射,從而減小電磁干擾。
2.2 時序完整性
采樣數(shù)據(jù)通過多對LVDS差分線傳輸,在接收端同時鎖存,并通過串并轉(zhuǎn)換和數(shù)據(jù)重排后恢復(fù)。通常ADC芯片會輸出高速數(shù)據(jù)同步時鐘和幀時鐘,用于數(shù)據(jù)鎖存、串并轉(zhuǎn)換和解碼。接收端在同一時刻鎖存所有信號線上的數(shù)據(jù),為了保證接收端正確獲取數(shù)據(jù),要求使各傳輸線延遲盡量相同。為了保證傳輸線延遲一致,需要在PCB中對所有數(shù)據(jù)線和幀時鐘布線進(jìn)行等長約束。由于制板及焊接工藝的精度限制,最終電路板上各數(shù)據(jù)線延遲仍然會有差異,此時需要在 FPGA中調(diào)節(jié)信號延遲以保證時序完整性??赡艽嬖诘臅r序完整性問題包括幾種類型:
1)某位數(shù)據(jù)線延遲值偏大或偏小,導(dǎo)致此線上傳輸?shù)臄?shù)據(jù)位與其他數(shù)據(jù)位不是來自同一采樣數(shù)據(jù),此時可以通過FPGA中的IODELAY模塊調(diào)整數(shù)據(jù)線延遲。
2)幀時鐘與數(shù)據(jù)線延遲差別大,導(dǎo)致數(shù)據(jù)無法正確解碼,同樣地,可以在此線傳輸路徑中插入IODELAY核(FPGA中)調(diào)整延遲。
3)同步時鐘與數(shù)據(jù)線延遲差別大,當(dāng)數(shù)據(jù)不滿足建立保持時間時,無法被正確接收。有兩種途徑解決此問題,一是通過IODELAY模塊調(diào)整時鐘線延遲,二是改變鎖相環(huán)輸出時鐘的相位。
3 數(shù)據(jù)解碼
在保證信號傳輸完整性,獲得正確的串行數(shù)據(jù)后,還需進(jìn)行串并轉(zhuǎn)換及數(shù)據(jù)重組才能獲得最終的采樣數(shù)據(jù),此過程在FPGA內(nèi)實現(xiàn)。ADS4 2LB69支持4線(lane)串行傳輸,每lane傳輸4bit數(shù)據(jù),F(xiàn)PGA內(nèi)接收此ADC數(shù)據(jù)的程序結(jié)構(gòu)示意如圖1所示。串行數(shù)據(jù)lane和幀時鐘 (frame),首先進(jìn)行1:4串并轉(zhuǎn)換,數(shù)據(jù)lane對應(yīng)4bit數(shù)據(jù)寄存一級后輸出8bit數(shù)據(jù)(其中,低4bit為其一時刻的數(shù)據(jù)D0,高4bit 為后一時刻鎖存的數(shù)據(jù)D1),再依據(jù)4bit frame數(shù)據(jù)從8bit寄存數(shù)據(jù)中獲取正確的4bit數(shù)據(jù),最后按照ADC手冊中順序?qū)?組4bit數(shù)據(jù)進(jìn)行重排獲得16bit采樣數(shù)據(jù)。
1:4串并轉(zhuǎn)換使用FPGA內(nèi)部ISERDES核完成。由于ISERDES核開始進(jìn)行串并轉(zhuǎn)換的時刻不確定,轉(zhuǎn)換后的4bit并行frame數(shù)據(jù)有四種值,分別對應(yīng)不同的數(shù)據(jù)位獲取情況,如圖2所示。
4 實驗驗證
為了驗證多位LVDS數(shù)據(jù)接收設(shè)計的正確性,在實驗室對數(shù)據(jù)采集板進(jìn)行了測試。采用信號源模擬輸入信號和采樣時鐘,通過JTAG測試接口將FPGA內(nèi)部重排后的采樣數(shù)據(jù),上傳至PC機(jī)并在chipscope軟件中顯示。圖3顯示了采樣時鐘為180MHz、輸入信號頻率10MHz時的測試結(jié)果,其中frame_ilatst是用于獲取數(shù)據(jù)位的幀時鐘數(shù)據(jù),data是采樣數(shù)據(jù)時序波形,由圖可知,波形是單頻點正弦波,證明了設(shè)計的正確性。
5 結(jié)語
超速ADC的LVDS數(shù)據(jù)的正確接收對于數(shù)字接收機(jī)是至關(guān)重要的。文中從理論分析和設(shè)計實現(xiàn)兩個方面,詳述了如何實現(xiàn)多位高速LVDS數(shù)據(jù)的正確接收。采用Xilinx公司FPGA和ADS42LB69設(shè)計了數(shù)據(jù)采集板,并在FPGA內(nèi)實現(xiàn)了數(shù)據(jù)接收程序,實驗測試表明此硬件和程序設(shè)計能夠完成采樣數(shù)據(jù)的正確接收。此文中方法對類似的ADC數(shù)據(jù)接收設(shè)計具有一定的指導(dǎo)意義。
評論