lowRISC / lowRISC/opentitan

[kmac/rtl] Decide if we need a way to recover from an error if the HW application interface does not provide the last data item.

Open
#22,955 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Component:RTL IP:kmac Type:FutureRelease
Dominant language
SystemVerilog
Stars
3.6k
Forks
1.1k
Avg merge
2d 22h
Merged PRs (30d)
141

Description

Description

Factored out from #22794: we should decide if KMAC needs a way to recover from an error if a hardware application interface does not provide the last data item.

This may happen e.g. because of an escalation or bug in the hardware block connecting to the hardware interface. Right now, KMAC cannot handle this and will become unusable. One way to avoid KMAC becoming unusable would be to add an interface for software to clear all hardware application interfaces and put them back into a known good state.

For Earl Grey, @andreaskurth and I disucssed that we most likely don't need that because the hardware blocks interfacing with KMAC over app interfaces are critical system blocks like ROM_CTRL, LC_CTRL and KEYMGR. If any of these blocks hangs due to an issue, we anyway need to reset the system and thus KMAC. But for future versions, this might be desirable as other hardware blocks might get an application interface as well (e.g. OTBN or DMA). A hang condition in any of these blocks would then cause KMAC and thus ROM_CTRL, LC_CTRL, KEYMGR to hang which is most likely not acceptable.

I am thus adding the FutureReleases label.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the KMAC hardware application-interface behavior described here and the related issue #22794. Compare adding software recovery for missing final data with relying on a system reset for Earl Grey and future interfaces such as OTBN or DMA. Done means documenting a decision and its scope for a future release.

Written by the indexing model from the issue text.

Assessment

Domain
cryptography, embedded-iot, security
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.