一种基于FPGA的AGWN信号生成器的设计
时间:11-08
来源:互联网
点击:
3 综合、仿真结果
在QuartusⅡ集成了多种设计输入方式,并可使用Assignment Editor(分配编辑器)方便地设定管脚约束和时序约束,正确地使用时序约束可以得到设计的详细时序报告,便于分析设计是否满足时序要求。在整个设计流程中,完成了设计输入以及成功综合、布局布线,只能说明设计符合一定的语法规范,但其是否满足设计者的功能要求并不能保证,这需要通过仿真进行验证。
3.1 功能仿真
功能仿真(前仿真),不带时延信息,对电路物理行为进行仿真,速度较快。
图2是对顶层模块(AGWN模块)进行功能仿真后在不同时段的波形。由图中可以看出,输出序列具有随机性。
图3~图5分别是对各个分模块进行前仿真后的波形图。图3是8个PN序列发生器的仿真波形图。
图4是加法器模块的仿真波形:因为reset之后的第一个clk上升沿输出的是PN序列的第二个码字,第一个码字在reset同时已经输出,加法电路是一个组合电路,所以加法器的输出(addi/addq)在系统刚启动时不会出现不确定值。
图5是系统正常运行后乘法模块的仿真波形。值得注意的是在系统刚开始运转时,reset信号之后,由于PN序列发生器和加法器中的串行输出数据,还没有传递到乘法器模块中的被乘数寄存器(multiregi/multi-regq)和乘积寄存器中,这时从乘积寄存器中串行输出一些不确定值。
3.2 综合、布局布线
综合是指将HDL语言,原理图等设计输入翻译成由与、或、非门,RAM,触发器等基本逻辑单元组成的逻辑连接,并根据目标及要求优化所生成的逻辑,最后输出edf或vqm网表文件供布局布线用。
布局布线是将综合生成的逻辑网表适配到具体器件中,并把工程的逻辑和时序要求与器件的可用资源相匹配,它将每个逻辑功能分配给最好的逻辑单元位置,进行布线和时序,并选择相应的互边路径和管脚分配。
3.3 时序仿真
时序仿真也称后仿真,即通过加入综合后网表及时延信息对电路进行综合仿真,速度较慢。前后仿真与综合、布局布线的关系是一脉相承的,又相辅相成。功能仿真与综合、时序分析形成一个反馈工作过程,只有过程收敛之后的综合、布局布线等环节才有意义,孤立的功能仿真即使通过也是没有意义的,如果在时序分析中发现时序不满足需要更改代码,则功能仿真必须重新进行。图6是在QuartusⅡ中综合布局布线之后的时序仿仿真波形。由于用了2倍频电路,所以系统只用了一个时钟信号clk,a为8位的系数。为观察产生的AGWN的随机性,截取的图形是同一仿真在不同时段的波形图。
4 结 语
本文使用Verilog硬件设计语言,采用自顶下的设计思路,将整个设计分为了不同的小模块,分别实现每一个模块的功能,最终设计出AGWN信号产生的Ver-ilog电路,并实现了功能仿真、综合、布局布线、时序仿真。该电路实现了在数字通信系统中常用的AGWN信号,由于数字通信系统中用到的是数字信号,可以直接在数字通信系统中加载所产生的数字信号使用。如果需要用到模拟的AGWN信号,可将产生的数字信号通过A/D转换器转换为模拟信号再进行使用。
在QuartusⅡ集成了多种设计输入方式,并可使用Assignment Editor(分配编辑器)方便地设定管脚约束和时序约束,正确地使用时序约束可以得到设计的详细时序报告,便于分析设计是否满足时序要求。在整个设计流程中,完成了设计输入以及成功综合、布局布线,只能说明设计符合一定的语法规范,但其是否满足设计者的功能要求并不能保证,这需要通过仿真进行验证。
3.1 功能仿真
功能仿真(前仿真),不带时延信息,对电路物理行为进行仿真,速度较快。
图2是对顶层模块(AGWN模块)进行功能仿真后在不同时段的波形。由图中可以看出,输出序列具有随机性。
图3~图5分别是对各个分模块进行前仿真后的波形图。图3是8个PN序列发生器的仿真波形图。
图4是加法器模块的仿真波形:因为reset之后的第一个clk上升沿输出的是PN序列的第二个码字,第一个码字在reset同时已经输出,加法电路是一个组合电路,所以加法器的输出(addi/addq)在系统刚启动时不会出现不确定值。
图5是系统正常运行后乘法模块的仿真波形。值得注意的是在系统刚开始运转时,reset信号之后,由于PN序列发生器和加法器中的串行输出数据,还没有传递到乘法器模块中的被乘数寄存器(multiregi/multi-regq)和乘积寄存器中,这时从乘积寄存器中串行输出一些不确定值。
3.2 综合、布局布线
综合是指将HDL语言,原理图等设计输入翻译成由与、或、非门,RAM,触发器等基本逻辑单元组成的逻辑连接,并根据目标及要求优化所生成的逻辑,最后输出edf或vqm网表文件供布局布线用。
布局布线是将综合生成的逻辑网表适配到具体器件中,并把工程的逻辑和时序要求与器件的可用资源相匹配,它将每个逻辑功能分配给最好的逻辑单元位置,进行布线和时序,并选择相应的互边路径和管脚分配。
3.3 时序仿真
时序仿真也称后仿真,即通过加入综合后网表及时延信息对电路进行综合仿真,速度较慢。前后仿真与综合、布局布线的关系是一脉相承的,又相辅相成。功能仿真与综合、时序分析形成一个反馈工作过程,只有过程收敛之后的综合、布局布线等环节才有意义,孤立的功能仿真即使通过也是没有意义的,如果在时序分析中发现时序不满足需要更改代码,则功能仿真必须重新进行。图6是在QuartusⅡ中综合布局布线之后的时序仿仿真波形。由于用了2倍频电路,所以系统只用了一个时钟信号clk,a为8位的系数。为观察产生的AGWN的随机性,截取的图形是同一仿真在不同时段的波形图。
4 结 语
本文使用Verilog硬件设计语言,采用自顶下的设计思路,将整个设计分为了不同的小模块,分别实现每一个模块的功能,最终设计出AGWN信号产生的Ver-ilog电路,并实现了功能仿真、综合、布局布线、时序仿真。该电路实现了在数字通信系统中常用的AGWN信号,由于数字通信系统中用到的是数字信号,可以直接在数字通信系统中加载所产生的数字信号使用。如果需要用到模拟的AGWN信号,可将产生的数字信号通过A/D转换器转换为模拟信号再进行使用。
Verilog 电路 仿真 信号发生器 FPGA Quartus 相关文章:
- 基于ARM的嵌入式系统中从串配置FPGA的实现(06-09)
- FPGA按键模式的研究与设计(03-24)
- 周立功:如何兼顾学习ARM与FPGA(05-23)
- 验证FPGA设计:模拟,仿真,还是碰运气?(08-04)
- 初学者如何学习FPGA(08-06)
- 为何、如何学习FPGA(05-23)