基于matlab的gold码的生成及相关性分析

合集下载

Gold序列产生及其特性实验

Gold序列产生及其特性实验

湖南科技大学移动通信实验报告姓名:吴文建学号:1208030104专业班级:应用电子技术教育一班实验名称:GOLD序列产生及其特性实验实验目的:1)掌握Gold序列的特性、产生方法及应用。

2) 掌握Gold序列与m序列的区别。

实验仪器:1、pc机一台2、实验原理:m序列虽然性能优良,但同样长度的m序列个数不多,且m序列之间的互相关函数并不理想(为多值函数)。

1.m序列优选对m序列优选对是指在m序列集中,其互相关函数最大值的绝对值满足下式的两条n介m序列:2.Gold序列的产生方法Gold序列是m序列的组合序列,由同步时钟控制的两个码元不同的m序列优选对逐位模2加得到。

这两个序列发生器的周期相同,速率相同,因而两者保持一定的相位关系,这样产生的组合序列与这两个自序列的周期也相同。

当改变两个序列的相对位移,会得到一个新的Gold序列。

Gold序列具有以下性质:(1)两个m序列优选对经不同移位相加产生的新序列都是Gold序列,两个n级移位寄存器可以产生2n+1个Gold序列,周期均为2n−1。

(2)Gold序列的周期性自相关函数是一个三值函数,与m序列相比,具有良好的互相关特性。

Gold序列的产生有两种形式:并联形式和串联形式实验步骤:1.预习Gold序列的产生原理及性质及独立设计Glod序列产生方法。

2.画出Gold序列仿真流程图。

3.编写MATLAB程序并上机调试。

4.比较m序列与Glod序列的异同。

5.撰写实验报告。

实验数据、结果表达及误差分析:实验仿真图形如图所示实验编写程序(此程序在实验五编写程序之上方可运行):function c=gold()n=7;a=[1 1 1 1 1 1 1 1];co=[];for v=1:2^n-1co=[co,a(1)];a(8)=mod(a(5)+a(1),2);a(1)=a(2);a(2)=a(3);a(3)=a(4);a(4)=a(5);a(5)=a(6);a(6)=a(7);a(7)=a(8);endm1=co;如有侵权请联系告知删除,感谢你们的配合!如有侵权请联系告知删除,感谢你们的配合!。

基于matlab的gold码的生成及相关性分析

基于matlab的gold码的生成及相关性分析
级寄存器为例并组其中的一组优选对
clc;
N=7; %以7级寄存器为例,并组其中的一组优选对:211,,217
connections=gfprimfd(N,'all');
f1=connections(4,:); %取一组本原多项式序列,211
f2=connections(16,:); %取另一组本原多项式序列,217
registers1=[0 0 0 0 0 0 1];%给定寄存器的初始状态
registers2=[0 0 0 0 0 0 1];%取相同的初始状态
L=2^N-1; %周期长度
sቤተ መጻሕፍቲ ባይዱm2=0;
sum1=0;
for k=1:L
seq1(k)=registers1(N); %第一组m序列
seq2(k)=registers2(N); %第二组序列
gold=mod(z,2); %模2运算
gold=1-2*gold; %转换为2值电平
disp(gold);
R=xcorr(gold,'unbiased'); %自相关
R=R/max(R); %归一化
figure;plot(R);title('gold序列的自相关函数');
s=fftshift(abs(fft(gold,2*L)).^2); %求功率谱
registers1(t)=registers1(t-1);
registers2(t)=registers2(t-1);
end
registers1(1)=sum1;
registers2(1)=sum2;
sum2=0;
sum1=0;
end
disp(f1);

GOLD码产生与特性分析实验

GOLD码产生与特性分析实验

实验八GOLD码特性实验一、实验目的1、掌握GOLD码的编解码原理。

2、掌握GOLD码的软件仿真方法。

3、掌握GOLD码的硬件仿真方法。

4、掌握GOLD码的硬件设计方法。

二、预习要求1、掌握GOLD码的编解码原理和方法。

2、熟悉matlab的应用和仿真方法。

3、熟悉Quatus的应用和FPGA的开发方法。

三、实验原理1、GOLD序列简介GOLD序列是由m序列的“优选对”构成的。

所谓优选对是指m序列中互相关值为[-1,-t(n),t(n)-2]的一对序列。

其中下表为部分m序列的部分优选对表1 部分m序列的部分优选对n基序序列配对序列3131554575,67,766103147,1337211217,235,277,203,301910211131,1461,1423,1167,1333,1365,1533 1020112415,2157,3515,34711140054445,4215,6015,4143,4053,7335,5747,5575,4161上表中的m序列采用8进制(可参见PN码实验)。

2、GOLD序列由m序列中的优选对{xi}和{yi}本身加上它们的相对移位模二相加构成的2n-1个序列组成,序列总数为2n+1。

任一队序列之间的互相关函数都是三值的,即即,GOLD序列的最大互相关值为下表为GOLD序列的t(n)值及其与自相关峰值Rs(0)的比值,同时给出GOLD序列族中的序列数。

