《通信系统系统课群综合训练与设计》课程设计Word文档格式.docx

上传人:b****5 文档编号:21707059 上传时间:2023-01-31 格式:DOCX 页数:30 大小:398KB
下载 相关 举报
《通信系统系统课群综合训练与设计》课程设计Word文档格式.docx_第1页
第1页 / 共30页
《通信系统系统课群综合训练与设计》课程设计Word文档格式.docx_第2页
第2页 / 共30页
《通信系统系统课群综合训练与设计》课程设计Word文档格式.docx_第3页
第3页 / 共30页
《通信系统系统课群综合训练与设计》课程设计Word文档格式.docx_第4页
第4页 / 共30页
《通信系统系统课群综合训练与设计》课程设计Word文档格式.docx_第5页
第5页 / 共30页
点击查看更多>>
下载资源
资源描述

《通信系统系统课群综合训练与设计》课程设计Word文档格式.docx

《《通信系统系统课群综合训练与设计》课程设计Word文档格式.docx》由会员分享,可在线阅读,更多相关《《通信系统系统课群综合训练与设计》课程设计Word文档格式.docx(30页珍藏版)》请在冰豆网上搜索。

《通信系统系统课群综合训练与设计》课程设计Word文档格式.docx

2PCM(脉冲编码调制)编译码

2.1脉冲编码调制的基本原理

把从模拟信号抽样、量化,直到变换成为二进制符号的基本过程,称为脉冲编码调制,简称脉码调制。

如:

在下图中,模拟信号的抽样值为3.15,3.96,5.00,6.38,6.80和6.42。

若按照“四舍五入”的原则量化为整数值,则抽样值量化后变为3,4,5,6,7和6。

在按照二进制数编码后,量化值(quantizedvalue)就变成二进制符号:

011、100、101、110、111和110。

图2.1二进制编码原理

图2.2PCM系统的原理方框图

2.2逐次比较法编码

上节编码器(a)中的量化器和编码器常构成一个不能分离的编码电路,这种编码电路有不同的实现方案,最常用的一种方案成为逐次比较法编码,其基本原理方框图如下图所示。

图2.3逐次比较法编码原理方框图

图中示出一个3位编码器。

其输入信号抽样脉冲值在0和7.5之间。

它将输入模拟抽样脉冲编成3位二进制编码c1c2c3。

图中输入信号抽样脉冲电流Is由保持电路短时间保持,并和几个称为权值电流的标准电流Iw逐次比较。

每比较一次,得出1位二进制码。

权值电流Iw是在电路中预先产生的。

Iw的个数决定于编码的位数,现在共有3个不同的Iw值。

因为表示量化值的二进制码有3位,即c1c2c3。

它们能够表示8个十进制数,从0至7,如下表所示。

表1编码表

量化值

c1

c2

c3

4

1

5

2

6

3

7

因此,若按照“四舍五入”原则编码,则此编码器能够对-0.5至+7.5之间的输入抽样值正确编码。

由此表可推知,用于判定c1值的权值电流Iw=3.5,即若抽样值Is<

3.5,则比较器输出c1=0;

若Is>

3.5,则比较器输出c1=1。

c1除输出外,还送入记忆电路暂存。

第二次比较时,需要根据此暂存的c1值,决定第二个权值电流值。

若c1=0,则第二个权值电流值Iw=1.5;

若c1=1,则Iw=5.5。

第二次比较按照此规则进行:

若Is<

Iw,则c2=0;

Iw,则c2=1。

此c2值除输出外,也送入记忆电路。

在第三次比较时,所用的权值电流值须根据c1和c2的值决定。

如如,若c1c2=00,则Iw=0.5;

若c1c2=10,则Iw=4.5;

依此类推。

2.3折叠二进制码原理

表1给出的二进制编码是按照二进制数的自然规律排列的,称为自然二进制码。

但这不是唯一编码方法,常用的还有折叠二进制码。

折叠二进制码是用最高位表示电压的极性正负,而用其他位来表示电压的绝对值。

这就是说,在用最高位表示极性后,双极性电压可以采用单极性编码方法处理,从而使编码电路和编码过程大为简化。

折叠码的另一个优点是误码对于小电压的影响较小。

在13折线法中采用的折叠码有8位。

其中第一位c1表示量化值的极性正负。

后面的7位分为段落码和段内码两部分,用于表示量化值的绝对值。

其中第2至4位(c2c3c4)是段落码,共计3位,可以表示8种斜率的段落;

其他4位(c5~c8)为段内码,可以表示每一段落内的16种量化电平。

段内码代表的16个量化电平是均匀划分的。

所以,这7位码总共能表示27=128种量化值。

在下面的表中给出了段落码和段内码的编码规则。

表2段落码编码规则

