Gold序列的仿真研究

Gold序列的仿真研究
Gold序列的仿真研究

Gold序列的仿真研究

Gold序列的仿真研究

摘要: Gold序列是R·Gold提出的一种基于m序列的码序列,这种序列有较优良的自相关和互相关特性,构造简单,产生的序列数多,因而获得了广泛的应用。本文对Gold序列进行仿真研究,首先介绍了扩频通信中常用的m序列和Gold序列码产生的方法原理和性质,运用Matlab对Gold码的生成和性能进行了仿真分析。

关键词:伪随机序列;Gold序列;m序列;Matlab仿真

SIMULATION OF GOLD SEQUENCES Abstract:Gold sequences is proposed by R ? Gold which is based on m sequences. Gold sequences has good properties, such as good autocorrelation and cross-correlation, easy to construct and more sequences, etc, therefore it has wide applications.

This paper investigates the Gold sequences. The principle and performance of m sequences and Gold sequences in spread spectrum communication are first introduced in the paper. Simulation by Matlab is also provided in the paper to analyze the nature of Gold sequences.

Key words: Pseudo-random sequence;Gold sequence;m sequence;Matlab simulation

Gold序列的仿真研究

目录

1 引言 (1)

1.1研究的背景及意义 (1)

1.2CDMA通信技术简介 (1)

1.2.1 扩频的理论基础 (1)

1.2.2 扩频通信的分类 (2)

1.2.3 CDMA扩频通信系统的构成 (2)

1.2.4 伪随机序列在CDMA通信系统中的应用 (2)

2 M序列 (3)

2.1伪随机序列相关概念 (3)

2.1.1 伪随机序列的数学定义 (3)

2.1.2 随机序列的相关特性 (4)

2.2 M序列的产生原理 (5)

3 GOLD序列 (6)

3.1G OLD序列的产生原理 (6)

3.2G OLD序列的基本性质 (7)

4 MATLAB仿真实现 (8)

4.1产生M序列 (8)

4.2产生G OLD序列 (9)

4.3相关性仿真 (10)

4.3.1 相关性的理论分析 (10)

4.3.2 Matlab仿真 (11)

5 结束语 (14)

致谢 (16)

参考文献 (16)

Gold 序列的仿真研究 作者:唐思远 第1页 共17页 1 引言

1.1研究的背景及意义

移动通信由于具有时实性、机动性、具有不受时空限制等特点,己经成为一种深受人们欢迎的通信方式,并融入了现代生活当中。自美国Qualcomm 公司提出在蜂窝移动通信系统中应用码分多址(Code Division Multiple Access ,简称CDMA )技术的系统实现方案至今,CDMA 通信系统相对于其它无线通信系统在客户容量和高质量的优势越来越显现出来。在短短的二、三十年中,移动通信系统已从第一代的模拟蜂窝系统发展到第二代全球数字移动电话蜂窝系统(2G),目前己经开始向第三代宽带多媒体蜂窝系统(3G)发展,并且处于第二代和第三代之间的2.5G 已经趋于成熟。虽然第二代移动通信系统中,GSM 系统仍占有很大的市场份额。但是,因为具有伪随机编码调制和信号相关处理两大特点而使CDMA 通信方式具有抗干扰、抗噪音、抗多径衰落、能在低功率谱密度下工作、有保密性、可多址复用和任意选址、可高精度测量等优点,使CDMA 技术成为第三代移动通信和个人通信系统的核心技术,以扩频理论为基础的CDMA 技术已成为当前移动通信领域的研究热点。

在CDMA 系统的众多用户都工作在同一时间同一频段内,系统给各个用户分配一个唯一的扩频码来进行频谱的扩展,在发送和接收时,系统更是利用各地址码之间的互相关特性值来区分不同的用户。因此,扩频码的特性直接影响到CDMA 系统的捕获同步性能、抗干扰性能和多址能力。从理论上说,独立、均匀分布的随机序列是扩频码的理想模型,然而它由于不易产生、无法时实分发等缺陷而被认为难以在实际的CDMA 系统中应用。CDMA 自其理论提出到投入商业营运、直至称为第三代移动通信系统的核心技术,一直是通信领域的关注热点。作为CDMA 的基础技术之一的PN 码的选择和产生也是倍受业内人士关注的,如何找到易生成且相关特性好的PN 码成为研究人员追求的目标之一。为此,人们设计了各种确定性的伪随机序列来代替随机序列作为扩频码。迄今为止,世界各国的学者在伪随机序列的设计与选择方面己做了大量的工作,例如,由m 序列优选对生成的Gold 序列己被用作第三代移动通信系统中WCDMA 的扩频码;以及通过对m 序列添加一个全“0”状态得到的M 序列和m 序列也已被用作第三代移动通信系统中CDMA2000的扩频码。m 序列、Gold 序列等线性序列多由线性移位寄存器所产生,有易于实现、具备较好的相关特性等优点。实际应用的CDMA 通信系统采用复合扩频技术,即用正交码(Walsh 函数序列,OVSF 码族)作为信道化码来区分小区、用Gold 序列或M 序列作为扰码来区分用户。

