- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Preservation level: Final leads to Quartus crash on re-run.
Quartus does not crash when I use the synthesize preserve level (or no preserve).
Crash log + picture after the crash message (closed).
No pin location warning is expected, this is just a trial to test the partition flow/resources usage.
Problem Details
Error:
Internal Error: Sub-system: PCC, File: /quartus/periph/pcc/pcc_port_rotation_util.cpp, Line: 1672
old_physical == logical
Stack Trace:
Quartus 0x61fdc: PCC_PORT_ROTATION_UTIL_ITERMS::apply_a2c_directives(CDB_ATOM_NODE*, std::vector<std::pair<DB_INPUT_PORT_TYPE, unsigned short>, std::allocator<std::pair<DB_INPUT_PORT_TYPE, unsigned short> > > const&, std::vector<std::pair<DB_INPUT_PORT_TYPE, unsigned short>, std::allocator<std::pair<DB_INPUT_PORT_TYPE, unsigned short> > > const&) + 0x380 (periph_pcc)
Quartus 0x5c605: PCC_PORT_ROTATION_UTIL_ITERMS::process_routing(bool*) [clone .cold] + 0x3b1 (periph_pcc)
Quartus 0x3d3eb: CPLL_GEN6::rotate_iterms() + 0x3b (periph_cpll)
Quartus 0x50019: CPLL_GEN7::post_process_legal_placement() + 0x59 (periph_cpll)
Quartus 0xc0818: PCC_ENV_IMPL::perform_op(PCC_ENV::OP) + 0x1b8 (periph_pcc)
Quartus 0xc209f: PCC_ENV_IMPL::refresh_placement_until_converged() + 0x16f (periph_pcc)
Quartus 0xc1ea7: PCC_ENV_IMPL::commit() + 0x47 (periph_pcc)
Quartus 0xf7f70: PCC_PERIPH_FLOW::plan() + 0x210 (periph_pcc)
Quartus 0x39d1b: fit2_fit_plan + 0x7c9 (comp_fit2)
Quartus 0x50fb7: TclNRRunCallbacks + 0x47 (tcl8.6)
Quartus 0x527df: TclEvalEx + 0x94f (tcl8.6)
Quartus 0xfa3a6: Tcl_FSEvalFileEx + 0x266 (tcl8.6)
Quartus 0xfa4be: Tcl_EvalFile + 0x2e (tcl8.6)
Quartus 0x2a8fc: qexe_evaluate_tcl_script(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) + 0x3de (comp_qexe)
Quartus 0x2dd73: qexe_do_tcl(QEXE_FRAMEWORK*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::list<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, bool, bool) + 0x4c2 (comp_qexe)
Quartus 0x2ee7b: qexe_run_tcl_option(QEXE_FRAMEWORK*, char const*, std::__cxx11::list<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >*, bool) + 0x66e (comp_qexe)
Quartus 0x6d1ec: QCU::DETAIL::intialise_qhd_and_run_qexe(QCU_FRAMEWORK&, FIO_PATH const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const*, std::__cxx11::list<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >*, bool) + 0x9c (comp_qcu)
Quartus 0x6d638: qcu_run_tcl_option(QCU_FRAMEWORK*, char const*, std::__cxx11::list<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >*, bool) + 0x343 (comp_qcu)
Quartus 0x3421d: qexe_standard_main(QEXE_FRAMEWORK*, QEXE_OPTION_DEFINITION const**, int, char const**) + 0xba2 (comp_qexe)
Quartus 0x40ad6c: qfit2_main(int, char const**) + 0x8c (quartus_fit)
Quartus 0x4e546: msg_main_thread(void*) + 0x10 (ccl_msg)
Quartus 0x4f764: msg_thread_wrapper(void* (*)(void*), void*) + 0x8c (ccl_msg)
Quartus 0x1f568: mem_thread_wrapper(void* (*)(void*), void*) + 0x98 (ccl_mem)
Quartus 0x10f3a: err_thread_wrapper(void* (*)(void*), void*) + 0x1e (ccl_err)
Quartus 0xb7f5: thr_thread_wrapper + 0x15 (ccl_thr)
Quartus 0x4f684: msg_exe_main(int, char const**, int (*)(int, char const**)) + 0xd8 (ccl_msg)
System 0x22555: __libc_start_main + 0xf5 (c)
Quartus 0x4062a9: _start + 0x29 (quartus_fit)
End-trace
Executable: quartus
Comment:
None
System Information
Platform: linux64
OS name: Red Hat
OS version: 7
Quartus Prime Information
Address bits: 64
Version: 22.4.0
Build: 94
Edition: Pro Edition
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I changed one partition from final to synthesis preserve, it wen't further but still crashed later on.
I think the final flow is kind of broken, which is sad because this is what I was planning to use to speed-up the big projects.
See new picture too.
Problem Details
Error:
Internal Error: Sub-system: QHD, File: /quartus/comp/qhd/qhd_database_impl.cpp, Line: 2057
validate_split_route check failed (see debug messages for more info):
snapshot:routed
flat_vs_split:FAILED
split_vs_flat:PASSED
Stack Trace:
Quartus 0x111679: QHD_CHECK_DESIGN::validate_split_route(QHD_DESIGN const&, QHD_ENUM_IMPL<QHD_SNAPSHOT_BASE>) + 0x2e17 (comp_qhd)
Quartus 0x58fe7: QHD_CHECK_DESIGN::fit_post_commit_design_check(QHD_DESIGN const&, QHD_ENUM_IMPL<QHD_SNAPSHOT_BASE>) + 0x3e (comp_qhd)
Quartus 0x49568: FIT2_DATABASE_EXPERT_QDB::commit(bool, bool, bool) + 0xb3c (comp_fit2)
Quartus 0x2c6b3: fit2_commit_fitter_netlist + 0x376 (comp_fit2)
Quartus 0x50fb7: TclNRRunCallbacks + 0x47 (tcl8.6)
Quartus 0x527df: TclEvalEx + 0x94f (tcl8.6)
Quartus 0x52ad6: Tcl_EvalEx + 0x16 (tcl8.6)
Quartus 0x26b81: atcl_tcl_eval(Tcl_Interp*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool) + 0x1df (ccl_atcl)
Quartus 0x5c0a0: fit2_commit_result(Tcl_Interp*, bool) + 0x5f (comp_fit2)
Quartus 0x3c132: fit2_fit_route_commit + 0x2a2 (comp_fit2)
Quartus 0x50fb7: TclNRRunCallbacks + 0x47 (tcl8.6)
Quartus 0x287d6: fit2_fit_route + 0x2fb (comp_fit2)
Quartus 0x50fb7: TclNRRunCallbacks + 0x47 (tcl8.6)
Quartus 0x527df: TclEvalEx + 0x94f (tcl8.6)
Quartus 0xfa3a6: Tcl_FSEvalFileEx + 0x266 (tcl8.6)
Quartus 0xfa4be: Tcl_EvalFile + 0x2e (tcl8.6)
Quartus 0x2a8fc: qexe_evaluate_tcl_script(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) + 0x3de (comp_qexe)
Quartus 0x2dd73: qexe_do_tcl(QEXE_FRAMEWORK*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::list<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&, bool, bool) + 0x4c2 (comp_qexe)
Quartus 0x2ee7b: qexe_run_tcl_option(QEXE_FRAMEWORK*, char const*, std::__cxx11::list<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >*, bool) + 0x66e (comp_qexe)
Quartus 0x6d1ec: QCU::DETAIL::intialise_qhd_and_run_qexe(QCU_FRAMEWORK&, FIO_PATH const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const*, std::__cxx11::list<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >*, bool) + 0x9c (comp_qcu)
Quartus 0x6d638: qcu_run_tcl_option(QCU_FRAMEWORK*, char const*, std::__cxx11::list<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >*, bool) + 0x343 (comp_qcu)
Quartus 0x3421d: qexe_standard_main(QEXE_FRAMEWORK*, QEXE_OPTION_DEFINITION const**, int, char const**) + 0xba2 (comp_qexe)
Quartus 0x40ad6c: qfit2_main(int, char const**) + 0x8c (quartus_fit)
Quartus 0x4e546: msg_main_thread(void*) + 0x10 (ccl_msg)
Quartus 0x4f764: msg_thread_wrapper(void* (*)(void*), void*) + 0x8c (ccl_msg)
Quartus 0x1f568: mem_thread_wrapper(void* (*)(void*), void*) + 0x98 (ccl_mem)
Quartus 0x10f3a: err_thread_wrapper(void* (*)(void*), void*) + 0x1e (ccl_err)
Quartus 0xb7f5: thr_thread_wrapper + 0x15 (ccl_thr)
Quartus 0x4f684: msg_exe_main(int, char const**, int (*)(int, char const**)) + 0xd8 (ccl_msg)
System 0x22555: __libc_start_main + 0xf5 (c)
Quartus 0x4062a9: _start + 0x29 (quartus_fit)
End-trace
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Alex,
Can you share your design? Maybe through email?
Regards,
Nurina
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Alex,
I found report for below IE in our database:
Internal Error: Sub-system: QHD, File: /quartus/comp/qhd/qhd_database_impl.cpp, Line: 2057
Can you try this quartus.ini and see if it works? This seemed to work for 23.1 & 23.2.. I'm not quite sure of 22.4.
Save the quartus.ini file in the project directory and run compilation.
Regards,
Nurina
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thank You Nurina,
I will try that. Is that an ini password?
Can you explain a bit the logic behind?
As for the design, never ask me, I will never share our design (except if I can create a small test case).
Alex.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Yes it's an ini password, it would disable dangling routes.
Based on the IE case report, this IE is suspected to be a side effect of a PR-related fix. If you have a core clock driving to the periphery then there will be dangling route issue and Quartus throws this IE.
All you need to do is change the extension of the above quartus.txt file to .ini, save it to the same directory as your .qpf file and run compilation.
Regards,
Nurina
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thank You for the explanation.
I'm running it on 22.4 as 23.1 is still not working at our side (seems that Quartus 23 is not able to pick the license correctly from a pool).
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,
I still got this crash:
I will try from a clean run to see if that makes any difference with that quartus.ini.
I'm also attaching the route report (the last one generated before the crash),
as you can see the long high speed interconnects are above 100% utilization,
I'm wondering if that is not the cause of the crash.
(Please add the .rpt allowed file in this website such that I don't have to add the .txt extension).
note: Overall fit report usage:
Fitter Status : Successful - Tue Jul 4 14:13:44 2023
Quartus Prime Version : 22.4.0 Build 94 12/07/2022 SC Pro Edition
Revision Name : stratix10_wrapper
Top-level Entity Name : stratix10_wrapper
Family : Stratix 10
Device : 1SX280HU2F50E1VG
Timing Models : Final
Power Models : Final
Device Status : Final
Logic utilization (in ALMs) : 514,940 / 933,120 ( 55 % )
Total dedicated logic registers : 277863
Total pins : 227 / 1,152 ( 20 % )
Total block memory bits : 58,828,507 / 240,046,080 ( 25 % )
Total RAM Blocks : 3,583 / 11,721 ( 31 % )
Total DSP Blocks : 418 / 5,760 ( 7 % )
Total DIB Channels : 0 / 75 ( 0 % )
Total HSSI RX channels : 0 / 96 ( 0 % )
Total HSSI TX channels : 0 / 96 ( 0 % )
Total HSSI HPS : 0 / 1 ( 0 % )
Total HSSI EHIPs : 0 / 4 ( 0 % )
Total PLLs : 7 / 184 ( 4 % )
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Auto logic lock was giving stacked locations (well I did not ask to reserve the region either so Quartus can do that),
but I'm wondering if this is not counter productive.
So my question:
Shall the final snapshot work better or not with logic region or is that not relevant?
Or shall I use the logic lock with reserved ?
I will try with reserved and without partition to see how that goes with final.
Let me know what is expected.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Still crashing on re-run with the .ini password,
even without logic lock region set (so only the final setting for re-use):
Internal Error: Sub-system: PCC, File: /quartus/periph/pcc/pcc_port_rotation_util.cpp, Line: 1672
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Crashing the same with Quartus pro 23.1.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Alex,
For the stacked logic lock regions, I cannot comment on this. It really depends on your design.
I'm sorry but I cannot help you unless you give me your design, because I cannot replicate the error and I don't have a design to give to the engineering team.
Usually IE messages require engineering team's help to solve as they are able to make checks on atom level and some internal checks, hence find the root cause.
Are you able to replicate this error on a smaller project?
Regards,
Nurina
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I don't have a small project and I don't have time to create one.
I can confirm that the ini file is used, I see this message in the Quartus processing windows:
Info: Using INI file rfd_fpga/stratix10_wrapper/synplify_synth_quartus_fit/quartus.ini
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
I think the root cause of it all is that you are using Quartus 22.4 on Red Hat 7 which isn't supported: https://cdrdv2.intel.com/v1/dl/getContent/758928?fileName=rn-qts-pro-dev-support-683706-758928.pdf
Please use a supported OS. If you are using an unsupported OS, we cannot help you as it is expected for Quartus not to work with an unsupported OS. Otherwise you can use an older version of Quartus that supports Red Hat 7, please check for latest Quartus OS support here: https://www.intel.com/content/www/us/en/support/programmable/support-resources/design-software/os-support.html
Regards,
Nurina
p/s: If any answer from the community or Intel Support are helpful, please feel free to give best answer or rate 4/5 survey.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,
Any updates?
Regards,
Nurina
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
We have not received a reply from you. As such, I now transition this thread to community support. If you have a new question, Feel free to open a new thread or login to ‘ https://supporttickets.intel.com ’, view details of the desire request, and post a feed/response within the next 15 days to allow me to continue to support you. After 15 days, this thread will be transitioned to community support. The community users will be able to help you on your follow-up questions.
Have a great day!
Best regards,
Nurina

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page