实验四 循环码编、译码实验
实验4组合逻辑电路设计(编码器和译码器)

实验四组合逻辑电路设计(编码器和译码器)一、【实验目的】1、验证编码器、译码器的逻辑功能。
2、熟悉常用编码器、译码器的逻辑功能。
二、【实验原理】1.编码器编码器是组合电路的一部分,就是实现编码操作的电路,编码实际上是和译码相反的过程。
按照被编码信号的不同特点和要求,编码也分成三类:(1)二进制编码器:如用门电路构成的4-2线,8-3线编码器等。
(2)二—十进制编码器:将十进制0~9编程BCD码,如10线十进制-4线BCD码编码器74LS147等。
(3)优先编码器:如8-3线优先编码器74LS148等。
2.译码器译码器是组合电路的一部分。
所谓译码,就是把代码的特定含义“翻译”出来的过程,而实现译码操作的电路称为译码器。
译码器分成三类:(1)二进制译码器:如中规模2-4线译码器74LS139,3-8线译码器74LS138等。
(2)二—十进制译码器:实现各种代码之间的转换,如BCD码——十进制译码器74LS145等。
(3)显示译码器:用来驱动各种数字显示器,如共阴数码管译码器驱动74LS48,共阳数码管译码驱动74LS47等。
三、【实验内容与步骤】1.编码器实验将10—4线(十进制—BCD码)编码器74LS147集成片插入IC空插座中,管脚排列如下图4-1所示。
按下图4-2接线,其中输入端1~9通过开关接高低电平(开关开为“1”、开关关为“0”),输出QD、QC、QB、QA接LED发光二极管。
接通电源,按表输入各逻辑电平,观察输出结果并填入表4-1中。
图4-1 74LS147集成芯片管脚分布图图4-1 10—4线(十进制—BCD码)编码器接线图表4-1十进制—BCD码编码器功能表输入输出1 2 3 4 5 6 7 8 9 QD QC QB QA 1 1 1 1 1 1 1 1 1 1 1 1 1 ××××××××0×××××××0 1××××××0 1 1×××××0 1 1 1××××0 1 1 1 1×××0 1 1 1 1 1××0 1 1 1 1 1 1×0 1 1 1 1 1 1 10 1 1 1 1 1 1 1 1注:表中×为状态随意。
实验四 求循环码的最小汉明距离

实验四求循环码的最小汉明距离一、实验题目1、输入码的生成多项式;2、输出码的最小汉明距离。
二、实验目的1、理解和掌握循环码的概念以及生成方法;2、求出循环码的最小距离。
三、算法设计四、程序分析1.采用Matlab编程;2.cyclpoly(15, 4,'all')函数用来产生(15,4)循环码的所有生成多项式;3.circshift()函数是进行移位操作函数;4.sym2poly()函数是将多项式转化为矩阵表示形式;5.expand(x^r*m)函数是对m进行左移r位的操作;五、程序代码syms x ;G=cyclpoly(15, 4,'all');%求出所有的生成多项式功能:产生循环码的生成多项式g=G(2,:);%选择所有生成多项式中的第二个作为(15,4)循环码的生成多项式r=15-4 ; %监督位数m=x^3+x^2+1; %信息码元m1=expand(x^r*m); %用x^r乘以m,相当于对m进行左移r位的操作m2=sym2poly(m1); %将多项式转化为矩阵表示形式[Q,R] = DECONV(m2,g); %求m2除以g所得的余数%由于在求解余数时是按照一般的算术运算计算的,%而实际要求的为模2运算,转化为模2运算R=abs(R);for i=1:length(R)R(i)=mod( R(i),2);end%C(X)=x^r*m(x)+x^r*m(x)/g(x)T=R+m2 ;%T为生成的一个循环码字T2(1,:)=T;[W,L]=size(T);%将T2循环移位,得到其他的码字for i=1:L-1T2(i+1,:)=circshift(T2(i,:),[0,1]);endY=[zeros(1,L);T2]; %Y矩阵为生成的全部码字%求最小汉明距离t=1;for i=1:15for j=i+1:16M(t,:)=(Y(i,:)~=Y(j,:));t=t+1;endend%分别比较两行中不同的元素S=(sum(M,2))'; %将M矩阵的每一行求和,得出任意两个码字之间的距离d=min(S); %最小汉明距离display(d);六、程序运行结果七、心得体会刚刚接触Matlab不久,对于Matlab里的函数不是十分了解,在解读程序时需要将函数一个个打开,解读它的注释,了解函数的算法;经过对程序细致的解读,不但对求循环码的最小汉明距离有了更深的了解,对Matlab的软件也有了更多的掌握,可谓收获颇丰。
《实用编解码技术》实验指导书 (1)

