一种实时高斯白噪声硬件发生器的并行实现方法技术

技术编号:15546764 阅读:424 留言:0更新日期:2017-06-05 20:11
本发明专利技术公开了一种实时高斯白噪声硬件发生器的并行实现方法。使用本发明专利技术能够实现高斯白噪声硬件发生器的实时地、高速地、并行生成高质量的高斯白噪声。本发明专利技术首先基于细胞自动机理论的均匀白噪声的FPGA高速并行实现,给出了并行实现所需N路初始向量的计算方法以及细胞自动机并行生成算法的递推函数关系;然后,给出了Box_Muller算法一种低复杂度的逼近方法,将Box_Muller算法简化为简单的乘加及CORDIC运算,FPGA实现时仅需耗费少量乘法器和逻辑资源,从而可在较低的FPGA资源消耗下,实时地、高速地生成周期长、带宽大、质量好的高斯白噪声。

A parallel implementation method of real time Gauss white noise hardware generator

The invention discloses a parallel implementation method of a real time Gauss white noise hardware generator. The invention can realize the real-time, high-speed and parallel generation of high quality Gauss white noise in a Gauss white noise hardware generator. The invention firstly based on high speed parallel implementation of FPGA white noise with cellular automaton theory, gives a parallel recursive function relation method to achieve the required N road of initial vector and cell automaton parallel algorithm; then Box_Muller algorithm is given a low complexity complex approximation method, the simplified Box_Muller algorithm is simple the Mac and CORDIC operations, FPGA only need to spend a small amount of multipliers and logic resources, which can lower FPGA resource consumption, real time, high speed production cycle is long, wide bandwidth, good quality of Gauss white noise.

