发 帖  
[FPGA作品] 勇敢的芯伴你玩转Altera FPGA连载45:基于仿真的第一个工程实例之测试脚本创建与编辑
2018-1-26 22:41:26  2052 工程
分享
勇敢的芯伴你玩转Altera FPGA连载45:基于仿真的第一个工程实例之测试脚本创建与编辑
特权同学,版权所有
配套例程和更多资料下载链接:
http://pan.baidu.com/s/1i5LMUUD
1.jpg
回到Quartus II工具中,如图6.13所示,点击菜单栏的“ProcessingàStartàStart Test Bench Template Writer”,随后弹出提示“Test Bench Template Writer was successful”(在此之前,最好对整个工程做一次全编译,否则可能报错),那么我们就已经创建了一个Verilog测试脚本,在此脚本中,我们可以设计一些测试激励输入并且观察相应输出,借此我们就能够验证原工程的设计代码是否符合要求。
2.jpg
图6.13 生成测试脚本
         我们打开工程所在文件夹下的“…/simulation/modelsim”文件夹,如图6.14所示,可以看到一个名为cy4.vt的测试脚本文件创建好了。
3.jpg
图6.14 测试脚本文件
         测试脚本文件在Notepad++中打开了。这里的测试脚本只是一个基本的模板,它把设计文件cy4.v的接口在这个模块里面例化申明了,我们还需要自动动手添加复位和时钟的激励,编辑好的测试脚本如下所示。
`timescale 1 ns/ 1 ps
module cy4_vlg_tst();
// test vector input registers
reg ext_clk_25m;
reg ext_rst_n;
// wires                                               
wire clk_12m5;
// assign statements (if any)                          
cy4 i1 (
// port map - connection between master ports and signals/registers   
    .clk_12m5(clk_12m5),
    .ext_clk_25m(ext_clk_25m),
    .ext_rst_n(ext_rst_n)
);
    initial begin
        // Initialize Inputs
        ext_clk_25m = 0;
        ext_rst_n = 0;
        // Wait 100 ns for globalreset to finish
        #100;
        ext_rst_n = 1;        
        // Add stimulus here
        #2000;
        $stop;
    end
      
    always #20 ext_clk_25m =~ext_clk_25m; //产生25MHz时钟源  
                                                
endmodule
         有朋友可能是第一次接触测试仿真,关于仿真的基本概念请查看《FPGA设计实战演练(逻辑篇)》第九章的设计仿真部分内容。

0
2018-1-26 22:41:26   评论

只有小组成员才能发言,加入小组>>

307个成员聚集在这个小组

加入小组

创建小组步骤

关闭

站长推荐 上一条 /7 下一条

快速回复 返回顶部 返回列表