Skip to content
STIMSMITH

chipsalliance

Organization WIKI v3 · 5/27/2026

chipsalliance is evidenced as the GitHub owner namespace for `chipsalliance/riscv-dv`, an open-source SV/UVM-based random instruction generator for RISC-V processor verification that the supplied sources associate with CHIPS Alliance.

chipsalliance

Overview

chipsalliance is evidenced in the supplied GitHub metadata as the owner login and namespace for the public repository chipsalliance/riscv-dv. The metadata identifies repository ID 167140400, repository name-with-owner chipsalliance/riscv-dv, and Git import URL https://github.com/chipsalliance/riscv-dv.git.[C1]

The supplied project README describes RISCV-DV as a SystemVerilog/UVM-based open-source instruction generator for RISC-V processor verification.[C2] A Design & Reuse article states that CHIPS Alliance developed an open-source riscv-dv random instruction generator for RISC-V processor verification.[C3]

riscv-dv repository

The primary repository evidenced for this entity is:

chipsalliance/riscv-dv

GitHub page metadata for src/riscv_instr_sequence.sv identifies the repository as chipsalliance/riscv-dv, marks it public, and gives the repository description as:

Random instruction generator for RISC-V processor verification[C1]

The same GitHub metadata shows the referenced source-file page title as riscv-dv/src/riscv_instr_sequence.sv at master · chipsalliance/riscv-dv and the Open Graph URL as https://github.com/chipsalliance/riscv-dv/blob/master/src/riscv_instr_sequence.sv.[C1]

Supported verification features

The riscv-dv README lists support for the following verification features:[C2]

  • RISC-V instruction sets RV32IMAFDC and RV64IMAFDC.
  • Privileged modes: machine mode, supervisor mode, and user mode.
  • Page-table randomization and exception support.
  • Privileged CSR setup randomization and a privileged CSR test suite.
  • Trap and interrupt handling.
  • MMU stress-test suites.
  • Sub-program generation and random program calls.
  • Illegal-instruction and HINT-instruction generation.
  • Random forward and backward branch instructions.
  • Mixing directed instructions with random instruction streams.
  • Debug-mode support with a fully randomized debug ROM.
  • Instruction-generation coverage modeling.
  • Handshake communication with a testbench.
  • Support for hand-coded assembly tests.
  • Co-simulation with multiple instruction-set simulators: Spike, riscv-ovpsim, Whisper, and sail-riscv.

Generator structure

The Design & Reuse article describes the open-source riscv-dv project as defining a SystemVerilog UVM-based class structure used in RISC-V IP verification. It states that generated random tests can be added directly to run with design IP, and that assembly-program sections such as initialization routines, instruction sections, data sections, stack sections, page tables, and interrupt and exception handling are generated by functions in the riscv_asm_program_gen class.[C3]

The article specifically focuses on riscv_asm_program_gen.sv, describing it as a class whose functions generate the complete RISC-V assembly program used to verify RISC-V IP, and noting that the class can address customization to RISC-V general-purpose registers or instructions.[C3]

Configuration and program-generation flow

The Design & Reuse article states that riscv_instr_gen_config is randomized from riscv_instr_base_test.sv. According to the article, that randomization determines the RISC-V extension, supported privilege mode, main-program and subprogram instruction counts, and whether instructions such as ebreak, dret, fence, and wfi are generated through configuration variables including no_ebreak, no_dret, no_fence, and no_wfi.[C4]

The article presents gen_program() as the main function that generates all sections of the assembly program. In the described flow, gen_program() calls functions such as get_directed_instr_stream(), add_directed_instr_stream(), gen_program_header(), gen_section("_start", str), init_gpr(), and generate_directed_instr_stream().[C5]

The same article states that generate_directed_instr_stream() inserts directed instruction streams and randomizes instruction operands such as rs1, rs2, and rd based on instruction type. It also states that riscv_instr_sequence includes generate_instr_stream, that convert2asm() is used once the instruction stream is available, and that insert_sub_program(sub_program[hart], instr_stream) is called when subprogram instructions are generated.[C5]

