前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >emacs中调用verible lint来检查verilog语法

emacs中调用verible lint来检查verilog语法

作者头像
ExASIC
发布于 2025-03-17 12:48:00
发布于 2025-03-17 12:48:00
14920
代码可运行
举报
文章被收录于专栏:ExASICExASIC
运行总次数:0
代码可运行

介绍emacs中调用verible lint来检查verilog语法方法。

一、安装verible

从 https://github.com/chipsalliance/verible/releases 下载提前编译好的verible二进制文件,解压即可使用。

二进制包包含以下这个小工具,加进PATH环境变量里。这次我们主要关注verible-verilog-lint这个工具。

image.png
image.png

二、配置emacs verilog-mode的compile工具选项

~/.emacs里增加verilog-tool和verilog-linter的设置。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
(custom-set-variables '(verilog-tool 'verilog-linter) '(verilog-linter "verible-verilog-lint --rules -no-tabs,-no-trailing-spaces,-explicit-parameter-storage-type"))

如果项目里有makefile或者Makefile,则verilog-mode会优先使用make。这时要么我们把lint script写到makefile里,要么手改一下verilog-mode的代码,如下把第4、5行,注释起来,换成第6行,跳过makefile的检测。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
(defun verilog-set-compile-command ()  
  (interactive)  
  (cond   
  ;;((or (file-exists-p "makefile");If there is a makefile, use it   
  ;;     (file-exists-p "Makefile"))   
    (nil    
      (set (make-local-variable 'compile-command) "make "))   
    (t    
      (set (make-local-variable 'compile-command) 
        (if verilog-tool             
          (let ((cmd (symbol-value verilog-tool)))               
            (if (string-match "%s" cmd)                  
              (format cmd (or buffer-file-name ""))                
              (concat cmd " " (or buffer-file-name "")))) ""))))  
  (verilog-modify-compile-command))

三、emacs里进行lint检查

在emacs菜单->Verilog->Compile,或者M-x compile,emacs会自动调出设置的lint工具和参数,按<enter>即可对当前verilog进行Verilog检查。如果有报错,鼠标点击报错,可以自动跳转到代码对应的地方。

image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png

四、verible的lint规则

我们可以在terminal里,用命令verible-verilog-lint --help_rules all查看一共有哪些rule。如果需要enable或disable rule可以在lint选项里设置,rule前面带+表示enable,带-表示disable。解释一下上面设置的lint参数,表示disable no-tabs、no-trailing-spaces、explicit-parameter-storage-type三条rule。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
verible-verilog-lint --rules -no-tabs,-no-trailing-spaces,-explicit-parameter-storage-type

五、配置其它lint

理论上可以支持任何verilog编译工具,如vcs、xrun等。有兴趣的朋友可以尝试一下。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2025-03-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 ExASIC 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
2 条评论
热度
最新
可以,大佬,互粉一下
可以,大佬,互粉一下
111举报
已关注你的号
已关注你的号
回复回复点赞举报
推荐阅读
编辑精选文章
换一批
如何使用分层存储,让 HDFS 变得更高效?
1、Hadoop 及其承诺 众所周知,商用硬件可以组装起来创建拥有大数据存储和计算能力的Hadoop集群。将数据拆分成多个部分,分别存储在每个单独的机器上,数据处理逻辑也在同样的机器上执行。 例如
小小科
2018/05/02
2K0
如何使用分层存储,让 HDFS 变得更高效?
大数据存储平台之异构存储实践深度解读
经常做数据处理的伙伴们肯定会有这样一种体会:最近一周内的数据会被经常使用到,而比如最近几周的数据使用率会有下降,每周仅仅被访问几次;在比如3月以前的数据使用率会大幅下滑,存储的数据可能一个月才被访问几次。 这就产生了一种热和冷数据,对需要频繁访问的数据我们称之为“热”数据,反之我们称之为”冷”数据,而处于中间的数据我们称之为”温”数据。 在数据被视为公司资产的时代,每个公司基本都会保存最近数年的数据,而这些数据尤其是冷数据的累积也给存储平台带来了甜蜜的负担。下面就来分享下如何解决这些“负担”。 首先如何定义
程序你好
2018/07/20
6710
0675-6.2.0-什么是HDFS分层存储
CDH支持Hadoop分布式文件系统HDFS中的各种存储类型。早期的CDH只支持一种存储类型。现在,您可以为DataNode数据目录指定不同的存储类型,这样可以根据数据使用频率优化数据使用并降低成本。例如需要频繁使用的数据,可以存储在SSD中,而归档的数据可以存放在相对便宜的存储介质中。
Fayson
2019/07/30
1.2K0
HDFS 异构存储
该文介绍了在分布式存储系统中,通过使用 Raft 协议进行分布式数据一致性维护和通过 Zab 协议进行分布式数据访问控制。同时,介绍了基于 Raft 协议的 Zab 协议实例以及基于 Zab 协议的 Raft 协议实例。
liubang01
2017/07/28
4.2K0
HDFS 异构存储
独家 | 一文读懂Hadoop(二)HDFS(下)
5.1 用户命令 hadoop集群用户的常用命令。 5.1.1 classpath 打印获取Hadoop jar和所需库所需的类路径。如果无参数调用,则打印由命令脚本设置的类路径,可以在类路径条目中包含通配符。其他选项在通配符扩展后打印类路径或将类路径写入jar文件的清单。后者在不能使用通配符且扩展的类路径超过支持的最大命令行长度的环境中非常有用。 5.1.2 dfs HDFS允许以文件和目录的形式组织用户数据。它提供了一个称为FS shell的命令行界面,允许用户与HDFS中的数据交互。此命令集的语法类似
数据派THU
2018/01/30
2K0
独家 | 一文读懂Hadoop(二)HDFS(下)
[hadoop3.x]HDFS存储类型和存储策略(五)概述
[hadoop3.x系列]HDFS REST HTTP API的使用(一)WebHDFS
Maynor
2021/12/06
1.6K0
[hadoop3.x]HDFS存储类型和存储策略(五)概述
HDFS分布式文件存储系统详解
优点: 1.处理超大文件 能用来存储管理PB级的数据 1PB = 1024TB 2.处理非结构化数据、半结构化数据、结构化数据 流式的访问数据 一次写入、多次读取 3.运行于廉价的商用机器集群上 可运行在低廉的商用硬件集群上 故障时能继续运行且不让用户察觉到明显的中断
全栈程序员站长
2022/08/22
1.6K0
HDFS分布式文件存储系统详解
京东 HDFS EC 应用解密
为了实现降本增效,京东HDFS 团队在 EC 功能的移植、测试与上线过程中,基于自身现状采取的一些措施并最终实现平滑上线。同时自研了一套数据生命周期管理系统,对热温冷数据进行自动化管理。在研发落地过程中还构建了三维一体的数据校验机制,为 EC 数据的正确性提供了强有力的技术保障。
京东技术
2021/04/02
9620
京东 HDFS EC 应用解密
大数据技术之Hadoop(HDFS)第1章 HDFS概述
Hadoop分布式文件系统(HDFS)是指被设计成适合运行在通用硬件(commodity hardware)上的分布式文件系统(Distributed File System)。它和现有的分布式文件系统有很多共同点。但同时,它和其他的分布式文件系统的区别也是很明显的。HDFS是一个高度容错性的系统,适合部署在廉价的机器上。HDFS能提供高吞吐量的数据访问,非常适合大规模数据集上的应用。HDFS放宽了一部分POSIX约束,来实现流式读取文件系统数据的目的。HDFS在最开始是作为Apache Nutch搜索引擎项目的基础架构而开发的。HDFS是Apache Hadoop Core项目的一部分。
用户7656790
2020/08/18
7130
大数据技术之Hadoop(HDFS)第1章 HDFS概述
2021年大数据Hadoop(七):HDFS分布式文件系统简介
在现代的企业环境中,单机容量往往无法存储大量数据,需要跨机器存储。统一管理分布在集群上的文件系统称为分布式文件系统 。
Lansonli
2021/10/11
5790
干货|管理大数据存储的十大技巧
在1990年,每一台应用服务器都倾向拥有直连式系统(DAS)。SAN的构建则是为了更大的规模和更高的效率提供共享的池存储。Hadoop已经逆转了这一趋势回归DAS。每一个Hadoop集群都拥有自身的—
灯塔大数据
2018/04/09
3K0
干货|管理大数据存储的十大技巧
大数据平台:资源管理及存储优化技术
大数据平台的资源管理组件主要涉及存储资源和计算资源管理两部分,属于大数据平台运维管理系统。基于资源管理系统,大数据平台的开发运维人员能够清晰掌控平台的资源使用情况和资源在不同时间段下的变化趋势,能对资源使用异常进行及时发现并定位处理,避免造成更严重的影响,如磁盘空间撑爆,计算资源无空余,任务长时间等待不运行等造成业务阻塞。
Yiwenwu
2024/05/01
1.1K0
大数据平台:资源管理及存储优化技术
HDFS 是如何实现大数据高容量、高速、可靠的存储和访问的。
对于一个企业大数据应用来说,搞定了大数据存储基本上就解决了大数据应用最重要的问题。Google 三驾马车的第一驾是GFS,Hadoop最先开始设计的就是HDFS,可见分布式存储的重要性,整个大数据生态计算框架多种多样,但是大数据的存储却没有太大的变化,HDFS依旧是众多分布式计算的基础。当然HDFS也有许多缺点,一些对象存储等技术的出现给HDFS的地位带来了挑战,但是HDFS目前还是最重要的大数据存储技术,新的计算框架想要获得广泛应用依旧需要支持HDFS。大数据数据量大、类型多种多样、快速的增长等特性,那么HDFS是如何去解决大数据存储、高可用访问的了?
house.zhang
2021/08/26
2.1K0
管理大数据存储的十大技巧「建议收藏」
数据本地化是为了确保大数据集存储在计算节点附近便于分析。对于Hadoop,这意味着管理数据节点,向MapReduce提供存储以便充分执行分析。它实用有效但也出现了大数据存储集群的独立操作问题。以下十项是Hadoop环境中管理大数据存储技巧。
全栈程序员站长
2022/09/02
1.6K0
HDFS 为何在大数据领域经久不衰?
HDFS是最早的大数据存储系统,存储着宝贵的数据资产,各种新算法、框架要想得到广泛使用,必须支持HDFS,才能获取已存储在里面的数据。所以大数据技术越发展,新技术越多,HDFS得到的支持越多,越离不开HDFS。HDFS也许不是最好的大数据存储技术,但依然是最重要的大数据存储技术。
JavaEdge
2022/04/06
3570
HDFS 为何在大数据领域经久不衰?
[hadoop3.x]HDFS存储策略和冷热温三阶段数据存储(六)概述
[hadoop3.x系列]HDFS REST HTTP API的使用(一)WebHDFS
Maynor
2021/10/09
8580
Hadoop中HDFS的存储机制
HDFS(Hadoop Distributed File System)是Hadoop分布式计算中的数据存储系统,是基于流数据模式访问和处理超大文件的需求而开发的。下面我们首先介绍HDFS中的一些基础概念,然后介绍HDFS中读写操作的过程,最后分析了HDFS的优缺点。
星哥玩云
2022/07/03
1.3K0
Hadoop中HDFS的存储机制
Apache Eagle——eBay开源分布式实时Hadoop数据安全方案
日前,eBay公司隆重宣布正式向开源业界推出分布式实时安全监控引方案—— Apache Eagle,该项目已正式加入Apache 称为孵化器项目。Apache Eagle提供一套高效分布式的流式策略引擎,具有高实时、可伸缩、易扩展、交互友好等特点,同时集成机器学习对用户行为建立Profile以实现实时智能实时地保护Hadoop生态系统中大数据的安全。 背景 随着大数据的发展,越来越多的成功企业或者组织开始采取数据驱动商业的运作模式。在eBay,我们拥有数万名工程师、分析师和数据科学家,他们每天访问分析数PB
CSDN技术头条
2018/02/11
1.5K0
Apache Eagle——eBay开源分布式实时Hadoop数据安全方案
基于腾讯云存储COS的ClickHouse数据冷热分层方案
ClickHouse是一个用于联机分析(OLAP)的列式数据库管理系统(DBMS),支持PB级数据量的交互式分析,ClickHouse最初是为YandexMetrica 世界第二大Web分析平台而开发的。多年来一直作为该系统的核心组件被该系统持续使用着。目前为止,该系统在ClickHouse中有超过13万亿条记录,并且每天超过200多亿个事件被处理。它允许直接从原始数据中动态查询并生成报告。自2016 年开源以来,ClickHouse 凭借其数倍于业界顶尖分析型数据库的极致性能,成为交互式分析领域的后起之秀,发展速度非常快。
云存储
2021/01/12
6.4K0
基于腾讯云存储COS的ClickHouse数据冷热分层方案
独家 | 一文读懂Hadoop(二)HDFS(上)
随着全球经济的不断发展,大数据时代早已悄悄到来,而Hadoop又是大数据环境的基础,想入门大数据行业首先需要了解Hadoop的知识。2017年年初apache发行了Hadoop3.0,也意味着一直有一群人在对Hadoop不断的做优化,不仅如此,各个Hadoop的商业版本也有好多公司正在使用,这也印证了它的商业价值。 读者可以通过阅读“一文读懂Hadoop”系列文章,对Hadoop技术有个全面的了解,它涵盖了Hadoop官网的所有知识点,并且通俗易懂,英文不好的读者完全可以通过阅读此篇文章了解Hado
数据派THU
2018/01/30
2.4K0
独家 | 一文读懂Hadoop(二)HDFS(上)
推荐阅读
相关推荐
如何使用分层存储,让 HDFS 变得更高效?
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验