当前位置:文档之家› 基于Matlab的m序列发生器的00

基于Matlab的m序列发生器的00

基于Matlab的m序列发生器的00
基于Matlab的m序列发生器的00

目录

第一章绪论..................................................................................................................1

1.1背景及意义 ....................................................................................................1

1.2设计内容及要求...............................................................................................1

1.2.1 设计内容................................................................................................1

1.2.2 设计要求................................................................................................2

1.3系统框图..........................................................................................................2第二章 m序列的分析.......................................................................................................3

2.1 m序列的原理...........................................................................................................3

2.2 m序列的相关特性 ...................................................................................................4

2.2.1均衡特性(平衡性) ...............................................................................4

2.2.2游程分布(游程分布的随机性) ...............................................................4

2.2.3移位相加特性(线性叠加性) ..................................................................4

2.2.4自相关特性.............................................................................................5第三章 m序列的设计............................................................................................................. 6

3.1特征多项式确定..............................................................................................6

3.2本原多项式的确定...........................................................................................7

3.3 m序列的发生..............................................................................................8第四章程序调试及结果分析................................................................................ 10结论. (24)

参考文献 (25)

附录一:程序代码 (26)

第一章绪论

1.1 背景及意义

扩展频谱通信是一种不同于常规通信系统的新调制理论和技术,简称扩频通信。其设计思想是将待传输的信息信号用特定的扩频码扩展频谱后成为宽带信号进行传输;接收时再采用相应的技术手段将频谱压缩,恢复原来待传信息信号的带宽,从而实现通信。扩频通信具有两个特点:传输信号的带宽远大于原始信息信号的带宽;传输信号的带宽主要由扩频码决定,此扩频码通常是伪随机码。伪随机码(pseudo randomcode)简称PN码,可以人为产生与复制,具有类似白噪声的性质,相关函数具有尖锐的特性,功率谱占据很宽的频带,易于从其他信号或干扰中分离出来,具有优良的抗干扰特性,其特点是:具有尖锐的自相关函数;互相关函数值应足够小;有足够长的码周期,以确保抗侦破与抗干扰的要求;码的数量足够多,以实现码分多址的要求;平衡性好,以满足抗干扰的要求;工程上易于产生、加工、复制与控制。扩频通信的优势主要来自于伪随机码具有白噪声的统计特性。而随着扩频速率的不断提高,扩频码的长度急剧增加,利用计算机设计并验证扩频码的各项指标能大大提高效率。通过对伪随机码中常用的m序列的结构和性质进行了分析,给出了基于MATLAB平台的m序列生成算法及代码伪随机序列分析. 软件平台选择Matlab,Malab是美国Math Works公司推出的一种以矩阵为基本编程单位的高效数值计算语言。Matlab在编程效率、可读性、可移植性与可扩充性上,远远优于其他高级编程语言,是公认的最优秀的科技应用软件。

1.2设计内容及要求

1.2.1 设计内容

基于Matlab的m序列发生器的设计。

1.2.2 设计要求

m序列的本原多项式为:52

=++,移位寄存器结构为:

()1

A x x x

各寄存器初值分别为[0 0 0 0 1]1-5,参照该移位寄存器的结构图,用Matlab语言编写程序,生成m序列。

1.3 系统框图

图1-1 程序框图

图1-1 系统框图

第二章 m 序列的分析

2.1 m 序列的原理

伪随机信号具有类似于随机噪声的一些统计特性,同时又便于重复产生和处理。目前广泛使用的伪随机信号都是由数字电路产生的周期序列得到的。产生伪随机序列的电路包括线性反馈的移位寄存器:m 序列和非线性反馈移存器;M 序列

m 序列是最长线性反馈移位寄存器序列的简称,m 序列是由带线性反馈的移位寄存器产生的.由n 级串联的移位寄存器和和反馈逻辑线路可组成动态移位寄存器,如果反馈逻辑线路只由模2和构成,则称为线性反馈移位寄存器。带线性反馈逻辑的移位寄存器设定初始状态后,在时钟触发下,每次移位后各级寄存器会发生变化。其中任何一级寄存器的输出,随着时钟节拍的推移都会产生一个序列,该序列称为移位寄存器序列。

m 序列码发生器是一种反馈移位型结构的电路,它由n 位移位寄存器加异或反馈网络组成,其序列长度M =2n-1,只有一个多余状态即全0状态,所以称为最大线性序列码发生器。由于其结构已定型,且反馈函数和连接形式都有一定的规律,因此利用查表的方式就设计出m 序列码。列出部分m 序列码的反馈函数F 和移存器位数n 的对应关系。如果给定一个序列信号长度M ,则根据M =2n-1求出n ,由n 查表2-1便可以得到相应的反馈函数F 。

表2-1 反馈函数F

n 12-=n

m

反馈函数F

3 7 31Q Q ⊕,

3

2Q Q ⊕ 4 15 4341,Q Q Q Q ⊕⊕ 5 31 5

352,Q Q Q Q ⊕⊕

6 63 6

1Q Q ⊕

7

127

7

371,Q Q Q Q ⊕⊕

8 255 8

381,Q Q Q Q ⊕⊕

9 511 94Q Q ⊕ 10 1023 107Q Q ⊕ 11 2047 11

2Q Q ⊕

12 4095

12

541Q Q Q Q ⊕⊕⊕

2.2 m 序列的相关特性 2.2.1均衡特性(平衡性)

伪随机序列的平衡性是指序列中“1”的数目只比“0” 的数目多l 。码的平衡性由码序列中的直流分量决定。平衡性好,则载波抑制度大,从而有利扩频通信的抗干扰能力以及保密和抗侦破能力。其物理意义是不平衡码会使扩频后的信号中出现一些稳定的信号,从而易于被检测而导致保密能力的降低。

2.2.2 游程分布(游程分布的随机性)

游程是一个序列中取值(1 或 0)相同连在一起的元素的统称 ,所谓的游程长度就是一个游程中元素的个数。而m 序列的分布特性为

1.m 序列的一个周期(p=2n-1)中,游程总数为2n-1。 2. 当1 <游程长度k ≤n -1,游程数目占总数2-k 当1 ≤k ≤n -2,连“1”和连”0“游程各占一半

2.2.3移位相加特性(线性叠加性)

m 序列和其移位后的序列逐位模2 相加,所得的序列还是m 序列,只是相移不同而已. 例如1110100与向右移3 位后的序列1001110逐位模2相加后的序列为0111010 ,相当于原序列向右移1位后的序列,仍是m 序列.

2.2.4自相关特性

周期为p 的m 序列的自相关函数为:

其中:

A - 该序列与其j 次移位序列一个周期中对应元素相同数目 D - 该序列与其j 次移位序列一个周期中对应元素不同目 P - 序列周期 上式可改写为: 式中xi= 0或1。

由移位相加特性和均衡特性,可知m 序列的自相关函数为:

j=0 j= 1,2,……p -1 从m 序列的自相关系数可以看出,m 序列是一个狭义伪随机码.知当m 序列的移位值为其周期的整数倍时,其自相关值取得最大值为2n 一1,移位值取其他值时,其自相关值恒为一1。其自相关函数如图2-1所示。