因此,本文所研究的Gold 序列,在扩频通信系统中发挥着重要的作用,通过Matlab 仿真,对其自相关性能进行分析,能够更好的理解CDMA 系统的通信原理。

1.2 CDMA 通信技术简介

1.2.1 扩频的理论基础

在信息论中,对于连续信道,如果信道带宽为B ,且受到加性高斯白噪声干扰,则其信道容量的理论公式(香农公式)为:

)/1(log 2N S B C += (1.1)

其中C —信道容量,单位bit/s ; B 一信道带宽,单位Hz ; S 一信号平均功率,单位w ; N 一噪声平均功率,单位w 。

从香农公式可知:

(1)要增大信息传输速率,就必须增大信道带宽B 或信噪比S 。由于公式中对数部分变化得比较缓慢,因此增加B 比增加S 加更有效,也就是说如果传输信号的带宽变窄,将导致信号功率的大幅提高。而如果通过增加带宽去换取信号功率的减小,就能节省较大的信号功率能源。即B 增加时,信道容量增加较快。

浙江传媒学院本科毕业论文 Gold序列的仿真研究

(2)当信道容量为常量时,信道带宽与信噪比存在互换关系。在C恒定的情况下,可以通过减少发送功率,增加信道带宽的方法保持信道容量不变的目标。也可以通过减小带宽,增强信号功率的方法。信道容量可以通过带宽与信噪比的互换而保持不变。

(3)当带宽增加到一定程度时,信道容量也不能无限增加。这是因为噪声功率N=n0B,当信道带宽B增加时,N也随着增加,所以C有一个极限值。

扩频通信是指系统所传输的信号(带宽为Bm)被扩展至一个很宽的频带Bc。用来传输信息的信号带宽远远大于信息本身带宽的一种通信方式。它利用高速率的扩频码来达到扩展传输信号的带宽,从而减小了发送功率。对扩频通信来说Bc/Bm的值一般为100~1000。

1.2.2 扩频通信的分类

(1)直接序列(DS)扩频系统:用一组高速数字编码序列直接扩展频谱,由于编码序列的带宽远远大于原始信号的带宽,从而扩展了发射信号的频谱。

(2)跳频(FH)扩频系统:使发射机频率在一组预先制定的频率上按照编码序列所规定的顺序离散的跳变,从而扩展发射波的频谱。一般来说,跳频图案由伪随机码控制,从而使载频的跳变具有均匀分布的性质。

(3)线性调频(Chirp)系统:在这种系统中,载频在一给定的脉冲时间间隔内线性的扫过一个宽的频带,从而扩展发射波的频谱。

(4)跳时(TH)扩频系统:这种系统与跳频系统类似,区别在于一个是控制频率,而另一个是控制时间,即TH系统是用伪随机码控制发射时间和时间的长短。

(5)混合系统:前述几种方法的某种形式的组合,如DS/FH系统、DS/TH系统、FH/TH系统、

DS/TH/FH系统等。

目前实用的扩频通信中,以直接序列扩频系统应用的比较多。而CDMA通信系统就是基于扩频技术的无线通信系统。

1.2.3 CDMA扩频通信系统的构成

CDMA通信系统是最具代表性的扩频通信技术应用,它的基本工作方式有直接序列扩频(Direct Sequence Spread Spectrum,简称DS)方式、跳变频率(Frequency Hopping,简称FH)方式以及跳变时间(Time Hopping,简称TH)方式三种。其中,直扩(DS)方式同另外两种方式比较,实现频谱扩展方便,无论对通信、测距应用还是其它应用都很合适,因此在目前使用的最多,也是最典型的一种扩频通信方式。

CDMA扩频通信系统包含两个基本技术:一个是码分技术,其基础是扩频技术;另一个是多址技术。

目前的CDMA系统就是采用m序列及由其产生的其它PN序列作为地址码,利用它们的不同相位来区分不同用户。在第三代移动通信系统中分别采用了m序列、Gold序列及M序列作为地址编码,用Walsh序列作为信道编码。因而,PN码的选择直接影响到CDMA系统的容量、抗干扰能力、接入和切换速度等性能。CDMA信道的区分也是靠PN序列来进行的,PN序列较好的相关特性—自相关特性尖锐,互相关特性较弱,加上实现和编码方案简单等特点,使其在未来的移动通信系统中处于至关重要的位置。

1.2.4 伪随机序列在CDMA通信系统中的应用

CDMA通信系统中的扩频码采用三层结构。底层是信道码,通常采用正交码,CDMA2000标准给出的是码长为64的Walsh正交码,3GPP标准给出的是正交可变扩频因子码序列(Orthogonal Variable Spreading Factor Code,简称OVSF码),用来区分不同的CDMA信道。第二层是基站码,是由伪随机序列充当的,不同的基站使用不同的扩频码。在CDMA2000系统中,使用的是码长为215-1的M序列,

作者:唐思远第2页共17页

浙江传媒学院本科毕业论文 Gold序列的仿真研究

在WCDMA系统中采用的是码长为218-1的Gold码。第三层是移动用户码,在CDMA2000系统中,使用的是码长为242-1的m序列,在WCDMA系统中采用的是码长为225-1的Gold码。一个用户一个,各

不相同,它是由相当长的伪随机序列加上移动用户自身代码复合而成的。第二、三层的码统称扰码。在这三层扩频码中,除第一层的信道编码外另两层扩频码都由伪随机序列来实现的。

2 m序列

2.1 伪随机序列相关概念

伪随机序列作为扩频通信系统中的一部分是十分关键的,它关系到扩频系统的性能。四十年代末,信息论的奠基人香农(C.E.Shannon)提出的编码定理指出:只要信息速率Rb小于信道容量C,则总可以找到某种编码方法,在码周期相当长的条件下,能够几乎无差错的从收到高斯噪声干扰的信号中复制出原发信息。这里有两个条件,一是Rb<=C,二是编码的码周期足够长。同时香农在证明编码定理的时候,提出用具有白噪声统计特性的信号来编码。白噪声是一种随机过程,它的瞬时值服从正态分布,功率谱在很宽频带内都是均匀的。但是至今无法实现对白噪声放大、调制、检测、同步及控制等,而只能用具有类似于限带白噪声统计特性的伪随机序列信号来逼近它,并作为扩频系统的扩频码。

六十年代末,一些易于产生、加工和复制且具有白噪声性质的“伪噪声编码技术”日趋成熟,因此高效抗干扰编码通信变得蓬勃发展起来。同时用各种不同波形的正交码来实现波形分割的码分多址通信也相继出现,实现了无线用户的随意呼叫通信。这种技术在地面多址通信和卫星通信中都可采用。由于码分多址通信有抗干扰性能强和一定程度的保密性等一系列优点,所以首先引起国防军事通信部国防军事通信部门的注意,并出现了一些军用战略卫星通信的码分系统和超短波战术通信的码分系统。民用通信方面,也相继出现一些具体的方案。

伪随机序列(伪随机码)的一般定义是:如果一个序列,一方面它的结构(或形式)是可以预先确定的,并且是可以重复地产生和复制的;另一方面它又有某种随机序列的随机特性(即统计特性),我们称这种序列为伪随机序列(伪随机码)。伪随机序列虽然只有两个电平,但却具有类似白噪声的相关特性,只是幅度概率分布不再服从高斯分布。它应具有如下特性:

(l)每一周期内0和1出现的次数近似相等。

(2)每一周期内,长度为n比特的游程出现的次数比长度为n+1比特游程次数多一倍(游程是指相同码元的码元串)。

(3)对于狭义伪随机序列,将给定随机序列位移任何一个非零数目个元素,所得的序列将和原序列有一半的元素相同,一半的元素不同。

2.1.1 伪随机序列的数学定义

白噪声是一种随机过程,瞬时值服从正态分布,自相关函数和功率谱密度有极好的相关性,伪随机序列是针对白噪声演化而来的,只有“0”和“1”两种电平,因此伪随机编码概率分布不具备正态分布形式。但当序列足够长时,由中心极限定理可知,它趋近于正态分布,由此,伪随机序列定义如下:

(1)凡自相关函数具有

作者:唐思远第3页共17页

浙江传媒学院本科毕业论文 Gold 序列的仿真研究

作者:唐思远 第4页 共17页 ??????

?-

===∑∑=+=p i i i p i i a p a a p a p R 11211

11

)(ττ 00≠=ττ (2.1) 式的序列称为狭义伪随机序列。

(2)凡自相关函数具有

??????

?===∑∑=+=p i i i p i i a c a a p a p R 1121

11

)(τ

τ 1<

形式的序列,成为第一类广义伪随机序列。 (3)凡互相关系数具有

1)(<<τab R 或 0)(≈τab R (2.3)

形式的序列,称为第二类广义伪随机序列。

(4)凡相关函数满足(1)、(2)、(3)三者之一的序列,统称为伪随机序列。由上面的四种定义可以看出,狭义伪随机序列是第一类广义伪随机序列的一种特例。

2.1.2 随机序列的相关特性

扩频系统中,对伪随机序列而言,最关心的问题就是其相关特性,包括自相关性、互相关性及部分相关性。下面分别给出这些相关函数的定义。设有两条长为N 的序列{a }和{b },序列中的元素分别为a i ,b i ,(i=1,2,3,…,N)。则序列的自相关函数定义为:

∑=+=

p

i i i a a a

R 1)(τ

τ (2.4)

由于{a }是周期为P 的序列,故有a i +p =a i ,其归一化自相关函数ρa (τ)定义为: ∑=+=

p i i i a a a p 1

1)(τ

τρ (2.5)

序列{a }和{b }的互相关函数定义为: ∑=+=p i i i

ab b a R 1)(ττ (2.6)

归一化互相关函数定义为:

∑=+=p i i i

ab b a p 11)(ττρ (2.7)

对于二进制序列,可以表示为:

P D A ab )

