blob: bd0933b702f12309e3deb1f4aa1655829196399a [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 : "4.41036e-05" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "!CLK&D" ;
value : "5.77764e-05" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "CLK&!D" ;
value : "7.55856e-05" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "CLK&D" ;
value : "7.40376e-05" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
value : "7.55856e-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.002914 ;
clock : true ;
direction : input ;
driver_waveform_rise : driver_waveform_default_rise ;
driver_waveform_fall : driver_waveform_default_fall ;
input_voltage : default ;
max_transition : 12 ;
min_period : 4.705 ;
min_pulse_width_high : 1.804 ;
min_pulse_width_low : 2.353 ;
related_ground_pin : VSS ;
related_power_pin : VDD ;
internal_power() {
when : "!D" ;
fall_power(pwr_tin_10) {
index_1("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617, 6.625, 9.077, 12");
values("0.03438, 0.03428, 0.03405, 0.03385, 0.03376, 0.03384, 0.03407, \
0.03446, 0.035, 0.03571");
}
rise_power(pwr_tin_10) {
index_1("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617, 6.625, 9.077, 12");
values("0.02655, 0.0265, 0.02634, 0.02614, 0.026, 0.02599, 0.02614, 0.02645, \
0.02694, 0.02761");
}
}
internal_power() {
when : "D" ;
fall_power(pwr_tin_10) {
index_1("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617, 6.625, 9.077, 12");
values("0.03492, 0.03482, 0.03459, 0.03439, 0.0343, 0.03438, 0.0346, 0.03498, \
0.03552, 0.03622");
}
rise_power(pwr_tin_10) {
index_1("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617, 6.625, 9.077, 12");
values("0.02659, 0.02655, 0.02638, 0.02617, 0.02603, 0.02601, 0.02618, \
0.0265, 0.027, 0.02766");
}
}
timing() {
related_pin : "CLK" ;
sdf_cond : "ENABLE_NOT_D === 1'b1" ;
timing_type : min_pulse_width ;
when : "!D" ;
fall_constraint(scalar) {
values("2.353");
}
rise_constraint(scalar) {
values("0.998");
}
}
timing() {
related_pin : "CLK" ;
sdf_cond : "ENABLE_D === 1'b1" ;
timing_type : min_pulse_width ;
when : "D" ;
fall_constraint(scalar) {
values("1.785");
}
rise_constraint(scalar) {
values("1.804");
}
}
timing() {
related_pin : "CLK" ;
sdf_cond : "ENABLE_NOT_D === 1'b1" ;
timing_type : minimum_period ;
when : "!D" ;
rise_constraint(scalar) {
values("4.705");
}
}
timing() {
related_pin : "CLK" ;
sdf_cond : "ENABLE_D === 1'b1" ;
timing_type : minimum_period ;
when : "D" ;
rise_constraint(scalar) {
values("3.947");
}
}
}
pin(D) {
capacitance : 0.002222 ;
direction : input ;
driver_waveform_rise : driver_waveform_default_rise ;
driver_waveform_fall : driver_waveform_default_fall ;
input_voltage : default ;
max_transition : 12 ;
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.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617, 6.625, 9.077, 12");
values("0.01833, 0.01826, 0.01801, 0.01783, 0.01779, 0.01788, 0.01811, \
0.01843, 0.01886, 0.0194");
}
rise_power(pwr_tin_10) {
index_1("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617, 6.625, 9.077, 12");
values("0.01354, 0.01357, 0.01355, 0.01347, 0.01342, 0.01343, 0.01355, \
0.01376, 0.01408, 0.01452");
}
}
internal_power() {
when : "CLK" ;
fall_power(pwr_tin_10) {
index_1("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617, 6.625, 9.077, 12");
values("0.001255, 0.001258, 0.001257, 0.001257, 0.001254, 0.001256, 0.001253, \
0.001249, 0.001244, 0.001234");
}
rise_power(pwr_tin_10) {
index_1("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617, 6.625, 9.077, 12");
values("-0.0006528, -0.0006557, -0.0006687, -0.0006815, -0.0006889, -0.0006983, \
-0.0007037, -0.0007105, -0.0007181, -0.0007312");
}
}
timing() {
related_pin : "CLK" ;
timing_type : hold_rising ;
fall_constraint(cnst_ctin_rtin_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.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617, 6.625, 9.077, 12");
values("0.126, 0.154, 0.244, 0.416, 0.615, 0.796, 0.942, 1.064, 1.132, 1.172",\
"0.107, 0.141, 0.228, 0.391, 0.59, 0.765, 0.919, 1.032, 1.105, 1.139",\
"0.042, 0.071, 0.157, 0.323, 0.522, 0.696, 0.841, 0.958, 1.028, 1.063",\
"-0.133, -0.102, -0.014, 0.147, 0.348, 0.519, 0.672, 0.785, 0.861, 0.897",\
"-0.399, -0.365, -0.285, -0.121, 0.073, 0.246, 0.399, 0.513, 0.587, 0.627",\
"-0.711, -0.685, -0.601, -0.439, -0.257, -0.081, 0.077, 0.183, 0.26, 0.297",\
"-1.08, -1.042, -0.965, -0.809, -0.619, -0.457, -0.306, -0.199, -0.126, -0.092",\
"-1.494, -1.459, -1.386, -1.235, -1.053, -0.886, -0.738, -0.626, -0.556, -0.524",\
"-1.961, -1.924, -1.855, -1.711, -1.528, -1.369, -1.225, -1.119, -1.047, -1.015",\
"-2.481, -2.451, -2.389, -2.243, -2.07, -1.909, -1.768, -1.663, -1.599, -1.564");
}
rise_constraint(cnst_ctin_rtin_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.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617, 6.625, 9.077, 12");
values("0.011, 0.038, 0.13, 0.255, 0.36, 0.448, 0.506, 0.53, 0.518, 0.473",\
"-0.009, 0.017, 0.107, 0.231, 0.339, 0.431, 0.487, 0.516, 0.501, 0.458",\
"-0.086, -0.058, 0.029, 0.165, 0.279, 0.368, 0.433, 0.463, 0.451, 0.41",\
"-0.173, -0.145, -0.052, 0.081, 0.199, 0.291, 0.351, 0.39, 0.378, 0.339",\
"-0.232, -0.207, -0.117, 0.021, 0.137, 0.222, 0.29, 0.319, 0.313, 0.272",\
"-0.254, -0.233, -0.144, -0.012, 0.101, 0.192, 0.253, 0.282, 0.275, 0.234",\
"-0.242, -0.213, -0.125, 0.004, 0.11, 0.201, 0.261, 0.279, 0.275, 0.235",\
"-0.174, -0.148, -0.063, 0.069, 0.17, 0.253, 0.307, 0.332, 0.314, 0.273",\
"-0.063, -0.037, 0.044, 0.176, 0.276, 0.348, 0.403, 0.425, 0.404, 0.361",\
"0.103, 0.129, 0.213, 0.335, 0.429, 0.501, 0.557, 0.568, 0.539, 0.498");
}
}
timing() {
related_pin : "CLK" ;
timing_type : setup_rising ;
fall_constraint(cnst_ctin_rtin_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.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617, 6.625, 9.077, 12");
values("1.225, 1.191, 1.091, 0.884, 0.663, 0.429, 0.247, 0.102, 0.003, -0.07",\
"1.246, 1.209, 1.105, 0.903, 0.682, 0.443, 0.266, 0.123, 0.024, -0.052",\
"1.319, 1.284, 1.182, 0.972, 0.757, 0.52, 0.339, 0.193, 0.096, 0.028",\
"1.508, 1.47, 1.369, 1.165, 0.942, 0.703, 0.53, 0.381, 0.285, 0.211",\
"1.833, 1.8, 1.691, 1.489, 1.267, 1.033, 0.855, 0.711, 0.609, 0.537",\
"2.308, 2.275, 2.171, 1.958, 1.745, 1.509, 1.331, 1.182, 1.08, 1.029",\
"2.895, 2.858, 2.752, 2.551, 2.329, 2.096, 1.92, 1.77, 1.671, 1.595",\
"3.542, 3.507, 3.399, 3.192, 2.976, 2.739, 2.558, 2.415, 2.315, 2.234",\
"4.232, 4.193, 4.091, 3.887, 3.665, 3.426, 3.252, 3.102, 3, 2.922",\
"4.979, 4.944, 4.838, 4.628, 4.412, 4.175, 3.994, 3.843, 3.744, 3.668");
}
rise_constraint(cnst_ctin_rtin_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.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617, 6.625, 9.077, 12");
values("1.093, 1.053, 0.938, 0.751, 0.574, 0.374, 0.247, 0.158, 0.13, 0.132",\
"1.122, 1.085, 0.963, 0.774, 0.6, 0.403, 0.272, 0.18, 0.151, 0.151",\
"1.16, 1.163, 1.054, 0.859, 0.682, 0.486, 0.351, 0.262, 0.233, 0.228",\
"1.358, 1.316, 1.196, 1.003, 0.836, 0.633, 0.496, 0.409, 0.374, 0.366",\
"1.47, 1.468, 1.355, 1.163, 0.993, 0.794, 0.652, 0.558, 0.524, 0.52",\
"1.649, 1.607, 1.49, 1.303, 1.136, 0.932, 0.794, 0.7, 0.66, 0.653",\
"1.735, 1.69, 1.571, 1.383, 1.223, 1.022, 0.879, 0.779, 0.747, 0.735",\
"1.769, 1.729, 1.616, 1.419, 1.257, 1.054, 0.92, 0.815, 0.78, 0.767",\
"1.752, 1.714, 1.598, 1.416, 1.247, 1.043, 0.905, 0.81, 0.771, 0.752",\
"1.647, 1.654, 1.537, 1.353, 1.188, 0.987, 0.848, 0.744, 0.711, 0.69");
}
}
}
pin(Q) {
direction : output ;
function : "IQ1" ;
max_capacitance : 0.2068 ;
max_transition : 12 ;
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.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617, 6.625, 9.077, 12");
index_2("0.001, 0.00242, 0.007407, 0.01693, 0.03176, 0.05258, 0.07997, 0.1145, 0.1566, 0.2068");
values("0.02877, 0.02884, 0.02906, 0.02927, 0.02942, 0.02951, 0.02957, 0.0296, 0.02962, 0.02964",\
"0.02878, 0.02886, 0.02906, 0.02927, 0.02942, 0.02952, 0.02957, 0.0296, 0.02962, 0.02964",\
"0.02877, 0.02885, 0.02906, 0.02927, 0.02942, 0.02951, 0.02957, 0.0296, 0.02962, 0.02964",\
"0.02877, 0.02885, 0.02905, 0.02927, 0.02942, 0.02951, 0.02957, 0.0296, 0.02962, 0.02964",\
"0.02882, 0.02891, 0.02913, 0.02933, 0.02947, 0.02956, 0.02963, 0.02966, 0.02968, 0.0297",\
"0.02892, 0.02899, 0.0292, 0.02942, 0.02956, 0.02965, 0.0297, 0.02974, 0.02976, 0.02978",\
"0.02897, 0.02905, 0.02927, 0.02948, 0.02963, 0.02971, 0.02976, 0.0298, 0.02982, 0.02983",\
"0.02905, 0.02913, 0.02934, 0.02955, 0.0297, 0.02979, 0.02984, 0.02988, 0.0299, 0.02991",\
"0.02912, 0.0292, 0.0294, 0.02963, 0.02977, 0.02986, 0.0299, 0.02994, 0.02997, 0.02998",\
"0.02918, 0.02927, 0.02948, 0.02969, 0.02982, 0.02992, 0.02997, 0.03, 0.03002, 0.03004");
}
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.00242, 0.007407, 0.01693, 0.03176, 0.05258, 0.07997, 0.1145, 0.1566, 0.2068");
values("0.02714, 0.02719, 0.02734, 0.02756, 0.02784, 0.02806, 0.02827, 0.02857, 0.02918, 0.03545",\
"0.02716, 0.02722, 0.02735, 0.02756, 0.02783, 0.02806, 0.02823, 0.02842, 0.02921, 0.03584",\
"0.02713, 0.02718, 0.02735, 0.02754, 0.02784, 0.02803, 0.02828, 0.0286, 0.02922, 0.03652",\
"0.02706, 0.0271, 0.02726, 0.02747, 0.02776, 0.02795, 0.02817, 0.02831, 0.02959, 0.03754",\
"0.02701, 0.02705, 0.02721, 0.02743, 0.02768, 0.02795, 0.02809, 0.02834, 0.02957, 0.03953",\
"0.027, 0.02703, 0.0272, 0.0274, 0.02767, 0.0279, 0.0281, 0.02845, 0.03009, 0.0431",\
"0.02693, 0.027, 0.02714, 0.02737, 0.02763, 0.02785, 0.02805, 0.02837, 0.03097, 0.0485",\
"0.02691, 0.02698, 0.02711, 0.02735, 0.02764, 0.02791, 0.02803, 0.02859, 0.03301, 0.05757",\
"0.0269, 0.02697, 0.02712, 0.02736, 0.02758, 0.02786, 0.02817, 0.02897, 0.03676, 0.07275",\
"0.02692, 0.02695, 0.02711, 0.02733, 0.02757, 0.02773, 0.02804, 0.03013, 0.04499, 0.09691");
}
}
timing() {
related_pin : "CLK" ;
timing_type : rising_edge ;
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.00242, 0.007407, 0.01693, 0.03176, 0.05258, 0.07997, 0.1145, 0.1566, 0.2068");
values("2.078, 2.118, 2.23, 2.399, 2.624, 2.92, 3.302, 3.78, 4.363, 5.058",\
"2.106, 2.147, 2.259, 2.427, 2.652, 2.948, 3.33, 3.808, 4.392, 5.087",\
"2.206, 2.246, 2.359, 2.527, 2.752, 3.048, 3.429, 3.908, 4.491, 5.187",\
"2.393, 2.433, 2.545, 2.713, 2.939, 3.235, 3.616, 4.094, 4.678, 5.374",\
"2.618, 2.659, 2.772, 2.939, 3.164, 3.46, 3.842, 4.321, 4.904, 5.599",\
"2.828, 2.868, 2.981, 3.149, 3.374, 3.67, 4.052, 4.53, 5.114, 5.809",\
"3.012, 3.052, 3.164, 3.332, 3.558, 3.854, 4.235, 4.714, 5.297, 5.993",\
"3.162, 3.203, 3.315, 3.483, 3.708, 4.004, 4.386, 4.866, 5.447, 6.142",\
"3.277, 3.317, 3.429, 3.598, 3.823, 4.119, 4.501, 4.979, 5.562, 6.257",\
"3.352, 3.393, 3.505, 3.673, 3.898, 4.194, 4.575, 5.053, 5.637, 6.331");
}
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.00242, 0.007407, 0.01693, 0.03176, 0.05258, 0.07997, 0.1145, 0.1566, 0.2068");
values("2.502, 2.561, 2.742, 3.067, 3.567, 4.264, 5.18, 6.332, 7.737, 9.412",\
"2.531, 2.589, 2.771, 3.095, 3.595, 4.293, 5.208, 6.36, 7.766, 9.441",\
"2.629, 2.687, 2.869, 3.194, 3.693, 4.391, 5.306, 6.458, 7.864, 9.54",\
"2.809, 2.867, 3.049, 3.373, 3.872, 4.57, 5.486, 6.638, 8.043, 9.719",\
"3.026, 3.085, 3.266, 3.591, 4.09, 4.788, 5.703, 6.855, 8.261, 9.936",\
"3.23, 3.288, 3.47, 3.795, 4.294, 4.992, 5.907, 7.059, 8.465, 10.14",\
"3.409, 3.467, 3.648, 3.973, 4.473, 5.17, 6.086, 7.238, 8.643, 10.32",\
"3.557, 3.615, 3.797, 4.122, 4.621, 5.318, 6.234, 7.386, 8.791, 10.47",\
"3.67, 3.729, 3.91, 4.235, 4.734, 5.432, 6.348, 7.5, 8.905, 10.58",\
"3.747, 3.805, 3.987, 4.311, 4.811, 5.508, 6.424, 7.577, 8.982, 10.66");
}
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.00242, 0.007407, 0.01693, 0.03176, 0.05258, 0.07997, 0.1145, 0.1566, 0.2068");
values("0.2226, 0.258, 0.3694, 0.5708, 0.8906, 1.357, 1.991, 2.802, 3.801, 4.993",\
"0.2218, 0.2582, 0.3692, 0.5712, 0.8892, 1.357, 1.99, 2.806, 3.799, 4.995",\
"0.2226, 0.2582, 0.37, 0.5712, 0.8888, 1.357, 1.993, 2.804, 3.802, 4.993",\
"0.2226, 0.2582, 0.3696, 0.571, 0.8904, 1.357, 1.992, 2.801, 3.799, 4.994",\
"0.2226, 0.258, 0.3692, 0.5708, 0.8892, 1.357, 1.992, 2.802, 3.798, 4.995",\
"0.2224, 0.2574, 0.3698, 0.5728, 0.8906, 1.357, 1.991, 2.803, 3.798, 4.995",\
"0.222, 0.2578, 0.3692, 0.5718, 0.8906, 1.355, 1.991, 2.805, 3.803, 4.992",\
"0.2222, 0.2582, 0.3694, 0.5714, 0.8906, 1.357, 1.992, 2.802, 3.795, 4.986",\
"0.2222, 0.2584, 0.3692, 0.571, 0.89, 1.356, 1.989, 2.805, 3.798, 4.98",\
"0.222, 0.258, 0.37, 0.572, 0.892, 1.356, 1.99, 2.806, 3.796, 4.984");
}
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.00242, 0.007407, 0.01693, 0.03176, 0.05258, 0.07997, 0.1145, 0.1566, 0.2068");
values("0.3048, 0.3728, 0.6274, 1.156, 2.002, 3.186, 4.749, 6.728, 9.136, 12.01",\
"0.3054, 0.3728, 0.6274, 1.154, 1.998, 3.185, 4.75, 6.725, 9.133, 12.01",\
"0.3046, 0.3728, 0.6272, 1.154, 2.001, 3.187, 4.752, 6.727, 9.136, 12.01",\
"0.3048, 0.373, 0.6266, 1.155, 2, 3.189, 4.755, 6.72, 9.137, 12.01",\
"0.3044, 0.3728, 0.627, 1.155, 1.999, 3.189, 4.751, 6.727, 9.136, 12.01",\
"0.305, 0.3734, 0.6272, 1.156, 2.001, 3.185, 4.748, 6.727, 9.137, 12.01",\
"0.3044, 0.3726, 0.6274, 1.153, 1.998, 3.187, 4.749, 6.727, 9.138, 12.01",\
"0.3044, 0.3724, 0.6272, 1.154, 1.997, 3.184, 4.753, 6.726, 9.138, 12.01",\
"0.3044, 0.3732, 0.6278, 1.156, 1.998, 3.188, 4.748, 6.72, 9.132, 12.01",\
"0.304, 0.374, 0.628, 1.156, 1.998, 3.188, 4.75, 6.716, 9.12, 12");
}
}
}
}