DTMB標(biāo)準(zhǔn)BCH譯碼器設(shè)計(jì)
摘要:BCH碼是目前最為常用的糾錯(cuò)碼之一,我國的數(shù)字電視廣播地面?zhèn)鬏敇?biāo)準(zhǔn)DTMB也使用了縮短的BCH碼作為前向糾錯(cuò)編碼的外碼。針對該BCH碼的特點(diǎn),采用BM譯碼算法,設(shè)計(jì)了一種實(shí)時(shí)譯碼器。與其它設(shè)計(jì)方案相比較,顯著減少了占用邏輯數(shù)量。整個(gè)設(shè)計(jì)在Stratix II FPGA上進(jìn)行了綜合驗(yàn)證,滿足了設(shè)計(jì)要求。
本文引用地址:http://m.butianyuan.cn/article/129210.htm引言
BCH碼構(gòu)成了一大類強(qiáng)有力的糾正隨機(jī)錯(cuò)誤的循環(huán)碼,它是對漢明碼的一種重要推廣,可用于糾正多個(gè)錯(cuò)誤,Bose、Chaudhuri和Hocquenghem最初提出了二進(jìn)制BCH碼,此后Peterson在1960年證明了BCH碼的循環(huán)結(jié)構(gòu)。對于任何正整數(shù)m(m≥3)和t(t≥2),存在如下形式的BCH碼:
分組長度:n=2m-l;校驗(yàn)位數(shù)目:n-k≤mt;最小距離:dmin≥2t+1。
該碼能夠糾正t個(gè)或少于t個(gè)差錯(cuò)的任意組合。其生成多項(xiàng)式由它在伽羅華域GF(2m)上的根確定。這樣得到的BCH碼通常被稱作本原或狹義BCH碼。而碼長n≠2m-l的二進(jìn)制BCH碼可以采用與上述本原BCH碼相似的方法構(gòu)造,它的最小距離至少為2t+1,同樣可以糾正至t多個(gè)錯(cuò)誤。
由于BCH碼性能優(yōu)良,結(jié)構(gòu)簡單,編譯碼設(shè)備也不太復(fù)雜,使得它在實(shí)際使用中特別受到工程技術(shù)人員的歡迎,是目前用得最廣泛的碼類之一。
BCH譯碼算法
BCH譯碼算法主要由3個(gè)步驟組成:
1.利用式(1),由接收碼字多項(xiàng)式r(X)=r0+r1X+r2X2+…+rn-1Xn-1計(jì)算校正子S=(S1,S2,S3 …S2t);
(1)
2.由校正子分量S1,S2, S3 …S2t確定錯(cuò)誤位置多項(xiàng)式:
3.通過求解的根,確定錯(cuò)誤位置數(shù),并依此糾正接收向量r(X)中的錯(cuò)誤,得到糾錯(cuò)后的碼字。
上述3個(gè)步驟中,步驟1和步驟3相對簡單,步驟2則是BCH譯碼中最復(fù)雜的部分,常用的算法有直接法(也稱Peterson法)、Berlekmap-Massey算法(BM算法)、以及Euclidean算法。
評論