DVT IDE for VS Code SystemVerilog User Guide
Rev. 24.1.6, 27 March 2024

Chapter 7. Hyperlinks

Hyperlinks are available for all classes, modules, methods, fields, signals, macros, etc. in the source code files that DVT analyzes in your project.


Go to Declaration

Place editor cursor over an identifier and use the "Go to Declaration" command to go to the declaration of the element.


Go to Definition

Place editor cursor over an identifier while holding down the Ctrl key. The identifier becomes a hyperlink, which jumps to the definition of the element.

You can also use the "Go to Definition" command.


Go to Type Definition

Place editor cursor over an identifier and use the "Go to Type Definition" command to go to the type definition of the element.


Jump to Assignment

Place cursor on a signal and use the "DVT: Jump to Assignment" command to jump to its next assignment.


Open Design Breadcrumb Instance

Available only for a design element under cursor which is instantiable.

Place editor cursor over an element and use the "DVT: Open Design Breadcrumb Instance" command to jump to the corresponding instance from design.


Hyperlinks in Comments

You can define hyperlinks in comments using the @link or @see pragmas, for example:

// @link uvm_pkg::run_test
// For more details @see spi_if.miso and @see spi_if.mosi

Hover the hierarchical id specified after the pragma with the mouse cursor while holding down the Ctrl key and click to go to the element's declaration.

The hierarchical identifier following @link or @see is of the form:

[<package_name>::<type_name>.<inner_type_name>.]<element_name>

where <element_name> must be a type (class, struct, module, entity, interface, etc.) or a type member (method, field, event, signal, port etc.).


Go to Super Implementation

Place editor cursor on a method name and use the "DVT: Go to Super Implementation" command to open the implementation of the overridden method.


Go to Child Implementation

Place editor cursor on a method name and use the "DVT: Go to Child Implementation" command to open the implementations which override the method.


Jump to an Imported File

Place the mouse cursor over an imported file while holding down the Ctrl key. The identifier becomes a hyperlink, which jumps to the file.


Jump to a Macro Definition

Place the mouse cursor on a macro while holding down the Ctrl key. The identifier becomes a hyperlink, which jumps to the macro definition.


Show Connected TLM Ports

Place the mouse cursor over a TLM port and use the DVT: Show Connected TLM Ports command.


Show in Config DB View

Place the editor cursor on a UVM Config DB set() or get() function call and use the "DVT: Show in Config DB View" command. Note that you need to perform UVM Runtime Elaboration in order to populate the Config DB View.


Show Associated Getters in Config DB View

Place the editor cursor on a UVM Config DB set() function call and use the "DVT: Show Associated Getters in Config DB View" command. Note that you need to perform UVM Runtime Elaboration in order to populate the Config DB View.


Show Associated Setter in Config DB View

Place the editor cursor on a UVM Config DB get() function call and use the "DVT: Show Associated Setter in Config DB View" command. Note that you need to perform UVM Runtime Elaboration in order to populate the Config DB View.


Show in Factory Overrides View

Place the editor cursor on a UVM factory override function call and use the "DVT: Show in Factory Overrides View" command. Note that you need to perform UVM Runtime Elaboration in order to populate the Factory Overrides View.


Show in Registers View

Place the editor cursor on a UVM register and use the "DVT: Show in Registers View" command. Note that you need to perform UVM Runtime Elaboration in order to populate the Registers View.