Apparatus and method for partitioning resources for interconnections
First Claim
1. A method for placement of components of a device into partitions, said device having a defined surface area for placement of the components, said device having multiple mutually distinct levels of interconnect resources, the interconnect resources of each subsequent level of the level of the multiple levels spanning a proportionately shorter distance than the interconnect resources of an immediately prior level, said method comprising the steps of:
- a) establishing a first level of partitions corresponding to a first level of interconnect resources of the multiple levels of interconnect resources by dividing the surface area of the device into a plurality of first partitions, said first level of interconnect resources crossing a boundary between adjacent partitions of the first level of partitions;
b) optimizing an assignment of each component to one of said plurality of first partitions based upon interconnect resources comprising the first level of interconnect resources;
c) establishing subsequent levels of partitions until a predefined level is reached, said subsequent levels of partitions corresponding to respective subsequent levels of interconnect resources, each subsequent level of interconnect resources crossing a boundary between adjacent partitions of a corresponding level of partitions, each subsequent level of partitions generated by dividing each immediate prior level partition into a corresponding plurality of subsequent partitions and optimizing the assignment of each component in the prior level partition to one of the corresponding plurality of subsequent partitions based upon the subsequent level of interconnect resources and levels of interconnect resources prior to the subsequent level of interconnect resources.
1 Assignment
0 Petitions
Accused Products
Abstract
An apparatus and method for determining how to interconnect a plurality of components of a system, given a limited number of interconnect resources available to a device. First, it is determined whether the system meets the capacity constraints of the device. If the requirements exceed the capacity, a larger device is necessary. Otherwise, a topmost interconnection level is established. This topmost level is partitioned into four different partitions. The components are assigned and optimized to these four partitions. Next, a lower level of interconnection is established for one or more of these four partitions. Each of these lower levels are, in turn, partitioned into four different partitions. Components are then assigned and optimized to these partitions. This process is repeated for even lower levels until routing of the interconnections for the system is achieved. Thereupon, the components are physically interconnected from the lower levels to the topmost level according to the routing pattern that was determined in the establishing, partitioning, and said optimizing steps.
-
Citations
23 Claims
-
1. A method for placement of components of a device into partitions, said device having a defined surface area for placement of the components, said device having multiple mutually distinct levels of interconnect resources, the interconnect resources of each subsequent level of the level of the multiple levels spanning a proportionately shorter distance than the interconnect resources of an immediately prior level, said method comprising the steps of:
-
a) establishing a first level of partitions corresponding to a first level of interconnect resources of the multiple levels of interconnect resources by dividing the surface area of the device into a plurality of first partitions, said first level of interconnect resources crossing a boundary between adjacent partitions of the first level of partitions; b) optimizing an assignment of each component to one of said plurality of first partitions based upon interconnect resources comprising the first level of interconnect resources; c) establishing subsequent levels of partitions until a predefined level is reached, said subsequent levels of partitions corresponding to respective subsequent levels of interconnect resources, each subsequent level of interconnect resources crossing a boundary between adjacent partitions of a corresponding level of partitions, each subsequent level of partitions generated by dividing each immediate prior level partition into a corresponding plurality of subsequent partitions and optimizing the assignment of each component in the prior level partition to one of the corresponding plurality of subsequent partitions based upon the subsequent level of interconnect resources and levels of interconnect resources prior to the subsequent level of interconnect resources. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. An apparatus for placement of components of a device into partitions, said device having a defined surface area for placement of the components, said device having multiple mutually distinct levels of interconnect resources, the interconnect resources of each subsequent level of the level of the multiple levels spanning a proportionately shorter distance than the interconnect resources of an immediately prior level, said apparatus comprising:
-
a) means for establishing a first level of partitions corresponding to a first level of interconnect resources of the multiple levels of interconnect resources by dividing the surface area of the device into a plurality of first partitions, said first level of interconnect resources crossing a boundary between adjacent partitions of the first level of partitions; b) means for optimizing an assignment of each component to one of said plurality of first partitions based upon interconnect resources comprising the first level of interconnect resources; c) means for establishing subsequent levels of partitions until a predefined level is reached, said subsequent levels of partitions corresponding to respective subsequent levels of interconnect resources, each subsequent level of interconnect resources crossing a boundary between adjacent partitions of a corresponding level of partitions, each subsequent level of partitions generated by dividing each immediate prior level partition into a corresponding plurality of subsequent partitions and optimizing the assignment of each component in the prior level partition to one of the corresponding plurality of subsequent partitions based upon the subsequent level of interconnect resources and levels of interconnect resources prior to the subsequent level of interconnect resources. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A method for partitioning a surface area of a programmable logic device into four partitions corresponding to a level of routing resources of said programmable logic device, said method comprising the steps of:
-
dividing said surface area in two in a first axis; dividing said surface area in two in a second axis, wherein said second axis intersects said first axis perpendicularly and said surface area is divided into said four partitions; determining said routing resources that are required to implement a circuit design based on a routing pattern of the routing resources, said step of determining said routing resources determining extra routing resources needed to route connections between a first component located within a first partition of the four partitions to a second component located within a second partition of the four partitions, wherein the first and second partitions are diagonally opposed partitions and the routing resources needed to provide L-shaped connections are included; optimizing said routing resources in relation to a component capacity of said programmable logic device. - View Dependent Claims (21, 22, 23)
-
Specification