一、常用概念
gvim:编辑器,verilog的代码在此编辑器上进行编写;
vcs:编译器,将所写的代码进行编译——代码“翻译”为可执行文件;进行仿真,仿真完成后可进行波形查看(仿真部分需加强学习);
verdi:波形查看,可视化。可执行文件通过verdi进行波形查看;
在linux系统中,大部分命令是通过终端的代码进行执行:
二、终端操作
1、文件操作
1、前段代表在哪个文件夹内:使用 ls 文件夹名 打开该路径下所有文件夹,输入某个文件夹前部分,可用TAB键自动带出全名;
2、使用 cd 文件夹名 进入该层级文件夹,进行相应操作;
必须依次进入
3、使用 cd ../ 返回上一级文件夹;
4、使用 clear 刷新终端内容,相当于翻页,上滑能看之前的命令内容(等价 Ctrl+i);使用 reset 完全刷新终端;
2、软件操作
gvim
1、新建源码文件:使用 g 文件名 打开gvim进行代码编写;保存后就在该目录下;
2、打开已有源代码文件:在源代码文件的目录下打开,再使用 g 文件名 打开gvim进行代码编写;
3、除了源码,还需编写tb文件来配置端口、时间,用于后续编译和波形查看;testbench文件,申明仿真的单位和精度;
vcs
1、使用vcs对源码文件和testbench文件进行仿真编译:
生成在单独文件夹中,实例放在3中;
先进入3文件夹,然后终端输入命令vcs - full64 - R ../2/tb.v ../1/test.v -P ${VERDI_HOME}/share/PLI/VCS/LINUX64/novas.tab ${VERDI_HOME}/share/PLI/VCS/LINUX64/pli.a
必须在相应文件夹中执行该操作;因tb.v中定义了时间,所以该文件放置在前,后续verdi一样;
( -P ${VERDI_HOME}/share/PLI/VCS/LINUX64/novas.tab ${VERDI_HOME}/share/PLI/VCS/LINUX64/pli.a 该段代码为解决
在仿真的时候,如果需要dump fsdb波形文件,报错:
Undefined System Task call to '$fsdbDumpfile'.
Undefined System Task call to '$fsdbDumpvars'.) 暂时未知原因和能否在环境配置中解决
verdi
1、执行文件:
在仿真编译生成的文件夹中执行:verdi ../2/tb.v ../1/test.v -ssf tb. fsdb
2、查看波形:
选中信号,Ctrl+w,查看波形;
3、拉大信号,方便查看:
鼠标按住波形下拉;