Skip to content

Add packetizer cocotb regression coverage#1425

Merged
ruck314 merged 2 commits into
pre-releasefrom
packetizer-tests
Jun 15, 2026
Merged

Add packetizer cocotb regression coverage#1425
ruck314 merged 2 commits into
pre-releasefrom
packetizer-tests

Conversation

@bengineerd

@bengineerd bengineerd commented May 28, 2026

Copy link
Copy Markdown
Contributor

Description

Adds focused cocotb regression coverage for the AXI Stream packetizer family, including byte packing, packetizer/depacketizer, packetizer2/depacketizer2, CRC/error handling, link-drop behavior, loopback behavior, and sequence wrap handling.

Details

This packetizer-focused slice adds thin VHDL wrappers under protocols/packetizer/wrappers/ so cocotb can drive and observe the existing RTL through flattened AXI Stream ports without embedding stimulus in VHDL. The wrappers cover:

  • AxiStreamBytePacker
  • AxiStreamPacketizer and AxiStreamDepacketizer
  • AxiStreamPacketizer2 and AxiStreamDepacketizer2
  • a packetizer2 loopback topology for end-to-end packetize/depacketize checks

The new Python regression support under tests/protocols/packetizer/ adds shared packetizer helpers and directed tests for:

  • byte-width packing, alignment, frame boundaries, and sideband preservation;
  • packetizer/depacketizer payload round trips;
  • packetizer2/depacketizer2 framing, route/sideband handling, CRC behavior, and EOFE/error cases;
  • link-drop behavior and sequence-number wrap cases;
  • packetizer2 loopback recovery through the wrapped topology.

The branch also adds/updates regression planning notes for the packetizer work under docs/plans/rtl-regression/.

Merge after #1414.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 59 out of 60 changed files in this pull request and generated 2 comments.

Comment thread python/surf/protocols/coaxpress/_CoaXPressOverFiberBridgeAxiL.py Outdated
Comment thread tests/protocols/packetizer/test_AxiStreamPacketizer2.py Outdated
@bengineerd bengineerd changed the base branch from pre-release to coaxpress-tests-2 June 8, 2026 18:09
@ruck314 ruck314 changed the base branch from coaxpress-tests-2 to pre-release June 14, 2026 22:26
Thin flattened-port wrappers under protocols/packetizer/wrappers/ so cocotb
can drive and observe the existing packetizer RTL through standard AXI Stream
ports without embedding stimulus in VHDL:

- AxiStreamBytePackerWrapper
- AxiStreamPacketizerWrapper / AxiStreamDepacketizerWrapper
- AxiStreamPacketizer2Wrapper / AxiStreamDepacketizer2Wrapper
- AxiStreamPacketizer2LoopbackWrapper (end-to-end packetize/depacketize topology)
@ruck314 ruck314 force-pushed the packetizer-tests branch from eb616cb to 5a937e0 Compare June 14, 2026 22:48
Python cocotb tests and shared helpers under tests/protocols/packetizer/
covering byte-width packing, packetizer/depacketizer payload round trips,
packetizer2/depacketizer2 framing, CRC and EOFE/error handling, link-drop
behavior, sequence-number wrap, and packetizer2 loopback recovery.
@ruck314 ruck314 marked this pull request as ready for review June 15, 2026 14:49
@ruck314 ruck314 requested a review from slacrherbst as a code owner June 15, 2026 14:49
@ruck314 ruck314 merged commit cf4c62b into pre-release Jun 15, 2026
5 checks passed
@ruck314 ruck314 deleted the packetizer-tests branch June 15, 2026 14:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants