Skip to content

Commit

Permalink
[keymgr,keymgr_dpe] Don't block PRNG reseeding operations while proce…
Browse files Browse the repository at this point in the history
…ssing commands

A code comment mentioned that this was due to DV limitations but there
are no signs that this limitation still exists. Removing this
qualification of the seed enable signal is more efficient from an
entropy consumption viewpoint as the entropy is anyway requested but
just dropped in case of commands being processed currently.

Co-authored-by: Andreas Kurth <[email protected]>
Signed-off-by: Pirmin Vogel <[email protected]>
  • Loading branch information
2 people authored and Razer6 committed Sep 24, 2024
1 parent f71bc93 commit eaf21ea
Showing 1 changed file with 1 addition and 6 deletions.
7 changes: 1 addition & 6 deletions hw/ip/keymgr_dpe/rtl/keymgr_dpe.sv
Original file line number Diff line number Diff line change
Expand Up @@ -209,12 +209,7 @@ module keymgr_dpe
.clk_i,
.rst_ni,
.lfsr_en_i(ctrl_lfsr_en | data_lfsr_en | sideload_lfsr_en),
// The seed update is skipped if there is an ongoing keymgr transaction.
// This is not really done for any functional purpose but more to simplify
// DV. When an invalid operation is selected, the keymgr just starts transmitting
// whatever is at the prng output, however, this may cause a dv protocol violation
// if a reseed happens to coincide.
.seed_en_i(seed_en & ~reg2hw.start.q),
.seed_en_i(seed_en),
.seed_i(seed),
.entropy_i('0),
.state_o(lfsr)
Expand Down

0 comments on commit eaf21ea

Please sign in to comment.