library ("ecsm") { define_group (ecsm_waveform, rise_transition) ; define_group (ecsm_waveform_set, rise_transition) ; define_group (ecsm_waveform, fall_transition) ; define_group (ecsm_waveform_set, fall_transition) ; define (index_1, ecsm_waveform, string) ; define (values, ecsm_waveform, string) ; define (values, ecsm_waveform_set, string) ; define_group (ecsm_lut_template, library) ; define (variable_1, ecsm_lut_template, string) ; define (index_1, ecsm_lut_template, string) ; define_group (ecsm_capacitance, rise_transition) ; define_group (ecsm_capacitance, fall_transition) ; define (values, ecsm_capacitance, string) ; define (ecsm_version, library, float) ; lu_table_template (lu_table_template_1) { variable_1 : total_output_net_capacitance ; index_1 ("0.001, 0.01, 0.1") ; } lu_table_template (lu_table_template_2) { variable_1 : input_net_transition ; index_1 ("0.05, 0.1, 0.2, 0.5, 1") ; variable_2 : total_output_net_capacitance ; index_2 ("0.001, 0.01, 0.1") ; } ecsm_lut_template (template_5_ecsm_table) { variable_1 : normalized_voltage ; index_1 : "1.0, 2.0, 3.0, 4.0, 5.0" ; } cell ("myCell") { pin ("A") { direction : input ; } pin ("Y") { direction : output ; timing () { timing_type : combinational ; timing_sense : positive_unate ; related_pin : "A" ; cell_rise (lu_table_template_2) { index_1 ("0.05, 0.1, 0.2, 0.5, 1") ; index_2 ("0.001, 0.01, 0.1") ; values (\ "0.1, 0.2, 0.3",\ "0.1, 0.2, 0.3",\ "0.2, 0.3, 0.4",\ "0.2, 0.3, 0.4",\ "0.3, 0.4, 0.5"\ ) ; } cell_fall (lu_table_template_2) { index_1 ("0.05, 0.1, 0.2, 0.5, 1") ; index_2 ("0.001, 0.01, 0.1") ; values (\ "0.1, 0.2, 0.3",\ "0.1, 0.2, 0.3",\ "0.2, 0.3, 0.4",\ "0.2, 0.3, 0.4",\ "0.3, 0.4, 0.5"\ ) ; } rise_transition (lu_table_template_1) { index_1 ("0.001, 0.01, 0.1") ; values ("0.1, 0.2, 2") ; ecsm_waveform ("0") { index_1 : "0.1, 0.3, 0.7, 0.9" ; values : "1.005, 1.012, 1.018, 1.02" ; } ecsm_waveform ("1") { index_1 : "0.1, 0.48, 0.7, 0.9" ; values : "1.011, 1.02, 1.027, 1.032" ; } ecsm_waveform ("2") { index_1 : "0.1, 0.2, 0.4, 0.7, 0.9" ; values : "1.015, 1.02, 1.028, 1.035, 1.07" ; } ecsm_capacitance (rise) { values : "0.01, 0.02, 0.03" ; } } fall_transition (lu_table_template_1) { index_1 ("0.001, 0.01, 0.1") ; values ("0.1, 0.2, 2") ; ecsm_waveform_set (template_5_ecsm_table) { index_1 : "0.1, 0.3, 0.5, 0.7, 0.9" ; values : "1.005, 1.012, 1.014, 1.017, 1.02, \ 1.011, 1.017, 1.021, 1.027, 1.033, \ 1.017, 1.023, 1.03, 1.035, 1.042" ; } ecsm_capacitance (fall) { values : "0.01, 0.02, 0.03" ; } } } } } }