/*
 * 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__dlyd_1) {
    area : 76.204800 ;

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

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

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

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

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

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

    pin(Z) {
      direction : output ;
      function : "I" ;
      max_capacitance : 0.3282 ;
      max_transition : 8.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.07784, 0.2809, 0.6686, 1.273, 2.12, 3.235, 4.64, 6.356, 8.4");
          index_2("0.001, 0.003259, 0.01119, 0.02633, 0.04991, 0.08301, 0.1266, 0.1814, 0.2484, 0.3282");
          values("0.1096, 0.1082, 0.1052, 0.1027, 0.1013, 0.1004, 0.09978, 0.09939, 0.09911, 0.0989",\
                 "0.1094, 0.108, 0.105, 0.1026, 0.1011, 0.1002, 0.09963, 0.09923, 0.09895, 0.09875",\
                 "0.1092, 0.1079, 0.1049, 0.1024, 0.101, 0.1001, 0.0995, 0.09909, 0.09881, 0.09861",\
                 "0.1097, 0.1083, 0.1053, 0.1029, 0.1014, 0.1005, 0.0999, 0.0995, 0.09923, 0.09901",\
                 "0.1108, 0.1095, 0.1064, 0.104, 0.1026, 0.1017, 0.1011, 0.1007, 0.1004, 0.1002",\
                 "0.1128, 0.1114, 0.1084, 0.106, 0.1045, 0.1036, 0.103, 0.1026, 0.1023, 0.1021",\
                 "0.1156, 0.1142, 0.1112, 0.1088, 0.1073, 0.1064, 0.1058, 0.1054, 0.1052, 0.1049",\
                 "0.1193, 0.118, 0.115, 0.1125, 0.1111, 0.1102, 0.1096, 0.1092, 0.1089, 0.1087",\
                 "0.1241, 0.1228, 0.1198, 0.1173, 0.1158, 0.115, 0.1144, 0.114, 0.1137, 0.1135",\
                 "0.13, 0.1287, 0.1257, 0.1232, 0.1218, 0.1208, 0.1203, 0.1199, 0.1196, 0.1194");
        }

        rise_power(pwr_tin_oload_10x10) {
          index_1("0.02, 0.07784, 0.2809, 0.6686, 1.273, 2.12, 3.235, 4.64, 6.356, 8.4");
          index_2("0.001, 0.003259, 0.01119, 0.02633, 0.04991, 0.08301, 0.1266, 0.1814, 0.2484, 0.3282");
          values("0.09428, 0.0939, 0.09319, 0.09277, 0.09275, 0.09291, 0.09318, 0.09353, 0.09416, 0.09892",\
                 "0.09425, 0.09383, 0.09312, 0.09275, 0.09273, 0.09293, 0.09324, 0.09351, 0.09416, 0.09894",\
                 "0.09416, 0.09375, 0.09306, 0.09264, 0.09263, 0.09281, 0.09318, 0.09343, 0.09416, 0.09921",\
                 "0.0943, 0.09391, 0.0932, 0.09287, 0.09277, 0.09293, 0.09328, 0.09353, 0.09426, 0.09992",\
                 "0.09502, 0.09458, 0.09389, 0.09351, 0.09346, 0.09363, 0.09399, 0.09424, 0.09507, 0.1015",\
                 "0.09641, 0.09603, 0.09528, 0.09493, 0.09489, 0.09505, 0.09535, 0.09559, 0.09669, 0.104",\
                 "0.0986, 0.09823, 0.09751, 0.09717, 0.09707, 0.09725, 0.09755, 0.09782, 0.0993, 0.1081",\
                 "0.1016, 0.1013, 0.1006, 0.1002, 0.1001, 0.1003, 0.1006, 0.1009, 0.1027, 0.1139",\
                 "0.1056, 0.1052, 0.1045, 0.1041, 0.1041, 0.1043, 0.1045, 0.1049, 0.1072, 0.122",\
                 "0.1105, 0.1101, 0.1094, 0.1089, 0.1088, 0.1092, 0.1097, 0.1102, 0.1134, 0.1342");
        }
      }

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

        cell_fall(tmg_ntin_oload_10x10) {
          index_1("0.02, 0.07784, 0.2809, 0.6686, 1.273, 2.12, 3.235, 4.64, 6.356, 8.4");
          index_2("0.001, 0.003259, 0.01119, 0.02633, 0.04991, 0.08301, 0.1266, 0.1814, 0.2484, 0.3282");
          values("4.742, 4.791, 4.93, 5.132, 5.383, 5.675, 6.011, 6.4, 6.853, 7.38",\
                 "4.755, 4.805, 4.943, 5.146, 5.397, 5.688, 6.024, 6.414, 6.867, 7.394",\
                 "4.82, 4.87, 5.008, 5.211, 5.461, 5.753, 6.089, 6.479, 6.932, 7.459",\
                 "4.964, 5.014, 5.152, 5.354, 5.605, 5.896, 6.233, 6.622, 7.076, 7.603",\
                 "5.187, 5.236, 5.374, 5.577, 5.828, 6.12, 6.456, 6.845, 7.299, 7.825",\
                 "5.466, 5.516, 5.654, 5.857, 6.107, 6.399, 6.734, 7.125, 7.578, 8.105",\
                 "5.793, 5.843, 5.982, 6.184, 6.435, 6.726, 7.063, 7.452, 7.906, 8.433",\
                 "6.177, 6.226, 6.364, 6.566, 6.817, 7.109, 7.445, 7.835, 8.288, 8.815",\
                 "6.618, 6.668, 6.806, 7.008, 7.259, 7.55, 7.886, 8.276, 8.729, 9.256",\
                 "7.119, 7.169, 7.307, 7.509, 7.76, 8.052, 8.388, 8.778, 9.231, 9.758");
        }

        cell_rise(tmg_ntin_oload_10x10) {
          index_1("0.02, 0.07784, 0.2809, 0.6686, 1.273, 2.12, 3.235, 4.64, 6.356, 8.4");
          index_2("0.001, 0.003259, 0.01119, 0.02633, 0.04991, 0.08301, 0.1266, 0.1814, 0.2484, 0.3282");
          values("4.523, 4.569, 4.709, 4.939, 5.277, 5.744, 6.357, 7.128, 8.07, 9.19",\
                 "4.537, 4.583, 4.723, 4.953, 5.291, 5.758, 6.371, 7.143, 8.084, 9.205",\
                 "4.581, 4.627, 4.767, 4.997, 5.334, 5.802, 6.414, 7.186, 8.127, 9.249",\
                 "4.631, 4.677, 4.817, 5.048, 5.385, 5.852, 6.465, 7.236, 8.178, 9.301",\
                 "4.656, 4.702, 4.841, 5.072, 5.409, 5.876, 6.489, 7.261, 8.202, 9.324",\
                 "4.647, 4.693, 4.833, 5.063, 5.4, 5.868, 6.481, 7.252, 8.194, 9.315",\
                 "4.601, 4.648, 4.788, 5.018, 5.355, 5.823, 6.436, 7.206, 8.147, 9.271",\
                 "4.516, 4.563, 4.702, 4.932, 5.269, 5.736, 6.349, 7.12, 8.061, 9.185",\
                 "4.385, 4.431, 4.571, 4.801, 5.138, 5.605, 6.218, 6.989, 7.93, 9.051",\
                 "4.204, 4.251, 4.39, 4.621, 4.959, 5.426, 6.038, 6.809, 7.75, 8.873");
        }

        fall_transition(tmg_ntin_oload_10x10) {
          index_1("0.02, 0.07784, 0.2809, 0.6686, 1.273, 2.12, 3.235, 4.64, 6.356, 8.4");
          index_2("0.001, 0.003259, 0.01119, 0.02633, 0.04991, 0.08301, 0.1266, 0.1814, 0.2484, 0.3282");
          values("0.3704, 0.4134, 0.5416, 0.7434, 1.009, 1.345, 1.779, 2.34, 3.044, 3.901",\
                 "0.3694, 0.413, 0.542, 0.744, 1.009, 1.344, 1.779, 2.34, 3.046, 3.908",\
                 "0.3692, 0.4132, 0.542, 0.7438, 1.008, 1.344, 1.78, 2.34, 3.045, 3.907",\
                 "0.3676, 0.413, 0.5426, 0.7436, 1.007, 1.344, 1.78, 2.339, 3.043, 3.903",\
                 "0.3678, 0.4132, 0.5424, 0.7436, 1.009, 1.345, 1.779, 2.34, 3.042, 3.902",\
                 "0.3698, 0.4132, 0.5422, 0.7438, 1.009, 1.345, 1.78, 2.34, 3.041, 3.908",\
                 "0.3674, 0.413, 0.5422, 0.7422, 1.008, 1.344, 1.78, 2.338, 3.043, 3.903",\
                 "0.3682, 0.4134, 0.5424, 0.7444, 1.009, 1.344, 1.78, 2.34, 3.042, 3.908",\
                 "0.368, 0.412, 0.542, 0.744, 1.01, 1.346, 1.778, 2.338, 3.042, 3.904",\
                 "0.368, 0.412, 0.542, 0.742, 1.01, 1.346, 1.782, 2.34, 3.04, 3.904");
        }

        rise_transition(tmg_ntin_oload_10x10) {
          index_1("0.02, 0.07784, 0.2809, 0.6686, 1.273, 2.12, 3.235, 4.64, 6.356, 8.4");
          index_2("0.001, 0.003259, 0.01119, 0.02633, 0.04991, 0.08301, 0.1266, 0.1814, 0.2484, 0.3282");
          values("0.2454, 0.3032, 0.4872, 0.8356, 1.407, 2.234, 3.328, 4.713, 6.39, 8.397",\
                 "0.2448, 0.3024, 0.487, 0.8358, 1.406, 2.232, 3.324, 4.713, 6.386, 8.402",\
                 "0.246, 0.3022, 0.4874, 0.8352, 1.407, 2.234, 3.324, 4.702, 6.386, 8.403",\
                 "0.2456, 0.303, 0.4892, 0.8362, 1.408, 2.235, 3.322, 4.702, 6.387, 8.416",\
                 "0.2458, 0.3022, 0.4874, 0.8362, 1.407, 2.235, 3.323, 4.702, 6.389, 8.415",\
                 "0.2446, 0.3032, 0.4874, 0.836, 1.407, 2.233, 3.329, 4.707, 6.392, 8.406",\
                 "0.246, 0.3026, 0.4872, 0.8356, 1.407, 2.231, 3.329, 4.706, 6.387, 8.416",\
                 "0.2446, 0.3022, 0.488, 0.8368, 1.408, 2.232, 3.325, 4.705, 6.386, 8.416",\
                 "0.2454, 0.302, 0.4876, 0.8364, 1.406, 2.231, 3.33, 4.712, 6.386, 8.396",\
                 "0.2458, 0.3026, 0.4884, 0.8368, 1.406, 2.232, 3.324, 4.704, 6.388, 8.416");
        }
      }
    }
  }

