| /* |
| * 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__tt_025C_5v00) { |
| 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 : 25; |
| nom_voltage : 5.0; |
| 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 : 1.547; |
| 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, 5.0); |
| voltage_map (VSS, 0.00); |
| operating_conditions(tt_5p0v_25C) { |
| process : 1; |
| temperature : 25; |
| voltage : 5.0; |
| tree_type : balanced_tree; |
| } |
| |
| default_operating_conditions : tt_5p0v_25C; |
| 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 : 1.119; |
| 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.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| index_2 ("0.01, 0.02994, 0.09995, 0.2336, 0.4419, 0.7342, 1.119"); |
| values ( \ |
| "4.33896, 4.35132, 4.40988, 4.51488, 4.66608, 4.86756, 5.13084", \ |
| "4.34136, 4.35672, 4.41456, 4.51344, 4.66164, 4.86408, 5.13312", \ |
| "4.34544, 4.36488, 4.4232, 4.52328, 4.67148, 4.8756, 5.14512", \ |
| "4.34772, 4.36932, 4.42752, 4.52484, 4.67412, 4.87764, 5.14692", \ |
| "4.36032, 4.37544, 4.43244, 4.53564, 4.68432, 4.88616, 5.15808", \ |
| "4.36296, 4.38216, 4.4382, 4.53948, 4.68804, 4.89228, 5.16204", \ |
| "4.35372, 4.37304, 4.43364, 4.53216, 4.6782, 4.88568, 5.14992" \ |
| ) |
| } |
| rise_transition(q_slew_template) { |
| index_1 ("0.01, 0.02994, 0.09995, 0.2336, 0.4419, 0.7342, 1.119"); |
| values ( \ |
| "0.167808, 0.194952, 0.293964, 0.472872, 0.761352, 1.18285, 1.73856" \ |
| ) |
| |
| } |
| cell_fall(q_delay_template) { |
| index_1 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| index_2 ("0.01, 0.02994, 0.09995, 0.2336, 0.4419, 0.7342, 1.119"); |
| values ( \ |
| "4.48224, 4.49652, 4.55232, 4.65072, 4.77528, 4.92168, 5.11008", \ |
| "4.48332, 4.50084, 4.5576, 4.65012, 4.7688, 4.92072, 5.11428", \ |
| "4.48908, 4.50816, 4.56792, 4.65564, 4.77864, 4.93116, 5.12376", \ |
| "4.49136, 4.51068, 4.57248, 4.65984, 4.78164, 4.93344, 5.12652", \ |
| "4.50468, 4.5198, 4.575, 4.67088, 4.791, 4.94136, 5.13912", \ |
| "4.50516, 4.52556, 4.58376, 4.67616, 4.79544, 4.94724, 5.13996", \ |
| "4.497, 4.51572, 4.5768, 4.6668, 4.7856, 4.941, 5.12892" \ |
| ) |
| } |
| fall_transition(q_slew_template) { |
| index_1 ("0.01, 0.02994, 0.09995, 0.2336, 0.4419, 0.7342, 1.119"); |
| values ( \ |
| "0.174024, 0.199356, 0.261744, 0.381132, 0.545808, 0.787848, 1.10224" \ |
| ) |
| } |
| } |
| } |
| pin(CLK) { |
| direction : input; |
| capacitance : 0.296201; |
| clock : true; |
| max_transition : 1.547; |
| min_pulse_width_high : 2.231475; |
| min_pulse_width_low : 2.53974; |
| min_period : 5.74725; |
| |
| /* 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.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| values ("859.2, 859.2, 859.2, 859.2, 859.2, 859.2, 859.2"); |
| } |
| fall_power(power_template) { |
| index_1 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| values ("859.2, 859.2, 859.2, 859.2, 859.2, 859.2, 859.2"); |
| } |
| } |
| /* DISABLED POWER */ |
| internal_power() { |
| when : "CEN"; |
| rise_power(power_template) { |
| index_1 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| values ("0.00013216, 0.00013216, 0.00013216, 0.00013216, 0.00013216, 0.00013216, 0.00013216"); |
| } |
| fall_power(power_template) { |
| index_1 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| values ("0.00013216, 0.00013216, 0.00013216, 0.00013216, 0.00013216, 0.00013216, 0.00013216"); |
| } |
| } |
| /* READ POWER */ |
| internal_power() { |
| when : "!CEN & GWEN"; |
| rise_power(power_template) { |
| index_1 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| values ("770.85, 770.85, 770.85, 770.85, 770.85, 770.85, 770.85"); |
| } |
| fall_power(power_template) { |
| index_1 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| values ("770.85, 770.85, 770.85, 770.85, 770.85, 770.85, 770.85"); |
| } |
| } |
| } |
| |
| 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.0176988; |
| timing() { |
| related_pin : CLK; |
| timing_type : setup_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| index_2 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| values ( \ |
| "0.435171, 0.430936, 0.423456, 0.43043, 0.454883, 0.491634, 0.520333", \ |
| "0.434071, 0.429264, 0.422466, 0.429517, 0.453794, 0.484033, 0.520949", \ |
| "0.433598, 0.428494, 0.421476, 0.428406, 0.450923, 0.473385, 0.507518", \ |
| "0.432982, 0.428483, 0.421256, 0.42834, 0.453695, 0.473176, 0.493779", \ |
| "0.43307, 0.428494, 0.420937, 0.427999, 0.4488, 0.472846, 0.493944", \ |
| "0.432784, 0.427548, 0.420805, 0.427493, 0.448272, 0.472582, 0.493185", \ |
| "0.432861, 0.427625, 0.420409, 0.427471, 0.447931, 0.472318, 0.493537" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| index_2 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| values ( \ |
| "0.405812, 0.408276, 0.418506, 0.443531, 0.495495, 0.55847, 0.629145", \ |
| "0.404888, 0.407198, 0.417571, 0.442431, 0.494483, 0.557458, 0.628144", \ |
| "0.40392, 0.406274, 0.416515, 0.441738, 0.493053, 0.55517, 0.627176", \ |
| "0.403788, 0.406362, 0.416328, 0.441254, 0.492877, 0.554972, 0.626967", \ |
| "0.403205, 0.405735, 0.415822, 0.440913, 0.492954, 0.557018, 0.626626", \ |
| "0.403029, 0.40546, 0.4158, 0.440935, 0.49269, 0.555687, 0.626373", \ |
| "0.402919, 0.405196, 0.415525, 0.44066, 0.492415, 0.554092, 0.624921" \ |
| ) |
| } |
| } |
| timing() { |
| related_pin : CLK; |
| timing_type : hold_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| index_2 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| values ( \ |
| "1.10821, 1.11244, 1.11991, 1.11295, 1.08855, 1.06578, 1.0474", \ |
| "1.1134, 1.11821, 1.125, 1.11795, 1.09368, 1.07374, 1.05203", \ |
| "1.12774, 1.13285, 1.13986, 1.13293, 1.11042, 1.08796, 1.06736", \ |
| "1.15423, 1.15873, 1.16596, 1.15887, 1.13352, 1.11403, 1.09342", \ |
| "1.19512, 1.19969, 1.20725, 1.20019, 1.17938, 1.15534, 1.13423", \ |
| "1.22751, 1.23275, 1.23949, 1.23281, 1.21202, 1.18773, 1.16712", \ |
| "1.25914, 1.26437, 1.2716, 1.26454, 1.24407, 1.21969, 1.19908" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| index_2 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| values ( \ |
| "1.13756, 1.1351, 1.12487, 1.09985, 1.04788, 0.984896, 0.914221", \ |
| "1.14258, 1.14027, 1.1299, 1.10504, 1.05299, 0.990011, 0.919325", \ |
| "1.15742, 1.15507, 1.14483, 1.1196, 1.06829, 1.00617, 0.934164", \ |
| "1.18342, 1.18085, 1.17088, 1.14595, 1.09434, 1.03223, 0.960245", \ |
| "1.22498, 1.22245, 1.21237, 1.18727, 1.13523, 1.07117, 1.00156", \ |
| "1.25728, 1.25484, 1.2445, 1.21937, 1.16761, 1.10462, 1.03393", \ |
| "1.28909, 1.28678, 1.27644, 1.25135, 1.19959, 1.13792, 1.06709" \ |
| ) |
| } |
| } |
| } |
| pin(GWEN) { |
| direction : input; |
| capacitance : 0.0496735; |
| timing() { |
| related_pin : CLK; |
| timing_type : setup_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| index_2 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| values ( \ |
| "0.592042, 0.596134, 0.607849, 0.633974, 0.678634, 0.734019, 0.79035", \ |
| "0.588511, 0.593076, 0.604516, 0.632159, 0.675312, 0.732347, 0.788689", \ |
| "0.577082, 0.580602, 0.592064, 0.618673, 0.662651, 0.719697, 0.775181", \ |
| "0.550737, 0.554224, 0.566555, 0.594418, 0.63855, 0.69355, 0.751388", \ |
| "0.506374, 0.511027, 0.522511, 0.548757, 0.59345, 0.64988, 0.706541", \ |
| "0.467984, 0.472417, 0.483505, 0.511676, 0.554763, 0.611578, 0.667018", \ |
| "0.431024, 0.435644, 0.446578, 0.473286, 0.517968, 0.57475, 0.630058" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| index_2 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| values ( \ |
| "0.62997, 0.633622, 0.652201, 0.691196, 0.757251, 0.849068, 0.953876", \ |
| "0.626736, 0.630311, 0.648736, 0.687929, 0.753907, 0.8448, 0.951016", \ |
| "0.614295, 0.617551, 0.636174, 0.675598, 0.74327, 0.832788, 0.938091", \ |
| "0.588643, 0.592691, 0.611017, 0.649902, 0.717761, 0.807741, 0.912593", \ |
| "0.544797, 0.548471, 0.566357, 0.605869, 0.67188, 0.763708, 0.868538", \ |
| "0.506297, 0.509674, 0.528077, 0.567215, 0.633611, 0.72512, 0.829917", \ |
| "0.469106, 0.472538, 0.491249, 0.529045, 0.596442, 0.688226, 0.793628" \ |
| ) |
| } |
| } |
| timing() { |
| related_pin : CLK; |
| timing_type : hold_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| index_2 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| values ( \ |
| "0.828894, 0.827673, 0.816904, 0.790383, 0.759693, 0.734019, 0.714857", \ |
| "0.831897, 0.831094, 0.820182, 0.793463, 0.762894, 0.737099, 0.718916", \ |
| "0.834702, 0.833569, 0.822734, 0.797049, 0.765666, 0.739904, 0.721116", \ |
| "0.836913, 0.836066, 0.824901, 0.798457, 0.767261, 0.741906, 0.723382", \ |
| "0.846626, 0.845449, 0.834537, 0.807807, 0.777348, 0.751421, 0.733865", \ |
| "0.848045, 0.846978, 0.836308, 0.809578, 0.778899, 0.753313, 0.734536", \ |
| "0.84161, 0.840576, 0.829697, 0.802978, 0.772398, 0.746867, 0.72809" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| index_2 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| values ( \ |
| "0.456016, 0.453904, 0.433037, 0.39457, 0.328977, 0.245101, 0.140307", \ |
| "0.459844, 0.457347, 0.43846, 0.396341, 0.332717, 0.251548, 0.145013", \ |
| "0.462099, 0.458964, 0.440902, 0.399014, 0.33308, 0.250841, 0.146285", \ |
| "0.466895, 0.462473, 0.443267, 0.402996, 0.335995, 0.252954, 0.148587", \ |
| "0.474551, 0.470998, 0.453057, 0.41239, 0.347039, 0.261555, 0.157792", \ |
| "0.519288, 0.516373, 0.49731, 0.458469, 0.389279, 0.299871, 0.200858", \ |
| "0.575641, 0.572044, 0.55363, 0.514789, 0.445841, 0.356235, 0.256696" \ |
| ) |
| } |
| } |
| } |
| bus(WEN) { |
| bus_type : Q_BUS; |
| direction : input; |
| capacitance : 0.00784667; |
| timing() { |
| related_pin : CLK; |
| timing_type : setup_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| index_2 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| values ( \ |
| "0, 0, 0, 0, 0, 0, 0.01738", \ |
| "0, 0, 0, 0, 0, 0, 0.012826", \ |
| "0, 0, 0, 0, 0, 0, 0.010505", \ |
| "0, 0, 0, 0, 0, 0, 0.007733", \ |
| "0, 0, 0, 0, 0, 0, 0", \ |
| "0, 0, 0, 0, 0, 0, 0", \ |
| "0, 0, 0, 0, 0, 0, 0.002772" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| index_2 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| values ( \ |
| "0.271942, 0.275088, 0.296549, 0.334895, 0.400345, 0.484352, 0.589402", \ |
| "0.270437, 0.272291, 0.291665, 0.333311, 0.396935, 0.478698, 0.584463", \ |
| "0.267154, 0.269927, 0.288508, 0.329538, 0.395285, 0.477752, 0.582153", \ |
| "0.261292, 0.266269, 0.285681, 0.326007, 0.392029, 0.47575, 0.580107", \ |
| "0.253979, 0.257474, 0.275627, 0.316096, 0.381205, 0.466147, 0.570471", \ |
| "0.252503, 0.255201, 0.274164, 0.314765, 0.38005, 0.464827, 0.568524", \ |
| "0.25903, 0.26091, 0.280896, 0.322564, 0.385748, 0.469502, 0.574024" \ |
| ) |
| } |
| } |
| timing() { |
| related_pin : CLK; |
| timing_type : hold_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| index_2 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| values ( \ |
| "0.828894, 0.827992, 0.81719, 0.791362, 0.760573, 0.734019, 0.71511", \ |
| "0.831897, 0.831248, 0.820435, 0.794607, 0.763818, 0.737099, 0.718916", \ |
| "0.834702, 0.833767, 0.822954, 0.797126, 0.766337, 0.739904, 0.721116", \ |
| "0.836913, 0.836066, 0.825253, 0.799425, 0.768647, 0.741906, 0.723382", \ |
| "0.846626, 0.845548, 0.834735, 0.808907, 0.778118, 0.751421, 0.733865", \ |
| "0.848045, 0.847385, 0.836572, 0.810744, 0.779955, 0.753313, 0.734536", \ |
| "0.84161, 0.840719, 0.829906, 0.804078, 0.773289, 0.746867, 0.72809" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| index_2 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| values ( \ |
| "0.456104, 0.453959, 0.433125, 0.394625, 0.328977, 0.24522, 0.140454", \ |
| "0.459844, 0.457347, 0.43846, 0.396341, 0.332717, 0.251548, 0.145013", \ |
| "0.462154, 0.458964, 0.440902, 0.399014, 0.33308, 0.251258, 0.146285", \ |
| "0.466895, 0.462473, 0.443267, 0.402996, 0.335995, 0.253002, 0.148587", \ |
| "0.474573, 0.470998, 0.453057, 0.41239, 0.347039, 0.261907, 0.157792", \ |
| "0.477466, 0.473374, 0.454113, 0.414172, 0.348711, 0.264317, 0.159833", \ |
| "0.468523, 0.467434, 0.447909, 0.405878, 0.341924, 0.258012, 0.153553" \ |
| ) |
| } |
| } |
| } |
| bus(A) { |
| bus_type : A_BUS; |
| direction : input; |
| capacitance : 0.0345188; |
| timing() { |
| related_pin : CLK; |
| timing_type : setup_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| index_2 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| values ( \ |
| "0.536998, 0.531641, 0.529408, 0.535942, 0.568601, 0.602668, 0.630817", \ |
| "0.533819, 0.529551, 0.525547, 0.534523, 0.565763, 0.594495, 0.624844", \ |
| "0.530101, 0.524557, 0.522522, 0.531212, 0.559823, 0.592856, 0.627308", \ |
| "0.527065, 0.522467, 0.520179, 0.528913, 0.557007, 0.58982, 0.625284", \ |
| "0.518342, 0.514239, 0.510972, 0.518221, 0.549615, 0.578336, 0.615109", \ |
| "0.515471, 0.512072, 0.508354, 0.516065, 0.542927, 0.575938, 0.613602", \ |
| "0.523457, 0.519189, 0.515119, 0.524172, 0.553696, 0.584969, 0.619773" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| index_2 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| values ( \ |
| "0.702658, 0.704154, 0.71632, 0.74536, 0.796521, 0.863599, 0.949454", \ |
| "0.699743, 0.700689, 0.713097, 0.742511, 0.79343, 0.85888, 0.946726", \ |
| "0.69597, 0.697565, 0.709588, 0.739211, 0.788799, 0.85503, 0.943162", \ |
| "0.693605, 0.695035, 0.706937, 0.736043, 0.78782, 0.852115, 0.940467", \ |
| "0.684123, 0.685795, 0.697389, 0.726451, 0.777832, 0.843062, 0.930578", \ |
| "0.681659, 0.68288, 0.696003, 0.724075, 0.776017, 0.840675, 0.928576", \ |
| "0.68871, 0.690129, 0.701877, 0.731214, 0.781869, 0.847264, 0.932481" \ |
| ) |
| } |
| } |
| timing() { |
| related_pin : CLK; |
| timing_type : hold_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| index_2 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| values ( \ |
| "0.527241, 0.530761, 0.533709, 0.531751, 0.531762, 0.530871, 0.529892", \ |
| "0.52932, 0.532895, 0.535854, 0.532455, 0.533907, 0.533203, 0.532565", \ |
| "0.541849, 0.545413, 0.548361, 0.546425, 0.546414, 0.545732, 0.544544", \ |
| "0.568029, 0.571516, 0.574508, 0.571109, 0.57277, 0.571857, 0.570636", \ |
| "0.609785, 0.613338, 0.616297, 0.612953, 0.614361, 0.613657, 0.613019", \ |
| "0.650617, 0.65417, 0.65714, 0.653741, 0.655193, 0.654489, 0.653312", \ |
| "0.686301, 0.689865, 0.692824, 0.689425, 0.690877, 0.690173, 0.688952" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| index_2 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| values ( \ |
| "0.541574, 0.539275, 0.527175, 0.509927, 0.506176, 0.51249, 0.520707", \ |
| "0.543708, 0.541618, 0.529309, 0.512072, 0.508321, 0.514195, 0.522841", \ |
| "0.556413, 0.553916, 0.541827, 0.524579, 0.521422, 0.526042, 0.535359", \ |
| "0.582362, 0.579975, 0.567952, 0.550715, 0.547558, 0.552178, 0.561495", \ |
| "0.624151, 0.621852, 0.609752, 0.592515, 0.588764, 0.593978, 0.603284", \ |
| "0.664994, 0.662629, 0.650584, 0.633347, 0.629596, 0.635899, 0.644127", \ |
| "0.700678, 0.698368, 0.686268, 0.669031, 0.665291, 0.670956, 0.679811" \ |
| ) |
| } |
| } |
| } |
| bus(D) { |
| bus_type : Q_BUS; |
| memory_write() { |
| address : A; |
| clocked_on : "CLK"; |
| } |
| direction : input; |
| capacitance : 0.0165528; |
| timing() { |
| related_pin : CLK; |
| timing_type : setup_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| index_2 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| values ( \ |
| "0.489214, 0.494032, 0.504383, 0.514767, 0.510873, 0.492613, 0.455279", \ |
| "0.486453, 0.487784, 0.5005, 0.510851, 0.506, 0.488213, 0.450659", \ |
| "0.48367, 0.487949, 0.4972, 0.507496, 0.504955, 0.485562, 0.447942", \ |
| "0.478401, 0.484198, 0.495451, 0.506506, 0.501413, 0.48312, 0.445016", \ |
| "0.470976, 0.475574, 0.485287, 0.495792, 0.490633, 0.473187, 0.435963", \ |
| "0.468105, 0.472758, 0.484682, 0.493141, 0.489566, 0.471592, 0.433235", \ |
| "0.476036, 0.47971, 0.488708, 0.500764, 0.496331, 0.477785, 0.440814" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| index_2 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| values ( \ |
| "0.123371, 0.122927, 0.140974, 0.191029, 0.269281, 0.370645, 0.500654", \ |
| "0.120003, 0.120086, 0.137804, 0.18863, 0.265797, 0.368005, 0.497574", \ |
| "0.11758, 0.116816, 0.13451, 0.18531, 0.262939, 0.36498, 0.494208", \ |
| "0.113442, 0.113651, 0.132216, 0.1804, 0.259961, 0.361724, 0.491678", \ |
| "0.106263, 0.10471, 0.122416, 0.172471, 0.25038, 0.352858, 0.48235", \ |
| "0.10365, 0.101247, 0.120039, 0.168459, 0.248034, 0.3498, 0.479765", \ |
| "0.110651, 0.108219, 0.126817, 0.176068, 0.254785, 0.356554, 0.486728" \ |
| ) |
| } |
| } |
| timing() { |
| related_pin : CLK; |
| timing_type : hold_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| index_2 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| values ( \ |
| "0.451759, 0.449251, 0.438988, 0.42812, 0.431882, 0.449933, 0.48741", \ |
| "0.456445, 0.453178, 0.440638, 0.430386, 0.435182, 0.454047, 0.490204", \ |
| "0.459536, 0.456005, 0.446622, 0.435446, 0.439648, 0.458711, 0.491656", \ |
| "0.462198, 0.457358, 0.448294, 0.436832, 0.440352, 0.46112, 0.495638", \ |
| "0.469788, 0.468853, 0.456577, 0.446644, 0.451627, 0.46937, 0.506825", \ |
| "0.473121, 0.469898, 0.459349, 0.449493, 0.454267, 0.471449, 0.50897", \ |
| "0.466587, 0.463573, 0.451825, 0.441892, 0.44759, 0.465894, 0.502348" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| index_2 ("0.02, 0.04747, 0.1439, 0.328, 0.6149, 1.017, 1.547"); |
| values ( \ |
| "0.643247, 0.643577, 0.625592, 0.575245, 0.497189, 0.396198, 0.267705", \ |
| "0.646371, 0.646591, 0.628529, 0.578798, 0.50061, 0.398706, 0.270644", \ |
| "0.649836, 0.651002, 0.632929, 0.583209, 0.504537, 0.403117, 0.275055", \ |
| "0.652696, 0.652894, 0.634832, 0.585112, 0.506924, 0.405449, 0.276958", \ |
| "0.660759, 0.662662, 0.644611, 0.594264, 0.516692, 0.414348, 0.286594", \ |
| "0.663575, 0.665236, 0.647174, 0.597454, 0.519266, 0.417791, 0.289289", \ |
| "0.656513, 0.658449, 0.640123, 0.590403, 0.512204, 0.410729, 0.282106" \ |
| ) |
| } |
| } |
| } |
| cell_leakage_power : 0.00013216; |
| } |
| } |