Introduction¶
Diplomat is a bundle of tools used to ease the development and debugging of SystemVerilog designs. While its aim is to be as complete and useful as possible in a seamless and straightforward way, it cannot be guaranteed to work without bugs or issues.
- If you found bugs, usability problems or missing features, please drop a word by raising an issue against the element that seems to cause an issue:
The VSCode extension is reponsible for the GUI and everything not related to code analysis proper.
The Language server is reponsible for providing informations about the design to the extension.
VS Code extension¶
The Diplomat VS Code extension (Diplomat Client, sometimes refered as Diplomat Host) is the provided client for interfacing with Diplomat Server.
- It features:
Workspace analysis using the slang open source SystemVerilog compiler.
Error checking and elaboration-level linting
Scope-aware autocompletion suggestions
Jump to definition/reference across files
Syntax coloration
Rename symbol
Assisted instanciation of any module found in the workspace
Language server¶
The Diplomat language server is a full C++ implementation of the Language Server Protocol (LSP) targetting SystemVerilog. It relies on slang to perform code analysis and elaboration.