0 引言
目前,大氣激光通信、無線紅外通信以及新興的紫外光通信技術發展迅猛,是現代通信技術研究的一個熱點。尤其是新興的紫外光通信技術,它工作在通常所說的紫外光 “日盲區”,利用該波段的紫外光進行通信其背景噪聲可視為零,也使得紫外光通信具有低竊聽率、低位辨率、全方位、高抗干擾能力等優點。光通信系統大多采用設計為強度調制/直接檢測(IM/DD)的系統,應用于強度調制/直接檢測光通信系統中的調制方式有很多種,脈沖位置調制(PPM)是一種正交調制方式,相比于傳統的開關鍵控(OOK)調制,它具有更高的光功率利用率和頻帶利用率,并能進一步提高傳輸信道的抗干擾能力。此外,PPM降低了光輻射平均功率的要求,小輻射功率對延長發射光源工作壽命特別重要,能有效提高整機系統的使用壽命。
本文從工程應用出發,根據PPM的基本原理和數學模型,對PPM調制解調系統進行了設計,并用Verilog HDL語言在Quartus上完成了系統仿真。
1 PPM的基本原理與數學模型
根據脈沖形式,脈沖位置調制可分為三種:單脈沖位置調制(L-PPM),差分脈沖位置調制(L-DPPM)以及多脈沖位置調制(Multi- PPM)。從帶寬利用率、傳輸速率以及工程實際應用上綜合考慮,選擇L-PPM作為PPM實現的具體方式。
L-PPM是將一個n位二進制數據組映射為由2n個時隙組成的時間段上的某一個時隙處的單個脈沖信號。易知,一個L位的PPM調制信號傳送的信息比特為log2L。如果將n位數據組寫成m=(m1,m2,…,mn),而將時隙位置記為l,則此單脈沖位置調制的編碼映射關系可以寫成如下數學關系:l=m1+2m2+…+2n-1mn,n∈{0,1,…,n-1)。根據此關系式,得出16-PPM的示意圖,如圖1所示。
2 PPM調制系統設計
由上述討論,不難發現PPM的調制過程本質上是一個計數過程。程序需計算并行數據中的數值,并在相應的時隙位置輸出一個高脈沖,其他位置不輸出脈沖,從而保證信號的一一映射。
本文基于Verilog HDL語言設計,以16-PPM為例,其設計思路為:由圖1所示PPM調制原理,PPM調制是將并行輸入數據進行計數,故在調制之前應將串行輸入的數據進行串/并轉換,由于是16-PPM,一幀時間內時隙個數應為16個,每次對4位數據進行串/并轉換,故觸發串/并變換的時鐘信號是時隙時鐘的四分頻。轉換后的4位并行數據需與16進制計數器進行比較從而確定高脈沖在這一幀中的時隙位置,這要求并行數據能維持一幀時間使之與計數器產生的計數值進行比較,故由鎖存器控制輸出并行數據。當并行數據與計數器的輸出值相等時,就輸出高電平“1”,否則輸出低電平“0”,這樣就產生了所需的PPM信號。具體流程如圖2 所示。
3 PPM解調系統設計
本文已詳細介紹了PPM的調制過程,PPM信號的解調過程從本質上講就是PPM調制的逆過程,故對其詳細解調過程在此省略。但在PPM解調過程中需要解決一個非常關鍵的時鐘同步問題,具體包括位同步和幀同步。
3.1 PPM的位同步
位同步與幀同步建立的效果與效率關系到整個PPM解調過程的成功與否。而位同步又是幀同步的基礎,實現位同步的方法有插入導頻法和直接法。插入導頻法是在基帶信號頻譜的零點處插入所需的位定時導頻信號;直接法則是在發送端不專門發送導頻信號,而直接從接收的數字信號中提取位同步信號。從PPM調制過程中發現PPM信號中包含有時隙時鐘信息,即位同步信號,宜采用直接法。直接提取位同步的方法又分濾波法和鎖相環法,現在通常采用數字鎖相環提取位同步信號,數字鎖相環解決了模擬鎖相環的直流零點漂移、器件飽和以及易受電源和環境溫度變化影響等缺點,而且具有可靠性高、體積小、易于集成等優點。文獻已詳細闡述,本文限于篇幅不在此贅述。
3.2 PPM的幀同步
實現幀同步可采用插入法或直接法,插入法即在每幀的幀頭部插入特殊的碼元,用以辨別每幀的起始位置,比如插入巴克碼。但這樣會讓PPM的調制與解調過程復雜化,并且插入的碼元占用了原本傳輸信息的時隙,會降低整個系統的傳輸速率,本文采用直接法提取幀同步信號。
實現PPM解調時的幀同步傳統上多采用基于鎖相環的方法。即采用鎖相環鎖住“肩并肩”的兩個光脈沖,如圖1所示,幀3與幀4之間的兩個光脈沖即為 “肩并肩”光脈沖。很明顯出現這種光脈沖的情況相對較少,尤其是隨著調制階數的增大,出現的概率勢必減小,嚴重影響了實現幀同步的速度。此外,由于PPM 信號的連“0”碼過長,使用鎖相環不能很快鎖住,而且很易失鎖。這里利用PPM信號自身特性,采用數字邏輯電路提取出字同步時鐘。
由16-PPM示意圖,發現PPM信號有三個特點:其一,每個PPM幀由16個時隙組成,但其中有且只有一個時隙是高電平,其余的都是低電平;其二,若連續出現16個低電平,說明這16個低電平一定不處在同一個PPM幀當中,而是在相鄰兩個幀中;其三,若連續出現2個高電平,說明這2個高電平只能在相鄰的兩個幀當中。
基于PPM信號上述三個特點,在FGPA中設計提取幀同步信號過程如下:接收到的PPM調制信號輸入到串/并轉換單元,在同步時隙時鐘的控制下,將串行的PPM調制信號以16位并行輸入,這個過程實際上就是一個16位數據移位的過程。再對并行輸出的16位數據進行邏輯判斷,若這16位數據中有且只有一個高電平“1”,則輸出高電平,其他情況則輸出低電平“O”。與此同時,計數器對時隙時鐘進行計數,計數器每計16個次產生一個進位高電平“1”,其他時候則輸出為“O”。將計數器輸出與邏輯判斷輸出進行相與。若兩者都為高電平,相與結果為“1”,則輸出一個幀同步信號,其他情況下則不輸出幀同步信號,但若邏輯判斷結果為“0”,而計數器輸出為“1”時,需將此時與門輸出的低電平與計數器輸出的高電平進行同或運算,得到低電平“O”,并將此低電平跟控制計數器的時隙時鐘相與,使計數器暫停計數一次,從而通過扣除時隙時鐘的方式逐漸達到幀同步。具體設計流程如圖3所示。
4 系統仿真
整個系統在Quartus 8.0平臺進行仿真,圖4為PPM調制仿真圖。ser_in為串行輸入的數據,parr為串/并轉換后的并行數據,data_out即為PPM調制后的輸出信號,從圖中可以看到PPM調制正確。為了更好地展現程序逐漸同步的原理,選擇從4-PPM信號中恢復幀同步,如圖5所示,從仿真中,不難看出幀同步輸出framclk_out逐漸同步的過程。
圖6為PPM解調仿真圖,圖7為系統整體仿真,即串行輸入數據經PPM調制后,解調程序從已調信號中提取幀同步,并解調出原有串行輸入數據,從圖7 中看到串行輸入數據與串行輸出數據之間存在一定的延遲,一方面是因為硬件系統自身存在延遲,更主要的原因是由于在PPM調制時,比較器需等待第一次串/并轉換完成再進行比較,并輸出PPM信號,而解調是在基于調制后PPM信號進行的,從而導致了仿真中的延遲,但在實際運用中這個延遲并不存在。
5 結語
用Verilog HDL語言設計完成了基于FPGA的PPM調制解調系統,并在Quartus 8平臺上對調制過程、幀同步過程和解調過程以及整個系統進行功能仿真和時序仿真,從仿真中可以看出整個系統達到了預期的目標,能夠高效穩定地完成PPM調制與解調過程,為將來的實用化打下了基礎。但另一方面,也在仿真中發現幀同步時間偏長,需要進一步改進。