ROHD는 하드웨어를 설명하고 검증하기 위해 설계된 프레임워크로, 특히 빠른 오픈 하드웨어 개발에 적합합니다. 개발자들이 Dart를 사용하여 디지털 회로를 모델링할 수 있게 해주며, 하드웨어 설계의 시뮬레이션, 검증 및 합성 작업을 용이하게 합니다. 모듈성과 재사용성을 중시하여 Android, iOS, macOS, Windows, Linux에서 크로스플랫폼 개발을 지원합니다. flutter pub add 명령을 통해 Flutter 프로젝트에 원활하게 통합되며, Dart에 익숙한 개발자에게 접근성이 뛰어납니다. 오픈소스 성격 덕분에 커뮤니티 기여와 하드웨어 설계의 투명성을 장려합니다.
사용 사례
하드웨어 설계 모델링
디지털 회로 검증
크로스 플랫폼 하드웨어 시뮬레이션
오픈소스 하드웨어 개발
Flutter 워크플로우와의 통합
주요 기능
Dart 기반 하드웨어 설명
크로스 플랫폼 지원
모듈형이고 재사용 가능한 컴포넌트
내장된 시뮬레이션 및 검증 도구
오픈소스이며 커뮤니티 주도
적합한 대상
하드웨어 엔지니어
사물인터넷 개발자
오픈소스 하드웨어 기여자
하드웨어를 사용하는 Flutter 개발자
디지털 디자인 분야의 연구자
고려 사항
디지털 로직에 대한 지식이 필요합니다
성숙한 프레임워크에 비해 문서가 제한적
소규모에서 중규모 디자인에 가장 적합
생산용 ASIC/FPGA 배포를 위한 것이 아님
하드웨어 전문가가 아닌 사람에게는 학습 곡선이 더 가파르다
원본 README
연결된 소스 저장소의 README 원문 스냅샷입니다. 최신 내용은 저장소에서 확인하세요.
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.