| /* |
| * 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__sram256x8m8wm1 |
| * Technology : GF 180nm 5V Green |
| * |
| * --------- |
| * Pin name: |
| * --------- |
| * Input Pins : CLK CEN GWEN WEN[7:0] A[7: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__sram256x8m8wm1__tt_025C_3v30) { |
| 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 : 3.3; |
| 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 : 3.1779; |
| 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, 3.3); |
| voltage_map (VSS, 0.00); |
| operating_conditions(tt_3p3v_25C) { |
| process : 1; |
| temperature : 25; |
| voltage : 3.3; |
| tree_type : balanced_tree; |
| } |
| |
| default_operating_conditions : tt_3p3v_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 : 8; |
| bit_from : 7; |
| 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__sram256x8m8wm1) { |
| area : 147212.4368; |
| dont_use : TRUE; |
| dont_touch : TRUE; |
| interface_timing : TRUE; |
| memory() { |
| type : ram; |
| address_width : 8; |
| word_width : 8; |
| } |
| |
| bus(Q) { |
| bus_type : Q_BUS; |
| direction : output; |
| max_capacitance : 1.0423; |
| 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.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| index_2 ("0.0100, 0.0286, 0.0937, 0.2182, 0.4121, 0.6842, 1.0423"); |
| values ( \ |
| "6.501, 6.52944, 6.6054, 6.75576, 6.95352, 7.24428, 7.6194", \ |
| "6.52092, 6.53112, 6.624, 6.77184, 6.96972, 7.24668, 7.61748", \ |
| "6.54048, 6.55488, 6.64812, 6.78072, 6.98232, 7.26864, 7.63908", \ |
| "6.5478, 6.57204, 6.66264, 6.80544, 7.00668, 7.29372, 7.65852", \ |
| "6.58644, 6.61404, 6.6972, 6.8394, 7.04412, 7.32564, 7.68708", \ |
| "6.59304, 6.62436, 6.69216, 6.84408, 7.03632, 7.32516, 7.70964", \ |
| "6.56652, 6.59484, 6.67728, 6.8208, 7.03392, 7.31196, 7.67916" \ |
| ) |
| } |
| rise_transition(q_slew_template) { |
| index_1 ("0.0100, 0.0286, 0.0937, 0.2182, 0.4121, 0.6842, 1.0423"); |
| values ( \ |
| "0.226416, 0.266448, 0.397956, 0.6414, 1.0328, 1.59912, 2.33844" \ |
| ) |
| |
| } |
| cell_fall(q_delay_template) { |
| index_1 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| index_2 ("0.0100, 0.0286, 0.0937, 0.2182, 0.4121, 0.6842, 1.0423"); |
| values ( \ |
| "6.75216, 6.7842, 6.84312, 6.97872, 7.1232, 7.32012, 7.56228", \ |
| "6.77172, 6.78324, 6.8706, 6.98808, 7.14084, 7.32228, 7.56", \ |
| "6.79488, 6.80376, 6.88956, 7.00212, 7.1538, 7.34724, 7.58376", \ |
| "6.80088, 6.8268, 6.90552, 7.02564, 7.17636, 7.36656, 7.59756", \ |
| "6.83568, 6.8628, 6.9408, 7.05828, 7.21932, 7.40544, 7.62708", \ |
| "6.8466, 6.87564, 6.93708, 7.06536, 7.20492, 7.40304, 7.65", \ |
| "6.82104, 6.84816, 6.92268, 7.04304, 7.20672, 7.38696, 7.6182" \ |
| ) |
| } |
| fall_transition(q_slew_template) { |
| index_1 ("0.0100, 0.0286, 0.0937, 0.2182, 0.4121, 0.6842, 1.0423"); |
| values ( \ |
| "0.226176, 0.258888, 0.349932, 0.482796, 0.695256, 0.97752, 1.3524" \ |
| ) |
| } |
| } |
| } |
| pin(CLK) { |
| direction : input; |
| capacitance : 0.293631; |
| clock : true; |
| max_transition : 3.1779; |
| min_pulse_width_high : 3.287265; |
| min_pulse_width_low : 3.891015; |
| min_period : 8.55972; |
| |
| /* 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.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| values ("375.012, 375.012, 375.012, 375.012, 375.012, 375.012, 375.012"); |
| } |
| fall_power(power_template) { |
| index_1 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| values ("375.012, 375.012, 375.012, 375.012, 375.012, 375.012, 375.012"); |
| } |
| } |
| /* DISABLED POWER */ |
| internal_power() { |
| when : "CEN"; |
| rise_power(power_template) { |
| index_1 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| values ("0.000149223, 0.000149223, 0.000149223, 0.000149223, 0.000149223, 0.000149223, 0.000149223"); |
| } |
| fall_power(power_template) { |
| index_1 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| values ("0.000149223, 0.000149223, 0.000149223, 0.000149223, 0.000149223, 0.000149223, 0.000149223"); |
| } |
| } |
| /* READ POWER */ |
| internal_power() { |
| when : "!CEN & GWEN"; |
| rise_power(power_template) { |
| index_1 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| values ("338.663, 338.663, 338.663, 338.663, 338.663, 338.663, 338.663"); |
| } |
| fall_power(power_template) { |
| index_1 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| values ("338.663, 338.663, 338.663, 338.663, 338.663, 338.663, 338.663"); |
| } |
| } |
| } |
| |
| 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.0183651; |
| timing() { |
| related_pin : CLK; |
| timing_type : setup_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| index_2 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| values ( \ |
| "0.617452, 0.603218, 0.603757, 0.658537, 0.734668, 0.789503, 0.820743", \ |
| "0.606892, 0.592669, 0.594671, 0.64801, 0.725835, 0.778327, 0.816695", \ |
| "0.585376, 0.576631, 0.575333, 0.621643, 0.694804, 0.746295, 0.785664", \ |
| "0.58707, 0.575894, 0.57508, 0.621401, 0.676775, 0.697411, 0.735746", \ |
| "0.586102, 0.575784, 0.575223, 0.621027, 0.676489, 0.695893, 0.719697", \ |
| "0.586487, 0.575322, 0.574508, 0.620818, 0.676269, 0.695629, 0.719433", \ |
| "0.586245, 0.575553, 0.574739, 0.620543, 0.675994, 0.723998, 0.763367" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| index_2 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| values ( \ |
| "0.542047, 0.549076, 0.583968, 0.662596, 0.788106, 0.926486, 1.07853", \ |
| "0.540639, 0.548339, 0.581691, 0.662585, 0.786951, 0.926035, 1.07732", \ |
| "0.539363, 0.546458, 0.580987, 0.662354, 0.785521, 0.925518, 1.07591", \ |
| "0.539385, 0.546205, 0.579986, 0.659725, 0.785235, 0.924968, 1.06691", \ |
| "0.53878, 0.545842, 0.580052, 0.662123, 0.784894, 0.923241, 1.0753", \ |
| "0.538615, 0.545622, 0.579403, 0.66022, 0.784696, 0.923758, 1.0751", \ |
| "0.538593, 0.545325, 0.579601, 0.658955, 0.784421, 0.924099, 1.07478" \ |
| ) |
| } |
| } |
| timing() { |
| related_pin : CLK; |
| timing_type : hold_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| index_2 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| values ( \ |
| "1.59203, 1.60325, 1.60413, 1.55782, 1.50403, 1.48159, 1.46058", \ |
| "1.59742, 1.60864, 1.60897, 1.5631, 1.50766, 1.48753, 1.46454", \ |
| "1.63438, 1.64307, 1.64439, 1.59808, 1.54264, 1.52328, 1.49952", \ |
| "1.70863, 1.71985, 1.72062, 1.67431, 1.61898, 1.59863, 1.57564", \ |
| "1.80092, 1.81126, 1.81181, 1.76594, 1.7105, 1.69114, 1.66727", \ |
| "1.87781, 1.88903, 1.8898, 1.84349, 1.78805, 1.76869, 1.74493", \ |
| "1.93017, 1.94084, 1.94172, 1.89585, 1.84041, 1.82105, 1.79718" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| index_2 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| values ( \ |
| "1.63999, 1.63295, 1.59808, 1.51943, 1.39392, 1.25555, 1.10351", \ |
| "1.6456, 1.6379, 1.60457, 1.52361, 1.39931, 1.26018, 1.10889", \ |
| "1.68036, 1.67332, 1.63878, 1.55738, 1.43418, 1.29426, 1.14384", \ |
| "1.75637, 1.74955, 1.71578, 1.63603, 1.51052, 1.37071, 1.22881", \ |
| "1.84822, 1.84118, 1.80697, 1.72491, 1.60204, 1.46377, 1.31164", \ |
| "1.92566, 1.91873, 1.88496, 1.80411, 1.67959, 1.54055, 1.38919", \ |
| "1.9778, 1.97109, 1.93688, 1.85746, 1.73206, 1.59236, 1.44166" \ |
| ) |
| } |
| } |
| } |
| pin(GWEN) { |
| direction : input; |
| capacitance : 0.0480112; |
| timing() { |
| related_pin : CLK; |
| timing_type : setup_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| index_2 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| values ( \ |
| "0.824076, 0.834196, 0.86735, 0.935715, 1.03133, 1.12476, 1.20448", \ |
| "0.814275, 0.824714, 0.85789, 0.926849, 1.0218, 1.11525, 1.19274", \ |
| "0.782188, 0.792132, 0.825638, 0.89474, 0.98967, 1.08357, 1.16194", \ |
| "0.714604, 0.724581, 0.757867, 0.826969, 0.921811, 1.01526, 1.09417", \ |
| "0.640211, 0.650243, 0.683474, 0.752455, 0.847385, 0.94138, 1.01979", \ |
| "0.584837, 0.5951, 0.628375, 0.697477, 0.792407, 0.886303, 0.964678", \ |
| "0.548757, 0.558778, 0.592053, 0.661012, 0.755975, 0.849992, 0.928367" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| index_2 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| values ( \ |
| "0.919754, 0.92466, 0.971476, 1.06695, 1.21594, 1.40162, 1.6049", \ |
| "0.910558, 0.915211, 0.962005, 1.05747, 1.20646, 1.39293, 1.59544", \ |
| "0.878053, 0.882926, 0.927696, 1.0254, 1.17422, 1.35861, 1.56321", \ |
| "0.810282, 0.815166, 0.86251, 0.95744, 1.10642, 1.29212, 1.49435", \ |
| "0.735977, 0.740773, 0.788799, 0.883212, 1.03201, 1.21833, 1.42098", \ |
| "0.680867, 0.685685, 0.73249, 0.827926, 0.976316, 1.16336, 1.36598", \ |
| "0.644457, 0.649396, 0.697411, 0.791637, 0.940027, 1.12632, 1.32968" \ |
| ) |
| } |
| } |
| timing() { |
| related_pin : CLK; |
| timing_type : hold_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| index_2 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| values ( \ |
| "1.15279, 1.14387, 1.11067, 1.04864, 1.00038, 0.962324, 0.952721", \ |
| "1.15797, 1.14906, 1.11585, 1.05473, 1.00443, 0.967494, 0.957935", \ |
| "1.18036, 1.17103, 1.13782, 1.0767, 1.02769, 0.989461, 0.979869", \ |
| "1.19457, 1.18504, 1.15184, 1.09074, 1.04157, 1.00351, 0.993894", \ |
| "1.22312, 1.21369, 1.18038, 1.11927, 1.06913, 1.03204, 1.02243", \ |
| "1.22848, 1.21972, 1.18586, 1.12536, 1.07483, 1.03785, 1.02812", \ |
| "1.22086, 1.21196, 1.17875, 1.11764, 1.06733, 1.0304, 1.0208" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| index_2 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| values ( \ |
| "0.606089, 0.597938, 0.548427, 0.456709, 0.312686, 0.135105, 0", \ |
| "0.61237, 0.602987, 0.55407, 0.461912, 0.317988, 0.141843, 0", \ |
| "0.633127, 0.625636, 0.580734, 0.484253, 0.33902, 0.164846, 0", \ |
| "0.647449, 0.639672, 0.593186, 0.498289, 0.353914, 0.17627, 0", \ |
| "0.676654, 0.668228, 0.618926, 0.526724, 0.382426, 0.206091, 0.009955", \ |
| "0.750508, 0.745437, 0.6996, 0.60247, 0.453024, 0.278991, 0.0858429", \ |
| "0.826804, 0.821733, 0.775082, 0.678733, 0.529342, 0.355531, 0.162162" \ |
| ) |
| } |
| } |
| } |
| bus(WEN) { |
| bus_type : Q_BUS; |
| direction : input; |
| capacitance : 0.007649; |
| timing() { |
| related_pin : CLK; |
| timing_type : setup_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| index_2 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| values ( \ |
| "0, 0, 0, 0, 0, 0.016192, 0.032076", \ |
| "0, 0, 0, 0, 0, 0.011671, 0.027544", \ |
| "0, 0, 0, 0, 0, 0, 0.005522", \ |
| "0, 0, 0, 0, 0, 0, 0", \ |
| "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.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| index_2 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| values ( \ |
| "0.359975, 0.37026, 0.418968, 0.511588, 0.655842, 0.833316, 1.0328", \ |
| "0.353958, 0.364672, 0.414766, 0.507386, 0.651178, 0.827277, 1.02122", \ |
| "0.3333, 0.342067, 0.388113, 0.48554, 0.629882, 0.804463, 1.00606", \ |
| "0.316943, 0.327272, 0.375826, 0.469689, 0.613008, 0.791351, 0.991749", \ |
| "0.286483, 0.296793, 0.348029, 0.43758, 0.583858, 0.76021, 0.958298", \ |
| "0.281355, 0.29234, 0.341902, 0.435347, 0.577698, 0.754963, 0.952985", \ |
| "0.291546, 0.301199, 0.351681, 0.444422, 0.586993, 0.766403, 0.966306" \ |
| ) |
| } |
| } |
| timing() { |
| related_pin : CLK; |
| timing_type : hold_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| index_2 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| values ( \ |
| "1.15333, 1.14547, 1.1135, 1.05229, 1.00098, 0.962324, 0.952721", \ |
| "1.15851, 1.15065, 1.11869, 1.05747, 1.00616, 0.967494, 0.957935", \ |
| "1.18048, 1.17263, 1.14066, 1.07944, 1.02814, 0.989461, 0.979869", \ |
| "1.19457, 1.18668, 1.1547, 1.09349, 1.04218, 1.00351, 0.993894", \ |
| "1.22312, 1.21523, 1.18325, 1.12202, 1.07072, 1.03204, 1.02243", \ |
| "1.22921, 1.22136, 1.18939, 1.12817, 1.07687, 1.03795, 1.02812", \ |
| "1.22142, 1.21356, 1.1816, 1.12038, 1.06908, 1.0304, 1.0208" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| index_2 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| values ( \ |
| "0.606441, 0.597938, 0.54934, 0.456709, 0.313445, 0.135105, 0", \ |
| "0.612766, 0.602987, 0.55506, 0.461912, 0.318659, 0.141843, 0", \ |
| "0.633556, 0.625636, 0.580734, 0.484253, 0.340362, 0.164846, 0", \ |
| "0.647845, 0.639672, 0.593186, 0.498289, 0.354651, 0.17764, 0", \ |
| "0.676995, 0.668228, 0.618926, 0.526724, 0.383097, 0.206091, 0.010186", \ |
| "0.683298, 0.67419, 0.62744, 0.532554, 0.391039, 0.212552, 0.016357", \ |
| "0.674498, 0.666633, 0.617364, 0.524777, 0.383262, 0.20453, 0.008646" \ |
| ) |
| } |
| } |
| } |
| bus(A) { |
| bus_type : A_BUS; |
| direction : input; |
| capacitance : 0.0404958; |
| timing() { |
| related_pin : CLK; |
| timing_type : setup_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| index_2 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| values ( \ |
| "0.739365, 0.734503, 0.735185, 0.788854, 0.870551, 0.929808, 0.977592", \ |
| "0.732391, 0.726847, 0.729564, 0.781935, 0.863511, 0.925837, 0.96844", \ |
| "0.717783, 0.712008, 0.712712, 0.761508, 0.844393, 0.906301, 0.952028", \ |
| "0.696674, 0.694386, 0.695673, 0.74624, 0.827123, 0.888316, 0.933097", \ |
| "0.669097, 0.662607, 0.664818, 0.717332, 0.79871, 0.861069, 0.905146", \ |
| "0.662046, 0.658999, 0.660308, 0.710369, 0.792099, 0.854491, 0.901186", \ |
| "0.675169, 0.671704, 0.670043, 0.723195, 0.805134, 0.865326, 0.911328" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| index_2 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| values ( \ |
| "0.932107, 0.937464, 0.979473, 1.05448, 1.18665, 1.3398, 1.51162", \ |
| "0.926354, 0.931403, 0.973445, 1.05194, 1.17762, 1.33353, 1.50491", \ |
| "0.908578, 0.917169, 0.955977, 1.03174, 1.16234, 1.31626, 1.48753", \ |
| "0.888503, 0.899503, 0.935495, 1.01404, 1.14665, 1.29965, 1.47213", \ |
| "0.861333, 0.869, 0.910437, 0.986524, 1.11575, 1.27103, 1.44177", \ |
| "0.85448, 0.864039, 0.9031, 0.986513, 1.10935, 1.26386, 1.4355", \ |
| "0.866151, 0.876733, 0.914265, 0.988999, 1.11959, 1.27569, 1.44716" \ |
| ) |
| } |
| } |
| timing() { |
| related_pin : CLK; |
| timing_type : hold_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| index_2 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| values ( \ |
| "0.694408, 0.700084, 0.693396, 0.674872, 0.665566, 0.659021, 0.646778", \ |
| "0.708136, 0.714186, 0.706453, 0.688633, 0.678623, 0.672078, 0.659846", \ |
| "0.740839, 0.745855, 0.739167, 0.720643, 0.711337, 0.704803, 0.69256", \ |
| "0.806091, 0.811096, 0.804397, 0.785829, 0.776567, 0.770022, 0.757812", \ |
| "0.900471, 0.905564, 0.898799, 0.880286, 0.870969, 0.863599, 0.852192", \ |
| "0.968176, 0.973742, 0.966009, 0.94787, 0.938168, 0.931645, 0.919424", \ |
| "1.02094, 1.02604, 1.01927, 1.00074, 0.991441, 0.984885, 0.972664" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| index_2 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| values ( \ |
| "0.73007, 0.721787, 0.683705, 0.646734, 0.623744, 0.614493, 0.615395", \ |
| "0.743446, 0.734822, 0.696784, 0.659791, 0.636823, 0.628408, 0.628188", \ |
| "0.775841, 0.767547, 0.729487, 0.692505, 0.669537, 0.660264, 0.660495", \ |
| "0.841104, 0.832777, 0.796939, 0.757735, 0.734481, 0.726352, 0.726099", \ |
| "0.935792, 0.926948, 0.888723, 0.852137, 0.829158, 0.820743, 0.820501", \ |
| "1.003, 0.994356, 0.956329, 0.912879, 0.896368, 0.887953, 0.887711", \ |
| "1.05594, 1.04761, 1.00958, 0.972609, 0.949619, 0.941215, 0.940984" \ |
| ) |
| } |
| } |
| } |
| bus(D) { |
| bus_type : Q_BUS; |
| memory_write() { |
| address : A; |
| clocked_on : "CLK"; |
| } |
| direction : input; |
| capacitance : 0.0163071; |
| timing() { |
| related_pin : CLK; |
| timing_type : setup_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| index_2 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| values ( \ |
| "0.693968, 0.705672, 0.736681, 0.756723, 0.752576, 0.715616, 0.645887", \ |
| "0.694331, 0.705298, 0.731643, 0.746999, 0.748011, 0.716133, 0.641949", \ |
| "0.675884, 0.682803, 0.712448, 0.728046, 0.727628, 0.694617, 0.623359", \ |
| "0.656293, 0.667315, 0.69476, 0.711964, 0.713119, 0.673849, 0.606782", \ |
| "0.630344, 0.639452, 0.666358, 0.684266, 0.682803, 0.644369, 0.573056", \ |
| "0.62491, 0.621962, 0.655347, 0.67804, 0.677897, 0.64174, 0.568876", \ |
| "0.633523, 0.641817, 0.673706, 0.689359, 0.688809, 0.650232, 0.583308" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| index_2 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| values ( \ |
| "0.140605, 0.142299, 0.186201, 0.288335, 0.443168, 0.628595, 0.858946", \ |
| "0.134339, 0.140911, 0.177095, 0.283091, 0.437723, 0.626197, 0.854007", \ |
| "0.115546, 0.119538, 0.16139, 0.261871, 0.418836, 0.603801, 0.833316", \ |
| "0.100142, 0.105882, 0.140863, 0.247389, 0.401742, 0.587147, 0.819489", \ |
| "0.069729, 0.073513, 0.115278, 0.217653, 0.372526, 0.559757, 0.79079", \ |
| "0.063459, 0.067188, 0.109079, 0.212506, 0.366245, 0.552794, 0.783277", \ |
| "0.074855, 0.078991, 0.120623, 0.223245, 0.376497, 0.565246, 0.793507" \ |
| ) |
| } |
| } |
| timing() { |
| related_pin : CLK; |
| timing_type : hold_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| index_2 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| values ( \ |
| "0.568491, 0.558855, 0.529606, 0.506616, 0.510015, 0.545105, 0.608575", \ |
| "0.571329, 0.554983, 0.529397, 0.514426, 0.514096, 0.543961, 0.62018", \ |
| "0.593648, 0.583264, 0.553773, 0.536019, 0.534589, 0.563035, 0.640948", \ |
| "0.60907, 0.596376, 0.567556, 0.552772, 0.552189, 0.586487, 0.657822", \ |
| "0.63272, 0.621467, 0.596332, 0.58091, 0.580899, 0.615263, 0.686103", \ |
| "0.646272, 0.635734, 0.605814, 0.58597, 0.589006, 0.622776, 0.690019", \ |
| "0.630674, 0.623403, 0.591107, 0.576323, 0.575355, 0.610038, 0.68079" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| index_2 ("0.0200, 0.0768, 0.2762, 0.6570, 1.2503, 2.0822, 3.1779"); |
| values ( \ |
| "0.882629, 0.880506, 0.841038, 0.735592, 0.5841, 0.395395, 0.169497", \ |
| "0.886435, 0.884224, 0.844701, 0.739255, 0.587763, 0.399179, 0.173169", \ |
| "0.907258, 0.905146, 0.865667, 0.760232, 0.608729, 0.420035, 0.194136", \ |
| "0.923868, 0.921316, 0.88242, 0.776963, 0.625471, 0.436777, 0.21015", \ |
| "0.952754, 0.950719, 0.911196, 0.805761, 0.654247, 0.465674, 0.239657", \ |
| "0.960333, 0.958298, 0.918775, 0.81334, 0.661837, 0.473132, 0.247239", \ |
| "0.947903, 0.945494, 0.90596, 0.800525, 0.649033, 0.460449, 0.234431" \ |
| ) |
| } |
| } |
| } |
| cell_leakage_power : 0.0001492227; |
| } |
| } |