伪随机码发生器设计
伪随机码发生器研究与设计
伪随机码发生器的研究与设计Pseudo-random code generator Research and Design摘要伪随机序列产生技术是集数学、计算机科学、电子与通信等诸多学科于一身的技术,其产生技术自上世纪末至今一直是国内外的研究热点并取得了不少的成果。
伪随机码越来越受到人们的重视,被广泛应用于导弹、卫星、飞船轨道测量和跟踪、雷达、导航、移动通信、保密通信和通信系统性能的测量以及数字信息处理系统中。
目前国内外均有项目研究提高伪随机序列发生器可靠性、状态利用率等问题。
本课题介绍了伪随机码的应用和研究概况,研究了伪随机码的产生方式和产生原理,并以此为基础阐述了一种基于移位寄存器的m序列伪随机码发生器的设计与实现的方法。
最终在使用集成电路的前提下,先分析由移位寄存器电路构成的伪随机序列发生器的设计方法,分步设计了移位寄存器电路和同步复位信号发生电路;再通过一系列的误差和可靠性调整设计,最终用小规模集成电路和外加时钟信号设计实现了线性反馈移位寄存器产生周期P=15的m序列,并且给出了完整的实现电路和时序分析结果。
关键词:伪随机码,绕码,m序列,移位寄存器ABSTRACTPseudo-random sequence generation technique is a mathematics, computer science, electronics and communication, and many other subjects in one of the technology, its production technology since the end of the century has been the research focus at home and abroad and made a lot of results.Pseudo-random code more and more attention, is widely used in missiles, satellites, spacecraft orbit measurement and tracking, radar, navigation, mobile communications, secure communications and communication system performance measurement and digital information processing system. Research projects at home and abroad are pseudo-random sequence generator to improve reliability, availability status and other issues.This topic describes the application of pseudo-random code and research overview of the pseudo-random code generation means and generating principle, and described as the basis for an m-sequence shift register based pseudo-random code generator of the design and implementation Approach. Final premise in the use of integrated circuits, the first shift register circuits of the pseudo-random sequence generator design, step by step design of the shift register circuit and the synchronous reset signal circuit; then through a series of errors and reliable Adjustment design, end-users and small-scale integrated circuit design of the clock signal applied to achieve a linear feedback shift register generating cycle P = 15 m-sequence and provides a complete implementation of the circuit and timing analysis. Key words:Pseudo-random code,Around the code, m sequence,Shift register目录摘要 (Ⅰ)ABSTRACT (Ⅱ)目录 (Ⅲ)1 绪论 (1)1.1 伪随机序列的研究概况 (1)1.2 伪随机序列的应用领域及其意义 (1)1.3 课题研究内容与难点 (2)2 伪随机序列发生器 (3)2.1 伪随机序列的定义及其特点 (3)2.2 伪随机序列的产生 (3)2.3 伪随机序列反馈函数 (4)3伪随机码发生器电路设计 (7)3.1 移位寄存器电路设计 (7)3.2置数功能电路设计 (7)3.3可靠性附加电路设计 (8)3.4元器件选型 (10)3.5整体电路图 (10)4电路时序分析 (12)4.1移位寄存器电路时序分析 (12)4.2完整电路时序分析 (12)结束语 (14)参考文献 (15)附录芯片逻辑引脚图及各型号性能对比 (16)致谢 (17)1 绪论1.1 伪随机码的研究概况伪随机码又称伪随机序列或伪噪声序列。
伪随机码发生器设计的控制
摘要伪随机码又称伪随机序列, 是一种可以预先确定并可以重复地产生和复制, 又具有随机统计特性的二进制码序列。
在现代工程实践中, 伪随机信号在移动通信、导航、雷达和保密通信、通信系统性能的测量等领域中有着广泛的应用。
例如, 在连续波雷达中可用作测距信号, 在遥控系统中可用作遥控信号, 在多址通信中可用作地址信号, 在数字通信中可用作群同步信号, 还可用作噪声源以及在保密通信中的加密作用等,伪随机发生器在测距、通信等领域的应用日益受到人们重视。
本文提出了一种产生m序列的方法,并针对这种方法设计了一个系统。
该系统包括PC机,控制器和片外围电路CPLD,本文主要是针对控制器部分的设计。
首先分析m序列的基本原理、结构、性质及产生方法,然后提出了整体设计思路,以单片机芯片AT89C2051作为控制器,利用MAX232实现与上位机的异步串行通信,并传送阶数信号给CPLD。
CPLD通过原理图产生所需的m序列。
接着利用PROTEL99SE软件完成硬件部分的设计,包括单片机最小系统,单片机与上位机的连接,单片机与CPLD的连接。
最后是采用汇编程序语言完成软件部分的设计,包括单片机与上位机的通信,单片机对CPLD的控制。
关键词:伪随机序列;m序列;单片机;PC机,CPLDABSTRACTPseudo random code is also called pseudorandom sequence, which can be determined in advance and can be repeatedly produced and reproduced, and have a random statistical properties of the binary code sequence. In modern engineering practice, pseudo random signal in mobile communication, navigation,radar and communication, communication system performance measurement are widely used in the field of. For example, continuous wave radar can be used as a ranging signal, the remote control system can be used as a remote control signal, a multiple access communication can be used as an address signal, digital communications can be used as a group synchronization signal and can also be used as a source of noise and in secret communication encryption function. pseudo random number generator in location, communication etc. field application is increasingly paid attention to. This paper presents a m sequence generation method, and the way to the design of a system.The system includes the PC machine, controller and peripheral circuit of CPLD, this paper is aimed at the control part of the design. The first analysis of the m sequence of basic principles, structure, properties and production method, and then put forward the overall design ideas, to the single chip AT89C2051 as the controller, using MAX232 to achieve computer asynchronous serial communication, and transmits the signal to the CPLD order number. Through the CPLD diagram to produce desired m sequences. Then use the PROTEL99SE software to complete the hardware design, including the smallest single-chip system, MCU and PC connection, single chip computer and CPLD connection. The last is the use of assembly language to complete the software part of the design, including the MCU and computer communications, single-chip microcomputer to control CPLD.Keywords:Pseudo-random sequence; m sequence; single chip microcomputer; PC, CPLD目录第1章绪论 (1)1.1 研究课题的提出 (1)1.2 伪随机序列的应用及其意义 (1)1.2.1在通信加密中的应用 (1)1.2.2 在雷达信号设计中的应用 (2)1.2.3 在扩频通信中的应用 (2)1.3 伪随机序列研究现状 (3)1.4本论文主要研究内容 (3)第2章 m序列伪随机码理论 (5)2.1伪随机码基本特性 (5)2.2 m序列伪随机码性质 (5)2.2.1 均衡特性(平衡性) (5)2.2.2 游程特性(游程分布的随机性) (5)2.2.3 移位相加特性(线性叠加性) (6)2.2.4 自相关特性 (6)2.2.5 伪噪声特性 (7)2.3 m序列的产生 (7)第3章伪随机码发生器的系统设计 (11)3.1系统总体设计 (11)3.2 PC机与单片机通信部分 (11)3.3 基于单片机的控制器部分 (12)3.4 CPLD部分 (12)第4章伪随机码序列发生器的硬件设计 (14)4.1发生器主控芯片介绍 (14)4.1.1 AT89C205芯片 (14)4.1.2 MAX232芯片 (16)4.1.3 XC9500芯片 (17)4.2 m序列发生器控制器电路设计 (20)4.2.1 AT89C2051与PC的连接电路 (20)4.2.2 单片机AT89C2051与CPLD的连接电路 (21)4.2.3 电路原理图的制作 (22)第5章伪随机码序列发生器的控制器软件设计 (27)5.1异步串行通信技术 (27)5.1.1 异步串行通信 (27)5.1.2 串行通信协议 (28)5.1.3 89C2051串行口 (29)5.2 单片机与上位机的通信 (29)5.3 单片机控制CPLD (30)结论 (32)参考文献 (33)致谢 (34)第1章绪论1.1 研究课题的提出伪随机序列系列具有良好的随机性和接近于白噪声的相关函数,并且有预先的可确定性和可重复性。
基于MATLAB的伪随机序列发生器的设计
基于MATLAB的伪随机序列发生器的设计通信工程专业计算机课程设计题目基于MATLAB的伪随机序列发生器的设计学生姓名学号所在院(系) 专业班级指导教师完成地点2013年 11 月 12 日计算机课程设计任务书院(系) 专业班级学生姓名一、课程设计题目基于matlab的伪随机序列发生器的设计二、课程设计工作自 2013 年 10 月 27 日起至 2013 年 11 月 22 日止三、课程设计进行地点:四、课程设计的内容要求:1、要求完成七级m 序列发生器的设计(本原多项式自定);2、要求完成五级gold 序列发生器的设计(本原多项式自定);3、采用matlab实现,并对其进行调试运行;4、要求能清楚观察到稳定的序列。
指导教师系(教研室) 通信工程系接受任务开始执行日期 2013年10月27日学生签名基于matlab的伪随机序列发生器的设计[摘要]伪随机序列码越来越受到人们的重视,被广泛用于导弹、卫星、飞船轨道测量和跟踪、雷达、导航、移动通信、保密通信和通信系统性能的测量以及数字信息处理系统中。
本文主是对基于matlab的伪随机序列发生器的设计,及其利用matlab软件对其进行仿真和利用simulink对其仿真性能的研究,主要阐述了扩频系统中m序列和gold 序列的产生。
在第一部分中介绍了课题研究的背景,第二部分中介绍了扩频系统的相关知识,第三部分介绍了m序列和Gold序列产生的原理和方法,第四部分利用matlab和simulink对其进行仿真。
[关键词]伪随机序列 m序列移位寄存器Design of the pseudo-random sequencegenerator based on matlab[Abstract]pseudo-random sequence code more and more get people's attention, is widely used in missiles, satellites, spacecraft orbit measurement and tracking, radar, navigation, mobile communications, and the measurement of the performance of the communication security and communication system of digital information processing system. In this paper, the main is to the design ofpseudo-random sequence generator based on matlab, and the use of matlab simulation and the use of simulink software to the study of the simulation performance, mainly expounds the m sequence and gold sequence in spread spectrum system. In the first part introduces the research background, the second part introduces the related knowledge of spread spectrum system, in the third part introduces the m sequence and Gold sequence principle and method of the fourth part carries on the simulation using matlab and simulink.[key words]pseudo random sequence m sequence shift register目录1.引言 (5)1.1研究的背景及意义 (5)2.扩频通信系统简介 (7)2.1扩频通信的基本概念及相关模型 (7)2.1.1基本概念 (7)2.1.2 数学模型 (10)2.2扩频通信系统的主要特点 (12)2.3扩频通信系统分类 (14)2.4伪随机序列在扩频通信中的应用 (14)3.m序列 (15)3.1m序列的定义 (15)3.2m序列的原理 (16)3.3m序列的性质 (19)4.Gold序列 (21)4.1 Gold序列的产生原理 (21)4.2 Gold序列的性质 (21)5.MATLAB仿真实现 (22)5.1 MATLAB软件介绍 (22)5.2 m序列的仿真及分析 (24)5.2.1程序分析 (24)5.2.2 simulink分析 (26)5.3 Gold的仿真及分析 (27)5.3.1程序分析 (27)5.3.2 simulink分析 (27)6.致谢 (28)7.参考文献 (29)附录 (30)附录A (30)附录B (32)1.引言1.1研究的背景及意义移动通信由于具有时实性、机动性、具有不受时空限制等特点,己经成为一种深受人们欢迎的通信方式,并融入了现代生活当中。
一种新型基于FPGA的伪随机序列发生器设计
参考文献
级数 ( n ) 可调 的是本设计的核心之一 ,实 现移位寄存器的多级 移位可调 。伪 随机序列 发 生器 可 由 m序列 的特 征 向量 ,根据控 制级数 的输入信号 ( n ) ,产生 3 ~ 1 6级 的任意一级 的随 机序列 ,产生 的最长 的序 列长度 为 ,基本上 可 以满足一般应用需求。级数控制 输入信号是
学学报 , 2 0 1 2 .
Go l d序列 、M 序 列等 ,本 文设计 的伪 随机序 列 发生器是 采用 m序 列设计 的。反馈 函数 可
所 输入 的 3 N 1 6级 任意 一个 十进制数 。如 图 2 所示 , 级数控 制输入信号到译码器 中进 行译码 , 将译码的结果传到多路选择器 。通 过多路选择 器进行选择 ,得到不同的移位控制信息,输出 的移位控制信息控制移 位寄存器组 。 核心 ,实现线性反馈线性移 位寄存器 的反馈 系
系数 可 调 的特 性 。
个电路 ,使 用统一 的输入输 出管脚 ,统一 的
输 入时钟信 号 。输入信 号有 :4位 的级 数 ( n ) 合 。该设 计的电路可以产生 的最长的序列长度 控制输入 、使能控制、输入 时钟、反馈系数控 为 ,可 以满 足大部 分场合 下的要求 。整体 电 制( c ) ;输 出信号有 :伪 随机 序列输 出。 电路 路硬件结构简单、 占用的器件 资源少 、具有很 结构如图 1所示。
电力 电子 ・ P o we r E l e c t r o n i c s
一
种新型基于 F P G A的伪随机序列发生器设计
文/ 赵怡 余 稀
特
用 Q u 路
馈
机
反
01实验一 伪随机码发生器实验
实验一 伪随机码发生器实验一、实验目的1、 掌握伪随机码的特性。
2、 掌握不同周期伪随机码设计。
3、 用基本元件库和74LS系列元件库设计伪随机码。
4、 了解ALTERA公司大规模可编程逻辑器件EPM7128SLC84内部结构和应用。
5、 学习FPGA开发软件MAXPLUSⅡ,学习开发系统软件中的各种元件库应用。
6、 熟悉通信原理实验板的结构。
二、实验仪器1、 计算机 一台2、 通信基础实验箱 一台3、 100MHz 示波器 一台三、实验原理伪随机码是数字通信中重要信码之一,常作为数字通信中的基带信号源;扰码;误码测试;扩频通信;保密通信等领域。
伪随机码的特性包括四个方面:1、 由n 级移位寄存器产生的伪随机序列,其周期为-1; n 22、 信码中“0”、“1” 出现次数大致相等,“1”码只比“0”码多一个;3、 在周期内共有-1游程,长度为 i 的游程出现次数比长度为 i+1的 游程出现次数多一倍;n 24、 具有类似白噪声的自相关函数,其自相关函数为:()()⎩⎨⎧−≤≤=−−=221012/11n nτττρ其中n 是伪随机序列的寄存器级数。
例如:四级伪码产生的本原多项式为X 4+X 3+1。
利用这个本原多项式构成的4级伪随机序列发生器产生的序列为:1 1 1 1 0 0 0 1 0 0 1 1 0 1 0相应的波形图如图1-1所示:图1-1 四级伪随机序列波形图用4个D 触发器和一个异或门构成的伪码发生器具有以下特性: 1、 周期为24-1=15;2、 在周期内“0”出现24 -1-1=7次,“1”出现24 -1=8次;3、 周期内共有24 -1 =8个游程;4、 具有双值自相关特性,其自相关系数为:⎩⎨⎧−≤≤−−==221)12(10144τ / τ ρ(τ)四、实验内容及步骤1、在MAXPLUSⅡ设计平台下进行电路设计 1.1 四级伪随机码发生器电路设计电路原理图如图1-2所示。
图1-2 四级伪随机码电路原理图在MAXPLUS II 环境下输入上述电路,其中: dff ------ 单D触发器 xor ------ 二输入异或门 nor4 ------ 四输入或非门 not ------ 反相器clk ------ 时钟输入引脚(16M时钟输入) 8M ------ 二分频输出测试点引脚 nrz ------ 伪随机码输出引脚 1.2 实验电路编译及FPGA 引脚定义完成原理图输入后按以下步骤进行编译:(1) 在Assign Device 菜单选择器件MAX7128SLC84。
17伪随机数发生器的设计
119
原胞自动机伪随机数发生器同样是通过寄存器的延时来实现。每当一个时钟 脉冲到来时,每一级存储器 Qi 的值根据 CA 规则来决定,CA90 和 CA150(即 CA01011010B 和 CA10010110B)算法规则的规则查找表分别如表 1,2 所示,其中相 邻单元的值为η,输出值为 Q=f(η)。CA90 算法规则等价的逻辑函数是由当前单 元的相邻左右单元的状态值相异或,而 CA150 算法规则等价的逻辑函数是由相邻 当前单元和左右单元的状态值相异或。下面分别给出它们的逻辑函数表达式。
3.原胞自动机 一个原胞自动机(Cellular Automata,CA)是一种有限状态机,有 n 个离散
的单元,每个单元以离散的节拍进化,其中每个单元的下一个状态值由该单元的 当前状态值和其相邻的当前状态值通过查找表(Look-UpTable,LUT)(或等价的逻 辑函数)来决定,而相邻单元的状态值是独立的。
Cn
Cn-1
Cn-2
C1
C0=1
图 1 传统多级线性移位寄存器结构
3.m 序列 m 序列(maximum-length)是一类最大长度线性移位寄存器序列的简称。 m
序列是目前广泛应用的一种伪随机序列,其在通信领域有着广泛的应用,如扩频 通信,卫星通信的码分多址,数字数据中的加密、加扰、同步、误码率测量等领 域。
表 1 CA90 规则查找表
η 111 110 101 100 011 010 001 000
伪随机m序列发生器的产生设计
信息科学与技术学院通信原理课程设计课题名称:伪随机M序列发生器设计学生姓名:许奎英2008082491学院:信息科学与技术学院专业年级:电子信息工程2008级指导教师:邓红涛完成日期:二○一一年七月十二日目录前言 (3)摘要 (4)理论基础知识 (5)伪随机序列 (6)伪随机序列定义及应用. (7)m序列产生器 (7)芯片介绍 (8)移位寄存器74LS164 (9)D/A转换器IDAC (9)EWB软件介绍 (10)设计方案 (10)EWB仿真 (11)电路的调试 (13)参考文献 (13)实验心得 (14)附录 (15)前言题目:伪随机序列的产生及应用设计初始条件:具备通信课程的理论知识;具备模拟与数字电路基本电路的设计能力;掌握通信电路的设计知识,掌握通信电路的基本调试方法;自选相关电子器件;可以使用实验室仪器调试。
要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)1、设计伪随机码电路:产生八位伪随机序列(如M序列);2、了解D/A的工作原理及使用方法,将伪随机序列输入D/A中(如DAC0808),观察其模拟信号的特性;3、分析信号源的特点,使用EWB软件进行仿真;4、进行系统仿真,调试并完成符合要求的课程设计说明书。
摘要伪随机序列具有良好的随机性和接近于白噪声的相关函数,使其易于从信号或干扰中分离出来。
伪随机序列的可确定性和可重复性,使其易于实现相关接收或匹配接收,因此有良好的抗干扰性能。
伪随机序列的这些特性使得它在伪码测距、导航、遥控遥测、扩频通信、多址通信、分离多径、数据加扰、信号同步、误码测试、线性系统、各种噪声源等方面得到了广泛的应用,特别是作为扩频码在CDMA系统中的应用已成为其中的关键问题。
此次课设根据m序列的产生原理,利用74LS164加少量门电路方法设计了8位m序列发生器。
关键词:伪随机序列m序列移位寄存器D/A转换EWB仿真1理论基础知识1.1伪随机序列1.1.1伪随机序列定义及应用如果一个序列,一方面它是可以预先确定的,并且是可以重复地生产和复制的;一方面它又具有某种随机序列的随机特性(即统计特性),我们便称这种序列为伪随机序列。
基于FPGA的伪随机序列发生器设计方案
基于FPGA的伪随机序列发生器设计方案1基本概念与应用1)1FSR:线性反馈移位寄存器(1inear feedbackshiftregister,1FSR)是指给定前一状态的输出,将该输出的线性的薮再用作输入的移位寄存器。
异或运算是最常见的单比特线性函数:对寄存器的某些位进行异或操作后作为输入,再对寄存器中的各比特进行整体移位。
1FSR产生的两种形式为伽罗瓦(Ga1ois)和斐波那契(FibonaCCi)两种形式。
也有成为外部(Ex隹rna1)执行方式和内部(Interna1)执行方式。
(1)伽罗瓦方式(Interna1)X0X4X17! ! TepCount ,-Θ□□EF-Γ>4300000000Θ{3B0-*~*DaiaFtowW>)∙ι.x4.χ“(Ga1oisImp1ementation)Ga1ois方式特征数据的方向从左至右,反馈线路是从右至左。
其中XCo项(本原多项式里面的T'这一项)作为起始项。
按照本原多项式的指示确定异或门(XOR)在移位寄存器电路上的位置。
如上图所示XM。
因此Ga1ois方式也有人称作线内或模类型(M-型)1FSRo(2)斐波那契方式(Externa1)TapCountB*0;E3t3-⅛QEHIH30GHZHHDGIFSHpcivncrTMrig(M)-X14.X,>♦X n»1(Fibonacciimp1ementation)从图中我们可以看到Fibonacci方式的数学流向和反馈形式是恰好跟Ga1ois方式相反的,按照本原多项式,其中XCO这一项作为最后一项,这里需要一个XOR∏,将本原多项式中所给的taps来设定它的异或方式。
因此Fibonacci方式也被叫做线外或者简型(S-型)1FSR。
2)本原多项式本原多项式是近世代数中的一个概念,是唯一分解整环上满足所有系数的最大公因数为1的多项式。
本原多项式不等于零,与本原多项式相伴的多项式仍为本原多项式。
PN(伪随机码)码发生器的设计(精品文档)
通信系统专业课程设计一.课题名称:PN(伪随机码)码发生器的设计二.设计目的:1、巩固加深对电子线路的基本知识,提高综合运用专业知识的能力;2、培养学生查阅参考文献,独立思考、设计、钻研专业知识相关问题的能力;3、通过实际制作安装电子线路,学会单元电路以及整机电路的调试与分析方法;4、掌握相关电子线路工程技术规范以及常规电子元器件的性能技术指标;5、了解电气图国家标准以及电气制图国家标准,并利用电子CAD正确绘制电路图;6、培养严肃认真的工作作风与科学态度,建立严谨的工程技术观念;7、培养工程实践能力、创新能力和综合设计能力。
三.设计要求:1、通信系统的原理框图,说明系统中各主要组成部分的功能;2、根据选用的软件编好用于系统仿真的测试文件;3、拟采用的实验芯片的型号可选89c51、TSC 5402、5416、2407及ALTERA的EPM7128CPLD或EP1K30进行硬件验证;4、独立完成课程设计报告,严禁报告内容雷同;5、电路图中的图形符号必须符合国家或国际标准。
四.所用仪器设备:Altera的MAX 7000S系列芯片;方正文祥电脑。
五.设计内容:1、伪随机序列产生原理及作用:随着通信理论的发展,早在20世纪40年代,香农就曾指出,在某些情况下,为了实现最有效的通信,应采用具有白噪声的统计特性的信号。
另外,为了实现高可靠的保密通信,也希望利用随机噪声。
然而,利用随机噪声最大困难是它难以重复产生和处理。
直到60年代,伪随机噪声的出现才使这一难题得到解决。
伪随机噪声具有类似于随机噪声的一些统计特性,同时又便于重复产生和处理。
由于它具有随机噪声的优点,又避免了它的缺点,因此获得了日益广泛的应用。
目前广泛应用的伪随机序列都是由数字电路产生的周期序列得到的,我们称这种周期序列为伪随机序列。
对与伪随机序列有如下几点要求:①应具有良好的伪随机性,即应具有和随机序列类似的随机性;②应具有良好的自相关、互相关和部分相关特性,即要求自相关峰值尖锐,而互相关和部分相关值接近于零。
基于FPGA的伪随机序列发生器设计
0 引言伪随机序列现已广泛应用于密码学、扩频通讯、导航、集成电路的可测性设计、现代战争中的电子对抗技术等许多重要领域。
伪随机序列的伪随机性表现在预先的可确定性、可重复产生与处理。
伪随机序列虽然不是真正的随机序列,但是当伪随机序列周期足够长时,它便具有随机序列的良好统计特性。
在已有的序列中,m序列的应用最为成熟和广泛,为此,本文给出线性m序列和基于m序列的非线性m子序列的FPGA实现方法。
由于FPGA的内部逻辑功能是通过向内部静态存储器单元加载配置数据来实现的,其配置文件决定了逻辑单元的逻辑功能以及模块间或与I/O间的连接,故可最终决定FPGA实现的功能。
FPGA的这种结构允许多次编程,并享有快速有效地对新设计进行优化的灵活性,为此,本文选用了altera 的cvclone系列FPGA芯片EPlC12-240PQFP,该芯片内部有12060个逻辑单元、239616 bit RAM、两个锁相环(PLL)。
本文应用移位寄存器理论来产生序列,其算法的关键是找到线性m序列和非线性m子序列移位寄存器的反馈逻辑式。
1 m序列的实现1.1 基于FPGA的m序列实现利用反馈移位寄存器产生0、1序列时,其n位反馈移位寄存器的逻辑功能如图1所示。
图中,xi蕾表示寄存器所处的状态,通常用0和1来代表两个可能的状态,并且把0和1看成是有限域GF(2)的两个元素。
f(x0,x1,…,xn-1)刻划了移位寄存器反馈逻辑的功能,它可以看成一个定义在GF(2)上并且在GF(2)中取值的n元函数,当f(x0,x1…,xn-1)可以表示成一线性齐次函数时。
即,相应的反馈移位寄存器是线性的,而由线性移位寄存器产生的序列就称为线性移位寄存器序列。
m序列就是线性移位寄存器序列。
对于一个n级m序列移位寄存器来说。
它在每一时刻的内部状态都可以看做有限域GF(2)上的一个n维向量,而反馈函数就是刻划了从每一时刻的状态到下一时刻状态的转移规律,或者说反馈函数定义了n维向量空间上的一个线性变换。
伪随机码发生器研究与设计
伪随机码发生器研究与设计伪随机码发生器是一种通过其中一种算法生成伪随机序列的电子设备或程序。
与真随机数发生器不同,伪随机码发生器是基于确定性算法生成的序列,其看似是随机的,但实际上可以通过逆向计算或算法分析来预测出后续的码值。
1.算法选择:伪随机码发生器的性能很大程度上取决于所选择的算法。
常用的算法包括线性反馈移位寄存器(LFSR)、离散余弦变换(DCT)、线性同余发生器(LCG)等。
研究者可以根据特定需求选择合适的算法,并通过数学分析、理论推导和模拟实验来评估其性能。
2.随机性测试:伪随机码发生器生成的序列是否具备足够的随机性是一个关键问题。
为了评估伪随机码发生器的性能,需要设计合适的随机性测试方法。
常用的测试方法包括统计分析、频谱分析、序列均匀性检测、序列独立性检验等。
3.秘密性与安全性:在密码学应用中,伪随机码发生器的秘密性和安全性是非常重要的。
秘密性指发生器的设计和参数应保密,只有掌握这些信息的人才能伪装成合法用户。
安全性指发生器生成的序列在密码攻击下能够抵抗各种攻击手段。
确保秘密性和安全性需要对伪随机码发生器进行全面的安全性分析和风险评估,以便发现可能存在的漏洞和弱点,并采取相应的安全措施和改进措施。
4.性能优化:伪随机码发生器的性能包括生成速度、存储空间和计算复杂度等方面。
研究者需要在保证安全性的前提下,尽可能提高伪随机码发生器的性能。
这包括改进算法、优化参数选择、使用硬件加速等。
总结起来,伪随机码发生器的研究与设计需要深入理解随机性、密码学和计算机科学等领域的知识,并结合具体应用需求来选择合适的算法和进行性能优化。
通过合理的算法设计、随机性测试和安全性分析评估,以及针对性的安全措施和改进措施,可以设计出安全可靠的伪随机码发生器。
伪随机序列发生器设计
伪随机序列发生器设计伪随机序列发生器(PRNG)是一种通过算法生成的看似随机的数字序列。
与真随机序列不同,伪随机序列是在一定条件下按照确定性算法生成的。
在计算机系统中,PRNG具有广泛的应用,包括密码学、模拟、游戏等领域。
本文将讨论如何设计一个伪随机序列发生器。
1.随机性的度量:在设计PRNG之前,我们需要了解随机性的度量。
一个好的伪随机序列发生器应该具有高周期性(周期长度大),均匀性(数字出现的频率相似)和不相关性(序列中的数字之间没有明显的关联)。
周期指的是序列重复之前所产生的数字数量。
均匀性可以通过观察数字出现的频率和统计分析来评估。
不相关性指的是序列中的任意两个数字之间没有明显的关联。
2.线性反馈移位寄存器(LFSR):LFSR是一种常见的PRNG设计方法。
它由一个位寄存器和一些异或门组成。
位寄存器中的每个位都线性地与寄存器中的其他位进行异或运算,并且每次循环位寄存器向右移位。
输入位是通过将一些位与1或0常量进行异或来确定的。
3.LFSR的优化:为了改善LFSR的性能,在设计中可以考虑一些优化措施。
一种常见的优化措施是增加反馈函数的复杂性。
通过使用非线性函数,可以在相同的位数下获得更长的周期。
另一个优化措施是根据需要选取适当的位数。
位数越大,周期越长,但计算成本也增加。
4.添加非线性元素:为了进一步提高伪随机序列的质量,我们可以添加一些非线性元素。
一种方法是使用置换函数。
置换函数将输入映射到不同的输出,从而增加了数字之间的不相关性。
另一种方法是使用哈希函数。
哈希函数将输入的随机性扩展到更大的空间中,并通过混淆输入来减少数字之间的关联。
5.分析和测试:设计一个PRNG后,我们需要对其进行分析和测试。
常用的测试方法包括统计测试、重复序列测试和关联测试。
统计测试可以用于检查输出数字的频率。
重复序列测试可以用于验证序列中是否存在重复数字。
关联测试则是用于检查序列中数字之间的关联性。
总结:设计一个高质量的伪随机序列发生器需要考虑随机性度量、LFSR和优化、非线性元素的添加以及分析和测试的步骤。
基于FPGA的多路伪随机序列发生器的设计与实现
基于FPGA的多路伪随机序列发生器的设计与实现引言伪随机序列生成器(Pseudorandom Number Generator,PRNG)在许多计算机应用中都是必不可少的工具。
PRNG通过输入一个种子(seed),然后根据一定的算法生成一个看似随机的序列。
然而,由于PRNG本质上是基于算法的,所以生成的序列实际上是可重复的、周期性的。
本文将介绍基于FPGA的多路伪随机序列发生器的设计与实现。
设计目标本设计的目标是实现一个多路的伪随机序列发生器,该发生器具有高速性能和可扩展性。
设计需满足以下要求:1.高速性能:PRNG需要生成大量的伪随机序列,因此需要具备较高的计算速度;2.可扩展性:PRNG需要同时生成多个伪随机序列,因此需要具备可扩展性,方便根据需求扩展生成的路数;3.随机性:生成的伪随机序列需要具备较高的随机性,能够满足实际应用的需求。
设计思路本设计采用LFSR(Linear Feedback Shift Register)算法来实现PRNG。
LFSR算法是一种经典的PRNG实现方式,可以通过移位寄存器和异或门来实现。
LFSR算法的优势在于其计算速度快、硬件实现简单。
具体实现步骤如下:1.设计LFSR模块:LFSR模块是PRNG的核心模块,通过移位寄存器和异或门来实现。
LFSR模块接收一个种子作为输入,并根据一定的生成多路伪随机序列的算法生成对应的伪随机序列。
2.设计控制模块:控制模块用于控制LFSR模块的生成和输出。
控制模块根据输入的控制信号来决定生成的路数和序列长度,并将生成的伪随机序列进行输出。
3.设计顶层模块:顶层模块对上述模块进行组合,实现多路伪随机序列发生器。
顶层模块接收输入的控制信号和种子,并将控制信号传递给控制模块,种子传递给LFSR模块。
最后将生成的伪随机序列输出。
实现与验证本设计实现采用FPGA开发板进行验证。
首先,搭建基本的开发板环境,包括连接FPGA开发板、安装相应的开发软件等。
伪随机码脉冲信号发生器电路设计
伪随机码脉冲信号发生器电路设计摘要由于伪随机码在CDMA(Code Division Multiple Access)技术中得到了广泛的应用,为更好的利用CDMA技术,需了解伪随机码脉冲信号。
本课题主要是应用CPLD技术,设计一个伪随机码脉冲信号发生器电路,所用到的主要元器件有74LS74、EPM7128SLC84—15 MAX 7000可编程逻辑器件及一些门电路等,并利用MAX+PLUS Ⅱ软件来观察电路波形及CPLD综合实验板来检测电路的功能是否达到设计要求。
关键词伪随机码 CPLD 74LS74 EPM7128SLC-15ABSTRACTPseudorandom code is wide use in CDMA (Code Division Multiple Access)technology, to make use of CDMA technology,we should know Pseudorandom code Pulses. My design is based on CPLD technology ,and design a circuit to produce pseudorandom code. Device I used as follows:74LS74、EPM7128SLC84-15 MAX 7000 progranmable logic device 、some gate circuit and so on .At last ,we can use MAX+PLUSⅡsoftware and the board of CPLD which is comprehensive to inspect the application of this circuit is right or wrong.Keywords pseudorandom code;CPLD;74LS74;EPM7128SLC84-15 MAX 7000 progranmable logic device第1章绪论 (4)1.1伪随机序列的概念 (4)1.2伪随机序列的产生 (4)1..3几种伪随机序列的比较 (4)1.3.1 m序列 (4)1.3.2 M序列 (4)第2章主要元器件说明 (6)2.1 核心模块EPM7128SLC84-15 (6)2.1.1开关模块 (7)2.1.2 LED显示模块 (8)2.1.3 相关资源分配为: (9)2.2 74LS74 (10)2.2.1 74LS74引脚图 (10)2.2.2 74LS74功能表 (10)第3章原理图及逻辑示意图 (11)3.1原理框图 (11)3.1.1四级移位寄存器构成的m序列: (11)3.1.2四级移位寄存器构成的M序列: (11)3.2电路图 (12)3.2.1 四级移位寄存器构成的m序列: (12)3.2.2 四级移位寄存器构成的M序列: (13)第4章电路的时序波形及功能验证 (14)4.1 四级m序列: (14)4.2 四级M序列: (16)4.3 使用CPLD实验板检测电路功能是否达到实验要求: (18)第5章总结 (19)感谢辞 (20)参考文献 (21)第1章绪论在通信系统中,对误码率的测量、通信加密、数据序列的扰码和解码、扩频通信等方面均要用到伪随机序列,伪随机序列的特性对系统的性能有重要的影响,因此有必要了解和掌握伪随机序列的的概念和特性。
伪随机码发生器设计
伪随机码发生器设计伪随机码发生器设计1 引言随着科学技术的进步,现代战争样式向信息战形式发展。
现代战争胜负对于信息获取的依赖程度前所未有的提高。
在现代战争中,若己方的通讯交流方式早敌军破获,则地方将获取己方部队动向或实施信息干扰。
将会使部队陷入极其危险地境地中。
因此,信息战对通讯加密手段的要求极高。
伪随机序列(Pseudonoise Sequence)又称伪噪声或伪随机码,具有类似随机信号的一些统计特性,但又是有规律的,容易产生和复制的。
最大长度线性移位寄存器序列(m序列)是保密通信中非常重要的一种伪随机序列,它具有随机性、规律性及较好的自相关和互相关性,而且密钥量很大。
利用m序列加密数字信号,使加密后的信号在携带原始信息的同时具有伪噪声的特点,以达到在信号传输的过程中隐藏信息的目的;在信号接收端,再次利用m序列加以解密,恢复出原始信号。
这样,通过对m序列的应用,将大大的提高通讯的保密程度和防窃取能力。
这样的通讯手段被称为扩展频谱通信扩展频谱通信(Spread Spectrum Communication)是将待传送的信息数据被伪随机编码也就是扩频序列调制,实现频谱扩展以后再在信道中传输,接收端则采用与发送端完全相同的编码进行解调和相关处理,从而恢复出原始的信息数据。
在这其中,伪随机码发生器是十分重要的一环,是对信息加密的核心器件。
m序列伪随机码发生器即使通过m序列的方式对信息数据编码。
本系统所设计的伪随机码发生器,产生m序列伪随机码。
系统采用AT89S51单片机作为控制芯片,控制使用LCD12864显示处理器产生的m序列伪随机码,并且可通过按键对参数修改,设置初始码及m 序列长度。
单片机根据设定的初始码及m序列长度,按照约定的逻辑运算关系,循环往复的产生0或者1。
2 发生器系统设计2.1总体设计系统分为信息处理、实时显示和按键修改共五大模块。
系统总体结构框图如图1所示:图1 系统总体结构框图如图所示,MCU 对信号进行处理,将所得数据送液晶屏显示。
伪随机码产生
南昌大学实验报告
学生姓名:刘旷也学号:6100212213 专业班级:中兴121班
实验类型:□验证■综合□设计□创新实验日期:实验成绩:
伪随机码发生器
一、技术要求
设计一个7位伪随机码发生器。
二、设计思路
1.7位伪随机码发生器
可以用硬件电路来实现一个m序列,以最简单的n=3的三级移位寄
存器构成的m序列发生器如图所示。
移位寄存器是D触发器,在时钟脉冲CP上升沿来时,输出Q等于输入D。
中
间第二、三级移位寄存器的输出Q2和Q3经模二加电路后反馈到第一级移位
寄存器的输入D1端,构成反馈电路。
当初始状态Q1Q2Q3位111时,在时钟
脉冲控制下,各输出端的输出数据如表所示。
得到输出周期为P=23-1=7的码序列1110010。
在输出一个周期的序列后
Q1Q2Q3又回到111状态。
在时钟的控制下,输出序列做周期性的重复。
三、实验结果
得到的multism电路图如图所示
图1 7位伪随机码产生电路
图2 7位伪随机码:1011100。
伪随机序列发生器设计
第1章 基于伪随机序列的传输处理综合设计1.1 伪随机序列伪随机序列包括m 序列、Gold 序列、M 序列和组合序列等,其中最常用到的是m 序列[5,6]。
本文根据m 序列完成了传输处理系统的综合设计。
1.1.1 m 序列的生成m 序列是线性反馈移位寄存器的最大长度序列。
它的生成可用移位寄存器序列发生器的特征多项式来确定,其特征多项式()F x 可以定义为:20120()...ni n i n i F x C x C C x C x C x ===++++∑ (2-1) 其中x 的幂次表示元素相应的位置。
根据代数理论的严格证明,当特征多项式()F x 满足以下3个条件时就一定能够产生m 序列:(1)()F x 是不可约的,即不能再分解因式; (2)()F x 可整除1p x +,这里21n p =-; (3)()F x 不能整除1q x +,这里q p <;目前广泛应用的m 序列都是由移位寄存器构成的。
如图2-1所示,m 序列发生器由n 个二元存储器和模2开关网络组成。
二元存储器通常是一种双稳态触发器,它的两种状态记为0和l ,其状态取决于时钟控制下输入的信息(0或1),例如第i 级移位寄存器的状态取决于时钟脉冲后的第i 一1级移位寄存器的状态。
图中C i 表示为反馈线的两种可能连接状态:C i =1表示连接线连通,即第n -i 级输出加入到反馈中;C i =0表示连接线断开,即第n -i 级输出未参加到反馈中。
图2-1由于移位寄存器的初始状态是随机的,它可能是1,也可能是0。
如果各级移位寄存器的初始状态都为0时,则模2加法器的输出将始终为0,这样就不能产生任何序列。
为了防止这种情况发生,在图2-1中往往还需要增加必要的检测电路。
1.1.2 m 序列的特性分析m 序列由n 级移位寄存器产生的m 序列,其周期为21n -。
m 序列具有如下的一些特性:1) 随机性:在m 序列的一个周期中,0和1出现概率大致相同,0码只比1码多一个,且1的个数为121n --,0的个数为12n -。
基于竞争编码法的伪随机脉冲发生器设计
1431 引言伪随机码是一种具有类似白噪声性质的码,也称为伪随机(伪噪声)序列。
白噪声是随机过程,瞬时值服从正态分布,功率谱在很宽的频带内都是均匀的;具有优良的相关特性,白噪声的自相关函数类似于δ函数,但无法实现对其进行放大、调制、检测、同步及控制等操作。
但是,利用白噪声作为输入信号,要精确测量互相关函数需要很长时间,二是白噪声的随机特性会引起统计误差,使重复测试的结果不一致,三是白噪声不易产生。
如果用伪随机信号则可以克服上述缺点。
伪随机信号兼具随机性和重复性,是精确的噪声源,不受环境变化的影响。
伪随机序列在近年兴起的扩频通信和雷达中得到了广泛的应用。
例如扩展频谱雷达就是利用己经过调制的具有类似白噪声性质的伪随机编码序列作为发送信号,接收机采用相关解调的工作方式,这种雷达具有很强的抗干扰能力并且具有很高的距离分辨力和速度分辨力。
在电法勘探中,由于大地存在各种各样的天然和人为的电磁干扰,因此要求测量仪器具备很强的抗干扰能力[1-3]。
伪随机编码序列具有良好的自相关特性,因此在提高通信和测试系统的抗干扰性能方面得到了广泛的采用。
2 伪随机多频信号编码原理a n 序列伪随机多频信号法由我国的何继善院士首先提出,基本原理是根据a n 序列伪随机多频信号编码的数学原理,用三码元:-1,0,1代表电流-I o 、0、I o ;将多个不用频率的电流合成为包含这些电流中所有频率成分的合成电流,通过观测可以得到相同数量的频率响应。
采用a n 序列伪随机激电法,1次能够提取多频率的振幅谱和相位谱(或者实分量和虚分量),构成较完整的振幅谱和相位谱(或实谱和虚谱),为分辨异常性质提供依据。
文献[1]中的伪随机多频波产生方法,比较复杂。
由于采用状态机实现,N频波有2n 个状态,当N较大时,状态很多,不利于编程和速基于竞争编码法的伪随机脉冲发生器设计朱旺1 刘彦2 张民明3(1.西华师范大学电子信息工程学院,四川南充 637000;2.成都理工大学核技术与自动化工程学院,四川成都 610059;3.重庆大学电气工程学院,重庆 400044)摘要:伪随机码在通信、测试、勘探等多个领域广泛应用。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
伪随机码发生器设计1 引言随着科学技术的进步,现代战争样式向信息战形式发展。
现代战争胜负对于信息获取的依赖程度前所未有的提高。
在现代战争中,若己方的通讯交流方式早敌军破获,则地方将获取己方部队动向或实施信息干扰。
将会使部队陷入极其危险地境地中。
因此,信息战对通讯加密手段的要求极高。
伪随机序列(Pseudonoise Sequence)又称伪噪声或伪随机码,具有类似随机信号的一些统计特性,但又是有规律的,容易产生和复制的。
最大长度线性移位寄存器序列(m序列)是保密通信中非常重要的一种伪随机序列,它具有随机性、规律性及较好的自相关和互相关性,而且密钥量很大。
利用m序列加密数字信号,使加密后的信号在携带原始信息的同时具有伪噪声的特点,以达到在信号传输的过程中隐藏信息的目的;在信号接收端,再次利用m序列加以解密,恢复出原始信号。
这样,通过对m序列的应用,将大大的提高通讯的保密程度和防窃取能力。
这样的通讯手段被称为扩展频谱通信扩展频谱通信(Spread Spectrum Communication)是将待传送的信息数据被伪随机编码也就是扩频序列调制,实现频谱扩展以后再在信道中传输,接收端则采用与发送端完全相同的编码进行解调和相关处理,从而恢复出原始的信息数据。
在这其中,伪随机码发生器是十分重要的一环,是对信息加密的核心器件。
m序列伪随机码发生器即使通过m序列的方式对信息数据编码。
本系统所设计的伪随机码发生器,产生m序列伪随机码。
系统采用AT89S51单片机作为控制芯片,控制使用LCD12864显示处理器产生的m序列伪随机码,并且可通过按键对参数修改,设置初始码及m 序列长度。
单片机根据设定的初始码及m序列长度,按照约定的逻辑运算关系,循环往复的产生0或者1。
2 发生器系统设计2.1总体设计系统分为信息处理、实时显示和按键修改共五大模块。
系统总体结构框图如图1所示:图1 系统总体结构框图如图所示,MCU 对信号进行处理,将所得数据送液晶屏显示。
可以通过对按键的修改,设置系统参数,从而改变系统运行模式,以完成发生器功能。
2.2发生器硬件设计2.2.1发生器主控芯片模块发生器主控芯片采用AT89S51单片机,AT89S51是一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash 只读程序存储器,器件采用ATMEL 公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash 存储单元,AT89S51在众多嵌入式控制应用系统中得到广泛应用。
AT89S51单片机管脚如图2所示:VCC :电源电压输入端。
GND :电源地。
P0口:P0口为一个8位漏级开路双向I/O 口,每脚可吸收8TTL 门电流。
图2 AT89S51单片机管脚分布图P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。
P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。
当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。
作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
P3口除了作为普通I/O口,还有第二功能:P3.0 RXD(串行输入口);P3.1 TXD(串行输出口);P3.2 /INT0(外部中断0);P3.3 /INT1(外部中断1);P3.4 T0(T0定时器的外部计数输入);P3.5 T1(T1定时器的外部计数输入);P3.6 /WR(外部数据存储器的写选通);P3.7 /RD(外部数据存储器的读选通);P3口同时为闪烁编程和编程校验接收一些控制信号;I/O口作为输入口时有两种工作方式,即所谓的读端口与读引脚。
读端口时实际上并不从外部读入数据,而是把端口锁存器的内容读入到内部总线,经过某种运算或变换后再写回到端口锁存器。
只有读端口时才真正地把外部的数据读入到内部总线。
89C51的P0、P1、P2、P3口作为输入时都是准双向口。
除了P1口外P0、P2、P3口都还有其他的功能。
RST:复位输入端,高电平有效。
当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
ALE/PROG:地址锁存允许/编程脉冲信号端。
当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的低位字节。
在FLASH编程期间,此引脚用于输入编程脉冲。
在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。
因此它可用作对外部输出的脉冲或用于定时目的。
然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。
如想禁止ALE的输出可在SFR8EH 地址上置0。
此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。
另外,该引脚被略微拉高。
如果微处理器在外部执行状态ALE禁止,置位无效。
PSEN:外部程序存储器的选通信号,低电平有效。
在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。
但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
EA/VPP:外部程序存储器访问允许。
当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。
注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。
在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
XTAL1:片内振荡器反相放大器和时钟发生器的输入端。
XTAL2:片内振荡器反相放大器的输出端。
2.2.2 12864液晶显示屏模块LCD12864是一种具有4位/8位并行、2线或3线串行多种接口方式,内部含有国标一级、二级简体中文字库的点阵图形液晶显示模块;其显示分辨率为128×64, 内置8192个16*16点汉字,和128个16*8点ASCII字符集.利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。
可以显示8×4行16×16点阵的汉字. 也可完成图形显示.低电压低功耗是其又一显著特点。
其基本特性为:低电源电压(VDD:+3.0--+5.5V);显示分辨率:128×64点;内置汉字字库,提供8192个16×16点阵汉字(简繁体可选);内置 128个16×8点阵字符;2MHZ时钟频率;显示方式:STN、半透、正显;驱动方式:1/32DUTY,1/5BIAS;视角方向:6点;背光方式:侧部高亮白色LED,功耗仅为普通LED的1/5—1/10;通讯方式:串行、并口可选;内置DC-DC转换电路,无需外加负压;无需片选信号,简化软件设计;工作温度: 0℃ - +55℃ ,存储温度: -20℃ - +60℃。
其管脚分布如表1所示:表1 LCD12864管脚分布表LCD12864与51单片机连接如图3所示:图3 LCD12864与51单片机连接图LCD12864的4、5、6和15四个管脚分别与单片机P1.3、P1.4、P1.5和P1.6连接。
信号传输管脚与P0管脚顺次相连。
2.2.3 键盘模块本发生器系统采用独立式键盘,独立式按键是直接用I/O口线构成单个按键电路,每个按键单独占用一根I/O线。
如图4所示是一个通过P0口连接3个按键。
图4 独立式按键接口图如图所示,按键一段连接阻值为10k的上拉电阻与+5v电源相连,另一端接地。
独立式按键电路配置灵活,软件结构简单,适合接口空余较多时的情况。
2.3发生器软件设计2.3.1发生器软件设计采用语言发生器系统软件采用C语言编写,C语法限制不太严格,程序设计自由度大虽然C语言也是强类型语言,但它的语法比较灵活,允许程序编写者有较大的自由度。
相对而言具有以下优点:(1)简洁紧凑、灵活方便C语言一共只有32个关键字,9种控制语句,程序书写自由,主要用小写字母表示。
它把高级语言的基本结构和语句与低级语言的实用性结合起来。
C 语言可以象汇编语言一样对位、字节和地址进行操作, 而这三者是计算机最基本的工作单元。
(2)运算符丰富C的运算符包含的范围很广泛,共有种34个运算符。
C语言把括号、赋值、强制类型转换等都作为运算符处理。
从而使C的运算类型极其丰富表达式类型多样化,灵活使用各种运算符可以实现在其它高级语言中难以实现的运算。
(3)数据结构丰富C的数据类型有:整型、实型、字符型、数组类型、指针类型、结构体类型、共用体类型等。
能用来实现各种复杂的数据类型的运算。
并引入了指针概念,使程序效率更高。
另外C语言具有强大的图形功能, 支持多种显示器和驱动器。
且计算功能、逻辑判断功能强大。
(4)C 是结构式语言结构式语言的显著特点是代码及数据的分隔化,即程序的各个部分除了必要的信息交流外彼此独立。
这种结构化方式可使程序层次清晰, 便于使用、维护以及调试。
C 语言是以函数形式提供给用户的,这些函数可方便的调用,并具有多种循环、条件语句控制程序流向,从而使程序完全结构化。
2.3.2 软件设计流程软件主程序流程图如图5所示,中断子程序流程图如图6所示。
图5 主程序流程图 图6 中断子程序流程图如图5所示,程序经初始化后,系统开始工作。
系统初始默认为m 值为7的伪随机码序列。
当按键被按下,有产生一个高电平的信号时,程序执行中断子程序。
在中断子程序中,由于三个按键接不同的口,系统即按不同的参数运行。
3 m 序列伪随机码理论设计3.1伪随机码基本特性伪随机码又称为随机序列,它是具有类似于随机序列基本特性的确定序列。
通常广泛应用于二进制序列。
二进制独立随即序列在概率论中称为伯努利(Bernoulli )序列,它由两个(符号)0,1或1,-1组成,序列中不同位置的元素取值相互独立,0或1的出现概率相等,简称此种序列为随机序列。
随机序列具有以下三个基本特性:(1)在序列中“0”和“1”出现的相对概率各位1/2。
(2)序列中连0或连1称为游程,连0或连1的个数称为游程的长度。
序列中长度为1的游程数占游程总数的1/2;长度为2的游程数占游程总数的1/4;长度为3的有成熟占游程总数的1/8;长度为n 的游程数占游程总数的n2/1。
次性质称为随机序列的游程特性。
(3)如果将给定的随机序列位移任何个元素,则所得到的序列和原序列对应的元素有一半相同, 一半不同。
如果确定序列近似满足以上三个特性,则称此确定序列为伪随机序列。
3.2 m 序列伪随机码性质最长线性反馈移存器序列是最常见和最常用的一种伪随机序列,简称m 序列,它是由具有线性反馈的移位寄存器产生的周期最长的序列。