docs: geom_honoured is asserted but not wired anywhere yet
The ring-geometry note claimed a rejected BP/RHBP is "observable rather than silent". That is overstated: geom_honoured exists on RXFrameAssembler and the tests check it, but BBATop wires it to nothing -- no status register, no LED, no UART line -- so a rejected geometry is silent to both the GC and the bench. Recorded as a loose end; the guarantee today is "rejected rather than obeyed", not "reported". Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
+11
-4
@@ -66,10 +66,17 @@ driver's smaller ring is respected instead of ignored.
|
||||
|
||||
**Garbage is rejected, not obeyed.** The bounds are used only when
|
||||
`bp >= 1` (page 0 is the TX buffer), `rhbp <= 0x0F` and `rhbp > bp`;
|
||||
otherwise the hardcoded pages 1–15 stand and `geom_honoured` goes low, so a
|
||||
mismatch is observable rather than silent. Without that check, `BP = 0` or an
|
||||
`RHBP` below `BP` gives a zero or negative ring size and the assembler writes
|
||||
outside it.
|
||||
otherwise the hardcoded pages 1–15 stand and `geom_honoured` goes low.
|
||||
Without that check, `BP = 0` or an `RHBP` below `BP` gives a zero or negative
|
||||
ring size and the assembler writes outside it.
|
||||
|
||||
⚠️ **`geom_honoured` is NOT yet observable from outside the FPGA.** It is
|
||||
declared on `RXFrameAssembler` and asserted correctly (T7/T7b check it), but
|
||||
`BBATop` does not wire it to anything — no status register, no LED, no UART
|
||||
line. So a rejected geometry is currently silent to the GC and to the bench.
|
||||
Wiring it to the `StatusPanel` or the UART console is a small loose end worth
|
||||
closing; until then "rejected rather than obeyed" is the guarantee, not
|
||||
"reported".
|
||||
|
||||
⚠️ **A ring must be LARGER than `_MAX_FRAME_PAGES` (6) or nothing is ever
|
||||
stored.** A frame's length is unknown until EOF, so the assembler reserves the
|
||||
|
||||
Reference in New Issue
Block a user