国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

一種基于DDFS技術的曼徹斯特碼時鐘提取及解碼電路

2014-12-03 09:18
懷化學院學報 2014年11期
關鍵詞:曼徹斯特碼元解碼

(懷化學院 物理與信息工程系,湖南 懷化 418008)

1 引言

曼徹斯特碼又稱數(shù)字雙相碼,是一種時鐘自同步的編碼技術.與其它的編碼相比,曼徹斯特碼可以消除直流成分,具有時鐘恢復和抗干擾性能力強的特點,更適合于在傳輸性能較差的信道中進行信息的傳輸[1].曼徹斯特碼廣泛應用于測量[2]、電源通信[3]、車輛信號傳輸[4]、數(shù)據(jù)采集[5,6]和物聯(lián)網(wǎng)RFID[7]等應用領域.

曼徹斯特碼編碼比較簡單,但是時鐘提取和解碼比較困難,特別是在高速信號傳輸和噪聲較大的應用場合.FPGA 器件的出現(xiàn)能較好的解決現(xiàn)有使用單片機和傳統(tǒng)芯片進行編解碼碼速率低的問題,一定程度上適應中低速應用場合[8-10].但是,由于目前廣泛采用的同步是在發(fā)生數(shù)據(jù)信號之前附加額外的同步頭技術.這存在兩方面的缺陷,一是曼徹斯特碼中本身就有時鐘信息,額外的同步頭會帶來信道的負擔,特別是在高速數(shù)據(jù)傳輸中必須避免;二是同步頭技術只能保證在接收幀內(nèi)數(shù)據(jù)時鐘和同步頭的時鐘完全一致時才能正確解碼,一旦發(fā)端的時鐘隨著時鐘出現(xiàn)抖動時,接收端就會由于相位抖動問題而產(chǎn)生錯誤解碼.越來越多的科技人員利用FPGA技術來實現(xiàn)曼徹斯特的解碼.本文提出一種利用FPGA 高速并行處理特性和直接數(shù)字頻率合成技術的曼徹斯特時鐘提取和編碼器電路,克服曼徹斯特解碼電路中需要加同步頭和時鐘抖動帶來的相位模糊問題.

2 曼徹斯特編碼器

曼徹斯特碼Manchester code (又稱裂相碼、雙相碼)是一種用電平跳變來表示1 或0的編碼.曼徹斯特編碼是一種自同步的編碼方式,即時鐘同步信號就隱藏在數(shù)據(jù)波形中:每一位的中間有一跳變,位中間的跳變既作時鐘信號,又作數(shù)據(jù)信號.其編碼規(guī)則很簡單:從高到低跳變表示“1”,從低到高跳變表示“0”.每個碼元均用兩個不同相位的電平信號表示,也就是一個周期的方波,但0 碼和1 碼的相位正好相反.

在FPGA 中實現(xiàn)曼徹斯特編碼非常方便,只需將數(shù)據(jù)信號與時鐘信號異或即可.

圖1 曼切斯特編碼仿真圖

如圖1所示的曼切斯特編碼仿真圖中,信號m_xulie為8 階的偽隨機序列作為待編碼的二進制數(shù)據(jù)信號,信號man為m_xulie 對應的曼切斯特編碼結果.

3 曼徹斯特解碼與時鐘提取

如圖2所示,曼徹斯特解碼系統(tǒng)主要包括粗同步、細同步和DDS 三個模塊.粗同步主要用于從輸入的曼徹斯特編碼信號中提取同步信號頻率,然后將頻率控制字給DDS 模塊;細同步模塊則根據(jù)輸入的曼徹斯特編碼信號進行相位跟蹤,并輸出相位控制字給DDS 模塊;最后,DDS 模塊根據(jù)粗同步模塊的頻率控制字和細同步模塊的相位控制字輸出基帶信號的同步信號并實現(xiàn)對曼徹斯特碼的解碼.

圖2 曼徹斯特解碼系統(tǒng)框圖

同步信號提取主要由碼元速率的周期測量、同步時鐘相位跟蹤、同步時鐘提取和解碼幾個部分組成,各部分的連接如圖3所示.圖4為FPGA 硬件建模流程框圖.

圖3 同步信號提取及解碼連接框圖

圖4 FPGA 硬件建模流程圖