图2-1m 序列的自相关函数

p

D A D

A D

A j R -=

+-=

)(p

a a a a j R j i i j i i ]

1[]0[)(的数目的数目=⊕-=⊕=

++?

??

??-

=p

j R 11)(R (j )

1123-1

-2-3-P

P -1P

j

第三章 m 序列的设计

3.1 特征多项式确定

n 级线性移位寄存器的如图3-1所示:

图3-1 n 级线性移位寄存器

图中i C 表示反馈线的两种可能连接方式,i C =1表示连线接通,第n-i 级输出加入反馈中;i C =0表示连接线断开,第n-i 级输出未参加反馈。

因此,一般形式的线性反馈逻辑表达式为:

112201

(m od 2)n

n n n n i

n i

i a C a C a C a C a

---==⊕⊕⊕=

将上式左面的n a 移至右面,并将00(1)n n a C a C ==代入上式,则上式可改写为

1

00n

i

n i C a -==

定义一个与上式相对应的多项式

()n

i

i

i F x C

x

==

根据上式可以确定m 序列的特征多项式:

f(x)的次数n 表示移存器的级数。Ci 取值(1或0)确定反馈线连接状态。线性移位寄存器的相继状态具有周期性,周期p ≤ 2n -1。用多项式f(x)来描述线性反馈移位寄存器的反馈连接状态。

其中x 的幂次表示元素的相应位置。上式称为线性反馈移位寄存器的特征多项式。

a n -1

1

a n -2

2

a 1

n -1a 0

c 1+

c 2

c n -1c n =1

c 0=1

n

输出a k

∑==

+++=n

i i

i

n

n x

c

x

c x c c x f 0

10)(

3.2本原多项式的确定

特征多项式与输出序列的周期有密切关系.当F(x)满足下列三个条件时,就一定能产生m 序列:

(1) F(x)是不可约的,即不能再分解多项式; (2) F(x)可整除1p x +,这里21n p =-; (3) F(x)不能整除1q x +,这里q

满足上述条件的多项式称为本原多项式.这样产生m 序列的充要条件就变成了如何寻找本原多项式。寻找本原多项式是一件繁琐的工作,计算的到的结果已列表。

表2-2 本原多项式系数

n

本原多项式的八进制系数表达式

代数式

2 7 12

++x x

3 13 13

++x x 4 23 14

++x x

5 45 12

5

++x x

6 103 16

++x x 7 211 13

7++x x

8 435 13

4

8

++++x x x x

9 1021 14

9++x x 10 2011 13

10++x x 11 4005 12

11

++x x

12

10123

14

6

12

++++x x x x

表2-2给出其中部分结果,每个n 只给出一个本原多项式为了使序列发生器尽量简单,常用的只有3项的本原多项式表中列出的本原多项式都是项数最少的,为了简便起见,用八进制数字记载本原多项式的系数。由系数写出本原多项式非

常方便。本文探讨n=5时,本多项式系数的八进制表示为45,将45写为二进制码100 101,从右向左第一个1对应于

C ,按系数可写出

()

x F =

12

5++x x 。从左向右的第一个1对应于0C ,按系数可写出对

应的寄存器函数[1C 2C 3C 4C 5C ]=[0 0 1 0 1]。

3.3 m 序列的发生

根据m 序列的特征方程:

(1)

可知本原多项式为52()1f x x x =++的5阶移位寄存器为 [1C 2C 3C 4C

5C ]=[0 0 1 0 1],移位寄存器结构为

初始化寄存器为[ 5D 4D 3D 2D 1D ] =[0 0 0 0 1],寄存器首先左移位可知()0m =0,这时依据(1)式得知反馈351c c D ⊕=。由于为5阶寄存器,码长

31125

=-=L 。故要循环31

次,得到所需的m 序列。

程序代码如下:

function [mseq]=mseries(coefficients)

len=length(coefficients); %所需的移位寄存器的长度 L=2^len-1;

registers=[zeros(1,len-1),1];%初始寄存器内容 mseq(1)=registers(1); %m 序列的第一个输出码元 for i=2:L

newregisters(1:len-1)=registers(2:len);

1

D 2D 3D 4D 5

D 0

C 3

C 5

C m 序列

2

0120

()n

n

i

n i i f x c c x c x c x c x ==++++=∑

newregisters(len)=mod(sum(coefficients.*registers),2); registers=newregisters;

mseq(i)=registers(1);

end

将以上代码命名为mseries.m

第四章 程序调试及结果分析

以 5 阶移位寄存器为例来产生m 序列,由文献可知其特征多项式

5

2

()1

f x x x =++为本原多项式,亦及其反馈连接形式为[1C 2C 3C 4C

5C ]=[0 0 1 0 1];

移位寄存器结构为

程序代码为:

coefficients=[0 0 1 0 1]; mseq=mseries(coefficients); stairs(mseq); 保存为m_run.m

在MATLAB 的command window 里 运行 m_run ,

得到图3-1所示:

1

D 2D 3D 4D 5

D 0

C 3

C 5

C m 序列

图3-1 运行结果

得到m序列返回值为:

Columns 1 through 11

0 0 0 0 1 1 1 0 1 0 0 Columns 12 through 22

1 1 1 0 1 0 0 1 1 1 0 Columns 23 through 31

1 0 0 1 1 1 0 1 0

通过运行结果可以看出是由0、1组成的阶梯形图形,Stairs函数功能是画阶梯形,生成一系列的m序列,成功实现了要求。

由于m序列全为0 1的集合,直接的stairs绘制使得0,1的位置不清楚,使用stem(mseq)重新运行得到图3-2。

图3-2新运行图形这样就明显看到m序列的位置。

GUI工具设计的图形显示界面及其程序如下:在按钮“图形1”的M文件中输入程序:

coefficients=[0 0 1 0 1];

mseq=mseries(coefficients);

h=stairs(mseq);

set(h,'color','red')

set(handles.radiobutton2,'value',0)

set(handles.radiobutton1,'value',0)

set(handles.radiobutton3,'value',0)

set(handles.radiobutton5,'value',0)

set(handles.radiobutton6,'value',0)

set(handles.radiobutton7,'value',0)

set(handles.radiobutton8,'value',0)

set(handles.radiobutton4,'value',0)

set(handles.pushbutton2,'value',0)

运行得到如下图形:

在按钮“图形2”的M文件中输入程序:

coefficients=[0 0 1 0 1];

mseq=mseries(coefficients);

h=stem(mseq);

set(h,'color','red')

set(handles.radiobutton2,'value',0) set(handles.radiobutton1,'value',0) set(handles.radiobutton3,'value',0) set(handles.radiobutton5,'value',0) set(handles.radiobutton6,'value',0) set(handles.radiobutton7,'value',0) set(handles.radiobutton8,'value',0) set(handles.radiobutton4,'value',0) set(handles.pushbutton1,'value',0) 运行得到如下图形:

图形1加宽程序:coefficients=[0 0 1 0 1]; mseq=mseries(coefficients);

h=stairs(mseq);

set(h,'linewidth',3)

set(handles.radiobutton2,'value',0) set(handles.radiobutton1,'value',0)

set(handles.radiobutton4,'value',0) set(handles.radiobutton5,'value',0) set(handles.radiobutton6,'value',0) set(handles.radiobutton7,'value',0) set(handles.radiobutton8,'value',0) set(handles.pushbutton1,'value',0) set(handles.pushbutton2,'value',0) 运行得到:

图形2加宽程序:coefficients=[0 0 1 0 1]; mseq=mseries(coefficients);

h=stem(mseq);

set(h,'linewidth',3)

set(handles.radiobutton2,'value',0) set(handles.radiobutton1,'value',0) set(handles.radiobutton4,'value',0) set(handles.radiobutton5,'value',0) set(handles.radiobutton3,'value',0) set(handles.radiobutton6,'value',0) set(handles.radiobutton8,'value',0) set(handles.pushbutton1,'value',0) set(handles.pushbutton2,'value',0) 运行得到:

图形1虚线程序:coefficients=[0 0 1 0 1]; mseq=mseries(coefficients);

h=stairs(mseq);

set(h,'linestyle',':')

set(handles.radiobutton2,'value',0) set(handles.radiobutton3,'value',0) set(handles.radiobutton4,'value',0) set(handles.radiobutton5,'value',0) set(handles.radiobutton6,'value',0) set(handles.radiobutton7,'value',0) set(handles.radiobutton8,'value',0) set(handles.pushbutton1,'value',0) set(handles.pushbutton2,'value',0) 运行得到:

其余按钮程序如下:

图形1:

实线程序

coefficients=[0 0 1 0 1]; mseq=mseries(coefficients);

h=stairs(mseq);

set(h,'linestyle','-')

set(handles.radiobutton1,'value',0) set(handles.radiobutton3,'value',0) set(handles.radiobutton4,'value',0) set(handles.radiobutton5,'value',0) set(handles.radiobutton6,'value',0) set(handles.radiobutton7,'value',0) set(handles.radiobutton8,'value',0) set(handles.pushbutton1,'value',0) set(handles.pushbutton2,'value',0) 变细

coefficients=[0 0 1 0 1]; mseq=mseries(coefficients);

h=stairs(mseq);

set(h,'linewidth',0.5)

set(handles.radiobutton2,'value',0) set(handles.radiobutton1,'value',0) set(handles.radiobutton3,'value',0) set(handles.radiobutton5,'value',0) set(handles.radiobutton6,'value',0) set(handles.radiobutton7,'value',0) set(handles.radiobutton8,'value',0) set(handles.pushbutton1,'value',0) set(handles.pushbutton2,'value',0) 图形2:

虚线

coefficients=[0 0 1 0 1]; mseq=mseries(coefficients);

h=stem(mseq);

set(h,'linestyle',':')

set(handles.radiobutton1,'value',0) set(handles.radiobutton3,'value',0) set(handles.radiobutton4,'value',0) set(handles.radiobutton2,'value',0) set(handles.radiobutton6,'value',0) set(handles.radiobutton7,'value',0) set(handles.radiobutton8,'value',0) set(handles.pushbutton1,'value',0) set(handles.pushbutton2,'value',0) 实线

coefficients=[0 0 1 0 1]; mseq=mseries(coefficients);

h=stem(mseq);

set(h,'linestyle','-')

set(handles.radiobutton1,'value',0) set(handles.radiobutton3,'value',0) set(handles.radiobutton4,'value',0) set(handles.radiobutton5,'value',0) set(handles.radiobutton2,'value',0) set(handles.radiobutton7,'value',0) set(handles.radiobutton8,'value',0) set(handles.pushbutton1,'value',0) set(handles.pushbutton2,'value',0) 变细

coefficients=[0 0 1 0 1]; mseq=mseries(coefficients);

h=stem(mseq);

set(h,'linewidth',0.5)

set(handles.radiobutton2,'value',0)

set(handles.radiobutton1,'value',0)

set(handles.radiobutton4,'value',0)

set(handles.radiobutton5,'value',0)

set(handles.radiobutton3,'value',0)

set(handles.radiobutton7,'value',0)

set(handles.radiobutton6,'value',0)

set(handles.pushbutton1,'value',0)

set(handles.pushbutton2,'value',0)

背景颜色程序:

红色

set(gcbf,'color','r');

set(gcbo,'checked','on');

set(handles.hwcyellow,'checked','off'); set(handles.hwccyan,'checked','off'); set(handles.hwcblue,'checked','off'); set(handles.hwcblack,'checked','off'); set(handles.hwcmagenta,'checked','off'); set(handles.hwcgreen,'checked','off');

黄色

set(gcbf,'color','y');

set(gcbo,'checked','on');

set(handles.hwccyan,'checked','off'); set(handles.hwcred,'checked','off');

set(handles.hwcblue,'checked','off'); set(handles.hwcblack,'checked','off'); set(handles.hwcmagenta,'checked','off'); set(handles.hwcgreen,'checked','off')

青色

set(gcbf,'color','c');

set(gcbo,'checked','on');

set(handles.hwcred,'checked','off');

set(handles.hwcyellow,'checked','off'); set(handles.hwcblue,'checked','off'); set(handles.hwcblack,'checked','off'); set(handles.hwcmagenta,'checked','off'); set(handles.hwcgreen,'checked','off')

蓝色

set(gcbf,'color','blue');

set(gcbo,'checked','on');

set(handles.hwcred,'checked','off');

set(handles.hwcyellow,'checked','off'); set(handles.hwccyan,'checked','off'); set(handles.hwcblack,'checked','off');

MATLAB中产生高斯白噪声

MATLAB中产生高斯白噪声,涉及到awgn和wgn函数 MATLAB中产生高斯白噪声非常方便,可以直接应用两个函数,一个是WGN,另一个是AWGN。WGN用于产生高斯白噪声,AWGN则用于在某一信号中加入高斯白噪声。 1. WGN:产生高斯白噪声 y = wgn(m,n,p) 产生一个m行n列的高斯白噪声的矩阵,p以dBW为单位指定输出噪声的强度。 y = wgn(m,n,p,imp) 以欧姆(Ohm)为单位指定负载阻抗。 y = wgn(m,n,p,imp,state) 重置RANDN的状态。 在数值变量后还可附加一些标志性参数: y = wgn(…,POWERTYPE) 指定p的单位。POWERTYPE可以是'dBW', 'dBm'或 'linear'。线性强度(linear power)以瓦特(Watt)为单位。 y = wgn(…,OUTPUTTYPE) 指定输出类型。OUTPUTTYPE可以是'real'或 'complex'。 2. AWGN:在某一信号中加入高斯白噪声 y = awgn(x,SNR) 在信号x中加入高斯白噪声。信噪比SNR以dB为单位。x的强度假定为0dBW。如果x是复数,就加入复噪声。 y = awgn(x,SNR,SIGPOWER) 如果SIGPOWER是数值,则其代表以dBW为单位的信号强度;如果SIGPOWER为'measured',则函数将在加入噪声之前测定信号强度。y = awgn(x,SNR,SIGPOWER,STATE) 重置RANDN的状态。 y = awgn(…,POWERTYPE)指定SNR和SIGPOWER的单位。POWERTYPE可以是'dB'或'linear'。如果POWERTYPE是'dB',那么SNR以dB为单位,而SIGPOWER以dBW为单位。如果POWERTYPE是'linear',那么SNR作为比值来度量,而SIGPOWER 以瓦特为单位。 注释 1. 分贝(decibel,dB):分贝(dB)是表示相对功率或幅度电平的标准单位,换句话说,就是我们用来表示两个能量之间的差别的一种表示单位,它不是一个绝对单位。例如,电子系统中将电压、电流、功率等物理量的强弱通称为电平,电平的单位通常就以分贝表示,即事先取一个电压或电流作为参考值(0dB),用待表示的量与参考值之比取对数,再乘以20作为电平的分贝数(功率的电平值改乘10)。 2. 分贝瓦(dBW, dB Watt):指以1W的输出功率为基准时,用分贝来测量的功率放大器的功率值。 3. dBm (dB-milliWatt):即与1milliWatt(毫瓦)作比较得出的数字。 0 dBm = 1 mW 10 dBm = 10 mW 20 dBm = 100 mW 也可直接用randn函数产生高斯分布序列,例如: 程序代码 y=randn(1,2500); y=y/std(y);

基于MATLAB的m序列产生

第一章设计内容及要求 基于MATLAB产生m序列 要求: 1.通过matlab编程产生m序列的产生原理及其产生方法。 2.对特定长度的m序列,分析其性质,及其用来构造其它序列的方法。

第二章m序列设计方案的选择 2.1 方案一 MATLAB编程非常简单,无需进行变量声明,可以很方便的实现m序列。 2.2 方案二 图2.1 Simulink实现m序列 Simulink是MATLAB最重要的组件之一,它提供了一个动态系统建模,仿真和综合分析的集成环境。在此环境中无需大量书写程序,而只需通过简单直观的鼠标操作,就可构造出复杂的系统。Simulink具有适应性广,结构及流程清晰及仿真精细等优点,基于以上优点,Simulink已被广泛的运用到控制理论和数字信号处理的复杂仿真和设计。 通过比较方案一和方案二,发现方案一的有点具有通用性而方案二利用MATLAB的Simulink直接搭建模块,在移位寄存器较少的情况下利用此方法比较简单,可是当移位寄存器的个数增多时,要搭建那么多的模块就显的很繁琐了,缺乏通用性,因此本次实验选择方案一。

第三章m序列的产生及性质 3.1 m序列的产生原理、结构及产生 m序列是最长线性反馈移位寄存器序列的简称,m序列是由带线性反馈的移位寄存器产生的。 由n级串联的移位寄存器和反馈逻辑线路可组成动态移位寄存器,如果反馈逻辑线路只由模2和构成,则称为线性反馈移位寄存器。 带线性反馈逻辑的移位寄存器设定初始状态后,在时钟触发下,每次移位后各级寄存器会发生变化,其中任何一级寄存器的输出,随着时钟节拍的推移都会产生一个序列,该序列称为移位寄存器序列。 n级线性移位寄存器的如图3.1所示: ◇A 图3.1 n级线性移位寄存器 图中C i表示反馈线的两种可能连接方式,C i=1表示连线接通,第n-i 级输出加入反馈中;C i=0表示连线断开,第n-i级输出未参加反馈。 因此,一般形式的线性反馈逻辑表达式为 ------表达式3.1将等式左边的a n移至右边,并将a n=C0a n(C0=1)带入上式,则上式可以 写成 -------表达式3.2 定义一个与上式相对应的多项式 --------表达式3.3 其中x的幂次表示元素的相应位置。该式为线性反馈移位寄存器的特征

序列信号发生器分析

华南师范大学实验报告 学生姓名林竞浩李瑜贤学号20102804016 专业多媒体与网络技术年级、班级2010级4班 课程名称模拟电路与数字电路实验项目555定时器的应用 实验类型□验证□设计□综合实验时间2011年月日 实验指导老师实验评分 一、实验目的 1 学会构建序列发生器的基本方法 2掌握对序列信号发生器序列信号的测试分析方法。 二、实验仪器 安装有Multisim10软件的个人电脑 三、实验原理 序列信号器产生序列信号,有多种方法。本实验采用计数器和数据选择器构成发生。图一中四位二进制同步计数器74S163状态输出端QC,QB,QA输出的数据,送入8选1数据选择器74S151的地址输入端ABC,需要获取产生的序列信号接至数据选择器74S151数据输入端D0-D7,数据从Y或W端输出,实验电路原理图如下

四、实验步骤 1设定产生周期为00010111序列信号。 2打开电脑Multisim10操作平台,从TTL元件库中取出74S163,74S151,显示器件库中取下带译码器的数码管及探针等器件,以及逻辑分析仪,按实验电路图连接好。 3设定时钟信号发生器V1的频率为100HZ .调整好实验电路后,数码管有0-7计数显示,探针有闪动。 4双击打开逻辑分析仪工作界面,以备测试波形。调整逻辑分析仪时钟源为外同步。正常后,观察数码管,探针,逻辑分析仪波形的变化,把相关数据填入表1中 输入时钟脉冲计数器输出逻辑指示灯数码管显示 QC QB QA Y 0 0 0 0 N 0 1 0 0 1 N 1 2 0 1 0 N 2 3 0 1 1 Y 3 4 1 0 0 N 4 5 1 0 1 Y 5

白噪声的测试MATLAB程序

白噪声的测试MATLAB程序 学术篇 2009-11-13 22:18:03 阅读232 评论0 字号:大中小订阅 clear; clc; %生成各种分布的随机数 x1=unifrnd(-1,1,1,1024);%生成长度为1024的均匀分布 x2=normrnd(0,1,1,1024);%生成长度为1024的正态分布 x3=exprnd(1,1,1024);%生成长度为1024的指数分布均值为零 x4=raylrnd(1,1,1024);%生成长度为1024的瑞利分布 x5=chi2rnd(1,1,1024);%生成长度为1024的kaifang分布%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %求各种分布的均值 m1=mean(x1),m2=mean(x2),m3=mean(x3),m4=mean(x4),m5=mean(x5) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %求各种分布的方差 v1=var(x1),v2=var(x2),v3=var(x3),v4=var(x4),v5=var(x5) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %求各种分布的自相关函数 figure(1);title('自相关函数图'); cor1=xcorr(x1);cor2=xcorr(x2);cor3=xcorr(x3);cor4=xcorr(x4);cor5=xcorr(x5); subplot(3,2,1),plot(1:2047,cor1);title('均匀分布自相关函数图'); subplot(3,2,2),plot(1:2047,cor2);title('正态分布'); subplot(3,2,3),plot(1:2047,cor3);title('指数分布'); subplot(3,2,4),plot(1:2047,cor4);title('瑞利分布'); subplot(3,2,5),plot(1:2047,cor5);title('K方分布'); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %求各种分布的概率密度函数 y1=unifpdf(x1,-1,1); y2=normpdf(x2,0,1); y3=exppdf(x3,1); y4=raylpdf(x4,1); y5=chi2pdf(x5,1); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %各种分布的频数直方图 figure(2); subplot(3,2,1),hist(x1);title('均匀分布频数直方图'); subplot(3,2,2),hist(x2,[-4:0.1:4]);title('正态分布'); subplot(3,2,3),hist(x3,[0:.1:20]);title('指数分布'); subplot(3,2,4),hist(x4,[0:0.1:4]);title('瑞利分布'); subplot(3,2,5),hist(x5,[0:0.1:10]);title('K方分布'); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %各种分布的概率密度估计 figure(3);

(完整版)本科毕业设计-m序列发生器的仿真实现

编号: 审定成绩: 重庆邮电大学移通学院 毕业设计(论文) 设计(论文)题目:m序列发生器的仿真实现 单位(系别):电子信息工程系 学生姓名: 专业: 班级: 学号:

指导教师: 答辩组负责人: 填表时间:2012 年 5 月 重庆邮电大学移通学院教务处制

重庆邮电大学移通学院毕业设计(论文)任务书 设计(论文)题目 m序列发生器的仿真实现 学生姓名系别专业班级 指导教师职称联系电话 教师单位重庆邮电大学下任务日期__ 2012__年_03_月_ _日 主 要研究内容、方法和要求 1、掌握扩频通信的基本概念,了解m序列在扩频通信中的作用 2、了解m序列的性质和特点 3、掌握m序列发生器的结构,能够实现不同PN序列周期的m序列 4、掌握matlab仿真软件的应用 5、利用matlab仿真工具来实现不同周期的m序列 进度计划第3-5周:查阅资料,了解m序列在扩频通信中的作用第6-8周:了解m序列的随机性质以及m序列产生原理第9-11周:用matlab仿真工具实现不同周期的m序列第12-13周:撰写论文初稿,给出论文目录 第14-15周:撰写并修改论文

第16周:准备毕业答辩 主要参考文献1、啜钢,移动通信原理与系统,北京邮电大学出版社,2005.9. 2、田日才,扩频通信,清华大学出版社,2007.4. 3、王立宁,matlab与通信仿真,人民邮电出版社,2000.1. 4、吴海红,CDMA扩频通信中m序列与Gold序列的比较及应用, 喀什师范学院学报,2010.3. 指导教师签字:年月日 教研室主任签字:年月日 备注:此任务书由指导教师填写,并于毕业设计(论文)开始前下达给学生。

高斯白噪声地matlab实现

通信系统建模与仿真 实验一、高斯白噪声的matlab 实现 要求: 样本点:100 1000 标准差:0.2 2 10 均值: 0 0.2 白噪声 如果噪声的功率谱密度在所有的频率上均为一常数,即 ) /(),(,)(0Hz W f n f P n +∞<<-∞= 式中:0n 为常数,责成该噪声为白噪声,用)(t n 表示。 高斯白噪声的matlab 实现

1.样本点为1000、均值为0、标准差为0.2时,高斯白噪声分布为下图所示: 程序如下所示: % White background nois clear all f = 1:1:1000; for i = 1:length(f) K = (0.2) * randn(1,1) - 0; P(i) = 10.^(K - 3.95*(10^-5)*f(i)); A(i) = sqrt(2*P(i)); end xifft = ifft(A); realx = real(xifft); ti = [1:length(xifft)-1]/1000; realx2(1:length(xifft)-1) = realx(2:length(xifft)); plot(ti,realx2) 2.样本点为1000、均值为0、标准差为2时,高斯白噪声分布为下图所示:

程序如下所示: % White background nois clear all f = 1:1:1000; for i = 1:length(f) K = (2) * randn(1,1) - 0; P(i) = 10.^(K - 3.95*(10^-5)*f(i)); A(i) = sqrt(2*P(i)); end xifft = ifft(A); realx = real(xifft); ti = [1:length(xifft)-1]/1000; realx2(1:length(xifft)-1) = realx(2:length(xifft)); plot(ti,realx2) 3.样本点为1000、均值为0、标准差为10时,高斯白噪声分布为下图所示:

白噪声产生程序

第二章的白噪声产生程序 例2.2 用乘同余法产生(见光盘FLch2bzsheg2.m) ①编程如下: A=6; x0=1; M=255; f=2; N=100;%初始化; x0=1; M=255; for k=1: N %乘同余法递推100次; x2=A*x0; %分别用x2和x0表示x i+1和x i-1; x1=mod (x2,M); %取x2存储器的数除以M的余数放x1(x i)中; v1=x1/256; %将x1存储器中的数除以256得到小于1的随机数放v1中; )减去0.5再乘以存储器f中的系数,存放在v(:,k)=(v1-0.5 )*f; %将v1中的数( i 矩阵存储器v的第k列中,v(:,k)表示行不变、列随递推循环 次数变化; x0=x1; % x i-1= x i; v0=v1; end %递推100次结束; v2=v %该语句后无‘;’,实现矩阵存储器v中随机数放在v2中,且 可直接显示在MATLAB的window中; k1=k; %grapher %以下是绘图程序; k=1:k1; plot(k,v,k,v,'r'); xlabel('k'), ylabel('v');tktle(' (-1,+1)均匀分布的白噪声') ②程序运行结果如图2.6所示。 图2.6 采用MA TLAB产生的(-1,+1)均匀分布的白噪声序列 ③产生的(-1,1)均匀分布的白噪声序列 在程序运行结束后,产生的(-1,1)均匀分布的白噪声序列,直接从MATLAB的window 界面中copy出来如下(v2中每行存6个随机数):

v2 = -0.9531 -0.7188 0.6875 -0.8359 -0.0156 0.9219 0.5703 0.4531 -0.2500 -0.4844 0.1016 -0.3672 0.8047 -0.1328 0.2188 0.3359 -0.9531 -0.7188 0.6875 -0.8359 -0.0156 0.9219 0.5703 0.4531 -0.2500 -0.4844 0.1016 -0.3672 0.8047 -0.1328 0.2188 0.3359 -0.9531 -0.7188 0.6875 -0.8359 -0.0156 0.9219 0.5703 0.4531 -0.2500 -0.4844 0.1016 -0.3672 0.8047 -0.1328 0.2188 0.3359 -0.9531 -0.7188 0.6875 -0.8359 -0.0156 0.9219 0.5703 0.4531 -0.2500 -0.4844 0.1016 -0.3672 0.8047 -0.1328 0.2188 0.3359 -0.9531 -0.7188 0.6875 -0.8359 -0.0156 0.9219 0.5703 0.4531 -0.2500 -0.4844 0.1016 -0.3672 0.8047 -0.1328 0.2188 0.3359 -0.9531 -0.7188 0.6875 -0.8359 -0.0156 0.9219 0.5703 0.4531 -0.2500 -0.4844 0.1016 -0.3672 0.8047 -0.1328 0.2188 0.3359 -0.9531 -0.7188 0.6875 -0.8359 *另外,书中图2.3白噪声的产生如下: 显然,只要在例2.2程序的初始化部分中给N=300,f=6,运行程序就可以得到如图2.3所示的(-3,3)的白噪声过程. ①编程如下: A=6; x0=1; M=255; f=6; N=300;%初始化; x0=1; M=255; for k=1: N %乘同余法递推100次; x2=A*x0; %分别用x2和x0表示x i+1和x i-1; x1=mod (x2,M); %取x2存储器的数除以M的余数放x1(x i)中; v1=x1/256; %将x1存储器中的数除以256得到小于1的随机数放v1中; )减去0.5再乘以存储器f中的系数,存放在v(:,k)=(v1-0.5 )*f; %将v1中的数( i 矩阵存储器v的第k列中,v(:,k)表示行不变、列随递推循环 次数变化; x0=x1; % x i-1= x i; v0=v1; end %递推100次结束; v2=v %该语句后无‘;’,实现矩阵存储器v中随机数放在v2中,且 可直接显示在MATLAB的window中; k1=k; %grapher %以下是绘图程序; k=1:k1; plot(k,v,k,v,'r'); xlabel('k'), ylabel('v');tktle(' (-1,+1)均匀分布的白噪声')

4级m序列发生器设计参考

3级m序列发生器设计方案 图2.2 七位反馈移位移存器 方案一: 根据图2.2的结构模型,对于级数为n=3的m序列,可设置四个寄存器,将寄存器0和寄存器1进行异或运算,把结果赋给寄存器3。然后将寄存器2,1,0右移一位。再将寄存器3赋给寄存器2。这样就不会产生数据覆盖。最后把寄存器0输出。同理可得15位m序列,级数n=4的verilog建模思路。 方案二: 由于7位m序列1110010可用三位二进制7种状态表示,因此可用Moore有限状态机的行为进行建模方法。Moore有限状态机,其输出值只取决于当前状态,与输入值无关。可以通过在always语句块内使用case语句来实现,在每个case分支都应当有输出值及状态转换。设状态A=3'b111,B=3'b011,C=3'b001,D=3'b100,E=3'b010,F=3'b101,G=3'b110;它们的转换关系图如图2.3: 图 2.3 m序列发生器的状态转移图 方案一的程序比方案二简洁,方案二的思路比方案一更明白。二者的各有千秋。

4级m序列及其Manchester编码 module manchester_encodingnew(enc_data,m_test,clk); parameter BYTE_WIDTH=8; input clk; output enc_data; output m_test; reg phase; reg busy; wire clkr; wire enc_data; reg [2:0] bit_count; reg reg_data; reg Data_CLKT,Buff; reg [3:0]m_Buff; assign clkr=clk; initial begin Data_CLKT=0; busy=0; phase=0; bit_count=0; end always@(posedge clkr) begin Data_CLKT=~Data_CLKT; end always@ (posedge clkr) begin phase=~phase; end always@ (posedge clkr) begin if((bit_count==BYTE_WIDTH-1)&&phase) busy=0;

三位二进制加法计数器、序列信号发生器的设计、用集成芯片设计一个256进制加法计数器

目录 1课程设计的目的与作用 (1) 2设计任务 (1) 2.1同步计数器 (1) 2.2序列信号发生器 (1) 3设计原理 (1) 3.1同步计数器 (1) 3.1.1加法计数器 (2) 3.1.2减法计数器 (2) 3.1.3用集成芯片设计一个256进制的加法器 (2) 3.2序列信号发生器 (3) 4实验步骤 (3) 4.1同步计数器 (3) 4.1.1加法计数器 (4) 4.1.2减法计数器 (7) 4.1.3用集成芯片设计一个256进制的加法器 (10) 4.2序列信号发生器 (11) 5设计总结与体会 (14) 6参考文献 (15)

1课程设计的目的与作用 1.了解同步计数器及序列信号发生器工作原理; 2.掌握计数器电路的分析,设计方法及应用; 3.掌握序列信号发生器的分析,设计方法及应用; 2设计任务 2.1同步计数器 1.使用设计一个循环型3位2进制加法计数器,其中无效状态为(001,010),组合电路 选用与门和与非门等。 2.根据自己的设计接线。 3.检查无误后,测试其功能。 2.2序列信号发生器 1.使用设计一个能循环产生给定序列的序列信号发生器,其中发生序列(1000001),组 合电路选用与门和与非门等。 根据自己的设计接线。 2.检查无误后,测试其功能。 3设计原理 3.1同步计数器 (1)计数器是用来统计输入脉冲个数电路,是组成数字电路和计算机电路的基本时序逻辑部件。计数器按长度可分为:二进制,十进制和任意进制计数器。计数器不仅有加法计数器,也有减法计数器。如果一个计数器既能完成累加技术功能,也能完成递减功能,则称其为可逆计数器。在同步计数器中,个触发器共用同一个时钟信号。 (2)时序电路的分析过程:根据给定的时序电路,写出各触发器的驱动方程,输出方程,

matlab 正弦波 高斯白噪声 均匀白噪声 功率谱密度 自相关函数

现代通信原理作业一 姓名:张英伟学号:8036 班级:13级理工部3班 利用matlab完成: ●产生正弦波信号、均匀白噪声以及高斯白噪声并分别将两种噪声叠加到正弦 波信号上,绘出波形。 ●分别求取均匀白噪声序列和高斯白噪声序列的自相关及功率谱密度,绘出波 形。 一、白噪声区别及产生方法 1、定义: 均匀白噪声:噪声的幅度分布服从均匀分布,功率谱密度在整个频域内均匀分布的噪声。 高斯白噪声:噪声的幅度分布服从正态分布,功率谱密度在整个频域内均匀分布的噪声。 2、matlab仿真函数: rand函数默认产生是区间在[0,1]的随机数,这里需要利用公式: z2=a+(b-(a))*rand(m,n)............(公式1) randn函数默认产生均值是0、方差是1的随机序列,所以可以用其来产生均值为0、方差为1的正态分布白噪声,即N(0,12)。利用公式: z1=a+b*randn(1,n).................(公式2) 可以产生均值为a,方差为b2 高斯白噪声,即N(a,b2)。 二、自相关函数与功率谱密度之间的关系 1、功率谱密度:每单位频率波携带的功率,这被称为信号的功率谱密度。 2、自相关函数:描述随机信号X(t)在任意两个不同时刻t1,t2的取值之间的相关程度。 3、维纳-辛钦定理: 由于平均值不为零的信号不是平方可积的,所以在这种情况下就没有傅里叶变换。幸运的是维纳-辛钦定理提供了一个简单的替换方法,如果信号可以看作是平稳随机过程,那么功率谱密度就是信号自相关函数的傅里叶变换。 4、平稳随机过程:是在固定时间和位置的概率分布与所有时间和位置的概率分布相同的随机过程。(就是指得仅一个随机过程,中途没有变成另外一个统计特性的随机过程)

基于Matlab的m序列发生器的

目录 第一章绪论..................................................................................................................1 1.1背景及意义 ....................................................................................................1 1.2设计内容及要求...............................................................................................1 1.2.1 设计内容................................................................................................1 1.2.2 设计要求................................................................................................2 1.3系统框图..........................................................................................................2第二章 m序列的分析.......................................................................................................3 2.1 m序列的原理...........................................................................................................3 2.2 m序列的相关特性 ...................................................................................................4 2.2.1均衡特性(平衡性) ...............................................................................4 2.2.2游程分布(游程分布的随机性) ...............................................................4 2.2.3移位相加特性(线性叠加性) ..................................................................4 2.2.4自相关特性.............................................................................................5第三章 m序列的设计............................................................................................................. 6 3.1特征多项式确定..............................................................................................6 3.2本原多项式的确定...........................................................................................7 3.3 m序列的发生..............................................................................................8第四章程序调试及结果分析..................................................................................10结论............................................................................................................................12参考文献....................................................................................................................13附录一:程序代码....................................................................................................14

matlab产生高斯噪声

%正态分布(normal distribution)又名高斯分布(Gaussian distribution), % MATLAB 命令是normrnd。 %1)R=normrnd(MU,SIGMA):生成服从正态分布(MU参数代表均值,DELTA参数代表标准差)的随机数。 % 输入的向量或矩阵MU和SIGMA必须形式相同,输出R也和它们形式相同。 %2)R=normrnd(MU,SIGMA,m):生成服从正态分布(MU参数代表均值,DELTA参数代表标准差)的随机数矩阵, % 矩阵的形式由m定义。m是一个1×2向量,其中的两个元素分别代表返回值R中行与列的维数。 %3) R=normrnd(MU,SIGMA,m,n):生成m*n形式的正态分布的随机数矩阵。 %4)randn()是标准正态分布;MA TLAB命令是normrnd 功能:生成服从指定均数和标准差的正态分布的随机数列, %即高斯随机序列。 例如: %高斯噪声为n(m)=nmr+jnmi,其中实虚部均为独立同分布N(0, a)的高斯随机数,信号x(m)=s(m) + n(m) % SNR = 10 lg[1/(2a)] = – 3 – 10 lg(a) (dB) [之所以是2a不是a是因为实虚部] %若有用信号s(n)的最大幅度am,要求得到的信噪比为p,则p=10log10[(am^2)/b^2],用这个公式反推出高斯 %噪声的方差b^2 snr=10; sqrt(a)=10^(-(snr+3)/10); noise=normrnd(0,sqrt(a),1,1000)+1*i*normrnd(0,sqrt(a),1,1000); %或者 noise=sqrt(a)*randn(1,1000)+1*i*sqrt(a)*randn(1,1000);

