#“#”为注释

#删除原有工程,需重启Modelsim

#vdel -all -lib work

#退出当前仿真

quit -sim

#清空命令行显示

.main clear

#创建库,是实际存在的物理库

vlib ./lib
vlib ./lib/design_work
vlib ./lib/sim_work
vlib ./lib/altera_work

#映射逻辑库到指定的物理库

vmap d_work ./lib/design_work
vmap s_work ./lib/sim_work
vmap a_work ./lib/altera_work

#编译代码文件到逻辑库

vlog -work s_work ./tb_serial_detec.v
vlog -work d_work ./../design/*.vo
vlog -work a_work ./altera_lib/*.v

#连接逻辑库,并启动仿真

vsim -t ns -sdfmax tb_serial_detec/serial_detec_inst=serial_detec_v.sdo -voptargs=+acc -L s_work -L d_work -L a_work s_work.tb_serial_detec

#状态机中状态的定义,用于显示

virtual type {
{0x001 s0}
{0x002 s1}
{0x004 s2}
{0x008 s3}
{0x010 s4}
{0x020 s5}
{0x040 s6}
{0x080 s7}
{0x100 s8}
} new_state

virtual function {(new_state)/tb_serial_detec/serial_detec_inst/c_state} state

#添加波形

add wave -divider {tb_serial_detec}
add wave -color yellow tb_serial_detec/*
add wave -divider {serial_detec}
add wave -color blue tb_serial_detec/serial_detec_inst/sclk
add wave -color blue tb_serial_detec/serial_detec_inst/rst_n
add wave -color blue tb_serial_detec/serial_detec_inst/i_bit
add wave -color blue tb_serial_detec/serial_detec_inst/detec_success

#状态机状态显示

add wave -color red tb_serial_detec/serial_detec_inst/state

#设定仿真运行时间

run  50us

Modelsim仿真.do脚本示例的更多相关文章

  1. Modelsim仿真tcl脚本与wave.do文件

    Modelsim的仿真,如果一直使用图形界面建工程,编译,仿真,一个个加入观察波形的话,未免复杂了一些,尤其是当工程较大,需要观察的信号较多时,下面贴出一些常用的tcl脚本命令和wave.do常用语法 ...

  2. Modelsim的自动化脚本仿真平台

    自动化仿真平台由tcl语言搭建,大规模设计使用此平台让仿真便捷不少.大体上用tcl语言进行modelsim仿真的流程如下: 1. 建立库 2. 映射库到物理目录 3. 编译源代码 4. 启动仿真器 5 ...

  3. modelsim仿真基本流程

    好久没再用过modelsim,都忘的一干二净了.刚换了份工作,又要重新拾起来,不过现在感觉modelsim的仿真其实是比较快的,很有用处.再者这么长时间老是学了忘,忘了再学,觉得真浪费时间,平时确实应 ...

  4. Vivado级联Modelsim仿真Re-launch问题

    前两天在群里看到有朋友说Vivado级联Modelsim仿真出现修改设计代码后重新run do文件,波形没有随着代码修改而改变,这个问题博主之前没有注意到,因为把Vivado和Modelsim级联好后 ...

  5. Modelsim仿真新手入门最详细教程

    2021年11月15日 00 安装包/版本 我是提前在网上下好的(但这一点也给我的实验造成了"麻烦"),用的是Modelsim SE-64 2020.4版本的,学校实验室的似乎不同 ...

  6. 45.modelsim仿真include文件

    modelsim仿真include文件会出现找不到文件的情况,这是因为include文件路径有两种,一种是相对路径,另一种是绝对路径. 相对路径: 如果 ‘include "primitiv ...

  7. 14.quartus联合modelsim仿真

    在quartus调用modelsim仿真过程中,出现了一个错误,如下所示: Check the NativeLink log file I:/Quartus11.0/Myproject/testi_n ...

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

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

  9. modelsim 仿真时出现无限迭代(iteration reach limitation)的原因及其解决办法

    modelsim 仿真时出现无限迭代(iteration reach limitation) 出现这种故障的原因:  一般都是代码里出现的组合逻辑无限循环或者组合逻辑A产生signal_A,signa ...

随机推荐

  1. Mybatis学习之一

    mybatis是目前市面上最流行的ORM框架之一,作为JavaEE程序员,在工作中不可能不用到mybatis.所以为了工作,为了学习,为了个人的发展,每个JavaEE程序员都要学习,学会mybatis ...

  2. 关于Ocelot和Consul 实现GateWay(网关) 服务注册 负载均衡等方面

    Ocelot   路由  请求聚合  服务发现 认证  鉴权 限流熔断 内置负载均衡器 Consul   自动服务发现    健康检查 通过Ocelot搭建API网关   服务注册   负载均衡 1. ...

  3. selenium “could not be scrolled into view”

    学习selenium对话框处理出现错误 a.py内容: from selenium import webdriver import timedriver = webdriver.Firefox()dr ...

  4. 3 - Two Pointers Algorithm

    5. Kth Largest Element (quick sort的变种) https://www.lintcode.com/problem/kth-largest-element/descript ...

  5. NopCommerce源码架构详解

    NopCommerce源码架构详解--初识高性能的开源商城系统cms   很多人都说通过阅读.学习大神们高质量的代码是提高自己技术能力最快的方式之一.我觉得通过阅读NopCommerce的源码,可以从 ...

  6. python多线程采集

    import requests import json import threading Default_Header = { #具体请求头自己去弄 } _session=requests.sessi ...

  7. 一条shell命令让多台Linux服务器执行

    1.环境 局域网环境有3台Linux服务器,配置host文件 [root@master1 ~]# vim /etc/hosts 192.168.8.201 master1 192.168.8.202 ...

  8. Jenkins结合shell脚本实现(gitLab/gitHub)前端项目自动打包部署服务器

    原始发布部署: 石器时代的我们,先是本地打包好项目,在去服务器上把原来的文件删了,然后回到本地copy到服务器: 这操看起来简单,实际部署的人就知道多烦了,假如来几个项目都要重新发布:那就爽了: 今天 ...

  9. maven打jar包 没有主属性清单

    使用mvn clean package命令打包,java -jar 命令运行时,提示:“jar 包没有主属性清单”.修改pom文件后解决: <build> <plugins> ...

  10. js 取得当天0点 / 23:59:59 时间

    js 取得当天0点 / 23:59:59 时间   js 取得今天0点: const start = new Date(new Date(new Date().toLocaleDateString() ...