1、代码输入
(1)、新建一个ISE工程,名字为count4。
(2)、新建一个verilog文件

(3)、选择verilog module 输入file name为count4,单击next默认知道finish。

(4)、在count4.v文件中输入以下代码
module count4(out,reset,clk
    );
        
        output [3:0] out;
        input reset,clk;
        reg [3:0] out;
        
        always@(posedge clk) begin
              if(reset)
                     out<=0;
              else
                     out<=out+1;
        end
 
endmodule
(5)、新建一个testbench文件(综合时,不参与综合),和第(2)步骤相同
(6)、选择 verilog Test Fixture。
 

(7)、创建完成后,输入以下代码
module count4_tb;
      
       reg clk,reset;
       wire [3:0] out;
       parameter DELY=100;
      
       count4 mycount(.out(out),.reset(reset),.clk(clk));
       //count4 mycount(out,reset,clk);   若简写,功能仿真正确,时序仿真会因为端口不匹配,//会出错
       always #(DELY/2) clk=~clk;
      
       initial begin
              clk=0;
              reset=0;
              #DELY reset=1;
              #DELY reset=0;
              #(DELY*200) $finish;
       end
                    
       initial $monitor($time,,,"clk=%d reset=%d out=%d",clk,reset,out);
      
endmodule
注:可以修改文件的属性,是否为testbench或者为verilog文件。右击要修改的文件。选择source properties

 
 
修改属性,simulation为testbench   .implementation为正常的verilog文件
 

 
2、功能仿真
功能仿真放在综合前面,是因为大型程序综合需要很长的时间,而功能仿真不需要综合,可以先功能仿真,确保代码的正确性。功能仿真正确后,再综合,然后进行综合后仿真。
(1)、切换到simulation。选择behavioral。
 

 
(2)、单击选中count4_tb文件,然后双击simulate behavioral model。
 

(3)、在modelsim,查看波形等内容。
 
 

 
3、时序(综合后)仿真
时序仿真将时延考虑进去,包括综合后产生的(与、或、非)门时延,还有布局布线产生的时延。
综合(Synthesize),就是将HDL语言设计输入翻译成由与、或、非门和RAM、触发器等逻辑单元组成的网表。综合后可生成综合后仿真模型(Generate Post-Synthesis Simulation Model)。
 

综合后,进行ISE的实现(Implement),包括翻译、映射、布局布线。在这三个过程中都可以生成一个仿真模型(翻译和映射不会产生延时,因此常用布局布线后产生的仿真模型进行时序仿真)
 

(1)、进行综合,双击 Synthesize – XST ,想生成 Post-Synthesis Simulation Model,双击Generate Post-Synthesis Simulation Model即可,会在工程文件夹下生成netgen\synthesis\count4_synthesis.v等文件
 

(2)、进行实现,双击 Implement Design ,完成后,双击Generate Post-Place & Route Simulation Model.。生成布局布线后仿真模型。
 

 
(3)、切换到 Simulation ,选中Post-route。
 

 
(4)、然后选中count4_tb文件,双击下面的Simulate Post-Place&Route Model,启动modelsim。
 

(5)、在modelsim中观察仿真波形。可以看到输出out有明显的延时。
 

本文出自 “李海川” 博客,请务必保留此出处http://lihaichuan.blog.51cto.com/498079/984870

补充:http://wenku.baidu.com/link?url=idbSvNzz2fLSl1WXiEmtIL1amhQTHmtqqQ6g1cp-oU1X3W4wF2Wdu5LSe745rwjCrM-btR44-we9zLCyMf2ofjjAt2d8wcBT7LFyIHF8Tym

