blob: bef30a785af15d97d7167b1aa3f535b7274e931b [file] [log] [blame]
library (ls05_stdcells) {
capacitive_load_unit (1.0, pf);
current_unit: "1uA";
default_operating_conditions: typical;
delay_model: table_lookup;
in_place_swap_mode: match_footprint;
input_threshold_pct_fall: 50.0;
input_threshold_pct_rise: 50.0;
leakage_power_unit: "1nW";
nom_process: 1.0;
nom_temperature: 25.0;
nom_voltage: 5.0;
output_threshold_pct_fall: 50.0;
output_threshold_pct_rise: 50.0;
pulling_resistance_unit: "1kohm";
slew_lower_threshold_pct_fall: 20.0;
slew_lower_threshold_pct_rise: 20.0;
slew_upper_threshold_pct_fall: 80.0;
slew_upper_threshold_pct_rise: 80.0;
time_unit: "1ns";
voltage_unit: "1V";
operating_conditions (typical) {
process: 1.0;
temperature: 25.0;
voltage: 5.0;
}
lu_table_template (delay_template_5x1) {
index_1 (
"1000.0, 1001.0, 1002.0, 1003.0, 1004.0"
);
variable_1: input_net_transition;
}
lu_table_template (delay_template_5x5) {
index_1 (
"1000.0, 1001.0, 1002.0, 1003.0, 1004.0"
);
index_2 (
"1000.0, 1001.0, 1002.0, 1003.0, 1004.0"
);
variable_1: total_output_net_capacitance;
variable_2: input_net_transition;
}
lu_table_template (delay_template_5x6) {
index_1 (
"1000.0, 1001.0, 1002.0, 1003.0, 1004.0"
);
index_2 (
"1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0"
);
variable_1: total_output_net_capacitance;
variable_2: input_net_transition;
}
lu_table_template (delay_template_6x1) {
index_1 (
"1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0"
);
variable_1: input_net_transition;
}
lu_table_template (delay_template_6x6) {
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"
);
variable_1: total_output_net_capacitance;
variable_2: input_net_transition;
}
power_lut_template (energy_template_5x5) {
index_1 (
"1000.0, 1001.0, 1002.0, 1003.0, 1004.0"
);
index_2 (
"1000.0, 1001.0, 1002.0, 1003.0, 1004.0"
);
variable_1: total_output_net_capacitance;
variable_2: input_transition_time;
}
power_lut_template (energy_template_5x6) {
index_1 (
"1000.0, 1001.0, 1002.0, 1003.0, 1004.0"
);
index_2 (
"1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0"
);
variable_1: total_output_net_capacitance;
variable_2: input_transition_time;
}
power_lut_template (energy_template_6x6) {
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"
);
variable_1: total_output_net_capacitance;
variable_2: input_transition_time;
}
lu_table_template (hold_template_3x5) {
index_1 (
"1000.0, 1001.0, 1002.0"
);
index_2 (
"1000.0, 1001.0, 1002.0, 1003.0, 1004.0"
);
variable_1: related_pin_transition;
variable_2: constrained_pin_transition;
}
lu_table_template (hold_template_3x6) {
index_1 (
"1000.0, 1001.0, 1002.0"
);
index_2 (
"1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0"
);
variable_1: related_pin_transition;
variable_2: constrained_pin_transition;
}
power_lut_template (passive_energy_template_5x1) {
index_1 (
"1000.0, 1001.0, 1002.0, 1003.0, 1004.0"
);
variable_1: input_transition_time;
}
power_lut_template (passive_energy_template_6x1) {
index_1 (
"1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0"
);
variable_1: input_transition_time;
}
lu_table_template (recovery_template_3x6) {
index_1 (
"1000.0, 1001.0, 1002.0"
);
index_2 (
"1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0"
);
variable_1: related_pin_transition;
variable_2: constrained_pin_transition;
}
lu_table_template (recovery_template_6x6) {
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"
);
variable_1: related_pin_transition;
variable_2: constrained_pin_transition;
}
lu_table_template (removal_template_3x6) {
index_1 (
"1000.0, 1001.0, 1002.0"
);
index_2 (
"1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0"
);
variable_1: related_pin_transition;
variable_2: constrained_pin_transition;
}
lu_table_template (setup_template_3x5) {
index_1 (
"1000.0, 1001.0, 1002.0"
);
index_2 (
"1000.0, 1001.0, 1002.0, 1003.0, 1004.0"
);
variable_1: related_pin_transition;
variable_2: constrained_pin_transition;
}
lu_table_template (setup_template_3x6) {
index_1 (
"1000.0, 1001.0, 1002.0"
);
index_2 (
"1000.0, 1001.0, 1002.0, 1003.0, 1004.0, 1005.0"
);
variable_1: related_pin_transition;
variable_2: constrained_pin_transition;
}
cell (AOI21X1) {
area: 219456.0;
cell_leakage_power: 0.1173;
pin (C) {
capacitance: 0.006189667947317773;
direction: input;
fall_capacitance: 0.00608282711442158;
rise_capacitance: 0.006296508780213967;
}
pin (B) {
capacitance: 0.004946001600705809;
direction: input;
fall_capacitance: 0.005741143923488236;
rise_capacitance: 0.004150859277923382;
}
pin (A) {
capacitance: 0.0063768651510662175;
direction: input;
fall_capacitance: 0.007818310946312182;
rise_capacitance: 0.0049354193558202525;
}
pin (Y) {
direction: output;
function: "((A & !B & !C + B & !A & !C + !A & !B & !C))";
timing () {
related_pin: "C";
timing_sense: negative_unate;
cell_rise (delay_template_5x5) {
index_1 (
"0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
);
index_2 (
"0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
);
values (
"0.012884, 0.013814, 0.016718, 0.021870, 0.028833", \
"0.086107, 0.080864, 0.082497, 0.093433, 0.172718", \
"0.157907, 0.150075, 0.149039, 0.154342, 0.270928", \
"0.301166, 0.291665, 0.287163, 0.285601, 0.427419", \
"1.448480, 1.437527, 1.428051, 1.413899, 1.417674"
);
}
cell_fall (delay_template_5x5) {
index_1 (
"0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
);
index_2 (
"0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
);
values (
"0.005708, 0.008603, 0.010605, 0.008342, 0.014912", \
"0.046767, 0.047758, 0.052811, 0.059897, 0.111616", \
"0.091313, 0.089826, 0.091015, 0.099539, 0.178409", \
"0.180111, 0.176982, 0.175277, 0.175888, 0.287227", \
"0.895506, 0.891449, 0.886851, 0.878783, 0.902515"
);
}
rise_transition (delay_template_5x5) {
index_1 (
"0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
);
index_2 (
"0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
);
values (
"0.012972, 0.024876, 0.045576, 0.092382, 0.730301", \
"0.117670, 0.118582, 0.124112, 0.144342, 0.702744", \
"0.221586, 0.221908, 0.222072, 0.232193, 0.694310", \
"0.430244, 0.430091, 0.430239, 0.430802, 0.761045", \
"2.104719, 2.104806, 2.104636, 2.104737, 2.138480"
);
}
fall_transition (delay_template_5x5) {
index_1 (
"0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
);
index_2 (
"0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
);
values (
"0.013144, 0.040328, 0.065020, 0.111186, 0.739334", \
"0.095171, 0.101388, 0.116357, 0.159575, 0.811404", \
"0.180158, 0.181007, 0.191810, 0.223783, 0.880144", \
"0.350588, 0.350580, 0.354001, 0.371311, 0.983014", \
"1.727889, 1.727581, 1.728170, 1.727705, 1.982896"
);
}
}
timing () {
related_pin: "B";
timing_sense: negative_unate;
cell_rise (delay_template_5x5) {
index_1 (
"0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
);
index_2 (
"0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
);
values (
"0.015335, 0.016982, 0.017673, 0.018219, -0.069608", \
"0.094019, 0.093932, 0.095770, 0.102779, 0.105301", \
"0.171502, 0.171151, 0.171863, 0.175258, 0.222703", \
"0.326268, 0.325524, 0.325280, 0.326346, 0.409421", \
"1.565887, 1.565044, 1.563580, 1.561246, 1.585994"
);
}
cell_fall (delay_template_5x5) {
index_1 (
"0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
);
index_2 (
"0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
);
values (
"0.013287, 0.024880, 0.031685, 0.037498, 0.167659", \
"0.107124, 0.105845, 0.107193, 0.117896, 0.299712", \
"0.201357, 0.197038, 0.194436, 0.196480, 0.391707", \
"0.390085, 0.383995, 0.377751, 0.370715, 0.543155", \
"1.901754, 1.893671, 1.883505, 1.864991, 1.785557"
);
}
rise_transition (delay_template_5x5) {
index_1 (
"0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
);
index_2 (
"0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
);
values (
"0.013701, 0.021239, 0.037128, 0.074532, 0.517052", \
"0.124145, 0.126554, 0.127481, 0.138597, 0.502699", \
"0.236289, 0.237521, 0.237587, 0.239899, 0.557716", \
"0.461681, 0.461011, 0.461333, 0.461741, 0.666948", \
"2.263739, 2.263875, 2.263871, 2.263837, 2.266936"
);
}
fall_transition (delay_template_5x5) {
index_1 (
"0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
);
index_2 (
"0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
);
values (
"0.030160, 0.038814, 0.058225, 0.102917, 0.553894", \
"0.158458, 0.157631, 0.161617, 0.182586, 0.706485", \
"0.287898, 0.286716, 0.287445, 0.295747, 0.780606", \
"0.548485, 0.548526, 0.548522, 0.548250, 0.902420", \
"2.640741, 2.640742, 2.640727, 2.640745, 2.647561"
);
}
}
timing () {
related_pin: "A";
timing_sense: negative_unate;
cell_rise (delay_template_5x5) {
index_1 (
"0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
);
index_2 (
"0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
);
values (
"0.018081, 0.020472, 0.022446, 0.023825, -0.023691", \
"0.096239, 0.096537, 0.098721, 0.106326, 0.139254", \
"0.173813, 0.173358, 0.174228, 0.178403, 0.251687", \
"0.328514, 0.327676, 0.327494, 0.329061, 0.431351", \
"1.568114, 1.567133, 1.565660, 1.563413, 1.593357"
);
}
cell_fall (delay_template_5x5) {
index_1 (
"0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
);
index_2 (
"0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
);
values (
"0.011083, 0.026784, 0.035062, 0.040835, 0.137110", \
"0.106329, 0.111405, 0.118093, 0.132531, 0.298206", \
"0.200961, 0.203504, 0.207727, 0.219147, 0.408186", \
"0.389721, 0.390740, 0.393162, 0.400718, 0.586451", \
"1.901421, 1.900917, 1.900632, 1.901495, 1.980436"
);
}
rise_transition (delay_template_5x5) {
index_1 (
"0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
);
index_2 (
"0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
);
values (
"0.017574, 0.025241, 0.039240, 0.074436, 0.320255", \
"0.130209, 0.130934, 0.131571, 0.144964, 0.452202", \
"0.240805, 0.242496, 0.242369, 0.244406, 0.548288", \
"0.466498, 0.466251, 0.466522, 0.466774, 0.675363", \
"2.268774, 2.268830, 2.268824, 2.268768, 2.271727"
);
}
fall_transition (delay_template_5x5) {
index_1 (
"0.000500, 0.050000, 0.100000, 0.200000, 1.000000"
);
index_2 (
"0.010000, 0.050000, 0.100000, 0.200000, 1.500000"
);
values (
"0.029014, 0.034924, 0.042010, 0.073728, 0.327469", \
"0.158673, 0.158762, 0.158147, 0.170170, 0.467645", \
"0.287787, 0.287911, 0.287075, 0.288882, 0.551159", \
"0.548458, 0.548226, 0.548509, 0.548657, 0.704977", \
"2.640715, 2.640671, 2.640748, 2.640738, 2.640639"
);
}
}
}
}
}