表为部分GOLD序列的t(n)值、Rs(0)、序列数表级数n356791011序列长7316312751110232047序列数9336512951310252049t(n)591717336565t(n)/Rs(0)0.710.290.270.130.060.060.03四、GOLD的产生及特性分析1、建立GOLD的仿真文件(GOLD.MDL)GOLD1…GOLD7的Sample Time均设置为SampleTime;Preferred polynomial(1)设置为[1 0 1 1];Initial states(1)设置为[0 0 1]; Preferred polynomial(2)设置为[1 1 0 1];Initial states(2)设置为[0 01]。

gold序列的生成与相关特性仿真

gold序列的生成与相关特性仿真

gold序列的⽣成与相关特性仿真Gold序列⽣成与相关性仿真1.1 references[1] 基于Matlab的Gold码序列的仿真与实现.[2] Code Selection for CDMA Systems.1.2 m序列的⽣成原理1.2.1⽣成本原多项式利⽤Matlab编程环境求解本原多项式,其运⾏结果如表1所⽰.选择n=7,采⽤7级移位寄存器,产⽣的序列周期是127,其程序如下所⽰.N=7; %以7级寄存器为例,并组其中的⼀组优选对:211,,217connections=gfprimfd(N,'all');表(1)n=7 本原多项式上⾯的多项式中,仅有9个是独⽴的.因为第⼀⾏和第⼗⾏,第⼆⾏和四⾏,第三⾏和第⼗六⾏,第五⾏和第⼋⾏,第六⾏和第⼗四⾏,第七⾏和第⼗三⾏,第九⾏和第⼗⼋⾏,第⼗⼀⾏和第⼗⼆⾏,第⼗五⾏和第⼗七⾏是两两对称的.⽤⼋进制数表⽰时,所选择的本原多项式为211、217、235、367、277、325、203、313和345共9条.在这9条本原多项式中,选择⼀个基准本原多项式,再按要求选择另⼀本原多项式与之配对,构成m序列优选对,对7级m序列优选对如下表:表(2)n=7 m序列所以优选对1.2.2构成移位寄存器根据产⽣Gold码序列的⽅法,从上述本原多项式中选择⼀对m序列优选对,以211作为基准本原多项式,217作为配对本原多项式,通过并联结构形式来产⽣Gold序列,⽣成gold 序列的结构如图(6)所⽰:图(6)Gold序列⽣成结构1.3 ⾃相关函数仿真参数及初始值设定如下:N=7; %以7级寄存器为例,并组其中的⼀组优选对:211,,217connections=gfprimfd(N,'all');f1=connections(4,:); %取⼀组本原多项式序列,211f2=connections(16,:); %取另⼀组本原多项式序列,217registers1=[1 0 0 0 0 0 0];%给定寄存器的初始状态registers2=[1 0 0 0 0 0 0];%取相同的初始状态⽣成的gold 序列⾃相关函数如图(7)、(8)所⽰图(7) Gold 序列周期⾃相关函数结论:⾃相关函数取值集合{127,15,-1,-17}图(8)Gold 序列⾮周期⾃相关函数020406080100120140gold 序列周期⾃相关函数020406080100120140-40-2020406080100120140gold 序列⾮周期⾃相关函数1.4 互相关函数仿真时改变m序列寄存器初始状态,从⽽⽣成两个gold序列,求得互相关函数如图(9)(10)所⽰。

Gold码

Gold码

通信08-1 艾盼盼0850283101设计Gold序列发生器姓名:艾盼盼学号:0850283101 班级:通信08-1摘要:m序列,尤其是m序列优选对,是特性很好的伪随机序列。

但是,它们能彼此构成优选对的数目很少,不便于在码分多址系统中应用。

R.Gold于1967年提出了一种基于m 序列优选对的码序列,称为Gold序列。

它是m序列的组合码,由优选对的两个m序列逐位模2加得到,当改变其中一个m序列的相位(向后移位)时,可得到一新的Gold序列。

Gold 序列虽然是由m序列模2加得到的,但它已不是m序列,不过它具有与m序列优选对类似的自相关和互相关特性,而且构造简单,产生的序列数多,因而获得广泛的应用。

【关键词】:m序列优选对,Gold序列,模2加,自相关1. Gold码的概述1.1 gold码定义R.Gold于1967年提出了一种基于m序列优选对的码序列,称为Gold序列。

它是m序列的组合码,由优选对的两个m序列逐位模2加得到,当改变其中一个m序列的相位(向后移位)时,可得到一新的Gold序列。

Gold序列虽然是由m序列模2加得到的,但它已不是m 序列,不过它具有与m序列优选对类似的自相关和互相关特性,而且构造简单,产生的序列数多,因而获得广泛的应用。

1.2 gold码基本功能单元Gold码发生器的基本功能单元为线性反馈移位寄存器LFSR(Linear Fdddback Bhift Register)。

2.Gold序列的设计2.1 m序列优选对寻找方法产生gold序列的必要条件是m序列优选对,设A是对应于n级本原多项式f(x)所产生的m序列,B是对应于n级本原多项式g(x)所产生的m序列,当它们的互相关函数|Ra.b(k)|满足:则f(x)和g(x)所产生的m序列A和B构成一对优选对。

