| 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 (NAND3X1) { |
| area: 1.0; |
| cell_leakage_power: 0.1173; |
| pin (C) { |
| capacitance: 0.0049475602037443766; |
| direction: input; |
| fall_capacitance: 0.00574550349282349; |
| rise_capacitance: 0.004149616914665264; |
| } |
| pin (B) { |
| capacitance: 0.0056720092179016355; |
| direction: input; |
| fall_capacitance: 0.006513434336879236; |
| rise_capacitance: 0.0048305840989240345; |
| } |
| pin (A) { |
| capacitance: 0.00639281784839878; |
| direction: input; |
| fall_capacitance: 0.00785033270340369; |
| rise_capacitance: 0.0049353029933938706; |
| } |
| pin (Y) { |
| direction: output; |
| function: "(!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.006743, 0.005016, 0.001565, -0.011749, -0.174318", \ |
| "0.047706, 0.044014, 0.046942, 0.046061, -0.062176", \ |
| "0.091627, 0.083788, 0.082464, 0.085303, 0.015523", \ |
| "0.179686, 0.168911, 0.161469, 0.156671, 0.140314", \ |
| "0.884745, 0.871646, 0.855834, 0.827730, 0.787692" |
| ); |
| } |
| 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.021450, 0.026780, 0.036138, 0.051156, 0.240752", \ |
| "0.141321, 0.138431, 0.140867, 0.154160, 0.407189", \ |
| "0.261734, 0.256641, 0.255261, 0.261805, 0.519595", \ |
| "0.501953, 0.495945, 0.491598, 0.490071, 0.706700", \ |
| "2.425213, 2.418226, 2.409901, 2.395913, 2.391369" |
| ); |
| } |
| 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.011465, 0.029932, 0.047360, 0.089549, 0.523956", \ |
| "0.080202, 0.084521, 0.100586, 0.143486, 0.643649", \ |
| "0.152614, 0.153064, 0.163285, 0.192620, 0.727829", \ |
| "0.292789, 0.291706, 0.294483, 0.312038, 0.856442", \ |
| "1.424319, 1.424428, 1.424111, 1.424077, 1.684916" |
| ); |
| } |
| 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.023400, 0.030385, 0.036793, 0.077633, 0.501790", \ |
| "0.190321, 0.189918, 0.190315, 0.199221, 0.487718", \ |
| "0.356855, 0.356030, 0.356029, 0.356551, 0.562588", \ |
| "0.690022, 0.690543, 0.690506, 0.690555, 0.811600", \ |
| "3.365843, 3.365797, 3.365863, 3.365868, 3.365810" |
| ); |
| } |
| } |
| 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.008334, 0.007216, 0.005700, -0.003192, -0.138009", \ |
| "0.049525, 0.045812, 0.049273, 0.049818, -0.030773", \ |
| "0.093522, 0.085734, 0.084386, 0.088138, 0.042191", \ |
| "0.181477, 0.170617, 0.163356, 0.158916, 0.163222", \ |
| "0.886560, 0.873387, 0.857606, 0.829593, 0.796379" |
| ); |
| } |
| 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.023842, 0.028921, 0.038612, 0.052716, 0.222042", \ |
| "0.141887, 0.143909, 0.149119, 0.164220, 0.404600", \ |
| "0.261324, 0.261760, 0.265215, 0.276500, 0.527421", \ |
| "0.501628, 0.500687, 0.501928, 0.509042, 0.732336", \ |
| "2.424686, 2.422462, 2.420742, 2.419460, 2.508042" |
| ); |
| } |
| 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.014708, 0.032599, 0.052399, 0.096681, 0.513554", \ |
| "0.084340, 0.087175, 0.104373, 0.147370, 0.652229", \ |
| "0.155755, 0.155756, 0.166557, 0.196533, 0.737741", \ |
| "0.295954, 0.295123, 0.297528, 0.315324, 0.869188", \ |
| "1.427488, 1.427517, 1.427300, 1.427279, 1.694092" |
| ); |
| } |
| 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.023791, 0.028479, 0.033736, 0.068750, 0.456314", \ |
| "0.190317, 0.190047, 0.189241, 0.193568, 0.414810", \ |
| "0.356056, 0.356011, 0.356369, 0.355755, 0.487881", \ |
| "0.690508, 0.690541, 0.690522, 0.690519, 0.753026", \ |
| "3.365855, 3.365789, 3.365799, 3.365867, 3.365823" |
| ); |
| } |
| } |
| 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.008972, 0.008268, 0.008643, 0.001970, -0.101488", \ |
| "0.051257, 0.047583, 0.051333, 0.053538, -0.001472", \ |
| "0.095356, 0.087565, 0.086323, 0.091056, 0.070441", \ |
| "0.183312, 0.172348, 0.165227, 0.161181, 0.187191", \ |
| "0.888366, 0.875180, 0.859388, 0.831456, 0.805980" |
| ); |
| } |
| 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.020795, 0.029793, 0.038560, 0.050262, 0.188785", \ |
| "0.138390, 0.142029, 0.147535, 0.160844, 0.367966", \ |
| "0.257617, 0.259067, 0.261812, 0.272019, 0.491794", \ |
| "0.497805, 0.497186, 0.497402, 0.502803, 0.696298", \ |
| "2.420816, 2.418080, 2.414398, 2.409953, 2.462120" |
| ); |
| } |
| 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.017292, 0.034566, 0.057624, 0.100464, 0.554013", \ |
| "0.086449, 0.091297, 0.109325, 0.151351, 0.684952", \ |
| "0.158837, 0.158653, 0.169957, 0.201757, 0.763039", \ |
| "0.298884, 0.298357, 0.300621, 0.319480, 0.888696", \ |
| "1.430569, 1.430607, 1.430474, 1.430460, 1.704460" |
| ); |
| } |
| 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.024001, 0.027232, 0.035786, 0.067592, 0.495578", \ |
| "0.190876, 0.191071, 0.189818, 0.194805, 0.453280", \ |
| "0.356122, 0.356782, 0.355698, 0.356058, 0.506856", \ |
| "0.690537, 0.690105, 0.690542, 0.690408, 0.762544", \ |
| "3.365836, 3.365860, 3.365857, 3.365836, 3.365849" |
| ); |
| } |
| } |
| } |
| } |
| } |