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