| /* |
| * Copyright 2022 GlobalFoundries PDK Authors |
| * |
| * Licensed under the Apache License, Version 2.0 (the "License"); |
| * you may not use this file except in compliance with the License. |
| * You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| * |
| * Single Port SRAM cell name : gf180mcu_fd_ip_sram__sram512x8m8wm1 |
| * Technology : GF 180nm 5V Green |
| * |
| * --------- |
| * Pin name: |
| * --------- |
| * Input Pins : CLK CEN GWEN WEN[7:0] A[8:0] D[7:0] |
| * Inout Pins: VDD VSS |
| * Output Pins: Q[7:0] |
| * |
| * Revision History: 1.0 (Initial Release: June 20, 2014) |
| */ |
| |
| library(gf180mcu_fd_ip_sram__sram512x8m8wm1__ff_n40C_1v98) { |
| delay_model : table_lookup; |
| revision : 1.0; |
| date : "June 20, 2014"; |
| comment : "GF 180nm 5V Green"; |
| voltage_unit : "1V"; |
| time_unit : "1ns"; |
| current_unit : "1mA"; |
| leakage_power_unit : "1mW"; |
| nom_process : 1; |
| nom_temperature : -40; |
| nom_voltage : 1.98; |
| capacitive_load_unit (1,pf); |
| pulling_resistance_unit : "1kohm"; |
| |
| /* additional header data */ |
| default_fanout_load : 1; |
| default_inout_pin_cap : 0.045; |
| default_input_pin_cap : 0.045; |
| default_output_pin_cap : 0; |
| default_max_transition : 2.315; |
| default_cell_leakage_power : 0; |
| |
| /* default attributes */ |
| slew_derate_from_library : 1.000; |
| slew_lower_threshold_pct_fall : 10.000; |
| slew_upper_threshold_pct_fall : 90.000; |
| slew_lower_threshold_pct_rise : 10.000; |
| slew_upper_threshold_pct_rise : 90.000; |
| input_threshold_pct_fall : 50.000; |
| input_threshold_pct_rise : 50.000; |
| output_threshold_pct_fall : 50.000; |
| output_threshold_pct_rise : 50.000; |
| default_leakage_power_density : 0; |
| |
| /* k-factors */ |
| k_process_recovery_fall : 1; |
| k_process_recovery_rise : 1; |
| k_process_cell_fall : 1; |
| k_process_cell_leakage_power : 0; |
| k_process_cell_rise : 1; |
| k_process_fall_transition : 1; |
| k_process_hold_fall : 1; |
| k_process_hold_rise : 1; |
| k_process_internal_power : 0; |
| k_process_min_pulse_width_high : 1; |
| k_process_min_pulse_width_low : 1; |
| k_process_setup_fall : 1; |
| k_process_setup_rise : 1; |
| k_process_wire_cap : 0; |
| k_process_wire_res : 0; |
| k_process_pin_cap : 0; |
| k_process_rise_transition : 1; |
| k_temp_cell_fall : 0.000; |
| k_temp_cell_rise : 0.000; |
| k_temp_hold_fall : 0.000; |
| k_temp_hold_rise : 0.000; |
| k_temp_min_pulse_width_high : 0.000; |
| k_temp_min_pulse_width_low : 0.000; |
| k_temp_min_period : 0.000; |
| k_temp_rise_propagation : 0.000; |
| k_temp_fall_propagation : 0.000; |
| k_temp_rise_transition : 0.000; |
| k_temp_fall_transition : 0.000; |
| k_temp_recovery_fall : 0.000; |
| k_temp_recovery_rise : 0.000; |
| k_temp_setup_fall : 0.000; |
| k_temp_setup_rise : 0.000; |
| k_volt_cell_fall : 0.000; |
| k_volt_cell_rise : 0.000; |
| k_volt_hold_fall : 0.000; |
| k_volt_hold_rise : 0.000; |
| k_volt_min_pulse_width_high : 0.000; |
| k_volt_min_pulse_width_low : 0.000; |
| k_volt_min_period : 0.000; |
| k_volt_recovery_fall : 0.000; |
| k_volt_recovery_rise : 0.000; |
| k_volt_setup_fall : 0.000; |
| k_volt_setup_rise : 0.000; |
| k_volt_rise_propagation : 0.000; |
| k_volt_fall_propagation : 0.000; |
| k_volt_rise_transition : 0.000; |
| k_volt_fall_transition : 0.000; |
| |
| voltage_map (VDD, 1.98); |
| voltage_map (VSS, 0.00); |
| operating_conditions(ff_1p98v_m40C) { |
| process : 1; |
| temperature : -40; |
| voltage : 1.98; |
| tree_type : balanced_tree; |
| } |
| |
| default_operating_conditions : ff_1p98v_m40C; |
| wire_load("Estimate") { |
| resistance : 1.44e-05; |
| capacitance : 0.00018; |
| area : 1.7; |
| slope : 500; |
| fanout_length (1,500); |
| } |
| power_lut_template(power_template) { |
| variable_1 : input_transition_time; |
| index_1 ("1001, 1002, 1003, 1004, 1005, 1006, 1007"); |
| } |
| lu_table_template(q_delay_template) { |
| variable_1 : input_net_transition; |
| variable_2 : total_output_net_capacitance; |
| index_1 ("1001, 1002, 1003, 1004, 1005, 1006, 1007"); |
| index_2 ("1001, 1002, 1003, 1004, 1005, 1006, 1007"); |
| } |
| lu_table_template(q_slew_template) { |
| variable_1 : total_output_net_capacitance; |
| index_1 ("1001, 1002, 1003, 1004, 1005, 1006, 1007"); |
| } |
| lu_table_template(constraint_template) { |
| variable_1 : related_pin_transition; |
| variable_2 : constrained_pin_transition; |
| index_1 ("1001, 1002, 1003, 1004, 1005, 1006, 1007"); |
| index_2 ("1001, 1002, 1003, 1004, 1005, 1006, 1007"); |
| } |
| |
| library_features(report_delay_calculation); |
| |
| type (A_BUS) { |
| base_type : array; |
| data_type : bit; |
| bit_width : 9; |
| bit_from : 8; |
| bit_to : 0; |
| downto : true; |
| } |
| type (Q_BUS) { |
| base_type : array; |
| data_type : bit; |
| bit_width : 8; |
| bit_from : 7; |
| bit_to : 0; |
| downto : true; |
| } |
| cell(gf180mcu_fd_ip_sram__sram512x8m8wm1) { |
| area : 209400.2768; |
| dont_use : TRUE; |
| dont_touch : TRUE; |
| interface_timing : TRUE; |
| memory() { |
| type : ram; |
| address_width : 9; |
| word_width : 8; |
| } |
| |
| bus(Q) { |
| bus_type : Q_BUS; |
| direction : output; |
| max_capacitance : 0.973; |
| memory_read() { |
| address : A; |
| } |
| timing() { |
| related_pin : "CLK"; |
| timing_type : rising_edge; |
| timing_sense : non_unate; |
| when : "((!CEN) & (GWEN))"; |
| sdf_cond : "CEN== 1'b0 && GWEN== 1'b1"; |
| cell_rise(q_delay_template) { |
| index_1 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| index_2 ("0.01, 0.02732, 0.08813, 0.2042, 0.3851, 0.639, 0.973"); |
| values ( \ |
| "8.32344, 8.36412, 8.4588, 8.63556, 8.89152, 9.22644, 9.69096", \ |
| "8.32752, 8.37204, 8.45436, 8.63988, 8.89728, 9.23832, 9.68868", \ |
| "8.34672, 8.39004, 8.48556, 8.667, 8.9118, 9.24972, 9.714", \ |
| "8.39352, 8.43576, 8.52852, 8.7078, 8.95632, 9.31824, 9.75708", \ |
| "8.46156, 8.49384, 8.59368, 8.7732, 9.01728, 9.37224, 9.8262", \ |
| "8.52972, 8.56968, 8.66472, 8.82708, 9.08508, 9.441, 9.8856", \ |
| "8.56452, 8.59848, 8.70576, 8.8668, 9.12276, 9.47472, 9.92988" \ |
| ) |
| } |
| rise_transition(q_slew_template) { |
| index_1 ("0.01, 0.02732, 0.08813, 0.2042, 0.3851, 0.639, 0.973"); |
| values ( \ |
| "0.257448, 0.303864, 0.462312, 0.736788, 1.18348, 1.84908, 2.71752" \ |
| ) |
| |
| } |
| cell_fall(q_delay_template) { |
| index_1 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| index_2 ("0.01, 0.02732, 0.08813, 0.2042, 0.3851, 0.639, 0.973"); |
| values ( \ |
| "8.70156, 8.7312, 8.81808, 8.94612, 9.10632, 9.29472, 9.53736", \ |
| "8.69748, 8.7396, 8.8164, 8.94816, 9.1194, 9.29724, 9.53964", \ |
| "8.72364, 8.7636, 8.841, 8.98044, 9.12624, 9.32004, 9.55836", \ |
| "8.77056, 8.8038, 8.8866, 9.02316, 9.17616, 9.37572, 9.60816", \ |
| "8.83272, 8.86884, 8.94756, 9.084, 9.23388, 9.43788, 9.67344", \ |
| "8.89908, 8.934, 9.02136, 9.14064, 9.30348, 9.50292, 9.73212", \ |
| "8.9352, 8.96928, 9.0588, 9.18, 9.342, 9.53484, 9.77328" \ |
| ) |
| } |
| fall_transition(q_slew_template) { |
| index_1 ("0.01, 0.02732, 0.08813, 0.2042, 0.3851, 0.639, 0.973"); |
| values ( \ |
| "0.253248, 0.293364, 0.384828, 0.52242, 0.726192, 1.01678, 1.38084" \ |
| ) |
| } |
| } |
| } |
| pin(CLK) { |
| direction : input; |
| capacitance : 0.270218; |
| clock : true; |
| max_transition : 2.315; |
| min_pulse_width_high : 4.25379; |
| min_pulse_width_low : 4.340025; |
| min_period : 10.94493; |
| |
| /* WRITE POWER */ |
| internal_power() { |
| when : "!CEN & !GWEN & (!WEN[0] | !WEN[1] | !WEN[2] | !WEN[3] | !WEN[4] | !WEN[5] | !WEN[6] | !WEN[7])"; |
| rise_power(power_template) { |
| index_1 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| values ("133.709, 133.709, 133.709, 133.709, 133.709, 133.709, 133.709"); |
| } |
| fall_power(power_template) { |
| index_1 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| values ("133.709, 133.709, 133.709, 133.709, 133.709, 133.709, 133.709"); |
| } |
| } |
| /* DISABLED POWER */ |
| internal_power() { |
| when : "CEN"; |
| rise_power(power_template) { |
| index_1 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| values ("9.73823e-05, 9.73823e-05, 9.73823e-05, 9.73823e-05, 9.73823e-05, 9.73823e-05, 9.73823e-05"); |
| } |
| fall_power(power_template) { |
| index_1 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| values ("9.73823e-05, 9.73823e-05, 9.73823e-05, 9.73823e-05, 9.73823e-05, 9.73823e-05, 9.73823e-05"); |
| } |
| } |
| /* READ POWER */ |
| internal_power() { |
| when : "!CEN & GWEN"; |
| rise_power(power_template) { |
| index_1 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| values ("121.344, 121.344, 121.344, 121.344, 121.344, 121.344, 121.344"); |
| } |
| fall_power(power_template) { |
| index_1 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| values ("121.344, 121.344, 121.344, 121.344, 121.344, 121.344, 121.344"); |
| } |
| } |
| } |
| |
| pg_pin(VDD) { |
| voltage_name : VDD; |
| pg_type : primary_power; |
| } |
| pg_pin(VSS) { |
| voltage_name : VSS; |
| pg_type : primary_ground; |
| } |
| pin(CEN) { |
| direction : input; |
| capacitance : 0.0171529; |
| timing() { |
| related_pin : CLK; |
| timing_type : setup_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| index_2 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| values ( \ |
| "0.796862, 0.790702, 0.789459, 0.834702, 0.938432, 1.09252, 1.24307", \ |
| "0.788799, 0.780835, 0.779592, 0.824835, 0.928576, 1.08266, 1.24044", \ |
| "0.754523, 0.748363, 0.746911, 0.792363, 0.896104, 1.05018, 1.20074", \ |
| "0.70873, 0.700777, 0.697191, 0.742511, 0.837507, 0.98571, 1.13658", \ |
| "0.708059, 0.699666, 0.698819, 0.742313, 0.83732, 0.96888, 1.07416", \ |
| "0.707905, 0.700447, 0.698643, 0.742159, 0.837177, 0.968715, 1.05642", \ |
| "0.708026, 0.700568, 0.698764, 0.742269, 0.837287, 0.968836, 1.06705" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| index_2 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| values ( \ |
| "0.654852, 0.662068, 0.691625, 0.762399, 0.88308, 1.05601, 1.2593", \ |
| "0.651981, 0.657701, 0.688875, 0.758406, 0.879626, 1.05295, 1.24945", \ |
| "0.651585, 0.657283, 0.688534, 0.758065, 0.879296, 1.0526, 1.24892", \ |
| "0.651244, 0.656953, 0.688149, 0.757724, 0.878944, 1.05227, 1.24858", \ |
| "0.651068, 0.656777, 0.687973, 0.757548, 0.878779, 1.0521, 1.24841", \ |
| "0.650914, 0.656623, 0.687863, 0.757394, 0.878603, 1.05193, 1.24825", \ |
| "0.65109, 0.656744, 0.687973, 0.757515, 0.878724, 1.05205, 1.24838" \ |
| ) |
| } |
| } |
| timing() { |
| related_pin : CLK; |
| timing_type : hold_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| index_2 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| values ( \ |
| "2.00079, 2.00651, 2.00827, 1.96482, 1.86978, 1.73822, 1.65055", \ |
| "2.00585, 2.01333, 2.0152, 1.97164, 1.8766, 1.74504, 1.64681", \ |
| "2.03709, 2.04292, 2.04688, 2.00123, 1.90619, 1.77463, 1.68696", \ |
| "2.10386, 2.11178, 2.11541, 2.07009, 1.97505, 1.8436, 1.75582", \ |
| "2.20946, 2.21782, 2.2187, 2.17514, 2.08021, 1.94865, 1.86087", \ |
| "2.34718, 2.35466, 2.35642, 2.31297, 2.21793, 2.08637, 1.9987", \ |
| "2.47852, 2.486, 2.48787, 2.44431, 2.34927, 2.21771, 2.11948" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| index_2 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| values ( \ |
| "2.05601, 2.05029, 2.01916, 1.94953, 1.82831, 1.65506, 1.45871", \ |
| "2.06283, 2.05711, 2.02598, 1.95646, 1.83524, 1.66188, 1.46553", \ |
| "2.09242, 2.0867, 2.05546, 1.98594, 1.86472, 1.69136, 1.49512", \ |
| "2.16139, 2.15567, 2.12443, 2.05491, 1.93369, 1.76033, 1.56398", \ |
| "2.26644, 2.26072, 2.22948, 2.15996, 2.03874, 1.86538, 1.66903", \ |
| "2.40416, 2.39844, 2.3672, 2.29768, 2.17646, 2.00321, 1.80686", \ |
| "2.5355, 2.52989, 2.49865, 2.42913, 2.30791, 2.13455, 1.9382" \ |
| ) |
| } |
| } |
| } |
| pin(GWEN) { |
| direction : input; |
| capacitance : 0.0440073; |
| timing() { |
| related_pin : CLK; |
| timing_type : setup_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| index_2 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| values ( \ |
| "1.00473, 1.01448, 1.04632, 1.1077, 1.20421, 1.3186, 1.42758", \ |
| "0.990517, 0.999614, 1.03235, 1.09344, 1.18996, 1.30353, 1.41339", \ |
| "0.963303, 0.971619, 1.00511, 1.06623, 1.16274, 1.27713, 1.38611", \ |
| "0.90904, 0.917367, 0.950884, 1.01198, 1.10849, 1.22288, 1.33188", \ |
| "0.818334, 0.828146, 0.860277, 0.921371, 1.01788, 1.13227, 1.24128", \ |
| "0.73469, 0.744425, 0.776523, 0.837507, 0.934142, 1.04852, 1.15753", \ |
| "0.674201, 0.682363, 0.716023, 0.777117, 0.873631, 0.987206, 1.09864" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| index_2 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| values ( \ |
| "1.19323, 1.19202, 1.23745, 1.31388, 1.4487, 1.62426, 1.83887", \ |
| "1.17362, 1.17772, 1.21962, 1.29963, 1.43528, 1.60996, 1.82468", \ |
| "1.15176, 1.15058, 1.19244, 1.27241, 1.408, 1.58279, 1.7974", \ |
| "1.09738, 1.09634, 1.1392, 1.21814, 1.353, 1.52856, 1.74317", \ |
| "1.00156, 1.00569, 1.04756, 1.12756, 1.26326, 1.43792, 1.65253", \ |
| "0.923164, 0.92191, 0.96382, 1.04381, 1.17868, 1.35421, 1.56882", \ |
| "0.862521, 0.861432, 0.903298, 0.98329, 1.11814, 1.29366, 1.50832" \ |
| ) |
| } |
| } |
| timing() { |
| related_pin : CLK; |
| timing_type : hold_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| index_2 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| values ( \ |
| "1.37621, 1.3673, 1.3354, 1.2775, 1.19979, 1.13379, 1.08314", \ |
| "1.38149, 1.37379, 1.34068, 1.28277, 1.20506, 1.13905, 1.08684", \ |
| "1.40294, 1.39634, 1.36213, 1.3042, 1.2265, 1.16049, 1.10985", \ |
| "1.44309, 1.43649, 1.40184, 1.34431, 1.26664, 1.19945, 1.14939", \ |
| "1.4916, 1.48269, 1.45079, 1.39282, 1.31516, 1.24915, 1.19851", \ |
| "1.54495, 1.53604, 1.50403, 1.44617, 1.36851, 1.30249, 1.25183", \ |
| "1.58851, 1.58191, 1.5477, 1.48984, 1.41218, 1.34618, 1.29549" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| index_2 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| values ( \ |
| "0.744667, 0.729619, 0.693209, 0.609488, 0.484583, 0.310115, 0.112004", \ |
| "0.7491, 0.734932, 0.698346, 0.614724, 0.489225, 0.315402, 0.117275", \ |
| "0.771386, 0.756283, 0.72116, 0.636163, 0.510653, 0.33682, 0.138703", \ |
| "0.811514, 0.795278, 0.758824, 0.675466, 0.550154, 0.377003, 0.177661", \ |
| "0.860035, 0.844943, 0.808434, 0.724812, 0.599291, 0.425491, 0.227365", \ |
| "0.91322, 0.898282, 0.861784, 0.778151, 0.653191, 0.47872, 0.280698", \ |
| "0.956791, 0.941919, 0.905421, 0.82181, 0.695431, 0.522478, 0.324347" \ |
| ) |
| } |
| } |
| } |
| bus(WEN) { |
| bus_type : Q_BUS; |
| direction : input; |
| capacitance : 0.00700372; |
| timing() { |
| related_pin : CLK; |
| timing_type : setup_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| index_2 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| values ( \ |
| "0, 0, 0, 0, 0, 0.04389, 0.100034", \ |
| "0, 0, 0, 0, 0, 0.039347, 0.095491", \ |
| "0, 0, 0, 0, 0, 0.016918, 0.073062", \ |
| "0, 0, 0, 0, 0, 0, 0.036399", \ |
| "0, 0, 0, 0, 0, 0, 0", \ |
| "0, 0, 0, 0, 0, 0, 0", \ |
| "0, 0, 0, 0, 0, 0, 0" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| index_2 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| values ( \ |
| "0.428637, 0.43945, 0.480568, 0.558976, 0.687379, 0.862092, 1.06198", \ |
| "0.424017, 0.435831, 0.476146, 0.554642, 0.683045, 0.857439, 1.0574", \ |
| "0.40447, 0.413468, 0.452749, 0.532191, 0.660616, 0.83512, 1.03501", \ |
| "0.367807, 0.376739, 0.416966, 0.495407, 0.624866, 0.798347, 0.998294", \ |
| "0.318663, 0.327441, 0.368093, 0.446611, 0.575619, 0.749419, 0.949366", \ |
| "0.263427, 0.275139, 0.315369, 0.393855, 0.520894, 0.69696, 0.896665", \ |
| "0.216347, 0.228456, 0.268677, 0.347182, 0.476597, 0.650276, 0.850014" \ |
| ) |
| } |
| } |
| timing() { |
| related_pin : CLK; |
| timing_type : hold_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| index_2 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| values ( \ |
| "1.37863, 1.3695, 1.33969, 1.27896, 1.20377, 1.13379, 1.08314", \ |
| "1.38391, 1.37478, 1.34497, 1.28424, 1.20905, 1.13905, 1.08684", \ |
| "1.40602, 1.39689, 1.36708, 1.30632, 1.23114, 1.16049, 1.10985", \ |
| "1.44551, 1.43649, 1.40657, 1.34574, 1.27061, 1.19945, 1.14939", \ |
| "1.49402, 1.48489, 1.45508, 1.39425, 1.31912, 1.24915, 1.19851", \ |
| "1.54737, 1.53824, 1.50832, 1.4476, 1.37247, 1.30249, 1.25183", \ |
| "1.59104, 1.58191, 1.5521, 1.49127, 1.41614, 1.34618, 1.29549" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| index_2 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| values ( \ |
| "0.744667, 0.729619, 0.693209, 0.609488, 0.484583, 0.310115, 0.112608", \ |
| "0.7491, 0.734932, 0.698346, 0.614724, 0.489225, 0.315402, 0.117886", \ |
| "0.771386, 0.756283, 0.7216, 0.636614, 0.511115, 0.33682, 0.140045", \ |
| "0.811514, 0.795278, 0.759649, 0.675873, 0.551045, 0.377003, 0.179424", \ |
| "0.860035, 0.844943, 0.808434, 0.724812, 0.599291, 0.425491, 0.227939", \ |
| "0.91322, 0.898282, 0.861784, 0.778151, 0.653191, 0.47872, 0.28128", \ |
| "0.956791, 0.941919, 0.905421, 0.82181, 0.695431, 0.522478, 0.32496" \ |
| ) |
| } |
| } |
| } |
| bus(A) { |
| bus_type : A_BUS; |
| direction : input; |
| capacitance : 0.0374395; |
| timing() { |
| related_pin : CLK; |
| timing_type : setup_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| index_2 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| values ( \ |
| "1.19772, 1.18879, 1.19165, 1.23798, 1.34695, 1.48566, 1.65165", \ |
| "1.1918, 1.18043, 1.18593, 1.23432, 1.33441, 1.4773, 1.64483", \ |
| "1.16417, 1.16099, 1.1593, 1.20515, 1.3136, 1.45299, 1.62261", \ |
| "1.12538, 1.1236, 1.12644, 1.17422, 1.28241, 1.42318, 1.5906", \ |
| "1.08009, 1.0767, 1.07668, 1.12747, 1.23013, 1.36972, 1.53582", \ |
| "1.03065, 1.01886, 1.0211, 1.06901, 1.18004, 1.31804, 1.48302", \ |
| "0.984786, 0.977295, 0.981794, 1.03771, 1.13302, 1.26979, 1.43935" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| index_2 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| values ( \ |
| "1.48258, 1.49094, 1.52856, 1.59093, 1.71072, 1.8843, 2.10958", \ |
| "1.48522, 1.49237, 1.52471, 1.58466, 1.70313, 1.88078, 2.10815", \ |
| "1.45739, 1.45882, 1.49589, 1.55793, 1.67992, 1.85625, 2.0768", \ |
| "1.42098, 1.42593, 1.46443, 1.5301, 1.64439, 1.82512, 2.04952", \ |
| "1.37555, 1.38072, 1.41284, 1.47741, 1.60083, 1.77474, 2.00332", \ |
| "1.32033, 1.3277, 1.35806, 1.42043, 1.53879, 1.71996, 1.94601", \ |
| "1.28086, 1.28094, 1.31567, 1.37742, 1.49798, 1.67992, 1.89849" \ |
| ) |
| } |
| } |
| timing() { |
| related_pin : CLK; |
| timing_type : hold_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| index_2 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| values ( \ |
| "0.773685, 0.777425, 0.772464, 0.720005, 0.65472, 0.556798, 0.44484", \ |
| "0.786016, 0.790262, 0.785829, 0.733381, 0.668074, 0.570042, 0.455268", \ |
| "0.813912, 0.818213, 0.813824, 0.76142, 0.696036, 0.598004, 0.483945", \ |
| "0.874291, 0.878537, 0.874115, 0.821656, 0.75636, 0.658328, 0.544269", \ |
| "0.964821, 0.969661, 0.964733, 0.91234, 0.846956, 0.749034, 0.635228", \ |
| "1.08633, 1.09056, 1.08615, 1.03368, 0.968385, 0.870353, 0.756283", \ |
| "1.19677, 1.20099, 1.19546, 1.12452, 1.07881, 0.980782, 0.866679" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| index_2 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| values ( \ |
| "0.84392, 0.838167, 0.803044, 0.748242, 0.684475, 0.613261, 0.543609", \ |
| "0.857285, 0.850564, 0.81642, 0.761629, 0.697851, 0.626637, 0.556996", \ |
| "0.886017, 0.879494, 0.844327, 0.789569, 0.725802, 0.654588, 0.584936", \ |
| "0.947012, 0.940797, 0.904695, 0.849893, 0.786126, 0.714912, 0.645348", \ |
| "1.03694, 1.03039, 0.99528, 0.940478, 0.876733, 0.805497, 0.735856", \ |
| "1.15839, 1.15088, 1.11669, 1.06192, 0.998151, 0.926948, 0.857384", \ |
| "1.26873, 1.26324, 1.22716, 1.17236, 1.10859, 1.03738, 0.967725" \ |
| ) |
| } |
| } |
| } |
| bus(D) { |
| bus_type : Q_BUS; |
| memory_write() { |
| address : A; |
| clocked_on : "CLK"; |
| } |
| direction : input; |
| capacitance : 0.0153635; |
| timing() { |
| related_pin : CLK; |
| timing_type : setup_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| index_2 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| values ( \ |
| "0.883498, 0.892199, 0.923956, 0.969518, 1.00601, 1.0167, 1.01477", \ |
| "0.872993, 0.888459, 0.917609, 0.96998, 1.00477, 1.0198, 1.00984", \ |
| "0.855448, 0.863676, 0.893552, 0.938443, 0.980254, 0.996171, 0.978582", \ |
| "0.816618, 0.830005, 0.858121, 0.905234, 0.945956, 0.963248, 0.948024", \ |
| "0.771353, 0.779416, 0.809138, 0.859881, 0.894113, 0.912692, 0.903375", \ |
| "0.712096, 0.719455, 0.755238, 0.802626, 0.836528, 0.85778, 0.842347", \ |
| "0.67199, 0.682253, 0.713361, 0.758043, 0.793199, 0.815518, 0.799634" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| index_2 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| values ( \ |
| "0.138776, 0.137582, 0.171993, 0.249663, 0.373714, 0.548009, 0.74558", \ |
| "0.133855, 0.132572, 0.166972, 0.244774, 0.368665, 0.542971, 0.740564", \ |
| "0.108603, 0.107591, 0.142, 0.21786, 0.343893, 0.518023, 0.715594", \ |
| "0.075559, 0.074525, 0.108933, 0.186733, 0.310531, 0.484935, 0.68222", \ |
| "0.025982, 0.024981, 0.059202, 0.136998, 0.263887, 0.435193, 0.632786", \ |
| "0, 0, 0.002871, 0.081048, 0.204686, 0.383372, 0.57684", \ |
| "0, 0, 0, 0.037411, 0.161504, 0.33561, 0.533203" \ |
| ) |
| } |
| } |
| timing() { |
| related_pin : CLK; |
| timing_type : hold_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| index_2 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| values ( \ |
| "0.612282, 0.601414, 0.571241, 0.523149, 0.488664, 0.47652, 0.473088", \ |
| "0.617331, 0.60654, 0.577511, 0.528253, 0.493746, 0.474727, 0.476751", \ |
| "0.63558, 0.624822, 0.598059, 0.546381, 0.512028, 0.494406, 0.49698", \ |
| "0.672507, 0.663553, 0.634227, 0.585673, 0.550792, 0.533159, 0.535194", \ |
| "0.718014, 0.708268, 0.678106, 0.630135, 0.595507, 0.576741, 0.57992", \ |
| "0.77836, 0.770594, 0.737363, 0.689535, 0.654786, 0.636009, 0.639199", \ |
| "0.822349, 0.813065, 0.783376, 0.735471, 0.69982, 0.680537, 0.683177" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| index_2 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| values ( \ |
| "1.10362, 1.10608, 1.07018, 0.994015, 0.870144, 0.693539, 0.500676", \ |
| "1.1088, 1.11112, 1.07521, 0.999031, 0.875171, 0.698566, 0.505692", \ |
| "1.12691, 1.12937, 1.09348, 1.0173, 0.893431, 0.716826, 0.523963", \ |
| "1.16568, 1.16812, 1.13223, 1.05606, 0.932195, 0.75559, 0.562716", \ |
| "1.21039, 1.21285, 1.17695, 1.10078, 0.97691, 0.800305, 0.607431", \ |
| "1.26722, 1.27212, 1.23661, 1.16005, 1.03618, 0.859584, 0.66671", \ |
| "1.3147, 1.31716, 1.28127, 1.20509, 1.08122, 0.904618, 0.711755" \ |
| ) |
| } |
| } |
| } |
| cell_leakage_power : 9.738234e-05; |
| } |
| } |