Just decided to leave little notes to myself about the research I’ve done. Happy rounded Pi day (3.14159 $\approx$ 3/14/16).
Debugged the errors with my XOR phase/frequency detector. With zero input to my filter, I expected to be getting some a 50⁄50 duty cycle out of my phase detector, as it should just “BANG go high, BANG go low”. I was getting some odd measurements instead (25% duty cycle, slightly random, function of # of steps), but the answer turned out to be how I defined my input.
Instead of using a VCO as my source, I used a signal source block with a known (zero) phase input. This way I always ensure the VCO locks to the correct phase duty cycle.
Still stuck trying to figure out why this system gives me -40dB/decade despite only having a single pole! My adviser was hopeful that this wasn’t a simulation fluke, so maybe there’s more theory to be found.