blob: 3d45d8747768bb6f329058a140024fca43d8b4e6 [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 : "0.01385395" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "!CLK&D" ;
value : "0.01831115" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "CLK&!D" ;
value : "0.01324015" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "CLK&D" ;
value : "0.0157751" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
value : "0.01831115" ;
}
pg_pin(VDD) {
voltage_name : VDD ;
pg_type : primary_power ;
}
pg_pin(VSS) {
voltage_name : VSS ;
pg_type : primary_ground ;
}
pin(CLK) {
capacitance : 0.004959 ;
clock : true ;
direction : input ;
driver_waveform_rise : driver_waveform_default_rise ;
driver_waveform_fall : driver_waveform_default_fall ;
input_voltage : default ;
max_transition : 3.6 ;
min_period : 0.704 ;
min_pulse_width_high : 0.292 ;
min_pulse_width_low : 0.354 ;
related_ground_pin : VSS ;
related_power_pin : VDD ;
internal_power() {
when : "!D" ;
fall_power(pwr_tin_10) {
index_1("0.02, 0.04471, 0.1314, 0.2971, 0.5551, 0.9172, 1.394, 1.994, 2.727, 3.6");
values("0.4934, 0.4935, 0.508, 0.5609, 0.6631, 0.817, 1.025, 1.29, 1.614, \
2");
}
rise_power(pwr_tin_10) {
index_1("0.02, 0.04471, 0.1314, 0.2971, 0.5551, 0.9172, 1.394, 1.994, 2.727, 3.6");
values("0.3238, 0.3235, 0.3341, 0.3786, 0.465, 0.5996, 0.7837, 1.021, \
1.313, 1.662");
}
}
internal_power() {
when : "D" ;
fall_power(pwr_tin_10) {
index_1("0.02, 0.04471, 0.1314, 0.2971, 0.5551, 0.9172, 1.394, 1.994, 2.727, 3.6");
values("0.5093, 0.5098, 0.5242, 0.5774, 0.6796, 0.833, 1.041, 1.305, 1.628, \
2.013");
}
rise_power(pwr_tin_10) {
index_1("0.02, 0.04471, 0.1314, 0.2971, 0.5551, 0.9172, 1.394, 1.994, 2.727, 3.6");
values("0.3215, 0.3213, 0.3323, 0.377, 0.4636, 0.5983, 0.7829, 1.02, 1.311, \
1.66");
}
}
timing() {
related_pin : "CLK" ;
sdf_cond : "ENABLE_NOT_D === 1'b1" ;
timing_type : min_pulse_width ;
when : "!D" ;
fall_constraint(scalar) {
values("0.354");
}
rise_constraint(scalar) {
values("0.257");
}
}
timing() {
related_pin : "CLK" ;
sdf_cond : "ENABLE_D === 1'b1" ;
timing_type : min_pulse_width ;
when : "D" ;
fall_constraint(scalar) {
values("0.277");
}
rise_constraint(scalar) {
values("0.292");
}
}
timing() {
related_pin : "CLK" ;
sdf_cond : "ENABLE_NOT_D === 1'b1" ;
timing_type : minimum_period ;
when : "!D" ;
rise_constraint(scalar) {
values("0.704");
}
}
timing() {
related_pin : "CLK" ;
sdf_cond : "ENABLE_D === 1'b1" ;
timing_type : minimum_period ;
when : "D" ;
rise_constraint(scalar) {
values("0.664");
}
}
}
pin(D) {
capacitance : 0.003761 ;
direction : input ;
driver_waveform_rise : driver_waveform_default_rise ;
driver_waveform_fall : driver_waveform_default_fall ;
input_voltage : default ;
max_transition : 3.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.04471, 0.1314, 0.2971, 0.5551, 0.9172, 1.394, 1.994, 2.727, 3.6");
values("0.2979, 0.2971, 0.3026, 0.3309, 0.3899, 0.4804, 0.6028, 0.758, \
0.9467, 1.171");
}
rise_power(pwr_tin_10) {
index_1("0.02, 0.04471, 0.1314, 0.2971, 0.5551, 0.9172, 1.394, 1.994, 2.727, 3.6");
values("0.2005, 0.2012, 0.2077, 0.2326, 0.2813, 0.3579, 0.4627, 0.5974, \
0.7627, 0.9599");
}
}
internal_power() {
when : "CLK" ;
fall_power(pwr_tin_10) {
index_1("0.02, 0.04471, 0.1314, 0.2971, 0.5551, 0.9172, 1.394, 1.994, 2.727, 3.6");
values("0.02644, 0.02645, 0.02645, 0.02646, 0.02648, 0.02648, 0.02652, \
0.0265, 0.02657, 0.02657");
}
rise_power(pwr_tin_10) {
index_1("0.02, 0.04471, 0.1314, 0.2971, 0.5551, 0.9172, 1.394, 1.994, 2.727, 3.6");
values("-0.03043, -0.03041, -0.03034, -0.03024, -0.0302, -0.03021, -0.0303, \
-0.03031, -0.03031, -0.03034");
}
}
timing() {
related_pin : "CLK" ;
timing_type : hold_rising ;
fall_constraint(cnst_ctin_rtin_10x10) {
index_1("0.02, 0.04471, 0.1314, 0.2971, 0.5551, 0.9172, 1.394, 1.994, 2.727, 3.6");
index_2("0.02, 0.04471, 0.1314, 0.2971, 0.5551, 0.9172, 1.394, 1.994, 2.727, 3.6");
values("0.114, 0.118, 0.128, 0.155, 0.179, 0.198, 0.208, 0.205, 0.195, 0.171",\
"0.111, 0.113, 0.126, 0.149, 0.175, 0.195, 0.202, 0.2, 0.188, 0.171",\
"0.091, 0.097, 0.109, 0.134, 0.162, 0.174, 0.183, 0.181, 0.175, 0.152",\
"0.069, 0.073, 0.087, 0.113, 0.132, 0.148, 0.156, 0.151, 0.138, 0.122",\
"0.05, 0.052, 0.07, 0.088, 0.11, 0.123, 0.125, 0.122, 0.112, 0.086",\
"0.023, 0.024, 0.042, 0.061, 0.081, 0.099, 0.097, 0.094, 0.082, 0.056",\
"-0.003, 0.006, 0.027, 0.046, 0.057, 0.073, 0.072, 0.067, 0.049, 0.024",\
"-0.023, -0.017, 0.004, 0.018, 0.03, 0.048, 0.045, 0.03, 0.018, -0.008",\
"-0.047, -0.039, -0.014, -0.007, 0.012, 0.028, 0.013, -0.006, -0.014, -0.04",\
"-0.072, -0.062, -0.04, -0.034, -0.024, -0.011, -0.018, -0.04, -0.053, -0.079");
}
rise_constraint(cnst_ctin_rtin_10x10) {
index_1("0.02, 0.04471, 0.1314, 0.2971, 0.5551, 0.9172, 1.394, 1.994, 2.727, 3.6");
index_2("0.02, 0.04471, 0.1314, 0.2971, 0.5551, 0.9172, 1.394, 1.994, 2.727, 3.6");
values("0.029, 0.031, 0.05, 0.062, 0.069, 0.073, 0.074, 0.055, 0.039, 0.017",\
"0.024, 0.026, 0.043, 0.058, 0.07, 0.074, 0.074, 0.054, 0.039, 0.016",\
"0.013, 0.022, 0.039, 0.05, 0.055, 0.069, 0.065, 0.052, 0.036, 0.012",\
"0.004, 0.005, 0.022, 0.041, 0.043, 0.05, 0.046, 0.031, 0.014, -0.015",\
"-0.006, -0.005, 0.016, 0.02, 0.026, 0.026, 0.016, 0.003, -0.021, -0.053",\
"-0.006, -0.005, 0.011, 0.019, 0.024, 0.02, -0, -0.025, -0.056, -0.096",\
"0.013, 0.014, 0.027, 0.037, 0.026, 0.012, -0.007, -0.036, -0.08, -0.124",\
"0.041, 0.048, 0.06, 0.06, 0.05, 0.033, 0.002, -0.04, -0.087, -0.139",\
"0.095, 0.096, 0.11, 0.101, 0.087, 0.065, 0.023, -0.024, -0.074, -0.141",\
"0.156, 0.167, 0.175, 0.161, 0.141, 0.112, 0.068, 0.015, -0.053, -0.123");
}
}
timing() {
related_pin : "CLK" ;
timing_type : setup_rising ;
fall_constraint(cnst_ctin_rtin_10x10) {
index_1("0.02, 0.04471, 0.1314, 0.2971, 0.5551, 0.9172, 1.394, 1.994, 2.727, 3.6");
index_2("0.02, 0.04471, 0.1314, 0.2971, 0.5551, 0.9172, 1.394, 1.994, 2.727, 3.6");
values("0.126, 0.123, 0.107, 0.08, 0.065, 0.04, 0.036, 0.036, 0.059, 0.083",\
"0.13, 0.126, 0.114, 0.085, 0.068, 0.047, 0.038, 0.043, 0.061, 0.085",\
"0.151, 0.151, 0.129, 0.106, 0.087, 0.066, 0.061, 0.06, 0.081, 0.1",\
"0.198, 0.194, 0.18, 0.153, 0.13, 0.116, 0.11, 0.107, 0.124, 0.152",\
"0.273, 0.272, 0.261, 0.227, 0.206, 0.195, 0.181, 0.182, 0.203, 0.224",\
"0.372, 0.367, 0.353, 0.328, 0.303, 0.286, 0.278, 0.279, 0.294, 0.314",\
"0.483, 0.481, 0.468, 0.44, 0.416, 0.398, 0.394, 0.387, 0.404, 0.432",\
"0.611, 0.605, 0.59, 0.564, 0.544, 0.526, 0.52, 0.519, 0.531, 0.557",\
"0.752, 0.75, 0.731, 0.701, 0.678, 0.668, 0.655, 0.655, 0.67, 0.689",\
"0.909, 0.904, 0.892, 0.863, 0.838, 0.818, 0.807, 0.809, 0.825, 0.848");
}
rise_constraint(cnst_ctin_rtin_10x10) {
index_1("0.02, 0.04471, 0.1314, 0.2971, 0.5551, 0.9172, 1.394, 1.994, 2.727, 3.6");
index_2("0.02, 0.04471, 0.1314, 0.2971, 0.5551, 0.9172, 1.394, 1.994, 2.727, 3.6");
values("0.166, 0.166, 0.154, 0.124, 0.113, 0.113, 0.123, 0.137, 0.172, 0.211",\
"0.168, 0.173, 0.155, 0.13, 0.117, 0.116, 0.126, 0.14, 0.175, 0.222",\
"0.19, 0.184, 0.168, 0.145, 0.132, 0.128, 0.136, 0.155, 0.184, 0.231",\
"0.204, 0.206, 0.193, 0.169, 0.151, 0.151, 0.165, 0.179, 0.217, 0.259",\
"0.234, 0.232, 0.216, 0.19, 0.181, 0.178, 0.181, 0.208, 0.245, 0.291",\
"0.254, 0.252, 0.236, 0.217, 0.197, 0.197, 0.212, 0.234, 0.266, 0.32",\
"0.263, 0.258, 0.25, 0.229, 0.213, 0.217, 0.229, 0.25, 0.296, 0.352",\
"0.269, 0.265, 0.249, 0.228, 0.221, 0.221, 0.238, 0.259, 0.309, 0.365",\
"0.258, 0.259, 0.241, 0.223, 0.212, 0.21, 0.228, 0.252, 0.308, 0.372",\
"0.235, 0.236, 0.227, 0.2, 0.19, 0.196, 0.203, 0.239, 0.292, 0.358");
}
}
}
pin(Q) {
direction : output ;
function : "IQ1" ;
max_capacitance : 0.3594 ;
max_transition : 3.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.04471, 0.1314, 0.2971, 0.5551, 0.9172, 1.394, 1.994, 2.727, 3.6");
index_2("0.001, 0.003473, 0.01216, 0.02874, 0.05457, 0.09081, 0.1385, 0.1986, 0.2719, 0.3594");
values("0.5812, 0.5729, 0.5555, 0.5422, 0.5339, 0.5285, 0.5247, 0.5226, 0.5207, 0.5195",\
"0.5814, 0.5731, 0.5557, 0.5424, 0.5342, 0.5287, 0.525, 0.5228, 0.5209, 0.5197",\
"0.5822, 0.5736, 0.5565, 0.5431, 0.5348, 0.5294, 0.5256, 0.5234, 0.5216, 0.5204",\
"0.5857, 0.5771, 0.56, 0.5464, 0.5381, 0.5327, 0.5293, 0.5266, 0.525, 0.524",\
"0.5923, 0.5839, 0.5665, 0.5535, 0.5451, 0.5396, 0.5359, 0.5337, 0.5319, 0.5306",\
"0.6005, 0.5925, 0.5748, 0.5616, 0.5532, 0.5479, 0.5443, 0.542, 0.5402, 0.539",\
"0.6114, 0.603, 0.5859, 0.5726, 0.5644, 0.5589, 0.5552, 0.5529, 0.551, 0.5498",\
"0.6238, 0.6153, 0.5977, 0.5847, 0.5764, 0.5711, 0.5674, 0.5652, 0.5633, 0.5622",\
"0.6369, 0.6288, 0.6113, 0.5982, 0.59, 0.5847, 0.581, 0.5787, 0.5769, 0.5757",\
"0.653, 0.6444, 0.6273, 0.6144, 0.6057, 0.6002, 0.5968, 0.5943, 0.5928, 0.5916");
}
rise_power(pwr_tin_oload_10x10) {
index_1("0.02, 0.04471, 0.1314, 0.2971, 0.5551, 0.9172, 1.394, 1.994, 2.727, 3.6");
index_2("0.001, 0.003473, 0.01216, 0.02874, 0.05457, 0.09081, 0.1385, 0.1986, 0.2719, 0.3594");
values("0.5207, 0.5136, 0.5011, 0.4914, 0.4843, 0.4813, 0.4804, 0.4802, 0.4818, 0.4821",\
"0.5211, 0.5145, 0.5013, 0.4918, 0.485, 0.4818, 0.48, 0.481, 0.482, 0.4828",\
"0.521, 0.5139, 0.5015, 0.4912, 0.4849, 0.4815, 0.4807, 0.4804, 0.4819, 0.4822",\
"0.5255, 0.5183, 0.5059, 0.4958, 0.4889, 0.4858, 0.4849, 0.4858, 0.4863, 0.4866",\
"0.5352, 0.5282, 0.5154, 0.505, 0.4988, 0.4951, 0.4944, 0.4948, 0.4964, 0.4972",\
"0.5496, 0.5429, 0.5295, 0.5207, 0.5132, 0.5098, 0.5091, 0.5092, 0.5102, 0.5105",\
"0.5697, 0.5633, 0.5492, 0.5393, 0.5338, 0.5308, 0.529, 0.5287, 0.5292, 0.53",\
"0.5955, 0.5887, 0.5755, 0.5643, 0.5567, 0.5544, 0.5552, 0.5549, 0.5559, 0.5556",\
"0.6268, 0.6197, 0.6057, 0.5945, 0.5867, 0.5838, 0.5846, 0.5875, 0.5886, 0.5888",\
"0.6627, 0.6558, 0.6423, 0.6302, 0.622, 0.6173, 0.615, 0.6179, 0.6244, 0.6242");
}
}
timing() {
related_pin : "CLK" ;
timing_type : rising_edge ;
cell_fall(tmg_ntin_oload_10x10) {
index_1("0.02, 0.04471, 0.1314, 0.2971, 0.5551, 0.9172, 1.394, 1.994, 2.727, 3.6");
index_2("0.001, 0.003473, 0.01216, 0.02874, 0.05457, 0.09081, 0.1385, 0.1986, 0.2719, 0.3594");
values("0.4775, 0.4926, 0.5356, 0.6034, 0.6992, 0.8294, 0.9999, 1.215, 1.478, 1.792",\
"0.4809, 0.496, 0.5391, 0.6067, 0.7026, 0.8328, 1.003, 1.219, 1.482, 1.796",\
"0.496, 0.5111, 0.5542, 0.6219, 0.7178, 0.8479, 1.018, 1.234, 1.497, 1.811",\
"0.5241, 0.5393, 0.5822, 0.6499, 0.7457, 0.8759, 1.046, 1.262, 1.525, 1.839",\
"0.5521, 0.5672, 0.6102, 0.678, 0.7738, 0.904, 1.074, 1.29, 1.553, 1.867",\
"0.5747, 0.5898, 0.6328, 0.7005, 0.7964, 0.9267, 1.097, 1.312, 1.575, 1.89",\
"0.5894, 0.6044, 0.6475, 0.7152, 0.811, 0.9413, 1.112, 1.327, 1.59, 1.904",\
"0.5946, 0.6097, 0.6527, 0.7204, 0.8163, 0.9465, 1.117, 1.332, 1.595, 1.909",\
"0.5892, 0.6046, 0.6476, 0.7153, 0.8111, 0.9414, 1.112, 1.327, 1.59, 1.904",\
"0.5726, 0.5877, 0.6308, 0.6985, 0.7944, 0.9245, 1.095, 1.311, 1.573, 1.887");
}
cell_rise(tmg_ntin_oload_10x10) {
index_1("0.02, 0.04471, 0.1314, 0.2971, 0.5551, 0.9172, 1.394, 1.994, 2.727, 3.6");
index_2("0.001, 0.003473, 0.01216, 0.02874, 0.05457, 0.09081, 0.1385, 0.1986, 0.2719, 0.3594");
values("0.4406, 0.4559, 0.5036, 0.5904, 0.7268, 0.9203, 1.176, 1.498, 1.892, 2.363",\
"0.4441, 0.4595, 0.5068, 0.5939, 0.7303, 0.9239, 1.179, 1.501, 1.895, 2.365",\
"0.4589, 0.4742, 0.5218, 0.6087, 0.7451, 0.9385, 1.194, 1.516, 1.911, 2.381",\
"0.4863, 0.5015, 0.5492, 0.636, 0.7725, 0.966, 1.221, 1.544, 1.938, 2.408",\
"0.514, 0.5293, 0.5769, 0.6636, 0.8003, 0.9936, 1.249, 1.571, 1.965, 2.435",\
"0.5366, 0.5521, 0.5995, 0.6864, 0.8227, 1.016, 1.272, 1.594, 1.988, 2.459",\
"0.5524, 0.5679, 0.6152, 0.7021, 0.8387, 1.032, 1.287, 1.609, 2.004, 2.474",\
"0.5598, 0.5754, 0.6228, 0.7096, 0.8459, 1.039, 1.294, 1.616, 2.01, 2.48",\
"0.5577, 0.5732, 0.6208, 0.7074, 0.8438, 1.037, 1.292, 1.614, 2.008, 2.477",\
"0.5455, 0.5611, 0.6086, 0.695, 0.8312, 1.024, 1.279, 1.602, 1.995, 2.464");
}
fall_transition(tmg_ntin_oload_10x10) {
index_1("0.02, 0.04471, 0.1314, 0.2971, 0.5551, 0.9172, 1.394, 1.994, 2.727, 3.6");
index_2("0.001, 0.003473, 0.01216, 0.02874, 0.05457, 0.09081, 0.1385, 0.1986, 0.2719, 0.3594");
values("0.07084, 0.08722, 0.1367, 0.2267, 0.3724, 0.5862, 0.8757, 1.244, 1.69, 2.226",\
"0.0706, 0.08736, 0.1368, 0.2268, 0.3724, 0.5869, 0.875, 1.243, 1.692, 2.228",\
"0.07072, 0.08722, 0.1367, 0.2266, 0.3725, 0.5859, 0.8757, 1.244, 1.69, 2.226",\
"0.07058, 0.08732, 0.1367, 0.2265, 0.3726, 0.5867, 0.8754, 1.242, 1.691, 2.228",\
"0.07068, 0.08736, 0.1369, 0.2265, 0.3724, 0.587, 0.8752, 1.243, 1.693, 2.228",\
"0.0708, 0.0874, 0.1368, 0.2264, 0.3722, 0.587, 0.8764, 1.243, 1.691, 2.228",\
"0.0706, 0.0874, 0.1368, 0.2262, 0.3728, 0.5862, 0.875, 1.241, 1.689, 2.227",\
"0.0706, 0.0872, 0.1364, 0.2262, 0.3724, 0.5866, 0.8752, 1.241, 1.688, 2.224",\
"0.0706, 0.0872, 0.1366, 0.2266, 0.3722, 0.5866, 0.876, 1.241, 1.692, 2.223",\
"0.0704, 0.087, 0.1368, 0.2272, 0.3722, 0.5858, 0.8756, 1.242, 1.689, 2.224");
}
rise_transition(tmg_ntin_oload_10x10) {
index_1("0.02, 0.04471, 0.1314, 0.2971, 0.5551, 0.9172, 1.394, 1.994, 2.727, 3.6");
index_2("0.001, 0.003473, 0.01216, 0.02874, 0.05457, 0.09081, 0.1385, 0.1986, 0.2719, 0.3594");
values("0.0737, 0.09408, 0.1705, 0.3272, 0.5803, 0.937, 1.407, 1.999, 2.721, 3.583",\
"0.07356, 0.09416, 0.1706, 0.3272, 0.5802, 0.9376, 1.407, 2.002, 2.721, 3.582",\
"0.0737, 0.09406, 0.1705, 0.3271, 0.5802, 0.9369, 1.407, 1.999, 2.721, 3.583",\
"0.07374, 0.09404, 0.1705, 0.3269, 0.5803, 0.9373, 1.408, 1.999, 2.721, 3.583",\
"0.07352, 0.09408, 0.1708, 0.3272, 0.5798, 0.9374, 1.407, 1.999, 2.722, 3.581",\
"0.0736, 0.0944, 0.1704, 0.3274, 0.5804, 0.9386, 1.407, 1.999, 2.722, 3.582",\
"0.0738, 0.0946, 0.1704, 0.3274, 0.58, 0.937, 1.407, 1.999, 2.722, 3.582",\
"0.0742, 0.0946, 0.1704, 0.327, 0.5798, 0.9366, 1.407, 2, 2.722, 3.583",\
"0.0744, 0.095, 0.1706, 0.3274, 0.5802, 0.9382, 1.408, 1.999, 2.722, 3.584",\
"0.075, 0.0954, 0.171, 0.3276, 0.58, 0.9386, 1.407, 2, 2.722, 3.582");
}
}
}
}