rtl: implement Chisel skeleton for PopLinkPHY_Behavioral #51

Closed
opened 2026-05-25 14:35:05 -03:00 by navigator · 7 comments
Owner

Goal

Implement the Chisel skeleton for PopLinkPHY_Behavioral per rtl/src/pop/specs/PopLinkPHY_Behavioral.SPEC.md. This issue closes the gap between the SPEC text and a buildable Scala module, with an IO bundle, internal stubs, and a chiseltest unit testbench skeleton — no full behaviour yet.

Module dep status: leaf.

Acceptance criteria

  • rtl/src/pop/PopLinkPHY_Behavioral.scala exists, compiles under Chipyard 1.13.0 with sbt compile green
  • IO bundle reflects the Interface section of PopLinkPHY_Behavioral.SPEC.md (use ??? / DontCare for fields where the spec is TBD — annotate each with a // TBD per SPEC §<section> comment)
  • Module is wired into the parent (only for non-leaf modules; leaves can stand alone)
  • rtl/tests/PopLinkPHY_Behavioral/PopLinkPHY_BehavioralSpec.scala exists with a chiseltest AnyFlatSpec skeleton: at least one test that elaborates the module via should "elaborate"
  • Header preserved: SPDX-License-Identifier: CHARRUA-1.2 on the Scala source; AGPL-3.0-or-later on the test
  • No fabricated values for spec TBD items — leave as DontCare with comment, do not invent widths/timing

Blocked on

  • #46 (Chipyard install) — without the toolchain, sbt compile cannot run.

Plan refs

PLAN.md §8.2 (custom module list); §12.3 (per-module verification floor). ADRs that constrain this module: see SPEC file header.

Notes

  • Coverage targets and full behaviour come in follow-up issues. This issue is the skeleton + elaborate.
  • Do not modify the SPEC file itself in this PR — SPEC edits are separate decisions.
## Goal Implement the Chisel skeleton for `PopLinkPHY_Behavioral` per `rtl/src/pop/specs/PopLinkPHY_Behavioral.SPEC.md`. This issue closes the gap between the SPEC text and a buildable Scala module, with an IO bundle, internal stubs, and a chiseltest unit testbench skeleton — no full behaviour yet. **Module dep status:** leaf. ## Acceptance criteria - [ ] `rtl/src/pop/PopLinkPHY_Behavioral.scala` exists, compiles under Chipyard 1.13.0 with `sbt compile` green - [ ] IO bundle reflects the **Interface** section of `PopLinkPHY_Behavioral.SPEC.md` (use `???` / `DontCare` for fields where the spec is `TBD` — annotate each with a `// TBD per SPEC §<section>` comment) - [ ] Module is wired into the parent (only for non-leaf modules; leaves can stand alone) - [ ] `rtl/tests/PopLinkPHY_Behavioral/PopLinkPHY_BehavioralSpec.scala` exists with a chiseltest `AnyFlatSpec` skeleton: at least one test that elaborates the module via `should "elaborate"` - [ ] Header preserved: `SPDX-License-Identifier: CHARRUA-1.2` on the Scala source; `AGPL-3.0-or-later` on the test - [ ] No fabricated values for spec `TBD` items — leave as `DontCare` with comment, do not invent widths/timing ## Blocked on - #46 (Chipyard install) — without the toolchain, `sbt compile` cannot run. ## Plan refs PLAN.md §8.2 (custom module list); §12.3 (per-module verification floor). ADRs that constrain this module: see SPEC file header. ## Notes - Coverage targets and full behaviour come in follow-up issues. This issue is the **skeleton + elaborate**. - Do **not** modify the SPEC file itself in this PR — SPEC edits are separate decisions.
Author
Owner

Chipyard 1.13.0 installed on agent host as of #59 (sbt 1.12.11, Verilator 5.032, chipyard at ~/chipyard/ pinned to commit 69eba86). Toolchain is reachable from any worktree — sbt compile should work after sourcing ~/chipyard/env.sh (or running from inside the chipyard tree). Now queued for resolver.

Chipyard 1.13.0 installed on agent host as of #59 (sbt 1.12.11, Verilator 5.032, chipyard at `~/chipyard/` pinned to commit 69eba86). Toolchain is reachable from any worktree — `sbt compile` should work after sourcing `~/chipyard/env.sh` (or running from inside the chipyard tree). Now queued for resolver.
Author
Owner
No description provided.
<!-- agent:claim by=dispatcher run=20260525T202210Z_issue51 ts=1779740530 -->
Author
Owner
No description provided.
<!-- agent:heartbeat run=20260525T202210Z_issue51 ts=1779740831 -->
Author
Owner
No description provided.
<!-- agent:pr pr=#66 branch=auto/issue-51-20260525T202210Z_issue51 -->
Author
Owner
No description provided.
<!-- agent:claim by=dispatcher run=20260526T163356Z_issue51 ts=1779813237 -->
Author
Owner
No description provided.
<!-- agent:heartbeat run=20260526T163356Z_issue51 ts=1779813537 -->
Author
Owner
No description provided.
<!-- agent:pr pr=#106 branch=auto/issue-51-20260526T163356Z_issue51 -->
navigator 2026-05-26 13:45:25 -03:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
Fluid/fluidpop-v1#51
No description provided.