(完整word版)Matlab實現(xiàn)HDB3碼的編解碼過程_第1頁
(完整word版)Matlab實現(xiàn)HDB3碼的編解碼過程_第2頁
(完整word版)Matlab實現(xiàn)HDB3碼的編解碼過程_第3頁
(完整word版)Matlab實現(xiàn)HDB3碼的編解碼過程_第4頁
(完整word版)Matlab實現(xiàn)HDB3碼的編解碼過程_第5頁
已閱讀5頁,還剩3頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、通信工程專業(yè)通信系統(tǒng)課程設計研究報告Matlab 實現(xiàn) HDB3 碼的編解碼 過程學生姓名: 學生學號: 指導教師: 所在學院: 專業(yè)班級:2018 年 7 月信息技術學院課程設計任務書電氣與信息 院 通信工程 專業(yè)通信S17級,學號姓名一、課程設計課題:Matlab實現(xiàn)HDB碼的編解碼過程二、課程設計工作日自 2018年6月25 日至2018 年7 月二 日三、課程設計進行地點:信息館四、程設計任務要求:1 .課題來源:指定教師指定題目2 .目的意義:數(shù)字基帶信號的傳輸是數(shù)字通信系統(tǒng)的重要組成部分。在數(shù)字通信中,有些場合可不經(jīng)過載波調(diào)制和解調(diào)過程,而對基帶信號進行直接傳輸。采用AMI碼的信號

2、交替反轉(zhuǎn),有可能出現(xiàn)四連零現(xiàn)象,這不利于接收端的定時信號提取。而 HDB 碼因其無直流成份、低頻成份少和連 0個數(shù)最多不超過三個等特點,而對定時信 號的恢復十分有利,并已成為CCITT協(xié)會推薦使用的基帶傳輸碼型之一。3 .基本要求:a.掌握HD函解碼原理。b.對HDB®解碼進行仿真模型設計。c.有系統(tǒng)框圖,電路原理圖,軟件流程圖,模擬仿真結果圖。課程設計評審表指導教師評語:成績:簽字:日期:Matlab實現(xiàn)HD刪的編解碼過程概述 : 數(shù)字信號的傳輸方式按其在傳輸中對應的信號的不同可分為數(shù)字基帶傳輸系統(tǒng)和數(shù)字頻帶傳輸系統(tǒng)。在數(shù)字通信中,選擇合適在信道中傳輸?shù)拇a型是十分重要的 ,常用的傳

3、輸碼型是AMI 碼,但當原信碼出現(xiàn)長連“0串時,信號的電平長時”間不調(diào)變時,造成提取定時信號的困難。解決連“ 0碼問題的有效方法之一是采用”HDB3碼。HDB3碼(三階高密度碼)是比較常用的信道傳輸碼型 ,HDB3碼具有較 強的檢錯能力,當數(shù)據(jù)序列用HDB3碼傳輸時,若傳輸過程中出現(xiàn)單個誤碼,具極 性交替變化規(guī)律將受到破壞,因而在接收端根據(jù)HDB3碼這一獨特規(guī)律特性,可檢 出錯誤并糾正錯誤,同時HDB3 碼方便提取位定時信息。第一部分原理介紹(一)HDB3 編碼解碼原理HD幽:三階高密度雙極性碼。HDB 3碼與二進制序列的關系:(1) 二進制信號序列中的“ 0”碼在HDB碼中仍編為“ 0”碼,

4、二進制信號中“1”碼,在HDB碼中應交替地成+1和-1碼,但序列中出現(xiàn)四個連“ 0”碼時應按特殊規(guī)律編碼(引入傳號交替反轉(zhuǎn)碼的“破壞點” V 碼) ;(2) 二進制序列中四個連“0”按以下規(guī)則編碼:信碼中出現(xiàn)四個連“0”碼時,要將這四個連“ 0”碼用000V或B00V取代節(jié)來代替(B和V也是“1”碼,可正、可負 ) 。這兩個取代節(jié)選取原則是,使任意兩個相鄰 v 脈沖間的傳號數(shù)為奇數(shù)時選用000V取代節(jié),偶數(shù)時則選用B00V取代節(jié)。(二)在實際的傳輸系統(tǒng)中,并不是所有的代碼電氣波形都可以信道中傳輸。含有直流分量和較豐富的單極性基帶波形就不適宜在低頻傳輸特性差的信道中傳輸,因為它有可能造成信號的嚴

