m序列发生器的设计与实现Word文档格式.docx
《m序列发生器的设计与实现Word文档格式.docx》由会员分享,可在线阅读,更多相关《m序列发生器的设计与实现Word文档格式.docx(17页珍藏版)》请在冰豆网上搜索。
这是一个质的飞越,因为在EDA工程中,用硬件描述语言表达设计思想,用计算机进行模拟、仿真,可测试设计把测试器件设计到芯片系统内部,实现了内建自测试功能。
利用EDA集成设计环境,可以使电子设计流程全自动实现。
我们把利用EDA工程进行电子设计的方法称为现代电子设计。
1.2课程设计目的
根据本次课程设计要求,设计一个七级m序列发生器。
要求自制时钟脉冲信号,并能清楚地观察到m序列稳定的波形。
本设计打算采用EDA进行图形仿真,通过后,采用硬件电路来实现,
设计流程如图1-1所示。
图1-1设计流程图
1.3本章小结
本章从课题背景开始使我们对课设有了感性的认识,对课题产生了浓厚的兴趣,也对扩展频谱通信及多址技术的发展有了了解。
掌握一般的设计流程和设计思路。
从专业角度审视了课程设计的题目,做到对题目有所思考。
第2章设计原理
2.1产生m序列的条件:
(1)r级移位寄存器产生的码,周期N=2r-1,其特征多项式必然是不可约的,即不能再因式分解而产生最长序列。
因此,反馈抽头不能随便决定,否则将会产生短码。
(2)所有的次数r>
1的不可约多项式f(x)必然能除尽1+x
因为a
(x)=(1+x
)/f(x).
如r=3,N=7
1+x
=(1+x)(1+x+x
)(1+x
+x
)
令f
(x)=1+x+x
f
(x)=1+x
则f
(x)和f
(x)均为不可约多项式,都可以产生N=7的序列,产生的序列分别为1110100和1011100。
这样也为我们找到m序列的特征多项式提供了方便。
(3)如果2
-1是一个素数,则所有r次不可约多项式产生的线性移位寄存器序列,一定是m序列,产生这个m序列的不可约多项式称为本原多项式。
(4)除了第r阶以外,如果还有偶数个抽头的反馈结构,则产生的序列就不是最长线性移位寄存器序列。
2.2m序列的反馈系数
一个线性反馈移位寄存器能否产生m序列,决定于它的电路反馈系数c
也就是它的递归关系式。
不同的是反馈系数,产生不同移位寄存器序列。
表3-1列出了不同级数的最长线性移位寄存器序列的反馈系数。
级数r
长度N
反馈系数
3
4
5
6
7
8
9
10
11
12
15
31
63
127
225
511
1023
2047
4095
13
23
45,67,75
103,147,155
203,211,217,235,277,313,325,345,367
435,453,537,543,545,551,703,747
1021,1055,1131,1157,1167,1175
2011,2033,2157,2443,2745,3471
4005,4445,5023,5263,6211,7363
10123,11417,12515,13505,14127,15053
表中的m序列的反馈系数只列出了一部分。
通过这些反馈系数,还可以求出对应的镜像序列反馈抽头和特征多项式。
如r=3的序列为1110100,镜像序列为0010111。
本实验由于r=7,所以可以选择反馈系数有203,211,217,235,277,313,325,345,367,为了方便设计,所以选择反馈系数为211,211的序列为010001001,镜像序列为100100010。
2.3m序列发生器的结构
M序列发生器的结构一般有两种形式,简单型(SSRG)和模件抽头型(MSRG)
1)SSRG
SSRG的结构如图3-2所示。
这种结构的反馈逻辑由特征多项式确定,这种结构的缺点在于反馈支路中的器件时延是叠加的,即等于反馈支路中所有模2加法器时延的和。
因此限制了伪随机序列的工作速度。
提高SSRG工作速率的办法之一是选用抽头数目少的m序列,这样,还可简化序列产生器的结构。
2)MSRG
提高伪随机序列工作速率的另一办法,就是采用MSRG型结构,图3-3给出了这种序列产生器的结构。
这种结构的特点是:
在它的每一级触发器和它相邻一级触发器之间接入一个模2加法器,反馈路径上无任何时延部件。
这种类型的序列发生器已被模件化。
这种结构的反馈总延时,只是一个模2加法器的延时时间,故能提高发生器的工作速度。
SSRG型序列产生器的最高工作频率为
=
式中:
T
为一级移位寄存器的传输时延;
为反馈网络中模2加时延的总和。
MSRG型序列产生器的最高工作频率为
为一级模2加法器的传输时延。
2.4m序列的性质
1)均衡性
在m序列的一个周期内,“1”和“0”的数目基本相等。
准确地说,“1”的个数比“0”的个数多一个。
2)游程分布
“1111”;
长度为3的游程有一个,即“000”;
长度为2的游程有两个,即“11”与“00”;
长度为1的游程有四个,即两个“1”与两个“0”。
一般来说,在m序列中,游程数位2
个,其中长度为1的游程占游程总数的
;
长度为2的游程占游程总数的1/4;
长度为3的占1/8;
…即长度为k的游程占游程总数的2
,其中1<
=k<
=(r-2).而且在长度为k的游程中(1<
=r-2)连“1”和连“0”的游程各占一半,r-1个连“0”和r个连“1”的游程各占一个。
3)移位相加性
一个序列{a
}与其经m次延迟移位产生的另一个不同序列{a
}模2加,得到的仍然是{a
}的某次延迟移位序列{a
},即
{a
}+{a
}={a
}
4)周期性
m序列的周期为N=2
-1,r为反馈移位寄存器的级数
5)伪随机性
如果对一正态分布白噪声取样,若取样值为正,记为“+”。
若取样值为“-”,则将每次取样所得极性排成序列,可以写成
…++-+--+---+--++--…
选择特征多项式
由于211的序列为010001001,所以特征多项式f(x)=1+x
本章是m序列发生器的原理部分,通过本章,可确定m序列的反馈系数以及特征多项式,能够了解m序列更多的性质。
为下章m序列的设计奠定了一定的基础,是整个设计不可缺少的一部分。
第三章方案设计
软件方案选择
根据任务要求,可知在软件部分有以下几种方案可供选择:
(1)采用文本输入法,用一个源程序控制整个电路,然后利用顶层文件将它们综合起来,最终使其具有m序列发生器的功能。
(2)采用原理图方法设计,m序列发生器的提供信号方面由时钟脉冲序列clk代替,中心设计部分由7个D触发器和异或门等设计实现。
初始值由两种形式提供,第一种是提供一个全0信号,这种情况需加一个非门来实现;
第二种是提供一个全1的信号,这就需要再给电路加一与非门才能实现其功能。
方案论证
由以上两种方案分析,方案
(1)全部采用文本输入法,在顶层设计中比较杂,一旦出现错误,将不易更改,程序调试耗时会比较长。
方案
(2)采用了原理图方法,比较简单,易实现,连接硬件电路,较易完成。
综合以上原因,从实现难易,误差大小以及最终结果等各方面考虑,选择方案
(2)来完成该实验。
根据方案
(2)中m序列发生器的实现原理,本次设计方案可分为两种方案来实现,
第一种:
原理图如下
图3-1m序列发生器设计图形
将此图形输入,对其进行保存,并命名为m序列发生器,将其存在f盘中。
选择目标器件
图3-2目标器件的选择
目标器件选择完毕后对其进行前仿真
前仿真如下
图3-3m序列前仿真图
仿真无误,说明设计连线正确,有可能实现m序列发生器的设计
然后对其进行波形仿真:
波形仿真图如下:
图3-4m序列发生器波形仿真图
7级的m序列发生器周期应为127us,1.0us内由10个脉冲,在12.7处,输出波形刚好与起始波形重复;
再用特征多项式对其正确性进行验证,结果完全符合,说明仿真通过,有可能实现m序列发生器的设计。
方案二:
设计图形如下:
图3-5m序列发生器设计图
对其进行前仿真,波形如下:
图3-6m序列前仿真图
前仿真无误,说明连线正确,有可能实现m序列发生器的设计。
波形仿真如下:
图3-7m序列发生器波形仿真图
波形仿真结果也是完全正确,说明次方案也可实现,
3.3硬件方案选择:
对比两种方案,虽都可实现,但第一种方案,在硬件实现的过程中为了要首先提供一个全0的信号给每个D触发器,需加一按键开关,这样比起第二种方案直接将输入加到高电平上要复杂得多,所以方案二更易实现。
因此我们选择方案二来实现硬件方面的实现
3.4本章小结
本章是整个m序列发生器的核心部分,确定了实现方案,并完成了软件部分的设计与仿真.完成之后,可知软件部分已经达到任务要求。
找出各个部分的实现芯片,查出管脚排列,就可以进行下一步的硬件电路连接及测试了。
第4章硬件实现
4.1芯片引脚及功能
查芯片管脚图及功能表,为搭建电路做准备
74HC74寄存器引脚图及功能表如下:
:
1)引脚图:
图4-1
2)功能表:
表4-1
74ls20引脚图及功能表如下:
图4-2
2)真值表:
A
B
C
D
Y
1
X
表4-2