blob: bc9aab20ff818ff38d701d0f4674040fb6dee170 [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__dffq_1) {
area : 79.027200 ;
ff(IQ1,IQN1) {
clocked_on : "CLK" ;
next_state : "D" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "!CLK&!D" ;
value : "5.310954e-05" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "!CLK&D" ;
value : "7.005438e-05" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "CLK&!D" ;
value : "9.359262e-05" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "CLK&D" ;
value : "0.00010647252" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
value : "0.00010647252" ;
}
pg_pin(VDD) {
voltage_name : VDD ;
pg_type : primary_power ;
}
pg_pin(VSS) {
voltage_name : VSS ;
pg_type : primary_ground ;
}
pin(CLK) {
capacitance : 0.004507 ;
clock : true ;
direction : input ;
driver_waveform_rise : driver_waveform_default_rise ;
driver_waveform_fall : driver_waveform_default_fall ;
input_voltage : default ;
max_transition : 6 ;
min_period : 1.434 ;
min_pulse_width_high : 0.507 ;
min_pulse_width_low : 0.714 ;
related_ground_pin : VSS ;
related_power_pin : VDD ;
internal_power() {
when : "!D" ;
fall_power(pwr_tin_10) {
index_1("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315, 3.317, 4.541, 6");
values("0.05678, 0.05651, 0.05597, 0.05573, 0.05613, 0.05715, 0.0588, \
0.0611, 0.06418, 0.06803");
}
rise_power(pwr_tin_10) {
index_1("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315, 3.317, 4.541, 6");
values("0.03746, 0.03734, 0.03692, 0.03667, 0.03676, 0.03751, 0.03893, \
0.04102, 0.04385, 0.04744");
}
}
internal_power() {
when : "D" ;
fall_power(pwr_tin_10) {
index_1("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315, 3.317, 4.541, 6");
values("0.05845, 0.05817, 0.05762, 0.05737, 0.05779, 0.05876, 0.06046, \
0.06278, 0.06582, 0.06969");
}
rise_power(pwr_tin_10) {
index_1("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315, 3.317, 4.541, 6");
values("0.03758, 0.03745, 0.03703, 0.03675, 0.03686, 0.03762, 0.03904, \
0.04116, 0.04398, 0.04756");
}
}
timing() {
related_pin : "CLK" ;
sdf_cond : "ENABLE_NOT_D === 1'b1" ;
timing_type : min_pulse_width ;
when : "!D" ;
fall_constraint(scalar) {
values("0.714");
}
rise_constraint(scalar) {
values("0.434");
}
}
timing() {
related_pin : "CLK" ;
sdf_cond : "ENABLE_D === 1'b1" ;
timing_type : min_pulse_width ;
when : "D" ;
fall_constraint(scalar) {
values("0.641");
}
rise_constraint(scalar) {
values("0.507");
}
}
timing() {
related_pin : "CLK" ;
sdf_cond : "ENABLE_NOT_D === 1'b1" ;
timing_type : minimum_period ;
when : "!D" ;
rise_constraint(scalar) {
values("1.434");
}
}
timing() {
related_pin : "CLK" ;
sdf_cond : "ENABLE_D === 1'b1" ;
timing_type : minimum_period ;
when : "D" ;
rise_constraint(scalar) {
values("1.286");
}
}
}
pin(D) {
capacitance : 0.003441 ;
direction : input ;
driver_waveform_rise : driver_waveform_default_rise ;
driver_waveform_fall : driver_waveform_default_fall ;
input_voltage : default ;
max_transition : 6 ;
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.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315, 3.317, 4.541, 6");
values("0.03182, 0.03159, 0.03108, 0.03084, 0.0311, 0.03181, 0.03298, \
0.03454, 0.03657, 0.03913");
}
rise_power(pwr_tin_10) {
index_1("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315, 3.317, 4.541, 6");
values("0.02242, 0.02243, 0.02222, 0.02201, 0.02205, 0.02254, 0.02345, \
0.02483, 0.02666, 0.02896");
}
}
internal_power() {
when : "CLK" ;
fall_power(pwr_tin_10) {
index_1("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315, 3.317, 4.541, 6");
values("0.003773, 0.00377, 0.003771, 0.003777, 0.003781, 0.003771, 0.003779, \
0.003776, 0.003773, 0.003768");
}
rise_power(pwr_tin_10) {
index_1("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315, 3.317, 4.541, 6");
values("-0.003181, -0.003189, -0.003207, -0.003246, -0.003261, -0.003275, \
-0.0033, -0.003296, -0.003314, -0.003322");
}
}
timing() {
related_pin : "CLK" ;
timing_type : hold_rising ;
fall_constraint(cnst_ctin_rtin_10x10) {
index_1("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315, 3.317, 4.541, 6");
index_2("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315, 3.317, 4.541, 6");
values("0.149, 0.163, 0.207, 0.278, 0.349, 0.401, 0.435, 0.454, 0.453, 0.437",\
"0.142, 0.152, 0.203, 0.268, 0.336, 0.391, 0.421, 0.44, 0.444, 0.423",\
"0.106, 0.126, 0.165, 0.239, 0.304, 0.35, 0.385, 0.407, 0.403, 0.388",\
"0.053, 0.065, 0.109, 0.179, 0.245, 0.292, 0.325, 0.347, 0.344, 0.328",\
"-0.017, -0.004, 0.04, 0.106, 0.177, 0.224, 0.256, 0.271, 0.272, 0.253",\
"-0.097, -0.08, -0.043, 0.027, 0.086, 0.139, 0.173, 0.189, 0.187, 0.167",\
"-0.192, -0.174, -0.138, -0.068, -0.01, 0.047, 0.074, 0.094, 0.098, 0.072",\
"-0.293, -0.278, -0.238, -0.176, -0.123, -0.063, -0.039, -0.008, -0.007, -0.034",\
"-0.418, -0.403, -0.367, -0.3, -0.245, -0.194, -0.165, -0.135, -0.137, -0.154",\
"-0.555, -0.542, -0.502, -0.447, -0.388, -0.331, -0.304, -0.275, -0.277, -0.295");
}
rise_constraint(cnst_ctin_rtin_10x10) {
index_1("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315, 3.317, 4.541, 6");
index_2("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315, 3.317, 4.541, 6");
values("-0.029, -0.012, 0.023, 0.062, 0.09, 0.105, 0.1, 0.083, 0.046, -0.013",\
"-0.04, -0.029, 0.013, 0.056, 0.08, 0.097, 0.087, 0.073, 0.039, -0.015",\
"-0.069, -0.064, -0.026, 0.016, 0.05, 0.061, 0.065, 0.051, 0.015, -0.037",\
"-0.12, -0.109, -0.07, -0.023, 0.011, 0.026, 0.024, 0.014, -0.022, -0.068",\
"-0.152, -0.144, -0.102, -0.058, -0.019, -0.01, -0.006, -0.019, -0.049, -0.1",\
"-0.164, -0.158, -0.117, -0.074, -0.04, -0.023, -0.029, -0.039, -0.072, -0.125",\
"-0.173, -0.162, -0.125, -0.075, -0.043, -0.029, -0.035, -0.051, -0.077, -0.129",\
"-0.159, -0.15, -0.114, -0.062, -0.039, -0.021, -0.026, -0.04, -0.074, -0.124",\
"-0.13, -0.124, -0.086, -0.04, -0.01, -0.002, 0.002, -0.021, -0.054, -0.103",\
"-0.084, -0.075, -0.039, 0.004, 0.033, 0.043, 0.038, 0.023, -0.017, -0.072");
}
}
timing() {
related_pin : "CLK" ;
timing_type : setup_rising ;
fall_constraint(cnst_ctin_rtin_10x10) {
index_1("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315, 3.317, 4.541, 6");
index_2("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315, 3.317, 4.541, 6");
values("0.263, 0.252, 0.207, 0.125, 0.045, -0.021, -0.07, -0.1, -0.113, -0.098",\
"0.274, 0.262, 0.216, 0.133, 0.054, -0.011, -0.057, -0.09, -0.101, -0.09",\
"0.318, 0.303, 0.254, 0.172, 0.092, 0.032, -0.021, -0.052, -0.062, -0.047",\
"0.407, 0.39, 0.347, 0.265, 0.184, 0.117, 0.069, 0.043, 0.028, 0.043",\
"0.551, 0.539, 0.486, 0.408, 0.334, 0.263, 0.219, 0.188, 0.171, 0.184",\
"0.723, 0.711, 0.667, 0.579, 0.502, 0.441, 0.393, 0.356, 0.347, 0.353",\
"0.91, 0.892, 0.849, 0.77, 0.69, 0.625, 0.579, 0.548, 0.528, 0.536",\
"1.113, 1.107, 1.055, 0.976, 0.893, 0.834, 0.785, 0.752, 0.74, 0.747",\
"1.341, 1.328, 1.284, 1.205, 1.124, 1.062, 1.016, 0.983, 0.97, 0.977",\
"1.593, 1.579, 1.533, 1.459, 1.381, 1.316, 1.268, 1.235, 1.22, 1.229");
}
rise_constraint(cnst_ctin_rtin_10x10) {
index_1("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315, 3.317, 4.541, 6");
index_2("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315, 3.317, 4.541, 6");
values("0.355, 0.343, 0.299, 0.226, 0.169, 0.132, 0.119, 0.128, 0.152, 0.204",\
"0.371, 0.356, 0.306, 0.24, 0.176, 0.145, 0.129, 0.14, 0.167, 0.214",\
"0.41, 0.393, 0.349, 0.279, 0.216, 0.181, 0.169, 0.179, 0.196, 0.249",\
"0.472, 0.458, 0.418, 0.34, 0.285, 0.245, 0.227, 0.234, 0.257, 0.304",\
"0.54, 0.528, 0.486, 0.416, 0.353, 0.314, 0.293, 0.298, 0.318, 0.369",\
"0.596, 0.582, 0.537, 0.462, 0.401, 0.364, 0.345, 0.344, 0.362, 0.417",\
"0.618, 0.607, 0.562, 0.491, 0.428, 0.394, 0.372, 0.375, 0.394, 0.44",\
"0.64, 0.62, 0.584, 0.509, 0.445, 0.41, 0.385, 0.388, 0.407, 0.455",\
"0.634, 0.626, 0.579, 0.505, 0.447, 0.41, 0.39, 0.393, 0.406, 0.451",\
"0.621, 0.608, 0.562, 0.494, 0.43, 0.395, 0.368, 0.37, 0.391, 0.438");
}
}
}
pin(Q) {
direction : output ;
function : "IQ1" ;
max_capacitance : 0.3147 ;
max_transition : 6 ;
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.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315, 3.317, 4.541, 6");
index_2("0.001, 0.003165, 0.01076, 0.02528, 0.04789, 0.07961, 0.1214, 0.1739, 0.2381, 0.3147");
values("0.05271, 0.05281, 0.05309, 0.05342, 0.05369, 0.05388, 0.05397, 0.05404, 0.05408, 0.05411",\
"0.05267, 0.05275, 0.05303, 0.05339, 0.05363, 0.05381, 0.05392, 0.05398, 0.05402, 0.05405",\
"0.05269, 0.05279, 0.05305, 0.0534, 0.05368, 0.05383, 0.05394, 0.05399, 0.05403, 0.05406",\
"0.05276, 0.05285, 0.05311, 0.05346, 0.05374, 0.0539, 0.054, 0.05405, 0.05409, 0.05412",\
"0.05299, 0.05308, 0.05335, 0.05369, 0.05396, 0.05413, 0.05424, 0.0543, 0.05434, 0.05437",\
"0.05319, 0.05329, 0.05358, 0.05391, 0.05417, 0.05433, 0.05443, 0.05449, 0.05454, 0.05456",\
"0.05338, 0.05347, 0.05376, 0.05409, 0.05438, 0.05454, 0.05464, 0.0547, 0.05474, 0.05476",\
"0.05358, 0.05368, 0.05394, 0.05429, 0.05456, 0.05471, 0.05482, 0.05488, 0.05492, 0.05495",\
"0.05377, 0.05385, 0.05414, 0.05448, 0.05476, 0.05492, 0.05503, 0.0551, 0.05514, 0.05517",\
"0.05395, 0.05406, 0.05434, 0.05468, 0.05495, 0.05514, 0.05524, 0.05529, 0.05533, 0.05537");
}
rise_power(pwr_tin_oload_10x10) {
index_1("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315, 3.317, 4.541, 6");
index_2("0.001, 0.003165, 0.01076, 0.02528, 0.04789, 0.07961, 0.1214, 0.1739, 0.2381, 0.3147");
values("0.04677, 0.04685, 0.04717, 0.04761, 0.04807, 0.04848, 0.04889, 0.04927, 0.04988, 0.0497",\
"0.04673, 0.0468, 0.04718, 0.04761, 0.04807, 0.04854, 0.04889, 0.04927, 0.04968, 0.04985",\
"0.04671, 0.04678, 0.04712, 0.04759, 0.04803, 0.04848, 0.04881, 0.04915, 0.04938, 0.0497",\
"0.04657, 0.04662, 0.04693, 0.04745, 0.04787, 0.04836, 0.04871, 0.04908, 0.04966, 0.0499",\
"0.04641, 0.0465, 0.04684, 0.04728, 0.0477, 0.04819, 0.04858, 0.04897, 0.04957, 0.04939",\
"0.04643, 0.04651, 0.04682, 0.04728, 0.04771, 0.04822, 0.04853, 0.04888, 0.04915, 0.04964",\
"0.04636, 0.0465, 0.04677, 0.04725, 0.0479, 0.04823, 0.04854, 0.04894, 0.04937, 0.04961",\
"0.04641, 0.04644, 0.04682, 0.0472, 0.0477, 0.04829, 0.0487, 0.0489, 0.04945, 0.04939",\
"0.04651, 0.04659, 0.04688, 0.04728, 0.04777, 0.04806, 0.04893, 0.04925, 0.04922, 0.0495",\
"0.04653, 0.04658, 0.04688, 0.04744, 0.04771, 0.04822, 0.04855, 0.04929, 0.04972, 0.04991");
}
}
timing() {
related_pin : "CLK" ;
timing_type : rising_edge ;
cell_fall(tmg_ntin_oload_10x10) {
index_1("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315, 3.317, 4.541, 6");
index_2("0.001, 0.003165, 0.01076, 0.02528, 0.04789, 0.07961, 0.1214, 0.1739, 0.2381, 0.3147");
values("0.8892, 0.9129, 0.9755, 1.066, 1.187, 1.347, 1.553, 1.813, 2.129, 2.506",\
"0.9018, 0.9253, 0.9878, 1.079, 1.2, 1.359, 1.566, 1.825, 2.141, 2.518",\
"0.9462, 0.9698, 1.032, 1.123, 1.244, 1.404, 1.61, 1.869, 2.186, 2.563",\
"1.025, 1.048, 1.111, 1.202, 1.323, 1.482, 1.689, 1.948, 2.264, 2.641",\
"1.104, 1.127, 1.19, 1.281, 1.402, 1.561, 1.768, 2.027, 2.343, 2.721",\
"1.169, 1.193, 1.255, 1.346, 1.467, 1.627, 1.833, 2.092, 2.409, 2.785",\
"1.218, 1.242, 1.304, 1.395, 1.516, 1.676, 1.882, 2.141, 2.458, 2.835",\
"1.25, 1.274, 1.337, 1.428, 1.549, 1.708, 1.915, 2.174, 2.49, 2.867",\
"1.266, 1.289, 1.352, 1.443, 1.564, 1.723, 1.93, 2.189, 2.506, 2.882",\
"1.262, 1.285, 1.348, 1.439, 1.56, 1.72, 1.926, 2.185, 2.502, 2.879");
}
cell_rise(tmg_ntin_oload_10x10) {
index_1("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315, 3.317, 4.541, 6");
index_2("0.001, 0.003165, 0.01076, 0.02528, 0.04789, 0.07961, 0.1214, 0.1739, 0.2381, 0.3147");
values("0.8047, 0.8335, 0.9227, 1.085, 1.334, 1.683, 2.14, 2.716, 3.418, 4.257",\
"0.8173, 0.8461, 0.9353, 1.097, 1.347, 1.695, 2.153, 2.729, 3.431, 4.269",\
"0.8611, 0.8898, 0.9791, 1.141, 1.391, 1.739, 2.197, 2.773, 3.475, 4.313",\
"0.936, 0.9646, 1.054, 1.216, 1.466, 1.814, 2.271, 2.847, 3.549, 4.388",\
"1.011, 1.04, 1.129, 1.291, 1.541, 1.889, 2.347, 2.923, 3.625, 4.463",\
"1.073, 1.102, 1.191, 1.353, 1.603, 1.951, 2.409, 2.985, 3.688, 4.524",\
"1.12, 1.149, 1.238, 1.4, 1.65, 1.998, 2.456, 3.032, 3.734, 4.572",\
"1.151, 1.179, 1.268, 1.43, 1.68, 2.028, 2.486, 3.061, 3.764, 4.603",\
"1.164, 1.193, 1.282, 1.444, 1.694, 2.042, 2.5, 3.075, 3.777, 4.614",\
"1.16, 1.189, 1.278, 1.44, 1.69, 2.038, 2.496, 3.072, 3.774, 4.61");
}
fall_transition(tmg_ntin_oload_10x10) {
index_1("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315, 3.317, 4.541, 6");
index_2("0.001, 0.003165, 0.01076, 0.02528, 0.04789, 0.07961, 0.1214, 0.1739, 0.2381, 0.3147");
values("0.1066, 0.126, 0.1856, 0.2908, 0.4608, 0.7132, 1.056, 1.492, 2.028, 2.664",\
"0.1064, 0.1261, 0.1855, 0.292, 0.4618, 0.714, 1.054, 1.492, 2.026, 2.666",\
"0.1064, 0.1258, 0.1854, 0.2914, 0.461, 0.7132, 1.055, 1.491, 2.025, 2.667",\
"0.1066, 0.1258, 0.1852, 0.2912, 0.461, 0.7132, 1.055, 1.49, 2.025, 2.667",\
"0.1066, 0.1258, 0.1854, 0.2914, 0.4616, 0.7138, 1.056, 1.492, 2.028, 2.663",\
"0.1064, 0.126, 0.1856, 0.2908, 0.4612, 0.7128, 1.055, 1.492, 2.027, 2.665",\
"0.1064, 0.126, 0.1854, 0.2914, 0.4614, 0.7126, 1.054, 1.492, 2.027, 2.665",\
"0.1066, 0.1262, 0.1854, 0.292, 0.4614, 0.7124, 1.054, 1.49, 2.023, 2.66",\
"0.1068, 0.1258, 0.1852, 0.2912, 0.4614, 0.713, 1.055, 1.492, 2.023, 2.659",\
"0.1066, 0.126, 0.1854, 0.2912, 0.4612, 0.714, 1.056, 1.49, 2.026, 2.66");
}
rise_transition(tmg_ntin_oload_10x10) {
index_1("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315, 3.317, 4.541, 6");
index_2("0.001, 0.003165, 0.01076, 0.02528, 0.04789, 0.07961, 0.1214, 0.1739, 0.2381, 0.3147");
values("0.1195, 0.1546, 0.2847, 0.5532, 0.9792, 1.576, 2.36, 3.355, 4.569, 6.013",\
"0.1198, 0.155, 0.285, 0.5534, 0.979, 1.576, 2.361, 3.356, 4.57, 6.011",\
"0.1195, 0.1549, 0.285, 0.5534, 0.979, 1.574, 2.363, 3.357, 4.57, 6.005",\
"0.1192, 0.1544, 0.2852, 0.5534, 0.979, 1.577, 2.364, 3.354, 4.567, 6.014",\
"0.1194, 0.155, 0.2848, 0.5534, 0.9796, 1.576, 2.36, 3.355, 4.569, 6.013",\
"0.1194, 0.1544, 0.2848, 0.5538, 0.9782, 1.577, 2.364, 3.356, 4.568, 6.009",\
"0.12, 0.1542, 0.285, 0.5534, 0.978, 1.574, 2.36, 3.356, 4.57, 6.01",\
"0.1196, 0.1546, 0.285, 0.5536, 0.9782, 1.577, 2.36, 3.354, 4.565, 6.011",\
"0.1194, 0.1542, 0.285, 0.5544, 0.979, 1.574, 2.361, 3.349, 4.56, 6.009",\
"0.1196, 0.1546, 0.2852, 0.5532, 0.9786, 1.577, 2.362, 3.351, 4.558, 6");
}
}
}
}