【技术实现步骤摘要】
一种实时高斯白噪声硬件发生器的并行实现方法
本专利技术涉及无线信道模拟、噪声建模
,具体涉及一种实时高斯白噪声硬件发生器的并行实现方法。
技术介绍
无线信道模拟技术由于可在地面复现出一个理想、恶化、甚至近乎真实的电波传播环境,模拟信道各种时、空变化对信号传播的影响,早已成为通信、测控等
不可缺少的验证测试手段。相比于有线信道,无线信道是电波传播的一种恶劣介质,具有随机、不可预知等复杂特性。无线电波在信道传输过程中,会不可避免受到噪声干扰、信道衰落、电离层闪烁、动态雨衰等随机非理想特性的影响。为了研究这些非理想特性对电波传播的影响,国内外学者通常以高斯白噪声建模为基础,再通过各种线性或非线性的复杂变换来对信道的其它非理想特性进行建模分析。可见,高斯白噪声是无线信道随机非理想特性研究的重中之重,研究高斯白噪声理论及实现方法对无线信道特性建模、仿真及模拟均具有重要意义。研究资料表明,高斯白噪声大多是通过一些算法对均匀分布的白噪声进行高斯化处理后产生得到。现阶段,均匀白噪声的产生方法主要包括线性同余算法、延迟斐波那契法、线性移位寄存器法及细胞自动机理论等。线性同余法与延迟斐波那契法相比,前者在随机数分布的均匀性、子序列依赖关系等性能测试中效果较差,但后者却需要较多的乘法器资源,FPGA(FieldProgrammableGateArray)硬件资源消耗大。线性移位寄存器法是目前应用最广泛的一种方法,具有算法简单、速度快、可重复性强及易于FPGA硬件实现等突出优点。然而,由于该方法存在线性反馈结构,会导致其产生的伪随机数具有较强的相关性,均匀白噪声产生质量相对较差。相比而言,细胞自动机理论是近些年才用于均匀白噪声的产生,由于其产生的噪声具有周期长、速度快、统计特性好、实现占用硬件资源少等突出优点,一经问世就受到了国内外学者的广泛关注。在高斯白噪声生成算法方面,目前主要包括累积分布函数反变换法、拒绝-接受法及均匀白噪声变换法等。累积分布函数反变换法的基本思想是将任意给定随机变量的累积分布函数做反变化,从而得到该累积分布函数对应的随机变量。该方法直观、容易理解,但硬件实现时需要存储非线性高斯累积分布函数与高斯白噪声之间的映射关系,会不可避免地占用大量存储资源。拒绝-接收法的基本思想是根据某些给定的判别准则来确定所产生的随机变量是否属于高斯白噪声进而决定取舍。然而,由于该方法需要利用循环条件对输入变量进行判别,舍弃那些经转换后不能产生高斯白噪声的数据,因而其效率不高,并不适宜硬件实现。相比而言,均匀白噪声变换法无需求解累积分布函数的反变换,通过对均匀分布的白噪声进行直接变换来产生高斯白噪声。目前,这类方法应用最为广泛,主要包括Box-Muller算法、中心极限定理累加法、MontyPython算法及基于三角分布的分段近似法等。在高斯白噪声发生器方面,早期的高斯白噪声发生器大多基于计算机软件进行实现,直到上个世纪八九十年代才陆续出现不同种类的高斯白噪声硬件发生器。例如,基于Ziggurat算法的高斯白噪声硬件发生器、基于Box-Muller算法的高斯白噪声硬件发生器及基于延迟斐波那契算法和中心极限定理的高斯白噪声硬件发生器等。然而,上述硬件发生器的研究重点主要在于如何以较低的FPGA资源消耗生成高质量的高斯白噪声,却忽略了高斯白噪声的生成速度。特别是,随着宽带、超宽带系统的不断问世,如何以较低的硬件资源消耗,实时地、高速地生成高质量的高斯白噪声显得至关重要。因此,研究高斯白噪声的高速、并行生成算法及硬件实现方法具有重要意义。
技术实现思路
有鉴于此,本专利技术提供了一种实时高斯白噪声硬件发生器的并行实现方法,基于细胞自动机理论和Box_Muller算法,实现高斯白噪声硬件发生器的实时地、高速地、并行生成高质量的高斯白噪声。本专利技术的实时高斯白噪声硬件发生器的并行实现方法,包括如下步骤:步骤1,选定细胞自动机规则为零边界90/150细胞自动机规则,在该规则下,根据拟生成高斯白噪声的周期长度计算获得细胞自动机的阶次M及两个互逆的规则向量d1和d2,其中,d1={d1(m),m=1,2,...,M}和d2={d2(m),m=1,2,...,M},规则向量中的元素d1(m)和d2(m)为0或1;步骤2,设定细胞自动机的初始向量s0为s0={s0(m),m=1,2,3...,M},且初始向量为非零向量;其中,元素s0(m)为0或1;步骤3,在FPGA内部产生两组并行实现的均匀白噪声,具体包括如下子步骤:步骤3.1,根据实际应用系统的采样频率fs和FPGA的工作时钟fclk,计算并行路数其中表示向上取整;步骤3.2,根据规则向量d1和初始向量s0,得到规则向量d1下的并行各路的初始向量sp={sp(m),m=1,2,...,M},p=1,2,…,N;其中,第1路初始向量s1中任意元素s1(m)为:其中,符号表异或运算,m=1,2,3,...,M;s0(0)≡0,s0(M+1)≡0;任意并行第p路初始向量sp中元素sp(m)为:且sp(0)≡0和sp(M+1)≡0步骤3.3,同步骤3.2,根据规则向量d2和初始向量s0,得到规则向量d2下的并行各路的初始向量rp={rp(m),m=1,2,...,M},p=1,2,…,N;步骤3.4,根据零边界90/150细胞自动机规则,推导得到规则向量d1下的并行各路的递推函数f;其中,p=1,2,…,N;其中,为第p路、第n时刻的状态向量,为第p路、第n-1时刻的状态向量,同样的,得到规则向量d2下的并行各路的递推函数g;其中,p=1,2,…,N;其中,为第p路、第n时刻的状态向量,为第p路、第n-1时刻的状态向量,步骤3.5,将步骤3.2产生的N个初始向量sp和步骤3.3产生的N个初始向量rp分别视为两组Mbit的二进制数,根据步骤3.4推导的递推函数关系f和g,在FPGA中并行生成2组N路均匀白噪声和p=1,2,…,N;步骤4:生成并行N路的高斯白噪声,具体包括如下步骤:步骤4.1,针对步骤3生成的第1组均匀白噪声采用非等间隔分段多项式拟合法对Box_Muller算法中的进行拟合,获得各非等间隔分段的拟合系数;将拟合系数量化后存储至FPGA内部存储器;在FPGA内部,根据已存储的拟合系数对步骤3并行产生的第1组Mbit均匀白噪声进行并行的多项式计算,并截取高Mbit作为中间结果步骤4.2,针对步骤3生成的第2组均匀白噪声根据Box_Muller算法中的公式y2=cosx2,在FPGA内部采用CORDICIP核并行计算生成Mbit中间结果步骤4.3:在FPGA内部并行生成第p路高斯白噪声gp(n),p=1,2,…,N:在第p路,将两个Mbit的与相乘,并将乘积结果截取高M0bit作为最终生成的高斯白噪声gp(n);其中,M0为数/模转换器的有效位数;步骤5:对步骤4生成的N路高斯白噪声按顺序进行并-串转换处理后,经数模转换产生最终的高斯白噪声。进一步地,所述步骤1中,规则向量由欧几里得算法或查表得到。有益效果:本专利技术对比已有技术,具有如下优点:首先,提出了基于细胞自动机理论的均匀白噪声并行生成算法和基于FPGA的实现方法。在细胞自动机理论基础上,本专利技术根据需产生的均匀白噪声周期长度本文档来自技高网
...
一种实时高斯白噪声硬件发生器的并行实现方法

