文档库 最新最全的文档下载
当前位置:文档库 › CRC 卷积码

CRC 卷积码

CRC 卷积码
CRC 卷积码

重庆交通大学信息科学与工程学院综合性设计性实验报告

专业:通信工程专业11级

学号:

姓名:

实验所属课程:第三代移动通信及其演进技术

实验室(中心):软件与通信实验中心

指导教师:吴仕勋

2014年5月

一、题目

第三代移动通信的信道编码:循环冗余校验码和卷积码的性能仿真

二、仿真要求

要求一:随机产生一帧数据,然后加循环冗余校验码,判断该帧是否错误,如果错误抛弃。调制采用BPSK,只有高斯白噪声,没有信道衰落。

要求二:比较未进行信道编码和进行卷积编码的接收端BER性能。

要求三:画出横坐标是SNR,纵坐标是BER的曲线图。

三、仿真方案详细设计

CRC原理

将待发送的位串看成系数为0 或 1 的多项式;

例:C=1100101

那么: C(x)=1*x6+1*x5+0*x4+0*x3+1*x2+0*x1+1*x0

收发双方约定一个生成多项式G(x)(其最高阶和最低阶系数必须为1),发送方用位串及G(x)进行某种运算得到校验和,并在帧的末尾加上校验和,使带校验和的帧的多项式能被G(x) 整除; 接收方收到后,用G(x) 除多项式,若有

余数,则传输有错。

CRC校验和计算法:

1.若生成多项式 G(x) 为 r 阶(即r+1位位串),原帧为 m 位,其多项式为 M(x),则在原帧后面添加 r 个 0,即循环左移r位,帧成为 m+r 位,相应多项式成为 xrM(x);

2.按模2除法用 G(x)对应的位串去除对应于 xr M(x) 的位串, 得余数 R(x);

3.按模2减法(即模2加)从对应于 xr M(x) 的位串中减去(加上)余数 R(x),结果即传送的带校验和的帧多项式T(x)。

卷积码

以(2,1,3)卷积码编码为例,下图为编码原理图:

∑∞

-∞=-?=

