Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

clk_gen_usp: The frequency of internally generated clocks is inaccurate. #2

Open
walliv opened this issue Sep 26, 2023 · 1 comment
Assignees

Comments

@walliv
Copy link
Contributor

walliv commented Sep 26, 2023

The computation of the frequency of internal clock cannot be done in a general way by only putting the frequency of input clock as generic parameter. The MMCM needs to be driven directly by its frequency dividers/multipliers. This proposes the use of a 3-element vector that contains numbers M,D and O, that is (M,D,O). These values are then computed using the formula in UG572 to output an exact frequency on the MMCM outputs. The MMCM version should also be chosen according to the used architecture, that is MMCM4 for UltraScale+ architecture.

@jakubcabal
Copy link
Contributor

Yes, there is room for improvement. However, it would be advisable to design the clock generation configuration so that it can also be used on the Intel FPGA PLL. In the case of Intel FPGAs, the parameters are now set manually in the Quartus GUI and the corresponding .ip file is subsequently generated.

@jakubcabal jakubcabal self-assigned this Oct 6, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants