Simple framework for physical chip design (place & route) based on KLayout.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

6016 lines
256 KiB

/*
delay model : typ
check model : typ
power model : typ
capacitance model : typ
other model : typ
*/
library(gscl45nm) {
delay_model : table_lookup;
in_place_swap_mode : match_footprint;
/* unit attributes */
time_unit : "1ns";
voltage_unit : "1V";
current_unit : "1uA";
pulling_resistance_unit : "1kohm";
leakage_power_unit : "1nW";
capacitive_load_unit (1,pf);
slew_upper_threshold_pct_rise : 80;
slew_lower_threshold_pct_rise : 20;
slew_upper_threshold_pct_fall : 80;
slew_lower_threshold_pct_fall : 20;
input_threshold_pct_rise : 50;
input_threshold_pct_fall : 50;
output_threshold_pct_rise : 50;
output_threshold_pct_fall : 50;
nom_process : 1;
nom_voltage : 1.1;
nom_temperature : 27;
operating_conditions ( typical ) {
process : 1;
voltage : 1.1;
temperature : 27;
}
default_operating_conditions : typical;
lu_table_template(delay_template_4x5) {
variable_1 : total_output_net_capacitance;
variable_2 : input_net_transition;
index_1 ("1000.0, 1001.0, 1002.0, 1003.0");
index_2 ("1000.0, 1001.0, 1002.0, 1003.0, 1004.0");
}
lu_table_template(delay_template_5x1) {
variable_1 : input_net_transition;
index_1 ("1000.0, 1001.0, 1002.0, 1003.0, 1004.0");
}
lu_table_template(delay_template_6x1) {
variable_1 : input_net_transition;
index_1 ("1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0");
}
lu_table_template(delay_template_6x6) {
variable_1 : total_output_net_capacitance;
variable_2 : input_net_transition;
index_1 ("1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0");
index_2 ("1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0");
}
power_lut_template(energy_template_4x5) {
variable_1 : total_output_net_capacitance;
variable_2 : input_transition_time;
index_1 ("1000.0, 1001.0, 1002.0, 1003.0");
index_2 ("1000.0, 1001.0, 1002.0, 1003.0, 1004.0");
}
power_lut_template(energy_template_6x6) {
variable_1 : total_output_net_capacitance;
variable_2 : input_transition_time;
index_1 ("1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0");
index_2 ("1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0");
}
lu_table_template(hold_template_3x6) {
variable_1 : related_pin_transition;
variable_2 : constrained_pin_transition;
index_1 ("1000.0, 1001.0, 1002.0");
index_2 ("1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0");
}
power_lut_template(passive_energy_template_5x1) {
variable_1 : input_transition_time;
index_1 ("1000.0, 1001.0, 1002.0, 1003.0, 1004.0");
}
power_lut_template(passive_energy_template_6x1) {
variable_1 : input_transition_time;
index_1 ("1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0");
}
lu_table_template(recovery_template_3x6) {
variable_1 : related_pin_transition;
variable_2 : constrained_pin_transition;
index_1 ("1000.0, 1001.0, 1002.0");
index_2 ("1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0");
}
lu_table_template(recovery_template_6x6) {
variable_1 : related_pin_transition;
variable_2 : constrained_pin_transition;
index_1 ("1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0");
index_2 ("1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0");
}
lu_table_template(removal_template_3x6) {
variable_1 : related_pin_transition;
variable_2 : constrained_pin_transition;
index_1 ("1000.0, 1001.0, 1002.0");
index_2 ("1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0");
}
lu_table_template(setup_template_3x6) {
variable_1 : related_pin_transition;
variable_2 : constrained_pin_transition;
index_1 ("1000.0, 1001.0, 1002.0");
index_2 ("1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0");
}
/* --------------- *
* Design : AND2X1 *
* --------------- */
cell (AND2X1) {
area : 2.346500;
cell_leakage_power : 15.6059;
pin(A) {
direction : input;
capacitance : 0.00229149;
rise_capacitance : 0.00229149;
fall_capacitance : 0.00187144;
}
pin(B) {
direction : input;
capacitance : 0.00234289;
rise_capacitance : 0.00234289;
fall_capacitance : 0.00182664;
}
pin(Y) {
direction : output;
capacitance : 0;
rise_capacitance : 0;
fall_capacitance : 0;
max_capacitance : 0.137429;
function : "(A B)";
timing() {
related_pin : "A";
timing_sense : positive_unate;
cell_rise(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.335241, 0.33337, 0.277585, 0.287249, 0.244978, 0.011983", \
"1.58383, 1.58134, 1.53432, 1.52558, 1.47083, 1.24723", \
"3.74896, 3.78881, 3.71652, 3.6962, 3.64991, 3.44354", \
"9.2684, 9.38517, 9.2688, 9.30979, 9.19071, 8.94935", \
"12.6026, 12.5105, 12.3375, 12.465, 12.3249, 12.0975", \
"15.5352, 15.5624, 15.5634, 15.454, 15.4465, 15.2377");
}
rise_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.475221, 0.469329, 0.479347, 0.483369, 0.525612, 0.718181", \
"2.36477, 2.3708, 2.38155, 2.34519, 2.3437, 2.36987", \
"5.6772, 5.68693, 5.65479, 5.69527, 5.67202, 5.62242", \
"14.1025, 14.1307, 14.0868, 14.2896, 14.1135, 14.0464", \
"18.6951, 18.6883, 18.9963, 18.736, 18.7061, 18.791", \
"23.6645, 23.4187, 23.2727, 23.4945, 23.6717, 23.6913");
}
cell_fall(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.243067, 0.266772, 0.250856, 0.265419, 0.269267, 0.431288", \
"1.07437, 1.07853, 1.05575, 1.07894, 1.093, 1.27717", \
"2.49213, 2.53051, 2.49108, 2.51249, 2.50467, 2.6939", \
"6.1865, 6.16064, 6.15715, 6.19435, 6.17992, 6.34771", \
"8.19699, 8.23735, 8.17149, 8.20701, 8.24945, 8.41948", \
"10.2503, 10.2124, 10.2301, 10.2659, 10.2565, 10.4075");
}
fall_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.287339, 0.281311, 0.33408, 0.415525, 0.600559, 0.491638", \
"1.43788, 1.40889, 1.41073, 1.4023, 1.42567, 1.39872", \
"3.4621, 3.42661, 3.38597, 3.38537, 3.36028, 3.36135", \
"8.42584, 8.41728, 8.38948, 8.4018, 8.52544, 8.39033", \
"11.3309, 11.3523, 11.1453, 11.1574, 11.1623, 11.3251", \
"13.944, 14.1118, 13.9728, 13.9326, 14.1573, 14.1322");
}
}
timing() {
related_pin : "B";
timing_sense : positive_unate;
cell_rise(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.341203, 0.33275, 0.313928, 0.29747, 0.272509, 0.273712", \
"1.57762, 1.58916, 1.55773, 1.53176, 1.50371, 1.49523", \
"3.741, 3.75758, 3.7442, 3.75183, 3.6841, 3.66582", \
"9.36821, 9.34067, 9.30858, 9.22768, 9.26875, 9.28051", \
"12.6169, 12.3909, 12.4194, 12.518, 12.3473, 12.4036", \
"15.4826, 15.6347, 15.5531, 15.4455, 15.5411, 15.4787");
}
rise_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.494216, 0.474155, 0.471144, 0.479058, 0.483925, 0.49332", \
"2.40264, 2.38064, 2.35084, 2.33351, 2.32893, 2.35136", \
"5.78144, 5.64521, 5.69576, 5.648, 5.64523, 5.65462", \
"14.2928, 14.0169, 14.0497, 14.1985, 14.0584, 14.2482", \
"18.6468, 19.0054, 18.8562, 18.607, 18.9259, 18.8293", \
"23.6248, 23.4892, 23.3638, 23.631, 23.2701, 23.4174");
}
cell_fall(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.249226, 0.272929, 0.325871, 0.259521, 0.217561, 0.425294", \
"1.0654, 1.09569, 1.1404, 1.06953, 1.0524, 1.26919", \
"2.49965, 2.51342, 2.56721, 2.49958, 2.47559, 2.69089", \
"6.16751, 6.20522, 6.23429, 6.15678, 6.11863, 6.37107", \
"8.18345, 8.23561, 8.25801, 8.2068, 8.14556, 8.36944", \
"10.2021, 10.2268, 10.3228, 10.212, 10.2738, 10.4218");
}
fall_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.287796, 0.280512, 0.279266, 0.408555, 0.567912, 0.498214", \
"1.40637, 1.41225, 1.40335, 1.40075, 1.3987, 1.38547", \
"3.3656, 3.38314, 3.34642, 3.37663, 3.34942, 3.33945", \
"8.27595, 8.41173, 8.35362, 8.33033, 8.38294, 8.3878", \
"11.2473, 11.0974, 11.2557, 11.1914, 11.2066, 11.1213", \
"14.0673, 14.0691, 14.0872, 13.858, 13.8086, 13.9476");
}
}
internal_power() {
related_pin : "A";
rise_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.00245, 0.005241, 0.007113, 0.015263, 0.018692, 0.022137", \
"0.00238, 0.005179, 0.007473, 0.015106, 0.019158, 0.022357", \
"0.002304, 0.004973, 0.007244, 0.014874, 0.018978, 0.022263", \
"0.001699, 0.004675, 0.006947, 0.014579, 0.018561, 0.024184", \
"0.001668, 0.004395, 0.006627, 0.01426, 0.018345, 0.023999", \
"0.001433, 0.004259, 0.006435, 0.014148, 0.018129, 0.023883");
}
fall_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.004151, 0.006898, 0.00573, 0.010529, 0.006763, 0.029802", \
"0.00422, 0.006806, 0.005608, 0.010522, 0.007393, 0.030251", \
"0.004088, 0.007025, 0.00604, 0.010544, 0.007519, 0.030247", \
"0.004261, 0.007116, 0.006347, 0.010806, 0.007686, 0.028679", \
"0.004236, 0.007372, 0.005779, 0.011116, 0.007572, 0.028719", \
"0.004886, 0.007184, 0.006112, 0.011367, 0.007615, 0.02899");
}
}
internal_power() {
related_pin : "B";
rise_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.002247, 0.004334, 0.006852, 0.013079, 0.017434, 0.031276", \
"0.002244, 0.004231, 0.006936, 0.013219, 0.017375, 0.028294", \
"0.001968, 0.004175, 0.007257, 0.013117, 0.017227, 0.027481", \
"0.002071, 0.003985, 0.006656, 0.012679, 0.017134, 0.027037", \
"0.001758, 0.003956, 0.006867, 0.012905, 0.016906, 0.026789", \
"0.001749, 0.003767, 0.006465, 0.012667, 0.016936, 0.026718");
}
fall_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.005653, 0.007962, 0.012037, 0.009952, 0.007443, 0.027593", \
"0.005603, 0.007976, 0.011896, 0.009959, 0.007828, 0.027944", \
"0.005586, 0.00806, 0.011994, 0.010053, 0.007875, 0.027929", \
"0.006552, 0.008163, 0.012152, 0.010456, 0.00796, 0.025877", \
"0.007525, 0.00869, 0.01218, 0.010349, 0.008155, 0.026283", \
"0.005262, 0.008833, 0.012241, 0.010064, 0.008262, 0.025862");
}
}
}
}
/* --------------- *
* Design : AND2X2 *
* --------------- */
cell (AND2X2) {
area : 2.815800;
cell_leakage_power : 24.5555;
pin(A) {
direction : input;
capacitance : 0.00179784;
rise_capacitance : 0.00179784;
fall_capacitance : 0.00176278;
}
pin(B) {
direction : input;
capacitance : 0.00186944;
rise_capacitance : 0.00186944;
fall_capacitance : 0.00182011;
}
pin(Y) {
direction : output;
capacitance : 0;
rise_capacitance : 0;
fall_capacitance : 0;
max_capacitance : 0.505125;
function : "(A B)";
timing() {
related_pin : "A";
timing_sense : positive_unate;
cell_rise(delay_template_4x5) {
index_1 ("0.02, 0.04, 0.08, 0.2");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.061801, 0.064944, 0.033717, 0.066745, 0.020837", \
"0.092058, 0.092784, 0.073222, 0.088465, -0.063356", \
"0.153645, 0.152118, 0.135083, 0.142277, 0.05643", \
"0.341464, 0.338284, 0.315214, 0.32718, 0.256767");
}
rise_transition(delay_template_4x5) {
index_1 ("0.02, 0.04, 0.08, 0.2");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.051606, 0.062202, 0.128614, 0.260273, 0.131762", \
"0.096823, 0.099186, 0.149466, 0.276214, 0.343524", \
"0.191429, 0.190526, 0.205683, 0.318646, 0.385425", \
"0.479041, 0.464822, 0.469088, 0.528989, 0.521921");
}
cell_fall(delay_template_4x5) {
index_1 ("0.02, 0.04, 0.08, 0.2");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.064675, 0.095092, 0.116153, 0.09963, 0.189534", \
"0.086219, 0.117075, 0.124887, 0.135389, 0.197247", \
"0.12645, 0.156876, 0.150696, 0.185944, 0.21398", \
"0.24679, 0.276333, 0.29071, 0.333818, 0.278297");
}
fall_transition(delay_template_4x5) {
index_1 ("0.02, 0.04, 0.08, 0.2");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.034174, 0.060697, 0.205068, 0.125174, 0.539425", \
"0.059651, 0.071384, 0.211615, 0.153619, 0.544884", \
"0.113123, 0.116687, 0.235821, 0.232298, 0.556728", \
"0.293073, 0.279476, 0.335614, 0.315619, 0.605815");
}
}
timing() {
related_pin : "B";
timing_sense : positive_unate;
cell_rise(delay_template_4x5) {
index_1 ("0.02, 0.04, 0.08, 0.2");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.06151, 0.066929, 0.060194, 0.013632, -0.040081", \
"0.092066, 0.09704, 0.090725, 0.062204, 0.026018", \
"0.154478, 0.157336, 0.151735, 0.123836, 0.097862", \
"0.338358, 0.341977, 0.332804, 0.304405, 0.284891");
}
rise_transition(delay_template_4x5) {
index_1 ("0.02, 0.04, 0.08, 0.2");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.051262, 0.055115, 0.083244, 0.126868, 0.191995", \
"0.096309, 0.097125, 0.109074, 0.15124, 0.208887", \
"0.192105, 0.190395, 0.192374, 0.210394, 0.245367", \
"0.475632, 0.478562, 0.465699, 0.468993, 0.480754");
}
cell_fall(delay_template_4x5) {
index_1 ("0.02, 0.04, 0.08, 0.2");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.070057, 0.104222, 0.147458, 0.180606, 0.144295", \
"0.091833, 0.127471, 0.170375, 0.062204, 0.291136", \
"0.132152, 0.167241, 0.212979, 0.086148, 0.254942", \
"0.254053, 0.286617, 0.332559, 0.237486, 0.238316");
}
fall_transition(delay_template_4x5) {
index_1 ("0.02, 0.04, 0.08, 0.2");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.034722, 0.060205, 0.076839, 0.06692, 0.505652", \
"0.06062, 0.073442, 0.085924, 0.256939, 0.115275", \
"0.114004, 0.118984, 0.124379, 0.275508, 0.261441", \
"0.282032, 0.279072, 0.276835, 0.373473, 0.581354");
}
}
internal_power() {
related_pin : "A";
rise_power(energy_template_4x5) {
index_1 ("0.02, 0.04, 0.08, 0.2");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.004105, 0.006936, 0.008383, 0.004955, 0.027186", \
"0.004085, 0.00678, 0.008387, 0.004878, 0.020718", \
"0.003935, 0.00623, 0.008392, 0.005213, 0.020111", \
"0.003943, 0.005701, 0.008171, 0.005588, 0.019868");
}
fall_power(energy_template_4x5) {
index_1 ("0.02, 0.04, 0.08, 0.2");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.005564, 0.008265, 0.006678, 0.013133, 0.008011", \
"0.005625, 0.008309, 0.006572, 0.012878, 0.007786", \
"0.005657, 0.008269, 0.006329, 0.015336, 0.007692", \
"0.005756, 0.008141, 0.006406, 0.014299, 0.007762");
}
}
internal_power() {
related_pin : "B";
rise_power(energy_template_4x5) {
index_1 ("0.02, 0.04, 0.08, 0.2");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.003884, 0.005202, 0.007832, 0.00906, 0.0185", \
"0.003808, 0.005081, 0.008029, 0.009453, 0.018538", \
"0.003767, 0.004979, 0.007899, 0.009654, 0.018539", \
"0.003768, 0.004776, 0.007695, 0.009285, 0.018671");
}
fall_power(energy_template_4x5) {
index_1 ("0.02, 0.04, 0.08, 0.2");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.0068, 0.010069, 0.012778, 0.01598, 0.008117", \
"0.006957, 0.009931, 0.012619, 0.006956, 0.025512", \
"0.006997, 0.009866, 0.012658, 0.006856, 0.022339", \
"0.006976, 0.009673, 0.012508, 0.007306, 0.008148");
}
}
}
}
/* ---------------- *
* Design : AOI21X1 *
* ---------------- */
cell (AOI21X1) {
area : 2.815800;
cell_leakage_power : 3.65931;
pin(A) {
direction : input;
capacitance : 0.00274129;
rise_capacitance : 0.00274129;
fall_capacitance : 0.00256559;
}
pin(B) {
direction : input;
capacitance : 0.00272419;
rise_capacitance : 0.00272419;
fall_capacitance : 0.00267874;
}
pin(C) {
direction : input;
capacitance : 0.00238603;
rise_capacitance : 0.00238603;
fall_capacitance : 0.00231224;
}
pin(Y) {
direction : output;
capacitance : 0;
rise_capacitance : 0;
fall_capacitance : 0;
max_capacitance : 0;
function : "(!((A B)+C))";
timing() {
related_pin : "A";
timing_sense : negative_unate;
cell_rise(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.366123, 0.415202, 0.474228, 0.601756, 0.636076, 0.786881", \
"1.66427, 1.72369, 1.80452, 1.90885, 1.94503, 2.13592", \
"3.95992, 3.98531, 4.03353, 4.1498, 4.2333, 4.38146", \
"9.75284, 9.83703, 9.84071, 10.0052, 10.0523, 10.1835", \
"13.1418, 13.2125, 13.2798, 13.2479, 13.4506, 13.6151", \
"16.2534, 16.2211, 16.3326, 16.5026, 16.5487, 16.629");
}
rise_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.495627, 0.49234, 0.507088, 0.588932, 0.664616, 0.762612", \
"2.40992, 2.38022, 2.4588, 2.37149, 2.41545, 2.42894", \
"5.77637, 5.6867, 5.70015, 5.67028, 5.72203, 5.72387", \
"14.216, 14.32, 14.1703, 14.2568, 14.248, 14.1456", \
"18.8154, 18.919, 18.8917, 18.9223, 18.8865, 18.9231", \
"23.6184, 23.5502, 23.4553, 23.5705, 23.5113, 23.4579");
}
cell_fall(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.202405, 0.242786, 0.300547, 0.355806, 0.379937, 0.420583", \
"0.917457, 0.946437, 0.985774, 1.0838, 1.15345, 1.29845", \
"2.11774, 2.13786, 2.23222, 2.31263, 2.37087, 2.50536", \
"5.25856, 5.23512, 5.30632, 5.52474, 5.46234, 5.62917", \
"6.9139, 7.10288, 7.13709, 7.1211, 7.36228, 7.40582", \
"8.71119, 8.6971, 8.83778, 8.95197, 8.92555, 9.18744");
}
fall_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.252465, 0.255194, 0.306072, 0.381088, 0.454809, 0.561462", \
"1.32693, 1.24463, 1.19745, 1.20971, 1.23982, 1.35127", \
"2.92641, 2.91473, 3.05652, 2.86769, 2.89211, 2.88115", \
"7.1081, 7.40622, 7.21974, 7.62671, 7.23725, 7.23789", \
"9.54674, 9.81325, 9.53939, 9.48521, 10.14, 9.62", \
"11.782, 11.8486, 11.862, 11.9195, 11.8311, 11.9335");
}
}
timing() {
related_pin : "B";
timing_sense : negative_unate;
cell_rise(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.360918, 0.411799, 0.469175, 0.595698, 0.627279, 0.77998", \
"1.65977, 1.72018, 1.80841, 1.89021, 1.9383, 2.13023", \
"3.95411, 3.98387, 4.06084, 4.21025, 4.21714, 4.37476", \
"9.74489, 9.82848, 9.86818, 10.0007, 10.0429, 10.2262", \
"13.1396, 13.2094, 13.2751, 13.2443, 13.4466, 13.612", \
"16.2434, 16.2305, 16.3292, 16.4975, 16.5417, 16.6282");
}
rise_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.489417, 0.486636, 0.501816, 0.593409, 0.660864, 0.777032", \
"2.39507, 2.42533, 2.51298, 2.3949, 2.4554, 2.42748", \
"5.72754, 5.66638, 5.74181, 5.79851, 5.70448, 5.71991", \
"14.2531, 14.3929, 14.4053, 14.2107, 14.415, 14.3854", \
"18.8703, 19.0038, 18.8086, 19.1149, 18.8769, 18.9696", \
"23.7609, 23.7455, 23.78, 23.4356, 23.7841, 23.7524");
}
cell_fall(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.204079, 0.248455, 0.302137, 0.365851, 0.362835, 0.319802", \
"0.890459, 0.939482, 0.991724, 1.10803, 1.17091, 1.3231", \
"2.10024, 2.15255, 2.19424, 2.3279, 2.37506, 2.52006", \
"5.19163, 5.25368, 5.36143, 5.4002, 5.53935, 5.6764", \
"7.0304, 7.02313, 7.03168, 7.296, 7.20816, 7.3516", \
"8.6819, 8.69297, 8.84304, 8.86433, 8.96529, 9.0677");
}
fall_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.257488, 0.261042, 0.342456, 0.487024, 0.60523, 0.860244", \
"1.24426, 1.27375, 1.19952, 1.22061, 1.27851, 1.43635", \
"2.87167, 2.86224, 2.94204, 2.90532, 2.85456, 2.86658", \
"7.06825, 7.13912, 7.10445, 7.20776, 7.15334, 7.1067", \
"9.47359, 10.1652, 9.55718, 10.1456, 9.55026, 9.52593", \
"11.9237, 11.8228, 12.005, 11.8282, 12.1926, 12.0415");
}
}
timing() {
related_pin : "C";
timing_sense : negative_unate;
cell_rise(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.307952, 0.360142, 0.426492, 0.54009, 0.559283, 0.608608", \
"1.43773, 1.50458, 1.56168, 1.66399, 1.73662, 1.9104", \
"3.39434, 3.45573, 3.53291, 3.65634, 3.6932, 3.85573", \
"8.48188, 8.58515, 8.59622, 8.67299, 8.78713, 8.95279", \
"11.2227, 11.2924, 11.4479, 11.5671, 11.5712, 11.7262", \
"14.1017, 14.08, 14.1783, 14.2189, 14.3759, 14.528");
}
rise_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.428863, 0.427864, 0.471625, 0.612712, 0.756185, 1.07562", \
"2.1081, 2.13276, 2.11032, 2.09264, 2.11041, 2.18774", \
"4.99858, 5.00845, 5.03281, 5.03352, 4.97126, 4.96597", \
"12.3598, 12.379, 12.5885, 12.4937, 12.354, 12.3695", \
"16.6224, 16.5049, 16.5952, 16.6396, 16.6213, 16.6524", \
"20.4868, 20.7175, 20.65, 20.6011, 20.6604, 20.6392");
}
cell_fall(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.227488, 0.28001, 0.338697, 0.427507, 0.383437, 0.423691", \
"1.05036, 1.09898, 1.14911, 1.26685, 1.33185, 1.51538", \
"2.48021, 2.53187, 2.57884, 2.69182, 2.75803, 2.93487", \
"6.14729, 6.21771, 6.2716, 6.36926, 6.47065, 6.57211", \
"8.22275, 8.26183, 8.28375, 8.42266, 8.49216, 8.65801", \
"10.271, 10.3395, 10.3698, 10.4353, 10.4641, 10.7364");
}
fall_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.29089, 0.291607, 0.379097, 0.522983, 0.68517, 0.899964", \
"1.44931, 1.43155, 1.43074, 1.40932, 1.45386, 1.57791", \
"3.41797, 3.4771, 3.42664, 3.38037, 3.36575, 3.38269", \
"8.38477, 8.60834, 8.44618, 8.42624, 8.44174, 8.59302", \
"11.2494, 11.2839, 11.314, 11.3219, 11.291, 11.2761", \
"13.9747, 14.0181, 14.0121, 14.0885, 14.0564, 14.0409");
}
}
internal_power() {
related_pin : "A";
rise_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.00694, 0.007256, 0.008098, 0.011084, 0.011759, 0.021951", \
"0.006826, 0.007191, 0.007653, 0.008645, 0.009087, 0.013443", \
"0.007654, 0.007039, 0.007099, 0.007825, 0.008288, 0.010947", \
"0.007015, 0.007535, 0.007084, 0.007379, 0.007626, 0.008843", \
"0.007069, 0.007126, 0.007129, 0.007448, 0.007481, 0.008491", \
"0.00676, 0.007125, 0.007147, 0.007331, 0.00745, 0.008198");
}
fall_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.0032, 0.002906, 0.003957, 0.006894, 0.009416, 0.014677", \
"0.004294, 0.00379, 0.003546, 0.004333, 0.005128, 0.007365", \
"0.003706, 0.003594, 0.004177, 0.003827, 0.004617, 0.005279", \
"0.003777, 0.004088, 0.0037, 0.004353, 0.004186, 0.00457", \
"0.003759, 0.00406, 0.003707, 0.003508, 0.00442, 0.004411", \
"0.003791, 0.003446, 0.003738, 0.003855, 0.003584, 0.004239");
}
}
internal_power() {
related_pin : "B";
rise_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.005242, 0.005693, 0.006561, 0.00945, 0.010236, 0.019582", \
"0.005185, 0.00558, 0.005814, 0.006978, 0.007362, 0.011662", \
"0.005822, 0.005398, 0.005598, 0.00632, 0.00658, 0.009237", \
"0.006037, 0.006163, 0.005705, 0.005886, 0.006113, 0.007359", \
"0.00561, 0.005661, 0.005718, 0.006002, 0.006077, 0.007022", \
"0.005668, 0.00574, 0.005793, 0.006027, 0.00609, 0.006855");
}
fall_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.00321, 0.003107, 0.002483, 0.006037, 0.006368, 0.011169", \
"0.003848, 0.003909, 0.00318, 0.003566, 0.00333, 0.007635", \
"0.003641, 0.003592, 0.00379, 0.003714, 0.003612, 0.007006", \
"0.003684, 0.003849, 0.003627, 0.003994, 0.003836, 0.005495", \
"0.003815, 0.004303, 0.003644, 0.004299, 0.00388, 0.005167", \
"0.003768, 0.003404, 0.003679, 0.003484, 0.004095, 0.005141");
}
}
internal_power() {
related_pin : "C";
rise_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.004356, 0.005101, 0.005118, 0.007301, 0.007126, 0.011822", \
"0.004441, 0.004823, 0.004909, 0.005632, 0.005994, 0.010151", \
"0.004576, 0.004468, 0.004817, 0.005046, 0.005411, 0.008316", \
"0.00446, 0.004558, 0.004563, 0.004754, 0.004965, 0.006429", \
"0.004511, 0.004528, 0.004588, 0.004734, 0.004812, 0.005974", \
"0.004478, 0.004488, 0.004612, 0.004697, 0.004797, 0.005773");
}
fall_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.000062, 0.000531, 0.000024, 0.00188, 0.001095, 0.007828", \
"0.000095, 0.000156, 0.000021, 0.000541, 0.000173, 0.004525", \
"0.000113, 0.000108, 0.000094, 0.000296, 0.000083, 0.0034", \
"0.000229, 0.000018, 0.000064, 0.000139, 0.000062, 0.001896", \
"0.000354, 0.000067, 0.000049, 0.00015, 0.000075, 0.001491", \
"0.000192, 0.000106, 0.000051, 0.000138, 0.000072, 0.001259");
}
}
}
}
/* ---------------- *
* Design : AOI22X1 *
* ---------------- */
cell (AOI22X1) {
area : 3.285100;
cell_leakage_power : 6.81348;
pin(A) {
direction : input;
capacitance : 0.00281659;
rise_capacitance : 0.00281659;
fall_capacitance : 0.00265821;
}
pin(B) {
direction : input;
capacitance : 0.00276444;
rise_capacitance : 0.00276444;
fall_capacitance : 0.00272615;
}
pin(C) {
direction : input;
capacitance : 0.00287763;
rise_capacitance : 0.00287763;
fall_capacitance : 0.00266968;
}
pin(D) {
direction : input;
capacitance : 0.00290653;
rise_capacitance : 0.00290653;
fall_capacitance : 0.00282572;
}
pin(Y) {
direction : output;
capacitance : 0;
rise_capacitance : 0;
fall_capacitance : 0;
max_capacitance : 0;
function : "(!((C D)+(A B)))";
timing() {
related_pin : "C";
timing_sense : negative_unate;
cell_rise(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.32125, 0.37037, 0.437669, 0.553414, 0.582025, 0.675075", \
"1.44275, 1.50267, 1.57347, 1.67677, 1.75143, 1.94312", \
"3.44961, 3.48723, 3.56659, 3.63269, 3.71312, 3.87773", \
"8.44487, 8.52152, 8.64176, 8.63849, 8.73445, 8.93859", \
"11.3097, 11.3509, 11.3647, 11.5188, 11.6223, 11.7621", \
"14.0314, 14.0681, 14.2531, 14.2745, 14.3638, 14.5369");
}
rise_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.442464, 0.440611, 0.480006, 0.62023, 0.75035, 1.05955", \
"2.10711, 2.13996, 2.11215, 2.10292, 2.11076, 2.18858", \
"4.94845, 4.99732, 5.06463, 4.95496, 4.9745, 4.97793", \
"12.4411, 12.367, 12.4183, 12.3346, 12.3936, 12.3929", \
"16.4999, 16.4692, 16.4346, 16.4976, 16.5115, 16.4838", \
"20.5302, 20.536, 20.5653, 20.5646, 20.5281, 20.5449");
}
cell_fall(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.19844, 0.239991, 0.29725, 0.351764, 0.374427, 0.415084", \
"0.893459, 0.93578, 0.987738, 1.08118, 1.15199, 1.29464", \
"2.11565, 2.14975, 2.19757, 2.29299, 2.37422, 2.50098", \
"5.23284, 5.27164, 5.30345, 5.40395, 5.51712, 5.60343", \
"6.94188, 7.00073, 7.0778, 7.17584, 7.19103, 7.35637", \
"8.64675, 8.7591, 8.82098, 8.87926, 8.96978, 9.10936");
}
fall_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.254577, 0.25312, 0.306199, 0.380422, 0.453062, 0.557681", \
"1.23727, 1.21477, 1.20718, 1.22069, 1.22415, 1.35007", \
"2.92905, 2.92998, 2.90325, 2.90673, 2.88271, 2.87983", \
"7.23052, 7.19786, 7.25778, 7.25448, 7.19276, 7.17715", \
"9.55885, 9.64303, 9.65513, 9.67104, 9.73934, 9.74493", \
"11.9782, 12.0632, 12.0295, 12.0496, 11.9979, 12.0309");
}
}
timing() {
related_pin : "D";
timing_sense : negative_unate;
cell_rise(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.316696, 0.366292, 0.433528, 0.549298, 0.57311, 0.656229", \
"1.44656, 1.49813, 1.5689, 1.67239, 1.7459, 1.93508", \
"3.44422, 3.48223, 3.56358, 3.65757, 3.70982, 3.87212", \
"8.43647, 8.51383, 8.67934, 8.6898, 8.72794, 8.93393", \
"11.3016, 11.3475, 11.3877, 11.5501, 11.6179, 11.7578", \
"14.095, 14.0571, 14.2499, 14.2712, 14.3582, 14.5328");
}
rise_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.435942, 0.435828, 0.473313, 0.618552, 0.755418, 1.06888", \
"2.11237, 2.11632, 2.10078, 2.10347, 2.12451, 2.1894", \
"5.0084, 5.01962, 5.08987, 5.00634, 4.98952, 4.97621", \
"12.4311, 12.4247, 12.5154, 12.5063, 12.4274, 12.3698", \
"16.504, 16.4743, 16.6496, 16.6953, 16.5455, 16.6364", \
"20.7213, 20.7556, 20.5908, 20.5396, 20.6998, 20.665");
}
cell_fall(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.199983, 0.24536, 0.30411, 0.364159, 0.352047, 0.311202", \
"0.902074, 0.937446, 0.994565, 1.10586, 1.16756, 1.31781", \
"2.12541, 2.16708, 2.20628, 2.32401, 2.37521, 2.51092", \
"5.24109, 5.29704, 5.33063, 5.4464, 5.5196, 5.64609", \
"6.98073, 7.00263, 7.04232, 7.1273, 7.21122, 7.35237", \
"8.74128, 8.77357, 8.81326, 8.90831, 8.92763, 9.06684");
}
fall_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.251798, 0.258083, 0.357811, 0.487604, 0.620827, 0.861192", \
"1.25564, 1.22522, 1.21306, 1.21704, 1.27167, 1.44392", \
"2.94867, 2.88688, 2.88259, 2.8755, 2.88041, 2.90028", \
"7.19783, 7.20351, 7.21344, 7.1524, 7.25108, 7.25138", \
"9.60129, 9.75723, 9.60154, 9.73084, 9.50694, 9.58623", \
"12.0448, 12.0865, 12.1076, 12.0097, 12.0048, 11.9133");
}
}
timing() {
related_pin : "B";
timing_sense : negative_unate;
cell_rise(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.337339, 0.387126, 0.452854, 0.568146, 0.634185, 0.769607", \
"1.49934, 1.54312, 1.63024, 1.73401, 1.80817, 1.99794", \
"3.53509, 3.57565, 3.71729, 3.78903, 3.86512, 4.00213", \
"8.78414, 8.78238, 8.83793, 8.96047, 9.09891, 9.184", \
"11.5789, 11.6568, 11.8309, 11.8598, 11.9734, 12.2167", \
"14.5126, 14.6088, 14.5124, 14.7554, 14.8241, 14.9754");
}
rise_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.45158, 0.446608, 0.459787, 0.558155, 0.624875, 0.743291", \
"2.16758, 2.16696, 2.1797, 2.1637, 2.1643, 2.15599", \
"5.19285, 5.06958, 5.30914, 5.18373, 5.11506, 5.03526", \
"12.661, 12.5943, 12.6989, 12.6325, 12.6254, 12.6869", \
"16.8472, 16.7826, 16.7171, 16.7946, 16.7702, 16.7282", \
"20.8597, 20.8142, 20.9374, 20.9271, 20.9754, 20.8876");
}
cell_fall(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.210324, 0.25396, 0.309429, 0.374168, 0.370025, 0.331697", \
"0.908295, 0.943509, 1.00039, 1.11434, 1.17627, 1.32876", \
"2.14245, 2.16488, 2.21601, 2.3191, 2.38219, 2.52332", \
"5.25706, 5.31207, 5.37548, 5.4459, 5.51574, 5.64582", \
"6.95888, 7.03442, 7.0861, 7.2187, 7.26858, 7.40717", \
"8.68197, 8.77667, 8.80203, 8.92935, 8.95998, 9.08208");
}
fall_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.267614, 0.268255, 0.348838, 0.492857, 0.614258, 0.863838", \
"1.21822, 1.22566, 1.20758, 1.22179, 1.28706, 1.45233", \
"2.92601, 2.89958, 2.88225, 2.89235, 2.85509, 2.88274", \
"7.18464, 7.15544, 7.2696, 7.19491, 7.23019, 7.19569", \
"9.56258, 9.72479, 9.49703, 9.78758, 9.53497, 9.52578", \
"12.0128, 11.8917, 11.9095, 11.9827, 11.9849, 12.0504");
}
}
timing() {
related_pin : "A";
timing_sense : negative_unate;
cell_rise(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.341706, 0.391554, 0.457364, 0.573408, 0.641671, 0.779986", \
"1.49235, 1.54663, 1.6226, 1.74505, 1.81434, 1.99587", \
"3.52308, 3.58062, 3.6723, 3.76247, 3.82657, 4.00549", \
"8.71431, 8.78312, 8.87475, 8.93357, 9.07805, 9.1583", \
"11.5775, 11.6582, 11.7378, 11.814, 11.9777, 12.2206", \
"14.5223, 14.6137, 14.6024, 14.7593, 14.7024, 14.9758");
}
rise_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.45227, 0.449607, 0.465406, 0.556873, 0.625087, 0.736663", \
"2.12192, 2.14176, 2.14051, 2.12985, 2.13151, 2.1586", \
"5.0821, 5.05522, 5.1591, 5.08257, 5.05554, 5.05367", \
"12.5705, 12.556, 12.6017, 12.5518, 12.5254, 12.5102", \
"16.7235, 16.5976, 16.6577, 16.6553, 16.6999, 16.7099", \
"20.8843, 20.8517, 20.7617, 20.8277, 20.7544, 20.7942");
}
cell_fall(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.211527, 0.249146, 0.306829, 0.364365, 0.38986, 0.43178", \
"0.901967, 0.947056, 0.99363, 1.09041, 1.1605, 1.30454", \
"2.11118, 2.15814, 2.21798, 2.30344, 2.37523, 2.51117", \
"5.23199, 5.28545, 5.33104, 5.45199, 5.50286, 5.62554", \
"6.92145, 7.04146, 7.07243, 7.18938, 7.27865, 7.40012", \
"8.67739, 8.79242, 8.78286, 8.91788, 8.98523, 9.10194");
}
fall_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.26343, 0.262776, 0.310546, 0.388702, 0.459585, 0.567414", \
"1.23195, 1.25438, 1.21017, 1.21913, 1.24215, 1.35396", \
"2.88824, 2.89615, 2.96253, 2.88439, 2.86905, 2.88017", \
"7.07717, 7.31332, 7.1288, 7.3008, 7.19129, 7.18146", \
"9.60596, 9.65688, 9.50053, 9.80018, 9.77446, 9.64092", \
"11.816, 12.0057, 11.9675, 11.9716, 11.9789, 11.9178");
}
}
internal_power() {
related_pin : "C";
rise_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.007113, 0.007894, 0.007967, 0.010438, 0.010813, 0.021351", \
"0.007164, 0.007483, 0.007972, 0.008886, 0.009706, 0.018034", \
"0.007227, 0.007321, 0.007536, 0.008065, 0.008768, 0.014777", \
"0.007007, 0.007085, 0.007179, 0.007328, 0.007887, 0.010448", \
"0.006855, 0.006941, 0.007109, 0.007229, 0.007588, 0.009505", \
"0.006715, 0.006902, 0.006974, 0.007144, 0.007382, 0.009027");
}
fall_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.00194, 0.002056, 0.00292, 0.005739, 0.008399, 0.01388", \
"0.002105, 0.002141, 0.002288, 0.003293, 0.004215, 0.006147", \
"0.002113, 0.002093, 0.002234, 0.002489, 0.003307, 0.004158", \
"0.002142, 0.002125, 0.002096, 0.002358, 0.00248, 0.003042", \
"0.002133, 0.002182, 0.002076, 0.002329, 0.002455, 0.002852", \
"0.002152, 0.002211, 0.002206, 0.002302, 0.002445, 0.002737");
}
}
internal_power() {
related_pin : "D";
rise_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.005577, 0.006448, 0.006635, 0.009168, 0.009261, 0.01847", \
"0.005692, 0.005909, 0.006353, 0.007378, 0.008074, 0.015758", \
"0.00568, 0.005825, 0.006048, 0.006568, 0.007244, 0.012884", \
"0.005622, 0.005608, 0.00583, 0.006029, 0.006443, 0.008995", \
"0.005561, 0.005672, 0.005834, 0.005978, 0.006202, 0.008176", \
"0.005567, 0.005583, 0.005738, 0.005863, 0.006079, 0.00775");
}
fall_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.001981, 0.002374, 0.001862, 0.005096, 0.005055, 0.011057", \
"0.002054, 0.002208, 0.002054, 0.002661, 0.002492, 0.006351", \
"0.002083, 0.002096, 0.002069, 0.002351, 0.002387, 0.005657", \
"0.002181, 0.002148, 0.002127, 0.002282, 0.002316, 0.004", \
"0.002228, 0.002294, 0.002103, 0.002308, 0.002275, 0.003592", \
"0.00218, 0.002302, 0.002113, 0.002306, 0.002303, 0.00338");
}
}
internal_power() {
related_pin : "B";
rise_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.007629, 0.007814, 0.008527, 0.011, 0.013036, 0.021415", \
"0.007847, 0.007969, 0.008127, 0.008954, 0.01012, 0.013793", \
"0.007598, 0.007574, 0.008075, 0.008447, 0.009083, 0.011614", \
"0.008148, 0.008291, 0.008042, 0.008235, 0.008524, 0.009792", \
"0.007902, 0.007896, 0.008061, 0.008321, 0.008456, 0.009447", \
"0.008154, 0.008144, 0.008174, 0.008374, 0.008494, 0.009334");
}
fall_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.00604, 0.00546, 0.004522, 0.008066, 0.008138, 0.013239", \
"0.006515, 0.006262, 0.005731, 0.005975, 0.005628, 0.009725", \
"0.006768, 0.006514, 0.00628, 0.006416, 0.00616, 0.009504", \
"0.006658, 0.006511, 0.006592, 0.006587, 0.006616, 0.008255", \
"0.006618, 0.006678, 0.006494, 0.006732, 0.006602, 0.007908", \
"0.00683, 0.006673, 0.006518, 0.006744, 0.006617, 0.007681");
}
}
internal_power() {
related_pin : "A";
rise_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.009297, 0.00938, 0.010122, 0.012505, 0.01485, 0.02392", \
"0.00961, 0.009725, 0.009557, 0.010635, 0.011974, 0.015581", \
"0.009172, 0.009196, 0.009463, 0.009996, 0.010718, 0.013328", \
"0.009608, 0.009884, 0.009619, 0.009753, 0.009964, 0.011293", \
"0.00926, 0.009082, 0.009411, 0.009783, 0.009933, 0.010963", \
"0.009509, 0.009478, 0.009613, 0.009706, 0.009911, 0.010674");
}
fall_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.006072, 0.00541, 0.006178, 0.009189, 0.011797, 0.017137", \
"0.006493, 0.006567, 0.006148, 0.006827, 0.007586, 0.009818", \
"0.006532, 0.006451, 0.006606, 0.00661, 0.007228, 0.007937", \
"0.006595, 0.006709, 0.006508, 0.006694, 0.006752, 0.007246", \
"0.006876, 0.00663, 0.006553, 0.006934, 0.006829, 0.00718", \
"0.006448, 0.006767, 0.006583, 0.006766, 0.006847, 0.007");
}
}
}
}
/* -------------- *
* Design : BUFX2 *
* -------------- */
cell (BUFX2) {
cell_footprint : buf;
area : 2.346500;
cell_leakage_power : 19.7536;
pin(A) {
direction : input;
capacitance : 0.00153896;
rise_capacitance : 0.00153896;
fall_capacitance : 0.00150415;
}
pin(Y) {
direction : output;
capacitance : 0;
rise_capacitance : 0;
fall_capacitance : 0;
max_capacitance : 0.518678;
function : "A";
timing() {
related_pin : "A";
timing_sense : positive_unate;
cell_rise(delay_template_4x5) {
index_1 ("0.02, 0.04, 0.08, 0.2");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.063943, 0.071963, 0.027516, 0.082034, 0.066059", \
"0.094187, 0.099356, 0.0635, 0.002776, -0.064928", \
"0.156904, 0.158037, 0.133819, 0.088328, -0.001681", \
"0.346685, 0.343572, 0.311057, 0.266532, 0.221543");
}
rise_transition(delay_template_4x5) {
index_1 ("0.02, 0.04, 0.08, 0.2");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.052895, 0.063171, 0.145667, 0.090511, 0.135315", \
"0.097952, 0.100743, 0.165668, 0.223096, 0.347827", \
"0.192592, 0.189413, 0.227832, 0.275388, 0.40565", \
"0.47767, 0.465699, 0.473121, 0.485414, 0.578887");
}
cell_fall(delay_template_4x5) {
index_1 ("0.02, 0.04, 0.08, 0.2");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.061896, 0.087295, 0.122815, 0.05382, 0.114433", \
"0.083181, 0.109743, 0.132926, 0.06208, 0.122644", \
"0.123383, 0.148916, 0.158043, 0.084818, 0.140278", \
"0.244802, 0.268345, 0.295462, 0.229634, 0.211325");
}
fall_transition(delay_template_4x5) {
index_1 ("0.02, 0.04, 0.08, 0.2");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.034243, 0.052368, 0.210073, 0.250768, 0.483235", \
"0.059201, 0.069831, 0.217597, 0.256839, 0.489242", \
"0.115169, 0.116317, 0.239017, 0.273588, 0.502134", \
"0.28636, 0.28105, 0.33743, 0.369142, 0.563601");
}
}
internal_power() {
related_pin : "A";
rise_power(energy_template_4x5) {
index_1 ("0.02, 0.04, 0.08, 0.2");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.003912, 0.006787, 0.005487, 0.013317, 0.023485", \
"0.003895, 0.006545, 0.005732, 0.007758, 0.014272", \
"0.003721, 0.006105, 0.006328, 0.008109, 0.014223", \
"0.003707, 0.00541, 0.005697, 0.008208, 0.014869");
}
fall_power(energy_template_4x5) {
index_1 ("0.02, 0.04, 0.08, 0.2");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.005287, 0.007256, 0.006331, 0.005862, 0.00788", \
"0.005322, 0.007246, 0.006347, 0.005918, 0.007895", \
"0.005297, 0.007186, 0.00612, 0.005841, 0.007781", \
"0.00535, 0.007063, 0.006214, 0.006118, 0.007868");
}
}
}
}
/* -------------- *
* Design : BUFX4 *
* -------------- */
cell (BUFX4) {
cell_footprint : buf;
area : 2.815800;
cell_leakage_power : 51.5028;
pin(A) {
direction : input;
capacitance : 0.0039795;
rise_capacitance : 0.0039795;
fall_capacitance : 0.003854;
}
pin(Y) {
direction : output;
capacitance : 0;
rise_capacitance : 0;
fall_capacitance : 0;
max_capacitance : 0.999277;
function : "A";
timing() {
related_pin : "A";
timing_sense : positive_unate;
cell_rise(delay_template_4x5) {
index_1 ("0.04, 0.08, 0.16, 0.4");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.047655, 0.040162, 0.004271, -0.008412, -0.090766", \
"0.078175, 0.068367, 0.037773, -0.038599, -0.112079", \
"0.141501, 0.128863, 0.097889, 0.036582, -0.02314", \
"0.324269, 0.31461, 0.279858, 0.213857, 0.164217");
}
rise_transition(delay_template_4x5) {
index_1 ("0.04, 0.08, 0.16, 0.4");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.053373, 0.057762, 0.103657, 0.087018, 0.125397", \
"0.099667, 0.100067, 0.121792, 0.184784, 0.284625", \
"0.19399, 0.192821, 0.198212, 0.243291, 0.321967", \
"0.485012, 0.467496, 0.477313, 0.471969, 0.495976");
}
cell_fall(delay_template_4x5) {
index_1 ("0.04, 0.08, 0.16, 0.4");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.069641, 0.100117, 0.187081, 0.100937, 0.189711", \
"0.089665, 0.128906, 0.195719, 0.109619, 0.197495", \
"0.129709, 0.169351, 0.216861, 0.130659, 0.214429", \
"0.24971, 0.289075, 0.348891, 0.262047, 0.280288");
}
fall_transition(delay_template_4x5) {
index_1 ("0.04, 0.08, 0.16, 0.4");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.038092, 0.081078, 0.258003, 0.28594, 0.539564", \
"0.063185, 0.091351, 0.264046, 0.292084, 0.545074", \
"0.119424, 0.123136, 0.278837, 0.306975, 0.557059", \
"0.289052, 0.285932, 0.360032, 0.390854, 0.608214");
}
}
internal_power() {
related_pin : "A";
rise_power(energy_template_4x5) {
index_1 ("0.04, 0.08, 0.16, 0.4");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.008709, 0.014267, 0.019029, 0.026771, 0.051706", \
"0.008897, 0.013649, 0.019382, 0.020186, 0.043901", \
"0.008721, 0.013415, 0.019725, 0.021798, 0.043226", \
"0.008673, 0.012507, 0.019515, 0.021278, 0.042784");
}
fall_power(energy_template_4x5) {
index_1 ("0.04, 0.08, 0.16, 0.4");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.013452, 0.017716, 0.013856, 0.012772, 0.017029", \
"0.013436, 0.017869, 0.013816, 0.012813, 0.016674", \
"0.013962, 0.018473, 0.01394, 0.012601, 0.016526", \
"0.014022, 0.01884, 0.014647, 0.013401, 0.01673");
}
}
}
}
/* ---------------- *
* Design : CLKBUF1 *
* ---------------- */
cell (CLKBUF1) {
cell_footprint : buf;
area : 5.631600;
cell_leakage_power : 119.075;
pin(A) {
direction : input;
capacitance : 0.00539775;
rise_capacitance : 0.00539775;
fall_capacitance : 0.00519021;
}
pin(Y) {
direction : output;
capacitance : 0;
rise_capacitance : 0;
fall_capacitance : 0;
max_capacitance : 1.01751;
function : "A";
timing() {
related_pin : "A";
timing_sense : positive_unate;
cell_rise(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.121822, 0.126698, 0.081826, 0.109424, 0.085097, -0.100628", \
"0.431341, 0.432402, 0.380224, 0.415405, 0.217843, 0.147817", \
"0.969153, 0.986161, 0.911705, 0.951121, 0.738174, 0.662897", \
"2.35404, 2.35439, 2.28621, 2.3496, 2.11354, 2.01058", \
"3.12674, 3.17626, 3.07586, 3.13791, 2.88871, 2.77885", \
"3.92389, 3.902, 3.82713, 3.90736, 3.64789, 3.55353");
}
rise_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.124059, 0.122063, 0.226168, 0.122673, 0.125681, 0.64946", \
"0.595918, 0.597517, 0.588944, 0.581847, 0.645824, 0.819694", \
"1.41044, 1.46956, 1.3947, 1.39919, 1.39329, 1.48738", \
"3.5316, 3.634, 3.4888, 3.53801, 3.47722, 3.46903", \
"4.65146, 4.71466, 4.62275, 4.72839, 4.62608, 4.6342", \
"5.86618, 5.85268, 5.77018, 5.84518, 5.79029, 5.80213");
}
cell_fall(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.104436, 0.129807, 0.108386, 0.189595, 0.199688, 0.253129", \
"0.306048, 0.330444, 0.306792, 0.268495, 0.400086, 0.396031", \
"0.655152, 0.688407, 0.652365, 0.607814, 0.588011, 0.735757", \
"1.5702, 1.61149, 1.55414, 1.50837, 1.47971, 1.63342", \
"2.05773, 2.08477, 2.0692, 2.01495, 1.97778, 2.13355", \
"2.58023, 2.62832, 2.56046, 2.51031, 2.48987, 2.63777");
}
fall_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.074096, 0.072994, 0.22826, 0.072636, 0.074236, 0.072831", \
"0.355441, 0.352288, 0.390425, 0.432755, 0.346527, 0.461318", \
"0.848835, 0.87081, 0.821349, 0.815829, 0.905053, 0.838245", \
"2.10287, 2.15288, 2.09943, 2.06917, 2.07178, 2.05234", \
"2.77879, 2.96094, 2.79546, 2.76676, 2.77556, 2.75014", \
"3.48648, 3.51253, 3.47698, 3.44391, 3.48864, 3.44401");
}
}
internal_power() {
related_pin : "A";
rise_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.02353, 0.03448, 0.02284, 0.073942, 0.092987, 0.068082", \
"0.023749, 0.034742, 0.023807, 0.073591, 0.070598, 0.068483", \
"0.023556, 0.034738, 0.02402, 0.073655, 0.070815, 0.070957", \
"0.022347, 0.034283, 0.027228, 0.073428, 0.070707, 0.071145", \
"0.02284, 0.034175, 0.023297, 0.073379, 0.077889, 0.071811", \
"0.02388, 0.03404, 0.026161, 0.073079, 0.075787, 0.070653");
}
fall_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.030797, 0.041859, 0.02865, 0.081584, 0.098088, 0.138883", \
"0.031839, 0.042267, 0.030146, 0.05521, 0.098643, 0.116852", \
"0.030751, 0.042761, 0.030959, 0.052426, 0.042629, 0.117033", \
"0.026875, 0.042587, 0.030804, 0.052782, 0.042595, 0.118313", \
"0.032997, 0.042771, 0.033351, 0.053969, 0.045358, 0.117374", \
"0.038251, 0.04292, 0.034179, 0.055236, 0.044284, 0.114609");
}
}
}
}
/* ---------------- *
* Design : CLKBUF2 *
* ---------------- */
cell (CLKBUF2) {
cell_footprint : buf;
area : 7.508800;
cell_leakage_power : 193.042;
pin(A) {
direction : input;
capacitance : 0.00546037;
rise_capacitance : 0.00546037;
fall_capacitance : 0.00527344;
}
pin(Y) {
direction : output;
capacitance : 0;
rise_capacitance : 0;
fall_capacitance : 0;
max_capacitance : 0.949224;
function : "A";
timing() {
related_pin : "A";
timing_sense : positive_unate;
cell_rise(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.143843, 0.14972, 0.148394, 0.131629, 0.125964, 0.096066", \
"0.459131, 0.457575, 0.453179, 0.439055, 0.43281, 0.403774", \
"0.998156, 0.996284, 0.997379, 0.971772, 0.966041, 0.943772", \
"2.37366, 2.39005, 2.40949, 2.38042, 2.37006, 2.31127", \
"3.18392, 3.17731, 3.14855, 3.13423, 3.13343, 3.12964", \
"3.9186, 3.97859, 3.93937, 3.87311, 3.91926, 3.86623");
}
rise_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.124367, 0.12487, 0.122773, 0.122894, 0.12284, 0.122582", \
"0.597539, 0.598328, 0.58649, 0.594205, 0.587091, 0.587986", \
"1.46536, 1.4269, 1.41909, 1.40303, 1.40191, 1.39517", \
"3.62806, 3.55633, 3.52155, 3.5261, 3.5204, 3.47341", \
"4.71207, 4.83261, 4.68396, 4.69812, 4.72002, 4.66187", \
"5.86015, 5.88782, 5.89802, 5.94018, 5.83521, 5.82854");
}
cell_fall(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.127188, 0.153027, 0.178895, 0.208286, 0.231331, 0.274475", \
"0.331121, 0.353268, 0.379365, 0.409189, 0.432351, 0.475135", \
"0.687948, 0.708999, 0.731262, 0.759398, 0.783001, 0.826344", \
"1.59582, 1.63386, 1.6668, 1.67432, 1.69167, 1.73044", \
"2.09346, 2.13164, 2.14502, 2.17719, 2.19296, 2.23238", \
"2.60697, 2.61897, 2.65079, 2.67966, 2.70986, 2.74005");
}
fall_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.074236, 0.073547, 0.073834, 0.073245, 0.074292, 0.07426", \
"0.361887, 0.352656, 0.34443, 0.346828, 0.349215, 0.34888", \
"0.851639, 0.861256, 0.854556, 0.820722, 0.815264, 0.82803", \
"2.1288, 2.13988, 2.16988, 2.10714, 2.09428, 2.06564", \
"2.89291, 2.89442, 2.83459, 2.85921, 2.86186, 2.83937", \
"3.55982, 3.72993, 3.61756, 3.74553, 3.63612, 3.47908");
}
}
internal_power() {
related_pin : "A";
rise_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.037711, 0.049114, 0.061886, 0.089108, 0.107608, 0.148457", \
"0.037623, 0.049373, 0.061123, 0.088912, 0.108317, 0.145618", \
"0.03829, 0.049314, 0.061286, 0.089255, 0.108733, 0.148036", \
"0.036303, 0.048946, 0.060629, 0.088995, 0.108628, 0.147921", \
"0.036943, 0.048786, 0.060669, 0.088762, 0.108625, 0.147669", \
"0.037541, 0.048607, 0.060954, 0.088739, 0.108265, 0.147491");
}
fall_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.04667, 0.056951, 0.070835, 0.095913, 0.113805, 0.152249", \
"0.048855, 0.057403, 0.0705, 0.096309, 0.114264, 0.150444", \
"0.043425, 0.057752, 0.070642, 0.097093, 0.114342, 0.150253", \
"0.020503, 0.057879, 0.070863, 0.097425, 0.114785, 0.151847", \
"0.021609, 0.057967, 0.07098, 0.097615, 0.115065, 0.152008", \
"0.030299, 0.058137, 0.071152, 0.09777, 0.114996, 0.152169");
}
}
}
}
/* ---------------- *
* Design : CLKBUF3 *
* ---------------- */
cell (CLKBUF3) {
cell_footprint : buf;
area : 9.855300;
cell_leakage_power : 267.008;
pin(A) {
direction : input;
capacitance : 0.00543838;
rise_capacitance : 0.00543838;
fall_capacitance : 0.00529382;
}
pin(Y) {
direction : output;
capacitance : 0;
rise_capacitance : 0;
fall_capacitance : 0;
max_capacitance : 0.923974;
function : "A";
timing() {
related_pin : "A";
timing_sense : positive_unate;
cell_rise(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.16682, 0.17274, 0.170587, 0.153582, 0.148058, 0.118108", \
"0.476137, 0.484081, 0.475698, 0.462865, 0.455941, 0.427515", \
"1.01612, 1.01622, 1.01942, 0.994967, 0.986457, 0.965768", \
"2.41248, 2.41282, 2.41244, 2.38888, 2.40962, 2.3307", \
"3.16919, 3.21949, 3.21356, 3.17835, 3.12581, 3.15029", \
"3.98009, 3.98366, 3.97875, 3.92815, 3.98114, 3.88157");
}
rise_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.123317, 0.126266, 0.124121, 0.123262, 0.123069, 0.123527", \
"0.595347, 0.586124, 0.587184, 0.586099, 0.585833, 0.588683", \
"1.41609, 1.42435, 1.422, 1.40424, 1.39922, 1.3933", \
"3.54166, 3.58017, 3.56867, 3.59532, 3.5131, 3.48551", \
"4.66899, 4.76968, 4.76397, 4.69199, 4.74648, 4.66549", \
"5.85502, 5.86898, 5.86272, 5.86294, 5.95992, 5.83487");
}
cell_fall(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.150093, 0.175107, 0.200825, 0.230239, 0.254055, 0.296987", \
"0.352068, 0.376884, 0.401202, 0.431277, 0.455399, 0.49765", \
"0.702822, 0.73131, 0.756783, 0.781155, 0.806264, 0.84986", \
"1.62103, 1.65478, 1.68758, 1.68402, 1.70861, 1.74904", \
"2.10563, 2.13535, 2.16208, 2.21265, 2.23903, 2.25014", \
"2.63592, 2.69323, 2.72927, 2.72417, 2.72571, 2.77822");
}
fall_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.073533, 0.076175, 0.073935, 0.073523, 0.073451, 0.073687", \
"0.35834, 0.36076, 0.344358, 0.347732, 0.349446, 0.348882", \
"0.849429, 0.887646, 0.846875, 0.826505, 0.831965, 0.821433", \
"2.12996, 2.16448, 2.13318, 2.20059, 2.14298, 2.08091", \
"2.8152, 3.00961, 2.94008, 2.81863, 2.80086, 2.78445", \
"3.50505, 3.61815, 3.83897, 3.52494, 3.55034, 3.48455");
}
}
internal_power() {
related_pin : "A";
rise_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.052385, 0.064006, 0.074926, 0.102931, 0.121732, 0.161844", \
"0.052225, 0.064257, 0.074883, 0.104413, 0.122427, 0.162252", \
"0.052939, 0.06405, 0.07481, 0.10441, 0.122749, 0.162746", \
"0.055631, 0.063585, 0.074597, 0.104398, 0.12251, 0.162562", \
"0.053596, 0.063516, 0.074554, 0.104067, 0.122343, 0.162425", \
"0.047758, 0.063269, 0.074233, 0.103626, 0.12227, 0.162312");
}
fall_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.060815, 0.071639, 0.085054, 0.111367, 0.128981, 0.166988", \
"0.060656, 0.072261, 0.084962, 0.111578, 0.130432, 0.166498", \
"0.062462, 0.072668, 0.085264, 0.111642, 0.130573, 0.16702", \
"0.073821, 0.072399, 0.085454, 0.112071, 0.131025, 0.167235", \
"0.064963, 0.072657, 0.085688, 0.112012, 0.131188, 0.167506", \
"0.049717, 0.072478, 0.085818, 0.112124, 0.131386, 0.167565");
}
}
}
}
/* ----------------- *
* Design : DFFNEGX1 *
* ----------------- */
cell (DFFNEGX1) {
area : 7.978100;
cell_leakage_power : 50.8627;
ff (DS0000,P0000) {
next_state : "D";
clocked_on : "(!CLK)";
}
pin(CLK) {
direction : input;
capacitance : 0.00646193;
rise_capacitance : 0.00646193;
fall_capacitance : 0.00477771;
clock : true;
internal_power() {
rise_power(passive_energy_template_6x1) {
index_1 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ("0.004694, 0.009912, 0.017118, 0.02946, 0.038728, 0.057907");
}
fall_power(passive_energy_template_6x1) {
index_1 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ("0.008263, 0.013283, 0.019385, 0.029424, 0.03776, 0.057893");
}
}
min_pulse_width_high : 0.0404763;
min_pulse_width_low : 0.127802;
}
pin(D) {
direction : input;
capacitance : 0.00180099;
rise_capacitance : 0.00180099;
fall_capacitance : 0.00128286;
internal_power() {
rise_power(passive_energy_template_6x1) {
index_1 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ("0.005957, 0.007244, 0.008846, 0.012166, 0.015108, 0.019902");
}
fall_power(passive_energy_template_6x1) {
index_1 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ("0.00716, 0.008638, 0.009798, 0.013539, 0.016184, 0.020988");
}
}
timing() {
related_pin : "CLK";
timing_type : hold_falling;
rise_constraint(hold_template_3x6) {
index_1 ("0.06, 0.3, 0.6");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0, -0.0375, -0.025, -0.05, 0.0125, 0.04375", \
"-0.0125, -0.05, -0.0375, -0.0625, -0.09375, -0.0625", \
"-0.075, -0.1125, -0.1, -0.125, -0.15625, -0.125");
}
fall_constraint(hold_template_3x6) {
index_1 ("0.06, 0.3, 0.6");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0, -0.0375, -0.025, -0.05, -0.08125, -0.14375", \
"-0.0125, -0.05, -0.0375, -0.0625, -0.09375, -0.15625", \
"0.01875, -0.01875, -0.00625, -0.03125, -0.0625, -0.125");
}
}
timing() {
related_pin : "CLK";
timing_type : setup_falling;
rise_constraint(setup_template_3x6) {
index_1 ("0.06, 0.3, 0.6");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.09375, 0.13125, 0.11875, 0.14375, 0.08125, 0.05", \
"0.2, 0.33125, 2.94375, 0.15625, 0.1875, 0.25", \
"0.16875, 0.20625, 0.19375, 0.21875, 0.25, 0.21875");
}
fall_constraint(setup_template_3x6) {
index_1 ("0.06, 0.3, 0.6");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.09375, 0.13125, 0.11875, 0.2375, 0.26875, 0.33125", \
"0.2, 3.89375, 0.13125, 1.84375, 0.1875, 0.25", \
"0.2625, 2.08125, 0.19375, 0.21875, 0.15625, 0.21875");
}
}
}
pin(Q) {
direction : output;
capacitance : 0;
rise_capacitance : 0;
fall_capacitance : 0;
max_capacitance : 0.49931;
function : "DS0000";
timing() {
related_pin : "CLK";
timing_sense : non_unate;
timing_type : falling_edge;
cell_rise(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.215846, 0.254173, 0.222018, 0.320032, 0.330813, 0.350582", \
"0.825964, 0.864404, 0.829792, 0.931266, 0.941654, 0.958854", \
"1.8971, 1.93136, 1.8988, 2.00052, 2.02002, 2.02485", \
"4.63791, 4.67777, 4.64077, 4.74493, 4.7623, 4.77635", \
"6.17408, 6.21678, 6.16617, 6.27288, 6.29557, 6.28975", \
"7.69668, 7.73286, 7.70637, 7.81883, 7.87064, 7.83946");
}
rise_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.242923, 0.241033, 0.24761, 0.24107, 0.243675, 0.243639", \
"1.16259, 1.15926, 1.15775, 1.17032, 1.16521, 1.18213", \
"2.77708, 2.77007, 2.77932, 2.76424, 2.78984, 2.76608", \
"6.89166, 6.88961, 6.90785, 6.926, 6.94765, 6.95102", \
"9.21777, 9.2231, 9.27768, 9.29254, 9.24341, 9.23674", \
"11.6553, 11.681, 11.6542, 11.6646, 11.5382, 11.508");
}
cell_fall(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.188439, 0.233073, 0.285435, 0.321357, 0.371658, 0.463733", \
"0.58984, 0.632687, 0.684434, 0.712977, 0.777925, 0.879502", \
"1.29182, 1.33325, 1.38876, 1.41013, 1.47715, 1.58061", \
"3.09802, 3.13536, 3.18732, 3.21095, 3.27691, 3.38881", \
"4.09504, 4.14745, 4.18718, 4.21706, 4.27962, 4.38035", \
"5.10571, 5.13719, 5.18811, 5.21163, 5.27889, 5.38285");
}
fall_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.149721, 0.151868, 0.162113, 0.233905, 0.289924, 0.2086", \
"0.686661, 0.688573, 0.689372, 0.692882, 0.695965, 0.702432", \
"1.63865, 1.64485, 1.64445, 1.63766, 1.63655, 1.65989", \
"4.09744, 4.06501, 4.08399, 4.06918, 4.07999, 4.08978", \
"5.44064, 5.47024, 5.46785, 5.45967, 5.41892, 5.47057", \
"6.77359, 6.79067, 6.84158, 6.81506, 6.79392, 6.76101");
}
}
internal_power() {
related_pin : "CLK";
rise_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.013966, 0.020353, 0.024039, 0.03864, 0.047388, 0.066734", \
"0.014183, 0.020677, 0.024228, 0.038679, 0.047901, 0.066091", \
"0.014446, 0.020779, 0.024424, 0.038864, 0.048078, 0.065684", \
"0.014738, 0.021053, 0.024673, 0.039141, 0.048355, 0.065778", \
"0.014505, 0.021186, 0.024686, 0.039247, 0.048506, 0.065895", \
"0.015075, 0.021187, 0.024926, 0.039316, 0.048549, 0.066029");
}
fall_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.012725, 0.020002, 0.028393, 0.042932, 0.053845, 0.078269", \
"0.012863, 0.019839, 0.027655, 0.038864, 0.053979, 0.078355", \
"0.012965, 0.019769, 0.027572, 0.037819, 0.054016, 0.078266", \
"0.013209, 0.020014, 0.027864, 0.037532, 0.054392, 0.078245", \
"0.013118, 0.020127, 0.027906, 0.037458, 0.054346, 0.07849", \
"0.013444, 0.02035, 0.028026, 0.037555, 0.054371, 0.078523");
}
}
}
}
/* ----------------- *
* Design : DFFPOSX1 *
* ----------------- */
cell (DFFPOSX1) {
area : 7.978100;
cell_leakage_power : 54.9774;
ff (DS0000,P0000) {
next_state : "D";
clocked_on : "CLK";
}
pin(CLK) {
direction : input;
capacitance : 0.00822349;
rise_capacitance : 0.00822349;
fall_capacitance : 0.00813588;
clock : true;
internal_power() {
rise_power(passive_energy_template_6x1) {
index_1 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ("0.001076, 0.005042, 0.01122, 0.022717, 0.030041, 0.047477");
}
fall_power(passive_energy_template_6x1) {
index_1 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ("0.01537, 0.01855, 0.026004, 0.037531, 0.046665, 0.069908");
}
}
min_pulse_width_high : 0.129905;
min_pulse_width_low : 0.0554379;
}
pin(D) {
direction : input;
capacitance : 0.00181554;
rise_capacitance : 0.00181554;
fall_capacitance : 0.00129019;
internal_power() {
rise_power(passive_energy_template_6x1) {
index_1 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ("0.007584, 0.008662, 0.009911, 0.013507, 0.016383, 0.02174");
}
fall_power(passive_energy_template_6x1) {
index_1 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ("0.006157, 0.007881, 0.008317, 0.012041, 0.015264, 0.02011");
}
}
timing() {
related_pin : "CLK";
timing_type : hold_rising;
rise_constraint(hold_template_3x6) {
index_1 ("0.06, 0.3, 0.6");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0, 0.05625, -0.025, 0.04375, 0.0125, 0.04375", \
"-0.0125, -0.05, -0.0375, 0.03125, 0, 0.03125", \
"0.39375, 0.54375, 0.74375, -0.03125, 0.03125, 0.25");
}
fall_constraint(hold_template_3x6) {
index_1 ("0.06, 0.3, 0.6");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0, -0.0375, -0.11875, -0.14375, -0.175, -0.2375", \
"0.3625, 0.5125, 0.15, 0.5, 0.75, 1.25", \
"0.4875, 0.6375, 0.8375, 0.25, 0.5, 1");
}
}
timing() {
related_pin : "CLK";
timing_type : setup_rising;
rise_constraint(setup_template_3x6) {
index_1 ("0.06, 0.3, 0.6");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.09375, 0.13125, 0.11875, 0.14375, 0.08125, 0.05", \
"6.2, 0.14375, 0.13125, 5.125, 0.1875, 0.0625", \
"3.075, 0.20625, 0.2875, 0.59375, 0.15625, 0.21875");
}
fall_constraint(setup_template_3x6) {
index_1 ("0.06, 0.3, 0.6");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.09375, 0.13125, 0.49375, 0.2375, 0.26875, 0.33125", \
"0.2, 0.2375, 5.85, 0.4375, 0.375, 0.4375", \
"0.2625, 0.3, 0.2875, 0.40625, 0.4375, 0.5");
}
}
}
pin(Q) {
direction : output;
capacitance : 0;
rise_capacitance : 0;
fall_capacitance : 0;
max_capacitance : 0.490882;
function : "DS0000";
timing() {
related_pin : "CLK";
timing_sense : non_unate;
timing_type : rising_edge;
cell_rise(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.218831, 0.23907, 0.243667, 0.232013, 0.213945, 0.161268", \
"0.829044, 0.848202, 0.850887, 0.826945, 0.802832, 0.775599", \
"1.89741, 1.91675, 1.917, 1.88913, 1.86523, 1.84173", \
"4.64173, 4.65707, 4.66246, 4.63108, 4.60733, 4.58433", \
"6.16548, 6.19049, 6.19821, 6.16102, 6.14292, 6.11554", \
"7.69567, 7.71512, 7.71103, 7.68625, 7.65612, 7.63234");
}
rise_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.23978, 0.242448, 0.248949, 0.273855, 0.312581, 0.395104", \
"1.16609, 1.15827, 1.16263, 1.16866, 1.15959, 1.16812", \
"2.76111, 2.76988, 2.78627, 2.79912, 2.76272, 2.78797", \
"6.89796, 6.93237, 6.89459, 6.91325, 6.91624, 6.88764", \
"9.21497, 9.29472, 9.21357, 9.24085, 9.36628, 9.33545", \
"11.6947, 11.6479, 11.7143, 11.4889, 11.7098, 11.7021");
}
cell_fall(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.200897, 0.201565, 0.213664, 0.203498, 0.188818, 0.181786", \
"0.602015, 0.602684, 0.613968, 0.602529, 0.589392, 0.582538", \
"1.30463, 1.30455, 1.31738, 1.30322, 1.29178, 1.28499", \
"3.10912, 3.11142, 3.12824, 3.10544, 3.09662, 3.08649", \
"4.10865, 4.10973, 4.11748, 4.12321, 4.0954, 4.10128", \
"5.10675, 5.11027, 5.12214, 5.10737, 5.0968, 5.09894");
}
fall_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.149294, 0.147719, 0.149395, 0.15375, 0.151838, 0.15733", \
"0.684088, 0.686797, 0.686148, 0.6874, 0.688284, 0.692922", \
"1.64592, 1.65601, 1.64709, 1.64497, 1.63076, 1.64245", \
"4.10456, 4.05715, 4.06149, 4.09639, 4.07966, 4.13424", \
"5.45345, 5.47193, 5.43677, 5.42561, 5.4515, 5.46556", \
"6.81949, 6.82035, 6.85031, 6.80511, 6.76451, 6.84088");
}
}
internal_power() {
related_pin : "CLK";
rise_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.008501, 0.013099, 0.020435, 0.035694, 0.049457, 0.061461", \
"0.008615, 0.01291, 0.020182, 0.033509, 0.046708, 0.063718", \
"0.008687, 0.012902, 0.02001, 0.032565, 0.044471, 0.063766", \
"0.008353, 0.012653, 0.019676, 0.031841, 0.043079, 0.063467", \
"0.007555, 0.012507, 0.019568, 0.031504, 0.042696, 0.063386", \
"0.009074, 0.012222, 0.019356, 0.031379, 0.042285, 0.063061");
}
fall_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.008664, 0.012839, 0.019303, 0.031106, 0.040631, 0.060004", \
"0.00876, 0.01314, 0.019414, 0.031135, 0.040826, 0.059578", \
"0.009084, 0.013085, 0.019524, 0.031143, 0.04086, 0.059478", \
"0.008866, 0.013131, 0.019623, 0.031296, 0.040993, 0.059544", \
"0.009397, 0.013278, 0.019684, 0.031324, 0.041098, 0.059594", \
"0.008966, 0.013417, 0.019846, 0.031376, 0.04116, 0.059602");
}
}
}
}
/* -------------- *
* Design : DFFSR *
* -------------- */
cell (DFFSR) {
area : 10.324600;
cell_leakage_power : 108.613;
ff (P0002,P0003) {
next_state : "D";
clocked_on : "CLK";
clear : "(!R)";
preset : "(!S)";
clear_preset_var1 : L;
}
pin(CLK) {
direction : input;
capacitance : 0.00172596;
rise_capacitance : 0.00172596;
fall_capacitance : 0.00148522;
clock : true;
internal_power() {
rise_power(passive_energy_template_6x1) {
index_1 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ("0.007637, 0.009848, 0.013225, 0.01775, 0.022269, 0.033581");
}
fall_power(passive_energy_template_6x1) {
index_1 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ("0.017452, 0.020207, 0.024242, 0.031641, 0.03437, 0.049092");
}
}
min_pulse_width_high : 0.262012;
min_pulse_width_low : 0.125679;
}
pin(D) {
direction : input;
capacitance : 0.00199559;
rise_capacitance : 0.00199559;
fall_capacitance : 0.0015328;
internal_power() {
rise_power(passive_energy_template_6x1) {
index_1 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ("0.011173, 0.015155, 0.01783, 0.024679, 0.031432, 0.039447");
}
fall_power(passive_energy_template_6x1) {
index_1 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ("0.01268, 0.01491, 0.019055, 0.02562, 0.030041, 0.047194");
}
}
timing() {
related_pin : "CLK";
timing_type : hold_rising;
when : "S&R";
sdf_cond : "S_EQ_1_AN_R_EQ_1 == 1'b1";
rise_constraint(hold_template_3x6) {
index_1 ("0.06, 0.3, 0.6");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0, 0.05625, -0.025, 0.04375, 0.0125, 0.04375", \
"-0.0125, 0.04375, -0.0375, 0.03125, 0, 0.03125", \
"0.39375, 0.54375, 0.74375, 0.25, 0.5, 1");
}
fall_constraint(hold_template_3x6) {
index_1 ("0.06, 0.3, 0.6");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0, -0.0375, -0.025, -0.14375, -0.175, -0.2375", \
"0.26875, 0.41875, 0.15, 0.3125, 0.5625, 0.96875", \
"0.01875, -0.01875, -0.1, -0.125, -0.15625, -0.21875");
}
}
timing() {
related_pin : "CLK";
timing_type : setup_rising;
when : "S&R";
sdf_cond : "S_EQ_1_AN_R_EQ_1 == 1'b1";
rise_constraint(setup_template_3x6) {
index_1 ("0.06, 0.3, 0.6");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.09375, 0.13125, 0.11875, 0.05, 0.08125, 0.05", \
"0.10625, 0.05, 0.13125, 0.0625, 0.09375, 0.0625", \
"0.075, 0.1125, 0.1, 0.125, 0.15625, 0.125");
}
fall_constraint(setup_template_3x6) {
index_1 ("0.06, 0.3, 0.6");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.09375, 0.13125, 0.2125, 0.2375, 0.26875, 0.33125", \
"0.29375, 0.14375, 0.13125, 0.25, 0.28125, 0.34375", \
"0.16875, 0.20625, 0.2875, 0.40625, 0.4375, 0.59375");
}
}
}
pin(Q) {
direction : output;
capacitance : 0;
rise_capacitance : 0;
fall_capacitance : 0;
max_capacitance : 0;
function : "P0002";
timing() {
related_pin : "CLK";
timing_sense : non_unate;
timing_type : rising_edge;
cell_rise(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.425419, 0.454713, 0.464824, 0.480219, 0.474835, 0.077979", \
"1.66909, 1.68998, 1.71053, 1.71553, 1.71325, 1.27595", \
"3.83487, 3.85664, 3.88287, 3.88829, 3.90945, 3.42621", \
"9.38351, 9.39386, 9.43383, 9.45655, 9.41367, 8.95205", \
"12.4742, 12.6184, 12.594, 12.562, 12.5057, 12.0839", \
"15.5608, 15.5664, 15.6243, 15.7366, 15.7383, 15.2046");
}
rise_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.472568, 0.472148, 0.474765, 0.471984, 0.474061, 0.772707", \
"2.35172, 2.35122, 2.35302, 2.3957, 2.33731, 2.34106", \
"5.60538, 5.60969, 5.66609, 5.62714, 5.63062, 5.6064", \
"14.0704, 14.1957, 14.0557, 13.9781, 13.9974, 14.0127", \
"18.6271, 18.6458, 18.6328, 18.673, 18.9076, 18.8961", \
"23.3099, 23.1981, 23.4388, 23.5804, 23.5836, 23.4706");
}
cell_fall(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.320966, 0.341931, 0.351005, 0.348602, 0.340045, 0.336927", \
"1.13521, 1.17079, 1.16845, 1.16411, 1.15432, 1.1524", \
"2.55463, 2.61943, 2.64511, 2.58389, 2.61231, 2.58877", \
"6.21523, 6.32654, 6.24574, 6.25146, 6.29995, 6.34697", \
"8.24526, 8.27473, 8.42256, 8.41867, 8.31116, 8.28075", \
"10.2776, 10.3871, 10.4875, 10.4897, 10.3882, 10.3803");
}
fall_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.283636, 0.291473, 0.281713, 0.283847, 0.282558, 0.280873", \
"1.39383, 1.4339, 1.49683, 1.43308, 1.39314, 1.38074", \
"3.3266, 3.43744, 3.72888, 3.5786, 3.40646, 3.38332", \
"8.3356, 8.45942, 9.06585, 8.99433, 8.57458, 8.44641", \
"11.0003, 11.6441, 11.4517, 11.4054, 11.6002, 11.6559", \
"13.7118, 14.2568, 14.1006, 14.0984, 14.0709, 14.2428");
}
}
timing() {
related_pin : "S";
timing_sense : negative_unate;
timing_type : preset;
cell_rise(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.397458, 0.437338, 0.477539, 0.5355, 0.502415, 0.631845", \
"1.64066, 1.69682, 1.72495, 1.78815, 1.72701, 1.86687", \
"3.81099, 3.84718, 3.88831, 3.9719, 3.90443, 4.05741", \
"9.36256, 9.40379, 9.48112, 9.55453, 9.47505, 9.67176", \
"12.4611, 12.4938, 12.5809, 12.6371, 12.5547, 12.827", \
"15.5327, 15.6333, 15.7406, 15.8153, 15.6879, 15.8518");
}
rise_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.475181, 0.477279, 0.474773, 0.483696, 0.514793, 0.472136", \
"2.34906, 2.36879, 2.39998, 2.35924, 2.34944, 2.33936", \
"5.62348, 5.62209, 5.65416, 5.68832, 5.63724, 5.65329", \
"13.9901, 13.9823, 14.0533, 14.05, 14.0009, 14.16", \
"18.8784, 18.8093, 18.8944, 18.9714, 18.913, 18.7671", \
"23.4019, 23.5062, 23.4922, 23.4392, 23.2837, 23.5529");
}
}
timing() {
related_pin : "R";
timing_sense : positive_unate;
timing_type : clear;
cell_rise(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.348445, 0.350565, 0.334771, 0.319049, 0.296993, 0.296683", \
"1.6039, 1.59562, 1.5729, 1.55665, 1.53018, 1.52347", \
"3.7666, 3.78158, 3.77493, 3.73869, 3.73563, 3.72504", \
"9.33894, 9.35851, 9.34979, 9.45808, 9.31068, 9.29322", \
"12.3708, 12.4626, 12.4071, 12.3341, 12.5316, 12.3043", \
"15.5139, 15.5161, 15.4171, 15.5061, 15.4053, 15.4667");
}
rise_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.475594, 0.472126, 0.476342, 0.484593, 0.489645, 0.49568", \
"2.37778, 2.38842, 2.36685, 2.38471, 2.34489, 2.35333", \
"5.62752, 5.61831, 5.60531, 5.66088, 5.66574, 5.64198", \
"13.9499, 14.0016, 13.9662, 14.046, 14.2884, 14.0042", \
"18.7424, 18.6855, 18.572, 18.6793, 18.7433, 18.816", \
"23.575, 23.5795, 23.4297, 23.5935, 23.4833, 23.5794");
}
cell_fall(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.260231, 0.302184, 0.345722, 0.34985, 0.344917, 0.487415", \
"1.07628, 1.12878, 1.16274, 1.16106, 1.17238, 1.31662", \
"2.51108, 2.54123, 2.59796, 2.61004, 2.593, 2.73897", \
"6.17666, 6.23562, 6.29303, 6.28607, 6.25478, 6.44185", \
"8.27671, 8.2876, 8.32255, 8.292, 8.27615, 8.43352", \
"10.2829, 10.2893, 10.4148, 10.3407, 10.3656, 10.4614");
}
fall_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.286226, 0.285464, 0.282739, 0.347964, 0.42773, 0.395377", \
"1.46109, 1.44738, 1.45548, 1.41265, 1.39858, 1.3849", \
"3.51429, 3.4629, 3.43508, 3.40097, 3.47899, 3.36512", \
"8.61071, 8.42568, 8.57382, 8.40378, 8.39951, 8.38539", \
"11.2724, 11.2769, 11.2979, 11.3497, 11.2057, 11.1613", \
"14.047, 14.0271, 14.0063, 14.0668, 13.8828, 14.001");
}
}
internal_power() {
related_pin : "CLK";
rise_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.016074, 0.02101, 0.024065, 0.034026, 0.035648, 0.026188", \
"0.014972, 0.020911, 0.024, 0.033661, 0.035639, 0.026012", \
"0.012169, 0.02063, 0.023769, 0.033379, 0.035359, 0.02588", \
"0.010686, 0.0198, 0.022925, 0.032601, 0.034652, 0.024752", \
"0.015201, 0.019536, 0.022584, 0.032081, 0.034283, 0.024366", \
"0.014663, 0.01899, 0.022222, 0.031789, 0.033733, 0.024251");
}
fall_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.017489, 0.020669, 0.023537, 0.029173, 0.035077, 0.043133", \
"0.018226, 0.020732, 0.0237, 0.029326, 0.035458, 0.042407", \
"0.022528, 0.020843, 0.02387, 0.02949, 0.0356, 0.042537", \
"0.017308, 0.021057, 0.023908, 0.029658, 0.035805, 0.042735", \
"0.018174, 0.021208, 0.02397, 0.029725, 0.035931, 0.042861", \
"0.018327, 0.021258, 0.02413, 0.029892, 0.035961, 0.042932");
}
}
internal_power() {
related_pin : "S";
power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.013919, 0.019307, 0.024348, 0.03381, 0.036469, 0.053219", \
"0.012856, 0.01939, 0.02438, 0.033861, 0.036597, 0.05349", \
"0.012007, 0.019364, 0.024354, 0.033769, 0.036571, 0.053469", \
"0.012238, 0.019288, 0.024113, 0.033728, 0.036663, 0.053306", \
"0.015067, 0.019267, 0.024146, 0.03359, 0.036809, 0.053271", \
"0.013608, 0.019141, 0.024182, 0.033521, 0.036317, 0.053208");
}
}
internal_power() {
related_pin : "R";
rise_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.006089, 0.01038, 0.016746, 0.029102, 0.038092, 0.059066", \
"0.006065, 0.010314, 0.016883, 0.029154, 0.038073, 0.058186", \
"0.005971, 0.010234, 0.016845, 0.029032, 0.037931, 0.057637", \
"0.005653, 0.009971, 0.016543, 0.028785, 0.0378, 0.05714", \
"0.005635, 0.009811, 0.016163, 0.028661, 0.037551, 0.057102", \
"0.005499, 0.009672, 0.016268, 0.028501, 0.037458, 0.056997");
}
fall_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.015692, 0.022057, 0.026396, 0.033532, 0.034734, 0.052462", \
"0.015957, 0.022162, 0.026614, 0.033659, 0.034898, 0.05254", \
"0.016263, 0.022299, 0.026624, 0.033834, 0.035061, 0.052671", \
"0.015901, 0.022247, 0.026746, 0.034383, 0.035164, 0.052819", \
"0.015708, 0.022792, 0.026786, 0.033987, 0.035412, 0.052924", \
"0.017732, 0.023315, 0.026831, 0.034072, 0.035461, 0.052969");
}
}
}
pin(R) {
direction : input;
capacitance : 0.00497023;
rise_capacitance : 0.00497023;
fall_capacitance : 0.00363509;
min_pulse_width_low : 0.14159;
timing() {
related_pin : "CLK";
timing_type : recovery_rising;
when : "D&S";
sdf_cond : "D_EQ_1_AN_S_EQ_1 == 1'b1";
rise_constraint(recovery_template_3x6) {
index_1 ("0.06, 0.3, 0.6");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0, -0.05625, 0.025, 0.05, 0.08125, 0.2375", \
"3.85625, -0.04375, -0.05625, 5.40625, 2.15625, 0.0625", \
"-0.1125, -0.075, 0.00625, 0.03125, 0.0625, 0.125");
}
}
timing() {
related_pin : "S";
timing_type : recovery_rising;
rise_constraint(recovery_template_6x6) {
index_1 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0, 0.05625, 0.06875, 0.090625, 0.10625, 0.1375", \
"0.0375, 0, 0.0125, 0.08125, 0.096875, 0.175", \
"0.025, -0.0125, 0, 0.06875, 0.0375, 0.1625", \
"-0.04375, 0.0125, 0.025, 0, 0.0625, 0.09375", \
"-0.0125, -0.05, -0.0375, 0.03125, 0, 0.03125", \
"-0.090625, -0.08125, -0.06875, -0.09375, -0.03125, 0");
}
}
timing() {
related_pin : "CLK";
timing_type : removal_rising;
when : "D&S";
sdf_cond : "D_EQ_1_AN_S_EQ_1 == 1'b1";
rise_constraint(removal_template_3x6) {
index_1 ("0.06, 0.3, 0.6");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.1875, 0.15, 0.25625, 0.325, 0.29375, 0.41875", \
"0.175, 0.23125, 0.24375, 0.3125, 0.375, 0.40625", \
"0.20625, 0.2625, 0.275, 0.34375, 0.40625, 0.4375");
}
}
}
pin(S) {
direction : input;
capacitance : 0.00405188;
rise_capacitance : 0.00277146;
fall_capacitance : 0.00405188;
internal_power() {
rise_power(passive_energy_template_6x1) {
index_1 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ("-0.000485, -0.000607, -0.000618, -0.000579, -0.000523, -0.000546");
}
fall_power(scalar) {
values("0");
}
}
min_pulse_width_low : 0.214412;
timing() {
related_pin : "CLK";
timing_type : recovery_rising;
when : "!D&R";
sdf_cond : "D_EQ_0_AN_R_EQ_1 == 1'b1";
rise_constraint(recovery_template_3x6) {
index_1 ("0.06, 0.3, 0.6");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0, 0.0375, 0.025, 0.14375, 0.175, 0.2375", \
"0.0125, 0.05, 0.13125, 0.0625, 0.09375, 0.34375", \
"0.16875, 1.8, 0.19375, 4.90625, 5.3125, 0.125");
}
}
timing() {
related_pin : "R";
timing_type : recovery_rising;
rise_constraint(recovery_template_6x6) {
index_1 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.09375, 0.05625, 0.06875, 0.1375, 0.10625, 0.23125", \
"0.0375, 0.046875, 0.059375, 0.08125, 0.14375, 0.175", \
"0.025, 0.08125, 0.046875, 0.06875, 0.13125, 0.1625", \
"0.003125, 0.0125, 0.025, 0.09375, 0.109375, 0.1875", \
"-0.0125, -0.003125, 0.05625, 0.03125, 0.046875, 0.125", \
"-0.04375, -0.034375, -0.021875, 0, 0.0625, 0.09375");
}
}
timing() {
related_pin : "CLK";
timing_type : removal_rising;
when : "!D&R";
sdf_cond : "D_EQ_0_AN_R_EQ_1 == 1'b1";
rise_constraint(removal_template_3x6) {
index_1 ("0.06, 0.3, 0.6");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.09375, 0.05625, 0.06875, 0.1375, 0.10625, 0.1375", \
"0.08125, 0.1375, 0.15, 0.125, 0.1875, 0.21875", \
"0.1125, 0.16875, 0.18125, 0.15625, 0.125, 0.25");
}
}
}
}
/* ------------- *
* Design : FAX1 *
* ------------- */
cell (FAX1) {
area : 8.916700;
cell_leakage_power : 39.2104;
pin(A) {
direction : input;
capacitance : 0.0126653;
rise_capacitance : 0.0126653;
fall_capacitance : 0.0108512;
}
pin(B) {
direction : input;
capacitance : 0.0103049;
rise_capacitance : 0.0103049;
fall_capacitance : 0.00882394;
}
pin(C) {
direction : input;
capacitance : 0.00821878;
rise_capacitance : 0.00821878;
fall_capacitance : 0.00706451;
}
pin(YC) {
direction : output;
capacitance : 0;
rise_capacitance : 0;
fall_capacitance : 0;
max_capacitance : 0.175491;
function : "(((A B)+(B C))+(C A))";
timing() {
related_pin : "B";
timing_sense : positive_unate;
cell_rise(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.360796, 0.371342, 0.384786, 0.392102, 0.387722, 0.389151", \
"1.59777, 1.6024, 1.62303, 1.62794, 1.61873, 1.62547", \
"3.75869, 3.75935, 3.79018, 3.79158, 3.77626, 3.79344", \
"9.30811, 9.32269, 9.35115, 9.33969, 9.35689, 9.34774", \
"12.4258, 12.4099, 12.4036, 12.4452, 12.4309, 12.4401", \
"15.4607, 15.4996, 15.4989, 15.5304, 15.5055, 15.5071");
}
rise_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.472888, 0.474721, 0.476268, 0.476776, 0.48418, 0.489389", \
"2.33882, 2.34215, 2.33939, 2.34178, 2.33638, 2.34012", \
"5.59572, 5.59936, 5.60195, 5.58166, 5.59327, 5.59591", \
"13.9664, 14.0282, 13.9659, 13.9748, 14.0202, 14.0048", \
"18.6063, 18.6256, 18.637, 18.6171, 18.6045, 18.6324", \
"23.215, 23.3899, 23.2426, 23.3117, 23.3492, 23.2334");
}
cell_fall(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.282487, 0.313241, 0.354129, 0.404643, 0.461646, 0.536592", \
"1.09854, 1.12956, 1.17054, 1.21742, 1.27772, 1.35831", \
"2.52347, 2.55793, 2.60464, 2.6418, 2.7179, 2.78199", \
"6.18353, 6.22366, 6.29713, 6.31763, 6.38828, 6.44955", \
"8.21171, 8.25798, 8.28889, 8.33734, 8.38642, 8.49833", \
"10.2362, 10.2682, 10.3416, 10.4251, 10.4665, 10.5462");
}
fall_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.284385, 0.286703, 0.28812, 0.293398, 0.297239, 0.30851", \
"1.40194, 1.40667, 1.40591, 1.40611, 1.4033, 1.39047", \
"3.36402, 3.38647, 3.36398, 3.36853, 3.36629, 3.36047", \
"8.30389, 8.40246, 8.37724, 8.40516, 8.32538, 8.43763", \
"11.0353, 11.0979, 11.1758, 11.2854, 11.2774, 11.2805", \
"13.7748, 14.0635, 14.0152, 14.0825, 14.0655, 13.9357");
}
}
timing() {
related_pin : "C";
timing_sense : positive_unate;
cell_rise(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.357997, 0.373143, 0.37197, 0.389959, 0.386872, 0.394009", \
"1.59319, 1.61027, 1.606, 1.62352, 1.61384, 1.62784", \
"3.75199, 3.77406, 3.76524, 3.78641, 3.77556, 3.78734", \
"9.29952, 9.31306, 9.3074, 9.34405, 9.34008, 9.33856", \
"12.4056, 12.4087, 12.3915, 12.4189, 12.4141, 12.4404", \
"15.5138, 15.4823, 15.4611, 15.5523, 15.4957, 15.5162");
}
rise_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.475, 0.474869, 0.477545, 0.476755, 0.483474, 0.492588", \
"2.34337, 2.3409, 2.33937, 2.3373, 2.33537, 2.33675", \
"5.59896, 5.5859, 5.5867, 5.58158, 5.60649, 5.58364", \
"13.9717, 13.9976, 14.0099, 13.9941, 13.9592, 13.9573", \
"18.6063, 18.5825, 18.5621, 18.6492, 18.7243, 18.6316", \
"23.2864, 23.285, 23.1924, 23.2581, 23.2172, 23.3613");
}
cell_fall(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.275687, 0.306466, 0.364062, 0.433012, 0.467161, 0.556693", \
"1.08882, 1.11991, 1.17677, 1.24522, 1.28207, 1.37585", \
"2.51487, 2.54371, 2.59925, 2.67799, 2.70759, 2.79839", \
"6.16473, 6.19932, 6.25161, 6.37193, 6.36558, 6.45333", \
"8.21375, 8.26958, 8.30041, 8.36088, 8.41851, 8.54143", \
"10.2431, 10.2899, 10.3494, 10.3887, 10.4693, 10.5329");
}
fall_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.285429, 0.286074, 0.285065, 0.291583, 0.3004, 0.313665", \
"1.4017, 1.41522, 1.42372, 1.40115, 1.39689, 1.38826", \
"3.34843, 3.41211, 3.40883, 3.37479, 3.36753, 3.34926", \
"8.34747, 8.44474, 8.42852, 8.3281, 8.41161, 8.48864", \
"11.0931, 11.1828, 11.178, 11.1581, 11.1007, 11.0894", \
"13.8579, 13.8897, 13.8266, 13.9973, 13.8122, 13.9677");
}
}
timing() {
related_pin : "A";
timing_sense : positive_unate;
cell_rise(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.360088, 0.373499, 0.382333, 0.389541, 0.383276, 0.386331", \
"1.59302, 1.60808, 1.62104, 1.62293, 1.61517, 1.62072", \
"3.7521, 3.76742, 3.78428, 3.77819, 3.77696, 3.77896", \
"9.302, 9.33763, 9.32174, 9.3456, 9.32423, 9.348", \
"12.3862, 12.4331, 12.4342, 12.4439, 12.4325, 12.4316", \
"15.5281, 15.5157, 15.5033, 15.4862, 15.5294, 15.5229");
}
rise_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.475408, 0.474824, 0.472841, 0.476913, 0.475897, 0.483187", \
"2.34292, 2.33919, 2.34099, 2.33757, 2.35077, 2.33646", \
"5.59249, 5.58984, 5.59023, 5.59286, 5.59051, 5.58605", \
"13.9588, 13.9375, 13.9895, 14.0201, 13.9699, 14.0001", \
"18.5883, 18.6417, 18.6239, 18.5914, 18.6735, 18.6144", \
"23.3126, 23.2261, 23.2409, 23.1891, 23.2759, 23.2571");
}
cell_fall(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.284056, 0.317277, 0.345942, 0.407351, 0.439615, 0.516697", \
"1.09778, 1.13522, 1.16664, 1.22008, 1.25116, 1.33297", \
"2.52111, 2.56382, 2.60097, 2.64772, 2.67543, 2.75644", \
"6.17592, 6.25036, 6.3056, 6.30734, 6.33658, 6.41793", \
"8.21296, 8.24248, 8.28778, 8.35655, 8.40036, 8.47934", \
"10.2452, 10.2849, 10.3055, 10.4175, 10.4381, 10.4764");
}
fall_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.285771, 0.287385, 0.287583, 0.288748, 0.298945, 0.302595", \
"1.39146, 1.40264, 1.40928, 1.41817, 1.40437, 1.38229", \
"3.33722, 3.36272, 3.37687, 3.37831, 3.36021, 3.38738", \
"8.32535, 8.35707, 8.41839, 8.38797, 8.48034, 8.43507", \
"11.0246, 11.1477, 11.1446, 11.248, 11.1733, 11.0611", \
"13.8307, 13.9594, 14.1499, 13.9549, 13.8813, 14.0293");
}
}
internal_power() {
related_pin : "B";
rise_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.004777, 0.006277, 0.007815, 0.011808, 0.015012, 0.020476", \
"0.005107, 0.006253, 0.007797, 0.011793, 0.01458, 0.020496", \
"0.005283, 0.006203, 0.007719, 0.011742, 0.014439, 0.020399", \
"0.005808, 0.005977, 0.007446, 0.011519, 0.014142, 0.020177", \
"0.004202, 0.005909, 0.007431, 0.011404, 0.014047, 0.020047", \
"0.005204, 0.005787, 0.007167, 0.011285, 0.013961, 0.019919");
}
fall_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.010466, 0.011533, 0.013942, 0.018433, 0.019973, 0.026375", \
"0.010689, 0.011639, 0.013898, 0.018335, 0.020245, 0.026508", \
"0.009962, 0.01183, 0.014046, 0.018398, 0.020422, 0.026631", \
"0.010141, 0.012087, 0.014404, 0.01875, 0.020779, 0.026952", \
"0.011778, 0.012664, 0.014563, 0.018916, 0.020963, 0.027085", \
"0.012529, 0.012767, 0.014704, 0.019042, 0.021068, 0.027281");
}
}
internal_power() {
related_pin : "C";
rise_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.005237, 0.006918, 0.0096, 0.01449, 0.01835, 0.024456", \
"0.005292, 0.006836, 0.009312, 0.014155, 0.017925, 0.024347", \
"0.005291, 0.006762, 0.009186, 0.014023, 0.017701, 0.024204", \
"0.00526, 0.006502, 0.008933, 0.013788, 0.017406, 0.023947", \
"0.004588, 0.006349, 0.008829, 0.013657, 0.017265, 0.023799", \
"0.004744, 0.006357, 0.008687, 0.01349, 0.017142, 0.023673");
}
fall_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.009718, 0.01124, 0.013768, 0.018113, 0.021352, 0.028409", \
"0.0099, 0.011234, 0.013919, 0.018121, 0.021362, 0.02838", \
"0.009939, 0.011454, 0.014126, 0.018257, 0.02152, 0.028507", \
"0.010384, 0.011837, 0.01449, 0.018607, 0.021808, 0.028809", \
"0.010252, 0.011963, 0.014687, 0.01887, 0.021962, 0.028936", \
"0.011009, 0.012309, 0.014832, 0.018932, 0.022189, 0.029119");
}
}
internal_power() {
related_pin : "A";
rise_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.004117, 0.005191, 0.007024, 0.010048, 0.012987, 0.016914", \
"0.00414, 0.005169, 0.006887, 0.009833, 0.012559, 0.016855", \
"0.00412, 0.005127, 0.006803, 0.009723, 0.012432, 0.016749", \
"0.004106, 0.004956, 0.006542, 0.009499, 0.012179, 0.016543", \
"0.003844, 0.004892, 0.006342, 0.0094, 0.012017, 0.016437", \
"0.003455, 0.004797, 0.006368, 0.009342, 0.011961, 0.016325");
}
fall_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.011134, 0.011937, 0.013802, 0.017418, 0.018324, 0.024831", \
"0.011341, 0.012042, 0.013701, 0.017317, 0.018435, 0.024718", \
"0.011418, 0.012228, 0.013784, 0.017378, 0.018525, 0.024893", \
"0.011775, 0.012589, 0.014086, 0.017664, 0.018724, 0.025109", \
"0.012188, 0.012646, 0.014395, 0.017795, 0.018975, 0.025259", \
"0.012034, 0.012985, 0.01445, 0.017916, 0.019116, 0.025413");
}
}
}
pin(YS) {
direction : output;
capacitance : 0;
rise_capacitance : 0;
fall_capacitance : 0;
max_capacitance : 0.106625;
function : "((A^B)^C)";
timing() {
related_pin : "B";
timing_sense : non_unate;
cell_rise(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.381334, 0.39876, 0.407403, 0.430534, 0.416485, 0.417341", \
"1.62268, 1.63789, 1.65419, 1.67152, 1.64856, 1.645", \
"3.77399, 3.80242, 3.82925, 3.84032, 3.81734, 3.80498", \
"9.34484, 9.3711, 9.37916, 9.36759, 9.41127, 9.40081", \
"12.4221, 12.5105, 12.4557, 12.4453, 12.4633, 12.4362", \
"15.5102, 15.5831, 15.5536, 15.613, 15.5296, 15.5382");
}
rise_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.473065, 0.472024, 0.472597, 0.471167, 0.478548, 0.528011", \
"2.33718, 2.35029, 2.34238, 2.33665, 2.34028, 2.33141", \
"5.60075, 5.62581, 5.6239, 5.59813, 5.60536, 5.59179", \
"13.9795, 14.0107, 14.0135, 13.9739, 13.9711, 14.0559", \
"18.651, 18.6373, 18.6758, 18.7494, 18.6162, 18.6455", \
"23.3996, 23.3872, 23.2699, 23.4583, 23.3699, 23.3361");
}
cell_fall(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.288096, 0.30741, 0.332273, 0.355138, 0.340758, 0.375466", \
"1.10679, 1.12094, 1.14665, 1.16898, 1.15429, 1.19068", \
"2.53455, 2.54865, 2.57361, 2.59511, 2.59076, 2.61122", \
"6.19464, 6.21049, 6.23539, 6.25012, 6.24016, 6.29622", \
"8.23302, 8.2329, 8.28908, 8.34236, 8.26572, 8.29972", \
"10.279, 10.3192, 10.3278, 10.3346, 10.3384, 10.3432");
}
fall_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.284999, 0.283403, 0.282837, 0.300285, 0.332355, 0.33284", \
"1.41829, 1.42139, 1.40742, 1.40835, 1.38997, 1.38424", \
"3.37083, 3.36937, 3.37215, 3.36145, 3.36952, 3.35654", \
"8.36532, 8.37309, 8.44584, 8.43455, 8.3334, 8.37634", \
"11.14, 11.2593, 11.202, 11.2326, 11.3141, 11.2132", \
"13.9323, 13.9393, 14.0142, 13.978, 13.9071, 14.0014");
}
}
timing() {
related_pin : "C";
timing_sense : non_unate;
cell_rise(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.37413, 0.380726, 0.402692, 0.427218, 0.441286, 0.415231", \
"1.61349, 1.62287, 1.64076, 1.65963, 1.67934, 1.64063", \
"3.7788, 3.79562, 3.80794, 3.82041, 3.84401, 3.80821", \
"9.33842, 9.33785, 9.39439, 9.38214, 9.39603, 9.3602", \
"12.434, 12.4004, 12.4442, 12.462, 12.4809, 12.4575", \
"15.5184, 15.6016, 15.5137, 15.5675, 15.6054, 15.6015");
}
rise_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.472235, 0.471993, 0.472685, 0.488804, 0.484271, 0.539886", \
"2.35073, 2.34622, 2.35734, 2.34428, 2.343, 2.33767", \
"5.61524, 5.60641, 5.63722, 5.59302, 5.57904, 5.58503", \
"14.0318, 13.99, 14.0604, 14.0074, 14.006, 13.9963", \
"18.6133, 18.7386, 18.627, 18.7052, 18.6732, 18.621", \
"23.3664, 23.4574, 23.4271, 23.4263, 23.3994, 23.3259");
}
cell_fall(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.282399, 0.303257, 0.323827, 0.336789, 0.391304, 0.397531", \
"1.10026, 1.12267, 1.13882, 1.14941, 1.19779, 1.21403", \
"2.51918, 2.56013, 2.57038, 2.57248, 2.62009, 2.63659", \
"6.17739, 6.2272, 6.22138, 6.23652, 6.28363, 6.29712", \
"8.21469, 8.22735, 8.25758, 8.28867, 8.31982, 8.35497", \
"10.2784, 10.292, 10.2975, 10.3517, 10.3693, 10.3638");
}
fall_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.284031, 0.283968, 0.290436, 0.303468, 0.327066, 0.313143", \
"1.42307, 1.4095, 1.40221, 1.40635, 1.39025, 1.38144", \
"3.38071, 3.3561, 3.34926, 3.39107, 3.34561, 3.36463", \
"8.36841, 8.33981, 8.37615, 8.42287, 8.408, 8.368", \
"11.1616, 11.2218, 11.175, 11.1743, 11.1497, 11.0984", \
"13.8735, 13.9261, 13.9753, 13.9538, 13.8816, 13.869");
}
}
timing() {
related_pin : "A";
timing_sense : non_unate;
cell_rise(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.385605, 0.405084, 0.409449, 0.444676, 0.431638, 0.413444", \
"1.61782, 1.64214, 1.64997, 1.68145, 1.66636, 1.64128", \
"3.78619, 3.81227, 3.81239, 3.84471, 3.8319, 3.81894", \
"9.35412, 9.36034, 9.36522, 9.38633, 9.39893, 9.36561", \
"12.414, 12.4336, 12.4714, 12.4902, 12.5189, 12.461", \
"15.4952, 15.58, 15.5343, 15.5656, 15.5429, 15.5774");
}
rise_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.472698, 0.472388, 0.472883, 0.471667, 0.481513, 0.532801", \
"2.33625, 2.34253, 2.33797, 2.34284, 2.34586, 2.34484", \
"5.63104, 5.59403, 5.59409, 5.5947, 5.59331, 5.59492", \
"13.9538, 13.9752, 14.0038, 14.0403, 14.0956, 13.9513", \
"18.7024, 18.6976, 18.6814, 18.6463, 18.6689, 18.6687", \
"23.351, 23.4634, 23.3689, 23.371, 23.3487, 23.369");
}
cell_fall(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.289139, 0.314256, 0.334229, 0.341575, 0.354207, 0.40447", \
"1.10938, 1.13009, 1.14986, 1.15507, 1.1684, 1.21646", \
"2.53496, 2.55884, 2.57876, 2.58285, 2.59346, 2.63721", \
"6.1942, 6.235, 6.25474, 6.23666, 6.25284, 6.29087", \
"8.22578, 8.23519, 8.25916, 8.28445, 8.31694, 8.34724", \
"10.26, 10.2948, 10.3035, 10.3689, 10.3431, 10.3549");
}
fall_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.284504, 0.283627, 0.281404, 0.297455, 0.296004, 0.328815", \
"1.41972, 1.4075, 1.40246, 1.40361, 1.40165, 1.38865", \
"3.36762, 3.35581, 3.34726, 3.35732, 3.3412, 3.36", \
"8.39608, 8.3257, 8.33567, 8.3835, 8.40734, 8.37963", \
"11.1393, 11.2394, 11.2806, 11.2541, 11.2375, 11.1744", \
"13.9092, 13.9361, 13.9156, 13.9915, 14.0023, 13.9517");
}
}
internal_power() {
related_pin : "B";
rise_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.0065015, 0.007918, 0.0099335, 0.01471, 0.0178335, 0.023812", \
"0.007596, 0.008147, 0.009973, 0.0147635, 0.017757, 0.0237775", \
"0.0072005, 0.00822, 0.0101045, 0.014918, 0.017865, 0.0239195", \
"0.0056125, 0.0081575, 0.0100695, 0.015244, 0.017899, 0.023929", \
"0.0076495, 0.0082865, 0.010097, 0.015396, 0.0178555, 0.023803", \
"0.006994, 0.0084745, 0.010385, 0.015661, 0.017788, 0.0239145");
}
fall_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.0095855, 0.011248, 0.0131255, 0.016888, 0.019639, 0.028354", \
"0.008969, 0.011364, 0.0132345, 0.0167455, 0.0191505, 0.0285225", \
"0.007803, 0.011562, 0.0133295, 0.0168315, 0.019298, 0.0285995", \
"0.0059875, 0.0120085, 0.0133585, 0.0169135, 0.019327, 0.0285525", \
"0.00905, 0.0114255, 0.0132285, 0.0169545, 0.0193945, 0.0285465", \
"0.010032, 0.0113825, 0.012935, 0.0170605, 0.019493, 0.0284395");
}
}
internal_power() {
related_pin : "C";
rise_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.0067305, 0.0082985, 0.011151, 0.0162375, 0.021352, 0.0278615", \
"0.0073185, 0.008276, 0.011247, 0.0161055, 0.0208785, 0.027591", \
"0.0077765, 0.008281, 0.01124, 0.0161825, 0.020338, 0.027558", \
"0.006227, 0.00817, 0.0110555, 0.0163655, 0.020405, 0.0273255", \
"0.0071015, 0.007962, 0.010798, 0.016534, 0.0205595, 0.0272665", \
"0.0060215, 0.008167, 0.0106745, 0.016755, 0.02073, 0.0272915");
}
fall_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.008342, 0.010372, 0.013063, 0.0180445, 0.0231765, 0.030172", \
"0.008193, 0.010484, 0.013153, 0.017767, 0.023034, 0.03047", \
"0.007939, 0.010523, 0.0132545, 0.017852, 0.0229875, 0.030532", \
"0.0077095, 0.0103045, 0.0134425, 0.017902, 0.023116, 0.0307105", \
"0.007919, 0.010398, 0.0135335, 0.0179045, 0.02309, 0.030806", \
"0.0069845, 0.0100925, 0.01364, 0.0179975, 0.023118, 0.0308925");
}
}
internal_power() {
related_pin : "A";
rise_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.006819, 0.0077305, 0.009418, 0.014498, 0.016609, 0.0229455", \
"0.0072, 0.0079275, 0.0097695, 0.014519, 0.0166235, 0.02293", \
"0.0073995, 0.0081605, 0.0100405, 0.014713, 0.0167505, 0.023918", \
"0.0080265, 0.008583, 0.0104685, 0.015214, 0.01712, 0.02426", \
"0.008313, 0.009007, 0.010821, 0.0154235, 0.017506, 0.024557", \
"0.008438, 0.009171, 0.0109155, 0.015667, 0.017714, 0.024763");
}
fall_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.010313, 0.011202, 0.013605, 0.0175445, 0.021879, 0.027407", \
"0.009847, 0.0114155, 0.0135185, 0.017303, 0.0213885, 0.0272165", \
"0.0092175, 0.011577, 0.013536, 0.0173305, 0.021353, 0.027216", \
"0.008429, 0.0117775, 0.013525, 0.017177, 0.0211735, 0.0271145", \
"0.0112735, 0.010893, 0.013381, 0.017094, 0.0210545, 0.0270525", \
"0.006921, 0.011083, 0.013246, 0.0170555, 0.021042, 0.0269695");
}
}
}
}
/* ------------- *
* Design : HAX1 *
* ------------- */
cell (HAX1) {
area : 4.693000;
cell_leakage_power : 47.5649;
pin(A) {
direction : input;
capacitance : 0.00458382;
rise_capacitance : 0.00458382;
fall_capacitance : 0.0039615;
}
pin(B) {
direction : input;
capacitance : 0.00383094;
rise_capacitance : 0.00383094;
fall_capacitance : 0.00337165;
}
pin(YC) {
direction : output;
capacitance : 0;
rise_capacitance : 0;
fall_capacitance : 0;
max_capacitance : 0.222356;
function : "(A B)";
timing() {
related_pin : "B";
timing_sense : positive_unate;
cell_rise(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.345539, 0.350277, 0.328406, 0.333754, 0.315627, 0.305624", \
"1.57864, 1.58418, 1.5621, 1.56789, 1.54801, 1.54003", \
"3.73995, 3.73815, 3.72031, 3.72832, 3.72345, 3.70416", \
"9.31888, 9.29725, 9.29217, 9.27535, 9.25954, 9.29487", \
"12.3909, 12.3598, 12.3924, 12.3547, 12.3373, 12.3398", \
"15.4964, 15.5193, 15.4451, 15.4468, 15.4141, 15.4627");
}
rise_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.474802, 0.473627, 0.482601, 0.476024, 0.480572, 0.491469", \
"2.33986, 2.34295, 2.34046, 2.34387, 2.35622, 2.32965", \
"5.59459, 5.59011, 5.58295, 5.60041, 5.60607, 5.59245", \
"13.9184, 13.9051, 13.9868, 13.9361, 13.9452, 13.9374", \
"18.5942, 18.5665, 18.6306, 18.5851, 18.5779, 18.5411", \
"23.1922, 23.2773, 23.2421, 23.2465, 23.3659, 23.2368");
}
cell_fall(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.256117, 0.301171, 0.340362, 0.414928, 0.45992, 0.552672", \
"1.06862, 1.12166, 1.15314, 1.22893, 1.27259, 1.37256", \
"2.49603, 2.55565, 2.58587, 2.6536, 2.69462, 2.79514", \
"6.15268, 6.24069, 6.24259, 6.31032, 6.39112, 6.49207", \
"8.21438, 8.2373, 8.2659, 8.41213, 8.40946, 8.49138", \
"10.209, 10.2646, 10.4165, 10.4241, 10.4194, 10.5168");
}
fall_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.285302, 0.281794, 0.284156, 0.292376, 0.292967, 0.309728", \
"1.42035, 1.40206, 1.41701, 1.39269, 1.39418, 1.38399", \
"3.39125, 3.36108, 3.36252, 3.40556, 3.35785, 3.34308", \
"8.34941, 8.44041, 8.36839, 8.57137, 8.46304, 8.34263", \
"11.0797, 11.1211, 11.4675, 11.2367, 11.1092, 11.1325", \
"13.8617, 14.1699, 14.0803, 13.853, 14.176, 14.078");
}
}
timing() {
related_pin : "A";
timing_sense : positive_unate;
cell_rise(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.344948, 0.346777, 0.336257, 0.321661, 0.319048, 0.288468", \
"1.57797, 1.58503, 1.57805, 1.55821, 1.54995, 1.51655", \
"3.73882, 3.74733, 3.73114, 3.72575, 3.72948, 3.67786", \
"9.31633, 9.29162, 9.26723, 9.25127, 9.30973, 9.26902", \
"12.3868, 12.3763, 12.42, 12.3758, 12.4012, 12.3205", \
"15.4923, 15.4752, 15.4495, 15.4467, 15.4093, 15.4016");
}
rise_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.475577, 0.474367, 0.477265, 0.477707, 0.481043, 0.489873", \
"2.33945, 2.33197, 2.3417, 2.32707, 2.33387, 2.32287", \
"5.59567, 5.60745, 5.59574, 5.59933, 5.58236, 5.58139", \
"13.9194, 13.9514, 13.9811, 13.9923, 13.9412, 13.9207", \
"18.5912, 18.5847, 18.6305, 18.6311, 18.5796, 18.5897", \
"23.1906, 23.2032, 23.2043, 23.2365, 23.2243, 23.143");
}
cell_fall(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.261591, 0.312276, 0.357074, 0.387839, 0.451183, 0.553175", \
"1.07509, 1.12624, 1.17106, 1.19903, 1.26174, 1.36712", \
"2.5054, 2.55421, 2.59221, 2.62979, 2.68951, 2.80104", \
"6.1683, 6.21248, 6.25364, 6.3009, 6.33466, 6.46726", \
"8.19969, 8.2756, 8.27791, 8.31767, 8.36673, 8.48263", \
"10.2262, 10.2764, 10.3838, 10.3419, 10.5271, 10.5074");
}
fall_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.288154, 0.284476, 0.285239, 0.302192, 0.291954, 0.297603", \
"1.40627, 1.41805, 1.41553, 1.39879, 1.39701, 1.37481", \
"3.33314, 3.40341, 3.39503, 3.35773, 3.36539, 3.35508", \
"8.35163, 8.37256, 8.39906, 8.30547, 8.38505, 8.2686", \
"11.1229, 11.1576, 11.1943, 11.2021, 11.3795, 11.2517", \
"13.8969, 13.8577, 13.879, 14.0731, 13.9768, 14.115");
}
}
internal_power() {
related_pin : "B";
rise_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.004682, 0.006144, 0.008719, 0.012508, 0.015897, 0.020966", \
"0.004615, 0.006144, 0.008362, 0.012338, 0.015448, 0.02077", \
"0.004484, 0.00608, 0.008191, 0.012214, 0.015258, 0.02061", \
"0.004262, 0.005768, 0.007847, 0.011927, 0.01493, 0.020292", \
"0.004754, 0.00547, 0.007694, 0.011695, 0.014715, 0.020133", \
"0.003628, 0.005467, 0.00755, 0.011538, 0.014556, 0.019953");
}
fall_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.006203, 0.007875, 0.009579, 0.013329, 0.016283, 0.022669", \
"0.006527, 0.008033, 0.009741, 0.013457, 0.016345, 0.02276", \
"0.007012, 0.008199, 0.00989, 0.013664, 0.016433, 0.022956", \
"0.006102, 0.008589, 0.010304, 0.013979, 0.016872, 0.023319", \
"0.007485, 0.008857, 0.010499, 0.014163, 0.017048, 0.023462", \
"0.009407, 0.00895, 0.010723, 0.014411, 0.017258, 0.023638");
}
}
internal_power() {
related_pin : "A";
rise_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.004209, 0.005591, 0.006189, 0.009328, 0.012651, 0.018939", \
"0.004155, 0.005539, 0.006159, 0.009344, 0.012503, 0.018216", \
"0.00404, 0.005441, 0.006066, 0.009243, 0.01241, 0.017922", \
"0.003835, 0.005171, 0.005802, 0.009002, 0.01212, 0.017551", \
"0.004216, 0.005068, 0.005717, 0.008854, 0.012023, 0.017396", \
"0.003289, 0.004902, 0.005551, 0.008679, 0.011895, 0.017271");
}
fall_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.006717, 0.008104, 0.00977, 0.011934, 0.016429, 0.02107", \
"0.007267, 0.008218, 0.009864, 0.012005, 0.016048, 0.021348", \
"0.007703, 0.008333, 0.010001, 0.012126, 0.016067, 0.021451", \
"0.011796, 0.008586, 0.010366, 0.012474, 0.016373, 0.021782", \
"0.00561, 0.008756, 0.010436, 0.012754, 0.016534, 0.022061", \
"0.005829, 0.008956, 0.010622, 0.012675, 0.01667, 0.022092");
}
}
}
pin(YS) {
direction : output;
capacitance : 0;
rise_capacitance : 0;
fall_capacitance : 0;
max_capacitance : 0.14661;
function : "(A^B)";
timing() {
related_pin : "B";
timing_sense : non_unate;
cell_rise(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.3572, 0.37782, 0.387085, 0.400728, 0.452873, 0.457164", \
"1.59814, 1.61498, 1.61779, 1.63608, 1.67507, 1.68571", \
"3.75436, 3.7737, 3.77602, 3.80845, 3.85016, 3.84972", \
"9.33653, 9.33184, 9.335, 9.35045, 9.4339, 9.40808", \
"12.4476, 12.4303, 12.5204, 12.4178, 12.4497, 12.5295", \
"15.4766, 15.5757, 15.5196, 15.5936, 15.552, 15.5762");
}
rise_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.472473, 0.470065, 0.471346, 0.482959, 0.479659, 0.508018", \
"2.3443, 2.3437, 2.33804, 2.33707, 2.33438, 2.33675", \
"5.60565, 5.63863, 5.60578, 5.59107, 5.6144, 5.58197", \
"14.0315, 14.0182, 14.1076, 13.983, 13.9569, 14.0194", \
"18.6654, 18.6269, 18.6454, 18.7548, 18.6262, 18.6388", \
"23.3842, 23.3934, 23.3132, 23.4589, 23.3756, 23.3871");
}
cell_fall(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.258583, 0.271786, 0.287018, 0.289097, 0.33492, 0.240161", \
"1.07725, 1.09174, 1.10157, 1.09939, 1.14185, 1.08862", \
"2.50529, 2.51115, 2.53369, 2.54961, 2.57539, 2.5071", \
"6.16458, 6.20332, 6.18517, 6.18557, 6.24181, 6.20076", \
"8.193, 8.19572, 8.24322, 8.27559, 8.2643, 8.22462", \
"10.2258, 10.2798, 10.246, 10.2795, 10.3186, 10.2514");
}
fall_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.287335, 0.282561, 0.282662, 0.315208, 0.327363, 0.428092", \
"1.41431, 1.42359, 1.41657, 1.4087, 1.39209, 1.3963", \
"3.37376, 3.40701, 3.38407, 3.43229, 3.39407, 3.35023", \
"8.35112, 8.40562, 8.39772, 8.50796, 8.37216, 8.49052", \
"11.1527, 11.1643, 11.1996, 11.1716, 11.1348, 11.1383", \
"13.9832, 13.9093, 14.0346, 14.1218, 13.9322, 14.0978");
}
}
timing() {
related_pin : "A";
timing_sense : non_unate;
cell_rise(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.362799, 0.388095, 0.40762, 0.4024, 0.42585, 0.435242", \
"1.59941, 1.62385, 1.64856, 1.63764, 1.65793, 1.65614", \
"3.7721, 3.78801, 3.80934, 3.80122, 3.81622, 3.83521", \
"9.3032, 9.32661, 9.40596, 9.36797, 9.41635, 9.39223", \
"12.4074, 12.4734, 12.4342, 12.4349, 12.489, 12.4917", \
"15.5101, 15.4983, 15.5309, 15.5653, 15.5364, 15.5952");
}
rise_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.47218, 0.470593, 0.471274, 0.470606, 0.477071, 0.510976", \
"2.3421, 2.33901, 2.34123, 2.33062, 2.33108, 2.33292", \
"5.58461, 5.60026, 5.61078, 5.60606, 5.5886, 5.57963", \
"13.9942, 14.0589, 14.0217, 13.9663, 13.9863, 13.945", \
"18.6613, 18.5701, 18.6244, 18.7386, 18.631, 18.6005", \
"23.4169, 23.3165, 23.4326, 23.3762, 23.3668, 23.4107");
}
cell_fall(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.264331, 0.282802, 0.267157, 0.279456, 0.274433, 0.326604", \
"1.08312, 1.10694, 1.07909, 1.09135, 1.08992, 1.13974", \
"2.50918, 2.54139, 2.52811, 2.53886, 2.53523, 2.56235", \
"6.17768, 6.19911, 6.15185, 6.17266, 6.17197, 6.25489", \
"8.19758, 8.21106, 8.20851, 8.22241, 8.23266, 8.25836", \
"10.2226, 10.2612, 10.2469, 10.2507, 10.2308, 10.2938");
}
fall_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.286632, 0.282073, 0.284096, 0.291958, 0.325975, 0.344392", \
"1.41591, 1.43646, 1.45438, 1.39348, 1.3905, 1.3772", \
"3.36864, 3.38853, 3.4043, 3.41188, 3.40736, 3.36446", \
"8.3528, 8.39831, 8.3854, 8.39212, 8.36722, 8.38522", \
"11.1759, 11.1422, 11.1069, 11.0971, 11.1196, 11.1633", \
"13.9552, 14.0054, 13.9375, 13.9834, 13.8913, 13.8764");
}
}
internal_power() {
related_pin : "B";
rise_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.004413, 0.0068535, 0.0100575, 0.0151995, 0.0220105, 0.030312", \
"0.004576, 0.006877, 0.0097595, 0.015234, 0.020747, 0.029978", \
"0.0047715, 0.0068185, 0.009678, 0.0152395, 0.020337, 0.0299575", \
"0.0040425, 0.006626, 0.009605, 0.015157, 0.020059, 0.0298875", \
"0.004535, 0.006567, 0.009469, 0.015032, 0.0198725, 0.02971", \
"0.005255, 0.0066705, 0.0093395, 0.0149735, 0.01991, 0.029709");
}
fall_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.005675, 0.0080135, 0.0118135, 0.0164285, 0.0227755, 0.02697", \
"0.00541, 0.007904, 0.011488, 0.016416, 0.0226675, 0.027236", \
"0.0053085, 0.0080945, 0.0115335, 0.016442, 0.0222065, 0.0272515", \
"0.00531, 0.0082055, 0.01147, 0.0163105, 0.022169, 0.026886", \
"0.006458, 0.0079215, 0.0115015, 0.016324, 0.022034, 0.026779", \
"0.0057255, 0.007952, 0.0114505, 0.0163585, 0.0220345, 0.0266845");
}
}
internal_power() {
related_pin : "A";
rise_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.0052675, 0.007397, 0.0099205, 0.0155425, 0.019159, 0.026904", \
"0.005571, 0.007483, 0.0099855, 0.0149315, 0.0186385, 0.0265015", \
"0.005738, 0.0074925, 0.0100115, 0.014813, 0.018614, 0.026513", \
"0.0077985, 0.0073925, 0.0099555, 0.0147955, 0.0185695, 0.0263855", \
"0.0043845, 0.007299, 0.009926, 0.0147905, 0.0184325, 0.026428", \
"0.004287, 0.0072745, 0.0098235, 0.0145215, 0.018435, 0.0263615");
}
fall_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.0057765, 0.0077125, 0.0088795, 0.014647, 0.0179295, 0.0276015", \
"0.007777, 0.0076565, 0.0089295, 0.014551, 0.0177695, 0.026883", \
"0.0065515, 0.007646, 0.0089905, 0.014552, 0.018135, 0.026756", \
"0.009564, 0.007619, 0.0089795, 0.014531, 0.0181265, 0.0266885", \
"0.008848, 0.007805, 0.0089615, 0.0145685, 0.0180425, 0.0268725", \
"0.0045735, 0.0077955, 0.008994, 0.0146005, 0.018089, 0.0266605");
}
}
}
}
/* -------------- *
* Design : INVX1 *
* -------------- */
cell (INVX1) {
cell_footprint : inv;
area : 1.407900;
cell_leakage_power : 1.74163;
pin(A) {
direction : input;
capacitance : 0.00155103;
rise_capacitance : 0.00155103;
fall_capacitance : 0.00147616;
}
pin(Y) {
direction : output;
capacitance : 0;
rise_capacitance : 0;
fall_capacitance : 0;
max_capacitance : 0.238796;
function : "(!A)";
timing() {
related_pin : "A";
timing_sense : negative_unate;
cell_rise(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.334383, 0.393448, 0.45418, 0.604365, 0.638118, 0.748958", \
"1.62606, 1.6654, 1.71243, 1.81437, 1.89783, 2.13072", \
"3.73565, 3.91559, 3.97082, 3.98366, 4.05198, 4.32785", \
"9.40932, 9.35947, 9.46643, 9.62729, 9.6605, 9.91743", \
"12.3915, 12.4928, 12.7275, 12.5854, 12.7546, 13.0727", \
"15.6344, 15.6332, 15.606, 15.8558, 15.9272, 15.9997");
}
rise_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.477629, 0.479545, 0.539727, 0.682033, 0.834183, 1.10616", \
"2.49702, 2.38841, 2.39208, 2.39745, 2.40852, 2.42038", \
"5.79428, 5.97913, 5.94216, 5.69444, 5.72805, 5.70293", \
"14.1067, 14.0169, 14.2468, 14.105, 13.9925, 14.3495", \
"18.6078, 18.701, 18.6639, 18.6772, 18.7093, 18.7033", \
"23.3869, 23.6298, 23.6304, 23.3037, 23.5863, 23.5191");
}
cell_fall(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.22935, 0.275929, 0.334965, 0.421486, 0.410956, 0.39748", \
"1.04769, 1.08554, 1.14096, 1.26429, 1.32763, 1.50442", \
"2.49802, 2.5366, 2.57668, 2.73311, 2.76487, 2.93339", \
"6.35254, 6.2449, 6.26764, 6.55435, 6.53614, 6.58844", \
"8.23454, 8.2732, 8.25565, 8.4519, 8.55787, 8.71878", \
"10.2711, 10.2719, 10.3748, 10.5095, 10.4723, 10.829");
}
fall_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.301773, 0.293864, 0.373412, 0.516827, 0.669943, 0.886485", \
"1.50247, 1.51392, 1.49196, 1.4841, 1.46207, 1.57439", \
"3.46148, 3.50915, 3.52562, 3.44279, 3.41583, 3.41243", \
"8.93684, 8.55077, 8.50691, 9.03313, 8.65716, 8.82825", \
"11.3237, 11.6386, 11.6485, 11.3368, 11.3915, 11.4525", \
"14.274, 14.086, 14.0778, 14.2728, 14.1447, 14.0224");
}
}
internal_power() {
related_pin : "A";
rise_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.001568, 0.002537, 0.002031, 0.003842, 0.002894, 0.009094", \
"0.001614, 0.001839, 0.001742, 0.002593, 0.002075, 0.007249", \
"0.001595, 0.001766, 0.001682, 0.002068, 0.001872, 0.006415", \
"0.001602, 0.00175, 0.001672, 0.001743, 0.001762, 0.003708", \
"0.001621, 0.001754, 0.001673, 0.001719, 0.001752, 0.003256", \
"0.001641, 0.001759, 0.001674, 0.001728, 0.001743, 0.002969");
}
fall_power(energy_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.000109, 0.000337, 0.000127, 0.001499, 0.001163, 0.004601", \
"0.000076, 0.000042, 0.000037, 0.000396, 0.000144, 0.002474", \
"0.00007, 0.000042, 0.00006, 0.000155, 0.000015, 0.001796", \
"0.000029, 0.000053, 0.000059, -0.000002, 0.000031, 0.000947", \
"0.000025, 0.000049, 0.000046, -0.000002, 0.000023, 0.000723", \
"0.00002, 0.00005, 0.000037, -0.000004, 0.00002, 0.000594");
}
}
}
}
/* -------------- *
* Design : INVX2 *
* -------------- */
cell (INVX2) {
cell_footprint : inv;
area : 1.877200;
cell_leakage_power : 6.14796;
pin(A) {
direction : input;
capacitance : 0.00267266;
rise_capacitance : 0.00265521;
fall_capacitance : 0.00267266;
}
pin(Y) {
direction : output;
capacitance : 0;
rise_capacitance : 0;
fall_capacitance : 0;
max_capacitance : 0.518681;
function : "(!A)";
timing() {
related_pin : "A";
timing_sense : negative_unate;
cell_rise(delay_template_4x5) {
index_1 ("0.02, 0.04, 0.08, 0.2");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.053592, 0.091129, 0.194625, 0.118646, 0.206099", \
"0.083761, 0.129429, 0.177367, 0.152573, 0.233269", \
"0.146508, 0.187966, 0.25134, 0.259675, 0.30513", \
"0.331273, 0.370842, 0.436091, 0.488308, 0.633571");
}
rise_transition(delay_template_4x5) {
index_1 ("0.02, 0.04, 0.08, 0.2");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.0566, 0.10233, 0.268733, 0.299994, 0.555541", \
"0.099101, 0.12752, 0.255322, 0.337965, 0.57492", \
"0.190655, 0.20113, 0.296651, 0.407064, 0.646072", \
"0.473404, 0.484378, 0.508805, 0.564418, 0.831712");
}
cell_fall(delay_template_4x5) {
index_1 ("0.02, 0.04, 0.08, 0.2");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.039077, 0.049463, 0.038054, 0.100529, -0.002795", \
"0.060175, 0.08763, 0.091632, 0.111507, 0.027063", \
"0.100695, 0.134665, 0.174554, 0.139697, 0.123731", \
"0.226426, 0.253917, 0.320034, 0.345391, 0.405802");
}
fall_transition(delay_template_4x5) {
index_1 ("0.02, 0.04, 0.08, 0.2");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.039981, 0.086916, 0.153701, 0.289762, 0.40326", \
"0.060942, 0.109712, 0.198583, 0.296636, 0.425919", \
"0.117008, 0.135465, 0.238807, 0.330316, 0.52219", \
"0.299121, 0.294639, 0.337208, 0.442422, 0.666617");
}
}
internal_power() {
related_pin : "A";
rise_power(energy_template_4x5) {
index_1 ("0.02, 0.04, 0.08, 0.2");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.002882, 0.006183, 0.007363, 0.004604, 0.008045", \
"0.002909, 0.00566, 0.005892, 0.00432, 0.007585", \
"0.002985, 0.005348, 0.005135, 0.003991, 0.006918", \
"0.003009, 0.004632, 0.004368, 0.003553, 0.005729");
}
fall_power(energy_template_4x5) {
index_1 ("0.02, 0.04, 0.08, 0.2");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.00034, 0.001183, 0.003501, 0.001409, 0.013512", \
"0.000274, 0.000911, 0.002144, 0.000981, 0.011191", \
"0.000262, 0.000649, 0.001099, 0.000538, 0.006844", \
"0.000224, 0.000401, 0.000384, 0.000005, 0.002421");
}
}
}
}
/* -------------- *
* Design : INVX4 *
* -------------- */
cell (INVX4) {
cell_footprint : inv;
area : 3.285100;
cell_leakage_power : 12.3002;
pin(A) {
direction : input;
capacitance : 0.0050916;
rise_capacitance : 0.00508038;
fall_capacitance : 0.0050916;
}
pin(Y) {
direction : output;
capacitance : 0;
rise_capacitance : 0;
fall_capacitance : 0;
max_capacitance : 1.04105;
function : "(!A)";
timing() {
related_pin : "A";
timing_sense : negative_unate;
cell_rise(delay_template_4x5) {
index_1 ("0.04, 0.08, 0.16, 0.4");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.054247, 0.09234, 0.164836, 0.11906, 0.206465", \
"0.084945, 0.130288, 0.174921, 0.153151, 0.2337", \
"0.147173, 0.188912, 0.252393, 0.260541, 0.305756", \
"0.333204, 0.372692, 0.436987, 0.488998, 0.634336");
}
rise_transition(delay_template_4x5) {
index_1 ("0.04, 0.08, 0.16, 0.4");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.059124, 0.103374, 0.246026, 0.300301, 0.555812", \
"0.102034, 0.129048, 0.254147, 0.339064, 0.57524", \
"0.19637, 0.205593, 0.297885, 0.40803, 0.647007", \
"0.476786, 0.489528, 0.513996, 0.566254, 0.832908");
}
cell_fall(delay_template_4x5) {
index_1 ("0.04, 0.08, 0.16, 0.4");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.039968, 0.050521, 0.03876, 0.100678, -0.005901", \
"0.060728, 0.088489, 0.092573, 0.11168, 0.02653", \
"0.101204, 0.135357, 0.175173, 0.140192, 0.124721", \
"0.227656, 0.254788, 0.320556, 0.34584, 0.406339");
}
fall_transition(delay_template_4x5) {
index_1 ("0.04, 0.08, 0.16, 0.4");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.041822, 0.088714, 0.155817, 0.289869, 0.400821", \
"0.062635, 0.110323, 0.199113, 0.296787, 0.425541", \
"0.116376, 0.136381, 0.239517, 0.33106, 0.523113", \
"0.300797, 0.296043, 0.338096, 0.443226, 0.66732");
}
}
internal_power() {
related_pin : "A";
rise_power(energy_template_4x5) {
index_1 ("0.04, 0.08, 0.16, 0.4");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.00663, 0.012941, 0.013276, 0.009525, 0.0164", \
"0.006901, 0.011983, 0.011949, 0.008948, 0.015524", \
"0.007273, 0.011582, 0.010726, 0.00837, 0.014162", \
"0.007406, 0.010505, 0.009695, 0.007818, 0.01192");
}
fall_power(energy_template_4x5) {
index_1 ("0.04, 0.08, 0.16, 0.4");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.000931, 0.004191, 0.008601, 0.003967, 0.02873", \
"0.001791, 0.003563, 0.006019, 0.003115, 0.023939", \
"0.002187, 0.003372, 0.003661, 0.002242, 0.015392", \
"0.00271, 0.003565, 0.002616, 0.001414, 0.006242");
}
}
}
}
/* -------------- *
* Design : INVX8 *
* -------------- */
cell (INVX8) {
cell_footprint : inv;
area : 3.285100;
cell_leakage_power : 24.6582;
pin(A) {
direction : input;
capacitance : 0.0101035;
rise_capacitance : 0.0100827;
fall_capacitance : 0.0101035;
}
pin(Y) {
direction : output;
capacitance : 0;
rise_capacitance : 0;
fall_capacitance : 0;
max_capacitance : 2.08199;
function : "(!A)";
timing() {
related_pin : "A";
timing_sense : negative_unate;
cell_rise(delay_template_4x5) {
index_1 ("0.08, 0.16, 0.32, 0.8");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.054293, 0.092422, 0.166128, 0.119106, 0.206511", \
"0.084993, 0.130362, 0.175522, 0.153216, 0.233755", \
"0.147222, 0.188973, 0.25233, 0.260642, 0.305834", \
"0.333256, 0.372761, 0.437054, 0.489047, 0.634418");
}
rise_transition(delay_template_4x5) {
index_1 ("0.08, 0.16, 0.32, 0.8");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.059167, 0.103336, 0.246997, 0.300329, 0.555834", \
"0.102092, 0.129061, 0.25447, 0.339147, 0.575268", \
"0.196438, 0.205669, 0.297817, 0.408067, 0.647068", \
"0.476846, 0.489594, 0.514029, 0.566283, 0.832942");
}
cell_fall(delay_template_4x5) {
index_1 ("0.08, 0.16, 0.32, 0.8");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.039924, 0.050389, 0.03858, 0.100659, -0.00665", \
"0.060643, 0.088291, 0.092329, 0.111625, 0.02583", \
"0.100967, 0.135096, 0.174749, 0.139662, 0.12413", \
"0.227004, 0.254157, 0.319878, 0.345013, 0.405203");
}
fall_transition(delay_template_4x5) {
index_1 ("0.08, 0.16, 0.32, 0.8");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.041799, 0.088625, 0.155861, 0.289876, 0.400273", \
"0.062636, 0.110328, 0.198906, 0.296764, 0.425043", \
"0.116141, 0.136218, 0.239229, 0.330781, 0.522692", \
"0.300195, 0.295303, 0.337642, 0.442946, 0.666506");
}
}
internal_power() {
related_pin : "A";
rise_power(energy_template_4x5) {
index_1 ("0.08, 0.16, 0.32, 0.8");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.013256, 0.025954, 0.02661, 0.019051, 0.032815", \
"0.013797, 0.024019, 0.023933, 0.017894, 0.031063", \
"0.014545, 0.023194, 0.021463, 0.016738, 0.028337", \
"0.014814, 0.021031, 0.019394, 0.015634, 0.023849");
}
fall_power(energy_template_4x5) {
index_1 ("0.08, 0.16, 0.32, 0.8");
index_2 ("0.06, 0.18, 0.42, 0.6, 1.2");
values ( \
"0.002006, 0.008542, 0.017412, 0.0081, 0.057927", \
"0.003737, 0.007288, 0.012242, 0.006392, 0.048294", \
"0.004523, 0.006883, 0.007503, 0.004656, 0.03111", \
"0.005569, 0.007279, 0.005397, 0.00298, 0.012719");
}
}
}
}
/* -------------- *
* Design : LATCH *
* -------------- */
cell (LATCH) {
area : 5.162300;
cell_leakage_power : 24.5033;
latch (DS0000,P0000) {
data_in : "D";
enable : "CLK";
}
pin(CLK) {
direction : input;
capacitance : 0.00391661;
rise_capacitance : 0.00391661;
fall_capacitance : 0.00385631;
clock : true;
internal_power() {
rise_power(passive_energy_template_6x1) {
index_1 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ("0.002185, 0.00694, 0.012932, 0.023936, 0.032089, 0.049439");
}
fall_power(passive_energy_template_6x1) {
index_1 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ("0.005661, 0.01102, 0.017247, 0.027275, 0.035754, 0.055656");
}
}
min_pulse_width_high : 0.110989;
}
pin(D) {
direction : input;
capacitance : 0.00143159;
rise_capacitance : 0.00143159;
fall_capacitance : 0.0013384;
timing() {
related_pin : "CLK";
timing_type : hold_falling;
rise_constraint(hold_template_3x6) {
index_1 ("0.06, 0.3, 0.6");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0, -0.0375, -0.025, -0.05, 0.0125, -0.05", \
"-0.0125, -0.05, -0.0375, -0.0625, -0.09375, -0.0625", \
"-0.075, -0.01875, -0.00625, -0.03125, -0.0625, -0.125");
}
fall_constraint(hold_template_3x6) {
index_1 ("0.06, 0.3, 0.6");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0, -0.0375, -0.025, -0.14375, -0.175, -0.2375", \
"-0.0125, -0.05, -0.0375, -0.15625, -0.09375, -0.15625", \
"0.01875, -0.01875, -0.00625, -0.125, -0.15625, -0.125");
}
}
timing() {
related_pin : "CLK";
timing_type : setup_falling;
rise_constraint(setup_template_3x6) {
index_1 ("0.06, 0.3, 0.6");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.1875, 0.225, 5.65, 0.14375, 0.175, 4.55", \
"0.2, 0.2375, 5.85, 0.25, 0.28125, 4.75", \
"0.35625, 0.3, 6.1, 0.5, 0.4375, 5");
}
fall_constraint(setup_template_3x6) {
index_1 ("0.06, 0.3, 0.6");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.1875, 3.225, 0.2125, 3.425, 0.3625, 4.45625", \
"0.2, 3.425, 0.225, 3.625, 0.375, 4.65625", \
"0.16875, 3.675, 0.19375, 3.875, 0.34375, 4.90625");
}
}
}
pin(Q) {
direction : output;
capacitance : 0;
rise_capacitance : 0;
fall_capacitance : 0;
max_capacitance : 0.485757;
function : "DS0000";
timing() {
related_pin : "D";
timing_sense : positive_unate;
cell_rise(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.204494, 0.21803, 0.222118, 0.233724, 0.245743, 0.223401", \
"0.820683, 0.830236, 0.829661, 0.840143, 0.846281, 0.836971", \
"1.88751, 1.90291, 1.89963, 1.90689, 1.90731, 1.90509", \
"4.62518, 4.63985, 4.64398, 4.65353, 4.65318, 4.65532", \
"6.20999, 6.16888, 6.17421, 6.17882, 6.18183, 6.18392", \
"7.6868, 7.70367, 7.69982, 7.70076, 7.703, 7.72637");
}
rise_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.240521, 0.237276, 0.241358, 0.243332, 0.262043, 0.260652", \
"1.15994, 1.1649, 1.15973, 1.15935, 1.17719, 1.16236", \
"2.78423, 2.78973, 2.78083, 2.78372, 2.79721, 2.77761", \
"6.90334, 6.91262, 6.94676, 6.99217, 6.93886, 6.99981", \
"9.26085, 9.21583, 9.22932, 9.22767, 9.36201, 9.32696", \
"11.6384, 11.6414, 11.6685, 11.611, 11.5515, 11.5991");
}
cell_fall(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.178792, 0.21596, 0.225138, 0.315974, 0.300309, 0.365912", \
"0.57991, 0.615588, 0.623732, 0.712121, 0.705561, 0.791803", \
"1.28402, 1.31973, 1.32668, 1.41201, 1.40532, 1.49065", \
"3.09103, 3.12526, 3.12748, 3.21463, 3.2057, 3.29365", \
"4.08691, 4.1219, 4.12827, 4.21437, 4.20889, 4.29238", \
"5.08871, 5.12769, 5.13921, 5.21551, 5.21792, 5.29495");
}
fall_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.145236, 0.148106, 0.197462, 0.179665, 0.235701, 0.325312", \
"0.69326, 0.689906, 0.690913, 0.69337, 0.690736, 0.694847", \
"1.65869, 1.66171, 1.64041, 1.64659, 1.64243, 1.64233", \
"4.06345, 4.06479, 4.08968, 4.13121, 4.09966, 4.09483", \
"5.45403, 5.50981, 5.44675, 5.45191, 5.47615, 5.45834", \
"6.80272, 6.81937, 6.80368, 6.81137, 6.81921, 6.85187");
}
}
timing() {
related_pin : "CLK";
timing_sense : non_unate;
timing_type : rising_edge;
cell_rise(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");
values ( \
"0.197405, 0.205412, 0.206607, 0.182572, 0.167171, 0.123202", \
"0.808051, 0.814348, 0.746471, 0.779131, 0.708582, 0.719232", \
"1.8761, 1.89005, 1.81238, 1.84404, 1.77795, 1.51138", \
"4.62657, 4.62738, 4.55716, 4.59433, 4.52212, 4.25306", \
"6.14301, 6.16817, 6.0895, 6.13238, 6.04791, 5.7844", \
"7.68448, 7.6764, 7.60796, 7.63648, 7.56864, 7.30173");
}
rise_transition(delay_template_6x6) {
index_1 ("0.1, 0.5, 1.2, 3, 4, 5");
index_2 ("0.06, 0.24, 0.48, 0.9, 1.2, 1.8");