扰码的作用、原理和实现
一、扰码的作用
对数字信号的比特级进行随机处理,减少连0和连1的出现,从而减少码间干扰和抖动,方便接收端的时钟提取;同时又扩展了基带信号频谱,起到加密的效果。为了保证在任何情况下进入传输信道的数据码流中“0”与“1”的概率都能基本相等,传输系统会用一个伪随机序列对输入的传送码流进行扰乱处理,讲二进制数字信息做“随机化”处理,变为伪随机序列,也能限制连“0”码或连“1”码的长度,这种“随机化”处理通常称为“扰码”。从更广泛的意义上来说,扰码能使数字传输系统(不论是基带或带通传输)对各种数字信息具有透明性,这不但因为扰码能改善位定时恢复的质量,还因为扰码能使信号频谱弥散而保持稳恒,相当于将数字信号的功率谱拓展,使其分散开了,因此扰乱过程又被称为“能量分散”过程。
二、扰码的原理
伪随机序列是由一个标准的伪随机序列发生器生成的,其中“0”与“1”出现的概率接近50%。由于二进制数值运算的特殊性质,用伪随机序列对输入的传送码流进行扰乱后,无论原始传送码流是何种分布,扰乱后的数据码流中“0”与“1”的出现概率都接近50%。扰乱虽然改变了原始传送码流,但这种扰乱是有规律的,因而也是可以解除的,在接收端解除这种扰乱的过程称为解扰。完成扰码和解扰的电路相应称为扰码器和解扰器。
三、扰码实现方法
1、PC(相控)序列
2、移位寄存器序列(m和M序列)
3、Gold序列
m序列编程实现扰码:
特征方程:f(x)=1+x^14+x^15
msig=[0 0 1 0 1 0 0 1 0 1 0 1 0 0 1];%高位到底位
n_m=length(msig);
%产生原始序列
N=2^n_m-1;
sig=randint(1,N,2);
%扰码
count=0;
for i=1:N;
a(i)=xor(msig(1),msig(2));
for j=1:n_m-1;
msig(j)= msig(j+1);
end;
msig(n_m)=a(i);
y(i)=xor(sig(i),a(i));
if a(i)==1;
c(i)=i;
count=count+1;;
else;
c(i)=0;
end;
p1=count/N;
end;
%画图
t=1:100;
subplot(2,1,1);stem(t,sig(1:100));ylabel('sig');
subplot(2,1,2);stem(t,y(1:100));ylabel('msig');