[Notes] nlint使用笔记

nlint注意事项

想要知道一些常用操作,或者看到了不懂的地方,第一时间找软件的help,在软件界面左上角或者右上角!!!

rule的help是在软件的右上角。

比如想知道这个规则具体是什么样子,就找help里面,既有详细的说明,又有可供参考的例子。

如果找不到,可以在论坛找工具的资料,例如在eetop等(eetop虽然要充值,但是资料真的是很多,大家自己权衡)。

导入设计之后,应当先点击 run->project setting,看一下module top是不是我们希望的顶层。

如果不是我们预期的顶层,则需要修改为正确的顶层,因为nlint只检查顶层及其以下的文件。

nlint启动

在linux 脚本里面写

nLint -gui -verilog -2001 -beauty -detail -ex_clk -top $top_module -rs $rsfile -f ../scripts/lint_flist -out lint.log

-gui是可视化界面

-verilog -2001是输入规则

-beauty是整理文本,让文本整齐

-detail 具体含义还不知道

-ex_clk 具体含义还不知道

-top 是选取顶层文件  $top_module 

在文件另外的地方写 top_module = spi_top,这样顶层是spi_top

-rs $rsfile是选择规则文件  rsfile = nlint_rules.rs

-f ../scripts/lint_flist 是其他文件

-out lint.log 是输出报告文件

上述有些操作也可以在可视化界面操作,比如rs文件load,可以在tools->rule organizer里面操作,file->open->browse找到rs文件即可

nlint规则

首先说一下,nlint的help在顶部右侧,详细的内容看help。

在规则界面

E/D就是enable/disenable的意思,也就是启用还是不启用的意思

TOFF是 suppress by translate off pragma的意思。

在help找到如下描述

this command allows you to set the current rule to be suppressed by the Synopsys pragma // synopsys translate_off one by one . the pragma will suppress the synthesizable or non-synthesizable rules for coding style checking.

this is a toggle switch,which means that if the current rule is suppressed by the pragma,clicking this command will disable the suppression

结合上面两个内容来看,suppress by translate off pragma,我是这么理解的。

当verilog出现了 //synopsys translate_off      //synopsys translate_on 这两个语句,和其中间的代码时,由于我们编写者认为,这中间的代码是用来辅助仿真的,而不是用来综合。

但是nlint可能还是会检查出来说,诶,你这一段代码里面有错,它是不可综合的。

我们编写者本身就知道它是不可综合的,所以我们觉得这样子检查是没有必要的,此时,我们就会勾选

TOFF这个这个框框。

severity是选择严重等级的操作有10级可选

argument1 

argument2

这两个是参数的意思,有些规则是有参数的,比如规定函数的堆栈深度超过哪个值就报警,它会放出一个参数来让你填,你填1000,那么只有在堆栈深度超过1000的时候会报错

indexname颜色不同,是因为根据的语法规则不同,例如verilog 2001和system verilog的语法不同,它的这个框的颜色就不同

  • 7
    点赞
  • 48
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Verilog nlint是一款Verilog语言的静态代码分析工具,用于检查和修复代码中的错误和问题。该工具可以帮助工程师提高代码的质量和可靠性,确保设计符合规范和最佳实践。 使用Verilog nlint的第一步是安装该工具。用户可以从官方网站或其他可靠渠道获取nlint的安装包,并根据提供的安装说明进行安装。安装完成后,用户可以在命令行或终端窗口中使用nlint命令。 在使用Verilog nlint之前,用户需要准备好待检查的Verilog代码文件。可以是单个文件或多个文件的集合。在命令行中,用户可以使用nlint命令,后面跟随待检查代码文件的路径和文件名。例如:nlint /path/to/file.v。 nlint将会对代码进行静态分析,并在命令行上显示检查结果。用户可以根据显示的信息,查找和修复代码中的问题。nlint会检查代码中的语法错误、未定义信号、未使用信号、死代码等问题,并提示用户进行修正。 除了基本的检查功能,Verilog nlint还提供了一些高级功能,如代码覆盖率统计和时序分析。用户可以通过添加不同的命令行选项来启用这些功能。例如,使用“--coverage”选项可以生成代码覆盖率报告,使用“--timing”选项可以进行时序分析。 总的来说,Verilog nlint是一款强大的Verilog代码分析工具,可以帮助用户发现和修复代码中的错误和问题。通过使用nlint,用户可以提高Verilog代码的质量和可靠性,减少出错的风险,并加速开发过程。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值