m m n x m h n y )()()(卷积公式: 上图表明:任一时刻编码器的输出可以由信息元与生成序列的离散卷积运算求出。这就是卷积码名称的由来。

四、仿真结果及结论

1010101010100SNR(dB)B E R

结论:从图中可以看出不管是采用卷积码编码信道还是不编码信道,我们的接收端BER都会随着信噪比的增加而不断的减小,信道干扰越小,接收越错误率越小,在同一信噪比下编码的比未编码的BER性能更好,不管是何种编码。说明就是信道编码提高了信息传输的可靠性。可以看出卷积码是一种非常好的编码方法。CRC(循环冗余校验码)对接收的纠错检错来说是很重要的。也是一种相当重要的编码。

五、总结与体会

CRC检验原理实际上就是在一个p位二进制数据序列之后附加一个r位二进制检验码(序列),从而构成一个总长为n=p+r位的二进制序列;附加在数据序列之后的这个检验码与数据序列的内容之间存在着某种特定的关系。如果因干扰等原因使数据序列中的某一位或某些位发生错误,这种特定关系就会被破坏。因此,通过检查这一关系,就可以实现对数据正确性的检验。卷积码将k 个信息比特编成n个比特,但k和n通常很小,特别适合以串行形式进行传输,时延小。与分组码不同,卷积码编码后的n个码元不仅与当前段的k个信息有关,还与前面的N-1段信息有关,编码过程中互相关联的码元个数为nN。卷积码的纠错性能随N的增加而增大,而差错率随N的增加而指数下降。在编码器复杂性相同的情况下,卷积码的性能优于分组码。

信源编码提高了信息传输的有效性,信道编码提高了信息传输的可靠性。

六、主要仿真代码

clear all;

clc;

EsNodB=0:10;

N_frame=5000;

N_bits=128;

for k=1:length(EsNodB)

EsNo=EsNodB(k);

uncode_err_frame=0;code_err_frame=0;

error1=0;error2=0;

for m=1:N_frame

msg=randint(1,N_bits); %随机产生0、1bit流

%CRC循环冗余校验码判定

g=[1,zeros(1,5),1,1,1]; % generator polynomian,CRC-8 :

x8+x2+x+1;

msg_crc=crc_encode(msg,g); %添加CRC

%未编码错误帧和bit错误

[frame_error,biterror]=uncode_frame_bit_error(msg_crc,EsNo,g,msg);

uncode_err_frame=uncode_err_frame+frame_error;

error1=error1+biterror;

%编码错误帧和bit错误

[frame_error1,biterror1]=code_frame_bit_error(msg_crc,EsNo,g,msg);

code_err_frame=code_err_frame+frame_error1;

error2=error2+biterror1;

end

err_frame1(k)=uncode_err_frame/N_frame;

err_frame2(k)=code_err_frame/N_frame;

ber1(k)=error1/N_bits/(N_frame-uncode_err_frame);

ber2(k)=error2/N_bits/(N_frame-code_err_frame);

end

semilogy(EsNodB,err_frame1,'-*',EsNodB,err_frame2,'-+',EsNodB,ber1,' -s',EsNodB,ber2,'-h');

grid on;

xlabel('SNR(dB)');

ylabel('BER');

legend('未编码帧错误率','编码帧错误率','未编码bit error','卷积码bit error');

function

[uncode_err_frame,error1]=uncode_frame_bit_error(msg_crc,EsNo,g,msg) %未编码错误帧和bit错误

r_msg_crc=mod_demod_bpsk(msg_crc,EsNo);

flag1=crc_decode(r_msg_crc,g);

uncode_err_frame=0;error1=0;

if flag1==0

uncode_err_frame=uncode_err_frame+1;

else

error1=sum(r_msg_crc(1:length(msg))~=msg);%未编码错误

end

end

function output=mod_demod_bpsk(input,snr_db)

E=1;

snr=10^(snr_db/10);

sigma=sqrt(E/(2*snr));

decis=zeros(1,length(input));

for i=1:length(input),

% matched filter outputs

if (input(i)==0),

r0=E+sigma*randn;

r1=sigma*randn; % if the source output is "0" else

r0=sigma*randn;

r1=E+sigma*randn; % if the source output is "1" end;

% Detector follows.

if (r0>r1),

decis(i)=0; % Decision is "0".

else

decis(i)=1; % Decision is "1".

end

end

output=decis;

function msg_check=crc_encode(msg,g)

msg_zero=[msg,zeros(1,length(g)-1)];

[div,remaider]=deconv(msg_zero,g);

crc_check=mod(remaider(end-length(g)+2:end),2);

msg_check=[msg,crc_check];

end

function flag=crc_decode(r,g)

%解码

[div1,rem1]=deconv(r,g);

crc_check1=mod(rem1(end-length(g)+2:end),2);

if isequal(crc_check1,zeros(1,length(crc_check1)))

flag=1;

else

flag=0;

end

function

[code_err_frame,error2]=code_frame_bit_error(msg_crc,EsNo,g,msg) %code error frame and bit% Encode data bits

trel=poly2trellis(3,[7 5]);% define trellis

b=convenc(msg_crc,trel); % encode

%modulation and demodulate

decis=mod_demod_bpsk(b,EsNo);

r_msg_crc1=vitdec(decis,trel,3,'trunc','hard');

flag2=crc_decode(r_msg_crc1,g);

code_err_frame=0;error2=0;

if flag2==0

code_err_frame=code_err_frame+1;

else

error2=sum(r_msg_crc1(1:length(msg))~=msg);%code error

end

end

移动通信实验线性分组码卷积码实验

实验二抗衰落技术实验(4学时) 1.线性分组码实验 2.卷积码实验 姓名: 学号: 班级: 日期: 成绩:

1、线性分组码实验 一、实验目的 了解线性分组码在通信系统中的意义。 掌握汉明码编译码及其检错纠错原理,理解编码码距的意义。二、实验模块 主控单元模块 2号数据终端模块 4号信道编码模块 5号信道译码模块 示波器 三、实验原理

汉明码编译码实验框图 2、实验框图说明 汉明码编码过程:数字终端的信号经过串并变换后,数据进行了分组,分组后的数据再经过汉明码编码,数据由4bit变为7bit。 注:为方便对编码前后的数据进行对比观测,本实验中加入了帧头指示信号。帧头指示信号仅用于线性分组码编码时将输入信号的比特流进行分组,其上跳沿指示了分组的起始位置。 四、实验步骤 (注:实验过程中,凡是涉及到测试连线改变或者模块及仪器仪表的更换时,都需先停止运行仿真,待连线调整完后,再开启仿真进行后续调节测试。) 任务一汉明码编码规则验证 概述:本项目通过改变输入数字信号的码型,观测延时输出,编码输出及译码输出,验证汉明码编译码规则。 1、登录e-Labsim仿真系统,创建实验文件,选择实验所需模块和示波器。 2、按表格所示进行连线。 3、调用示波器观测2号模块的DoutMUX和4号模块的编码输出TH4编码数据,

6、此时系统初始状态为:2号模块提供32K编码输入数据,4号模块进行汉明码编码,无差错插入模式,5号模块进行汉明码译码。 7、实验操作及波形观测。 0000 0001 0010

0100 0101

0111 1000

卷积码在通信系统中的应用

卷积码在通信系统中的应用 一、基本概念 卷积码是一种性能优越的信道编码。(n,k,N)表示把k个信息比特编程n 个比特,N为编码约束长度,说明编码过程中互相约束的码段个数。卷积码编码后的n个码元不仅与当前组的k个信息比特有关,而且与前N-1个输入组的信息比特有关。编码过程中相互关联的码元有N乘以n个。R/n是卷积码的码率,码率和约束长度是衡量卷积码的两个重要参数。 二、应用 卷积码因其编码器he译码器都比较容易实现,同时具有较强的纠错能力,卷积码在通信系统中被广泛采用。 2.1、卷积码在无线通信中的应用 在无线信道中,由于环境的影响及外来无线信号的干扰,通信质量较有线信道差许多。接收机收到的数据会出现随机噪声引起的随机错误和衰弱引起的突发错误,为了提高系统的抗噪声和抗衰弱性能,必须设计合理的信道编译码部分,增加码字的冗余度和码字间的码距,而且要求不仅可以纠正随机错误,更重要的是还可以纠正突发错误。因此,在无线通信中,信道编码得到了广泛的应用。这里将以NRF401芯片为通信收发电路来介绍卷积码在无线通信中的应用。NRF401收发电路芯片,采用蓝牙核心技术,芯片内部包含了高频发射、高频接收、PLL合成、FSK调制、FSK解调、多频道切换等功能。 如上图所示,这里介绍了一个采用(2,1,7)的卷积码编码,图为无线通信系统的结构。

无线通信系统的通信距离与传输损耗和接收机灵敏度相关。传输损耗包括自由空间损耗和其他传输损耗,自由空间传播系指天线周围为无限大真空时的电波传播,它是理想传播条件,自由空间传播损耗与距离和工作频率有关。下面的公式说明在自由空间下电波传播的损耗: Los是传播损耗,单位为dB;d是距离,单位是km;f是工作频率,单位是MHz。 由上式可见,自由空间中的电波传播损耗只与工作频率f和传播距离d有关,当f或d增大1倍时,Los讲分别增加6dB。 下面举例nRF401采用环形低增益天线时的通信距离R的计算: f0=434MHz() 发射功率 发射天线增益 接收天线增益 接收机灵敏度S=-105dBm 这是理想状况下的传输距离,实际应用中低于该值,这是因为无线通信受到各种外界因素的影响,如大气、阻挡物、多径等造成的损耗,将上述损耗的参考值计入上式中,即可计算出近似通信距离。实际应用时,在50m传输距离内有效。 由上表可知(7,1,2)卷积码有3.8dB的编码增益,相当于接收机的灵敏度可提高3.8dB,故此S=-108.8dBm,Lp=S-Pt-=-74.8dB,可推算出在卷积码

卷积码 - 副本

卷积码的维特比译码的性能 专业年级:07级通信工程3班 学号:0706020306 指导教师:李岳衡 姓名: 陈慧 2011-06 中国南京

摘要 本文基于信道编码的基本理论,重点讨论了卷积码的基本概念,对于卷积码的编码的基本理论和技术也进行了详细的阐述。本文的重点是卷积码的viterbi 译码算法的研究。 关键词:卷积码viterbi算法软硬判决误比特率

Abstract This paper discusses the basic theory of channel coding, and two ways of channel coding are expounded. Mainly discusses the basic concept of convolution code for convolution code, the basic theory and technology coding and in detail. This paper focuses on the soft and hard verdict is convolution code viterbi decoding algori Keywords:convolutional channel code vietrbi algorithm soft-decision and hard-decision the error rate

viterbi译码的性能 为了定量的估计卷积码的性能,需要计算出卷积码的错误概率,这种计算比较困难,所以一般只给出卷积码译码错误概率的上限。卷积码的性能由编码方法决定,而实际能否达到该性能还与译码方法有关。在等概的情况下,viterbi算法是最佳的译码方法,所以本节讨论viterbi的软硬判决下卷积码的性能。 估计卷积码性能的方法一般有如下几种: 10可以采用这种方法,但是当误码率比 ①计算机模拟。如果误码率大于6- 较小的时候,计算机计算时间过长,导致无法计算。 ②近似公式计算。 ③估算性能的渐近线公式。如果信噪比越大,则实际的性能离渐近线越近,误差就比较小。 (一)性能影响因素 卷积码的性能受到很多因素的影响,如卷积码的编码中的码率,约束长度,还要受到译码中回溯长度的影响。 1)码率对误码性能的影响 卷积码的码率R=k/n,是卷积码的一个重要参数,当卷积码的码率改变时,系统的误码性能也将随之发生变化。在码率一定的条件下,随着信道噪声的逐渐减小,系统的误比特率也逐渐减小;在信道噪声一定的情况下,改变系统码率时,随着卷积码码率的逐渐提高,系统的误比特率也呈现出增大的趋势,也就是说码率越低,系统的误比特率就越小,误码性能就越好。然而,信道带宽和译码器的复杂性也将相应地增加。对于二进制对称信道,当采用BPSK 调制方式时,通常选取的码率为1/2。 2)约束长度对误码性能的影响 对于码率一定的卷积码,当约束长度N 发生变化时,系统的误码性能也