5、重的畸變。在傳輸碼(或稱線路碼)的結構將取決于實際信道特性和系統(tǒng)的工作條件。通常,傳輸碼的結構應具有以下的特性:1 .相應的基帶信號無直流分理,且低頻分量少:2 .便于從信號中提取定時信息:3 .信號中高頻分應盡量少以節(jié)省傳輸頻帶并減少碼間串擾。4 .不受信號源統(tǒng)計特性影響,即能適應于信息源變化:5 .具有內(nèi)在的檢錯能力,傳輸?shù)拇a型應具有一定的規(guī)律性, 以便利用這一規(guī)律性進行宏觀監(jiān)測:6 .編譯碼設備要盡可能簡單,等等。滿足以上特性的傳輸碼型種類繁多,這里使用 HDB3。要了解HDB3 碼的編碼規(guī)則,首先要知道AMI 碼的構成規(guī)則,AMI碼就是把單極性脈沖序列中相鄰的“ 1碼” (即正脈沖)變

6、為極性交替的正、負脈沖。將“0碼?!背植蛔?,把“1碼變?yōu)椤?1、 -1交替的脈沖。如:AMI碼: -1 00 00 +10 0 00 -1 +10 0 00 -1+1HBD3碼(3nd Order High Density Bipolar)的全稱是三階高密度雙極性碼,它 是AMI碼的一種改進型,改進目的是為了保持 AMI碼的優(yōu)點而克服其缺點,使連 “嚇數(shù)不超過3個。其編碼規(guī)則:a.檢查消息碼中連“皿個數(shù)。當連“酸目小于等于3時,HBD3碼與AMI碼一 樣(”1交替的變換為“+1和-1”,“0保持不變)。b.當連“O目超過3時,將每4個連“訛作一小節(jié),定義為“B00VW為破壞節(jié), 其中V稱為破壞

7、脈沖,而B稱為調(diào)節(jié)脈沖;c.V與前一個相鄰的非“0脈沖的極性相同(這破壞了極性交替的規(guī)則,所以V 稱破壞脈沖),并且要求相鄰的V碼之間極性必須交替。V的取值為“+1或-T'd.B的取值可選0、+1或-1,,以使V同時滿足兩個要求;e.V碼后面的傳號碼極性也要交替。例如:消息碼:1 000 0 1 000 0 1 1 000 0 000 0 1 1AMI 碼:-1 000 0 +1 000 0 -1+1 000 0 000 0 -1+1HDB3碼:-1 000-V +1 000+V -1+1-B00-V +B00+V -1+1其中的坦脈沖和W脈沖與土脈沖波形相同,用V或B表示的目的是為了

8、示 意其中的該非“例是由原信碼的“吸換而來的。當相鄰兩個V碼之間有奇數(shù)個“1碼時,能保證V碼滿足要求,B取“0:當相鄰 兩個V碼之間有偶數(shù)個“1碼時,不能保證V碼極性交替,B取“+1或-1”,B碼 的符號與前相鄰“1相反,而其后面的V碼與B碼極性相同。第二部分 MATLAB編程仿真M文件調(diào)用函數(shù)functionyn,decode=HDB 3(xn) yn=xn;num=0;for k=1:length(xn)if xn(k)=1num=num+1;if num/2 = fix(num/2) yn(k)=1;else yn(k)=-1;endendnum=0;yh=yn;sign=0;V=zer

