0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

IC设计中值得解决的小问题(一)

ruikundianzi 来源:icsoc 2024-03-13 16:53 次阅读

数字前端设计流程中,.lib后缀的文件通常是 Synopsys Liberty 文件。这是一种描述单元时序、功耗等参数的文本文件。平时难免需要用文本工具去查看其中的内容。而 Linux 环境中经常用的文本编辑器之一就是 Vim。

一直存在的一个小问题,就是用 Vim 打开.lib文件的时候,语法高亮不正常,所有的字符,包括关键字和非关键字,通通是红彤彤的大红色。

语法高亮不正常,影响大吗?

有一点,但说不上大。

有时候心烦了,就直接敲个:syn off关掉语法高亮。还有一个小问题就是此时 Vim 的整词搜索,*也不起作用。这个影响稍微大一点,因为要多敲几下键盘,或者动用鼠标了。

说来惭愧,这么个小问题中存在了好多年,起码目前记忆鲜活的、在 A 司的前前后后好几年一直是存在的。最近又到了频繁查看.lib文件的时候,心血来潮,仔细研究了一下。

在作者的环境中,用户自定义的文件类型设置

~/.vim/filetype.vim

包含有.lib的类型检测

augroup filetypedetecct
  au! BufRead,BufNewFile *.lib  setfiletype lib
augroup END

也有前贤们制作的对应语法设置

~/.vim/syntax/lib.vim

但执行过程中并没有生效。为什么呢?

首先查看一下 Vim 启动的时候调用了哪些文件类型检测脚本。

:scriptnames

在列出的脚本中找到类似下面的行。

~/.vim/filetype.vim

/usr/vim82/filetype.vim

第一个就是用户自定义的文件类型设置,第二个是 Vim 自带的文件类型设置。这么看就有点思路了,可能的原因是第二个 Vim 自带的文件类型设置在后面,覆盖了前面用户自定义的设置。

那么打开第二个设置看看有没有什么线索,搜索lib,可以看到默认的类型是Cobol,这看起来是一种上古的编程语言,和 Synopsys Liberty 完全不搭界。

" Cobol
au BufNewFile,BufRead *.cbl,*.cob,*.lib setf cobol

那么怎么让 Vim 系统自带的文件类型设置失效呢?找 IT 管理员直接改这个文件也许是个办法,不过求人不如求己,再看下有没有其它不影响系统的办法。

在该设置文件的开头,可以看到这么几句(这个注释看起来很不耐烦)。

" Listen very carefully, I will say this only once
if exists("did_load_filetypes")
  finish
endif
let did_load_filetypes = 1

可以看出如果我们在进入这个设置文件之前,把did_load_filetypes设成1,就不会执行它了。

为了把影响减到最小,直接把这个系统设置文件的全部内容复制到用户自定义的文件类型设置文件中,然后把Cobol那一行的*.lib删掉。

这样执行完

~/.vim/filetype.vim

之后,.lib的文件类型就识别成我们想要的lib类型了,并且did_load_filetypes也被设成1了;那么执行到

/usr/vim82/filetype.vim

时,发现did_load_filetypes已经被设成1,就直接退出该设置脚本,也就不会把*.lib设置成Cobol类型了。

考虑到目前 Synopsys Liberty 类型文件的后缀花样繁多,可以用通配符设的更通用一些。

au! BufRead,BufNewFile *.lib,*.lib_ccs_tn* setfiletype lib

多年存在的小问题,花几分钟研究清楚搞定。看着清爽的语法高亮显示效果,不禁扪心自问,为什么不早早动手把它解决呢?



审核编辑:刘清
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • IC设计
    +关注

    关注

    38

    文章

    1292

    浏览量

    103807
  • VIM
    VIM
    +关注

    关注

    0

    文章

    134

    浏览量

    15282
  • LINUX内核
    +关注

    关注

    1

    文章

    316

    浏览量

    21627

原文标题:IC设计中值得解决的小问题(一)

