詹金晶
【摘要】設(shè)計(jì)了一種應(yīng)用于水下拖體與母船之間通信的數(shù)字光端機(jī),包括3路模擬通道和1路數(shù)字通道。光端機(jī)發(fā)送端對(duì)模擬信號(hào)進(jìn)行A/D轉(zhuǎn)換,對(duì)數(shù)字信號(hào)進(jìn)行TTL電平轉(zhuǎn)換,然后通過(guò)調(diào)制、編碼及PECL電平轉(zhuǎn)換由光發(fā)射模塊發(fā)送到光纖上進(jìn)行傳輸。接收端的光接收模塊將光纖傳輸?shù)墓庑盘?hào)轉(zhuǎn)換為電信號(hào),進(jìn)行PECL電平轉(zhuǎn)換、解碼、解調(diào)及D/A轉(zhuǎn)換后對(duì)信號(hào)進(jìn)行還原。
【關(guān)鍵詞】光端機(jī);CPLD
1.前言
隨著海洋經(jīng)濟(jì)的到來(lái),人類對(duì)海洋探索的需求越來(lái)越多,水下拖體作為一種小型水下平臺(tái),成為人類觀察、了解海洋世界的重要工具。水下拖體安裝各類傳感器、聲納或攝像機(jī)等設(shè)備,在母船拖纜的拉力作用下行進(jìn),對(duì)目標(biāo)區(qū)域進(jìn)行探測(cè)。由于水下拖體需要實(shí)時(shí)傳輸大量探測(cè)數(shù)據(jù)到母船,且拖體與母船間的拖纜有幾百米,因此采用光纖通信來(lái)完成數(shù)據(jù)傳輸。光纖通信系統(tǒng)包括傳輸光纖和光端機(jī)。光端機(jī)主要完成信號(hào)調(diào)制/解調(diào)、編碼/解碼及光電轉(zhuǎn)換等功能,是光纖通信系統(tǒng)的核心設(shè)備。本文設(shè)計(jì)一種光端機(jī),應(yīng)用于母船與水下拖體之間的數(shù)據(jù)通信。
2.系統(tǒng)組成
為了滿足水下拖體與母船之間的通信需求,光端機(jī)包括3路模擬通道和1路數(shù)字RS232C通道。發(fā)送端將3路模擬信號(hào)進(jìn)行A/D轉(zhuǎn)換為數(shù)字信號(hào),將1路RS232C信號(hào)電平轉(zhuǎn)換為TTL電平,通過(guò)CPLD對(duì)這4路信號(hào)時(shí)分復(fù)用為1路串行數(shù)據(jù),經(jīng)過(guò)PECL電平轉(zhuǎn)換后由光發(fā)射模塊傳輸?shù)焦饫w上。接收端將光信號(hào)轉(zhuǎn)換為電信號(hào),電信號(hào)由PECL電平轉(zhuǎn)為TTL電平后通過(guò)CPLD模塊進(jìn)行解碼和解調(diào),最后由D/A模塊還原出發(fā)送的3路模擬信號(hào),并將1路TTL數(shù)字信號(hào)轉(zhuǎn)換為RS232C電平后輸出。
圖1 系統(tǒng)組成
3.硬件實(shí)現(xiàn)
3.1 A/D、D/A轉(zhuǎn)換
A/D轉(zhuǎn)換采用BURR-BROWN公司的ADS7809芯片,采樣率為100kHz,與采集的模擬信號(hào)的頻率關(guān)系符合奈奎斯特采樣定理,采樣串行輸出數(shù)據(jù)16位。從拖體輸出的三路模擬信號(hào)分別接入三路ADS7809,當(dāng)芯片的R/C*引腳為低電平時(shí),開(kāi)始模擬信號(hào)到數(shù)字信號(hào)的采集,當(dāng)R/C*引腳為高電平時(shí),ADS7809開(kāi)始輸出轉(zhuǎn)換的數(shù)字信號(hào)。數(shù)字信號(hào)輸出與DATACLK引腳的時(shí)鐘信號(hào)同步。
D/A轉(zhuǎn)換采用AD5570芯片。CPLD模塊解調(diào)出的3路數(shù)字信號(hào)分別輸入3路AD5570以轉(zhuǎn)換出模擬信號(hào),還原出水下拖體發(fā)送的工作狀態(tài)。當(dāng)芯片的SYNC*引腳變?yōu)榈碗娖綍r(shí),芯片內(nèi)部輸入寄存器在SCLK時(shí)鐘信號(hào)的下降沿連續(xù)讀入16位數(shù)字信號(hào),并在SYNC*變?yōu)楦唠娖綍r(shí)轉(zhuǎn)換為模擬信號(hào)輸出。模擬信號(hào)輸出范圍為±10V,由外部電路為D/A轉(zhuǎn)換提供+5V的參考電壓。
3.2 CPLD芯片
CPLD芯片采用Lattice公司的ispLSI1016,包括96個(gè)寄存器、32個(gè)I/O口,基本邏輯單元為GLB,性能穩(wěn)定。
3.3 PECL電平轉(zhuǎn)換
光纖通信的標(biāo)準(zhǔn)接口是PECL電平。PECL輸入電壓的靈敏度為300mV,輸出邏輯電平擺幅約為800mV,傳輸信號(hào)可以較快的速度從一種狀態(tài)轉(zhuǎn)變?yōu)榱硪环N狀態(tài)。由于電路板上傳輸距離短,PECL輸出采用直流耦合的方式,在輸出端接入到地偏置電阻。TTL與PECL都為標(biāo)準(zhǔn)電平,可采用由電阻和電容組成的電路或者專門的芯片來(lái)實(shí)現(xiàn)兩電平之間的轉(zhuǎn)換。
3.4 光收/發(fā)模塊
光收/發(fā)模塊采用武漢電信器件公司的RTXM157系列,這是一款收發(fā)一體的光器件,雙SC接口,分別為發(fā)送和接收,PECL電平接口,+5V供電。
4.軟件設(shè)計(jì)
4.1 幀結(jié)構(gòu)
三路模擬數(shù)據(jù)經(jīng)A/D轉(zhuǎn)換后與一路RS232C數(shù)據(jù)進(jìn)入CPLD編碼/調(diào)制模塊,四路并行信息數(shù)據(jù)時(shí)分復(fù)用轉(zhuǎn)換為一路串行數(shù)據(jù),加入頭數(shù)據(jù)、偶校驗(yàn)等信息,幀結(jié)構(gòu)如圖2所示,一幀數(shù)據(jù)為18×4位。第一個(gè)1×4位為頭數(shù)據(jù),中間16×4位為四路16位信息數(shù)據(jù)。最后4位為信息數(shù)據(jù)的偶校驗(yàn)。
圖2 幀結(jié)構(gòu)
4.2 時(shí)序設(shè)計(jì)
系統(tǒng)采用CMI編碼,其特點(diǎn)就是編碼后數(shù)據(jù)由1位變?yōu)?位,所以要對(duì)未編碼信號(hào)的時(shí)鐘進(jìn)行分頻。系統(tǒng)晶振頻率為8.192MHz,CPLD模塊對(duì)該頻率信號(hào)進(jìn)行2分頻作為信號(hào)調(diào)制和解調(diào)的時(shí)鐘,編碼和解碼頻率則仍為8.192MHz。
在進(jìn)行CPLD內(nèi)部電路設(shè)計(jì)時(shí),根據(jù)幀結(jié)構(gòu)要求進(jìn)行時(shí)序控制,采用減計(jì)數(shù)器完成。減計(jì)數(shù)器周期為18×4個(gè)時(shí)鐘周期,即置數(shù)“1000111”。在調(diào)制時(shí)鐘的每個(gè)上升沿進(jìn)行一次減計(jì)數(shù)。在狀態(tài)“1000111”時(shí)開(kāi)始輸出4位頭數(shù)據(jù),在狀態(tài)“1000011”時(shí)開(kāi)始輸出16×4位信息數(shù)據(jù),狀態(tài)“0000011”時(shí)開(kāi)始輸出4位偶校驗(yàn)數(shù)據(jù)。
A/D芯片16位數(shù)字信息輸出的時(shí)鐘由CPLD模塊給出,即在減計(jì)數(shù)器狀態(tài)“1000011”的前一個(gè)時(shí)鐘信號(hào)下降沿,CPLD模塊開(kāi)始輸出時(shí)鐘信號(hào)到A/D芯片的DATACLK引腳,同時(shí)輸出高電平到R/C*引腳。在16位數(shù)字信息全部輸出后,CPLD模塊輸出低電平到R/C*引腳,使A/D芯片執(zhí)行A/D轉(zhuǎn)換,如圖3所示。
圖3 A/D轉(zhuǎn)換時(shí)鐘
D/A芯片讀入數(shù)據(jù)的時(shí)鐘由CPLD模塊給出,從減計(jì)數(shù)器的狀態(tài)“1000011”開(kāi)始,CPLD模塊向D/A芯片的SCLK引腳連續(xù)輸出16個(gè)低電平有效的時(shí)鐘信號(hào),如圖4所示。在SCLK的每一個(gè)時(shí)鐘下降沿,D/A芯片讀入1位信息數(shù)據(jù),直到狀態(tài)“0000011”時(shí)停止。同時(shí),CPLD模塊若正確解調(diào)出頭數(shù)據(jù)和偶校驗(yàn)碼,則在此期間向D/A芯片的SYNC*引腳發(fā)送低電平,使能D/A芯片的輸入寄存器,讀入的16位數(shù)據(jù)依次存入寄存器。在讀完16位信息數(shù)據(jù)后,SYNC*變?yōu)楦唠娖?,D/A芯片輸出轉(zhuǎn)換的模擬信號(hào)。
圖4 D/A轉(zhuǎn)換時(shí)鐘
4.3 發(fā)送端CPLD模塊實(shí)現(xiàn)
發(fā)送端CPLD模塊將4路并行頭數(shù)據(jù)、信息數(shù)據(jù)及偶校驗(yàn)碼時(shí)分復(fù)用調(diào)制為1路串行數(shù)據(jù),經(jīng)CMI編碼后輸出。該模塊包括計(jì)數(shù)器、加法器、多路選擇器、并/串轉(zhuǎn)換及CMI編碼等,具體實(shí)現(xiàn)見(jiàn)圖5所示。
計(jì)數(shù)器完成整個(gè)模塊的時(shí)序控制,輸入為原時(shí)鐘CLK進(jìn)行2分頻后的時(shí)鐘信號(hào),輸出實(shí)現(xiàn)對(duì)加法器、多路選擇器、并/串轉(zhuǎn)換及A/D芯片的工作控制。
加法器完成偶校驗(yàn)碼的計(jì)算,信息數(shù)據(jù)輸入加法器,在時(shí)鐘信號(hào)的上升沿進(jìn)行1位加法運(yùn)算,當(dāng)信息數(shù)據(jù)包含偶數(shù)個(gè)“1”時(shí),加法器輸出“0”,包含奇數(shù)個(gè)“1”時(shí),加法器輸出“1”。在多路選擇器選擇輸出信息數(shù)據(jù)時(shí),加法器的時(shí)鐘信號(hào)才有效,即只對(duì)信息數(shù)據(jù)計(jì)算偶校驗(yàn)碼。
多路選擇器根據(jù)控制信號(hào)S的值選擇輸出頭數(shù)據(jù)、信息數(shù)據(jù)及偶校驗(yàn)碼中的一種,其選擇順序與幀結(jié)構(gòu)中的數(shù)據(jù)組成一致。
并/串轉(zhuǎn)換器將4路并行數(shù)據(jù)轉(zhuǎn)換為1路串行數(shù)據(jù),在時(shí)鐘信號(hào)的上升沿,當(dāng)LD為高電平時(shí),4路并行數(shù)據(jù)加載到寄存器中,LD為低電平時(shí), 4路并行數(shù)據(jù)依次移位串行輸出。多路選擇器和并/串轉(zhuǎn)換實(shí)現(xiàn)模塊的時(shí)分復(fù)用調(diào)制。
CMI編碼當(dāng)數(shù)據(jù)為“0”時(shí),編碼輸出固定的“01”,當(dāng)數(shù)據(jù)為“1”時(shí),編碼交替輸出“00”或“11”。 因?yàn)镃MI編碼后數(shù)據(jù)由1位變?yōu)?位,所以編碼后數(shù)據(jù)的時(shí)鐘頻率為未編碼數(shù)據(jù)時(shí)鐘的2倍。
圖5 發(fā)送端CPLD模塊實(shí)現(xiàn)
4.4 接收端CPLD模塊實(shí)現(xiàn)
接收端CPLD模塊是發(fā)送端的逆過(guò)程,首先實(shí)現(xiàn)CMI解碼,然后將1路串行數(shù)據(jù)轉(zhuǎn)換為4路并行數(shù)據(jù),提取頭數(shù)據(jù)以實(shí)現(xiàn)幀同步,對(duì)偶校驗(yàn)碼進(jìn)行驗(yàn)證,在確認(rèn)解調(diào)出的數(shù)據(jù)無(wú)誤后,使能D/A芯片讀入16位信息數(shù)據(jù)。
圖6 接收端CPLD模塊
接收的數(shù)據(jù)首先進(jìn)行CMI解碼,將“00”碼轉(zhuǎn)為“11”,之后在每個(gè)時(shí)鐘周期的上升沿讀取數(shù)據(jù),只讀取“01”、“11”碼的第一位數(shù)據(jù),即可解碼出原數(shù)據(jù)。
由時(shí)分復(fù)用原理,串行數(shù)據(jù)通過(guò)移位寄存器完成串/并轉(zhuǎn)換,解調(diào)出四路并行信息。根據(jù)幀結(jié)構(gòu),首先提取頭數(shù)據(jù)以實(shí)現(xiàn)幀同步,若不能正確提取頭數(shù)據(jù),則發(fā)出“失步”報(bào)警信息。四路信息數(shù)據(jù)同時(shí)送入加法器,計(jì)算的偶校驗(yàn)碼與解調(diào)的偶校驗(yàn)碼通過(guò)比較器進(jìn)行驗(yàn)證,若不一致,則發(fā)出“誤碼”報(bào)警信息。
計(jì)數(shù)器完成與發(fā)送端相同的功能,所不同的是,其計(jì)數(shù)輸出經(jīng)過(guò)時(shí)序組合,在幀同步的情況下,才使能加法器進(jìn)行偶校驗(yàn)碼的計(jì)算,在比較器驗(yàn)證偶校驗(yàn)碼正確的情況下,才使能D/A芯片的寄存器開(kāi)始讀入數(shù)據(jù)。
5.結(jié)論
該光端機(jī)可實(shí)現(xiàn)模擬信號(hào)和數(shù)字信號(hào)的同步傳輸,性能穩(wěn)定,操作方便,已成功應(yīng)用于某水下拖體的通信系統(tǒng)中。其設(shè)計(jì)靈活,可與其他電路綜合,或提高采樣頻率等以擴(kuò)展其功能和性能,具有廣泛的應(yīng)用前景。
參考文獻(xiàn)
[1]李鐵,徐潤(rùn)華.基于FPGA的車載光端機(jī)的設(shè)計(jì)與應(yīng)用[J].網(wǎng)絡(luò)與信息技術(shù),2008,27(4):53-55.
[2]生安財(cái),孟克.基于CPLD的數(shù)字光端機(jī)的設(shè)計(jì)與實(shí)現(xiàn)[J].應(yīng)用科技,2007,34(11):43-45.
[3]千應(yīng)慶,徐潤(rùn)華,孫傯晟,周建平.光模塊PECL接口互聯(lián)技術(shù)研究[J],兵工自動(dòng)化,2009,28(5):1-4.
[4]劉福奇.FPGA嵌入式項(xiàng)目開(kāi)發(fā)實(shí)戰(zhàn)[M].電子工業(yè)出版社,2009.