AN 584: Timing Closure Methodology for Advanced FPGA Designs

ID 683145
Date 10/08/2021
Public
Document Table of Contents

1.5.4.1. Setting Location Constraints

You can specify location constraints that place logic and I/O blocks at specific locations in the chip during place and route. However, the Compiler's default logic placement is generally more suitable than specifying specific location constraints.

For example, it may not be helpful to assign a block containing a critical path to a Logic Lock region that you subsequently constrain and squeeze the path. The Fitter identifies and attempts to optimize the critical path by considering many physical constraints to find the best placement. Restricting this auto-placement can reduce performance and requires careful use. There are times when location constraints effectively aid in timing closure, directly or indirectly.

You can define Logic Lock regions or location constraints to constrain logic blocks to specific areas in the FPGA. This technique allows you to create a floorplan for your design that supports the incremental block-based compilation flow and team-based designs.

In a team-based designs, a different designer can design each major block in the project. For such cases, you define locations for each block to have its assigned area in the device. You can reserve areas in the device based on interfaces and resources, such as transceivers or RAM blocks. You can also reserve the region on a previous Fitter-assigned area.

Note: Excessive location constraints can negatively affect design performance.

Refer to Setting-Up Team-Based Designs in Intel® Quartus® Prime Pro Edition User Guide: Block-Based Design.