【技术保护点】
一种实时高斯白噪声硬件发生器的并行实现方法,其特征在于,包括如下步骤:步骤1,选定细胞自动机规则为零边界90/150细胞自动机规则,在该规则下,根据拟生成高斯白噪声的周期长度计算获得细胞自动机的阶次M及两个互逆的规则向量d

【技术特征摘要】
1.一种实时高斯白噪声硬件发生器的并行实现方法,其特征在于,包括如下步骤:步骤1,选定细胞自动机规则为零边界90/150细胞自动机规则,在该规则下,根据拟生成高斯白噪声的周期长度计算获得细胞自动机的阶次M及两个互逆的规则向量d1和d2,其中,d1={d1(m),m=1,2,...,M}和d2={d2(m),m=1,2,...,M},规则向量中的元素d1(m)和d2(m)为0或1;步骤2,设定细胞自动机的初始向量s0为s0={s0(m),m=1,2,3...,M},且初始向量为非零向量;其中,元素s0(m)为0或1;步骤3,在FPGA内部产生两组并行实现的均匀白噪声,具体包括如下子步骤:步骤3.1,根据实际应用系统的采样频率fs和FPGA的工作时钟fclk,计算并行路数其中表示向上取整;步骤3.2,根据规则向量d1和初始向量s0,得到规则向量d1下的并行各路的初始向量sp={sp(m),m=1,2,...,M},p=1,2,…,N;其中,第1路初始向量s1中任意元素s1(m)为:其中,符号表异或运算,m=1,2,3,...,M;s0(0)≡0,s0(M+1)≡0;任意并行第p路初始向量sp中元素sp(m)为:且sp(0)≡0和sp(M+1)≡0步骤3.3,同步骤3.2,根据规则向量d2和初始向量s0,得到规则向量d2下的并行各路的初始向量rp={rp(m),m...

【专利技术属性】
技术研发人员:郑哲黄惠明周扬吴嗣亮单长胜丁华王磊张晖
申请(专利权)人:北京理工大学中国人民解放军六三九九九部队
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1