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

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

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

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

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

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

    pin(I) {
      capacitance : 0.03655 ;
      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 : 2.769 ;
      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.0201, 0.08716, 0.2152, 0.4147, 0.6946, 1.063, 1.527, 2.093, 2.769");
          values("-0.03686, -0.03054, -0.0242, -0.02173, -0.02036, -0.02005, -0.02002, -0.01979, -0.01964, -0.01953",\
                 "-0.03732, -0.03341, -0.0269, -0.02328, -0.02157, -0.02066, -0.0206, -0.02023, -0.0199, -0.01996",\
                 "0.01237, 0.004307, -0.005613, -0.01122, -0.01423, -0.01603, -0.01687, -0.01771, -0.01824, -0.0185",\
                 "0.1524, 0.1274, 0.08341, 0.05099, 0.02943, 0.01541, 0.005964, -0.0002824, -0.004856, -0.008203",\
                 "0.3902, 0.3516, 0.2695, 0.1954, 0.1402, 0.1012, 0.07237, 0.0518, 0.0366, 0.02537",\
                 "0.734, 0.6854, 0.57, 0.4462, 0.345, 0.2666, 0.2073, 0.1616, 0.1267, 0.0997",\
                 "1.191, 1.135, 0.9913, 0.819, 0.6621, 0.5345, 0.4322, 0.3517, 0.2871, 0.2353",\
                 "1.773, 1.709, 1.541, 1.326, 1.11, 0.9242, 0.7692, 0.6414, 0.5369, 0.4514",\
                 "2.484, 2.414, 2.226, 1.971, 1.699, 1.449, 1.232, 1.05, 0.8947, 0.7673",\
                 "3.334, 3.259, 3.053, 2.763, 2.441, 2.125, 1.839, 1.594, 1.381, 1.2");
        }

        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.0201, 0.08716, 0.2152, 0.4147, 0.6946, 1.063, 1.527, 2.093, 2.769");
          values("0.3302, 0.3408, 0.3534, 0.3576, 0.3614, 0.3679, 0.377, 0.3893, 0.3923, 0.3996",\
                 "0.3369, 0.339, 0.3475, 0.3575, 0.3607, 0.3665, 0.3763, 0.3832, 0.3974, 0.3996",\
                 "0.4095, 0.3961, 0.3772, 0.3689, 0.3682, 0.374, 0.3817, 0.3842, 0.3999, 0.3996",\
                 "0.5759, 0.5475, 0.4962, 0.4532, 0.4255, 0.409, 0.4094, 0.4098, 0.4082, 0.4212",\
                 "0.8497, 0.8088, 0.721, 0.6401, 0.5695, 0.5198, 0.4893, 0.4706, 0.4586, 0.4536",\
                 "1.24, 1.19, 1.068, 0.9395, 0.8308, 0.7344, 0.6628, 0.611, 0.5763, 0.5472",\
                 "1.758, 1.701, 1.552, 1.376, 1.218, 1.077, 0.9534, 0.8594, 0.7847, 0.7272",\
                 "2.414, 2.35, 2.179, 1.961, 1.744, 1.554, 1.379, 1.23, 1.099, 0.9992",\
                 "3.217, 3.146, 2.958, 2.696, 2.427, 2.175, 1.955, 1.749, 1.565, 1.413",\
                 "4.175, 4.101, 3.893, 3.6, 3.279, 2.961, 2.677, 2.43, 2.186, 1.957");
        }
      }

      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.0201, 0.08716, 0.2152, 0.4147, 0.6946, 1.063, 1.527, 2.093, 2.769");
          values("0.02354, 0.03552, 0.07635, 0.1529, 0.2727, 0.4402, 0.6604, 0.9373, 1.276, 1.681",\
                 "0.02818, 0.04281, 0.08371, 0.1604, 0.28, 0.4472, 0.6678, 0.9457, 1.285, 1.687",\
                 "0.02948, 0.0523, 0.1088, 0.1884, 0.3076, 0.4747, 0.6944, 0.9724, 1.311, 1.714",\
                 "0.01922, 0.0516, 0.1293, 0.2348, 0.3627, 0.5286, 0.7481, 1.024, 1.363, 1.767",\
                 "-0.00517, 0.03658, 0.1367, 0.2703, 0.4312, 0.6156, 0.8339, 1.109, 1.446, 1.848",\
                 "-0.04585, 0.00566, 0.1284, 0.2915, 0.4849, 0.7066, 0.9542, 1.231, 1.567, 1.968",\
                 "-0.1042, -0.043, 0.1024, 0.2953, 0.5229, 0.7807, 1.069, 1.385, 1.729, 2.127",\
                 "-0.182, -0.1111, 0.0571, 0.2795, 0.542, 0.838, 1.166, 1.526, 1.915, 2.332",\
                 "-0.2812, -0.2001, -0.0088, 0.2429, 0.5408, 0.875, 1.244, 1.646, 2.083, 2.551",\
                 "-0.4012, -0.3113, -0.0967, 0.1843, 0.5179, 0.8913, 1.303, 1.748, 2.23, 2.748");
        }

        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.0201, 0.08716, 0.2152, 0.4147, 0.6946, 1.063, 1.527, 2.093, 2.769");
          values("0.03092, 0.0524, 0.1244, 0.259, 0.4675, 0.7606, 1.146, 1.629, 2.221, 2.929",\
                 "0.04109, 0.06168, 0.133, 0.268, 0.4768, 0.7699, 1.155, 1.64, 2.228, 2.938",\
                 "0.07012, 0.09717, 0.1708, 0.3034, 0.5111, 0.8034, 1.187, 1.674, 2.265, 2.968",\
                 "0.1141, 0.1505, 0.2422, 0.3797, 0.5836, 0.8729, 1.255, 1.74, 2.33, 3.037",\
                 "0.1727, 0.22, 0.3335, 0.4952, 0.7049, 0.9894, 1.368, 1.847, 2.438, 3.142",\
                 "0.2467, 0.3054, 0.4443, 0.6315, 0.871, 1.161, 1.534, 2.009, 2.594, 3.294",\
                 "0.3379, 0.4081, 0.5732, 0.7922, 1.059, 1.383, 1.762, 2.23, 2.808, 3.505",\
                 "0.4479, 0.5293, 0.7209, 0.9735, 1.274, 1.629, 2.045, 2.519, 3.091, 3.778",\
                 "0.5778, 0.6699, 0.8899, 1.177, 1.514, 1.901, 2.353, 2.866, 3.443, 4.123",\
                 "0.7295, 0.832, 1.079, 1.402, 1.778, 2.204, 2.688, 3.243, 3.858, 4.543");
        }

        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.0201, 0.08716, 0.2152, 0.4147, 0.6946, 1.063, 1.527, 2.093, 2.769");
          values("0.0179, 0.03704, 0.1039, 0.2306, 0.4304, 0.7076, 1.07, 1.531, 2.091, 2.763",\
                 "0.02535, 0.04068, 0.1038, 0.231, 0.4303, 0.7091, 1.071, 1.532, 2.095, 2.764",\
                 "0.0459, 0.06834, 0.1269, 0.2323, 0.4294, 0.7075, 1.073, 1.532, 2.091, 2.765",\
                 "0.07754, 0.1089, 0.183, 0.2913, 0.4451, 0.7067, 1.074, 1.533, 2.092, 2.765",\
                 "0.1183, 0.1597, 0.2547, 0.3823, 0.5468, 0.755, 1.079, 1.535, 2.098, 2.764",\
                 "0.1671, 0.221, 0.3407, 0.4912, 0.6786, 0.9056, 1.175, 1.562, 2.099, 2.77",\
                 "0.2238, 0.292, 0.4362, 0.6172, 0.8284, 1.082, 1.378, 1.715, 2.168, 2.781",\
                 "0.2884, 0.3702, 0.5428, 0.7572, 1, 1.277, 1.603, 1.973, 2.383, 2.908",\
                 "0.3604, 0.4584, 0.6632, 0.9108, 1.188, 1.497, 1.848, 2.25, 2.699, 3.189",\
                 "0.4418, 0.5538, 0.7934, 1.075, 1.391, 1.737, 2.117, 2.549, 3.033, 3.565");
        }

        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.0201, 0.08716, 0.2152, 0.4147, 0.6946, 1.063, 1.527, 2.093, 2.769");
          values("0.03388, 0.06854, 0.1901, 0.4222, 0.7848, 1.294, 1.967, 2.807, 3.844, 5.072",\
                 "0.03821, 0.06866, 0.1905, 0.4236, 0.7853, 1.294, 1.968, 2.812, 3.843, 5.073",\
                 "0.0579, 0.09088, 0.1934, 0.4229, 0.7858, 1.294, 1.963, 2.81, 3.836, 5.073",\
                 "0.09024, 0.1293, 0.2395, 0.4325, 0.7851, 1.293, 1.966, 2.807, 3.841, 5.063",\
                 "0.1303, 0.1805, 0.3033, 0.5032, 0.8043, 1.294, 1.961, 2.808, 3.833, 5.063",\
                 "0.1786, 0.2406, 0.3866, 0.6006, 0.9016, 1.327, 1.964, 2.804, 3.833, 5.062",\
                 "0.2318, 0.309, 0.4822, 0.7162, 1.038, 1.452, 2.018, 2.807, 3.832, 5.061",\
                 "0.294, 0.3842, 0.5902, 0.8568, 1.19, 1.63, 2.167, 2.885, 3.843, 5.066",\
                 "0.3648, 0.4688, 0.7094, 1.008, 1.368, 1.822, 2.388, 3.061, 3.945, 5.078",\
                 "0.4466, 0.562, 0.834, 1.172, 1.569, 2.039, 2.635, 3.323, 4.149, 5.208");
        }
      }
    }
  }

