Verilog 如何编写仿真测试模块?
在使用Verilog语言描述好硬件模块后,常常需要在软件中仿真。介绍在Xilinx ISE软件中如何使用Verilog编写仿真测试模块,其中包括从文件中读取测试数据的方法。
操作方法
- 01
首先,在项目上右键,点击New Source创建新的代码文件。
- 02
选择User Document创建自定义的文本文件。文件名和后缀都随意了。 该文件用来存放仿真需要的数据,与项目本身并无关联。
- 03
创建好后,在下方切换到Files面板,双击打开该文件,按照自己喜欢的形式输入数据(可以有下划线,换行) 如图,我采用每行一组输入输出信号的形式编写文件。
- 04
数据文件写好后,就要编写Verilog测试模块读取该文件并对模块进行测试了。在项目上右键,点击New Source,接着选择Verilog Test Fixture,输入文件名并继续,选择待测模块,接着创建文件。
- 05
双击打开该文件,我们看到待测试模块输入对应了一些reg寄存器类型,输出部分对应了一些wire类型。 我们添加两个parameter常量,接着添加计数变量J用于for循环,添加一个向量数组用于存放文件读取的数据。
- 06
如图是程序自动生成的实例化和连接待测模块的代码。 我们在下面的initial begin ... end之间编写我们的测试代码。
- 07
编写思路大概如图。其中$readmemb函数从文件读取数据到Vmem数组。 $display可以在仿真软件中输出文字。 #10表示等待10个时间单位,等"信号稳定"
- 08
在仿真模式下运行仿真,效果如图。
- 09
下方控制台输出了由$display函数指定的信息。
赞 (0)