cyclone® 10 gx fpga
327 TopicsWhy does compilation fail after restoring a project archive?
Description Due to a problem in the Quartus® Prime Pro Edition software Windows version 26.1.1, an archived project that compiles successfully before may fail to compile after it is restored from a Quartus Archive File (.qar). Some IP-generated files may be missing from the restored project. Resolution To work around this problem, open your project from the QAR file and change the following IP Generation settings: Open Assignments → Settings → IP Generation. Select VHDL as the IP generation language. Note: Do not regenerate the IP.43Views0likes0CommentsWhy does the SystemConsole.refreshMasters DSP Builder function fail?
Description When using the SystemConsole.refreshMasters DSP Builder function in the Quartus® Prime Pro Edition version 26.1.1 and above, you may see the following error: Unable to resolve the name 'com.altera.systemconsole.matlabapi.SystemConsoleLink' This error occurs because the Java version used by MATLAB is incompatible with com.altera.systemconsole.matlabapi.SystemConsoleLink. For DSP Builder version 26.1.1 and later, MATLAB must use Java version 11 or later for SystemConsole.refreshMasters to run successfully. Resolution You can change MATLAB's Java version using either the jenv MATLAB function or the matlab_jenv executable. For information on how to use jenv and matlab_jenv, refer to the MATLAB documentation.46Views0likes0CommentsWhy are there no example design options available in the “Select Design” drop-down list in the DisplayPort IP Parameter Editor GUI?
Description Due to a problem in the Quartus ® Prime Pro Edition Software version 26.1, the drop-down list for “Select Design” in the Display Port IP Parameter Editor GUI only has “None” option, as shown in the screenshot below. Resolution This problem has been fixed beginning with version 26.1.1 of the Quartus® Prime Pro Edition Software.170Views0likes0CommentsError: (vlog-7) Failed to open design unit file
Description Due to simulation models not being installed along with the Quartus ® Prime Pro Edition Software, an error such as: Error: (vlog-7) Failed to open design unit file "C:/altera_pro/26.1.1/quartus/eda/sim_lib/220model.v" in read mode may occur during simulation. The root cause of missing files is that “EDA libraries” are not installed properly during installation of the Quartus ® Prime Pro Edition Software. Resolution To fix this problem, make sure “EDA Libraries” has been checked and installed properly during installation of the Quartus ® Prime Pro Edition Software, as shown in the screenshot below.98Views0likes0CommentsWhy am I unable to run BKP operations with Quartus® Prime Pro Edition 26.1.1 on Windows*?
Description Due to a problem in the Quartus® Prime Pro Edition Software version 26.1.1, Black Key Provisioning (BKP) operations might fail on Windows* with the following error: Error: BKP PLUGIN: [3000] Http error: Could not use specified SSL cipher because Quartus has enabled the Windows SSP interface Schannel (Secure Channel) to work with the OpenSSL library. When using libcurl with the Schannel (Windows) backend, the option CURLOPT_SSL_CIPHER_LIST does not accept individual, specific cipher suites (for example TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384). Resolution To work around this problem in the Quartus® Prime Pro Edition Software version 26.1.1, build a patched bkpprog.dll and select it through the project configuration, as follows: 1. Clone the source repository: GitHub - altera-fpga/device-security-software-services: Device Security Software and Services source code for FPGA Device Onboarding, Attestation, Secure Session, Black Key Provisioning. 2. Prepare the Windows build environment. Follow the Windows Build instructions in the repository README. Install the listed prerequisites and prepare the repository dependencies exactly as documented there. 3. Modify network_wrapper.cpp. Open the following file in the cloned repository: bkpprogrammer/src/core/cpp/network/network_wrapper.cpp In CurlWrapper::CurlWrapper, locate the TLS version and cipher-list configuration: setCurlOptionWithErrorHandling( curlHandle, CURLOPT_SSLVERSION, CURL_SSLVERSION_TLSv1_2); setCurlOptionWithErrorHandling( curlHandle, CURLOPT_SSL_CIPHER_LIST, acceptedCiphers.c_str()); Replace it with: setCurlOptionWithErrorHandling( curlHandle, CURLOPT_SSLVERSION, CURL_SSLVERSION_TLSv1_2); 4. Build the patched plug-in. Return to the repository root and build by following the repository Windows Build instructions. Confirm that bkpprog.dll is regenerated after network_wrapper.cpp was modified. 5. Place the custom plug-in. Create the following directory under the BKPS project and copy the rebuilt bkpprog.dll into it. Do not replace the DLL inside the Quartus installation. <project>\cm_provisioning\bkp_plugin\bkpprog.dll 6. Create quartus.ini. Create a quartus.ini file directly under the project cm_provisioning directory with the following line: PGM_ALLOW_CUSTOM_BKP_PLUGIN=7S6Nh0s3@on 7. Update bkp_options.txt. Use the normal project-specific BKP values and add bkp_plugin with the path to the rebuilt DLL: bkp_cfg_id = <ID> bkp_ip = <IP> bkp_port = <PORT> bkp_tls_ca_cert = "<Path_To_bkps_ssl_cert.crt>" bkp_tls_prog_cert = "<Path_To_pro_cert>" bkp_device_opn = <OPN> bkp_plugin = "<Path_To_bkpprog.dll>" 8. Run Quartus Programmer where quartus.ini is located. Set the current working directory to the cm_provisioning directory that contains quartus.ini and bkp_options.txt. Quartus reads quartus.ini from its current working directory, so run the commands from here: quartus_pgm.exe -c 1 -m jtag --bkp_options=bkp_options.txt --bkp_prefetch Use the same working directory for Set Authority and Provision operations, so Quartus continues to load the custom plug-in setting from quartus.ini. This problem is scheduled to be resolved in a future release of the Quartus® Prime Pro Edition Software.57Views0likes0CommentsError(14394): Verilog HDL error at <module_name>.sv(<line>): vector/single is not declared under the prefix ""
Description Due to a problem in the Quartus® Prime Pro Edition Software version 26.1.1 or earlier, you might see this error when synthesizing the SystemVerilog HDL code where a typedef struct declared inside an interface is referenced within a nested submodule. The SystemVerilog HDL code as below: interface my_interface #( parameter int WIDTH = 1 )(); typedef struct packed { logic single; logic [WIDTH-1:0] vector; } MY_STRUCT; logic req; logic ack; MY_STRUCT data; modport src ( output req, input ack, output data ); modport dst ( input req, output ack, input data ); endinterface module testmodule ( input wire clock, my_interface.dst data_in, my_interface.src data_out ); typedef data_in.MY_STRUCT ITYPE; typedef data_out.MY_STRUCT OTYPE; … ITYPE demo_in; OTYPE demo_out; assign demo_in = data_in.data; assign data_out.data = demo_out; submodule my_sub ( .data_in ( demo_in ), .data_out ( demo_out ) ); module submodule ( input ITYPE data_in, output OTYPE data_out ); … endmodule endmodule Resolution To work around this problem in the Quartus® Prime Pro Edition Software version 26.1, download and install the patch 0.37 below. This problem is scheduled to be fixed in a future release of the Quartus® Prime Pro Edition Software.150Views0likes0CommentsWhy does Nios® V/g experience data corruption when using DTCM?
Description Due to a problem in Quartus® Prime software, data corruption may occur when running a Nios® V/g processor application that interacts with a Tightly-Coupled Memory (TCM). This happens because of a RTL bug in the load-store unit. This problem is affecting Nios® V/g processor in, Quartus® Prime Pro Edition release 25.3.1 and earlier Quartus® Prime Standard Edition release 25.1 and earlier When Nios® V/g processor executes a non-TCM load (i.e. Load from On-Chip Memory or memory-mapped CSR) followed by a Data TCM load, the latter corrupts the former. This causes the non-TCM load to receive incorrect load data. For example, lw rd1,0(non-TCM) lw rd2,0(TCM) Expectation Actual Failure rd1 = load data from address “non-TCM” rd1 = load data from address “TCM” rd2 = load data from address “TCM“ rd2 = load data from address “TCM“ Resolution This problem is fixed in Quartus® Prime Pro Edition 26.1 and is scheduled to be resolved in a future Quartus® Prime Standard Edition release. Additional Information A patch is available to fix this problem. Quartus® Prime Standard Edition Software v25.1 Patch 0.01 Please contact Altera Support for additional support.192Views0likes0CommentsError(24244): Found an error when generating the IBIS Output File for board analysis. Refer to "<project_directory>/output_files/xxx.log" for more information
Description Due to a problem in the Quartus® Prime Pro Edition Software version 24.3 and earlier, you mat see this error when using the EDA Netlist Writer to generate an IBIS Model. This problem occurs when the project includes R-tile or P-tile I/O pins. Resolution This problem has been fixed beginning with version 24.3 of the Quartus® Prime Pro Edition Software.76Views0likes0CommentsWhy is the bus ordering reversed in the Technology Map Viewer?
Description Due to a problem in the Quartus® Prime Pro Edition Software version 26.1 or earlier, you might see that the bus ordering is reversed in the Technology Map Viewer. This problem occurs when a design contains a Block Design File (BDF) whose output bus is connected to a SystemVerilog HDL packed array from a top-level SystemVerilog HDL module. For example, the expected mapping in the Technology Map Viewer is: inst0 -> Out[0] inst1 -> Out[1] inst2 -> Out[2] inst3 -> Out[3] However, the actual mapping after compilation in the Technology Map Viewer become: inst0 -> Out[3] inst1 -> Out[2] inst2 -> Out[1] inst3 -> Out[0] Resolution To work around this problem, do one of the following: Convert the BDF file to Verilog HDL or VHDL. Open the BDF file in the Quartus® Prime Standard Edition Software. Select File > Create / Update > Create HDL Design File from Current File. Choose Verilog HDL or VHDL. Replace the original BDF module in the Quartus® Prime Pro Edition Software project with the generated HDL file. Explicitly reorder the bits in the top-level SystemVerilog HDL module by using a SystemVerilog HDL streaming operator in the port connection.45Views0likes0CommentsWhy do I get "Fatal Error: Access Violation at" when running quartus_syn or quartus_fit?
Description Due to a problem in the Quartus® Prime Pro Edition Software versions 26.1 and earlier, and Quartus Prime Standard Edition Software versions 25.1 and earlier, compilation may terminate with a "Fatal Error: Access Violation" message during synthesis or fitting. This failure can occur intermittently, and the reported memory address may change between compilation runs. You may observe one or more of the following behaviors: Quartus® compilation fails during synthesis or fitting The failure may occur in either of the following modules: quartus_syn (during synthesis) quartus_fit (during fitting) The error message is similar to: *** Fatal Error: Access Violation at <<ADDRESS>> The reported memory address may change between runs. The fatal error is followed by a stack trace that includes one of the failure signatures listed below. CDB_SGATE_OTERM::adopt_fanouts HDB_ASGN_CONTAINER::remove_assignment LUTIL_DEVICE::get_fragment_from_subloc STA_NODE::reset_tag_heads DESIGN_HDB_ASSIGNMENT_CONVERTER::cleanup_after_conversion BSYN_RTM_FLOP::IsExpired RTM_ATOM_MGR::rip_out_simple_ff_for_bypass IRTM_FF_QUEUE::remove_ff PTI_BCM_TIMING_GRAPH::push_back_carry_hipi_clock_iterm FTM_TREE_NODE::num_sgates Stack traces may differ, even when compiling the same design. Specific Failure Signatures: Synthesis failure (quartus_syn): The crash report includes the following function call: RTL_ADDER::aggressive_adder_balancing Fitter failure (quartus_fit): The error occurs very early after the fitter starts, and the crash report includes the following function call: qhd_reread_global_assign_from_qsf Error Log Examples Stack Trace example for crashes in quartus_syn *** Fatal Error: Access Violation at 00007FFB92E2C63E Module: quartus_syn.exe Stack Trace: Quartus 0xc63d: CDB_SGATE_OTERM::adopt_fanouts + 0x2d (db_cdb_sgate) Quartus 0x117e7: RTL_ADDER::shrink_iports + 0x1f7 (SYNTH_OPT) Quartus 0x14a75: RTL_ADDER::create_binary_adder + 0x49e9 (SYNTH_OPT) Quartus 0x45910: RTL_ADDER::restrict_adder_network + 0x84a (SYNTH_OPT) Quartus 0x4f5d6: RTL_ADDER::aggressive_adder_balancing + 0x9d (SYNTH_OPT) Quartus 0x11533: RTL_SCRIPT::call_common_rtl_fns + 0x1043 (SYNTH_OPT) Quartus 0x115b5: RTL_SCRIPT::call_named_function + 0x8a2 (SYNTH_OPT) Quartus 0x3a87a: RTL_SCRIPT::process_script + 0x62c (SYNTH_OPT) Quartus 0x3a8e4: run_parallel_rtl + 0x1db4 (SYNTH_OPT) Quartus 0x8509d: SYNTH_QIS::SYNTHESIS_FLOW::run_parallel_rtl_in_helper_processes + 0x285 (synth_qis) Quartus 0x850d5: SYNTH_QIS::SYNTHESIS_FLOW::high_level_synthesis + 0x47d (synth_qis) Quartus 0x8546d: SYNTH_QIS::SYNTHESIS_FLOW::run_current_phase + 0x286 (synth_qis) Quartus 0x854d4: SYNTH_QIS::SYNTHESIS_FLOW::run_full_flow + 0x30d (synth_qis) Quartus 0x859b7: QIS_RTL_STAGE_IMPL::synthesize + 0x467 (synth_qis) Quartus 0x15b55: qis_synthesize + 0x245 (synth_qis) Quartus 0x16442: TclNRRunCallbacks + 0x62 (tcl86) Quartus 0x16f4d: TclEvalEx + 0x9ed (tcl86) Quartus 0xa6ab8: Tcl_FSEvalFileEx + 0x22b (tcl86) Quartus 0xa5136: Tcl_EvalFile + 0x36 (tcl86) Quartus 0x15246: qexe_evaluate_tcl_script + 0x4e6 (comp_qexe) Quartus 0x1143b: qexe_do_tcl + 0x46b (comp_qexe) Quartus 0x1a70e: qexe_run_tcl_option + 0x5ee (comp_qexe) Quartus 0x16451: QCU::DETAIL::initialize_qhd_and_run_qexe + 0xa1 (comp_qcu) Quartus 0x1f8e2: qcu_run_tcl_option + 0x2f2 (comp_qcu) Quartus 0x1b1ba: qexe_standard main + 0x26a (comp_qexe) Quartus 0x29eb: qexe_run + 0x3eb (comp_qexe) Quartus 0x1192p: qsyn2_main + 0x1a9p (quartus_syn) Quartus 0x1e808: msg_main_thread + 0x18 (CCL_MSG) Quartus 0x17021: msg_thread_wrapper + 0x71 (CCL_MSG) Quartus 0x1c89d: mem_thread_wrapper + 0x70 (CCL_MEM) Quartus 0x1b49d: msg_exe_main + 0x20d (CCL_MSG) Quartus 0x2b6c: __scrt_common_main_seh + 0x11c (quartus_syn) Quartus 0x2e8d6: BaseThreadInitThunk + 0x16 (KERNEL32) Quartus 0x5b3b: RtlUserThreadStart + 0x2b (ntdll) End-trace Stack Trace example for crashes in quartus_fit *** Fatal Error: Access Violation at 00007FFB8F79CFF7 Module: quartus_fit.exe Stack Trace: Quartus 0x1cff6: HDB_ASGN_CONTAINER::remove_assignment + 0x52 (DB_HDB) Quartus 0x1cf71: HDB_ASGN_CONTAINER::destroy_assignment + 0x31 (DB_HDB) Quartus 0xca69c: anonymous namespace::delete_all_global_assignments + 0x25c (comp_qhd) Quartus 0xcc344: qhd_reread_global_assign_from_qsf + 0x384 (comp_qhd) Quartus 0x51679: QHD_DATABASE_UTILS::load_design + 0x449 (comp_qhd) Quartus 0x1e1e0: FIT2_DATABASE_EXPERT_QDB::load + 0x5b0 (comp_fit2) Quartus 0x3xee: fit2_create_fitter_netlist + 0x3xee (comp_fit2) Quartus 0x16442: TclNRRunCallbacks + 0x62 (tcl86) Quartus 0x16f4d: TclEvalEx + 0x9ed (tcl86) Quartus 0xa6ab8: Tcl_FSEvalFileEx + 0x22b (tcl86) Quartus 0xa5136: Tcl_EvalFile + 0x36 (tcl86) Quartus 0x15246: qexe_evaluate_tcl_script + 0x4e6 (comp_qexe) Quartus 0x1143b: qexe_do_tcl + 0x46b (comp_qexe) Quartus 0x1a70e: qexe_run_tcl_option + 0x5ee (comp_qexe) Quartus 0x16451: QCU::DETAIL::initialize_qhd_and_run_qexe + 0xa1 (comp_qcu) Quartus 0x1f8e2: qcu_run_tcl_option + 0x2f2 (comp_qcu) Quartus 0x29eb: qexe_run + 0x3eb (comp_qexe) Quartus 0x16f2d: qfit2_main + 0x82d (quartus_fit) Quartus 0x1e808: msg_main_thread + 0x18 (CCL_MSG) Quartus 0x17021: msg_thread_wrapper + 0x71 (CCL_MSG) Quartus 0x1c89d: mem_thread_wrapper + 0x70 (CCL_MEM) Quartus 0x1b49d: msg_exe_main + 0x20d (CCL_MSG) Quartus 0x2b6c: __scrt_common_main_seh + 0x11c (quartus_fit) Quartus 0x2e8d6: BaseThreadInitThunk + 0x16 (KERNEL32) Quartus 0x5b3b: RtlUserThreadStart + 0x2b (ntdll) End-trace Resolution This problem is currently scheduled to be resolved in a future release of the Quartus Prime Pro Edition Software and the Quartus Prime Standard Edition Software. If you are using Quartus Prime Pro Edition Software version 26.1, apply the attached patch for your operating system: Download the Linux or Windows patch package for your platform. On Linux, install the patch package from the console. On Windows, run the patch executable file. Confirm the installation by opening the Quartus Prime GUI and checking the About window, or by running: quartus_sh -v If applying the patch is not possible, or if you need assistance with other Quartus Prime software versions, contact your local Altera support representative. Additional Information Affected software: Quartus Prime Pro Edition Software version 26.1 and earlier Quartus Prime Standard Edition Software version 25.1 and earlier223Views0likes0Comments