/*
 * 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_8) {
    area : 73.382400 ;

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

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

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

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

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

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

    pin(Z) {
      direction : output ;
      function : "I" ;
      max_capacitance : 3.029 ;
      max_transition : 5.2 ;
      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.05575, 0.1813, 0.4209, 0.7943, 1.318, 2.008, 2.876, 3.936, 5.2");
          index_2("0.001, 0.0219, 0.09526, 0.2353, 0.4536, 0.7598, 1.163, 1.67, 2.29, 3.029");
          values("0.7169, 0.7051, 0.6969, 0.6948, 0.694, 0.6934, 0.6933, 0.6935, 0.6936, 0.6936",\
                 "0.7156, 0.7039, 0.6961, 0.694, 0.6929, 0.6929, 0.6925, 0.6925, 0.6923, 0.6927",\
                 "0.742, 0.7271, 0.7151, 0.7119, 0.7108, 0.7103, 0.7101, 0.7107, 0.7105, 0.7105",\
                 "0.85, 0.8257, 0.7987, 0.7857, 0.7801, 0.7772, 0.7755, 0.7746, 0.7742, 0.7741",\
                 "1.043, 1.01, 0.9604, 0.9325, 0.9179, 0.91, 0.9064, 0.9029, 0.9009, 0.8998",\
                 "1.324, 1.28, 1.21, 1.162, 1.133, 1.117, 1.108, 1.102, 1.098, 1.095",\
                 "1.692, 1.64, 1.546, 1.476, 1.431, 1.403, 1.386, 1.376, 1.368, 1.364",\
                 "2.151, 2.093, 1.976, 1.882, 1.818, 1.776, 1.749, 1.732, 1.72, 1.712",\
                 "2.704, 2.64, 2.504, 2.384, 2.299, 2.239, 2.2, 2.175, 2.157, 2.144",\
                 "3.355, 3.286, 3.132, 2.985, 2.878, 2.799, 2.746, 2.709, 2.685, 2.666");
        }

        rise_power(pwr_tin_oload_10x10) {
          index_1("0.02, 0.05575, 0.1813, 0.4209, 0.7943, 1.318, 2.008, 2.876, 3.936, 5.2");
          index_2("0.001, 0.0219, 0.09526, 0.2353, 0.4536, 0.7598, 1.163, 1.67, 2.29, 3.029");
          values("0.4735, 0.4567, 0.4456, 0.4423, 0.4429, 0.4449, 0.4503, 0.4579, 0.4647, 0.4806",\
                 "0.47, 0.4531, 0.4416, 0.4382, 0.4386, 0.4427, 0.4482, 0.454, 0.4629, 0.4698",\
                 "0.4889, 0.4713, 0.4531, 0.449, 0.4487, 0.4499, 0.4568, 0.4633, 0.4701, 0.477",\
                 "0.5875, 0.5622, 0.5309, 0.5145, 0.5102, 0.5104, 0.5151, 0.5188, 0.523, 0.531",\
                 "0.7646, 0.7284, 0.6784, 0.6496, 0.6373, 0.6321, 0.6303, 0.6354, 0.6378, 0.6498",\
                 "1.025, 0.9784, 0.9054, 0.8584, 0.8393, 0.8279, 0.8186, 0.8183, 0.8189, 0.8262",\
                 "1.368, 1.315, 1.222, 1.153, 1.111, 1.095, 1.085, 1.078, 1.073, 1.078",\
                 "1.799, 1.737, 1.624, 1.534, 1.47, 1.44, 1.425, 1.419, 1.413, 1.408",\
                 "2.318, 2.251, 2.118, 2.004, 1.922, 1.872, 1.845, 1.838, 1.83, 1.822",\
                 "2.93, 2.858, 2.703, 2.573, 2.47, 2.398, 2.353, 2.328, 2.323, 2.321");
        }
      }

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

        cell_fall(tmg_ntin_oload_10x10) {
          index_1("0.02, 0.05575, 0.1813, 0.4209, 0.7943, 1.318, 2.008, 2.876, 3.936, 5.2");
          index_2("0.001, 0.0219, 0.09526, 0.2353, 0.4536, 0.7598, 1.163, 1.67, 2.29, 3.029");
          values("0.153, 0.1799, 0.2539, 0.3756, 0.5582, 0.8133, 1.149, 1.573, 2.088, 2.703",\
                 "0.162, 0.1886, 0.2627, 0.3843, 0.567, 0.8222, 1.158, 1.581, 2.099, 2.712",\
                 "0.1979, 0.2244, 0.298, 0.4195, 0.6019, 0.8571, 1.193, 1.616, 2.133, 2.749",\
                 "0.2574, 0.2845, 0.359, 0.4804, 0.6622, 0.917, 1.253, 1.675, 2.193, 2.809",\
                 "0.3268, 0.3559, 0.4325, 0.5557, 0.7374, 0.9914, 1.327, 1.749, 2.266, 2.882",\
                 "0.4025, 0.4342, 0.5149, 0.6423, 0.8253, 1.079, 1.413, 1.835, 2.352, 2.967",\
                 "0.4837, 0.5181, 0.6042, 0.736, 0.9242, 1.18, 1.514, 1.934, 2.449, 3.064",\
                 "0.5706, 0.6077, 0.7, 0.8362, 1.029, 1.291, 1.629, 2.05, 2.564, 3.178",\
                 "0.6633, 0.7029, 0.8014, 0.9432, 1.142, 1.41, 1.755, 2.18, 2.694, 3.308",\
                 "0.7625, 0.805, 0.9097, 1.057, 1.261, 1.535, 1.888, 2.323, 2.843, 3.457");
        }

        cell_rise(tmg_ntin_oload_10x10) {
          index_1("0.02, 0.05575, 0.1813, 0.4209, 0.7943, 1.318, 2.008, 2.876, 3.936, 5.2");
          index_2("0.001, 0.0219, 0.09526, 0.2353, 0.4536, 0.7598, 1.163, 1.67, 2.29, 3.029");
          values("0.1596, 0.1852, 0.259, 0.3898, 0.5924, 0.8769, 1.251, 1.724, 2.301, 2.987",\
                 "0.1658, 0.1913, 0.2652, 0.396, 0.5985, 0.8836, 1.258, 1.73, 2.307, 2.991",\
                 "0.1927, 0.218, 0.2913, 0.4217, 0.6241, 0.9086, 1.283, 1.756, 2.332, 3.018",\
                 "0.2347, 0.2611, 0.3345, 0.464, 0.6659, 0.9504, 1.324, 1.796, 2.372, 3.057",\
                 "0.2748, 0.3034, 0.3791, 0.5076, 0.7085, 0.9918, 1.365, 1.837, 2.412, 3.099",\
                 "0.3096, 0.3409, 0.4203, 0.551, 0.7511, 1.033, 1.406, 1.877, 2.452, 3.139",\
                 "0.3378, 0.3721, 0.4569, 0.5901, 0.7921, 1.074, 1.446, 1.916, 2.489, 3.176",\
                 "0.359, 0.3962, 0.4866, 0.6236, 0.8284, 1.114, 1.487, 1.956, 2.529, 3.214",\
                 "0.3713, 0.4117, 0.5082, 0.6498, 0.8576, 1.148, 1.525, 1.996, 2.569, 3.253",\
                 "0.3747, 0.4176, 0.5216, 0.6685, 0.8794, 1.174, 1.557, 2.034, 2.61, 3.293");
        }

        fall_transition(tmg_ntin_oload_10x10) {
          index_1("0.02, 0.05575, 0.1813, 0.4209, 0.7943, 1.318, 2.008, 2.876, 3.936, 5.2");
          index_2("0.001, 0.0219, 0.09526, 0.2353, 0.4536, 0.7598, 1.163, 1.67, 2.29, 3.029");
          values("0.0586, 0.09016, 0.1889, 0.3781, 0.6858, 1.124, 1.703, 2.429, 3.325, 4.388",\
                 "0.05854, 0.09034, 0.1887, 0.3783, 0.687, 1.124, 1.702, 2.432, 3.319, 4.388",\
                 "0.0595, 0.09106, 0.1894, 0.3782, 0.6859, 1.124, 1.704, 2.434, 3.322, 4.386",\
                 "0.06832, 0.09986, 0.1953, 0.38, 0.6863, 1.124, 1.704, 2.433, 3.321, 4.385",\
                 "0.0832, 0.1145, 0.2083, 0.388, 0.6896, 1.125, 1.703, 2.432, 3.32, 4.381",\
                 "0.1012, 0.1338, 0.2278, 0.405, 0.6972, 1.128, 1.702, 2.431, 3.317, 4.378",\
                 "0.1218, 0.157, 0.2494, 0.4274, 0.718, 1.138, 1.705, 2.431, 3.318, 4.382",\
                 "0.1428, 0.1808, 0.2752, 0.453, 0.7452, 1.165, 1.721, 2.434, 3.323, 4.376",\
                 "0.1654, 0.2056, 0.3046, 0.4796, 0.7746, 1.201, 1.757, 2.458, 3.325, 4.381",\
                 "0.1892, 0.2334, 0.3348, 0.5086, 0.8082, 1.241, 1.804, 2.502, 3.355, 4.388");
        }

        rise_transition(tmg_ntin_oload_10x10) {
          index_1("0.02, 0.05575, 0.1813, 0.4209, 0.7943, 1.318, 2.008, 2.876, 3.936, 5.2");
          index_2("0.001, 0.0219, 0.09526, 0.2353, 0.4536, 0.7598, 1.163, 1.67, 2.29, 3.029");
          values("0.06484, 0.09708, 0.2111, 0.444, 0.8141, 1.337, 2.023, 2.889, 3.936, 5.194",\
                 "0.06486, 0.09706, 0.2112, 0.4439, 0.8141, 1.337, 2.023, 2.887, 3.938, 5.195",\
                 "0.06502, 0.09754, 0.2117, 0.444, 0.8142, 1.337, 2.023, 2.887, 3.938, 5.195",\
                 "0.07416, 0.1056, 0.2158, 0.4445, 0.816, 1.337, 2.02, 2.884, 3.936, 5.196",\
                 "0.08674, 0.1189, 0.2238, 0.4479, 0.8164, 1.336, 2.023, 2.888, 3.941, 5.194",\
                 "0.1034, 0.1356, 0.2384, 0.4556, 0.8184, 1.337, 2.022, 2.887, 3.937, 5.19",\
                 "0.121, 0.1558, 0.2564, 0.4712, 0.8296, 1.341, 2.022, 2.89, 3.938, 5.191",\
                 "0.1404, 0.1768, 0.2778, 0.4882, 0.849, 1.357, 2.031, 2.886, 3.938, 5.197",\
                 "0.1618, 0.2012, 0.3028, 0.5082, 0.8702, 1.384, 2.051, 2.897, 3.941, 5.195",\
                 "0.1842, 0.2256, 0.3304, 0.5312, 0.8908, 1.411, 2.084, 2.927, 3.956, 5.198");
        }
      }
    }
  }

