Community
cancel
Showing results for 
Search instead for 
Did you mean: 
WOver1
Beginner
920 Views

qaurtus_map Internal Error: Sub-system: VRF

linux64 Red Hat6

Quartus Prime 17.0.0 Build: 595 Standard Edition  

 

When running quartus_map <myproject>.qpf --analysis_and_elaboration on my design it aborts with the following stack trace (ervery time). Is there a way to track this this down to which design file is causing this? From simulation point design compiles/elaborates and simulates fine (using Cadence toolchain)

 

Internal Error: Sub-system: VRFX, File: /quartus/synth/vrfx/verific/verilog/verivalue_elab.cpp, Line: 8139

Illegal attempt to take an element from a non-aggregate value

Stack Trace:

  0x12d86f: vrfx_cfg_is_on(char const*) (synth_vrfx)

  0x24f85a: VeriValue::TakeElement(unsigned int) + 0x1c (synth_vrfx)

  0x1f6601: VeriSelectedName::Evaluate(VeriConstraint*, VeriDataFlow*, VeriIdDef*) + 0x257 (synth_vrfx)

  0x23f002: VeriConditionalStatement::Elaborate(VeriDataFlow*) + 0x4dc (synth_vrfx)

  0x23d255: VeriSeqBlock::Elaborate(VeriDataFlow*) + 0xbb (synth_vrfx)

  0x23e54e: VeriFor::Elaborate(VeriDataFlow*) + 0x2f8 (synth_vrfx)

  0x23d255: VeriSeqBlock::Elaborate(VeriDataFlow*) + 0xbb (synth_vrfx)

  0x23eefa: VeriConditionalStatement::Elaborate(VeriDataFlow*) + 0x3d4 (synth_vrfx)

  0x23d255: VeriSeqBlock::Elaborate(VeriDataFlow*) + 0xbb (synth_vrfx)

  0x23ca2c: VeriEventControlStatement::Elaborate(VeriDataFlow*) + 0x518 (synth_vrfx)

  0x22d4d7: VeriAlwaysConstruct::Elaborate() + 0x95 (synth_vrfx)

  0x222659: VeriModule::Elaborate() + 0x67 (synth_vrfx)

  0x222386: VeriModule::Elaborate(Library*, Map*, Array*, unsigned int, VeriScope**, unsigned int, VeriConfiguration*, BASEX_ELABORATE_INFO*) + 0x58e (synth_vrfx)

  0x14f1a8: VRFX_VERIFIC_VERILOG_ELABORATOR::elaborate(BASEX_ELABORATE_INFO*) + 0x5f6 (synth_vrfx)

  0x145181: VRFX_ELABORATOR::elaborate(BASEX_ELABORATE_INFO*) + 0x71 (synth_vrfx)

  0x178897: SGN_FN_LIB::elaborate(BASEX_ELAB_INFO_CORE*) const + 0x157 (synth_sgn)

  0x18160e: SGN_FN_LIB::start_vrf_flow() const + 0xe (synth_sgn)

  0x181c64: SGN_FN_LIB::start(SGN_WRAPPER_INFO*) + 0x574 (synth_sgn)

  0x186530: SGN_EXTRACTOR::single_module_extraction(HDB_INSTANCE_NAME*, HDB_ENTITY*, SGN_WRAPPER_INFO*) const + 0xf0 (synth_sgn)

  0x18e318: SGN_EXTRACTOR::recursive_extraction(HDB_INSTANCE_NAME*, SGN_WRAPPER_INFO*, char const*) + 0x1f8 (synth_sgn)

  0x18f2d6: SGN_EXTRACTOR::recurse_into_newly_extracted_netlist(HDB_ENTITY*, HDB_INSTANCE_NAME*, unsigned long, SGN_WRAPPER_INFO*) + 0x546 (synth_sgn)

  0x18e3fc: SGN_EXTRACTOR::recursive_extraction(HDB_INSTANCE_NAME*, SGN_WRAPPER_INFO*, char const*) + 0x2dc (synth_sgn)

  0x18f2d6: SGN_EXTRACTOR::recurse_into_newly_extracted_netlist(HDB_ENTITY*, HDB_INSTANCE_NAME*, unsigned long, SGN_WRAPPER_INFO*) + 0x546 (synth_sgn)

  0x18e3fc: SGN_EXTRACTOR::recursive_extraction(HDB_INSTANCE_NAME*, SGN_WRAPPER_INFO*, char const*) + 0x2dc (synth_sgn)

  0x1945e3: SGN_EXTRACTOR::extract() + 0x3a3 (synth_sgn)

  0x19f1da: sgn_elaboration(CMP_FACADE*) + 0x13a (synth_sgn)

  0x1c502: qsyn_execute_sgn(CMP_FACADE*, std::vector<std::string, std::allocator<std::string> >&, std::string const&, THR_NAMED_PIPE*, THR_NAMED_PIPE*) + 0x2a2 (quartus_map)

  0x37d61: QSYN_FRAMEWORK::execute_core(THR_NAMED_PIPE*, THR_NAMED_PIPE*) + 0x231 (quartus_map)

  0x3bcec: QSYN_FRAMEWORK::execute() + 0xc4c (quartus_map)

  0x1c75b: qexe_standard_main(QEXE_FRAMEWORK*, QEXE_OPTION_DEFINITION const**, int, char const**) + 0x888 (comp_qexe)

  0x3025c: qsyn_main(int, char const**) + 0x13c (quartus_map)

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

   0x602c: thr_final_wrapper + 0xc (ccl_thr)

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

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

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

   0x63f2: thr_thread_wrapper + 0x15 (ccl_thr)

  0x427e2: msg_exe_main(int, char const**, int (*)(int, char const**)) + 0xa3 (ccl_msg)

  0x1ed5d: __libc_start_main + 0xfd (c.so.6)

 

 

End-trace

 

0 Kudos
2 Replies
AndyN
New Contributor I
43 Views

The (quite tedious) way to find it would be to comment out blocks of code until you find which module in your design is causing the issue. It sucks and it'll take you a while but it's a reliable way of finding the bug...

 

Andy

MLiph
Beginner
43 Views

That's exactly what you have to do. I had this same problem and was only able to isolate it by commenting out one thing at a time...