()()(τττρ-= (2.8)

其中,A 为序列{a }和{b }对应码元相同的数目,D 为不相同的数目。 若ρab (τ)=0,则序列{a }和序列{b }正交,定义{a }的部分相关函数和归一化部分相关函数为 (式

浙江传媒学院本科毕业论文 Gold 序列的仿真研究 作者:唐思远 第5页 共17页 中t 为某一整数) :

∑+=+=

1

1

)(N i i i

N a a R ττ ,P N ≤ ∑+=+=111)(N i i i N a a p ττρ P N ≤ (2.9) 定义序列{a }和序列{b }的部分互相关函数和归一化部分互相关函数分别为:

∑+=+=11)(N i i i

Nab b a R ττ ,P N ≤ ∑+=+=111)(N i i i N b a p ττρ P N ≤ (2.10)

2.2 m 序列的产生原理

m 序列是最长线性移位寄存器序列的简称。它是由多级移位寄存器或其他延迟元件通过线性反馈产生的最长的码序列。由于m 序列容易产生、规律性强、有许多优良的性能,在扩频通信中最早获得广泛的应用。

如图2.1所示,m 序列可由二进制线性反馈移位寄存器产生。它主要由n 个串联的寄存器、移位脉冲产生器和模2加法器组成。 图中第i 级移存器的状态a i 表示,a i =0 或a i =1,i =整数。反馈线的连接状态用c i 表示,c i =1表示此线接通(参加反馈),c i =0表示此线断开。

由于反馈的存在,移存器的输入端受控地输入信号。不难看出,若初始状态为全“0”,则移位后得到的仍为全“0”,因此应避免出现全“0”状态,又因为n 级移存器共有2n -1种可能的不同状态,除全“0”状态外,剩下2n -1种状态可用。每移位一次,就出现一种状态,在移位若干次后,一定能重复出现前某一状态,其后的过程便周而复始了。反馈线位置不同将出现不同周期的不同序列,我们希望找到线性反馈的位置,能使移存器产生的序列最长,即达到周期P =2n

-1。按图中线路连接关系,可以写为:

∑=----=⊕⊕⊕⊕=n i i n i

n n n n n a c a c a c a c a c a 10112211... (模2) (2.11)

该式称为递推方程。

图2.1 线性反馈移位寄存器

上面曾经指出,c i 的取值决定了移位寄存器的反馈连接和序列的结构。现在将它用下列方程表示:

∑==++++=n

i i i n n x c x

c x c x c c x f 02210...)( (2.12) 这一方程称为特征多项式。式中x i 仅指明其系数c i 的值(1或0),x 本身的取值并无实际意义,

也不需要去计算x 的值。例如,若特征方程为f (x )=1+x +x 4则它仅表示x 0,x 1和x 4的系数c 0=c 1=c 4=1,其余为零。经严格证明:若反馈移位寄存器的特征多项式为本原多项式,则移位寄存器能产生m 序列。只要找到本原多项式,就可构成m 系列发生器。

表2.1给出了部分本原多项式。

浙江传媒学院本科毕业论文 Gold 序列的仿真研究

作者:唐思远 第6页 共17页 表2.1 部分本原多项式

m 序列的基本性质如下:

(1)周期性:m 序列的周期p 取决于它的移位寄存器的级数, p =2n -1 (2)平衡特性:m 序列中0和1的个数接近相等;m 序列中一个周期内“1”的数目比“0”的数目多1个。

(3)游程特性:m 序列中长度为1的游程约占游程总数的1/2,长度为2的游程约占游程总数的1/22 ,长度为3的游程约占游程总数的1/23 …

(4)线性叠加性:m 序列和其移位后的序列逐位模2相加,所得的序列还是m 序列,只是相移不同而已。例如1110100与向右移3位后的序列1001110逐位模2相加后的序列为0111010,相当于原序列向右移1位后的序列,仍是m 序列。用公式表示为:

)()()(i u i u i u q p =⊕ (2.13)

其中: u(i)、u p (i)、u q (i )分别为原序列、平移p 个元素后的序列及平移相加后得到的序列中的第i 个元素。

(5)二值自相关特性:码位数越长越接近于随机噪声的自相关特性。m 序列的自相关函数计算式为

[]????

?-=+=m t m t m E R m /11

)()()(ττ0≠

=ττ (2.14) 其中:12-=n M ,为码序列的最大长度,亦即m 序列的周期;;1...,3,2,1,-==M k kT c τ T c 为m 序列码的码元宽度。可见,相关函数是个周期函数。

(6)m 序列发生器中,并不是任何抽头组合都能产生m 序列。理论分析指出,产生的m 序列数由下式决定:

n n

/)12(-φ (2.15)

其中Φ(x )为欧拉数(即包括1在内的小于x 并与它互质的正整数的个数)。例如5级移位寄存器产生的31位m 序列只有6个。 3 Gold 序列

m 序列虽然性能优良,但同样长度的m 序列个数不多,且序列之间的互相关值并不都好。R ·Gold 提出了一种基于m 序列的码序列,称为Gold 码序列。随着级数n 的增加,Gold 码序列的数量远超过同级数的m 序列的数量,且Gold 码序列具有良好的自相关特性和互相关特性,得到了广泛的应用。

3.1 Gold 序列的产生原理

Gold 序列就是为了解决m 序列个数不多且m 序列之间的互相关函数值不理想而提出的,它是

浙江传媒学院本科毕业论文 Gold 序列的仿真研究 作者:唐思远 第7页 共17页 用一对周期和速率均相同的m 序列优选对模2加后得到的。其发生器结构框图如图3.1所示:

图3.1 Gold 序列发生器 Gold 序列具有良好的自、互相关特性,且地址数远远大于m 序列地址数。如有两个m 序列,它们的互相关函数的绝对值有界,且满足以下条件:

?????++=++,12,12)(2221

n n R τ不是为偶数,为奇数4n n n (3.1)

我们称这一对m 序列为优选对。每改变两个m 序列相对位移就可得到一个新的Gold 序列,当相对位移2n -1位时,就可得到一族2n -1个Gold 序列。再加上两个m 序列,共有2n +1个Gold 序列码。

3.2 Gold 序列的基本性质

(1)平衡性: Gold 码序列分为平衡码和非平衡码。Gold 序列的平衡特性有3种,也就是Gold 序列有3种“0”和“1”情况:

①“1”码元数目仅比“0”码元数目多一个,这就是平衡Gold 序列。

②“1”码元过多。

③“1”码元过少。

后两种序列是不平衡Gold 序列。当n 为奇数时,在周期N 的N+2个Gold 序列中,有2n -1个序列是平衡的。即平衡码数量占50%,非平衡码数量占50%。当n 为偶数,但不能被4整除时,在周期N =2n -1的N+2个Gold 序列中, 平衡码占75%,非平衡码占25%。相比较而言,m 序列是平衡的,“1”码和“0”码的个数基本相等。

(2)自相关特性:Gold 证明了Gold 码序列的自相关函数的所有非最高峰的取值是三值。其自相关函数值所有非最高峰取值R 如下式。其中p =2n

-1,p 为Gold 码序列的周期。

???

???

???---=p t p t p R 21

(3.2) 在位移k=0 ,R 取得最高峰,即R=1,此时同m 序列一样,具有尖锐的自相关峰值。 因此Gold

码序列应具有四个值的自相关函数值。(3.2)式中t 的取值是,当n 为奇数时,12

21

+=+n t 。当n

为偶数,且不是4的整倍数时,1222+=+n t 。

(3)互相关特性:Gold 码序列具有较好的互相关特性,Gold 码序列的互相关函数值的最大值不超

浙江传媒学院本科毕业论文 Gold序列的仿真研究

过其m序列优选对的互相关值。Gold码也具有三值互相关函数值,其取值同(3.2)式。当n为奇数时,序列族中约50%的码序列的互相关函数值为-1/p;而n为偶数时,有75%的码序列的互相关函数值为-1/p。

4 Matlab仿真实现

Matlab语言是当今国际上科学界最具影响力,也是最有活力的软件。它起源于矩阵运算, 并已经发展成一种高度集成的计算机语言。Matlab具有强大的数学运算能力,方便实用的绘图功能及语言的高度集成。Matlab是矩阵实验室(Matrix Laboratory)之意。Matlab除具备卓越的数值计算能力外,它还提供了专业水平的符号计算、文字处理、可视化建模仿真和实时控制等功能。

4.1 产生m序列

我们以5阶移位寄存器为例,来产生m序列。特征多项式f(x)=1+x2+ x5为本原多项式,亦即反馈连接形式为[C1,C2,C3,C4,C5]=[0,1,0,0,1]时,输出序列为m序列。以下是产生m序列的程序代码:fbconnection=[0 1 0 0 1];

mseq=m_sequence(fbconnection);

保存为mxulie.m ,在Matlab命令窗口输入mseq,返回结果为:

1000010101110110001111100110100

m sequence

图4.1m序列仿真图

其中自编函数m_sequence.m用来产生m序列,输入参数为由本原多项式所对应的反馈连接形式。其代码如下:

function[mseq]=m_sequence(fbconnection)

n=length(fbconnection);

N=2^n-1;

register=[zeros(1,n-1) 1]; %定义移位寄存器的初始状态

mseq(1)=register(n); %m序列的第一个输出码元

for i=2:N

newregister(1)=mod(sum(fbconnection.*register),2);

for j=2:n,

newregister(j)=register(j-1);

end;

register=newregister;

mseq(i)=register(n);

作者:唐思远第8页共17页

浙江传媒学院本科毕业论文 Gold序列的仿真研究

stairs(mseq);

end

在实际的应用中,可以根据不同的本原多项式来实现不同的m序列。只需要输入本原多项式的方程,即可在Matlab环境中实现自己所要的不同周期的m序列。

4.2 产生Gold序列

对5阶移位寄存器,由本原多项式f(x)=1+x3+x5和本原多项式f(x)=1+x2+x3+x4+x5生成的m序列为m序列优选对,以此优选对为例来产生Gold序列。程序如下:

%产生Gold序列的程序

clear;

fb1=input('请输入第一个本原多项式所对应的反馈连接形式:');

fb2=input('请输入第二个本原多项式所对应的反馈连接形式:');

[mseq]=m_sequence(fb1);

mseq1=mseq;

[mseq]=m_sequence(fb2);

mseq2=mseq;

N=2^length(fb1)-1;

for shift_amount=0:N-1

shift_mseq2=[mseq2(shift_amount+1:N) mseq2(1:shift_amount)];

goldsequence(shift_amount+1,:)=mod(mseq1+shift_mseq2,2);

end;

goldsequence

将其保存为mygold. m ,运行后在Matlab命令窗口输入mygold并回车,返回结果为31×31的矩阵,其每一行即为一个Gold 序列,这里列出前三行并将第一行的Gold序列画图如下:

0000000100011011000011001110011

1000111111100010001111000101001

1001001000010000010111010011100

gold sequence

图4.2 gold序列仿真图

作者:唐思远第9页共17页

浙江传媒学院本科毕业论文 Gold 序列的仿真研究

作者:唐思远 第10页 共17页 4.3 相关性仿真

4.3.1 相关性的理论分析

伪随机码大都具有尖锐的自相关特性和较好的互相关特性,同一码组内的各个码元占据的频带可以做到很宽且平衡相等。基本的伪随机码序列互相关性都不够好。因此,实际的CDMA 系统中常选用自相关性好的伪随机码作为扩频码,而另外选择互相关性好的编码作为地址码。下面对伪随机码的自相关特性和互相关特性加以简要分析。在数学上, 信号的自相关性是用自相关函数来表征的,而自相关函数所解决的是信号与它自身相移以后的相似性问题,其定义如下: ?-=2/2/)()(1)(T T a dt t f f T τττ? (4.1)

(4.1)式中,f (t )为信号的时间函数,τ为时间延迟,f(t?τ)为f(t)经时间τ的延时后得到的信号。当f(t)与f(t?τ)完全重叠,即τ=0时,自相关函数值Φa (τ)为一常数(通常为1);当两信号不完全重叠,即τ≠0时,自相关函数值Φa (τ)很小(通常为一负值)。其重要意义是:对通信系统的接收端而言,只有包含伪随机序列与接收机本地产生的伪随机序列相同且同步的信号才能被检测出来,其他不同步(有延时τ)的信号,即使包含的伪随机序列完全相同,也会作为背景噪声(多址干扰)来对待。以m 序列为例,其自相关函数曲线如图4.3所示。其中,P 为序列的周期长度,RP 为序列的码元速率,其倒数1/RP 为子码宽度。由图4.3可见,由于同步且完全相同的m 序列的自相关函数值为1(最大), 因此接收机的相关器能够很容易地捕获该信号并进行接收;其它的m 序列,即使完全相同,只要时延差τ大于一个子码宽度,自相关函数值就会迅速下降到-1/P ,相关器就不会捕获该信号了。此外,在接收端和发送端满足序列同步和位同步(由PN 码的捕获和跟踪系统保证)的前提下,同一个伪随机序列只要其相位被错动(偏置)不同数目的子码宽度, 就可以用作多个用户的扩频序列。

4.3 m 序列自相关函数

伪随机码序列除自相关性外,与其它同类码序列的相似性和相关性也很重要。例如有许多用户共用一个信道,要区分不同用户的信号,就得靠相互之间的区别或不相似性来区分。换句话说,就是要选用互相关性小的信号来表示不同的用户。对于两个不同的信号f (t)与g (t),它们之间的互相关函数定义为:

?-=2

/2/)()(1)(T T c dt t g f T τττ? (4.2)

如果两个信号都是完全随机的,在任意延迟时间τ都不相同, 则(4.2)式的结果为0, 同时称这两个信号是正交的。如果二者有一定的相似性, 则结果不完全为0。通常希望两个信号的互相关函

浙江传媒学院本科毕业论文 Gold序列的仿真研究

数值越小越好, 这样它们就越容易被区分, 且相互之间的干扰也就越小。

4.3.2 Matlab仿真

自编函数ccorr. m用来求两个伪随机序列的互相关函数,输入为两个相同长度的伪随机序列,返回互相关值。当输入为一个序列时,求其自相关函数。函数代码如下:

function r=ccorr(seq1,seq2)

if nargin==1

seq2=seq1;

end

N=length(seq1);

for k=-N+1:-1

shift=[seq2(k+N+1:N) seq2(1:k+N)];

r(N+k)=seq1*shift';

end

for k=0:N-1

shift=[seq2(k+1:N) seq2(1:k)];

r(N+k)=seq1*shift';

end

以前述所产生的m序列和生成的前两组Gold序列为例,分析伪随机序列的相关特性。为方便起见,这里把序列中的“1”和“0”分别映射成“1”和“-1”。

ind1=find(mseq==0);

mseq(ind1)=-1;

ind2=find(goldsequence==0); %把“0”映射成“-1”

goldsequence(ind2)=-1;

r1=ccorr(mseq);

r2=ccorr(mseq1,mseq2);

r3=ccorr(goldsequence(1,:));

r4=ccorr(goldsequence(1,:), goldsequence(2,:));

N=length(mseq);

axis=-N+1:N-1; %定义横轴使自相关峰值移到0点

plot(axis,r1,axis,r2,'--',axis,r3,':',axis,r4,'.-');

xlabel('k');

ylabel('R(k)');

title('伪随机序列的相关性');

legend('m序列自相关性','m序列互相关性','Gold序列自相关性','Gold序列互相关性');

将上述代码在保存为xiangguan. m ,运行后返回结果如图4.4所示。

作者:唐思远第11页共17页

浙江传媒学院本科毕业论文 Gold 序列的仿真研究

作者:唐思远 第12页 共17页 -30-20-100

102030

k R (k )

伪随机序列的相关性

图4.4 伪随机序列的相关性

将4条相关性曲线分别建立坐标系,编程如下:

ind1=find(mseq==0);

mseq(ind1)=-1;

ind2=find(goldsequence==0);

goldsequence(ind2)=-1;

r1=ccorr(mseq);

r2=ccorr(mseq1,mseq2);

r3=ccorr(goldsequence(1,:));

r4=ccorr(goldsequence(1,:),goldsequence(2,:));

N=length(mseq);

axis=-N+1:N-1;

subplot(2,2,1),plot(axis,r1);

title('m 序列自相关性');

xlabel('k');

ylabel('R(k)');

grid;

subplot(2,2,2),plot(axis,r2);

title('m 序列互相关性');

xlabel('k');

ylabel('R(k)');

grid;

浙江传媒学院本科毕业论文 Gold序列的仿真研究

subplot(2,2,3),plot(axis,r3);

title('gold序列自相关性');

xlabel('k');

ylabel('R(k)');

grid;

subplot(2,2,4),plot(axis,r4);

title('gold序列互相关性');

xlabel('k');

ylabel('R(k)');

grid

将上述代码在保存为xiangguan0. m ,运行后分别截图如下。

图 4.5 m序列自相关性图

图4.6 Gold序列自相关性图

作者:唐思远第13页共17页

浙江传媒学院本科毕业论文 Gold序列的仿真研究

由图4.5和图4.6可以看出:m 序列自相关曲线要比Gold序列自相关曲线整体上平缓,由此也可以得出,m序列的自相关性比Gold序列的自相关性要好。

图 4.7 m序列互相关性图

图4.8 Gold序列互相关性图

比较图4.7和图4.8可以看出,Gold序列的互相关曲线与m序列相比要更小,Gold序列的互相关性比m序列的互相关性好。

5 结束语

Gold序列是R·Gold提出的一种基于m序列的码序列,这种序列有较优良的自相关和互相关特性,构造简单,产生的序列数多,因而获得了广泛的应用。本文对Gold序列进行仿真研究,在简要介绍扩频通信技术和CDMA通信系统相关原理的基础上,较为深入的研究了伪随机序列中的m 序列与Gold序列的产生方法及各自的性质,设计了相应的Matlab程序,并利用Matlab对m序列、Gold序列的相关性进行了仿真研究。

作者:唐思远第14页共17页

浙江传媒学院本科毕业论文 Gold序列的仿真研究

仿真结果表明:m序列虽然性能优良,但同样长度的m序列个数不多,且序列之间的互相关值并不都好。Gold码序列自相关特性虽然略逊于m序列,但其互相关特性比m序列要好,这与理论分析高度吻合。

作者:唐思远第15页共17页

浙江传媒学院本科毕业论文 Gold序列的仿真研究

致谢

本文得以完成是与方方面面的关怀和帮助分不开的。首先,我要衷心的感谢我的指导教师邹雪兰老师,从论文的选题到研究工作的进行,邹老师都给与我最大的帮助、指导和鼓励,并尽力为我创造了良好的环境,从而使我在面临一些困难的情况下完成了论文的研究工作。邹老师严谨的治学态度给我留下了深刻的印象,也使我学到了很多终生受益的东西。

参考文献

作者:唐思远第16页共17页

浙江传媒学院本科毕业论文 Gold序列的仿真研究

[1] 钱雪荣.扩频通信系统的扩频序列的设计研究[D].南京路理工大学,2004.

[2] 周慧琴.扩频通信中伪随机序列的研究[J].信息通信,2008,(12).

[3] 严三国.基于Matlab的Gold码序列的仿真与实现[J].兰州工业高等专科学校学报,2009,(16).

[4] 张志辉,宋花荣m序列与Gold序列比较[J].信息技术,2006,(06).

[5] 宋全有,李振伟.平衡Gold序列的软件实现[J].商丘师范学院学报,2006,(05).

[6] 张重阳.常用伪随机码序列的相关性分析与MATLA仿真[J].科技信息,2007,(24).

[7] 高英.m序列优选对的实现及平衡Gold序列分析[J].计算机与网络,2000,(17).

[8] 陈海龙,李宏.基于MATLAB的伪随机序列的产生和分析[J].计算机仿真,2005,(98).

[9] 樊昌信等,通信原理.北京:国防工业出版社,2001.

[10] 林可祥,汪一飞.伪随机码的原理与应用.人民邮电出版社.1978.

[11] 樊炳亮,李晓辉.一种生成平衡Gold序列的算法[J].微机发展,2005 ,15(9):18.

[12] 李婷.CDMA扩频通信系统地址码的研究[D].大连海事大学,2006.

[13] 李婷,孙娇燕.平衡Gold序列的生成条件[J]大连海事大学学报, 2006,(02):93-95.

[14] 刘卫国等编著,《MATLAB程序设计与应用》,高等教育出版社.

[15] 朱近康.扩展频谱通信及其应用.中国科学技术大学出版社.1993.

[16] 孙立新,邢宁霞.CDMA(码分多址)移动通信技术.人民邮电出版社. 2000.

作者:唐思远第17页共17页

相关主题
相关文档
最新文档