Forum Discussion

Shihang's avatar
Shihang
Icon for New Contributor rankNew Contributor
1 year ago
Solved

Quartus synthesis internal error

When I synthesized a project I'm working on, Quartus encountered an internal error (log copied below).

This error only occurred after I re-cloned the repository under a different directory. Quartus was able to compile an identical project under its original directory.

Thanks in advance. Help is much appreciated.

Problem Details
Error:
Internal Error: Sub-system: SCL, File: /quartus/synth/scl/scl_wysiwyg_atom_factory.cpp, Line: 2763
::scl_alloc_wys_atom_for_nadder(): Cannot read hex file: /mnt/sda1/projs/cxl_tm2/intel_rtile_cxl_top_0_ed/hardware_test_design/common/mc_top/emif_ip/emif_cal_two_ch/altera_emif_cal_iossm_274/synth/emif_cal_two_ch_altera_emif_cal_iossm_274_psjm22a_code.hex
Stack Trace:
  Quartus          0x7b993: scl_alloc_wys_atom_for_falconmesa(CDB_SGATE_WYSIWYG*, CGA_INTERFACE*, ATOM_NETLIST_NODE_ADDER&) + 0x1307 (synth_scl)
  Quartus          0x7e90a: SCL_WYSIWYG_ATOM_FACTORY_IMPL::alloc_wys_atom(CDB_SGATE_WYSIWYG*, CDB_ATOM_NETLIST&) + 0x18ca (synth_scl)
  Quartus          0x338e9: FTM_ATOM_BUILDER::map_wys_sgate(CDB_SGATE_WYSIWYG*) + 0x39 (synth_atm_build)
  Quartus          0x7785b: FTM_GENERIC_ATOM_BUILDER::build_atom_network_v() + 0x57b (synth_atm_build)
  Quartus          0x2fd02: FTM_ATOM_BUILDER::build_atom_network(CDB_SGATE_NETLIST*, SCL_WYSIWYG_ATOM_FACTORY*) + 0x12 (synth_atm_build)
  Quartus          0x8f22c: FTM_ROOT_IMPL::build_atoms() + 0x42c (synth_ftm)
  Quartus          0x8f6d2: FTM_ROOT_IMPL::start_atom_builder() + 0x52 (synth_ftm)
  Quartus          0x8f8df: FTM_ROOT::start_atom_builder(CDB_SGATE_NETLIST*, SCL_WYSIWYG_ATOM_FACTORY*) + 0x8f (synth_ftm)
  Quartus          0x8af16: SCL_SYN_HIER::do_atom_build(CDB_SGATE_NETLIST*) + 0x16c (synth_scl)
  Quartus          0x36aef: scl_run_ftm_atom_build(CMP_FACADE*, SAM_FACADE*, CDB_SGATE_HIERARCHY*, CDB_SGATE_NETLIST*) + 0x72 (synth_scl)
  Quartus         0x2d267e: SYNTH::QIS::SYNTHESIS_FLOW::ftm_atom_building_cdb() + 0x42 (synth_qis)
  Quartus         0x2d3847: SYNTH::QIS::SYNTHESIS_FLOW::ftm_atom_building() + 0x1f (synth_qis)
  Quartus         0x2e0822: SYNTH::QIS::SYNTHESIS_FLOW::run_current_phase() + 0x332 (synth_qis)
  Quartus         0x2e0e94: SYNTH::QIS::SYNTHESIS_FLOW::run_full_flow(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, bool, bool, QIS_RTL_STAGE::FLOW) + 0x468 (synth_qis)
  Quartus         0x1ac604: QIS_RTL_STAGE::IMPL::synthesize(QHD_PARTITION&, bool, bool, QIS_RTL_STAGE::FLOW) + 0x508 (synth_qis)
  Quartus         0x1ac914: QIS_RTL_STAGE::synthesize(QHD_PARTITION&, bool, bool, QIS_RTL_STAGE::FLOW) + 0x12 (synth_qis)
  Quartus          0xc8a59: qis_synthesize + 0x302 (synth_qis)
  Quartus          0x4bb47: TclNRRunCallbacks + 0x67 (tcl8.6)
  Quartus          0x4cf29: TclEvalEx + 0x599 (tcl8.6)
  Quartus          0xf40fe: Tcl_FSEvalFileEx + 0x21e (tcl8.6)
  Quartus          0xf4246: Tcl_EvalFile + 0x26 (tcl8.6)
  Quartus          0x2708e: qexe_evaluate_tcl_script(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) + 0x388 (comp_qexe)
  Quartus          0x29dec: 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) + 0x71b (comp_qexe)
  Quartus          0x2afa5: 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) + 0x8a5 (comp_qexe)
  Quartus          0x77f9d: 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) + 0x99 (comp_qcu)
  Quartus          0x78290: 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) + 0x286 (comp_qcu)
  Quartus         0x40730e: qsyn2_tcl_process_default_flow_option(ACF_VARIABLE_TYPE_ENUM, char const*) + 0x4b5 (quartus_syn)
  Quartus          0x2fb9a: qexe_standard_main(QEXE_FRAMEWORK*, QEXE_OPTION_DEFINITION const**, int, char const**) + 0x7dd (comp_qexe)
  Quartus         0x406d4c: qsyn2_main(int, char const**) + 0x123 (quartus_syn)
  Quartus          0x43f80: msg_main_thread(void*) + 0x10 (ccl_msg)
  Quartus          0x44a00: msg_thread_wrapper(void* (*)(void*), void*) + 0x8c (ccl_msg)
  Quartus          0x1fcfd: mem_thread_wrapper(void* (*)(void*), void*) + 0x9d (ccl_mem)
  Quartus           0xe168: err_thread_wrapper(void* (*)(void*), void*) + 0x1e (ccl_err)
  Quartus          0x44929: msg_exe_main(int, char const**, int (*)(int, char const**)) + 0xd3 (ccl_msg)
  Quartus         0x406c22: main + 0x26 (quartus_syn)
  System           0x29d90: (c)
  System           0x29e40: __libc_start_main + 0x80 (c)
  Quartus         0x406b49: _start + 0x29 (quartus_syn)

End-trace


Executable: quartus
Comment:
None

System Information
Platform: linux64
OS name: Ubuntu
OS version: 22

Quartus Prime Information
Address bits: 64
Version: 24.1.0
Build: 115
Edition: Pro Edition
  • Quartus is missing a file that is expected to be produced during IP HDL generation. This usually happens when your repository contains some generated files but not all so that not all IP is automatically regenerated during first compile of a clean checkout.
    Try to select regeneration of all IP files in library settings.

1 Reply

  • FvM's avatar
    FvM
    Icon for Super Contributor rankSuper Contributor
    Quartus is missing a file that is expected to be produced during IP HDL generation. This usually happens when your repository contains some generated files but not all so that not all IP is automatically regenerated during first compile of a clean checkout.
    Try to select regeneration of all IP files in library settings.