序列信号发生器和序列信号检测器

南昌大学实验报告 学生姓名:学号:专业班级: 实验类型:□验证□综合□设计□创新实验日期:实验成绩: 实验三序列信号检测器设计 (一)实验目的 1.进一步熟悉PH-1V型实验装置和QuartusⅡ软件的使用方法; 2.学习有限状态机法进行数字系统设计; 3.学习使用原理图输入法进行设计。 (二)设计要求 完成设计、仿真、调试、下载、硬件测试等环节,在PH-1V型EDA实验装置上实现一个串行序列信号发生器和一个序列信号检测器的功能,具体要求如下: 1.先用原理图输入法设计0111010011011010序列信号发生器; 2.其最后8BIT数据用LED显示出来; 3.再设计一个序列信号检测器,检测上述序列信号,若检测到串行序列 “11010”则输出为“1”,否则输出为“0”; (三)主要仪器设备 1.微机 1台 2.QuartusII集成开发软件1套 3.PH-1V型EDA实验装置1套 (四)实验总体设计 本实验要求先设计一个信号发生器,采用原理图设计方法,要求产生 0111010011011010序列,16位,便可采用74161计数器和74151选择器,161计数输出QD,QC,QB,QA从0000计至1111,然后将161计数输出低三位QC,QB,QA分别接到151的C,B,A端,高位QD用来控制151两片的片选,即两片151分别实现序列的高八位和低八位的输出。最后将二片151的输出相或便可得到最后要产生的序列。 序列检测器即为一个状态机,首先画出状态转移图,根据状态转移图设计 出序列检测器,当检测到预置的序列,则RESULT输出1,否则输出0 (五)实验重难点设计 1. 用原理输入法设计序列信号发生器 (1)打开Quartus II软件,进入编辑环境。 (2)创建新的原理图BDF文件,命名为FASHENGQI,根据其总体设计思路设计 出如下原理图:

实验九 m序列产生及其特性实验

实验九 m 序列产生及其特性实验 一、实验目的 通过本实验掌握m 序列的特性、产生方法及应用。 二、实验内容 1、观察m 序列,识别其特征。 2、观察m 序列的自相关特性。 三、基本原理 m 序列是有n 级线性移位寄存器产生的周期为21n -的码序列,是最长线性移位寄存器序列的简称。码分多址系统主要采用两种长度的m 序列:一种是周期为1521-的m 序列,又称短PN 序列;另一种是周期为4221-的m 序列,又称为长PN 码序列。m 序列主要有两个功能:①扩展调制信号的带宽到更大的传输带宽,即所谓的扩展频谱;②区分通过多址接入方式使用同一传输频带的不同用户的信号。 1、产生原理 图9-1示出的是由n 级移位寄存器构成的码序列发生器。寄存器的状态决定于时钟控制下输入的信息(“0”或“1”),例如第I 级移位寄存器状态决定于前一时钟脉冲后的第i -1级移位寄存器的状态。 图中C 0,C 1,…,C n 均为反馈线,其中C 0=C n =1,表示反馈连接。因为m 序列是由循环序列发生器产生的,因此C 0和C n 肯定为1,即参与反馈。而反馈系数C 1,C 2,…,C n -1 若为1,参与反馈;若为0,则表示断开反馈线,即开路,无反馈连线。 D 1 输出 C 0=1 C 1 C 2 C n-1 C n =1 D 2 D 3 D n 图9-1 n 级循环序列发生器的模型 一个线性反馈移动寄存器能否产生m 序列,决定于它的反馈系数(0,1,2,,)i c i n = ,下表中列出了部分m 序列的反馈系数i c ,按照下表中的系数来构造移位寄存器,就能产生相应的m 序列。 表9-1 部分m 序列的反馈系数表 级数n 周期P 反馈系数i C (采用八进制) 3 7 13 4 1 5 23 5 31 45,67,75 6 63 103,147,155 7 127 203,211,217,235,277,313,325,345,367 8 255 435,453,537,543,545,551,703,747

