OpenEdv-开源电子网

 找回密码
 立即注册

扫一扫,访问微社区

正点原子新作:阿波罗STM32F767&F429&探索者STM32F4开发板&赶快来下载资料哦。

查看: 102|回复: 0

勇敢的芯伴你玩转Altera FPGA连载45:基于仿真的第一个工程实例之测试脚本创建与编辑

[复制链接]

  离线 

332

主题

339

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1480
金钱
1480
注册时间
2014-7-19
在线时间
33 小时
发表于 2018-1-26 23:00:13 | 显示全部楼层 |阅读模式
正点原子公众号
勇敢的芯伴你玩转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设计实战演练(逻辑篇)》第九章的设计仿真部分内容。

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则




QQ|联系我们|手机版|官方淘宝店|新浪微博|微信公众平台|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2018-2-24 00:40

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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