Home > Community > Forums > Digital Implementation > Regarding advance TCL scripts

Email

* Required Fields

Recipients email * (separate multiple addresses with commas)

Your name *

Your email *

Message *

Contact Us

* Required Fields
First Name *

Last Name *

Email *

Company / Institution *

Comments: *

 Regarding advance TCL scripts  

Last post Fri, Jan 20 2012 8:22 AM by diablo. 1 replies.
Started by abhingp01 19 Jan 2012 08:45 PM. Topic has 1 replies and 2091 views
Page 1 of 1 (2 items)
Sort Posts:
  • Thu, Jan 19 2012 8:45 PM

    • abhingp01
    • Not Ranked
    • Joined on Thu, Aug 6 2009
    • Posts 14
    • Points 295
    Regarding advance TCL scripts Reply

    Hi,

    Objective : Want to get all the endpoints for a given startpoint with positive slack only.

    I am bit new to ets :)

    ##--------------------------------- Generic Procedure defination -----------------------------------------

    proc user_get_object_names {collection} {
       set objectList {}
       foreach_in_collection item $collection {
        lappend objectList [get_object_name $item]
       }
       return $objectList
    }

    proc user_print_object_names {collection} {
      set objectListPrint {}
      foreach_in_collection item $collection {
        set name [get_object_name $item]
        puts "Path : $name\n"
      }
      return $objectListPrint
    }

    ##-------------------------------------------------------------------------------

    set start_point aa/bb/some_D

    set paths_list_fanout {}
    set paths_fanout_list [user_get_object_names $paths_fanout]

    set sz 0
    set rpt_fanout 0
    foreach currpath $paths_fanout_list {
        set rpt_curr_data [report_timing -collection -to $currpath]
        append_to_collection rpt_fanout $rpt_curr_data
    }

    set sz [sizeof_collection $rpt]
    puts "Total fanout paths are $sz"

    set szpos 0; set pos_fanout 0
    set pos_fanout [filter_collection $rpt_fanout {(slack > 0.0)}]
    set szpos [sizeof_collection $pos_fanout]
    puts "Total fanout paths with positive slack are $szpos" ## This prints number of paths with positive slack

     user_print_object_names $pos_fanout  

    I am expecting now after this proc call it should print all the path names with positive slack in collection $pos_fanout but its not happening.


    Can anyone point out where I am going wrong please.

     Also can some one point me to a good starting source to understand collection better. 

    Regards,
    Abhi

    Filed under:
    • Post Points: 20
  • Fri, Jan 20 2012 8:22 AM

    • diablo
    • Top 100 Contributor
    • Joined on Thu, Aug 14 2008
    • fargo, ND
    • Posts 77
    • Points 1,255
    Re: Regarding advance TCL scripts Reply
    There might be alternative to using this tcl script. Take a look at 'report_timing' command reference. You can probably do something like report_timing -from start_point -min_slack 0.0 -view 'your analysis view'
    • Post Points: 5
Page 1 of 1 (2 items)
Sort Posts:
Started by abhingp01 at 19 Jan 2012 08:45 PM. Topic has 1 replies.