/*
 * 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_mcu9t5v0__clkbuf_3) {
    area : 39.513600 ;

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

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

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

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

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

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

    pin(Z) {
      direction : output ;
      function : "I" ;
      max_capacitance : 1.092 ;
      max_transition : 3.6 ;
      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.04471, 0.1314, 0.2971, 0.5551, 0.9172, 1.394, 1.994, 2.727, 3.6");
          index_2("0.001, 0.008527, 0.03495, 0.0854, 0.164, 0.2743, 0.4194, 0.6023, 0.8255, 1.092");
          values("0.6931, 0.6773, 0.6592, 0.6494, 0.6444, 0.6416, 0.64, 0.639, 0.6385, 0.6381",\
                 "0.6952, 0.6792, 0.6608, 0.6511, 0.6461, 0.6434, 0.6424, 0.641, 0.6403, 0.64",\
                 "0.7353, 0.7169, 0.6919, 0.6799, 0.6737, 0.6709, 0.6682, 0.6678, 0.6669, 0.6664",\
                 "0.8709, 0.8449, 0.805, 0.7802, 0.7657, 0.758, 0.7531, 0.7501, 0.7481, 0.7467",\
                 "1.107, 1.073, 1.011, 0.9668, 0.9388, 0.9217, 0.9114, 0.9042, 0.9002, 0.8968",\
                 "1.442, 1.401, 1.318, 1.25, 1.204, 1.174, 1.154, 1.141, 1.132, 1.126",\
                 "1.878, 1.83, 1.726, 1.634, 1.565, 1.52, 1.488, 1.467, 1.451, 1.441",\
                 "2.419, 2.365, 2.245, 2.124, 2.032, 1.965, 1.919, 1.887, 1.864, 1.847",\
                 "3.068, 3.01, 2.874, 2.73, 2.609, 2.52, 2.455, 2.41, 2.376, 2.352",\
                 "3.834, 3.771, 3.621, 3.453, 3.307, 3.19, 3.106, 3.042, 2.996, 2.961");
        }

        rise_power(pwr_tin_oload_10x10) {
          index_1("0.02, 0.04471, 0.1314, 0.2971, 0.5551, 0.9172, 1.394, 1.994, 2.727, 3.6");
          index_2("0.001, 0.008527, 0.03495, 0.0854, 0.164, 0.2743, 0.4194, 0.6023, 0.8255, 1.092");
          values("0.4834, 0.4605, 0.432, 0.4188, 0.4114, 0.4105, 0.4119, 0.4166, 0.422, 0.4315",\
                 "0.4822, 0.46, 0.4312, 0.4169, 0.4101, 0.4083, 0.4113, 0.415, 0.4187, 0.4254",\
                 "0.5095, 0.4855, 0.4521, 0.4364, 0.429, 0.4259, 0.4278, 0.432, 0.4352, 0.4403",\
                 "0.6278, 0.5983, 0.5547, 0.5255, 0.5107, 0.5029, 0.5026, 0.5046, 0.5072, 0.5129",\
                 "0.8431, 0.8063, 0.74, 0.6994, 0.6702, 0.6525, 0.6451, 0.6438, 0.642, 0.6465",\
                 "1.156, 1.113, 1.028, 0.9609, 0.9188, 0.8917, 0.8733, 0.8627, 0.8587, 0.8594",\
                 "1.567, 1.517, 1.414, 1.321, 1.259, 1.221, 1.195, 1.175, 1.161, 1.155",\
                 "2.078, 2.024, 1.903, 1.783, 1.7, 1.64, 1.604, 1.583, 1.556, 1.544",\
                 "2.695, 2.638, 2.501, 2.361, 2.245, 2.167, 2.111, 2.078, 2.051, 2.03",\
                 "3.422, 3.361, 3.209, 3.05, 2.909, 2.807, 2.727, 2.677, 2.654, 2.616");
        }
      }

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

        cell_fall(tmg_ntin_oload_10x10) {
          index_1("0.02, 0.04471, 0.1314, 0.2971, 0.5551, 0.9172, 1.394, 1.994, 2.727, 3.6");
          index_2("0.001, 0.008527, 0.03495, 0.0854, 0.164, 0.2743, 0.4194, 0.6023, 0.8255, 1.092");
          values("0.1185, 0.1378, 0.193, 0.2868, 0.429, 0.6283, 0.8909, 1.221, 1.625, 2.107",\
                 "0.1242, 0.1435, 0.1986, 0.2924, 0.4346, 0.6339, 0.8964, 1.227, 1.631, 2.113",\
                 "0.1479, 0.1669, 0.2216, 0.315, 0.4569, 0.6562, 0.9184, 1.249, 1.654, 2.135",\
                 "0.1883, 0.2077, 0.2623, 0.3548, 0.4957, 0.6942, 0.9565, 1.286, 1.691, 2.173",\
                 "0.2347, 0.2553, 0.312, 0.4052, 0.5451, 0.7425, 1.004, 1.334, 1.737, 2.218",\
                 "0.2839, 0.3065, 0.366, 0.4616, 0.6027, 0.7992, 1.059, 1.388, 1.791, 2.272",\
                 "0.3361, 0.3601, 0.423, 0.5211, 0.6654, 0.8641, 1.123, 1.451, 1.853, 2.334",\
                 "0.3902, 0.4161, 0.483, 0.5844, 0.7313, 0.9338, 1.197, 1.524, 1.925, 2.404",\
                 "0.4467, 0.4744, 0.5454, 0.6503, 0.8001, 1.006, 1.274, 1.607, 2.008, 2.486",\
                 "0.5058, 0.5356, 0.6106, 0.7197, 0.8724, 1.081, 1.354, 1.693, 2.099, 2.579");
        }

        cell_rise(tmg_ntin_oload_10x10) {
          index_1("0.02, 0.04471, 0.1314, 0.2971, 0.5551, 0.9172, 1.394, 1.994, 2.727, 3.6");
          index_2("0.001, 0.008527, 0.03495, 0.0854, 0.164, 0.2743, 0.4194, 0.6023, 0.8255, 1.092");
          values("0.1313, 0.1492, 0.1998, 0.2892, 0.428, 0.6239, 0.8811, 1.206, 1.603, 2.077",\
                 "0.1345, 0.1524, 0.2033, 0.2923, 0.4314, 0.6267, 0.8843, 1.209, 1.606, 2.08",\
                 "0.1512, 0.1688, 0.219, 0.3081, 0.4469, 0.6421, 0.8999, 1.224, 1.622, 2.096",\
                 "0.1815, 0.1997, 0.2499, 0.3378, 0.4757, 0.6703, 0.9278, 1.252, 1.649, 2.121",\
                 "0.2134, 0.2329, 0.2847, 0.3722, 0.5086, 0.7026, 0.959, 1.283, 1.679, 2.153",\
                 "0.2428, 0.2646, 0.3198, 0.4086, 0.5442, 0.7367, 0.9919, 1.316, 1.71, 2.182",\
                 "0.2692, 0.2929, 0.3523, 0.4428, 0.5802, 0.7733, 1.028, 1.35, 1.744, 2.217",\
                 "0.2917, 0.3176, 0.3813, 0.4747, 0.614, 0.8089, 1.065, 1.386, 1.78, 2.25",\
                 "0.3106, 0.3385, 0.4069, 0.504, 0.6444, 0.8425, 1.102, 1.426, 1.819, 2.289",\
                 "0.3246, 0.3546, 0.4278, 0.5303, 0.6726, 0.8726, 1.135, 1.463, 1.86, 2.33");
        }

        fall_transition(tmg_ntin_oload_10x10) {
          index_1("0.02, 0.04471, 0.1314, 0.2971, 0.5551, 0.9172, 1.394, 1.994, 2.727, 3.6");
          index_2("0.001, 0.008527, 0.03495, 0.0854, 0.164, 0.2743, 0.4194, 0.6023, 0.8255, 1.092");
          values("0.04874, 0.07244, 0.1477, 0.2954, 0.5351, 0.8756, 1.327, 1.894, 2.587, 3.413",\
                 "0.04894, 0.07242, 0.1479, 0.2951, 0.5351, 0.8765, 1.327, 1.894, 2.586, 3.411",\
                 "0.04954, 0.073, 0.1481, 0.2956, 0.5353, 0.8754, 1.325, 1.891, 2.583, 3.408",\
                 "0.05644, 0.07974, 0.1525, 0.2975, 0.5359, 0.8765, 1.326, 1.893, 2.583, 3.407",\
                 "0.0681, 0.0921, 0.1635, 0.3035, 0.5377, 0.8768, 1.326, 1.892, 2.584, 3.411",\
                 "0.08208, 0.1072, 0.1793, 0.3178, 0.5452, 0.8782, 1.326, 1.891, 2.583, 3.411",\
                 "0.098, 0.1248, 0.1974, 0.3362, 0.5634, 0.8902, 1.329, 1.892, 2.579, 3.409",\
                 "0.115, 0.1442, 0.2186, 0.3554, 0.585, 0.9146, 1.347, 1.897, 2.583, 3.402",\
                 "0.1326, 0.1644, 0.241, 0.3774, 0.6066, 0.9408, 1.378, 1.922, 2.592, 3.403",\
                 "0.1526, 0.1862, 0.266, 0.4022, 0.6306, 0.9698, 1.413, 1.961, 2.623, 3.421");
        }

        rise_transition(tmg_ntin_oload_10x10) {
          index_1("0.02, 0.04471, 0.1314, 0.2971, 0.5551, 0.9172, 1.394, 1.994, 2.727, 3.6");
          index_2("0.001, 0.008527, 0.03495, 0.0854, 0.164, 0.2743, 0.4194, 0.6023, 0.8255, 1.092");
          values("0.05492, 0.0772, 0.1528, 0.3119, 0.5672, 0.9267, 1.401, 1.996, 2.725, 3.592",\
                 "0.05492, 0.07708, 0.1535, 0.3118, 0.5677, 0.9273, 1.401, 1.998, 2.726, 3.595",\
                 "0.05484, 0.07702, 0.1531, 0.3119, 0.5672, 0.9273, 1.401, 1.998, 2.726, 3.593",\
                 "0.0609, 0.08272, 0.1561, 0.3125, 0.5679, 0.9273, 1.4, 1.997, 2.724, 3.592",\
                 "0.07112, 0.09344, 0.1638, 0.3157, 0.5684, 0.9278, 1.401, 1.997, 2.726, 3.593",\
                 "0.0844, 0.1077, 0.1764, 0.323, 0.5717, 0.9292, 1.403, 1.997, 2.726, 3.592",\
                 "0.0996, 0.1232, 0.1928, 0.3352, 0.5826, 0.9358, 1.403, 1.998, 2.729, 3.593",\
                 "0.1138, 0.1402, 0.2114, 0.3498, 0.5966, 0.9506, 1.414, 2.002, 2.726, 3.593",\
                 "0.1314, 0.1602, 0.2328, 0.3678, 0.6132, 0.97, 1.436, 2.018, 2.734, 3.6",\
                 "0.1496, 0.1798, 0.2568, 0.3892, 0.6298, 0.9912, 1.461, 2.044, 2.753, 3.605");
        }
      }
    }
  }

