/*
 * 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__dlya_4) {
    area : 47.980800 ;

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

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

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

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

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

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

    pin(Z) {
      direction : output ;
      function : "I" ;
      max_capacitance : 1.521 ;
      max_transition : 2.8 ;
      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.03919, 0.1065, 0.2352, 0.4356, 0.7167, 1.087, 1.553, 2.122, 2.8");
          index_2("0.001, 0.01149, 0.04831, 0.1186, 0.2282, 0.3818, 0.5841, 0.8389, 1.15, 1.521");
          values("3.199, 3.093, 2.804, 2.424, 2.051, 1.765, 1.574, 1.434, 1.328, 1.244",\
                 "3.199, 3.093, 2.803, 2.424, 2.051, 1.766, 1.575, 1.433, 1.326, 1.245",\
                 "3.206, 3.1, 2.811, 2.431, 2.057, 1.771, 1.581, 1.44, 1.335, 1.252",\
                 "3.227, 3.121, 2.832, 2.453, 2.079, 1.793, 1.602, 1.461, 1.354, 1.272",\
                 "3.265, 3.158, 2.87, 2.491, 2.117, 1.83, 1.64, 1.5, 1.394, 1.31",\
                 "3.32, 3.214, 2.925, 2.546, 2.172, 1.886, 1.696, 1.556, 1.45, 1.367",\
                 "3.396, 3.289, 3, 2.622, 2.248, 1.964, 1.774, 1.634, 1.527, 1.443",\
                 "3.49, 3.384, 3.096, 2.717, 2.342, 2.057, 1.87, 1.73, 1.622, 1.539",\
                 "3.607, 3.502, 3.213, 2.835, 2.46, 2.173, 1.986, 1.843, 1.737, 1.654",\
                 "3.748, 3.641, 3.352, 2.973, 2.599, 2.314, 2.122, 1.982, 1.878, 1.792");
        }

        rise_power(pwr_tin_oload_10x10) {
          index_1("0.02, 0.03919, 0.1065, 0.2352, 0.4356, 0.7167, 1.087, 1.553, 2.122, 2.8");
          index_2("0.001, 0.01149, 0.04831, 0.1186, 0.2282, 0.3818, 0.5841, 0.8389, 1.15, 1.521");
          values("1.578, 1.491, 1.29, 1.143, 1.039, 0.9694, 0.9188, 0.8868, 0.8723, 0.8612",\
                 "1.579, 1.492, 1.29, 1.142, 1.039, 0.9689, 0.9155, 0.8863, 0.8728, 0.8678",\
                 "1.585, 1.498, 1.296, 1.149, 1.046, 0.9744, 0.9254, 0.889, 0.8778, 0.8711",\
                 "1.601, 1.512, 1.31, 1.163, 1.067, 0.9909, 0.9413, 0.9077, 0.8987, 0.8816",\
                 "1.632, 1.544, 1.343, 1.198, 1.095, 1.017, 0.9721, 0.9385, 0.9218, 0.919",\
                 "1.678, 1.589, 1.389, 1.244, 1.138, 1.069, 1.017, 0.9869, 0.9674, 0.9635",\
                 "1.74, 1.652, 1.451, 1.302, 1.208, 1.134, 1.077, 1.044, 1.027, 1.02",\
                 "1.819, 1.731, 1.53, 1.382, 1.271, 1.204, 1.167, 1.134, 1.106, 1.093",\
                 "1.914, 1.827, 1.625, 1.48, 1.379, 1.297, 1.252, 1.239, 1.209, 1.191",\
                 "2.031, 1.943, 1.739, 1.601, 1.493, 1.409, 1.36, 1.336, 1.344, 1.32");
        }
      }

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

        cell_fall(tmg_ntin_oload_10x10) {
          index_1("0.02, 0.03919, 0.1065, 0.2352, 0.4356, 0.7167, 1.087, 1.553, 2.122, 2.8");
          index_2("0.001, 0.01149, 0.04831, 0.1186, 0.2282, 0.3818, 0.5841, 0.8389, 1.15, 1.521");
          values("0.608, 0.6319, 0.6922, 0.7752, 0.8767, 0.9982, 1.142, 1.313, 1.515, 1.754",\
                 "0.6124, 0.6363, 0.6964, 0.7795, 0.881, 1.002, 1.146, 1.317, 1.519, 1.759",\
                 "0.6346, 0.6585, 0.7187, 0.8018, 0.9033, 1.025, 1.169, 1.339, 1.542, 1.781",\
                 "0.6814, 0.7052, 0.7655, 0.8483, 0.95, 1.072, 1.215, 1.386, 1.588, 1.828",\
                 "0.75, 0.7738, 0.834, 0.9171, 1.019, 1.14, 1.284, 1.455, 1.657, 1.896",\
                 "0.8374, 0.8613, 0.9215, 1.005, 1.106, 1.227, 1.371, 1.542, 1.744, 1.984",\
                 "0.9424, 0.9665, 1.026, 1.11, 1.211, 1.332, 1.477, 1.647, 1.849, 2.089",\
                 "1.066, 1.09, 1.151, 1.233, 1.335, 1.456, 1.6, 1.771, 1.973, 2.212",\
                 "1.21, 1.234, 1.294, 1.377, 1.479, 1.601, 1.744, 1.915, 2.117, 2.357",\
                 "1.375, 1.399, 1.459, 1.542, 1.644, 1.765, 1.909, 2.079, 2.282, 2.521");
        }

        cell_rise(tmg_ntin_oload_10x10) {
          index_1("0.02, 0.03919, 0.1065, 0.2352, 0.4356, 0.7167, 1.087, 1.553, 2.122, 2.8");
          index_2("0.001, 0.01149, 0.04831, 0.1186, 0.2282, 0.3818, 0.5841, 0.8389, 1.15, 1.521");
          values("0.4244, 0.4435, 0.4922, 0.5669, 0.6789, 0.8372, 1.048, 1.315, 1.643, 2.035",\
                 "0.4274, 0.4465, 0.4952, 0.5699, 0.682, 0.8403, 1.051, 1.318, 1.647, 2.039",\
                 "0.4375, 0.4565, 0.5052, 0.58, 0.6919, 0.8502, 1.061, 1.328, 1.657, 2.049",\
                 "0.4448, 0.4637, 0.5122, 0.5872, 0.6996, 0.8575, 1.068, 1.336, 1.664, 2.055",\
                 "0.4423, 0.4614, 0.5099, 0.5847, 0.6968, 0.8548, 1.066, 1.333, 1.662, 2.053",\
                 "0.4274, 0.4464, 0.4951, 0.5698, 0.6818, 0.84, 1.051, 1.318, 1.646, 2.039",\
                 "0.3981, 0.4169, 0.4657, 0.5405, 0.6527, 0.8105, 1.021, 1.289, 1.617, 2.009",\
                 "0.3524, 0.3716, 0.4201, 0.4949, 0.6069, 0.7648, 0.9756, 1.243, 1.571, 1.963",\
                 "0.2896, 0.3085, 0.357, 0.4323, 0.5444, 0.7022, 0.9127, 1.18, 1.508, 1.899",\
                 "0.2081, 0.2269, 0.2755, 0.351, 0.4629, 0.6207, 0.831, 1.098, 1.426, 1.818");
        }

        fall_transition(tmg_ntin_oload_10x10) {
          index_1("0.02, 0.03919, 0.1065, 0.2352, 0.4356, 0.7167, 1.087, 1.553, 2.122, 2.8");
          index_2("0.001, 0.01149, 0.04831, 0.1186, 0.2282, 0.3818, 0.5841, 0.8389, 1.15, 1.521");
          values("0.1522, 0.1791, 0.2428, 0.3254, 0.4294, 0.5667, 0.7521, 0.995, 1.304, 1.687",\
                 "0.1522, 0.1791, 0.2429, 0.3253, 0.4294, 0.5677, 0.7522, 0.9942, 1.304, 1.686",\
                 "0.1522, 0.1791, 0.2429, 0.3253, 0.4298, 0.5679, 0.752, 0.9948, 1.304, 1.687",\
                 "0.1519, 0.1791, 0.2433, 0.3261, 0.4295, 0.5668, 0.752, 0.994, 1.305, 1.688",\
                 "0.1517, 0.1789, 0.2428, 0.3254, 0.4294, 0.5666, 0.7524, 0.994, 1.304, 1.687",\
                 "0.1516, 0.1788, 0.2426, 0.3254, 0.4294, 0.5678, 0.7524, 0.9948, 1.304, 1.687",\
                 "0.1508, 0.1778, 0.242, 0.3252, 0.4296, 0.567, 0.7526, 0.9942, 1.305, 1.687",\
                 "0.1512, 0.1782, 0.2428, 0.325, 0.4288, 0.567, 0.7524, 0.9946, 1.304, 1.688",\
                 "0.1518, 0.1782, 0.2426, 0.325, 0.429, 0.5666, 0.752, 0.9942, 1.305, 1.686",\
                 "0.1512, 0.1784, 0.2428, 0.3254, 0.4294, 0.567, 0.7526, 0.9944, 1.303, 1.688");
        }

        rise_transition(tmg_ntin_oload_10x10) {
          index_1("0.02, 0.03919, 0.1065, 0.2352, 0.4356, 0.7167, 1.087, 1.553, 2.122, 2.8");
          index_2("0.001, 0.01149, 0.04831, 0.1186, 0.2282, 0.3818, 0.5841, 0.8389, 1.15, 1.521");
          values("0.07462, 0.09564, 0.153, 0.266, 0.455, 0.7327, 1.102, 1.569, 2.144, 2.822",\
                 "0.0742, 0.09582, 0.153, 0.2654, 0.4547, 0.732, 1.104, 1.571, 2.141, 2.825",\
                 "0.0742, 0.0958, 0.153, 0.2657, 0.4554, 0.7329, 1.103, 1.572, 2.141, 2.824",\
                 "0.07424, 0.0953, 0.1531, 0.2655, 0.4553, 0.7321, 1.102, 1.569, 2.141, 2.824",\
                 "0.0742, 0.0949, 0.1535, 0.2661, 0.4553, 0.7319, 1.102, 1.571, 2.144, 2.825",\
                 "0.07436, 0.09576, 0.1531, 0.2656, 0.455, 0.7326, 1.104, 1.571, 2.144, 2.825",\
                 "0.074, 0.0956, 0.153, 0.2658, 0.4554, 0.7316, 1.102, 1.569, 2.141, 2.823",\
                 "0.0744, 0.0946, 0.1534, 0.2662, 0.455, 0.7328, 1.101, 1.571, 2.14, 2.821",\
                 "0.0748, 0.095, 0.1532, 0.2652, 0.4548, 0.7326, 1.102, 1.57, 2.14, 2.821",\
                 "0.0742, 0.095, 0.1534, 0.2658, 0.4552, 0.7328, 1.102, 1.57, 2.14, 2.82");
        }
      }
    }
  }