M序列的matlab产生方法

M序列是工程中常用的输入信号,它的性质类似于白噪声,而白噪声是理论上最好的输入信号,可见M序列的价值。下面介绍M序列的matlab产生方法。 idinput函数 产生系统辨识常用的典型信号。 格式 u = idinput(N,type,band,levels) [u,freqs] = idinput(N,'sine',band,levels,sinedata) N 产生的序列的长度,如果N=[N nu],则nu为输入的通道数,如果N=[P nu M],则nu 指定通道数,P为周期,M*P为信号长度。默认情况下,nu=1,M=1,即一个通道,一个周期。 Type 指定产生信号的类型,可选类型如下 Band 指定信号的频率成分。对于’rgs’、’rbs’、’sine’,band = [wlow, whigh]指定通带的范围,如果是白噪声信号,则band=[0, 1],这也是默认值。指定非默认值时,相当于有色噪声。 对于’prbs’,band=[0, B],B表示信号在一个间隔1/B(时钟周期)内为恒值,默认为[0, 1]。 Levels 指定输入的水平。Levels=[minu, maxu],在type=’rbs’、’prbs’、’sine’时,表示信号u的值总是在minu和maxu之间。对于type=’rgs’,minu指定信号的均值减标准差,maxu指定信号的均值加标准差,对于0均值、标准差为1的高斯白噪声信号,则levels=[-1, 1],这也是默认值。 说明 对于PRBS信号,如果M>1,则序列的长度和PRBS周期会做调整,使PRBS的周期为对应一定阶数的最大值(即2^n-1,n为阶数);如果M=1,PRBS的周期是大于N的相应阶数的值。在多输入的情形时,信号被最大平移,即P/nu为此信号能被估计的模型阶次的上界。 上面的意思可如下理解:对于M=1时, ms = idinput(12, 'prbs', [0 1], [0 1]); figure stairs(ms) title('M序列') ylim([-0.5 1.5])