寻找m序列优选对的方法还有硬件计算法,分圆陪集法,逐步移位模2加法,三值判别法。

2.2gold序列设计的理论证明证明,若F1(x),F2(x)为两个不同的本原多项式,令F1(x)产生的序列为G(F1),F2(x)产生的序列为G(F2),F1(x). F2(x)所产生的序列为G(F1,F2),则有上式表明两本原多项式乘积所产生的序列等于两个本原多项式分别产生的模2和序列。

用MATLAB进行Gold序列的产生Gold序列因为其良好的伪噪声特性,经常作为CDMA扩频系统仿真中的用户扩频序列,用

用MATLAB进行Gold序列的产生Gold序列因为其良好的伪噪声特性,经常作为CDMA扩频系统仿真中的用户扩频序列,用

用MATLAB进行Gold序列的产生Gold序列因为其良好的伪噪声特性,经常作为CDMA扩频系统仿真中的用户扩频序列,用MATLAB可以产生各种长度的Gold序列优选对,用MATLAB进行Gold序列的产生Gold序列因为其良好的伪噪声特性,经常作为CDMA扩频系统仿真中的用户扩频序列,用MATLAB可以产生各种长度的Gold序列优选对,在此基础上,产生混沌序列等其他性质的扩频序列也很容易。

下面给出完整的源程序% MATLAB script for Illustrative Gold sequence generation. echo on % first determine the maximal length shift register sequences %We'll take the initial shift register content as "00001".connections1=[1 0 1 0 0];connections2=[1 1 1 0 1];sequence1=ss_mlsrs(connections1);sequence2=ss_mlsrs(connections2);% cyclically shift the second sequence and add it to the first one L=2^length(connections1)-1;;for shift_amount=0:L-1,temp=[sequence2(shift_amount+1:L) sequence2(1:shift_amount)];gold_seq(shift_amount+1,:)=(sequence1+temp) -floor((sequence1+temp)./2).*2;end;% find the max value of the cross correlation for these sequences max_cross_corr=0;for i=1:L-1,for j=i+1:L,% equivalent sequencesc1=2*gold_seq(i,:)-1;c2=2*gold_seq(j,:)-1;for m=0:L-1,shifted_c2=[c2(m+1:L) c2(1:m)];corr=abs(sum(c1.*shifted_c2));if (corr>max_cross_corr),max_cross_corr=corr;end;end;end;end;% note that max_cross_corr turns out to be 9 in this example...调用的子函数ss_mlsrs.mfunction [seq]=ss_mlsrs(connections);% [seq]=ss_mlsrs(connections)% SS_MLSRS generates the maximal length shift register sequence when the% shift register connections are given as input to the function. A "zero" % means not connected, whereas a "one" represents a connection. m=length(connections);L=2^m-1; % length of the shift register sequence requestedregisters=[zeros(1,m-1) 1]; % initial register contentsseq(1)=registers(m); % first element of the sequence for i=2:L, new_reg_cont(1)=connections(1)*seq(i-1);for j=2:m,new_reg_cont(j)=registers(j-1)+connections(j)*seq(i-1);end;registers=new_reg_cont; % current register contentsseq(i)=registers(m); % the next element of the sequence end;。

基于matlab的伪随机序列生成及相关函数仿真实验

基于matlab的伪随机序列生成及相关函数仿真实验

武夷学院实验报告课程名称:_扩频通信技术及应用_ 项目名称:基于matlab的伪随机序列生成及相关函数仿真实验姓名:翁开传__专业:__通信工程___ 班级:__2__学号:_40__同组成员_无___1注:1、实验预习部分包括实验环境准备和实验所需知识点准备。

2、若是单人单组实验,同组成员填无。

2注:实验过程记录要包含实验目的、实验原理、实验步骤,页码不够可自行添加。

2)函数auto_corr()计算二进制序列seq的自相关函数,并画出函数曲线。

在函数内调用了生成m序列的函数ms_generator(*)生成的m序列seq,然后在计算。

function seq=ms_generator(registers,connections)registers=[0 0 0 0 1];connections=[1 0 0 1 0 1];n=length(connections);L=2^(n-1)-1;seq(1)=registers(n-1);for i=2:Lsum=0;for m=1:(n-1)sum=mod(sum+registers(m)*connections(m+1),2);endfor k=(n-1):-1:2registers(k)=registers(k-1);endregisters(1)=sum;seq(i)=registers(n-1);endfunction auto_correlation=auto_corr(seq)registers=[1 0 0 0 0 ];%设置初始状态connections=[1 0 1 0 0 1];%设置反馈逻辑seq=ms_generator(registers,connections);seq=-1*(seq*2-1);%负逻辑映射len=length(seq);temp=[seq seq];for i=0:len-1auto_correlation(i+1)=seq*(temp(i+1: i+len))';endauto_correlationplot(0:len-1,auto_correlation);运行的结果如下3)函数cross_corr()计算二进制序列seq1和seq2的互相关函数并画出曲线。

MATLAB仿真m序列和Gold序列自相关与互相关

MATLAB仿真m序列和Gold序列自相关与互相关

