blob: 0a00c524de2031539c1856ec532627d545016f6e [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 : "0.0221287" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "!CLK&D" ;
value : "0.0264374" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "CLK&!D" ;
value : "0.02089945" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "CLK&D" ;
value : "0.0207658" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
value : "0.0264374" ;
}
pg_pin(VDD) {
voltage_name : VDD ;
pg_type : primary_power ;
}
pg_pin(VSS) {
voltage_name : VSS ;
pg_type : primary_ground ;
}
pin(CLK) {
capacitance : 0.003241 ;
clock : true ;
direction : input ;
driver_waveform_rise : driver_waveform_default_rise ;
driver_waveform_fall : driver_waveform_default_fall ;
input_voltage : default ;
max_transition : 3.4 ;
min_period : 0.941 ;
min_pulse_width_high : 0.436 ;
min_pulse_width_low : 0.471 ;
related_ground_pin : VSS ;
related_power_pin : VDD ;
internal_power() {
when : "!D" ;
fall_power(pwr_tin_10) {
index_1("0.02, 0.04333, 0.1252, 0.2816, 0.5252, 0.8671, 1.317, 1.884, 2.575, 3.4");
values("0.3517, 0.352, 0.3592, 0.3872, 0.4439, 0.5316, 0.652, 0.8062, \
0.9958, 1.222");
}
rise_power(pwr_tin_10) {
index_1("0.02, 0.04333, 0.1252, 0.2816, 0.5252, 0.8671, 1.317, 1.884, 2.575, 3.4");
values("0.262, 0.2618, 0.2663, 0.2892, 0.3371, 0.4134, 0.5197, 0.6577, \
0.8284, 1.033");
}
}
internal_power() {
when : "D" ;
fall_power(pwr_tin_10) {
index_1("0.02, 0.04333, 0.1252, 0.2816, 0.5252, 0.8671, 1.317, 1.884, 2.575, 3.4");
values("0.357, 0.3572, 0.3645, 0.3927, 0.4494, 0.5371, 0.6574, 0.8115, \
1.001, 1.227");
}
rise_power(pwr_tin_10) {
index_1("0.02, 0.04333, 0.1252, 0.2816, 0.5252, 0.8671, 1.317, 1.884, 2.575, 3.4");
values("0.2602, 0.26, 0.2648, 0.2878, 0.336, 0.4125, 0.5188, 0.6567, 0.8272, \
1.032");
}
}
timing() {
related_pin : "CLK" ;
sdf_cond : "ENABLE_NOT_D === 1'b1" ;
timing_type : min_pulse_width ;
when : "!D" ;
fall_constraint(scalar) {
values("0.471");
}
rise_constraint(scalar) {
values("0.27");
}
}
timing() {
related_pin : "CLK" ;
sdf_cond : "ENABLE_D === 1'b1" ;
timing_type : min_pulse_width ;
when : "D" ;
fall_constraint(scalar) {
values("0.3");
}
rise_constraint(scalar) {
values("0.436");
}
}
timing() {
related_pin : "CLK" ;
sdf_cond : "ENABLE_NOT_D === 1'b1" ;
timing_type : minimum_period ;
when : "!D" ;
rise_constraint(scalar) {
values("0.941");
}
}
timing() {
related_pin : "CLK" ;
sdf_cond : "ENABLE_D === 1'b1" ;
timing_type : minimum_period ;
when : "D" ;
rise_constraint(scalar) {
values("0.913");
}
}
}
pin(D) {
capacitance : 0.002433 ;
direction : input ;
driver_waveform_rise : driver_waveform_default_rise ;
driver_waveform_fall : driver_waveform_default_fall ;
input_voltage : default ;
max_transition : 3.4 ;
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.04333, 0.1252, 0.2816, 0.5252, 0.8671, 1.317, 1.884, 2.575, 3.4");
values("0.214, 0.2132, 0.2142, 0.2243, 0.2492, 0.2905, 0.3487, 0.424, \
0.5168, 0.6272");
}
rise_power(pwr_tin_10) {
index_1("0.02, 0.04333, 0.1252, 0.2816, 0.5252, 0.8671, 1.317, 1.884, 2.575, 3.4");
values("0.1385, 0.139, 0.142, 0.1525, 0.1729, 0.2051, 0.2499, 0.3082, \
0.3805, 0.4679");
}
}
internal_power() {
when : "CLK" ;
fall_power(pwr_tin_10) {
index_1("0.02, 0.04333, 0.1252, 0.2816, 0.5252, 0.8671, 1.317, 1.884, 2.575, 3.4");
values("0.01189, 0.01187, 0.01185, 0.01186, 0.01188, 0.01188, 0.0119, \
0.01189, 0.01191, 0.0119");
}
rise_power(pwr_tin_10) {
index_1("0.02, 0.04333, 0.1252, 0.2816, 0.5252, 0.8671, 1.317, 1.884, 2.575, 3.4");
values("-0.009237, -0.009251, -0.009215, -0.009182, -0.009152, -0.009127, \
-0.009164, -0.009164, -0.009175, -0.009185");
}
}
timing() {
related_pin : "CLK" ;
timing_type : hold_rising ;
fall_constraint(cnst_ctin_rtin_10x10) {
index_1("0.02, 0.04333, 0.1252, 0.2816, 0.5252, 0.8671, 1.317, 1.884, 2.575, 3.4");
index_2("0.02, 0.04333, 0.1252, 0.2816, 0.5252, 0.8671, 1.317, 1.884, 2.575, 3.4");
values("0.097, 0.099, 0.111, 0.139, 0.172, 0.189, 0.213, 0.22, 0.218, 0.214",\
"0.092, 0.099, 0.116, 0.139, 0.169, 0.186, 0.207, 0.216, 0.219, 0.214",\
"0.074, 0.079, 0.097, 0.124, 0.148, 0.172, 0.19, 0.199, 0.201, 0.197",\
"0.036, 0.038, 0.053, 0.078, 0.107, 0.128, 0.148, 0.16, 0.153, 0.152",\
"-0.035, -0.028, -0.01, 0.009, 0.037, 0.063, 0.079, 0.084, 0.083, 0.072",\
"-0.113, -0.109, -0.095, -0.068, -0.047, -0.028, -0.012, -0.01, -0.009, -0.027",\
"-0.213, -0.207, -0.19, -0.166, -0.148, -0.137, -0.122, -0.124, -0.134, -0.152",\
"-0.331, -0.329, -0.31, -0.291, -0.272, -0.259, -0.25, -0.255, -0.276, -0.294",\
"-0.466, -0.462, -0.444, -0.423, -0.414, -0.408, -0.392, -0.41, -0.432, -0.462",\
"-0.629, -0.614, -0.606, -0.578, -0.573, -0.579, -0.572, -0.591, -0.62, -0.646");
}
rise_constraint(cnst_ctin_rtin_10x10) {
index_1("0.02, 0.04333, 0.1252, 0.2816, 0.5252, 0.8671, 1.317, 1.884, 2.575, 3.4");
index_2("0.02, 0.04333, 0.1252, 0.2816, 0.5252, 0.8671, 1.317, 1.884, 2.575, 3.4");
values("0.052, 0.056, 0.072, 0.097, 0.119, 0.14, 0.153, 0.169, 0.171, 0.18",\
"0.055, 0.053, 0.067, 0.094, 0.122, 0.142, 0.154, 0.169, 0.172, 0.18",\
"0.051, 0.055, 0.068, 0.086, 0.113, 0.137, 0.15, 0.167, 0.173, 0.18",\
"0.047, 0.049, 0.066, 0.085, 0.107, 0.134, 0.148, 0.16, 0.167, 0.17",\
"0.056, 0.058, 0.067, 0.089, 0.111, 0.133, 0.148, 0.159, 0.162, 0.16",\
"0.076, 0.079, 0.094, 0.111, 0.131, 0.15, 0.155, 0.167, 0.165, 0.159",\
"0.125, 0.128, 0.146, 0.166, 0.178, 0.19, 0.19, 0.193, 0.188, 0.18",\
"0.202, 0.206, 0.217, 0.233, 0.248, 0.257, 0.254, 0.255, 0.239, 0.226",\
"0.305, 0.308, 0.321, 0.338, 0.343, 0.348, 0.339, 0.331, 0.317, 0.298",\
"0.442, 0.446, 0.46, 0.468, 0.468, 0.473, 0.456, 0.443, 0.418, 0.397");
}
}
timing() {
related_pin : "CLK" ;
timing_type : setup_rising ;
fall_constraint(cnst_ctin_rtin_10x10) {
index_1("0.02, 0.04333, 0.1252, 0.2816, 0.5252, 0.8671, 1.317, 1.884, 2.575, 3.4");
index_2("0.02, 0.04333, 0.1252, 0.2816, 0.5252, 0.8671, 1.317, 1.884, 2.575, 3.4");
values("0.195, 0.197, 0.182, 0.153, 0.124, 0.098, 0.08, 0.07, 0.07, 0.088",\
"0.198, 0.198, 0.185, 0.154, 0.121, 0.101, 0.082, 0.072, 0.072, 0.09",\
"0.218, 0.214, 0.203, 0.173, 0.145, 0.117, 0.098, 0.089, 0.085, 0.105",\
"0.267, 0.266, 0.25, 0.225, 0.19, 0.171, 0.149, 0.142, 0.14, 0.153",\
"0.362, 0.356, 0.345, 0.313, 0.284, 0.256, 0.237, 0.229, 0.233, 0.242",\
"0.491, 0.484, 0.473, 0.446, 0.413, 0.394, 0.368, 0.363, 0.357, 0.367",\
"0.656, 0.657, 0.638, 0.611, 0.583, 0.557, 0.537, 0.522, 0.524, 0.532",\
"0.85, 0.848, 0.833, 0.804, 0.774, 0.747, 0.729, 0.718, 0.719, 0.729",\
"1.077, 1.071, 1.056, 1.031, 0.998, 0.973, 0.957, 0.942, 0.939, 0.952",\
"1.328, 1.327, 1.317, 1.281, 1.25, 1.221, 1.202, 1.195, 1.191, 1.2");
}
rise_constraint(cnst_ctin_rtin_10x10) {
index_1("0.02, 0.04333, 0.1252, 0.2816, 0.5252, 0.8671, 1.317, 1.884, 2.575, 3.4");
index_2("0.02, 0.04333, 0.1252, 0.2816, 0.5252, 0.8671, 1.317, 1.884, 2.575, 3.4");
values("0.189, 0.19, 0.174, 0.148, 0.109, 0.087, 0.073, 0.065, 0.07, 0.079",\
"0.192, 0.191, 0.177, 0.149, 0.113, 0.09, 0.075, 0.072, 0.072, 0.081",\
"0.211, 0.206, 0.194, 0.16, 0.127, 0.105, 0.09, 0.079, 0.078, 0.096",\
"0.224, 0.222, 0.206, 0.179, 0.14, 0.118, 0.105, 0.096, 0.096, 0.107",\
"0.233, 0.231, 0.216, 0.187, 0.154, 0.131, 0.119, 0.11, 0.114, 0.124",\
"0.227, 0.225, 0.213, 0.181, 0.149, 0.122, 0.115, 0.109, 0.114, 0.128",\
"0.213, 0.207, 0.19, 0.166, 0.129, 0.109, 0.095, 0.1, 0.105, 0.117",\
"0.164, 0.164, 0.151, 0.126, 0.09, 0.068, 0.055, 0.057, 0.066, 0.086",\
"0.104, 0.104, 0.089, 0.058, 0.028, 0.008, -0.007, -0.005, 0.006, 0.031",\
"0.015, 0.006, 0.002, -0.024, -0.056, -0.085, -0.094, -0.092, -0.082, -0.05");
}
}
}
pin(Q) {
direction : output ;
function : "IQ1" ;
max_capacitance : 0.2287 ;
max_transition : 3.4 ;
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.04333, 0.1252, 0.2816, 0.5252, 0.8671, 1.317, 1.884, 2.575, 3.4");
index_2("0.001, 0.002571, 0.008087, 0.01862, 0.03503, 0.05806, 0.08835, 0.1265, 0.1731, 0.2287");
values("0.377, 0.3725, 0.3629, 0.3551, 0.35, 0.3466, 0.3445, 0.3429, 0.3421, 0.3411",\
"0.3772, 0.3726, 0.3629, 0.3553, 0.3503, 0.3469, 0.3445, 0.3432, 0.342, 0.3412",\
"0.3776, 0.3731, 0.3633, 0.3556, 0.3506, 0.3472, 0.3448, 0.3435, 0.3424, 0.3418",\
"0.3785, 0.3742, 0.3645, 0.3566, 0.3517, 0.3482, 0.346, 0.3445, 0.3436, 0.3427",\
"0.3814, 0.377, 0.3673, 0.3595, 0.3546, 0.3512, 0.349, 0.3476, 0.3463, 0.3457",\
"0.3856, 0.3809, 0.3712, 0.3636, 0.3585, 0.3549, 0.3527, 0.3512, 0.35, 0.3495",\
"0.3902, 0.3855, 0.3757, 0.368, 0.3631, 0.3596, 0.3571, 0.3557, 0.3545, 0.3538",\
"0.3959, 0.3913, 0.3816, 0.3739, 0.3688, 0.3654, 0.363, 0.3616, 0.3603, 0.3595",\
"0.4021, 0.3975, 0.388, 0.3802, 0.3753, 0.3716, 0.3694, 0.3677, 0.3667, 0.3659",\
"0.4094, 0.4047, 0.3951, 0.387, 0.382, 0.3787, 0.3762, 0.3748, 0.3737, 0.3729");
}
rise_power(pwr_tin_oload_10x10) {
index_1("0.02, 0.04333, 0.1252, 0.2816, 0.5252, 0.8671, 1.317, 1.884, 2.575, 3.4");
index_2("0.001, 0.002571, 0.008087, 0.01862, 0.03503, 0.05806, 0.08835, 0.1265, 0.1731, 0.2287");
values("0.3976, 0.3926, 0.3823, 0.373, 0.3657, 0.3611, 0.3595, 0.3587, 0.3584, 0.3585",\
"0.3975, 0.3927, 0.3825, 0.3729, 0.3658, 0.3612, 0.3595, 0.3587, 0.3587, 0.3594",\
"0.3974, 0.3927, 0.3824, 0.3729, 0.3659, 0.3612, 0.3594, 0.3587, 0.3582, 0.3589",\
"0.3986, 0.3936, 0.3836, 0.3742, 0.3668, 0.3622, 0.3606, 0.3598, 0.3594, 0.3601",\
"0.4033, 0.3983, 0.3879, 0.3786, 0.3715, 0.3668, 0.3651, 0.3642, 0.364, 0.3642",\
"0.4098, 0.4048, 0.3949, 0.385, 0.3782, 0.3736, 0.3721, 0.3714, 0.3711, 0.3718",\
"0.42, 0.4151, 0.4047, 0.3954, 0.3887, 0.3841, 0.3817, 0.381, 0.3808, 0.381",\
"0.4326, 0.4281, 0.4172, 0.4073, 0.4, 0.3969, 0.3951, 0.3932, 0.3926, 0.3928",\
"0.4484, 0.4436, 0.4327, 0.4233, 0.4148, 0.4107, 0.4098, 0.4107, 0.4091, 0.4087",\
"0.4673, 0.4626, 0.4513, 0.4413, 0.4331, 0.428, 0.4263, 0.4275, 0.4286, 0.4282");
}
}
timing() {
related_pin : "CLK" ;
timing_type : rising_edge ;
cell_fall(tmg_ntin_oload_10x10) {
index_1("0.02, 0.04333, 0.1252, 0.2816, 0.5252, 0.8671, 1.317, 1.884, 2.575, 3.4");
index_2("0.001, 0.002571, 0.008087, 0.01862, 0.03503, 0.05806, 0.08835, 0.1265, 0.1731, 0.2287");
values("0.521, 0.5348, 0.5753, 0.6406, 0.7342, 0.8614, 1.029, 1.239, 1.497, 1.803",\
"0.5242, 0.5379, 0.5783, 0.6437, 0.7372, 0.8645, 1.031, 1.242, 1.5, 1.807",\
"0.5381, 0.5518, 0.5923, 0.6576, 0.7511, 0.8784, 1.045, 1.256, 1.513, 1.821",\
"0.5671, 0.5808, 0.6213, 0.6867, 0.7801, 0.9075, 1.075, 1.285, 1.543, 1.849",\
"0.6011, 0.6148, 0.6553, 0.7206, 0.8143, 0.9416, 1.109, 1.319, 1.576, 1.884",\
"0.6325, 0.6461, 0.6865, 0.7519, 0.8455, 0.9728, 1.14, 1.351, 1.608, 1.915",\
"0.6578, 0.6715, 0.712, 0.7773, 0.8708, 0.9981, 1.165, 1.376, 1.633, 1.94",\
"0.6762, 0.6899, 0.7303, 0.7957, 0.8892, 1.017, 1.184, 1.394, 1.652, 1.958",\
"0.6859, 0.6996, 0.74, 0.8054, 0.8988, 1.026, 1.193, 1.404, 1.661, 1.968",\
"0.6864, 0.7002, 0.7406, 0.8059, 0.8995, 1.027, 1.194, 1.404, 1.662, 1.969");
}
cell_rise(tmg_ntin_oload_10x10) {
index_1("0.02, 0.04333, 0.1252, 0.2816, 0.5252, 0.8671, 1.317, 1.884, 2.575, 3.4");
index_2("0.001, 0.002571, 0.008087, 0.01862, 0.03503, 0.05806, 0.08835, 0.1265, 0.1731, 0.2287");
values("0.579, 0.5939, 0.64, 0.7222, 0.85, 1.031, 1.271, 1.574, 1.945, 2.388",\
"0.5821, 0.5972, 0.6432, 0.7252, 0.8531, 1.034, 1.274, 1.577, 1.948, 2.391",\
"0.5958, 0.6109, 0.6569, 0.7392, 0.8669, 1.048, 1.288, 1.591, 1.962, 2.405",\
"0.6255, 0.6403, 0.6865, 0.7686, 0.8964, 1.078, 1.318, 1.621, 1.991, 2.434",\
"0.6619, 0.6767, 0.7228, 0.805, 0.9328, 1.114, 1.354, 1.657, 2.028, 2.471",\
"0.6963, 0.7114, 0.7573, 0.8394, 0.9673, 1.148, 1.389, 1.692, 2.063, 2.505",\
"0.7274, 0.7424, 0.7886, 0.8704, 0.9984, 1.179, 1.42, 1.722, 2.093, 2.536",\
"0.7527, 0.7677, 0.8136, 0.8959, 1.023, 1.205, 1.444, 1.747, 2.119, 2.561",\
"0.7713, 0.7861, 0.8322, 0.9145, 1.042, 1.223, 1.463, 1.766, 2.137, 2.579",\
"0.7826, 0.7975, 0.8435, 0.9257, 1.053, 1.235, 1.474, 1.777, 2.148, 2.59");
}
fall_transition(tmg_ntin_oload_10x10) {
index_1("0.02, 0.04333, 0.1252, 0.2816, 0.5252, 0.8671, 1.317, 1.884, 2.575, 3.4");
index_2("0.001, 0.002571, 0.008087, 0.01862, 0.03503, 0.05806, 0.08835, 0.1265, 0.1731, 0.2287");
values("0.07692, 0.09214, 0.1399, 0.2282, 0.3719, 0.5827, 0.8667, 1.225, 1.667, 2.189",\
"0.0768, 0.09196, 0.1393, 0.2283, 0.3717, 0.5831, 0.8658, 1.227, 1.666, 2.192",\
"0.07694, 0.09194, 0.1398, 0.2285, 0.372, 0.5825, 0.867, 1.227, 1.665, 2.192",\
"0.07688, 0.0921, 0.1398, 0.2282, 0.3722, 0.583, 0.8668, 1.225, 1.667, 2.189",\
"0.0769, 0.0921, 0.1397, 0.2281, 0.3718, 0.5826, 0.866, 1.226, 1.665, 2.192",\
"0.0766, 0.0918, 0.1396, 0.228, 0.3722, 0.5818, 0.8668, 1.227, 1.666, 2.191",\
"0.0768, 0.092, 0.1394, 0.2282, 0.372, 0.5826, 0.8648, 1.225, 1.667, 2.192",\
"0.0768, 0.0918, 0.1394, 0.2282, 0.3722, 0.5828, 0.8672, 1.224, 1.665, 2.188",\
"0.0768, 0.0918, 0.14, 0.2284, 0.3718, 0.583, 0.8654, 1.225, 1.664, 2.188",\
"0.077, 0.092, 0.1402, 0.228, 0.3718, 0.5822, 0.8664, 1.227, 1.664, 2.188");
}
rise_transition(tmg_ntin_oload_10x10) {
index_1("0.02, 0.04333, 0.1252, 0.2816, 0.5252, 0.8671, 1.317, 1.884, 2.575, 3.4");
index_2("0.001, 0.002571, 0.008087, 0.01862, 0.03503, 0.05806, 0.08835, 0.1265, 0.1731, 0.2287");
values("0.0921, 0.111, 0.1804, 0.3253, 0.5613, 0.8982, 1.344, 1.903, 2.584, 3.398",\
"0.09178, 0.111, 0.181, 0.3253, 0.5615, 0.8984, 1.344, 1.902, 2.583, 3.398",\
"0.09152, 0.1109, 0.1804, 0.3259, 0.5617, 0.8978, 1.343, 1.901, 2.584, 3.396",\
"0.09192, 0.1109, 0.1811, 0.3254, 0.5616, 0.8984, 1.344, 1.902, 2.583, 3.397",\
"0.0918, 0.1111, 0.1802, 0.3258, 0.5616, 0.8978, 1.343, 1.9, 2.584, 3.396",\
"0.0914, 0.111, 0.1808, 0.3254, 0.5614, 0.8982, 1.344, 1.904, 2.586, 3.398",\
"0.092, 0.1112, 0.1808, 0.3262, 0.5618, 0.8982, 1.344, 1.903, 2.584, 3.397",\
"0.0918, 0.1114, 0.1812, 0.326, 0.5616, 0.8986, 1.343, 1.901, 2.589, 3.396",\
"0.0924, 0.1118, 0.1818, 0.3262, 0.5624, 0.8984, 1.343, 1.902, 2.584, 3.396",\
"0.0928, 0.1122, 0.1818, 0.326, 0.5624, 0.898, 1.343, 1.901, 2.584, 3.399");
}
}
}
}