Forum Discussion

Jamil's avatar
Jamil
Icon for New Contributor rankNew Contributor
6 years ago

Quartus crash! The quartus prime software quit unexpectedly! Could some body help? Thanks please see details below.

Problem Details

Error:

Internal Error: Sub-system: STA, File: /quartus/tsm/sta/sta_odv.cpp, Line: 643

Try setting the quartus.ini sta_odv_clock_path_dfs_max_depth=<integer> to a greater value (currently 33, -1 for unlimited).

Processors in use: 8

Stack Trace:

0x5e4928: STA_ODV_MGR::get_path_odv_nodes(DSPF_DELAY_CORNER&, STA_CRPR_BRANCH_POINT const&, STA_CRPR_BRANCH_POINT const&, int, std::vector<STA_ODV_RE_NODE, std::allocator<STA_ODV_RE_NODE> >&, TDB_RE_HOP&, int&) const + 0xc48 (tsm_sta)

0x5e5290: STA_ODV_MGR::get_cell_odv_spatial_correlation_adjustment(TDB_CORNER*, STA_CRPR_BRANCH_POINT const&, STA_CLOCK const*, STA_CRPR_BRANCH_POINT const&, STA_CLOCK const*, STA_CRPR_BRANCH_POINT const&, bool, bool, int, int, float, float, float, float) + 0x8c0 (tsm_sta)

0x5965f7: STA_TQ2_CRPR::compute_odv_credit(STA_CRPR_BRANCH_POINT const&, STA_CRPR_BRANCH_POINT const&, STA_CRPR_BRANCH_POINT const&, STA_CRPR_BRANCH_POINT const&, STA_ODV_MGR const*, STA_TRAVERSAL_SPEC const*, TDB_NODE const*&, TDB_NODE const*&, STA_CRPR_RE const*, STA_CRPR_RE const*) + 0x457 (tsm_sta)

0x597b44: STA_TQ2_CRPR::calculate_crpr_credit(STA_CRPR_BRANCH_POINT, STA_CRPR_BRANCH_POINT, bool, STA_EOL_MGR const*, STA_ODV_MGR const*, STA_TRAVERSAL_SPEC const*, STA_CRPR_RESULT_DETAILS*) + 0x394 (tsm_sta)

0x53bc09: STA_TRAVERSAL_SPEC::get_required_time_at_register(STA_NODE const*, STA_FORWARD_TAG_BASE const*, STA_CLOCK_TAG const*, TDB_DELAY_PROXY const&, STA_REQUIREMENT_MASTER const*, bool*, bool, STA_CRPR_RESULT_DETAILS&, bool) const + 0x449 (tsm_sta)

0x532333: void STA_TRAVERSAL_MANAGER::create_required_tag_for_register<STA_ARRIVAL_TAG>(STA_TRAVERSAL_SPEC*, STA_NODE*, STA_NODE const*, STA_CLOCK_TAG const*, TDB_DELAY_PROXY&, STA_ARRIVAL_TAG*, TDB_DELAY_PROXY&, STA_REQUIREMENT_MASTER::PATH_TYPE, STA_SAFE_RISE_FALL_TIME const&, STA_SAFE_RISE_FALL_TIME const&) + 0x463 (tsm_sta)

0x51108d: STA_TRAVERSAL_MANAGER::create_required_tags_at_endpoint(STA_NODE*) + 0x56d (tsm_sta)

0x527b28: STA_TRAVERSAL_MANAGER::propagate_clock_and_arrival_tags_to_node_internal(STA_NODE*, bool) + 0x1108 (tsm_sta)

