/*
 * 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__dlya_2) {
    area : 28.537600 ;

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

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

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

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

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

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

    pin(Z) {
      direction : output ;
      function : "I" ;
      max_capacitance : 0.4568 ;
      max_transition : 3.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.04333, 0.1252, 0.2816, 0.5252, 0.8671, 1.317, 1.884, 2.575, 3.4");
          index_2("0.001, 0.004146, 0.01519, 0.03628, 0.06913, 0.1152, 0.1759, 0.2523, 0.3456, 0.4568");
          values("0.676, 0.6551, 0.605, 0.5532, 0.516, 0.4926, 0.4768, 0.4654, 0.4573, 0.4511",\
                 "0.6759, 0.6549, 0.6049, 0.5532, 0.5159, 0.4925, 0.4765, 0.4653, 0.457, 0.451",\
                 "0.6824, 0.6615, 0.6117, 0.5597, 0.5223, 0.4991, 0.4831, 0.4718, 0.4637, 0.4575",\
                 "0.7042, 0.6833, 0.6331, 0.581, 0.5441, 0.5208, 0.5048, 0.4935, 0.4852, 0.4792",\
                 "0.7443, 0.7234, 0.6735, 0.6212, 0.5839, 0.5609, 0.5448, 0.5336, 0.5254, 0.5192",\
                 "0.8043, 0.7836, 0.7332, 0.6811, 0.6439, 0.6208, 0.605, 0.5936, 0.5852, 0.5791",\
                 "0.8845, 0.8638, 0.8138, 0.7617, 0.7243, 0.7008, 0.685, 0.6735, 0.6652, 0.6591",\
                 "0.9875, 0.9666, 0.9161, 0.8642, 0.8267, 0.803, 0.7869, 0.7751, 0.767, 0.7609",\
                 "1.113, 1.092, 1.042, 0.9889, 0.9511, 0.9276, 0.9113, 0.8997, 0.8915, 0.8853",\
                 "1.264, 1.243, 1.192, 1.138, 1.1, 1.076, 1.06, 1.048, 1.04, 1.033");
        }

        rise_power(pwr_tin_oload_10x10) {
          index_1("0.02, 0.04333, 0.1252, 0.2816, 0.5252, 0.8671, 1.317, 1.884, 2.575, 3.4");
          index_2("0.001, 0.004146, 0.01519, 0.03628, 0.06913, 0.1152, 0.1759, 0.2523, 0.3456, 0.4568");
          values("0.4397, 0.4249, 0.3985, 0.3805, 0.3685, 0.3622, 0.3585, 0.3584, 0.3589, 0.3605",\
                 "0.4399, 0.4246, 0.3985, 0.38, 0.3688, 0.3621, 0.3585, 0.3589, 0.3583, 0.3605",\
                 "0.445, 0.4301, 0.4031, 0.3853, 0.3739, 0.3673, 0.364, 0.3639, 0.3638, 0.3654",\
                 "0.4621, 0.4469, 0.4208, 0.4025, 0.39, 0.3836, 0.3805, 0.3798, 0.3798, 0.3819",\
                 "0.4933, 0.4785, 0.4521, 0.4331, 0.4214, 0.4147, 0.4113, 0.4117, 0.4111, 0.4133",\
                 "0.5405, 0.525, 0.4976, 0.4806, 0.4696, 0.4625, 0.4581, 0.4585, 0.459, 0.4589",\
                 "0.6053, 0.59, 0.5632, 0.5437, 0.5314, 0.5275, 0.5241, 0.5228, 0.5222, 0.5233",\
                 "0.6879, 0.6732, 0.6459, 0.6255, 0.6123, 0.6067, 0.6082, 0.6086, 0.608, 0.608",\
                 "0.7905, 0.7755, 0.7484, 0.7291, 0.7141, 0.7064, 0.7056, 0.7093, 0.7131, 0.7152",\
                 "0.9134, 0.8984, 0.8709, 0.8508, 0.8366, 0.8285, 0.8255, 0.8275, 0.8346, 0.839");
        }
      }

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

        cell_fall(tmg_ntin_oload_10x10) {
          index_1("0.02, 0.04333, 0.1252, 0.2816, 0.5252, 0.8671, 1.317, 1.884, 2.575, 3.4");
          index_2("0.001, 0.004146, 0.01519, 0.03628, 0.06913, 0.1152, 0.1759, 0.2523, 0.3456, 0.4568");
          values("0.439, 0.4592, 0.513, 0.5931, 0.6982, 0.8328, 1.002, 1.213, 1.47, 1.777",\
                 "0.4441, 0.4641, 0.5182, 0.5981, 0.7032, 0.8379, 1.007, 1.218, 1.475, 1.782",\
                 "0.4705, 0.4905, 0.5445, 0.6246, 0.7297, 0.8642, 1.034, 1.244, 1.501, 1.808",\
                 "0.5263, 0.5461, 0.6003, 0.6803, 0.7854, 0.9199, 1.089, 1.3, 1.557, 1.864",\
                 "0.6075, 0.6274, 0.6816, 0.7615, 0.8666, 1.001, 1.171, 1.381, 1.638, 1.945",\
                 "0.7099, 0.7297, 0.7838, 0.8637, 0.9687, 1.103, 1.273, 1.484, 1.741, 2.047",\
                 "0.8327, 0.8523, 0.9066, 0.9868, 1.092, 1.226, 1.396, 1.606, 1.863, 2.17",\
                 "0.9771, 0.997, 1.051, 1.131, 1.236, 1.371, 1.54, 1.751, 2.008, 2.314",\
                 "1.145, 1.165, 1.219, 1.299, 1.404, 1.538, 1.708, 1.918, 2.175, 2.481",\
                 "1.337, 1.357, 1.411, 1.491, 1.595, 1.73, 1.899, 2.11, 2.367, 2.674");
        }

        cell_rise(tmg_ntin_oload_10x10) {
          index_1("0.02, 0.04333, 0.1252, 0.2816, 0.5252, 0.8671, 1.317, 1.884, 2.575, 3.4");
          index_2("0.001, 0.004146, 0.01519, 0.03628, 0.06913, 0.1152, 0.1759, 0.2523, 0.3456, 0.4568");
          values("0.3642, 0.381, 0.4291, 0.5124, 0.6408, 0.8225, 1.064, 1.368, 1.74, 2.184",\
                 "0.3674, 0.3841, 0.4324, 0.5154, 0.6441, 0.8263, 1.067, 1.371, 1.744, 2.187",\
                 "0.3788, 0.3955, 0.4435, 0.5267, 0.6554, 0.8372, 1.079, 1.383, 1.755, 2.198",\
                 "0.3868, 0.4034, 0.4515, 0.5347, 0.6632, 0.8453, 1.086, 1.391, 1.763, 2.206",\
                 "0.3824, 0.3991, 0.4471, 0.5302, 0.6587, 0.841, 1.082, 1.386, 1.757, 2.2",\
                 "0.3623, 0.3789, 0.4271, 0.5102, 0.6387, 0.8203, 1.061, 1.365, 1.737, 2.181",\
                 "0.3243, 0.341, 0.3892, 0.4721, 0.6005, 0.7823, 1.023, 1.327, 1.699, 2.142",\
                 "0.2672, 0.2841, 0.332, 0.4151, 0.5435, 0.7259, 0.9662, 1.27, 1.641, 2.084",\
                 "0.1895, 0.2064, 0.2544, 0.3374, 0.4656, 0.6477, 0.8881, 1.192, 1.563, 2.006",\
                 "0.0898, 0.1067, 0.1547, 0.2377, 0.3659, 0.5475, 0.7885, 1.092, 1.463, 1.906");
        }

        fall_transition(tmg_ntin_oload_10x10) {
          index_1("0.02, 0.04333, 0.1252, 0.2816, 0.5252, 0.8671, 1.317, 1.884, 2.575, 3.4");
          index_2("0.001, 0.004146, 0.01519, 0.03628, 0.06913, 0.1152, 0.1759, 0.2523, 0.3456, 0.4568");
          values("0.1079, 0.1299, 0.1873, 0.2774, 0.4135, 0.6103, 0.8804, 1.231, 1.668, 2.192",\
                 "0.108, 0.13, 0.1875, 0.2776, 0.4139, 0.6104, 0.8806, 1.23, 1.669, 2.192",\
                 "0.1082, 0.1299, 0.1875, 0.2776, 0.4135, 0.6099, 0.8798, 1.232, 1.668, 2.193",\
                 "0.1084, 0.1295, 0.1876, 0.2778, 0.4136, 0.6109, 0.88, 1.231, 1.666, 2.193",\
                 "0.1079, 0.1299, 0.1877, 0.2776, 0.413, 0.6098, 0.8798, 1.232, 1.668, 2.193",\
                 "0.1076, 0.13, 0.1872, 0.2776, 0.414, 0.6112, 0.8806, 1.23, 1.668, 2.193",\
                 "0.1082, 0.1296, 0.1876, 0.2774, 0.413, 0.6102, 0.88, 1.231, 1.668, 2.192",\
                 "0.1082, 0.1302, 0.1876, 0.2776, 0.4134, 0.6104, 0.88, 1.232, 1.669, 2.193",\
                 "0.1086, 0.1306, 0.1876, 0.2782, 0.4134, 0.6108, 0.88, 1.231, 1.666, 2.193",\
                 "0.1088, 0.1306, 0.1882, 0.278, 0.4136, 0.6112, 0.8802, 1.231, 1.667, 2.19");
        }

        rise_transition(tmg_ntin_oload_10x10) {
          index_1("0.02, 0.04333, 0.1252, 0.2816, 0.5252, 0.8671, 1.317, 1.884, 2.575, 3.4");
          index_2("0.001, 0.004146, 0.01519, 0.03628, 0.06913, 0.1152, 0.1759, 0.2523, 0.3456, 0.4568");
          values("0.0742, 0.09478, 0.1641, 0.3077, 0.545, 0.8819, 1.328, 1.886, 2.569, 3.391",\
                 "0.07364, 0.09468, 0.1636, 0.3078, 0.5443, 0.8811, 1.326, 1.886, 2.574, 3.391",\
                 "0.07378, 0.09462, 0.1639, 0.3075, 0.5439, 0.8813, 1.327, 1.886, 2.574, 3.388",\
                 "0.07398, 0.09476, 0.1639, 0.3078, 0.5444, 0.8812, 1.326, 1.886, 2.574, 3.391",\
                 "0.07402, 0.09476, 0.1639, 0.308, 0.5441, 0.8811, 1.327, 1.886, 2.571, 3.385",\
                 "0.0742, 0.09496, 0.1637, 0.3076, 0.5444, 0.8822, 1.328, 1.886, 2.57, 3.386",\
                 "0.0744, 0.095, 0.1642, 0.3076, 0.545, 0.8814, 1.326, 1.888, 2.574, 3.385",\
                 "0.0742, 0.0954, 0.1642, 0.3078, 0.5446, 0.8824, 1.326, 1.887, 2.569, 3.384",\
                 "0.0742, 0.0952, 0.164, 0.308, 0.5442, 0.8826, 1.327, 1.886, 2.57, 3.389",\
                 "0.0746, 0.0958, 0.1642, 0.3082, 0.5446, 0.8812, 1.328, 1.888, 2.571, 3.385");
        }
      }
    }
  }