m序列发生器设计实现

河南师范大学设计性实验报告 学期:2014-2015学年第 1 学期 m序列发生器设计实现_实验 实验小组成员: 班级:2013级网络工程班 学院:计算机与信息工程学院 填表日期: 2014年 11月 29 日

实验项目简介: 1 问题描述 通常产生伪随机序列的数字电路为一反馈移位寄存器。根据其构成结构,它又分为线性反馈移位寄存器和非线性反馈移位寄存器两类,由线性反馈移位寄存器产生的周期最长的二进制数字序列称为最大长度线性反馈移位寄存器序列,简称m序列。 2.实验原理: 此实验是用4位移位寄存器实现可控乘/除法2到8步长为2n电路通过分析不难看出本次实验的乘除法运算中一个只出现三个数字2、4、8写成二进制为0010、0100、1000可以发现每一次乘法都只是将1向左移一个位每一次除法则是向右移一位,那么就可以使用74194双向移位寄存器。首先要了解4位移位寄存器。工作原理:74194是一个4位双向移位寄存器。它具有左移、右移、并行输入数据、保持以及清除等五种功能: 当~R=1MA MB=00 MA MB=01 MA MB=10 MA MB=11 3.一个完整的系统应具有以下功能: 1)控制信号的移动方向,通过改变S1S0的编码状态,使移位器左移、右移、保持等。 2)可以得到m序列的周期,通过观察示波器中CLK与Sl或者Sr的波形,可以得出m序列的周期。 4.实验目的: 1、掌握M序列信号产生的基本方法 2、利用EWB产生M序列信号,设计电路做成M序列信号发 5.实验条件:学院提供公共机房,1台/学生微型计算机。

