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) beginif(reset)out<=0;elseout<=out+1;
endendmodule

(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 beginclk=0;reset=0;#DELY reset=1;#DELY reset=0;#(DELY*200) $finish;
endinitial $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

Xilinx ISE 联合 modelsim 进行功能和时序仿真相关推荐

  1. ISE联合Modelsim仿真失败的解决办法

    问题: ISE联合Modelsim进行功能仿真,但是Moldelsim唤起失败,显示错误为:编译库的路径未包含.如下: 解决: 由报错信息,错误原因为:编译库的路径未包含.需要添加编译库路径: 点击P ...

  2. 基于FPGA的DDS算法实现(可调幅值,附ISE联合Modelsim仿真结果)

    基于FPGA的DDS算法实现(附ISE联合Modelsim仿真结果) 声明:这篇博客是在充分参考前人成果的基础上写成的,如有侵权,请联系我作进一步处理.此外,这是我第一次写博客,描述不准确之处敬请指出 ...

  3. TD联合Modelsim进行功能仿真

    TD联合Modelsim进行功能仿真 1 引言 2 基本配置流程 2.1 TD软件设置操作 2.2 Modelsim软件方面设置 1 引言    最近在接触使用国产安路科技公司的FPGA进行相关的开发 ...

  4. Xilinx ISE 调用 ModelSim SE 库编译

    在d:\ModelTech_6.1d\下建立新目录,并命名为Xilinx_Lib      到DOS环境下(命令行),并切到ISE安装目录下\Bin\Nt (dir D:\xilinx\bin\nt) ...

  5. ISE联合Modelsim进行仿真

    一.Modelsim10.4 安装过程 参考:https://blog.csdn.net/cheweng4363/article/details/94763687 1.运行安装包 之后一路安装,遇到创 ...

  6. Xilinx ISE系列教程(6):ModelSim联合仿真

    文章目录 @[toc] 1. ModelSim下载.安装与注册 2. 编译Xilinx仿真库 3. ini文件修改 4. 在ISE中使用ModelSim 5. 示例工程下载 本文是Xilinx ISE ...

  7. Xilinx_ISE和ModelSim的联合使用方法 / 从Xilinx ISE 14.7启动ModelSim时遇到的问题

    解决方法: 前提是安装了 xilinx ise14.7 和modelsim se 10.1a 1〉从Windows的Start Menu开始,Xilinx ISE Design Suite 14.7 ...

  8. [转帖]ISE与Modelsim联合观察中间信号

    如何仿真IP核(建立modelsim仿真库完整解析) 来源:http://www.ednchina.com/ART_49023_19_0_AN_7116cf44.HTM IP核生成文件:(Xilinx ...

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

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

最新文章

  1. JavaScript语言精粹_JSON
  2. LVS+keepalived构建PXC高可用集群
  3. MapXtreme 2005学习(3):向图层中添加线段
  4. DCMTK:演示状态查看器-打印服务器
  5. C++子类析构时要调用父类的析构函数吗?
  6. .NET Core 3.0 可回收程序集加载上下文
  7. Struts2的Action配置的各项默认值
  8. PyTorch导出JIT模型并用C++ API libtorch调用
  9. Docker系列文章索引
  10. [转载]网页栅格系统研究(3):粒度问题
  11. python tab补全
  12. 持续集成工具集之六 参考
  13. 把项目通过maven生产源码包和文档包并发布到自己的私服上
  14. 使用JAVA命令查看JVM参数
  15. mysqldump 工具使用详解——参数选项
  16. adb 命令获取ip和mac地址
  17. 019 Linux tcpdump 抓包案例入门可真简单啊?
  18. c语言编程最大公约数教程说明,C语言:最大公约数。
  19. 交叉熵、KL散度、Jeffery分歧、JS散度
  20. Unity | 连线题_画直线的方法

热门文章

  1. 计算机模块电源电路图,用于计算机电源模块的稳压电源电路
  2. CAN转以太网的通道工作模式TCP和UDP有哪些区别?
  3. VMware--SR-IOV
  4. docker与gosu-阿里云开发者社区
  5. BEA助力信达资产实现无纸化办公
  6. 山西省审计计算机培训,山西省审计厅审计管理系统(OA)正式投入使用
  7. 若依管理系统部署(SpringCloudAlibaba)
  8. 初学miniui之miniui的使用
  9. 油酸修饰的Fe3O4磁性纳米颗粒,OA@Fe3O4,Oleic acid-Fe3O4
  10. “虽无彩凤双飞翼,确有巧处一线通”——明基PD2710QC显示器体验