blob: 4e426f3ed236922b25a95da2d8c82ac41afc5078 [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__dffnq_1) {
area : 65.856000 ;
ff(IQ1,IQN1) {
clocked_on : "(!CLKN)" ;
next_state : "D" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "!CLKN&!D" ;
value : "8.027712e-05" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "!CLKN&D" ;
value : "8.425692e-05" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "CLKN&!D" ;
value : "6.402132e-05" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "CLKN&D" ;
value : "6.3657e-05" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
value : "8.425692e-05" ;
}
pg_pin(VDD) {
voltage_name : VDD ;
pg_type : primary_power ;
}
pg_pin(VSS) {
voltage_name : VSS ;
pg_type : primary_ground ;
}
pin(CLKN) {
capacitance : 0.003183 ;
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 : 1.912 ;
min_pulse_width_high : 0.679 ;
min_pulse_width_low : 0.752 ;
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.04454, 0.04437, 0.04405, 0.04396, 0.04436, 0.04527, 0.04671, \
0.04871, 0.05134, 0.0546");
}
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.02868, 0.02859, 0.02837, 0.02828, 0.02848, 0.02918, 0.0304, \
0.03218, 0.03452, 0.03752");
}
}
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.04452, 0.04435, 0.04403, 0.04394, 0.04433, 0.04522, 0.04667, \
0.04868, 0.05127, 0.05455");
}
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.02872, 0.02863, 0.02841, 0.02832, 0.02851, 0.02923, 0.03043, \
0.03216, 0.03456, 0.03755");
}
}
timing() {
related_pin : "CLKN" ;
sdf_cond : "ENABLE_NOT_D === 1'b1" ;
timing_type : min_pulse_width ;
when : "!D" ;
fall_constraint(scalar) {
values("0.644");
}
rise_constraint(scalar) {
values("0.679");
}
}
timing() {
related_pin : "CLKN" ;
sdf_cond : "ENABLE_D === 1'b1" ;
timing_type : min_pulse_width ;
when : "D" ;
fall_constraint(scalar) {
values("0.752");
}
rise_constraint(scalar) {
values("0.549");
}
}
timing() {
related_pin : "CLKN" ;
sdf_cond : "ENABLE_NOT_D === 1'b1" ;
timing_type : minimum_period ;
when : "!D" ;
fall_constraint(scalar) {
values("1.398");
}
}
timing() {
related_pin : "CLKN" ;
sdf_cond : "ENABLE_D === 1'b1" ;
timing_type : minimum_period ;
when : "D" ;
fall_constraint(scalar) {
values("1.912");
}
}
}
pin(D) {
capacitance : 0.002294 ;
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 : "!CLKN" ;
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.008877, 0.008611, 0.008477, 0.008734, 0.009366, 0.01038, 0.01184, \
0.0138, 0.0163, 0.01937");
}
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.001134, 0.00103, 0.0009045, 0.00103, 0.001497, 0.002354, 0.003623, \
0.005335, 0.007503, 0.01016");
}
}
internal_power() {
when : "CLKN" ;
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.02899, 0.02884, 0.02868, 0.02873, 0.02923, 0.03016, 0.03152, \
0.03332, 0.03565, 0.03854");
}
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.0195, 0.01943, 0.01935, 0.01943, 0.01974, 0.0204, 0.02143, 0.0229, \
0.02486, 0.0273");
}
}
timing() {
related_pin : "CLKN" ;
timing_type : hold_falling ;
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.017, 0.034, 0.092, 0.2, 0.335, 0.475, 0.624, 0.795, 1.001, 1.224",\
"0.005, 0.015, 0.078, 0.184, 0.319, 0.464, 0.611, 0.782, 0.981, 1.213",\
"-0.054, -0.046, 0.013, 0.125, 0.257, 0.401, 0.549, 0.726, 0.923, 1.148",\
"-0.177, -0.16, -0.106, 0.006, 0.142, 0.279, 0.43, 0.6, 0.8, 1.031",\
"-0.341, -0.325, -0.264, -0.159, -0.027, 0.117, 0.26, 0.435, 0.632, 0.865",\
"-0.512, -0.503, -0.448, -0.338, -0.208, -0.069, 0.076, 0.246, 0.445, 0.672",\
"-0.719, -0.708, -0.652, -0.543, -0.417, -0.281, -0.136, 0.036, 0.233, 0.456",\
"-0.947, -0.936, -0.877, -0.776, -0.649, -0.515, -0.371, -0.201, -0.008, 0.215",\
"-1.217, -1.206, -1.148, -1.037, -0.919, -0.787, -0.647, -0.476, -0.278, -0.052",\
"-1.507, -1.498, -1.439, -1.334, -1.217, -1.09, -0.951, -0.781, -0.585, -0.366");
}
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.281, 0.298, 0.363, 0.48, 0.65, 0.842, 1.046, 1.269, 1.51, 1.78",\
"0.27, 0.284, 0.342, 0.464, 0.632, 0.83, 1.033, 1.252, 1.501, 1.773",\
"0.227, 0.244, 0.3, 0.418, 0.594, 0.785, 0.988, 1.215, 1.459, 1.729",\
"0.189, 0.21, 0.265, 0.381, 0.557, 0.747, 0.953, 1.172, 1.421, 1.69",\
"0.172, 0.187, 0.245, 0.359, 0.536, 0.725, 0.931, 1.152, 1.395, 1.663",\
"0.174, 0.199, 0.248, 0.362, 0.535, 0.721, 0.924, 1.148, 1.39, 1.661",\
"0.2, 0.22, 0.276, 0.39, 0.567, 0.743, 0.949, 1.173, 1.419, 1.682",\
"0.266, 0.281, 0.34, 0.449, 0.613, 0.797, 0.999, 1.222, 1.459, 1.731",\
"0.355, 0.373, 0.425, 0.541, 0.705, 0.884, 1.085, 1.297, 1.54, 1.808",\
"0.486, 0.508, 0.562, 0.663, 0.823, 0.995, 1.189, 1.407, 1.647, 1.909");
}
}
timing() {
related_pin : "CLKN" ;
timing_type : setup_falling ;
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.527, 0.514, 0.45, 0.329, 0.191, 0.033, -0.147, -0.35, -0.58, -0.826",\
"0.543, 0.524, 0.461, 0.35, 0.206, 0.045, -0.133, -0.332, -0.564, -0.812",\
"0.605, 0.585, 0.518, 0.411, 0.274, 0.103, -0.075, -0.278, -0.5, -0.755",\
"0.729, 0.711, 0.642, 0.527, 0.394, 0.225, 0.052, -0.156, -0.381, -0.63",\
"0.916, 0.895, 0.831, 0.721, 0.574, 0.414, 0.236, 0.027, -0.201, -0.448",\
"1.151, 1.127, 1.06, 0.948, 0.809, 0.643, 0.458, 0.252, 0.023, -0.235",\
"1.407, 1.393, 1.324, 1.21, 1.069, 0.891, 0.71, 0.501, 0.266, 0.008",\
"1.705, 1.684, 1.614, 1.494, 1.348, 1.175, 0.986, 0.775, 0.54, 0.279",\
"2.025, 2.002, 1.942, 1.819, 1.667, 1.49, 1.306, 1.083, 0.848, 0.588",\
"2.386, 2.366, 2.302, 2.181, 2.033, 1.846, 1.648, 1.439, 1.193, 0.934");
}
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.195, 0.177, 0.121, 0.002, -0.18, -0.371, -0.597, -0.833, -1.096, -1.382",\
"0.213, 0.195, 0.133, 0.013, -0.165, -0.359, -0.576, -0.811, -1.077, -1.364",\
"0.257, 0.236, 0.177, 0.06, -0.121, -0.323, -0.535, -0.767, -1.036, -1.319",\
"0.316, 0.3, 0.242, 0.12, -0.056, -0.255, -0.47, -0.712, -0.974, -1.263",\
"0.378, 0.357, 0.3, 0.185, 0, -0.194, -0.407, -0.649, -0.911, -1.198",\
"0.428, 0.407, 0.339, 0.22, 0.046, -0.156, -0.368, -0.603, -0.863, -1.151",\
"0.446, 0.424, 0.367, 0.245, 0.067, -0.134, -0.349, -0.582, -0.845, -1.132",\
"0.444, 0.428, 0.367, 0.236, 0.056, -0.144, -0.353, -0.584, -0.846, -1.129",\
"0.409, 0.391, 0.335, 0.213, 0.028, -0.173, -0.388, -0.62, -0.878, -1.157",\
"0.352, 0.335, 0.275, 0.147, -0.027, -0.233, -0.446, -0.679, -0.939, -1.219");
}
}
}
pin(Q) {
direction : output ;
function : "IQ1" ;
max_capacitance : 0.2196 ;
max_transition : 6.8 ;
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.0668, 0.2311, 0.5448, 1.033, 1.719, 2.622, 3.758, 5.146, 6.8");
index_2("0.001, 0.002509, 0.007805, 0.01792, 0.03368, 0.05579, 0.08488, 0.1215, 0.1663, 0.2196");
values("0.04671, 0.04676, 0.04693, 0.04712, 0.04728, 0.04737, 0.04743, 0.04746, 0.04748, 0.0475",\
"0.04673, 0.04679, 0.04695, 0.04712, 0.04729, 0.04737, 0.04744, 0.04747, 0.0475, 0.04751",\
"0.04674, 0.04677, 0.04696, 0.04717, 0.04732, 0.0474, 0.04744, 0.04748, 0.04751, 0.04755",\
"0.04668, 0.04674, 0.0469, 0.04711, 0.04726, 0.04735, 0.0474, 0.04744, 0.04746, 0.04748",\
"0.04672, 0.04676, 0.04691, 0.04713, 0.04729, 0.04737, 0.04743, 0.04747, 0.04749, 0.0475",\
"0.04677, 0.04682, 0.04698, 0.04715, 0.04733, 0.04744, 0.04748, 0.04751, 0.04754, 0.04755",\
"0.04686, 0.04695, 0.04707, 0.04728, 0.04744, 0.04752, 0.04758, 0.04762, 0.04764, 0.04766",\
"0.04697, 0.04704, 0.0472, 0.04739, 0.04754, 0.04763, 0.04769, 0.04773, 0.04775, 0.04777",\
"0.0471, 0.04716, 0.04734, 0.04752, 0.04768, 0.04776, 0.04781, 0.04785, 0.04789, 0.0479",\
"0.04729, 0.04733, 0.04748, 0.04769, 0.04784, 0.04793, 0.048, 0.04803, 0.04806, 0.04807");
}
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.002509, 0.007805, 0.01792, 0.03368, 0.05579, 0.08488, 0.1215, 0.1663, 0.2196");
values("0.05956, 0.05955, 0.0597, 0.05994, 0.06022, 0.06052, 0.06071, 0.06095, 0.06142, 0.06141",\
"0.05957, 0.05957, 0.05965, 0.05993, 0.0602, 0.06052, 0.06073, 0.06105, 0.0611, 0.06169",\
"0.05956, 0.05958, 0.05968, 0.05995, 0.0602, 0.06053, 0.06075, 0.06091, 0.06136, 0.06134",\
"0.05957, 0.05956, 0.0597, 0.05997, 0.0602, 0.06054, 0.06073, 0.06098, 0.06141, 0.06167",\
"0.05987, 0.05988, 0.05998, 0.06026, 0.06051, 0.06083, 0.06108, 0.06128, 0.06173, 0.06197",\
"0.06027, 0.06026, 0.06038, 0.06067, 0.06091, 0.06123, 0.06146, 0.06169, 0.0621, 0.06229",\
"0.06063, 0.06065, 0.06075, 0.06101, 0.06132, 0.06166, 0.06193, 0.06219, 0.06218, 0.06245",\
"0.06096, 0.06096, 0.06106, 0.06131, 0.06165, 0.06191, 0.06212, 0.06237, 0.06279, 0.06283",\
"0.06134, 0.06134, 0.06153, 0.06171, 0.06202, 0.06237, 0.06267, 0.06279, 0.06309, 0.06367",\
"0.06174, 0.06176, 0.06186, 0.06216, 0.06239, 0.06266, 0.06318, 0.0635, 0.06346, 0.06424");
}
}
timing() {
related_pin : "CLKN" ;
timing_type : falling_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.002509, 0.007805, 0.01792, 0.03368, 0.05579, 0.08488, 0.1215, 0.1663, 0.2196");
values("0.9214, 0.9447, 1.009, 1.106, 1.235, 1.406, 1.628, 1.907, 2.248, 2.653",\
"0.938, 0.9613, 1.026, 1.123, 1.252, 1.423, 1.645, 1.924, 2.264, 2.67",\
"0.9991, 1.022, 1.087, 1.184, 1.313, 1.484, 1.706, 1.985, 2.325, 2.731",\
"1.121, 1.144, 1.208, 1.305, 1.435, 1.605, 1.827, 2.106, 2.447, 2.852",\
"1.301, 1.324, 1.389, 1.486, 1.615, 1.786, 2.008, 2.287, 2.627, 3.033",\
"1.51, 1.534, 1.598, 1.696, 1.825, 1.996, 2.217, 2.497, 2.837, 3.243",\
"1.735, 1.758, 1.823, 1.92, 2.049, 2.22, 2.442, 2.721, 3.062, 3.467",\
"1.977, 2, 2.065, 2.162, 2.291, 2.462, 2.684, 2.963, 3.303, 3.709",\
"2.24, 2.263, 2.328, 2.425, 2.555, 2.726, 2.948, 3.227, 3.567, 3.972",\
"2.528, 2.551, 2.616, 2.714, 2.843, 3.014, 3.236, 3.515, 3.855, 4.261");
}
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.002509, 0.007805, 0.01792, 0.03368, 0.05579, 0.08488, 0.1215, 0.1663, 0.2196");
values("1.19, 1.223, 1.325, 1.509, 1.79, 2.184, 2.701, 3.351, 4.145, 5.091",\
"1.207, 1.239, 1.341, 1.525, 1.807, 2.201, 2.717, 3.367, 4.161, 5.106",\
"1.268, 1.3, 1.402, 1.586, 1.868, 2.261, 2.778, 3.428, 4.222, 5.168",\
"1.39, 1.422, 1.524, 1.708, 1.99, 2.383, 2.9, 3.55, 4.344, 5.29",\
"1.572, 1.604, 1.706, 1.89, 2.172, 2.566, 3.082, 3.733, 4.526, 5.472",\
"1.786, 1.819, 1.92, 2.104, 2.386, 2.78, 3.296, 3.946, 4.74, 5.686",\
"2.017, 2.049, 2.151, 2.335, 2.617, 3.011, 3.527, 4.177, 4.97, 5.917",\
"2.265, 2.297, 2.399, 2.583, 2.865, 3.258, 3.775, 4.425, 5.219, 6.165",\
"2.535, 2.567, 2.669, 2.853, 3.135, 3.528, 4.045, 4.695, 5.489, 6.434",\
"2.829, 2.861, 2.963, 3.147, 3.429, 3.822, 4.339, 4.99, 5.783, 6.728");
}
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.002509, 0.007805, 0.01792, 0.03368, 0.05579, 0.08488, 0.1215, 0.1663, 0.2196");
values("0.11, 0.1311, 0.1979, 0.3138, 0.496, 0.7668, 1.138, 1.608, 2.184, 2.876",\
"0.1103, 0.1312, 0.1976, 0.3138, 0.4956, 0.7668, 1.137, 1.609, 2.186, 2.875",\
"0.1104, 0.131, 0.1976, 0.314, 0.495, 0.7666, 1.137, 1.609, 2.186, 2.872",\
"0.11, 0.131, 0.1976, 0.3138, 0.4956, 0.7674, 1.138, 1.607, 2.184, 2.876",\
"0.1102, 0.1312, 0.1976, 0.314, 0.496, 0.7664, 1.138, 1.609, 2.185, 2.875",\
"0.1102, 0.131, 0.1976, 0.3142, 0.495, 0.7678, 1.137, 1.609, 2.187, 2.872",\
"0.1108, 0.1314, 0.198, 0.314, 0.4964, 0.7662, 1.137, 1.607, 2.184, 2.875",\
"0.1112, 0.1318, 0.198, 0.3146, 0.4962, 0.7672, 1.136, 1.606, 2.182, 2.873",\
"0.1112, 0.1326, 0.1984, 0.3146, 0.4962, 0.7666, 1.138, 1.607, 2.181, 2.868",\
"0.1114, 0.1328, 0.1986, 0.3146, 0.496, 0.7664, 1.138, 1.607, 2.185, 2.875");
}
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.002509, 0.007805, 0.01792, 0.03368, 0.05579, 0.08488, 0.1215, 0.1663, 0.2196");
values("0.147, 0.1868, 0.337, 0.6384, 1.115, 1.792, 2.682, 3.806, 5.177, 6.805",\
"0.147, 0.1874, 0.337, 0.6386, 1.117, 1.792, 2.684, 3.806, 5.17, 6.811",\
"0.1472, 0.1868, 0.3372, 0.6382, 1.117, 1.793, 2.68, 3.805, 5.178, 6.814",\
"0.147, 0.187, 0.337, 0.6386, 1.117, 1.792, 2.682, 3.807, 5.175, 6.816",\
"0.1474, 0.187, 0.3372, 0.6376, 1.117, 1.792, 2.681, 3.806, 5.176, 6.815",\
"0.1472, 0.187, 0.337, 0.6378, 1.118, 1.791, 2.682, 3.807, 5.174, 6.816",\
"0.1462, 0.1864, 0.337, 0.6386, 1.117, 1.793, 2.683, 3.804, 5.176, 6.805",\
"0.1464, 0.1862, 0.337, 0.638, 1.119, 1.791, 2.681, 3.807, 5.176, 6.815",\
"0.1464, 0.1862, 0.337, 0.6386, 1.116, 1.79, 2.679, 3.805, 5.17, 6.815",\
"0.1466, 0.1866, 0.3366, 0.6378, 1.116, 1.791, 2.681, 3.803, 5.171, 6.798");
}
}
}
}