| /* |
| * 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__ss_n40C_1v62) { |
| 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.62; |
| 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 : 10.6; |
| 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.62); |
| voltage_map (VSS, 0.00); |
| operating_conditions(ss_1p62v_m40C) { |
| process : 1; |
| temperature : -40; |
| voltage : 1.62; |
| tree_type : balanced_tree; |
| } |
| |
| default_operating_conditions : ss_1p62v_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 : 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.03; |
| 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.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| index_2 ("0.01, 0.02835, 0.09278, 0.2158, 0.4075, 0.6764, 1.03"); |
| values ( \ |
| "34.2708, 34.3872, 34.8216, 35.5848, 36.7944, 38.352, 40.452", \ |
| "34.3956, 34.4652, 34.9704, 35.6988, 36.7944, 38.4264, 40.572", \ |
| "34.5324, 34.6968, 35.0928, 35.9496, 37.0404, 38.6472, 40.7292", \ |
| "34.9212, 35.0184, 35.5056, 36.222, 37.4208, 39.0396, 41.1444", \ |
| "35.598, 35.7276, 36.1668, 36.9432, 38.0916, 39.6924, 41.7828", \ |
| "36.4272, 36.5244, 36.9384, 37.7112, 38.856, 40.4448, 42.5676", \ |
| "37.3716, 37.5612, 37.938, 38.7372, 39.852, 41.4576, 43.5108" \ |
| ) |
| } |
| rise_transition(q_slew_template) { |
| index_1 ("0.01, 0.02835, 0.09278, 0.2158, 0.4075, 0.6764, 1.03"); |
| values ( \ |
| "0.854148, 1.04194, 1.6896, 2.96928, 4.89756, 7.689, 11.3356" \ |
| ) |
| |
| } |
| cell_fall(q_delay_template) { |
| index_1 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| index_2 ("0.01, 0.02835, 0.09278, 0.2158, 0.4075, 0.6764, 1.03"); |
| values ( \ |
| "36.8388, 36.912, 37.206, 37.6416, 38.1648, 38.8116, 39.5988", \ |
| "36.9552, 36.9816, 37.3332, 37.7328, 38.1888, 38.8332, 39.7176", \ |
| "37.098, 37.2444, 37.5, 38.0112, 38.4408, 39.126, 39.8556", \ |
| "37.4472, 37.5504, 37.902, 38.28, 38.7888, 39.4836, 40.236", \ |
| "38.1672, 38.2884, 38.5812, 38.9856, 39.5256, 40.1544, 40.9668", \ |
| "39.0036, 39.0396, 39.3012, 39.7572, 40.302, 40.9404, 41.7072", \ |
| "39.8916, 40.0824, 40.2888, 40.7532, 41.2368, 41.8692, 42.6408" \ |
| ) |
| } |
| fall_transition(q_slew_template) { |
| index_1 ("0.01, 0.02835, 0.09278, 0.2158, 0.4075, 0.6764, 1.03"); |
| values ( \ |
| "0.9051, 1.04794, 1.25268, 1.73352, 2.37804, 3.36696, 4.43532" \ |
| ) |
| } |
| } |
| } |
| pin(CLK) { |
| direction : input; |
| capacitance : 0.295918; |
| clock : true; |
| max_transition : 10.6; |
| min_pulse_width_high : 18.4434; |
| min_pulse_width_low : 24.2445; |
| min_period : 49.6236; |
| |
| /* 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.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| values ("81.2349, 81.2349, 81.2349, 81.2349, 81.2349, 81.2349, 81.2349"); |
| } |
| fall_power(power_template) { |
| index_1 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| values ("81.2349, 81.2349, 81.2349, 81.2349, 81.2349, 81.2349, 81.2349"); |
| } |
| } |
| /* DISABLED POWER */ |
| internal_power() { |
| when : "CEN"; |
| rise_power(power_template) { |
| index_1 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| values ("3.54812e-05, 3.54812e-05, 3.54812e-05, 3.54812e-05, 3.54812e-05, 3.54812e-05, 3.54812e-05"); |
| } |
| fall_power(power_template) { |
| index_1 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| values ("3.54812e-05, 3.54812e-05, 3.54812e-05, 3.54812e-05, 3.54812e-05, 3.54812e-05, 3.54812e-05"); |
| } |
| } |
| /* READ POWER */ |
| internal_power() { |
| when : "!CEN & GWEN"; |
| rise_power(power_template) { |
| index_1 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| values ("75.087, 75.087, 75.087, 75.087, 75.087, 75.087, 75.087"); |
| } |
| fall_power(power_template) { |
| index_1 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| values ("75.087, 75.087, 75.087, 75.087, 75.087, 75.087, 75.087"); |
| } |
| } |
| } |
| |
| 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.0194382; |
| timing() { |
| related_pin : CLK; |
| timing_type : setup_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| index_2 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| values ( \ |
| "3.58182, 3.55476, 3.65497, 4.05977, 4.93812, 6.127, 7.74829", \ |
| "3.51824, 3.49129, 3.59128, 3.99531, 4.86783, 6.05704, 7.74939", \ |
| "3.28295, 3.26073, 3.35687, 3.76068, 4.63287, 5.82791, 7.51388", \ |
| "2.86638, 2.83679, 2.93711, 3.3418, 4.23148, 5.40903, 7.08092", \ |
| "2.87199, 2.83789, 2.92446, 3.32277, 4.22246, 5.40166, 7.07212", \ |
| "2.87419, 2.83767, 2.92479, 3.33014, 4.22213, 5.39968, 7.08598", \ |
| "2.87463, 2.84724, 2.92347, 3.33091, 4.23027, 5.40034, 7.05045" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| index_2 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| values ( \ |
| "2.36808, 2.42143, 2.63549, 3.07582, 3.85506, 4.97728, 6.47163", \ |
| "2.31231, 2.35752, 2.57191, 3.01213, 3.7906, 4.91381, 6.40816", \ |
| "2.07394, 2.12509, 2.33398, 2.77662, 3.55597, 4.6783, 6.17276", \ |
| "2.0108, 2.07108, 2.29207, 2.7368, 3.49998, 4.63573, 6.12183", \ |
| "2.01124, 2.07141, 2.28987, 2.73691, 3.5002, 4.63408, 6.12315", \ |
| "2.01278, 2.06965, 2.2902, 2.73493, 3.49822, 4.63232, 6.1204", \ |
| "2.02081, 2.07009, 2.29086, 2.73636, 3.49888, 4.63155, 6.12172" \ |
| ) |
| } |
| } |
| timing() { |
| related_pin : CLK; |
| timing_type : hold_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| index_2 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| values ( \ |
| "7.26374, 7.30015, 7.21413, 6.81021, 5.91723, 4.73814, 3.11553", \ |
| "7.30708, 7.34327, 7.25747, 6.86246, 5.96805, 4.78423, 3.09518", \ |
| "7.54721, 7.58351, 7.4965, 7.09115, 6.20818, 5.02172, 3.33542", \ |
| "7.96686, 8.00052, 7.90537, 7.50156, 6.59945, 5.42949, 3.76046", \ |
| "8.65711, 8.69132, 8.60475, 8.20633, 7.30675, 6.12744, 4.45698", \ |
| "9.63501, 9.67153, 9.58441, 9.17906, 8.28707, 7.10952, 5.42311", \ |
| "10.8262, 10.8536, 10.7772, 10.3699, 9.47056, 8.30049, 6.65038" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| index_2 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| values ( \ |
| "8.12449, 8.06839, 7.84751, 7.40289, 6.6396, 5.50561, 4.01764", \ |
| "8.1609, 8.11195, 7.89085, 7.44623, 6.68371, 5.54884, 4.06076", \ |
| "8.39916, 8.34229, 8.1334, 7.68636, 6.92318, 5.78897, 4.30089", \ |
| "8.82013, 8.75985, 8.53886, 8.09413, 7.33095, 6.1952, 4.7091", \ |
| "9.51797, 9.45769, 9.23923, 8.79219, 8.0289, 6.89502, 5.40595", \ |
| "10.4964, 10.4396, 10.219, 9.77427, 9.01098, 7.87688, 6.3888", \ |
| "11.6798, 11.6303, 11.4103, 10.9644, 10.2018, 9.06928, 7.579" \ |
| ) |
| } |
| } |
| } |
| pin(GWEN) { |
| direction : input; |
| capacitance : 0.0435041; |
| timing() { |
| related_pin : CLK; |
| timing_type : setup_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| index_2 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| values ( \ |
| "3.78796, 3.84692, 4.06868, 4.4957, 5.19002, 6.08267, 7.23668", \ |
| "3.72526, 3.78444, 4.00653, 4.433, 5.11269, 6.03922, 7.17398", \ |
| "3.50856, 3.56532, 3.80039, 4.23203, 4.90105, 5.8003, 6.95453", \ |
| "3.07351, 3.14215, 3.36413, 3.80875, 4.48492, 5.37757, 6.51827", \ |
| "2.37292, 2.44552, 2.67608, 3.1075, 3.78752, 4.67632, 5.79953", \ |
| "1.56596, 1.62514, 1.85944, 2.29174, 2.95405, 3.86078, 5.01468", \ |
| "0.611864, 0.667161, 0.915596, 1.34673, 2.02301, 2.91588, 4.06956" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| index_2 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| values ( \ |
| "5.39176, 5.48251, 5.71373, 6.23436, 7.01602, 8.15584, 9.68517", \ |
| "5.33236, 5.41948, 5.66797, 6.17166, 6.94595, 8.1114, 9.55075", \ |
| "5.13799, 5.17088, 5.41684, 5.94847, 6.73431, 7.87402, 9.33163", \ |
| "4.7135, 4.77708, 5.02524, 5.5319, 6.31103, 7.45063, 8.97809", \ |
| "3.98717, 4.04855, 4.29209, 4.82757, 5.60967, 6.74949, 8.27871", \ |
| "3.19462, 3.26007, 3.49151, 4.00807, 4.79424, 5.93384, 7.39145", \ |
| "2.22728, 2.299, 2.55145, 3.06955, 3.84912, 4.97662, 6.52355" \ |
| ) |
| } |
| } |
| timing() { |
| related_pin : CLK; |
| timing_type : hold_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| index_2 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| values ( \ |
| "6.6902, 6.63696, 6.43852, 5.97729, 5.33775, 4.58172, 3.67928", \ |
| "6.27737, 6.22446, 6.02569, 5.56446, 4.91832, 4.11873, 3.26612", \ |
| "5.69052, 5.63288, 5.40067, 4.9687, 4.33928, 3.5739, 2.6752", \ |
| "5.37295, 5.3185, 5.12105, 4.65861, 4.02072, 3.2648, 2.37611", \ |
| "5.81328, 5.75564, 5.52827, 5.09586, 4.45797, 3.70205, 2.81743", \ |
| "6.56667, 6.51365, 6.27627, 5.85189, 5.20773, 4.45819, 3.55575", \ |
| "7.50629, 7.45327, 7.22128, 6.78887, 6.1512, 5.39517, 4.49273" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| index_2 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| values ( \ |
| "3.98255, 3.95164, 3.67587, 3.15293, 2.41879, 1.26442, 0", \ |
| "3.56026, 3.5354, 3.27888, 2.7401, 2.00992, 0.832634, 0", \ |
| "2.9656, 2.92435, 2.68312, 2.13994, 1.41196, 0.256456, 0", \ |
| "2.66519, 2.63142, 2.38282, 1.83194, 1.10224, 0, 0", \ |
| "3.10123, 3.06779, 2.81083, 2.27403, 1.53857, 0.384461, 0", \ |
| "3.85957, 3.8247, 3.55234, 3.02522, 2.29526, 1.14057, 0", \ |
| "4.79402, 4.76531, 4.51242, 3.96539, 3.23301, 2.08527, 0.531861" \ |
| ) |
| } |
| } |
| } |
| bus(WEN) { |
| bus_type : Q_BUS; |
| direction : input; |
| capacitance : 0.00722787; |
| timing() { |
| related_pin : CLK; |
| timing_type : setup_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| index_2 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| values ( \ |
| "0, 0, 0, 0, 0, 0, 0.27503", \ |
| "0, 0, 0, 0, 0, 0, 0.685443", \ |
| "0, 0, 0, 0, 0, 0.35915, 1.27679", \ |
| "0, 0, 0, 0, 0, 0.670428, 1.58081", \ |
| "0, 0, 0, 0, 0, 0.234209, 1.13674", \ |
| "0, 0, 0, 0, 0, 0, 0.391193", \ |
| "0, 0, 0, 0, 0, 0, 0" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| index_2 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| values ( \ |
| "0, 0, 0.146942, 0.665203, 1.41427, 2.56927, 4.11246", \ |
| "0.254003, 0.275956, 0.525547, 1.07663, 1.82039, 2.98881, 4.47381", \ |
| "0.842193, 0.888228, 1.13969, 1.67695, 2.41637, 3.57247, 5.06132", \ |
| "1.1676, 1.19151, 1.43506, 1.99375, 2.73152, 3.87618, 5.46667", \ |
| "0.708587, 0.741961, 1.01357, 1.54561, 2.28954, 3.43948, 4.98861", \ |
| "0, 0, 0.267805, 0.798105, 1.53626, 2.67344, 4.17923", \ |
| "0, 0, 0, 0, 0.596871, 1.73481, 3.32739" \ |
| ) |
| } |
| } |
| timing() { |
| related_pin : CLK; |
| timing_type : hold_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| index_2 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| values ( \ |
| "6.72408, 6.67986, 6.43852, 6.00391, 5.35326, 4.59107, 3.69424", \ |
| "6.31136, 6.26714, 6.02569, 5.59119, 4.94043, 4.17076, 3.28152", \ |
| "5.71736, 5.67325, 5.42916, 4.9973, 4.34665, 3.58435, 2.68763", \ |
| "5.40727, 5.36195, 5.12105, 4.6871, 4.04074, 3.26843, 2.37655", \ |
| "5.84452, 5.79953, 5.55665, 5.12435, 4.4737, 3.7114, 2.81743", \ |
| "6.60066, 6.55644, 6.31301, 5.88049, 5.22984, 4.46754, 3.57082", \ |
| "7.53742, 7.49353, 7.25076, 6.82209, 6.17694, 5.4021, 4.50791" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| index_2 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| values ( \ |
| "3.98255, 3.95164, 3.67741, 3.15293, 2.41879, 1.26442, 0", \ |
| "3.56026, 3.5354, 3.27888, 2.7401, 2.00992, 0.832634, 0", \ |
| "2.9656, 2.92435, 2.68312, 2.13994, 1.41196, 0.256456, 0", \ |
| "2.66519, 2.63142, 2.38282, 1.83194, 1.10224, 0, 0", \ |
| "3.10123, 3.06779, 2.81083, 2.27403, 1.53857, 0.384461, 0", \ |
| "3.85957, 3.8247, 3.55421, 3.02522, 2.29526, 1.14057, 0", \ |
| "4.79402, 4.76531, 4.51242, 3.96539, 3.23301, 2.08527, 0.531861" \ |
| ) |
| } |
| } |
| } |
| bus(A) { |
| bus_type : A_BUS; |
| direction : input; |
| capacitance : 0.0437212; |
| timing() { |
| related_pin : CLK; |
| timing_type : setup_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| index_2 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| values ( \ |
| "3.52352, 3.51263, 3.61867, 4.03425, 4.9016, 6.12997, 7.73707", \ |
| "3.46808, 3.48238, 3.5574, 3.97298, 4.84033, 6.06177, 7.64555", \ |
| "3.23631, 3.21541, 3.33091, 3.7466, 4.61384, 5.83506, 7.42445", \ |
| "3.31397, 3.30715, 3.41385, 3.84197, 4.72373, 5.95595, 7.5372", \ |
| "2.87375, 2.85725, 2.99101, 3.40131, 4.30023, 5.50891, 7.09148", \ |
| "2.13752, 2.1219, 2.24169, 2.6455, 3.52902, 4.74507, 6.33369", \ |
| "1.20979, 1.19577, 1.31006, 1.71952, 2.61701, 3.82635, 5.34611" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| index_2 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| values ( \ |
| "2.50261, 2.48391, 2.68114, 3.21299, 3.99443, 5.13546, 6.62783", \ |
| "2.90774, 2.89575, 3.08836, 3.62131, 4.41386, 5.55269, 7.03285", \ |
| "3.50625, 3.4694, 3.68632, 4.19298, 4.98443, 6.13008, 7.62179", \ |
| "3.80446, 3.78389, 3.97936, 4.51088, 5.30552, 6.46657, 7.94475", \ |
| "3.35379, 3.35269, 3.61801, 4.06725, 4.85199, 5.99159, 7.51619", \ |
| "2.61888, 2.58137, 2.79378, 3.33443, 4.11092, 5.2525, 6.73068", \ |
| "1.65484, 1.66551, 1.85735, 2.38535, 3.1746, 4.30727, 5.79986" \ |
| ) |
| } |
| } |
| timing() { |
| related_pin : CLK; |
| timing_type : hold_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| index_2 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| values ( \ |
| "2.4783, 2.49381, 2.36489, 1.95349, 1.08206, 0, 0", \ |
| "2.54826, 2.54342, 2.44112, 2.02972, 1.15825, 0.025047, 0", \ |
| "2.76507, 2.78806, 2.65111, 2.2396, 1.36818, 0.234978, 0", \ |
| "3.14501, 3.15689, 3.03105, 2.61954, 1.74713, 0.614955, 0", \ |
| "3.88883, 3.91061, 3.7708, 3.3594, 2.48798, 1.35476, 0", \ |
| "4.80667, 4.81855, 4.6926, 4.2812, 3.40978, 2.27656, 0.860937", \ |
| "5.9686, 5.98026, 5.8509, 5.44302, 4.5716, 3.43838, 2.02279" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| index_2 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| values ( \ |
| "3.07736, 3.03259, 2.81787, 2.33959, 1.6665, 0.854337, 0", \ |
| "3.15359, 3.10871, 2.8941, 2.41934, 1.74339, 0.930534, 0", \ |
| "3.36248, 3.31859, 3.10398, 2.62933, 1.95261, 1.14049, 0.130794", \ |
| "3.74132, 3.69853, 3.48403, 3.00927, 2.33255, 1.52042, 0.510983", \ |
| "4.48338, 4.43839, 4.20189, 3.74902, 3.07241, 2.2594, 1.25062", \ |
| "5.40507, 5.36019, 5.14052, 4.66125, 3.9941, 3.18142, 2.17261", \ |
| "6.56469, 6.52201, 6.30564, 5.83264, 5.15603, 4.34313, 3.33421" \ |
| ) |
| } |
| } |
| } |
| bus(D) { |
| bus_type : Q_BUS; |
| memory_write() { |
| address : A; |
| clocked_on : "CLK"; |
| } |
| direction : input; |
| capacitance : 0.0170448; |
| timing() { |
| related_pin : CLK; |
| timing_type : setup_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| index_2 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| values ( \ |
| "3.27965, 3.35368, 3.58347, 3.99861, 4.51682, 5.18419, 5.90612", \ |
| "3.69127, 3.76255, 3.982, 4.41562, 4.94362, 5.60021, 6.31026", \ |
| "4.29759, 4.37349, 4.57578, 5.00544, 5.53146, 6.20158, 6.90976", \ |
| "4.59888, 4.66642, 4.90105, 5.32059, 5.84177, 6.50595, 7.21523", \ |
| "4.15701, 4.22873, 4.44136, 4.8796, 5.41453, 6.07365, 6.75576", \ |
| "3.40582, 3.46643, 3.69512, 4.12588, 4.65883, 5.30948, 6.02272", \ |
| "2.46708, 2.54265, 2.76804, 3.19693, 3.71261, 4.36645, 5.08068" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| index_2 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| values ( \ |
| "0, 0, 0, 0, 0, 0.95194, 2.40339", \ |
| "0, 0, 0, 0, 0.190847, 1.36686, 2.81831", \ |
| "0, 0, 0, 0.048279, 0.777084, 1.95129, 3.40362", \ |
| "0, 0, 0, 0.361636, 1.0924, 2.26721, 3.71811", \ |
| "0, 0, 0, 0, 0.649121, 1.81632, 3.27547", \ |
| "0, 0, 0, 0, 0, 1.06794, 2.51966", \ |
| "0, 0, 0, 0, 0, 0.140577, 1.59346" \ |
| ) |
| } |
| } |
| timing() { |
| related_pin : CLK; |
| timing_type : hold_rising; |
| rise_constraint(constraint_template) { |
| index_1 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| index_2 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| values ( \ |
| "3.23301, 3.16943, 2.94294, 2.51944, 1.98605, 1.33716, 0.631114", \ |
| "2.82326, 2.75781, 2.53649, 2.10947, 1.57729, 0.9372, 0.21948", \ |
| "2.22343, 2.14918, 1.9404, 1.51437, 0.979286, 0.330528, 0", \ |
| "1.91543, 1.85394, 1.62536, 1.20189, 0.668591, 0.019712, 0", \ |
| "2.3595, 2.29427, 2.06778, 1.64428, 1.11088, 0.462044, 0", \ |
| "3.10574, 3.04854, 2.82216, 2.39866, 1.86527, 1.21642, 0.510378", \ |
| "4.05548, 3.99245, 3.76849, 3.34268, 2.81149, 2.16227, 1.45376" \ |
| ) |
| } |
| fall_constraint(constraint_template) { |
| index_1 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| index_2 ("0.02, 0.2104, 0.8786, 2.155, 4.143, 6.932, 10.6"); |
| values ( \ |
| "5.92328, 5.89776, 5.70801, 5.1953, 4.41309, 3.26788, 1.78002", \ |
| "5.51067, 5.48999, 5.2965, 4.78368, 4.00158, 2.85626, 1.3684", \ |
| "4.91634, 4.895, 4.70151, 4.18869, 3.40659, 2.26127, 0.773454", \ |
| "4.60515, 4.58414, 4.39065, 3.87783, 3.09573, 1.95041, 0.462561", \ |
| "5.0468, 5.02645, 4.83296, 4.32014, 3.53804, 2.39272, 0.904882", \ |
| "5.80184, 5.78083, 5.58734, 5.07452, 4.29242, 3.1471, 1.65924", \ |
| "6.74377, 6.71858, 6.52938, 6.01645, 5.23435, 4.08903, 2.60117" \ |
| ) |
| } |
| } |
| } |
| cell_leakage_power : 3.548124e-05; |
| } |
| } |