| 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" |
| ); |
| } |
| } |
| } |
| } |
| } |