This design employs the “Stamp and Repeat” placement methodology to achieve the regular floorplan shown. In this case, the design adopts the JSON constraints file approach rather than resorting to putting placement constraints in the graph code. The aie_top_8engine_app.aiecst file located here contains the constraints. Some important considerations are as follows:
The
NodeConstraintson Line 2 put tile constraints on the iFFT portion of the design to assist the router in finding a solution. The placement provides sufficient room at the top of the columns for the heavy memory footprint of these kernels.The
GlobalConstraintson Line 18 contain the “Stamp & Repeat” constraints for the 8-engine design. Here, theisomorphicGraphGroupidentifies thereferenceGraphas “engine0” and thestampedGraphsas “engine1” through “engine7.” The following lines define the desiredareaGroupplacements for each engine in terms of the desiredtileGroupandshimGroup, respectively. This enables a set of common tile rectangles to be defined, where a common placement is applied from the “engine0” solution to the remaining engines in the design.The mapper/router performs the back-end solution because all placement for “engine0” was solved previously, and is simply copied across all the remaining engines.