I have not tested it in hardware but I would liky to suggest something about the implementation of the DPLL. I have read a document from usb.org which has a possible finite state machine implementation. My question is why you did not used that?. Thanks in advance.
This document is found at www.usb.org/developers/whitepapers/siewp.pdf
Type your text here