閆輝,胡永輝,侯雷
?
基于E1接口的時間同步系統(tǒng)關(guān)鍵模塊設(shè)計與仿真
閆輝1,2,3,胡永輝1,2,侯雷1,2
(1. 中國科學(xué)院國家授時中心,西安 710600;2. 中國科學(xué)院精密導(dǎo)航定位定時技術(shù)重點實驗室,西安 710600;3. 中國科學(xué)院研究生院,北京 100039)
針對E1線路延遲穩(wěn)定的優(yōu)點,給出了溯源到GPS系統(tǒng)時間的時間保持模塊,提出時間信息組合以適應(yīng)E1線路不成幀的傳輸方式,采用HDB3碼作為E1線路傳輸碼型,利用FPGA芯片EP2C8T144I8進(jìn)行開發(fā),設(shè)計了基于E1接口的時間同步系統(tǒng)關(guān)鍵模塊,并對各關(guān)鍵模塊進(jìn)行仿真,結(jié)果表明各模塊設(shè)計均滿足時間同步系統(tǒng)的要求。
時間同步;E1接口;HDB3碼;現(xiàn)場可編程門陣列
隨著通信技術(shù)的飛速發(fā)展,時間標(biāo)準(zhǔn)及時間同步技術(shù)在通信網(wǎng)中的應(yīng)用越來越廣泛,但由于各種網(wǎng)元設(shè)備的內(nèi)部時鐘一般沒有內(nèi)在聯(lián)系,且模塊晶振精度較低,網(wǎng)元守時能力較差,現(xiàn)代通信領(lǐng)域的傳統(tǒng)業(yè)務(wù)和新業(yè)務(wù)、運營商之間的互聯(lián)互通和網(wǎng)間結(jié)算以及通信業(yè)務(wù)所涉及的網(wǎng)絡(luò)安全、認(rèn)證、計費等都需要一個共同的時間標(biāo)準(zhǔn),準(zhǔn)確、穩(wěn)定的時間同步可以保證整個系統(tǒng)工作步調(diào)一致,高效地實現(xiàn)其所具有的全部功能[1]。而E1線路最大的優(yōu)點就是延遲穩(wěn)定,可以在一定程度上保證時間同步的精度。E1是國際電聯(lián)電信標(biāo)準(zhǔn)化部門(ITU-T)制定并由歐洲郵政與電信協(xié)會(CEPT)命名的數(shù)字傳輸系統(tǒng)一次群(PCM30)標(biāo)準(zhǔn),E1接口的物理及電特性符合國際電報電話咨詢委員會(CCITT)的G.703標(biāo)準(zhǔn),我國也采用E1標(biāo)準(zhǔn)作為脈沖編碼調(diào)制(PCM)系統(tǒng)和窄帶綜合業(yè)務(wù)數(shù)字網(wǎng)(N-ISDN)的基群[2]。目前,E1接口在分組網(wǎng)、幀中繼網(wǎng)、全球移動通訊系統(tǒng)(GSM)移動基站及軍事通信中都得到了廣泛的應(yīng)用,用來傳送語音、數(shù)據(jù)、圖像等信號。兼顧應(yīng)用的廣泛性和穩(wěn)定性,本文提出了一種基于E1接口的時間同步系統(tǒng)。文中介紹了以FPGA(現(xiàn)場可編程門陣列)為主要芯片,利用E1線路傳輸時間同步信息,完成時間同步的系統(tǒng)設(shè)計,并且給出了相關(guān)部分的設(shè)計和仿真結(jié)果。
本系統(tǒng)通過接收外部GPS時間信息來校正本地時間,從而達(dá)到系統(tǒng)時間與GPS時間同步的目的。整個系統(tǒng)可以分為2個部分:時間保持部分和E1模塊部分,系統(tǒng)組成框圖如圖1所示。時間保持部分的主要功能是本地時間保持和通過外界時間源對本地時間進(jìn)行校正;E1模塊部分的主要功能是通過E1接口發(fā)送時間同步信息,或接收外部同步信息用以校正本地時間。
圖1 系統(tǒng)設(shè)計框圖
時間保持模塊的主要功能就是實現(xiàn)本地時間保持和GPS時間溯源。本地時間保持模塊是在系統(tǒng)自帶晶振的驅(qū)動下工作的本地時間;GPS時間溯源是通過接收GPS時碼信息和標(biāo)準(zhǔn)秒脈沖信號(1PPS)來完成對本地時間的校正。時碼信息采用與串口通信類似的串行傳輸方式,其波特率為9 600 bit/s,數(shù)據(jù)位為8位。GPS 1PPS信號脈寬與本地晶振脈寬不同,為了之后的操作,需要將GPS 1PPS信號進(jìn)行整形,使二者的脈寬一致。實現(xiàn)方法是將GPS 1PPS信號通過D觸發(fā)器延遲,而后與自身相與。
在得到GPS時碼信息和脈寬整形后的GPS 1PPS信號后,首先將本地時間重置為GPS系統(tǒng)時間,由于時碼信息比GPS的1PPS信號晚,所以重設(shè)時間后需要等待下一個1PPS信號才能觸發(fā)計時,并且重置的GPS系統(tǒng)時間需要多加1 s。GPS 1PPS信號不但觸發(fā)計時,而且還會啟動本地秒脈沖信號產(chǎn)生,保證GPS溯源完成后,完成本地秒脈沖信號的同步。
E1線路數(shù)據(jù)傳輸速率為2.048 Mbit/s,可分為32個時隙,有成幀、成復(fù)幀和不成幀3種傳輸方式[3]。
本設(shè)計中采用不成幀的傳輸方式(此傳輸方式中,所有32個時隙均用于傳輸有效數(shù)據(jù)),將整個2 M線路作為數(shù)據(jù)傳輸鏈路,沒有數(shù)據(jù)幀結(jié)構(gòu),傳輸速率為2.048 Mbit/s,傳輸碼形式為HDB3碼,傳輸時碼信息和1PPS信號。首先將1PPS信號轉(zhuǎn)換成同步頭信息,將其與時碼信息進(jìn)行組合,然后經(jīng)過HDB3編碼,最后通過外圍接口電路傳輸出去。
時間信息包括本地時碼信息和1PPS信號。本地時碼信息可以從本地直接獲取,經(jīng)過HDB3編碼就可以進(jìn)行傳輸,而1PPS信號是一種時刻信號,不僅需要編碼還要考慮時刻的問題。另外,由于信號傳輸方式是不成幀方式,所以傳輸數(shù)據(jù)沒有幀頭,接收端無法找到數(shù)據(jù)接收起始點,從而無法完成有效數(shù)據(jù)的提取。
考慮到1PPS信號的上升沿時刻和時碼信息滯后1PPS信號的特點,可以將1PPS信號作為傳輸信號的幀頭,隨后傳輸時碼信息,這樣組合后,不僅可以標(biāo)識1PPS信號的時刻,還可以保證有效數(shù)據(jù)的提取。
1PPS信號可以看作是連“1”數(shù)據(jù),若以連“1”為幀頭,在數(shù)據(jù)傳輸中可能會出現(xiàn)幀頭誤判;再者,1PPS信號就是要體現(xiàn)數(shù)據(jù)幀頭的位置,而內(nèi)容并不重要,所以在此以巴克碼代表1PPS信號作為幀頭。
巴克碼主要用于通信系統(tǒng)中的幀同步,是一種具有特殊規(guī)律的二進(jìn)制碼組,是一種非周期序列,其特點是具有尖銳的自相關(guān)函數(shù),與隨機(jī)數(shù)字信息相區(qū)別,易于識別。在本設(shè)計中采用7位巴克碼“1110010”作為幀頭,用來代表1PPS信號,其后數(shù)據(jù)為含有時分秒信息的時碼信息,共有17位數(shù)據(jù),如圖2所示。
圖2 1PPS信號與時碼信息組合
由于時碼數(shù)據(jù)的位數(shù)是固定的,去除7位幀頭即可得到時碼數(shù)據(jù),所以可以不要幀尾,如果有需要也可以加上商定的幀尾或CRC校驗位。在接收端,接收信號經(jīng)過HDB3譯碼后,得到二元碼,當(dāng)檢測到幀頭的上升沿便產(chǎn)生一脈沖信號,即1PPS信號,然后將接收到的數(shù)據(jù)去除幀頭,完成1PPS信號與時碼信息的分離,得到時碼信息。
E1編碼采用三階高密度雙極性碼,即HDB3碼。HDB3碼是一種雙極性碼,其基帶信號無直流分量,而且克服了AMI碼連“0”的缺點,可以提取時鐘信號[4]。其編碼原理為:
1)將信息代碼轉(zhuǎn)變成極性交替的AMI碼;
2)判斷AMI碼中連0的個數(shù),如果連0數(shù)大于3個,則把第4個0變成V符號,V的極性與前一個非0符號(+1或-1)的極性相同;
3)為了不破壞極性交替,V符號也要極性交替,但是當(dāng)相鄰V符號之間有偶數(shù)個非0符號時,會出現(xiàn)V符號與前一個非0符號極性不同,此時再將該連0的第1個0變換成+B或-B,B符號極性與前一個非0符號相反,并讓后面的非0符號極性從V符號開始再交替變化;
4)最后將非0符號均變成1符號,極性不變。
本設(shè)計中的HDB3編碼是在FPGA上實現(xiàn)的,但是因為FPGA不能產(chǎn)生負(fù)電壓,所以需要2路信號,一路代表正極性,另一路代表負(fù)極性[5-6]。用Verilog編程語言實現(xiàn)編碼,編程思想如下:
第1步,改變極性,產(chǎn)生極性交替的信號,編碼中用“10”表示“+1”,“01”表示“-1”,“00”表示“0”;
第2步,加V并完成極性交替。根據(jù)編碼規(guī)則,判斷4個連0,當(dāng)出現(xiàn)4個連0,將第4個0變?yōu)閂符號,同時V符號極性也要交替,最后再將V符號變成1符號,極性不變。所以可以直接將V符號變成1符號,并且極性交替,即“10”或“01”,同時輸出1個加V符號的標(biāo)志信號,以標(biāo)定加V符號的位置,為接下來的加B操作做基礎(chǔ);
第3步,加B符號。根據(jù)編碼規(guī)則,利用第2步的加V標(biāo)志可以得到V符號位置,將其值與前4個非零值相比,若相同,說明極性相同,不作改變;若不同,則說明極性相反,將前3個0符號的第1個變?yōu)锽符號,極性與V符號相同,由于最后還要將B符號變?yōu)橥瑯O性的1符號,所以可以直接變?yōu)閂位置的值,即“10”或“01”,分別代表“+1”或“-1”。
HDB3碼編碼的程序流程如圖3所示。在第3步中,由于要參考前4個值并且可能要改變前面的數(shù)值,所以在FPGA代碼編寫中需要4個寄存器,分別延時1,2,3和4個周期,加B符號的是在第3寄存器。
圖3 HDB3編碼程序流程圖
HDB3碼的雙極性需要2路表示,“10”和“01”分別代表“+1”和“-1”。根據(jù)編碼規(guī)則,只有破壞點V脈沖與前一個非0符號極性相同,所以首先可以從信碼中找到V碼,那么V碼和其前3個符號必然是取代碼,在譯碼時,只需要把V碼以及其前3個取代碼變?yōu)?碼即可,只要找到V碼,不管V前面是2個0碼,還是3個0碼,一律將取代碼置零,完成V碼和B碼的轉(zhuǎn)變,最后完成雙/單極性的轉(zhuǎn)換,進(jìn)而得到原二元碼。
在代碼編寫中,首先判斷V碼,由于要判斷前4個符號極性,所以需要4個寄存器,分別是對輸入信號進(jìn)行1,2,3和4個周期延遲的信號,檢測V碼有2種情況:一種是“1000V”,另一種是“B00V”,判斷2種情況的非0符號極性是否相同,若不同,不作改變,若相同,則將全部非0符號變?yōu)?符號,最后將正極性和負(fù)極性2條信號相加,得到譯碼后的二元碼信號。譯碼的程序流程如圖4所示。
E1接口電路是E1接口與FPGA之間的硬件電路部分,主要功能是電平轉(zhuǎn)換、網(wǎng)絡(luò)隔離、濾波和整形,完成FPGA與E1接口之間信號電平和極性的轉(zhuǎn)換。
在Quartus II 9.0集成環(huán)境下,結(jié)合前面系統(tǒng)及模塊設(shè)計,給出了相關(guān)仿真結(jié)果。
圖5是組合后的時間信息仿真圖,“pps”信號是1PPS信號,每1秒發(fā)1次,“combine”信號是1PPS信號和時碼信息組合之后的信號。
圖5 組合后的信息仿真圖
圖6是組合信號的細(xì)節(jié)仿真圖,從圖6中可以看到,組合信號前7位是巴克碼“1110010”,隨后是17位的時碼信息,代表時分秒的信息。圖7是接收端將接收的信號分離為1PPS和時碼信息的仿真圖。圖7中,“e1pps”信號是分離后的1PPS信號,“e1timedata”信號是分離后的時碼信息。
圖7 信息分離仿真圖
圖8是HDB3編碼的仿真圖。圖8中“incode”是輸入的二元碼序列,“outcode[1]”是HDB3碼的負(fù)極性信號,“outcode[0]”是HDB3碼的正極性信號,“flagv”和“flagb”分別是加V符號和加B符號的位置。
圖8 HDB3編碼仿真圖
設(shè)計了基于E1線路進(jìn)行時間同步的系統(tǒng),各模塊均在FPGA上進(jìn)行仿真,應(yīng)用Verilog硬件編程語言進(jìn)行開發(fā),開發(fā)周期短,設(shè)計靈活,可移植性強(qiáng),可以通過邏輯仿真驗證設(shè)計的合理性和正確性。本設(shè)備還可以擴(kuò)展為成幀的傳輸形式,利用時分復(fù)用,可以進(jìn)行多路時間同步操作,也可以添加其他接口線路,進(jìn)行相關(guān)轉(zhuǎn)換,增強(qiáng)其擴(kuò)展性。同時,還可以通過對開發(fā)程序和同步方法的優(yōu)化,提高同步的精度,滿足更高的要求。
[1] 中國人民解放軍總裝備部軍事訓(xùn)練教材編輯工作委員會. 時間統(tǒng)一技術(shù)[M]. 北京: 國防工業(yè)出版社, 2004.
[2] 邱志模, 王華. 基于FPGA的以太網(wǎng)與E1協(xié)議轉(zhuǎn)換器的實現(xiàn)[J]. 軍民兩用技術(shù)與產(chǎn)品, 2006, (10): 44-45.
[3] ITU-7 G.703 CCITT, 系列數(shù)字接口的物理電特性[S].
[4] 樊昌信, 曹麗娜. 通信原理[M]. 北京: 國防工業(yè)出版社, 2007.
[5] 漢澤西, 孫燕妮. 基于FPGA的HDB3編譯碼[J]. 電子科技, 2007(3): 66-69.
[6] 朱勤為, 唐寧, 趙名劍. 利用FPGA實現(xiàn)HDB3編解碼功能[J]. 電子設(shè)計工程, 2009, (12): 76-79.
Design and simulation of key modules of time synchronous system based on E1 interface
YAN Hui1, 2, 3, HU Yong-hui1, 2, HOU Lei1, 2
(1. National Time Service Center, Chinese Academy of Sciences, Xi′an 710600, China;2. Key Laboratory for Precision Navigation and Timing Technology, National Time Service Center,Chinese Academy of Sciences, Xi′an 710600, China;3. Graduate University of Chinese Academy of Sciences, Beijing 100039, China)
According to the advantage of the stable transfer delay of E1 interface, the time keeping module which can trace to the time of GPS System is proposed. The time information combination is given in order to adapt to the no framed transfer method for E1 interface. By using the HDB3 code as the transmission code and adopting the EP2C8T144I8 FPGA chip, the key time synchronous system module of E1 interface is designed. The simulations of the key modules are conducted and the results indicate that all the key modules meet the requirements of the time synchronization system.
time synchronization; E1 interface; HDB3 code; FPGA
TN919;P127
A
1674-0637(2012)04-0212-06
2012-03-15
中國科學(xué)院“西部之光”人才培養(yǎng)計劃重點資助項目(Y001YR1601)
閆輝,男,碩士研究生,主要從事時間統(tǒng)一系統(tǒng)技術(shù)研究。