LSC1-08: use fixed scalar RESULT byte mux - #78
Conversation
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
Bugbot couldn't run - usage limit reachedBugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit. A user or team admin can review and increase usage limits in the Cursor dashboard. (requestId: serverGenReqId_04fbd5dd-378a-4c3d-a505-d816119267e0) |
Bugbot couldn't run - usage limit reachedBugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit. A user or team admin can review and increase usage limits in the Cursor dashboard. (requestId: serverGenReqId_a012715b-d2ee-47ad-b2d0-d7999db464ce) |
|
@codex review Fresh exact-head review requested for Evidence-only repair receipts:
Immediately before this request, local HEAD, remote branch HEAD, and PR HEAD matched exactly; the worktree was clean and |
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
|
@codex review Fresh exact-head review requested for |
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
Scope
This is exactly one bounded LSC1-08 slice from
79d926462cbaf51a2c87c3fa112527dd28f610aa.SHA256SUMSfor the two changed tracked sourcesVerification on exact clean head
Semantic verification head:
d1be00a6d6abe5de30fa6d8daeedd7ee1983dfc2Evidence publication head:
83f864aa399ba4a60996ab9dd44740a0c1957ada(receipts/checksum metadata only; no RTL semantic change)All required lanes passed:
make -C test/packet_frontend simmake -C test/packet_frontend mutationmake -C test/packet_frontend differential-mutationmake -C test/packet_frontend lifecycle-mutationPYTHONDONTWRITEBYTECODE=1 PYTHONPATH=. python3 -m unittest sim.test_packet_frontend_rtl_differential -v(17 tests)make lsc1-authored-rtl-contractmake lsc1-host-authored-rtl-boundarymake simmake check(379 simulation/model tests plus the remaining repository gates)make lean(build and required mutation checks; existing linter warnings unchanged)make checksum-checkThe full LSC1 netlist-assurance lane also passed using a private cache outside the checkout. The complete machine-readable receipt is now committed at
evidence/lsc1-08-s3/full-lsc1-netlist-receipt.json, and its digest is pinned by the repositorySHA256SUMS:passb0afb9a5a826e8a468f3bae65991c624abb01fa3796b889fc854e8cc76872a9ee2656fa0093bfb8ad5634639ce7aab3914a6655abfc592224a85e842145c84c0d1be00a6d6abe5de30fa6d8daeedd7ee1983dfc2bounded-pass-unbounded-blockedGeneric Yosys structure observation
The committed machine-readable Yosys structure receipt records the Yosys 0.68 banner, pinned OSS CAD Suite CI setup/manifest digest, exact commands, source SHAs, log digests, warnings, and full before/after cell-type trees. Its summarized generic
proc; flatten; opt; fsm; opt; memory; opt; check; statcounts are:$mux$shiftx$subBoth runs report seven warnings. The existing
ext_wordlatch warning remains becauseext_wordis still used by the untouched BLAKE3 serializer branch.These are unmapped generic structure counts only. This PR makes no PPA, mapped-area, timing, netlist-unbounded, P&R, FPGA, or hardware claim, and it does not establish universal cycle equivalence or arbitrary ready/valid liveness.
Note
Medium Risk
Changes packet frontend RESULT byte serialization on the TX path; extensive sim, mutation, and bounded netlist checks mitigate protocol regressions, but this is still correctness-critical RTL.
Overview
LSC1-08 replaces the scalar RESULT TX path (
tx_external_kind == 3) inlsc1_packet_frontend.sv: variabletx_payload_indexmath and indexedscalar_staged_access[]reads become nestedcasestatements with fixed per-byte slices for zero-write, one-write, and deferred payload shapes. Three wires (scalar_staged_access_0–2) expose staged access words for those explicit muxes; BLAKE3 serialization is unchanged.Assurance:
.gitignorewhitelistsevidence/lsc1-08-s3/*.json; checked-in full LSC1 netlist and Yosys structure receipts document bounded-pass verification and slightly lower generic$mux/$shiftxcounts.test/packet_frontend/Makefilescalar-result-mutation anchors target the new17: tx_payload_external_data = scalar_staged_write_value[7:0];line.SHA256SUMSupdated for touched artifacts.Reviewed by Cursor Bugbot for commit 83f864aa399ba4a60996ab9dd44740a0c1957adaa399ba4a60996ab9dd44740a0c1957ada. Bugbot is set up for automated code reviews on this repo. Configure here.