/*
 * 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__inv_20) {
    area : 118.540800 ;

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

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

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

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

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

    pin(I) {
      capacitance : 0.134 ;
      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(ZN) {
      direction : output ;
      function : "(!I)" ;
      max_capacitance : 7.279 ;
      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.05124, 0.2276, 0.5643, 1.089, 1.825, 2.794, 4.014, 5.504, 7.279");
          values("-0.1416, -0.1242, -0.1044, -0.09514, -0.09145, -0.0897, -0.08859, -0.08807, -0.08749, -0.08705",\
                 "-0.1442, -0.1304, -0.111, -0.09933, -0.09395, -0.0903, -0.08935, -0.08817, -0.08764, -0.08724",\
                 "0.009961, -0.01144, -0.0371, -0.05554, -0.06551, -0.07331, -0.07612, -0.07998, -0.08086, -0.08162",\
                 "0.4724, 0.4039, 0.2733, 0.1686, 0.09547, 0.04513, 0.01056, -0.01394, -0.02992, -0.04177",\
                 "1.285, 1.175, 0.925, 0.6814, 0.4948, 0.3574, 0.2558, 0.1809, 0.1251, 0.08386",\
                 "2.47, 2.327, 1.97, 1.569, 1.225, 0.9545, 0.7465, 0.5841, 0.4588, 0.3606",\
                 "4.059, 3.887, 3.44, 2.883, 2.358, 1.918, 1.561, 1.275, 1.046, 0.8611",\
                 "6.071, 5.879, 5.355, 4.659, 3.948, 3.311, 2.771, 2.326, 1.958, 1.654",\
                 "8.539, 8.328, 7.74, 6.922, 6.032, 5.188, 4.44, 3.799, 3.26, 2.804",\
                 "11.49, 11.26, 10.62, 9.694, 8.636, 7.583, 6.61, 5.753, 5.007, 4.373");
        }

        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.05124, 0.2276, 0.5643, 1.089, 1.825, 2.794, 4.014, 5.504, 7.279");
          values("1.248, 1.283, 1.331, 1.359, 1.352, 1.383, 1.395, 1.434, 1.435, 1.497",\
                 "1.256, 1.268, 1.307, 1.336, 1.35, 1.373, 1.398, 1.412, 1.445, 1.461",\
                 "1.492, 1.455, 1.41, 1.384, 1.374, 1.391, 1.398, 1.416, 1.435, 1.482",\
                 "2.063, 1.979, 1.82, 1.682, 1.585, 1.529, 1.506, 1.495, 1.492, 1.507",\
                 "3.005, 2.886, 2.613, 2.344, 2.112, 1.937, 1.819, 1.74, 1.701, 1.677",\
                 "4.356, 4.207, 3.837, 3.417, 3.046, 2.726, 2.46, 2.273, 2.133, 2.022",\
                 "6.151, 5.983, 5.536, 4.96, 4.427, 3.954, 3.533, 3.18, 2.885, 2.692",\
                 "8.423, 8.236, 7.721, 7.021, 6.299, 5.645, 5.067, 4.541, 4.095, 3.719",\
                 "11.21, 11, 10.43, 9.616, 8.735, 7.878, 7.111, 6.406, 5.78, 5.221",\
                 "14.53, 14.31, 13.69, 12.78, 11.74, 10.68, 9.689, 8.818, 7.99, 7.258");
        }
      }

      timing() {
        related_pin : "I" ;
        timing_sense : negative_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.05124, 0.2276, 0.5643, 1.089, 1.825, 2.794, 4.014, 5.504, 7.279");
          values("0.02927, 0.04055, 0.07868, 0.1505, 0.262, 0.4186, 0.624, 0.8839, 1.2, 1.578",\
                 "0.03456, 0.04724, 0.08536, 0.1573, 0.2689, 0.4255, 0.6315, 0.8899, 1.208, 1.584",\
                 "0.03551, 0.05599, 0.1082, 0.183, 0.2942, 0.4502, 0.6552, 0.9142, 1.232, 1.609",\
                 "0.02199, 0.05105, 0.124, 0.2237, 0.3453, 0.5003, 0.7051, 0.9634, 1.279, 1.656",\
                 "-0.0082, 0.02905, 0.123, 0.251, 0.4038, 0.5799, 0.7846, 1.041, 1.356, 1.732",\
                 "-0.05658, -0.0116, 0.1024, 0.2589, 0.4451, 0.6564, 0.8929, 1.155, 1.467, 1.841",\
                 "-0.125, -0.0722, 0.0616, 0.2455, 0.4655, 0.714, 0.9885, 1.291, 1.618, 1.99",\
                 "-0.2144, -0.1544, -0.0015, 0.2091, 0.4622, 0.7489, 1.064, 1.407, 1.779, 2.18",\
                 "-0.3273, -0.2594, -0.0876, 0.1496, 0.4341, 0.7582, 1.116, 1.502, 1.918, 2.365",\
                 "-0.4625, -0.3899, -0.1985, 0.065, 0.3797, 0.7414, 1.14, 1.572, 2.035, 2.527");
        }

        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.05124, 0.2276, 0.5643, 1.089, 1.825, 2.794, 4.014, 5.504, 7.279");
          values("0.03856, 0.05909, 0.1272, 0.2538, 0.4503, 0.7252, 1.086, 1.541, 2.098, 2.76",\
                 "0.04823, 0.06767, 0.1353, 0.2623, 0.4588, 0.7327, 1.096, 1.551, 2.106, 2.77",\
                 "0.07992, 0.1044, 0.1727, 0.2968, 0.4921, 0.7657, 1.127, 1.584, 2.138, 2.802",\
                 "0.1279, 0.1608, 0.2458, 0.3741, 0.5647, 0.8355, 1.195, 1.649, 2.202, 2.866",\
                 "0.1919, 0.2344, 0.3405, 0.4912, 0.6879, 0.9531, 1.307, 1.756, 2.309, 2.966",\
                 "0.2734, 0.3253, 0.4552, 0.633, 0.8556, 1.128, 1.476, 1.919, 2.466, 3.122",\
                 "0.3734, 0.4359, 0.5897, 0.7977, 1.05, 1.352, 1.707, 2.144, 2.683, 3.332",\
                 "0.4947, 0.5666, 0.7449, 0.9853, 1.272, 1.604, 1.992, 2.437, 2.969, 3.61",\
                 "0.6381, 0.7187, 0.9225, 1.194, 1.517, 1.887, 2.307, 2.788, 3.328, 3.961",\
                 "0.8055, 0.8945, 1.123, 1.429, 1.788, 2.197, 2.654, 3.169, 3.748, 4.39");
        }

        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.05124, 0.2276, 0.5643, 1.089, 1.825, 2.794, 4.014, 5.504, 7.279");
          values("0.02262, 0.04111, 0.1055, 0.2284, 0.4192, 0.689, 1.041, 1.489, 2.036, 2.683",\
                 "0.02908, 0.04335, 0.1056, 0.2287, 0.4203, 0.6887, 1.044, 1.487, 2.035, 2.683",\
                 "0.05136, 0.07272, 0.1291, 0.2305, 0.4199, 0.6883, 1.043, 1.489, 2.034, 2.686",\
                 "0.08882, 0.1183, 0.189, 0.2924, 0.4405, 0.6888, 1.041, 1.488, 2.034, 2.684",\
                 "0.1398, 0.1786, 0.2687, 0.3905, 0.5471, 0.7493, 1.055, 1.486, 2.03, 2.681",\
                 "0.2035, 0.2536, 0.3656, 0.5118, 0.6882, 0.9048, 1.168, 1.532, 2.034, 2.68",\
                 "0.2778, 0.3416, 0.4788, 0.6516, 0.8562, 1.093, 1.375, 1.706, 2.134, 2.71",\
                 "0.3642, 0.441, 0.6076, 0.8118, 1.046, 1.312, 1.616, 1.97, 2.371, 2.872",\
                 "0.4622, 0.5534, 0.755, 0.9912, 1.256, 1.554, 1.887, 2.264, 2.693, 3.173",\
                 "0.5752, 0.677, 0.9132, 1.189, 1.489, 1.822, 2.187, 2.594, 3.046, 3.556");
        }

        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.05124, 0.2276, 0.5643, 1.089, 1.825, 2.794, 4.014, 5.504, 7.279");
          values("0.04502, 0.07939, 0.1997, 0.4295, 0.7863, 1.29, 1.948, 2.783, 3.797, 5.013",\
                 "0.0471, 0.07925, 0.1996, 0.43, 0.7875, 1.294, 1.957, 2.782, 3.809, 5.007",\
                 "0.07056, 0.1014, 0.2027, 0.4311, 0.787, 1.294, 1.957, 2.782, 3.797, 5.018",\
                 "0.1088, 0.1452, 0.2495, 0.4407, 0.7867, 1.288, 1.949, 2.782, 3.8, 5.011",\
                 "0.1586, 0.2049, 0.3224, 0.513, 0.8115, 1.29, 1.949, 2.791, 3.796, 5.027",\
                 "0.219, 0.2766, 0.4176, 0.621, 0.9104, 1.333, 1.955, 2.787, 3.805, 5.006",\
                 "0.2908, 0.3608, 0.5294, 0.7554, 1.055, 1.462, 2.021, 2.796, 3.8, 5.022",\
                 "0.3746, 0.4562, 0.6546, 0.9114, 1.233, 1.645, 2.175, 2.88, 3.822, 5.008",\
                 "0.471, 0.5614, 0.7914, 1.084, 1.438, 1.863, 2.402, 3.064, 3.94, 5.044",\
                 "0.582, 0.6824, 0.9408, 1.277, 1.665, 2.118, 2.666, 3.334, 4.15, 5.187");
        }
      }
    }
  }

