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

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

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

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

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

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

    pin(I) {
      capacitance : 0.0134 ;
      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.439 ;
      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.01092, 0.04576, 0.1123, 0.2159, 0.3613, 0.5527, 0.7937, 1.088, 1.439");
          values("1.112, 1.082, 1.033, 1.006, 0.9903, 0.9802, 0.9753, 0.9724, 0.9695, 0.9677",\
                 "1.113, 1.083, 1.034, 1.006, 0.9908, 0.9808, 0.9764, 0.9726, 0.9704, 0.9685",\
                 "1.178, 1.145, 1.09, 1.059, 1.041, 1.032, 1.025, 1.021, 1.019, 1.017",\
                 "1.404, 1.363, 1.285, 1.233, 1.206, 1.188, 1.177, 1.169, 1.164, 1.161",\
                 "1.801, 1.747, 1.64, 1.558, 1.507, 1.474, 1.453, 1.439, 1.43, 1.424",\
                 "2.365, 2.301, 2.164, 2.042, 1.961, 1.908, 1.872, 1.849, 1.832, 1.819",\
                 "3.096, 3.026, 2.862, 2.696, 2.578, 2.501, 2.445, 2.406, 2.379, 2.359",\
                 "4.004, 3.928, 3.74, 3.536, 3.379, 3.264, 3.184, 3.129, 3.086, 3.056",\
                 "5.097, 5.013, 4.805, 4.567, 4.365, 4.21, 4.101, 4.021, 3.964, 3.92",\
                 "6.382, 6.293, 6.067, 5.799, 5.552, 5.358, 5.211, 5.105, 5.025, 4.964");
        }

        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.01092, 0.04576, 0.1123, 0.2159, 0.3613, 0.5527, 0.7937, 1.088, 1.439");
          values("0.64, 0.6193, 0.601, 0.5969, 0.595, 0.6002, 0.6019, 0.614, 0.6235, 0.6326",\
                 "0.6416, 0.6216, 0.6028, 0.5959, 0.5983, 0.5996, 0.6008, 0.6107, 0.624, 0.6299",\
                 "0.7026, 0.6792, 0.651, 0.6387, 0.6357, 0.6354, 0.6366, 0.6509, 0.6537, 0.6645",\
                 "0.8974, 0.8644, 0.816, 0.7848, 0.7671, 0.7597, 0.7548, 0.7636, 0.7709, 0.78",\
                 "1.234, 1.19, 1.111, 1.065, 1.028, 1.003, 0.993, 0.9902, 0.992, 0.9934",\
                 "1.72, 1.666, 1.566, 1.48, 1.425, 1.389, 1.361, 1.35, 1.338, 1.338",\
                 "2.361, 2.297, 2.17, 2.054, 1.969, 1.916, 1.878, 1.853, 1.83, 1.817",\
                 "3.162, 3.09, 2.934, 2.793, 2.678, 2.594, 2.543, 2.5, 2.469, 2.448",\
                 "4.129, 4.051, 3.874, 3.703, 3.557, 3.438, 3.354, 3.307, 3.267, 3.234",\
                 "5.273, 5.188, 4.992, 4.786, 4.613, 4.473, 4.353, 4.273, 4.225, 4.189");
        }
      }

      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.01092, 0.04576, 0.1123, 0.2159, 0.3613, 0.5527, 0.7937, 1.088, 1.439");
          values("0.1136, 0.129, 0.1705, 0.2361, 0.3307, 0.4614, 0.6331, 0.8496, 1.114, 1.429",\
                 "0.119, 0.1344, 0.176, 0.2415, 0.3362, 0.4667, 0.6384, 0.8551, 1.12, 1.435",\
                 "0.1453, 0.1605, 0.2017, 0.267, 0.3614, 0.4919, 0.6633, 0.8798, 1.144, 1.46",\
                 "0.1951, 0.2106, 0.2523, 0.3173, 0.4112, 0.5412, 0.7124, 0.9289, 1.193, 1.508",\
                 "0.2597, 0.2765, 0.3205, 0.387, 0.4809, 0.6102, 0.7808, 0.9966, 1.26, 1.575",\
                 "0.3363, 0.3547, 0.4018, 0.4715, 0.5681, 0.6976, 0.8673, 1.083, 1.346, 1.66",\
                 "0.425, 0.4451, 0.496, 0.5697, 0.6698, 0.8025, 0.9736, 1.188, 1.45, 1.765",\
                 "0.5268, 0.5487, 0.603, 0.6813, 0.7853, 0.9222, 1.098, 1.314, 1.576, 1.889",\
                 "0.6426, 0.6659, 0.7251, 0.8073, 0.9152, 1.056, 1.236, 1.458, 1.724, 2.037",\
                 "0.7726, 0.7974, 0.861, 0.9476, 1.06, 1.205, 1.39, 1.617, 1.89, 2.208");
        }

        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.01092, 0.04576, 0.1123, 0.2159, 0.3613, 0.5527, 0.7937, 1.088, 1.439");
          values("0.1062, 0.1216, 0.1693, 0.2585, 0.3981, 0.5937, 0.8512, 1.176, 1.572, 2.043",\
                 "0.1098, 0.1251, 0.1728, 0.2619, 0.4012, 0.5968, 0.8546, 1.179, 1.575, 2.047",\
                 "0.1251, 0.1401, 0.187, 0.2756, 0.4146, 0.6102, 0.8675, 1.192, 1.588, 2.059",\
                 "0.1431, 0.1589, 0.2053, 0.2923, 0.43, 0.6248, 0.8818, 1.206, 1.601, 2.072",\
                 "0.153, 0.17, 0.2173, 0.3038, 0.4397, 0.633, 0.8888, 1.212, 1.608, 2.08",\
                 "0.1523, 0.1707, 0.2201, 0.3064, 0.4421, 0.6345, 0.8891, 1.211, 1.606, 2.078",\
                 "0.1392, 0.1592, 0.2111, 0.2976, 0.4346, 0.6275, 0.8817, 1.203, 1.596, 2.066",\
                 "0.1125, 0.1341, 0.189, 0.2771, 0.4141, 0.6089, 0.8646, 1.186, 1.578, 2.047",\
                 "0.0715, 0.0947, 0.1535, 0.2435, 0.3813, 0.5767, 0.8349, 1.159, 1.552, 2.02",\
                 "0.0156, 0.0402, 0.103, 0.1952, 0.3329, 0.5307, 0.7911, 1.118, 1.514, 1.984");
        }

        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.01092, 0.04576, 0.1123, 0.2159, 0.3613, 0.5527, 0.7937, 1.088, 1.439");
          values("0.04462, 0.0622, 0.1124, 0.2057, 0.3568, 0.5758, 0.8698, 1.239, 1.689, 2.227",\
                 "0.04458, 0.0622, 0.1125, 0.2057, 0.3565, 0.5758, 0.8689, 1.238, 1.69, 2.226",\
                 "0.04524, 0.06282, 0.1131, 0.2059, 0.3567, 0.5768, 0.8695, 1.238, 1.688, 2.226",\
                 "0.05216, 0.06962, 0.118, 0.2084, 0.3579, 0.5775, 0.8689, 1.239, 1.69, 2.227",\
                 "0.06492, 0.08264, 0.1309, 0.2168, 0.3619, 0.5782, 0.8689, 1.238, 1.689, 2.226",\
                 "0.08036, 0.09922, 0.1485, 0.2342, 0.3738, 0.5824, 0.8694, 1.237, 1.688, 2.229",\
                 "0.0972, 0.1184, 0.1696, 0.254, 0.394, 0.5996, 0.8784, 1.239, 1.687, 2.227",\
                 "0.115, 0.1396, 0.1924, 0.2784, 0.4174, 0.625, 0.9024, 1.254, 1.692, 2.227",\
                 "0.135, 0.1606, 0.218, 0.3044, 0.4428, 0.653, 0.9338, 1.285, 1.714, 2.234",\
                 "0.1566, 0.1838, 0.2454, 0.334, 0.4722, 0.6822, 0.9682, 1.328, 1.754, 2.264");
        }

        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.01092, 0.04576, 0.1123, 0.2159, 0.3613, 0.5527, 0.7937, 1.088, 1.439");
          values("0.04574, 0.06704, 0.1471, 0.3097, 0.565, 0.9238, 1.395, 1.992, 2.716, 3.581",\
                 "0.04572, 0.0672, 0.1472, 0.3095, 0.5651, 0.9238, 1.398, 1.991, 2.717, 3.58",\
                 "0.0463, 0.0676, 0.1476, 0.3097, 0.5651, 0.9239, 1.396, 1.989, 2.717, 3.581",\
                 "0.05242, 0.0729, 0.1498, 0.3101, 0.565, 0.9239, 1.395, 1.989, 2.717, 3.579",\
                 "0.06096, 0.08198, 0.1551, 0.3133, 0.5663, 0.9235, 1.395, 1.99, 2.714, 3.581",\
                 "0.07112, 0.09218, 0.164, 0.3192, 0.5717, 0.9265, 1.396, 1.99, 2.716, 3.579",\
                 "0.08332, 0.1064, 0.1742, 0.3274, 0.581, 0.935, 1.4, 1.992, 2.716, 3.577",\
                 "0.0964, 0.1206, 0.1884, 0.3372, 0.5918, 0.9496, 1.413, 1.998, 2.718, 3.581",\
                 "0.1112, 0.1356, 0.2044, 0.3484, 0.604, 0.9652, 1.432, 2.017, 2.729, 3.594",\
                 "0.126, 0.1524, 0.223, 0.3624, 0.6162, 0.9806, 1.454, 2.04, 2.752, 3.6");
        }
      }
    }
  }