段落序号

段落码

c2c3c4

段落范围

(量化单位)

段落码

8

111

1024~2048

011

64~128

110

512~1024

010

32~64

101

256~512

001

16~32

100

128~256

000

0~16

表3段内码编码规则

量化间隔

段内码

c5c6c7c8

15

1111

11

1011

0111

0011

14

1110

10

1010

0110

0010

13

1101

9

1001

0101

0001

12

1100

1000

0100

0000

在上述编码方法中,虽然段内码是按量化间隔均匀编码的,但是因为各个段落的斜率不等,长度不等,故不同段落的量化间隔是不同的。

其中第1和2段最短,斜率最大,其横坐标x的归一化动态范围只有1/128。

再将其等分为16小段后,每一小段的动态范围只有(1/128)*(1/16)=1/2048。

这就是最小量化间隔,后面将此最小量化间隔(1/2048)称为1个量化单位。

第8段最长,其横坐标x的动态范围为1/2。

将其16等分后,每段长度为1/32。

假若采用均匀量化而仍希望对于小电压保持有同样的动态范围1/2048,则需要用11位的码组才行。

现在采用非均匀量化,只需要7位就够了。

2.4逐次比较法译码原理

下图所示编码器中虚线方框内是本地译码器,而接收端译码器的核心部分原理就和本地译码器的原理一样。

图2.4逐次比较法非均匀编码器原理框图

在此图中,本地译码器的记忆电路得到输入c7值后,使恒流源产生为下次比较所需要的权值电流Iw。

在编码器输出c8值后,对此抽样值的编码已经完成,所以比较器要等待下一个抽样值到达,暂不需要恒流源产生新的权值电流。

在接收端的译码器中,仍保留本地译码器部分。

由记忆电路接收发送来的码组。

当记忆电路接收到码组的最后一位c8后,使恒流源再产生一个权值电流,它等于最后一个间隔的中间值。

在上如中,此中间值等于1248。

由于编码器中的比较器只是比较抽样的绝对值,本地译码器也只是产生正值权值电流,所以在接收端的译码器中,最后一步要根据接收码组的第一位c1值控制输出电流的正负极性。

在下图中示出接收端译码器的基本原理方框图。

图2.5接收译码器原理框图

2.5MATLAB编程实现PCM编译码

1、PCM编码流程图2、PCM译码流程图

图2.6编码流程图图2.7译码流程图

3HDB3码编解码

3.1AMI码编码基本原理

AMI码的全称为传号交替反转码,其编码规则为将消息码的“1”(传号)交替地变换为“+1”和“-1”,而“0”(空号)保持不变。

消息码:

0110000000110011…

AMI码:

0-1+10000000–1+100–1+1…

AMI码对应的波形是具有正、负、零三种电平的脉冲序列。

它可以看成是单极性波形的变形,即“0”仍对应零电平,而“1”交替对应正负电平。

AMI码的优点:

没有直流成分,且高、低频分量少,编译码电路简单,且可利用传号极性交替这一规律观察误码情况;

如果它是AMI-RZ波形,接收后只要全波整流,就可变为单极性RZ波形,从中可以提取位定时分量

AMI码的缺点:

当原信码出现长连“0”串时,信号的电平长时间不跳变,造成提取定时信号的困难。

解决连“0”码问题的有效方法之一是采用HDB3码。

3.2HDB3码编码基本原理

HDB3码的全称为3阶高密度双极性码,它是AMI码的一种改进型,改进目的是为了保持AMI码的优点而克服其缺点,使连“0”个数不超过3个。

其编码规则是:

(1)检查消息码中“0”的个数。

当连“0”数目小于等于3时,HDB3码与AMI码一样,+1与-1交替;

(2)连“0”数目超过3时,将每4个连“0”化作一小节,定义为B00V,称为破坏节,其中V称为破坏脉冲,而B称为调节脉冲;

(3)V与前一个相邻的非“0”脉冲的极性相同(这破坏了极性交替的规则,所以V称为破坏脉冲),并且要求相邻的V码之间极性必须交替。

V的取值为+1或-1;

(4)B的取值可选0、+1或-1,以使V同时满足(3)中的两个要求;

(5)V码后面的传号码极性也要交替。

消息码:

10000100001100000000l1

-10000+10000-1+100000000-1+1

HDB3码:

-1000–V+1000+V-1+1-B00–V+B00+V-l+1

其中的V脉冲和B脉冲与1脉冲波形相同,用V或B符号表示的目的是为了示意该非“0”码是由原信码的“0”变换而来的。

HDB3码既要包含AMI的交替特性使输出无直流特性,又要不出现四个以上的连0,因此可以先满足后者。

  1)把“0000”换为取代节。

  规则:

先将“0000”分离开来,第一个“0000”直接变为“0000”,然后数相邻两个“0000”之间“1”的个数,奇数则变为“000V”,偶数则变为“B00V”。

  2)更新符号。

  根据HDB3码的编码规则有:

B总是与其前面的1或V符号相反,V总是与前面的1或B相符号相同,1总是与前面的V或B符号相反,就可编符号了。

 例如:

消息代码:

1000010000110000110000000011100001

中间码:

1000V1000V11B00V11B00VB00V111000V1

HDB3码:

+1000+V-1000-V+1-1+B00+V-1+1-B00-V+B00+V-1+1-1000-V+1

3.3HDB3码的译码

HDB3码的编码虽然比较复杂,但译码却比较简单。

从上述编码规则看出,每一个破坏脉冲V总是与前一非“0”脉冲同极性(包括B在内)。

这就是说,从收到的符号序列中可以容易地找到破坏点V,于是也断定V符号及其前面的3个符号必是连“0”符号,从而恢复4个连“0”码,再将所有-1变成+1后便得到原消息代码。

解码规则如下:

1)若3连“0”前后非零脉冲同极性,则将最后一个非零元素译为零,如+1000+1就应该译成“10000”;

若2连“0”前后非零脉冲极性相同,则两零前后都译为零,如-100-1,就应该译为0000。

2)再将所有的-1变换成+1后,就可以得到原消息代码。

3.4MATLAB实现HDB3码编解码

1、HDB3码编码2、HDB3码解码

图3.1HDB3编码流程图图3.2HDB3解码流程图

4汉明码编译码

4.1汉明码的构造原理

汉明码是能够纠正1位错码且编码效率较高的一种线性分组码(线性分组码:

按照一组线性方程构成的分组码)。

在偶数监督码中,由于使用了一位监督位a0,它和信息位an-1…a1一起构成一个代数式:

在接收端解码时,实际上就是在计算

若S=0,就认为无错码;

若S=1,就认为有错码。

现将上式称为监督关系式,S称为校正子。

由于校正子S只有两种取值,故它只能代表有错和无错这两种信息,而不能指出错码的位置。

若监督位增加一位,即变成两位,则能增加一个类似的监督关系式。

由于两个校正子的可能值有4中组合:

00,01,10,11,故能表示4种不同的信息。

若用其中1种组合表示无错,则其余3种组合就有可能用来指示一个错码的3种不同位置。

同理,r个监督关系式能指示1位错码的个可能位置。

一般来说,若码长为n,信息位数为k,则监督位数r=n-k。

如果希望用r个监督位构造出r个监督关系式来指示1位错码的n种可能位置,则要求

按照上述方法构造的码称为汉明码。

设分组码(n,k)中k=4,为了纠正一位错码,要求监督位数r≥3。

若取r=3,则n=k+r=7。

我们用a6a5…a0表示这7个码元,用S1、S2、S3表示三个监督关系式中的校正子,则S1S2S3的值与错码位置的对应关系可以规定如下表4所列。

表4校正子与错码位置关系

S1S2S3

错码位置

a0

a1

a2

a3

a4

a5

a6

无错

由表4中规定可见,仅当一错码位置在a2、a4、a5或a6时,校正子S1为1;

否则S1为0。

这就意味着a2、a4、a5和a6四个码元构成偶数监督关系

S1=a6a5a4a2

同理,a1、a3、a5和a6构成偶数监督关系

S2=a6a5a3a1

以及a0、a3、a4和a6构成偶数监督关系

S3=a6a4a3a0

在发送端编码时,信息位a6、a5、a4和a3的值决定于输入信号,因此它们是随机的。

监督位a2、a1和a0应根据信息位的取值按监督关系来确定,即监督位应使上三式中S1、S2和S3的值为零(表示变成的码组中应无错码)

由上式经移项运算,解出监督位

给定信息位后,可直接按上式算出监督位,其结果如表5所列。

表5监督位计算结果

信息位

监督位

a6a5a4a3

a2a1a0

接收端收到每个码组后,先计算出S1、S2和S3,再按表5判断错码情况。

如,若接收码组为0000011,计算可得S1=0,S2=1,S3=1。

S1S2S3等于011,可知在a3位有一错码。

按上述方法构造的码称为汉明码。

表5中所列的(7,4)汉明码的最小码距d0=3,因此这种码能纠正一个错码或检测两个错码。

汉明码有以下特点:

码长n=2r-1最小码距d=3

信息码位k=2r-m-1纠错能力t=1

监督码位r=n-k=m

这里m为≥2的正整数,给定m后,即可构造出具体的汉明码(n,k)。

4.2MATLAB实现汉明码编译码

MATLAB中提供了汉明码的编码和译码函数,本程序直接调用进行编程。

