Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>riSim StudioNew to Visual Studio Code? Get it now.
riSim Studio

riSim Studio

xq-Tec

|
4 installs
| (0) | Free
Run VHDL testbenches, view waveforms and debug signals in VS Code.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

riSim Studio

riSim Studio is a VHDL simulation and verification environment built into VS Code. It discovers your VUnit testbenches, runs them on the bundled simulator, and streams live waveforms into an interactive viewer. No separate simulator, Python, or VUnit installation is required.

  • 1. Quick start
    • 1.1. Write a VUnit testbench
    • 1.2. Configure your sources
    • 1.3. Discover your testcases
    • 1.4. Run and debug
  • 2. Features
    • 2.1. Run your testbenches
    • 2.2. Watch live waveforms
    • 2.3. Catch configuration errors early
    • 2.4. Copilot integration
  • 3. Requirements and limitations
  • 4. Documentation
  • 5. Support
  • 6. License and Third-Party Notices

Run a testcase from the Testbenches sidebar and watch the live waveform fill in.

1. Quick start

An empty workspace is enough to get started. We'll add a testbench, point risim-config.toml at it, and run our first simulation.

Skip to 1.2. Configure your sources if you already have a project.

1.1. Write a VUnit testbench

Unless you already have a VUnit testbench, create one and add a testcase. Name the entity with a tb_ prefix or _tb suffix, include the VUnit context, add a runner_cfg : string generic, and terminate with test_runner_cleanup. More detail is in the VUnit user guide.

Create a tb folder in your workspace and copy the following example into tb/tb_example.vhd:

library vunit_lib;
context vunit_lib.vunit_context;

library ieee;
use ieee.std_logic_1164.all;

entity tb_example is
  generic (runner_cfg : string);
  signal clk : std_logic := '0';
end entity;

architecture tb of tb_example is
begin

  -- stimulus process toggles the clock signal `clk` every 10 ns
  stimulus : process
  begin
    wait for 10 ns;
    clk <= not clk;
  end process;

  main : process
  begin
    test_runner_setup(runner, runner_cfg);

    while test_suite loop

      if run("test_pass") then
        wait for 5 ns;
        assert clk = '0' report "This will pass";

      elsif run("test_fail") then
        wait for 10 ns;
        assert clk = '0' report "It fails";

      end if;
    end loop;

    test_runner_cleanup(runner);
  end process;

end architecture;

1.2. Configure your sources

Add a risim-config.toml file at the root of your workspace folder, mapping source files to VHDL libraries:

[libraries.my_design]
files = ["tb/tb_*.vhd"]

This compiles all VHDL files in the tb folder into the my_design library. Source files are searched automatically for VUnit-compatible testbenches.

1.3. Discover your testcases

Open the riSim view in the activity bar. Once discovery completes, testbenches appear in the Testbenches sidebar. Configuration problems show up in the VS Code Problems panel.

1.4. Run and debug

Click the run icon next to a testcase to execute it, or choose Load and wait to start the simulation paused so you can open a waveform tab. Add signals from the Design Hierarchy to display their waveforms.

2. Features

2.1. Run your testbenches

The Testbenches sidebar lists all testcases in your project.

  • Automatic discovery of VUnit testcases from risim-config.toml — no run.py to maintain
  • Run one testcase or all of them from the sidebar
  • Parallel execution: simulations are scheduled across your CPU cores
  • Incremental recompiles: edit sources and re-run; only what changed is recompiled
  • Multi-root workspaces: each workspace folder can have its own risim-config.toml

2.2. Watch live waveforms

  • Live signal updates stream into the waveform tab while the simulation runs
  • Full run control: run, pause, and stop from the sidebar or the waveform view
  • Build your view from the Design Hierarchy: add a single signal, a module's direct signals, or an entire subtree with one click
  • Display options: signal colors, separators, binary/decimal/hexadecimal radix, string/signed/unsigned array representation, analog and digital drawing modes
  • Navigation: one-click auto zoom to fit, time units from femtoseconds to seconds

Live waveform updates during simulation, pause, then zoom in to signal detail

2.3. Catch configuration errors early

The risim-config.toml file is validated on save. Errors appear in the Problems panel with file, line, and message. Changing the config file re-discovers testcases automatically; the next simulation run recompiles as needed.

2.4. Copilot integration

With GitHub Copilot Chat you can debug your testbenches and simulations with AI-powered assistance. Tell Copilot to debug a testbench or ask @risim how it can help you.

  • Ask @risim /workflow for a guided tour from configuration to waveforms, or @risim /explainConfig when testbenches will not run
  • In agent mode, use #risimTestcases, #risimSimulations, #risimDiagnostics, and #risimRunTestcase to list tests, check config errors, and launch simulation runs
  • Ask Copilot to debug a testcase or write new testcases with the bundled MCP server

Copilot agent fixing a testbench error

3. Requirements and limitations

  • Platforms: VS Code 1.116 or newer, on Linux x64 or Windows x64
  • Language: VHDL-2008, compiled with the bundled GHDL-based simulator
  • Testbench: VUnit builtins com and osvvm are added automatically
  • No full run.py support: riSim builds your project from risim-config.toml; VUnit's Python hooks (pre_config, post_check) are not available

4. Documentation

For more information about Copilot AI features, see AI and Copilot integration.

5. Support

Questions, bugs, and feature requests: open an issue on GitHub or visit risim-studio.com. Extension logs are in the Output panel under riSim. Please include them when reporting a problem.

6. License and Third-Party Notices

riSim Studio is proprietary software; see LICENSE.txt.

The extension bundles and incorporates third-party components (including the GHDL simulator under the GNU GPL v2, a CPython runtime, VUnit under the MPL 2.0, and numerous permissively licensed Rust and JavaScript libraries). Their licenses, attributions, and the corresponding-source offer for GHDL are collected in THIRD_PARTY_NOTICES.md. Full license texts are in third-party-licenses/.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft