<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > EDA/PCB > 設(shè)計(jì)應(yīng)用 > 數(shù)字基帶傳輸系統(tǒng)的FPGA設(shè)計(jì)與實(shí)現(xiàn)

          數(shù)字基帶傳輸系統(tǒng)的FPGA設(shè)計(jì)與實(shí)現(xiàn)

          作者: 時(shí)間:2011-03-16 來源:網(wǎng)絡(luò) 收藏

          摘要:為了提高系統(tǒng)的集成度和可靠性,降低功耗和成本,增強(qiáng)系統(tǒng)的靈活性,提出一種采用非常高速積體電路的硬件描述語言(VHDL語言)來設(shè)計(jì)的方法。詳細(xì)闡述中信號(hào)碼型的設(shè)計(jì)原則,中信號(hào)編碼原理和譯碼原理;采用硬件描述語言來設(shè)計(jì)數(shù)字基帶信號(hào)編碼器和譯碼器并進(jìn)行仿真;采用原理圖設(shè)計(jì)方法設(shè)計(jì)數(shù)字基帶傳輸系統(tǒng)并仿真;整個(gè)系統(tǒng)的設(shè)計(jì)在Quar-tusⅡ平臺(tái)上完成,并在Altera公司的ACEX1K-EP1K30TC144-1芯片上實(shí)現(xiàn)。
          關(guān)鍵詞:數(shù)字通信;基帶傳輸系統(tǒng);VHDL;

          本文引用地址:http://www.ex-cimer.com/article/191307.htm

          0 引言
          現(xiàn)代通信系統(tǒng)中,數(shù)字通信系統(tǒng)所占的比例越來越大,系統(tǒng)的數(shù)字化、集成化是未來發(fā)展的方向。隨著超大規(guī)模集成電路的誕生,各種數(shù)字通信的專用芯片也相繼問世,電路的集成化程度越來越高,設(shè)備的體積也越來越小,但是這些數(shù)字通信的專用芯片在價(jià)格上非常昂貴,給通信設(shè)備成本帶來很大壓力。近幾年,(Field Programmable Gate Array)的推出,給數(shù)字通信電路的設(shè)計(jì)帶來了更多的方便,擺脫了數(shù)字通信專用芯片功能單一、價(jià)格昂貴的缺點(diǎn)。目前實(shí)際的數(shù)字通信系統(tǒng)中,數(shù)字基帶系統(tǒng)在應(yīng)用上雖不如數(shù)字頻帶傳輸系統(tǒng)廣泛,但仍有相當(dāng)多的應(yīng)用范圍。因此,本文設(shè)計(jì)的方案采用來實(shí)現(xiàn)數(shù)字基帶傳輸系統(tǒng)。

          1 數(shù)字基帶信號(hào)編、譯碼原理
          數(shù)字信號(hào)的傳輸方式有兩種:一種是基帶傳輸,另一種是頻帶傳輸。在基帶傳輸系統(tǒng)中,因?yàn)樾诺劳嬖诟糁绷麟娙莼蝰詈献儔浩?,使得基帶信?hào)中的低頻和直流成分難于通過。因此,并非所有原始基帶數(shù)字信號(hào)都能在信道中傳輸。為了在傳輸信道中獲得優(yōu)良的傳輸特性,一般要將信號(hào)變換成適合于信道傳輸特性的傳輸碼(又叫線路碼),即進(jìn)行適當(dāng)?shù)拇a型變換。
          通常,在設(shè)計(jì)數(shù)字基帶信號(hào)碼型時(shí)應(yīng)考慮以下原則:
          (1)碼型中低頻、高頻分量盡量少;
          (2)碼型中應(yīng)包含定時(shí)信息,以便定時(shí)提??;
          (3)碼型變換設(shè)備要簡(jiǎn)單可靠;
          (4)碼型具有一定檢錯(cuò)能力,若傳輸碼型有一定的規(guī)律性,就可根據(jù)這一規(guī)律性來檢測(cè)傳輸質(zhì)量,以便做到自動(dòng)檢測(cè);
          (5)編碼方案對(duì)發(fā)送消息類型不應(yīng)有任何限制,適合于所有的二進(jìn)制信號(hào),這種與信源統(tǒng)計(jì)特性無關(guān)的特性稱為對(duì)信源具有透明性;
          (6)低誤碼增殖,誤碼增殖是指單個(gè)數(shù)字傳輸錯(cuò)誤在接收端解碼時(shí),造成錯(cuò)誤碼元的平均個(gè)數(shù)增加,從傳輸質(zhì)量要求出發(fā),希望它越小越好;
          (7)高的編碼效率。
          以上幾點(diǎn)并不是任何基帶傳輸碼型均能完全滿足的,常常是根據(jù)實(shí)際要求滿足其中的一部分。
          數(shù)字基帶信號(hào)碼型種類繁多,其中HDB3碼(High Density Bipolar),即三階高密度雙極性碼,具有不含直流成分,低頻成分少,提取同步時(shí)鐘方便,有內(nèi)在檢錯(cuò)能力等優(yōu)點(diǎn),成為廣泛應(yīng)用于基帶傳輸系統(tǒng)中的碼型。ITU-T G.703規(guī)定2 Mb/s,8 Mb/s和34 Mb/s的數(shù)字接口均采用HDB3碼,因此以HDB3碼為例進(jìn)行分析。
          HDB3碼又稱四連“0”取代碼,它是AMI(Alternative Mark Inverse,傳號(hào)交替反轉(zhuǎn))碼的改進(jìn)型。在AMI碼中,如果連續(xù)的較長(zhǎng)的一段序列為“0”碼,則接收端會(huì)因?yàn)殚L(zhǎng)時(shí)間無交替變化波形的控制而失去同步信號(hào),而HDB3碼克服了AMI碼的上述缺點(diǎn)。此外,HDB3碼還具有頻譜能量主要集中在基波頻率以下,占用頻帶較窄等特點(diǎn)。
          1.1 編碼原理
          在消息的二進(jìn)制代碼序列中:
          (1)當(dāng)連“0”碼的個(gè)數(shù)不大于3時(shí),編碼規(guī)則為“1”碼變?yōu)?ldquo;+1”、“-1”交替脈沖,“0”碼仍為“0”。
          (2)當(dāng)代碼序列中出現(xiàn)4個(gè)連“0”碼或超過4個(gè)連“0”碼時(shí),把連“0”段按4個(gè)“0”分節(jié),即“0000'’,并使第4個(gè)“0”碼變?yōu)?ldquo;1”碼,用V脈沖表示,這樣可以消除長(zhǎng)連“0”現(xiàn)象。為了便于識(shí)別V脈沖,使V脈沖極性與前一個(gè)“1”脈沖極性相同,這樣就破壞了AMI碼極性交替的規(guī)律,所以V脈沖為破壞脈沖,把V脈沖和前3個(gè)連“0”稱為破壞節(jié)“000V”。
          (3)為了使脈沖序列仍不含直流分量,則必須使相鄰的破壞點(diǎn)V脈沖極性交替。
          (4)為了保證(2),(3)兩個(gè)條件的成立,必須使相鄰的破壞點(diǎn)之間有奇數(shù)個(gè)“1”碼。如果原序列中破壞點(diǎn)之間的“1”碼為偶數(shù)個(gè),則必須補(bǔ)為奇數(shù),即將破壞節(jié)中的第一個(gè)“0”碼變?yōu)?ldquo;1”,用B脈沖表示,這時(shí)的破壞節(jié)變?yōu)?ldquo;B00V”形式。B脈沖極性與前一個(gè)“1”脈沖極性相反,而B脈沖極性與V脈沖極性相同。
          1.2 譯碼原理
          雖然編碼規(guī)則比較復(fù)雜,但是它的譯碼原理卻比較簡(jiǎn)單。從上述編碼原理看出,每一個(gè)破壞符號(hào)V總是與前一非0符號(hào)同極性(包括B在內(nèi))。這就是說,在接收端譯碼時(shí),由兩個(gè)相鄰的同極性碼找到破壞脈沖V,同極性碼中后面那個(gè)碼就是V碼。由V碼向前的第三個(gè)碼如果不是0碼,表明它是B碼,把V碼和B碼去掉后留下的都是信碼,再進(jìn)行全波整流,將所有的-1變成+1后就得到原消息代碼。


          上一頁 1 2 3 下一頁

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();