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

m2k, axi_dac_interpolate: Add auto rearm feature #1344

Merged
merged 3 commits into from
Sep 9, 2024

Conversation

AndreiGrozav
Copy link
Contributor

This feature will allow the gating each buffer, cyclic ones included, by a trigger condition.

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

Copy link
Contributor

@acostina acostina left a comment

Choose a reason for hiding this comment

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

The documentation and regmap should be updated to reflect the new functionality, in the same commit

This feature will allow the gating each buffer, cyclic included, by a trigger
condition.

Signed-off-by: AndreiGrozav <[email protected]>
IuliaCMoldovan
IuliaCMoldovan previously approved these changes Aug 1, 2024
IuliaCMoldovan
IuliaCMoldovan previously approved these changes Aug 20, 2024
This commit fixes the last sample hold and spike before buffers
at low samplerates by compensating for the interpolation filter delays.

Signed-off-by: AndreiGrozav <[email protected]>
When the DAC is triggered from LA or ADC it can miss some trigger signals.
This is because the trigger signal event can be active one clock cycle on
the ADC clock domain, which drives both ADC and LA/PG. The ADC runs at
100MHz while the DAC runs at 75MHz.
Previously the CDC logic was based simply on 2 FF sync stages. Because we
we’re considering changing the DAC clock at 100MHz. This would have helped
with reducing the delay on the DAC data path, also meaning reducing the
delay between trigger and first samples getting out of the DAC.
But because of harmonic consideration we stayed with 75MHz.

This commit fixes the issue of missing the trigger signal on the DAC side.
But, with introducing further delays on the trigger path.
Also, because of the difference in sampling clocks, there will be a +/- one
clock cycles uncertainty(75MHz) between clock launching and latching.
@AndreiGrozav AndreiGrozav merged commit aac3b41 into main Sep 9, 2024
1 of 3 checks passed
@AndreiGrozav AndreiGrozav deleted the m2k_dac_trigger_rearm branch September 9, 2024 10:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants