A Novel Approach to Design a Process Design Kit Digital for CMOS 180nm Technology

language In this paper, a novel approach to design a Process Design Kit Digital for CMOS 180nm process is presented. This work proposes a detailed ﬂow to design a PDK Digital using Ocean language, which is a vital element in the semi-custom design and applied in education purposes in universities in Vietnam. The PDK digital includes Standard Cell Library containing 47 standard cells and Wire-Load Model. The library is designed based on the CMOS 180nm process with a supply voltage of 1.8V.


Introduction
CMOS technology has been developing in recent years due to its benefits such as high integration density, low fabrication cost, etc. Many new techniques of circuit design have been given ranging from RFIC [1]- [5] to mm-Wave IC design [6], [7].
In the past, the full custom design took many resources, efforts, and design time for designing a big chip. Meanwhile, the semi-custom design has significant decreased in the design and verification time for chip design by using the Electronic Design Automation (EDA) tools and PDK digital [8]. Especially, the latter provides a considerable decrease in design time, decreasing around 25% to 50%. Moreover, the latter would be applying for many more complex designs than the former [9].
Focusing on the PDK digital, the one consists of Synopsys library and P&R library [10]. While the former is applied for timing, power consumption, and noise analysis, the latter is used for place and route design in a design flow [11]. There are two ways to design an SCL. The first one uses the Liberty NCX tool of Synopsys. The Liberty NCX determines the function of standard cells. Following this, the tool creates the complete simulations by using HSPICE that would make the liberty file for each logic cell in the library [12], [13]. The second way performs characterization for all standard cells manually using the Spectre tool. The process of characterization consists of many simulations where the transition of the input and the capacitance of output load are varied. Timing and other parameters would be extracted, and outputted as a liberty format file.
The license of the Liberty NCX tool is unavailable at universities in developing countries due to its cost. Therefore, designing an SCL using this tool is almost impossible [13]. With regards to the manual characterization, the challenge is that we have to do many simulations to generate timing, power consumption, etc [14]. This way takes much time to design each logic cell. For instance, to design an INV logic cell, we have to do 7x7 simulations and 49x6 calculations to generate all parameters for the liberty file.
In this work, the Ocean language is proposed to solve problems about the licensing and running manually many simulations. The language is an extension of the Skill language used to control Analog simulation. The flow automatically performs parametric simulations of each logic cell and generates output parameters with the format as the liberty file [15]. Regarding the Wire-Load Model (WLM), this paper proposed a method and used accuracy formulas to design a complete model.
The authors presented ideas about designing a PDK Digital for CMOS technology in the "2019 19th International Symposium on Communications and Information Technologies (ISCIT)" [1] and the following paper is an extension of this work.
The remainder of this paper is organized as follows: Section II shows the SCL design flow from the transistor level. This section also gives the schematic design, Euler rules for layout design, DRC/LVS definition, etc. A detailed liberty format generation flow is given in section III. Section IV shows how to design a wire-load model. Finally, section V presents the conclusion.

Standard Cell Library Design
An SCL is made up of combinational logic cells such as INV, AND, FA, sequential logic cells such as DFF, Latch, and physical cells, etc. The design flow is composed of many steps. To begin with the front-end design stage, firstly, the schematic of all standard cells in the library are designed from transistor level. After that, symbol creation and do simulation at corners [16]. Next, in the back-end design stage, to optimize the layout design in term of area and routing, the layout design needs to have some rules as follows: 1. All the input and output pins must be placed on the intersections of the vertical and horizontal routing tracks with the special exception for power and ground pins.
2. All the cells in the library are designed to be multiple of the unit tile which is defined by a library developer. The height of the cells must be equal and be multiple of the unit tile's height.
3. This work uses M1 and M2 for the layout design.
4. Minimize the width of all standard cells in the library.

5.
Optimize pins access to prevent the routing congestion in place and route stage.
6. Some special cells such as filler, decap cells can be put in the library to make sure the connection of supply trails and N-well.
The figure below shows the schematic, Euler path for optimization, and layout design of an AOI22 cell in the library. The layout should follow the considerations as above. The Physical Verification process will be performed after the layout design. This process will accomplish sequentially Design Rule Check (DRC) verification and Layout Versus Schematic (LVS) verification.
Firstly, by using the rules from the fabricators, the layout design is checked to ensure no potential violation, which is called DRC verification. The design rules are supplied by the manufacturers to ensure the chip will function properly when fabricated. The design rules include many rules such as the minimal critical dimensions, shape angles, pattern density requirements, etc [17]. The DRC flow chart is shown in Figure 2 and the example design rules are presented in Figure 3. For example, the resolution rules for metal 1 and metal 2 layers are 0.23µm and 0.28µm, respectively. With regards to the rules for poly layer, the min.poly width is 0.18µm, min.gate to contact spacing is 0.375µm, and the min.poly overlap of diffusion is 0.22µm. For contact rules, the exact size and min.contact overlap are 0.22µm and 0.12µm, respectively. www.astesj.com Depending on the layout design, so different parasitic components can be generated. These parasitic parameters can make the functionality and characteristic of the layout design different from schematic design. For that reason, if the whole parameters in the schematic design are different from the parasitic parameters of the layout design, which makes it impossible to complete the LVS step. Hence, this verification proves the chip after being fabricated will function as the schematic design [17]. When the LVS errors occur, we have to fix the layout design and perform the DRC step again to complete the LVS step without errors. The LVS flow chart is shown in Figure 4. The Physical Verification process plays a vital role in the design flow. Therefore, the designers ensure that each cell in the library passed the DRC and LVS without any violations [18]. After the Physical Verification process, the post-layout simulation at corners will be executed before the cell characterization step. Next, Layout Parasitic Extraction (LPE) step is performed. Afterward, the postlayout simulations at corners are performed by using the parasitic parameters extracted. Therefore, the characterization of the standard cells will be calculated [19]. The post-layout simulation becomes possible and correct only after the LVS step is completed, then the extracted parameters are accurate. The post-layout simulation process will be shown in Figure 5. Finally, the characterization step is divided into Liberty Format Generation step and Abstract View & GDS step. While the timing models, power models including dynamic and static power are extracted by the former to make the liberty file (*.lib) [20]. The Synopsys internal database format (*.db) may be translated from the liberty file by the Library Compile tool of Synopsys. The latter is used to create the library exchange format (*.lef) file by abstracting from the layout design, and the last step is the generating GDS file [21]. The block diagram in the figure below ( Figure 6) illustrates the SCL design flow.

