Skip to content

Adapter cocotb tests and changes#251

Open
AndyOja wants to merge 10 commits intomainfrom
andy/adapters_tests_updates
Open

Adapter cocotb tests and changes#251
AndyOja wants to merge 10 commits intomainfrom
andy/adapters_tests_updates

Conversation

@AndyOja
Copy link
Copy Markdown
Collaborator

@AndyOja AndyOja commented Jan 23, 2026

Added cocotb testing for umi2apb and tl2umi and debugged umi2apb umi response and tl2umi FSM.

Copy link
Copy Markdown
Member

@aolofsson aolofsson left a comment

Choose a reason for hiding this comment

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

Looks good. @RiceShelley might have some comments on cocotb structure.
In terms of PR, better to split out PRs into smaller ones. It would have been better to have the verilog in separate smaller PR so that I could merge that immediately.

Copy link
Copy Markdown
Contributor

@RiceShelley RiceShelley left a comment

Choose a reason for hiding this comment

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

A few changes requested. If it helps unblock things, we can spin a second PR with just the RTL to get that checked in earlier.

Great job jumping in and learning cocotb in just one week, @AndyOja !

Comment thread tests/adapters/tl2umi/test_advanced.py
Comment thread tests/adapters/tl2umi/test_tl2umi_run.py Outdated
);

// UMI memory agent (handles UMI requests and generates responses)
umi_memagent #(
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

It would be good to test the UMI side of tl2umi against something other than umi_memagent. The ready/valid behavior of umi_memagent likely doesn’t exercise the full space of possible handshake timings.

For example what if we wanted to test that when back pressure is applied to umi_req it propagates back to the tl_a interface correctly?

In the future I would like to see a test of tl2umi where the UMI interface is driven from cocotb with constrained random ready / valid signal timing.

Comment thread tests/adapters/tl2umi/tl_monitor.py Outdated
Comment thread tests/adapters/umi2apb/test_random_stimulus.py Outdated
Comment thread tests/adapters/umi2apb/test_random_stimulus.py
Comment thread tests/adapters/umi2apb/env.py Outdated
Comment thread tests/adapters/umi2apb/test_umi2apb_run.py Outdated
Comment thread tests/adapters/conftest.py Outdated
Comment thread umi/adapters/umi2apb/rtl/umi2apb.v Outdated
@AndyOja AndyOja force-pushed the andy/adapters_tests_updates branch from 39249d8 to a3730b5 Compare February 20, 2026 20:08
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