---
title: "Documentation"
---

{{< boxes >}}

## Introduction to OpenTitan

[OpenTitan](https://opentitan.org/) is an open source silicon Root of Trust (RoT) project. OpenTitan will make the silicon RoT design and implementation more transparent, trustworthy, and secure for enterprises, platform providers, and chip manufacturers. OpenTitan is administered by lowRISC CIC as a [collaborative project]({{< doc-url >}}doc/project_governance{{< /doc-url >}}) to produce high quality, open IP for instantiation as a full-featured product. This repository exists to enable collaboration across partners participating in the OpenTitan project.

## Getting Started

To get started with OpenTitan, see the [Getting Started](/guides/getting_started) page. For additional resources when working with OpenTitan, see the [contribution guide]({{< doc-url >}}doc/contributing{{< /doc-url >}}) and the [tools guide]({{< doc-url >}}util{{< /doc-url >}}). Lastly, the [Hardware book]({{< doc-url >}}hw{{< /doc-url >}}) contains technical documentation on the SoC, the Ibex processor core, and the individual IP blocks. For questions about how the project is organized, see the [project landing spot]({{< doc-url >}}doc/project_governance{{< /doc-url >}}) for more information.

## Understanding OpenTitan

- [Use Cases]({{< doc-url >}}doc/use_cases{{< /doc-url >}})
- [Security]({{< doc-url >}}doc/security/{{< /doc-url >}})

## Datasheets

- [OpenTitan Earl Grey Chip Datasheet]({{< doc-url >}}hw/top_earlgrey/{{< /doc-url >}})

## Documentation

- [Hardware]({{< doc-url >}}hw{{< /doc-url >}})
- [Software]({{< doc-url >}}sw{{< /doc-url >}})

## Development

- [Getting Started](/guides/getting_started)
- [Contributing]({{< doc-url >}}doc/contributing{{< /doc-url >}})
- [Tools]({{< doc-url >}}util{{< /doc-url >}})
