文章目录

  • 0x01 NCverilog 简介
  • 0x02 NCverilog 仿真自动化
  • 0x03 执行仿真 & 查看结果

0x01 NCverilog 简介


NCverilog 是国际 EDA 巨头 Cadence 旗下的仿真软件。NCverilog 有 shell 和 GUI 两种版本,GUI 版本的叫做 NClaunch ,本文仅说 shell 版本的。
与 Windows 下的常用 EDA 软件 Modelsim/QuestaSim 不同,Linux 下的 EDA 软件通常是仿真和波形查看功能是分离的,比如 Synopsys 旗下的 VCS 和 Verdi 、以及轻量级开源 EDA 工具 Icarus-verilog 和 GTKwave。Cadence 的波形查看器称为 Simvision

0x02 NCverilog 仿真自动化


NCverilog 的三步命令模式有ncvlog(编译)ncelab(建立snapshot文件)ncsim(对snapshot进行仿真);同时也支持单命令模式,下面使用单命令编写 Makefile 实现自动化仿真:

# This is a Makefile for NCsimTbFileName  += "testbench"
SimFileList += "SimFileList"
RtlFileList += "RtlFileList"all:@echo "Start NCverilog......"ncverilog \+access+wrc \+nctimescale+1ns/1ps \-f SimFileList \-f RtlFileList@echo "NCverilog is Over!!!"clean:rm -rf ./INCA_libs ./*.shm

因为最终需要生成 Simvision 所支持的波形文件,即 .shm 文件,所以在 testbench 文件中需要加入以下语句;其中 TESTwave.shm 为 shm 文件名称,testbench 为顶层 tb module 的名称。

// generate shm File
initial begin$shm_open("TESTwave.shm");     // 打开波形保存文件wave.shm$shm_probe(testbench,"AS");    // 设置探针
end

0x03 执行仿真 & 查看结果


在 Makefile 所在目录执行 make 即可调用 NCsim 内核对 tb 文件进行仿真,仿真结束后停留在 NC 的命令行界面,此时可以使用 NC 的指令对仿真进行进一步操作,或者输入exit退出 NCverilog 命令行界面。
再打开一个终端输入simvision将会打开 simvision 界面,点击左上角的 File -> Open Database 选择生成的 .shm 文件,点击 Open 即可打开波形。


当更改设计或仿真文件后可以点击左上角 File->Reload Database 重新加载波形。

【原创】Ubuntu 下使用 NCverilog 仿真 Verilog 工程相关推荐

  1. ubuntu java反编译,[原创]Ubuntu下简单配置反编译工具以及其开发环境

    0x0:前言 个人电脑重新换了下系统,Ubuntu14.04,刚好需要配置下android的反编译环境,这里简单记录一下,以供有需要的朋友参考. 其实最简单的,只需要apktool就可以了,不过有编码 ...

  2. Ubuntu下cmake报错:The current CMakeCache.txt directory...is different from...

    先说一下个人使用的环境和建立工程的方式: 环境:ubuntu20.04+cmake+vscode, 建立的是C++工程. 方式:用的是较为简单的方式.建立一个工程目录,下面有一个build目录,一个c ...

  3. linux 下nc-verilog 仿真环境搭建,Cadence NC Verilog仿真教程

    这个手册将向你介绍使用 NC-Verilog simulator 和 SimVision. 本文使用的是一个用 Veilog 硬件编程语言编写的一个饮料分配机,通过这个例 子你将学会:  ·编译 Ve ...

  4. vscode在ubuntu下安装插件,同时配置python虚拟环境、ctrl+鼠标滚轮放大代码窗口设置

    linux下vs code 两大问题: 1.无法在code中切换虚拟环境 2.文件夹有时候会莫名其妙打不开,似乎和文件夹的命名有关系. 已弃坑,不再使用. ---------------------- ...

  5. 基于Quartus II+ModelSim SE的后仿真(Verilog版)

    基于Quartus II+ModelSim SE的后仿真(Verilog版) 一.Quartus 中的相关设置 在Quartus中建立名为counter的工程,设置仿真工具为ModelSim(Veri ...

  6. VCS+Verdi脚本化仿真Vivado工程流程

    前言 前面的章节对VCS+Verdi与Vivado的联合仿真,从软件安装.VCS编译vivado仿真库以及直接通过Vivado界面export出VCS仿真文件夹,可直接执行仿真流程. 本文介绍使用另一 ...

  7. modelsim独立仿真vivado工程

    由于现有笔记本带不动vivado自带的仿真工具,所以只能退而求其次,尝试用modelsim来仿真vivado工程.碰到这种软件问题,期间心酸,懂者自懂.故在此分享经验,以防不时之需,毕竟好记性不如烂笔 ...

  8. 在ubuntu下设置eclipse开发STM32等嵌入式设备

    之前为了能够让ROS与底层能够顺利通讯,我采用可开源开发板arduino ,因为arduino有ROS的库,能够按照ROS wiki上所给的教程就可以顺利的开发,但由于arduino的局限性,我觉得是 ...

  9. ubuntu下使用Eclipse下搭建c开发环境

    ubuntu下使用Eclipse下搭建开发环境基本上网上教程一大堆,但是复杂度太大,因为很多教程都是从JDK开始安装一直到最后,而且很多都是从别的linux发行版上弄来的方法,各种编译直接吓死人有木有 ...

最新文章

  1. gprof 性能优化工具
  2. div布局的几点体会
  3. python编程 从入门到实践豆瓣-三周刷完《Python编程从入门到实践》的感受
  4. php 后台配置系统,使用 laravel-admin 配置后台管理系统
  5. 在Ubuntu为Android硬件抽象层(HAL)模块编写JNI方法提供Java访问硬件服务接口 6...
  6. typecho 去掉index.php,typecho如何去掉index.php
  7. linux -- at命令
  8. django框架中的模型
  9. 在5分钟内将Spring Boot作为Windows服务启动
  10. 计算机程序和系统股票走势分析,证券走势指标匹配分析系统的设计与实现
  11. 2019CCPC网络预选赛 八道签到题题解
  12. 深入理解 Node.js 中 EventEmitter源码分析(3.0.0版本)
  13. sqoop连接mysql_sqoop安装
  14. 中国物联网激荡 20 年
  15. springBoot(5)---单元测试,全局异常
  16. 基于matlab的高等数学,基于MATLAB的高等数学问题求解
  17. 【上网】微信能上网,谷歌浏览器上不了网,怎么解决?
  18. 目录-Amira用户指南
  19. 在Linux Mint上玩转蓝牙机械键盘
  20. 利用闲置笔记本电脑搭建linux服务器并布置自己的网站

热门文章

  1. k8s学习笔记(一)
  2. windows注册表命令大全
  3. c语言程序设计教程上机报告,华中科技大学标准C语言程序设计上机试题、答案及报告格式...
  4. Fastly 全球规模边缘云计算实践
  5. Linux 7 (RedHatCentOS)静默安装 Oracle11.2.0.4
  6. (二-1)多码之间的进制转换【计算机组成原理】
  7. [创业之路-51] :动态股权机制 -6- 创始团队股权比例如何分配比较合理
  8. 7-15 计算圆周率
  9. 零基础学习大数据分析难吗?
  10. b和B的区别?大B与小b的区别(Bps与bps)以及b、B、KB、MB、TB、PB、EB的换算