㈠ 交織編碼的模擬原理
在實際通信系統中常常存在突發性錯誤。突發錯誤一般是一個錯誤序列。糾正突發錯誤的通常採用交織編碼。交織編碼的基本思路是,將i個能糾t個錯的分組碼(n,k)中的碼元比特排列成i行n列的方陣。每個碼元比特記作B(i,n)。交織前如果遇到連續j個比特的突發錯誤(用陰影方塊表示),且j>>t,對其中的連續兩個碼組而言,錯誤數已遠遠大於糾錯能力t,因而無法正確對出錯碼組進行糾錯。交織後,總的比特數不變,傳輸次序由原來的B(1,1),B(1,2),B(1,3)…B(1,n),B(2,1),B(2,2),B(2,3)…B(2,n),……B(i,1),B(i,2),B(i,3)…B(i,n)轉變為B(1,1),B(2,1),B(3,1)…B(i,1),B(1,2),B(2,2),B(3,2)…B(i,2)………B(1,n),B(2,n),B(3,n),…B(i,n)的次序。此時因干擾或衰落引起的突發錯誤圖樣正好落在分組碼的糾錯能力范圍內,可以正確糾錯錯誤。通常把碼組數i稱為交織度,用這種方法構造的碼稱為交織碼。 使用交織編碼的好處是提高了抗突發錯誤的能力但不增加新的監督碼元,從而不會降低編碼效率。理論上交織度i越大,抗突發錯誤的能力就越強,但是要求解碼器的暫存區就越大,而且解碼延時也相應加大。因此,實際工程中會根據設計成本和系統的延時要求選取合適的i。
交織編碼的模擬實驗原理在進行交織編碼以前,先將數據用戈雷碼編碼器進行了糾錯編碼,然後再進行23行、23列的交織編碼。在傳輸信道上用了一個周期為1Hz、脈寬為100ms、幅度為2V的方波信號模擬突發錯誤。圖12.28為輸入數據、解碼輸出及被干擾產生突發錯誤的波形覆蓋示意圖。100ms的突發錯誤被完全糾正。由於使用交織編碼所以應該存在2倍的編碼、解碼延時,即2×23×23個采樣。因此要觀察到一個以上完整的反交織周期的數
據信號,系統的采樣點數應該稍微設置長一些。
除此之外,SystemView還提供了另外一個交織編碼器圖符——卷積交織編碼。當使用較短的移位寄存器時,該編碼器比上述實驗中先進行BCH編碼再交織的方法實時性要好,而且參數設置也相對簡單。
㈡ 糾錯碼的基本原理和性能參數
糾錯碼能夠檢錯或糾錯,主要是靠碼字之間有較大的差別。這可用碼字之間的漢明距離d(x,y)來衡量。它的定義為碼字x與y之間的對應位取不同值的碼元個數。一種糾錯碼的最小距離d定義為該種碼中任兩個碼字之間的距離的最小值。一種碼要能發現e個錯誤,它的最小距離d應不小於e+1。若要能糾正t個錯誤,則d應不小於2t+1。一個碼字中非零碼元的個數,稱為此碼字的漢明重量。一種碼中非零碼字的重量的最小值,稱為該碼的最小重量。對線性碼來說,一種碼的最小重量與其最小距離在數值上是相等的。
在構造線性碼時,數字上是從n維空間中選一k維子空間,且使此子空間內各非零碼字的重量盡可能大。當構造循環碼時,可進一步將每一碼字看成一多項式,將整個碼看成是多項式環中的理想,這一理想是主理想,故可由生成多項式決定;而多項式完全可由它的根規定。這樣,就容易對碼進行構造和分析。這是BCH碼等循環碼構造的出發點。一般地說,構造一種碼時,均設法將它與某種代數結構相聯系,以便對它進行描述,進而推導它的性質,估計它的性能和給出它的解碼方法。若一種碼的碼長為n,碼字數為M,或信息位為h,以及最小距離為d,則可把此碼記作【n,M,d】碼。若此碼為線性碼,常簡記作(n,k)或(n,k,d)碼。人們還常用R=log2M/n表示碼的信息率或簡稱碼率,單位為比特/碼元。R越大,則每個碼元所攜帶的信息量越大,編碼效率越高。 糾錯碼實現中最復雜的部分是解碼。它是糾錯碼能否應用的關鍵。根據式(1),採用的碼長n越大,則誤碼率越小。但n越大,編譯碼設備也越復雜,且延遲也越大。人們希望找到的解碼方法是:誤碼率隨碼長n的增加按指數規律下降;解碼的復雜程度隨碼長n的增加接近線性地增加;解碼的計算量則與碼長n基本無關。可惜,已經找到的碼能滿足這樣要求的很少。不過由於大規模集成電路的發展,即使應用比較復雜的但性能良好的碼,成本也並不太高。因此,糾錯碼的應用越來越廣泛。
糾錯碼傳輸的都是數字信號。這既可用硬體實現,也可用軟體實現。前者主要用各種數字電路,主要是採用大規模集成電路。軟體實現特別適合計算機通信網等場合。因為這時可以直接利用網中的計算機進行編碼和解碼,不需要另加專用設備。硬體實現的速度較高,比軟體可快幾個數量級。
在傳信率一定的情況下,如果採用糾錯碼提高可靠性,要求信道的傳輸率增加,帶寬加大。因此,糾錯碼主要用於功率受限制而帶寬較大的信道,如衛星、散射等系統中。糾錯碼還用在一些可靠性要求較高,但設備或器件的可靠性較差,而餘量較大的場合,如磁帶、磁碟和半導體存儲器等。
在分組碼的研究中,譜分析的方法受到人們的重視。糾同步錯誤碼、算術碼、不對稱碼、不等錯誤糾正碼等,也得到較多的研究。 分組碼是對信源待發的信息序列進行分組(每組K位)編碼,它的校驗位僅同本組的信息位有關。自20世紀50年代分組碼的理論獲得發展以來,分組碼在數字通信和數據存儲系統中已被廣泛應用。
分組碼的碼長n和碼字個數M是一個碼的主要構造參數。碼長為n的碼中所有碼字的位數均為n;若要用一個碼傳送k比特信息,則碼字的個數M必須滿足。典型的分組碼是由k位信息位和r位監督位組成的,這樣構成的碼一般稱為系統碼。
分組碼中應用最廣的線性分組碼。線性分組碼中的M個碼字之間具有一定線性約束關系,即這些碼字總體構成了n維線性空間的一個k維子空間。稱此k維子空間為(n,k)線性分組碼。線性系統碼的特點是每個碼字的前k位均由這個碼字所對應的信息位組成,並通過對這k位信息位的線性運算得到後面n—k是位監督位。
線性分組碼中應用最廣的是循環碼,循環碼的主要特徵是任何碼字在循環移位後個碼字。循環碼的優點在於其編碼和解碼手續比一般線性碼簡單,因而易於在設備上實現。在循環碼中,碼字可表示為多項式。循環碼的碼字多項式都可表示成為循環碼的生成多項式與這個碼字所代表的信息多項式的乘積,即,因此一個循環碼可以通過給出其生成多項式來規定。常用的循環碼有BCH碼和RS碼。
網格碼有多種描述方法,網格圖是常用方法之一,它能表示出編碼過程。一個碼率為1/2、包含四種狀態的網格碼的網格圖如圖所示。圖1中00,01,10,11表示編碼器所具有的四種狀態,以「·」示出,從每一狀態出發都存在兩條支路,位於上面的一條支路對應於編碼器輸入為「0」的情況,位於下面的一條支路對應於編碼器輸入為「1」的情況,而每一支路上所列出的兩個二進位碼則表示相應的編碼輸出。因而可知,編碼輸出不僅決定於編碼器的當前輸入,還決定於編碼器的狀態,例如在圖中從「00」狀態出發;,若輸入的二進制數據序列為1011,則編碼器的狀態轉移過程為00→01→10→01→11,而相應的編碼輸出序列為11010010。在網格圖中任意兩條從同一狀態出發;,經不同的狀態轉移過程後又歸於另一相同狀態(該狀態也可與初始狀態相同)的路徑間的距離的最小值稱為碼的自由距離。如該圖中的為5。對於卷積碼來說,的計算可簡化為始於且終於零狀態的非全零路徑與全零路徑間距離的最小值。是表徵網格碼糾錯能力的重要參數。維特比演算法是廣泛採用的網格碼的解碼方法。由於網格碼的狀態越多,解碼越復雜,所以狀態個數是度量網格碼解碼復雜性的重要參數。一般說來可以通過增大解碼復雜性來增加,從而提高碼的糾錯能力。
BCH碼、網格碼已被廣泛地應用於移動通信、衛星通信和頻帶數據傳輸中。RS碼也被廣泛應用於光碟的存儲中。
大多數糾錯碼是設計來糾隨機誤碼的,可以通過交織的方法使它適用於對突發誤碼的糾錯。交織是一種使得集中出現的突發誤碼在解碼時進行分散化的措施,從而使其不超出糾錯碼的糾錯能力范圍。 卷積碼不對信息序列進行分組編碼,它的校驗元不僅與當前的信息元有關,而且同以前有限時間段上的信息元有關。卷積碼在編碼方法上尚未找到像分組碼那樣有效的數學工具和系統的理論。但在解碼方面,不論在理論上還是實用上都超過了分組碼,因而在差錯控制和數據壓縮系統中得到廣泛應用。
㈢ 相鄰兩個數碼之間只有一位碼元不同是什麼意思
循環碼是一種無權碼,循環碼編排的特點是相鄰兩個數碼之間符合卡諾圖中 的鄰接條件,即相鄰兩個數碼之間只有一位碼元不同,碼元就是組成數碼的 單元。符合這個特點的有多種方案,但循環碼只能是表中的那種。循環碼的 優點是沒有瞬時錯誤,因為在數碼變換過程中,在速度上會有快有慢,中間 經過其它一些數碼形式,稱它們為瞬時錯誤。這在某些數字系統中是不允許 的,為此希望相鄰兩個數碼之間僅有一位碼元不同,即滿足鄰接條件,這樣 就不會產生瞬時錯誤。循環碼就是這樣一種編碼,它可以在卡諾圖中依次循 環得到。循環碼又稱格雷碼。 通過對循環碼的編解碼技術的了解,並對分析其信道誤碼率。隨著數字技術的高速發展,循環碼糾錯技術已經廣泛應用於各種通信系統中。解碼技術采 用微處理器或數字信號處理器,實現簡單,糾錯能力強,可以降低誤碼率,保證 數據傳輸的可靠性,大大提高通信質量。 循環碼是線性分組碼的一個重要子集,是目前研究最成熟的一類碼。循 環碼計數器是漢明碼距離為1 的計數器,因而必然是偶數進制計數器。用它 構成的計數電路由於不會出現毛刺干擾,具有可靠性高等優點而受到重視, 同時,它還有許多特殊的代數性質,這些性質有助於按所要求的糾錯能力系 統地構造這類碼,且易於實現;同時循環碼的性能也較好,具有較強的檢錯 能力和糾錯能力。由於此類編碼的重要性,所以對循環碼編碼器的研究始終 沒有停止過。
雷碼具有任何相鄰碼只有一位碼元不同的特性。雷碼具有任何相鄰碼只有一位碼元不同的特性。雷碼具有任何相鄰碼只有一位碼元不同的特性。雷碼具有任何相鄰碼只有一位碼元不同的特性。雷碼具有任何相鄰碼只有一位碼元不同的特性。雷碼具有任何相鄰碼只有一位碼元不同的特性。雷碼具有任何相鄰碼只有一位碼元不同的特性。雷碼具有任何相鄰碼只有一位碼元不同的特性。雷碼具有任何相鄰碼只有一位碼元不同的特性。雷碼具有任何相鄰碼只有一位碼元不同的特性。