伪随机序列发生器方案设计书_第1页
伪随机序列发生器方案设计书_第2页
伪随机序列发生器方案设计书_第3页
伪随机序列发生器方案设计书_第4页
伪随机序列发生器方案设计书_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第 1章基于伪随机序列的传输处理综合设计1.1 伪随机序列伪随机序列包括 m 序列、 Gold 序列、 M 序列和组合序列等,其中最常用到的是 m 序列 5,6 。本文根据 m 序列完成了传输处理系统的综合设计。序列的生成m 序列是线性反馈移位寄存器的最大长度序列。它的生成可用移位寄存器序列发生器的特征多项式来确定,其特征多项式F ( x) 可以定义为:nF ( x)Ci xiC0C1 xC2 x2.Cn xn (21)i0其中 x 的幂次表示元素相应的位置。根据代数理论的严格证明,当特征多项式F ( x) 满足以下3 个条件时就一定能够产生m 序列:(1)F ( x) 是不可约的,即不能再分

2、解因式;(2)F ( x) 可整除xp1,这里p2n1;(3)F ( x) 不能整除xq1 ,这里qp ;目前广泛应用的m 序列都是由移位寄存器构成的。如图2 1所示, m序列发生器由 n 个二元存储器和模 2 开关网络组成。二元存储器通常是一种双稳态触发器,它的两种状态记为 0 和 l ,其状态取决于时钟控制下输入的信息 (0 或1),例如第 i 级移位寄存器的状态取决于时钟脉冲后的第i 一 1 级移位寄存器的状态。图中Ci 表示为反馈线的两种可能连接状态:Ci 1 表示连接线连通,即第 ni 级输出加入到反馈中; Ci 0 表示连接线断开,即第 ni 级输出未参加到反馈中。图 21由于移位

3、寄存器的初始状态是随机的,它可能是1,也可能是 0。如果各级移位寄存器的初始状态都为0 时,则模2 加法器的输出将始终为0,这样就不能产生任何序列。为了防止这种情况发生,在图21 中往往还需要增加必要的检测电路。序列的特性分析m 序列由 n 级移位寄存器产生的 m 序列,其周期为 2n 1。 m 序列具有如下的一些特性:1)随机性:在 m 序列的一个周期中, 0 和 1出现概率大致相同, 0 码只比 1 码多一个,且 1 的个数为 2n 1 1 ,0 的个数为 2n1 。2)移位可加性:某个周期为 p 的 m 序列与其经任意延迟移位后的序列模 2 相加后,其结果仍是周期为 p 的 m 序列,只

4、是原序列某次延迟移位后的序列。3) 预先可确定性:m 序列是由移位寄存器的初始状态和反馈网络唯一确定的。4) 游程特性:序列中取值相同的相继元素称为一个游程。游程长度指的是游程中元素的个数。在 m 序列中,一共有 2n 1 个游程。其中长度为1 的游程占总游程数的一半;长度为2 的游程占总游程的1/4;长度为k 的游程占总游程数的2 k ,且在长度为 k 的游程中,连的 1 游程和一个长度为0 与连 1 的游程数各占一半。另外,还有一个长度为(n 一 1)的 0 游程。n由以上特性可知, m 序列是一个周期性确定序列,又具有类似于随机二元序列的特性,因此得到了广泛的应用。序列的自相关函数周期为

5、 p 的 m 序列的自相关函数定义为:R( j )ADA D (22)ADp其中, A 是码字中对应码元相同的数目(同为 1 或同为 0 的数目 ), D 是码字中对应码元不同的数目。由于一个周期中0 比 1 的个数少 1,因此 j 为非零整数时 A D 1, j 为零时 A Dp,这样 m 序列的自相关函数可以化简为:1, j0R( j )1 , j(23)1, 2, , ( p 1)p图 22如图 22 所示, m 序列的相关函数R( j ) 只在两序列相位差在正、负一个码元范围内时出现峰值,表现出尖锐的自相关特性。因此,在工程上很容易通过检测本地的m 序列与接收的m 序列的相关输出是否出

6、现峰值来判别做相关的两序列的相对位置是否在正、负一个码元内。当周期p 很大时, m 序列的自相关函数与白噪声类似。相关检测就是利用这一特性,在信号相关函数值的基础上来识别信号,检测或同步自相关函数值为 1 的码序列。1.2 m 序列发生器的软件设计本文设计的 m 序列码长为40。根据nlog 2 m,可以推得 。假设初始n6状态为 111111,查表可得 F ( x) 为( 6,1),即本原多项式为 F ( x)1 xx6 。1.2.1 起跳状态设计由于本原多项式为F ( x)1 x x6 ,可以推得反馈系数C01、 C11 、C6 1。f C1Q1C2Q2CiQiCnQn (24)Q1Q6图