ISE联合modelsim功能仿真和综合后仿真的更多相关文章

  1. ISE联合modelsim功能仿真和综合后仿真1

    1.代码输入 (1).新建一个ISE工程,名字为count4. (2).新建一个verilog文件 (3).选择verilog module 输入file name为count4,单击next默认知道 ...

  2. 用Modelsim仿真QuartusII综合后网表时库的添加方法(转)

    这两天做综合后仿真,发现FPGA器件库又不会加了,无奈上网找方法.说起来不好意思,很早就接触Modelsim这个仿真软件了,可是没有好好琢磨.把这两天找的方法贴出来,再加上自己的理解,以后忘了可以上博 ...

  3. FPGA功能仿真,门级仿真,后仿真的区别

    前言 分清楚各种仿真间的关系,工具采用quartus prime16.0,仿真工具采用modelsim10 ae版:项目:led_display; 流程 1.RTL行为级仿真:也叫功能仿真,这个阶段的 ...

  4. ISE和Modelsim联合仿真(详细步骤讲解)

    ISE和Modelsim联合仿真(转) 地址:http://www.cnblogs.com/feitian629/archive/2013/07/13/3188192.html 相信很多人会遇到过这个 ...

  5. ISE和Modelsim联合仿真(转)

    相信很多人会遇到过这个问题,不知如何让ISE调用Modelsim进行仿真.我也迷糊了不少时间,查查找找,终于弄明白了,所以有了本文,和大家分享一下.我尽量讲得详细点儿,多多上图. 我的环境:Windo ...

  6. ISE综合后得到的RTL图如何与硬件对应起来,怎么知道每个element的功能

    2013-06-23 21:34:03 要知道“我写的这段代码会综合成什么样的电路呢”,就要搞清楚RTL图中每个模块的功能,从而将代码与硬件对应,判断综合后的电路是否与预期的一致.如何做到? 之前查了 ...

  7. ise和modelsim联合仿真的一些准备

    首先要在modelsim中编译xilinx的三个库,分别是unisims库,simprims库,和corelib库,其中unisims库全称为(library of united component ...

  8. 怎样用modelsim做后仿真

    摘要: 怎样用modelsim做后仿(编译工具采用quatus) step1:在qurtus改变编译选项:     assignments->EDA tool setting:选择verilog ...

  9. [原创]Modelsim后仿真

    因调试需要,进行后仿真,ISE生成的sim文件和sdf文件 `timescale ns/ ps module lut_dly ( clkout, fpga_clk, config_in ); outp ...

随机推荐

  1. 关于LayoutInflater的错误用法

    转自:http://www.doubleencore.com/2013/05/layout-inflation-as-intended/ Layout inflation is the term us ...

  2. 如何使用Total Recorder录制网上的音乐,如何下载只能试听的歌曲

    1 在网上找到了对应的网站.其中正在播放的歌曲正是我们想要的 2 在地址栏输入上面音乐网站的网址,并点击捕获广播.(URL直接给出了音乐的完整地址,比如http://www.someserver.co ...

  3. js绝招

    1.JS判断 function IsDigit(cCheck) { //判断是否是数字return (('0'<=cCheck) && (cCheck<='9')); } ...

  4. PHP MySQL -处理语句

    PHP MySQL 预处理语句 预处理语句对于防止 MySQL 注入是非常有用的. 预处理语句及绑定参数 预处理语句用于执行多个相同的 SQL 语句,并且执行效率更高. 预处理语句的工作原理如下: 预 ...

  5. 使用javacv录像,同时进行讯飞声纹认证

    由于最近的demo中需要在活体检测的同时进行音视频录制 ,  尝试使用MediaRecord和camera来录制视频 , 然而Camera.onPreviewFrame 不能与 MediaRecord ...

  6. No configuration found for the specified action解决办法(转)

    使用Struts2,配置一切正常,使用常用tag也正常,但是在使用<s:form>标记时,发现控制台总是输出警告信息, 警告信息内容如下: 警告: No configuration fou ...

  7. poj 1879 Truck History

    本题链接:点击打开链接 题目大意: 输入n表示卡车辆数,输入每辆卡车编号.即长度为7的字符串,每辆卡车编号均可由其他类型编号衍生过来,求由当中一辆衍生出其他全部的最小衍生次数(有一个字符不同就需衍生一 ...

  8. 一些面试基本知识(Android篇一)

    Android Activity设计模式之MVC模式(介绍MVP之前的引子) 參考博客.文章 http://www.cnblogs.com/liqw/p/4175325.html MVC即Model- ...

  9. Ubuntu系统安装VMware Tools的简单方法

    不少网友反映在VMWare虚拟机下安装Ubuntu系统后无法安装VMware Tools,这里给出一个简单方法,只需要几步即可解决. 第一步:进入系统后,点击虚拟机上的安装vmware tools,回 ...

  10. maven Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.12.4

      maven Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.12.4 CreateTime--201 ...