This page documents the Views added to VS Code by the Sigasi extension.
Sigasi Projects View
The Sigasi Projects View offers a file browser for your projects in which external folders that are not physically part of your project can exist. This can be useful for including external IP in your projects.
The Projects View also offers a lot of custom Sigasi functionality, such as library mapping, version setting, and displaying the Preference View.
Linked Libraries
Any (external) libraries and files not within the folder of the opened project can be added using the Sigasi Projects View.
In the Sigasi Projects View, right-click any file or folder and select the New Linked File… or New Linked Folder… option to add files and folders from outside the project location.
The configuration of the external files and folders will be kept in the .project
file in the project root.
External files and folders can be added anywhere in the project.
If you add a large folder, for example, the unisim
primitives, make sure to exclude the folder (Right-click > Set Library > Exclude from Build) from being built and only include the required files.
Alternatively, you can put the library files in a folder called Common Libraries
.
Then, they will only be indexed but not analyzed for errors.
Buttons in the Sigasi Projects View
These buttons are available in the Sigasi Projects View.
- Create a new file
- Create a new folder
- Refresh
- Collapse all folders in the Sigasi Projects View
- More Actions
- Toggle Follow Cursor (links the Sigasi Projects View with the editor)
Hierarchy View
Initially, the Hierarchy View will be empty. To use the Hierarchy View, right-click an entity, architecture, or module name in the editor and select Set as Top Level from the pop-up menu. This will populate the Hierarchy View with the structure of the top level.
As you make changes to the design, the Hierarchy View will not automatically refresh. To refresh the Hierarchy View, use the refresh button ().
If you want the selection in the Hierarchy View to follow your position in the editor, make sure to enable Follow Cursor from the More Actions () menu.
Buttons in the Hierarchy View
These buttons are available in the Hierarchy View.
- Expand the full hierarchy
- Only Show Instantiations (enabled)
- Only Show Instantiations (disabled)
- Refresh the Hierarchy View
- Collapse the hierarchy
- More Actions
- Toggle Follow Cursor (links the Hierarchy View with the editor)
- Toggle Auto Refresh on save
- Sort by: Position
- Sort by: Name
- Sort by: Category
Problems View
The Problems View shows problems (errors, warnings, or infos) related to your code. The Problems View is located at the bottom window by default. If it is not open, you can open it by going to View > Open View… and then selecting Problems.
Using the Problems View, you can navigate to the source of the problem by double-clicking on a given problem. Problems can be filtered by using the filter icon located at the top-right.
UVM Topology View
[Only in Sigasi Studio XPRT] ,[Only for SystemVerilog]
The UVM Topology View shows the verification environment’s component topology. To view a component’s topology, right-click its class name in the editor and select Set as Root UVM Component from the pop-up menu. This will populate the UVM Topology View with the structure of the selected component and its children, including their ports and virtual interfaces.
As you make changes to the design, the UVM Topology View will be automatically refreshed.
You can navigate to a topology element in an editor by double-clicking it. Right-clicking an element opens a context menu with more navigation options: you can open the type, declaration, or instantiation of a selected element in an editor.
Buttons in the UVM Topology View
These buttons are available in the UVM Topology View:
- Expand all components
- Collapse all components
Other available actions:
- Sort components, ports, and interfaces alphabetically.
- Sort components, ports, and interfaces by position in the source code.
Preference View
To open the Preference View, right-click the project, folder, or file you want to configure in the Sigasi Projects View. This view allows you to configure all preferences for the selected project, folder, or file.
- You can change the severity of linting rules for your project.
- You can tweak validation parameters.
- You can modify conditional variables for VHDL 2019 projects.
- You can configure include paths and initial defines for the SystemVerilog Preprocessor.
Make sure to click the APPLY
button at the top right after making your changes.
Changes you make here will be stored in the .settings/
folder within your project.
This way, if you commit the settings with your project, they will be available for your fellow team members, even if they use Sigasi Studio for Eclipse.
Configuring the Linting Rules
Linting is largely shared between our products. This page only covers VS Code specific use cases. Refer to the common documentation to learn more.
Linting rules can be configured per project, folder, or file by right-clicking a project, folder, or file > Open Preference View in the Projects View and then selecting Verilog Errors/Warnings or VHDL Errors/Warnings. In the middle of the page, Click here to enable to activate the rule configuration.
Graphical Views
Refer to the Common Documentation to learn more about the Block Diagram-, State Machines-, Dependencies-, and UVM Diagram Views.
Net Search View
Refer to the Common Documentation to learn more about the Net Search View.
Class Hierarchy View
[Only in Sigasi Studio XPRT] ,[Only for SystemVerilog]
The Class Hierarchy View displays more information about the hierarchy of a class. It consists of a hierarchy tree and a list of its class members. To open the Class Hierarchy of a class, click the class name, right-click, and select Show Class Hierarchy (or press F4).
Class Hierarchy Tree
The class hierarchy tree displays either the superclasses, subclasses, or both.
Icon | Command | Description |
---|---|---|
Class Hierarchy | Displays all superclasses and subclasses. | |
Superclass Hierarchy | Displays all superclasses and implemented interface classes. | |
Subclass Hierarchy | Displays all subclasses that extend or implement the selected (interface) class. | |
Toggle Show Qualified Class Names | Shows the qualified name next to each class. |
Member List
The member list shows all members (fields, functions, tasks, and constructors) of the class that is currently selected in the class hierarchy tree.
The icon shown in the view describes the current active state of the members list options.
Icon | Command | Description |
---|---|---|
Show Inherited Members | Shows members inherited from superclasses. | |
Hide Inherited Members | Hides members inherited from superclasses. | |
Show Fields | Shows fields in the members list. | |
Hide Fields | Hides fields in the members list. | |
Toggle Sort By Defining Class | Sorts members by the class in which they are defined. |
Documentation View
The Documentation View gives you a live preview of the automatic documentation Sigasi Studio can generate for your project.