Parallax Static Timing Analyzer Release Notes --------------------------------------------- This file summarizes user visible changes for each release. Release 2.0.0 2018/09/28 ------------------------- Builds using Autotools/configure are no longer supported. Use CMake as documented in README.mb. .... The check_timing command -no_output_delay checks output ports for set_output_delay. .... The report_power command reports the power consumption of the design or a specific instance. report_power [-instances inst] [-digits digits] [> filename] [>> filename] The internal, switching, leakage and total power are reported. Design power is reported separately for combinational, sequential, macro and pad groups. Use -instances to report power for a specific instance. Use the set_power_activity command to specify activity/duty globally using -global, the input port default using -input, or for input ports using -input_ports, or pins using -pins. set_power_activity [-global] [-input] [-input_ports ports] [-pins pins] [-activiity activity] [-duty duty] .... The write_path_spice command writes a spice netlist for a timing path. write_path_spice -path_args path_args -spice_directory spice_directory -subckt_file subckt_file -lib_subckt_file lib_subckts_file\ -model_file model_file -power power -ground ground Use path_args to specify -from/-through/-to as arguments to the find_timing_paths command. For each path, a spice netlist and the subckts referenced by the path are written in spice_directory. The spice netlist is written in path_.sp and subckt file is path_.subckt. Spice netlists for liberty library cells are read from lib_subckts_file. The spice netlists used by the path are written to subckt_file, which spice_file .includes. The device models used by the spice subckt netlists in model_file are .included in spice_file. Power and ground names are specified with the -power and -ground arguments. The spice netlist includes a piecewise linear voltage source at the input and .measure statement for each gate delay and pin slew. .... The report_checks, find_timing_paths commands now support an -unconstrained flag. report_checks -unconstrained find_timing_paths -unconstrained The sta_report_unconstrained_paths variable will be supported for for compatibility in this current release. .... The read_parasitics command has been renamed read_spef and no longer supports the SPF format. .... The make_net command now takes a single net name argument and returns the net. The delete_instance command deletes a single instance instead of a list of instances. The delete_net command deletes a single net instead of a list of nets. The disconnect_pins command is renamed disconnect_pin and disconnects a single pin. Release 1.11.0 2017/08/18 ------------------------- Use the define_corners command to define the names of multiple process/temperature/voltage corners. define_corners corner_name1 [orner_name2]... The define_corners command must follow set_operating_conditions -analysis_type precede any reference to the corner names and can only appear once in a command file. There is no support for re-defining corners. For analysis type single each corner has one delay calculation result and early/late path arrivals. For analysis type best_case/worst_case and on_chip_varition each corner has min/max delay calculation results and early/late path arrivals. Use the report_timing -corner keyword to report timing for one corner. With no corner keyword report timing reports the corner with the smallest slack for each timing check. report_timing [-corner corner_name] The following commands do not require the -corner keyword if there is only one corner. Otherwise, it is required. read_liberty [-corner corner_name] [-min] [-max] read_parasitics [-min] [-max] report_delay_calculation [-corner corner_name] set_annotated_transition [-corner corner_name] set_annotated_delay [-corner corner_name] set_annotated_check [-corner corner_name] read_sdf [-corner corner_name] write_sdf [-corner corner_name] An example command script using multiple corners is shown below. read_liberty liberty1.lib read_verilog reg1.v link_design top define_corners ff ss read_sdf -corner ff reg1.sdf read_sdf -corner ss reg1_ss.sdf create_clock -name clk -period 10 {clk1 clk2 clk3} set_input_delay -clock clk 0 {in1 in2} report_timing -delay_type min_max report_timing -delay_type min_max -corner ss report_timing -delay_type min_max -corner ff Note that the following use of the set_min_library command show below read_liberty liberty1.lib set_min_library -min_version liberty1_min.lib liberty1.lib can be replaced with the following commands using min/max flags: read_liberty -max liberty1.lib read_liberty -min liberty1_min.lib .... The report_timing -unique_pins flag is used in conjuntion with -nworst to report multiple paths to an endpoint that traverse different pins without showing multiple paths with different rise/fall transitions. report_timing [-unique_pins] .... The set_max_delay/set_min_delay commands now support the -ignore_clock_latency option. set_max_delay -ignore_clock_latency set_min_delay -ignore_clock_latency Clock latency at the source and destination of the path delay is ignored. The constraint is reported in the default path group (**default**) rather than the clock path group when the path ends at a timing check. .... The write_sdf command writes an Standard Delay Format (SDF) file for the design. write_sdf [-divider /|.] [-significant_digits digits] [-gzip] [-no_timestamp] [-no_version] filename -divider separates hierarchy levels in name. It must be '/' or '.'. -significant_digits specifies the number of digits after the decimal point for delays -gzip flag writes the file in gzip compressed format -no_timestamp flag excludes the DATE statement in the header -no_version flags excludes the VERSION statement in the header filename is the name of the SDF file The SDF TIMESCALE is same as the time_unit in the first liberty file read. .... The group_path command now supports the -default flag. group_path -default When the -default flag is specified paths matching the from/through/to criteria are added to the path group named **default**. Either the -default or -name arguments must be specified. .... Common clock pessimism is now enabled by default (timing_remove_clock_reconvergence_pessimism true). .... The report_clock_timing command is used to report the worst clock skew. report_clock_timing [-type skew] [-setup|-hold] [-clock clocks] [-significant_digits digits] Only -type skew is supported. -setup and -hold are mutually exclusive. Release 1.10.1 2014/12/23 ------------------------- The set_annotated_check command now supports a -clock argument to specify a clock rise/fall edge to annotate. set_annotated_check -setup|-hold|-recovery|-removal [-rise] [-fall] [-min] [-max] [-from from_pins] [-to to_pins] [-clock rise|fall] [-cond sdf_cond] [-worst] check_value} The set_max_transition command now supports pin objects. set_max_transition [-clock_path] [-data_path] [-rise] [-fall] slew objects Release 1.10.0 2013/06/23 ------------------------- The default analysis type has changed from single to on_chip_variation. For designs that do not explicitly set the analysis type this may make the STA run longer because it is determining both minimum and maximum arrival times. Use the following command to explicitly set the analysis type to single. set_operation_conditions -analysis_type single .... The read_liberty -min|-max option is no longers supported. Use the set_min_library command after the the design has been linked instead. set_min_library -min_version min_library max_library .... The default value of timing_input_port_default_clock has changed to false. .... An Arnoldi reducer and delay calculator for use with detailed parasitics is now supported. Use the set_delay_calculator command to change the delay calculator. set_delay_calculator arnoldi .... The get_timing_arcs -filter option is now supported. get_timing_arcs [-filter expr] .... The set_clock_uncertainty -from_edge -to_edge options are no longer supported. .... The allocate_budgets and write_sdc commands now have a -significant_digits option for to control the number of digits in the SDC file. write_sdc [-no_timestamp] [-significant_digits digits] filename allocate_budgets [-levels all|level] [-format ptsh|dctcl|dcsh] [-file_format_spec format_spec] [-write_context] [-no_driving_cells] [-no_timestamp] [-significant_digits digits] [instance_list] Release 1.9.1 2011/03/02 ------------------------ The following commands are now supported. set_annotated_check -setup|-hold|-recovery|-removal [-rise] [-fall] [-min] [-max] [-from from_pins] [-to to_pins] [-clock rise|fall] [-cond sdf_cond] [-worst] check_value all_fanin -to sink_list [-flat] [-only_cells] [-startpoints_only] [-levels level_count] [-pin_levels pin_count] [-trace_arcs timing|enabled|all] all_fanout -from source_list [-flat] [-only_cells] [-endpoints_only] [-levels level_count] [-pin_levels pin_count] [-trace_arcs timing|enabled|all] remove_propagated_clock objects .... The create_generated_clock command now supports the phase locked loop options -pll_out and -pll_feedback. create_generated_clock [-pll_out pll_out_pin] [-pll_feedback pll_fdbk_pin] The -source, -pll_out and -pll_feedback must all be pins on the same PLL instance. The delay between the PLL out and feedback pins is removed from the source latency of the generated clock. .... The set_timing_derate command now supports -rise and -fall flags. set_timing_derate [-rise] [-fall] [-early] [-late] [-clock] [-data] [-net_delay] [-cell_delay] [-cell_check] factor [object_list] .... The update_timing command now supports the -full flag. update_timing [-full] Without -full arrivals are updated incrementally. With -full all arrivals are updated from scratch. .... The following commands return the total and worst negative slack in the design. total_negative_slack [-min] [-max] worst_negative_slack [-min] [-max] Release 1.9.0 2010/07/01 ------------------------ The set_disable_timing and remove_disable_timing commands now support get_timing_arcs results as arguments. set_disable_timing [get_timing_arcs -from u2/B -to u2/Z] set_disable_timing [get_timing_arcs -of_objects [get_lib_cells liberty1/snl_invx1]] remove_disable_timing [get_timing_arcs -from u2/B -to u2/Z] .... The get_timing_arcs command now supports the -of_objects argument. get_timing_arcs [-from from_pin] [-to to_pin] [-of_objects objects] The keyword arguments -from and -to cannot be used with -of_objects. Objects must be a collection of instances or library cells. .... The redirect command redirects the output from a group of commands to a TCL variable. redirect -variable var { cmds } .... The query_objects command is now supported. query_objects [-verbose] collection .... OpenAccess databases are no longer supported. Release 1.8.2 2009/11/18 ------------------------ The rise/fall from/through/to arguments of the group_path command are now supported. group_path [-from from_list] [-rise_from from_list] [-fall_from from_list] [-through through_list] [-rise_through through_list] [-fall_through through_list] [-to to_list] [-rise_to to_list] [-fall_to to_list] The create_generated_clock -combinational flag is now supported. The set_clock_groups command is now supported. The -allow_paths flag is ignored. set_clock_groups [-name name] [-logically_exclusive] [-physically_exclusive] [-asynchronous] [-allow_paths] -group clock_list The set_clock_sense command is now supported. The -pulse flag is ignored. set_clock_sense [-positive] [-negative] [-pulse pulse] [-stop_propagation] [clock clock_list] If there were non-unate timing arcs in the clock network previous releases would issue a warning and only propagate the positive unate clock edges. In this release both edges of the clock are propagated and no warning is issued. Use the set_clock_sense command to control the unateness of the non-unate clock edge if necessary. In previous releases the set_input_delay command on a clock source pin would set the clock source delay (insertion delay) of the clock pin. With this release the set_input_delay is ignored. The remove_disable_timing command is now supported. The remove_disable_timing removes disables from a corresponding set_disable_timing command. remove_disable_timing [-from from_port] [-to to_port] objects The following SDC commands are parsed and ignored: set_ideal_latency [-rise] [-fall] [-min] [-max] delay objects set_ideal_network [-no_propagation] object_list set_ideal_transition [-rise] [-fall] [-min] [-max] transition_time objects The linker now creates empty "block box" cells for instances that reference undefined cells when the variable link_create_black_boxes is "true". When link_create_black_boxes is false an error is reported and the link fails. Release 1.8.1 2009/05/01 ------------------------ The STA now supports threading on multi-processor systems. The STA executable -threads argument specifies the number of threads to use. app/sta -threads max|integer The default value is one. If -threads is "max" the thread count is set to the processor count. Using multiple threads on multi-processor hosts reduces the wall run time by running multiple computations in parallel on each processor. The TCL variable timing_report_unconstrained_path is deprecated. Use timing_report_unconstrained_paths instead. The liberty library default values for the default_input_pin_cap and default_inout_pin_cap attributes has been changed from 1.0 to 0.0. Problems found by read_parasitics are now reported as warnings rather than errors. The create_generated_clock -edge_shift option is now supported. The timing_input_port_default_clock variable is now supported. timing_input_port_default_clock true|false The timing_all_clocks_propagated variable is now supported. When true, all clocks are propagated. timing_all_clocks_propagated true|false Release 1.8.0 2008/10/01 ------------------------ The memory used by the STA has been signficantly reduced. The effective capacitance calculated by the Dartu/Menezes/Pileggi delay calculation algorithm has improved accuracy. This will change delay calculation results when SPEF/SPF RSPF/DSPF parasitics are used. Release 1.7.2 Patches --------------------- The common reconvergent pressimism removal (crpr) for clocks with combinational reconvergence is controlled by the timing_clock_combinational_reconvergence_pessimism variable. The valid values are: converge - use the crpr at the pin that the paths converge diverge - use the crpr at the pin that the paths diverge none - use zero for the crpr Release 1.7.2 2008/01/28 ------------------------ Verilog 2001 port declaratation support has been added. An example is shown below. module top (input in1, in2, clk1, clk2, clk3, output out); Release 1.7.1 patches --------------------- The set_disable_clock_gating_check command disables clock gating checks. The remove_disable_clock_gating_check command removes a previous disable. The objects are clock gating cells (instances) or the clock or enable pin on the clock gating instance. set_disable_clock_gating_check objects remove_disable_clock_gating_check objects .... The set_units command is now supported. set_units [-capacitance cap_unit] [-resistance res_unit] [-time time_unit] [-voltage voltage_unit] [-current current_unit] [-power power_unit] The units are specified as a scale factor followed by a unit name. The unit names are shown below. capacitance f time s current A resistance ohm voltage v power w The scale factors are as follows. M 1E+6 k 1E+3 m 1E-3 u 1E-6 n 1E-9 p 1E-12 f 1E-15 An example of the set_units command is shown below. set_units -time ns -capacitance pF -current mA -voltage V -resistance kOhm .... The following SDC commands are parsed but have no effect on timing results. create_voltage_area [-name name] [-coordinate coordinates] [-guard_band_x guard_x] [-guard_band_y guard_y] cells set_level_shifter_strategy [-rule rule_type] set_level_shifter_threshold [-voltage volt] .... The first liberty library that is read sets the default units used for tcl commands and reporting. In previous releases they came from the last library read. Release 1.7.1 2007/08/13 ------------------------ The report_annotated_delay and report_annotated_check commands are now supported. report_annotated_delay [-cell] [-net] [-from_in_ports] [-to_out_ports] [-max_line lines] [-list_annotated] [-list_not_annotated] [-constant_arcs] report_annotated_check [-setup] [-hold] [-recovery] [-removal] [-nochange] [-width] [-period] [-max_skew] [-max_line lines] [-list_annotated] [-list_not_annotated] [-constant_arcs] .... The report_timing -group option is now supported. report_timing [-group group_names] Only path groups in group_names are reported. .... The set_max_transition command now supports clock objects. set_max_transition [-clock_path] [-data_path] [-rise] [-fall] slew objects The object list is a list of ports, clocks or designs. If specified for a design, the default maximum transition is set for the design. If specified for a clock, the maximum transition is applied to all pins in the specified clock domain. The -clock_path option restricts the maximum transition to clocks in clock paths. The -data_path option restricts the maximum transition to clocks in data paths. The -clock_path, -data_path, -rise, and -fall flags only apply to clock objects. .... Support for pulse clocks has been added. The liberty pin pulse_clock attribute specifies the triggering edge and clock sense for a pulse generator. pulse_clock rise_triggered_high_pulse|rise_triggered_low_pulse fall_triggered_high_pulse|fall_triggered_low_pulse .... The timing_report_unconstrained_path variable is now supported. timing_report_unconstrained_path true|false When timing_report_unconstrained_path is true, report_timing reports unconstrained paths if no constrained paths are found. The default value is "false". .... The timing_disable_clock_gating_checks variable is now supported. timing_disable_clock_gating_checks true|false When timing_disable_clock_gating_checks is true, clock gating setup and hold timing checks are disabled. The default value is "false". .... The timing_disable_recovery_removal_checks variable is now supported. timing_disable_recovery_removal_checks true|false When timing_disable_recovery_removal_checks is true, recovery and removal timing checks are disabled. The default value is "false". .... The read_sdf command now supports the -path and -cond_use options. read_sdf [-path path] [-cond_use min|max|min_max] The path specifies a path to a hierarchical instance in the design to annotate delays on. The cond_use option is used when the SDF file contains conditional delays and the library does not have conditional delay arcs. If cond_use is min, the minimum of all conditional delays is used. If cond_use is max, the maximum of all conditional delays is used. If cond_use is min_max and min_max operating conditions are in use, the minimum of the conditional delay values is used for minimum operating conditions and the maximum of the conditional delay values is used for maximum operating conditions. The sdf reader now supports the PORT, DEVICE, CONDELSE and PERIOD statements. .... The report_constraint command now supports minimum period and max skew checks. report_constraint [-min_period] [-max_skew] The report_constraint -min_pulse_width command now only reports the constraint with the least slack rather than all min pulse width checks. Release 1.7.0 2007/03/16 ------------------------ The set_clock_latency -clock option is now supported. set_clock_latency [-source] [-clock clock] [-rise] [-fall] [-min] [-max] [-early] [-late] delay object_list remove_clock_latency [-source] [-clock clock] object_list The set_timing_derate command now supports the optional object_list argument. set_timing_derate [-early] [-late] [-clock] [-data] [-net_delay] [-cell_delay] [-cell_check] factor [object_list] object_list is a list of nets, instances or library cells. The following commands now support -regexp and -nocase flags: get_cells get_clocks get_lib_cells get_lib_pins get_libs get_nets get_pins get_ports Without -regexp unix style file glob pattern matching is used. With -regexp TCL regular expression matching is used. When the -nocase is used regular expressions are case insensitive. The -nocase flag can only be used with -regexp. The timing_dynamic_loop_breaking variable is now supported. timing_dynamic_loop_breaking true|false When timing_dynamic_loop_breaking is "false" combinational logic loops are disabled by disabling timing arcs in the loop. When timing_dynamic_loop_breaking is "true" all paths around the loop are reported. The default value is false. Release 1.6.2 patches --------------------- The -rise_to and -fall_to arguments are now supported by all exceptions. set_false_path [-rise_to to_list] [-fall_to to_list] set_multicycle_path [-rise_to to_list] [-fall_to to_list] set_min_delay [-rise_to to_list] [-fall_to to_list] set_max_delay [-rise_to to_list] [-fall_to to_list] reset_path [-rise_to to_list] [-fall_to to_list] Release 1.6.2 2006/12/08 ------------------------ The set_input_delay/set_output_delay -reference_pin option is now supported. set_input_delay -reference_pin pin [-clock clock] [-clock_fall] set_output_delay -reference_pin pin [-clock clock] [-clock_fall] For propagated clocks, the input arrival time is relative to the clock arrival time at the reference pin (the clock source latency and network latency from the clock source to the reference pin). For ideal clocks, input arrival time is relative to the reference pin clock source latency. With the -clock_fall flag the arrival time is relative to the falling transition at the reference pin. If no clocks arrive at the reference pin the set_input_delay command is ignored. If no -clock is specified the arrival time is with respect to all clocks that arrive at the reference pin. The set_input_delay/set_output_delay -source_latency_included and -network_latency_included options are now supported. set_input_delay [-source_latency_included] [-network_latency_included] set_output_delay [-source_latency_included] [-network_latency_included] If -source_latency_included is not specified the clock source latency (insertion delay) is added to the delay value. If -network_latency_included is not specified and the clock is ideal the clock latency is added to the delay value. The set_clock_uncertainty command now supports -rise_from, -fall_from, -rise_to and -fall_to arguments. set_clock_uncertainty [-from|-rise_from|-fall_from clocks] [-to|-rise_to|-fall_to clocks] The report_timing command now supports the -path_type full_clock_expanded option. If the source or target clock is generated and propagated, the path from the clock source pin is also reported. report_timing -path_type command|end|full|full_clock |full_clock_expanded|short|summary The report_timing command now supports the -rise_to and -fall_to arguments as alternative to using -delay_type max_rise|min_rise|max_fall|min_fall. The report_timing command is now faster if only a -to argument is used. The report_min_pulse_width command is now supported. report_min_pulse_width [-verbose] [-nosplit] [-significant_digits digits] [pins] If no pins are specified all pins in the clock network with min pulse width checks are reported. The report_constraint command now supports the -min_pulse_width option. report_constraint [-min_pulse_width] The set_min_pulse_width command is now supported. set_min_pulse_width [-low] [-high] value objects Objects can be pins, instances, or clocks. If -low and -high are not specified the minimum width applies to both high and low pulses. The report_clock command now takes a list of clock names to report. report_clock [clock] The get_ports function now supports the -filter arguement. get_ports [-filter expr] where "expr" is of the form attribute ==|=~ value The only supported attribute for ports is direction. The timing_disable_internal_inout_cell_paths variable is now supported. timing_disable_internal_inout_cell_paths true|false The default value is "true". When set to "true", paths from bidirectional (inout) ports back into the instance are disabled. When set to "false", paths from bidirectional (inout) ports back into the instance are enabled. The -compatibility command line option is no longer supported. DC compatibility mode has been removed. Release 1.6.1 2006/10/04 ------------------------- The timing_disable_cond_default_arcs variable is now supported. timing_disable_cond_default_arcs true|false When set to true, default timing arcs with no condition ("when" expression) are disabled if there are other conditional timing arcs between the same pins. The default value is false. The remove_clock_transition command removes the clock transition time set with the set_clock_transition command. remove_clock_transition clock_list The remove_clock_latency command removes the clock latency set with the set_clock_latency command. remove_clock_latency [-source] object_list object_list is a list of clocks, pins, or ports The liberty mode_definition and mode statements are now supported for case analysis. Incremental SDF delay annotation is now supported. INCREMENT is allowed as an alias for INCREMENTAL. The get_pins "-of_object" argument has been renamed to "-of_objects" to match the SDC definition. Release 1.5.1 2006/05/16 ------------------------- No user visible or api changes. Release 1.5.0 2006/03/05 ------------------------- The read_min_max_lib command is no longer supported. The read_liberty command now supports argument flags for min/max libraries. read_liberty [-min] [-max] filename Libraries read with the -min flag are used for min path delay calculation and libraries read with the -max flag are used for max path delay calculation. Support for gcc 3.4.4 and swig 1.3.28 added. Release 1.4.4 2005/12/08 ------------------------- The current_instance command now supports non-null instance arguments. The set_load command now supports -rise and -fall options for transition specific loads. The -rise and -fall options can not be used for net objects. The report_timing command -delay option has been renamed to -delay_type. The set_timing_derate command is now supported. set_timing_derate [-early] [-late] [-clock] [-data] [-net_delay] [-cell_delay] [-cell_check] derate Use the reset_timing_derate command to remove all derating factors. Paths that start at latches only report the path from the latch with a "time given to startpoint" rather than the entire path through the D to Q path of the latch. Liberty rise/fall_capacitance and rise/fall_capacitance_range attributes are now supported. The default_significant_digits variable has been renamed to report_default_significant_digits. Release 1.4.1 2005/05/20 ------------------------- The read_min_max_lib command is now supported. read_min_max_lib -name name -min liberty_min_file [-min_operating_condition min_op_cond] [-use_min_operating_condition min_op_cond_used] -max liberty_max_file [-max_operating_condition max_op_cond] [-use_max_operating_condition min_op_cond_used] The read_min_max_lib merges the timing values from two liberty files together to create a new library used for multi-operating condition analysis. The merged library is named with the -name argument. The libraries named in liberty_min_file and liberty_max_file are not accessible after they are merged. The timing values in liberty_min_file are used at the operating conditions named min_op_cond (default MIN). The min_op_cond operating conditions are from the operating condition min_op_cond_used in liberty_min_file. The timing values in liberty_max_file are used at the operating conditions named max_op_cond (default MAX). The max_op_cond operating conditions are from the operating condition max_op_cond_used in liberty_max_file. Use the set_operating_conditions command to use the merged library timing values. set_operating_conditions -analysis_type bc_wc|on_chip_variation -min min_op_cond -max max_op_cond The read_parasitics command now supports multiple analysis points. read_parasitics [-analysis_point ap] If ap is min the parasitics are used for min delay calculation If ap is max the parasitics are used for max delay calculation. If ap is min_max the parasitics are used for both min and max delay calculation. The default value of ap is min_max. Along these same lines, if an OpenAccess has parasitics when it is read using the read_oa_db command, the STA looks for analysis points named "min" and "max". If it finds both, they are used for corresponding min and max delay calculation. If not, the STA looks for an analysis point named "min_max". If found, it is used for min and max delay calculation. Release 1.3.10 2005/04/04 ------------------------- The read_parasitics command now supports a coupling capacitance reduction factor, and an option to keep coupling capacitors. read_parasitics [-keep_capacitive_coupling] [-coupling_reduction_factor factor] Coupling capacitances in parasitic networks are multiplied by the coupling factor when the parasitic is reduced. Release 1.3.6 2005/01/30 ------------------------ OpenAccess support for multiple parasitic analysis points. The STA looks for an analysis point named "max" first, then "min". If it finds both, they are used for corresponding min and max delay calculation. Release 1.3.2 2004/12/20 ------------------------ OpenAccess 2.2 verilog2oa is now supported. Include a file that contains Verilog modules for each of the Liberty library cells that defines the ports and their declarations. verilog2oa -verilog "reg1.v liberty1.v" \ -top top -lib reg1 -view verilog -blackBox This creates an EMH network for a module named "top" in the "verilog" view of the "reg1" library. To read this database into the sta, use the following commands. read_oa_db reg1 top verilog read_liberty liberty1.lib Release 1.3.1 2004/12/15 ------------------------ Keyword arguments for commands can down be abreviated. For example report_timing -sig 3 can be used instead of report_timing -significant_digits 3 The report_timing command now supports the -slack_lesser_than and -slack_greater_than arguments. The find command is now supported for compatibility with DesignCompiler(tm) scripts. find [-hierarchy] [-flat] type patterns Supported types are port, net, pin, clock, library, lib_cell and lib_pin. Release 1.3.0 2004/12/03 ------------------------ The report_constraint command is now supported. report_constraint [-all_violators] [-verbose] [-path_type slack_only|end] [-max_delay] [-min_delay] [-recovery] [-removal] [-clock_gating_setup] [-clock_gating_hold] [-max_transition] [-min_transition] [-significant_digits digits] [-nosplit] [> filename] [>> filename] The reset_path command is now supported. reset_path [-setup] [-hold] [-rise] [-fall] [-from from_list] [-rise_from from_list] [-fall_from from_list] [-through through_list] [-rise_through through_list] [-fall_through through_list] [-to to_list] The reset_path command removes any matching set_false_path, set_multicycle_path, set_max_delay or set_min_delay commands. The set_false_path, set_multicycle_path, set_max_delay and set_min_delay commands now support the -reset_path option to delete matching exceptions before adding the exception being defined. The set_compatibilty command is no longer supported. Use the compatibility command line option to set the compatibility mode. sta -compatibility pt|dc The default compatibilty mode has been changed to "pt". Latch behavior is now controlled with the timing_latch_required_on_open variable. timing_latch_required_on_open true|false The default value is true. When false the required time for latches is the closing edge of the enable clock. This is a more accurate choice for the required time because the setup check is also to the closing edge of the latch enable. The set_instance_pvt command is used to set the process, voltage and temperature for an instance in the design. set_instance_pvt insts [-min] [-max] [-process process] [-voltage voltage] [-temperature temperature] The process, voltage and temperature values default to the operating condition if they are not supplied. Release 1.2.17 2004/11/23 ------------------------- The timing_clock_gating_propagate_enable variable is now supported. timing_clock_gating_propagate_enable true|false When set to true, paths of gated clock enables are propagated through the clock gating instance. If the gated clock controls sequential elements setting timing_clock_gating_propagate_enable to false prevents spurious paths from the clock enable. The default value is "true". The timing_enable_preset_clear_arcs variable is now supported. timing_enable_preset_clear_arcs true|false When set to true, paths through asyncronous preset and clear timing arcs are searched. The default value is "false". Liberty three dimensional tables are now supported. Release 1.2.14 2004/10/30 ------------------------- The SDF reader now optionally supports pin and instances names that do not quote dividers in escaped names. read_sdf [-unescaped_dividers] With the -unescaped_dividers flag, path names in the SDF do not have to escape hierarchy dividers when the path name is escaped. For example, the escaped Verilog name "\inst1/inst2 " can be referenced as "inst1/inst2". The correct SDF name is "inst1\/inst2", since the divider does not represent a change in hierarchy in this case. Release 1.2.10 2004/08/25 ------------------------- The all_registers command is now supported. all_registers [-clock clocks] [-rise_clock clocks] [-fall_clock clocks] [-cells] [-data_pins] [-clock_pins] [-async_pins] [-output_pins] [-level_sensitive] [-edge_triggered] Release 1.2.5 2004/04/17 ------------------------ Suse Linux 64 bit port complete. Release 1.2.4 2004/04/01 ------------------------ The set_max_time_borrow command is now supported. set_max_time_borrow limit latch_instance|enable_pin|data_pin|clock The create_generated_clock -master_clock option is now supported. The set_data_check command is now supported. set_data_check [-from from_object] [-rise_from from_object] [-fall_from from_object] [-to to_object] [-rise_to to_object] [-fall_to to_object] [-setup] [-hold] [-clock clock_object] value Release 1.2.2 2004/01/13 ------------------------ The group_path command is now supported. group_path -name group_name [-weight weight] [-critical_range range] [-from from_list] [-through through_list] [-to to_list]} The -weight and -critical_range arguements are ignored. Differing driver and slew liberty library slew thresholds are now supported. The report_timing -path_type "end" and "summary" are now supported. The set_driving_cell command -min and -max options are now supported. The read_parasitics command now supports parasitic network reduction after each net is read, substantially reducing the memory footprint required to store the parasitics. read_parasitics -reduce_to pi_elmore|pi_pole_residue2 -delete_after_reduce The parasitics can be reduced to a pi/elmore (rspf) model or a second order pi/pole/residue model. Release 1.1.7 2003/10/19 ------------------------ The echo command is similar to the tcl "put" command and supports redirection. echo [-n] args... The set_annotated_delay and set_annotated_transition commands are now supported. set_annotated_delay -cell|-net [-rise] [-fall] [-min] [-max] [-from from_pins] [-to to_pins] delay set_annotated_transition [-rise] [-fall] [-min] [-max] slew pin_list Liberty timing group conditional "when" expressions are now supported. The create_clock -add option to define multiple clocks on a pin is now supported. The following SDC commands are parsed and ignored. set_max_dynamic_power set_max_leakage_power set_min_porocity Release 1.1.6 2003/08/02 ------------------------ Release 1.1.5 2003/07/11 ------------------------ The source command now supports output redirection. source [-echo] [-verbose] filename [> filename] [>> filename] Release 1.1.4 2003/06/10 ------------------------ The report_timing -path_type option is now supported. report_timing [-path_type short|full|full_clock] The following variable are now supported for analysis type on_chip_variation: timing_remove_clock_reconvergence_pessimism false|true timing_clock_reconvergence_pessimism normal|same_transition Release 1.1.3 2003/05/06 ------------------------ The allocate_budgets command now has a -no_driving_cells option to suppress the inclusion of set_driving_cell commands in the budget constraint files. This is useful when the driving cell libraries are not available in the tools that use the budget. SDF COND support added. The read_edif command has additional arguments to support the confused world of fpgas. read_edif [-cell_name cell_name] [-ignore_libraries] [-group_bus_ports] filename -cell_name overrides cell name for any cell that has a contents section. -ignore_libraries ignores library names. All cells that do not already have a definition are built in the edif library. libraryRefs search all libraries for the cell named in the cellRef. -group_bus_ports groups bus ports that are individually defined into a bus as if they were defined using an array. Release 1.1.2 2003/03/07 ------------------------ The report_timing -nets option is now supported. The report_clock command reports the period and waveform for all of the clocks. A mode to control compatibility is now supported from the command line or as a TCL command. sta [-compatibility native|pt|dc] set_compatibility native|pt|dc The read_edif command reads an edif netlist. Release 1.1.1 2003/01/20 ------------------------ The read_spf command has been replaced by the read_parasitics command, which reads rspf, dspf and spef format files. The set_timing_disable command now supports library cell and port arguments. The liberty reader now supports the following bus_naming_style variable = value; The following network editing commands are now supported: connect_net net pins_ports create_cell cell_names lib_cell_name create_net net_list disconnect_net net pins_ports|-all remove_cell cell_list remove_net net_list swap_cell cell_list swap_in Release 1.1.0 2002/02/12 ------------------------ The report_timing command -nworst option reports more than one path per endpoint. The default value of path_end_count is 1. report_timing -nworst path_end_count Gated clock timing checks are disabled unless a set_clock_gating_check command has been executed. The following SDC commands are now supported. create_generated_clock get_pins -hsc get_nets -hsc hierarchy_separator variable set_case_analysis set_drive set_drive_resistance (alias for set_drive) set_hierarchy_separator set_max_area set_max_capacitance set_max_fanout set_max_transition set_min_capacitance set_min_fanout set_resistance The check_timing command now has options to control which checks are performed. check_timing [-verbose] [-unconstrained_endpoints] [-multiple_clock] [-no_clock] [-no_input_delay] [-loops] [-generated_clocks] [> filename] [>> filename] The allocate_budgets command now has a -no_timestamp option to suppress insertiing the date and time into the context files. The write_sdc command is now supported. write_sdc [-no_timestamp] filename Interface Logic Model (ILM) support has been added with the identify_interface_logic and write_ilm_netlist commands. identify_interface_logic [-ignore_ports ports_list] [-auto_ignore] [-latch_level level] [-remove_disabled_logic] write_ilm_netlist [-include_all_net_pins] [-verbose] filename Release 1.0.19 2002/04/24 ------------------------- The help command finds commands matching a pattern and shows their arguments. help pattern set_clock_gating_check -high -low arguments are now supported. The following commands have been renamed: show_cell report_lib_cell show_pin report_pin show_net report_net show_instance report_instance or report_cell show_path report_path show_arrival report_arrival show_edges report_edges report_delay_calculation now has a -significant_digits argument. All printing commands now support file redirection. # Local Variables: # mode:text # End: