blob: 8e1f5213e40faa5beb99c42855f50babfad8da56 [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_mcu9t5v0__dffnq_1) {
area : 84.672000 ;
ff(IQ1,IQN1) {
clocked_on : "(!CLKN)" ;
next_state : "D" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "!CLKN&!D" ;
value : "0.00244431" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "!CLKN&D" ;
value : "0.00274527" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "CLKN&!D" ;
value : "0.002158992" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "CLKN&D" ;
value : "0.002729232" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
value : "0.00274527" ;
}
pg_pin(VDD) {
voltage_name : VDD ;
pg_type : primary_power ;
}
pg_pin(VSS) {
voltage_name : VSS ;
pg_type : primary_ground ;
}
pin(CLKN) {
capacitance : 0.00479 ;
clock : true ;
direction : input ;
driver_waveform_rise : driver_waveform_default_rise ;
driver_waveform_fall : driver_waveform_default_fall ;
input_voltage : default ;
max_transition : 8.4 ;
min_period : 1.885 ;
min_pulse_width_high : 0.751 ;
min_pulse_width_low : 0.815 ;
related_ground_pin : VSS ;
related_power_pin : VDD ;
internal_power() {
when : "!D" ;
fall_power(pwr_tin_10) {
index_1("0.02, 0.07784, 0.2809, 0.6686, 1.273, 2.12, 3.235, 4.64, 6.356, 8.4");
values("0.06152, 0.06124, 0.06093, 0.06175, 0.06447, 0.06902, 0.07561, \
0.08449, 0.09583, 0.1097");
}
rise_power(pwr_tin_10) {
index_1("0.02, 0.07784, 0.2809, 0.6686, 1.273, 2.12, 3.235, 4.64, 6.356, 8.4");
values("0.03956, 0.03942, 0.03922, 0.03992, 0.04199, 0.04585, 0.05166, \
0.05963, 0.06978, 0.08222");
}
}
internal_power() {
when : "D" ;
fall_power(pwr_tin_10) {
index_1("0.02, 0.07784, 0.2809, 0.6686, 1.273, 2.12, 3.235, 4.64, 6.356, 8.4");
values("0.06157, 0.0613, 0.06099, 0.0618, 0.06453, 0.06909, 0.07569, 0.08455, \
0.09588, 0.1098");
}
rise_power(pwr_tin_10) {
index_1("0.02, 0.07784, 0.2809, 0.6686, 1.273, 2.12, 3.235, 4.64, 6.356, 8.4");
values("0.03949, 0.03936, 0.03917, 0.03987, 0.04194, 0.04578, 0.05165, \
0.05958, 0.06974, 0.08216");
}
}
timing() {
related_pin : "CLKN" ;
sdf_cond : "ENABLE_NOT_D === 1'b1" ;
timing_type : min_pulse_width ;
when : "!D" ;
fall_constraint(scalar) {
values("0.784");
}
rise_constraint(scalar) {
values("0.751");
}
}
timing() {
related_pin : "CLKN" ;
sdf_cond : "ENABLE_D === 1'b1" ;
timing_type : min_pulse_width ;
when : "D" ;
fall_constraint(scalar) {
values("0.815");
}
rise_constraint(scalar) {
values("0.636");
}
}
timing() {
related_pin : "CLKN" ;
sdf_cond : "ENABLE_NOT_D === 1'b1" ;
timing_type : minimum_period ;
when : "!D" ;
fall_constraint(scalar) {
values("1.648");
}
}
timing() {
related_pin : "CLKN" ;
sdf_cond : "ENABLE_D === 1'b1" ;
timing_type : minimum_period ;
when : "D" ;
fall_constraint(scalar) {
values("1.885");
}
}
}
pin(D) {
capacitance : 0.003735 ;
direction : input ;
driver_waveform_rise : driver_waveform_default_rise ;
driver_waveform_fall : driver_waveform_default_fall ;
input_voltage : default ;
max_transition : 8.4 ;
nextstate_type : data ;
related_ground_pin : VSS ;
related_power_pin : VDD ;
internal_power() {
when : "!CLKN" ;
fall_power(pwr_tin_10) {
index_1("0.02, 0.07784, 0.2809, 0.6686, 1.273, 2.12, 3.235, 4.64, 6.356, 8.4");
values("0.01405, 0.01367, 0.01372, 0.0149, 0.01739, 0.02125, 0.02664, \
0.03364, 0.04238, 0.05291");
}
rise_power(pwr_tin_10) {
index_1("0.02, 0.07784, 0.2809, 0.6686, 1.273, 2.12, 3.235, 4.64, 6.356, 8.4");
values("0.002601, 0.002382, 0.002319, 0.003103, 0.005122, 0.00846, 0.01319, \
0.01939, 0.02711, 0.03646");
}
}
internal_power() {
when : "CLKN" ;
fall_power(pwr_tin_10) {
index_1("0.02, 0.07784, 0.2809, 0.6686, 1.273, 2.12, 3.235, 4.64, 6.356, 8.4");
values("0.04651, 0.04629, 0.04625, 0.04706, 0.04926, 0.0529, 0.05814, \
0.06514, 0.07403, 0.08493");
}
rise_power(pwr_tin_10) {
index_1("0.02, 0.07784, 0.2809, 0.6686, 1.273, 2.12, 3.235, 4.64, 6.356, 8.4");
values("0.0316, 0.03146, 0.03143, 0.03209, 0.03372, 0.03662, 0.041, 0.04696, \
0.05458, 0.06398");
}
}
timing() {
related_pin : "CLKN" ;
timing_type : hold_falling ;
fall_constraint(cnst_ctin_rtin_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.02, 0.07784, 0.2809, 0.6686, 1.273, 2.12, 3.235, 4.64, 6.356, 8.4");
values("-0.052, -0.033, 0.022, 0.133, 0.236, 0.357, 0.518, 0.699, 0.921, 1.161",\
"-0.07, -0.048, 0.01, 0.11, 0.22, 0.346, 0.499, 0.687, 0.903, 1.147",\
"-0.134, -0.117, -0.055, 0.044, 0.153, 0.277, 0.437, 0.62, 0.84, 1.079",\
"-0.249, -0.233, -0.181, -0.075, 0.026, 0.151, 0.309, 0.491, 0.706, 0.949",\
"-0.404, -0.379, -0.324, -0.227, -0.125, -0.005, 0.144, 0.323, 0.535, 0.779",\
"-0.571, -0.554, -0.503, -0.401, -0.295, -0.174, -0.031, 0.137, 0.347, 0.581",\
"-0.774, -0.75, -0.703, -0.602, -0.502, -0.377, -0.237, -0.07, 0.13, 0.36",\
"-1.005, -0.985, -0.93, -0.831, -0.728, -0.615, -0.474, -0.313, -0.115, 0.111",\
"-1.264, -1.241, -1.188, -1.091, -0.996, -0.88, -0.742, -0.578, -0.388, -0.168",\
"-1.553, -1.536, -1.483, -1.386, -1.291, -1.181, -1.043, -0.882, -0.694, -0.48");
}
rise_constraint(cnst_ctin_rtin_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.02, 0.07784, 0.2809, 0.6686, 1.273, 2.12, 3.235, 4.64, 6.356, 8.4");
values("0.252, 0.267, 0.33, 0.464, 0.638, 0.836, 1.054, 1.299, 1.583, 1.885",\
"0.237, 0.252, 0.315, 0.451, 0.621, 0.819, 1.044, 1.288, 1.562, 1.869",\
"0.19, 0.205, 0.271, 0.403, 0.58, 0.771, 0.996, 1.24, 1.519, 1.824",\
"0.145, 0.156, 0.218, 0.353, 0.528, 0.724, 0.944, 1.19, 1.467, 1.775",\
"0.115, 0.129, 0.196, 0.321, 0.494, 0.69, 0.911, 1.156, 1.441, 1.74",\
"0.1, 0.116, 0.178, 0.314, 0.485, 0.681, 0.904, 1.15, 1.428, 1.731",\
"0.117, 0.13, 0.2, 0.327, 0.499, 0.697, 0.916, 1.161, 1.441, 1.748",\
"0.161, 0.183, 0.243, 0.371, 0.539, 0.735, 0.957, 1.197, 1.481, 1.786",\
"0.254, 0.274, 0.332, 0.455, 0.612, 0.8, 1.019, 1.263, 1.543, 1.847",\
"0.385, 0.406, 0.462, 0.577, 0.724, 0.904, 1.119, 1.355, 1.63, 1.93");
}
}
timing() {
related_pin : "CLKN" ;
timing_type : setup_falling ;
fall_constraint(cnst_ctin_rtin_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.02, 0.07784, 0.2809, 0.6686, 1.273, 2.12, 3.235, 4.64, 6.356, 8.4");
values("0.573, 0.557, 0.482, 0.359, 0.21, 0.043, -0.138, -0.353, -0.587, -0.856",\
"0.587, 0.568, 0.498, 0.374, 0.22, 0.058, -0.121, -0.337, -0.574, -0.839",\
"0.654, 0.636, 0.566, 0.44, 0.29, 0.128, -0.057, -0.268, -0.509, -0.77",\
"0.794, 0.774, 0.699, 0.579, 0.425, 0.264, 0.073, -0.139, -0.373, -0.642",\
"0.981, 0.962, 0.895, 0.766, 0.62, 0.451, 0.259, 0.046, -0.192, -0.452",\
"1.214, 1.189, 1.121, 0.996, 0.836, 0.671, 0.479, 0.266, 0.027, -0.24",\
"1.467, 1.455, 1.377, 1.257, 1.09, 0.924, 0.734, 0.518, 0.274, 0.01",\
"1.767, 1.75, 1.677, 1.55, 1.388, 1.216, 1.018, 0.805, 0.564, 0.295",\
"2.104, 2.081, 2.012, 1.885, 1.718, 1.54, 1.349, 1.132, 0.89, 0.618",\
"2.48, 2.463, 2.39, 2.256, 2.089, 1.914, 1.713, 1.498, 1.249, 0.98");
}
rise_constraint(cnst_ctin_rtin_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.02, 0.07784, 0.2809, 0.6686, 1.273, 2.12, 3.235, 4.64, 6.356, 8.4");
values("0.281, 0.271, 0.211, 0.1, -0.053, -0.199, -0.369, -0.56, -0.781, -1.029",\
"0.301, 0.284, 0.223, 0.108, -0.038, -0.184, -0.348, -0.541, -0.754, -0.983",\
"0.346, 0.332, 0.279, 0.155, 0.009, -0.14, -0.305, -0.499, -0.703, -0.933",\
"0.428, 0.413, 0.351, 0.233, 0.068, -0.086, -0.25, -0.465, -0.646, -0.921",\
"0.507, 0.492, 0.426, 0.295, 0.132, -0.029, -0.222, -0.432, -0.645, -0.884",\
"0.566, 0.548, 0.484, 0.351, 0.184, 0.005, -0.193, -0.417, -0.649, -0.897",\
"0.601, 0.591, 0.526, 0.387, 0.217, 0.035, -0.174, -0.407, -0.65, -0.945",\
"0.624, 0.605, 0.535, 0.407, 0.229, 0.047, -0.175, -0.414, -0.67, -0.975",\
"0.618, 0.597, 0.532, 0.399, 0.22, 0.024, -0.193, -0.439, -0.707, -1.002",\
"0.577, 0.563, 0.492, 0.358, 0.179, -0.013, -0.233, -0.482, -0.758, -1.06");
}
}
}
pin(Q) {
direction : output ;
function : "IQ1" ;
max_capacitance : 0.3294 ;
max_transition : 8.4 ;
min_capacitance : 0.001 ;
output_voltage : default ;
related_ground_pin : VSS ;
related_power_pin : VDD ;
internal_power() {
related_pin : "CLKN" ;
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.003266, 0.01122, 0.02641, 0.05008, 0.08329, 0.127, 0.182, 0.2492, 0.3294");
values("0.06664, 0.06635, 0.06601, 0.0659, 0.06586, 0.06584, 0.06583, 0.06584, 0.06584, 0.06584",\
"0.06668, 0.06639, 0.06605, 0.06592, 0.06588, 0.06587, 0.06587, 0.06587, 0.06586, 0.06587",\
"0.06665, 0.06641, 0.06602, 0.0659, 0.06585, 0.06585, 0.06585, 0.06584, 0.06583, 0.06583",\
"0.06661, 0.06634, 0.06597, 0.06585, 0.0658, 0.06577, 0.06577, 0.06577, 0.06577, 0.06577",\
"0.06685, 0.06658, 0.0662, 0.06609, 0.06604, 0.06603, 0.06603, 0.06603, 0.06603, 0.06603",\
"0.06721, 0.06693, 0.06659, 0.06645, 0.06642, 0.06641, 0.06641, 0.06641, 0.06641, 0.0664",\
"0.06766, 0.06738, 0.06707, 0.06689, 0.06682, 0.06684, 0.0668, 0.0668, 0.0668, 0.0668",\
"0.06824, 0.06796, 0.06758, 0.06741, 0.06736, 0.06736, 0.06737, 0.06734, 0.06733, 0.06733",\
"0.06886, 0.06858, 0.06819, 0.06802, 0.06798, 0.06796, 0.06796, 0.06797, 0.06799, 0.06798",\
"0.06974, 0.06943, 0.06911, 0.06891, 0.06885, 0.06882, 0.06884, 0.06883, 0.06883, 0.06884");
}
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.003266, 0.01122, 0.02641, 0.05008, 0.08329, 0.127, 0.182, 0.2492, 0.3294");
values("0.0792, 0.07907, 0.07889, 0.07912, 0.07943, 0.07979, 0.08012, 0.08039, 0.08091, 0.08269",\
"0.07919, 0.07903, 0.07887, 0.07907, 0.07936, 0.07975, 0.08008, 0.08035, 0.08075, 0.0827",\
"0.07924, 0.07906, 0.07887, 0.07908, 0.07943, 0.07976, 0.08009, 0.08036, 0.08086, 0.08278",\
"0.07939, 0.07927, 0.07905, 0.07928, 0.07959, 0.07998, 0.08033, 0.08056, 0.08103, 0.08318",\
"0.07987, 0.07969, 0.07951, 0.07973, 0.08006, 0.08043, 0.08077, 0.08102, 0.08164, 0.08418",\
"0.08036, 0.08026, 0.08011, 0.0803, 0.08059, 0.08097, 0.08132, 0.08168, 0.08209, 0.08527",\
"0.08088, 0.08076, 0.08062, 0.08086, 0.08113, 0.08152, 0.08184, 0.08218, 0.08289, 0.08689",\
"0.08154, 0.08139, 0.08124, 0.08142, 0.08179, 0.08234, 0.08267, 0.08287, 0.08379, 0.08965",\
"0.08224, 0.08208, 0.08193, 0.08211, 0.08238, 0.08287, 0.08343, 0.08371, 0.08493, 0.09358",\
"0.08296, 0.0828, 0.08268, 0.0829, 0.08323, 0.08355, 0.0841, 0.08481, 0.08685, 0.1014");
}
}
timing() {
related_pin : "CLKN" ;
timing_type : falling_edge ;
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.003266, 0.01122, 0.02641, 0.05008, 0.08329, 0.127, 0.182, 0.2492, 0.3294");
values("1.147, 1.181, 1.275, 1.415, 1.593, 1.819, 2.105, 2.462, 2.897, 3.416",\
"1.165, 1.198, 1.293, 1.433, 1.611, 1.837, 2.123, 2.48, 2.914, 3.433",\
"1.231, 1.264, 1.359, 1.499, 1.677, 1.903, 2.189, 2.546, 2.981, 3.499",\
"1.365, 1.398, 1.493, 1.633, 1.811, 2.037, 2.323, 2.68, 3.115, 3.633",\
"1.553, 1.587, 1.682, 1.822, 2, 2.226, 2.512, 2.869, 3.303, 3.822",\
"1.766, 1.8, 1.895, 2.034, 2.213, 2.439, 2.725, 3.082, 3.517, 4.035",\
"2.003, 2.037, 2.132, 2.272, 2.45, 2.676, 2.962, 3.319, 3.754, 4.272",\
"2.269, 2.303, 2.397, 2.537, 2.716, 2.942, 3.228, 3.585, 4.02, 4.537",\
"2.564, 2.598, 2.693, 2.833, 3.011, 3.237, 3.524, 3.88, 4.315, 4.833",\
"2.89, 2.923, 3.018, 3.159, 3.337, 3.563, 3.849, 4.206, 4.641, 5.16");
}
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.003266, 0.01122, 0.02641, 0.05008, 0.08329, 0.127, 0.182, 0.2492, 0.3294");
values("1.284, 1.323, 1.446, 1.666, 2.001, 2.469, 3.084, 3.858, 4.803, 5.93",\
"1.301, 1.34, 1.463, 1.683, 2.018, 2.486, 3.101, 3.875, 4.819, 5.946",\
"1.367, 1.407, 1.53, 1.749, 2.084, 2.552, 3.167, 3.941, 4.886, 6.013",\
"1.502, 1.541, 1.664, 1.884, 2.219, 2.687, 3.302, 4.076, 5.021, 6.147",\
"1.691, 1.73, 1.853, 2.072, 2.408, 2.875, 3.49, 4.264, 5.209, 6.337",\
"1.904, 1.944, 2.067, 2.286, 2.622, 3.09, 3.704, 4.477, 5.423, 6.55",\
"2.141, 2.181, 2.304, 2.523, 2.859, 3.327, 3.941, 4.715, 5.661, 6.787",\
"2.407, 2.447, 2.57, 2.79, 3.125, 3.593, 4.207, 4.982, 5.927, 7.054",\
"2.703, 2.743, 2.866, 3.085, 3.421, 3.889, 4.503, 5.276, 6.22, 7.346",\
"3.027, 3.066, 3.189, 3.409, 3.744, 4.212, 4.827, 5.6, 6.544, 7.669");
}
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.003266, 0.01122, 0.02641, 0.05008, 0.08329, 0.127, 0.182, 0.2492, 0.3294");
values("0.1648, 0.198, 0.2992, 0.4572, 0.6902, 1.034, 1.51, 2.121, 2.879, 3.784",\
"0.1648, 0.1982, 0.2992, 0.4572, 0.6904, 1.035, 1.509, 2.121, 2.877, 3.784",\
"0.1648, 0.1984, 0.2992, 0.4572, 0.6902, 1.034, 1.51, 2.122, 2.879, 3.784",\
"0.165, 0.1984, 0.2992, 0.4576, 0.6904, 1.034, 1.51, 2.12, 2.879, 3.784",\
"0.1648, 0.1986, 0.2998, 0.4574, 0.6906, 1.034, 1.509, 2.122, 2.879, 3.783",\
"0.165, 0.199, 0.2996, 0.4576, 0.6902, 1.034, 1.507, 2.123, 2.874, 3.78",\
"0.1654, 0.1988, 0.2996, 0.4572, 0.6904, 1.034, 1.507, 2.121, 2.874, 3.777",\
"0.1658, 0.1998, 0.3002, 0.4576, 0.6906, 1.034, 1.507, 2.12, 2.876, 3.777",\
"0.166, 0.2004, 0.3004, 0.4582, 0.6918, 1.034, 1.508, 2.121, 2.873, 3.775",\
"0.1664, 0.2, 0.301, 0.4584, 0.691, 1.035, 1.508, 2.12, 2.877, 3.775");
}
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.003266, 0.01122, 0.02641, 0.05008, 0.08329, 0.127, 0.182, 0.2492, 0.3294");
values("0.184, 0.2354, 0.419, 0.7896, 1.377, 2.211, 3.311, 4.694, 6.401, 8.418",\
"0.184, 0.2354, 0.419, 0.7896, 1.38, 2.212, 3.311, 4.694, 6.408, 8.431",\
"0.1838, 0.2354, 0.419, 0.7894, 1.377, 2.211, 3.311, 4.694, 6.402, 8.419",\
"0.1842, 0.2354, 0.419, 0.789, 1.377, 2.215, 3.31, 4.695, 6.406, 8.418",\
"0.1836, 0.2356, 0.4188, 0.7894, 1.377, 2.211, 3.309, 4.695, 6.403, 8.428",\
"0.1834, 0.235, 0.419, 0.7896, 1.379, 2.215, 3.31, 4.696, 6.407, 8.432",\
"0.1834, 0.2352, 0.419, 0.7894, 1.379, 2.212, 3.309, 4.696, 6.403, 8.418",\
"0.183, 0.2356, 0.4184, 0.789, 1.378, 2.21, 3.316, 4.696, 6.403, 8.423",\
"0.1832, 0.2342, 0.4186, 0.7894, 1.377, 2.211, 3.313, 4.698, 6.386, 8.428",\
"0.1826, 0.2354, 0.4184, 0.7896, 1.377, 2.212, 3.31, 4.695, 6.386, 8.418");
}
}
}
}