9、os(1,length(yn);B=zeros(1,length(yn);for k=1:length(yn)if yn(k)=0num=num+1;if num=4num=0;yh(k)=1*yh(k-4);V(k)=yh(k);if yh(k)=signyh(k)=-1*yh(k);yh(k-3)=yh(k);B(k-3)=yh(k);V(k)=yh(k);yh(k+1:length(yn)=-1*yh(k+1:length(yn);endsign=yh(k);endelsenum=0;endendre=xn',yn',yh',V',B'input=

10、yh;decode=input;sign=0;for k=1:length(yh)if input(k) = 0if sign=yh(k)decode(k-3:k)=0 0 0 0;endsign=input(k);endenddecode=abs(decode);error=sum(xn-decode');subplot(3,1,1);stairs(0:length(xn)-1,xn);axis(0 length(xn) -22);subplot(3,1,2);stairs(0:length(xn)-1,yh);axis(0 length(xn) -2 2);subplot(3,1,

11、3);stairs(0:length(xn)-1,decode);axis(0 length(xn) -2 2);M文件運行程序xn=1 0 0 0 0 1 0 0 0 0 1 1 0 0 0 0 0 0 0 0 1 1;yn=HDB(xn);(運行效果圖)第三部分設計過程和體會通過這兩周的通信原理課程設計實踐,我復習了MATLA編程語言的基本概念、語法、語義和數(shù)據(jù)類型的使用特點,加深了對課堂所學理論知識的理解,掌握了運用結構化程序設計的基本思想和方法,更重要的是培養(yǎng)了自己的自學能力。因為這是我們第二次接觸MATLA褊程語言,在編寫程序以及調(diào)試的過程中遇到了很多困難,但是我通過去圖書館查找資料

12、,請教同學老師,再自己一點點改善程序,最終編寫出一個比較完善的程序,實現(xiàn)了所有要求功能,這是最值得我欣慰 的一點。以下是我的幾點切身感受:(一)編寫程序需要一個清醒的頭腦,明確的思路,同時也要有耐心毅力。剛拿到程序設計課題時,我感覺一片茫然,因為在之前的信號處理學習中,只是在一些例題中接觸過MATLAB!言,甚至沒有看過一些基礎的書籍,更沒有上過課,所以初次遇到一個實際問題,感覺無從下手。這是由于自己對MATLAB勺模塊設計不夠理解,同時對 MATLAB勺基本語句一無所知,不過通過請教老師懂得了 首先要設計guide 目錄,再根據(jù)用戶輸入, 執(zhí)行 swtich 語句,在每個case 后調(diào)用一個

13、函數(shù),來實現(xiàn)要求的功能,這樣一下子豁然開朗,掌握了基本設計思路之后,后面的編程就順利多了。至此,我真真體會到清晰地思路對成功編寫一個程序的重要性。當然成功編寫一個程序絕非易事,之前,我總以為程序能夠正常運行,就代表著編程成功,后來我才發(fā)現(xiàn)我大錯特錯了。我用了三天時間,完成了程序的編寫、改錯,但我立刻發(fā)現(xiàn)盡管程序能夠正常運行,部分功能卻不完善,甚至不能實現(xiàn)。經(jīng)過一次又一次調(diào)試、修改又修改,一點一點發(fā)現(xiàn)問題并改正,我才真正發(fā)現(xiàn)編程遠沒有想象中的簡單。它需要的不僅是清晰地編程思路、編程技巧,還需要有耐心有毅力,不要放棄。(二)我們在大學需要學習的不僅是基礎知識、專業(yè)知識,更重要的是一種學習能力。正如

14、老師所說學習是終生的,因此學習能力也就能讓我們受益終生。由于課堂時間有限,MATLAB!程只能靠我們自學,然而guide畫圖功能我們必須用到, 因此只能通過自習,實踐也證明我們是有自學的潛能的,通過自學課本,不理解的知識,通過查找資料,請教老師,最終掌握知識,因此,這次課程設計時間培養(yǎng)了我們的自學能力。(三)要學會向他人請教,與他人合作。在編程過程中,我遇到了許多問題,通過查找資料也未能找到原因,每次我想老師請教,老師總能不厭其煩地一點點講解。有時,老師為了幫我在那幾百行的程序中找到問題,花上一個多小時,這讓我非常感動。大學中的老師是每個大學生的好資源,他的博學、重教,向他們請教會有很大收獲。在編程過程中,我與我組成員共同討論,為對方查找錯誤,提示建議,在這個過程中我收獲甚多,也培養(yǎng)了自己的合作精神。(四)要學會總結,提高。在編程過程中,我發(fā)現(xiàn)自己的程序還有很多地方可以完善。程序的界面可以做得更加人性化,這樣使用戶使用更加方便,畫圖函數(shù)也還可以改進,例如:在使用 figure 分圖顯示的時候,我盡量選擇部分圖,都在一個figure 中顯示,這樣既符合了,老師的要求盡量在一個圖中完成設計

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論