VSRTL icon indicating copy to clipboard operation
VSRTL copied to clipboard

Visual Simulation of Register Transfer Logic

Results 30 VSRTL issues
Sort by recently updated
recently updated
newest added

Implement all Primitive Operations in Firrtl [spec](https://github.com/freechipsproject/firrtl/blob/master/spec/spec.pdf) Then we can parse firrtl, dynamically build the circuit by components, then we can simulate the firrtl circuit. How do you think it?

Ie. Multiplexers should have their select port to be at either the top- or bottom of the component.

Graphics

With #40 , it should be possible to partition the graph into subgraphs with no dependencies. These subgraphs are then valid to be executed in a separate thread. This task...

Core

Currently, clocking the circuit is bound by the QEventLoop, limiting the circuit to be clocked at ~5ms intervals at a minimum. If faster simulations are desired, the circuit should be...

enhancement
Core

It should be possible to store and load a file for specifying the configuration of the graphical view. Serialized data should include: - Component positions - Component expansion state -...

enhancement
Graphics

Currently, the graphics view and netlist view have to manually synchronize selections. This is error prone and tedious to expand. A shared selection model should be implemented, to centralize selection...

enhancement
Graphics

Many places, unimplemented or unreachable states are marked by Q_ASSERT(false). Most of these should be replaced with Q_UNREACHABLE(), which is more fitting for the task.

enhancement
good first issue
Graphics

This issue is related to removing some of the initial hardcoding, and moving it to a settings widget. The settings should be implemented through QSettings. **Drawing:** - Changing wire width...

Graphics
Core

It is annoying and verbose to type eg.: ``` INPUTPORT_W(acc, 32); ... return acc.value() == 0; ``` Comparison with integer literals is fairly safe, and should be implemented as an...

Core

To have compile-time bit-width checking, propagation functions should be typed with a width paramter for instance ``` std::function m_propagationFunction; ``` would be transformed to ``` template std::function m_propagationFunction; ```

Core