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

IOstreamer sample lost bugfix #678

Draft
wants to merge 12 commits into
base: main
Choose a base branch
from

Commits on Sep 13, 2024

  1. Reapply "gateware.iostream.IOStreamer: fix bug for incorrect sampling…

    … DDR inputs"
    
    This reverts commit d1cc5d9.
    purdeaandrei committed Sep 13, 2024
    Configuration menu
    Copy the full SHA
    0f70d53 View commit details
    Browse the repository at this point in the history
  2. gateware.iostream.IOStreamer: add support for sample delay

    Added support for additionally delaying when the sample is taken.
    Normally the samples are taken at a time when the input signals
    change that have been launched at the same time as i_en, however
    this allows us to take samples later, specified in number of
    sync clock cycles. Additionally for ratio=2 iostreamer we can also
    delay by half a clock cycle.
    purdeaandrei committed Sep 13, 2024
    Configuration menu
    Copy the full SHA
    76fe435 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    addf48d View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    9d68a0f View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    7cdcc85 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    56bd185 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    323a15c View commit details
    Browse the repository at this point in the history
  8. test_iostream: sdr input sample test: use any edge to signify sampling

    This changes how the sdr input sampling test works. Before only positive
    edges on clk_out would signify to the testbench that the input has been
    sampled. The old behavior put a constraint on payload, that i_en must be
    high only for every second payload. This was less then ideal for developing
    stronger skid buffer tests.
    
    This change slows down the clk_out signal, and now any edge (positive or
    negative), means that we have sampled something. In the waves only the
    shape of clk_out changes, the rest of the signals stay the same. (i.e.
    the same values are sampled at the same times)
    
    The DDR input sample test does not require a similar change to it.
    purdeaandrei committed Sep 13, 2024
    Configuration menu
    Copy the full SHA
    10dabb3 View commit details
    Browse the repository at this point in the history
  9. gateware.iostream.IOStreamer: fix same-cycle skid buffer push/pop

    There was a corner-case in IOStreamer where a sample could be lost,
    if it arrives to the skid buffer on the same cycle as when another
    sample is removed from the skid buffer.
    
    This PR also adds many more testcases.
    purdeaandrei committed Sep 13, 2024
    Configuration menu
    Copy the full SHA
    1d3cc26 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    6266d13 View commit details
    Browse the repository at this point in the history
  11. test_iostream: refactor sampling to make it use .sample()

    This better relays the intent that we want to sample the
    "old" value of the inputs in case they change at the same time
    as clk_out, and may work better if input_generator_tb changes
    in the future.
    purdeaandrei committed Sep 13, 2024
    Configuration menu
    Copy the full SHA
    3bd267f View commit details
    Browse the repository at this point in the history
  12. iostream ddr testcase: remove glitch mitigation, because new version …

    …of SimulatableDDRBuffer is glitchless
    purdeaandrei committed Sep 13, 2024
    Configuration menu
    Copy the full SHA
    a4d7cd7 View commit details
    Browse the repository at this point in the history