In this article, we will discuss what are the inputs required to begin the physical design. In the previous article, we have discussed the physical design flow and sanity checks before the floorplan. Inputs required for physical design can be categories broadly into two types. Some inputs are mandatory in all the cases but some are required for a specific purpose. Figure-1 shows the list of inputs required for physical design and categories the mandatory and optional inputs.
|
In the set input files, the first set is design-related files which contain Gate level netlist file and design constraint files. These files come from the synthesis team. Let's briefly see the content of these files.
Gate level netlist:
This is the synthesized netlist. The synthesis team performs synthesis on RTL code with the standard cell libraries and constraints and converts the RTL code into the gate-level netlist based on available standard cells. This file contains all the instances of design and their connection.
Constraint file:
- Units (Time, Capacitance, Resistance, Voltage, Current, Power)
- System interface (Driving cell, load)
- Design rule constraints (max fanout, max transition)
- Timing constraints (Clock definitions, clock latency, clock uncertainty, input/output delay)
- Timing exceptions (Multi-cycle and false paths)
A detail description of SDC file is explained here
Now some inputs are required which are related to standard cell libraries. These files are provided by the standard cell library vendor and these files are as follow.
Logical libraries:
The logical library is also called a timing library or functional library or power library as it contains the functionality, time and power information of cells. This file contains basically the following information of the standard cells or macros.
- Timing details of the standard cells / macros ( delay, transitions)
- Setup and hold time of standard cells / macros
- Functionality details of standard cells /macros
- Area of standard cells / macros
- Pin directions and capacitance
- Leakage power of standard cells / macros
The logical libraries could be either in liberty format .lib file for Cadence tool or in the form of .db file for Synopsys tool. There are different logical files for different PVT corners. Liberty file is created by doing the standard cell library characterization, so this file is provided by the standard cell library vendor.
Physical libraries:
The physical library contains the abstract view of the layout for standard cells and macros. LEF file basically contains:
- Size of the cell (Height and width)
- Symmetry of cell
- Pins name, direction, use, shape, layer
- Pins location
Physical libraries are in Library Exchange Format (.lef) for the Cadence tools or .CELL and .FRAM form for Synopsys tool. This file is provided by the standard cell library vendor.
Technology file:
The technology library is the most critical input to the physical design tool. The technology library contains detail information about all the metal layers, vias and their design rules. This file is in ASCII format and basically contains the following information:
- Manufacturing grid
- Layers name (poly | contact | metal1 |via2 )
- Types and the direction of the metal
- Pitch
- Width
- Spacing
- Resistance (per square unit)
Hello, not sure why you specify that a gds file is mandatory for the PD phase. Did you mean a layermap file instead?
ReplyDeleteThank You.
DeleteActually gds file is needed only at the time of gds stream out not in the process of Physical design.
Thanks a lot for the catch. I will make the correction.
Done!
DeleteThanks! Last comment (it's a detail but I would specify it): in most recent tech nodes (for Cadence tools), a .techlef is not used anymore. Instead, the information are specified in a .lef file directly.
DeleteAlright! Yes there are two parts of LEF file and the first part is tech lef where all the metal layers and rules are defined. For Cadence tool LEF file is only used. But in Synopsys tool a .tf file used for this purpose.
DeleteAlso, in "RC coefficient file:": QRC or capTable files are also used (depending on the tool and process node)
ReplyDeleteThanks,
DeleteYes, rightly said.
The LEF file definition should be "library exchange Format", not "liberty exchange format"
ReplyDeleteThanks for the catch. Correction has done!
Delete