我们知道,由于NC-Verilog使用了Native Compile Code
的技术来加强电路模拟的效率,因此在进行模拟时必须经过compile(ncvlog
命令)以及elaborate(ncelab命令)的步骤。编译之后,针对每一个HDL设计单元会产生中间表达。接着elaborate命令会建立整个电
路的结构,产生可以用来模拟的资料。最后使用ncsim命令来进行模拟。
5 V8 |) z0 k; O. A+ `
三命令模式! \ q6 ^% l t, b) P
命令如下:
ncvlog -f run.f
; A! T" P ^0 v" y
ncelab tb -access wrc
0 K2 o- H6 I8 r- n0 _
ncsim tb -gui
第一个命令中,run.f是整个的RTL代码的列表,值得注意的是,我们需要把tb文件放在首位,这样可以避免出现提示timescale的错误。
第二个命令中,access选项是确定读取文件的权限。其中的tb是你的tb文件内的模块名字。
2 Y4 d. ], h+ z3 b8 U' R
第三个命令中,gui选项是加上图形界面
值得注意的是,在这种模式下仿真,是用“ - ”的。而下边要说的ncverilog是采用“ + ”的。
0 @0 v5 l+ Q9 B7 @
单命令模式0 R6 _. q) M, b7 _7 w7 N( h; p
& z* |7 h% f/ f% P' w, m$ B0 A! X
ncverilog +access+wrc rtl +gui
2 Z0 a3 f+ P U; h7 {. g! p0 a6 V
在这里,各参数与三命令模式相同。注意“ + ”。
3 z- V, }3 L* L3 Y
5 H5 t( O y0 l; F1 Y; e
在本文里将详细讲述ncverilog 的各种常用的参数,对于三命令模式,请读者自己查看资料。
+cdslib+... 设定你所仿真的库所在
9 }" b7 b5 Y( `( h2 N" X0 Y
6 @) [& k/ k" f$ O1 f
+define+macro ... 预编译宏的设定
: w# Z8 S. L$ |0 Y& j+ t7 s
- \- f( {! r" b3 j Q
+errormax+整数 当错误大于设定时退出仿真
( P" H# s/ Q7 Z
+incdir+path 设定include的路径
+linedebug 允许在代码中设定line breakpoint
0 k8 i( o4 S& v) d/ v/ h3 g
: r4 \" K" `4 I. c9 r
+log+logfile 输出到名为logfile的文件中
+status 显示内存和CPU的使用情况
+work 工作库
+access+w/r/c 读取对象的权限,缺省为无读(-w)无写(-r)无连接(-c)
+gui 显示图形交互界面
# t- B4 K3 e6 U0 v. z
( N0 N% W; |9 R- ]4 D
+input script_file 输入脚本文件
2 C/ Y( o2 J1 Z# V
+licqueque 如无licence等待licence
8 V, X7 Q7 G* S, i
+run 如果在GUI交互界面下, 启动后将自动开始仿真
+loadpli1=... 动态加入PLI
+ r% P* m3 W) d* k; W* S
0 Q5 M2 V- a; q* w
+timescale 设定仿真单位和精度
+nocopyright 不显示版权信息