




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
百度文庫-讓每個人平等地提升自我百度文庫-讓每個人平等地提升自我PAGEPAGE20百度文庫-讓每個人平等地提升自我PAGE目錄1.緒論 31.1課題背景 31.1.1通信原理課程設(shè)計目的 3通信原理課程設(shè)計要求 3HDB3碼簡介 3編碼規(guī)則 3HDB3碼的特點 4解碼規(guī)則 52.HDB3編譯碼器的設(shè)計方案 6方案1: 6方案2: 7最終方案: 73.Matlab程序語言的HDB3編譯碼器的設(shè)計 9技術(shù)簡介 9原理簡述 10程序運行結(jié)果 11程序主界面 11運行結(jié)果 12程序源代碼及注釋 13總結(jié)與心得 16參考文獻(xiàn) 17附錄 19源程序 191.緒論課題背景通信原理課程設(shè)計目的本次課程設(shè)計是對通信原理課程理論教學(xué)和實驗教學(xué)的綜合和總結(jié)。通過這次課程設(shè)計使同學(xué)認(rèn)識和理解HDB3碼的編譯碼規(guī)則。要求學(xué)生掌握通信原理的基本知識,運用所學(xué)通信仿真方法實現(xiàn)HDB3編譯碼器的設(shè)計,能夠根據(jù)設(shè)計任務(wù)具體要求掌握軟件設(shè)計、調(diào)試具體方法、步驟和技巧對實際課題軟件設(shè)計有基本了解,拓展知識面,激發(fā)此領(lǐng)域繼續(xù)學(xué)習(xí)和研究興趣學(xué)習(xí)續(xù)課程做準(zhǔn)備。通信原理課程設(shè)計要求1.用MATLAB/Simulink仿真HDB3編譯碼器的過程。2設(shè)計題目的詳細(xì)建模仿真過程分析和說明,仿真的結(jié)果可以以時域波形,頻譜圖,星座圖,誤碼率與信噪比曲線的形式給出。課程設(shè)計說明書中應(yīng)附仿真結(jié)果圖及仿真所用到的程序代碼(MATLAB)或仿真模型圖(Simulink/SystemView)。如提交仿真模型圖,需提交相應(yīng)模塊的參數(shù)設(shè)置情況。3.每人提交電子版和紙質(zhì)的說明書及源程序代碼或仿仿真文件。HDB3碼簡介HDB3碼全稱:三階高密度雙極性碼編碼規(guī)則1先將消息代碼變換成AMI碼,若AMI碼中連0的個數(shù)小于4,此時的AMI碼就是HDB3碼;2若AMI碼中連0的個數(shù)大于3,則將每4個連0小段的第4個0變換成與前一個非0符號(+1或-1)同極性的符號,用表示(+1+,-1-);3為了不破壞極性交替反轉(zhuǎn),當(dāng)相鄰符號之間有偶數(shù)個非0符號時,再將該小段的第1個0變換成+B或-B,符號的極性與前一非零符號的相反,并讓后面的非零符號從符號開始再交替變化。附簡單方法快速的編碼方法:取節(jié):相鄰V之間奇數(shù)個非0碼就取000V;偶數(shù)個非0碼就取B00V,定符號:V的取值第一個V取值與AMI碼(見上)的第一個+1相同,即取+V,以后交替取+V,-V。然后1與B的符號交替變化即可快速編碼原理:HDB3碼的編碼中,V相當(dāng)于破壞碼元,B相當(dāng)于為消除破壞碼元影響而引入的調(diào)節(jié)碼元。為保證輸出無直流的特性,破壞碼元V的保持交替變化,同理1與B也得保持交替變化。例如:消息代碼:1000010000110000110000000011100001中間碼:1000V1000V11B00V11B00VB00V111000V1HDB3碼:+1000+V-1000-V+1-1+B00+V-1+1-B00-V+B00+V-1+1-1000-V+1HDB3碼的特點1由HDB3碼確定的基帶信號無直流分量,且只有很小的低頻分量;2HDB3中連0串的數(shù)目至多為3個,易于提取定時信號。3編碼規(guī)則復(fù)雜,但譯碼較簡單。解碼規(guī)則1雖然編碼很復(fù)雜,但解碼規(guī)則很簡單,就是把原來的取代節(jié)(4個連零)找到即可,若3連“0”前后非零脈沖同極性,則將最后一個非零元素譯為零,如+1000+1就應(yīng)該譯成“10000”,否則不用改動;若2連“0”前后非零脈沖極性相同,則兩零前后都譯為零,如-100-1,就應(yīng)該譯為0000,否則也不用改動.2.再將所有的-1變換成+1后,就可以得到原消息代碼。2.HDB3編譯碼器的設(shè)計方案方案1:基于VHDL的HDB3編譯碼器的設(shè)計方案方案1設(shè)計流程:可編程邏輯器件的一般設(shè)計流程可編程邏輯器件的設(shè)計過程是利用EDA開發(fā)軟件和編程工具對器件進(jìn)行開發(fā)的過程。可編程邏輯器件的一般設(shè)計流程如圖1-1所示,包括設(shè)計準(zhǔn)備,設(shè)計輸入,功能仿真,設(shè)計處理,時序仿真和器件編程及測試等七個步驟。圖2-1可編程邏輯器件的一般設(shè)計流程在HDB3碼的VHDL建模思想是在消息代碼的基礎(chǔ)上,依據(jù)HDB3編碼規(guī)則進(jìn)行插人“V”符號和“B”符號的操作,且用2位二進(jìn)制代碼分別表示。最后完成單極性信號變成雙極性信號的轉(zhuǎn)換。其編碼模型如圖所示:極性轉(zhuǎn)換插“B”插“極性轉(zhuǎn)換插“B”插“V”整個HDB3編碼器包含3個功能部分:插“V”、插“B”和單極性碼轉(zhuǎn)變成雙極性碼。各部分之間采用同步時鐘作用,并且?guī)в幸粋€異步的復(fù)位(清零)端口。方案1.譯碼流程:方案2:基于Matlab程序語言的HDB3編譯碼器的設(shè)計方案掌握HDB3碼的編碼規(guī)則,利用MATLAB設(shè)計并實現(xiàn)HDB3碼的編碼和譯碼最終方案:基于VHDL的HDB3編譯碼器的設(shè)計方案需要實現(xiàn)以下模塊的設(shè)計:(1)插“V”模塊的實現(xiàn)(2)插”B”模塊的實現(xiàn)(3)單極性變雙極性的實現(xiàn)(4)雙極性變換的硬件電路(5)用VHDL語言設(shè)計HDB3譯碼器(6)扣V扣B模塊建模在設(shè)計過程中模塊較多工作量比較大,且容易出錯,故此方案被舍棄。最終方案:基于Matlab程序語言的HDB3編譯碼器的設(shè)計方案3.Matlab程序語言的HDB3編譯碼器的設(shè)計技術(shù)簡介MATLAB是matrix&laboratory兩個詞的組合,意為矩陣工廠(矩陣實驗室)。是由美國mathworks公司發(fā)布的主要面對科學(xué)計算、可視化以及交互式程序設(shè)計的高科技計算環(huán)境。它將數(shù)值分析、矩陣計算、科學(xué)數(shù)據(jù)可視化以及非線性動態(tài)系統(tǒng)的建模和仿真等諸多強大功能集成在一個易于使用的視窗環(huán)境中,為科學(xué)研究、工程設(shè)計以及必須進(jìn)行有效數(shù)值計算的眾多科學(xué)領(lǐng)域提供了一種全面的解決方案,并在很大程度上擺脫了傳統(tǒng)非交互式程序設(shè)計語言(如C、Fortran)的編輯模式,代表了當(dāng)今國際科學(xué)計算軟件的先進(jìn)水平。MATLAB和Mathematica、Maple并稱為三大數(shù)學(xué)軟件。它在數(shù)學(xué)類科技應(yīng)用軟件中在數(shù)值計算方面首屈一指。MATLAB可以進(jìn)行矩陣運算、繪制函數(shù)和數(shù)據(jù)、實現(xiàn)算法、創(chuàng)建用戶界面、連接其他編程語言的程序等,主要應(yīng)用于工程計算、控制設(shè)計、信號處理與通訊、圖像處理、信號檢測、金融建模設(shè)計與分析等領(lǐng)域。MATLAB的基本數(shù)據(jù)單位是矩陣,它的指令表達(dá)式與數(shù)學(xué)、工程中常用的形式十分相似,故用MATLAB來解算問題要比用C,F(xiàn)ORTRAN等語言完成相同的事情簡捷得多,并且MATLAB也吸收了像Maple等軟件的優(yōu)點,使MATLAB成為一個強大的數(shù)學(xué)軟件。在新的版本中也加入了對C,F(xiàn)ORTRAN,C++,JAVA的支持??梢灾苯诱{(diào)用,用戶也可以將自己編寫的實用程序?qū)氲組ATLAB函數(shù)庫中方便自己以后調(diào)用,此外許多的MATLAB愛好者都編寫了一些經(jīng)典的程序,用戶可以直接進(jìn)行下載就可以用。MATLAB提供了一種高級編程語言——M語言,這種語言的語法結(jié)構(gòu)與C語言非常類似,任何熟悉C語言的用戶學(xué)習(xí)使用M語言都不會有任何障礙。盡管M語言是一種解釋性的編程語言,但是隨著MATLAB版本的不斷升級,以及充分利用MATLAB提供的各種編程技巧,能夠有效提高M(jìn)語言應(yīng)用程序的執(zhí)行效率,使M語言成為了工程領(lǐng)域中最適合進(jìn)行算法開發(fā)驗證的編程語言。原理簡述編碼規(guī)則:1)先將消息代碼變換成AMI碼,若AMI碼中連0的個數(shù)小于4,此時的AMI碼就是HDB3碼;2)若AMI碼中連0的個數(shù)大于3,則將每4個連0小段的第4個0變換成與前一個非0符號(+1或-1)同極性的符號,用表示(+1+,-1-);3)為了不破壞極性交替反轉(zhuǎn),當(dāng)相鄰符號之間有偶數(shù)個非0符號時,再將該小段的第1個0變換成+B或-B,符號的極性與前一非零符號的相反,并讓后面的非零符號從符號開始再交替變化。例如:消息代碼:100001000011000011AMI碼:+10000-10000+1-10000+1-1HDB3碼:+1000+V-1000-V+1-1+B00+V-1+1簡易編碼方法:原理:HDB3碼既要包含AMI的交替特性使輸出無直流特性,又要不出現(xiàn)四個以上的連0,因此可以先滿足后者。1)把"0000"換為取代節(jié)。規(guī)則:先將"0000"分離開來,第一個"0000"直接變?yōu)?000V",然后數(shù)相鄰兩個"0000"之間"1"的個數(shù),奇數(shù)則變?yōu)?000V",偶數(shù)則變?yōu)?B00V"。2)更新符號。根據(jù)教材有:B總是與其前面的1或V符號相反,V總是與前面的1或B相符號相同,1總是與前面的V或B符號相反,就可以編符號了。例如:消息代碼:1000010000110000110000000011100001中間碼:1000V1000V11B00V11B00VB00V111000V1HDB3碼:+1000+V-1000-V+1-1+B00+V-1+1-B00-V+B00+V-1+1-1000-V+1解碼規(guī)則:1)雖然編碼很復(fù)雜,但解碼規(guī)則很簡單,若3連“0”前后非零脈沖同極性,則將最后一個非零元素譯為零,如+1000+1就應(yīng)該譯成“10000”;若2連“0”前后非零脈沖極性相同,則兩零前后都譯為零,如-100-1,就應(yīng)該譯為0000.2)再將所有的-1變換成+1后,就可以得到原消息代碼。程序運行結(jié)果程序主界面運行結(jié)果程序源代碼及注釋%%AMI碼的編碼xn=[100001
0000
11000011
0000
0000111
0000
1];%輸入單極性碼yn=xn;%輸出yn初始化num=0;%計數(shù)器初始化fork=1:length(xn)ifxn(k)==1num=num+1;%"1"計數(shù)器ifnum/2==fix(num/2)%奇數(shù)個1時輸出-1,進(jìn)行極性交替yn(k)=1;elseyn(k)=-1;endendend%HDB3編碼num=0;%連零計數(shù)器初始化yh=yn;%輸出初始化sign=0;%極性標(biāo)志初始化為0V=zeros(1,length(yn));%V脈沖位置記錄變量B=zeros(1,length(yn));%B脈沖位置記錄變量fork=1:length(yn)ifyn(k)==0num=num+1;%連“0”個數(shù)計數(shù)ifnum==4%如果4連“0”num=0;%計數(shù)器清零yh(k)=1*yh(k-4);%讓0000的最后一個0改變?yōu)榕c前一個非零符號相同極性的符號V(k)=yh(k);%V脈沖位置記錄ifyh(k)==sign%如果當(dāng)前V符號與前一個V符號的極性相同yh(k)=-1*yh(k);%則讓當(dāng)前V符號極性反轉(zhuǎn),以滿足V符號間相互極性反轉(zhuǎn)要求yh(k-3)=yh(k);%添加B符號,與V符號同極性B(k-3)=yh(k);%B脈沖位置記錄V(k)=yh(k);%V脈沖位置記錄yh(k+1:length(yn))=-1*yh(k+1:length(yn));%并讓后面的非零符號從V符號開始再交替變化endsign=yh(k);%記錄前一個V符號的極性endelsenum=0;%當(dāng)前輸入為“1”則連“0”計數(shù)器清零endend%編碼完成re=[xn',yn',yh',V',B'];%結(jié)果輸出:xnAMIHDB3V&B符號%HDB3解碼input=yh;%HDB3碼輸入decode=input;%輸出初始化sign=0;%極性標(biāo)志初始化fork=1:length(yh)ifinput(k)~=0ifsign==yh(k)%如果當(dāng)前碼與前一個非零碼的極性相同decode(k-3:k)=[0000];%則該碼判為V碼并將*00V清零endsign=input(k);%極性標(biāo)志endenddecode=abs(decode);%整流error=sum([xn'-decode']);%解碼的正確性檢驗,作圖subplot(3,1,1);stairs([0:length(xn)-1],xn);axis([0length(xn)-22]);subplot(3,1,2);stairs([0:length(xn)-1],yh);axis([0length(xn)-22]);subplot(3,1,3);stairs([0:length(xn)-1],decode);axis([0length(xn)-22]);總結(jié)與心得三周的課程設(shè)計結(jié)束了,在這次的課程設(shè)計中不僅檢驗了我所學(xué)習(xí)的知識,也培養(yǎng)了我如何去把握一件事情,如何去做好一件事情,又如何完成一件事情。在設(shè)計過程中,與同學(xué)分工設(shè)計和同學(xué)們相互探討,相互學(xué)習(xí),相互監(jiān)督,學(xué)會了合作,學(xué)會了運籌帷幄,學(xué)會了寬容,學(xué)會了理解,也學(xué)會了做人與處世。課程設(shè)計是對我們專業(yè)課程知識綜合應(yīng)用的實踐訓(xùn)練,著是我們邁向社會,從事職業(yè)工作前一個必不可少過程?!扒Ю镏惺加谧阆隆?,通過這次課程設(shè)計我深深體會到這句千古名言真正含義。我今天認(rèn)真的進(jìn)行課程設(shè)計,學(xué)會腳踏實地邁開這一步,是為了明天能穩(wěn)健地在社會大潮中奔跑打下堅實的基礎(chǔ)。在這次設(shè)計過程中,體現(xiàn)出自己單獨設(shè)計的能力及綜合運用知識的能力,體會了學(xué)以致用、突出自己勞動成果的喜悅心情,從發(fā)現(xiàn)自己平時學(xué)習(xí)的不足和薄弱環(huán)節(jié)從而加彌補。在此感謝我們的知道老師:侯寶生老師。侯老師嚴(yán)謹(jǐn)細(xì)致、一絲不茍是我工作、學(xué)習(xí)中的榜樣;老師循循善誘的教導(dǎo)和不拘一格的思路給予我無盡啟迪;在老師細(xì)心指導(dǎo)和幫助下,我才能夠順利完成了次課程設(shè)計。同時感謝幫助過我的同學(xué)們,謝謝們對我的幫助和支持,讓我感受到同學(xué)間的友誼。由于本人的設(shè)計能力有限,設(shè)計的過程中難免出現(xiàn)錯誤,懇請老師們多多指教,我十分樂意接受你們的批評與指正,本人萬分感謝。參考文獻(xiàn)(1)鄧勇、周擇、鄧斌著《數(shù)字電路設(shè)計完全手冊》.國防工業(yè)出版社。2004;(2)朱正偉著《EAD技術(shù)及應(yīng)用》.清華大學(xué)出版社。2005;(3)全國大學(xué)生電子設(shè)計組委會著《電子系統(tǒng)設(shè)計實踐》2005;(4)林明權(quán)著《VHDL數(shù)字控制系統(tǒng)設(shè)計范例》.電子工業(yè)出版社(5)馮濤著《可編程邏輯器件開發(fā)技術(shù)MAX+plusⅡ入門與提高》人民郵電出版社(6)王毓銀著《數(shù)字電路邏輯設(shè)計》高等教育出版社(7)趙俊超著《集成電路設(shè)計VHDL語言教程》北京希望出版社附錄源程序xn=[100001
0000
11000011
0000
0000111
0000
1];yn=xn;num=0;fork=1:length(xn)ifxn(k)==1num=num+1;ifnum/2==fix(num/2)yn(k)=1;elseyn(k)=-1;endendendnum=0;yh=yn;sign=0;V=zeros(1,length(yn));B=zeros(1,length(yn));fork=1:length(yn)ifyn(k)==0num=num+1;ifnum==4num=0;yh(k)=1*yh(k-4);V(k)=yh(k);ifyh(k)==signy
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- it行業(yè)就業(yè)合同范例
- 公司注冊代辦合同范例
- 作品代理合同范本
- 買賣合同購車合同范例
- 亮化追加合同范例
- 中外租賃合同模板
- 2025年度設(shè)備拆除與應(yīng)急響應(yīng)安全責(zé)任合同
- 2025年度股權(quán)代持合同范文及公司治理結(jié)構(gòu)設(shè)計
- 二零二五年度企業(yè)兼職安全管理人員服務(wù)合同
- 二零二五年度賓館布草洗滌、消毒及員工培訓(xùn)服務(wù)合同
- 巨量千川營銷師(初級)認(rèn)證考試復(fù)習(xí)題及答案
- 《佛跳墻英文介紹》課件
- 《特斯拉報告分析》課件
- 2025年小學(xué)五年級數(shù)學(xué)(北京版)-家庭生活中的碳排放-1教案
- 2024年12月管理體系認(rèn)證基礎(chǔ)考試真題及答案
- 抖音直播手冊【新人必看】
- 延安大學(xué)《算法設(shè)計與分析》2022-2023學(xué)年期末試卷
- 電力系統(tǒng)信號分析與處理課程教學(xué)大綱 (一)
- 產(chǎn)品質(zhì)量知識培訓(xùn)課件
- 醫(yī)療安全升級:2024年安全輸液管理
- 摩托車用驅(qū)動鏈產(chǎn)業(yè)深度調(diào)研及未來發(fā)展現(xiàn)狀趨勢
評論
0/150
提交評論