Home

Awesome

VSRTL

VSRTL build and test Gitter

Visual Simulation of Register Transfer Logic

VSRTL is a framework for describing, visualizing and simulating digital circuits.
A VSRTL-described circuit may be built and simulated as a standalone application or embedded within a Qt-based C++ application. As an example, VSRTL is used as the simulation and visualization framework for Ripes, a graphical processor simulator and assembly editor for the RISC-V ISA.

Refer to the reference section for implementation and usage documentation.
If you would like to contribute, check the issues section - There's plenty of work to be done!
For questions, comments, feature requests, or new ideas, don't hesitate to share these at the discussions page.

<p align="center"> <img src="https://github.com/mortbopet/vsrtl/blob/master/resources/gif1.gif?raw=true" width=75%/> </p>

Figure: A visualization of VelonaCore, a single cycle processor implementing the Leros instruction set.

Building

git clone --recurse-submodules https://github.com/mortbopet/VSRTL.git
cd VSRTL/
cmake .
make -j$(nproc)

Dependencies:


In papers and reports, please refer to VSRTL as follows: 'Morten Borup Petersen. VSRTL. https://github.com/mortbopet/VSRTL', e.g. using the following BibTeX code:

@MISC{VSRTL,
	author = {Morten Borup Petersen},
	title = {VSRTL: Visual Simulation of Register Transfer Logic},
	howpublished = "\url{https://github.com/mortbopet/VSRTL}"
}