Liberty Format Generation
After the post-layout simulation process, the standard cell characterization process is performed. Especially, the liberty format generation process, this process will generate an output file (*.lib) which is one of the most important files in the standard cell library design. The liberty file includes structural information, functional information, timing information, power information, and environmental information of each standard cell.
Firstly, the structural one declares connectivity of a logic cell including cell, bus, and in-out pin descriptions. Secondly, the functional one describes the logical function of each output pin of each cell. Thirdly, timing models are given including cell rise delay, cell fall delay, rise transition, fall transition. Next, power models give the dynamic and static power consumption of each cell. Finally, environmental information describes the manufacturing process, temperature of operation, supply voltage, etc.
In this part, to perform cell characterization and generate output file same as the liberty file's format, all cells in the library will have the same load capacitance C load = 2 fF, 5 fF, 6 fF, 7 fF, 8 fF, 9 fF, 9.5 fF, the input slew of the waveform slope = 0.01 ns, 0.02 ns, 0.04 ns, 0.06 ns, 0.08 ns, 0.09 ns, 0.095 ns [22]. The load capacitance and input slew are declared in the Ocean file to create 7x7 = 49 simulation times and extract the timing model and dynamic power www.astesj.com consumption for each cell.
These figures below (Figure7 and Figure 8) show the testbench circuits for the Ocean script run and the results of a NAND gate cell with two inputs.

Input capacitance
In SCL design, one of the most important parameters that we need to calculate is input capacitance. The output capacitance of each cell can be determined but in most cases, the capacitance is specified only for the inputs and not for the outputs, which means that the output pin capacitance is zero in the library design [23].
The following formula illustrates the relationship between input capacitance, current, and supply voltage at an input pin.
where I is the current at the input pin, V is the supply voltage and it is equal to 1.8V in this paper. By inputting a pulse power to the input pin and calculating the current, the input capacitance value is determined as the formula below: where ∆t is the time when the voltage at each input pin changes the logic level. The two tables below show the capacitance of each input pin of the NAND2 cell. These tables also provide the rise power and fall power which are presented in the next section.

Power models
There are two types of power in the power model that are dynamic power and static power consumption. For dynamic power, this one www.astesj.com includes rise power and fall power. While the former is calculated in the time when output changes from 0 to VDD. The latter is determined when output goes from VDD to 0. The formula below shows the dynamic power calculation.
In contrast, the static power consumption occurs when the cell is in inactive condition. There are many leakage currents caused the cell has this power consumption such as sub-threshold current which is the main component of the currents, tunneling current through the gate oxide [25]. Static power consumption can be shown as the following formula: With regards to calculate the static power, firstly, a testbench circuit is designed with all inputs are pulled down as Figure 12a and calculate the power. Next, a testbench circuit is designed with all inputs are pulled up as Figure 12b and then calculate the power. Finally, taking the bigger power number to represent the static power of a cell. The wire delays must be estimated during the timing analysis before placement and routing. Using a wire-load model is the simplest method of estimation. The wire-load model gets a rough value of the total wire capacitance based on the size of the chip and the fanout of the net [26]. The wire-load model is specified in the Liberty file.
In this work, the wire capacitance is computed by using the results of T. Sakurai and K. Tamaru's paper [27]. The accuracy of these formulas is practically sufficient for a wide range of wire thickness, wire width, and inter-wire spacing. When two or three nets are placed on bulk silicon, the total capacitance of one net includes the "coupling" capacitance between lines C side and "ground" capacitance between the net and the ground C plate . Below are the detailed steps to determine the wire capacitance of a net.
First, the coupling capacitance C plate between line and bulk silicon is given as formula: Next, the coupling capacitance C side between lines is shown as: It is given as: Final, the total capacitance or wire capacitance is determined as: Where Miller Coupling Factor (MFC) is equal to 1.5 in this work.
Regarding the resistance of a interconnect net, this value is computed by the formula as below: The figure below defines all variables used in the formulas above. www.astesj.com The table below shows the results of wire capacitance and resistance with the unit length of 1µm. In addition, the delay of each metal layer is computed by the following formula: Based on the results above, the resistance and capacitance of a net will be calculated as the following formulas: R = length.R unitlength (11) C = length.C unitlength (12) The tool in the timing analysis stage, especially the synthesis stage will calculate the capacitance and resistance of a interconnect net based on the particular length value.

Conclusion
In this paper, a novel approach to design a Process Design Kit (PDK) Digital for CMOS 180nm process is presented. For the Standard Cell Library design, by using the Ocean language, this work solved the problems about the licensing of the Liberty NCX tool which is unavailable in universities in developing countries, especially Vietnam, and running manually many simulations when the tool is not applied. Regarding the Wire-Load Model, this paper proposed a method and used accuracy formulas to design a complete model.

Conflict of Interest
The authors declare no conflict of interest.