Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Util axis fifo asym #1287

Open
wants to merge 9 commits into
base: main
Choose a base branch
from
Open

Util axis fifo asym #1287

wants to merge 9 commits into from

Conversation

IstvanZsSzekely
Copy link
Contributor

PR Description

Added initialization for ad_mem, which helps the testbench by automatically clearing all the FIFOs at the beginning of the simulation.
Fixed a bug that was related to different data width on the input and output of the FIFO, when it was using asymmetric clocks.
Added parameter to be able to set the FIFO size from the perspective of Master or Slave.
Added parameter to toggle to result in a reduced size FIFO.

Update the affected Data Offload IP.

Tested all of the changes in the Testbenches repository, where these IPs were used, the tests pass.

analogdevicesinc/testbenches#77
Wiki

PR Type

  • Bug fix (change that fixes an issue)
  • New feature (change that adds new functionality)
  • Breaking change (has dependencies in other repos or will cause CI to fail)

PR Checklist

  • I have followed the code style guidelines
  • I have performed a self-review of changes
  • I have compiled all hdl projects and libraries affected by this PR
  • I have tested in hardware affected projects, at least on relevant boards
  • I have commented my code, at least hard-to-understand parts
  • I have signed off all commits from this PR
  • I have updated the documentation (wiki pages, ReadMe files, Copyright etc)
  • I have not introduced new Warnings/Critical Warnings on compilation
  • I have added new hdl testbenches or updated existing ones

@IstvanZsSzekely IstvanZsSzekely self-assigned this Mar 8, 2024
@IstvanZsSzekely IstvanZsSzekely force-pushed the util_axis_fifo_asym branch 2 times, most recently from f0e0fd8 to 49894a5 Compare March 8, 2024 13:40
@IstvanZsSzekely IstvanZsSzekely marked this pull request as draft March 18, 2024 08:49
@IstvanZsSzekely IstvanZsSzekely requested a review from a team March 20, 2024 12:08
@IstvanZsSzekely IstvanZsSzekely marked this pull request as ready for review March 20, 2024 12:08
acostina
acostina previously approved these changes Jun 14, 2024
gastmaier
gastmaier previously approved these changes Jul 15, 2024
Copy link
Contributor

@gastmaier gastmaier left a comment

Choose a reason for hiding this comment

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

Not-failing-on-main project ad7606x_fmc.zed does not fail with this branch rebased on main.
The doc update related to the PR is already on main.

- Fixed a bug where datapaths with different widths caused data corruption
- Added an option to manually restrict certain parameter values based on the datapath widths

Signed-off-by: Istvan-Zsolt Szekely <[email protected]>
- Added additional perspective option for the address
- Updated the IPs that are affected

Signed-off-by: Istvan-Zsolt Szekely <[email protected]>
- Rounded up the almost empty and full threshold values
- Fixed the tlast signal on the master side

Signed-off-by: Istvan-Zsolt Szekely <[email protected]>
Signed-off-by: Istvan-Zsolt Szekely <[email protected]>
Condition: master data width < slave data width, keep and last are enabled:
If there are atomic FIFOs that have all keep bits set to 0, their data is not sent and tlast is generated on the last atomic FIFO transfer that had valid keep bits
Atomic transfers that have all keep bits set to 0 are activated, but the valid and the appropriate tlast signal is retained

Signed-off-by: Istvan-Zsolt Szekely <[email protected]>
Signed-off-by: Istvan-Zsolt Szekely <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants