Package selection guidance compiled from public package information, community data, and project usage.
ROHD is a framework designed for describing and verifying hardware, particularly suited for rapid open hardware development. It enables developers to model digital circuits using Dart, facilitating simulation, verification, and synthesis of hardware designs. Built with a focus on modularity and reusability, ROHD supports cross-platform development across Android, iOS, macOS, Windows, and Linux. The framework integrates seamlessly into Flutter projects via the flutter pub add command, making it accessible for developers familiar with Dart. Its open-source nature encourages community contributions and transparency in hardware design.
Use cases
Hardware design modeling
Digital circuit verification
Cross-platform hardware simulation
Open-source hardware development
Integration with Flutter workflows
Key features
Dart-based hardware description
Cross-platform support
Modular and reusable components
Built-in simulation and verification tools
Open-source and community-driven
Suitable for
Hardware engineers
IoT developers
Open-source hardware contributors
Flutter developers working with hardware
Researchers in digital design
Considerations
Requires knowledge of digital logic
Limited documentation compared to mature frameworks
Best suited for small-to-medium scale designs
Not intended for production ASIC/FPGA deployment
Steeper learning curve for non-hardware experts
Original README
Original README snapshot from the linked source repository. Visit the repository for the latest content.
Rapid Open Hardware Development (ROHD) Framework
ROHD (pronounced like "road") is a framework for describing and verifying hardware in the Dart programming language.
You can also open this repository in a GitHub Codespace to run the example in your browser with a full IDE. This is also an easy way to get started with contributions!
Simple, free, open source tool stack without any headaches from library dependencies, file ordering, elaboration/analysis options, +defines, etc.
Excellent, simple, fast unit-testing framework
Less verbose than alternatives (fewer lines of code)
Enables higher quality development
Replaces hacky perl/python scripting for automation with powerful native control of design generation
Fewer bugs and lines of code means shorter development schedule
Support for cosimulation with verilog modules (via ROHD Cosim) and instantiation of verilog modules in generated SystemVerilog code
Use modern IDEs like Visual Studio Code, with excellent static analysis, fast autocomplete, built-in debugger, linting, git integration, extensions, and much more
Simulate with various abstraction levels of models from architectural, to functional, to cycle-accurate, to RTL levels in the same language and environment.
ROHD is not a new language, it is not a hardware description language (HDL), and it is not a version of High-Level Synthesis (HLS). ROHD can be classified as a generator framework.
You can think of this project as an attempt to replace SystemVerilog and related build systems as the front-end methodology of choice in the industry.
One of ROHD's goals is to help grow an open-source community around reusable hardware designs and verification components.
Contributing
ROHD is under active development. If you're interested in contributing, have feedback or a question, or found a bug, please see CONTRIBUTING.md.