实验总结: 1.在实验的过程中,小组成员积极准备。通过实验加深了对74194芯片性能的 了解,提高了各个成员的动手能力。 2.但是由于知识掌握不够全面准确的原因,实验过程中多次出现问题,小组成 员积极思考,最终解决了问题。 3.在观察m序列周期的过程中,出现了周期同预期不符合的情况,最终发现 是输入脉冲时出现了问题。

设计序列信号发生器

数码电子学实验 设计序列信号发生器 报告人:XXX 一.具体要求 要求用D触发器和门电路设计一个产生1101001序列(序列左边先输出)的序列发生器。

二.实验目的 1.熟悉原理图输出法; 2.了解可编程器件的实际应用。 三.实验准备 1.详解D 触发器 ①电路组成 为了避免同步RS 触发器同时出现R 和S 都为1的情况,可在R 和S 之间接入非门G1,如图1所示,这种单输入的触发器称为D 触发器。图2为其逻辑符号。D 为信号输入端。 图1:D 触发器逻辑图 图2:D 触发器逻辑符号 ②逻辑功能 在CP=0时,G2,G3被封锁,都输出1,触发器保持原状态不变,不受D 端输入信号的控制。 在CP=1时,G2,G3解除封锁,可接收D 端输入的信号。如1=D 时,0=D ,触发器翻到1状态,即Q n+1=1,如0=D 时,1=D ,触发器翻到0状态,即Q n+1=0,由此可列出表1所示同步D 触发器的特性表。 表1:同步D 触发器特性表 D Q n Q n+1 说明 0 0 0 输出状态和D 相同 0 1 0 输出状态和D 相同 1 0 1 输出状态和D 相同 1 1 1 输出状态和D 相同 由上述分析可知,同步D 触发器的逻辑功能如下: 当CP 由0变为1后,触发器的状态翻到和D 的状态相同; 当CP 由1变为0后,触发器保持原状态不变。 ③D 触发器的名词来源 D 触发器不会发生RS 触发器不确定的情形(S=1,R=1),也不会发生JK 触发器的追跑情况(J=1,K=1),那么为什么成为D 触发器呢?因为输出Q 等于输入D ,但是要经过一个CLOCK

