blob: 5b549168d8552f01d2759a778c6a81d78133d5e1 [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_4) {
area : 79.027200 ;
ff(IQ1,IQN1) {
clocked_on : "CLK" ;
next_state : "D" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "!CLK&!D" ;
value : "6.934752e-05" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "!CLK&D" ;
value : "7.998606e-05" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "CLK&!D" ;
value : "9.680616e-05" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "CLK&D" ;
value : "9.40104e-05" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
value : "9.680616e-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.003139 ;
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.089 ;
min_pulse_width_high : 1.025 ;
min_pulse_width_low : 1.047 ;
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.04167, 0.04151, 0.04123, 0.04116, 0.0416, 0.04255, 0.04406, \
0.04616, 0.04888, 0.05228");
}
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.03069, 0.03046, 0.03039, 0.0306, 0.03132, 0.0326, 0.03444, \
0.03687, 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.04232, 0.04219, 0.0419, 0.04183, 0.0423, 0.04322, 0.0447, 0.04679, \
0.04954, 0.05295");
}
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.03082, 0.03072, 0.03051, 0.0304, 0.03065, 0.03134, 0.03264, \
0.03446, 0.03695, 0.04005");
}
}
timing() {
related_pin : "CLK" ;
sdf_cond : "ENABLE_NOT_D === 1'b1" ;
timing_type : min_pulse_width ;
when : "!D" ;
fall_constraint(scalar) {
values("1.047");
}
rise_constraint(scalar) {
values("0.561");
}
}
timing() {
related_pin : "CLK" ;
sdf_cond : "ENABLE_D === 1'b1" ;
timing_type : min_pulse_width ;
when : "D" ;
fall_constraint(scalar) {
values("0.752");
}
rise_constraint(scalar) {
values("1.025");
}
}
timing() {
related_pin : "CLK" ;
sdf_cond : "ENABLE_NOT_D === 1'b1" ;
timing_type : minimum_period ;
when : "!D" ;
rise_constraint(scalar) {
values("2.089");
}
}
timing() {
related_pin : "CLK" ;
sdf_cond : "ENABLE_D === 1'b1" ;
timing_type : minimum_period ;
when : "D" ;
rise_constraint(scalar) {
values("2.08");
}
}
}
pin(D) {
capacitance : 0.002304 ;
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.02212, 0.02277, 0.0237, \
0.02496, 0.02653, 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.01616, 0.01654, 0.0172, \
0.0182, 0.0195, 0.02116");
}
}
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.001625, 0.001629, 0.001627, 0.001626, 0.00163, 0.001626, 0.001629, \
0.001627, 0.001625, 0.001623");
}
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.0009632, -0.0009654, -0.0009771, -0.0009916, -0.0009991, -0.001008, \
-0.001014, -0.001018, -0.001021, -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.08, 0.094, 0.14, 0.215, 0.291, 0.344, 0.378, 0.387, 0.383, 0.352",\
"0.071, 0.09, 0.136, 0.209, 0.28, 0.34, 0.368, 0.38, 0.372, 0.335",\
"0.043, 0.054, 0.102, 0.174, 0.242, 0.297, 0.33, 0.347, 0.335, 0.301",\
"-0.052, -0.037, 0.011, 0.082, 0.159, 0.214, 0.245, 0.257, 0.248, 0.219",\
"-0.18, -0.165, -0.121, -0.047, 0.022, 0.081, 0.113, 0.121, 0.111, 0.078",\
"-0.343, -0.33, -0.287, -0.213, -0.145, -0.086, -0.059, -0.043, -0.048, -0.084",\
"-0.535, -0.521, -0.477, -0.406, -0.343, -0.292, -0.252, -0.244, -0.247, -0.287",\
"-0.757, -0.744, -0.697, -0.637, -0.578, -0.522, -0.488, -0.475, -0.486, -0.52",\
"-1.02, -1.007, -0.963, -0.904, -0.836, -0.787, -0.76, -0.75, -0.754, -0.796",\
"-1.315, -1.305, -1.26, -1.2, -1.141, -1.095, -1.064, -1.053, -1.057, -1.097");
}
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.034, 0.047, 0.092, 0.145, 0.18, 0.203, 0.201, 0.188, 0.148, 0.086",\
"0.025, 0.037, 0.078, 0.135, 0.171, 0.196, 0.195, 0.179, 0.14, 0.085",\
"-0.005, 0.007, 0.054, 0.105, 0.149, 0.173, 0.177, 0.158, 0.123, 0.07",\
"-0.029, -0.012, 0.031, 0.082, 0.125, 0.148, 0.156, 0.139, 0.102, 0.049",\
"-0.032, -0.018, 0.023, 0.083, 0.115, 0.145, 0.15, 0.127, 0.096, 0.04",\
"-0.005, 0.007, 0.045, 0.101, 0.131, 0.157, 0.157, 0.145, 0.103, 0.05",\
"0.037, 0.047, 0.086, 0.141, 0.172, 0.194, 0.193, 0.176, 0.139, 0.082",\
"0.105, 0.118, 0.16, 0.208, 0.234, 0.259, 0.252, 0.237, 0.191, 0.133",\
"0.215, 0.226, 0.267, 0.317, 0.335, 0.357, 0.341, 0.319, 0.279, 0.213",\
"0.361, 0.375, 0.416, 0.458, 0.472, 0.486, 0.468, 0.443, 0.395, 0.333");
}
}
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.51, 0.501, 0.45, 0.353, 0.265, 0.192, 0.146, 0.124, 0.12, 0.146",\
"0.523, 0.509, 0.455, 0.366, 0.27, 0.199, 0.151, 0.128, 0.123, 0.157",\
"0.557, 0.542, 0.491, 0.402, 0.309, 0.238, 0.188, 0.17, 0.161, 0.194",\
"0.659, 0.645, 0.593, 0.502, 0.411, 0.338, 0.286, 0.267, 0.261, 0.289",\
"0.829, 0.818, 0.766, 0.678, 0.579, 0.513, 0.466, 0.441, 0.433, 0.463",\
"1.067, 1.061, 1.004, 0.913, 0.823, 0.747, 0.701, 0.676, 0.675, 0.697",\
"1.346, 1.331, 1.28, 1.186, 1.096, 1.021, 0.974, 0.952, 0.944, 0.973",\
"1.648, 1.636, 1.584, 1.488, 1.395, 1.329, 1.282, 1.258, 1.249, 1.274",\
"1.987, 1.97, 1.922, 1.833, 1.735, 1.674, 1.617, 1.598, 1.59, 1.619",\
"2.37, 2.358, 2.31, 2.216, 2.118, 2.052, 2.006, 1.985, 1.973, 1.998");
}
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.435, 0.415, 0.372, 0.275, 0.191, 0.145, 0.119, 0.124, 0.145, 0.204",\
"0.444, 0.434, 0.381, 0.284, 0.206, 0.151, 0.13, 0.138, 0.162, 0.216",\
"0.489, 0.468, 0.422, 0.324, 0.245, 0.196, 0.166, 0.17, 0.194, 0.245",\
"0.558, 0.538, 0.486, 0.394, 0.316, 0.255, 0.229, 0.23, 0.254, 0.298",\
"0.613, 0.588, 0.544, 0.453, 0.372, 0.322, 0.291, 0.287, 0.305, 0.358",\
"0.654, 0.628, 0.578, 0.492, 0.407, 0.348, 0.318, 0.319, 0.341, 0.383",\
"0.651, 0.631, 0.586, 0.494, 0.407, 0.352, 0.322, 0.322, 0.341, 0.383",\
"0.624, 0.6, 0.557, 0.466, 0.382, 0.32, 0.293, 0.292, 0.309, 0.355",\
"0.562, 0.545, 0.5, 0.409, 0.33, 0.278, 0.242, 0.239, 0.254, 0.309",\
"0.477, 0.461, 0.412, 0.326, 0.248, 0.184, 0.155, 0.152, 0.17, 0.219");
}
}
}
pin(Q) {
direction : output ;
function : "IQ1" ;
max_capacitance : 0.9494 ;
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.007546, 0.03052, 0.0744, 0.1428, 0.2387, 0.3649, 0.5239, 0.718, 0.9494");
values("0.08267, 0.08266, 0.08322, 0.08415, 0.08486, 0.08533, 0.0856, 0.08577, 0.08588, 0.08596",\
"0.08265, 0.08268, 0.08325, 0.08414, 0.08486, 0.08532, 0.0856, 0.08575, 0.08588, 0.08595",\
"0.08271, 0.08269, 0.08325, 0.08418, 0.0849, 0.08534, 0.08561, 0.08579, 0.08589, 0.08597",\
"0.0827, 0.0827, 0.08325, 0.08418, 0.08489, 0.08535, 0.08561, 0.0858, 0.08591, 0.086",\
"0.0828, 0.08277, 0.08335, 0.08425, 0.08498, 0.08545, 0.08572, 0.0859, 0.08601, 0.08609",\
"0.08292, 0.0829, 0.08345, 0.08442, 0.0851, 0.08554, 0.08581, 0.08598, 0.08609, 0.08617",\
"0.08294, 0.08296, 0.08349, 0.08447, 0.0852, 0.08563, 0.08588, 0.08606, 0.08618, 0.08625",\
"0.08309, 0.08307, 0.08368, 0.08457, 0.08528, 0.08575, 0.08603, 0.0862, 0.0863, 0.08638",\
"0.08321, 0.08317, 0.0838, 0.0847, 0.08542, 0.08587, 0.08612, 0.0863, 0.08643, 0.08651",\
"0.08329, 0.08325, 0.0839, 0.08477, 0.08549, 0.08594, 0.08622, 0.08638, 0.08651, 0.08658");
}
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.007546, 0.03052, 0.0744, 0.1428, 0.2387, 0.3649, 0.5239, 0.718, 0.9494");
values("0.07966, 0.07951, 0.07941, 0.0803, 0.08119, 0.08242, 0.08362, 0.08468, 0.08499, 0.08671",\
"0.07961, 0.07949, 0.07947, 0.08029, 0.08123, 0.08241, 0.08374, 0.08458, 0.08528, 0.08681",\
"0.07962, 0.07944, 0.07946, 0.08033, 0.08144, 0.08239, 0.08367, 0.08459, 0.0853, 0.08742",\
"0.0795, 0.07939, 0.07933, 0.07994, 0.08135, 0.08235, 0.08354, 0.0843, 0.08521, 0.08711",\
"0.07935, 0.07929, 0.0792, 0.07977, 0.0809, 0.08219, 0.08339, 0.08426, 0.08476, 0.08686",\
"0.07946, 0.07929, 0.07928, 0.07995, 0.08099, 0.08223, 0.08348, 0.08476, 0.08486, 0.08637",\
"0.07932, 0.07912, 0.07915, 0.07996, 0.08103, 0.08226, 0.08342, 0.08425, 0.08554, 0.08584",\
"0.07939, 0.07921, 0.07909, 0.07966, 0.08101, 0.08257, 0.08336, 0.0844, 0.08471, 0.08697",\
"0.07934, 0.07921, 0.07916, 0.07969, 0.08084, 0.08167, 0.0842, 0.08528, 0.08539, 0.08642",\
"0.07939, 0.07915, 0.07914, 0.07971, 0.08096, 0.08134, 0.08319, 0.08535, 0.08653, 0.08781");
}
}
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.007546, 0.03052, 0.0744, 0.1428, 0.2387, 0.3649, 0.5239, 0.718, 0.9494");
values("1.108, 1.141, 1.218, 1.324, 1.465, 1.652, 1.894, 2.199, 2.571, 3.014",\
"1.122, 1.154, 1.231, 1.338, 1.479, 1.666, 1.908, 2.213, 2.585, 3.028",\
"1.171, 1.203, 1.28, 1.386, 1.528, 1.714, 1.957, 2.261, 2.633, 3.076",\
"1.258, 1.29, 1.368, 1.474, 1.615, 1.802, 2.044, 2.349, 2.721, 3.164",\
"1.348, 1.38, 1.457, 1.564, 1.705, 1.892, 2.134, 2.439, 2.81, 3.253",\
"1.419, 1.451, 1.528, 1.635, 1.776, 1.963, 2.205, 2.51, 2.881, 3.324",\
"1.47, 1.502, 1.579, 1.685, 1.827, 2.014, 2.256, 2.56, 2.932, 3.375",\
"1.499, 1.531, 1.609, 1.715, 1.856, 2.043, 2.286, 2.59, 2.961, 3.404",\
"1.508, 1.54, 1.617, 1.724, 1.865, 2.052, 2.294, 2.599, 2.97, 3.413",\
"1.493, 1.525, 1.602, 1.709, 1.85, 2.037, 2.28, 2.584, 2.956, 3.399");
}
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.007546, 0.03052, 0.0744, 0.1428, 0.2387, 0.3649, 0.5239, 0.718, 0.9494");
values("1.291, 1.332, 1.44, 1.623, 1.906, 2.301, 2.821, 3.474, 4.272, 5.222",\
"1.305, 1.346, 1.453, 1.637, 1.92, 2.315, 2.835, 3.488, 4.286, 5.236",\
"1.353, 1.394, 1.502, 1.685, 1.967, 2.363, 2.882, 3.536, 4.334, 5.284",\
"1.438, 1.48, 1.587, 1.77, 2.053, 2.449, 2.968, 3.622, 4.419, 5.37",\
"1.526, 1.567, 1.675, 1.858, 2.141, 2.536, 3.056, 3.709, 4.507, 5.457",\
"1.597, 1.638, 1.745, 1.928, 2.211, 2.607, 3.126, 3.78, 4.577, 5.528",\
"1.647, 1.688, 1.796, 1.979, 2.262, 2.657, 3.176, 3.83, 4.628, 5.579",\
"1.677, 1.718, 1.825, 2.009, 2.291, 2.687, 3.206, 3.86, 4.658, 5.608",\
"1.686, 1.727, 1.835, 2.018, 2.301, 2.697, 3.216, 3.869, 4.667, 5.618",\
"1.674, 1.715, 1.822, 2.005, 2.288, 2.684, 3.203, 3.857, 4.654, 5.605");
}
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.007546, 0.03052, 0.0744, 0.1428, 0.2387, 0.3649, 0.5239, 0.718, 0.9494");
values("0.1032, 0.1292, 0.1996, 0.3238, 0.525, 0.8236, 1.228, 1.741, 2.37, 3.126",\
"0.1034, 0.1296, 0.1996, 0.3234, 0.525, 0.8238, 1.229, 1.743, 2.373, 3.124",\
"0.1034, 0.1294, 0.1998, 0.324, 0.5254, 0.8236, 1.229, 1.742, 2.373, 3.124",\
"0.1034, 0.1294, 0.1996, 0.324, 0.5252, 0.8236, 1.227, 1.742, 2.371, 3.127",\
"0.1032, 0.1294, 0.1994, 0.3236, 0.525, 0.824, 1.228, 1.742, 2.372, 3.126",\
"0.1034, 0.1296, 0.1994, 0.3238, 0.525, 0.8234, 1.227, 1.741, 2.374, 3.124",\
"0.1032, 0.129, 0.1992, 0.3242, 0.5252, 0.8238, 1.227, 1.743, 2.374, 3.122",\
"0.1034, 0.1294, 0.1994, 0.3242, 0.5252, 0.8236, 1.227, 1.74, 2.368, 3.118",\
"0.1034, 0.1294, 0.199, 0.3238, 0.525, 0.8238, 1.228, 1.743, 2.369, 3.117",\
"0.1034, 0.1292, 0.1996, 0.3236, 0.5248, 0.823, 1.229, 1.741, 2.372, 3.121");
}
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.007546, 0.03052, 0.0744, 0.1428, 0.2387, 0.3649, 0.5239, 0.718, 0.9494");
values("0.1274, 0.1652, 0.2986, 0.5958, 1.079, 1.757, 2.652, 3.78, 5.153, 6.793",\
"0.1274, 0.1656, 0.2976, 0.5958, 1.079, 1.759, 2.652, 3.777, 5.157, 6.792",\
"0.1274, 0.1652, 0.2982, 0.5956, 1.079, 1.758, 2.651, 3.78, 5.15, 6.797",\
"0.1274, 0.1652, 0.298, 0.5964, 1.078, 1.756, 2.653, 3.778, 5.157, 6.793",\
"0.127, 0.1654, 0.298, 0.5966, 1.079, 1.758, 2.653, 3.778, 5.153, 6.792",\
"0.1274, 0.1652, 0.2984, 0.5954, 1.078, 1.757, 2.649, 3.779, 5.154, 6.8",\
"0.127, 0.1648, 0.2978, 0.5958, 1.078, 1.759, 2.651, 3.78, 5.157, 6.799",\
"0.127, 0.1654, 0.2976, 0.5956, 1.079, 1.756, 2.65, 3.78, 5.153, 6.792",\
"0.127, 0.1654, 0.298, 0.5958, 1.08, 1.758, 2.65, 3.775, 5.156, 6.799",\
"0.127, 0.1648, 0.2976, 0.5966, 1.08, 1.756, 2.649, 3.774, 5.149, 6.8");
}
}
}
}