blob: 3f4582c04f3e6ee4475323e3937e134f9bbe2c35 [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.00071826" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "!CLKN&D" ;
value : "0.0007191" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "CLKN&!D" ;
value : "0.0006648" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "CLKN&D" ;
value : "0.00066975" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
value : "0.0007191" ;
}
pg_pin(VDD) {
voltage_name : VDD ;
pg_type : primary_power ;
}
pg_pin(VSS) {
voltage_name : VSS ;
pg_type : primary_ground ;
}
pin(CLKN) {
capacitance : 0.003408 ;
clock : true ;
direction : input ;
driver_waveform_rise : driver_waveform_default_rise ;
driver_waveform_fall : driver_waveform_default_fall ;
input_voltage : default ;
max_transition : 15.6 ;
min_period : 3.138 ;
min_pulse_width_high : 1.254 ;
min_pulse_width_low : 1.293 ;
related_ground_pin : VSS ;
related_power_pin : VDD ;
internal_power() {
when : "!D" ;
fall_power(pwr_tin_10) {
index_1("0.02, 0.1275, 0.505, 1.226, 2.349, 3.925, 5.998, 8.61, 11.8, 15.6");
values("0.1116, 0.1111, 0.111, 0.1136, 0.1201, 0.1304, 0.1451, 0.1645, \
0.1889, 0.2184");
}
rise_power(pwr_tin_10) {
index_1("0.02, 0.1275, 0.505, 1.226, 2.349, 3.925, 5.998, 8.61, 11.8, 15.6");
values("0.07176, 0.07151, 0.07144, 0.07361, 0.07859, 0.08742, 0.1002, \
0.1175, 0.1392, 0.1655");
}
}
internal_power() {
when : "D" ;
fall_power(pwr_tin_10) {
index_1("0.02, 0.1275, 0.505, 1.226, 2.349, 3.925, 5.998, 8.61, 11.8, 15.6");
values("0.1115, 0.1111, 0.111, 0.1136, 0.12, 0.1304, 0.145, 0.1644, 0.1888, \
0.2184");
}
rise_power(pwr_tin_10) {
index_1("0.02, 0.1275, 0.505, 1.226, 2.349, 3.925, 5.998, 8.61, 11.8, 15.6");
values("0.07185, 0.0716, 0.0715, 0.07366, 0.07867, 0.08748, 0.1003, 0.1175, \
0.1392, 0.1656");
}
}
timing() {
related_pin : "CLKN" ;
sdf_cond : "ENABLE_NOT_D === 1'b1" ;
timing_type : min_pulse_width ;
when : "!D" ;
fall_constraint(scalar) {
values("1.084");
}
rise_constraint(scalar) {
values("1.254");
}
}
timing() {
related_pin : "CLKN" ;
sdf_cond : "ENABLE_D === 1'b1" ;
timing_type : min_pulse_width ;
when : "D" ;
fall_constraint(scalar) {
values("1.293");
}
rise_constraint(scalar) {
values("0.98");
}
}
timing() {
related_pin : "CLKN" ;
sdf_cond : "ENABLE_NOT_D === 1'b1" ;
timing_type : minimum_period ;
when : "!D" ;
fall_constraint(scalar) {
values("2.517");
}
}
timing() {
related_pin : "CLKN" ;
sdf_cond : "ENABLE_D === 1'b1" ;
timing_type : minimum_period ;
when : "D" ;
fall_constraint(scalar) {
values("3.138");
}
}
}
pin(D) {
capacitance : 0.002318 ;
direction : input ;
driver_waveform_rise : driver_waveform_default_rise ;
driver_waveform_fall : driver_waveform_default_fall ;
input_voltage : default ;
max_transition : 15.6 ;
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.1275, 0.505, 1.226, 2.349, 3.925, 5.998, 8.61, 11.8, 15.6");
values("0.02125, 0.02061, 0.0213, 0.02426, 0.02974, 0.03793, 0.04909, \
0.06344, 0.08116, 0.1025");
}
rise_power(pwr_tin_10) {
index_1("0.02, 0.1275, 0.505, 1.226, 2.349, 3.925, 5.998, 8.61, 11.8, 15.6");
values("0.002787, 0.002555, 0.002883, 0.004991, 0.009299, 0.01609, 0.02547, \
0.03762, 0.05267, 0.07076");
}
}
internal_power() {
when : "CLKN" ;
fall_power(pwr_tin_10) {
index_1("0.02, 0.1275, 0.505, 1.226, 2.349, 3.925, 5.998, 8.61, 11.8, 15.6");
values("0.07163, 0.07126, 0.07155, 0.07383, 0.07903, 0.0871, 0.09837, \
0.1131, 0.1316, 0.1539");
}
rise_power(pwr_tin_10) {
index_1("0.02, 0.1275, 0.505, 1.226, 2.349, 3.925, 5.998, 8.61, 11.8, 15.6");
values("0.04661, 0.04646, 0.04676, 0.04861, 0.05241, 0.05866, 0.06766, \
0.07961, 0.09475, 0.1132");
}
}
timing() {
related_pin : "CLKN" ;
timing_type : hold_falling ;
fall_constraint(cnst_ctin_rtin_10x10) {
index_1("0.02, 0.1275, 0.505, 1.226, 2.349, 3.925, 5.998, 8.61, 11.8, 15.6");
index_2("0.02, 0.1275, 0.505, 1.226, 2.349, 3.925, 5.998, 8.61, 11.8, 15.6");
values("0.029, 0.064, 0.183, 0.392, 0.627, 0.898, 1.211, 1.575, 1.994, 2.466",\
"-0.003, 0.029, 0.153, 0.362, 0.596, 0.865, 1.181, 1.542, 1.957, 2.431",\
"-0.131, -0.103, 0.012, 0.234, 0.463, 0.735, 1.05, 1.406, 1.822, 2.297",\
"-0.384, -0.354, -0.233, -0.025, 0.208, 0.474, 0.787, 1.149, 1.565, 2.028",\
"-0.7, -0.673, -0.558, -0.344, -0.122, 0.147, 0.455, 0.814, 1.225, 1.682",\
"-1.085, -1.062, -0.944, -0.74, -0.514, -0.247, 0.058, 0.41, 0.815, 1.267",\
"-1.542, -1.518, -1.399, -1.199, -0.985, -0.726, -0.423, -0.074, 0.325, 0.779",\
"-2.081, -2.054, -1.94, -1.741, -1.531, -1.28, -0.98, -0.641, -0.241, 0.204",\
"-2.696, -2.672, -2.559, -2.367, -2.162, -1.921, -1.633, -1.292, -0.895, -0.456",\
"-3.397, -3.368, -3.256, -3.074, -2.883, -2.646, -2.36, -2.033, -1.644, -1.199");
}
rise_constraint(cnst_ctin_rtin_10x10) {
index_1("0.02, 0.1275, 0.505, 1.226, 2.349, 3.925, 5.998, 8.61, 11.8, 15.6");
index_2("0.02, 0.1275, 0.505, 1.226, 2.349, 3.925, 5.998, 8.61, 11.8, 15.6");
values("0.441, 0.474, 0.597, 0.845, 1.151, 1.5, 1.895, 2.342, 2.844, 3.397",\
"0.415, 0.448, 0.573, 0.817, 1.122, 1.472, 1.87, 2.317, 2.821, 3.377",\
"0.344, 0.377, 0.496, 0.738, 1.047, 1.401, 1.796, 2.247, 2.75, 3.304",\
"0.296, 0.329, 0.45, 0.688, 1, 1.344, 1.744, 2.191, 2.694, 3.244",\
"0.294, 0.329, 0.451, 0.692, 0.995, 1.343, 1.737, 2.182, 2.677, 3.23",\
"0.356, 0.385, 0.508, 0.745, 1.049, 1.389, 1.784, 2.225, 2.727, 3.273",\
"0.483, 0.519, 0.64, 0.873, 1.17, 1.507, 1.897, 2.34, 2.833, 3.379",\
"0.702, 0.736, 0.847, 1.076, 1.362, 1.69, 2.078, 2.52, 3.011, 3.56",\
"1.015, 1.05, 1.16, 1.371, 1.647, 1.967, 2.341, 2.772, 3.265, 3.807",\
"1.443, 1.476, 1.578, 1.763, 2.021, 2.323, 2.693, 3.116, 3.6, 4.139");
}
}
timing() {
related_pin : "CLKN" ;
timing_type : setup_falling ;
fall_constraint(cnst_ctin_rtin_10x10) {
index_1("0.02, 0.1275, 0.505, 1.226, 2.349, 3.925, 5.998, 8.61, 11.8, 15.6");
index_2("0.02, 0.1275, 0.505, 1.226, 2.349, 3.925, 5.998, 8.61, 11.8, 15.6");
values("0.905, 0.872, 0.729, 0.501, 0.232, -0.068, -0.415, -0.809, -1.258, -1.75",\
"0.939, 0.907, 0.764, 0.534, 0.265, -0.04, -0.387, -0.778, -1.222, -1.719",\
"1.072, 1.036, 0.897, 0.674, 0.4, 0.096, -0.249, -0.648, -1.086, -1.587",\
"1.334, 1.303, 1.16, 0.937, 0.674, 0.358, 0.012, -0.38, -0.825, -1.321",\
"1.726, 1.694, 1.552, 1.324, 1.047, 0.735, 0.383, -0.012, -0.456, -0.956",\
"2.2, 2.165, 2.022, 1.788, 1.51, 1.199, 0.838, 0.438, -0.01, -0.513",\
"2.757, 2.724, 2.581, 2.341, 2.06, 1.736, 1.373, 0.972, 0.516, 0.016",\
"3.415, 3.383, 3.237, 2.996, 2.702, 2.375, 2.008, 1.598, 1.137, 0.635",\
"4.189, 4.15, 4.002, 3.746, 3.454, 3.12, 2.738, 2.327, 1.866, 1.355",\
"5.063, 5.026, 4.877, 4.611, 4.302, 3.957, 3.578, 3.158, 2.689, 2.175");
}
rise_constraint(cnst_ctin_rtin_10x10) {
index_1("0.02, 0.1275, 0.505, 1.226, 2.349, 3.925, 5.998, 8.61, 11.8, 15.6");
index_2("0.02, 0.1275, 0.505, 1.226, 2.349, 3.925, 5.998, 8.61, 11.8, 15.6");
values("0.384, 0.353, 0.225, -0.016, -0.336, -0.69, -1.114, -1.591, -2.122, -2.708",\
"0.405, 0.38, 0.251, 0.01, -0.313, -0.667, -1.091, -1.564, -2.1, -2.684",\
"0.494, 0.464, 0.335, 0.094, -0.229, -0.586, -1.002, -1.478, -2.014, -2.604",\
"0.604, 0.574, 0.44, 0.198, -0.118, -0.473, -0.891, -1.374, -1.908, -2.493",\
"0.694, 0.66, 0.529, 0.28, -0.041, -0.399, -0.813, -1.288, -1.824, -2.408",\
"0.73, 0.698, 0.565, 0.316, 0.002, -0.361, -0.774, -1.25, -1.771, -2.368",\
"0.717, 0.687, 0.551, 0.304, -0.019, -0.377, -0.79, -1.259, -1.796, -2.38",\
"0.642, 0.608, 0.472, 0.22, -0.1, -0.46, -0.867, -1.343, -1.873, -2.456",\
"0.486, 0.457, 0.32, 0.07, -0.253, -0.609, -1.024, -1.495, -2.021, -2.608",\
"0.26, 0.228, 0.091, -0.16, -0.484, -0.844, -1.252, -1.718, -2.247, -2.83");
}
}
}
pin(Q) {
direction : output ;
function : "IQ1" ;
max_capacitance : 0.3261 ;
max_transition : 15.6 ;
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.1275, 0.505, 1.226, 2.349, 3.925, 5.998, 8.61, 11.8, 15.6");
index_2("0.001, 0.003244, 0.01112, 0.02617, 0.0496, 0.08249, 0.1258, 0.1803, 0.2468, 0.3261");
values("0.1203, 0.1201, 0.1199, 0.12, 0.1201, 0.1201, 0.1201, 0.1202, 0.1202, 0.1201",\
"0.1204, 0.1202, 0.12, 0.1201, 0.1201, 0.1202, 0.1202, 0.1202, 0.1202, 0.1202",\
"0.1203, 0.1201, 0.12, 0.12, 0.1201, 0.1201, 0.1202, 0.1202, 0.1202, 0.1202",\
"0.1204, 0.1202, 0.1201, 0.1201, 0.1202, 0.1203, 0.1203, 0.1203, 0.1203, 0.1203",\
"0.1211, 0.1208, 0.1207, 0.1207, 0.1207, 0.1209, 0.1208, 0.1209, 0.1209, 0.1209",\
"0.1219, 0.1217, 0.1215, 0.1216, 0.1217, 0.1217, 0.1218, 0.1218, 0.1218, 0.1218",\
"0.123, 0.1227, 0.1226, 0.1226, 0.1227, 0.1227, 0.1228, 0.1228, 0.1228, 0.1228",\
"0.1244, 0.1241, 0.124, 0.124, 0.124, 0.1241, 0.1241, 0.1241, 0.1242, 0.1241",\
"0.1259, 0.1257, 0.1255, 0.1255, 0.1256, 0.1256, 0.1256, 0.1256, 0.1256, 0.1255",\
"0.1279, 0.1276, 0.1274, 0.1274, 0.1275, 0.1275, 0.1275, 0.1275, 0.1275, 0.1269");
}
rise_power(pwr_tin_oload_10x10) {
index_1("0.02, 0.1275, 0.505, 1.226, 2.349, 3.925, 5.998, 8.61, 11.8, 15.6");
index_2("0.001, 0.003244, 0.01112, 0.02617, 0.0496, 0.08249, 0.1258, 0.1803, 0.2468, 0.3261");
values("0.1604, 0.16, 0.1597, 0.1599, 0.1604, 0.161, 0.1618, 0.1649, 0.1942, 0.3181",\
"0.1605, 0.1601, 0.1597, 0.1598, 0.1603, 0.161, 0.1616, 0.1648, 0.1947, 0.321",\
"0.1605, 0.1601, 0.1597, 0.1599, 0.1603, 0.161, 0.1616, 0.1654, 0.1973, 0.3306",\
"0.1611, 0.1607, 0.1602, 0.1604, 0.1609, 0.1615, 0.1622, 0.1668, 0.2047, 0.352",\
"0.1623, 0.1619, 0.1614, 0.1617, 0.1622, 0.1628, 0.1637, 0.1697, 0.2175, 0.3876",\
"0.1635, 0.1631, 0.1628, 0.163, 0.1635, 0.1641, 0.1649, 0.1746, 0.2385, 0.4409",\
"0.1651, 0.1648, 0.1643, 0.1646, 0.1652, 0.1656, 0.1671, 0.1835, 0.2749, 0.5188",\
"0.1669, 0.1664, 0.1661, 0.1662, 0.1668, 0.1677, 0.1705, 0.2015, 0.3391, 0.6281",\
"0.1687, 0.1684, 0.168, 0.1681, 0.1685, 0.1693, 0.1783, 0.2439, 0.4472, 0.762",\
"0.1705, 0.1701, 0.1697, 0.17, 0.1702, 0.1724, 0.2031, 0.343, 0.6023, 0.8763");
}
}
timing() {
related_pin : "CLKN" ;
timing_type : falling_edge ;
cell_fall(tmg_ntin_oload_10x10) {
index_1("0.02, 0.1275, 0.505, 1.226, 2.349, 3.925, 5.998, 8.61, 11.8, 15.6");
index_2("0.001, 0.003244, 0.01112, 0.02617, 0.0496, 0.08249, 0.1258, 0.1803, 0.2468, 0.3261");
values("1.576, 1.632, 1.785, 2.015, 2.331, 2.759, 3.318, 4.022, 4.883, 5.908",\
"1.61, 1.666, 1.819, 2.049, 2.365, 2.793, 3.353, 4.057, 4.918, 5.943",\
"1.739, 1.795, 1.948, 2.178, 2.494, 2.922, 3.481, 4.186, 5.046, 6.072",\
"1.99, 2.046, 2.199, 2.429, 2.745, 3.173, 3.733, 4.437, 5.297, 6.322",\
"2.323, 2.379, 2.532, 2.762, 3.078, 3.506, 4.065, 4.77, 5.631, 6.656",\
"2.697, 2.753, 2.906, 3.136, 3.452, 3.88, 4.44, 5.144, 6.005, 7.029",\
"3.119, 3.175, 3.328, 3.559, 3.874, 4.302, 4.861, 5.566, 6.426, 7.451",\
"3.594, 3.65, 3.804, 4.034, 4.35, 4.778, 5.337, 6.042, 6.901, 7.927",\
"4.121, 4.178, 4.331, 4.562, 4.878, 5.306, 5.865, 6.569, 7.43, 8.454",\
"4.702, 4.759, 4.912, 5.143, 5.459, 5.887, 6.446, 7.151, 8.011, 9.035");
}
cell_rise(tmg_ntin_oload_10x10) {
index_1("0.02, 0.1275, 0.505, 1.226, 2.349, 3.925, 5.998, 8.61, 11.8, 15.6");
index_2("0.001, 0.003244, 0.01112, 0.02617, 0.0496, 0.08249, 0.1258, 0.1803, 0.2468, 0.3261");
values("2.037, 2.111, 2.338, 2.747, 3.377, 4.261, 5.422, 6.885, 8.672, 10.8",\
"2.071, 2.145, 2.372, 2.78, 3.411, 4.296, 5.457, 6.918, 8.705, 10.83",\
"2.2, 2.274, 2.501, 2.91, 3.541, 4.424, 5.586, 7.048, 8.834, 10.96",\
"2.455, 2.529, 2.755, 3.164, 3.795, 4.679, 5.84, 7.303, 9.089, 11.22",\
"2.799, 2.873, 3.1, 3.509, 4.14, 5.023, 6.185, 7.648, 9.433, 11.56",\
"3.189, 3.263, 3.49, 3.899, 4.53, 5.414, 6.575, 8.039, 9.825, 11.95",\
"3.629, 3.703, 3.93, 4.339, 4.97, 5.853, 7.014, 8.478, 10.26, 12.39",\
"4.124, 4.198, 4.425, 4.834, 5.465, 6.348, 7.51, 8.971, 10.76, 12.89",\
"4.673, 4.747, 4.974, 5.383, 6.013, 6.897, 8.058, 9.52, 11.3, 13.43",\
"5.275, 5.349, 5.575, 5.985, 6.615, 7.498, 8.66, 10.12, 11.91, 14.03");
}
fall_transition(tmg_ntin_oload_10x10) {
index_1("0.02, 0.1275, 0.505, 1.226, 2.349, 3.925, 5.998, 8.61, 11.8, 15.6");
index_2("0.001, 0.003244, 0.01112, 0.02617, 0.0496, 0.08249, 0.1258, 0.1803, 0.2468, 0.3261");
values("0.1928, 0.25, 0.4194, 0.714, 1.192, 1.897, 2.846, 4.043, 5.515, 7.259",\
"0.1926, 0.25, 0.4194, 0.7136, 1.192, 1.896, 2.842, 4.048, 5.515, 7.254",\
"0.1934, 0.2502, 0.4194, 0.7138, 1.192, 1.895, 2.843, 4.041, 5.516, 7.258",\
"0.193, 0.2496, 0.4196, 0.7146, 1.191, 1.896, 2.846, 4.047, 5.51, 7.264",\
"0.1938, 0.2504, 0.4196, 0.7146, 1.192, 1.897, 2.845, 4.046, 5.51, 7.258",\
"0.1934, 0.25, 0.42, 0.7148, 1.19, 1.898, 2.844, 4.046, 5.515, 7.262",\
"0.1946, 0.2504, 0.4198, 0.7152, 1.191, 1.895, 2.841, 4.042, 5.509, 7.26",\
"0.1946, 0.2508, 0.4208, 0.7156, 1.192, 1.898, 2.843, 4.038, 5.504, 7.254",\
"0.196, 0.252, 0.422, 0.716, 1.192, 1.896, 2.844, 4.046, 5.504, 7.248",\
"0.196, 0.254, 0.424, 0.716, 1.192, 1.898, 2.844, 4.042, 5.502, 7.248");
}
rise_transition(tmg_ntin_oload_10x10) {
index_1("0.02, 0.1275, 0.505, 1.226, 2.349, 3.925, 5.998, 8.61, 11.8, 15.6");
index_2("0.001, 0.003244, 0.01112, 0.02617, 0.0496, 0.08249, 0.1258, 0.1803, 0.2468, 0.3261");
values("0.2566, 0.3504, 0.6956, 1.389, 2.495, 4.049, 6.096, 8.677, 11.83, 15.59",\
"0.2556, 0.3504, 0.6962, 1.389, 2.496, 4.05, 6.107, 8.675, 11.82, 15.58",\
"0.2568, 0.3508, 0.696, 1.387, 2.494, 4.051, 6.095, 8.678, 11.82, 15.58",\
"0.2554, 0.3506, 0.696, 1.389, 2.496, 4.047, 6.095, 8.675, 11.85, 15.6",\
"0.2566, 0.3502, 0.6958, 1.389, 2.496, 4.046, 6.098, 8.677, 11.83, 15.58",\
"0.2548, 0.3504, 0.695, 1.389, 2.496, 4.053, 6.099, 8.673, 11.85, 15.6",\
"0.2558, 0.3498, 0.6954, 1.388, 2.493, 4.051, 6.092, 8.676, 11.83, 15.59",\
"0.2546, 0.3494, 0.6948, 1.389, 2.494, 4.05, 6.096, 8.676, 11.84, 15.58",\
"0.254, 0.35, 0.694, 1.386, 2.492, 4.048, 6.096, 8.678, 11.82, 15.58",\
"0.256, 0.35, 0.696, 1.386, 2.496, 4.046, 6.098, 8.672, 11.82, 15.59");
}
}
}
}