基于DSP的系统卷积码盲识别

2015 年 第24卷 第 4 期 https://www.wendangku.net/doc/1512934186.html, 计 算 机 系 统 应 用 Research and Development 研究开发 257 基于DSP 的系统卷积码盲识别① 苗成林, 李 彤, 吕 军 (装甲兵工程学院 信息工程系, 北京 100072) 摘 要: 研究了一种系统卷积码的盲识别算法, 该算法通过建立数据矩阵, 遍历所有可能的矩阵形式, 分析矩阵秩特性的方法实现对信道盲参数识别, 参数包括码长、码字起点、码率、校验多项式和生成多项式. 并提出了将该算法移植到DSP 芯片中, 将软件仿真移植到硬件平台, 在CCS 软件中优化算法, 完成对1/2码率的系统卷积码盲识别仿真. 为实现快速算法, 运用在实际工程提供支持. 关键词: 卷积码; 盲识别; DSP; 秩特性 Blind Recognition of Systematic Convolutional Code Based on DSP MIAO Cheng-Lin, LI Tong, LV Jun (Department of Information Engineering, Academy of Armored Force Engineering, Beijing 100072, China) Abstract : This paper researches an algorithm about the blind recognition of systematic convolutional code. By building data matrix and analyzing the rank property of the matrix, the algorithm can realize the blind recognition of channel parameters, which include the code length, code beginning, code rate, check polynomial as well as the generating polynomial. This paper also proposes the idea to transfer the algorithm to DSP. After transferring the software codes onto the hardware platform, we optimize the algorithm in the software CCS and then finish the simulation of the blind recognition of systematic convolutional code with code rate equals 1/2. It offers support to the fast implementation of the algorithm in actual projects. Key words : convolutional codes; blind recognition; DSP; rank characteristic 信道编码是现代数字通信系统的核心技术之一, 信道编码的参数分析是实现智能通信、通信侦察、网络对抗的必要组成部分. 卷积码由于实现简单、纠错性能较强, 在很多通信系统中得到应用[1]. 信道编码盲识别就是在未知编码信息条件下, 仅靠未知编码数据快速识别出编码体制、编码方法和编码参数[2]. 卷积码的快速盲识别算法[3]是一个比较新颖并且专业性较强的领域, 随着数字通信技术向着自适应、智能化方向发展, 越来越多的领域将产生对信道编码盲识别技术的需求, 因此对该技术进行研究具有重要的理论意义和应用价值. 本文研究的卷积码的盲识别技术是实现智能通信、网络对抗的关键技术之一. 在原有卷积码盲识别理论的基础上, 简化了识别算法, 使算法更加实用. 提 ① 收稿时间:2014-07-24;收到修改稿时间:2014-09-04 出了基于DSP 硬件平台的算法实现, 并完成了仿真实验, 结果体现了很好的特性. 1 DSP 选型 TMS320F28335 DSP 是TI 公司新推出的一款浮点型数字信号处理器[4]. 它在已有的DSP 平台上增加了浮点运算内核, 既保持了原有DSP 芯片的优势, 又能够对复杂浮点数进行运算, 节省代码执行时间和存储空间, 具有精度高、功耗小、成本低、外设集成度高, AD 转换精确和数据及程序存储量大等优点. 本设计中, 由于针对于大量的0、1符号对数据进行处理, 对存储空间和运算速度的要求较高, TMS320F28335的系统频率为150MHz, 片内Flash 和SARAM, 支持DSP/BIOS 实时操作系统在线仿真, 这些特点可满足设

实验九 (2,1,5)卷积码编码译码技术

实验九 (2,1,5)卷积码编码译码技术 一、实验目的 1、掌握(2,1,5)卷积码编码译码技术 2、了解纠错编码原理。 二、实验内容 1、(2,1,5)卷积码编码。 2、(2,1,5)卷积码译码。 三、预备知识 1、纠错编码原理。 2、(2,1,5)卷积码的工作原理。 四、实验原理 卷积码是将发送的信息序列通过一个线性的,有限状态的移位寄存器而产生的编码。通常卷积码的编码器由K级(每级K比特)的移位寄存器和n个线性代数函数发生器(这里是模2加法器)组成。 若以(n,k,m)来描述卷积码,其中k为每次输入到卷积编码器的bit数,n 为每个k元组码字对应的卷积码输出n元组码字,m为编码存储度,也就是卷积编码器的k元组的级数,称m+1= K为编码约束度m称为约束长度。卷积码将k 元组输入码元编成n元组输出码元,但k和n通常很小,特别适合以串行形式进行传输,时延小。与分组码不同,卷积码编码生成的n元组元不仅与当前输入的k元组有关,还与前面m-1个输入的k元组有关,编码过程中互相关联的码元个数为n*m。卷积码的纠错性能随m的增加而增大,而差错率随N的增加而指数下降。在编码器复杂性相同的情况下,卷积码的性能优于分组码。 编码器 随着信息序列不断输入,编码器就不断从一个状态转移到另一个状态并同时输出相应的码序列,所以图3所示状态图可以简单直观的描述编码器的编码过程。因此通过状态图很容易给出输入信息序列的编码结果,假定输入序列为110100,首先从零状态开始即图示a状态,由于输入信息为“1”,所以下一状态为b并输出“11”,继续输入信息“1”,由图知下一状态为d、输出“01”……其它输入信息依次类推,按照状态转移路径a->b->d->c->b->c->a输出其对应的编码结果“110101001011”。 译码方法 ⒈代数 代数译码是将卷积码的一个编码约束长度的码段看作是[n0(m+1),k0(m+1)]线性分组码,每次根据(m+1)分支长接收数字,对相应的最早的那个分支上的信息数字进行估计,然后向前推进一个分支。上例中信息序列 =(10111),相应的码序列 c=(11100001100111)。若接收序列R=(10100001110111),先根据R 的前三个分支(101000)和码树中前三个分支长的所有可能的 8条路径(000000…)、(000011…)、(001110…)、(001101…)、(111011…)、(111000…)、(110101…)和(110110…)进行比较,可知(111001)与接收

卷积信号实验报告

信号与系统上机实验报告一连续时间系统卷积的数值计算 140224 班张鑫学号 14071002 一、实验原理 计算两个函数的卷积 卷积积分的数值运算实际上可以用信号的分段求和来实现,即: 如果我们只求当 t = n? t1 是r ( t )的值,则由上式可以得到: ?t足够小时,r(t2)就是e(t)和f(t)卷积积分的数值近似值由上面的公式可 当1 以得到卷积数值计算的方法如下: (1)将信号取值离散化,即以为周期,对信号取值,得到一系列宽度间隔为 的矩形脉冲原信号的离散取值点,用所得离散取值点矩形脉冲来表示原来的连续时间信号; (2)将进行卷积的两个信号序列之一反转,与另一信号相乘,并求积分,所得为t=0时的卷积积分的值。以为单位左右移动反转的信号,与另一信号相乘求积 分,求的t<0和t>0时卷积积分的值; (3)将所得卷积积分值与对应的t标在图上,连成一条光滑的曲线,即为所求卷积积分的曲线。 1

信号与系统上机实验报告一二、处理流程图 三、C程序代码 #include"stdafx.h" #include"stdio.h" //#include "stdilb.h" float u(float t) { while (t>= 0) return(1); while (t<0) return(0); } float f1(float t) { return(u(t+2)-u(t-2)); } float f2(float t) { return(t*(u(t)-u(t-2))+(4-t)*(u(t-2)-u(t-4))); } int_tmain(int argc, _TCHAR* argv[]) {

基于信道编码中的二进制线性分组码和卷积码的盲识别研究

