小舍YZ 发表于 2017-6-29 17:12:37

基于ISE的仿真之测试代码法

基于ISE的仿真之测试代码法

下面介绍基于Verilog语言建立测试平台的方法。首先在工程管理区将“Sources for”设置为Behavioral Simulation,在任意位置单击鼠标右键,并在弹出的菜单中选择“New Source”命令,然后选中“Verilog Test Fixture”类型,输入文件名为“test_test”,再点击“Next”进入下一页。这时,工程中所有Verilog Module的名称都会显示出来,设计人员需要选择要进行测试的模块。

用鼠标选中test,点击“Next”后进入下一页,直接点击“Finish”按键,ISE会在源代码编辑区自动显示测试模块的代码:

`timescale 1ns / 1ps
module test_test_v;
// Inputs
reg clk;
reg din;
// Outputs
wire dout;

// Instantiate the Unit Under Test (UUT)
test uut (
         .clk(clk),
         .din(din),
         .dout(dout)
);

initial begin
         // Initialize Inputs
      clk = 0;
      din = 0;
      // Wait 100 ns for global reset to finish
       #100;
       // Add stimulus here
end
endmodule
由此可见,ISE自动生成了测试平台的完整架构,包括所需信号、端口声明以及模块调用的完成。所需的工作就是在initial…end模块中的“// Add stimulus here”后面添加测试向量生成代码。添加的测试代码如下:

forever begin
#5;
clk = !clk;
if(clk == 1)
         din = din + 1;
else
         din = din;
end
完成测试平台后。在工程管理区将“Sources for”选项设置为Behavioral Simulation,这时在过程管理区会显示与仿真有关的进程,如图4-36所示。

图4-36 选择待测模块对话框

小舍YZ 发表于 2017-6-29 17:13:41

选中图4-36中Xilinx ISE Simulator下的Simulate Behavioral Model项,点击鼠标右键,选择弹出菜单的Properties项,会弹出如图4-37所示的属性设置对话框,最后一行的Simulation Run Time就是仿真时间的设置,可将其修改为任意时长,本例采用默认值。
图4-37 仿真过程示意图

小舍YZ 发表于 2017-6-29 17:14:38

仿真参数设置完后,就可以进行仿真了,直接双击ISE Simulator软件中的Simulate Behavioral Model,则ISE会自动启动ISE Simulator软件,并得到如图4-38所示的仿真结果,从中可以看到设计达到了预计目标。
图4-38 test模块的仿真结果

d643189658 发表于 2017-8-11 18:58:21

谢谢楼主的分享
页: [1]
查看完整版本: 基于ISE的仿真之测试代码法