blob: 5e56410833bb2ab26013c81673a0be88f3cf71a0 [file] [log] [blame]
library (ls05_stdcells) {
delay_model: table_lookup;
in_place_swap_mode: match_footprint;
time_unit: "1ns";
voltage_unit: "1V";
current_unit: "1uA";
pulling_resistance_unit: "1kohm";
leakage_power_unit: "1nW";
capacitive_load_unit (1.0, pf);
slew_upper_threshold_pct_rise: 80.0;
slew_lower_threshold_pct_rise: 20.0;
slew_upper_threshold_pct_fall: 80.0;
slew_lower_threshold_pct_fall: 20.0;
input_threshold_pct_rise: 50.0;
input_threshold_pct_fall: 50.0;
output_threshold_pct_rise: 50.0;
output_threshold_pct_fall: 50.0;
nom_process: 1.0;
nom_voltage: 5.0;
nom_temperature: 25.0;
default_operating_conditions: typical;
operating_conditions (typical) {
process: 1.0;
voltage: 5.0;
temperature: 25.0;
}
lu_table_template (delay_template_5x5) {
variable_1: total_output_net_capacitance;
variable_2: input_net_transition;
index_1 (
"1000.000000, 1001.000000, 1002.000000, 1003.000000, 1004.000000"
);
index_2 (
"1000.000000, 1001.000000, 1002.000000, 1003.000000, 1004.000000"
);
}
cell (OAI22X1) {
area: 1097280.0;
cell_leakage_power: 0.1173;
pin (D) {
direction: input;
rise_capacitance: 0.00422904568382474;
fall_capacitance: 6.27701700917797e-05;
capacitance: 0.00214590792695826;
}
pin (C) {
direction: input;
rise_capacitance: 0.004229993996294385;
fall_capacitance: 0.005758102592005284;
capacitance: 0.004994048294149835;
}
pin (B) {
direction: input;
rise_capacitance: 0.004935264302975343;
fall_capacitance: 0.004717210490958356;
capacitance: 0.00482623739696685;
}
pin (A) {
direction: input;
rise_capacitance: 0.004935925445230348;
fall_capacitance: 0.007825926909320734;
capacitance: 0.00638092617727554;
}
pin (Y) {
direction: output;
function: "(!D&!C&!B&!A|D&!C&!B&!A|D&C&!B&!A|!D&C&!B&!A|!D&!C&B&!A|!D&!C&B&A|!D&!C&!B&A)";
function: "((A & B & !C & !D + C & D & !A & !B + A & !B & !C & !D + B & !A & !C & !D + C & !A & !B & !D + D & !A & !B & !C + !A & !B & !C & !D))";
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.023283, 0.026086, 0.029698, 0.032795, -0.001479", \
"0.101125, 0.101089, 0.103242, 0.111463, 0.155077", \
"0.178698, 0.178197, 0.178968, 0.183936, 0.265589", \
"0.333742, 0.332923, 0.332617, 0.334515, 0.443208", \
"1.573737, 1.572628, 1.570969, 1.568406, 1.602882"
);
}
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.012521, 0.028054, 0.037790, 0.050147, 0.142499", \
"0.100661, 0.105547, 0.112648, 0.128391, 0.287021", \
"0.189767, 0.192023, 0.196444, 0.208039, 0.391309", \
"0.368021, 0.368345, 0.370350, 0.377348, 0.561865", \
"1.794390, 1.792660, 1.791504, 1.790869, 1.861891"
);
}
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.027523, 0.032137, 0.043710, 0.068258, 0.351959", \
"0.138192, 0.138265, 0.138971, 0.148233, 0.459452", \
"0.250786, 0.250776, 0.250815, 0.252433, 0.550251", \
"0.475993, 0.475990, 0.475983, 0.475987, 0.672440", \
"2.278881, 2.278886, 2.278881, 2.278884, 2.281277"
);
}
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.033208, 0.057195, 0.047282, 0.073255, 0.374412", \
"0.150143, 0.150175, 0.151479, 0.161717, 0.504750", \
"0.271994, 0.271979, 0.271960, 0.273778, 0.580300", \
"0.515546, 0.515539, 0.515545, 0.515540, 0.712176", \
"2.463948, 2.463946, 2.463949, 2.463947, 2.465069"
);
}
}
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.022457, 0.023821, 0.028002, 0.033432, 0.050099", \
"0.100795, 0.094818, 0.096177, 0.106623, 0.193238", \
"0.178421, 0.170774, 0.168840, 0.173249, 0.292925", \
"0.333487, 0.324687, 0.319823, 0.317316, 0.454634", \
"1.573506, 1.563530, 1.554962, 1.540935, 1.526232"
);
}
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.009970, 0.022332, 0.029418, 0.036773, 0.068890", \
"0.096499, 0.100597, 0.107043, 0.121347, 0.233209", \
"0.185411, 0.187163, 0.191171, 0.201750, 0.347651", \
"0.363558, 0.363589, 0.365346, 0.371744, 0.531675", \
"1.789838, 1.787994, 1.786745, 1.786002, 1.850882"
);
}
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.027453, 0.035677, 0.052614, 0.085958, 0.479334", \
"0.138281, 0.138228, 0.140230, 0.159346, 0.613230", \
"0.250777, 0.250785, 0.250804, 0.256157, 0.698173", \
"0.475995, 0.475996, 0.475995, 0.475967, 0.804605", \
"2.278882, 2.278884, 2.278886, 2.278882, 2.294149"
);
}
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.025756, 0.039061, 0.038010, 0.065493, 0.449021", \
"0.139560, 0.139590, 0.140888, 0.151088, 0.498425", \
"0.261310, 0.261302, 0.261289, 0.263206, 0.566573", \
"0.504829, 0.504817, 0.504829, 0.504819, 0.699154", \
"2.453188, 2.453188, 2.453189, 2.453187, 2.454474"
);
}
}
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.017359, 0.020239, 0.022410, 0.022148, -0.048370", \
"0.095781, 0.095787, 0.097757, 0.105343, 0.121554", \
"0.173355, 0.172918, 0.173600, 0.178104, 0.237251", \
"0.328398, 0.327691, 0.327330, 0.328976, 0.421249", \
"1.568399, 1.567426, 1.565794, 1.563195, 1.593328"
);
}
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.015013, 0.024562, 0.032155, 0.044563, 0.160773", \
"0.098613, 0.097314, 0.099563, 0.111932, 0.280587", \
"0.184509, 0.180314, 0.178163, 0.181771, 0.365997", \
"0.356497, 0.350286, 0.344634, 0.339129, 0.507816", \
"1.732927, 1.724617, 1.714864, 1.697166, 1.627185"
);
}
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.019019, 0.025963, 0.039343, 0.070044, 0.533535", \
"0.129391, 0.129468, 0.130315, 0.139831, 0.514520", \
"0.241936, 0.241939, 0.241961, 0.243767, 0.557740", \
"0.467115, 0.467109, 0.467107, 0.467104, 0.662643", \
"2.269978, 2.269983, 2.269978, 2.269980, 2.272604"
);
}
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.030659, 0.049724, 0.061259, 0.101551, 0.581832", \
"0.149318, 0.149607, 0.154293, 0.179158, 0.730603", \
"0.271589, 0.271594, 0.272068, 0.281395, 0.804678", \
"0.516131, 0.516134, 0.516134, 0.516907, 0.918257", \
"2.472225, 2.472227, 2.472226, 2.472227, 2.503573"
);
}
}
timing () {
related_pin: "D";
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.016262, 0.017953, 0.020064, 0.021458, -0.001520", \
"0.095321, 0.089494, 0.090705, 0.100426, 0.153300", \
"0.172996, 0.165491, 0.163413, 0.167278, 0.258836", \
"0.328101, 0.319446, 0.314487, 0.311618, 0.428744", \
"1.568141, 1.558342, 1.549772, 1.535678, 1.515010"
);
}
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.011023, 0.018339, 0.023255, 0.030287, 0.084409", \
"0.094011, 0.092068, 0.093623, 0.104316, 0.218448", \
"0.179838, 0.175225, 0.172596, 0.174928, 0.312603", \
"0.351783, 0.345335, 0.339405, 0.333058, 0.468089", \
"1.728167, 1.719791, 1.709961, 1.692131, 1.611665"
);
}
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.018855, 0.028595, 0.047231, 0.087045, 0.641403", \
"0.129486, 0.129382, 0.131911, 0.151555, 0.651384", \
"0.241942, 0.241930, 0.241953, 0.247787, 0.698756", \
"0.467109, 0.467119, 0.467119, 0.467084, 0.794655", \
"2.269982, 2.269982, 2.269983, 2.269978, 2.286463"
);
}
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.019015, 0.039322, 0.050390, 0.091244, 0.642558", \
"0.138637, 0.138872, 0.143330, 0.167382, 0.711587", \
"0.260891, 0.260872, 0.261322, 0.270455, 0.778798", \
"0.505376, 0.505376, 0.505375, 0.506151, 0.893542", \
"2.461425, 2.461427, 2.461427, 2.461428, 2.492763"
);
}
}
}
}
}