blob: a96c10e1aaaf0d463e670bb72e2a227c5d6505bc [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_4) {
area : 79.027200 ;
ff(IQ1,IQN1) {
clocked_on : "CLK" ;
next_state : "D" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "!CLK&!D" ;
value : "4.509756e-05" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "!CLK&D" ;
value : "5.4108e-05" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "CLK&!D" ;
value : "5.44806e-05" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "CLK&D" ;
value : "5.345352e-05" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
value : "5.44806e-05" ;
}
pg_pin(VDD) {
voltage_name : VDD ;
pg_type : primary_power ;
}
pg_pin(VSS) {
voltage_name : VSS ;
pg_type : primary_ground ;
}
pin(CLK) {
capacitance : 0.002903 ;
clock : true ;
direction : input ;
driver_waveform_rise : driver_waveform_default_rise ;
driver_waveform_fall : driver_waveform_default_fall ;
input_voltage : default ;
max_transition : 21 ;
min_period : 13.52 ;
min_pulse_width_high : 6.769 ;
min_pulse_width_low : 5.774 ;
related_ground_pin : VSS ;
related_power_pin : VDD ;
internal_power() {
when : "!D" ;
fall_power(pwr_tin_10) {
index_1("0.02, 0.1648, 0.6731, 1.644, 3.156, 5.278, 8.07, 11.59, 15.88, 21");
values("0.02805, 0.028, 0.02788, 0.02774, 0.02762, 0.02754, 0.02747, 0.02743, \
0.02739, 0.01935");
}
rise_power(pwr_tin_10) {
index_1("0.02, 0.1648, 0.6731, 1.644, 3.156, 5.278, 8.07, 11.59, 15.88, 21");
values("0.02215, 0.02212, 0.02206, 0.02192, 0.0218, 0.0217, 0.0216, 0.02154, \
0.02151, 0.02162");
}
}
internal_power() {
when : "D" ;
fall_power(pwr_tin_10) {
index_1("0.02, 0.1648, 0.6731, 1.644, 3.156, 5.278, 8.07, 11.59, 15.88, 21");
values("0.02831, 0.02826, 0.02813, 0.028, 0.02788, 0.02779, 0.02773, 0.02767, \
0.02758, 0.01934");
}
rise_power(pwr_tin_10) {
index_1("0.02, 0.1648, 0.6731, 1.644, 3.156, 5.278, 8.07, 11.59, 15.88, 21");
values("0.02216, 0.02215, 0.02208, 0.02194, 0.02182, 0.02171, 0.02161, \
0.02156, 0.02153, 0.02165");
}
}
timing() {
related_pin : "CLK" ;
sdf_cond : "ENABLE_NOT_D === 1'b1" ;
timing_type : min_pulse_width ;
when : "!D" ;
fall_constraint(scalar) {
values("5.774");
}
rise_constraint(scalar) {
values("2.558");
}
}
timing() {
related_pin : "CLK" ;
sdf_cond : "ENABLE_D === 1'b1" ;
timing_type : min_pulse_width ;
when : "D" ;
fall_constraint(scalar) {
values("3.667");
}
rise_constraint(scalar) {
values("6.769");
}
}
timing() {
related_pin : "CLK" ;
sdf_cond : "ENABLE_NOT_D === 1'b1" ;
timing_type : minimum_period ;
when : "!D" ;
rise_constraint(scalar) {
values("11.55");
}
}
timing() {
related_pin : "CLK" ;
sdf_cond : "ENABLE_D === 1'b1" ;
timing_type : minimum_period ;
when : "D" ;
rise_constraint(scalar) {
values("13.52");
}
}
}
pin(D) {
capacitance : 0.002107 ;
direction : input ;
driver_waveform_rise : driver_waveform_default_rise ;
driver_waveform_fall : driver_waveform_default_fall ;
input_voltage : default ;
max_transition : 21 ;
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.1648, 0.6731, 1.644, 3.156, 5.278, 8.07, 11.59, 15.88, 21");
values("0.01416, 0.01415, 0.014, 0.01387, 0.0138, 0.01375, 0.01372, 0.01369, \
0.01354, 0.005181");
}
rise_power(pwr_tin_10) {
index_1("0.02, 0.1648, 0.6731, 1.644, 3.156, 5.278, 8.07, 11.59, 15.88, 21");
values("0.01084, 0.01085, 0.01085, 0.01079, 0.01072, 0.01066, 0.01061, \
0.01056, 0.01053, 0.01056");
}
}
internal_power() {
when : "CLK" ;
fall_power(pwr_tin_10) {
index_1("0.02, 0.1648, 0.6731, 1.644, 3.156, 5.278, 8.07, 11.59, 15.88, 21");
values("0.0008176, 0.0008188, 0.0008196, 0.0008185, 0.0008183, 0.0008157, \
0.0008115, 0.0008032, 0.0007837, 0.0006437");
}
rise_power(pwr_tin_10) {
index_1("0.02, 0.1648, 0.6731, 1.644, 3.156, 5.278, 8.07, 11.59, 15.88, 21");
values("-0.000512, -0.000521, -0.0005306, -0.0005371, -0.0005441, -0.0005499, \
-0.0005566, -0.0005672, -0.0005926, -0.0005896");
}
}
timing() {
related_pin : "CLK" ;
timing_type : hold_rising ;
fall_constraint(cnst_ctin_rtin_10x10) {
index_1("0.02, 0.1648, 0.6731, 1.644, 3.156, 5.278, 8.07, 11.59, 15.88, 21");
index_2("0.02, 0.1648, 0.6731, 1.644, 3.156, 5.278, 8.07, 11.59, 15.88, 21");
values("0.286, 0.35, 0.555, 0.963, 1.555, 2.231, 2.963, 3.74, 4.575, 5.447",\
"0.233, 0.29, 0.504, 0.902, 1.487, 2.155, 2.877, 3.652, 4.475, 5.338",\
"0.064, 0.122, 0.325, 0.72, 1.31, 1.973, 2.693, 3.459, 4.274, 5.131",\
"-0.375, -0.319, -0.109, 0.292, 0.875, 1.549, 2.278, 3.056, 3.88, 4.741",\
"-1.087, -1.025, -0.821, -0.424, 0.162, 0.828, 1.558, 2.339, 3.17, 4.04",\
"-1.989, -1.928, -1.733, -1.346, -0.777, -0.114, 0.605, 1.373, 2.193, 3.062",\
"-3.061, -2.997, -2.804, -2.43, -1.873, -1.234, -0.528, 0.222, 1.033, 1.889",\
"-4.29, -4.23, -4.046, -3.681, -3.148, -2.522, -1.833, -1.099, -0.307, 0.535",\
"-5.684, -5.622, -5.447, -5.095, -4.572, -3.981, -3.303, -2.586, -1.811, -0.992",\
"-7.242, -7.184, -7.012, -6.68, -6.171, -5.588, -4.939, -4.24, -3.486, -2.686");
}
rise_constraint(cnst_ctin_rtin_10x10) {
index_1("0.02, 0.1648, 0.6731, 1.644, 3.156, 5.278, 8.07, 11.59, 15.88, 21");
index_2("0.02, 0.1648, 0.6731, 1.644, 3.156, 5.278, 8.07, 11.59, 15.88, 21");
values("-0, 0.063, 0.268, 0.611, 1.007, 1.449, 1.935, 2.453, 3.012, 3.595",\
"-0.054, 0.005, 0.214, 0.562, 0.958, 1.4, 1.892, 2.413, 2.975, 3.549",\
"-0.241, -0.184, 0.03, 0.382, 0.782, 1.238, 1.733, 2.262, 2.825, 3.409",\
"-0.52, -0.455, -0.242, 0.108, 0.519, 0.976, 1.471, 2.005, 2.572, 3.164",\
"-0.821, -0.756, -0.542, -0.192, 0.216, 0.67, 1.168, 1.698, 2.264, 2.859",\
"-1.142, -1.085, -0.873, -0.52, -0.114, 0.336, 0.828, 1.357, 1.923, 2.51",\
"-1.465, -1.404, -1.204, -0.857, -0.454, -0.014, 0.481, 0.998, 1.565, 2.155",\
"-1.793, -1.73, -1.529, -1.182, -0.791, -0.359, 0.122, 0.645, 1.196, 1.776",\
"-2.103, -2.038, -1.84, -1.503, -1.116, -0.692, -0.224, 0.29, 0.835, 1.408",\
"-2.391, -2.331, -2.142, -1.807, -1.435, -1.016, -0.547, -0.053, 0.486, 1.053");
}
}
timing() {
related_pin : "CLK" ;
timing_type : setup_rising ;
fall_constraint(cnst_ctin_rtin_10x10) {
index_1("0.02, 0.1648, 0.6731, 1.644, 3.156, 5.278, 8.07, 11.59, 15.88, 21");
index_2("0.02, 0.1648, 0.6731, 1.644, 3.156, 5.278, 8.07, 11.59, 15.88, 21");
values("3.172, 3.111, 2.868, 2.392, 1.728, 0.957, 0.131, -0.749, -1.667, -2.64",\
"3.228, 3.157, 2.919, 2.442, 1.783, 1.016, 0.19, -0.695, -1.618, -2.582",\
"3.413, 3.348, 3.105, 2.632, 1.972, 1.203, 0.374, -0.501, -1.426, -2.393",\
"3.857, 3.79, 3.547, 3.073, 2.408, 1.644, 0.816, -0.059, -0.987, -1.955",\
"4.596, 4.53, 4.295, 3.843, 3.153, 2.384, 1.561, 0.677, -0.246, -1.214",\
"5.661, 5.599, 5.354, 4.909, 4.218, 3.45, 2.626, 1.744, 0.82, -0.146",\
"7.075, 7.012, 6.768, 6.295, 5.632, 4.865, 4.046, 3.158, 2.238, 1.266",\
"8.854, 8.792, 8.545, 8.07, 7.405, 6.642, 5.814, 4.931, 4.012, 3.046",\
"10.95, 10.89, 10.64, 10.17, 9.503, 8.733, 7.908, 7.022, 6.099, 5.126",\
"13.28, 13.22, 12.97, 12.53, 11.83, 11.06, 10.23, 9.342, 8.411, 7.442");
}
rise_constraint(cnst_ctin_rtin_10x10) {
index_1("0.02, 0.1648, 0.6731, 1.644, 3.156, 5.278, 8.07, 11.59, 15.88, 21");
index_2("0.02, 0.1648, 0.6731, 1.644, 3.156, 5.278, 8.07, 11.59, 15.88, 21");
values("1.884, 1.819, 1.574, 1.126, 0.446, -0.262, -0.956, -1.64, -2.292, -2.927",\
"1.936, 1.874, 1.627, 1.178, 0.496, -0.202, -0.896, -1.589, -2.239, -2.871",\
"2.137, 2.071, 1.82, 1.338, 0.696, -0.006, -0.703, -1.397, -2.057, -2.695",\
"2.51, 2.448, 2.191, 1.716, 1.072, 0.364, -0.342, -1.048, -1.722, -2.371",\
"3.006, 2.941, 2.691, 2.216, 1.581, 0.87, 0.159, -0.563, -1.252, -1.921",\
"3.575, 3.507, 3.263, 2.829, 2.154, 1.459, 0.744, 0.013, -0.699, -1.397",\
"4.168, 4.103, 3.849, 3.413, 2.743, 2.041, 1.327, 0.584, -0.139, -0.839",\
"4.749, 4.687, 4.435, 3.966, 3.333, 2.622, 1.903, 1.16, 0.436, -0.284",\
"5.352, 5.288, 5.043, 4.563, 3.927, 3.216, 2.502, 1.757, 1.023, 0.307",\
"5.946, 5.878, 5.633, 5.157, 4.526, 3.816, 3.101, 2.354, 1.614, 0.88");
}
}
}
pin(Q) {
direction : output ;
function : "IQ1" ;
max_capacitance : 0.6635 ;
max_transition : 21 ;
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.1648, 0.6731, 1.644, 3.156, 5.278, 8.07, 11.59, 15.88, 21");
index_2("0.001, 0.005573, 0.02162, 0.05227, 0.1, 0.167, 0.2552, 0.3663, 0.5019, 0.6635");
values("0.05262, 0.05289, 0.0535, 0.05409, 0.0545, 0.05475, 0.0549, 0.05499, 0.05506, 0.05508",\
"0.0526, 0.05286, 0.05351, 0.05409, 0.0545, 0.05477, 0.05491, 0.055, 0.05506, 0.05509",\
"0.0526, 0.05288, 0.05349, 0.05408, 0.05449, 0.05475, 0.0549, 0.05499, 0.05505, 0.05509",\
"0.05262, 0.05289, 0.05349, 0.05408, 0.0545, 0.05476, 0.0549, 0.05499, 0.05504, 0.05507",\
"0.05262, 0.05289, 0.05351, 0.05411, 0.05451, 0.05477, 0.05493, 0.05501, 0.05507, 0.05509",\
"0.05266, 0.05293, 0.05355, 0.05413, 0.05456, 0.05482, 0.05496, 0.05505, 0.0551, 0.05511",\
"0.05271, 0.05297, 0.05358, 0.05418, 0.05459, 0.05485, 0.055, 0.05509, 0.05513, 0.05501",\
"0.05272, 0.05299, 0.05361, 0.05421, 0.05464, 0.05489, 0.05504, 0.05511, 0.05499, 0.054",\
"0.05273, 0.05302, 0.05362, 0.05422, 0.05464, 0.05489, 0.05495, 0.05429, 0.05211, 0.05003",\
"0.05251, 0.05276, 0.05335, 0.0537, 0.05229, 0.04916, 0.04709, 0.04578, 0.04489, 0.04427");
}
rise_power(pwr_tin_oload_10x10) {
index_1("0.02, 0.1648, 0.6731, 1.644, 3.156, 5.278, 8.07, 11.59, 15.88, 21");
index_2("0.001, 0.005573, 0.02162, 0.05227, 0.1, 0.167, 0.2552, 0.3663, 0.5019, 0.6635");
values("0.01429, 0.01447, 0.01486, 0.01535, 0.01598, 0.01662, 0.01779, 0.04019, 0.1814, 0.3951",\
"0.01425, 0.01443, 0.01487, 0.01543, 0.01605, 0.01659, 0.01805, 0.04218, 0.1863, 0.3982",\
"0.01424, 0.01445, 0.01488, 0.01544, 0.01607, 0.01644, 0.01826, 0.04807, 0.2035, 0.4087",\
"0.01421, 0.0144, 0.01482, 0.01531, 0.01596, 0.01655, 0.01929, 0.06253, 0.2357, 0.4248",\
"0.01414, 0.01436, 0.01474, 0.01525, 0.01593, 0.01652, 0.02228, 0.09647, 0.2801, 0.4404",\
"0.01409, 0.01431, 0.01471, 0.01519, 0.0158, 0.01699, 0.03407, 0.1573, 0.3211, 0.4433",\
"0.01411, 0.01426, 0.01466, 0.01516, 0.01576, 0.01931, 0.08094, 0.2251, 0.3383, 0.4182",\
"0.01384, 0.01403, 0.01441, 0.01496, 0.01632, 0.05206, 0.1626, 0.2473, 0.3044, 0.3437",\
"0.01261, 0.01279, 0.01318, 0.0156, 0.06155, 0.1151, 0.1479, 0.1684, 0.1817, 0.1908",\
"-0.01951, -0.01952, -0.01954, -0.01956, -0.01958, -0.01959, -0.0196, -0.0196, -0.01961, -0.01961");
}
}
timing() {
related_pin : "CLK" ;
timing_type : rising_edge ;
cell_fall(tmg_ntin_oload_10x10) {
index_1("0.02, 0.1648, 0.6731, 1.644, 3.156, 5.278, 8.07, 11.59, 15.88, 21");
index_2("0.001, 0.005573, 0.02162, 0.05227, 0.1, 0.167, 0.2552, 0.3663, 0.5019, 0.6635");
values("5.175, 5.249, 5.439, 5.703, 6.045, 6.484, 7.044, 7.743, 8.596, 9.612",\
"5.239, 5.313, 5.503, 5.767, 6.109, 6.548, 7.108, 7.808, 8.66, 9.676",\
"5.464, 5.538, 5.728, 5.992, 6.334, 6.773, 7.333, 8.033, 8.885, 9.901",\
"5.894, 5.968, 6.158, 6.423, 6.764, 7.203, 7.763, 8.463, 9.315, 10.33",\
"6.53, 6.604, 6.794, 7.058, 7.4, 7.839, 8.4, 9.099, 9.951, 10.97",\
"7.269, 7.343, 7.533, 7.798, 8.139, 8.578, 9.138, 9.838, 10.69, 11.71",\
"8.07, 8.145, 8.335, 8.598, 8.939, 9.379, 9.938, 10.64, 11.49, 12.51",\
"8.929, 9.003, 9.192, 9.457, 9.799, 10.24, 10.8, 11.5, 12.35, 13.37",\
"9.84, 9.914, 10.1, 10.37, 10.71, 11.15, 11.71, 12.41, 13.26, 14.28",\
"10.8, 10.87, 11.06, 11.33, 11.67, 12.11, 12.67, 13.37, 14.22, 15.24");
}
cell_rise(tmg_ntin_oload_10x10) {
index_1("0.02, 0.1648, 0.6731, 1.644, 3.156, 5.278, 8.07, 11.59, 15.88, 21");
index_2("0.001, 0.005573, 0.02162, 0.05227, 0.1, 0.167, 0.2552, 0.3663, 0.5019, 0.6635");
values("7.945, 8.051, 8.373, 8.953, 9.85, 11.1, 12.75, 14.82, 17.35, 20.37",\
"8.01, 8.116, 8.438, 9.018, 9.915, 11.17, 12.82, 14.89, 17.42, 20.43",\
"8.233, 8.34, 8.661, 9.242, 10.14, 11.39, 13.04, 15.11, 17.64, 20.66",\
"8.657, 8.764, 9.085, 9.665, 10.56, 11.82, 13.46, 15.54, 18.07, 21.08",\
"9.285, 9.392, 9.714, 10.29, 11.19, 12.44, 14.09, 16.16, 18.69, 21.71",\
"10.02, 10.12, 10.44, 11.02, 11.92, 13.17, 14.82, 16.89, 19.42, 22.44",\
"10.81, 10.92, 11.24, 11.82, 12.72, 13.97, 15.62, 17.69, 20.22, 23.23",\
"11.67, 11.77, 12.09, 12.67, 13.57, 14.82, 16.47, 18.54, 21.07, 24.09",\
"12.57, 12.68, 13, 13.58, 14.48, 15.73, 17.38, 19.45, 21.98, 24.99",\
"13.52, 13.63, 13.95, 14.53, 15.43, 16.68, 18.33, 20.4, 22.93, 25.95");
}
fall_transition(tmg_ntin_oload_10x10) {
index_1("0.02, 0.1648, 0.6731, 1.644, 3.156, 5.278, 8.07, 11.59, 15.88, 21");
index_2("0.001, 0.005573, 0.02162, 0.05227, 0.1, 0.167, 0.2552, 0.3663, 0.5019, 0.6635");
values("0.351, 0.4076, 0.5746, 0.8646, 1.314, 1.974, 2.874, 4.037, 5.467, 7.178",\
"0.351, 0.4074, 0.574, 0.8644, 1.313, 1.974, 2.875, 4.036, 5.467, 7.178",\
"0.3508, 0.4072, 0.5746, 0.8646, 1.314, 1.974, 2.876, 4.034, 5.461, 7.18",\
"0.351, 0.4072, 0.5746, 0.8622, 1.313, 1.974, 2.876, 4.04, 5.467, 7.176",\
"0.3508, 0.4072, 0.5748, 0.8642, 1.312, 1.973, 2.875, 4.036, 5.468, 7.178",\
"0.352, 0.408, 0.574, 0.864, 1.314, 1.974, 2.874, 4.036, 5.466, 7.178",\
"0.35, 0.408, 0.574, 0.862, 1.312, 1.972, 2.876, 4.034, 5.46, 7.18",\
"0.35, 0.408, 0.576, 0.862, 1.314, 1.974, 2.878, 4.034, 5.468, 7.176",\
"0.35, 0.406, 0.574, 0.862, 1.314, 1.974, 2.874, 4.034, 5.458, 7.162",\
"0.35, 0.406, 0.576, 0.862, 1.312, 1.972, 2.876, 4.034, 5.46, 7.162");
}
rise_transition(tmg_ntin_oload_10x10) {
index_1("0.02, 0.1648, 0.6731, 1.644, 3.156, 5.278, 8.07, 11.59, 15.88, 21");
index_2("0.001, 0.005573, 0.02162, 0.05227, 0.1, 0.167, 0.2552, 0.3663, 0.5019, 0.6635");
values("0.4324, 0.55, 0.9992, 1.934, 3.424, 5.506, 8.256, 11.72, 15.96, 21",\
"0.433, 0.549, 0.9992, 1.934, 3.427, 5.515, 8.256, 11.73, 15.96, 21",\
"0.433, 0.5494, 0.9994, 1.934, 3.421, 5.508, 8.26, 11.73, 15.96, 21",\
"0.4328, 0.5496, 0.9984, 1.934, 3.422, 5.516, 8.258, 11.72, 15.95, 21.01",\
"0.434, 0.548, 1, 1.934, 3.426, 5.516, 8.258, 11.73, 15.95, 21.01",\
"0.434, 0.548, 1, 1.934, 3.422, 5.512, 8.256, 11.73, 15.95, 21.03",\
"0.434, 0.55, 0.998, 1.934, 3.424, 5.514, 8.26, 11.72, 15.95, 21",\
"0.432, 0.548, 1, 1.934, 3.418, 5.508, 8.254, 11.73, 15.96, 21",\
"0.434, 0.55, 1, 1.936, 3.422, 5.514, 8.258, 11.73, 15.96, 21.02",\
"0.434, 0.552, 1, 1.934, 3.418, 5.504, 8.256, 11.72, 15.96, 21.02");
}
}
}
}