文獻(xiàn)標(biāo)識(shí)碼: A
文章編號(hào): 0258-7998(2013)03-0077-03
近年來,數(shù)據(jù)采集在現(xiàn)代工業(yè)生產(chǎn)及科學(xué)研究中的重要地位日益突出,對(duì)數(shù)據(jù)采集的速率和采集通道數(shù)的提出了更高的要求[1]。隨著采樣頻率和采樣通道數(shù)的增加,如何快速有效地將大量采集到的數(shù)據(jù)傳輸?shù)教幚碓O(shè)備成為一個(gè)嚴(yán)峻的問題。特別是當(dāng)處理設(shè)備和數(shù)據(jù)采集設(shè)備之間的距離較遠(yuǎn)時(shí),這個(gè)問題顯得尤為突出。對(duì)于一個(gè)8通道、12位精度、20 MHz采樣頻率的系統(tǒng),所需的傳輸速率為1 920 Mb/s。傳統(tǒng)數(shù)據(jù)采集卡多采用基于PCI、USB總線接口,這些接口擴(kuò)展性差、結(jié)構(gòu)復(fù)雜、傳輸速率和傳輸距離有限,使得其不適合在上述系統(tǒng)下使用。而光纖通信具有傳輸速率快,傳輸距離遠(yuǎn)、抗干擾能力強(qiáng)等優(yōu)點(diǎn),能夠很好解決上述問題。
1 系統(tǒng)的設(shè)計(jì)
本系統(tǒng)以FPGA芯片為控制核心[2-3],控制A/D對(duì)8路模擬通道進(jìn)行20 MHz采樣,采樣的精度為12位,將采集的數(shù)據(jù)實(shí)時(shí)地發(fā)送到接收板上處理。
如果采樣頻率和數(shù)據(jù)發(fā)送頻率都是20 MHz,則總共需要8路光端機(jī)才能將每路信號(hào)轉(zhuǎn)化為光信號(hào)傳輸出去,然后在接收端通過8路光端機(jī)將光信號(hào)還原為電信號(hào),傳給處理設(shè)備。這樣的系統(tǒng)顯然將十分復(fù)雜,實(shí)現(xiàn)起來非常困難。為此,本文設(shè)計(jì)基于時(shí)分復(fù)用的數(shù)據(jù)傳輸方式,提高了數(shù)據(jù)傳送效率,有效地將8路光端機(jī)減少到3路。
為了實(shí)現(xiàn)時(shí)分復(fù)用,本系統(tǒng)的數(shù)據(jù)發(fā)送端將A/D采集到的96 bit數(shù)據(jù)分成3組,設(shè)為A、B、C三組,每組32 bit。每組在第N個(gè)數(shù)據(jù)發(fā)送時(shí)鐘上升沿控制A/D采集96 bit數(shù)據(jù),在第N個(gè)發(fā)送時(shí)鐘下降沿發(fā)送每組32 bit數(shù)據(jù)中的前16 bit數(shù)據(jù),在第N+1個(gè)發(fā)送時(shí)鐘下降沿發(fā)送每組32 bit數(shù)據(jù)中后16 bit數(shù)據(jù)。重復(fù)以上操作,就可以實(shí)現(xiàn)分時(shí)復(fù)用的數(shù)據(jù)傳輸方式。數(shù)據(jù)發(fā)送部分的時(shí)鐘為A/D采樣時(shí)鐘的兩倍,保證所有A/D采集到的數(shù)據(jù)都能傳輸出去。
在系統(tǒng)的接收端,執(zhí)行與發(fā)送端相反的操作。接收端對(duì)接收到的數(shù)據(jù)做解復(fù)用操作,把96位數(shù)據(jù)還原出來。最終設(shè)計(jì)系統(tǒng)的數(shù)據(jù)采集發(fā)送和接收硬件框圖如圖1和圖2所示。
2 硬件電路的實(shí)現(xiàn)
2.1 采樣電路
數(shù)據(jù)采集是整個(gè)系統(tǒng)的核心功能之一。系統(tǒng)使用ADI公司的高速數(shù)據(jù)轉(zhuǎn)換器AD9235。AD9235的模擬輸入端采用的是差分信號(hào),選擇差分輸入信號(hào),能夠提高A/D輸出的信噪比[4]。電路如圖3所示。而信號(hào)發(fā)生器產(chǎn)生的信號(hào)是單端信號(hào),需要將其先轉(zhuǎn)換為差分信號(hào)再采樣。使用ADI公司的AD8138芯片完成信號(hào)的單端轉(zhuǎn)差分工作。AD8138具有帶寬大、使用簡單的優(yōu)點(diǎn),支持單電源供電,是單端轉(zhuǎn)差分信號(hào)的理想選擇[5]。電路如圖4所示。
2.2 串并轉(zhuǎn)換電路
串并轉(zhuǎn)換芯片使用的是TI公司的TLK1501,它具有16 bit發(fā)送/接收數(shù)據(jù)接口,內(nèi)部能夠完成串并/并串轉(zhuǎn)化和8B/10B編碼功能[6-7]。
之所以在光端機(jī)前面加一個(gè)串并轉(zhuǎn)換芯片TLK1501,是因?yàn)槊總€(gè)光纖通道同一時(shí)刻只能傳輸一位數(shù)據(jù)。16 bit并行數(shù)據(jù)必須先經(jīng)過并串轉(zhuǎn)換,才能通過光纖逐位傳輸出去。同時(shí),接收端為了能夠?qū)⒔邮盏降拇袛?shù)據(jù)流恢復(fù),需要從串行數(shù)據(jù)流中提取到同步時(shí)鐘信號(hào),而對(duì)于一般的串行數(shù)據(jù)流這是很難完成的。但是如果串行數(shù)據(jù)流采用某種編碼方式使得1和0出現(xiàn)的次數(shù)差不多,提取同步時(shí)鐘信號(hào)就會(huì)變得簡單得多。8 B/10 B編碼即是滿足這一要求的編碼方式。
2.3 光收發(fā)模塊電路
本系統(tǒng)使用1X9 1.25 Gb/s的光收發(fā)模塊實(shí)現(xiàn)光電轉(zhuǎn)換,它具有體積小,功耗低等優(yōu)點(diǎn)。接口電路如圖5所示。
光收發(fā)模塊電路必須要注意以下問題:
(1)TLK1501輸出的串行數(shù)據(jù)流為CML電平,而光收發(fā)模塊的輸入信號(hào)只支持LVPECL/PECL電平。需要一個(gè)電阻網(wǎng)絡(luò)將CML電平轉(zhuǎn)換到LVPECL電平。(2)由于串行數(shù)據(jù)流的速率高達(dá)640 Mb/s,必須要注意信號(hào)的完整性問題。(3)光收發(fā)模塊對(duì)電源噪聲敏感,電源需要充分去耦。
3 FPGA軟件的實(shí)現(xiàn)和系統(tǒng)測試
3.1 FPGA程序模塊
FPGA的程序由Verilog語言編寫,整個(gè)系統(tǒng)分為PLL模塊、時(shí)鐘控制模塊、發(fā)送控制模塊及接收數(shù)據(jù)模塊。發(fā)送數(shù)據(jù)模塊負(fù)責(zé)TLK1501控制、數(shù)據(jù)復(fù)用功能。接收數(shù)據(jù)模塊負(fù)責(zé)TLK1501控制、數(shù)據(jù)解復(fù)用功能。
發(fā)送數(shù)據(jù)模塊如圖6所示。
3.2 TLK1501控制要點(diǎn)
根據(jù)TLK1501芯片手冊(cè),TLK1501在正常傳輸數(shù)據(jù)前,需要首先進(jìn)行同步操作,同步可以通過發(fā)送同步碼的方式實(shí)現(xiàn)。保持發(fā)送板TLK1501的TX_EN、TX_ER管腳電平為0、0,發(fā)送同步碼。此時(shí)如果接收板正確接收數(shù)據(jù), TLK1501接收端的RX_ER、RX_DV管腳電平也應(yīng)該為0、0。
當(dāng)收發(fā)同步做好后,就可以進(jìn)行正常的數(shù)據(jù)傳輸了。此時(shí)保持發(fā)送板TX_EN、TX_ER為1、0,將需要發(fā)送數(shù)據(jù)寫入TXD端。接收板如果正確接收數(shù)據(jù),RX_DV、RX_ER也應(yīng)該為1、0,RXD輸出的就是接收到的數(shù)據(jù)。
3.3 系統(tǒng)測試
對(duì)每一光纖通道分別進(jìn)行測試。發(fā)送模塊通過FPGA控制A/D按照20 MHz的頻率采樣輸入信號(hào),將采集的數(shù)據(jù)傳輸給TLK1501。數(shù)據(jù)經(jīng)過8 B/10 B編碼、并串轉(zhuǎn)換、電光轉(zhuǎn)換,最后通過光纖發(fā)送出去。使用QuartusII自帶的邏輯分析儀得到發(fā)送時(shí)序圖如圖7所示,其中TXD為復(fù)用后的發(fā)送波形。
接收模塊通過數(shù)據(jù),通過光電轉(zhuǎn)換、串并轉(zhuǎn)換、8 B/10 B解碼,還原出A/D的采樣數(shù)據(jù)。接收時(shí)序圖如圖8所示。RXD為接收的復(fù)用波形,dat1(正弦波)和dat2(鋸齒波)為解復(fù)用后得到的兩路信號(hào)。
基于光纖傳輸?shù)?a class="innerlink" href="http://ihrv.cn/tags/高速數(shù)據(jù)采集" title="高速數(shù)據(jù)采集" target="_blank">高速數(shù)據(jù)采集傳輸系統(tǒng),運(yùn)行穩(wěn)定,三路的總數(shù)據(jù)傳輸速率達(dá)到了1 920 Mb/s,并且這個(gè)速率還能進(jìn)一步提高。使用光纖對(duì)數(shù)據(jù)進(jìn)行傳輸可以有效提高數(shù)據(jù)傳輸?shù)男剩黾訑?shù)據(jù)傳輸?shù)木嚯x,減少系統(tǒng)復(fù)雜度,特別適合復(fù)雜環(huán)境下的數(shù)據(jù)采集和傳輸,具有十分重要的實(shí)用價(jià)值。
參考文獻(xiàn)
[1] 王瑋,馮永茂,丁鐵夫.基于FPGA的高速數(shù)據(jù)傳輸芯片控制器設(shè)計(jì)[M]. 電子器件,2008(3):845-848.
[2] 王金明.數(shù)字系統(tǒng)設(shè)計(jì)與Verilog HDL[M]. 北京:電子工業(yè)出版社, 2009.
[3] CycloneII Device Handbook[M]. Altera Corporation,2005.
[4] Analog Device Inc. AD9235 data sheet[EB].http://www.analog.com/zh/analog-to-digital-converters/ad- converters/ad9235/products/product.html,2004.
[5] Analog Device Inc.AD8138 data sheet[EB]. http://www.analog.com/zh/all-operational-amplifiers-op-amps/operational-amplifiers-op-amps/ad8138/products/product.html,2006.
[6] Texas Instruments.TLK1501 data sheet[EB].http://www.ti.com.cn/product/cn/tlk1501,2003.
[7] Texas Instruments. TLK1501應(yīng)用指南[EB].http://www.ti.com.cn/cn/lit/an/zhca077/zhca077.pdf,2010.