碼元速率周期測量模塊是系統(tǒng)的核心模塊之一,其精度決定了整個系統(tǒng)的解碼性能.曼切斯特碼的碼速率為碼源速率的兩倍,所以只需測出曼切斯特碼的編碼時鐘,即可得到信號的數(shù)據(jù)時鐘.

由于曼徹斯特編碼子系統(tǒng)和曼徹斯特解碼子系統(tǒng)的時鐘是非同源時鐘,所以必須通過同步時鐘相位跟蹤模塊來對提取出的同步信號相位進行調(diào)整和跟蹤.

同步時鐘提取模塊是通過對同步時間進行多次采樣,提取對同步時間采樣計數(shù)的平均值,以提高系統(tǒng)的抗干擾能力.同步時鐘提取模塊的功能是產(chǎn)生與發(fā)送端一樣頻率和相位時鐘.為了提高精度,這里采用DDFS技術產(chǎn)生同步時鐘.

解碼模塊是曼徹斯特編碼的反過程,即將原本的“01”解成‘0’,原來的“10”解成‘1’,從而恢復編碼前的數(shù)據(jù)信息.

3.1 粗同步

粗同步過程,即為同步信號的頻率同步過程.通過測曼切斯特碼的碼元寬度計算出同步信號時鐘頻率.碼元寬度測量是通過碼元的上升沿或者下降沿來啟動計數(shù)器,在碼元下降沿或者上升沿到來時停止計數(shù).這樣,計數(shù)器的值就為碼元的寬度.

其中一個需要說明的是如圖5所示的邊沿檢測技術.為了提高同步信號提取子系統(tǒng)的抗干擾性能,將曼切斯特碼輸入信號當作異步控制信號進行同步.這樣,可以在避免亞穩(wěn)態(tài)出現(xiàn)時對曼切斯特碼輸入信號進行簡單的延時濾波,進而有效濾除信號中的毛刺.邊沿檢測是用于對輸入信號或者FPGA 內(nèi)部邏輯信號的跳變檢測,即上升沿或者下降沿的檢測.

圖5 FPGA 實現(xiàn)的邊沿檢測電路

圖6 邊沿檢測電路仿真圖

圖6是曼切斯特碼的邊沿檢測仿真圖,信號datain_r7為曼切斯特碼,信號neg flag r為曼切斯特碼的下降沿標志信號,信號pos flag r為曼切斯特碼的上升沿標志信號.

為了防止因碼間串擾造成的碼元變形進而導致接收碼元寬度與實際發(fā)送碼元寬度不符合的問題.對每種碼速率的碼元寬度設定了上下閾值,只要測得碼寬在這個閾值里就判定碼元寬度為閾值內(nèi)對應的碼元寬度.實驗結果表明,這種方法非常有效.即使在噪聲很大的情況下,提取的同步信號依然相當穩(wěn)定,抖動很小,而且誤碼率也極低.圖7為粗同步的模塊圖.圖中的clk為50 MHz的系統(tǒng)主時鐘信號,reset為系統(tǒng)復位信號,datain為基帶輸入信號,dataout為解碼輸出信號,clk_out為測試信號,dds_addr[31..0]為DDS模塊頻率控制字,dds_addr1為測試信號,clear為相位跟蹤信號.圖8為該模塊仿真圖.

圖7 粗同步的模塊圖

圖8 粗同步模塊仿真圖

3.2 細同步

通過粗同步只能將同步信號的頻率計算出來,而同步信號的相位還沒有確定.細同步的主要工作為相位跟蹤.傳統(tǒng)的細同步方法是將碼元信號進行微分,然后將微分器輸出的信號通過濾波,濾波器輸出的信號即為細同步的相位同步信號.設計中為了減輕軟件負擔,只通過碼元的邊沿信號來不斷的對同步信號進行相位跟蹤和調(diào)整.產(chǎn)生的相位調(diào)整信號連接到DDS相位控制累加器的清零端.

3.3 仿真

