blob: da66cad99658ba040c271856f4a262c4c2520fbc [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 : "3.424518e-05" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "!CLK&D" ;
value : "4.352292e-05" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "CLK&!D" ;
value : "4.3659e-05" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
when : "CLK&D" ;
value : "4.285062e-05" ;
}
leakage_power() {
related_pg_pin : "VDD" ;
value : "4.3659e-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.00272 ;
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 : 11.24 ;
min_pulse_width_high : 4.519 ;
min_pulse_width_low : 5.646 ;
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.02768, 0.02764, 0.0275, 0.02737, 0.02726, 0.02717, 0.02711, \
0.02706, 0.02702, 0.01936");
}
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.02213, 0.02212, 0.02205, 0.02192, 0.02179, 0.02169, 0.0216, \
0.02154, 0.0215, 0.02161");
}
}
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.02795, 0.0279, 0.02778, 0.02763, 0.02752, 0.02744, 0.02737, \
0.0273, 0.02725, 0.01933");
}
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.02193, 0.02181, 0.0217, 0.0216, 0.02155, \
0.0215, 0.02163");
}
}
timing() {
related_pin : "CLK" ;
sdf_cond : "ENABLE_NOT_D === 1'b1" ;
timing_type : min_pulse_width ;
when : "!D" ;
fall_constraint(scalar) {
values("5.646");
}
rise_constraint(scalar) {
values("2.257");
}
}
timing() {
related_pin : "CLK" ;
sdf_cond : "ENABLE_D === 1'b1" ;
timing_type : min_pulse_width ;
when : "D" ;
fall_constraint(scalar) {
values("4.164");
}
rise_constraint(scalar) {
values("4.519");
}
}
timing() {
related_pin : "CLK" ;
sdf_cond : "ENABLE_NOT_D === 1'b1" ;
timing_type : minimum_period ;
when : "!D" ;
rise_constraint(scalar) {
values("11.24");
}
}
timing() {
related_pin : "CLK" ;
sdf_cond : "ENABLE_D === 1'b1" ;
timing_type : minimum_period ;
when : "D" ;
rise_constraint(scalar) {
values("9.406");
}
}
}
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.01417, 0.01415, 0.014, 0.01387, 0.0138, 0.01375, 0.01372, 0.01369, \
0.01354, 0.005179");
}
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.0106, \
0.01056, 0.01052, 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.0008173, 0.0008188, 0.0008192, 0.0008177, 0.0008166, 0.0008159, \
0.0008114, 0.0008037, 0.0007839, 0.0006435");
}
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.0005139, -0.0005204, -0.0005295, -0.0005364, -0.0005432, -0.0005492, \
-0.0005559, -0.0005666, -0.0005917, -0.0005893");
}
}
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.538, 0.603, 0.816, 1.225, 1.829, 2.504, 3.247, 4.039, 4.869, 5.746",\
"0.469, 0.524, 0.747, 1.155, 1.748, 2.41, 3.137, 3.927, 4.762, 5.64",\
"0.316, 0.375, 0.597, 0.993, 1.579, 2.236, 2.952, 3.716, 4.53, 5.395",\
"-0.086, -0.018, 0.193, 0.583, 1.184, 1.852, 2.588, 3.365, 4.183, 5.036",\
"-0.708, -0.655, -0.437, -0.056, 0.532, 1.2, 1.935, 2.718, 3.548, 4.412",\
"-1.501, -1.439, -1.237, -0.857, -0.282, 0.368, 1.091, 1.859, 2.676, 3.536",\
"-2.434, -2.38, -2.181, -1.816, -1.254, -0.62, 0.087, 0.835, 1.643, 2.49",\
"-3.518, -3.469, -3.268, -2.922, -2.374, -1.759, -1.074, -0.337, 0.449, 1.286",\
"-4.746, -4.695, -4.511, -4.183, -3.65, -3.066, -2.395, -1.676, -0.91, -0.089",\
"-6.132, -6.079, -5.896, -5.577, -5.076, -4.5, -3.847, -3.153, -2.414, -1.622");
}
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.046, 0.02, 0.232, 0.565, 0.958, 1.39, 1.877, 2.391, 2.946, 3.52",\
"-0.096, -0.039, 0.173, 0.514, 0.908, 1.346, 1.832, 2.349, 2.908, 3.48",\
"-0.295, -0.235, -0.015, 0.327, 0.725, 1.172, 1.663, 2.189, 2.747, 3.332",\
"-0.583, -0.523, -0.309, 0.042, 0.448, 0.9, 1.395, 1.926, 2.489, 3.076",\
"-0.909, -0.848, -0.638, -0.287, 0.124, 0.579, 1.073, 1.609, 2.168, 2.759",\
"-1.26, -1.199, -0.99, -0.63, -0.231, 0.222, 0.717, 1.247, 1.816, 2.401",\
"-1.612, -1.553, -1.352, -0.997, -0.587, -0.149, 0.347, 0.87, 1.437, 2.026",\
"-1.967, -1.913, -1.705, -1.356, -0.951, -0.514, -0.029, 0.494, 1.05, 1.632",\
"-2.311, -2.258, -2.057, -1.708, -1.315, -0.881, -0.401, 0.111, 0.666, 1.244",\
"-2.64, -2.588, -2.387, -2.042, -1.656, -1.234, -0.753, -0.246, 0.296, 0.867");
}
}
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.034, 2.976, 2.733, 2.283, 1.623, 0.859, 0.053, -0.826, -1.752, -2.702",\
"3.093, 3.023, 2.785, 2.345, 1.682, 0.909, 0.101, -0.772, -1.694, -2.645",\
"3.278, 3.214, 2.976, 2.529, 1.866, 1.101, 0.289, -0.575, -1.505, -2.457",\
"3.721, 3.654, 3.414, 2.973, 2.307, 1.543, 0.734, -0.146, -1.066, -2.015",\
"4.459, 4.396, 4.159, 3.713, 3.053, 2.282, 1.473, 0.616, -0.324, -1.277",\
"5.53, 5.46, 5.223, 4.783, 4.116, 3.348, 2.539, 1.674, 0.758, -0.207",\
"6.949, 6.883, 6.636, 6.19, 5.531, 4.761, 3.961, 3.076, 2.174, 1.206",\
"8.721, 8.652, 8.413, 7.968, 7.3, 6.537, 5.732, 4.855, 3.93, 2.978",\
"10.81, 10.74, 10.5, 10.06, 9.396, 8.627, 7.816, 6.949, 6.015, 5.057",\
"13.13, 13.07, 12.82, 12.38, 11.71, 10.94, 10.13, 9.265, 8.318, 7.362");
}
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("2.427, 2.368, 2.122, 1.669, 1.026, 0.305, -0.427, -1.18, -1.942, -2.665",\
"2.485, 2.387, 2.175, 1.722, 1.076, 0.36, -0.368, -1.124, -1.885, -2.619",\
"2.685, 2.614, 2.372, 1.918, 1.281, 0.562, -0.17, -0.927, -1.702, -2.432",\
"3.052, 2.993, 2.742, 2.291, 1.648, 0.937, 0.196, -0.565, -1.347, -2.096",\
"3.555, 3.488, 3.248, 2.787, 2.151, 1.431, 0.699, -0.071, -0.857, -1.62",\
"4.103, 4.042, 3.795, 3.343, 2.714, 1.998, 1.27, 0.51, -0.278, -1.047",\
"4.706, 4.651, 4.398, 3.945, 3.315, 2.607, 1.875, 1.109, 0.308, -0.453",\
"5.292, 5.229, 4.978, 4.527, 3.896, 3.184, 2.446, 1.682, 0.883, 0.101",\
"5.882, 5.813, 5.575, 5.116, 4.487, 3.774, 3.034, 2.261, 1.464, 0.688",\
"6.476, 6.412, 6.166, 5.714, 5.084, 4.368, 3.625, 2.864, 2.061, 1.301");
}
}
}
pin(Q) {
direction : output ;
function : "IQ1" ;
max_capacitance : 0.1651 ;
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.002133, 0.006109, 0.0137, 0.02553, 0.04213, 0.06397, 0.09148, 0.1251, 0.1651");
values("0.02237, 0.02241, 0.02254, 0.02266, 0.02275, 0.02281, 0.02284, 0.02285, 0.02287, 0.02288",\
"0.02236, 0.0224, 0.02253, 0.02265, 0.02274, 0.02279, 0.02282, 0.02284, 0.02286, 0.02286",\
"0.02235, 0.0224, 0.02253, 0.02265, 0.02273, 0.02279, 0.02282, 0.02284, 0.02285, 0.02286",\
"0.02235, 0.0224, 0.02253, 0.02265, 0.02273, 0.02279, 0.02282, 0.02284, 0.02285, 0.02286",\
"0.02238, 0.02242, 0.02256, 0.02267, 0.02276, 0.02282, 0.02285, 0.02287, 0.02288, 0.02289",\
"0.02242, 0.02247, 0.0226, 0.02271, 0.0228, 0.02285, 0.02289, 0.0229, 0.02292, 0.02292",\
"0.02246, 0.0225, 0.02264, 0.02275, 0.02284, 0.02289, 0.02293, 0.02295, 0.02296, 0.02294",\
"0.02248, 0.02253, 0.02267, 0.02279, 0.02287, 0.02291, 0.02294, 0.02296, 0.02295, 0.02277",\
"0.0225, 0.02256, 0.02267, 0.02279, 0.02289, 0.02294, 0.02297, 0.02289, 0.02243, 0.02177",\
"0.0225, 0.02256, 0.02268, 0.0228, 0.0228, 0.02221, 0.02135, 0.02076, 0.02036, 0.02008");
}
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.002133, 0.006109, 0.0137, 0.02553, 0.04213, 0.06397, 0.09148, 0.1251, 0.1651");
values("0.01934, 0.01937, 0.01947, 0.0196, 0.01973, 0.0199, 0.02004, 0.0226, 0.04558, 0.09996",\
"0.01931, 0.01935, 0.01946, 0.01961, 0.01971, 0.01983, 0.02009, 0.02278, 0.04624, 0.1011",\
"0.01931, 0.01934, 0.01944, 0.01956, 0.01974, 0.01989, 0.02007, 0.02333, 0.04997, 0.1048",\
"0.01927, 0.01931, 0.0194, 0.01954, 0.01967, 0.01983, 0.02014, 0.02509, 0.05722, 0.1109",\
"0.01922, 0.01926, 0.01935, 0.01949, 0.01961, 0.0198, 0.02032, 0.02934, 0.06939, 0.1184",\
"0.01918, 0.01922, 0.01933, 0.01944, 0.01961, 0.01975, 0.02121, 0.03913, 0.08416, 0.1242",\
"0.01918, 0.01922, 0.01931, 0.01945, 0.01956, 0.01985, 0.02542, 0.05756, 0.09611, 0.1248",\
"0.01916, 0.01919, 0.01928, 0.01942, 0.01957, 0.02145, 0.04238, 0.07463, 0.09828, 0.115",\
"0.01909, 0.01913, 0.01923, 0.01938, 0.02104, 0.03854, 0.05887, 0.07257, 0.08178, 0.08817",\
"0.01816, 0.01818, 0.01935, 0.02462, 0.02863, 0.03106, 0.03252, 0.03343, 0.03402, 0.03443");
}
}
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.002133, 0.006109, 0.0137, 0.02553, 0.04213, 0.06397, 0.09148, 0.1251, 0.1651");
values("4.631, 4.687, 4.847, 5.091, 5.419, 5.846, 6.396, 7.083, 7.921, 8.921",\
"4.695, 4.751, 4.912, 5.156, 5.483, 5.911, 6.46, 7.147, 7.986, 8.984",\
"4.92, 4.976, 5.136, 5.38, 5.707, 6.135, 6.684, 7.372, 8.21, 9.209",\
"5.35, 5.406, 5.566, 5.81, 6.137, 6.565, 7.114, 7.802, 8.64, 9.639",\
"5.984, 6.04, 6.2, 6.444, 6.771, 7.199, 7.748, 8.436, 9.274, 10.27",\
"6.718, 6.773, 6.934, 7.179, 7.506, 7.934, 8.483, 9.171, 10.01, 11.01",\
"7.513, 7.57, 7.729, 7.974, 8.302, 8.729, 9.278, 9.966, 10.8, 11.8",\
"8.364, 8.42, 8.583, 8.827, 9.154, 9.581, 10.13, 10.82, 11.66, 12.65",\
"9.272, 9.328, 9.487, 9.732, 10.06, 10.49, 11.04, 11.72, 12.56, 13.56",\
"10.22, 10.28, 10.44, 10.68, 11.01, 11.44, 11.99, 12.67, 13.51, 14.51");
}
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.002133, 0.006109, 0.0137, 0.02553, 0.04213, 0.06397, 0.09148, 0.1251, 0.1651");
values("5.948, 6.041, 6.35, 6.925, 7.814, 9.055, 10.69, 12.74, 15.24, 18.23",\
"6.012, 6.105, 6.415, 6.989, 7.878, 9.12, 10.75, 12.8, 15.31, 18.3",\
"6.235, 6.327, 6.637, 7.212, 8.101, 9.343, 10.97, 13.03, 15.53, 18.52",\
"6.651, 6.744, 7.053, 7.628, 8.517, 9.76, 11.39, 13.44, 15.95, 18.93",\
"7.267, 7.361, 7.669, 8.245, 9.134, 10.38, 12.01, 14.06, 16.57, 19.55",\
"7.982, 8.075, 8.386, 8.959, 9.848, 11.09, 12.72, 14.77, 17.28, 20.26",\
"8.764, 8.858, 9.167, 9.742, 10.63, 11.87, 13.5, 15.56, 18.06, 21.05",\
"9.605, 9.698, 10.01, 10.58, 11.47, 12.71, 14.34, 16.4, 18.9, 21.89",\
"10.5, 10.59, 10.9, 11.47, 12.36, 13.6, 15.23, 17.29, 19.79, 22.78",\
"11.43, 11.53, 11.84, 12.41, 13.3, 14.54, 16.17, 18.23, 20.73, 23.72");
}
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.002133, 0.006109, 0.0137, 0.02553, 0.04213, 0.06397, 0.09148, 0.1251, 0.1651");
values("0.3834, 0.432, 0.5888, 0.8742, 1.319, 1.973, 2.863, 4.013, 5.421, 7.098",\
"0.3834, 0.4324, 0.5894, 0.8714, 1.32, 1.972, 2.863, 4.011, 5.418, 7.09",\
"0.3828, 0.4324, 0.59, 0.8726, 1.317, 1.973, 2.863, 4.011, 5.42, 7.101",\
"0.3836, 0.4322, 0.5898, 0.874, 1.317, 1.973, 2.863, 4.011, 5.415, 7.092",\
"0.3832, 0.4322, 0.59, 0.8738, 1.317, 1.971, 2.865, 4.011, 5.421, 7.102",\
"0.3832, 0.4328, 0.5884, 0.874, 1.318, 1.974, 2.866, 4.012, 5.42, 7.092",\
"0.384, 0.434, 0.59, 0.872, 1.318, 1.97, 2.866, 4.006, 5.412, 7.102",\
"0.384, 0.434, 0.59, 0.874, 1.32, 1.972, 2.862, 4.01, 5.42, 7.09",\
"0.384, 0.432, 0.588, 0.874, 1.318, 1.972, 2.864, 4.004, 5.408, 7.082",\
"0.384, 0.432, 0.59, 0.874, 1.318, 1.974, 2.864, 4.01, 5.414, 7.084");
}
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.002133, 0.006109, 0.0137, 0.02553, 0.04213, 0.06397, 0.09148, 0.1251, 0.1651");
values("0.5704, 0.6996, 1.172, 2.107, 3.58, 5.652, 8.38, 11.82, 16.02, 21.01",\
"0.5704, 0.6992, 1.172, 2.111, 3.58, 5.651, 8.379, 11.82, 16, 21.03",\
"0.5702, 0.699, 1.172, 2.11, 3.583, 5.654, 8.374, 11.81, 16.01, 21.01",\
"0.57, 0.699, 1.172, 2.108, 3.581, 5.649, 8.378, 11.82, 16, 21",\
"0.5704, 0.6992, 1.171, 2.107, 3.58, 5.654, 8.38, 11.82, 16, 21",\
"0.57, 0.698, 1.172, 2.108, 3.586, 5.65, 8.382, 11.81, 16, 20.99",\
"0.57, 0.698, 1.174, 2.11, 3.58, 5.65, 8.374, 11.82, 16, 20.99",\
"0.57, 0.698, 1.172, 2.108, 3.58, 5.654, 8.38, 11.81, 16.01, 21",\
"0.57, 0.698, 1.172, 2.108, 3.58, 5.65, 8.374, 11.82, 16.02, 21.01",\
"0.57, 0.698, 1.172, 2.108, 3.582, 5.65, 8.378, 11.81, 16.02, 21.03");
}
}
}
}