Referring to the Comportable guideline for peripheral device functionality, the module edn
has the following hardware interfaces defined
- Primary Clock:
clk_i
- Other Clocks: none
- Bus Device Interfaces (TL-UL):
tl
- Bus Host Interfaces (TL-UL): none
- Peripheral Pins for Chip IO: none
Port Name |
Package::Struct |
Type |
Act |
Width |
Description |
csrng_cmd |
csrng_pkg::csrng |
req_rsp |
req |
1 |
EDN supports a signal CSRNG application interface. |
edn |
edn_pkg::edn |
req_rsp |
rsp |
8 |
The collection of peripheral ports supported by edn. The width (4) indicates the number of peripheral ports on a single instance. Due to limitations in the parametrization of top-level interconnects this value is not currently parameterizable. However, the number of peripheral ports may change in a future revision. |
tl |
tlul_pkg::tl |
req_rsp |
rsp |
1 |
|
Interrupt Name |
Type |
Description |
edn_cmd_req_done |
Event |
Asserted when a software CSRNG request has completed. |
edn_fatal_err |
Event |
Asserted when a FIFO error occurs. |
Alert Name |
Description |
recov_alert |
This alert is triggered when entropy bus data matches on consecutive clock cycles. |
fatal_alert |
This alert triggers (i) if an illegal state machine state is reached, or (ii) if a fatal integrity failure is detected on the TL-UL bus. |
Countermeasure ID |
Description |
EDN.CONFIG.REGWEN |
Registers are protected from writes. |
EDN.CONFIG.MUBI |
Registers have multi-bit encoded fields. |
EDN.MAIN_SM.FSM.SPARSE |
The EDN main state machine uses a sparse state encoding. |
EDN.ACK_SM.FSM.SPARSE |
The EDN ACK state machine uses a sparse state encoding. |
EDN.FIFO.CTR.REDUN |
The FIFO pointers of several FIFOs are implemented with duplicate counters. |
EDN.CTR.REDUN |
Counter hardening on the generate command maximum requests counter. |
EDN.MAIN_SM.CTR.LOCAL_ESC |
A mismatch detected inside any EDN counter moves the main state machine into a terminal error state. |
EDN.CS_RDATA.BUS.CONSISTENCY |
Comparison on successive bus values for genbits returned from csrng that will distribute over the endpoint buses. |
EDN.TILE_LINK.BUS.INTEGRITY |
Tilelink end-to-end bus integrity scheme. |