Skip to main content
LESSON

2.5 LIB file

Lib file is the abbreviation of Liberty Timing file. Writing .lib files follows Liberty syntax. The LIB file is an ASCII representation that contains the timing and power consumption parameters related to the internal units of the standard unit library for a specific technology node. A lib file is basically a timing model file that contains requirements for unit delays, unit transition times, and unit setup and hold times. Therefore, the Lib file basically contains the timing and electrical characteristics of the cell or macrocell. If the fab provides

Lib file is the abbreviation of Liberty Timing file. Writing .lib files follows Liberty syntax. The LIB file is an ASCII representation that contains the timing and power consumption parameters related to the internal units of the standard unit library for a specific technology node. A lib file is basically a timing model file that contains requirements for unit delays, unit transition times, and unit setup and hold times. Therefore, the Lib file basically contains the timing and electrical characteristics of the cell or macrocell.If the wafer fab provides a standard cell library, the Lib file is generated by the standard cell library supplier or the wafer fab and provided to the ASIC designer.

To ensure data accuracy, useNonlinear look-uptable or piecewise linearThis method uses the tool to find the data in the library file that best matches the actual situation of the unit to calculate delay and power consumption. Since the delay and power consumption of the circuit are functions of the input signal slope and the output load, the complete table has three forms: one-dimensional, two-dimensional and three-dimensional, representing one-dimensional, two-dimensional and three-dimensional functional relationships respectively. In addition, the most advancedCCSM and ECSM modelsThe established liberty library not only improves the accuracy of timing in nanometer processes, but also includes a description of unit noise.

Liberty library files are usually relatively large, but can be roughly divided into two parts. In the first part, the basic attributes of the unit library are defined, and the second part is the specific information of each unit, including the unit's delay time, leakage power consumption, internal power consumption, etc. For better understanding, you can view the following snapshot of the Lib file.

1 The first part of the LIB file

The general section of the lib file contains the following content:

  • library name and technical name
  • Delay model, build date, version
  • Units (time, power, voltage, current, resistance and capacitance)
  • Establish timing library process, temperature, voltage, and interconnection line models
ASIC Flow

Figure 1 Basic information such as LIB library name and version

  • Define the parameters of the delay model and signal conversion model
ASIC Flow

Figure 2 Parameters of delay model and signal conversion model

  • Define two-dimensional timing delay templates, two-dimensional variable templates that depend on load constraints, and two-dimensional power consumption templates
ASIC Flow

Figure 3 Two-dimensional timing delay template, two-dimensional variable template dependent on load constraints

ASIC Flow

Figure 4 Two-dimensional power consumption template

2 The second part of the LIB file

Based on the working conditions, there are three different lib files for maximum, minimum and typical value cases. In the second part of the Lib file, it contains information specific to each unit. The portion of the Lib file containing unit-specific information is shown below.

ASIC Flow

Figure 2 LIB file specific unit information

The unit-specific information in the Lib file mainly includes:

  • Unit name
  • PG pin name
  • unit area
  • Leakage power based on input pin logic state
  • Pin details
    • Pin name

    • Pin direction

    • internal power

    • capacitor

    • rising capacitance

    • drop capacitance

    • Drive load

A snapshot of the pin section of the Lib file is given below.

ASIC Flow

Figure 3 LIB file pin part information

The timing and power consumption parameters of the unit are obtained by simulating the unit under various operating conditions, and the data are represented in the Lib file. There are two main techniques for generating Lib files:

  • CCS (Composite Current Source)
  • NLDM (Nonlinear Delay Model)

Current sources are used in CCS technology, while voltage sources are used in NLDM technology to model and derive Lib parameters. Based on the CCS and NLDM technologies used to characterize the unit, we refer to the corresponding Lib files as CCS Lib files and NLDM Lib files. Since CCS technology has more control parameters than NLDM technology, CCS Lib files are more accurate. NLDM Lib files have less running time, that is, they run faster than CCS Lib, and the size of NLDM files is also smaller than CCS Lib files.

Quote

[1] Original link:https://teamvlsi.com/2020/05/lib-and-lef-file-in-asic-design.htmlopen in new window

[2] "Physical Design of Digital Integrated Circuits" P248-255