MATLAB仿真m序列和Gold序列自相关与互相关MATLAB 是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。

MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。

本章正是运用MATLAB来仿真m序列和Gold序列的相关特性,以及OCDMA 系统的误码率同用户数N的关系曲线。

su1 仿真过程在理论分析的基础上,下面使用附录上两段程序,通过MATLAB仿真得出m序列和Gold序列的自己相关性。

这段m序列产生程序采用了8个移位寄存器,将最后两个移位寄存器的值进行异或处理反馈给第一个移位寄存器,然后向前移位,输出最后一个移位寄存器的值,Gold序列的产生只是将两个m序列中的一个进行延时移位,再进行异或,产生的主要原理和m序列并无较大差异。

在这两段程序个前半部分m序列和Gold序列生成的基础上,只要将y1=xcorr(x1)改为y1=xcorr(x1,x2)即可求出它们的互相关仿真。

2 仿真结果在系统中采用上述序列仿真得到自相关和互相关特性曲线如图1 , 2及图3 所示。

图1 m 序列的自相关曲线图4-2 m 序列与Gold序列的自相关曲线图4-3 m 序列与Gold 序列的互相关曲线附录程序1X1=1;X2=0;X3=1;X4=0; %移位寄存器输入Xi初T态(0101), Yi为移位寄存器各级输出m=120; %置M序列总长度for i=1:m %1#Y8=X8; Y7=X7; Y6=X6; Y5=X5; Y4=X4; Y3=X3; Y2=X2; Y1=X1;X8=Y7; X7=Y6; X6=Y5; X5=Y4; X4=Y3; X3=Y2; X2=Y1;X1=xor(Y7,Y8); %异或运算if Y8==0U(i)=-1;elseU(i)=Y8;endendM=U%绘图i1=it=1:1:i1;x1=[(2*M)-1]’;%将运行结果m序列M从单极性序列变为双极性序列y1=xcorr(x1);%求自相关性t=1:1:i1;plot(t,y1(1:i1));axis([1,120,-12,288])%绘出信号的相关图gridxlabel('t')ylabel('相关性')title('移位寄存器产生的M序列的相关性')程序2function c=gold()n=7;a=[1 1 1 1 1 1 1 1];co=[];for v=1:2^n-1co=[co,a(1)];a(8)=mod(a(5)+a(1),2);a(1)=a(2);a(2)=a(3);a(3)=a(4);a(4)=a(5);a(5)=a(6);a(6)=a(7);a(7)=a(8);endm1=co;b=[1 0 1 0 0 0 0 1];co=[];for v=1:2^n-1co=[co,b(1)];m=mod(b(5)+b(1),2);p=mod(b(6)+m,2);b(8)=mod(b(5)+b(1),2);b(1)=b(2);b(2)=b(3);b(3)=b(4);b(4)=b(5);b(5)=b(6);b(6)=b(7);b(7)=b(8);endm2=co;c=xor(m1,m2);x2=[(2*c)-1]’;%将运行结果Gold序列c从单极性序列变为双极性序列y1=xcorr(x2);%求自相关性t=1:1:120;plot(t,y1(1:120));axis([1,120,-12,288])%绘出信号的相关图gridxlabel('t')ylabel('相关性')title('移位寄存器产生的Gold序列的相关性')。

m序列对及平衡Gold序列的产生与搜索

m序列对及平衡Gold序列的产生与搜索

平衡Gold序列的产生与搜索方法
平衡Gold序列是一类具有优良伪随机性和自相关性的二元序列。产生平衡 Gold序列的方法主要有两种:一是通过平衡Gold多项式产生平衡Gold序列; 二是通过选择适当的m序列和反馈函数产生平衡Gold序列。搜索方法主要有基 于差分编码的搜索算法和基于自相关函数的搜索算法。
3、信息隐藏:平衡Gold序列可以用于信息隐藏中的隐写术,以隐藏敏感信息 在公开信息中。由于平衡Gold序列具有优良的自相关性,它可以用于构造高效 的隐写算法,提高信息隐藏的安全性和鲁棒性。
未来展望
随着技术的发展,平衡Gold序列的研究将面临新的挑战和机遇。以下是一些未 来可能的研究方向:
1、高效产生方法:目前平衡Gold序列的产生方法还比较耗时,因此研究更高 效的产生方法以提高搜索速度和降低计算成本是未来的一个研究方向。
1、反馈函数设计:反馈函数是m序列发生器的核心部分,其设计的好坏直接影 响到m序列的性能。一个好的反馈函数应该具有较低的误码率、较高的线性复 杂度、易于实现等优点。常用的反馈函数包括异或、同或、与等运算。
2、LFSR级数和反馈位数选择:m序列发生器的性能与LFSR的级数和反馈位数 密切相关。一般来说,增加LFSR的级数和反馈位数可以提高m序列的性能,但 同时也会增加硬件实现的复杂度和功耗。因此,在设计中需要根据实际需求选 择合适的LFSR级数和反馈位数。
在软件实现中,可以使用各种编程语言如C、C++、Python等编写m序列发生器。 软件实现具有灵活度高、易于调试和修改等优点,但也存在运行速度较慢和需 要运行额外的处理器等缺点。
m序列发生器的应用
m序列发生器在信号处理、通信技术等领域具有广泛的应用。以下是m序列发生 器的一些典型应用:

