This invention is related to semiconductor technology and, more specifically, to computer-aided design of network-on-chip (NoC) architectures.
There term NoC used herein should be understood to encompass all varieties of interconnections of IP cores within semiconductor chips. Such varieties encompass, though not exclusively, shared busses, crossbars, interconnects, on-chip communication networks, switches, and fabrics.
The designer of a NoC usually focuses on architecture performance aspects such as bandwidth and latency. The designer creates a network topology and provides it to a backend team to perform the physical layout of the chip. The NoC designer usually takes no direction from the backend team and does not consider physical constraint when designing the NoC topology.
Sometimes the backend team discovers that the topology causes severe place and route problems. At that stage of the chip design it is usually too late to change the topology, and the back end team must solve extremely difficult problems in placing and routing network units within the chip floorplan in order to meet design rule constraints. Consequences can include higher power consumption (due to a higher number of high speed gates), a derating of the operating frequency, an increase in die size to resolve congestion, delayed project completion, and even cancellation of the chip design project.
Therefore, what is needed is a system and method for providing the designer of a NoC, early in the chip design process, with an estimate of the floorplan of a chip and what the NoC would look like in order to be able to select between alternative topology choices and the related consequence of each choice and the fundamental problems.
One aspect of the disclosed invention is to, early in the chip design process, provide the designer of a NoC with an estimate of what the NoC could look like, physically, in the floorplan of a chip. This enables the designer to foresee the consequences of his or her topology choices on the floorplan, thus minimizing the risk of late-discovered fundamental problems.
According to the various aspects of the present invention, the NoC designer proposes a topology of agents and units and either the NoC designer or backend team proposes a corresponding floorplan. An automated process is used to display the topology usefully within the floorplan. The automated process is generally run on a computer programmed by instructions stored on a non-transitory computer readable medium.
According to the teachings of the present invention,
According to the teachings of the present invention,
According to the teachings of the present invention,
According to the teachings of the present invention,
According to the teachings of the present invention,
According to the teachings of the present invention,
According to the teachings of the present invention,
According to the teachings of the present invention,
A NoC comprises nodes connected by wires. A NoC can include many nodes. Nodes are either agents or units.
Agents are nodes with a fixed shape within a floorplan. Agents are IP cores such as CPUs and memory controllers.
Units are nodes of a NoC that are topologically between agents. Units generally perform the functions of transporting data transactions between agents. Switches, muxes, and buffers are examples of units.
A NoC can comprise different numbers and different arrangements of nodes.
A topology is a set of nodes within a network and their connectivity. Connectivity can be described in a 2 dimensional table with a row and column for each node. A topology does not necessarily correspond to a physical arrangement of nodes. A topology is shown in
The shape of a node is understood to be the set of the locations of every point within the node. The shape of a node encompasses the lay terms shape, size, and location. The calculation of the shape of units is a subject of the disclosed invention. In accordance with one aspect of the present invention, the shapes of units are irregular, as shown in
One aspect of the invention is a method to estimate a likely placement of the NoC units within the space unused by agents in order to minimize wire routing congestion. An example is shown in
The invention enables the NoC designer to judge whether or not his tentative topology is layout-friendly. Layout-friendly means that it will require only reasonable effort to perform place and route in the backend design process. When fewer wires between units are required within a region, wires may be routed further apart one from another, thereby reducing the parasitic capacitance and other constraints defined by physical design rules of fabrication process technologies. Reduced parasitic capacitance makes the timing closure easier and allows timing closure with gates that have lower dynamic (switching) and static (leakage) power consumption. This makes physical design within the fabrication design rule constraints easier, and possible with less manual effort.
If maximum density, as estimated in the manner of the invention, is too high or the region of highest density range is too large the NoC designer can change the topology to achieve a better result. Referring now to
As shown in
When calculating the estimated shape of units, in accordance with one aspect of the invention, the area of units must be taken into account. If the units' location alone, expressed as a single point, is used then the optimal solution is usually to collapse the whole NoC into a single point.
According to another aspect of the present invention units are implemented as a sea of gates. Their shape is not limited to being rectangular or even contiguous. This is realistic of the final physical placement of gates within a completed chip layout.
According to another aspect of the present invention keep-out areas may be defined within the floorplan wherein units may not be placed. Furthermore, keep-out area constraints may be applied only to units with certain properties. One such property is power domain. Keep-out regions in portions of the chip can force placement of units in other portions where power rails from a particular power supply will be laid out.
Generally, the internal structure of gates of which each unit consists is unknown. In accordance with another aspect of the invention the floorplan estimation is made at the beginning of the project before the actual design is synthesized into gates or even described in a hardware description language.
n agents are node Ni for 0≦i<n.
p units are node Ni for n≦i<n+p.
Inputs:
Outputs:
S
i
∩S
j=0 for any i≠j (1)
L=Σ
iΣjλi,j/(σiσj)∫∫MεSi∫∫NεSjd(M,N)d2Md2N (2)
L minimum
∫∫MεSid2M=σi for any n≦i<n+p (3)
Some examples of well-known methods of calculating distances are:
Euclidian d(M,N)=√(xM−xN)2+(yM−yN)2)
Manhattan d(M,N)=|xM−xN|+|yM−yN|
Infinite d(M,N)=max(|xM−xN|,|yM−yN|)
According to an aspect of the invention, the total length of wires L is minimized, considering that the distance between Nodes i and j is actually a function of the distance of all of the points of Ni to all of the points of Nj. The expected result of the optimal shapes of nodes comprises one or more loosely connected islands. Each comprising a set of nodes closely packed together. According to an aspect of the invention, the exact solving of such a system is expected to be NP-hard. According to another aspect of the invention, heuristics can be implemented.
In accordance with another aspect of the present invention, shapes Si may be further constrained geographically for example by one or more of the following parameters:
Once all of the shapes Si are known, a median point is calculated for each shape. Referring to
Given all of the shapes Si, a wire density heat map is built. That is, a display of the area of the chip indicating the length of wire per unit area at each grid point. The wire density heat map is then multiplied by the metal pitch. This normalizes in the number of saturated metal layers.
In accordance with one aspect of the present invention, calculating wire density between the shapes, referring to
According to an aspect of the invention, accuracy can be improved by accumulating to the density value an amount proportional to the number of wires in the connection between the nodes.
The method is further improved, in a finite element grid map of the floorplan, by using an anti-aliasing algorithm to determine, based on the vector of each line, the length of line within each pixel intersected by the line and weighting the amount of the increment by both the length of line within the grid point and the number of wires between the nodes. In accordance with one aspect of the present invention, the wire density is displayed by colors and displayed as an overlay on the chip floorplan.
According to another aspect of the invention, by knowing from the topology definition which nodes have pipeline stage registers that break combinatorial logic timing paths, the approximate route of combinatorial logic timing paths through the floorplan is calculated. Using an estimate of the delay based on wire length, weighted by wire density to account for parasitic capacitance, the signal propagation delay through the wires of each link connection between nodes is calculated. The propagation delay estimate is improved by including a model of logic delay through each node. This is approximated by a known approximate size of the area of each node. From the list of all calculated logic timing paths, the one with the greatest delay (i.e. the critical path) is estimated and its route drawn as an overlay of the chip floorplan. The drawing highlights the lines representing connectivity between nodes where the connection contains part of the critical path. A listing of logic timing paths, sorted by delay, is output as a report file.
Given an estimate of the delay through wires, or such an estimate improved by an estimate of the delay through gates of logic timing paths between and through connected nodes, an estimate of the time at which signals will propagate into and out of the boundary of each node is calculated. This is performed by calculating the cumulative wire delay and logic delay before each unit sequentially within each logic timing path.
Referring to
According to another aspect of the invention, a sequence of traffic through the NoC design is simulated. The amount of information transferred on each connection link in the topology is recorded. As only information flowing between nodes is relevant, the simulation may be run at a high abstraction level and thus fast. This speed in turn enables statistically representative portion of traffic patterns to be simulated.
Assuming electric signals are not toggled unless a new word of information is presented; the number of toggles on each link is proportional to the amount of information. The power consumption induced is proportional to the number of toggles and proportional to the total parasitic capacitance of the each wire. As a first approximation the total parasitic capacitance of a wire is proportional to its length. A more precise estimation may be biased by the wire density along the wire route: in denser zones wires are closer one to another and the parasitic capacitance of each wire is increased. That results in an estimate of power consumption. The estimated power consumption is an output of the floorplan estimation for a given topology, floorplan, and toggling scenario.
Though the power consumption is proportional to the information transferred on wires, the power is dissipated through the transistors of the logic in the units. Given the calculation of information transferred by each unit through its connections, the units can be colored to indicate a heat map of estimated power dissipation throughout the chip.
The actual power consumption of a chip depends greatly on the process technology used to manufacture the chip. This power consumption estimate is independent of process technology and therefore an inaccurate prediction of actual power consumption. This power consumption estimate does not account for power dissipated by toggling of signals within the nodes. However, this estimate gives a reasonably accurate comparison of the actual power consumption of different topologies. The fact that the estimation is done independently of process technology is valuable for early stage comparisons and comparisons that explore topologies independently of implementation details.
The various aspects of the present invention may be implemented in software, hardware, application logic, or a combination of software, hardware, and application logic. The software, application logic and/or hardware may reside on a server, an electronic device, or a service. If desired, part of the software, application logic and/or hardware may reside on an electronic device, part of the software, application logic and/or hardware may reside on a server.
While the present invention has been described with reference to the specific applications thereof, it should be understood by those skilled in the art that various changes may be made and equivalents may be substituted without departing from the true spirit and scope of the invention. In addition, many modifications may be made to adapt a particular situation, material, composition of matter, process, process step or steps, to the objective, spirit and scope of the present invention. All such modifications are intended to be within the scope of the claims appended hereto.
The foregoing disclosures and statements are illustrative only of the present invention, and are not intended to limit or define the scope of the present invention. The above description is intended to be illustrative, and not restrictive. Although the examples given include specifics, they are intended as illustrative of only certain possible applications of the present invention. The examples given should only be interpreted as illustrations of some of the applications of the present invention, and the full scope of the present invention should be determined by the appended claims and their legal equivalents. Those skilled in the art will appreciate that various adaptations and modifications of the just-described applications can be configured without departing from the scope and spirit of the present invention. Therefore, it is to be understood that the present invention may be practiced other than as specifically described herein. The scope of the present invention as disclosed and claimed should, therefore, be determined with reference to the knowledge of one skilled in the art and in light of the disclosures presented above.
Although various aspects of the present invention are set out in the independent claims, other aspects of the invention comprise any combination of the features from the described embodiments and/or the dependent claims with the features of the independent claims, and not the solely the combination explicitly set out in the claims.
Unless defined otherwise, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Any methods and materials similar or equivalent to those described herein can also be used in the practice or testing of the present invention.
All publications and patents cited in this specification are herein incorporated by reference as if each individual publication or patent were specifically and individually indicated to be incorporated by reference and are incorporated herein by reference to disclose and describe the methods and/or materials in connection with which the publications are cited. The citation of any publication is for its disclosure prior to the filing date and should not be construed as an admission that the present invention is not entitled to antedate such publication by virtue of prior invention. Further, the dates of publication provided may be different from the actual publication dates which may need to be independently confirmed.
It is noted that, as used herein and in the appended claims, the singular forms “a”, “an”, and “the” include plural referents unless the context clearly dictates otherwise. It is further noted that the claims may be drafted to exclude any optional element. As such, this statement is intended to serve as antecedent basis for use of such exclusive terminology as “solely,” “only” and the like in connection with the recitation of claim elements, or use of a “negative” limitation.
The present application claims priority to U.S. Provisional Application Ser. No. 61/581,639 filed on Dec. 30, 2011 and titled FLOORPLAN ESTIMATOR, the entire disclosure of which is incorporated herein by reference.
Number | Date | Country | |
---|---|---|---|
61581639 | Dec 2011 | US |