循环码产生电路设计

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

课程设计

班 级: 通信09—4 姓 名: 宋蕾 学 号: 0906030421 指导教师: 刘玉珍 成 绩:

原理

数字 课程设计报告

电子与信息工程学院

通信工程系

循环码产生电路设计

1. 引言

在线性分组码中,有一种重要的码称为循环码(cycil code)。循环码是在严密的代数学理论基础上建立起来的。这种编码和解码设备都不太复杂,而且检(纠)错的能力较强。循环码是线性分组码中最重要的一种子类,是目前研究得比较成熟的一类码。循环码具有许多特殊的代数性质,这些性质有助于按照要求的纠错能力系统地构造这类码,并且简化译码算法,并且目前发现的大部分线性码与循环码有密切关系。循环码还有易于实现的特点,很容易用带反馈的移位寄存器实现其硬件。

simulink 是matlab 中的一种可视化仿真工具, 是一种基于matlab 的框图设计环境,是实现动态系统建模、仿真和分析的一个软件包,被广泛应用于线性系统、非线性系统、数字控制及数字信号处理的建模和仿真中。simulink 可以用连续采样时间、离散采样时间或两种混合的采样时间进行建模,它也支持多速率系统,也就是系统中的不同部分具有不同的采样速率。为了创建动态系统模型,Simulink 提供了一个建立模型方块图的图形用户接口(GUI) ,这个创建过程只需单击和拖动鼠标操作就能完成,它提供了一种更快捷、直接明了的方式,而且用户可以立即看到系统的仿真结果。

2. 设计要求

(1)用simulink 对系统建模。 (2)写出其生成多项式(自定)。 (3)对所设计的系统性能进行仿真分析。 (4)对其应用举例阐述。

3. 设计原理

3.1 循环码的循环性

循环码除了具有线性码的一般性质外,还具有循环性。循环性是指任一码组循环一位(即将最右端的一个码元移至左端,或反之)以后,仍为该码中的一个码组。在表1中给出一种(7,3)循环码的全部码组。由此表可以直观看出这种码的循环型。例如,表中的第2码组向右移一位即得到第5码组;第6码组向右移一位即得到第7码组。一般说来,若(0121a a a a n n ⋯-- )是循环码的一个码组,则循环移位后的码组:

(1032---⋯⋯n n n a a a a ) (2143----⋯⋯n n n n a a a a )

……

(1210a a a a n ⋯⋯-)

也是该编码组中的码组。

表3-1 一种(7,3)循环码的全部码组

码组编号

信息位 a 6a 5a 4

监督位 a 3a 2a 1a 0 码组编号

信息位 a 6a 5a 4 监督位 a 3a 2a 1a 0 1 000 0000 5 100 1011 2 001 0111 6 101 1100 3 010 1110 7 110 0101 4

011

1001

8 111

0010

由于循环码具有码的代数结构清晰、性能较好、编译码简单和易于实现的特点,因此在目前的计算机纠错系统中所使用的线性分组码几乎都是循环码。它不但可以纠正独立的随机错误,也可用于检测突发错误并且非常有效。),(k n 循环码能够检测长为k n -或更短的任何突发错误;其中n 为码长,k 为信息位数。

3.2 循环码多项式

在代数编码理论中,为了便于计算,把这样的码组中各码元当作是一个多项式的系数,即把一个长度为n 的码组表示成:

=)(x T 0

12

21

1a x a x a x

a x

a i

i n n n n ++⋯++⋯++---- (3.2-1)

这种多项式中, x 仅是码元位置的标记,例如上式表示第7码组中a 6、a 5、a 2和a 0为“1”,其他均为0。因此我们并不关心x 的取值。这种多项式有时称为码多项式。 例如,表1中第7个码组可以表示为:

1)(2

5

6

+++=x x x x T

3.3 循环码的生成多项式和生成矩阵

在循环码中,一个),(k n 码有

k

2

个不同的码组。若用g(x)表示其中前)1(-k 位皆为“0”

的码组,则)(,),(),(),(12x g x x g x x xg x g k -⋯都是码组,而且这k 个码组是线性无关的。因此他们可以用来构成此循环码的生成矩阵G 。可以证明生成多项式)(x g 具有以下特性:

(1))(x g 是一个常数项为1的最高次数为r=n-k 次多项式; (2))(x g 是1+n x 的一个因式;

(3)所有码多项式)(x T 都可被整除,而且任意一个次数不大于的多项式乘)(x g 都是码多项式。

为了保证构成的生成矩阵G 的各行线性不相关,通常用)(x g 来构造生成矩阵,这时,生成矩阵G 可以表示为:

⎥⎥

⎥⎥⎥⎥

⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎣⎡⋅⋅⋅=--)()()()()(21x g x g x x g x x g x x G k k (3.3-1)

其中0111)(g x g x g x g x g k n k n k n k n ++++=------ ,因此,一旦生成多项式)(x g 确定以后,该循环码的生成矩阵就可以确定的,进而该循环码的所有码字就可以确定。

3.4 循环码的编码方法

在编码时,首先需要根据给定的)(k n -循环码的参数确定生成多项式)(x g ,也就是从

1+n

x 的因子中选一个)(k n -次多项式作为)(x g ;然后,利用循环码的编码特点,即所有

循环码多项式)(x T 都可以被)(x g 整除,来定义生成多项式)(x g 。

根据上述原理可以得到一个较简单的系统循环码编码方法:设要产生)(k n -循环码,

)(x m 表示信息多项式,则其次数必小于k ,而)

(x m x

k

n ⋅-的次数必小于n ,用)(x m x k n ⋅-除

以)(x g ,可得余数)(x r ,)(x r 的次数必小于)(k n -,将)(x r 到信息位后作监督位,就得到了系统循环码。下面就将以上各步处理加以解释。

相关文档
最新文档