Closed martinling closed 2 weeks ago
Updated, I got a bit further.
The tests get the correct data now, but the tests still fail because the valid
signal is not deasserted at the end.
Updated. Thanks to @mndza spotting a remaining misuse of the data_commit
signal, the unit tests all pass now. We're just trying to get it to pass timing now.
Updated again. Current status:
--seed
values in nextpnr
, it's possible to get this to meet timing and build successfully.sync
domain) fails the HITL test of FS capture, but passes the HS test.Updated once more, @mndza fixed the HyperRAMPacketFIFO
!
Remaining issues:
sync
domain that it can take trying a few different random seeds to build successfully.Thanks to more fantastic work from @mndza this is now good to go!
This PR is stacked on #104 and tries to add HyperRAM buffering to the analyzer.
The code is taken from this branch by @mndza. The integration has been adapted to apply on top of #104, with some additional testing and verification. The
Stream16to8
,StreamFIFO
andHyperRAMPacketFIFO
modules are taken unmodified from that branch, and were known to work there.I have broken down the changes into stages to help isolate the remaining issues. Tests pass at all but the final two steps.
USBAnalyzer
unit tests. :heavy_check_mark:Stream16to8
conversion. :heavy_check_mark:Stream16to8
conversion into the top level module. :heavy_check_mark:sync
clock domain, and use aStreamFIFO
to cross back tousb
. :heavy_multiplication_x:HyperRAMPacketFIFO
into the output pipeline. :heavy_multiplication_x:The problems appear at step 5, and are caught by the unit tests, e.g:
Basically the output is almost right, but slightly out of sync.