Skip to content

solve bug: mpll won't lock after reset.

This bug is probably present in wrpc-sw for a very long time. It took me a few weeks to hunt it down with an automated setup that resets my wr device after reaching TRACK_PHASE, until it finally hangs due to this bug...


Sometimes the wr-core won't start up and hangs after reset. Pushing reset again solves the issue. We have seen this in the past with different wr projects as well.


mpll does not get in lock since its PI loop is polluted with a very big first tag-ref sample.


The err signal that feeds the mpll PI loop should never be out of bounds +/- 2**HPLL_N (by defenition: even when mpll is not locked yet!)

See also peter_230704_solve_mpll_no_lock_after_reset.pdfAlways limit mpll PI controller err signal to 2**HPLL_N, not just when mpll is locked.

Merge request reports