blob: a3b172fa9cac7eeb599030cb71d1314009434a0c [file] [log] [blame]
/*
* 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__dffq_1) {
area : 63.660800 ;
ff(IQ1,IQN1) {
clocked_on : "CLK" ;
next_state : "D" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "!CLK&!D" ;
value : "5.290758e-05" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "!CLK&D" ;
value : "6.410844e-05" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "CLK&!D" ;
value : "8.036226e-05" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "CLK&D" ;
value : "7.905744e-05" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
value : "8.036226e-05" ;
}
pg_pin(VDD) {
voltage_name : VDD ;
pg_type : primary_power ;
}
pg_pin(VSS) {
voltage_name : VSS ;
pg_type : primary_ground ;
}
pin(CLK) {
capacitance : 0.002985 ;
clock : true ;
direction : input ;
driver_waveform_rise : driver_waveform_default_rise ;
driver_waveform_fall : driver_waveform_default_fall ;
input_voltage : default ;
max_transition : 6.8 ;
min_period : 2.033 ;
min_pulse_width_high : 0.785 ;
min_pulse_width_low : 1.021 ;
related_ground_pin : VSS ;
related_power_pin : VDD ;
internal_power() {
when : "!D" ;
fall_power(pwr_tin_10) {
index_1("0.02, 0.0668, 0.2311, 0.5448, 1.033, 1.719, 2.622, 3.758, 5.146, 6.8");
values("0.04119, 0.04104, 0.04076, 0.0407, 0.04115, 0.04211, 0.0436, 0.04569, \
0.04843, 0.05186");
}
rise_power(pwr_tin_10) {
index_1("0.02, 0.0668, 0.2311, 0.5448, 1.033, 1.719, 2.622, 3.758, 5.146, 6.8");
values("0.03077, 0.03068, 0.03045, 0.03037, 0.03059, 0.03131, 0.03258, \
0.03445, 0.03688, 0.03998");
}
}
internal_power() {
when : "D" ;
fall_power(pwr_tin_10) {
index_1("0.02, 0.0668, 0.2311, 0.5448, 1.033, 1.719, 2.622, 3.758, 5.146, 6.8");
values("0.04187, 0.04172, 0.04144, 0.04137, 0.04182, 0.04279, 0.04427, \
0.04637, 0.04909, 0.05254");
}
rise_power(pwr_tin_10) {
index_1("0.02, 0.0668, 0.2311, 0.5448, 1.033, 1.719, 2.622, 3.758, 5.146, 6.8");
values("0.03081, 0.03072, 0.03049, 0.03039, 0.03063, 0.03137, 0.03264, \
0.03449, 0.03696, 0.04009");
}
}
timing() {
related_pin : "CLK" ;
sdf_cond : "ENABLE_NOT_D === 1'b1" ;
timing_type : min_pulse_width ;
when : "!D" ;
fall_constraint(scalar) {
values("1.021");
}
rise_constraint(scalar) {
values("0.469");
}
}
timing() {
related_pin : "CLK" ;
sdf_cond : "ENABLE_D === 1'b1" ;
timing_type : min_pulse_width ;
when : "D" ;
fall_constraint(scalar) {
values("0.783");
}
rise_constraint(scalar) {
values("0.785");
}
}
timing() {
related_pin : "CLK" ;
sdf_cond : "ENABLE_NOT_D === 1'b1" ;
timing_type : minimum_period ;
when : "!D" ;
rise_constraint(scalar) {
values("2.033");
}
}
timing() {
related_pin : "CLK" ;
sdf_cond : "ENABLE_D === 1'b1" ;
timing_type : minimum_period ;
when : "D" ;
rise_constraint(scalar) {
values("1.819");
}
}
}
pin(D) {
capacitance : 0.002303 ;
direction : input ;
driver_waveform_rise : driver_waveform_default_rise ;
driver_waveform_fall : driver_waveform_default_fall ;
input_voltage : default ;
max_transition : 6.8 ;
nextstate_type : data ;
related_ground_pin : VSS ;
related_power_pin : VDD ;
internal_power() {
when : "!CLK" ;
fall_power(pwr_tin_10) {
index_1("0.02, 0.0668, 0.2311, 0.5448, 1.033, 1.719, 2.622, 3.758, 5.146, 6.8");
values("0.02249, 0.02232, 0.02199, 0.02187, 0.02213, 0.02277, 0.02371, \
0.02496, 0.02652, 0.02844");
}
rise_power(pwr_tin_10) {
index_1("0.02, 0.0668, 0.2311, 0.5448, 1.033, 1.719, 2.622, 3.758, 5.146, 6.8");
values("0.01602, 0.01605, 0.01602, 0.01601, 0.01615, 0.01654, 0.0172, \
0.01819, 0.01951, 0.02115");
}
}
internal_power() {
when : "CLK" ;
fall_power(pwr_tin_10) {
index_1("0.02, 0.0668, 0.2311, 0.5448, 1.033, 1.719, 2.622, 3.758, 5.146, 6.8");
values("0.001629, 0.001631, 0.00163, 0.001628, 0.001628, 0.00163, 0.001631, \
0.001629, 0.001626, 0.001624");
}
rise_power(pwr_tin_10) {
index_1("0.02, 0.0668, 0.2311, 0.5448, 1.033, 1.719, 2.622, 3.758, 5.146, 6.8");
values("-0.000964, -0.0009644, -0.0009772, -0.0009892, -0.0009988, -0.001004, \
-0.001014, -0.001018, -0.001022, -0.001026");
}
}
timing() {
related_pin : "CLK" ;
timing_type : hold_rising ;
fall_constraint(cnst_ctin_rtin_10x10) {
index_1("0.02, 0.0668, 0.2311, 0.5448, 1.033, 1.719, 2.622, 3.758, 5.146, 6.8");
index_2("0.02, 0.0668, 0.2311, 0.5448, 1.033, 1.719, 2.622, 3.758, 5.146, 6.8");
values("0.057, 0.074, 0.121, 0.192, 0.273, 0.325, 0.365, 0.378, 0.364, 0.336",\
"0.052, 0.067, 0.109, 0.184, 0.261, 0.321, 0.355, 0.37, 0.359, 0.327",\
"0.014, 0.033, 0.075, 0.154, 0.228, 0.282, 0.315, 0.327, 0.322, 0.293",\
"-0.075, -0.061, -0.018, 0.057, 0.133, 0.19, 0.229, 0.241, 0.234, 0.201",\
"-0.211, -0.197, -0.15, -0.073, -0, 0.06, 0.095, 0.11, 0.096, 0.068",\
"-0.371, -0.359, -0.318, -0.249, -0.173, -0.112, -0.075, -0.057, -0.064, -0.094",\
"-0.576, -0.555, -0.521, -0.446, -0.371, -0.319, -0.278, -0.26, -0.266, -0.293",\
"-0.805, -0.783, -0.747, -0.68, -0.608, -0.549, -0.512, -0.493, -0.502, -0.527",\
"-1.071, -1.052, -1.016, -0.946, -0.873, -0.821, -0.779, -0.76, -0.767, -0.796",\
"-1.366, -1.347, -1.319, -1.254, -1.179, -1.126, -1.093, -1.072, -1.079, -1.089");
}
rise_constraint(cnst_ctin_rtin_10x10) {
index_1("0.02, 0.0668, 0.2311, 0.5448, 1.033, 1.719, 2.622, 3.758, 5.146, 6.8");
index_2("0.02, 0.0668, 0.2311, 0.5448, 1.033, 1.719, 2.622, 3.758, 5.146, 6.8");
values("0.011, 0.028, 0.073, 0.122, 0.155, 0.175, 0.174, 0.15, 0.11, 0.053",\
"-0.001, 0.015, 0.057, 0.11, 0.146, 0.167, 0.168, 0.15, 0.108, 0.043",\
"-0.034, -0.02, 0.027, 0.076, 0.121, 0.136, 0.14, 0.128, 0.084, 0.027",\
"-0.068, -0.045, -0.008, 0.051, 0.09, 0.113, 0.116, 0.096, 0.06, 0.005",\
"-0.075, -0.063, -0.02, 0.039, 0.071, 0.095, 0.104, 0.08, 0.05, -0.008",\
"-0.061, -0.051, -0.012, 0.047, 0.082, 0.105, 0.109, 0.091, 0.053, -0.007",\
"-0.031, -0.016, 0.027, 0.076, 0.116, 0.134, 0.135, 0.114, 0.082, 0.019",\
"0.029, 0.051, 0.091, 0.139, 0.175, 0.192, 0.189, 0.173, 0.126, 0.069",\
"0.132, 0.149, 0.187, 0.233, 0.259, 0.274, 0.275, 0.25, 0.204, 0.148",\
"0.27, 0.283, 0.322, 0.369, 0.387, 0.398, 0.394, 0.367, 0.324, 0.259");
}
}
timing() {
related_pin : "CLK" ;
timing_type : setup_rising ;
fall_constraint(cnst_ctin_rtin_10x10) {
index_1("0.02, 0.0668, 0.2311, 0.5448, 1.033, 1.719, 2.622, 3.758, 5.146, 6.8");
index_2("0.02, 0.0668, 0.2311, 0.5448, 1.033, 1.719, 2.622, 3.758, 5.146, 6.8");
values("0.487, 0.474, 0.421, 0.329, 0.24, 0.174, 0.126, 0.105, 0.101, 0.129",\
"0.496, 0.479, 0.429, 0.342, 0.245, 0.18, 0.13, 0.109, 0.104, 0.132",\
"0.528, 0.516, 0.47, 0.382, 0.288, 0.212, 0.174, 0.151, 0.141, 0.168",\
"0.628, 0.62, 0.574, 0.476, 0.385, 0.314, 0.269, 0.246, 0.24, 0.271",\
"0.804, 0.792, 0.744, 0.652, 0.558, 0.492, 0.447, 0.418, 0.418, 0.444",\
"1.048, 1.032, 0.978, 0.889, 0.796, 0.73, 0.679, 0.656, 0.658, 0.68",\
"1.312, 1.303, 1.251, 1.162, 1.069, 0.999, 0.949, 0.929, 0.925, 0.951",\
"1.619, 1.607, 1.554, 1.461, 1.366, 1.296, 1.251, 1.231, 1.227, 1.249",\
"1.955, 1.944, 1.895, 1.798, 1.712, 1.64, 1.598, 1.572, 1.565, 1.59",\
"2.337, 2.325, 2.276, 2.181, 2.09, 2.021, 1.977, 1.953, 1.951, 1.974");
}
rise_constraint(cnst_ctin_rtin_10x10) {
index_1("0.02, 0.0668, 0.2311, 0.5448, 1.033, 1.719, 2.622, 3.758, 5.146, 6.8");
index_2("0.02, 0.0668, 0.2311, 0.5448, 1.033, 1.719, 2.622, 3.758, 5.146, 6.8");
values("0.464, 0.448, 0.401, 0.314, 0.234, 0.183, 0.16, 0.172, 0.19, 0.253",\
"0.477, 0.464, 0.408, 0.325, 0.245, 0.199, 0.178, 0.186, 0.2, 0.266",\
"0.518, 0.511, 0.45, 0.363, 0.288, 0.238, 0.217, 0.22, 0.24, 0.297",\
"0.589, 0.571, 0.525, 0.432, 0.359, 0.302, 0.277, 0.278, 0.296, 0.36",\
"0.644, 0.632, 0.579, 0.488, 0.415, 0.358, 0.337, 0.335, 0.358, 0.406",\
"0.673, 0.667, 0.604, 0.522, 0.449, 0.391, 0.366, 0.367, 0.391, 0.439",\
"0.671, 0.659, 0.608, 0.526, 0.444, 0.389, 0.368, 0.368, 0.388, 0.44",\
"0.643, 0.629, 0.577, 0.498, 0.418, 0.367, 0.34, 0.346, 0.357, 0.412",\
"0.587, 0.571, 0.52, 0.437, 0.368, 0.312, 0.289, 0.288, 0.303, 0.359",\
"0.502, 0.486, 0.438, 0.353, 0.277, 0.22, 0.195, 0.203, 0.213, 0.268");
}
}
}
pin(Q) {
direction : output ;
function : "IQ1" ;
max_capacitance : 0.2372 ;
max_transition : 6.8 ;
min_capacitance : 0.001 ;
output_voltage : default ;
related_ground_pin : VSS ;
related_power_pin : VDD ;
internal_power() {
related_pin : "CLK" ;
fall_power(pwr_tin_oload_10x10) {
index_1("0.02, 0.0668, 0.2311, 0.5448, 1.033, 1.719, 2.622, 3.758, 5.146, 6.8");
index_2("0.001, 0.00263, 0.008354, 0.01928, 0.03631, 0.0602, 0.09164, 0.1312, 0.1796, 0.2372");
values("0.0351, 0.03515, 0.03533, 0.03556, 0.03573, 0.03583, 0.03589, 0.03593, 0.03595, 0.03596",\
"0.03509, 0.03516, 0.03534, 0.03556, 0.03574, 0.03583, 0.03589, 0.03593, 0.03595, 0.03597",\
"0.03509, 0.03514, 0.03533, 0.03557, 0.03573, 0.03583, 0.03589, 0.03593, 0.03595, 0.03597",\
"0.0351, 0.03517, 0.03537, 0.0356, 0.03575, 0.03586, 0.03592, 0.03596, 0.03598, 0.036",\
"0.03525, 0.03531, 0.0355, 0.03573, 0.0359, 0.036, 0.03606, 0.0361, 0.03612, 0.03614",\
"0.03539, 0.03542, 0.03561, 0.03585, 0.03601, 0.0361, 0.03615, 0.03619, 0.03622, 0.03623",\
"0.03546, 0.03552, 0.0357, 0.03594, 0.0361, 0.0362, 0.03625, 0.03629, 0.03632, 0.03634",\
"0.03558, 0.03563, 0.03581, 0.03603, 0.03619, 0.03629, 0.03634, 0.03638, 0.03641, 0.03642",\
"0.03569, 0.03574, 0.03594, 0.03616, 0.03633, 0.03643, 0.03648, 0.03653, 0.03655, 0.03657",\
"0.03582, 0.03588, 0.03609, 0.0363, 0.03647, 0.03657, 0.03663, 0.03667, 0.03669, 0.03671");
}
rise_power(pwr_tin_oload_10x10) {
index_1("0.02, 0.0668, 0.2311, 0.5448, 1.033, 1.719, 2.622, 3.758, 5.146, 6.8");
index_2("0.001, 0.00263, 0.008354, 0.01928, 0.03631, 0.0602, 0.09164, 0.1312, 0.1796, 0.2372");
values("0.03312, 0.03313, 0.03322, 0.03348, 0.03374, 0.03409, 0.03429, 0.03451, 0.035, 0.03494",\
"0.03311, 0.03311, 0.03324, 0.03346, 0.03378, 0.03404, 0.03431, 0.03452, 0.035, 0.03531",\
"0.03308, 0.03311, 0.0332, 0.03346, 0.03372, 0.03405, 0.03427, 0.03463, 0.03471, 0.03491",\
"0.03301, 0.03303, 0.03315, 0.03341, 0.03367, 0.034, 0.03422, 0.03444, 0.03479, 0.03521",\
"0.03302, 0.03303, 0.03312, 0.03339, 0.03366, 0.03401, 0.03421, 0.03443, 0.0349, 0.03527",\
"0.033, 0.03302, 0.03311, 0.03335, 0.03366, 0.03393, 0.03423, 0.03454, 0.03466, 0.03489",\
"0.03305, 0.03304, 0.03313, 0.03342, 0.03375, 0.03398, 0.03422, 0.03456, 0.0346, 0.03502",\
"0.03305, 0.0331, 0.03316, 0.0334, 0.03366, 0.03415, 0.03435, 0.03461, 0.03484, 0.03525",\
"0.03309, 0.03312, 0.03321, 0.03343, 0.03367, 0.0339, 0.03448, 0.03473, 0.03477, 0.03513",\
"0.03317, 0.03318, 0.03326, 0.03354, 0.03381, 0.0341, 0.03424, 0.03487, 0.03518, 0.03531");
}
}
timing() {
related_pin : "CLK" ;
timing_type : rising_edge ;
cell_fall(tmg_ntin_oload_10x10) {
index_1("0.02, 0.0668, 0.2311, 0.5448, 1.033, 1.719, 2.622, 3.758, 5.146, 6.8");
index_2("0.001, 0.00263, 0.008354, 0.01928, 0.03631, 0.0602, 0.09164, 0.1312, 0.1796, 0.2372");
values("0.9776, 1.002, 1.069, 1.17, 1.307, 1.491, 1.731, 2.032, 2.4, 2.838",\
"0.9913, 1.016, 1.083, 1.183, 1.321, 1.505, 1.744, 2.046, 2.414, 2.852",\
"1.04, 1.065, 1.132, 1.232, 1.369, 1.553, 1.793, 2.094, 2.463, 2.901",\
"1.127, 1.152, 1.219, 1.319, 1.456, 1.64, 1.88, 2.182, 2.55, 2.988",\
"1.216, 1.24, 1.307, 1.408, 1.545, 1.729, 1.969, 2.27, 2.638, 3.076",\
"1.285, 1.31, 1.377, 1.477, 1.615, 1.799, 2.038, 2.34, 2.707, 3.147",\
"1.335, 1.359, 1.426, 1.527, 1.664, 1.848, 2.088, 2.389, 2.757, 3.196",\
"1.363, 1.388, 1.455, 1.555, 1.693, 1.877, 2.116, 2.418, 2.785, 3.224",\
"1.37, 1.395, 1.462, 1.562, 1.699, 1.883, 2.123, 2.425, 2.792, 3.231",\
"1.354, 1.379, 1.446, 1.546, 1.683, 1.867, 2.107, 2.409, 2.776, 3.215");
}
cell_rise(tmg_ntin_oload_10x10) {
index_1("0.02, 0.0668, 0.2311, 0.5448, 1.033, 1.719, 2.622, 3.758, 5.146, 6.8");
index_2("0.001, 0.00263, 0.008354, 0.01928, 0.03631, 0.0602, 0.09164, 0.1312, 0.1796, 0.2372");
values("1.118, 1.152, 1.253, 1.436, 1.718, 2.112, 2.629, 3.28, 4.074, 5.02",\
"1.132, 1.165, 1.267, 1.45, 1.731, 2.126, 2.642, 3.293, 4.088, 5.034",\
"1.18, 1.213, 1.315, 1.498, 1.779, 2.173, 2.69, 3.341, 4.135, 5.082",\
"1.264, 1.297, 1.399, 1.582, 1.864, 2.257, 2.774, 3.425, 4.219, 5.165",\
"1.35, 1.383, 1.485, 1.668, 1.95, 2.343, 2.86, 3.511, 4.306, 5.252",\
"1.419, 1.452, 1.554, 1.737, 2.019, 2.412, 2.929, 3.58, 4.374, 5.321",\
"1.469, 1.502, 1.604, 1.786, 2.068, 2.462, 2.979, 3.629, 4.423, 5.37",\
"1.498, 1.531, 1.633, 1.816, 2.097, 2.491, 3.008, 3.659, 4.454, 5.399",\
"1.507, 1.541, 1.642, 1.825, 2.106, 2.5, 3.017, 3.668, 4.462, 5.408",\
"1.495, 1.528, 1.63, 1.813, 2.094, 2.488, 3.005, 3.656, 4.45, 5.396");
}
fall_transition(tmg_ntin_oload_10x10) {
index_1("0.02, 0.0668, 0.2311, 0.5448, 1.033, 1.719, 2.622, 3.758, 5.146, 6.8");
index_2("0.001, 0.00263, 0.008354, 0.01928, 0.03631, 0.0602, 0.09164, 0.1312, 0.1796, 0.2372");
values("0.1154, 0.1372, 0.2042, 0.3284, 0.5294, 0.8264, 1.23, 1.737, 2.362, 3.108",\
"0.1152, 0.137, 0.2048, 0.3288, 0.5296, 0.8274, 1.23, 1.739, 2.36, 3.109",\
"0.1152, 0.1372, 0.2048, 0.3294, 0.5296, 0.827, 1.229, 1.737, 2.363, 3.106",\
"0.1152, 0.1368, 0.2046, 0.3292, 0.5302, 0.827, 1.229, 1.737, 2.361, 3.109",\
"0.115, 0.1372, 0.2044, 0.3282, 0.5294, 0.8266, 1.23, 1.737, 2.362, 3.108",\
"0.115, 0.1366, 0.2048, 0.3284, 0.5302, 0.8284, 1.229, 1.74, 2.364, 3.108",\
"0.115, 0.1366, 0.2042, 0.3292, 0.5298, 0.8262, 1.227, 1.736, 2.362, 3.105",\
"0.1152, 0.1372, 0.2044, 0.328, 0.5302, 0.8266, 1.228, 1.737, 2.358, 3.102",\
"0.1154, 0.1366, 0.204, 0.3284, 0.5298, 0.8282, 1.228, 1.737, 2.358, 3.099",\
"0.1154, 0.1368, 0.2048, 0.3288, 0.5296, 0.8276, 1.228, 1.738, 2.358, 3.103");
}
rise_transition(tmg_ntin_oload_10x10) {
index_1("0.02, 0.0668, 0.2311, 0.5448, 1.033, 1.719, 2.622, 3.758, 5.146, 6.8");
index_2("0.001, 0.00263, 0.008354, 0.01928, 0.03631, 0.0602, 0.09164, 0.1312, 0.1796, 0.2372");
values("0.151, 0.1894, 0.3336, 0.635, 1.117, 1.794, 2.683, 3.806, 5.177, 6.807",\
"0.151, 0.1892, 0.3336, 0.6358, 1.117, 1.792, 2.683, 3.806, 5.177, 6.814",\
"0.1506, 0.189, 0.3336, 0.6348, 1.117, 1.792, 2.681, 3.808, 5.175, 6.807",\
"0.1508, 0.1892, 0.3334, 0.6348, 1.118, 1.792, 2.682, 3.807, 5.174, 6.81",\
"0.1506, 0.1894, 0.3336, 0.635, 1.116, 1.794, 2.683, 3.806, 5.177, 6.814",\
"0.1508, 0.1886, 0.3334, 0.6352, 1.116, 1.793, 2.681, 3.808, 5.176, 6.808",\
"0.1504, 0.1888, 0.3336, 0.634, 1.114, 1.79, 2.683, 3.807, 5.178, 6.81",\
"0.15, 0.1884, 0.334, 0.6356, 1.115, 1.79, 2.68, 3.807, 5.173, 6.809",\
"0.15, 0.1888, 0.3334, 0.6346, 1.115, 1.792, 2.681, 3.8, 5.171, 6.812",\
"0.15, 0.1884, 0.3334, 0.6348, 1.117, 1.792, 2.68, 3.801, 5.17, 6.806");
}
}
}
}