新闻中心

EEPW首页>EDA/PCB>设计应用> 基于FPGA的AGWN信号生成器

基于FPGA的AGWN信号生成器

作者: 时间:2009-12-17 来源:网络 收藏

2.2 叠加电路设计与实现
根据中心极限定理,对于若干个独立同分布的随机变量,其和的极限分布是标准正态分布。这样将产生的8个序列叠加将产生符合高斯特性的序列。发生器串行输出的实部,虚部8个独立的码相异或。即每8个一位二进制数相异或。
2.3 乘法系数电路的设计与实现
2.3.1 设计思想
乘法器设计是设计中的一个难点,有很多种算法来实现它。可以采用移位加实现,在GF(28)域上乘法是这样进行的:乘以2相当于将该8位二进制数向高位移一位,如果此8位二进制数的最高位为1,则需要将移位结果异或8位二进制数00000001。还有一种方法就是,在代码中直接将乘法写成*,让综合工具自己去综合出可用的硬件电路。本文采用综合工具自带的模块电路。
2.3.2 电路实现
设计对时序要求较严格。乘法器电路必须用到三个寄存器以用来保存加法器串行输出的连续8个PN码,乘法系数和乘积。
在reset之后,PN序列发生电路已经产生第一个输出码,同时加法器也将结果运算出来,但这时乘数寄存器中只有最低位是有用的刚传进来的一位码,其他位还是无用,只有到了8个时钟之后,乘数寄存器中才保存了8个连续的有用的PN码,这时必须很快地进行乘法运算并将结果保存在乘积寄存器中,第9个时钟到来时乘法运算必须进行完毕,空闲出来的乘数寄存器用来寄存后面的8个连续的PN码,然后一直这样循环工作。8个乘数寄存器保存PN码时钟信号后,立即进行乘法运算并保存乘积,这就要求乘积寄存器空出来,为了空出乘积寄存器,第8个时钟到来时必须将乘积寄存器中的数据一位一位串行输出。乘积寄存器中有16位二进制数,这就要求一个时钟信号的2倍频信号作为乘积寄存器串行输出的时钟信号。基于以上问题的考虑,乘法电路用综合工具自己生成的8位乘法器,该模块电路中还要用到一个2倍频电路,这也用综合工具自带的模块电路。

本文引用地址://m.amcfsurvey.com/article/191846.htm


3 综合、仿真结果
在QuartusⅡ集成了多种设计输入方式,并可使用Assignment Editor(分配编辑器)方便地设定管脚约束和时序约束,正确地使用时序约束可以得到设计的详细时序报告,便于分析设计是否满足时序要求。在整个设计流程中,完成了设计输入以及成功综合、布局布线,只能说明设计符合一定的语法规范,但其是否满足设计者的功能要求并不能保证,这需要通过仿真进行验证。
3.1 功能仿真
功能仿真(前仿真),不带时延信息,对电路物理行为进行仿真,速度较快。
图2是对顶层模块(模块)进行功能仿真后在不同时段的波形。由图中可以看出,输出序列具有随机性。

图3~图5分别是对各个分模块进行前仿真后的波形图。图3是8个PN序列发生器的仿真波形图。



评论


相关推荐

技术专区

关闭