目录 摘要 ................................................................................................................................................................. I Abstract ........................................................................................................................................................... I I 目录 ...........................................................................................................................................................III 第1章绪论. (1) 1.1课题研究背景与意义 (1) 1.2线性分组码和卷积码的盲识别研究在国内外现状和发展趋势 (1) 1.3论文结构安排 (3) 第2章数字通信理论与信道编码 (4) 2.1数字通信 (4) 2.1.1数字通信系统简介 (4) 2.2无线信道 (6) 2.3信道编码 (7) 2.3.1信道容量 (7) 2.3.2纠错码的认识 (8) 2.3.2.1两种码字在编码和解码中的比较 (8) 2.3.2.2典型的纠错码历史 (9) 2.3.3交织与扰码对通信的影响 (9) 2.4信道编码的盲识别阐述 (10) 2.4.1盲识别研究基于信道编码的初衷 (10) 2.4.2关于二进制线性分组码和卷积码盲识别分析的近况 (10) 2.5本章小结 (11) 第3章线性分组码与卷积码的盲识别分析 (12) 3.1线性分组码 (12) 3.1.1几个有关线性分组码的经常使用的概念 (12) 3.1.2二进制线性分组码 (12) 3.2盲识别中的二进制线性分组码分析 (13) 3.2.1高斯法解方程 (13) 3.2.2码重分析法 (14) 3.2.2.1码重分析法中的几个定理 (14) 3.2.2.2仿真结果与结果分析 (15) 3.2.3线性矩阵分析法 (16) 3.2.3.1矩阵模型的选择 (16) 3.2.3.2分组码长和分组码输出起始点的确立 (17) 3.2.3.3仿真结果与结果分析 (17) 3.3卷积码 (19) 3.3.1卷积码概述 (19) 3.3.2卷积码的矩阵形式 (20) 3.3.3卷积码的盲识别分析 (22) 3.3.3.1高斯法解方程 (22) 3.3.3.2线性矩阵分析法 (23) 3.3.4仿真结果与结果分析 (25) 3.4本章小结 (27) 第4章线性分组码与卷积码的盲识别在数字通信中的应用 (28) 4.1智能通信领域 (28) 4.2通信侦察领域 (29) 4.3本章小结 (29) 第5章总结与展望 (30) III 万方数据

卷积编码实验报告

实验名称:___ 卷积编码_______ 1、使用MATLAB进行卷积编码的代码编写、运行、仿真等操作; 2、熟练掌握MATLAB软件语句; 3、理解并掌握卷积编码的原理知识。 二、实验原理 卷积码是由Elias于1955 年提出的,是一种非分组码,通常它更适用于前向纠错法,因为其性能对于许多实际情况常优于分组码,而且设备较简单。 卷积码的结构与分组码的结构有很大的不同。具体地说,卷积码并不是将信息序列分成不同的分组后进行编码,而是将连续的信息比特序列映射为连续的编码器输出符号。卷积码在编码过程中,将一个码组中r 个监督码与信息码元的相关性从本码组扩展到以前若干段时刻的码组,在译码时不仅从此时刻收到的码组中提取译码信息,而且还可从与监督码相关的各码组中提取有用的译码信息。这种映射是高度结构化的,使得卷积码的译码方法与分组译码所采用的方法完全不同。可以验证的是在同样复杂度情况下,卷积码的编码增益要大于分组码的编码增益。对于某个

特定的应用,采用分组码还是卷积码哪一种更好则取决于这一应用的具体情况和进行比较时可用的技术。 (一)卷积编码的图形表示 卷积码的编码器是由一个有k 个输人位,n 个输出位,且有m 个移位寄存器构成的有限状态的有记忆系统,其原理如图1所示。 图1 卷积码编码器的原理图 描述这类时序网络的方法很多,它大致可分为两大类型:解析表示法与图形表示法。在解析法中又可分为离散卷积法、生成矩阵法、码多项式法等;在图形表示法中也可分为状态图法、树图法和网络图法等。 图2给出的是一个生成编码速率为1/2 卷积码的移位寄存器电路。输人比特在时钟触发下从左边移人到电路中,每输入一位,分别去两个模2加法器的输出值并复用就得到编码器的输出。对这一编码,每输入一比特就产生两个输出符号,故编码效率为

Quartus实验三,212卷积码和计数器

课程名称通信系统集成电路设计 实验名称Quartus II实验三 专业班级 姓名 学号 日期 ______ 2012.1.2 __________

