在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 5404|回复: 12

gvim中进行verilog语言信号追踪、显示拓扑插件,最新2.0版

[复制链接]
发表于 2017-3-7 15:55:08 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
本帖最后由 cfyrcj 于 2017-3-7 16:27 编辑

vtags 是一款在gvim下实现类似verdi的信号追踪、显示拓扑等功能的插件。vtags插件完全使用python实现,目前实现功能包括信号追踪、宏定义追踪、显示模块拓扑、快速打开文件、保存和打开gvim快照、添加断点等功能。

vtags-2.x 是我目前最满意的一个版本,希望和您分享!

打开vim窗口后支持功能和快捷键:
快捷键                    功能
gi                          进入子模块
gu                         回到上层模块
<Space><Left>     追信号源,或宏定义
<Space><Right>   追信号目的
<Space><Down>   回退
<Space><Up>       向前
<Space> + v         显示策略,和展开收回策略条目
<Space> + c         添加记录点
<Space> + b         添加基本模块
<Space> + d         删除记录点或基本模块
<Space> +h          固定当前窗口
<Space>               快速访问
<Space> + s         储存快照
gvim/vim              加载快照
详细信息看《二:开始使用及支持功能和快捷键》

不用打开vim支持的function :
    -h                            :显示帮助
    -func                       : 显示所有不打开vim能使用的function

不打开vim能够使用的function:
    print_module_trace( to_module, from_module )               # 显示输入模块从在整个设置中的调用轨迹
    print_module_io( module_name )                                    # 格式化的打印模块io信息
    open_module_file( module_name )                                  # 使用gvim打开模块名所在文件
    print_module_topo( module_name, depth, mask, space )  # 显示模块拓扑结构,depth显示层次
    print_module_filelist( module_name )                              # 显示输入模块所有子模块的文件列表
使用举例:
    "vtags -func find topo "                                                              # used to find all function which name has string "topo"
    "vtags -func 'print_module_io( my_cpu )'"                                   # used to print module my_cpu's io !
    "vtags -func -db ~/design/vtags_db 'print_module_io( my_cpu )'" # used specified vtags.db to get io

vtags-2.0几乎完全重构了vtags-1.x的所有功能和实现,无论在功能、速度和用户体验上都有了质的飞跃,主要的改变体现在:
1. 新版本极大的扩充了对verilog多种语法的支持.
2. 新版本实现了完善快速的数据库动态更新机制,vtags会随着设计改变动态跟新.
3. 新版本使用了新的识别算法,极大的提升了识别的准确性和速度.
4. 新版本使用了去中心化和用时加载技术,极大的节省了vtags运行占用的资源.
5. 新版本提供了function和API方便用户在不打开vim时使用vtags的function和数据库.
6. 新版本对vtags的加载进行了优化,使的对vim打开非vtags支持文件几乎没有延迟.

特别注意:
(1)  原来用户当你从vtags1.x升级到vtags2.x需要删掉原来rtl目录旧的的vtags.db,重新生成新的vtags.db。
(2) 如果你的设计不是全部使用".v" 作为设计文件的后缀,需要在 vtags-2.x/vim_glb_config.py line:46添加你自己的后缀,
     比如:我使用了  xxx.v,  xxx.sv,   xxx.V,   xxx.d , 那我需要修改为 :  support_verilog_postfix     = ['v', 'sv', 'V', 'd' ]


安装方式:
1. 下载插件代码,解压并复制到自选的安装路径下。下面以安装目录为“~/vtags-1.23/为例”
   代码下载地址:(1)http://www.vim.org/scripts/script.php?script_id=5494
2. 在linux配置文件中添加别名。
  ~/.cshrc  中添加:alias vtags 'python  ~/vtags-1.23/vtags.py'
或  ~/.bashrc 中添加:alias=vtags 'python  ~/vtags-1.23/vtags.py'
  source ~/.cshrc 或 source ~/.bashre 使设置生效。
3. 在vim配置文件中加入插件。
  ~/.vimrc  中添加: source  ~/vtags-1.23/vtags_vim_api.vim
4. 本步骤可选,可以在vtags-1.23/vim_glb_config.py中设置插件的一些全局设置,
  你也可以使用vtags时生成的局部配置文件vim_local_config.py中进行设置。
5. cd 到code目录使用命令:vtags, 在code目录下生成base文件 vtags.db, 用gvim打开代码就可以使用上面定义快捷键中功能。
注: 要求python版本2.7,详情请看《用户使用指南》。
发表于 2017-6-23 17:44:29 | 显示全部楼层
这个必须顶!!!
发表于 2017-6-23 22:06:56 | 显示全部楼层
頂一個 超詳細!
发表于 2017-8-25 09:25:58 | 显示全部楼层
谢谢分享谢谢分享
发表于 2017-8-25 09:49:45 | 显示全部楼层
很棒的分享, 不知道cfyrcj,可不可以做一個完整的文字圖形教學
對使用vim + verilog 的人很大的幫助
发表于 2017-8-25 09:56:20 | 显示全部楼层
回复 1# cfyrcj


   thank you for sharing
发表于 2017-8-25 15:53:48 | 显示全部楼层
貌似很厉害的样子,不过只支持python2.7么?
python3用户有点尴尬呢
发表于 2019-3-22 22:42:54 | 显示全部楼层
感谢楼主的贡献 请问能否支持python3呢
发表于 2019-4-15 22:16:02 来自手机 | 显示全部楼层
mark一下,谢谢分享
发表于 2019-4-17 18:02:38 | 显示全部楼层
Thanks.
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条


小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-25 19:14 , Processed in 0.020388 second(s), 6 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表