7、 23如图 23 所示为 m 序列为 63 时发生器逻辑图。在时钟的驱动下, m 序列的真值表如下所示:表 2-1CPQ6Q5Q4Q3Q2Q10111111111111021111013111010411010151010106010101710101180101109101100100110011111001112100110130011011401101115110111161011101701110118111011191101102011010021011010221011012310100124010010251001002600100127010011281001112900111

8、030011100311110003211000133100010340001013500101136010111371011113801111039111100401110014110100042100101430010104401010045110010460100014710001148000110490011005001100051110000521000015300001054000100550010005601000057100000580000015900001160000111610011116201111163111111由于本文设计的m 序列码长为 40,不满足 m2616

9、3 的条件,需要将码长截短。因此要在2n1个有效状态中跳过2n1m 个状态,而且又要符合移存规律。本文设计方法如下:首先求出2n1的序列作为序列,再将2n1序列向左移 2n1 m 位,得到序列,将两序列各位对应进行模2 加,得序列。在序列中寻找 100 0(n1 个连 0)的地方,其对应位置序列的n 位码就是起跳状态。Q6 的输出的序列:左移 23 位的序列:两序列的模 2 加序列:其中, 001100为起跳态。序列逻辑表达式设计可以在 63 长度的序列中,从起跳状态开始,消去 23 位码元,剩下的码元即组成 40 长度的序列信号:。因此, M=40 的序列信号发生器的反馈函数 f 为:fQ1

10、Q6Q6Q5Q4Q3Q2Q1(25)但是在最长线性序列信号发生器中,全0 状态是最长线性序列状态转移中的偏离状态。当各级触发器均处于0 状态时,由于反馈网络是异或网络,导致最后的输出为0,即最长线性序列信号发生器在全0 状态不具有自启动特性。为了使其具有自启动特性,必须修改激励函数。修改的激励方程为:fQ1Q6Q6Q5Q4Q3Q2Q1Q6Q5Q4 Q3Q2Q1 (26)化简可得:fQ1Q6Q1 Q6Q6 Q5Q4 Q3 Q2Q1Q6 Q5Q4 Q3Q2Q1 (27)程序结果验证#include<stdio.h>#include<stdlib.h>#include <