Gold码序列生成MATLAB代码

Gold码序列生成MATLAB代码

%本原多项式(二进制)
% Mfb_len = 11;%M序列要求生成多项式的长度
Mfb_ratio = log2(M_base);
M1fb_raw_len = M1origin_len * Mfb_ratio;%M序列本源多项式转换二进制为后的长度
M1fb_raw = zeros(1, M1fb_raw_len);%初始化M序列生成多项式
%自制Gold序列
function [GoldSeq] = dyc_gold_gen_v3()
%本原多项式参数
M_base = 8;%本原多项式表示进制数
M1 = [2 0 1 1];
M2 = [2 4 1 5];
Mfb_len = 11;%M序列的生成多项式的长度
Mfinal_len = 1023;%生成的M序列的长度
M1regs_e(1) = M1regs_s(M1regs_lቤተ መጻሕፍቲ ባይዱn);
for M1_ri = 2 : M1len_period
M1regs_m2(1) = mod(sum(M1fb .* M1regs_m1), 2);%低位产生新的一位
M1regs_m2(2 : M1regs_len) = M1regs_m1(1 : (M1regs_len - 1));%向高位右移一位
M1regs_m1 = M1regs_m2;
M1regs_e(M1_ri) = M1regs_m1(M1regs_len);
end
M2regs_e(1) = M2regs_s(M2regs_len);
for M2_ri = 2 : M2len_period
M2regs_m2(1) = mod(sum(M2fb .* M2regs_m1), 2);

Gold序列产生仿真课程设计报告

Gold序列产生仿真课程设计报告

目录一.基本原理 (1)1.1伪随机序列 (1)1.11伪随机序列的相关概念 (1)1.12伪随机序列的数学 (1)1.13伪随机序列的相关特性 (2)1.2m序列 (3)1.3Gold序列 (5)1.31Gold序列的产生原理 (5)1.32Gold序列的基本性质 (6)二.设计过程 (6)2.1 MATLAB编程简介 (6)2.2 设计思路与流程图 (7)2.3 仿真程序 (8)三.仿真结果 (9)四.结果分析 (9)4.1相关性的理论分析 (9)4.2自相关 (11)4.3互相关 (13)五.总结 (17)一:基本原理Gold序列是R·Gold提出的一种基于m序列的码序列,这种序列有较优良的自相关和互相关特性,构造简单,产生的序列数多,因而获得了广泛的应用。

1.1伪随机序列1.1.1伪随机序列相关概念伪随机序列作为扩频通信系统中的一部分是十分关键的,它关系到扩频系统的性能。

四十年代末,信息论的奠基人香农(C.E.Shannon)提出的编码定理指出:只要信息速率Rb小于信道容量C,则总可以找到某种编码方法,在码周期相当长的条件下,能够几乎无差错的从收到高斯噪声干扰的信号中复制出原发信息。

这里有两个条件,一是Rb<=C,二是编码的码周期足够长。

同时香农在证明编码定理的时候,提出用具有白噪声统计特性的信号来编码。

白噪声是一种随机过程,它的瞬时值服从正态分布,功率谱在很宽频带内都是均匀的。

但是至今无法实现对白噪声放大、调制、检测、同步及控制等,而只能用具有类似于限带白噪声统计特性的伪随机序列信号来逼近它,并作为扩频系统的扩频码。

六十年代末,一些易于产生、加工和复制且具有白噪声性质的“伪噪声编码技术”日趋成熟,因此高效抗干扰编码通信变得蓬勃发展起来。

同时用各种不同波形的正交码来实现波形分割的码分多址通信也相继出现,实现了无线用户的随意呼叫通信。

这种技术在地面多址通信和卫星通信中都可采用。

基于MATLAB的Gold序列相关性研究

