Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
15 years ago

Using Quartus I TimeQuest Analyzer in command-line

Hi all.

Is there a way to report top failing paths (or even better ALL failing paths) in a file using TimeQuest analyzer in command line?

I would like to add this feature to our scripts.

Thanks

- Julien

3 Replies

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    Unfortunately, there is no easy way to do this. You would have to write a Tcl script using the API and then run it with 'quartus_sta -t <script file> [<script args>]'. Use 'quartus_sh --qhelp' for assistance with the API and look under the sdc and sta sections.

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    Note that you can have an Analysis script run during normal STA timing sign-off. Just add it under Assignments -> Settings -> TimeQuest. Just do something simple like:

    report_timing -setup -npaths 200 -detail path_only -file "TQ_200paths_setup.txt"

    report_timing -hold -npaths 200 -detail path_only -file "TQ_200paths_hold.txt"

    report_timing -recovery -npaths 200 -detail path_only -file "TQ_200paths_recovery.txt"

    report_timing -removal -npaths 200 -detail path_only -file "TQ_200paths_removal.txt"

    The thing is that this will only write out for the slow model. This is what most people want, but the hold and removal reports are generally pretty useless. You can do a more complex script that runs from a quartus_sta call:

    create_timing_netlist

    read_sdc

    update_timing_netlist

    report_timing -setup -npaths 200 -detail path_only -file "TQ_200paths_setup_slow.txt"

    set_operating_condition -fast_model ;# I'm not sure if this is correct

    report_timing -hold -npaths 200 -detail path_only -file "TQ_200paths_hold_fast.txt"

    Of course that needs to re-run TimeQuest multiple times. (There may be a way to do it from the other script, but not sure how.)

    This is all good for first pass stuff, but I find that only looking at text timing reports misses a lot of stuff. In some cases it's good enough, but I find "power users" who only like scripts and text reports are actually limiting what they can do. Just something to watch out for.