Hardware

This page serves as the landing spot for all hardware development within the OpenTitan project.

We start off by providing links to the results of various tool-flows run on all of our Comportable IPs. This includes DV simulations, FPV and lint, all of which are run with the dvsim tool which serves as the common frontend.

The Comportable IPs following it provides links to their design specifications and DV documents, and tracks their current stage of development. See the Hardware Development Stages for description of the hardware stages and how they are determined.

Next, we focus on all available processor cores and provide links to their design specifications, DV documents and the DV simulation results.

Finally, we provide the same set of information for all available top level designs.

Block-level results of tool-flows

Comportable IPs

Design Spec DV Document Spec Version Development Stage Notes
adc_ctrl DV 2.0.0 L1 D2S V2S S2
aes DV 1.0.1 L1 D2S V2S S2

 

aon_timer DV 2.0.0 L1 D2S V2S S2

 

csrng DV 2.0.0 L1 D2S V2S S2

 

edn DV 2.0.0 L1 D2S V2S S2

 

entropy_src DV 2.0.0 L1 D2S V2S S2

 

gpio DV 1.0.0 L2 D3 V3 -

 

1.1.0 L1 D3 V2S S2

 

hmac DV 0.5.0 L2 D3 V3 -

 

1.0.0 L1 D3 V2S S2

 

2.0.0 L1 D2S V2S S0

 

i2c DV 2.0.0 L1 D2S V2S S2

Verification Stage is V2S qualified by the given exceptions in PR#22108. This broadly excludes verif. of multi-controller features.

keymgr DV 2.0.0 L1 D2S V2S S2

 

kmac DV 2.0.0 L1 D2S V2S S2

 

lc_ctrl DV 2.0.0 L1 D3 V2S S2

 

otbn DV 0.1.0 L1 D1 V1 S1

 

1.1.0 L1 D2S V2S S2

 

otp_ctrl DV 0.1.0 L1 D2 V2 S1

 

1.0.0 L1 D3 V2S S2

 

2.0.0 L1 D3 V2S S2

 

pattgen DV 1.1.0 L1 D2S V2S S2

 

pwm DV 1.0.0 L1 D2S V2S S2

 

rom_ctrl DV 1.0.1 L1 D3 V2S S2

 

rv_core_ibex DV 2.0.0 L1 D2S V2S S2

Ibex Verification is tracked in the Ibex documentation.

rv_dm DV 1.1.0 L1 D2S V2S -

 

rv_timer DV 0.5.0 L2 D3 V3 -

 

1.0.0 L1 D3 V2S S2

D3 Reviewed @ 2022-07-28

spi_device DV 0.5.0 L1 D1 V1 S0

 

1.0.0 L1 D2S V2S S2

 

2.0.0 L1 D2S V2S S1

 

spi_host DV 2.0.0 L1 D2S V2S S2

 

sram_ctrl DV 1.1.0 L1 D3 V2S S2

 

sysrst_ctrl DV 2.0.0 L1 D3 V2S S2

 

uart DV 1.0.0 L2 D3 V3 -

 

1.1.0 L1 D3 V2S S2

 

2.0.0 L1 D2S V2S S2

 

usbdev DV 2.0.0 L1 D2S V2S S2

 

Processor cores

Earl Grey top-level

Earl Grey-specific comportable IPs

Design Spec DV Document Spec Version Development Stage Notes
pinmux DV 1.1.0 L1 D3 V2S S2

Use FPV to perform block level verification.

sensor_ctrl DV 2.0.0 L1 D3 N/A -

Verified at the top-level.

alert_handler DV 1.0.1 L1 D3 V2S S2

Use both FPV and DV to perform block level verification.

clkmgr DV 1.0.1 L1 D3 V2S S2

 

flash_ctrl DV 0.1.0 L1 D1 V1 -

 

2.0.0 L1 D2S V2S S2

 

pwrmgr DV 0.1.0 L1 D1 V0 S0

 

1.0.1 L1 D3 V2S S2

 

rstmgr DV 1.0.0 L1 D3 V2S S2

 

rv_plic DV 2.0.0 L1 D3 V2 S2

Use FPV to perform block level verification.

Darjeeling top-level