This PR changes the way the lane distributor switches lanes in SED. Instead of relying on the queue being full at first and then an event being taken out, a hardcoded high watermark is implemented instead. Additionally, event spreading is enabled for satellites. For standalone or master, the watermark is set at 100% (just full), for satellite it is 75%. Exact good values would have to be determined experimentally.
Flash config option is not supported yet - would require a CSR interface, that can be added at a later moment.
Tested with Kasli 2.0 with the experiment code mentioned in #1881 that would underflow, does not underflow now.
Related Issue
Closes #1881
Type of Changes
Type
✓
:bug: Bug fix
Steps (Choose relevant, delete irrelevant before submitting)
All Pull Requests
[x] Use correct spelling and grammar.
Code Changes
[x] Test your changes or have someone test them. Mention what was tested and how.
Git Logistics
[x] Split your contribution into logically separate changes (git rebase --interactive). Merge/squash/fixup commits that just fix or amend previous commits. Remove unintended changes & cleanup. See tutorial.
[x] Write short & meaningful commit messages. Review each commit for messages (git show). Format:
topic: description. < 50 characters total.
Longer description. < 70 characters per line
Licensing
See copyright & licensing for more info.
ARTIQ files that do not contain a license header are copyrighted by M-Labs Limited and are licensed under LGPLv3+.
ARTIQ Pull Request
Description of Changes
This PR changes the way the lane distributor switches lanes in SED. Instead of relying on the queue being full at first and then an event being taken out, a hardcoded high watermark is implemented instead. Additionally, event spreading is enabled for satellites. For standalone or master, the watermark is set at 100% (just full), for satellite it is 75%. Exact good values would have to be determined experimentally.
Flash config option is not supported yet - would require a CSR interface, that can be added at a later moment.
Tested with Kasli 2.0 with the experiment code mentioned in #1881 that would underflow, does not underflow now.
Related Issue
Closes #1881
Type of Changes
Steps (Choose relevant, delete irrelevant before submitting)
All Pull Requests
Code Changes
Git Logistics
git rebase --interactive
). Merge/squash/fixup commits that just fix or amend previous commits. Remove unintended changes & cleanup. See tutorial.[x] Write short & meaningful commit messages. Review each commit for messages (
git show
). Format:Licensing
See copyright & licensing for more info. ARTIQ files that do not contain a license header are copyrighted by M-Labs Limited and are licensed under LGPLv3+.