文章出处:【微信号:IP与SoC设计,微信公众号:IP与SoC设计】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    基于FPGA的中值滤波算法实现

    些黑白色的斑点,我以为是椒盐噪声,然后在做基于FPGA的中值滤波算法的实验时,我发现黑白斑点并没有消除,中值滤波本来是可以很好的滤掉椒盐噪声,所以说这里并不是椒盐噪声,最后经过我仔细的检查,终于明白了
    发表于 09-01 07:04

    2022毕业,ic验证还值得转吗?

    大公司里与前端工程师的比例大约为3:1,是最火的IC设计岗位之,所以ic验证还是值得转的。岗位需求量大就意味着更容易拿到offer,所以选择做ic
    发表于 12-17 18:20

    请问如何实现改进的中值滤波器的设计?

    如何实现改进的中值滤波器的设计?中值滤波的基本原理是什么?中值滤波的改进算法是什么?如何实现中值滤波器硬件电路设计?
    发表于 04-14 06:54

    关于带EN脚的几款DC-DC升压IC小问题

    DC-DC是硬件开发过程中常用的种器件,主要用于获取特定的直流电压,此处不对DC-DC的工作原理进行讲解,只对使用过程中发现的个关于带EN脚的几款DC-DC升压IC小问题进行展示
    发表于 11-17 07:16

    基于医学图像的有效中值滤波算法研究

    本文对于由Visible Human 所提供的人体CT 图像序列所形成的体数据场,提出了种有效的快速中值滤波方法。中值滤波是种非常有用的非线性滤波技术,能有效的抑制脉冲噪声、椒盐
    发表于 08-13 14:39 10次下载

    略谈积分中值定理及其应用

    略谈积分中值定理及其应用:积分中值定理是定积分的个重要性质,它建立了定积分与被积函数之间的关系,从而使我们可以通过被积函数的性质来研究积分的性质,有较高的理
    发表于 10-11 17:38 15次下载

    浅谈混凝土配合比设计中值得注意的几个问题

    对混凝土配合比设计中值得注意的几个问题进行分析,并提出相应的防治措施。
    发表于 12-24 15:38 9次下载

    种改进的自适应中值滤波算法

    种改进的自适应中值滤波算法也听歌儿网官方给
    发表于 11-20 16:20 39次下载

    2018年CES值得关注的三大智能家居发展趋势

    智能家居行业目前虽然炒得火热,但是依然存在不小问题,2018年CES即将来临,我们来提前预告下CES中值得注意的智能家居发展趋势。
    发表于 01-05 15:18 748次阅读

    图像加窗中值滤波算法的研究分析

    提出了种实用的图像滤波算法,即图像加窗中值滤波算法。在分析经典中值滤波算法基础上,给出了加窗中值滤波算法的基本原理与实现过程,与经典的邻域均值滤波器、
    发表于 11-30 11:11 4次下载
    图像加窗<b class='flag-5'>中值</b>滤波算法的研究分析

    labview图像中值滤波实例分享

    labview图像中值滤波实例分享
    发表于 12-15 14:55 34次下载

    中值滤波的原理和C代码

    中值滤波是种非线性数字滤波技术,主要应用于信号处理和图像处理领域,用于减小信号中的噪声和离群值。中值滤波的核心思想是通过计算组数据点的中间值,以抑制脉冲噪声等离群值的影响,从而实现
    的头像 发表于 12-05 08:00 1512次阅读
    <b class='flag-5'>中值</b>滤波的原理和C代码

    中值滤波去除噪声的原理

    中值滤波去除噪声的原理  中值滤波是种数字图像处理中常用的去噪方法,其原理是通过将每个像素周围邻域内的像素值按照大小排序,然后将排序后的中间值作为该像素的新值。中值滤波的核心思想是认
    的头像 发表于 03-14 16:54 1738次阅读

    IC设计中值得解决的小问题—screen如何兼容256Color

    随着计算机硬件的巨大进步,图形界面的程序逐渐占据了应用的主流,不过Terminal得益于性能、带宽,以及传统、继承等各种因素,应用也还是非常广泛的。
    的头像 发表于 03-21 16:08 1563次阅读
    <b class='flag-5'>IC</b>设计<b class='flag-5'>中值得</b>解决的<b class='flag-5'>小问题</b>—screen如何兼容256Color

    中值滤波窗口大小对结果影响有哪些

    中值滤波是种常用的数字滤波技术,它通过将信号中的每个点用其邻域内的中值替换来实现信号的平滑和去噪。中值滤波窗口的大小对滤波结果有很大的影响,以下是对
    的头像 发表于 07-29 09:10 838次阅读