Entropy Pool

The entropy pool (sep_entropy_fifo) is a read-only 64-bit AXI aperture through which software drains conditioned entropy. It is a top-level block in sep, reached as a target on the SEP local crossbar; see the Memory Map for its address window. The pool is filled autonomously by a native EDN endpoint on a separate hardware path, not through the crossbar; see the TRNG and DRBG for the fill path and the entropy it carries.

1. Access Policy

  • A read of DATA pops one 64-bit conditioned word. Reading an empty pool returns SLVERR rather than OKAY, so an empty pool is distinguishable from a genuine zero word.

  • STATUS and IRQ_CAUSE are non-destructive reads. STATUS reports pool occupancy (fifo_level), the low-watermark condition (pool_low), an EDN fill stall (fill_stall) and a FIFO integrity fault (pool_error); the latter three are also raised to the PIC (see the Interrupts).

  • The pool is read-only. A write to any offset terminates with BRESP=SLVERR and changes no state.

  • All three registers are 64-bit access-width (STATUS, IRQ_CAUSE and DATA each occupy one 8-byte slot) and are read with a single 64-bit access. A 32-bit read of a register’s upper word (offset +4) is not decoded: it returns SLVERR with zero data, and for DATA it does not pop the pool. Read the full 64-bit word to obtain a register’s value. The exact decode response codes are tabulated with the aperture in the Memory Map.

  • The aperture accepts single-beat accesses only (Single-Beat Register Access). An access to an unmapped offset within the aperture likewise returns SLVERR with zero data.

2. Memory Map and Register Reference

2.1. Memory Map

Register offsets are relative to the block base in the subsystem memory map. The detailed map below defines each register and its fields.

2.2. Detailed Register Map

SEP Entropy Pool

Read-only entropy pool FIFO; DATA reads drain conditioned entropy supplied by the native EDN, and writes return SLVERR.

Register List:

AddressNameAccessDescription
0x0STATUSR-
0x8IRQ_CAUSER-
0x10DATAR-

Register Details:

STATUS

BitsFieldAccessResetDescription
63:9Reserved--Reserved
8pool_errorR-The pool detected a FIFO integrity error
7fill_stallR-The EDN fill request exceeded the configured stall threshold
6pool_lowR-The pool occupancy is below the configured low watermark
5:0fifo_levelR-Current number of available 64-bit entropy words

IRQ_CAUSE

BitsFieldAccessResetDescription
63:3Reserved--Reserved
2pool_errorR--
1fill_stallR--
0pool_lowR--

DATA

BitsFieldAccessResetDescription
63:0entropyR-Pops one conditioned entropy word; an empty pool returns SLVERR