blob: 98c2d4f74d685abf749ac41da1461fa2273f494a [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.0088704" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "!CLK&D" ;
value : "0.01065636" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "CLK&!D" ;
value : "0.00864864" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "CLK&D" ;
value : "0.0084816" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
value : "0.01065636" ;
}
pg_pin(VDD) {
voltage_name : VDD ;
pg_type : primary_power ;
}
pg_pin(VSS) {
voltage_name : VSS ;
pg_type : primary_ground ;
}
pin(CLK) {
capacitance : 0.003237 ;
clock : true ;
direction : input ;
driver_waveform_rise : driver_waveform_default_rise ;
driver_waveform_fall : driver_waveform_default_fall ;
input_voltage : default ;
max_transition : 7.4 ;
min_period : 1.361 ;
min_pulse_width_high : 0.579 ;
min_pulse_width_low : 0.678 ;
related_ground_pin : VSS ;
related_power_pin : VDD ;
internal_power() {
when : "!D" ;
fall_power(pwr_tin_10) {
index_1("0.02, 0.07094, 0.2497, 0.5912, 1.123, 1.87, 2.852, 4.089, 5.6, 7.4");
values("0.148, 0.1478, 0.1517, 0.1673, 0.1972, 0.2426, 0.3045, 0.3835, \
0.4806, 0.5964");
}
rise_power(pwr_tin_10) {
index_1("0.02, 0.07094, 0.2497, 0.5912, 1.123, 1.87, 2.852, 4.089, 5.6, 7.4");
values("0.1093, 0.109, 0.112, 0.125, 0.1503, 0.1897, 0.244, 0.3138, 0.3999, \
0.5033");
}
}
internal_power() {
when : "D" ;
fall_power(pwr_tin_10) {
index_1("0.02, 0.07094, 0.2497, 0.5912, 1.123, 1.87, 2.852, 4.089, 5.6, 7.4");
values("0.1505, 0.1502, 0.1543, 0.1698, 0.1996, 0.2451, 0.3069, 0.3858, \
0.4828, 0.5986");
}
rise_power(pwr_tin_10) {
index_1("0.02, 0.07094, 0.2497, 0.5912, 1.123, 1.87, 2.852, 4.089, 5.6, 7.4");
values("0.1086, 0.1083, 0.1115, 0.1245, 0.1498, 0.1893, 0.2437, 0.3136, \
0.3998, 0.503");
}
}
timing() {
related_pin : "CLK" ;
sdf_cond : "ENABLE_NOT_D === 1'b1" ;
timing_type : min_pulse_width ;
when : "!D" ;
fall_constraint(scalar) {
values("0.678");
}
rise_constraint(scalar) {
values("0.353");
}
}
timing() {
related_pin : "CLK" ;
sdf_cond : "ENABLE_D === 1'b1" ;
timing_type : min_pulse_width ;
when : "D" ;
fall_constraint(scalar) {
values("0.458");
}
rise_constraint(scalar) {
values("0.579");
}
}
timing() {
related_pin : "CLK" ;
sdf_cond : "ENABLE_NOT_D === 1'b1" ;
timing_type : minimum_period ;
when : "!D" ;
rise_constraint(scalar) {
values("1.361");
}
}
timing() {
related_pin : "CLK" ;
sdf_cond : "ENABLE_D === 1'b1" ;
timing_type : minimum_period ;
when : "D" ;
rise_constraint(scalar) {
values("1.239");
}
}
}
pin(D) {
capacitance : 0.002432 ;
direction : input ;
driver_waveform_rise : driver_waveform_default_rise ;
driver_waveform_fall : driver_waveform_default_fall ;
input_voltage : default ;
max_transition : 7.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.07094, 0.2497, 0.5912, 1.123, 1.87, 2.852, 4.089, 5.6, 7.4");
values("0.0888, 0.08818, 0.08885, 0.09496, 0.1083, 0.1291, 0.1579, 0.1948, \
0.2401, 0.2941");
}
rise_power(pwr_tin_10) {
index_1("0.02, 0.07094, 0.2497, 0.5912, 1.123, 1.87, 2.852, 4.089, 5.6, 7.4");
values("0.05781, 0.05811, 0.05984, 0.06545, 0.07599, 0.09232, 0.1148, \
0.144, 0.1801, 0.2234");
}
}
internal_power() {
when : "CLK" ;
fall_power(pwr_tin_10) {
index_1("0.02, 0.07094, 0.2497, 0.5912, 1.123, 1.87, 2.852, 4.089, 5.6, 7.4");
values("0.005323, 0.005319, 0.00531, 0.005313, 0.005313, 0.005318, 0.005318, \
0.005312, 0.005308, 0.005301");
}
rise_power(pwr_tin_10) {
index_1("0.02, 0.07094, 0.2497, 0.5912, 1.123, 1.87, 2.852, 4.089, 5.6, 7.4");
values("-0.003831, -0.003835, -0.00383, -0.003833, -0.003841, -0.00386, \
-0.00387, -0.003881, -0.003892, -0.003908");
}
}
timing() {
related_pin : "CLK" ;
timing_type : hold_rising ;
fall_constraint(cnst_ctin_rtin_10x10) {
index_1("0.02, 0.07094, 0.2497, 0.5912, 1.123, 1.87, 2.852, 4.089, 5.6, 7.4");
index_2("0.02, 0.07094, 0.2497, 0.5912, 1.123, 1.87, 2.852, 4.089, 5.6, 7.4");
values("0.08, 0.088, 0.126, 0.178, 0.212, 0.228, 0.233, 0.21, 0.168, 0.095",\
"0.079, 0.084, 0.12, 0.169, 0.204, 0.22, 0.226, 0.205, 0.16, 0.094",\
"0.034, 0.045, 0.079, 0.128, 0.168, 0.186, 0.183, 0.167, 0.12, 0.059",\
"-0.072, -0.057, -0.024, 0.027, 0.069, 0.083, 0.091, 0.065, 0.02, -0.042",\
"-0.219, -0.212, -0.176, -0.125, -0.088, -0.066, -0.066, -0.092, -0.133, -0.208",\
"-0.405, -0.397, -0.365, -0.314, -0.279, -0.263, -0.262, -0.287, -0.341, -0.414",\
"-0.637, -0.631, -0.594, -0.544, -0.511, -0.504, -0.504, -0.535, -0.59, -0.668",\
"-0.917, -0.91, -0.879, -0.824, -0.8, -0.785, -0.791, -0.821, -0.889, -0.97",\
"-1.25, -1.238, -1.209, -1.155, -1.136, -1.127, -1.131, -1.169, -1.236, -1.322",\
"-1.635, -1.626, -1.599, -1.545, -1.532, -1.519, -1.525, -1.571, -1.638, -1.73");
}
rise_constraint(cnst_ctin_rtin_10x10) {
index_1("0.02, 0.07094, 0.2497, 0.5912, 1.123, 1.87, 2.852, 4.089, 5.6, 7.4");
index_2("0.02, 0.07094, 0.2497, 0.5912, 1.123, 1.87, 2.852, 4.089, 5.6, 7.4");
values("0.046, 0.054, 0.086, 0.129, 0.146, 0.157, 0.152, 0.138, 0.106, 0.059",\
"0.045, 0.053, 0.081, 0.117, 0.142, 0.153, 0.152, 0.137, 0.104, 0.057",\
"0.029, 0.039, 0.072, 0.107, 0.137, 0.146, 0.144, 0.129, 0.099, 0.05",\
"0.035, 0.047, 0.074, 0.108, 0.134, 0.147, 0.143, 0.123, 0.088, 0.036",\
"0.065, 0.076, 0.101, 0.135, 0.153, 0.156, 0.143, 0.126, 0.088, 0.024",\
"0.14, 0.151, 0.172, 0.204, 0.218, 0.215, 0.194, 0.165, 0.121, 0.05",\
"0.267, 0.281, 0.298, 0.325, 0.334, 0.32, 0.294, 0.259, 0.202, 0.121",\
"0.452, 0.459, 0.475, 0.497, 0.503, 0.484, 0.442, 0.406, 0.336, 0.256",\
"0.695, 0.703, 0.718, 0.729, 0.723, 0.695, 0.651, 0.604, 0.531, 0.442",\
"0.995, 1.003, 1.017, 1.029, 1.006, 0.973, 0.921, 0.861, 0.779, 0.68");
}
}
timing() {
related_pin : "CLK" ;
timing_type : setup_rising ;
fall_constraint(cnst_ctin_rtin_10x10) {
index_1("0.02, 0.07094, 0.2497, 0.5912, 1.123, 1.87, 2.852, 4.089, 5.6, 7.4");
index_2("0.02, 0.07094, 0.2497, 0.5912, 1.123, 1.87, 2.852, 4.089, 5.6, 7.4");
values("0.315, 0.306, 0.265, 0.216, 0.17, 0.146, 0.142, 0.165, 0.219, 0.292",\
"0.315, 0.305, 0.27, 0.213, 0.172, 0.151, 0.147, 0.168, 0.223, 0.296",\
"0.357, 0.35, 0.308, 0.256, 0.216, 0.194, 0.195, 0.211, 0.26, 0.34",\
"0.482, 0.474, 0.428, 0.38, 0.339, 0.313, 0.308, 0.329, 0.381, 0.458",\
"0.681, 0.669, 0.628, 0.579, 0.535, 0.516, 0.513, 0.529, 0.575, 0.646",\
"0.945, 0.934, 0.901, 0.85, 0.805, 0.779, 0.776, 0.79, 0.84, 0.906",\
"1.284, 1.273, 1.233, 1.178, 1.136, 1.111, 1.105, 1.126, 1.167, 1.242",\
"1.676, 1.667, 1.623, 1.572, 1.532, 1.507, 1.501, 1.514, 1.555, 1.625",\
"2.133, 2.128, 2.084, 2.025, 1.98, 1.961, 1.949, 1.963, 2.009, 2.077",\
"2.653, 2.65, 2.601, 2.542, 2.496, 2.469, 2.462, 2.473, 2.517, 2.587");
}
rise_constraint(cnst_ctin_rtin_10x10) {
index_1("0.02, 0.07094, 0.2497, 0.5912, 1.123, 1.87, 2.852, 4.089, 5.6, 7.4");
index_2("0.02, 0.07094, 0.2497, 0.5912, 1.123, 1.87, 2.852, 4.089, 5.6, 7.4");
values("0.292, 0.286, 0.24, 0.191, 0.144, 0.125, 0.135, 0.159, 0.212, 0.292",\
"0.301, 0.29, 0.248, 0.195, 0.158, 0.135, 0.139, 0.168, 0.216, 0.296",\
"0.327, 0.323, 0.279, 0.225, 0.178, 0.16, 0.163, 0.19, 0.238, 0.321",\
"0.359, 0.352, 0.304, 0.251, 0.2, 0.185, 0.195, 0.213, 0.268, 0.342",\
"0.358, 0.348, 0.306, 0.254, 0.206, 0.187, 0.195, 0.221, 0.272, 0.352",\
"0.319, 0.314, 0.269, 0.217, 0.171, 0.15, 0.162, 0.192, 0.251, 0.33",\
"0.24, 0.234, 0.191, 0.135, 0.093, 0.077, 0.091, 0.129, 0.186, 0.28",\
"0.112, 0.101, 0.059, 0.007, -0.028, -0.046, -0.036, 0.01, 0.073, 0.172",\
"-0.08, -0.077, -0.123, -0.169, -0.215, -0.232, -0.207, -0.16, -0.087, 0.017",\
"-0.31, -0.323, -0.358, -0.409, -0.455, -0.464, -0.44, -0.392, -0.312, -0.203");
}
}
}
pin(Q) {
direction : output ;
function : "IQ1" ;
max_capacitance : 0.3619 ;
max_transition : 7.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.07094, 0.2497, 0.5912, 1.123, 1.87, 2.852, 4.089, 5.6, 7.4");
index_2("0.001, 0.003491, 0.01223, 0.02893, 0.05494, 0.09144, 0.1395, 0.2, 0.2738, 0.3619");
values("0.1457, 0.1436, 0.1408, 0.139, 0.1379, 0.1374, 0.137, 0.1368, 0.1366, 0.1365",\
"0.1456, 0.1436, 0.1408, 0.139, 0.138, 0.1374, 0.137, 0.1368, 0.1366, 0.1365",\
"0.1458, 0.1439, 0.1409, 0.1392, 0.1382, 0.1376, 0.1372, 0.137, 0.1368, 0.1367",\
"0.1465, 0.1445, 0.1416, 0.1399, 0.1389, 0.1383, 0.1379, 0.1377, 0.1375, 0.1374",\
"0.1478, 0.1458, 0.1429, 0.1412, 0.1401, 0.1396, 0.1392, 0.139, 0.1387, 0.1386",\
"0.1492, 0.1472, 0.1443, 0.1426, 0.1416, 0.141, 0.1406, 0.1404, 0.1402, 0.1401",\
"0.1511, 0.1491, 0.1461, 0.1444, 0.1434, 0.1428, 0.1424, 0.1422, 0.142, 0.1419",\
"0.1534, 0.1513, 0.1484, 0.1466, 0.1456, 0.1451, 0.1447, 0.1445, 0.1443, 0.1442",\
"0.1557, 0.1537, 0.1507, 0.1489, 0.148, 0.1474, 0.147, 0.1468, 0.1466, 0.1465",\
"0.158, 0.156, 0.1531, 0.1513, 0.1503, 0.1497, 0.1494, 0.1491, 0.1489, 0.1488");
}
rise_power(pwr_tin_oload_10x10) {
index_1("0.02, 0.07094, 0.2497, 0.5912, 1.123, 1.87, 2.852, 4.089, 5.6, 7.4");
index_2("0.001, 0.003491, 0.01223, 0.02893, 0.05494, 0.09144, 0.1395, 0.2, 0.2738, 0.3619");
values("0.1514, 0.1492, 0.1457, 0.1433, 0.1422, 0.1425, 0.1427, 0.1431, 0.1434, 0.1466",\
"0.1514, 0.1492, 0.1456, 0.1433, 0.1422, 0.1423, 0.1426, 0.143, 0.144, 0.1458",\
"0.1512, 0.1491, 0.1456, 0.1432, 0.1421, 0.1422, 0.1425, 0.143, 0.1433, 0.1464",\
"0.1524, 0.1502, 0.1466, 0.1443, 0.1432, 0.1434, 0.1436, 0.144, 0.1444, 0.1481",\
"0.154, 0.1519, 0.1483, 0.146, 0.1449, 0.1451, 0.1453, 0.1456, 0.147, 0.1493",\
"0.1567, 0.1545, 0.1509, 0.1488, 0.1477, 0.1476, 0.1479, 0.1483, 0.1489, 0.1527",\
"0.1601, 0.158, 0.1544, 0.1516, 0.151, 0.1514, 0.1514, 0.1516, 0.1523, 0.1565",\
"0.1647, 0.1626, 0.1589, 0.1561, 0.1551, 0.1554, 0.1566, 0.1568, 0.1575, 0.1622",\
"0.1703, 0.168, 0.1644, 0.1617, 0.1602, 0.1601, 0.1611, 0.1636, 0.1637, 0.1717",\
"0.1767, 0.1745, 0.1709, 0.168, 0.1666, 0.1662, 0.1662, 0.1676, 0.1718, 0.1828");
}
}
timing() {
related_pin : "CLK" ;
timing_type : rising_edge ;
cell_fall(tmg_ntin_oload_10x10) {
index_1("0.02, 0.07094, 0.2497, 0.5912, 1.123, 1.87, 2.852, 4.089, 5.6, 7.4");
index_2("0.001, 0.003491, 0.01223, 0.02893, 0.05494, 0.09144, 0.1395, 0.2, 0.2738, 0.3619");
values("0.6961, 0.7235, 0.7997, 0.9202, 1.093, 1.33, 1.642, 2.036, 2.517, 3.09",\
"0.7055, 0.7329, 0.809, 0.9296, 1.102, 1.34, 1.652, 2.046, 2.526, 3.099",\
"0.7423, 0.7698, 0.8461, 0.9664, 1.139, 1.377, 1.689, 2.082, 2.563, 3.136",\
"0.7979, 0.8253, 0.9016, 1.022, 1.195, 1.432, 1.744, 2.138, 2.618, 3.191",\
"0.845, 0.8725, 0.9486, 1.069, 1.242, 1.479, 1.792, 2.185, 2.666, 3.239",\
"0.8774, 0.9048, 0.9809, 1.102, 1.274, 1.512, 1.824, 2.217, 2.698, 3.271",\
"0.8914, 0.9188, 0.9951, 1.115, 1.288, 1.526, 1.838, 2.231, 2.712, 3.284",\
"0.884, 0.9114, 0.9875, 1.108, 1.281, 1.518, 1.83, 2.224, 2.704, 3.277",\
"0.8536, 0.8809, 0.9571, 1.078, 1.25, 1.488, 1.8, 2.193, 2.674, 3.246",\
"0.7983, 0.8257, 0.9019, 1.023, 1.195, 1.433, 1.745, 2.138, 2.619, 3.191");
}
cell_rise(tmg_ntin_oload_10x10) {
index_1("0.02, 0.07094, 0.2497, 0.5912, 1.123, 1.87, 2.852, 4.089, 5.6, 7.4");
index_2("0.001, 0.003491, 0.01223, 0.02893, 0.05494, 0.09144, 0.1395, 0.2, 0.2738, 0.3619");
values("0.7779, 0.8098, 0.9094, 1.092, 1.377, 1.78, 2.311, 2.979, 3.796, 4.772",\
"0.7871, 0.819, 0.9185, 1.101, 1.387, 1.789, 2.32, 2.989, 3.805, 4.78",\
"0.8236, 0.8559, 0.9553, 1.137, 1.424, 1.826, 2.356, 3.025, 3.842, 4.815",\
"0.8813, 0.9131, 1.013, 1.195, 1.481, 1.884, 2.414, 3.083, 3.9, 4.875",\
"0.9316, 0.9635, 1.063, 1.245, 1.531, 1.934, 2.464, 3.134, 3.951, 4.926",\
"0.9704, 1.002, 1.102, 1.284, 1.57, 1.972, 2.503, 3.171, 3.988, 4.962",\
"0.9922, 1.024, 1.124, 1.306, 1.591, 1.994, 2.524, 3.193, 4.01, 4.985",\
"0.9956, 1.028, 1.127, 1.309, 1.595, 1.997, 2.529, 3.196, 4.013, 4.988",\
"0.9788, 1.011, 1.111, 1.293, 1.578, 1.981, 2.511, 3.18, 3.996, 4.97",\
"0.9399, 0.9719, 1.072, 1.254, 1.54, 1.942, 2.472, 3.141, 3.957, 4.93");
}
fall_transition(tmg_ntin_oload_10x10) {
index_1("0.02, 0.07094, 0.2497, 0.5912, 1.123, 1.87, 2.852, 4.089, 5.6, 7.4");
index_2("0.001, 0.003491, 0.01223, 0.02893, 0.05494, 0.09144, 0.1395, 0.2, 0.2738, 0.3619");
values("0.0984, 0.1274, 0.2181, 0.3869, 0.6628, 1.065, 1.6, 2.28, 3.109, 4.092",\
"0.09868, 0.1274, 0.218, 0.3867, 0.6632, 1.066, 1.601, 2.28, 3.109, 4.094",\
"0.09826, 0.1275, 0.2185, 0.3872, 0.6632, 1.065, 1.6, 2.28, 3.108, 4.092",\
"0.0988, 0.1272, 0.2184, 0.3872, 0.6632, 1.064, 1.6, 2.28, 3.104, 4.092",\
"0.0982, 0.127, 0.2182, 0.3872, 0.6626, 1.064, 1.602, 2.28, 3.104, 4.095",\
"0.098, 0.127, 0.2176, 0.3866, 0.6618, 1.064, 1.601, 2.28, 3.105, 4.091",\
"0.0984, 0.128, 0.2182, 0.3866, 0.6622, 1.064, 1.599, 2.276, 3.105, 4.09",\
"0.0982, 0.127, 0.2176, 0.3868, 0.6622, 1.064, 1.6, 2.275, 3.1, 4.085",\
"0.0982, 0.1274, 0.218, 0.3868, 0.6626, 1.064, 1.602, 2.278, 3.102, 4.085",\
"0.0984, 0.1278, 0.218, 0.3862, 0.6622, 1.064, 1.602, 2.28, 3.101, 4.087");
}
rise_transition(tmg_ntin_oload_10x10) {
index_1("0.02, 0.07094, 0.2497, 0.5912, 1.123, 1.87, 2.852, 4.089, 5.6, 7.4");
index_2("0.001, 0.003491, 0.01223, 0.02893, 0.05494, 0.09144, 0.1395, 0.2, 0.2738, 0.3619");
values("0.1205, 0.1649, 0.3256, 0.655, 1.181, 1.923, 2.897, 4.118, 5.616, 7.399",\
"0.1206, 0.1649, 0.326, 0.655, 1.181, 1.923, 2.893, 4.127, 5.616, 7.398",\
"0.1203, 0.1649, 0.3256, 0.655, 1.181, 1.922, 2.898, 4.126, 5.614, 7.4",\
"0.1206, 0.1648, 0.3256, 0.655, 1.181, 1.923, 2.896, 4.117, 5.616, 7.399",\
"0.1206, 0.1652, 0.3258, 0.655, 1.181, 1.923, 2.892, 4.125, 5.616, 7.399",\
"0.1206, 0.1648, 0.3258, 0.6548, 1.182, 1.92, 2.899, 4.124, 5.615, 7.4",\
"0.121, 0.165, 0.3262, 0.6548, 1.182, 1.92, 2.895, 4.123, 5.615, 7.398",\
"0.1208, 0.1656, 0.3268, 0.6548, 1.181, 1.92, 2.893, 4.118, 5.617, 7.4",\
"0.1214, 0.1658, 0.3264, 0.6552, 1.182, 1.92, 2.897, 4.12, 5.616, 7.405",\
"0.1218, 0.1662, 0.3272, 0.6552, 1.182, 1.922, 2.895, 4.122, 5.617, 7.401");
}
}
}
}