日志档案

发表于 2008-7-10 13:28:02

1

标签: 无标签

[转帖]Ncverilog 常用命令使用详解

原帖:http://bbs.dicder.com/viewthread.php?tid=58
作者:5life" h+ s3 ]! t& J1 f  Y
工作状态:建立仿真环境
' c4 m; G! E, Z' c5 ~, q8 O, j( F, c4 T* a, _' D
    我们知道,由于NC-Verilog使用了Native Compile Code 的技术来加强电路模拟的效率,因此在进行模拟时必须经过compile(ncvlog 命令)以及elaborate(ncelab命令)的步骤。编译之后,针对每一个HDL设计单元会产生中间表达。接着elaborate命令会建立整个电 路的结构,产生可以用来模拟的资料。最后使用ncsim命令来进行模拟。
/ p& P; r5 Q( Q- R9 f
) n/ F  y& U. D/ u   三命令模式  _; Z' G, s0 B) X6 l9 ^
( [) r8 h6 c9 Q" B5 u
      命令如下:
' b+ e4 u3 ?9 P- E) I       ncvlog -f run.f
( Y3 O0 M( ^8 J# n( b) G       ncelab tb -access wrc( f' c; G  v5 g) b' @
      ncsim tb -gui4 [1 Q) d, c' W- ^% k. M
第一个命令中,run.f是整个的RTL代码的列表,值得注意的是,我们需要把tb文件放在首位,这样可以避免出现提示timescale的错误。  L5 \7 M8 F3 Z6 a% D5 o
5 N' S1 |2 h- ?: P
第二个命令中,access选项是确定读取文件的权限。其中的tb是你的tb文件内的模块名字。) i6 P# [2 V, y1 H& r; T3 S: y3 W

. `) ^9 e( m4 z& w7 K1 d3 H! H& R第三个命令中,gui选项是加上图形界面
; d& v) F2 e) F
/ y6 e  o5 k' o8 M) ]值得注意的是,在这种模式下仿真,是用“ - ”的。而下边要说的ncverilog是采用“ + ”的。
4 d, F0 n) k! r4 L2 f
$ t0 ]6 T/ g: h8 _     单命令模式
2 R* i7 J# U$ B8 i3 M
% b6 W+ m3 B3 ^7 m& h, A3 u- }      ncverilog +access+wrc rtl +gui
1 g; ~7 G' t, [) y      在这里,各参数与三命令模式相同。注意“ + ”。
. G1 J% a' b! ?/ O; j- V( w) e& y! {3 {0 U9 _! D+ e
      在本文里将详细讲述ncverilog 的各种常用的参数,对于三命令模式,请读者自己查看资料。( S* M7 J1 Q) J3 F: o3 n
     +cdslib+...                设定你所仿真的库所在* p$ ]$ V% d  f

7 O4 S, \8 x" z% s1 x      +define+macro ...      预编译宏的设定! {7 ^! E. q" {& c& @2 K+ @
: N2 w1 d8 p2 Z5 m
     +errormax+整数         当错误大于设定时退出仿真
- O! s  {: L4 b' _$ b- @* P5 `- t8 X0 Y) \' M; L
     +incdir+path             设定include的路径
! {' G  z! r" u' I1 x2 w+ {
6 Y1 k& Y$ D2 ?      +linedebug                允许在代码中设定line breakpoint
: l0 m- ~* G! B5 k# U$ b$ P) n: L" j) o$ t: l' I! z. P# }1 I) B
     +log+logfile               输出到名为logfile的文件中
! x9 S5 @2 {. y. f
( D1 N$ Z/ P) `  Q# J& Y      +status                     显示内存和CPU的使用情况
% a2 \6 g  {, Z+ S& ?
& `* b) [5 G* w; r8 t; ]+ q      +work                       工作库7 b* F8 _& f% k! p% p2 i7 h
# o5 R, N: Z- K& l# f
     +access+w/r/c           读取对象的权限,缺省为无读(-w)无写(-r)无连接(-c)
! Z( e! }& A- P) o4 x: |6 i, @, F& M" y9 N; u& G. H, Y0 d
     +gui                        显示图形交互界面: N9 T$ `+ G/ W9 W" {6 f* T
" }* L; m0 `" f4 Q- q# E
     +input script_file       输入脚本文件
3 _3 u$ h( Q2 |) p5 z% `8 ^! X5 j( y/ A$ ]* ]9 z' m- ^0 a; S& [
     +licqueque               如无licence等待licence) {; W" b7 R% g

7 y& R$ j- I1 f+ I6 m$ i      +run                       如果在GUI交互界面下, 启动后将自动开始仿真; r6 G0 F# P, x, D! G

. p* k7 Z* h. o: _: _  a! l      +loadpli1=...            动态加入PLI$ e  i1 G5 m* q! @; m
; Z5 A6 N3 M0 a, u
     +timescale               设定仿真单位和精度8 s' A) j8 M/ ]4 k  n  O

8 O- }/ Z: I& h5 C* z: s1 d3 R8 x" r      +nocopyright           不显示版权信息

系统分类: CPLD/FPGA   |   用户分类: 无分类   |   来源: 转贴   |   【推荐给朋友】   |   【添加到收藏夹】

    阅读(157)    回复(0)  

投一票您将和博主都有获奖机会!