matlab 正弦波 高斯白噪声 均匀白噪声 功率谱密度 自相关函数

现代通信原理作业一 姓名:张英伟学号:133320085208036 班级:13级理工部3班 利用matlab完成: ●产生正弦波信号、均匀白噪声以及高斯白噪声并分别将两种噪声叠加到正弦 波信号上,绘出波形。 ●分别求取均匀白噪声序列和高斯白噪声序列的自相关及功率谱密度,绘出波 形。 一、白噪声区别及产生方法 1、定义: 均匀白噪声:噪声的幅度分布服从均匀分布,功率谱密度在整个频域内均匀分布的噪声。 高斯白噪声:噪声的幅度分布服从正态分布,功率谱密度在整个频域内均匀分布的噪声。 2、matlab仿真函数: rand函数默认产生是区间在[0,1]的随机数,这里需要利用公式: z2=a+(b-(a))*rand(m,n)............(公式1) randn函数默认产生均值是0、方差是1的随机序列,所以可以用其来产生均值为0、方差为1的正态分布白噪声,即N(0,12)。利用公式: z1=a+b*randn(1,n).................(公式2) 可以产生均值为a,方差为b2 高斯白噪声,即N(a,b2)。 二、自相关函数与功率谱密度之间的关系 1、功率谱密度:每单位频率波携带的功率,这被称为信号的功率谱密度。 2、自相关函数:描述随机信号X(t)在任意两个不同时刻t1,t2的取值之间的相关程度。 3、维纳-辛钦定理: 由于平均值不为零的信号不是平方可积的,所以在这种情况下就没有傅里叶变换。幸运的是维纳-辛钦定理提供了一个简单的替换方法,如果信号可以看作是平稳随机过程,那么功率谱密度就是信号自相关函数的傅里叶变换。 4、平稳随机过程:是在固定时间和位置的概率分布与所有时间和位置的概率分布相同的随机过程。(就是指得仅一个随机过程,中途没有变成另外一个统计特性的随机过程)

相关主题
文本预览
相关文档 最新文档