摘要:依据非线性移位寄存器的原理,文中讨论二元给定序列非线性反馈移位寄存器的综合算法,用C语言编程,找到了产生该序列的非线性移位寄存器。借助EDA技术,以FPGA为硬件基础,经过设计优化构成定长序列和给定周期序列的伪随机序列发生器,并进行了仿直实验,用硬件实验证实了设计的合理性。
关键词:非线性伪随机序列 非线性移位寄存器 现场可编程门阵列
1 引言
伪随机序列具有良好的随机性,在伪码测距、导航、遥控和遥测、扩频通信、多址通信、分离多径、数据加乱、信号同步、误码测试、线性系统测量、天线方向测量和各种噪声源等方面得以广泛的应用。伪随机序列的产生可以通过线性移位寄存器即m序列来实现,也可以
在现代电子工程与通信技术中,非线性移位寄存器的应用广泛而深远。其能够在伪随机序列的生成上发挥关键作用,这些序列的随机性对伪码测距、导航、遥控、通信和数据安全等多个重要领域至关重要。与传统的线性移位寄存器相比,非线性移位寄存器因其更丰富的逻辑功能与多样性,被更多地用于设计复杂的电子系统。
在这篇文章中,我们重点讨论了如何根据非线性移位寄存器的原理,综合并产生特定的二元给定序列。非线性移位寄存器的核心在于其反馈函数,这个函数决定了寄存器在操作过程中如何将先前的状态映射到新的状态。然而,设计一个有效的非线性移位寄存器并不是一件简单的事情,尤其是当目标是生成具有特定性质的序列时。
文章提出了两种主要的序列综合策略:一种是生成定长非周期序列,另一种是生成具有特定周期的序列。对于定长序列的综合,作者提出了一种逐步搜索的方法,意在找到一个最小的自然数n和与之对应的反馈函数,确保序列状态的唯一性。而在设计给定周期序列的过程中,目标是寻找一个最小的n值,使得序列中的所有状态都两两不同,实质上也是寻找满足特定条件的最小自然数n的问题。
为了将设计概念转化为实际产品,本文采用了C语言编程来实现综合算法,并借助电子设计自动化(EDA)技术,选择了现场可编程门阵列(FPGA)作为硬件实现平台。FPGA的优势在于其高度可配置性,能够支持根据特定应用需求进行快速设计和更新。在此项目中,作者选择了Altera公司的EPF10K10LC84-4型FPGA,并使用了MAX+PlusII软件进行设计输入和硬件描述语言编程,最终将非线性移位寄存器结构编程到FPGA中。
设计完成之后,还需要经过一系列的编译、时序仿真与优化步骤,以确保设计的合理性和有效性。这些步骤的目的是确保硬件实现能够正确运行,并产生符合预期特性的伪随机序列。文章也提到了通过硬件实验验证了设计方案的可行性,这意味着理论和模拟的结果得到了实际硬件操作的支撑。
本文不仅详细讨论了二元给定序列非线性移位寄存器的综合算法,而且还展示了软件编程和硬件实现的完整过程。这项工作对于深入理解非线性移位寄存器的性质,以及在实际系统中高效、灵活地产生所需伪随机序列具有重要意义。通过将算法设计与硬件实现相结合,本文为工程技术人员提供了一套完整的解决方案,以支持更广泛的应用开发。随着电子技术的不断进步,非线性移位寄存器的应用范围将不断扩大,本文的贡献将在未来的技术发展中显示出其重要价值。