基于MATLAB的Gold序列相关性研究
1 伪 随 机序 列
进行计算 自相关函数和互相关 函数 , 并进行 比较得到结果如图 1与
图2 。பைடு நூலகம்
可以看 出: m 序列 自相关曲线要 比 G o l d 序列 自相关曲线整体上 平缓 , 除零点外几乎处处相关值都为零, ol G d序列的自相关 陛也 比较 好 ,但在非零处有起伏 , m序列的 自相关 性比 G o l d 序列 的自相关性 要好。 ol G d 序列的互相关函数曲线与 m序列互相关相比起伏相对要 小, 证明了 G ol d 序列的互相关性 比m序列的互相关 陛好。
m 津 骞 翘 美 瞧 懈 毒期 裁 缝
伪随机序列作为扩频通信系统的一个组成部分是非常重要的 , 它是与扩频系统的性能有关的。 如果一个序列 , 它的结构可以预先确 定, 并可重复和复制 , 而且它也有一个随机序列的随机性 , 这样 的序 列称为伪随机序列。 伪随机序列 , 一般具有类似与白噪声相似的统计 特J 陛, 白噪声是一种随机过程 , 瞬时幅度值服从正态分布, 自相关 函 数和功率谱密度有极好的相关 I 生,伪随机序列是针对 白噪声演化而 来 的, 只有… 0’ 和“ 1 ” 两种电平 , 因此伪随机编码概率分布不再具备高 斯分布。 通常为随机序列应具这样 的特点 : 在每个周期内 0和 1 发生 的概率大致相等 ; 对特殊的伪随机序列 , 任何非零元素的个数的位移 随机序列 , 该序列与元素相同的半原始序列 , 不 同元素的一半。
图 2 两种 序列 的互相 关性 0 ) , x 本身的取值并无实际意义 , 也不需要计算 x的值 。 如特征方程为 x ) = 1 + x + x 4 的多项式 , 它表示 x O , x 和x 的系数 C o = C - C 4 - 1 , 其余 为 5 结论 G o l d 是一种基于 1 1 3 . 序列码序列 , 该序列具有 良好的自相关和互 零。 利用 MA T L A B软件中的 m _ s e q u e n c e函数, 可以得到对应移位寄 结构简单 , 产生的序列号 , 对产生 r r l 和伪 随机序列和它们 存器产生的 m序列, 返 回结果为: 1 0 0 0 0 1 0 1 0 1 1 1 0 1 1 0 0 0 1 1 1 1 1 0 0 1 1 0 相关特 眭, 的属性 的 G o l d序 列的方法进行 了较深入 的研究 ,设计 了相应 的 1 0 0。

常用伪随机码序列的相关性分析与MATLAB仿真

常用伪随机码序列的相关性分析与MATLAB仿真
参考文献 [ 1] 孟小峰.Web 信息集成技术研究[J].计算机应用与软件.2003.11:32- 36. [ 2] Castillo J.A.R., Silvescu A., Caragea D. 等 .Information Extraction and Integration from Heterogeneous,Distributed,Autonomous Information Source - A Federated Ontology - Driven Query - Centric Approach [J]. IEEE International Conference. 2003. 2003:183- 191. [ 3] 邓志鸿, 唐世渭, 杨冬青.面向语义集成- 本体在 web 信息集成中的研究进展 [J].计算机应用.2002 .22(1):15- 17. [ 4] 邓志鸿, 唐世渭, 张铭, 等.Ontology 研究综述[J]. 北京大学学报(自然科学版). 2002. 38(05):730- 738. [ 5] W3C, OWL Web Ontology Language Overview [EB/OL].http://www.w3.org/TR/ owl- features/., February 2004. [ 6] Dimitre A.Dimitrov, Nanbor Wang. Information Integration Via an End- to- End Distributed Semantic Web System[J]. ISWC 2006,764–777. [ 7] 赵宁,李庆忠. 应用本体解决面向语义的信息集成中的查询处理[J].计算机科 学.2004.31(9A):134- 138.

基于Matlab的Gold码序列的仿真与实现

基于Matlab的Gold码序列的仿真与实现

基于Matlab的Gold码序列的仿真与实现
严三国
【期刊名称】《兰州工业学院学报》
【年(卷),期】2009(016)001
【摘要】Gold码是一种伪随机序列,由于其可供使用的伪随机序列数量较多,多用于多址通信中.本文介绍了Gold码的构造方法,并利用Matlab中的Simulink仿真系统进行仿真分析,仿真结果证明了该方法的正确性和可行性.并对Gold码序列的自相关函数值和同族内的互相关函数值进行了仿真计算.
【总页数】4页(P15-18)
【作者】严三国
【作者单位】成都电子机械高等专科学校,机械系,成都,610031
【正文语种】中文
【中图分类】TN911
【相关文献】
1.基于Matlab的m序列的仿真与实现 [J], 魏瑞
2.一种基于Matlab的Turbo码仿真技术的研究与实现 [J], 孙增友;赵云鹏;李春前
3.基于MATLAB的扩频序列码仿真实现 [J], 杨晓;杨凯
4.基于MATLAB的差分空时酉群码的仿真实现 [J], 孔昭煜;王玉龙;张军
5.一种基于MATLAB的Turbo码编码仿真实现 [J], 陈朝;陈芳;周峰
因版权原因,仅展示原文概要,查看原文内容请购买。

任意阶平衡gold码的产生及其互相关性(代码)

任意阶平衡gold码的产生及其互相关性(代码)

