Post-placement residual overlap removal method for core-based PLD programming process
AssigneeXilinx, Inc.
InventorsKamal Chaudhary, Sudip K. Nag
Life of this patent
Estimating the term…
Loading patent…
AssigneeXilinx, Inc.
InventorsKamal Chaudhary, Sudip K. Nag
Estimating the term…
A post-placement residual overlap removal process for use with core-based programmable logic device programming methods that is called when an optimal placement solution includes one or more overlapping cores. Horizontal and vertical constraint graphs are utilized to mathematically define the two-dimensional positional relationship between the cores of the infeasible placement solution in two separate one-dimensional (i.e., horizontal and vertical) directions. Next, the constraint graphs are analyzed to determine whether they include a feasible solution (i.e., whether the overlaps existing in the placement solution can be removed simply by reallocating available resources to the overlapping cores). If one of the constraint graphs is not feasible, then the infeasible constraint graph is revised, and then the feasibility of both graphs is re-analyzed for feasibility. The feasibility analysis and constraint graph revision steps are repeated until both constraint graphs are feasible. After feasibility is determined, a slack allocation process is performed during which resources are allocated to the cores to generate a revised placement solution such that the cores are positioned as close to the original optimal solution as possible with no overlaps. Finally, the individual logic portions are re-placed using bipartite matching to complete the revised placement solution.
A post-placement residual overlap removal method for use in a core-based programmable logic device (PLD) programming process wherein the PLD is programmed to implement a logic operation, the PLD including a plurality of configurable logic blocks (CLBs) arranged in rows aligned in a horizontal direction and columns aligned in a vertical direction, the logic operation being defined by a plurality of cores, each core including a group of interrelated logic portions, wherein the logic portions of each core are assigned to a selected group of the plurality of CLBs during a placement portion of the PLD programming process to produce an original placement solution, the method comprising the steps of:
Dependencies are inferred from the claim text.