




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、摘要 在通信系統中, 要提高信息傳輸的有效性, 我們將信源的輸出經過信源編碼用較少的符 號來表達信源消息,這些符號的冗余度很小,效率很高,但對噪聲干擾的抵抗能力很弱。漢 明碼(HammingC ode)是一種能夠自動檢測并糾正一位錯碼的線性糾錯碼, 即 SE(CSingle Error Correcting )碼,用于信道編碼與譯碼中,提高通信系統抗干擾的能力。 為了提高信息傳輸的準確性,我們引進了差錯控制技術。而該技術采用可靠的,有效的 信道編碼方法來實現的。 糾錯碼是一種差錯控制技術, 目前已廣泛應用于各種通信系統和計 算機系統中,糾錯編碼主要用于數字系統的差錯控制,對于保證通信、存儲、媒
2、體播放和信 息轉移等數字傳遞過程的質量有著重要意義,是通信、信息類科知識結構中不可缺少的一部 分。 關鍵字 :通信系統、 MATLAB線 性分組碼、 Hamming碼 一、引言 1 二、設計原理 2 2.1 漢明碼的構造原理 2 2.2 監督矩陣 H 3 2.3 生成矩陣 G 4 2.4 校正子(伴隨式) S 5 三、( 7, 4)漢明碼編碼的設計 7 3.1 ( 7, 4)漢明碼編碼方法 7 3.2 編碼流程圖 7 3.3 ( 7, 4)漢明碼編碼程序設計 7 四、( 7, 4)漢明碼的譯碼器的設計 8 4.1 ( 7, 4)漢明碼譯碼方法 8 4.2 譯碼流程圖 10 4.3 ( 7,4)
3、漢明碼譯碼程序的設計 10 五、(7,4)漢明碼編譯碼程序的編譯及仿真波形 11 六、總結 13 七、參考文獻 14 附錄 15 、引言 當計算機存儲或移動數據時,可能會產生數據位錯誤,這時可以利用漢明碼來檢測并糾 錯,簡單的說,漢明碼是一個錯誤校驗碼碼集,由 Bell 實驗室的 R.W.Hamming發明,因此定 名為漢明碼。 與其他的錯誤校驗碼類似,漢明碼也利用了奇偶校驗位的概念,通過在數據位后面增加 一些比特,可以驗證數據的有效性。利用一個以上的校驗位,漢明碼不僅可以驗證數據是否 有效,還能在數據出錯的情況下指明錯誤位置。 在接受端通過糾錯譯碼自動糾正傳輸中的差錯來實現碼糾錯功能,稱為前
4、向糾錯FEC。 在數據鏈路中存在大量噪音時, FEC可以增加數據吞吐量。通過在傳輸碼列中加入冗余位 ( 也 稱糾錯位 )可以實現前向糾錯。 但這種方法比簡單重傳協議的成本要高。 漢明碼利用奇偶塊機 制降低了前向糾錯的成本。 、設計原理 2.1 漢明碼的構造原理 線性分組碼是一類重要的糾錯碼,應用很廣泛。在( n,k)分組碼中,若監督碼元是按 線性關系模 2 相加而得到的,則稱其為線性分組碼。 一般來說,若漢明碼長為 n,信息位數為 k,則監督位數 r=n-k. 若希望用 r 個監督位構 造出 r 個監督關系式來指示一位錯碼的 n 種可能位置,則要求 2r 1 n 或 2r 1 k r 1 現在
5、以(7,4) 分組碼為例來說明線性分組碼的特點。設其碼字為 A= a6, a5,a4,a3,a2,a1,a0 ,前 4位是信息元,后 3 位是監督元,可用下列線性方程組來描述該分組 碼產生監督元:a2 a6a5a4 a1 a6 a5 a3 a0 a6a4a3 顯然,這3個方程是線性無關的。 代入上述公式可得 (7,4) 碼的全部碼組, 如表1所示 表 1 ( 7, 4)漢明碼的全部碼組 信息位 a6 a5 a4 a3 監督位 a2 a1 a0 信息位 a6 a5 a4 a3 監督位 a2 a1 a0 0000 000 1000 111 0001 011 1001 100 0010 101 10
6、10 010 0011 110 1011 001 0100 110 1100 001 0101 101 1101 010 0110 011 1110 100 0111 000 1111 111 12 由上表可知:(7,4)漢明碼的最小碼距 d0=3,它能糾 1 位錯或檢 2 位錯。 由此可見,漢明碼是能夠糾正單個錯誤的線性分組碼,其特點是:最小碼距d0 =3,碼長 n 與 監督位 r 滿足關系式: 2r 1 n ,說明上述所說的( 7,4)線性分組碼就是漢明碼。同時, 由于碼率 k n (n r) n 1 r n,故當 n很大和 r很小時,碼率接近 1,可見, 漢明碼是一種 高效碼。 2.2
7、監督矩陣 H 式( 3.1 )所示的( 7,4)漢明碼的監督方程可以改寫為: a6 a5 a4 a2 0 a6 a5 a3 a1 0 (式 2.2.1 ) a6 a4 a3 a0 0 用矩陣的形式可以將上式表示為: 摸 2 )(式 2.2.2 ) 上式可以簡記為: H AT 0T 或 H T A 0 式中 A=a6 a5 a4 a3 a2 a1 a0 0=0 0 0 右上標“ T”表示將矩陣轉置。例如, HT是 H的轉置,即 HT的第一行為 H的第一列, HT 的第二行為 H 的第二列等等。 31 其中, H成為監督矩陣,只要監督矩陣 H給定,編碼時信息位和監督位的關系也就隨即 確定下來了。
8、2.3 生成矩陣 G 上面漢明碼例子中的監督位公式為 式 2.3.1 ) 也可改寫成矩陣形式: 式 2.3. 2) 或者寫成 式 2.3.3 ) 式中, Q為一個 k*r 階矩陣,它為 P的轉置,即 Q=PT 上式表示,在信息位給定后,用信息位的行矩陣車乘矩陣Q 就產生出監督位。 若將( 2.2.1 式)的監督方程補充完整并寫成矩陣的形式: 式 2.3.4 ) 41 即: A=G a6 a5 a4 a3 =GM 即漢明碼的編碼原理 上式中 1000111 式 2.3.5 ) 0100110 G= 0010101 0001011 G為生成矩陣,根據式 2.3.4 知:由 G和信息碼就能產生所有碼
9、字。生成矩陣也可分為兩 部分,即 G= I k ,Q(式 2.3.6 ) 上式中 111 110 T Q= 101PT(式2.3.7 ) 011 Q為 k r 階矩陣, Ik為 k階單位陣。 因此,如果找到了碼的生成矩陣 G,則編碼的方法就完全確定了。具有 KQ 形式的生成矩 陣稱為典型生成矩陣。由典型生成矩陣得出的碼組 A 中,信息位的位置不變,監督位附加于 其后,這種形式的碼稱為系統碼。 2.4 校正子(伴隨式) S 設一發 送碼 組 A= an 1,an 2 ,.a1, a0 , 在傳輸的過 程中可 能發生誤碼 。接 受碼 組 B= bn 1,bn 2 ,.,b1 ,b0 ,收發碼組之差
10、定義為錯誤圖樣 E。 E=B-A ( 式 2.4.1) 其中, E= en 1,en 2 ,.,e1, e0 , 令 S=B H T。 S B HT (A E)HT E HT ( 式 2.4.2) 式中 S 稱為校正子,他用來表示錯碼位置。 可見:校正子 S 與錯誤圖樣 E 之間由確定的線性變換關系。若和之間一一對應, 則 將能代表錯碼位置。 51 7,4)漢明碼的校正子和錯誤圖樣之間的對應關系如表 2 所示 表2 (7,4) 漢明碼 S 與 E 對應關系 錯誤碼位 錯誤圖樣 E 校正子S 錯誤位置 C e6 e5 e4 e3 e2 e1 e0 S2 S1S0 b0 0 0 0 0 0 0 1
11、 0 0 1 1 b1 0 0 0 0 0 1 0 0 1 0 2 b2 0 0 0 0 1 0 0 1 0 0 3 b3 0 0 0 1 0 0 0 0 1 1 4 b4 0 0 1 0 0 0 0 1 0 1 5 b5 0 1 0 0 0 0 0 1 1 0 6 b6 1 0 0 0 0 0 0 1 1 1 7 無錯 0 0 0 0 0 0 0 0 0 0 無錯 由上表可知: 當 S=001 時,則出錯在 1 位,即 b0 出錯; 當 S=010 時,則出錯在 2 位,即 b1 出錯; 當 S=100 時,則出錯在 3 位,即 b2 出錯; 當 S=011 時,則出錯在 4 位,即 b3
12、出錯; 當 S=101 時,則出錯在 5 位,即 b4 出錯; 當 S=110 時,則出錯在 6 位,即 b5 出錯; 當 S=111 時,則出錯在 7 位,即 b6 出錯; 當 S=000 時,則無錯。 61 三、( 7,4)漢明碼編碼的設計 3.1 ( 7,4)漢明碼編碼方法 (7,4) 漢明碼的編碼就是將輸入的 4 位信息碼 M= a6a5a4a3加上 3 位監督碼 b2b1b0從而 編成 7位漢明碼 a6 a5,a4,a3,a2,a1,a0,編碼輸出 B=a6 a5 a4 a3 a2 a1 a0. 由式 A = MG=a6a5a4a3 G 可知,信息碼 M與生成矩陣 G 的乘積就是編好
13、以后的 (7,4) 漢明碼。 3.2 編碼流程圖 編碼程序的設計流程圖 3.3 (7,4)漢明碼編碼程序設計 根據 (7,4) 漢明碼的編碼原理, 將上式計算所得的監督位和輸入的信息位一起輸出, 則此 次編碼就算完成了。 (7,4)漢明碼的編碼源程序見下文附錄。 71 四、( 7,4)漢明碼的譯碼器的設計 4.1 ( 7,4)漢明碼譯碼方法 (7,4) 漢明碼的譯碼器的功能就是把輸入的 7 位漢明碼 B=b6b5b4b3b2 b1b0 譯為 4位信 息碼 a3 a2 a1 a0 ,并且根據伴隨矩陣 S 從而糾正編碼中可能出現的 1 位錯碼 根據監督矩陣 H 和生成矩陣 G的關系,即: H =
14、P Ir ,其中 Ir 是 3 3的單位陣, P QT G = Ik Q ,其中 Ik 是4 4的單位陣, 式 4.1.1 ) 生成矩陣 G= 1000111 0100110 0010101 0001011 = Ik ,Q 1110 由式( 4.1.1 ),得 P= 1101 1011 監督矩陣 式 4.1.2 ) 1110 100 H 1101 010 PI r 1011 001 由式( 2.2.2 )知 S B HT (A E)HT E HT ,其中 E=en 1,en 2 ,.,e1, e0 從而即可得到校正子 S與( 7,4)漢明碼各位之間的關系: S2 a6 a5 a4 a2 S1
15、a6 a5 a3 a1(式 4.1.3 ) S0 a6 a4 a3 a0 算出校正子 S( S2S1S0)后,對照表 2,即可判斷出哪位出錯,并糾正出錯的那位,從而輸出 正確的碼字 81 表 3 (7,4)漢明碼譯碼輸入、輸出對應關系 序號 譯碼輸入 譯碼輸出 校正子 S 錯誤碼位 錯碼位置 b6b5b4b3b2 b1b0 a3a2a1a0 S2S1S0 C 0 0000010 0000 010 b1 2 1 0001111 0001 100 b2 3 2 0010101 0010 000 無錯 0 3 0011110 0011 000 無錯 0 4 0101110 0100 011 b3 4
16、 5 0100101 0101 011 b3 4 6 0010011 0110 100 b5 6 7 0111000 0111 000 無錯 0 8 1000111 1000 000 無錯 0 9 1001101 1001 001 b0 1 10 1010000 1010 010 b1 2 11 1011101 1011 100 b2 3 12 1101001 1100 011 b3 4 13 1111000 1101 101 b4 5 14 1010100 1110 110 b5 6 15 0111111 1111 111 b6 7 91 4.2 譯碼流程圖 譯碼程序設計的流程圖: 4.3
17、(7,4)漢明碼譯碼程序的設計 若第 1 位(a0)出錯,則 C 0。這樣譯碼程序就可以編出 根據前面分析的譯碼原理,在程序中, C 表示錯誤在哪一位 輸出 0;若第 2 位出錯,則 C 輸出 1;, ;若無錯,則 C 輸出 來了。譯碼源程序見附錄 110五、( 7,4)漢明碼編譯碼程序的編譯及仿真波形 輸入信息元序列 1 0 0 0 輸出序列為 : 1 0 0 0 1 1 1 hanmingencode 1.5 0.5 2 value hanmingdecode 1】, 紅線表示錯誤的接收 hanmingdecode 111 0 0 0 0 1 1 1 錯誤在第一位(藍線表示正確的譯碼【 0
18、 0 0 1 0 1 序列【1 0 0 1 0 1 1】) 輸入信息元序列 1 0 1 0 輸出序列為 : 1 0 10 0 1 0 hanmingencode hanmingdecode 【 10 0 0 01 0】 錯誤在第三位 輸入信息元序列 1 0 1 1 hanmingdecode 112 六、總結 對于本次課程設計的結束,我真切感覺到自己知識能力的匱乏,很多東西都只是知道 一些淺顯的知識,真正搞懂會應用的東西很少。或許一個人的進步需要一個緩慢的過程。在 過程中需要不斷地借鑒,學習,汲 取 別 人 的 東西 。 同別人的成果中攫取知識和營養,然 后它變成自己的東西。 通過這次課程設計
19、。我學到了很多東西, 首先,通 過這 次 課程 設計 , 我熟練地掌握了漢明碼的糾錯碼的原理,了解的( 7,4 )漢明碼的相關知識。其次,我覺得學 習理論和實踐是兩個層次,理論指導實踐,而實踐驗證理論,理論往往是在理想的條件下得 出的,而實踐是在現實生活中進行的,所以,實踐得出的結論 往往與理論的結論有一定 的差別,這是很正常的。另外團結協作,互助共贏是時代的主流。在 這次課設的制作 中, 交流合作的精神在我們體現的可謂是淋漓盡致。相互探討,學 習 交 流 , 優勢互補,這樣 才最終處成了這課設。爭論與交流是解決問題很好的方法,問題也總是在思 想與意見 的碰撞中得到解決而這也是我們對理論理解的
20、更為深刻。通過圖書館,搜 索 引擎查閱資料的能力也得到了相應的提升。總 之 , 在 這 次 課 程 設 計 的 制 作 的 過 程 中 學 到 了 很 多 東 西 ,能 力 也 有 相 應 的 提升。在此還要感謝指導老師的辛勤教導, 感謝老師在此次課程設計中給以孜孜不倦的解惑。 113 七、參考文獻 【1】李建新 現代通信系統分析與仿真 MATLAB通信工具箱 . 西安:西安電子科技 大學出版社, 2000 【2】樊昌信 通信原理 . 北京:國防工業出版社, 2002 【3】劉敏 MATLAB 通信仿真與應用 國防工業出版社 【4】曹志剛等著 現代通信原理 北京:清華大學出版社, 2001 5
21、 【5】吳偉陵等著 移動通信原理 北京:電子工業出版社, 2005 【6】韓利竹,王華 MATLAB電子仿真與應用 北京:國防工業出版社 ,2003 年. 【7】趙靜 基于 MATLAB的通信系統仿真 北京: 北京航空航天大學出版社 ,2008 年. 【8】葛哲學 精通 MATLAB 北京: 電子工業出版社 ,2008 年. 114 附錄 一、(7,4)漢明碼編碼源程序 function f=hammingencod(a) G=1 0 0 0 1 1 1;0 1 0 0 1 1 0;0 0 1 0 1 0 1;0 0 0 1 0 1 1; a=input( 輸入信息元序列 : ); c=mod(a*G,2); disp( 編碼后序列為 : ); disp(c); x=.01:.01:4; m,n=size(a*ones(1,100); y=reshape(a*ones(1,100),1,m*n); plot(x,y) axis(0 4 0 1.5); set(gca,XTick ,0:1:4); set(gca,YTick ,0:0.5:1.5); title( h
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2030中國木塑地板行業發展趨勢分析與未來投資戰略咨詢研究報告
- 2025至2030中國替諾福韋阿拉芬酰胺及其聯合用藥行業發展趨勢分析與未來投資戰略咨詢研究報告
- 2025至2030中國旋轉鼠標孔行業發展趨勢分析與未來投資戰略咨詢研究報告
- 2025至2030中國抽油煙機市場銷售渠道與多元化發展戰略研究報告
- 2025至2030中國手動跑步機行業發展趨勢分析與未來投資戰略咨詢研究報告
- 2025至2030中國戒煙產品行業發展趨勢分析與未來投資戰略咨詢研究報告
- 2025至2030中國微晶玻璃市場應用前景與未來產銷需求分析報告
- 2025年銀行從業資格考試銀行信貸風險管理真題試卷
- 2025年雅思考試閱讀專項模擬試卷:法律與司法制度
- 2025年馬來語等級考試C82級試卷及答案
- 2025年氨水市場需求分析
- 做課件教學視頻
- 2025年特種設備安全考試題庫特種設備安全管理人員法規應用試卷
- 普法試題及答案初中
- 中控崗位考試題及答案
- 海洋法知到智慧樹章節測試課后答案2024年秋中國海洋大學
- 常見藻類圖譜(史上最全版本)
- 悼念母親祭文
- 城鎮中低收入家庭公共租賃住房資格申請審核表
- 消防安裝工程監理細則
- 年產500噸聚丙烯酰胺聚合工藝設計
評論
0/150
提交評論