為了檢測Verilog 描述的硬件電路正確性,搭建了testbench,編寫測試激勵在modelsim 環(huán)境下對設計電路進行軟件仿真.圖9為曼切斯特譯碼電路仿真圖,圖中信號reset為系統(tǒng)復位信號,clk為50MHz 系統(tǒng)時鐘.信號m_xulie 8 階偽隨機序列,信號man 偽隨機的曼切斯特編碼,dataout為解碼輸出信號,clk_dds_out為信號分析子系統(tǒng)提取的同步時鐘,clk v2為曼切斯特編碼時鐘.從仿真圖中可以看出提取出的同步時鐘和編碼時鐘的相位和頻率都是一樣.從圖中可以看出,實現(xiàn)了同步信號的提取.

圖9 曼切斯特譯碼電路仿真圖

4 測試結果

(1)曼切斯特編碼

如圖10所示為用示波器實測的曼徹斯特編碼,上面的波形為待編碼的m 序列,下面的波形為對應的曼徹斯特編碼輸出.

圖10 m 序列的曼切斯特編碼實測圖

圖11 編碼速率為100 KHz 時的同步信號提取

圖12 曼切斯特解碼測試圖

(2)同步信號提取

如圖11所示為m 碼編碼速率為100 KHz 時提取的其曼切斯特編碼同步信號.示波器的CH1為提取的同步信號.

(3)曼切斯特解碼

如圖12所示為曼切斯特解碼輸出測試圖,CH2為輸入的m 序列,CH1為經(jīng)過曼徹斯特解碼后輸出的m序列,顯然解碼輸出完全正確.

5 結論

本文所提出的曼徹斯特時鐘提取和解碼電路利用FPGA的并行高速處理特性和準數(shù)字鎖相技術直接對曼徹斯特編碼信號進行時鐘提取和解碼,克服了傳統(tǒng)的外加同步頭技術進行同步的效率低下和相位抖動引起的相位模糊問題.解碼電路采用DDFS技術,通過粗同步、細同步兩個過程分別進行碼率測量和相位跟蹤鎖定.仿真和實驗結果表明,該解碼電路在信噪比大于2.4 dB 下可以準確的提取時鐘和正確解碼.電路性能可靠、優(yōu)良,具有一定的科研和應用價值.

[1]付林,任志平,劉承杰.基于FPGA技術的曼徹斯特編碼器設計[J].現(xiàn)代電子技術,2007,256 (17):55-59.

[2]張淑玲,沈田.曼徹斯特編碼技術在測井數(shù)據(jù)傳輸中的應用研究[J].計算機與數(shù)字工程,2009 (9):187-189.

[3]陳煥光,許瑞年,沈天健,等.基于FPGA的Manchester 編解碼及快速數(shù)字化電源通信的實現(xiàn)[J].核電子學與探測技術,2008 (5):637-639.

[4]江文丹,董昱,薛紅巖,等.基于VHDL 語言的多功能車輛總線編碼器設計與分析[J].鐵路通信信號工程技術,2008 (10):9-12.

[5]劉延飛,程攀攀,郭鎖利,等.無線電引信實時數(shù)據(jù)采集發(fā)送模塊設計[J].電子技術應用,2012 (7):81-83.

[6]陳志穎.曼徹斯特編碼在列控中心數(shù)據(jù)傳輸中的研究——解碼器設計[J].鐵道通信信號,2008 (12):8-10.

[7]周清,蔡明.改進的RFID 混合查詢樹防碰撞算法[J].計算機工程與設計,2012 (1):209-213.

[8]劉艷,王洪成.曼徹斯特編解碼的VHDL 實現(xiàn)[J].微計算機應用,2003 (2):120-120.

[9]林藝文,方展偉.用FPGA 實現(xiàn)曼徹斯特編解碼[J].汕頭大學學報(自然科學版),2004 (5):63-67.

[10]史敬灼,徐美玉,徐殿國.基于CPLD的Manchester編碼器與解碼器[J].電氣應用,2006 (5):62-64.

猜你喜歡
曼徹斯特碼元解碼
《解碼萬噸站》
LFM-BPSK復合調(diào)制參數(shù)快速估計及碼元恢復
觀電影《海邊的曼徹斯特》
觀電影《海邊的曼徹斯特》
解碼eUCP2.0
NAD C368解碼/放大器一體機
Quad(國都)Vena解碼/放大器一體機
基于極大似然準則的短猝發(fā)信號盲解調(diào)
基于FPGA的IRIG-B碼解碼器設計
一種碼元同步時鐘信號的提取方法及單片機實現(xiàn)