| /* |
| * 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__sram64x8m8wm1 |
| * Technology : GF 180nm 5V Green |
| * |
| * --------- |
| * Pin name: |
| * --------- |
| * Input Pins : CLK CEN GWEN WEN[7:0] A[5: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__sram64x8m8wm1__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 : 6; |
| bit_from : 5; |
| 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__sram64x8m8wm1) { |
| area : 100571.5568; |
| dont_use : TRUE; |
| dont_touch : TRUE; |
| interface_timing : TRUE; |
| memory() { |
| type : ram; |
| address_width : 6; |
| 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 ( \ |
| "7.44768, 7.47024, 7.59192, 7.75296, 8.00532, 8.33952, 8.81004", \ |
| "7.43784, 7.47432, 7.58016, 7.76196, 8.0058, 8.3442, 8.80344", \ |
| "7.47504, 7.51692, 7.62336, 7.7916, 8.04372, 8.39352, 8.829", \ |
| "7.5174, 7.54956, 7.65948, 7.8252, 8.08188, 8.42508, 8.88048", \ |
| "7.572, 7.60356, 7.70988, 7.88532, 8.13924, 8.4822, 8.94024", \ |
| "7.61832, 7.6548, 7.7676, 7.93704, 8.1858, 8.52816, 8.98356", \ |
| "7.67712, 7.71156, 7.82112, 8.00016, 8.25096, 8.5878, 9.0432" \ |
| ) |
| } |
| rise_transition(q_slew_template) { |
| index_1 ("0.01, 0.02732, 0.08813, 0.2042, 0.3851, 0.639, 0.973"); |
| values ( \ |
| "0.256512, 0.301368, 0.45246, 0.734784, 1.18332, 1.84788, 2.71344" \ |
| ) |
| |
| } |
| 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 ( \ |
| "7.82052, 7.839, 7.94424, 8.06232, 8.2224, 8.40228, 8.65932", \ |
| "7.81572, 7.84584, 7.93236, 8.07432, 8.2188, 8.41092, 8.6556", \ |
| "7.84344, 7.8786, 7.97544, 8.10336, 8.25768, 8.44716, 8.679", \ |
| "7.88592, 7.91868, 8.00964, 8.13336, 8.29344, 8.48904, 8.72532", \ |
| "7.93752, 7.97328, 8.06244, 8.18988, 8.35524, 8.54544, 8.78772", \ |
| "7.99116, 8.02116, 8.1216, 8.24472, 8.40288, 8.59284, 8.82864", \ |
| "8.05404, 8.08284, 8.17632, 8.31264, 8.47176, 8.64696, 8.88648" \ |
| ) |
| } |
| fall_transition(q_slew_template) { |
| index_1 ("0.01, 0.02732, 0.08813, 0.2042, 0.3851, 0.639, 0.973"); |
| values ( \ |
| "0.252012, 0.295536, 0.386412, 0.520332, 0.72252, 1.012, 1.38276" \ |
| ) |
| } |
| } |
| } |
| pin(CLK) { |
| direction : input; |
| capacitance : 0.269276; |
| clock : true; |
| max_transition : 2.315; |
| min_pulse_width_high : 4.948095; |
| min_pulse_width_low : 4.736925; |
| min_period : 10.11168; |
| |
| /* 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 ("110.484, 110.484, 110.484, 110.484, 110.484, 110.484, 110.484"); |
| } |
| fall_power(power_template) { |
| index_1 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| values ("110.484, 110.484, 110.484, 110.484, 110.484, 110.484, 110.484"); |
| } |
| } |
| /* 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 ("2.05009e-05, 2.05009e-05, 2.05009e-05, 2.05009e-05, 2.05009e-05, 2.05009e-05, 2.05009e-05"); |
| } |
| fall_power(power_template) { |
| index_1 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| values ("2.05009e-05, 2.05009e-05, 2.05009e-05, 2.05009e-05, 2.05009e-05, 2.05009e-05, 2.05009e-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 ("100.495, 100.495, 100.495, 100.495, 100.495, 100.495, 100.495"); |
| } |
| fall_power(power_template) { |
| index_1 ("0.02, 0.06127, 0.2062, 0.4828, 0.9139, 1.519, 2.315"); |
| values ("100.495, 100.495, 100.495, 100.495, 100.495, 100.495, 100.495"); |
| } |
| } |
| } |
| |
| 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.0167148; |
| 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.799073, 0.791703, 0.790317, 0.835483, 0.939268, 1.09337, 1.25111", \ |
| "0.786709, 0.782683, 0.780373, 0.825528, 0.929313, 1.08342, 1.24116", \ |
| "0.755106, 0.747516, 0.747868, 0.793034, 0.896819, 1.05093, 1.20866", \ |
| "0.706915, 0.702207, 0.69773, 0.742951, 0.838035, 0.989868, 1.14792", \ |
| "0.70719, 0.700601, 0.699347, 0.742775, 0.837859, 0.969463, 1.08209", \ |
| "0.706596, 0.699446, 0.699204, 0.742621, 0.837716, 0.969309, 1.06754", \ |
| "0.706508, 0.699127, 0.699908, 0.742533, 0.83776, 0.955768, 1.05199" \ |
| ) |
| } |
| 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.653807, 0.662838, 0.692428, 0.763169, 0.88385, 1.05678, 1.26009", \ |
| "0.65065, 0.658086, 0.689337, 0.758846, 0.880066, 1.05339, 1.25015", \ |
| "0.650474, 0.657921, 0.689161, 0.75867, 0.87989, 1.05322, 1.24958", \ |
| "0.650001, 0.657503, 0.688611, 0.758208, 0.879428, 1.05276, 1.24912", \ |
| "0.650276, 0.657261, 0.688446, 0.758021, 0.879252, 1.05256, 1.24893", \ |
| "0.649715, 0.657107, 0.688303, 0.757878, 0.879109, 1.05243, 1.24879", \ |
| "0.649715, 0.657107, 0.68827, 0.75779, 0.87901, 1.05234, 1.2487" \ |
| ) |
| } |
| } |
| 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.00123, 2.00926, 2.00904, 1.96559, 1.87055, 1.73899, 1.64076", \ |
| "2.00552, 2.01003, 2.01113, 1.96768, 1.87264, 1.74097, 1.64285", \ |
| "2.04226, 2.04941, 2.04963, 2.00618, 1.91114, 1.77947, 1.68135", \ |
| "2.10914, 2.11387, 2.11838, 2.07317, 1.97802, 1.84646, 1.74823", \ |
| "2.20803, 2.21463, 2.21584, 2.17239, 2.07735, 1.94568, 1.84756", \ |
| "2.34553, 2.35268, 2.3529, 2.30945, 2.21441, 2.08274, 1.98451", \ |
| "2.48237, 2.48974, 2.48897, 2.4464, 2.35114, 2.23311, 2.13697" \ |
| ) |
| } |
| 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.05854, 2.05117, 2.01993, 1.95041, 1.82919, 1.65583, 1.45948", \ |
| "2.06063, 2.05315, 2.02191, 1.95239, 1.83117, 1.65792, 1.46157", \ |
| "2.09913, 2.09176, 2.06052, 1.991, 1.86978, 1.69642, 1.50007", \ |
| "2.16612, 2.15853, 2.12751, 2.05788, 1.93666, 1.7633, 1.56695", \ |
| "2.2649, 2.25797, 2.22673, 2.15721, 2.03588, 1.86263, 1.66628", \ |
| "2.4024, 2.39503, 2.36379, 2.29416, 2.17294, 1.99969, 1.80334", \ |
| "2.53924, 2.53176, 2.50063, 2.43111, 2.30989, 2.13653, 1.94018" \ |
| ) |
| } |
| } |
| } |
| pin(GWEN) { |
| direction : input; |
| capacitance : 0.0441618; |
| 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.00397, 1.01665, 1.04481, 1.10547, 1.20429, 1.31659, 1.43088", \ |
| "0.991584, 1.00088, 1.03312, 1.09359, 1.19206, 1.30431, 1.41878", \ |
| "0.967593, 0.976723, 1.00839, 1.06903, 1.1679, 1.28017, 1.39447", \ |
| "0.902946, 0.915662, 0.943899, 1.00455, 1.10342, 1.21622, 1.33001", \ |
| "0.81939, 0.831358, 0.860926, 0.920986, 1.01984, 1.13347, 1.24713", \ |
| "0.735427, 0.7447, 0.776534, 0.837034, 0.935231, 1.04816, 1.16269", \ |
| "0.673563, 0.681538, 0.713218, 0.773872, 0.87274, 0.984995, 1.10002" \ |
| ) |
| } |
| 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.18814, 1.19812, 1.23835, 1.31156, 1.44408, 1.6225, 1.83997", \ |
| "1.17646, 1.18639, 1.22278, 1.29929, 1.43187, 1.61018, 1.82765", \ |
| "1.15171, 1.16225, 1.20331, 1.27513, 1.40767, 1.58609, 1.80356", \ |
| "1.08782, 1.09778, 1.13743, 1.21065, 1.34321, 1.52163, 1.7391", \ |
| "1.00423, 1.01655, 1.05057, 1.12708, 1.25962, 1.43979, 1.6555", \ |
| "0.920282, 0.932602, 0.969914, 1.04313, 1.17548, 1.35575, 1.57157", \ |
| "0.857428, 0.86944, 0.906752, 0.979968, 1.11251, 1.29263, 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.3035, 1.29616, 1.26553, 1.20487, 1.12552, 1.06055, 1.00511", \ |
| "1.3046, 1.29841, 1.26566, 1.2061, 1.12566, 1.0607, 1.00521", \ |
| "1.32825, 1.32297, 1.29028, 1.22962, 1.15027, 1.08532, 1.02988", \ |
| "1.36422, 1.35575, 1.32528, 1.26458, 1.18523, 1.12041, 1.06483", \ |
| "1.41647, 1.408, 1.37753, 1.31691, 1.23756, 1.17246, 1.11531", \ |
| "1.46597, 1.45981, 1.42604, 1.36642, 1.28708, 1.21978, 1.16607", \ |
| "1.51679, 1.51041, 1.47774, 1.41702, 1.33771, 1.27272, 1.21544" \ |
| ) |
| } |
| 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.669097, 0.658361, 0.623238, 0.538241, 0.417285, 0.238611, 0.040909", \ |
| "0.669251, 0.65263, 0.62337, 0.538395, 0.417461, 0.238662, 0.041052", \ |
| "0.693858, 0.677248, 0.64691, 0.563255, 0.44209, 0.263309, 0.065659", \ |
| "0.728904, 0.712195, 0.681868, 0.59796, 0.477048, 0.298268, 0.100617", \ |
| "0.781132, 0.764434, 0.734173, 0.649583, 0.529364, 0.353639, 0.152923", \ |
| "0.830643, 0.813945, 0.783805, 0.70004, 0.578853, 0.40315, 0.202442", \ |
| "0.881111, 0.864655, 0.834306, 0.750398, 0.629497, 0.453772, 0.253059" \ |
| ) |
| } |
| } |
| } |
| 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.045034, 0.113004, 0.169147", \ |
| "0, 0, 0, 0, 0.043285, 0.111221, 0.167363", \ |
| "0, 0, 0, 0, 0.018711, 0.086658, 0.142794", \ |
| "0, 0, 0, 0, 0, 0.05357, 0.109714", \ |
| "0, 0, 0, 0, 0, 0.001386, 0.05753", \ |
| "0, 0, 0, 0, 0, 0, 0.008349", \ |
| "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.500764, 0.509762, 0.547668, 0.630355, 0.753665, 0.929588, 1.1277", \ |
| "0.498993, 0.517165, 0.545897, 0.628595, 0.752147, 0.927872, 1.12593", \ |
| "0.475167, 0.492591, 0.521323, 0.6039, 0.7271, 0.902495, 1.10135", \ |
| "0.441672, 0.45958, 0.488235, 0.570944, 0.694496, 0.870353, 1.06807", \ |
| "0.390038, 0.407374, 0.436062, 0.517957, 0.642312, 0.814352, 1.01632", \ |
| "0.339955, 0.354266, 0.386771, 0.468765, 0.59312, 0.76472, 0.966922", \ |
| "0.291543, 0.308544, 0.337304, 0.41921, 0.54307, 0.714978, 0.916927" \ |
| ) |
| } |
| } |
| 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.30792, 1.29878, 1.26896, 1.20823, 1.13304, 1.06055, 1.00511", \ |
| "1.30804, 1.2989, 1.26909, 1.20835, 1.13318, 1.0607, 1.00521", \ |
| "1.33265, 1.32352, 1.2937, 1.23296, 1.15778, 1.08532, 1.02988", \ |
| "1.36763, 1.3585, 1.32869, 1.26794, 1.19275, 1.12041, 1.06483", \ |
| "1.41999, 1.41086, 1.38105, 1.32022, 1.24509, 1.17246, 1.11664", \ |
| "1.46949, 1.46036, 1.43055, 1.36972, 1.29458, 1.2211, 1.16612", \ |
| "1.52009, 1.51096, 1.48115, 1.42043, 1.34519, 1.27272, 1.21677" \ |
| ) |
| } |
| 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.669097, 0.658361, 0.623238, 0.538241, 0.417285, 0.238611, 0.041591", \ |
| "0.669251, 0.65263, 0.62337, 0.538395, 0.417461, 0.238662, 0.041756", \ |
| "0.693858, 0.677248, 0.64691, 0.563255, 0.44209, 0.263309, 0.066363", \ |
| "0.728904, 0.712195, 0.681868, 0.59796, 0.477048, 0.298268, 0.101343", \ |
| "0.781132, 0.764434, 0.734173, 0.649583, 0.529364, 0.353639, 0.153658", \ |
| "0.830643, 0.813945, 0.783805, 0.70004, 0.578853, 0.40315, 0.20316", \ |
| "0.881111, 0.864655, 0.834306, 0.750398, 0.629497, 0.453772, 0.253801" \ |
| ) |
| } |
| } |
| } |
| bus(A) { |
| bus_type : A_BUS; |
| direction : input; |
| capacitance : 0.0319286; |
| 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.01628, 1.01552, 1.02306, 1.0628, 1.15176, 1.29752, 1.44903", \ |
| "1.01361, 1.01372, 1.01922, 1.06105, 1.15091, 1.29609, 1.44419", \ |
| "0.990033, 0.991265, 0.998591, 1.03612, 1.12717, 1.27199, 1.42461", \ |
| "0.959871, 0.957616, 0.969364, 1.00428, 1.0925, 1.23207, 1.3904", \ |
| "0.90684, 0.900031, 0.911141, 0.950895, 1.04121, 1.18438, 1.33628", \ |
| "0.852632, 0.852379, 0.860816, 0.899635, 0.98967, 1.13368, 1.28275", \ |
| "0.801955, 0.803462, 0.808423, 0.850377, 0.939433, 1.08481, 1.22903" \ |
| ) |
| } |
| 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.12435, 1.12653, 1.15418, 1.23105, 1.35047, 1.52328, 1.73327", \ |
| "1.1162, 1.12974, 1.15331, 1.23017, 1.3497, 1.52339, 1.73415", \ |
| "1.09772, 1.10505, 1.12972, 1.20284, 1.32594, 1.50128, 1.70918", \ |
| "1.06202, 1.07127, 1.09598, 1.17222, 1.29292, 1.46201, 1.67497", \ |
| "1.0142, 1.02025, 1.0437, 1.11933, 1.2399, 1.41119, 1.62448", \ |
| "0.962181, 0.963061, 0.991012, 1.06691, 1.18432, 1.35982, 1.57102", \ |
| "0.893915, 0.916003, 0.941655, 1.01846, 1.13793, 1.31176, 1.52273" \ |
| ) |
| } |
| } |
| 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.758252, 0.763092, 0.746768, 0.7029, 0.628166, 0.534721, 0.426558", \ |
| "0.770033, 0.767382, 0.756877, 0.713009, 0.638264, 0.544819, 0.436689", \ |
| "0.795223, 0.792572, 0.782067, 0.738188, 0.663454, 0.570009, 0.461879", \ |
| "0.859639, 0.862796, 0.846164, 0.802615, 0.727969, 0.634425, 0.526295", \ |
| "0.948288, 0.951401, 0.935132, 0.891253, 0.816519, 0.723074, 0.611226", \ |
| "1.0734, 1.07007, 1.05955, 1.01568, 0.94094, 0.847495, 0.738661", \ |
| "1.1863, 1.18945, 1.17313, 1.12926, 1.05453, 0.961081, 0.849222" \ |
| ) |
| } |
| 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.838552, 0.830907, 0.798578, 0.738881, 0.674564, 0.605473, 0.537702", \ |
| "0.849651, 0.841225, 0.808676, 0.74899, 0.684662, 0.614526, 0.547415", \ |
| "0.874841, 0.866415, 0.833866, 0.77418, 0.709852, 0.639705, 0.572154", \ |
| "0.938377, 0.930688, 0.898282, 0.838596, 0.774268, 0.704121, 0.637406", \ |
| "1.02715, 1.01948, 0.986931, 0.927245, 0.862917, 0.79277, 0.726066", \ |
| "1.15154, 1.14441, 1.11136, 1.05167, 0.987349, 0.917213, 0.849662", \ |
| "1.26591, 1.25871, 1.22494, 1.16524, 1.10092, 1.03079, 0.963237" \ |
| ) |
| } |
| } |
| } |
| bus(D) { |
| bus_type : Q_BUS; |
| memory_write() { |
| address : A; |
| clocked_on : "CLK"; |
| } |
| direction : input; |
| capacitance : 0.0153038; |
| 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.936804, 0.942304, 0.97328, 1.02963, 1.05987, 1.06949, 1.0658", \ |
| "0.935594, 0.948849, 0.974732, 1.02306, 1.05907, 1.06677, 1.05826", \ |
| "0.908083, 0.919611, 0.948739, 1.00387, 1.0418, 1.04398, 1.04126", \ |
| "0.880352, 0.886721, 0.918907, 0.963391, 1.00175, 1.01066, 1.00736", \ |
| "0.826331, 0.836407, 0.86636, 0.914771, 0.955724, 0.957044, 0.953799", \ |
| "0.770748, 0.782859, 0.814, 0.866382, 0.89903, 0.909062, 0.898414", \ |
| "0.726374, 0.734613, 0.765611, 0.815969, 0.838068, 0.860134, 0.852874" \ |
| ) |
| } |
| 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.189886, 0.189164, 0.223178, 0.301411, 0.425161, 0.603394, 0.79739", \ |
| "0.188835, 0.188096, 0.222119, 0.300361, 0.424149, 0.602624, 0.796334", \ |
| "0.165397, 0.164662, 0.198734, 0.27692, 0.400664, 0.579183, 0.772893", \ |
| "0.131859, 0.130856, 0.164956, 0.243146, 0.366938, 0.545413, 0.738848", \ |
| "0.079486, 0.078606, 0.112666, 0.19085, 0.314598, 0.493119, 0.686829", \ |
| "0.026719, 0.025883, 0.059961, 0.138152, 0.261902, 0.440418, 0.633985", \ |
| "0, 0, 0.010604, 0.088792, 0.212539, 0.39105, 0.584485" \ |
| ) |
| } |
| } |
| 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.54912, 0.534039, 0.510268, 0.459382, 0.424501, 0.412049, 0.403788", \ |
| "0.551089, 0.53889, 0.512347, 0.463441, 0.425293, 0.416108, 0.413006", \ |
| "0.575124, 0.563684, 0.535733, 0.484836, 0.446688, 0.437514, 0.429264", \ |
| "0.606276, 0.599907, 0.567325, 0.51876, 0.483879, 0.471438, 0.463177", \ |
| "0.658812, 0.650012, 0.620642, 0.571087, 0.533159, 0.523985, 0.515724", \ |
| "0.709511, 0.700678, 0.671209, 0.62128, 0.586795, 0.574475, 0.569811", \ |
| "0.761486, 0.751905, 0.721468, 0.672892, 0.634755, 0.625944, 0.61732" \ |
| ) |
| } |
| 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.03909, 1.0416, 1.00568, 0.929555, 0.805662, 0.629057, 0.436183", \ |
| "1.04316, 1.04565, 1.00975, 0.933614, 0.809721, 0.633127, 0.440242", \ |
| "1.06456, 1.06702, 1.03115, 0.95502, 0.831127, 0.654522, 0.461648", \ |
| "1.09838, 1.10098, 1.06506, 0.988933, 0.86504, 0.688446, 0.495561", \ |
| "1.15101, 1.15349, 1.11761, 1.04148, 0.917587, 0.740982, 0.548108", \ |
| "1.20155, 1.20402, 1.16811, 1.09198, 0.968088, 0.791494, 0.598609", \ |
| "1.25263, 1.25509, 1.21921, 1.14308, 1.01918, 0.842578, 0.649704" \ |
| ) |
| } |
| } |
| } |
| cell_leakage_power : 2.050092e-05; |
| } |
| } |