0x527cd8: void STA_TRAVERSAL_MANAGER::propagate_clock_and_arrival_tags_from_node<QTL::FeederProxy<10, STA_NODE*>, STA_TRAVERSAL_MANAGER::propagate_levelized_clock_and_arrival_tags(bool)::{lambda(STA_NODE*)#1}>(STA_NODE*, STA_TRAVERSAL_MANAGER::propagate_levelized_clock_and_arrival_tags(bool)::{lambda(STA_NODE*)#1}&, QTL::FeederProxy<10, STA_NODE*>&) [clone .constprop.1328] + 0x48 (tsm_sta)

0x5286e1: tbb::interface9::internal::do_iteration_task<void QTL::parallel_do_chunked_no_serial_attempt<10, boost::iterators::filter_iterator<STA_GRAPH::STARTPOINT_PRED, __gnu_cxx::__normal_iterator<STA_NODE**, std::vector<STA_NODE*, std::allocator<STA_NODE*> > > >, STA_TRAVERSAL_MANAGER::propagate_levelized_clock_and_arrival_tags(bool)::{lambda(STA_NODE*, QTL::FeederProxy<10, STA_NODE*>&)#5}>(boost::iterators::filter_iterator<STA_GRAPH::STARTPOINT_PRED, __gnu_cxx::__normal_iterator<STA_NODE**, std::vector<STA_NODE*, std::allocator<STA_NODE*> > > >, STA_TRAVERSAL_MANAGER::propagate_levelized_clock_and_arrival_tags(bool)::{lambda(STA_NODE*, QTL::FeederProxy<10, STA_NODE*>&)#5}, STA_TRAVERSAL_MANAGER::propagate_levelized_clock_and_arrival_tags(bool)::{lambda(STA_NODE*, QTL::FeederProxy<10, STA_NODE*>&)#5})::{lambda(QTL::TBB_ITEM_GROUP<STA_NODE*, 10>, tbb::interface9::parallel_do_feeder<QTL::TBB_ITEM_GROUP>&)#1}, QTL::TBB_ITEM_GROUP>::execute() + 0x81 (tsm_sta)

0x27569: tbb::internal::custom_scheduler<tbb::internal::IntelSchedulerTraits>::local_wait_for_all(tbb::task&, tbb::task*) + 0x519 (tbb)

0x52abc7: STA_TRAVERSAL_MANAGER::propagate_levelized_clock_and_arrival_tags(bool) + 0x1a07 (tsm_sta)

0x52b0bd: STA_TRAVERSAL_MANAGER::propagate_tags_forward(bool) + 0x4d (tsm_sta)

0x564f02: STA_TIMER_ENGINE_IMPL::perform_analysis(STA_TIMER_ENGINE::INPUT_PARAMETERS const&) + 0xa72 (tsm_sta)

0x4a655d: sta_tq2_compute_slack_for_tdc(bool, bool, STA_TDC_FILTER*, bool, bool, bool, bool, bool) + 0x6ad (tsm_sta)

0x19dff6: RTM_RACAD_TIMING_ANALYSIS::perform_timing_analysis(TDC_ACCESSORIES_CALLBACK_INTERFACE*, bool) + 0xa6 (tsm_rtm)

0x1a03a8: RTM_RACAD_TIMING_ANALYSIS::perform_racad_timing_analysis(bool, bool) + 0x28 (tsm_rtm)

0x1870d0: RTM_RACAD_RETIMING_PREDICTION::perform_retiming_prediction() + 0x3a0 (tsm_rtm)

0x9ab05: TDC_RACAD_SCOPED_MANAGER::TDC_RACAD_SCOPED_MANAGER(e_tdc_accessories_delay_corners, bool, bool, bool, bool) + 0x275 (tsm_tdc)

0x428db: FTI_SYS::FLOW_MGR::run_flow(FTI_NETLIST_ENV&, FTI_SYS::FLOW_OPTIONS const&, bool, bool) + 0x19b (tsm_fti)

0x4395d: FTI_SYS::FLOW_MGR::run_flow_wrapper(FTI_SYS::FLOW_OPTIONS const&) + 0x34d (tsm_fti)

0x37720: FTI_SYS::run_flow(FTI_SYS::FLOW_OPTIONS const&) + 0x70 (tsm_fti)

0x17e638: vpr_qi_timing_run_fti(TDC_ACCESSORIES*, e_tdc_accessories_analysis_type, t_tdc_accessories_parameters const&, bool, int*, int*, float*, float*, float*, float*, float*, float*, float*) + 0x718 (fitter_vpr20kmain)

0x181095: l_perform_timing_analysis_and_transfer_slack_data(int*, int*, t_vpr_qi_tdc_accessories_slack_data_params*, VPR_QI_TIMING_TDC_BACKGROUND_DATA const&, t_tdc_accessories_parameters*, e_fitter_flow_stage, e_tdc_accessories_analysis_type) + 0x235 (fitter_vpr20kmain)

0x181988: l_get_slack_data_all_netlists(int*, int*, t_vpr_qi_tdc_accessories_slack_data_params*, s_direct_tan_api_options) + 0x878 (fitter_vpr20kmain)

0x307e2d: altera_timing_calculate_slack_data + 0x2dd (fitter_vpr20kmain)

0x83ace0: dap_perform_timing_analysis_with_provided_data(s_dap_timing_analysis_data*, unsigned char, char const*) + 0x170 (fitter_vpr20kmain)

0x856987: dap_perform_timing_analysis(unsigned char, char*) [clone .part.2181] + 0x87 (fitter_vpr20kmain)

0x85e9f5: l_dap_prepare_for_anneal(char const*, s_annealing_sched*) + 0x645 (fitter_vpr20kmain)

0x861fdc: dap_c_anneal + 0xbc (fitter_vpr20kmain)

0x4a71b4: aa_do_bulk_of_placement_phase + 0x304 (fitter_vpr20kmain)

0x4ae0fb: aa_try_place + 0x1bb (fitter_vpr20kmain)

0x4ae20a: aa_flow_do_placement_attempt + 0x2a (fitter_vpr20kmain)

0x52b25d: aa_flow_place + 0x20d (fitter_vpr20kmain)

0x8872e: (anonymous namespace)::place_internal(e_fitter_flow_stage, unsigned long long*) [clone .constprop.5623] + 0x1e (fitter_vpr20kmain)

0x144399: VPR_QI_FACADE::post_bsyn_placement_flow() + 0x29 (fitter_vpr20kmain)

0x14484d: VPR_QI_FACADE::vpr_bsyn_flow(bool, bool) + 0x6d (fitter_vpr20kmain)

0x6fcdc: FDRGN_EXPERT::run_vpr(bool, bool, bool, bool, BSYN_FLOW_TYPE) + 0x1bc (fitter_fdrgn)

0x29739: fit2_fit_place_auto + 0x14a (comp_fit2)

0x4c977: TclNRRunCallbacks + 0x47 (tcl8.6)

0x135b7: fit2_fit_place + 0x2d7 (comp_fit2)

0x4c977: TclNRRunCallbacks + 0x47 (tcl8.6)

0x4e1ca: TclEvalEx + 0x96a (tcl8.6)

0xf68c6: Tcl_FSEvalFileEx + 0x266 (tcl8.6)

0xf69ce: Tcl_EvalFile + 0x2e (tcl8.6)

0x12817: qexe_evaluate_tcl_script(std::string const&) + 0x398 (comp_qexe)

0x168bd: qexe_do_tcl(QEXE_FRAMEWORK*, std::string const&, std::string const&, std::list<std::string, std::allocator<std::string> > const&, bool, bool) + 0x6c2 (comp_qexe)

0x1794c: qexe_run_tcl_option(QEXE_FRAMEWORK*, char const*, std::list<std::string, std::allocator<std::string> >*, bool) + 0x5df (comp_qexe)

0x40ebb: qcu_run_tcl_option(QCU_FRAMEWORK*, char const*, std::list<std::string, std::allocator<std::string> >*, bool) + 0xd95 (comp_qcu)

0x1b217: qexe_standard_main(QEXE_FRAMEWORK*, QEXE_OPTION_DEFINITION const**, int, char const**) + 0x4d3 (comp_qexe)

0x3f520: msg_main_thread(void*) + 0x10 (ccl_msg)

0x643c: thr_final_wrapper + 0xc (ccl_thr)

0x411e5: msg_thread_wrapper(void* (*)(void*), void*) + 0x62 (ccl_msg)

0x13259: mem_thread_wrapper(void* (*)(void*), void*) + 0x99 (ccl_mem)

0xaf52: err_thread_wrapper(void* (*)(void*), void*) + 0x27 (ccl_err)

0x647f: thr_thread_wrapper + 0x15 (ccl_thr)

0x41c11: msg_exe_main(int, char const**, int (*)(int, char const**)) + 0xb2 (ccl_msg)

0x223d5: __libc_start_main + 0xf5 (c)

End-trace

Executable: quartus

Comment:

None

System Information

Platform: linux64

OS name: Red Hat

OS version: 7

Quartus Prime Information

Address bits: 64

Version: 18.1.1

Build: 263

Edition: Pro Edition

4 Replies

  • You just create a new file and name it as quartus.ini. Put it in your project directory after.
  • Abe's avatar
    Abe
    Icon for Frequent Contributor rankFrequent Contributor

    Looks like the tool crashed during TIming anlaysis (STA). Have you tried the suggestion mentioned in the error file to see if it goes through?

    Try setting the quartus.ini sta_odv_clock_path_dfs_max_depth=<integer> to a greater value (currently 33, -1 for unlimited).

    Edit the quartus.ini file and search for the above line and set it at a higher value then -1 or 33. Try a few values and see if the STA goes through.

  • Jamil's avatar
    Jamil
    Icon for New Contributor rankNew Contributor

    ​Hi Abe

    Thank you for your answer.

    Yes I have tried to do this, but I can not find the file quartus.ini

    Do you have any idea, in which folder can I find this file?

    I am using Linux 64 bit

    many thanks

    Jamil