Intel® Quartus® Prime Pro Edition User Guide: Timing Analyzer

ID 683243
Date 1/31/2023
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

3.6.5.1.1. Automatic Clock Detection and Constraint Creation

Use the derive_clocks command to automatically create base clocks in your design The derive_clocks command is equivalent to using the create_clock command for each register or port feeding the clock pin of a register. The derive_clocks command creates clock constraints on ports or registers to ensure every register in your design has a clock constraints, and it applies one period to all base clocks in your design.

The following command specifies a base clock with a 100 MHz requirement for unconstrained base clock nodes.

derive_clocks -period 10
CAUTION:
If your design has more than a single clock, the derive_clocks command constrains all the clocks to the same specified frequency. To achieve a realistic analysis of your design's timing requirements, do not use derive_clocks command for final timing sign-off. Instead, use create_clock and create_generated_clock commands to make individual clock constraints for all clocks in your design.

If you want to create some base clocks automatically, use the -create_base_clocks option to derive_pll_clocks. With this option, the derive_pll_clocks command automatically creates base clocks for each PLL, based on the input frequency information that you specify when you generate the PLL. This feature works for simple port-to-PLL connections. Base clocks do not automatically generate for complex PLL connectivity, such as cascaded PLLs. You can also use the command derive_pll_clocks -create_base_clocks to create the input clocks for all PLL inputs automatically.