The last release of Sigasi® Visual HDL™ (SVH™) for 2024 introduces Code Lenses, Hover Actions, various UX improvements, and VHDL code formatting for Sigasi CLI.
TL;DR
SVH 2024.3 focuses on the user experience, lowering distractions, and placing the most relevant features at your fingertips.
To kick it off, welcome Code Lenses. These context-sensitive inline hints help you quickly perform actions such as opening the Class Hierarchy, UVM Diagram, or setting your Design Hierarchy top.
Similarly, hovers now include contextual action buttons to access features such as Show in, Find All References, and Find Net.
Next, we have added a grabbag of UX improvements to provide you with more information at a glance and reduce distractions. We added search buttons to our views, and many new theme-aware icons. We removed superfluous items from the context menus and logically grouped many others. To ensure you only see the information you need, you can now filter the Sigasi Projects view.
Sigasi CLI received the format command to format individual VHDL files from the command line.
As a cherry on top, this release includes over 40 bug fixes and improvements.
Code Lenses
Code Lenses provide access to key features right from your editor. You can find them above the most important elements in your code, such as entity or class declarations. A Code Lens is a quick link to perform a context-relevant action. SVH 2024.3 introduces five kinds of Code Lenses.
- Modules, Entities, and Architectures can be set as the Design Hierarchy Top of a project or revealed in Block Diagrams via the Show In Code Lens
- Classes can be opened in the Class Hierarchy
- UVM Components can be Set As UVM Root and offer to open the UVM Diagram
You can configure Code Lenses through the editor.codeLens
setting.
Hover Actions
With 2024.3, SVH’s hovers become even more powerful. Besides providing key insights about your design, they can now also be used to quickly perform common actions. Hover actions allow you to show elements in views, find references, navigate code, and more—all directly from the hover. They complement your keyboard shortcuts and command palette options, offering flexibility in how you interact with your code.
Filtering for Sigasi Projects View
Keep your workspace organized with the new, configurable filtering options in the Sigasi Projects View . You can tailor the visibility of files and folders directly from the overflow menu to ensure the view remains centered on what matters most. A toggle button in the overflow menu can enable or disable filtering. You can configure the filters in the extension settings:
- The
sigasi.projectsView.exclude
setting specifies a list of glob patterns to match files that will be excluded - The
sigasi.projectsView.excludeNonHdlFiles
setting ensures only HDL files are shown - The
sigasi.projectsView.inheritGlobalExclude
setting determines whether the global exclusion filter from VS Code should also be applied
Theme-Aware Icons
SVH’s interface has undergone a visual refresh with new icons, used throughout the extension. These icons dynamically respond to theme changes, maintaining a cohesive aesthetic whether you prefer light mode or dark mode.
Streamlined Context Menus
Several context menus have been thoughtfully revamped, and new ones have been introduced to enhance your productivity.
Sigasi Projects View
The context menu from the Sigasi Projects View has been fine-tuned. You can now find all configuration options under theConfigure
submenu.
An Export
submenu was also added, allowing you to easily run the Documentation Export or the Compilation Order Export .Editor Action
A new Editor Action allows you to easily open various SVH diagrams and views. Editor Actions can be found in the top right corner of your active editor.Explorer View
The Explorer View includes a newSigasi Visual HDL
entry. This menu allows you to easily create new projects, open extension settings, or open the manual.Show In
TheShow In…
menu has been refined to open a Quick Pick only offering valid options at the location of your cursor.Search In SVH Views
Sometimes, you want to focus only on a part of a tree view. A newly added search button makes this easy. It is available for the Design Hierarchy , UVM Topology , Libraries , and Class Hierarchy Views.
Whether you are managing large-scale projects or diving into intricate details, these search improvements help you save time and stay focused on the important parts.
Two options are provided by the search dialog:
- The
Filter
button will cause only items that match the search term to show up - The
Fuzzy Match
button will enable fuzzy string matching
VHDL Code Formatting in Sigasi CLI
SVH’s trusted VHDL formatter is now available from the Sigasi CLI . You can format any VHDL file and use all the same options that you have grown used to. Git pre-commit hook, anyone?
sigasi-cli format --spaces-for-tabs --keywords=lowercase hdmi_decoder/src/decoder.vhd
Quality of Life
- Restored open views on restart and reload
- Added syntax highlighting to the Templates Editor
- Greatly reduced the number of
A different resource with the URI was already registered
errors - Fixed selection when
Show In
opens a view - Added short descriptions to our preference pages
- Enabled project linting rule preferences by default when creating a new project
Further New and Noteworthy
- Clarified the explanation of the
Path To License
preference - Improved
Show In
selection for Block Diagrams - Improved Smart Indentation
- Added option to open exported Compilation Order CSV
- Added
Check virtual method arguments
parameter (disabled by default) toLocally unused port, argument or parameter declaration
linting rule - Enhanced the Unused declaration linting rule not to report unused private constructors on classes that only contain static methods
- Added
env('VAR')
andenv(VAR)
as options to the autocomplete templates - Added
Show In
andFollow Cursor
for the UVM Topology View - Removed the
Remove Sigasi Support
andAdd Sigasi Support
context menu items as projects come with Sigasi support out of the box - Added progress monitoring when removing items from the Tools and Libraries preference page
- Improved resource freeing for the Diagram views
Bug Fixes
- Fixed instructions for creating a new folder in the Sigasi Projects view
- Fixed cancellation popups
- Fixed license acquisition woes after reloads when using SSH Remote
- Fixed SAL when using SSH Remote
- Fixed Set as Top Level in the Libraries View
- Added view refreshing after license changes
- Ensured the Export Documentation command is only available once the server is ready
- Removed invalid autocomplete template contexts
- Fixed punctuation in multiline validation messages
- Ensured upgrading to a higher license does not unnecessarily upgrade you to an intermediate license on failure
- VHDL Fixed false positive errors when time units are aliased
- VHDL Added support for records and named generics in if and case generate statements to the Design Hierarchy View
- VHDL Fixed
Declare signal for every missing port in port map
not applying when there are syntax errors - VHDL Fixed Set as Top Level in the Design Hierarchy View
- VHDL Fixed the
Add missing associations
Quick Fix for entities containing duplicate ports - VHDL Fixed label for attribute specifications with missing entity names
- VHDL Fixed false positive errors in type checking for generic packages
- VHDL Fixed missing error on subsequent violations of Unexpected clock edge specification style
- Verilog Moved the
Include of globally available declaration
linting rule from theProcess validation
to theStyle validation
family - Verilog Fixed incorrect selection on first invocation of Open Class Hierarchy
- Verilog Fixed the Signature Helper for functions with invalid parameters
- Verilog Fixed incorrect semantic highlighting following includes
- Verilog Removed endnames in our autocomplete templates as those are not compatible with pure Verilog
- Verilog Fixed false positive errors about hiding non-virtual built-in functions
- Verilog Fixed label for incomplete import statements
- Verilog Fixed not rebuilding source files when the
default_nettype
is changed - Verilog Ensured empty packages are not expandable in the Libraries View
- Verilog Fixed false positive errors when importing interfaces, programs, and UDP from different libraries
- Verilog Ensured the Verilog Preprocessor preference page is only marked as changed when there are changes
Updates
- SVH now supports FlexNet Publisher License Server 11.19, next to 11.13. All SVH licenses work with both license servers.
- Renamed Hierarchy to Design Hierarchy
- Modified the display name of the extension to
VHDL & SystemVerilog IDE by Sigasi
fromSigasi Visual HDL
Update or Install
If you have downloaded SVH from the VS Code Marketplace , your installation will automatically update.
You can also download the latest .vsix
file and manually install it in VS Code.
- Linux: https://download.sigasi.com/vs-code/updates/latest/sigasi-visual-hdl-linux.vsix
- Windows: https://download.sigasi.com/vs-code/updates/latest/sigasi-visual-hdl-win32.vsix
The SHA sum is downloadable from https://download.sigasi.com/vs-code/updates/latest/vs-code-sha1.txt .
System Requirements
Sigasi Visual HDL requires:
- Windows 10 or Windows 11 64-bit
- RedHat Enterprise Linux RHEL 8 or 9 64-bit
- VS Code >= 1.77 and < 2.0
We recommend having at least 8GB of memory and about 1GB of free disk space available for Sigasi Visual HDL.
Feedback
Our Support Team happily welcomes any of your feedback.
Transition Information
You can transition to VS Code right away with your existing projects and licenses, but if you want a little more time, we have you covered with Sigasi Visual HDL in Eclipse.
We will start ramping down support for Eclipse in 2025. Please check these release notes for information specific to using SVH in Eclipse and whom to talk to about your transition.
Import Eclipse Autocomplete Templates
It is now easier than ever to migrate to SVH by importing your Eclipse Autocomplete Templates. You can do so straight from the Templates Editor, by clicking the import templates from SVH in Eclipse
link. Alternatively, you can also run the
Sigasi: Import Eclipse Templates
command throught the command palette.
Learn more