实用编解码技术实验指导书肖军编写大连东软信息学院循环码码的编码和译码一、实验目的1、巩固循环码码的编码和译码的理论知识2、利用matlab仿真实现循环码码的编码和译码过程3、利用C语言来实现线循环码码的编码和译码过程二、参考资料和基础知识1、理论知识:教材第四章内容2、matlab基础知识:第一次试验内容和教材109-119页三、循环码的原理循环码除了具有线性码的一般性质外,还具有循环性。
循环性是指任一码组循环一位(即将最右端的一个码元移至左端,或反之)以后,仍为该码中的一个码组。
在表1中给出一种(7,3)循环码的全部码组。
由此表可以直观看出这种码的循环型。
例如,表中的第2码组向右移一位即得到第5码组;第6码组向右移一位即得到第7码组。
一般说来,若(0121aaaann )是循环码的一个码组,则循环移位后的码组,也是该编码组中的码组。
由于循环码具有码的代数结构清晰、性能较好、编译码简单和易于实现的特点,因此在目前的计算机纠错系统中所使用的线性分组码几乎都是循环码。
它不但可以纠正独立的随机错误,也可用于检测突发错误并且非常有效。
),(kn 循环码能够检测长为kn 或更短的任何突发错误;其中n 为码长,k 为信息位数。
循环码多项式表示在代数编码理论中,为了便于计算,把这样的码组中各码元当作是一个多项式的系数,即把一个长度为n 的码组表示成:例如,表1中第7个码组可以表示为:在循环码中,一个),(k n 码有2k 个不同的码组。
若用)(x g 表示其中前)1(-k 位皆为“0”的码组,则)(,),(),(),(12x g x x g x x xg x g k -⋯都是码组,而且这k 个码组是线性无关的。
对于(n,k )循环码中的生成多项式g (x ),它是(n,k)循环码码集中唯一的,幂次为n-k 的码多项式,则()k x g x 是一个幂次为n 的码多项式。
按模(1n x +) 运算,此时:1)()(1)(++=+n n k x x R x Q x x g x ,R (x )余数多项式 (2-2) 即 ()()k x g x R x ≡,且因()k x g x 也是n 阶幂,故Q(x)=1.由于它是循环码,故()k x g x 按模(1n x +)运算后的“余式”也是循环码的一个码字,它必能被g(x)整除,即:)()()(x F x G x R = (2-3) 由以上两式可以得到:)()()1()()1)(()(x G x F x x R x x Q x g x n n k ++=++= (2-4)和 ()()()1n k x x F x G x +=+ (2-5)从上式中可以看出,生成多项式g(x)应该是1n x +的一个因式,即循环码多项式应该是1n x +的一个n-k 次因式。
基于FPGA的(7,4)循环码编码和译码的实现

基于FPGA的(7,4)循环码编码和译码的实现摘要:循环码在实际通信中被广泛使用,因为它可以提高信息传输的可靠性和有效性。
随着FPGA芯片的普及,其在各个领域的已广泛使用。
本文在简单的理论分析上,描述了在FPGA中实现(7,4)循环码的编码与译码的实现方案。
关键词:(7,4)循环码FPGA 编码译码1.引言现场可编程逻辑门阵列(FPGA),是一个含有可编辑元件的半导体设备,可供使用者现场程式化的逻辑门阵列元件。
目前以硬件描述语言(Verilog 或VHDL)所完成的电路设计,可以经过简单的综合与布局,快速的烧录至FPGA 上进行测试,是现代IC 设计验证的技术主流。
为了使信号具有较好的抗干扰能力,就要对信号加以改造,使信号内部结构具有更强的规律性和相互关联性,以致在噪声破坏了信号的结构时,仍能根据信号原有的内在规律性和相互关联性来发现错误,甚至改正错误,恢复原有的信息。
其一般方法是:按照某种规律,对原来的码组添加一些新的码元——监督码元,而原码组中的码元则称为信息码元。
监督码元的作用是监督该码组在传输过程中是否发生了错误,甚至指出是哪位或哪些码元发生了错误,以便纠正,添加监督码元的方法(规律或规则)不同,就形成不同的编码方法。
2.(7,4)循环码在通信系统中,为提高信息传输可靠性,广泛使用了具有一定纠错能力的信道编码技术,某(7,4)循环码的生产多项式是:,则其生成矩阵是,具体结果见表其中:,,,并根据生成矩阵与监督矩阵的关系G·H=0从而得到:(2)根据公式(2)可得到:(3)3.编码与译码“公式(3)”表达了根据信息码元值得到各个监督码元值的运算公式,根据这些公式,我们可以得到信息元值与监督元值的具体关系。
在FPGA中进行(7,4)循环码的编码时,可以根据“公式(3)”编写算法由信息码元值来计算监督码元值,也可以采用查表法由信息码元来计算监督码元。
后面一种方法不适用于信息码元位数及监督码元位数较多的循环码,因为这时列出情况较多,其编程较前种方法较复杂。
循环码实验报告

循环码实验报告循环码实验报告引言:循环码是一种在信息传输和存储中广泛应用的编码技术。
其具有纠错能力强、编码效率高等优点,因此在通信领域得到了广泛的应用。
本实验旨在通过实际操作,探索循环码的原理、编码和解码过程,并对其性能进行评估。
一、实验目的1. 了解循环码的基本原理和编码过程;2. 掌握循环码的解码方法;3. 评估循环码的纠错能力和编码效率。
二、实验步骤1. 生成循环码通过给定的生成多项式,使用编码器生成循环码。
生成多项式是循环码的重要参数,它决定了编码和解码的方式。
2. 添加错误位为了评估循环码的纠错能力,我们需要在生成的循环码中添加一定数量的错误位。
通过改变错误位的位置和数量,可以观察到循环码的纠错效果。
3. 解码使用循环码的解码器对添加错误位的循环码进行解码。
解码过程中,通过计算校验位和检测错误位的位置,可以进行纠错。
4. 评估性能根据解码结果,评估循环码的纠错能力和编码效率。
纠错能力可以通过计算纠错率来衡量,而编码效率可以通过计算编码后的码字长度与原始数据长度的比值来评估。
三、实验结果与分析在实验中,我们选择了一个生成多项式为G(x)=x^3+x+1的循环码进行测试。
通过编码器生成了一组循环码,并添加了不同数量的错误位。
然后,使用解码器对添加错误位的循环码进行解码。
在纠错能力方面,我们发现当错误位数量较少时,解码器可以有效地纠正错误,并恢复原始数据。
然而,当错误位数量超过循环码的纠错能力时,解码器无法正确恢复原始数据。
在编码效率方面,我们发现循环码的编码效率较高。
通过计算编码后的码字长度与原始数据长度的比值,我们可以得出编码效率为80%。
这意味着在传输或存储数据时,循环码可以有效地减少数据的长度。
四、实验总结通过本次实验,我们深入了解了循环码的原理、编码和解码过程,并对其性能进行了评估。
实验结果表明,循环码具有较强的纠错能力和高效的编码效率,适用于各种通信和存储场景。
然而,循环码也存在一些限制。
二进制(7,4)循环码编码器与译码器的仿真

二进制(7,4)循环码编码器与译码器的仿真摘要:1.全文概述2.二进制(7,4)循环码编码器原理3.二进制(7,4)循环码译码器原理4.仿真实验及结果分析5.总结正文:【提纲1】1.全文概述本文主要介绍了二进制(7,4)循环码编码器与译码器的仿真设计。
通过编码器将7位二进制信息编码为4位二进制码,再通过译码器将4位二进制码还原为7位二进制信息。
文中详细阐述了编码器与译码器的原理,并进行了仿真实验及结果分析。
【提纲2】2.二进制(7,4)循环码编码器原理二进制(7,4)循环码编码器是一种将7位二进制信息编码为4位二进制码的编码器。
其原理如下:- 首先,将7位二进制信息进行分组,每组包含4位二进制数;- 然后,对每组4位二进制数进行异或操作,得到对应的4位二进制码;- 最后,将得到的4位二进制码进行循环移位,得到最终的编码结果。
【提纲3】3.二进制(7,4)循环码译码器原理二进制(7,4)循环码译码器的原理与编码器相反。
首先,将4位二进制码进行循环移位,得到原始的4位二进制数。
然后,对每个4位二进制数进行解码,得到对应的7位二进制信息。
解码过程主要包括:- 将4位二进制码转换为12位二进制码;- 对12位二进制码进行分组,每组包含7位二进制数;- 对每组7位二进制数进行译码,得到原始的7位二进制信息。
【提纲4】4.仿真实验及结果分析为了验证二进制(7,4)循环码编码器与译码器的正确性,本文进行了仿真实验。
实验结果表明,编码器能够将7位二进制信息正确编码为4位二进制码,译码器能够将4位二进制码还原为7位二进制信息。
通过对比编码前后的信息,证明了编码器与译码器的有效性。
【提纲5】5.总结本文对二进制(7,4)循环码编码器与译码器进行了详细阐述,并进行了仿真实验。
结果表明,该编码器与译码器能够实现二进制信息的编码与解码。
程序解释-循环码编码与译码
班级:07804 姓名:谢飞鹏学号:072335 班内序号11
利用matlab实现循环码的编码与译码:
例:
输入数据:
n=7; %码长度
k=4; %信息位长度
u=[1 0 1 1 1]; %信息序列,左边低位,右边高位
e=[0 0 0 1 0 0 0 1]; %干扰信号,左边低位,右边高位
在这里,信息序列u并不是k的整数倍,程序会自动给高位补零,使得构成k的整数倍的信息序列,然后将信息序列按长度为k进行分组,分别编码输出;
输入干扰信号不等于输出编码长度,程序进行高位补零,使得干扰信号长度与输出编码长度相等。
输出数据:
生成多项式
g = 1 0 1 1
编码输出
c = 0 0 0 1 0 1 1 1 0 1 1 0 0 0
译码器输入y1=c+e
y1 = 0 0 0 0 0 1 1 0 0 1 1 0 0 0
错误图样:
e2 = 0 0 0 1 0 0 0 1 0 0 0 0 0 0
译码器输出:
cs = 0 0 0 1 0 1 1 1 0 1 1 0 0 0。
实验四 线性分组码的信道编码和译码
一、实验目的
熟悉 Matlab 工作环境及工具箱; 掌握线性分组码的编码、译码原理以及纠错原
理。
二、实验原理
信源发出的信息序ቤተ መጻሕፍቲ ባይዱ通常不能直接传送给信道传输, 它们需要经过某种变换使其适合信道传输。
变换——编码和译码 信道编码:
降低平均差错率,提高传送的可靠性——纠错编码。 纠错编码:
例如,对于(5,2)分组码,N=5,K=2,其编码函数f
为:信息组是二元符号序列,用矩阵表示为m=[m1,m2] 码字长度为N=5,用矩阵表示为C=[C1,C2,C3,C4,C5]
编码函数f
由编码函数可知:c(码字)=m(信息矩阵)G(生成矩阵) 生成矩阵
生成矩阵确定以后,由编码函数的后三个方程可以确 定检验方程。
检验方程的矩阵形式为:CHT=0或HCT=0, H称为一致 性校验矩阵。
一致性校验矩阵如下:
一般情况下:G是k*N生成矩阵;H为r*N一致性校验 矩阵,r =N-k为校验数目。
H和G的关系为:G=[Ik*K Ak*r] H=[Ak*r Ir*r] 纠错译码时,若发送码字为 c ,则接收序列为 y ,校
是引入可控冗余,在信息序列中加入一些冗余码元, 或称校验码元,组成一个相关的码元序列——码字, 译码时利用码元之间的相关性质来检测和纠正错误。
分组码 将信息序列分成K个符号一组,称为信息组,然后,在 信息组中加入一些校验码元,组成N长码字,由此得到 (N,K)分组码。(N,K)分组码中任一码字的码长 为N,所含的信息位数目为K,校验位数目为r=N-K。
正s=y*HT=e*HT 。
因此,可以得到译码 c=y e 。 其中,e称为差错图样。 S是传输是否出错的标志,称为伴随式。
实验四 线性分组码的信道编码和译码
一致性校验矩阵如下:
一般情况下:G是k*N生成矩阵;H为r*N一致性校验 矩阵,r =N-k为校验数目。
H和G的关系为:G=[Ik*K Ak*r] H=[Ak*r Ir*r] 纠错译码时,若发送码字为 c ,则接收序列为 y ,校
实验四 线性分组码的信道编码和译码
一、实验目的
熟悉 Matlab 工作环境及工具箱; 掌握线性分组码的编码、译码原理以及纠错原
理。
二、实验原理
信源发出的信息序列通常不能直接传送给信道传输, 它们需要经过某种变换使其适合信道传输。
变换——编码和译码 信道编码:
降低平均差错率,提高传送的可靠性——纠错编码。 纠错编码:
简述实验目的; 简述实验原理; 根据不同的线性分组码,观察生成矩阵和校验
矩阵的特性。 根据不同的线性分组码,分析检错和纠错能力。
正s=y*HT=e*HT 。
因此,可以得到译码 c=y e 。 其中,e称为差错图样。 S是传输是否出错的标志,称为伴随式。
三、实验内容
(5,2) 线性分组码的最小汉明距离为dmin=3,能够检出 2位错误或纠正1位错误。
线性分组码的信道编码和译码流程图 信道编码流程图
译码流程图
四、实验报告要求
例如,对于(5,2)分组码,N=5,K=2,其编码函数f
为:信息组是二元符号序列,用矩阵表示为m=[m1,m2] 码字长度为N=5,用矩阵表示为C=[C1,C2,C3,C4,C5]
编码函数fห้องสมุดไป่ตู้
由编码函数可知:c(码字)=m(信息矩阵)G(生成矩阵) 生成矩阵
生成矩阵确定以后,由编码函数的后三个方程可以确 定检验方程。
——循环码的译码
02
——循环码的基本概念
——循环码的数学基础
有限域理论
循环码是基于有限域理论的一种纠错码,涉及到的数学基础 包括域、环、多项式等概念。
线性代数
循环码可以看作是线性代数中的向量空间,涉及到向量、矩 阵、线性变换等概念。
——循环码的物理结构
编码器
循环码的编码器通常由移位寄存器和模二加法器组成,用于将信息位转化为 循环码的形式。
译码器
循环码的译码器通常由移位寄存器和模二减法器组成,用于将循环码转化为 原始信息位。
——循环码的特点和优势
特点
循环码具有误码纠正能力、易于实现、编码效率高等特点。
优势
循环码在通信、数据存储、数字信号处理等领域得到广泛应用,具有较好的性能和可靠性。
03
——循环码的编码原理及实现
——循环码的编码算法
04
——循环码的译码算法及性能分析
——循环码的译码算法
1
循环码的译码算法主要有两种:最大似然译码 (MLD)和维特比译码(Viterbi)。
2
MLD是根据接收到的信号序列,寻找最有可能 的发送序列,它是一种贪心算法。
3
Viterbi译码是一种动态规划算法,通过遍历所 有可能的发送序列,找出最有可能的发送序列 。
在通信系统中,由于信道噪声或其他因素的影响,接收到的 信号可能存在误差,需要进行纠错,循环码作为一种广泛应 用于通信系统的纠错码,具有较好的性能,因此对循环码的 译码研究具有实际应用价值。
——循环码简介
——循环码是一种线性码,其编码和解码方法与循环移位 操作相关,具有较好的性能和简单的编码、解码算法。
——循环码具有良好的纠错性能和较低的误码率,在实际 应用中具有广泛的应用价值,如移动通信、卫星通信、数 据存储等领域。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程名称: 通信原理实验
题 目:实验四 循环码编、译码实验
学生姓名:
专 业: 电子信息工程
班 级: 电信10-2班
学 号:
指导教师: 陈 信
日 期: 2012 年 12 月 5 日
2
实验四 循环码编、译码实验
一、 实验目的
了解生成多项式g(x)与编、译码器之间的关系,码距与纠、检错能力之间
的关系。
二、 实验内容
1. 根据编码规则验证循环码的生成多项式
1)(4569xxxxxxg
。
2. 通过实验了解循环码的工作原理。
(1) 了解生成多项式g(x)与编码及译码的关系。
(2) 了解生成多项式g(x)与码距d的关系。
(3) 了解码距d与纠、检错能力之间的关系。
(4) 观察该码能纠几个错误码元。
(5) 观察循环码的循环性以及封闭性。
3.通过实验了解编、译码器的组成方框图及其主要波形图。
4.了解信道中的噪声对该系统的影响。
三、 基本原理
1.总原理方框图(图1)。
图1
循环码的编、译码系统由下列五部分组成:定时单元、信码发生器及显示部
分、编码器、模拟信道部分(包括错码发生器及显示部分)和译码器。
(1) 定时单元
3
本单元提供编码器及译码器所需的时序信号。其时钟重复频率(CP)为2MHZ。
(2)信码发生器
本单元给编码器提供一个信号源,手控开关(板上CDIN)置于+5V时,发光
二极管亮,代表输出“1”码元。若开关置于“0”,代表输出“0”码元。根据二
极管亮与否可在面板上直接读出所需信码。信码从“000000”„“111111”共有
26=64种状态,代表64个码字。每一个码字均由手控开关组成,在帧脉冲信号的
作用下,与门开启,手控信号并行输入移位寄存器(D触发器)的S端。当脉冲
消失后,随着时钟脉冲CP的作用,CDIN串行输出所需的码元。
(3)循环码编码器原理
编码器是本实验的主要部分。
根据生成多项式1)(4569xxxxxxg,采用5个异或门和D触
发器组成编码器。
在K1信号的控制下,输入6位信息码元CDIN,一方面串行输入信道(即至
收端译码器中的6位移存器),另一方面通过与门送入除法电路进行计算。第6
位输入码元结束时,K1信号也为零,在CP脉冲作用下,移位寄存器将计算的结
果(CDOUT)送往信道,即在6位信息码元后附加了9位监督码,使码长(n=K+r)
为15。
(4)模拟信道传输错误部分
严格说编码输出的基带信号发往信道,若信道为有线的,需加均衡设备;若
为无线信号,需加调制设备。本实验的目的是观察编码输出波形及该波形经过信
道后纠错能力,尽量省去附加设备。本实验设计了一个15位错码发生器(板上
ECD框内)可在不同位置使用开关任加“1”码,并使相应的发光二极管发光,
显示错码产生的位置(如图2所示)。
图2 位错码发生器
4
15位错码发生器的原理与前述信码发生器一样,不再详述。错码发生器产生
的“1”码与编码器输出的信号CDOUT相异或,产生的码即为错码,经过模拟信
道部分,输出的信码为带有错误的码元。如编码器输出的信码为110011,经过
该信道,信道输出错误码为000110,送入译码器去的信号即为110101。
(5)译码方框图及原理介绍
译码器方框图见图3。
图3 译码器方框图
经过信道加错后的信码,在K1信号的作用下,进入6位移存器,同时另一
路进入除法电路进行伴随式计算,当6个信码全存人移存器时,电子开关置于
“0”,此时信码保存在移存器中,同时另一路已进入除法器的信码,在CP脉冲
的作用下,进入除法电路及正交方程形成网络、大数逻辑判决电路。由于本实验
最小码间距离d0=6,故最多能纠正两位错码,若错码个数在2个以内,该系统
能自行纠正,纠正后的信码通过电子开关进入移存器,并在显示信号K3的作用
下,若发光二极管亮表示“1”码,不亮表示“0”码。此时译码信号是并行输出
至显示部分的,它显示的信号应与信源显示的一一对应(注意此时信道干扰产生
的错码只能是1个或2个)。假如信道中错误个数已超过该码纠错能力(即超过
2),那么译码显示与编码显示不能对应。
正交方程的定义是:假定最高错误码元为e14,其次e13,此类推至e0,即
e14在每个方程中均出现一次,而其它错误码元在4个方程组中出现一次,正交
方程组如下:
5
。,,,7810140026141151314231112143eeeeS
eeeeS
eeeeS
eeeeS
由正交形成网络输出至大数逻辑判决电路,由四个三与非门及四输入与非门
组成。该电路输出信号通过与门在K2信号作用下,一方面进入除法电路进行伴
随式复位,另一方面进入异或门,与6位移位寄存器中相应的信号相加(最高位)。
已纠正的码经过与门又存在相应的移位寄存器中。
6位移位寄存器将纠正后的正确码字在显示脉冲K3作用下并行输出。
在2个错误码元以内本电路能自行校正,译码器显示的码与编码器显示的码
应一致。
如果错误码元超过2个,译码电路会产生错纠现象,译码显示电路显示的码
与编码器不一样,即使一样也是巧合。
四、实验内容
准备工作:
1、按实验板上所标的电源电压开机,调准所需电压,然后关机;
2、把实验板电源连接线接好;
3、开机注意观察电流表
正电流 +I<250mA
若与上述电流差距太大,要迅速关机,检查电源线有无接错或其它原因。
在介绍基本原理时,已经对循环编译码实验电路的总体方案作了介绍,这是
纠错码实验的一种方案。
1.实验前,复习有关线性码及循环码的教材和参考书。并用编码规则验证循
环码的生成多项式。
2.以时钟CP为准,观察编码器的输出波形。)
(1) 把双踪示波器的一路接至CP,另一路接至输出信码,以时钟CP为准,
观察编码器的输出波形中前6位信息码的波形CDIN。若示波器上显示高电平,
面板上的发光二极管相应发应亮,若为低电平,发光二极应熄灭。(如图4所示)
6
图4
(2) 在CDOUT观察附加在信息码后的9位监督的波形,并与理论结果比较,
观察是否一致。
根据已验证的生成多项式1)(4569xxxxxxg 求得每一码字
的余式)(xr 。
理论计算得到码字应为:
)()()(xrxmxxTkn
m(x)为信息码,由板上开关(CDIN框内)手控获得。6位信息码元可以组
成26=64个二进制码字。由上述公式计算得64循环码字,如附表1所示。注意
与实际示波器观察到的波形是否一致。
(3) 将示波器观察到的编码输出信号成表格。观察循环码的主要性质:
循环性和封闭性。
3.观察信道干扰(双踪示波器一路接CDOUT,另一路接ECD)。
(1)若译码板上模拟错码发生器开关均控制在“0”(相应的发光二极管不
亮),则二路波形应一致。(如图5所示)
图5
7
(2)手控错码发生器开关某一位,使其相应的发光二极管“亮”,表示有一
个错码,此时示波器的两路波形中有一个对应位码元不同(即产生一位错码)。
以此类推,可以控制15个以内的任何一个或几个码元产生错误。(如图6所示)
图6
4.观察经过译码器后,该码的纠错能力。
(1)若信道加入1个或2个错误,译码显示电路与信码显示电路一致,则
表示该码能纠正2个以下的错误。(如图7所示)
图7
(2)若信道加入3个或3个以上错误,译码显示电路与编码显示电路不一
致,则表示错误码元超过该码纠错能力,译码电路将产生乱纠现象。(如图8,9
所示)
8
图8
图9
思考题
1.求出本实验循环码的最小码距、及检错纠错能力并与实验结果进行比较。
本实验的最小码距为6位,检错能力为5位,纠错能力为2位。
2.已知码字010011,用本实验生成多项式,求出循环码的码字,并与附表
1进行比较。
循环码的码字为010011100110000,与附表1的一致。