①encode函数

功能:

编码函数

语法:

code=encode(msg,N,K)

说明:

该函数对二进制信息msg进行汉明编码,K为信息位长度,N为码字长度。

msg是一个K列矩阵。

其中要求N=2m-1,K=N-m,m为监督位长度。

②decode函数

译码函数

rcvcode=decode(code,N,K)

该函数对接受码字进行译码,恢复出原始信息,译码参数及方式必须和编码时采用的完全相同。

③hammgen函数

汉明码生成矩阵和校验矩阵产生函数

H=hammgen(M);

[H,G]=hammgen(M);

[H,G,N,K]=hammgen(M)

该函数的功能是产生生成矩阵和校验矩阵,其中M=N-K为校验位的长度,H为汉明码的校验矩阵,G为汉明码的生成矩阵。

④部分源程序

汉明码编码:

ym=encode(abs(yh),7,4,'

hamming/binary'

);

汉明码解码:

dm=decode(c_de,7,4,'

52PSK调制与解调

5.1数字调制技术

为了使数字信号在带通信道中传输,必须用数字基带信号对载波进行调制以使信号与信道的特性相匹配。

这种用数字信号控制载波,把数字基带信号变换为数字带通信号(已调信号)的过程成为数字调制。

在接收端通过解调器把带通信号还原成数字基带信号的过程成为数字解调。

通常把包括调制和解调过程的数字传输系统叫做数字带通传输系统。

一般来说,数字调制与模拟调制的基本原理相同,但是数字调制有离散取值的特点。

因此数字调制技术有两种方法:

①利用模拟调制的方法去实现数字式调制;

②通过开关键控载波,通常称为键控法。

基本键控方式有振幅键控、频移键控、相移键控。

振幅键控频移键控相移键控

图5.1正弦载波的三种键控波形

5.2二进制相移键控(2PSK)基本原理

数字调制可分为二进制调制和多进制调制。

相移键控是利用载波的相位变化来传递数字信息,而振幅和频率保持不变。

在2PSK中,通常用初始相位0和π分别表示二进制“1”和“0”。

因此,2PSK信号的时域表达式为:

式中,n表示第n个符号的绝对相位:

因此,上式可以改写为

由于表示信号的两种码元的波形相同,极性相反,故2PSK信号可以表述为一个双极性全占空矩形脉冲序列与一个正弦载波的相乘:

式中

这里,g(t)是脉宽为Ts的单个矩形脉冲,而an的统计特性为

即发送二进制符号“0”时,e2psk(t)取0相位;

发送二进制符号“1”时,e2psk(t)取π相位。

这种以载波的不同相位直接去表示相应二进制数字信号的调制方式,称为二进制绝对相移方式。

(a)模拟调制的方法

(b)键控法

图5.22PSK信号调制器原理方框图

2PSK信号的解调通常采用相干解调法,解调器原理框图如下图5.3所示。

假设数字信息为“10011”,相干解调各点波形如下图5.4所示。

图5.32PSK信号的解调原理框图

图5.42PSK信号相干解调时各点时间波形

5.3MATLAB实现2PSK调制与解调

1、2PSK调制流程图2、2PSK解调流程图

图5.52psk调制图5.62psk解调

5.4AWGN信道的模拟

加性高斯白噪声AWGN(AdditiveWhiteGaussianNoise)是最基本的噪声与干扰模型。

加性噪声是叠加在信号上的一种噪声,通常记为n(t),而且无论有无信号,噪声n(t)都是始终存在的。

因此通常称它为加性噪声或者加性干扰。

白噪声:

噪声的功率谱密度在所有的频率上均为一常数,则称这样的噪声为白噪声。

如果白噪声取值的概率分布服从高斯分布,则称这样的噪声为高斯白噪声。

这里,在进行通信仿真时,我们考虑加性高斯白噪声信道(即AWGN信道),即在发射信号上加一个高斯白噪声随机序列。

在MATLAB中产生高斯白噪声非常简单,采用命令awgn或wgn,如程序中采用的CC=awgn(c,10,0)。

①y=awgn(x,SNR)

即:

增加高斯白噪声至信号x,信噪比SNR的单位为dB,信号的功率设定为1,如果信号x为复数,则增加复数高斯白噪声。

②y=awgn(x,SNR,sigpower)

如果sigpower是一个数值,则表示单位为dBW的信号功率;

如果sigpower为’measured’,则awgn在增加高斯白噪声前自行测量信号功率。

③y=awgn(x,SNR,sigpower,state)

重置randn的状态为state。

④y=wgn(M,N,P)

产生M*N高斯白噪声。

P表示dBW为单位的输出噪声功率。

6MATLAB软件仿真

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育 > 其它课程

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1