BCH码是循环码的一个重要子类,它具有纠多个错误的能力,BCH码

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

BCH码是循环码的一个重要子类,它具有纠多个错误的能力,BCH码有严密的代数理论,是目前研究最透彻的一类码。它的生成多项式与最小码距之间有密切的关系,人们可以根据所要求的纠错能力t很容易构造出BCH码,它们的译码器也容易实现,是线性本原循环码是一类重要的码。

汉明码、BCH码和某些大数逻辑可译码都是本原码。本原码的特点是:

1、码长为2^m-1,m为整数。

2、它的生成多项式由若干m阶或以m的因子为最高阶的多项式相乘构成。要判断(2^m-1,k)循环码是否存在,只需判断2^m-1-k阶生成多项式是否能由D^(2^m-1)+1的因式构成。代数理论告诉我们,每个m阶既约多项式一定能除尽D^(2^m-1)+1.

BCH译码:(返回)

BCH码的译码方法可以有时域译码和频域译码两类。频移译码是把每个码组看成一个数字信号,把接受到的信号进行离散傅氏变换(DFT),然后利用数字信号处理技术在“频域”内译码,最后进行傅氏反变换得到译码后的码组。时域译码则是在时域直接利用码的代数结构进行译码。BCH的时域译码方法有很多,而且纠多个错误的BCH码译码算法十分复杂。常见的时域BCH译码方法有彼得森译码、迭代译码等。BCH的彼得森译码基本过程为:

1、用的各因式作为除式,对接收到的码多项式求余,得到t个余式,称为“部分

校验式”。

2、用t个部分校验式构造一个特定的译码多项式,它以错误位置数为根。

3、求译码多项式的根,得到错误位置。

4、纠正错误。

事实上,BCH码是一种特殊的循环码,因此它的编码器不但可以象其它循环码那样用除法器来实现,而且原则上所有适合循环码译码的方法也可以用于BCH码的译码。

/wsxy/digi/d6z.htm

第六章差错控制

1 差错控制的基本概念

1.1 差错的特点

由于通信线路上总有噪声存在,噪声和有用信息中的结果,就会出现差错。噪声可分为两类,一类是热噪声,另一类是冲击噪声,热噪声引起的差错是一种随机差错,亦即某个码元的出错具有独立性,与前后码元无关。

冲击噪声是由短暂原因造成的,例如电机的启动、停止,电器设备的放弧等,冲击噪声引起的差错是成群的,其差错持续时间称为突发错的长度。

衡量信道传输性能的指标之一是误码率PO。

PO=错误接收的码元数/接收的总码元数

目前普通电话线路中,当传输速率在600~2400bit/s时,PO在之间,对于大多数通信系统,PO在之间,而计算机之间的数据传输则要求误码率低于。

1.2 差错控制的基本方式

差错控制方式基本上分为两类,一类称为“反馈纠错”,另一类称为“前向纠错”。在这两类基础上又派生出一种称为“混合纠错”。

(1)反馈纠错:这种方式在是发信端采用某种能发现一定程度传输差错的简单编码方法对所传信息进行编码,加入少量监督码元,在接收端则根据编码规则收到的编码信号进行检查,一量检测出(发现)有错码时,即向发信端发出询问的

信号,要求重发。发信端收到询问信号时,立即重发已发生传输差错的那部分发信息,直到正确收到为止。所谓发现差错是指在若干接收码元中知道有一个或一些是错的,但不一定知道错误的准确位置。图6-1给出了“差错控制”的示意方框图。

(2)前向纠错:这种方式是发信端采用某种在解码时能纠正一定程度传输差错的较复杂的编码方法,使接收端在收到信码中不仅能发现错码,还能够纠正错码。在图6-1中,除去虚线所框部分就是前向纠错的方框示意图。采用前向纠错方式时,不需要反馈信道,也无需反复重发而延误传输时间,对实时传输有利,但是纠错设备比较复杂。

(3)混合纠错:混合纠错的方式是:少量纠错在接收端自动纠正,差错较严重,超出自行纠正能力时,就向发信端发出询问信号,要求重发。因此,“混合纠错”是“前向纠错”及“反馈纠错”两种方式的混合。

对于不同类型的信道,应采用不同的差错控制技术,否则就将事倍功半。

反馈纠错可用于双向数据通信,前向纠错则用于单向数字信号的传输,例如广播数字电视系统,因为这种系统没有反馈通道。

1.3 误码控制基本原理

我们先举一个日常生活中的实例。如果你发出一个通知:“明天14:00~16:00开会”,但在通知过程中由于某种原因产生了错误,变成“明天10:00~16:00开会”。别人收到这个错误通知后由于无法判断其正确与否,就会按这个错误时间去行动。为了使收者能判断正误,可以在发通知内容中增加“下午”两个字,即改为:“明天下午14:00~16:00开会”,这时,如果仍错为:“明天下午10:00~16:00开会”,则收到此通知后根据“下午”两字即可判断出其中“10:00”发生了错误。但仍不能纠正其错误,因为无法判断“10:00”错在何处,即无法判断原来到底是几点钟。这时,收者可以告诉发端再发一次通知,这就是检错重发。为了实现不但能判断正误(检错),同时还能改正错误(纠错),可以把发的通知内容再增加“两个小时”四个字,即改为:“明天下14:00~16:00两个小时开会”。这样,如果其中“14:00”错为“10:00”,不但能判断出错误,同时还能纠正错误,因为其中增加的“两个小时”四个字可以判断出正确的时间为14:00~16:00”。

通过上例可以说明,为了能判断传送的信息是否有误,可以在传送时增加必要的附加判断数据;如果又能纠正错误,则需要增加更多的附加判断数据。这些附加数据在不发生误码的情况之下是完全多余的,但如果发生误码,即可利用被传信息数据与附加数据之间的特定关系来实现检出错误和纠正错误,这就是误码控制编码的基本原理。具体地说就是:为了使信源代码具有检错和纠错能力,应当按一定的规则在信源编码的基础上增加一些冗余码元(又称监督码),使这些冗余码元与被传送信息码元之间建立一定的关系,发信端完成这个任务的过程就称为误码控制编码;在收信端,根据信息码元与监督码元的特定关系,实现检错或纠错,输出原信息码元,完成这个任务的过程就称误码控制译码(或解码)。另外,无论检错和纠错,都有一定的误别范围,如上例中,若开会时间错为“16:00~18:0 0”,则无法实现检错与纠错,因为这个时间也同样满足附加数据的约束条件,这就应当增加更多的附加数据(即冗余)。我们已知,信源编码的中心任务是消去冗余,实现码率压缩,可是为了检错与纠错,又不得不增加冗余,这又必然导致码率增加,传输效率降低;显然这是个矛盾。我们分析误码控制编码的目的,正是为了寻求较好的编码方式,能在增加冗余不太多的前提下来实现检错和纠错。再者,经过信源编码,如果传送信道容量与信源码

相关文档
最新文档