lowRISC / opentitan

OpenTitan: Open source silicon root of trust
https://www.opentitan.org
Apache License 2.0
2.59k stars 779 forks source link

[otbn] Implement P384 in current ISA #2982

Closed imphil closed 3 years ago

imphil commented 4 years ago

Profile implementation of P256 and P384 sign/very operations, and evaluate performance degradation due to lack of extensible modular instructions for P384.

(Split out from https://github.com/lowRISC/opentitan/issues/2856)

Sub-tasks

Evaluation results for p384 multiplication

(copied from the #3192) Currently it is 152 cycles for 384 bit vs. 37 cycles for 256 bit. This is with using the fully unrolled multiplication.

There is room for optimization here:

felixmiller commented 3 years ago

Edited original issue to track implementation of all the p384 building blocks. Like we did with p256