赞
踩
在FPGA开发过程中,通常我们会做两步仿真,功能仿真(前仿真)和时序仿真(后仿真),其实在这两步中间还有一种门级仿真,不过通常这一步会忽略,将其放到时序仿真过程中完成,那么这三种仿真各自完成了什么功能呢?
l 功能仿真:这一步仿真的目的主要是检查设计的功能是否正确,比如计数器,只会去关注计数器能不能正常计数,而不会去考虑计数器增加时其与时钟信号之间的延时(其实这是在波形中看到的是它们之间的延时为0)。
l 门级仿真:这步是在综合完成后做的,我们都知道综合是将硬件描述语言等方法描述的电路逻辑转换成门级互连的电路结构。信号在各个门之间传递时总会有延时,这步仿真在考虑了这种延时的情况下检查电路是否还能如预期那样工作。这种延时就是我们平时说的门级延时。
l 时序仿真:这步是在布局布线后做的。布局布线后,电路就被映射到了实际的器件中,这步主要是考虑加入线延时后电路是否还能如期工作。
从上面可以看出,门级仿真和时序仿真检查的都是延时对电路功能的影响,所有通常才会将这两步放到一起完成。下面就介绍如果使用Modelsim完成这两步仿真。
功能仿真
功能仿真需要的输入文件有:
1. 设计文件(通常是Verilog或VHDL描述的文件)。
2. 激励文件,即testbench。
3. 仿真模型(库),这个得视情况而定,Verilog和VHDL的要求并不同,而且还需要根据设计中调用的器件供应商提供的模块而定,比如FIFO。
下面以对50MHz进行8分频的程序为例说明如何进行功能仿真。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。