[ Chapter start ] [ Previous page ] [ Next page ] 16.4 Information FormatsWith the increasing importance of interconnect a great deal of information needs to flow between design tools. There are some de facto standards that we shall look at next. Some of the companies involved are working toward releasing these formats as IEEE standards. 16.4.1 SDF for Floorplanning and PlacementIn Section 13.5.6, “SDF in Simulation,” we discussed the structure and use of the standard delay format ( SDF) to describe gate delay and interconnect delay. We may also use SDF with floorplanning and synthesis tools to back-annotate an interconnect delay. A synthesis tool can use this information to improve the logic structure. Here is a fragment of SDF: ( INTERCONNECT A.INV8.OUT B.DFF1.Q (:0.6:) (:0.6:)))) In this example the rising and falling delay is 60 ps (equal to 0.6 units multiplied by the time scale of 100 ps per unit specified in a TIMESCALE construct that is not shown). The delay is specified between the output port of an inverter with instance name A.INV8 in block A and the Q input port of a D flip-flop (instance name B.DFF1 ) in block B. A '.' (period or fullstop) is set to be the hierarchy divider in another construct that is not shown. There is another way of specifying interconnect delay using NETDELAY (a short form of the INTERCONNECT construct) as follows: (TIMESCALE 100ps) (INSTANCE B) (DELAY (ABSOLUTE In this case all delays from an output port to, possibly multiple, input ports have the same value (we can also specify the output port name instead of the net name to identify the net). Alternatively we can lump interconnect delay at an input port: (TIMESCALE 100ps) (INSTANCE B.DFF1) (DELAY (ABSOLUTE ( PORT CLR (16:18:22) (17:20:25)))) This PORT construct specifies an interconnect delay placed at the input port of a logic cell (in this case the CLR pin of a flip-flop). We do not need to specify the start of a path (as we do for INTERCONNECT ). We can also use SDF to forward-annotate path delays using timing constraints (there may be hundreds or thousands of these in a file). A synthesis tool can pass this information to the floorplanning and placement steps to allow them to create better layout. SDF describes timing checks using a range of TIMINGCHECK constructs. Here is an example of a single path constraint: (TIMESCALE 100ps) (INSTANCE B) ( TIMINGCHECK ( PATHCONSTRAINT A.AOI22_1.O B.ND02_34.O (0.8) (0.8))) This describes a constraint (keyword PATHCONSTRAINT ) for the rising and falling delays between two ports at each end of a path (which may consist of several nets) to be less than 80 ps. Using the SUM construct we can constrain the sum of path delays to be less than a specific value as follows: (TIMESCALE 100ps) (INSTANCE B) ( TIMINGCHECK (SUM (AOI22_1.O ND02_34.I1) (ND02_34.O ND02_35.I1) (0.8))) We can also constrain skew between two paths (in this case to be less than 10 ps) using the DIFF construct: (TIMESCALE 100ps) (INSTANCE B) (TIMINGCHECK ( DIFF (A.I_1.O B.ND02_1.I1) (A.I_1.O.O B.ND02_2.I1) (0.1))) In addition we can constrain the skew between a reference signal (normally the clock) and all other ports in an instance (again in this case to be less than 10 ps) using the SKEWCONSTRAINT construct: (TIMESCALE 100ps) (INSTANCE B) (TIMINGCHECK ( SKEWCONSTRAINT (posedge clk) (0.1))) At present there is no easy way in SDF to constrain the skew between a reference signal and other signals to be greater than a specified amount. 16.4.2 PDEFThe physical design exchange format ( PDEF ) is a proprietary file format used by Synopsys to describe placement information and the clustering of logic cells. Here is a simple, but complete PDEF file: This file describes two clusters:
16.4.3 LEF and DEFThe library exchange format ( LEF ) and design exchange format ( DEF ) are both proprietary formats originated by Tangent in the TanCell and TanGate place-and-route tools which were bought by Cadence and now known as Cell3 Ensemble and Gate Ensemble respectively. These tools, and their derivatives, are so widely used that these formats have become a de facto standard. LEF is used to define an IC process and a logic cell library. For example, you would use LEF to describe a gate array: the base cells, the legal sites for base cells, the logic macros with their size and connectivity information, the interconnect layers and other information to set up the database that the physical design tools need. You would use DEF to describe all the physical aspects of a particular chip design including the netlist and physical location of cells on the chip. For example, if you had a complete placement from a floorplanning tool and wanted to exchange this information with Cadence Gate Ensemble or Cell3 Ensemble, you would use DEF. [ Chapter start ] [ Previous page ] [ Next page ] |
© 2025 Internet Business Systems, Inc. 670 Aberdeen Way, Milpitas, CA 95035 +1 (408) 882-6554 — Contact Us, or visit our other sites: |
|
Privacy PolicyAdvertise |