实验三: 212卷积码,十进制计数器 1. 实验目的 a) 掌握在FPGA 上实现212卷积码编码器的方法; b) 用原理图的方法实现十进制加法计数器。 2. 实验环境 a) Quartus II 9.1 (32-Bit) b) ModelSim-Altera 6.5a (Quartus II 9.1) c) WinXP 操作系统 3. 实验要求 1) 212卷积码编码器 编写生成212卷积码编码器的程序,仿真后观察波形。 2) 十进制加法同步计数器 首先用VHDL 语言描述十进制加法计数器,然后画出它的原理图。 3) 思考题 16进制的计数器与PN4的电路图有什么区别。 4. 实验内容 1)212卷积码 卷积码编码器对输入的数据流每次1bit 或k bit 进行编码,输出n bit 编码符号。但是输出的分支码字的每个码元不仅与此时可输入的k 个bit 有关,也与前m 个连续式可输入的信息有关,因此编码器应包含m 级寄存器以记录这些信息。 通常卷积码表示为 (n,k,m). 编码率 k r n = 当k=1时,卷积码编码器的结构包括一个由m 个串接的寄存器构成的移位寄存器(成为m 级移位寄存器、n 个连接到指定寄存器的模二加法器以及把模二加法器的输出转化为穿行的转换开关。 本报告所讲的(2,1,2)卷积码是最简单的卷积码。就是2n =,1k =,m=2的卷积码。每次输入1 bit 输入信息,经过2级移位寄存器,2个连接到指定寄存器的模二加法器,并把加法器输出转化为串行输出。

基于遗传算法的(n,n-1,m)卷积码盲识别

收稿日期:2014-08-12修回日期:2014-09-18 基金项目: 国家自然科学基金(61201379);安徽省自然科学基金资助项目(1208085QF103)作者简介:张 岱(1993-),男,安徽太和人,硕士研究生。研究方向:信道编码识别分析。 *摘 要:针对信息截获领域中(n ,n -1,m ) 卷积码盲识别问题,提出基于遗传算法的盲识别方法。该方法在矩阵分析得到编码参数之后,利用遗传算法的全局搜索能力实现对基本校验多项式矩阵的精确识别,进而实现对基本生成多项式矩阵的识别。仿真表明:该方法能够在高误码条件下实现对(n ,n -1,m )卷积码的盲识别,且运算量相对于以往的高容错识别方法得到降低。 关键词:信息截获,卷积码,盲识别,遗传算法中图分类号:TP309 文献标识码:A 基于遗传算法的(n ,n -1,m )卷积码盲识别* 张岱,张玉,杨晓静,樊斌斌 (电子工程学院, 合肥230037)Blind Recognition of (n ,n -1,m )Convolutional Code Based on Genetic Algorithm ZHANG Dai ,ZHANG Yu ,YANG Xiao-jing ,FAN Bin-bin (Electronic Engineering Institute ,Hefei 230037,China ) Abstract :Considering blind recognition of (n ,n -1,m )convolutional code in information interception ,a recognition method based on genetic algorithm is proposed.After obtaining coding characters through matrix analysis ,this method achieves accurate recognition of the basic check polynomial matrix by utilizing global searching ability of the genetic algorithm.Then ,recognition of basic generator polynomial matrix is realized.The simulation shows that this method can blindly recognise (n ,n -1,m )convolutional code in a high BER environment ,while its computing efforts get lower compared with high fault-tolerant methods before. Key words : information interception ,convolutional code ,blind recognition ,genetic algorithm 0引言 在现代数字通信系统中普遍采用信道编码技术以提高信息传输的安全可靠性,其中,卷积码作为信道编码中一种典型的纠错编码方式,广泛应用于卫星通信、深空通信等领域中。因此,卷积码盲识别研究在非合作环境下的信息截获等领域具有重要意义[1]。(n ,n -1,m )卷积码具有较高的编码效率,故本文将针对(n ,n -1,m )卷积码的盲识别展开研究。 卷积码盲识别技术的重要性受到了国内外越来越多研究人员的关注[2-8],目前的识别方法主要有基 于欧几里德算法的识别方法[3]、Walsh-Hadamard 分 析法[4]、基于校验统计的识别方法[5-6] 、基于BM 的 快速合冲法 [7] 和基于矩阵分析的识别方法[8]等。其中基于欧几里德算法的识别方法适用于1/n 码率卷 积码,运算量小但容错性能差;Walsh-Hadamard 分 析法和基于校验统计的识别方法同样只适用于1/n 码率卷积码,具有较好的容错性,但运算量巨大;基于BM 的快速合冲法运算量小且具备一定容错性,但该方法只适用于1/2码率卷积码的识别;基于矩阵分析的识别方法可对不同码率卷积码进行全盲识别,其中在对卷积码编码参数识别时具有较高容错性,但对基本校验矩阵进行识别时容错性差。 文章编号:1002-0640(2015) 09-0031-04Vol.40,No.9Sep ,2015 火力与指挥控制 Fire Control &Command Control 第40卷第9期2015年9月 31··

MATLAB实现卷积码编译码-

本科生毕业论文(设计) 题目:MATLAB实现卷积码编译码 专业代码: 作者姓名: 学号: 单位: 指导教师: 年月日

目录 前言----------------------------------------------------- 1 1. 纠错码基本理论---------------------------------------- 2 1.1纠错码基本理论 ----------------------------------------------- 2 1.1.1纠错码概念 ------------------------------------------------- 2 1.1.2基本原理和性能参数 ----------------------------------------- 2 1.2几种常用的纠错码 --------------------------------------------- 6 2. 卷积码的基本理论-------------------------------------- 8 2.1卷积码介绍 --------------------------------------------------- 8 2.1.1卷积码的差错控制原理----------------------------------- 8 2.2卷积码编码原理 ---------------------------------------------- 10 2.2.1卷积码解析表示法-------------------------------------- 10 2.2.2卷积码图形表示法-------------------------------------- 11 2.3卷积码译码原理---------------------------------------------- 15 2.3.1卷积码三种译码方式------------------------------------ 15 2.3.2V ITERBI译码原理---------------------------------------- 16 3. 卷积码编译码及MATLAB仿真---------------------------- 18 3.1M ATLAB概述-------------------------------------------------- 18 3.1.1M ATLAB的特点------------------------------------------ 19 3.1.2M ATLAB工具箱和内容------------------------------------ 19 3.2卷积码编码及仿真 -------------------------------------------- 20 3.2.1编码程序 ---------------------------------------------- 20 3.3信道传输过程仿真-------------------------------------------- 21 3.4维特比译码程序及仿真 ---------------------------------------- 22 3.4.1维特比译码算法解析------------------------------------ 23 3.4.2V ITERBI译码程序--------------------------------------- 25 3.4.3 VITERBI译码MATLAB仿真----------------------------------- 28 3.4.4信噪比对卷积码译码性能的影响 -------------------------- 28

卷积码实验报告

苏州科技大学天平学院电子与信息工程学院 信道编码课程设计报告 课设名称卷积码编译及译码仿真 学生姓名圣鑫 学号1430119232 同组人周妍智 专业班级通信1422 指导教师潘欣欲 一、实验名称 基于MAATLAB的卷积码编码及译码仿真 二、实验目的 卷积码就是一种性能优越的信道编码。它的编码器与译码器都比较容易实现,同时它具有较强的纠错能力。随着纠错编码理论研究的不断深入,卷积码的实际应用越来越广泛。本实验简明地介绍了卷积码的编码原理与Viterbi译码原理。并在SIMULINK模块设计中,完成了对卷积码的编码与译码以及误比特统计整个过程的模块仿真。最后,通过在仿真过程中分别改变卷积码的重要参数来加深理解卷积码的这些参数对卷积码的误码性能的影响。经过仿真与实测,并对测试结果作了分析。 三、实验原理

1、卷积码编码原理 卷积码就是一种性能优越的信道编码,它的编码器与解码器都比较易于实现,同时还具有较强的纠错能力,这使得它的使用越来越广泛。卷积码一般表示为(n,k,K)的形式,即将 k个信息比特编码为 n 个比特的码组,K 为编码约束长度,说明编码过程中相互约束的码段个数。卷积码编码后的 n 各码元不经与当前组的 k 个信息比特有关,还与前 K-1 个输入组的信息比特有关。编码过程中相互关联的码元有 K*n 个。R=k/n 就是编码效率。编码效率与约束长度就是衡量卷积码的两个重要参数。典型的卷积码一般选 n,k 较小,K 值可取较大(>10),但以获得简单而高性能的卷积码。 卷积码的编码描述方式有很多种:冲激响应描述法、生成矩阵描述法、多项式乘积描述法、状态图描述,树图描述,网格图描述等。 2、卷积码Viterbi译码原理 卷积码概率译码的基本思路就是:以接收码流为基础,逐个计算它与其她所 有可能出现的、连续的网格图路径的距离,选出其中可能性最大的一条作为译码估值输出。概率最大在大多数场合可解释为距离最小,这种最小距离译码体现的正就是最大似然的准则。卷积码的最大似然译码与分组码的最大似然译码在原理上就是一样的,但实现方法上略有不同。主要区别在于:分组码就是孤立地求解单个码组的相似度,而卷积码就是求码字序列之间的相似度。基于网格图搜索的译码就是实现最大似然判决的重要方法与途径。用格图描述时,由于路径的汇聚消除了树状图中的多余度,译码过程中只需考虑整个路径集合中那些使似然函数最大的路径。如果在某一点上发现某条路径已不可能获得最大对数似然函数,就放弃这条路径,然后在剩下的“幸存”路径中重新选择路径。这样一直进行到最后第 L 级(L 为发送序列的长度)。由于这种方法较早地丢弃了那些不可能的路径,从而减轻了译码的工作量,Viterbi 译码正就是基于这种想法。对于(n, k, K )卷积码,其网格图中共 2kL 种状态。由网格图的前 K-1 条连续支路构成的路径互不相交,即最初 2k_1 条路径各不相同,当接收到第 K 条支路时,每条路径都有 2 条支路延伸到第 K 级上,而第 K 级上的每两条支路又都汇聚在一个节点上。在Viterbi译码算法中,把汇聚在每个节点上的两条路径的对数似然函数累加

卷积码

目录 目录 (1) 摘要 (2) Abstract (3) 一、引言 (4) 1.1设计任务及要求 (4) 1.2设计仪器设备 (4) 1.3 设计目的 (4) 二、基本概念 (5) 2.1 纠错编码 (5) 2.2 卷积码的基本概念 (5) 2.3 卷积码编码的概述 (5) 2.4卷积码译码的概述 (5) 三、卷积码的编译码原理 (6) 3.1卷积码的图形描述 (6) 3.1.1 树状图 (7) 3.1.2 网格图 (8) 3.1.3 状态图 (8) 3.2 卷积积码的编码算法 (9) 3.3卷积码的Viterbi译码 (10) 四、卷积码的仿真及性能分析 (12) 4.1 SIMULINK仿真模块 (12) 4.2 卷积码的参数对误码率的影响 (13) 4.2.1 码率对误码性能的影响 (13) 4.2.2 约束长度对误码性能的影响 (14) 4.2.3 回溯长度对卷积码性能的影响 (16) 4.3 仿真分析 (18) 总结 (19) 参考文献: (20)

摘要 随着现代通信的发展,高速信息传输和高可靠性传输成为信息传输的两个主要方面,而可靠性尤其重要。卷积码以其高速性和可靠性在实际应用中越来越广泛。本文简明地介绍了卷积码的编码原理和译码原理。在MATLAB中的SIMULINK模块中设计卷积码的编码和译码的整个模块,调用该模块完成对误码率统计仿真。最后,通过在仿真过程中分别改变卷积码的重要参数来加深理解卷积码的这些参数对卷积码的误码性能的影响。经过仿真和实测,并对测试结果作了分析。得出了以下三个结论:(1)当改变卷积码的码率时,系统的误码性能也将随之发生变化。 (2)对于码率一定的卷积码,当约束长度N 发生变化时,系统的误码性能也会随之发生变化。 (3)回溯长度也会不同程度上地影响误码性能。 同时整个设计通过MATLAB仿真满足设计要求。 关键词:卷积码;误码性能;约束长度;MATLAB;回溯长度

一种新的高误码(2,1,m)卷积码盲识别方法

摘 要:信道编码是数字通信中极其重要的环节,其识别成为信息截获恢复领域一个亟需解决的问题。针对卷 积码盲识别问题,提出了一种基于校验匹配统计的识别方法,该方法首先通过统计的方法求出最佳匹配的校验矩阵,进而推导出生成多项式矩阵。最后,通过MATLAB 实例仿真验证了该方法能够有效识别出所有卷积码,且具有很好的容错性能。 关键词:卷积码盲识别,匹配统计,容错性能,生成多项式中图分类号:TP309 文献标识码:A 一种新的高误码(2,1,m )卷积码盲识别方法* 张东,陈国顺,王格芳,吕艳梅 (军械技术研究所, 石家庄050000)A New Method of Blind Recognition to (2,1,m )Convolutional Code ZHANG Dong ,CHEN Guo-shun ,WANG Ge-fang ,L Yan-mei (Machine Technology Research Institute ,Shijiazhuang 050000,China ) Abstract :Channel coding is a vital part in digital communication ,and its recognition has been a problem that must be solved.This paper proposes a method ,based on suited statistic ,to recognize the convolutional code.Firstly ,this method seeks the prime parity -check matrix by statistic ,and then deduces the generator polynomial matrix.At last ,the simulation of MATLAB proves that this method can recognize all convolutional code ,and has the good performance of error-resilient. Key words :blind recognition of convolutional code ,suited statistic ,performance of error-resilient ,generator polynomial matrix 文章编号:1002-0640(2013) 11-0069-03Vol.38,No.11Nov ,2013 火力与指挥控制 Fire Control &Command Control 第38卷第11期2013年11月 引言 信道编码可以提高数据传输的可靠性,是保障通 信畅通的有效手段,也是数字通信系统的重要环节。目前信道编码主要包括线性分组码、卷积码、LDPC 码和Turbo 码等,而卷积码因纠错能力强和编译简单等优点已广泛应用于卫星系统测控链路、深空探测系统和第三代移动通信等[6]。这使得卷积码的识别成为信息对抗所面临的一项重要课题,如何在高误码率情况下有效识别出编码方式和参数并有效译码,是进行信息恢复所亟需解决的问题。目前,国外针对信道编码识别研究的公开文献资料非常少,国内有关卷积码 识别的方法主要有:欧几里德算法[1] 、基于快速双合 冲算法[2] 、基于Walsh-Hadamard 变换法[3]、构建分 析矩阵法[4]。可见,现有的卷积码识别方法应用范围受限,实用价值不高,一般不能在误码率较高情况 下进行识别。 (2,1,m ) 卷积码是卫星通信和深空探测中应用最广泛的卷积码,也是大多数(n -1)/n 码率删余卷积码的源码,本文针对该卷积码的识别问题提出了基于匹配统计的盲识别方法,该方法具有很好的容错性能,能够在误码率高达10-2量级情况下有效识别出一般(2,1,m ) 卷积码。弥补了Walsh-Hadamard 变换法需占用巨大存储空间的不足。 1(2,1,m ) 卷积码识别问题的描述实际应用的卷积码均是二进制卷积码,即建立在二元域F 2上。卷积码是把信源输出的信息序列, 收稿日期:2012-10-09 修回日期:2012-11-16 基金项目: 军内科研基金资助项目作者简介:张东(1984-),男,河北邱县人,硕士。研究方向:电子系统检测及故障诊断。 *ü69··

信 卷积实验报告

信号与系统实验报告学院:电子信息与电气工程学院 班级: 13级电信<1>班 学号: 20131060104 姓名:李重阳

实验三 信号卷积实验 一、实验目的 1、理解卷积的概念及物理意义; 2、通过实验的方法加深对卷积运算的图解方法及结果的理解。 二、实验原理说明 卷积积分的物理意义是将信号分解为冲激信号之和,借助系统的冲激响应,求解系统对任意激励信号的零状态响应。设系统的激励信号为x (t ),冲激响应为h (t ),则系统的零状态响应为()()()*y t x t h t ==()()x t h t d ττ∞-∞-?。 1、两个矩形脉冲信号的卷积过程 两信号x (t )与h (t )都为矩形脉冲信号,如图3-1所示。下面由图解的方法(图3-1)给出两个信号的卷积过程和结果,以便与实验结果进行比较。 图3-1 两矩形脉冲的卷积积分的运算过程与结果 2、矩形脉冲信号与锯齿波信号的卷积 信号f1(t )为矩形脉冲信号, f2(t )为锯齿波信号,如图3-2所示。根据卷积积分的运算方法得到f1(t )和f2(t )的卷积积分结果f (t ),如图3-2(c )所示。 图3-2 矩形脉冲信号与锯齿脉冲信号的卷积积分的结果 3、本实验进行的卷积运算的实现方法 在本实验装置中采用了DSP 数字信号处理芯片,因此在处理模拟信号的卷积积分运算时,是先通过A/D 转换器把模拟信号转换为数字信号,利用所编写的相应程序控制DSP 芯片实现数字信号的卷积运算,再把运算结果通过D/A 转换为模拟信号输出。结果与模拟信号的直接运算结果是一致的。数字信号处理系统逐步和完全取代模拟信号处理系统是科学技术发展的必然趋势。图3-3为信号卷积的流程图。 图3-3 信号卷积的流程图 三、实验内容 1、检测矩形脉冲信号的自卷积结果。 用双踪示波器同时观察输入信号和卷积后的输出信号,把输入信号的幅度峰峰值调节为4V ,再调节输入信号的频率或占空比使输入信号的时间宽度满足表中的要求,观察输出信号有何变化,判断卷积的结果是否正确,并记录表3-1。 实验步骤如下: ①将函数发生器的SW702置于“方波”上。 ②连接函数发生器H701与数字滤波器的PB01,在TPB01上可观察到输入波形。将示波器接在TPB01上观测输入波形,并调节函数发生器模块上的频率旋钮与幅度旋钮,使信号频率为1KHz ,幅度为4V 。(注意:输入波形的频率幅度要在H701与PB01连接后,在TPB01上测试。) ③将红色拨动开关SWB01调整为“0001”。 ④按下复位键S1。 ⑤将示波器的CH1接于TP901;CH2接于TP903。可分别观察到输入信号的波形与卷积后的输出信号的波形。 表3-1 输入信号卷积后的输出信号

相关文档