Open Silicon Governance practices
01 / Governance-
01
Project Governance
The Governing Board has one representative from each of the higher-tier member organisations.
The Governing Board defines the strategy and direction for the project, maintains good governance and defines the project organisation.
-
02
Independent Technical Direction
Technical direction comes from an independent Technical Committee, which has one representative from each of the higher-tier member organisations.
The Technical Committee proposes the technical roadmap, manages the collaborative RFC process, approves write access and manages trademark compliance.
-
03
A strong and open community
Community involvement drives and reviews the project through the Working Groups, which any member is free to join.
The community is built on respect and openness, embodied in our Code of Conduct.
-
04
Assets held in common
Project assets are held in common for the benefit of the project by an independent steward.
This ensures fair and equal access to all, avoids fragmentation, ensures consistent quality, and maintains long-term technical support.
-
05
Permissive licensing
Assets are under an open and permissive license.
Contributions follow best practice:
Member organisations authorise contributors through a Contributor License Agreement (CLA) or membership agreement.
Contributors unambiguously grant copyright and patent licenses to the Project and recipients of the Project’s code.
-
06
Clear roles
Open Silicon Development relies on clear roles and understanding of these roles.
All members are encouraged to contribute and review.
Contributors actively build the project.
Reviewers maintain project quality.
Committers appointed by the Technical Committee ensure oversight.
Open Silicon Development practices
02 / Development-
01
Code Base & Version Control
A project-wide public source code base. Some code related to EDA tools, silicon foundry processes and libraries, and proprietary technology can not be open-sourced. All source code under version control.
-
02
Code review
Every contribution goes through code review. This holds for senior engineers as much as for junior team members.
Code reviews ensure the quality of the shared code base, ensure consensus and spread knowledge and awareness about changes. Every contributor is encouraged to review code.
-
03
Continuous Integration & Verification
Every commit to the code base automatically gets verified using HW simulators and synthesis tools, and this may include deployment of and execution on FPGA.
Public data means that everyone can see what works, what is tested and the results of those tests. CI results related to proprietary tools and/or technology may be subject to confidentiality restrictions.
-
04
Quality Definition
Clearly defined and visible quality levels for IP. This ensures that the quality level is proven, open and published and can be relied upon by OpenTitan users.
-
05
Documentation
Rigorous maintenance of technical documentation to support new users and experienced developers. Automation and templating of documentation ensures that documentation always aligns with code.
-
06
Open communication
A wide range of collaboration tools are used to ensure that information is shared:
- Team chat (Slack) for everyday communication
- Issues (GitHub) for changes and enhancements
- Code reviews (GitHub) to agree implementation
- Shared documents to converge on specifications
- Working group meetings for synchronization
- Mailing lists for announcements