| /* |
| * 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_1v80) { |
| 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 : 1.8; |
| 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 : 4.617; |
| 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.8); |
| voltage_map (VSS, 0.00); |
| operating_conditions(tt_1p8v_25C) { |
| process : 1; |
| temperature : 25; |
| voltage : 1.8; |
| tree_type : balanced_tree; |
| } |
| |
| default_operating_conditions : tt_1p8v_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 : 0.9747; |
| 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.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| index_2 ("0.01, 0.02735, 0.08826, 0.2046, 0.3858, 0.6401, 0.9747"); |
| values ( \ |
| "15.2892, 15.3864, 15.5844, 15.9036, 16.4544, 17.0808, 17.988", \ |
| "15.3288, 15.3876, 15.6144, 15.9564, 16.4364, 17.1432, 18.006", \ |
| "15.3996, 15.4668, 15.6516, 16.0116, 16.5288, 17.232, 18.0852", \ |
| "15.4776, 15.5472, 15.7344, 16.0752, 16.6092, 17.2836, 18.216", \ |
| "15.636, 15.7104, 15.9648, 16.2948, 16.7556, 17.4888, 18.3792", \ |
| "15.8448, 15.9228, 16.1256, 16.452, 16.992, 17.6568, 18.5604", \ |
| "16.0992, 16.176, 16.3776, 16.686, 17.2152, 17.9064, 18.8148" \ |
| ) |
| } |
| rise_transition(q_slew_template) { |
| index_1 ("0.01, 0.02735, 0.08826, 0.2046, 0.3858, 0.6401, 0.9747"); |
| values ( \ |
| "0.501348, 0.588912, 0.879672, 1.43688, 2.34972, 3.63756, 5.35032" \ |
| ) |
| |
| } |
| cell_fall(q_delay_template) { |
| index_1 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| index_2 ("0.01, 0.02735, 0.08826, 0.2046, 0.3858, 0.6401, 0.9747"); |
| values ( \ |
| "16.1808, 16.2636, 16.4232, 16.638, 16.9908, 17.2752, 17.7192", \ |
| "16.2168, 16.2672, 16.452, 16.6848, 16.9776, 17.3544, 17.7276", \ |
| "16.2888, 16.356, 16.5072, 16.758, 17.0724, 17.4144, 17.8224", \ |
| "16.3668, 16.4244, 16.5924, 16.83, 17.1396, 17.4852, 17.9556", \ |
| "16.53, 16.5984, 16.8, 17.028, 17.2944, 17.676, 18.0948", \ |
| "16.722, 16.818, 16.9848, 17.2032, 17.544, 17.856, 18.2868", \ |
| "16.992, 17.0496, 17.214, 17.43, 17.7516, 18.1008, 18.5328" \ |
| ) |
| } |
| fall_transition(q_slew_template) { |
| index_1 ("0.01, 0.02735, 0.08826, 0.2046, 0.3858, 0.6401, 0.9747"); |
| values ( \ |
| "0.501756, 0.557112, 0.741972, 0.98592, 1.3518, 1.88208, 2.5596" \ |
| ) |
| } |
| } |
| } |
| pin(CLK) { |
| direction : input; |
| capacitance : 0.280919; |
| clock : true; |
| max_transition : 4.617; |
| min_pulse_width_high : 5.59182; |
| min_pulse_width_low : 9.346725; |
| min_period : 21.43875; |
| |
| /* 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.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| values ("92.043, 92.043, 92.043, 92.043, 92.043, 92.043, 92.043"); |
| } |
| fall_power(power_template) { |
| index_1 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| values ("92.043, 92.043, 92.043, 92.043, 92.043, 92.043, 92.043"); |
| } |
| } |
| /* DISABLED POWER */ |
| internal_power() { |
| when : "CEN"; |
| rise_power(power_template) { |
| index_1 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| values ("1.69949e-05, 1.69949e-05, 1.69949e-05, 1.69949e-05, 1.69949e-05, 1.69949e-05, 1.69949e-05"); |
| } |
| fall_power(power_template) { |
| index_1 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| values ("1.69949e-05, 1.69949e-05, 1.69949e-05, 1.69949e-05, 1.69949e-05, 1.69949e-05, 1.69949e-05"); |
| } |
| } |
| /* READ POWER */ |
| internal_power() { |
| when : "!CEN & GWEN"; |
| rise_power(power_template) { |
| index_1 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| values ("84.3399, 84.3399, 84.3399, 84.3399, 84.3399, 84.3399, 84.3399"); |
| } |
| fall_power(power_template) { |
| index_1 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| values ("84.3399, 84.3399, 84.3399, 84.3399, 84.3399, 84.3399, 84.3399"); |
| } |
| } |
| } |
| |
| 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.0177614; |
| timing() { |
| related_pin : CLK; |
| timing_type : setup_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| index_2 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| values ( \ |
| "1.56453, 1.53395, 1.52757, 1.67464, 1.92819, 2.3793, 2.88244", \ |
| "1.54495, 1.51899, 1.51338, 1.65451, 1.90465, 2.33398, 2.8699", \ |
| "1.45299, 1.44441, 1.46564, 1.58565, 1.83634, 2.26567, 2.80159", \ |
| "1.32396, 1.30898, 1.30052, 1.44056, 1.70621, 2.13697, 2.64407", \ |
| "1.3, 1.27498, 1.27621, 1.41603, 1.6742, 2.06767, 2.54859", \ |
| "1.29856, 1.28175, 1.29049, 1.41284, 1.67827, 2.06459, 2.57598", \ |
| "1.28942, 1.27794, 1.27675, 1.41163, 1.67805, 2.09264, 2.55376" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| index_2 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| values ( \ |
| "1.15313, 1.13939, 1.24235, 1.38776, 1.68256, 2.06195, 2.57191", \ |
| "1.1309, 1.11819, 1.22103, 1.36642, 1.66122, 2.0405, 2.55057", \ |
| "1.08078, 1.08013, 1.17107, 1.32583, 1.60908, 1.99177, 2.49139", \ |
| "1.07952, 1.09242, 1.17061, 1.32528, 1.60864, 1.99133, 2.49084", \ |
| "1.07878, 1.09139, 1.16948, 1.32418, 1.60754, 1.99012, 2.48974", \ |
| "1.07855, 1.07868, 1.16977, 1.32451, 1.6082, 1.99045, 2.49007", \ |
| "1.0782, 1.07782, 1.1689, 1.32352, 1.60699, 1.98957, 2.48919" \ |
| ) |
| } |
| } |
| timing() { |
| related_pin : CLK; |
| timing_type : hold_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| index_2 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| values ( \ |
| "3.82987, 3.85363, 3.8599, 3.71833, 3.45136, 3.03446, 2.56399", \ |
| "3.85341, 3.87101, 3.87816, 3.73692, 3.47897, 3.08572, 2.58522", \ |
| "3.93602, 3.94933, 3.93382, 3.80809, 3.5497, 3.15634, 2.65584", \ |
| "4.07099, 4.08386, 4.09178, 3.95604, 3.69754, 3.28108, 2.81281", \ |
| "4.32234, 4.34742, 4.34621, 4.2064, 3.94812, 3.55465, 3.07373", \ |
| "4.63254, 4.64926, 4.64057, 4.51825, 4.25282, 3.8665, 3.355", \ |
| "5.00874, 5.02018, 5.02139, 4.88653, 4.62011, 4.20552, 3.74451" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| index_2 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| values ( \ |
| "4.04932, 4.04987, 3.95868, 3.80402, 3.52066, 3.13797, 2.63835", \ |
| "4.0755, 4.07506, 3.98398, 3.82921, 3.54585, 3.16338, 2.66354", \ |
| "4.14491, 4.14557, 4.0546, 3.89983, 3.61658, 3.23389, 2.73427", \ |
| "4.28835, 4.27548, 4.19727, 4.04261, 3.75925, 3.37656, 2.87705", \ |
| "4.54355, 4.53101, 4.45291, 4.29825, 4.01478, 3.6322, 3.13258", \ |
| "4.85254, 4.85232, 4.76124, 4.60658, 4.32289, 3.94053, 3.44102", \ |
| "5.21994, 5.22038, 5.1293, 4.97464, 4.69117, 4.30859, 3.80897" \ |
| ) |
| } |
| } |
| } |
| pin(GWEN) { |
| direction : input; |
| capacitance : 0.0444991; |
| timing() { |
| related_pin : CLK; |
| timing_type : setup_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| index_2 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| values ( \ |
| "1.88485, 1.90212, 1.98297, 2.12608, 2.35444, 2.64429, 2.9656", \ |
| "1.86373, 1.88694, 1.96031, 2.10738, 2.33343, 2.61723, 2.94503", \ |
| "1.8018, 1.81313, 1.89365, 2.0394, 2.26545, 2.54936, 2.87727", \ |
| "1.65858, 1.67145, 1.74889, 1.89233, 2.12388, 2.41175, 2.73471", \ |
| "1.42087, 1.43814, 1.51481, 1.66419, 1.89035, 2.17448, 2.50228", \ |
| "1.20485, 1.22816, 1.30252, 1.44386, 1.672, 1.96603, 2.28723", \ |
| "0.979253, 1.00363, 1.07916, 1.21774, 1.44771, 1.74053, 2.06096" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| index_2 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| values ( \ |
| "2.41692, 2.43364, 2.52329, 2.70424, 2.98507, 3.36413, 3.89224", \ |
| "2.3958, 2.41274, 2.50228, 2.68323, 2.96945, 3.33861, 3.87299", \ |
| "2.32793, 2.34465, 2.43441, 2.61536, 2.89377, 3.27503, 3.80501", \ |
| "2.18603, 2.20297, 2.29262, 2.47357, 2.76001, 3.13346, 3.66355", \ |
| "1.95338, 1.96966, 2.05953, 2.24048, 2.5212, 2.90004, 3.43013", \ |
| "1.74108, 1.75384, 1.84349, 2.02422, 2.27645, 2.68411, 3.212", \ |
| "1.5015, 1.52834, 1.61821, 1.79894, 2.07988, 2.45883, 2.98881" \ |
| ) |
| } |
| } |
| timing() { |
| related_pin : CLK; |
| timing_type : hold_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| index_2 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| values ( \ |
| "2.56113, 2.55288, 2.46235, 2.33244, 2.12619, 1.91972, 1.73547", \ |
| "2.51933, 2.50349, 2.42011, 2.28646, 2.07999, 1.86538, 1.68806", \ |
| "2.4684, 2.46048, 2.36885, 2.23597, 2.0295, 1.81478, 1.63746", \ |
| "2.50943, 2.5014, 2.41175, 2.27689, 2.07042, 1.85185, 1.67915", \ |
| "2.64418, 2.63604, 2.54463, 2.41153, 2.20517, 1.99034, 1.81313", \ |
| "2.82711, 2.8116, 2.73119, 2.59259, 2.39184, 2.17888, 1.9954", \ |
| "3.01224, 2.99673, 2.91335, 2.77981, 2.57686, 2.35444, 2.1813" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| index_2 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| values ( \ |
| "1.26049, 1.24588, 1.1519, 0.984489, 0.694067, 0.316765, 0", \ |
| "1.22682, 1.20256, 1.10966, 0.942777, 0.652135, 0.280684, 0", \ |
| "1.17624, 1.15158, 1.05686, 0.89045, 0.603724, 0.22546, 0", \ |
| "1.21598, 1.19249, 1.09985, 0.93291, 0.64251, 0.265199, 0", \ |
| "1.35168, 1.32737, 1.23353, 1.0663, 0.777524, 0.401324, 0", \ |
| "1.53318, 1.51019, 1.41735, 1.2507, 0.990946, 0.583, 0.085591", \ |
| "1.71325, 1.69719, 1.60061, 1.43583, 1.14543, 0.768119, 0.269784" \ |
| ) |
| } |
| } |
| } |
| bus(WEN) { |
| bus_type : Q_BUS; |
| direction : input; |
| capacitance : 0.00715847; |
| timing() { |
| related_pin : CLK; |
| timing_type : setup_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| index_2 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| values ( \ |
| "0, 0, 0, 0, 0, 0.089045, 0.262931", \ |
| "0, 0, 0, 0, 0, 0.118061, 0.300218", \ |
| "0, 0, 0, 0, 0, 0.17046, 0.352605", \ |
| "0, 0, 0, 0, 0, 0.128631, 0.311594", \ |
| "0, 0, 0, 0, 0, 0, 0.177448", \ |
| "0, 0, 0, 0, 0, 0, 0", \ |
| "0, 0, 0, 0, 0, 0, 0" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| index_2 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| values ( \ |
| "0.718696, 0.73601, 0.832106, 0.995456, 1.28772, 1.66628, 2.16821", \ |
| "0.753247, 0.778767, 0.872586, 1.0407, 1.32869, 1.70137, 2.20407", \ |
| "0.804199, 0.830599, 0.932151, 1.09162, 1.37841, 1.7589, 2.25643", \ |
| "0.761728, 0.782914, 0.883322, 1.0438, 1.33694, 1.71127, 2.20902", \ |
| "0.631169, 0.655479, 0.751432, 0.916465, 1.20508, 1.5829, 2.079", \ |
| "0.448228, 0.471922, 0.565565, 0.734635, 0.99341, 1.39557, 1.89552", \ |
| "0.267148, 0.281961, 0.384263, 0.544918, 0.83237, 1.20678, 1.70962" \ |
| ) |
| } |
| } |
| timing() { |
| related_pin : CLK; |
| timing_type : hold_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| index_2 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| values ( \ |
| "2.57202, 2.55288, 2.47489, 2.33255, 2.1285, 1.936, 1.74031", \ |
| "2.52934, 2.50866, 2.43232, 2.28987, 2.08582, 1.89332, 1.69763", \ |
| "2.47874, 2.46048, 2.38172, 2.23927, 2.03522, 1.84272, 1.64703", \ |
| "2.51988, 2.5014, 2.42264, 2.28019, 2.07614, 1.88364, 1.68795", \ |
| "2.65419, 2.63604, 2.55706, 2.41472, 2.21067, 2.01817, 1.82237", \ |
| "2.83745, 2.81677, 2.74043, 2.59798, 2.39393, 2.20044, 2.00574", \ |
| "3.02258, 3.0019, 2.92545, 2.78311, 2.57906, 2.38656, 2.19087" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| index_2 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| values ( \ |
| "1.26086, 1.24634, 1.15191, 0.984489, 0.694067, 0.316765, 0", \ |
| "1.22682, 1.20256, 1.10966, 0.942777, 0.652135, 0.280873, 0", \ |
| "1.17624, 1.15158, 1.05686, 0.89045, 0.603724, 0.22546, 0", \ |
| "1.21598, 1.19249, 1.09985, 0.93291, 0.64251, 0.265199, 0", \ |
| "1.35168, 1.32737, 1.23378, 1.0663, 0.777524, 0.401324, 0", \ |
| "1.53395, 1.51019, 1.41735, 1.2507, 0.990946, 0.583, 0.085591", \ |
| "1.71325, 1.69719, 1.60061, 1.43583, 1.14543, 0.768119, 0.269784" \ |
| ) |
| } |
| } |
| } |
| bus(A) { |
| bus_type : A_BUS; |
| direction : input; |
| capacitance : 0.0345814; |
| timing() { |
| related_pin : CLK; |
| timing_type : setup_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| index_2 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| values ( \ |
| "1.81104, 1.78607, 1.80004, 1.92731, 2.2088, 2.63307, 3.14534", \ |
| "1.84602, 1.8315, 1.83249, 1.96482, 2.24862, 2.67179, 3.19143", \ |
| "1.90069, 1.87968, 1.89453, 2.01619, 2.29845, 2.72844, 3.23796", \ |
| "1.85823, 1.83777, 1.84129, 1.97285, 2.25797, 2.67773, 3.19847", \ |
| "1.71171, 1.71578, 1.72238, 1.8535, 2.12377, 2.54782, 3.04678", \ |
| "1.54451, 1.52889, 1.53252, 1.66177, 1.93974, 2.36632, 2.86242", \ |
| "1.35817, 1.33892, 1.33694, 1.47213, 1.75142, 2.17756, 2.69544" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| index_2 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| values ( \ |
| "1.92412, 1.93028, 2.01443, 2.16634, 2.45454, 2.85989, 3.37106", \ |
| "1.93083, 1.96009, 2.05348, 2.20473, 2.48006, 2.89795, 3.40758", \ |
| "1.98517, 2.01179, 2.10837, 2.25555, 2.54958, 2.94976, 3.46489", \ |
| "1.95382, 1.97593, 2.06195, 2.21364, 2.50503, 2.90774, 3.4177", \ |
| "1.83183, 1.84085, 1.93149, 2.07944, 2.37259, 2.77563, 3.28482", \ |
| "1.63306, 1.66551, 1.74856, 1.90773, 2.20352, 2.59545, 3.10552", \ |
| "1.46069, 1.47114, 1.55727, 1.71446, 1.98836, 2.40779, 2.92061" \ |
| ) |
| } |
| } |
| timing() { |
| related_pin : CLK; |
| timing_type : hold_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| index_2 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| values ( \ |
| "1.27603, 1.28736, 1.2736, 1.1275, 0.857032, 0.523347, 0.142211", \ |
| "1.30172, 1.31318, 1.29901, 1.15366, 0.882959, 0.549483, 0.168022", \ |
| "1.36631, 1.37764, 1.36389, 1.2181, 0.947397, 0.613921, 0.232458", \ |
| "1.51085, 1.52141, 1.50821, 1.36279, 1.09206, 0.758571, 0.377113", \ |
| "1.74317, 1.7545, 1.7413, 1.595, 1.32429, 0.990803, 0.608058", \ |
| "2.04556, 2.05689, 2.04314, 1.89805, 1.63207, 1.29348, 0.9108", \ |
| "2.35774, 2.36929, 2.35499, 2.20968, 1.93952, 1.60556, 1.22408" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| index_2 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| values ( \ |
| "1.48555, 1.46949, 1.38985, 1.23405, 1.04507, 0.827508, 0.59862", \ |
| "1.5114, 1.49523, 1.4157, 1.25981, 1.07086, 0.853303, 0.624426", \ |
| "1.57542, 1.55969, 1.48005, 1.32121, 1.13528, 0.91773, 0.688864", \ |
| "1.72051, 1.70434, 1.6247, 1.46916, 1.27996, 1.06239, 0.833514", \ |
| "1.95228, 1.93666, 1.85702, 1.70115, 1.51217, 1.29463, 1.06576", \ |
| "2.25511, 2.23905, 2.15941, 2.00354, 1.81456, 1.59698, 1.36818", \ |
| "2.56795, 2.55134, 2.4717, 2.31594, 2.12696, 1.90938, 1.68047" \ |
| ) |
| } |
| } |
| } |
| bus(D) { |
| bus_type : Q_BUS; |
| memory_write() { |
| address : A; |
| clocked_on : "CLK"; |
| } |
| direction : input; |
| capacitance : 0.0161834; |
| timing() { |
| related_pin : CLK; |
| timing_type : setup_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| index_2 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| values ( \ |
| "1.84096, 1.87627, 1.94656, 2.07405, 2.19373, 2.27447, 2.40031", \ |
| "1.89134, 1.90993, 1.98484, 2.10628, 2.23883, 2.2968, 2.41098", \ |
| "1.94458, 1.96779, 2.03368, 2.16227, 2.29141, 2.37369, 2.50206", \ |
| "1.89387, 1.92104, 1.9833, 2.11871, 2.25049, 2.32518, 2.4442", \ |
| "1.76836, 1.79212, 1.86659, 1.98968, 2.11695, 2.19043, 2.32111", \ |
| "1.57696, 1.60655, 1.67783, 1.81236, 1.94502, 2.00871, 2.12289", \ |
| "1.39172, 1.41581, 1.49017, 1.61766, 1.75109, 1.82963, 1.93677" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| index_2 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| values ( \ |
| "0.024453, 0.029799, 0.08932, 0.266974, 0.539803, 0.926068, 1.40261", \ |
| "0.063184, 0.06534, 0.127321, 0.305254, 0.578105, 0.964601, 1.44089", \ |
| "0.114748, 0.117723, 0.179174, 0.356873, 0.629651, 1.01616, 1.485", \ |
| "0.072127, 0.07557, 0.137031, 0.314678, 0.587532, 0.973775, 1.4498", \ |
| "0, 0, 0.004708, 0.182636, 0.455422, 0.841676, 1.31821", \ |
| "0, 0, 0, 0.002233, 0.276152, 0.661573, 1.13737", \ |
| "0, 0, 0, 0, 0.085063, 0.47157, 0.947485" \ |
| ) |
| } |
| } |
| timing() { |
| related_pin : CLK; |
| timing_type : hold_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| index_2 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| values ( \ |
| "0.945186, 0.923109, 0.853941, 0.728079, 0.596805, 0.525228, 0.402622", \ |
| "0.908908, 0.88231, 0.812592, 0.680526, 0.563079, 0.500335, 0.367961", \ |
| "0.857285, 0.835142, 0.765985, 0.640167, 0.510697, 0.427911, 0.296078", \ |
| "0.906917, 0.877877, 0.807345, 0.683628, 0.553091, 0.470558, 0.351142", \ |
| "1.02777, 1.0056, 0.928554, 0.808852, 0.679228, 0.597993, 0.472648", \ |
| "1.21602, 1.19394, 1.12462, 0.992068, 0.869198, 0.798655, 0.669064", \ |
| "1.40547, 1.37896, 1.30974, 1.18393, 1.05411, 0.971652, 0.850729" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| index_2 ("0.02, 0.1027, 0.3929, 0.9472, 1.811, 3.022, 4.617"); |
| values ( \ |
| "2.08857, 2.08791, 2.02114, 1.84514, 1.57223, 1.18832, 0.719763", \ |
| "2.04776, 2.04897, 1.98022, 1.80433, 1.53142, 1.1475, 0.678953", \ |
| "2.00068, 2.002, 1.93314, 1.75725, 1.48434, 1.10041, 0.631873", \ |
| "2.04336, 2.04468, 1.97582, 1.79993, 1.52702, 1.14303, 0.674487", \ |
| "2.17096, 2.17217, 2.10353, 1.92753, 1.65473, 1.27072, 0.802186", \ |
| "2.35873, 2.36082, 2.29185, 2.11596, 1.84305, 1.45904, 0.99055", \ |
| "2.54441, 2.54595, 2.47698, 2.30098, 2.02807, 1.64417, 1.17561" \ |
| ) |
| } |
| } |
| } |
| cell_leakage_power : 1.699488e-05; |
| } |
| } |