blob: 8795016d7f04479ab837af70e2c5ec0d62e62398 [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 (OAI21X1) {
area: 219456.0;
cell_leakage_power: 0.1173;
pin (C) {
capacitance: 0.0049685503383930275;
direction: input;
fall_capacitance: 0.0057337054132807755;
rise_capacitance: 0.004203395263505281;
}
pin (B) {
capacitance: 0.004817269329420684;
direction: input;
fall_capacitance: 0.0046993715663027884;
rise_capacitance: 0.004935167092538579;
}
pin (A) {
capacitance: 0.006365887451121313;
direction: input;
fall_capacitance: 0.007796116485619777;
rise_capacitance: 0.004935658416622851;
}
pin (Y) {
direction: output;
function: "(!(A & B & C + A & C & !B + B & C & !A))";
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.006353, 0.006873, 0.004977, -0.002571, -0.112220", \
"0.047648, 0.044522, 0.048480, 0.050680, -0.005504", \
"0.091575, 0.084317, 0.083496, 0.088598, 0.067928", \
"0.179609, 0.168970, 0.162303, 0.158976, 0.185631", \
"0.884619, 0.871536, 0.855984, 0.828850, 0.807127"
);
}
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.012322, 0.018627, 0.025819, 0.036380, 0.166985", \
"0.097230, 0.095251, 0.097606, 0.110133, 0.295266", \
"0.182685, 0.178288, 0.176909, 0.181932, 0.384599", \
"0.354450, 0.348364, 0.343303, 0.339898, 0.530677", \
"1.731053, 1.722975, 1.713352, 1.696916, 1.662491"
);
}
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.011924, 0.030898, 0.053284, 0.100971, 0.670100", \
"0.080583, 0.085685, 0.102082, 0.143609, 0.716365", \
"0.152800, 0.152883, 0.163222, 0.193150, 0.778215", \
"0.292893, 0.292086, 0.294393, 0.311669, 0.881950", \
"1.424263, 1.424245, 1.424087, 1.424045, 1.683357"
);
}
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.017139, 0.026739, 0.044276, 0.087758, 0.660076", \
"0.138283, 0.139729, 0.142997, 0.162743, 0.650333", \
"0.260560, 0.259671, 0.260078, 0.269467, 0.681289", \
"0.503775, 0.503479, 0.503665, 0.504685, 0.808692", \
"2.459384, 2.459439, 2.459425, 2.459497, 2.482154"
);
}
}
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.018084, 0.018785, 0.021524, 0.021254, 0.031017", \
"0.096634, 0.090653, 0.091567, 0.101191, 0.181020", \
"0.173780, 0.166489, 0.164402, 0.167176, 0.281781", \
"0.328645, 0.320024, 0.314801, 0.311087, 0.444609", \
"1.568475, 1.558747, 1.549393, 1.535231, 1.517075"
);
}
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.011853, 0.020828, 0.025802, 0.032296, 0.061131", \
"0.103764, 0.107281, 0.113180, 0.125736, 0.245046", \
"0.197462, 0.198933, 0.202960, 0.213251, 0.366132", \
"0.386134, 0.386285, 0.388197, 0.395136, 0.557258", \
"1.897752, 1.896544, 1.895986, 1.896513, 1.969418"
);
}
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.020867, 0.029939, 0.052329, 0.091938, 0.451438", \
"0.133406, 0.133983, 0.137806, 0.156667, 0.613530", \
"0.245013, 0.245383, 0.244613, 0.254696, 0.705512", \
"0.469706, 0.469327, 0.469422, 0.469157, 0.813809", \
"2.271618, 2.271785, 2.271663, 2.271774, 2.288526"
);
}
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.015697, 0.022510, 0.033468, 0.066107, 0.425032", \
"0.144870, 0.144572, 0.145000, 0.157604, 0.462980", \
"0.274162, 0.274051, 0.273949, 0.276993, 0.536593", \
"0.535317, 0.535340, 0.535460, 0.535384, 0.689730", \
"2.627338, 2.627345, 2.627342, 2.627355, 2.627455"
);
}
}
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.018803, 0.021401, 0.023344, 0.023872, -0.022124", \
"0.097043, 0.097462, 0.098807, 0.107122, 0.140271", \
"0.174167, 0.173694, 0.174835, 0.179375, 0.252462", \
"0.329045, 0.328268, 0.328060, 0.330094, 0.432085", \
"1.568689, 1.567669, 1.566082, 1.563994, 1.593864"
);
}
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.014567, 0.027648, 0.035349, 0.041047, 0.137832", \
"0.108453, 0.112569, 0.119206, 0.133016, 0.297203", \
"0.202396, 0.204223, 0.208700, 0.219958, 0.407822", \
"0.391026, 0.391383, 0.393600, 0.400955, 0.585908", \
"1.902735, 1.901651, 1.901085, 1.901740, 1.980348"
);
}
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.019300, 0.027658, 0.041698, 0.074827, 0.320959", \
"0.131626, 0.131992, 0.134734, 0.149048, 0.454028", \
"0.244112, 0.244371, 0.245398, 0.247897, 0.550953", \
"0.469602, 0.469661, 0.469275, 0.469732, 0.677618", \
"2.271672, 2.271613, 2.271813, 2.271710, 2.274668"
);
}
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.031706, 0.032612, 0.040602, 0.073394, 0.328383", \
"0.155420, 0.155629, 0.156550, 0.167050, 0.465518", \
"0.286331, 0.286147, 0.286318, 0.287490, 0.548717", \
"0.546344, 0.546313, 0.546743, 0.546937, 0.703383", \
"2.638909, 2.638879, 2.638882, 2.638975, 2.638890"
);
}
}
}
}
}