vak: (Default)
[personal profile] vak
Вот что происходит с альтеровским софтом Quartus II при попытке синтезировать простую схему асинхронного счётчика, содержащую LUTs с обратными связями.

Internal Error: Sub-system: CUT, File: /quartus/db/cut/cut_cuda_unateness.cpp, Line: 744
node->oterm_depends_on_iterm(oterm, data_c)
Stack Trace:
0x6f5fe0: CUT_UNATENESS_VISITOR::visit_atom_cuda_io_ibuf(CDB_ATOM_CUDA_IO_IBUF*) (db_cut)
0x6ed734: cut_get_unateness(CDB_ATOM_NODE*, DB_INPUT_PORT_TYPE, DB_OUTPUT_PORT_TYPE) + 0x114 (db_cut)
0x6b9f9: TDB_UNATENESS tdb_get_unateness_for_node>DB_INPUT_PORT_TYPE, DB_OUTPUT_PORT_TYPE>(CDB_ATOM_NODE*, DB_INPUT_PORT_TYPE, DB_OUTPUT_PORT_TYPE) + 0x9 (tsm_tdb)
0xabbcd: void set_or_add_delay_with_unateness>DB_INPUT_PORT_TYPE, DB_OUTPUT_PORT_TYPE>(TDB_EDGE*, DB_INPUT_PORT_TYPE, DB_OUTPUT_PORT_TYPE, CDB_ATOM_NODE*, int, bool) + 0x5d (tsm_a2t)
0xb480a: A2T_RECURSIVE_VISITOR::create_edge_without_recursion(CDB_ATOM_NODE*, TDB_NODE*, DB_INPUT_PORT_TYPE, DB_OUTPUT_PORT_TYPE, unsigned short) + 0x14a (tsm_a2t)
0x4d9fb: A2T_CUDA_VISITOR::visit_atom_cuda_lcell_comb(CDB_ATOM_CUDA_LCELL_COMB*, CDB_ATOM_OTERM*, TDB_EDGE*) + 0x18b (tsm_a2t)
0xc1e5a: A2T_RECURSIVE_VISITOR::visit_atom(CDB_ATOM_NODE*, CDB_ATOM_OTERM*, TDB_EDGE*) + 0x2c8a (tsm_a2t)
0xc2f80: A2T_RECURSIVE_VISITOR::set_arguments_and_process_oterm(CDB_ATOM_OTERM*) + 0x330 (tsm_a2t)
0xc5154: A2T_RECURSIVE_VISITOR::build_or_update_tdb_netlist_for_atoms(std::vector>CDB_ATOM_NODE*, std::allocator>CDB_ATOM_NODE*> >&, TDB_NETLIST_ATOM_DELETOR*) + 0x764 (tsm_a2t)
0xa8736: A2T_VISITOR::call_build_tdb_netlist_for_all_atoms() + 0x276 (tsm_a2t)
0xf3576: sta_build_nodes_from_atoms(CDB_ATOM_NETLIST*, CMP_FACADE*, TDB_NETLIST*) + 0xd6 (tsm_sta)
0x29a4a9: sta_build_and_preprocess_tdb(CMP_FACADE*, CDB_ATOM_NETLIST*, bool) + 0x169 (tsm_sta)
0x76068: TDC_STA_ACCESSORIES::initialize_netlist(CMP_FACADE*, CDB_ATOM_NETLIST*, TDC_DEFAULT_CONSTRAINTS const&, e_tdc_accessories_usage_mode, bool) + 0x248 (tsm_tdc)
0x15a951: FITCC_TDC_UTILITY::setup_tdc_utility(TAPI_DELAY_ANNOTATOR::INVOKE_MODE, std::vector>TDB_TIMING_MODEL, std::allocator>TDB_TIMING_MODEL> >, bool, bool, bool, bool, bool, bool, bool, QGL::FOREST>int, int>*, bool, bool) + 0x321 (fitter_fitcc)
0x15c989: FITCC_TDC_UTILITY::FITCC_TDC_UTILITY(FITCC_ENV const*, TAPI_DELAY_ANNOTATOR::INVOKE_MODE, std::vector>TDB_TIMING_MODEL, std::allocator>TDB_TIMING_MODEL> >, bool, bool, bool, bool, bool, bool, bool, QGL::FOREST>int, int>*, bool, bool) + 0x359 (fitter_fitcc)
0xa831c: FITCC_ENV::get_tdc_utility_or_create_if_necessary(FITCC_ENV::FITCC_TDC_UTILITY_REQUEST_TYPE, TAPI_DELAY_ANNOTATOR::INVOKE_MODE, std::vector>TDB_TIMING_MODEL, std::allocator>TDB_TIMING_MODEL> >, bool, bool, bool, bool, QGL::FOREST>int, int>*, bool) + 0xcac (fitter_fitcc)
0xa8960: FITCC_ENV::get_tdc_utility_or_create_if_necessary(FITCC_ENV::FITCC_TDC_UTILITY_REQUEST_TYPE, TAPI_DELAY_ANNOTATOR::INVOKE_MODE, dat_timing_models, bool, bool, bool, bool, QGL::FOREST>int, int>*, bool) + 0x1f0 (fitter_fitcc)
0x3c06a4: FSAC_RP_UTIL_BODY::refresh_clock_atom_ids() + 0x164 (fitter_fsac)
0x3c0d31: FSAC_RP_UTIL::sweep_inverters_and_wire_luts_at_packable_boundaries() + 0x11 (fitter_fsac)
0x282da: FCUDA_EXPERT::fitter_preparation() const + 0x2d3c (fitter_fcuda)
0xba8ba: FITCC_EXPERT::fitter_preparation() const + 0x13a (fitter_fitcc)
0xbce98: FITCC_EXPERT::invoke_fitter() const + 0x5e8 (fitter_fitcc)
0x21c9a: fcuda_execute + 0x18e (fitter_fcuda)
0x2457e: fmain_start(CMP_FACADE*) + 0x4ae (fitter_fmain)
0x1f826: qfit_execute_fit(QCU_FRAMEWORK*, QFIT_FRAMEWORK*) + 0x1d6 (comp_qfit_legacy_flow)
0x1bda2: QFIT_FRAMEWORK::execute() + 0x282 (comp_qfit_legacy_flow)
0x23568: qfit_legacy_flow_run_legacy_fitter_flow + 0x218 (comp_qfit_legacy_flow)
0x4d671: TclInvokeStringCommand + 0x81 (tcl8.6)
0x51ec7: TclNRRunCallbacks + 0x47 (tcl8.6)
0x536e7: TclEvalEx + 0x947 (tcl8.6)
0xfb366: Tcl_FSEvalFileEx + 0x266 (tcl8.6)
0xfb47e: Tcl_EvalFile + 0x2e (tcl8.6)
0x11ebc: qexe_evaluate_tcl_script(std::string const&) + 0x382 (comp_qexe)
0x18dcf: qexe_do_tcl(QEXE_FRAMEWORK*, std::string const&, std::string const&, std::list>std::string, std::allocator>std::string> > const&, bool, bool) + 0x597 (comp_qexe)
0x19d7b: qexe_run_tcl_option(QEXE_FRAMEWORK*, char const*, std::list>std::string, std::allocator>std::string> >*, bool) + 0x57e (comp_qexe)
0x3e06a: qcu_run_tcl_option(QCU_FRAMEWORK*, char const*, std::list>std::string, std::allocator>std::string> >*, bool) + 0x1065 (comp_qcu)
0x1c586: qexe_standard_main(QEXE_FRAMEWORK*, QEXE_OPTION_DEFINITION const**, int, char const**) + 0x6b3 (comp_qexe)
0x3b75: qfit2_main(int, char const**) + 0xc5 (quartus_fit)
0x407e0: msg_main_thread(void*) + 0x10 (ccl_msg)
0x602c: thr_final_wrapper + 0xc (ccl_thr)
0x4089f: 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)
0x42c37: msg_exe_main(int, char const**, int (*)(int, char const**)) + 0xa3 (ccl_msg)
0x203f1: __libc_start_main + 0xf1 (c.so.6)


End-trace

Это если поставить для таких ячеек параметр dont_touch="yes", иначе квартус их просто тихо выкидывает из схемы.
This account has disabled anonymous posting.
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting

If you are unable to use this captcha for any reason, please contact us by email at [email protected]

OSZAR »