/*
 * 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_20) {
    area : 174.988800 ;

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

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

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

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

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

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

    pin(Z) {
      direction : output ;
      function : "I" ;
      max_capacitance : 9.032 ;
      max_transition : 4.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.05023, 0.1564, 0.359, 0.6747, 1.118, 1.701, 2.435, 3.331, 4.4");
          index_2("0.001, 0.06334, 0.2822, 0.7, 1.351, 2.264, 3.466, 4.981, 6.829, 9.032");
          values("1.659, 1.642, 1.648, 1.651, 1.657, 1.66, 1.662, 1.663, 1.664, 1.664",\
                 "1.654, 1.635, 1.64, 1.645, 1.652, 1.656, 1.658, 1.659, 1.66, 1.66",\
                 "1.722, 1.694, 1.685, 1.69, 1.694, 1.698, 1.7, 1.702, 1.702, 1.703",\
                 "1.966, 1.915, 1.867, 1.852, 1.849, 1.849, 1.85, 1.851, 1.851, 1.852",\
                 "2.391, 2.308, 2.221, 2.176, 2.151, 2.143, 2.142, 2.14, 2.139, 2.139",\
                 "3.004, 2.89, 2.749, 2.661, 2.624, 2.6, 2.589, 2.583, 2.579, 2.577",\
                 "3.809, 3.668, 3.473, 3.341, 3.27, 3.229, 3.203, 3.189, 3.181, 3.178",\
                 "4.81, 4.646, 4.398, 4.222, 4.105, 4.036, 3.999, 3.975, 3.959, 3.95",\
                 "6.017, 5.832, 5.53, 5.306, 5.147, 5.044, 4.984, 4.948, 4.921, 4.907",\
                 "7.435, 7.239, 6.884, 6.609, 6.404, 6.269, 6.174, 6.119, 6.084, 6.061");
        }

        rise_power(pwr_tin_oload_10x10) {
          index_1("0.02, 0.05023, 0.1564, 0.359, 0.6747, 1.118, 1.701, 2.435, 3.331, 4.4");
          index_2("0.001, 0.06334, 0.2822, 0.7, 1.351, 2.264, 3.466, 4.981, 6.829, 9.032");
          values("1.071, 1.04, 1.033, 1.035, 1.036, 1.051, 1.069, 1.108, 1.127, 1.16",\
                 "1.061, 1.032, 1.023, 1.027, 1.034, 1.04, 1.066, 1.083, 1.127, 1.163",\
                 "1.114, 1.077, 1.046, 1.045, 1.051, 1.064, 1.073, 1.104, 1.134, 1.16",\
                 "1.337, 1.276, 1.225, 1.194, 1.19, 1.196, 1.217, 1.23, 1.26, 1.304",\
                 "1.719, 1.637, 1.526, 1.489, 1.462, 1.452, 1.462, 1.486, 1.502, 1.531",\
                 "2.282, 2.161, 2.029, 1.928, 1.912, 1.891, 1.894, 1.893, 1.916, 1.927",\
                 "3.023, 2.875, 2.687, 2.563, 2.491, 2.487, 2.48, 2.454, 2.466, 2.488",\
                 "3.952, 3.779, 3.548, 3.386, 3.258, 3.214, 3.229, 3.221, 3.215, 3.208",\
                 "5.067, 4.873, 4.591, 4.371, 4.233, 4.139, 4.115, 4.139, 4.115, 4.115",\
                 "6.382, 6.172, 5.821, 5.587, 5.407, 5.273, 5.195, 5.212, 5.231, 5.21");
        }
      }

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

        cell_fall(tmg_ntin_oload_10x10) {
          index_1("0.02, 0.05023, 0.1564, 0.359, 0.6747, 1.118, 1.701, 2.435, 3.331, 4.4");
          index_2("0.001, 0.06334, 0.2822, 0.7, 1.351, 2.264, 3.466, 4.981, 6.829, 9.032");
          values("0.1116, 0.1345, 0.1964, 0.301, 0.461, 0.6853, 0.9802, 1.352, 1.806, 2.347",\
                 "0.1194, 0.1422, 0.2041, 0.3087, 0.4688, 0.693, 0.9881, 1.36, 1.814, 2.355",\
                 "0.1503, 0.1729, 0.2344, 0.3388, 0.4988, 0.723, 1.018, 1.39, 1.844, 2.383",\
                 "0.1983, 0.2218, 0.2847, 0.3888, 0.5484, 0.7724, 1.067, 1.439, 1.892, 2.434",\
                 "0.2548, 0.2801, 0.3444, 0.4491, 0.6087, 0.8322, 1.127, 1.498, 1.951, 2.493",\
                 "0.3173, 0.3449, 0.4128, 0.5192, 0.6787, 0.9019, 1.196, 1.567, 2.02, 2.561",\
                 "0.385, 0.4154, 0.4872, 0.5971, 0.7576, 0.9809, 1.275, 1.646, 2.099, 2.64",\
                 "0.4585, 0.4912, 0.5675, 0.6808, 0.845, 1.071, 1.365, 1.736, 2.188, 2.728",\
                 "0.5374, 0.5726, 0.654, 0.7713, 0.9381, 1.168, 1.467, 1.837, 2.29, 2.829",\
                 "0.6228, 0.6602, 0.7462, 0.8673, 1.038, 1.273, 1.575, 1.951, 2.403, 2.943");
        }

        cell_rise(tmg_ntin_oload_10x10) {
          index_1("0.02, 0.05023, 0.1564, 0.359, 0.6747, 1.118, 1.701, 2.435, 3.331, 4.4");
          index_2("0.001, 0.06334, 0.2822, 0.7, 1.351, 2.264, 3.466, 4.981, 6.829, 9.032");
          values("0.1133, 0.1352, 0.1993, 0.316, 0.4977, 0.752, 1.087, 1.509, 2.023, 2.641",\
                 "0.119, 0.141, 0.205, 0.3217, 0.5032, 0.7583, 1.093, 1.516, 2.031, 2.646",\
                 "0.1431, 0.1647, 0.2281, 0.3445, 0.5261, 0.7806, 1.116, 1.537, 2.053, 2.666",\
                 "0.1755, 0.1985, 0.2625, 0.3779, 0.559, 0.8134, 1.148, 1.57, 2.086, 2.701",\
                 "0.2067, 0.2314, 0.2962, 0.4111, 0.5913, 0.8451, 1.18, 1.602, 2.118, 2.731",\
                 "0.2347, 0.2615, 0.3296, 0.4439, 0.6231, 0.8768, 1.211, 1.632, 2.148, 2.763",\
                 "0.2579, 0.2871, 0.3583, 0.4746, 0.654, 0.9064, 1.241, 1.661, 2.175, 2.79",\
                 "0.2748, 0.3071, 0.3824, 0.5011, 0.6815, 0.935, 1.268, 1.689, 2.203, 2.816",\
                 "0.2853, 0.3197, 0.3999, 0.5207, 0.7038, 0.96, 1.294, 1.715, 2.228, 2.841",\
                 "0.2885, 0.3254, 0.41, 0.5348, 0.7202, 0.9788, 1.317, 1.739, 2.251, 2.864");
        }

        fall_transition(tmg_ntin_oload_10x10) {
          index_1("0.02, 0.05023, 0.1564, 0.359, 0.6747, 1.118, 1.701, 2.435, 3.331, 4.4");
          index_2("0.001, 0.06334, 0.2822, 0.7, 1.351, 2.264, 3.466, 4.981, 6.829, 9.032");
          values("0.03792, 0.06448, 0.1462, 0.3105, 0.574, 0.9479, 1.439, 2.058, 2.816, 3.718",\
                 "0.0379, 0.06444, 0.1458, 0.3105, 0.5738, 0.9482, 1.439, 2.058, 2.816, 3.717",\
                 "0.03862, 0.06524, 0.1466, 0.3104, 0.5742, 0.9465, 1.436, 2.059, 2.815, 3.705",\
                 "0.0451, 0.07154, 0.1506, 0.3117, 0.5738, 0.9464, 1.439, 2.059, 2.808, 3.715",\
                 "0.05466, 0.08036, 0.1581, 0.3142, 0.5753, 0.9472, 1.438, 2.054, 2.809, 3.716",\
                 "0.0659, 0.09288, 0.1694, 0.3208, 0.5774, 0.9472, 1.436, 2.054, 2.809, 3.716",\
                 "0.0788, 0.1068, 0.1836, 0.3338, 0.5854, 0.95, 1.436, 2.052, 2.808, 3.712",\
                 "0.091, 0.1222, 0.1996, 0.348, 0.6012, 0.962, 1.442, 2.053, 2.805, 3.708",\
                 "0.104, 0.1372, 0.2172, 0.3644, 0.6182, 0.9816, 1.456, 2.06, 2.805, 3.703",\
                 "0.118, 0.1534, 0.2358, 0.3814, 0.6354, 1.006, 1.485, 2.079, 2.816, 3.703");
        }

        rise_transition(tmg_ntin_oload_10x10) {
          index_1("0.02, 0.05023, 0.1564, 0.359, 0.6747, 1.118, 1.701, 2.435, 3.331, 4.4");
          index_2("0.001, 0.06334, 0.2822, 0.7, 1.351, 2.264, 3.466, 4.981, 6.829, 9.032");
          values("0.04056, 0.06812, 0.1667, 0.3669, 0.6825, 1.127, 1.709, 2.445, 3.342, 4.406",\
                 "0.04072, 0.06818, 0.1667, 0.3671, 0.6826, 1.126, 1.711, 2.447, 3.338, 4.407",\
                 "0.04116, 0.06882, 0.167, 0.3673, 0.6828, 1.126, 1.707, 2.443, 3.343, 4.413",\
                 "0.0486, 0.0751, 0.1696, 0.3673, 0.6824, 1.125, 1.71, 2.441, 3.343, 4.405",\
                 "0.05674, 0.08318, 0.1734, 0.3685, 0.6833, 1.126, 1.71, 2.442, 3.337, 4.412",\
                 "0.06744, 0.0935, 0.1811, 0.3712, 0.684, 1.125, 1.708, 2.438, 3.336, 4.403",\
                 "0.0786, 0.1068, 0.192, 0.3786, 0.6874, 1.126, 1.706, 2.44, 3.338, 4.402",\
                 "0.0908, 0.1204, 0.205, 0.3876, 0.6966, 1.13, 1.708, 2.439, 3.338, 4.4",\
                 "0.1032, 0.1348, 0.2196, 0.3992, 0.7092, 1.144, 1.714, 2.441, 3.333, 4.406",\
                 "0.1154, 0.1496, 0.2358, 0.4126, 0.7224, 1.162, 1.732, 2.45, 3.336, 4.398");
        }
      }
    }
  }

