/*
 * Copyright 2022 GlobalFoundries PDK Authors
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

  cell(gf180mcu_fd_sc_mcu7t5v0__dlyb_4) {
    area : 48.294400 ;

    leakage_power() {
      related_pg_pin : "VDD" ;
      when : "!I" ;
      value : "0.00023509" ;
    }

    leakage_power() {
      related_pg_pin : "VDD" ;
      when : "I" ;
      value : "0.000229305" ;
    }

    leakage_power() {
      related_pg_pin : "VDD" ;
      value : "0.00023509" ;
    }

    pg_pin(VDD) {
      voltage_name : VDD ;
      pg_type : primary_power ;
    }

    pg_pin(VSS) {
      voltage_name : VSS ;
      pg_type : primary_ground ;
    }

    pin(I) {
      capacitance : 0.002752 ;
      direction : input ;
      driver_waveform_rise : driver_waveform_default_rise ;
      driver_waveform_fall : driver_waveform_default_fall ;
      input_voltage : default ;
      max_transition : 4 ;
      related_ground_pin : VSS ;
      related_power_pin : VDD ;
    }

    pin(Z) {
      direction : output ;
      function : "I" ;
      max_capacitance : 0.9541 ;
      max_transition : 4 ;
      min_capacitance : 0.001 ;
      output_voltage : default ;
      related_ground_pin : VSS ;
      related_power_pin : VDD ;

      internal_power() {
        related_pin : "I" ;

        fall_power(pwr_tin_oload_10x10) {
          index_1("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547, 2.214, 3.029, 4");
          index_2("0.001, 0.007578, 0.03067, 0.07476, 0.1435, 0.2399, 0.3667, 0.5265, 0.7215, 0.9541");
          values("2.087, 2.032, 1.878, 1.669, 1.454, 1.267, 1.132, 1.035, 0.9611, 0.9029",\
                 "2.086, 2.031, 1.878, 1.669, 1.453, 1.266, 1.132, 1.035, 0.9608, 0.9024",\
                 "2.088, 2.033, 1.88, 1.67, 1.455, 1.268, 1.133, 1.037, 0.9622, 0.9039",\
                 "2.097, 2.042, 1.888, 1.679, 1.464, 1.277, 1.142, 1.045, 0.971, 0.9129",\
                 "2.115, 2.06, 1.906, 1.697, 1.481, 1.295, 1.161, 1.064, 0.989, 0.9304",\
                 "2.142, 2.087, 1.933, 1.725, 1.509, 1.322, 1.188, 1.091, 1.017, 0.9586",\
                 "2.181, 2.126, 1.972, 1.763, 1.547, 1.361, 1.226, 1.129, 1.055, 0.9969",\
                 "2.231, 2.176, 2.022, 1.813, 1.597, 1.41, 1.277, 1.18, 1.106, 1.047",\
                 "2.294, 2.239, 2.085, 1.877, 1.66, 1.474, 1.34, 1.243, 1.169, 1.111",\
                 "2.37, 2.315, 2.161, 1.953, 1.737, 1.551, 1.417, 1.319, 1.245, 1.187");
        }

        rise_power(pwr_tin_oload_10x10) {
          index_1("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547, 2.214, 3.029, 4");
          index_2("0.001, 0.007578, 0.03067, 0.07476, 0.1435, 0.2399, 0.3667, 0.5265, 0.7215, 0.9541");
          values("1.021, 0.9788, 0.8748, 0.7871, 0.7249, 0.6796, 0.6487, 0.6279, 0.6148, 0.6081",\
                 "1.021, 0.9785, 0.8738, 0.7869, 0.7252, 0.6811, 0.6492, 0.6274, 0.6148, 0.6081",\
                 "1.023, 0.9799, 0.8746, 0.7872, 0.7258, 0.6816, 0.6482, 0.6294, 0.6158, 0.6101",\
                 "1.027, 0.9855, 0.8818, 0.7928, 0.7319, 0.6871, 0.6557, 0.6349, 0.6213, 0.6146",\
                 "1.04, 0.9977, 0.8938, 0.8074, 0.7448, 0.6991, 0.6667, 0.6474, 0.6338, 0.6276",\
                 "1.061, 1.018, 0.9155, 0.8269, 0.7645, 0.7196, 0.6877, 0.6664, 0.6538, 0.6466",\
                 "1.092, 1.05, 0.9451, 0.8583, 0.7962, 0.7506, 0.7202, 0.6989, 0.6848, 0.6791",\
                 "1.134, 1.092, 0.9876, 0.8989, 0.8406, 0.7946, 0.7617, 0.7414, 0.7273, 0.7221",\
                 "1.187, 1.145, 1.042, 0.9518, 0.8878, 0.8446, 0.8182, 0.7959, 0.7808, 0.7711",\
                 "1.251, 1.209, 1.105, 1.015, 0.9534, 0.9066, 0.8757, 0.8614, 0.8483, 0.8396");
        }
      }

      timing() {
        related_pin : "I" ;
        timing_sense : positive_unate ;
        timing_type : combinational ;

        cell_fall(tmg_ntin_oload_10x10) {
          index_1("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547, 2.214, 3.029, 4");
          index_2("0.001, 0.007578, 0.03067, 0.07476, 0.1435, 0.2399, 0.3667, 0.5265, 0.7215, 0.9541");
          values("1.464, 1.502, 1.603, 1.745, 1.92, 2.127, 2.365, 2.639, 2.952, 3.309",\
                 "1.47, 1.508, 1.608, 1.751, 1.926, 2.133, 2.371, 2.645, 2.958, 3.315",\
                 "1.499, 1.536, 1.637, 1.779, 1.955, 2.161, 2.399, 2.673, 2.986, 3.344",\
                 "1.564, 1.602, 1.702, 1.845, 2.02, 2.226, 2.464, 2.739, 3.052, 3.409",\
                 "1.667, 1.705, 1.805, 1.948, 2.123, 2.33, 2.568, 2.842, 3.155, 3.512",\
                 "1.803, 1.84, 1.941, 2.083, 2.259, 2.465, 2.703, 2.978, 3.29, 3.647",\
                 "1.968, 2.006, 2.106, 2.248, 2.424, 2.63, 2.868, 3.142, 3.456, 3.812",\
                 "2.162, 2.2, 2.3, 2.442, 2.618, 2.824, 3.062, 3.336, 3.649, 4.006",\
                 "2.383, 2.421, 2.522, 2.664, 2.84, 3.046, 3.284, 3.558, 3.871, 4.228",\
                 "2.634, 2.672, 2.772, 2.915, 3.09, 3.296, 3.534, 3.809, 4.122, 4.479");
        }

        cell_rise(tmg_ntin_oload_10x10) {
          index_1("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547, 2.214, 3.029, 4");
          index_2("0.001, 0.007578, 0.03067, 0.07476, 0.1435, 0.2399, 0.3667, 0.5265, 0.7215, 0.9541");
          values("1.106, 1.135, 1.213, 1.331, 1.497, 1.72, 2.011, 2.379, 2.83, 3.369",\
                 "1.111, 1.14, 1.218, 1.336, 1.502, 1.725, 2.016, 2.383, 2.834, 3.373",\
                 "1.127, 1.156, 1.234, 1.352, 1.518, 1.741, 2.032, 2.4, 2.85, 3.389",\
                 "1.147, 1.176, 1.255, 1.372, 1.538, 1.761, 2.052, 2.42, 2.871, 3.41",\
                 "1.156, 1.186, 1.264, 1.382, 1.547, 1.771, 2.062, 2.43, 2.88, 3.419",\
                 "1.151, 1.18, 1.259, 1.376, 1.542, 1.765, 2.056, 2.424, 2.875, 3.414",\
                 "1.128, 1.157, 1.235, 1.353, 1.519, 1.742, 2.033, 2.401, 2.852, 3.39",\
                 "1.085, 1.114, 1.192, 1.31, 1.476, 1.699, 1.99, 2.357, 2.808, 3.347",\
                 "1.018, 1.047, 1.125, 1.243, 1.409, 1.632, 1.923, 2.291, 2.741, 3.279",\
                 "0.9259, 0.9557, 1.034, 1.151, 1.317, 1.54, 1.831, 2.199, 2.649, 3.187");
        }

        fall_transition(tmg_ntin_oload_10x10) {
          index_1("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547, 2.214, 3.029, 4");
          index_2("0.001, 0.007578, 0.03067, 0.07476, 0.1435, 0.2399, 0.3667, 0.5265, 0.7215, 0.9541");
          values("0.3116, 0.3534, 0.4608, 0.6038, 0.7794, 0.998, 1.273, 1.619, 2.042, 2.56",\
                 "0.311, 0.3532, 0.4604, 0.6042, 0.7786, 0.9968, 1.273, 1.62, 2.042, 2.561",\
                 "0.3118, 0.3534, 0.4612, 0.6038, 0.7792, 0.9972, 1.274, 1.619, 2.042, 2.56",\
                 "0.3114, 0.3534, 0.4608, 0.6038, 0.7794, 0.998, 1.274, 1.619, 2.042, 2.563",\
                 "0.3112, 0.3534, 0.4608, 0.6036, 0.779, 0.9978, 1.274, 1.619, 2.042, 2.56",\
                 "0.3114, 0.3536, 0.4608, 0.604, 0.7796, 0.998, 1.273, 1.618, 2.043, 2.56",\
                 "0.3112, 0.3532, 0.4608, 0.6038, 0.7782, 0.9978, 1.273, 1.619, 2.043, 2.562",\
                 "0.3116, 0.3536, 0.4604, 0.6032, 0.7788, 0.997, 1.273, 1.618, 2.042, 2.561",\
                 "0.3106, 0.352, 0.4596, 0.603, 0.7784, 0.9962, 1.273, 1.619, 2.043, 2.562",\
                 "0.3114, 0.3524, 0.46, 0.6044, 0.7788, 0.9982, 1.273, 1.618, 2.042, 2.561");
        }

        rise_transition(tmg_ntin_oload_10x10) {
          index_1("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547, 2.214, 3.029, 4");
          index_2("0.001, 0.007578, 0.03067, 0.07476, 0.1435, 0.2399, 0.3667, 0.5265, 0.7215, 0.9541");
          values("0.1444, 0.1756, 0.2666, 0.4292, 0.69, 1.067, 1.58, 2.233, 3.037, 3.994",\
                 "0.1442, 0.1758, 0.267, 0.4284, 0.6898, 1.068, 1.579, 2.232, 3.038, 4",\
                 "0.1444, 0.1758, 0.2668, 0.4284, 0.6906, 1.067, 1.579, 2.233, 3.035, 3.999",\
                 "0.1448, 0.1776, 0.2672, 0.4282, 0.69, 1.067, 1.579, 2.235, 3.039, 4",\
                 "0.1436, 0.1762, 0.2662, 0.4284, 0.6898, 1.066, 1.579, 2.231, 3.037, 4.002",\
                 "0.1442, 0.177, 0.267, 0.429, 0.6912, 1.067, 1.579, 2.234, 3.038, 3.994",\
                 "0.1432, 0.1754, 0.2672, 0.4286, 0.6892, 1.067, 1.58, 2.235, 3.037, 4",\
                 "0.143, 0.1752, 0.2662, 0.4282, 0.6904, 1.066, 1.579, 2.234, 3.035, 3.995",\
                 "0.143, 0.1752, 0.2664, 0.4286, 0.6906, 1.067, 1.577, 2.231, 3.04, 3.993",\
                 "0.1438, 0.1758, 0.2668, 0.4288, 0.6908, 1.066, 1.577, 2.231, 3.034, 3.996");
        }
      }
    }
  }