Tooling requirements

The README states that running the instruction generator requires an RTL simulator with SystemVerilog and UVM 1.2 support. It further states that the generator has been verified with Synopsys VCS, Cadence Incisive/Xcelium, Mentor Questa, and Aldec Riviera-PRO simulators.[C6]

Collaboration notes

The README states that RISC-V DV is now contributed to CHIPS Alliance and that regular meetings are held to discuss issues, feature priorities, and development progress. It points users to the riscv-dv-wg mail group for status, CONTRIBUTING.md for license-related questions, and the repository issue tracker for bug reports, integration issues, and feature requests.[C7]

The README also states that the project is not an officially supported Google product.[C7]

Metadata summary

Field Value
GitHub owner login chipsalliance
Repository chipsalliance/riscv-dv
Repository ID 167140400
Repository public true
Repository description Random instruction generator for RISC-V processor verification
Git URL https://github.com/chipsalliance/riscv-dv.git
Referenced source file src/riscv_instr_sequence.sv
Branch shown in source-file page master

These metadata values are drawn from the supplied GitHub metadata for the repository and source-file page.[C1]

References

  • [C1] GitHub metadata for chipsalliance/riscv-dv and src/riscv_instr_sequence.sv.
  • [C2] chipsalliance/riscv-dv README description and feature list.
  • [C3] Design & Reuse article describing CHIPS Alliance development of riscv-dv and the riscv_asm_program_gen.sv class.
  • [C4] Design & Reuse article section on riscv_instr_gen_config randomization.
  • [C5] Design & Reuse article section on the gen_program() flow and instruction-stream generation.
  • [C6] chipsalliance/riscv-dv README tooling requirements and simulator verification notes.
  • [C7] chipsalliance/riscv-dv README external contributions and collaboration notes.

CITATIONS

7 sources
7 citations
[1] GitHub metadata identifies `chipsalliance` as the owner login for the public repository `chipsalliance/riscv-dv`, repository ID `167140400`, and Git URL `https://github.com/chipsalliance/riscv-dv.git`; it also identifies the source-file page for `src/riscv_instr_sequence.sv`. riscv-dv/src/riscv_instr_sequence.sv at master · chipsalliance/riscv-dv
[2] The `riscv-dv` README describes RISCV-DV as a SystemVerilog/UVM-based open-source instruction generator for RISC-V processor verification and lists its supported verification features. chipsalliance/riscv-dv
[3] The Design & Reuse article states that CHIPS Alliance developed an open-source `riscv-dv` random instruction generator for RISC-V processor verification and describes `riscv_asm_program_gen.sv` as generating complete RISC-V assembly programs. RISC-V source class riscv_asm_program_gen, the brain behind ...
[4] The Design & Reuse article states that `riscv_instr_gen_config` is randomized from `riscv_instr_base_test.sv` and controls settings such as RISC-V extension, privilege mode, instruction counts, and generation of `ebreak`, `dret`, `fence`, and `wfi` instructions. RISC-V source class riscv_asm_program_gen, the brain behind ...
[5] The Design & Reuse article describes `gen_program()` as the main function for generating program sections and lists related calls including directed-instruction stream selection, header generation, GPR initialization, instruction-stream conversion, and subprogram insertion. RISC-V source class riscv_asm_program_gen, the brain behind ...
[6] The `riscv-dv` README states that running the generator requires an RTL simulator supporting SystemVerilog and UVM 1.2 and says the generator has been verified with Synopsys VCS, Cadence Incisive/Xcelium, Mentor Questa, and Aldec Riviera-PRO. chipsalliance/riscv-dv
[7] The `riscv-dv` README states that RISC-V DV has been contributed to CHIPS Alliance, that regular meetings are held for issues and development progress, and that the project is not an officially supported Google product. chipsalliance/riscv-dv

VERSION HISTORY

v3 · 5/27/2026 · gpt-5.5 (current)
v2 · 5/27/2026 · gpt-5.5
v1 · 5/24/2026 · gpt-5.5