ISE_Simulator学习记录

ISE Simulator 概述

使用ISim主要实现两个功能(要用CompXlib预编译芯片仿真库文件):1、创建VHDL或Verilog图形测试向量  2、使用硬件描述语言仿真器实现VHDL/ Verilog/混合设计的功能和时序仿真

设计特征、接口和流程

  • 支持的语言和标准

Language


Support


VHDL


IEEE-STD-1076-2000


Verilog


IEEE-STD-1364-2001


SDF


Xilinx’s NetGen generated SDF Files


VITAL


VITAL-2000


Mixed VHDL/Verilog


Yes


VHDL FLI/VHPI


No


Verilog PLI


No


System Verilog


No

  • 特征支持

Feature


Support


Incremental Compilation


Yes


Source Code Debugging


Yes


SDF Annotation


Yes


VCD Generation


Yes


Hard IP - MGT, PPC, PCIE, etc


Yes

  • 新手教程:Help > Tutorials > ISE Quick Start
  • 激励加载图形化表示:

  • 仿真信号波形变化视图(可改变数据显示类型):

  • 波形观察窗口:通过加载.xwv仿真结果记录文件实现波形的组合和显示等操作
  • 层次化连接端口显示;实例化元件窗口;逻辑部件窗口;仿真控制窗口(仿真信息查看并进行tcl命令的仿真控制和运行)
  • ISE仿真工具快捷键

  • 常用快捷键

Shortcut Key


Function


F5


Refresh


F6


Zoom Full View


F7


Zoom Out


F8


Zoom In


F9


Zoom to Box


Ctrl+Shift+Left Mouse Button


Mouse Drag Zoom


Key Sequence


Test Bench Waveform Menu Command


Alt+T, E


Set End of Test Bench


Alt+T, R


Rescale Timing


Alt+T, S


Set "Result File" Name


Alt+T, V


Goto Previous Transition


Alt+T, X


Goto Next Transition


Alt+T, I


Goto Time


Alt+T, G


Goto Marker menu


Alt+T, F


Find Signal


Alt+T, M


Marker Menu


Alt+T, Z


Zoom Menu


Alt+T, C


Close Windows


Key Sequence


Simulation Menu Command


Alt+U, R


Restart


Alt+U, S


Stop


Alt+U, T


Step


Alt+U, A


Run All


Alt+U, U


Run For Specified Time


Alt+U, V


Goto Previous Transition


Alt+U, X


Goto Next Transition


Alt+U, I


Goto Time


Alt+U, G


Goto Marker menu


Alt+U, F


Find Signal


Alt+U, M


Marker Menu


Alt+U, Z


Zoom Menu


Alt+U, E


End Simulation

ISim仿真流程

ISim可以实现GUI/命令行形式的行为级仿真,其仿真流程如下框图所示

测试向量波形生成编辑器

可在不使用HDL或其它脚本语言的情况下,利用TBW指定测试激励的值和长度。同时可以随时利用命令View Generated Test Bench as HDL process将波形激励转化成HDL语言形式。在窗口可进行端口的重命名、添加和删除等操作。

  • 创建测试激励波形(Project > New Source、Test Bench Waveform类、完成设置)
  • 初始化时间和时钟(在向导框内指定时间单元、选择GSR/PRLD文件并指定步长,xilinx强烈建议保留默认的100ns,以保持同GSR/PRLD周期的一致性)
  • 添加异步时钟支持(选中向导框右下角Add Asynchronous Signal Support,指定各信号对应的控制时钟)
  • 指定时钟类型(Single Clock, Multiple Clocks, or Combinatorial (or internal clock))
  • 使用标记线提取特定时间的波形值(时间标记线;事件间的动作标记和时间差显示)
  • 测试终止时间修改(Test Bench > Set End of Test Bench)
  • 选择部分信号集,可右键修改显示Long Name or Short Name
  • 拖拽添加/移动/删除信号;增删信号分频器;改数显格式;Test Bench > Go To Next/Previous Transition or Simulation > Go To Next/Previous Transition进行标记线单周期移动;查找信号/资源;利用HDL修改信号参数
  • Test Bench > Set "Result File" Name重命名结果文件
  • Waveform Color preference settings修改波形显示颜色
  • 修改时间尺度和打印波形文件操作

设计仿真

创建波形仿真文件/HDL仿真文件/加载已有文件->利用菜单/快捷键/tcl命令运行仿真(可设置断点);使用DO文件仿真->步进仿真->停止仿真->保存仿真结果

仿真波形查看和分析

  • 显示信号值(ASCII, binary, decimal (signed or unsigned) or hexadecimal):鼠标点击某时间点、使用 go to time 命令、导向时间标签、用 go to next/previous transition
  • 标记线Marker:横切波形的垂直线,包含时间标记线(依据时间放置)和动作标记线(由顶部的蓝色水平线连接的两个灰色/蓝色垂直线,放置于特定位置)
  • Test Bench > Go to Time或Simulation > Go to Time
  • 信号长短名切换、增删信号、添加信号分频器
  • 组团:通过信号的选择和右键实现添加、删除操作

使用仿真控制窗口和设计调试

  • 在控制窗口查看相关错误、警告和关键信息
  • 输入仿真命令
  • 调试主要通过控制代码在可能出错的地方暂停和数批处理据分析(逐行前进、设置断点)

仿真命令

批处理命令

HDL语言支持、第三方命令仿效

由于命令的种类多,参数和使用复杂,这里从略。。。

推荐学习

文档程序:Xilinx ISE Help/Software Help/ISE Simulator (ISim) Help

时间: 2024-08-06 14:24:41

ISE_Simulator学习记录的相关文章

Python学习记录-2016-12-17

今日学习记录 模块: import os#导入os模块 import sys#导入sys模块 os.system("df -h")#执行df -h命令 cmd_res = os.popen("df -h").read()#将命令的返回结果赋值给cmd_res,如果不加入.read()会显示命令的返回加过在内存的位置 print(sys.path)#显示系统变量路径,一般个人模块位于site-packages下,系统模块位于lib下 print(sys.argu[2]

Objc基础学习记录5

NSMutableString类继承的NSString类. NSMutableString是动态的字符串. 1.appendingString 方式: 向字符串尾部添加一个字符串. 2.appendingFormat:可以添加多个类型的字符串. int,chat float,double等 3.stringWithString 创建字符串, 4.rangeOfString 返回str1在另一个字符串中的位置. 5.NSMakeRange(0,3) 字符串0位到3位. 6.deleteCharac

Windows API 编程学习记录<二>

恩,开始写Windows API编程第二节吧. 上次介绍了几个关于Windows API编程最基本的概念,但是如果只是看这些概念,估计还是对Windows API不是很了解.这节我们就使用Windows API 让大家来了解下Windows API的用法. 第一个介绍的Windows API 当然是最经典的MessageBox,这个API 的作用就是在电脑上显示一个对话框,我们先来看看这个API的定义吧: int WINAPI MessageBox(HWND hWnd, LPCTSTR lpTe

Windows API 编程学习记录<三>

恩,开始写API编程的第三节,其实马上要考试了,但是不把这节写完,心里总感觉不舒服啊.写完赶紧去复习啊       在前两节中,我们介绍了Windows API 编程的一些基本概念和一个最基本API函数 MessageBox的使用,在这节中,我们就来正式编写一个Windows的窗口程序. 在具体编写代码之前,我们必须先要了解一下API 编写窗口程序具体的三个基本步骤:             1. 注册窗口类:             2.创建窗口:             3.显示窗口: 恩,

Python学习记录day6

Python学习记录day6 学习 python Python学习记录day6 1.反射 2.常用模块 2.1 sys 2.2 os 2.3 hashlib 2.3 re 1.反射 反射:利用字符串的形式去对象(默认)中操作(寻找)成员 cat commons.py #!/usr/bin/env python#_*_coding:utf-8_*_''' * Created on 2016/12/3 21:54. * @author: Chinge_Yang.''' def login(): pr

Python学习记录-2016-11-29

今日学习记录: 心灵鸡汤: 要有合适自己的目标,一个目标一个目标实现,切忌好高骛远: 最好的投资就是投资自己: 实现梦想 学习,学习,再学习: Talk is cheap. 从本身而言,余三十而立之年,从事测试行业7七年有余,一年半华为外包路由器,两年无线wifi测试,一年半网管软件测试,一年自动化测试经理,推行公司自动化测试进程,从开始的TCL,到现在的python,工欲善其事必先利其器,所以自己来学习,总体我认为我的目标是一直前进的,不断变化的,但是方向并没有大的错误,有些累,所以近期有些懈

程序的机械级表示学习记录

程序的机械级表示学习记录 X86的三代寻址方式 DOS时代的平坦模式,不区分用户空间和内核空间,很不安全. 8086的分段模式. IA32的带保护模式的平坦模式. 对于机械级编程的两种重要抽象 ISA:机械级程序的格式和行为,定义为指令集体系结构,它定义了处理器状态.指令的格式,以及每条指令对状态的影响. 虚拟地址:机器级程序使用的存储器地址,提供的存储器模型看上去是一个非常大的数组.存储器系统的实际实现是将多个硬件存储器和操作系统软件组合起来的. 在GCC中获得汇编代码与反汇编 获得汇编代码:

python 系统地学习记录

由头: python值得一学. 尝试一下写学习记录,看看效果. 1.记录一些不熟悉或者重要的知识点. 2.记录一些遇到的问题,标签 Question. 书:python基础教程(第2版) Chapter 1:基础知识 本章的内容熟悉即可. 比较重要的是字符串,单双引号转义,str,repr... Time 1.5 h  2015.8.31 23:09 版权声明:本文为博主原创文章,未经博主允许不得转载.

Java 静态内部类与非静态内部类 学习记录.

目的 为什么会有这篇文章呢,是因为我在学习各种框架的时候发现很多框架都用到了这些内部类的小技巧,虽然我平时写代码的时候基本不用,但是看别人代码的话至少要了解基本知识吧,另外到底内部类应该应用在哪些场合,我并不是很清楚,留下一些值得思考的问题作为记录,说不定以后能自己来填.于是就会有这篇文章啦. 常规使用方法我也不想介绍,网上一大把,我就说说比较容易错的,值得注意的地方. 注意 这篇文章只是分享一下我对内部类的一些研究与困惑吧,说不定对大家有帮助,说不定能引导大家一起思考学习.Java语法知识其实