任意阶平衡g o l d码的产生及其互相关性(代码)本页仅作为文档页封面,使用时可以删除This document is for reference only-rar21year.Marchclear all;n=input('请输入移位寄存器的级数n,n是大于等于2的整数,且n不能为4的倍数,为4的倍数不保证结果正确: ');%五级移位%N=2^n-1;%周期为N%x=gfprimfd(n,'all');%产生级数为n的本原多项式%[row,column]=size(x);if(n==2)%n为2是不能用下面求y的公式,作为特例直接写入%y=[1,1];endif(n>2)y=x(1:row,2:column);%本来是nXn矩阵,第一列都是1,不要了,现在是nX(n-1)矩阵%endm=zeros(row,N);%求出所有m序列%for r=1:row%从1到第row行%register7=[zeros(1,n-1),1];%寄存器7,表示移位寄存器的初态除了最后一位,其余全0%m(r,1)=register7(n);%m(r,1)是的第r行第一列的取值%for i=2:1:N%从2到N,连续取值%register8(1)=mod(sum(y(r,:).*register7),2);%移位寄存器的向量与反馈系数的向量点乘后,新向量的所有数模二加,得到一个数作为寄存器8的第一位%for j=2:1:n%从2到N,连续取值%register8(j)=register7(j-1);%确定后n-1位%endregister7=register8;%保存移位寄存器现在的值到register1%m(r,i)=register7(n);%输出的书,从第2位开始%end %现在得到了第r行的m序列%end %现在得到了第1到第r行的m序列%if(n>2)%列出m1最大行数,超过会报错%fprintf('m序列的行数小于等于%1.0f',row)%显示之后要输入m1的要求%endif(n==2)%列出m1最大行数,超过会报错%fprintf('m序列的行数小于等于1')%显示之后要输入m1的要求%endfprintf('\n')%换行%pass=1;%判断m1序列是否有优选对,若有,pass在下面循环中置0%while(pass==1) %若m1没有优选对,则循环%nom1=input('请从矩阵y中选出你所要m1序列本愿多项式的行数: ');%输入一个数赋给nom1,number of m1,即m1的行数%m1=m(nom1,:);%得到了你指定的m1序列%rm=zeros(1,2^n-1);%两个m序列的互相关性,用来判断m优选对%s=zeros(1,2^n-1);%m优选对中移位后相同数的个数%d=zeros(1,2^n-1);%m优选对中移位后相同数的个数%register2=zeros(1,2^n-1);%寄存器2,用以验证m序列优选对时移位%cmatch=0;%counter match优选对匹配的数量%match=zeros(1,N);%匹配优选对所在的行数%matchs=zeros(1,N);%match sequence匹配优选对的序列%for k=1:row%对m序列每一行循环%m2=m(k,:);%把m序列的第k行赋给m2%register1=m2;%寄存器1,用以验证m序列优选对时移位%for i=1:2^n-1A=mod((m1+register1),2);%移位加N次%for j=1:2^n-1%逐位判断m1与m2是否相同,判断N次%if A(j)==0%若第j位位相同%s(i)=s(i)+1;%相同数加1,之后清零%endd(i)=N-s(i);%不同数减一,因为是s(i)的因变量,不用清0%endrm(i)=s(i)-d(i);%rm是互相关函数,因为是s(i)和d(i)的因变量,不用清0%s(i)=0;%必须清0,不然k的循环序列就会叠加%register2(1)=register1(N);%以下三行为循环右移%register1(2:N)=register1(1:N-1);register1(1)=register2(1);endmaxrm=max(abs(rm));%maxrm为互相关值的最大绝对值,因为是rm的因变量,所以不用清0%if(mod(n,2)==1)%对2除n求余,判断n的奇偶性%if(maxrm==2^((n+1)/2)+1)%奇数判断互相关最大绝对值是否满足书上条件4—37%cmatch=cmatch+1;%匹配(即互为优选对)个数加1%match(1,cmatch)=k;%匹配行数写入match序列中%matchs(cmatch,:)=m2;%匹配序列写入matchs矩阵中%endendif(mod(n,2)==0)%同上%if(maxrm==2^((n+2)/2)+1)%偶数判断互相关最大绝对值是否满足书上条件4—37%cmatch=cmatch+1;match(1,cmatch)=k;matchs(cmatch,:)=m2;endendendif(cmatch~=0)%若m1有优选对,cmatch不等于0%pass=0;%pass置0,while不在循环%endif(cmatch==0)%若m1没有优选对,cmatch等于0%fprintf('m1没有优选对,请重新选择m1行数')%输出括号中的数%fprintf('\n')%换行%endendfprintf('下列数字表示与m1互为优选对的m序列的行数')%输出括号中的数% match(1:cmatch)%因为后面没加分号,执行程序时会显示match序列的第1到第camtch列%choice=input('是否依次显示m1的优选对y/n:','s');%按括号中文字内容从键盘输入一个置%if(choice=='y')%输入y执行,输入其他任何数不执行%matchs%matchs,match sequence,表示m1的所有优选对%endnom2=input('请从矩阵y中选出你所要m2序列的行数: ');%同中文%m2=m(nom2,:);%得到m2,用优选对m1,m2,生成下面的gold序列,并选出平衡gold序列%gold=zeros(N+2,N);%一共N+2个gold序列,每个周期为N,设(N+2)*2的矩阵%register3=m2;%给寄存器3赋值m2,下面循环右移要用%register4=zeros(1,N);%给寄存器4设置成1xN的矩阵,下面循环右移要用%for i=1:N%循环N次%gold(i,:)=mod((m1+register3),2);%两m序列逐位模二加%register4(1)=register3(N);%下面三行为循环右移%register3(2:N)=register3(1:N-1);register3(1)=register4(1);end;gold(N+1,:)=m1;%m序列包含生成它的2个m序列%gold(N+2,:)=m2;c1=zeros(1,N+2);%代表1的个数counter 1%c0=zeros(1,N+2);%代表0的个数counter 2%cbg=0;%代表平衡gold序列的个数counter balence gold%bg=zeros(1,N);%代表平衡gold序列%for i=1:N+2%开始找,要找N+2行%for j=1:N%弄出来一个全1的向量,长度为N,命名为judge函数judge(1,j)=0;ends2=mod((gold(i,:)+judge),2);%s2是一个gold序列与全1序列模二加得到的序列%for k=1:N %看有多少个1%if s2(k)==1c1(i)=c1(i)+1;endendfor k=1:N %有多少个0%if s2(k)==0c0(i)=c0(i)+1;endendif c1(i)-c0(i)==1%1的个数比0多1,找到一个平衡序列%cbg=cbg+1;%平衡gold序列个数加1,可以看是不是约50%或75%是平衡的%bg(cbg,:)=gold(i,:);%这个个平衡序列复制到bg中%endendfprintf('已生成%1.0f个平衡gold序列',cbg)fprintf('\n')。

