gold序列实验报告
- 格式:docx
- 大小:107.41 KB
- 文档页数:12
gold序列自相关函数
就是金序列自相关函数,首先是解释它的定义——金序列自相关函数(GSCF)是一个关于序列间滞后关系的统计概念。
它的定义是描述两个序列之间的滞后关系的参数,同样地,它也可以用于描述一个单独的序列内部的滞后关系。
GSCF能够衡量一段时间序列(以向量形式表示)之间存在的线性或者因果关系。
GSCF自相关函数采用传统的距离函数来测量时间序列之间的差异,包括最小二乘法、贝叶斯方法等。
它的计算方法可以用来比较两个序列的相关性,进而确定它们之间的关系。
实际应用中,GSCF自相关函数可以用来判断某一系统的稳定性;通过判断两个序列之间的相似性,GSCF可以提高数据分析的准确性。
例如:市场走势、风险管理等,都可以以GSCF自相关函数来反映。
此外,GSCF自相关函数也可以用于指标建模,数据可视化,以及序列模式检测,GSCF自相关函数可以被用于更广泛的应用,例如指标的选择,优化序列的性能,提高分析的准确度等。
GSCF自相关函数也可以应用于大数据中,以及机器学习,使用GSCF可以帮助用户提高数据分析的准确性,更有效地进行数据处理。
总之,GSCF自相关函数是一门统计概念,用于描述序列间的滞后关系,它可以用于评估序列行为的稳定性,以及检测其相似性,它也可以用于大数据的处理,通过分析不同的时间序列间的相关性,从而更好地分析数据,并找出隐藏的有价值的信息。
GSCF也有助于提高预测的准确性,在后续的分析中能够有效地获取更好的结果。
实验三、Gold序列及截短的Gold序列相关特性一、实验目的了解常用正交序列--Gold序列及截短Gold序列的自相关及互相关特性。
测量实验系统在异步CDMA工作方式下作为基站地址码的中的截短Gold序列。
二、实验内容1. 用示波器测量常用正交序列--Gold序列及截短Gold序列的波形及其相关运算后的自相关函数及互相关函数,了解其相关特性。
2. 用示波器测量实验系统在异步CDMA工作方式下作为基站地址码的中的截短Gold 序列(长32位)。
三、基本原理见实验一的”三、基本原理”。
下面是本实验待测量的Gold序列及截短Gold序列。
1. Gold序列(1)5阶Gold序列表3-3-1 5阶Gold序列的自相关特性测量(序列长25-1=31位)PN i(t) 0000,0000,1001,0100,1001,1110,1010,110.用实验一表3-1-2相位的二个5阶m序列优选对模二加产生PN j(t) 同上同上表3-3-2 5阶Gold序列的互相关特性测量(序列长25-1=31位)PN i(t) 0000,0000,1001,0100,1001,1110,1010,110.用实验一表3-1-2相位的二个5阶m序列优选对模二加产生PN j(t) 0110,1010,1010,1111,0111,1010,0110,111.用实验一表3-1-2的第一个序列与延时27位(即超前4位)的第二个序列模二加产生这就是本实验系统异步CDMA方式的二个基站地址码,只是相位不同(见式(2-2))。
54(2)7阶Gold序列表3-3-3 7阶Gold序列的自相关特性测量(序列长27-1=127位)PN i(t) 0000,0000,0011,1111,0000,1100,1110,1111,用实验一表3-1-4相位的二个7阶m序列优选对模二加产生0100,1100,0000,0010,0001,1010,1010,1100,0111,1100,1001,0011,0101,1101,0111,0101,0000,1100,0000,1000,0111,1000,1011,010.PN j(t) 同上同上表3-3-4 7阶Gold序列的互相关特性测量(序列长27-1=127位)PN i(t) 0000,0000,0011,1111,0000,1100,1110,1111,用实验一表3-1-4相位的二个7阶m序列优选对模二加产生0100,1100,0000,0010,0001,1010,1010,1100,0111,1100,1001,0011,0101,1101,0111,0101,0000,1100,0000,1000,0111,1000,1011,010.PN j(t) 0001,1110,0111,1010,1001,0001,1010,0000,用实验一表3-1-4第一个序列与延时123位(即超前4位)的第二个序列模二加产生1110,1101,1100,0110,1001,0001,1111,0111,1010,0100,0100,0001,1011,0011,0001,0000,0101,0011,1100,1000,1111,1011,1011,111.2. 截短的Gold序列(1)截短的Gold序列一:Gc1序列表3-3-5 Gc1序列自相关特性测量(序列长32位)PN i(t) 0010,1101,1110,0111,0010,1011,0011,0000.从实验一表3-1-4 PN i的第40位码片开始截取32位PN j(t) 同上同上表3-3-6 Gc1序列互相关特性测量(序列长32位)PN i(t) 0010,1101,1110,0111,0010,1011,0011,0000.从实验一表3-1-4 PN i的第40位码片开始截取32位PN j(t) 0010,1100,1110,1010,0111,1101,0000,1110.从实验一表3-1-4 PN j的第40位码片开始截取32位55(2)截短的Gold序列二:Gc2序列表3-3-7 Gc2序列自相关特性测量(序列长64位)PN i(t) 0010,1101,1110,0111,0010,1011,0111,0000, 从实验一表3-1-4 PN i的第40位码片开始截取64位0110,1101,0111,0100,0110,0100,0100,0000.PN j(t) 同上同上表3-3-8 Gc2序列互相关特性测量(序列长64位)PN i(t) 0010,1101,1110,0111,0010,1011,0111,0000, 从表3-1-4 PNi的第40位码片开始截取64位0110,1101,0111,0100,0110,0100,0100,0000.PN j(t) 0010,1100,1110,1010,0111,1101,0000,1110, 从表3-1-4 PNj的第40位码片开始截取64位0010,0100,1101,1010,1101,1110,1100,0110.四、实验步骤1. 实验箱不要插天线,打开电源。
实验八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]。
1. 绪论m序列具有优良的双值自相关特性,但互相关特性不是很好。
作为CDMA通信地址码时,由于互相关特性不理想,使得系统内多址干扰影响增大,且可用地址码数量较少。
在某些应用场合,利用狭义伪随机序列复合而成复合序列更为有利。
这是因为通过适当方法构造的复合序列具有某些特殊性质。
Gold序列就是一种复合序列,而且具有良好的自相关与互相关特性,地址码数量远大于m序列,且易于实现、结构简单,在工程上得到广泛应用。
表1是m序列和Gold序列的主要性能比较,表中为m序列的自相关峰值,为自相关主峰;为Gold序列的互相关峰值,为其自相关主峰。
从表1中可以看出:当级数n一定时,Gold序列中可用序列个数明显多于m序列数,且Gold序列的互相关峰值和主瓣与旁瓣之比都比m序列小得多,这一特性在实现码分多址时非常有用。
表1. m序列和Gold序列性能比较在引入Gold序列概念之前先介绍一下m序列优选对。
m序列优选对,是指在m序列集中,其互相关函数绝对值的最大值(称为峰值互相关函数)最接近或达到互相关值下限(最小值)的一对m序列。
设{ai}是对应于r次本原多项式F1(x)所产生的m序列, {bi} 是另一r次本原多项式F2(x)产生的m序列,峰值互相关函数满足(1)则m序列{ai}与{bi}构成m序列优选对。
例如:的本原多项式与所产生的m序列与,其峰值互相关函数。
满足式(1),故与构成m序列优选对。
而本原多项式所产生的m序列,与m序列的峰值互相关函数,不满足上式,故与不是m序列优选对。
2. Gold序列1967年,R·Gold指出:“给定移位寄存器级数r时,总可找到一对互相关函数值是最小的码序列,采用移位相加方法构成新码组,其互相关旁瓣都很小,且自相关函数和互相关函数均有界”。
这样生成的序列称为Gold码(Gold序列)。
Gold序列是m序列的复合序列,由两个码长相等、码时钟速率相同的m序列优选对的模2和序列构成。
伪随机序列仿真仿真实验报告报告时间:2013年5月13日姓名:刘梦曦学号:2010101012电子邮件:604417989@一、实验目的1、熟悉MATLAB 仿真的应用;2、掌握伪随机序列的原理、软件产生,并仿真分析其相关特性。
二、实验内容1、MATLAB中产生127位gold序列,并分析其自相关和互相关特性。
2、采用MATLAB的伪随机函数,生成127位二进制伪随机序列,并分析其自相关和互相关特性。
3、收集学习技术资料,列举五种以上通信系统中采用的伪随机序列。
三、实验过程记录根据搜集的资料在matlab中编写代码,然后运行,得到相应的特性图。
1、产生127位的gold序列2、gold序列的自相关性在MATLAB中编写的代码如下:close all;clear all;clc;n=7;%移位寄存器级数P=2^n-1%m列的周期%产生m1序列%c1=[1 0 1 0 0 1 1];%反馈系数==211 reg1=[zeros(1,n-1) 1];%初始化移位寄存器m1(1)=reg1(n);for i=2:P new_reg1(1)=mod(sum(c1.*reg1),2) ;for j=2:nnew_reg1(j)=reg1(j-1); endreg1=new_reg1;m1(i)=reg1(n);endsubplot(311);stairs(m1);xlabel('k');title('m1序列');%产生m2序列%c2=[1 0 1 1 0 0 1];%反馈系数==217 reg2=[zeros(1,n-1) 1];%初始化移位寄存器m2(1)=reg2(n);for i=2:Pnew_reg2(1)=mod(sum(c2.*reg2),2) ;for j=2:nnew_reg2(j)=reg2(j-1);endreg2=new_reg2;m2(i)=reg2(n);endsubplot(312);stairs(m2);xlabel('k');title('m2序列');%产生gold序列%for i=0:P-1shift_m2=[m2(i+1:P)m2(1:i)];%m2g(i+1,:)=mod(m1+shift_m2,2);%模2加endsubplot(313)stairs(g(1,:));xlabel('k');title('gold序列的第1行');%gold序列的自相关特性和互相关特性%g1=g(1,:);g2=g(2,:);%取gold序列的第2行% for i=-P+1:-1% shift=[g1(i+P+1:P) g1(1:i+P)];%r1(P+i)=sum(g1(P+i).*shift(P+i)) ;% end% for i=0:P-1% shift=[g1(i+1:P) g1(1:i)]; %r1(P+i)=sum(g1(i+1).*shift(i+1)) ;% endr1=conv(g1,g1);figure(2)subplot(211)stem(r1/P);xlabel('k');title('g1的自相关特性');% for i=-P+1:-1% shift=[g1(i+P+1:P) g1(1:i+P)];%r2(P+i)=g2(P+i).*shift(P+i);% end% for i=0:P-1% shift=[g1(i+1:P) g1(1:i)]; %r2(P+i)=g2(i+1).*shift(i+1);% endr2=conv(g1,g2);subplot(212);stem(r2/P);xlabel('k');title('g1与g2的互相关特性');(产生图形见附录)四、分析及结论由这个实验我们可以看出,Gold序列间不仅有良好的互相关性能,而且个数远比m序列多。
m序列和G o l d序列特性研究要点Harbin Institute of Technology扩频通信实验报告课程名称:扩频通信实验题目:Gold码特性研究院系:电信学院班级:通信一班姓名:学号:指导教师:迟永钢时间: 2012年5月8日哈尔滨工业大学第1章实验要求1.以r=5 1 45E为基础,抽取出其他的m序列,请详细说明抽取过程;2.画出r=5的全部m序列移位寄存器结构,并明确哪些序列彼此是互反多项式;3.在生成的m序列集中,寻找出m序列优选对,请确定优选对的数量,并画出它们的自相关和互相关函数图形;4.依据所选取的m序列优选对生成所有Gold序列族,确定产生Gold序列族的数量,标出每个Gold序列族中的所有序列,并实例验证族内序列彼此的自相关和互相关特性;5.在生成的每个Gold序列族内,明确标出平衡序列和非平衡序列,并验证其分布关系。
6.完整的作业提交包括:纸质打印版和电子版两部分,要求两部分内容统一,且在作业后面附上源程序,并加必要注释。
7.要求统一采用Matlab软件中的M文件实现。
第2章 实验原理2.1 m 序列二元m 序列是一种伪随机序列,有优良的自相关函数,是狭义伪随机序列。
m 序列易于产生于复制,在扩频技术中得到了广泛应用。
2.1.1 m 序列的定义r 级非退化的移位寄存器的组成如图1所示,移位时钟源的频率为c R 。
r 级线性移位寄存器的反馈逻辑可用二元域GF(2)上的r 次多项式表示2012() {0,1}r r i f x c c x c x c x c =++++∈L (1)图 2-1 r 级线性移位寄存器式(1)称为线性移位寄存器的特征多项式,其给出的表示反馈网络的而逻辑关系式是现行的。
因此成为线性移位寄存器。
否则称为,非线性移位寄存器。
对于动态线性移位寄存器,其反馈逻辑也可以用线性移位寄存器的递归关系式来表示112233 {0,1}i i i i r i r i a c a c a c a c a c ----=++++∈L (2) 特征多项式(1)与递归多项式(2)是r 级线性移位寄存器反馈逻辑的两种不同种表示法,因其应用的场合不同而采用不同的表示方法。
目录一、背景 (4)二、基本要求 (4)三、设计概述 (4)四、Matlab设计流程图 (5)五、Matlab程序及仿真结果图 (6)1、生成m序列及m序列性质 (6)2、生成50位随机待发送二进制比特序列,并进行扩频编码 (7)3、对扩频前后信号进行BPSK调制,观察其时域波形 (9)4、计算并观察扩频前后BPSK调制信号的频谱 (10)5、仿真经awgn信道传输后,扩频前后信号时域及频域的变化 (11)6、对比经信道前后两种信号的频谱变化 (12)7、接收机与本地恢复载波相乘,观察仿真时域波形 (14)8、与恢复载波相乘后,观察其频谱变化 (15)9、仿真观察信号经凯萨尔窗低通滤波后的频谱 (16)10、观察经过低通滤波器后无扩频与扩频系统的时域波形 (17)11、对扩频系统进行解扩,观察其时域频域 (18)12、比较扩频系统解扩前后信号带宽 (19)13、比较解扩前后信号功率谱密度 (20)14、对解扩信号进行采样、判决 (21)15、在信道中加入2040~2050Hz窄带强干扰并乘以恢复载波 (24)16、对加窄带干扰的信号进行低通滤波并解扩 (25)17、比较解扩后信号与窄带强干扰的功率谱 (27)六、误码率simulink仿真 (28)1、直接扩频系统信道模型 (28)2、加窄带干扰的直扩系统建模 (29)3、用示波器观察发送码字及解扩后码字 (30)4、直接扩频系统与无扩频系统的误码率比较 (31)5、不同扩频序列长度下的误码率比较 (32)6、扩频序列长度N=7时,不同强度窄带干扰下的误码率比较 (33)七、利用Walsh码实现码分多址技术 (34)1、产生改善的walsh码 (35)2、产生两路不同的信息序列 (36)3、用两个沃尔什码分别调制两路信号 (38)4、两路信号相加,并进行BPSK调制 (39)5、观察调制信号频谱,并经awgn信道加高斯白噪和窄带强干扰 (40)6、接收机信号乘以恢复载波,观察时域和频域 (42)7、信号经凯萨尔窗低通滤波器 (43)8、对滤波后信号分别用m1和m2进行解扩 (44)9、对两路信号分别采样,判决 (45)八、产生随机序列Gold码和正交Gold码 (47)1、产生Gold码并仿真其自相关函数 (48)2、产生正交Gold码并仿真其互相关函数 (50)九、实验心得体会 (51)直接序列扩频系统仿真一、背景直接序列扩频通信系统(DSSS)是目前应用最为广泛的系统。
Gold 序列实验报告一、实验过程及分析1 m 序列&G old 序列的产生(1)选取本原多项式367()1f x x x x x =++++,产生m 序列。
fbconnection_m=[1 0 1 0 0 1 1];mseq=m_sequence(fbconnection_m);(2)由本原多项式37237()1&()1f x x x f x x x x x =++=++++生成的m 序列为m 序列优选对,以此优选对来产生Gold 序列。
fbconnection_op_1=[0 0 1 0 0 0 1]; fbconnection_op_2=[1 1 1 0 0 0 1];goldseq=gold_seq(fbconnection_op_1,fbconnection_op_2);2 m 序列的相关特性kR (k )autocorrelation function of m sequence图1 m 序列自相关函数-150-100-50050100150kR (k )图 2 m 序列互相关函数3 G old 序列的相关特性-150-100-50050100150kR (k )autocorrelation function of gold sequence图3 G old 序列自相关函数-150-100-50050100150kR (k )图4 G old 序列互相关函数图2-5 m 序列&G old 序列最小,最大相关值4 m 序列&G old 序列相关特性比较-200-1000100200-20020406080100120140kR (k )autocorrelation function of m sequence -200-1000100200-20020406080100120140kR (k )autocorrelation function of gold sequence图6 m 序列&G old 序列自相关函数比较-200-1000100200-50-40-30-20-100102030kR (k )cross-correlation function of m sequence -200-1000100200-20-15-10-551015kR (k )cross-correlation function of gold sequence图7 m 序列&G old 序列互相关函数比较gold 序列在时延不为0是三值的,这一点不如m 序列,在时延为0处具有与m 序列相同的峰值特性。
显然,m 序列的自相关特性比Gold 序列的自相关特性要好。
Gold 序列具有更小的互相关峰值,显然Gold 序列的互相关特性比m 序列的互相关特性性能要好。
5 m 序列优选对m 序列优选对也是gold 序列族中的gold 序列,所以其互相关函数与gold 序列一致。
kR (k )cross-correlation function of m sequence optimum pairs图8 m 序列优选对的互相关函数6 任选6个G old 序列,观察其自相关函数kR (k )kR (k )kR (k )kR (k )kR (k )kR (k )图9 任选6个G old 序列的自相关函数7 任选6对G old 序列,观察其互相关函数kR (k )=17kR (k )=17kR (k )=17kR (k )=17kR (k )=17kR (k )=17图10 任选6对G old序列的互相关函数任意两个Gold序列互相关函数幅度小于或等于17,符合Gold理论。
源码(1) PN_Correlation.m% =======================================% PN_Correlation.m% Correlation analysis of PN sequence%% Author: jzh (04011646 seu)% Date: 2014.12.29% =======================================% cleanclose all;clear all;clc;% optimum pairsfbconnection_op_1=[0 0 1 0 0 0 1];fbconnection_op_2=[1 1 1 0 0 0 1];% any m sequence for testfbconnection_m=[1 0 1 0 0 1 1];% gold sequencemseq_op_1=m_sequence(fbconnection_op_1);mseq_op_2=m_sequence(fbconnection_op_2);goldseq=gold_seq(fbconnection_op_1,fbconnection_op_2);% m sequencemseq=m_sequence(fbconnection_m);% mappingmseq_op_1((mseq_op_1==0))=-1;mseq_op_2((mseq_op_2==0))=-1;goldseq((goldseq==0))=-1;mseq((mseq==0))=-1;m_auto=ccorr(mseq);% any two m sequences except optimum pairsm_cross=ccorr(mseq,mseq_op_1);gold_auto=ccorr(goldseq(1,:));gold_cross=ccorr(goldseq(1,:),goldseq(2,:));m_op_cross=ccorr(mseq_op_1,mseq_op_2);m_auto_max = max(m_auto)m_auto_min = min(m_auto)gold_auto_max = max(gold_auto)m_cross_amplitude_max = max(abs(m_cross))gold_cross_amplitude_max = max(abs(gold_cross))N=length(mseq); % sequence lengthabscissa=-N+1:N-1; % abscissa axisfigure(1);plot(abscissa,m_auto);xlabel('k'); ylabel('R(k)');legend('autocorrelation function of m sequence'); title('autocorrelation function of m sequence');figure(2);plot(abscissa,m_cross);xlabel('k'); ylabel('R(k)');legend('cross-correlation function of m sequence'); title('cross-correlation function of m sequence');figure(3);plot(abscissa,gold_auto);xlabel('k'); ylabel('R(k)');legend('autocorrelation function of gold sequence'); title('autocorrelation function of gold sequence');figure(4);plot(abscissa,gold_cross);xlabel('k'); ylabel('R(k)');legend('cross-correlation function of gold sequence'); title('cross-correlation function of gold sequence');figure(5);subplot(1,2,1);plot(abscissa,m_auto);xlabel('k'); ylabel('R(k)');title('autocorrelation function of m sequence');subplot(1,2,2);plot(abscissa,gold_auto);xlabel('k'); ylabel('R(k)');title('autocorrelation function of gold sequence');figure(6);subplot(1,2,1);plot(abscissa,m_cross);xlabel('k'); ylabel('R(k)');title('cross-correlation function of m sequence');subplot(1,2,2);plot(abscissa,gold_cross);xlabel('k'); ylabel('R(k)');title('cross-correlation function of gold sequence');figure(7);plot(abscissa,m_op_cross);xlabel('k'); ylabel('R(k)');legend('cross-correlation function of m sequence optimum pairs');title('cross-correlation function of m sequence optimum pairs');% test autocorrelation of any gold sequencefor test_time = 1:6ii = ceil(rand()*(N+2));figure();temp_gold_auto = ccorr(goldseq(ii,:));plot(abscissa,temp_gold_auto);xlabel('k'); ylabel('R(k)');legend(strcat( 'seq number = ',num2str(ii)));title('autocorrelation function of a random gold sequence');end% test cross-correlation of any 2 gold sequencefor test_time = 1:6ii = ceil(rand()*(N+2));jj=ceil(rand()*(N+2));while jj == iijj=ceil(rand()*(N+2));endfigure();temp_gold_cross = ccorr(goldseq(ii,:),goldseq(jj,:));plot(abscissa,temp_gold_cross);xlabel('k'); ylabel('R(k)');legend(strcat( 'seq1 number=',num2str(ii),', seq2 number=',num2str(jj)));title(strcat('cross-correlation function of 2 random gold sequence:',...' cross correlation amplitude MAX = ',...num2str(max(abs(temp_gold_cross)))));end(2) m_sequence.m% ==============================% m_sequence.m% generating m sequence%% Author: jzh (04011646 seu)% Date: 2014.12.29% ==============================function mseq = m_sequence(fbconnection)% ============================== m_sequence ============================== % generating m sequence%% Input:% fbconnection: feedback connection responding to primitive polynomial% Output:% msequ: generation of m sequence, 1-by-N% ========================================================================n = length(fbconnection);N = 2^n-1; % length of m sequenceregister = [zeros(1,n-1) 1]; % initial state of shift register% preallocatingnewregister = zeros(1,n);mseq = zeros(1,N);mseq(1)=register(n);for ii=2:N% feedbacknewregister(1) = mod(sum(fbconnection.*register),2);% shiftfor jj=2:nnewregister(jj)=register(jj-1);endregister=newregister; % updatemseq(ii)=register(n); % output m sequenceend(3) gold_seq.m% ==================================% gold_seq.m% generating gold sequence family%% Author: jzh (04011646 seu)% Date: 2014.12.29% ==================================function goldseq = gold_seq(fbconnection1,fbconnection2)% =============================== gold_seq =============================== % generating gold sequence family%% Input:% fbconnection1: feedback connection 1% fbconnection2: feedback connection 2% Note: fbconnection1 & fbconnection2 are optimum pairs% Output:% goldseq: generation of gold sequence family, (N+2)-by-N% ========================================================================mseq1 = m_sequence(fbconnection1);mseq2 = m_sequence(fbconnection2);N=2^length(fbconnection1) - 1;goldseq = zeros(N+2,N); % preallocating% different shift amount of two m sequencefor shift_amount = 0:N-1shift_mseq2 = [mseq2(shift_amount+1:N) mseq2(1:shift_amount)];goldseq(shift_amount+1,:) = mod(mseq1+shift_mseq2,2);endgoldseq(N+1,:)=mseq1;goldseq(N+2,:)=mseq2;(4) ccorr.m% =======================================% ccorr.m% calculate cross-correlation function%% Author: jzh (04011646 seu)% Date: 2014.12.29% =======================================function r = ccorr(seq1,seq2)% ================================ ccorr ================================= % calculate cross-correlation function%% Input:% seq1: sequence 1% seq2: sequence 2% Note: (a) length of two sequence must be the same% (b) two input sequence: calculate cross-correlation function% (c) one input sequence: calculate autocorrelation function% Output:% r: correlation function, 1-by-2*N-1% ========================================================================% one input sequence: calculate autocorrelationif nargin==1seq2 = seq1;endN = length(seq1);r = zeros(1,2*N-1); % preallocatingfor k=-N+1:-1seq2_shift = [seq2(k+N+1:N) seq2(1:k+N)];r(N+k) = seq1*seq2_shift';endfor k=0:N-1seq2_shift = [seq2(k+1:N) seq2(1:k)];r(N+k) = seq1*seq2_shift';end。