blob: a4406b9a7bfcbc6338b521cb300aabea20e7266f [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 : "0.003408372" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "!CLKN&D" ;
value : "0.003084048" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "CLKN&!D" ;
value : "0.002788038" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "CLKN&D" ;
value : "0.00307098" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
value : "0.003408372" ;
}
pg_pin(VDD) {
voltage_name : VDD ;
pg_type : primary_power ;
}
pg_pin(VSS) {
voltage_name : VSS ;
pg_type : primary_ground ;
}
pin(CLKN) {
capacitance : 0.003342 ;
clock : true ;
direction : input ;
driver_waveform_rise : driver_waveform_default_rise ;
driver_waveform_fall : driver_waveform_default_fall ;
input_voltage : default ;
max_transition : 8.9 ;
min_period : 2.481 ;
min_pulse_width_high : 0.956 ;
min_pulse_width_low : 1.003 ;
related_ground_pin : VSS ;
related_power_pin : VDD ;
internal_power() {
when : "!D" ;
fall_power(pwr_tin_10) {
index_1("0.02, 0.08129, 0.2964, 0.7073, 1.347, 2.245, 3.427, 4.916, 6.734, 8.9");
values("0.04665, 0.04649, 0.04635, 0.04693, 0.04892, 0.05228, 0.05713, \
0.06367, 0.07199, 0.08221");
}
rise_power(pwr_tin_10) {
index_1("0.02, 0.08129, 0.2964, 0.7073, 1.347, 2.245, 3.427, 4.916, 6.734, 8.9");
values("0.02998, 0.0299, 0.02982, 0.03038, 0.03189, 0.03464, 0.0388, 0.04456, \
0.05187, 0.06087");
}
}
internal_power() {
when : "D" ;
fall_power(pwr_tin_10) {
index_1("0.02, 0.08129, 0.2964, 0.7073, 1.347, 2.245, 3.427, 4.916, 6.734, 8.9");
values("0.04655, 0.0464, 0.04625, 0.04685, 0.04881, 0.05218, 0.05702, \
0.06355, 0.07186, 0.08213");
}
rise_power(pwr_tin_10) {
index_1("0.02, 0.08129, 0.2964, 0.7073, 1.347, 2.245, 3.427, 4.916, 6.734, 8.9");
values("0.03004, 0.02997, 0.02988, 0.03043, 0.03193, 0.03467, 0.03886, \
0.04459, 0.05194, 0.06088");
}
}
timing() {
related_pin : "CLKN" ;
sdf_cond : "ENABLE_NOT_D === 1'b1" ;
timing_type : min_pulse_width ;
when : "!D" ;
fall_constraint(scalar) {
values("0.845");
}
rise_constraint(scalar) {
values("0.956");
}
}
timing() {
related_pin : "CLKN" ;
sdf_cond : "ENABLE_D === 1'b1" ;
timing_type : min_pulse_width ;
when : "D" ;
fall_constraint(scalar) {
values("1.003");
}
rise_constraint(scalar) {
values("0.746");
}
}
timing() {
related_pin : "CLKN" ;
sdf_cond : "ENABLE_NOT_D === 1'b1" ;
timing_type : minimum_period ;
when : "!D" ;
fall_constraint(scalar) {
values("1.925");
}
}
timing() {
related_pin : "CLKN" ;
sdf_cond : "ENABLE_D === 1'b1" ;
timing_type : minimum_period ;
when : "D" ;
fall_constraint(scalar) {
values("2.481");
}
}
}
pin(D) {
capacitance : 0.002392 ;
direction : input ;
driver_waveform_rise : driver_waveform_default_rise ;
driver_waveform_fall : driver_waveform_default_fall ;
input_voltage : default ;
max_transition : 8.9 ;
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.08129, 0.2964, 0.7073, 1.347, 2.245, 3.427, 4.916, 6.734, 8.9");
values("0.009499, 0.009234, 0.009334, 0.01025, 0.01208, 0.01494, 0.01886, \
0.02399, 0.03036, 0.03805");
}
rise_power(pwr_tin_10) {
index_1("0.02, 0.08129, 0.2964, 0.7073, 1.347, 2.245, 3.427, 4.916, 6.734, 8.9");
values("0.001344, 0.001261, 0.001312, 0.001946, 0.003382, 0.005713, 0.009018, \
0.01333, 0.01869, 0.02517");
}
}
internal_power() {
when : "CLKN" ;
fall_power(pwr_tin_10) {
index_1("0.02, 0.08129, 0.2964, 0.7073, 1.347, 2.245, 3.427, 4.916, 6.734, 8.9");
values("0.03186, 0.03172, 0.03172, 0.03233, 0.03399, 0.03674, 0.04064, \
0.04582, 0.05238, 0.06039");
}
rise_power(pwr_tin_10) {
index_1("0.02, 0.08129, 0.2964, 0.7073, 1.347, 2.245, 3.427, 4.916, 6.734, 8.9");
values("0.02104, 0.02098, 0.02104, 0.02161, 0.02286, 0.02496, 0.02805, \
0.03221, 0.03754, 0.04409");
}
}
timing() {
related_pin : "CLKN" ;
timing_type : hold_falling ;
fall_constraint(cnst_ctin_rtin_10x10) {
index_1("0.02, 0.08129, 0.2964, 0.7073, 1.347, 2.245, 3.427, 4.916, 6.734, 8.9");
index_2("0.02, 0.08129, 0.2964, 0.7073, 1.347, 2.245, 3.427, 4.916, 6.734, 8.9");
values("0.017, 0.036, 0.1, 0.231, 0.385, 0.548, 0.746, 0.97, 1.23, 1.52",\
"-0.001, 0.016, 0.084, 0.213, 0.365, 0.534, 0.729, 0.954, 1.212, 1.5",\
"-0.072, -0.059, 0.016, 0.141, 0.295, 0.456, 0.658, 0.88, 1.136, 1.424",\
"-0.212, -0.203, -0.135, -0.008, 0.146, 0.31, 0.506, 0.733, 0.991, 1.275",\
"-0.416, -0.397, -0.33, -0.207, -0.056, 0.113, 0.3, 0.525, 0.781, 1.064",\
"-0.649, -0.625, -0.562, -0.438, -0.294, -0.134, 0.057, 0.285, 0.535, 0.815",\
"-0.921, -0.897, -0.835, -0.718, -0.572, -0.413, -0.226, -0.008, 0.242, 0.521",\
"-1.238, -1.225, -1.155, -1.037, -0.901, -0.746, -0.562, -0.349, -0.101, 0.174",\
"-1.608, -1.585, -1.52, -1.407, -1.27, -1.126, -0.945, -0.73, -0.483, -0.216",\
"-2.026, -2.003, -1.94, -1.825, -1.693, -1.551, -1.377, -1.173, -0.93, -0.662");
}
rise_constraint(cnst_ctin_rtin_10x10) {
index_1("0.02, 0.08129, 0.2964, 0.7073, 1.347, 2.245, 3.427, 4.916, 6.734, 8.9");
index_2("0.02, 0.08129, 0.2964, 0.7073, 1.347, 2.245, 3.427, 4.916, 6.734, 8.9");
values("0.343, 0.359, 0.427, 0.566, 0.76, 0.987, 1.234, 1.518, 1.83, 2.182",\
"0.328, 0.345, 0.416, 0.559, 0.746, 0.971, 1.225, 1.503, 1.818, 2.166",\
"0.282, 0.302, 0.37, 0.51, 0.706, 0.924, 1.181, 1.457, 1.777, 2.123",\
"0.243, 0.271, 0.335, 0.472, 0.663, 0.89, 1.135, 1.417, 1.74, 2.085",\
"0.243, 0.262, 0.332, 0.468, 0.659, 0.881, 1.127, 1.413, 1.73, 2.074",\
"0.276, 0.292, 0.359, 0.497, 0.692, 0.908, 1.157, 1.433, 1.749, 2.099",\
"0.35, 0.367, 0.436, 0.566, 0.757, 0.972, 1.218, 1.5, 1.812, 2.159",\
"0.462, 0.483, 0.552, 0.688, 0.867, 1.082, 1.329, 1.609, 1.917, 2.261",\
"0.637, 0.663, 0.728, 0.86, 1.038, 1.241, 1.481, 1.755, 2.068, 2.411",\
"0.891, 0.906, 0.971, 1.096, 1.258, 1.457, 1.692, 1.963, 2.266, 2.604");
}
}
timing() {
related_pin : "CLKN" ;
timing_type : setup_falling ;
fall_constraint(cnst_ctin_rtin_10x10) {
index_1("0.02, 0.08129, 0.2964, 0.7073, 1.347, 2.245, 3.427, 4.916, 6.734, 8.9");
index_2("0.02, 0.08129, 0.2964, 0.7073, 1.347, 2.245, 3.427, 4.916, 6.734, 8.9");
values("0.716, 0.7, 0.621, 0.486, 0.304, 0.111, -0.112, -0.354, -0.637, -0.949",\
"0.737, 0.714, 0.64, 0.498, 0.326, 0.128, -0.092, -0.337, -0.623, -0.931",\
"0.804, 0.789, 0.716, 0.573, 0.395, 0.201, -0.013, -0.27, -0.546, -0.858",\
"0.966, 0.934, 0.861, 0.724, 0.544, 0.353, 0.128, -0.12, -0.395, -0.709",\
"1.189, 1.159, 1.091, 0.946, 0.77, 0.574, 0.355, 0.102, -0.174, -0.491",\
"1.479, 1.457, 1.378, 1.245, 1.062, 0.858, 0.638, 0.385, 0.098, -0.214",\
"1.825, 1.808, 1.724, 1.579, 1.398, 1.198, 0.967, 0.709, 0.424, 0.113",\
"2.226, 2.199, 2.125, 1.976, 1.795, 1.59, 1.354, 1.094, 0.806, 0.486",\
"2.694, 2.664, 2.59, 2.445, 2.248, 2.036, 1.8, 1.54, 1.247, 0.933",\
"3.22, 3.19, 3.11, 2.965, 2.77, 2.554, 2.314, 2.047, 1.75, 1.429");
}
rise_constraint(cnst_ctin_rtin_10x10) {
index_1("0.02, 0.08129, 0.2964, 0.7073, 1.347, 2.245, 3.427, 4.916, 6.734, 8.9");
index_2("0.02, 0.08129, 0.2964, 0.7073, 1.347, 2.245, 3.427, 4.916, 6.734, 8.9");
values("0.298, 0.281, 0.212, 0.086, -0.11, -0.334, -0.598, -0.884, -1.212, -1.584",\
"0.311, 0.297, 0.23, 0.093, -0.095, -0.321, -0.579, -0.873, -1.195, -1.564",\
"0.362, 0.343, 0.274, 0.139, -0.053, -0.272, -0.527, -0.822, -1.153, -1.518",\
"0.427, 0.411, 0.343, 0.205, 0.011, -0.212, -0.465, -0.754, -1.09, -1.455",\
"0.492, 0.468, 0.402, 0.261, 0.062, -0.158, -0.413, -0.702, -1.035, -1.397",\
"0.524, 0.503, 0.43, 0.287, 0.094, -0.134, -0.385, -0.677, -1.001, -1.364",\
"0.529, 0.499, 0.433, 0.284, 0.087, -0.138, -0.393, -0.683, -1.012, -1.377",\
"0.488, 0.466, 0.392, 0.25, 0.051, -0.177, -0.437, -0.722, -1.051, -1.42",\
"0.407, 0.391, 0.315, 0.169, -0.031, -0.261, -0.516, -0.806, -1.134, -1.498",\
"0.282, 0.264, 0.188, 0.043, -0.156, -0.388, -0.645, -0.932, -1.259, -1.63");
}
}
}
pin(Q) {
direction : output ;
function : "IQ1" ;
max_capacitance : 0.2155 ;
max_transition : 8.9 ;
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.08129, 0.2964, 0.7073, 1.347, 2.245, 3.427, 4.916, 6.734, 8.9");
index_2("0.001, 0.00248, 0.007676, 0.0176, 0.03306, 0.05475, 0.08329, 0.1192, 0.1631, 0.2155");
values("0.0524, 0.05228, 0.05217, 0.05216, 0.05217, 0.05217, 0.05217, 0.05218, 0.05218, 0.05218",\
"0.05241, 0.0523, 0.05218, 0.05215, 0.05218, 0.05217, 0.05218, 0.05218, 0.05218, 0.05218",\
"0.05238, 0.05228, 0.05217, 0.05214, 0.05214, 0.05216, 0.05215, 0.05215, 0.05216, 0.05216",\
"0.05241, 0.05231, 0.05219, 0.05216, 0.05218, 0.05219, 0.05218, 0.05219, 0.05218, 0.05218",\
"0.0526, 0.0525, 0.05242, 0.05238, 0.05236, 0.05238, 0.05238, 0.05238, 0.05238, 0.05238",\
"0.05297, 0.05288, 0.05273, 0.05272, 0.05273, 0.05273, 0.05275, 0.05273, 0.05274, 0.05275",\
"0.05341, 0.0533, 0.05318, 0.05314, 0.05313, 0.05314, 0.05314, 0.05315, 0.05314, 0.05314",\
"0.0539, 0.0538, 0.0537, 0.05364, 0.05365, 0.05364, 0.05365, 0.05365, 0.05365, 0.05364",\
"0.05459, 0.05447, 0.05434, 0.05429, 0.05427, 0.0543, 0.05432, 0.05434, 0.05434, 0.05432",\
"0.05538, 0.05524, 0.05512, 0.05508, 0.05507, 0.05507, 0.05508, 0.0551, 0.05508, 0.05509");
}
rise_power(pwr_tin_oload_10x10) {
index_1("0.02, 0.08129, 0.2964, 0.7073, 1.347, 2.245, 3.427, 4.916, 6.734, 8.9");
index_2("0.001, 0.00248, 0.007676, 0.0176, 0.03306, 0.05475, 0.08329, 0.1192, 0.1631, 0.2155");
values("0.06752, 0.06738, 0.06717, 0.0672, 0.06732, 0.06752, 0.06777, 0.06794, 0.06832, 0.07009",\
"0.06748, 0.06741, 0.06722, 0.06723, 0.06738, 0.06756, 0.06779, 0.06798, 0.06836, 0.07011",\
"0.06747, 0.06736, 0.06717, 0.06719, 0.0673, 0.0675, 0.06777, 0.06807, 0.06828, 0.07019",\
"0.06759, 0.06753, 0.06733, 0.06736, 0.06746, 0.06764, 0.0679, 0.06815, 0.06845, 0.07065",\
"0.06808, 0.06794, 0.06776, 0.06776, 0.06788, 0.0681, 0.06837, 0.06864, 0.06893, 0.07159",\
"0.06859, 0.06852, 0.06826, 0.06828, 0.06841, 0.06863, 0.06886, 0.06909, 0.06956, 0.07303",\
"0.06916, 0.06906, 0.0689, 0.06894, 0.06905, 0.06925, 0.06952, 0.06967, 0.0703, 0.075",\
"0.06984, 0.06972, 0.06954, 0.06957, 0.06973, 0.06997, 0.07014, 0.07038, 0.07119, 0.07764",\
"0.07056, 0.07048, 0.0702, 0.07026, 0.07037, 0.07075, 0.0709, 0.07111, 0.07255, 0.08232",\
"0.07127, 0.07116, 0.07099, 0.07098, 0.07107, 0.07129, 0.07165, 0.07216, 0.07488, 0.09076");
}
}
timing() {
related_pin : "CLKN" ;
timing_type : falling_edge ;
cell_fall(tmg_ntin_oload_10x10) {
index_1("0.02, 0.08129, 0.2964, 0.7073, 1.347, 2.245, 3.427, 4.916, 6.734, 8.9");
index_2("0.001, 0.00248, 0.007676, 0.0176, 0.03306, 0.05475, 0.08329, 0.1192, 0.1631, 0.2155");
values("1.209, 1.24, 1.327, 1.46, 1.633, 1.858, 2.145, 2.505, 2.945, 3.469",\
"1.228, 1.258, 1.346, 1.478, 1.652, 1.876, 2.164, 2.524, 2.964, 3.488",\
"1.299, 1.329, 1.417, 1.549, 1.723, 1.947, 2.235, 2.595, 3.034, 3.559",\
"1.442, 1.472, 1.559, 1.692, 1.865, 2.09, 2.377, 2.738, 3.178, 3.702",\
"1.649, 1.679, 1.767, 1.899, 2.073, 2.297, 2.585, 2.945, 3.385, 3.908",\
"1.888, 1.918, 2.006, 2.138, 2.313, 2.537, 2.825, 3.184, 3.624, 4.148",\
"2.155, 2.186, 2.273, 2.406, 2.58, 2.804, 3.092, 3.452, 3.891, 4.415",\
"2.455, 2.486, 2.574, 2.706, 2.88, 3.104, 3.392, 3.752, 4.192, 4.715",\
"2.789, 2.82, 2.909, 3.041, 3.215, 3.44, 3.727, 4.088, 4.528, 5.051",\
"3.16, 3.191, 3.279, 3.412, 3.585, 3.81, 4.098, 4.458, 4.897, 5.421");
}
cell_rise(tmg_ntin_oload_10x10) {
index_1("0.02, 0.08129, 0.2964, 0.7073, 1.347, 2.245, 3.427, 4.916, 6.734, 8.9");
index_2("0.001, 0.00248, 0.007676, 0.0176, 0.03306, 0.05475, 0.08329, 0.1192, 0.1631, 0.2155");
values("1.553, 1.594, 1.723, 1.955, 2.307, 2.801, 3.449, 4.264, 5.26, 6.447",\
"1.571, 1.612, 1.742, 1.973, 2.326, 2.82, 3.467, 4.282, 5.279, 6.465",\
"1.642, 1.683, 1.813, 2.044, 2.397, 2.89, 3.538, 4.354, 5.35, 6.535",\
"1.786, 1.828, 1.957, 2.188, 2.541, 3.035, 3.683, 4.498, 5.494, 6.681",\
"1.999, 2.04, 2.169, 2.4, 2.753, 3.247, 3.895, 4.71, 5.706, 6.893",\
"2.249, 2.29, 2.419, 2.651, 3.003, 3.496, 4.145, 4.96, 5.956, 7.144",\
"2.528, 2.57, 2.699, 2.93, 3.283, 3.776, 4.424, 5.24, 6.235, 7.423",\
"2.842, 2.883, 3.012, 3.244, 3.596, 4.09, 4.737, 5.553, 6.549, 7.736",\
"3.19, 3.232, 3.361, 3.592, 3.945, 4.438, 5.085, 5.901, 6.896, 8.084",\
"3.574, 3.616, 3.745, 3.976, 4.329, 4.822, 5.47, 6.285, 7.281, 8.467");
}
fall_transition(tmg_ntin_oload_10x10) {
index_1("0.02, 0.08129, 0.2964, 0.7073, 1.347, 2.245, 3.427, 4.916, 6.734, 8.9");
index_2("0.001, 0.00248, 0.007676, 0.0176, 0.03306, 0.05475, 0.08329, 0.1192, 0.1631, 0.2155");
values("0.162, 0.1932, 0.288, 0.4462, 0.6854, 1.04, 1.525, 2.147, 2.918, 3.832",\
"0.1622, 0.1936, 0.288, 0.4466, 0.6852, 1.04, 1.525, 2.147, 2.918, 3.834",\
"0.162, 0.1934, 0.2882, 0.4464, 0.6852, 1.04, 1.525, 2.147, 2.918, 3.833",\
"0.1626, 0.1932, 0.2882, 0.4464, 0.6854, 1.04, 1.525, 2.147, 2.917, 3.832",\
"0.1622, 0.1934, 0.2882, 0.447, 0.685, 1.04, 1.524, 2.148, 2.918, 3.829",\
"0.1626, 0.1938, 0.2884, 0.4466, 0.686, 1.039, 1.525, 2.15, 2.915, 3.834",\
"0.163, 0.194, 0.2888, 0.4472, 0.6856, 1.039, 1.526, 2.146, 2.913, 3.829",\
"0.163, 0.194, 0.2892, 0.4474, 0.686, 1.039, 1.524, 2.148, 2.917, 3.831",\
"0.1638, 0.195, 0.2896, 0.4478, 0.6862, 1.039, 1.527, 2.15, 2.911, 3.824",\
"0.1644, 0.1954, 0.2898, 0.4476, 0.6868, 1.039, 1.526, 2.147, 2.914, 3.827");
}
rise_transition(tmg_ntin_oload_10x10) {
index_1("0.02, 0.08129, 0.2964, 0.7073, 1.347, 2.245, 3.427, 4.916, 6.734, 8.9");
index_2("0.001, 0.00248, 0.007676, 0.0176, 0.03306, 0.05475, 0.08329, 0.1192, 0.1631, 0.2155");
values("0.2182, 0.2726, 0.465, 0.8526, 1.475, 2.355, 3.516, 4.972, 6.76, 8.886",\
"0.219, 0.2722, 0.4648, 0.8528, 1.475, 2.356, 3.517, 4.977, 6.758, 8.887",\
"0.219, 0.2724, 0.465, 0.8522, 1.474, 2.355, 3.515, 4.983, 6.757, 8.887",\
"0.2184, 0.2722, 0.4648, 0.853, 1.472, 2.355, 3.516, 4.98, 6.759, 8.887",\
"0.2188, 0.2724, 0.4652, 0.8522, 1.474, 2.355, 3.515, 4.982, 6.759, 8.884",\
"0.2178, 0.272, 0.4648, 0.8524, 1.474, 2.352, 3.513, 4.977, 6.755, 8.909",\
"0.2182, 0.2714, 0.4646, 0.852, 1.474, 2.355, 3.514, 4.98, 6.755, 8.91",\
"0.2178, 0.271, 0.4644, 0.8532, 1.474, 2.353, 3.514, 4.973, 6.758, 8.888",\
"0.2174, 0.271, 0.4642, 0.8526, 1.472, 2.355, 3.512, 4.982, 6.758, 8.886",\
"0.217, 0.271, 0.4642, 0.8522, 1.474, 2.355, 3.512, 4.974, 6.762, 8.9");
}
}
}
}