11、;string.h>int n (int t)int out。if (t=1)z=0。else out =1。return out。void main()int i ,x ,Q6 ,Q5, Q4 ,Q3 ,Q2 ,Q1 ,Q。x=110111。printf("%dn",x) 。for (i=1 。 i+)if(i!=1&&x=110111)break。elseQ6=x/100000。Q5=x%100000/10000。Q4=x%10000/1000。Q3=x%1000/100。Q2=x%100/10。Q1=x%10。Q=(n(Q1)*Q6+Q1*n(Q

12、6)+n(Q6)*n(Q5)*Q4*Q3*n(Q2)*n(Q1)+ n(Q6)*n(Q5)*n(Q4)*n(Q3)*n(Q2)*n(Q1)%2 。x=Q5*100000+Q4*10000+Q3*1000+Q2*100+Q1*10+Q 。char str7。itoa(x,str,10)。for(int j=strlen(str) 。j<6。j+)char tmp=strj-1。for(int p=0 。p<j。p+)strj-p=tmp 。tmp=strj-p-2 。str0='0'。printf("%sn",str) 。图 24如图 24 所示,

13、本文正确地实现了序列码长为40 的 m 序列设计。1.3 m 序列发生器的硬件设计本文采用可编程逻辑器件GAL16V8完成了m 序列发生器硬件部分的设计。器件简介可编程逻辑器件PLD ( Programmable Logic Device)是一种专用集成电路,具有结构灵活,集成度高、处理速度快、可靠性好的特点。PLD 的器件类型很多,通用阵列逻辑 GAL ( Generic Array Logic )器件是其中的一种高性能的 PLD 产品。 GAL 器件采用灵活的可编程 I/O 结构,在几十纳秒内可完成芯片的编程或擦除,可反复改写数据 100 次,数据可保持 20 年3,4 。GAL 美国 L

14、attice 半导体公司生产的 E2CMOS 可编程器件的专用商标。产品分类GAL 产品分为普通型、通用型、异步型、FPLA 型和在线可编程型5 个系列:(1)普通型GAL器件:包括输入缓冲器,输出三态缓冲器,输出反馈/输入缓冲器,输出逻辑宏单元和时钟及输出使能信号缓冲器。(2)通用型GAL器件:通用型GAL器件采用的工艺和基本结构与普通型GAL器件相同,通用型器件在普通型器件基础上,简化了输出逻辑宏单元的结构,增加了阵列的规模,还向用户提供了两个专用乘积项(异步复位AR乘积项和同步置位SP 乘积项),因此在设计组合逻辑和时序逻辑时,使用通用型GAL器件带来了更强的灵活性。(3)异步型 GAL

15、 器件:不论是普通型还是通用型GAL 器件,都只有一个时钟输入脚,所有输出寄存器都在同一时钟下工作。这类器件难以实现在不同时钟下工作的异步时序逻辑,异步型 GAL 器件就是针对这一问题特别研制出来的。(4)FPLA 型器件:这类器件在芯片内部集成了两个可编程的门阵列与门阵列和或门阵列。由于有两个可编程的门阵列,在设计状态机时就非常灵活了。(5)在线可编程 GAL 器件:这类器件具有在线可编程和诊断能力,其内部集成了一个功能模块,这一模块只需要应用系统中 5V 电源电压,就能够提供编程,诊断所必须的电压和控制信号,因此,它可以不用专门的编程器即可完成在线编程,使用更加灵活方便。硬件设计工作本文使

16、用的设计硬件为普通型GAL 器件 GAL16V8 。如图 25 所示,它包括输入缓冲器、输出三态缓冲器、与门阵列、输出反馈/输入缓冲器、输出逻辑宏单元 OLMC 等。与门阵列由8×8 个与门构成,共形成64 个乘积项。每个与门有 32 个输入端。 GAL16V8 用双列直插封装,共 20 个引脚,其中引脚 29固定作输入引脚,引脚 1 在时序逻辑时作时钟输入,引脚 11 作使能控制,引脚1219作输出引脚,其中15 和16 脚为专用输出引脚,而引脚1,11,12,13,14, 17, 18,19 也可以配置为输入引脚。因此输入最多可达16 个,输出最多可达 8 个,这就是命名中的16

17、 和 8 的含意。引脚10 接地,引脚 20 接电源VCC 3 。图 25 GAL16V8 的逻辑电路图在图 2-5 中,输入缓冲器和输出缓冲器都采用互补输出结构,其中其表示方法和真值表如图 2-6 所示。图 2-6在图 25 中,可编程的部分是与门阵列,共有8 组与门,每组中含8 个与门,每个与门有16 个输入线,如果全部画出,显得很繁琐,因此与门采用简化表示法,如图2-6 所示,为了与传统的表示法对比,图中以3 个输入( A ,B,C)的“与”门为例,分别画出两种图形。PLD 简化画法似乎有三个相同的输入,但这种画法实际上代表了传统画法的三个不同输入。多输入与门的输出D,称为“乘积项”。在

18、图 2-7 中的与门阵列中三种连接法:固定连接、编程连接和被擦除(断开),也在图 2-7 中表示。图 27作为一种通用结构的 PLD 器件, GAL 的设计依然仍遵循典型的 PLD 程序设计流程,如图 28 所示。从编写设计说明书开始到反复设计、调整逻辑关系直到达到设计要求,最后形成标准 JEDEC 文件装入编程器,完成对器件的编程工作。另外,如果采用手工方法对 GAL 进行编程,不仅需要对器件的可编程单元非常清楚,而且必须保证据文件绝对正确,会使得设计过程非常繁琐且极易出错。因此,在设计过程中通常会借助软件工具帮助设计,而软件工具又有汇编型和高级语言型两种。本文采用的是汇编型软件工具,如图

19、29 所示的 FM 软件( Fast Map)。图 28图 29实验结果1. 本文采用可编程逻辑器件 GAL16V8 在 FM 环境下对 m 序列发生器进行设计,编写设计说明书如下:GAL16V8 。DEVICE NAMEF(x)=1+x+x6_40。40 LENGTH M SEQUENCEsunguochen.6 2010。DESIGNERM_40。SIGNATURECLK NC NC NC NC NC NC NC NC GND 。PIN NAMEOE S Q6 Q5 Q4 Q3 Q2 Q1 NC VCCQ6:=Q5Q5:=Q4Q4:=Q3Q3:=Q2Q2:=Q1。LOGIC EQUATIO

20、NSQ1:=/Q1*Q6+Q1*/Q6+/Q6*/Q5*Q4*Q3*/Q2*/Q1+/Q6*/Q5*/Q4*/Q3*/Q2*/Q1S.OE=VCCS=Q6DESCRIPTIONThis program is m_sequences which is 40_length.2.文档文件 M_40.LST:GAL16V8F(x)=1+x+x6_40sunguochen.6 2010M_40CLK NC NC NC NC NC NC NC NC GNDOE S Q6 Q5 Q4 Q3 Q2 Q1 NC VCCQ6:=Q5Q5:=Q4Q4:=Q3Q3:=Q2Q2:=Q1Q1:=/Q1*Q6+Q1*/Q6

21、+/Q6*/Q5*Q4*Q3*/Q2*/Q1+/Q6*/Q5*/Q4*/Q3*/Q2*/Q1S.OE=VCCS=Q6DESCRIPTIONThis program is m_sequences which is 40_length.GAL16V8F(x)=1+x+x6_40sunguochen.6 2010M_40_|_/|CLK| 0120 |VCC|NC| 0219 |NC|NC| 0318 |Q1|NC| 0417 |Q2|NC| 0516 |Q3|NC| 0615 |Q4|NC| 0714 |Q5|NC| 0813 |Q6|NC| 0912 |S|GND| 1011 |OE|_|3.熔

22、丝图文件 M_40.PLT:GAL16V8F(x)=1+x+x6_40sunguochen.6 2010M_40Array Input pin1 1 1111112938475665748392Polarity Fuse XAC1 Fuse -Output Pin 19 Row 0 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Output Pin 19 Row 1 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Output Pin 19 Row 2 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Output Pin 19 Row 3

23、 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Output Pin 19 Row 4 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Output Pin 19 Row 5 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Output Pin 19 Row 6 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Output Pin 19 Row 7 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Polarity Fuse -AC1 Fuse XOutput Pin 18 Row 0-X-X-Outpu

24、t Pin 18 Row 1-X-X-Output Pin 18 Row 2-X-X-X-X-X-X-Output Pin 18 Row 3-X-X-X-X-X-X-Output Pin 18 Row 4 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Output Pin 18 Row 5 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Output Pin 18 Row 6 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Output Pin 18 Row 7 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXPolari

25、ty Fuse -AC1 Fuse XOutput Pin 17 Row 0-X-Output Pin 17 Row 1 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Output Pin 17 Row 2 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Output Pin 17 Row 3 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Output Pin 17 Row 4 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Output Pin 17 Row 5 XXXXXXXXXXXXXXXXXXXXXXXXXXX

26、XXXXX Output Pin 17 Row 6 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Output Pin 17 Row 7 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Polarity Fuse -AC1 Fuse XOutput Pin 16 Row 0-X-Output Pin 16 Row 1 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Output Pin 16 Row 2 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Output Pin 16 Row 3 XXXXXXXXXXXXXXX

27、XXXXXXXXXXXXXXXXX Output Pin 16 Row 4 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Output Pin 16 Row 5 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Output Pin 16 Row 6 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Output Pin 16 Row 7 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXGAL16V8F(x)=1+x+x6_40sunguochen.6 2010M_40Array Input pin11111111293847

28、5665748392Polarity Fuse -AC1 Fuse XOutput Pin 15 Row 0-X-Output Pin 15 Row 1 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Output Pin 15 Row 2 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Output Pin 15 Row 3 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Output Pin 15 Row 4 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Output Pin 15 Row 5 XXXXXXXXXXX

29、XXXXXXXXXXXXXXXXXXXXXOutput Pin 15 Row 6 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Output Pin 15 Row 7 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Polarity Fuse -AC1 Fuse XOutput Pin 14 Row 0-X-Output Pin 14 Row 1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXOutput Pin 14 Row 2XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXOutput Pin 14 Row 3 XXXX

30、XXXXXXXXXXXXXXXXXXXXXXXXXXXX Output Pin 14 Row 4 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Output Pin 14 Row 5 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Output Pin 14 Row 6 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Output Pin 14 Row 7 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXPolarity Fuse -AC1 Fuse XOutput Pin 13 Row 0-X-Output Pin 13

31、 Row 1 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXOutput Pin 13 Row 2 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXOutput Pin 13 Row 3 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXOutput Pin 13 Row 4XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXOutput Pin 13 Row 5 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Output Pin 13 Row 6 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Output Pin 13 Row 7 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Polarity Fuse -AC1 Fuse

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论