Intel® Quartus® Prime Pro Edition User Guide: Design Compilation

ID 683236
Date 6/26/2023
Public

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

Document Table of Contents

2.3.2.1.2. Applying the SDC-on-RTL Constraints

SDC-on-RTL requires you to perform the DNI-based Analysis and Elaboration on your design before applying the constraints, which means that SDC-on-RTL SDC files are read during elaboration. If you modify the constraints after Analysis and Elaboration, then you must rerun Analysis and Elaboration.

During the Analysis and Elaboration, quartus_syn reads all SDC-on-RTL SDC files and applies constraints to your design netlist. The order in which the files are listed in the QSF defines the reading order. Once this compilation stage completes, you can inspect the constraints in multiple ways. For more information, refer to Inspecting SDC-on-RTL Constraints and Types of SDC Files Used in the Intel Quartus Prime Software.

The constraints are stored in the internal Intel® Quartus® Prime software netlist. As the compilation flow progresses, various compiler optimizations keep the constraint targets updated. This permits a write once, use anywhere methodology for the constraints.

Once you are satisfied with the constraints, you can run Synthesis from the compilation dashboard. Synthesis converts the elaborated netlist into the node netlist for mapping to device resources. When Synthesis runs, the SDC constraints are processed and propagated by the Synthesis tool and you can review this in the Post-Synthesis Constraints report and Constraint Propagation Report.

Figure 40. Sample Post-Synthesis Constraints Compilation Report

The Constraint Propagation Report shows a chronological history of all changes made to each constraint during the DNI compilation flow. You can observe an entry in the report whenever a constraint is duplicated, moved, or deleted. This report keeps getting updated with entries for modified constraints throughout the compilation flow and includes a reason when a constraint is moved. This report is beneficial for troubleshooting if the constraints changed in a way you did not expect.

Figure 41. Sample Constraint Propagation Report