/*
 * 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__buf_16) {
    area : 109.760000 ;

    leakage_power() {
      related_pg_pin : "VDD" ;
      when : "!I" ;
      value : "8.75628e-05" ;
    }

    leakage_power() {
      related_pg_pin : "VDD" ;
      when : "I" ;
      value : "8.6616e-05" ;
    }

    leakage_power() {
      related_pg_pin : "VDD" ;
      value : "8.75628e-05" ;
    }

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

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

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

    pin(Z) {
      direction : output ;
      function : "I" ;
      max_capacitance : 3.31 ;
      max_transition : 12 ;
      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.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617, 6.625, 9.077, 12");
          index_2("0.001, 0.02384, 0.104, 0.2571, 0.4957, 0.8304, 1.271, 1.826, 2.503, 3.31");
          values("0.2583, 0.2605, 0.2652, 0.2685, 0.2703, 0.2713, 0.2719, 0.2722, 0.2724, 0.2725",\
                 "0.256, 0.2582, 0.2629, 0.2662, 0.2681, 0.2691, 0.2697, 0.27, 0.2702, 0.2703",\
                 "0.2519, 0.2539, 0.2584, 0.2619, 0.2639, 0.265, 0.2657, 0.266, 0.2662, 0.2664",\
                 "0.2487, 0.2503, 0.2543, 0.2581, 0.2606, 0.2621, 0.263, 0.2636, 0.2639, 0.2642",\
                 "0.2476, 0.249, 0.2522, 0.2558, 0.2587, 0.2605, 0.2617, 0.2625, 0.2629, 0.2632",\
                 "0.2484, 0.2492, 0.2518, 0.2555, 0.2583, 0.2604, 0.2618, 0.2627, 0.2633, 0.2638",\
                 "0.2509, 0.2513, 0.2535, 0.2563, 0.2593, 0.2615, 0.2632, 0.2641, 0.2649, 0.2654",\
                 "0.2547, 0.2548, 0.2563, 0.2589, 0.2616, 0.264, 0.2657, 0.2668, 0.2676, 0.2682",\
                 "0.2602, 0.26, 0.2606, 0.2631, 0.2654, 0.2675, 0.2693, 0.2706, 0.2715, 0.2722",\
                 "0.2672, 0.2667, 0.267, 0.2683, 0.2707, 0.2727, 0.2745, 0.2758, 0.2768, 0.2776");
        }

        rise_power(pwr_tin_oload_10x10) {
          index_1("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617, 6.625, 9.077, 12");
          index_2("0.001, 0.02384, 0.104, 0.2571, 0.4957, 0.8304, 1.271, 1.826, 2.503, 3.31");
          values("0.1553, 0.158, 0.1637, 0.1684, 0.1722, 0.1741, 0.1747, 0.1768, 0.181, 0.2397",\
                 "0.1545, 0.1572, 0.1629, 0.1673, 0.1709, 0.1741, 0.174, 0.1816, 0.1799, 0.2377",\
                 "0.1514, 0.1537, 0.1583, 0.1632, 0.1671, 0.169, 0.1706, 0.1723, 0.1787, 0.2412",\
                 "0.1479, 0.1497, 0.1539, 0.1583, 0.163, 0.1654, 0.1695, 0.1748, 0.1841, 0.2509",\
                 "0.1463, 0.1475, 0.1506, 0.1554, 0.1589, 0.1631, 0.1654, 0.1708, 0.185, 0.2644",\
                 "0.1467, 0.1475, 0.1497, 0.1535, 0.1581, 0.1609, 0.1636, 0.1709, 0.181, 0.2934",\
                 "0.1482, 0.1489, 0.1508, 0.154, 0.1575, 0.1627, 0.1659, 0.1682, 0.188, 0.3433",\
                 "0.1516, 0.1518, 0.1537, 0.1558, 0.1585, 0.1627, 0.169, 0.1736, 0.2015, 0.4143",\
                 "0.1564, 0.1565, 0.1577, 0.1594, 0.1625, 0.1651, 0.17, 0.1803, 0.2336, 0.5529",\
                 "0.1627, 0.1626, 0.1634, 0.1651, 0.1684, 0.168, 0.173, 0.1858, 0.2887, 0.8012");
        }
      }

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

        cell_fall(tmg_ntin_oload_10x10) {
          index_1("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617, 6.625, 9.077, 12");
          index_2("0.001, 0.02384, 0.104, 0.2571, 0.4957, 0.8304, 1.271, 1.826, 2.503, 3.31");
          values("0.5136, 0.557, 0.6687, 0.8311, 1.052, 1.348, 1.732, 2.215, 2.805, 3.505",\
                 "0.5445, 0.588, 0.6997, 0.8625, 1.083, 1.379, 1.763, 2.246, 2.836, 3.538",\
                 "0.6643, 0.7076, 0.8192, 0.9819, 1.203, 1.499, 1.883, 2.366, 2.955, 3.658",\
                 "0.9034, 0.9465, 1.058, 1.221, 1.443, 1.738, 2.123, 2.606, 3.196, 3.898",\
                 "1.235, 1.283, 1.403, 1.571, 1.794, 2.09, 2.474, 2.957, 3.547, 4.249",\
                 "1.598, 1.655, 1.79, 1.969, 2.198, 2.498, 2.883, 3.366, 3.956, 4.657",\
                 "1.988, 2.053, 2.206, 2.398, 2.636, 2.939, 3.326, 3.81, 4.398, 5.1",\
                 "2.403, 2.478, 2.65, 2.858, 3.105, 3.412, 3.8, 4.284, 4.874, 5.575",\
                 "2.847, 2.93, 3.12, 3.348, 3.606, 3.918, 4.307, 4.791, 5.381, 6.084",\
                 "3.322, 3.413, 3.621, 3.868, 4.139, 4.458, 4.85, 5.333, 5.924, 6.624");
        }

        cell_rise(tmg_ntin_oload_10x10) {
          index_1("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617, 6.625, 9.077, 12");
          index_2("0.001, 0.02384, 0.104, 0.2571, 0.4957, 0.8304, 1.271, 1.826, 2.503, 3.31");
          values("0.3498, 0.4052, 0.583, 0.9093, 1.412, 2.113, 3.038, 4.201, 5.61, 7.307",\
                 "0.3795, 0.4349, 0.6128, 0.939, 1.442, 2.145, 3.068, 4.226, 5.641, 7.34",\
                 "0.4841, 0.5391, 0.7158, 1.042, 1.545, 2.247, 3.168, 4.329, 5.751, 7.446",\
                 "0.6477, 0.7042, 0.8814, 1.207, 1.71, 2.412, 3.34, 4.502, 5.922, 7.615",\
                 "0.8057, 0.8664, 1.047, 1.373, 1.876, 2.579, 3.502, 4.668, 6.08, 7.781",\
                 "0.9465, 1.012, 1.197, 1.524, 2.026, 2.73, 3.653, 4.817, 6.23, 7.928",\
                 "1.062, 1.135, 1.328, 1.655, 2.158, 2.86, 3.784, 4.945, 6.365, 8.052",\
                 "1.149, 1.23, 1.434, 1.762, 2.264, 2.966, 3.89, 5.052, 6.468, 8.157",\
                 "1.203, 1.293, 1.512, 1.842, 2.343, 3.044, 3.968, 5.13, 6.548, 8.237",\
                 "1.221, 1.32, 1.555, 1.892, 2.392, 3.092, 4.016, 5.177, 6.594, 8.284");
        }

        fall_transition(tmg_ntin_oload_10x10) {
          index_1("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617, 6.625, 9.077, 12");
          index_2("0.001, 0.02384, 0.104, 0.2571, 0.4957, 0.8304, 1.271, 1.826, 2.503, 3.31");
          values("0.1536, 0.1922, 0.3079, 0.5163, 0.8446, 1.327, 1.976, 2.799, 3.808, 5.007",\
                 "0.1535, 0.192, 0.3078, 0.5143, 0.8451, 1.328, 1.976, 2.8, 3.804, 5.012",\
                 "0.1535, 0.1919, 0.3082, 0.5148, 0.845, 1.327, 1.976, 2.797, 3.804, 5.013",\
                 "0.1562, 0.1948, 0.3092, 0.5152, 0.8446, 1.328, 1.977, 2.797, 3.81, 5.007",\
                 "0.188, 0.2226, 0.3302, 0.5272, 0.8504, 1.328, 1.977, 2.8, 3.81, 5.007",\
                 "0.232, 0.2692, 0.3716, 0.5612, 0.8726, 1.339, 1.979, 2.798, 3.806, 5.007",\
                 "0.278, 0.3192, 0.4226, 0.602, 0.9022, 1.358, 1.991, 2.806, 3.807, 5.007",\
                 "0.325, 0.3714, 0.4808, 0.6494, 0.9362, 1.379, 2.006, 2.817, 3.814, 5.01",\
                 "0.3702, 0.4226, 0.5404, 0.7064, 0.9756, 1.403, 2.017, 2.824, 3.82, 5.016",\
                 "0.414, 0.472, 0.6, 0.768, 1.024, 1.432, 2.034, 2.828, 3.826, 5.02");
        }

        rise_transition(tmg_ntin_oload_10x10) {
          index_1("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617, 6.625, 9.077, 12");
          index_2("0.001, 0.02384, 0.104, 0.2571, 0.4957, 0.8304, 1.271, 1.826, 2.503, 3.31");
          values("0.163, 0.2383, 0.5188, 1.065, 1.925, 3.126, 4.699, 6.687, 9.113, 12",\
                 "0.1622, 0.2382, 0.5186, 1.066, 1.925, 3.129, 4.699, 6.698, 9.104, 12",\
                 "0.1633, 0.2392, 0.5183, 1.067, 1.924, 3.119, 4.696, 6.684, 9.103, 12",\
                 "0.176, 0.248, 0.5204, 1.065, 1.923, 3.123, 4.714, 6.707, 9.143, 12",\
                 "0.1998, 0.2674, 0.5294, 1.068, 1.921, 3.122, 4.697, 6.706, 9.13, 12",\
                 "0.231, 0.2928, 0.54, 1.073, 1.924, 3.119, 4.702, 6.693, 9.123, 12.01",\
                 "0.2668, 0.3268, 0.556, 1.078, 1.927, 3.123, 4.7, 6.681, 9.114, 12.02",\
                 "0.3048, 0.3652, 0.58, 1.084, 1.932, 3.128, 4.702, 6.682, 9.109, 12.01",\
                 "0.3458, 0.4096, 0.61, 1.094, 1.933, 3.133, 4.705, 6.69, 9.109, 12.01",\
                 "0.3876, 0.4564, 0.6492, 1.108, 1.939, 3.135, 4.706, 6.69, 9.116, 12");
        }
      }
    }
  }

