- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
I have developed a Quartus project based on the Nios V/g processor for the Terasic DE0-Nano board using Quartus Prime Standard Edition 23.1. The board is connected to a PC via the USB interface. In this case, Nios V/g 1.0.0 was integrated into the SoC. The QSYS and QPF projects were compiled successfully with warnings, and the SOF file was generated.
A BSP project was generated using the SOPCINFO file, and a RISC-V assembler file was compiled, linked, and an ELF file was downloaded after the SOF file configured the board. The available tools in the Nios V Command Shell 23.1 were used.
A simple message was successfully displayed on a Nios V Command Shell 23.1 terminal.
The same project was duplicated and opened using Quartus Prime Standard Edition 24.1. In this case, Nios V/g 4.0.0 was integrated into the SoC after automatic IP upgrading. The QSYS and QPF projects were also compiled successfully with warnings, and the SOF file was generated.
BSP and ELF files were generated using the tools available in the Nios V Command Shell 24.1 in the same way as applied for the 23.1 project.
However, after configuring the FPGA and downloading the ELF file, the message was not displayed on a Nios V Command Shell 24.1 terminal; the program hangs.
Could you please provide any hints on how to solve this problem when using Quartus Prime Standard version 24.1 and Nios V/g 4.0.0?
Regards.
Domingo.
P.D. There is no issue when upgrading Nios V/m cores from Quartus 23.1 to 24.1.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
Thank you very much for your suggestions. I checked them all, but I was not successful.
However, this issue could be fixed as follows.
The "Branch Prediction" option of the Nios V/g 4.0.0 IP was enabled (24.1std).
This option is unavailable for the Nios V/g 1.0.0 IP (23.1std).
I used the software debugger (OpenOCD and riscv32-unknown-elf-gdb) and noted that branches were never taken.
My program has some branches that are taken and output messages on the display.
After unchecking the "Branch Prediction" checkbox, the issue was solved, and the program ran correctly.
Perhaps the issue lies in the branch prediction module of the Nios V/g 4.0.0 IP.
Regards.
Domingo.
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,
Here some suggestions you can check.
- Verify using "System Console" that your NIOSV does not have any reset/clock issue. Navigate to "System Explorer", then unroll the drop-down menu "device"-><device>-> look for warnings or issues in the view.
- Try using the juart-terminal with - d <#> -i <#> switches (looking for other <#>)
- Using the programmer, you can slowdown the JTAG clocking. In the Quartus Programmer, go to "Hardware Setup.." and reduce the frequency in "Hardware Frequency"
- Have you try generating a .hex file for your program and using it in the CPU RAM?
- Please verify after doing the "Automatic Upgrade" that nothing was disconnected in your "Platform Designer Project" (this could happen)
Just to clarify, are you seeing any printing in the "juart-terminal" at all? Or the CPU starts to execute and then stalls?
Thanks,
~E.V
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
Thank you very much for your suggestions. I checked them all, but I was not successful.
However, this issue could be fixed as follows.
The "Branch Prediction" option of the Nios V/g 4.0.0 IP was enabled (24.1std).
This option is unavailable for the Nios V/g 1.0.0 IP (23.1std).
I used the software debugger (OpenOCD and riscv32-unknown-elf-gdb) and noted that branches were never taken.
My program has some branches that are taken and output messages on the display.
After unchecking the "Branch Prediction" checkbox, the issue was solved, and the program ran correctly.
Perhaps the issue lies in the branch prediction module of the Nios V/g 4.0.0 IP.
Regards.
Domingo.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks for finding this out
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
@Benitez__Domingo is there any way you could provide sample code for your issue? We would like to investigate this further internally. Your case might help us to do this.
Thanks!
~E.V.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
Sure. You could send me an email to my address.
Regards.
Domingo.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello Domingo,
I have no access to email addresses in the forum. Are you able to share in the forum?
Please let me know, if not, we can figure a way out
~E.V.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Esteban,
This is my email address: domingo [dot] benitez [at] ulpgc [dot] es
Regards.
Domingo.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Greetings, as solution has been marked and with no further clarification/updates on the matter, hence would assume challenge are overcome
Please login to ‘ https://supporttickets.intel.com/s/?language=en_US’, 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. For new queries, please feel free to open a new thread and we will be right with you. Pleasure having you here.
Best Wishes
BB

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