首先下好装有eda工具的虚拟机

准备一个简单的全加器代码full_add.v,一个验证代码tb.v(csdn都是,我就不贴了)

1.终端输入命令:vcs -full64 tb.v full_add.v -l readme.log +v2k -debug_all(跑了一个全加器的tb)
出现Error-[ITSFM] Illegal `timescale for module Module "top" has `timescale but previous module(s)/package(s) do not.编译时,要将带有`timescale或者宏定义的文件列在前面

-full64  VCS以64位运行

-l readme.log 用于将编译产生的信息放在log文件内

+v2k是使VCS兼容verilog 2001以前的标准

-debug_all用于产生debug所需的文件

2.   ./simv -l run.log开始仿真,终端可以看到tb中需要打印的信息

-l run.log记录终端上产生的信息

3.   ./simv -gui命令打开图形化界面DVE,选中所有信号 --> 右键Add to Waves --> New Wave View

点击蓝色向下小箭头就可以看到波形了

4.使用-f 命令

以上已完成VCS基本的使用,下面我们考虑一个更复杂的情形。假设现在顶层模块变得十分复杂,里面包含很多的 .v 文件,我们再像之前那样将所有文件敲在终端上便很麻烦。编译选项-f可以解决这个问题

在工作目录下新建一个tc.f文件,将所用到的verilog源码以及路径写入文件,并保存退出,使用-f tc.f 选项,即可将.f文件里的源码全部编译

vcs -full64 -f tc.f  -l readme.log +v2k -debug_all

1) -R 编译后立即运行,即编译完成后立即执行 ./simv

2) -Mupdate 源文件有修改时,只重新编译有改动的.v文件,节约编译时间。

3) -sverilog 打开对Systemverilog的支持,编译Systemverilog文件时使用。

4) -timescale=1ns/1ns 设置仿真精度

5) -o simv_file 编译默认产生的可执行文件为simv,可以使用 -o 更改可执行文件名

5.使用makefile文件编译

当使用到VCS更多其他功能时,编译选项会变得很长,在终端上一个一个敲变得十分不方便,我们便可以使用makefile来帮助我们编译仿真。在工作目录下新建一个makefile文件

.PHONY:com sim clean
OUTPUT = full_adder
VCS = vcs -sverilog +v2k -timescale=1ns/1ns   \                     -debug_all                           \-o ${OUTPUT}                           \-l compile.log                     \
SIM = ./${OUTPUT} -l run.log
com:${VCS} -f verilog_file.f
sim:${SIM}
clean:rm -rf ./csrc *.daidir *.log simv* *.key

在终端输入make sim 相当于

./full_adder -l run.log

vcs使用一分钟速通相关推荐

  1. 5分钟速通 AI 计算机视觉发展应用

    作者 | 李秋键 出品 | AI科技大本营(ID:rgznai100) 计算机视觉是进步最大.发展最快的领域之一.根据 Global VIEW 的研究,全球计算机视觉市场规模在 2020 的价值为 1 ...

  2. (3分钟速通)Visual Odometry的特征点法和直接法

    光流法:(https://zhuanlan.zhihu.com/p/537113460) ​ 编辑切换为居中 添加图片注释,不超过 140 字(可选) ​ 编辑切换为居中 添加图片注释,不超过 140 ...

  3. (1分钟速通面试) 矩阵分解相关内容

    矩阵分解算法--总结 QR分解 LU分解 本篇博客总结一下QR分解和LU分解,这些都是矩阵加速的操作,在slam里面还算是比较常用的内容,这个地方在isam的部分出现过.(当然isam也是一个坑,想要 ...

  4. 10分钟速通人工智能导论

    总框架: 状态空间图:就是抽象化一下问题. 图搜索: A*算法: 遗传算法: 编码:二进制编码 群体设定:随机产生一定数目的个体,从中挑选最好的个体加到初始群体中.这种过程不断迭代,直到初始群体中个体 ...

  5. Git入门学习笔记(10分钟速通)

    一.Git概述 官网翻译: Git 是一个免费的开源 分布式版本控制系统,旨在快速高效地处理从小型项目到大型项目的所有内容. Git易于学习, 体积小,性能快如闪电.它超越了 Subversion.C ...

  6. 78折用计算机怎么算,一分钟速算口诀,计算速度秒杀计算器

    今天,学习方法网小编为大家精心整理了一分钟速算口诀的相关内容,供大家学习! 一分钟速算口诀,计算速度秒杀计算器 两位数相乘,在十位数相同.个位数相加等于10的情况下,如62×68=4216 计算方法: ...

  7. (13)python 字典 2 分钟速解

    本系列文章将会以通俗易懂的对话方式进行教学,对话中将涵盖了新手在学习中的一般问题.此系列将会持续更新,包括别的语言以及实战都将使用对话的方式进行教学,基础编程语言教学适用于零基础小白,之后实战课程也将 ...

  8. 北方工业大学计算机专硕分数线,北方工业大学法硕:近三年分数线汇总,一分钟速了解详细...

    原标题:北方工业大学法硕:近三年分数线汇总,一分钟速了解详细 北方工业大学法硕考研分数线已经公布,今年的分数线是升是降呢?科教园法硕的老师为法硕考研人,汇总了近3年分数线,一起来看看吧!北方工业大学法 ...

  9. xml建模包括以下_建模干货,1分钟速学,Photoscan空三结果完美导入CC

    ​关注公众号"三维前沿",获取更多倾斜摄影.激光点云资讯. 相信大家都经历过 有时CC空三总是失败或错误 最崩溃的是 一顿操作猛如虎,定睛一看原地杵 此时 Photoscan空三能 ...

最新文章

  1. 第8章3节《MonkeyRunner源码剖析》 5
  2. 为什么 CAPTCHA 变得越来越难?因为 AI 更聪明了
  3. How to include custom library into maven local repository?--转
  4. CSS中display:block、inline、inline-block
  5. X5开发中buttongrounp对应contents组件切换时速度快点无效
  6. Machine Learning——octave矩阵操作(2)——DAY3
  7. [转载] Python-科赫雪花(科克曲线)
  8. win10安装ipython_win10下安装Anaconda的教程(python环境+jupyter_notebook)
  9. [转载]Ubuntu 14.04设置固定ip
  10. 计算机更新bios,小编教你如何升级bios
  11. 巨头争云存储祭免费旗 或重演视频业消耗战
  12. asp cstr 函数
  13. runtime error解决方法
  14. PCM开发板模块实验指导--无刷马达实验
  15. 页脚html模板,怎样用Photoshop设计漂亮的网页页脚模板实例教程
  16. 怎么翻译Excel表格?两个方法可以轻松翻译Excel
  17. ps4帧数测试软件,《地平线:零之黎明》PS4/Pro帧数测试 优化极佳
  18. C语言单元测试框架——CUnit
  19. CAS详解,如何理解CAS!
  20. java中反射机制的含义_java的反射是什么意思?

热门文章

  1. 知到网课葡萄酒的那些事儿考试试题(含答案)
  2. 夜访阿里总部:实拍双11背后神秘的程序员!
  3. 国防科技大学 计算机硬件技术基础,国防科技大学--操作系统教程【40讲】--罗宇...
  4. 苹果微信浏览器html缓存图片吗,h5清理微信浏览器网页缓存
  5. 使用Protege创建本体、进行推理
  6. probability是什么意思_probability是什么意思_probability怎么读_probability翻译_用法_发音_词组_同反义词_可能性-新东方在线英语词典...
  7. 就现在!体验高科技的虚拟孪生
  8. 台式计算机的计算器,台式计算器,desktop calculator,音标,读音,翻译,英文例句,英语词典...
  9. c语言中哪个是错误的常量,以下所列的C语言常量中,错误的是__________ 。
  10. mysql表的增删改select 和 where