引言
數(shù)字基帶信號的傳輸是數(shù)字通信系統(tǒng)的重要組成部分。在數(shù)字通信中,,有些場合可不經(jīng)過載波調制和解調過程,,而對基帶信號進行直接傳輸。采用AMI碼的信號交替反轉,,有可能出現(xiàn)四連零現(xiàn)象,,這不利于接收端的定時信號提取。而HDB3碼因其無直流成份,、低頻成份少和連0個數(shù)最多不超過三個等特點,,而對定時信號的恢復十分有利,并已成為CCITT協(xié)會推薦使用的基帶傳輸碼型之一,。為此,,本文利用VHDL語言對數(shù)據(jù)傳輸系統(tǒng)中的HDB3編碼器進行了設計。
1 HDB3碼的編碼規(guī)則
HDB3碼是AMI碼的改進型,,稱為三階高密度雙極性碼,,它克服了AMI碼的長連0串現(xiàn)象。
HDB3碼的編碼規(guī)則為先檢查消息代碼(二進制)的連0串,,若沒有4個或4個以上連0串,,則按照A
MI碼的編碼規(guī)則對消息代碼進行編碼;若出現(xiàn)4個或4個以上連0串,,則將每4個連0小段的第4個0變換成與前一非0符號(+1或-1)同極性的V符號,,同時保證相鄰V符號的極性交替(即+1記為+V,-1記為-V),;接著檢查相鄰V符號間非 0符號的個數(shù)是否為偶數(shù),,若為偶,則將當前的V符號的前一非0符號后的第1個0變?yōu)?B或-B符號,,且B的極性與前一非0符號的極性相反,,并使后面的非0 符號從V符號開始再交替變化。
2 HDB3編碼器的VHDL建模與程序設計
HDB3碼的VHDL建模思想是在消息代碼的基礎上,,依據(jù)HDB3編碼規(guī)則進行插人“V”符號和“B”符號的操作,,且用2位二進制代碼分別表示,。最后完成單極性信號變成雙極性信號的轉換。其編碼模型如圖1所示,。
2.1 插“V”模塊的實現(xiàn)
插“V”模塊主要是對消息代碼里的四連0串的檢測,,即當出現(xiàn)四個連0串的時候,把第四個“0”變換成符號“V”,,用 “11”標識,。 “1”用“01”標識,“0”用“00”標識,。其模型如圖2所示,,實現(xiàn)的VHDL結構代碼如 artv:
EDA的數(shù)據(jù)傳輸系統(tǒng)的HDB3編碼器設計圖示" src="http://files.chinaaet.com/images/20100811/8a6791eb-48be-44bd-9212-a02743283c9a.jpg" />
2.2 插“B”模塊的實現(xiàn)
插“B”模塊的建模思路是當相鄰“V”符號之間有偶數(shù)個非0符號時,把后一小段的第1個“0”變換成一個“B”符號,??捎靡粋€4位的移位寄存器來實現(xiàn)延遲,這樣經(jīng)插“V”處理過的碼元,,可在同步時鐘的作用下同時進行是否插“B”的判決,,等到碼元從移位寄存器里出來的時候,就可以決定是應該變換成“B”符號,,還是照原碼輸出,。輸出端用“11”表示符號“V”,“01”表示“1”碼,, “00”表示“0”碼,“10”表示符號“B”,。其模型如圖3所示,,VHDL的結構代碼如artb:
2.3 單極性變雙極性的實現(xiàn)
根據(jù)編碼規(guī)則, “B”符號的極性與前一非零符號相反,,“V”極性符號與前一非零符號一致,。因此,可對“V”單獨進行極性變換(“V”已經(jīng)由“11”標識,,相鄰“V”的極性是正負交替的),,余下的“1”和“B”看成一體進行正負交替,從而完成HDB3的編碼,。
因為經(jīng)過插“B”模塊后,, “V”、 “B”,、“1”已經(jīng)分別用雙相碼“11”,、 “10”、 “01”標識,。“0”用“00”標識,。而在實際應用中,,CPLD或FPGA端口的輸出電壓只有正極性電壓,且在波形仿真中也只有“+1”和“0”,,而無法識別“-1”,。所以要得到所需HDB3編碼的結果,需定義“00”,、“01”,、“10”來分別表示“0”、 “-1”,、 “+1”,。可將插“B”模塊后輸出的“00”,、“01”,、“10”、“11”組合轉換為“00”,、“01”,、“10”組合,再通過“00”,、 “01”,、“10”控制四選一數(shù)字開關的地址來選擇輸出通道,就可以實現(xiàn)0,、-B,、+B。本設計使用CC4052的一組通道作為四選一數(shù)字開關,,從而將 CPLD或FPGA目標芯片的標識性輸出轉換成雙極性信號,,最終實現(xiàn)HDB3非歸零編碼。CC4052的接線如圖4所示,,所實現(xiàn)的地址控制器的模型如圖5 所示,。其VHDL結構代碼如artd:
3 HDB3編碼器的仿真
在此,以四連“0”的可能性通過如表1所列的多“0”消息代碼進行分析,,并利用EDA工具對VHDL源程序進行編譯,、適配、優(yōu)化,、邏輯綜合與仿真,。仿真結果顯示其完全可以達到編碼要求。其仿真圖如圖6所示,。而將HDB3編碼硬件描述下載到CPLD或FPGA目標芯片中,,然后連接好CC4052進行實際應用測試(用示波器測得)的編碼波形如圖7所示。
4 結束語
將基于VHDL的HDB3編碼用在光纖通信系統(tǒng)中作為誤碼儀測試誤碼的HDB3轉換器,,能滿足實際測試的需要,。且運用基于VHDL的可編程芯片開發(fā)技術將相關的信號處理電路進行硬件描述,,并用CPLD/FPGA技術實現(xiàn)數(shù)字通信系統(tǒng),不僅可以實現(xiàn)多種數(shù)字邏輯功能,,而且可大大提高工作效率,,減少電路設計的時間和可能發(fā)生的錯誤,同時也可降低開發(fā)成本,。