VHDL by HGB 1.0.1
分类: 下载/工具 · 工具软件 | 来源: 点击进入 | 版本: 1.0.1 |
日期: 2025-05-04 | 人气: | 大小: |
标签: 扩展 ide TCL keybindings snippet __ext_sdc __ext_tcl __ext_ucf __ext_vhd __ext_vhdl __ext_vho __ext_xdc ucf ucf constraints vhdl __ext_pro hdl __ext_ldc __ext_pdc lattice constraints ldc language-vhdl FH Hagenberg Hagenberg Chip Design rust_hdl |
VHDLbyHGB:Visual Studio Code的VHDL项目编辑扩展
VHDLbyHGB是由上奥地利应用科学大学Hagenberg校区的Jakob Jungreuthmayer、Sonja Schoissengaier和Florian Lucut维护的Visual Studio Code扩展,旨在为VHDL项目提供高效的编辑和开发环境。
技术基础
该扩展基于VHDL-LS语言服务器,支持Linux、Windows和MacOS的预编译二进制文件。用户可以根据vhdl-by-hgb.vhdlls.languageServer属性的值,从系统路径或Docker中加载服务器。
使用方法
语言服务器需要了解项目中VHDL文件的库映射,为此它会读取名为vhdl_ls.toml的TOML格式配置文件。该文件应位于工作区根目录,包含项目内所有文件的库映射。vhdl_ls会按以下优先级顺序加载配置文件:
- 用户主文件夹中的.vhdl_ls.toml文件。
- VHDL_LS_CONFIG环境变量指定的文件。
- 工作区根目录中的vhdl_ls.toml文件。
后加载的文件设置会覆盖先前加载的文件设置。
项目设置
要使用VHDLbyHGB,您需要:
- 在VS-Code中打开整个VHDL项目文件夹。
- 将vhdl_ls.toml文件放置在项目根目录。
- 通过调用命令VHDLbyHGB.Project.Setup,将打开的文件夹设置为VHDL项目。默认情况下,vhdl_ls.toml将自动生成,包含所有子文件夹中的vhdl文件。
LSP功能
VHDLbyHGB提供以下LSP功能:
- 实时语法和类型检查
- 查找缺失、重复和未使用的声明
- 跳转到定义/声明(支持重载)
- 查找所有引用(支持重载)
- 跳转到实现
- 从组件声明到匹配的实体默认绑定
- 从实体到匹配的组件声明默认绑定
- 悬停符号显示更多信息
- 重命名符号
- 查找工作区符号
- 查看/查找文档符号
- 代码完成(实体)
格式化
您可以通过命令面板或键盘快捷键格式化文档。支持的格式化工具包括vhdl_formatter和emacs_vhdl_formatter,用户可以根据需要选择和配置。
动态片段和实体转换器
动态片段为实体实例化提供自动完成功能。实体转换器允许您将实体复制并以不同格式粘贴,支持组件声明、实例化、实体、信号和常量。
综合和验证
VHDLbyHGB支持基本的综合操作,目前仅支持Quartus。验证功能通过VUnit和HDLRegression等工具实现,并与VSCode-TestExplorer集成。
VHDL片段
扩展提供了多种VHDL片段,包括转换函数、实例化、测试台和其他常用代码片段,帮助您快速编写VHDL代码。
前提条件
使用VHDLbyHGB需要预先安装验证工具(如VUnit、HDLRegression)和综合工具(如Quartus)。
贡献和许可
欢迎以代码、文档、反馈、教程、创意或错误报告的形式贡献。该扩展在GNU GPL许可下发布。
通过VHDLbyHGB,您可以更高效地管理和开发VHDL项目,提升您的开发体验。
-
- Golang云原生架构师课程
- Go是一门并发支持、垃圾回收的编译型系统编程语言;本课程转载自哔哩哔哩:https://www.bilibili.com/video/BV1Mh411M7A
- 204次学习
-
- MySQL数据管理之备份恢复案例解析视频教程
- 《MySQL数据管理之备份恢复案例解析视频教程》MySQL是一个开放源码的小型关联式数据库管理系统,目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。
- 160次学习
-
- MySQL索引优化解决方案
- 本套课程是根据MySQL索引的设计理念与数据结构、索引使用场景、索引分类、索引运用场景、索引性能分析、查询优化、MySQL索引的慢查询等组成,主要讲述了MySQL索引优化的解决方案,非常适合有MySQL使用基础或者有一定工作经验的同学。课程讲解了解决大数量查询慢的问题、如何编写一个高效的SQL、查询语句应该如何优化、索引的实现原理是什么、索引又应该如何优化...等诸多SQL索引优化的难点和面试点。
- 182次学习
-
- 极客学院Docker视频教程
- Docker是PaaS提供商dotCloud开源的一个基于LXC的高级容器引擎,源代码托管在Github上,基于go语言并遵从Apache2.0协议开源。Docker自2013年以来非常火热,无论是从github上的代码活跃度,还是各大厂商的支持,都使Docker成为了时下最受关注的技术,甚至微软都声称在下一代WindowsServer中集成对Docker的支持。所以我们收集了《极客学院Docke
- 243次学习
-
- Golang进阶实战编程
- 本课程是在《Go语言基础视频》基础之上录制的,是Go语言基础的后半部分。包括包的管理,IO操作,Go语言最大的亮点:高并发,goroutine,channel,反射等。本视频主要为了帮助Go语言的初学者,从零到一的快速入门。学完本套课程,可以学会如果通过包管理Go项目,并发模型,以及并发实现,channel通道如何传递数据,反射等等。
- 127次学习
-
- JavaScript极速入门
- 本套课程将帮助大家迅速掌握JavaScript这门高端的、动态的、弱类型编程语言。知识点简单明了,让你学习0压力,适合新手观看学习......
- 431次学习
-
- Golangmap实践及实现原理解析
- 2022-12-28 505浏览
-
- GoLand调式动态执行代码
- 2023-01-13 502浏览
-
- 试了下Golang实现try catch的方法
- 2022-12-27 502浏览
-
- 用Nginx反向代理部署go写的网站。
- 2023-01-17 502浏览
-
- MySQL主从切换的超详细步骤
- 2023-01-01 501浏览
-
- Mysql-普通索引的 change buffer
- 2023-01-25 501浏览