Gold码特性研究

Gold码特性研究

Gold 序列是 m 序列的复合码序列,它是由两个码长相等、码时钟速率相同
的 m 序列优选对的模 2 和序列构成。每改变两个 m 序列相对位移就可得到一个 新的 Gold 序列。 当相对位移 1, 2, , 2 r 1 个比特时, 就可以得到一族 2r 1 个 Gold 序列,加上原来的两个 m 序列,共有 2r 1 个 Gold 序列,即
2r 1 。Gold 码族同族内互相关函数取值已有理论结果,且具有三值互相关函数
的特性。但是不同 Gold 码族之间的互相关函数取值已不是三值而是多值,而且 互相关值已大大超过了同族内部的互相关值。
2.3.4 平衡 Gold 序列
Gold 序列就其平衡性来讲,可以分为平衡码序列和非平衡码序列。在一个
Rab ( ) max
1 1 r2 2 r 2 2 2 1
r为奇数 r为偶数且不是4的倍数
(5)
则 F1 ( x ) 与 F2 ( x) 所产生的 m 序列 ai 与 bi 构成 m 序列优选对。
2.3.2 m 序列优选对的寻找
本试验在求取相关函数的过程中, 我们利用的是 2 个序列循环移位相加的形 式得到结果的,并且自相关函数是归一化的,而互相关函数则未进行归一化。 本项实验利用前面抽取获得的 m 序列,依次检查两项之间的互相关函数是
r 1
1 (例如当 r 5 时,平衡 Gold 序列中应该有 17 个 1 元素,16 个 0
元素,相加的结果就为 17) ,则为平衡 Gold 序列,否则为不平衡 Gold 序列。记 录下族内平衡和非平衡 Gold 序列个数再与理论值对比。
2.4 Kasami 序列
Kasami 序列分为 Kasami 小集序列和 Kasami 大集序列。 下面侧重介绍 Kasami

matlab产生m序列Gold序列 开题报告

matlab产生m序列Gold序列 开题报告

********学院毕业设计(论文)开题报告专业通信工程学生******学号**********班号*******指导教师*******开题日期2013年9月11日2013年 9 月 11 日说明一、开题报告应包括下列主要内容:1.通过学生对课题题目和课题研究现状、选题的目的和意义论述,判断是否已充分理解毕业设计(论文)的内容和要求。

2.进度计划是否切实可行。

3.是否具备毕业设计所要求的基础条件。

4.预计研究过程中可能遇到的困难和问题,以及解决的措施。

5.主要参考文献。

二、如学生首次开题报告未通过,需在一周内再进行一次。

三、开题报告要求学生认真填写,由开题答辩组和指导教师填写意见、签字后,统一交所在分院保存,以备检查。

指导教师评语:指导教师:年月日开题答辩组审查意见:组长:组员:年月日一、课题题目和课题研究现状课题题目:基于MATLAB的扩频码设计仿真及性能分析课题研究现状:人类社会进入到了信息社会,通信现代化是人类社会进入信息时代的重要标志。

怎样在恶劣的环境条件下保证通信有效地、准确地、迅速地进行,是当今通信工作者所面临的一大课题。

因此,出现了扩频通信。

扩频通信作为一种新型的通信体系,是通信领域的一个重要发展方向,它与光纤通信、卫星通信一同被誉为进入信息时代的三大高技术通信传输方式。

扩频通信系统的抗干扰、保密性、多址、捕获与跟踪等性能都与扩频码的设计密切相关,因此扩频码的设计及性能分析就成为扩频系统设计的关键技术。

正是由于扩频通信技术具有上述优点,自50年代中期美国军方便开始研究,一直为军事通信所独占,广泛应用于军事通信、电子对抗以及导航、测量等各个领域。

直到80年代初才被应用于民用通信领域。

并且应用范围不断扩大。

同时,为了满足日益增长的民用通信容量的需求和有效的利用频谱资源,各国都纷纷提出在数字蜂窝移动通信、卫星移动通信、和未来的个人通信中采用扩频技术,扩频技术已广泛应用于蜂窝电话、无绳电话、微波通信、无线数据通信、遥测、监控、报警的系统中。

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