Forum Discussion
Intermittent DE10-Standard error starting GDB server with quartus_hps
Hello,
We have 15 DE10-Standard boards being used with Quartus 18.1 and the associated version of Altera Monitor Program on Ubuntu 24.04 (amd64).
Generally the boards work without issue, however in the Monitor Program we occasionally see 'Download System - Partial Success: The system has successfully downloaded onto the board, but HPS components could not be configured.' Power cycling the board doesn't seem to resolve the error, nor does swapping the board to a different desktop. After a number of tries the error will go away. We haven't been able to isolate an exact pattern but issue doesn't appear random either, it will keep showing up for certain boards, and then go away, then show up on other boards.
Another symptom we see is that when a board downloads the systems successfully, during the final step of the process the JTAG TX LED on the board appears to turn solid green. On the boards that hang and fail, the same LED flashes rapidly while the process hangs.
The monitor program logs show the following commands are run before the error appears:
$ /home/$USER/DE10/monitorprogramtutorial/
$ make clean
# The board name in quotes below is variable and appears to be unique to each board or connection
$ /opt/intelFPGA_lite/18.1/quartus/bin64/quartus_pgm -c "DE-SoC [1-10]" --auto
$ quartus_pgm -c "DE-SoC [1-10]" -m jtag -o "P;/opt/intelFPGA_lite/18.1/University_Program/Computer_Systems/DE10-Standard/DE10-Standard_Computer/verilog/DE10_Standard_Computer.sof@2"
$ quartus_hps --cable="DE-SoC [1-10]" -o GDBSERVER --gdbport0=3212 --preloader=/opt/intelFPGA_lite/18.1/University_Program/Monitor_Program/arm_tools/u-boot-spl.de10-standard.srec --preloaderaddr=0xffff14f0Running these commands manually results in the final command either:
1. Starting a GDB server very quickly:
>>Resetting HPS.
>>Downloading preloader.......
>>Program loaded. PC set to program entry (0xFFFF0000)
>>Setting vector base address register to: 0xffff0000
>>Running preloader..
>>Preloader successfully run.
Starting GDB Server.
Listening on port 3212 for connection from GDB2. Hanging for a long time when 'Downloading preloader.......' and then failing at the 'Running preloader...................' stage and hanging indefinitely. Ending the process with Ctrl+C shows:
Error: Encounter JTAG AJI error while accessing HPS
Error: send_access_data() error while accessing DP Register
Error: Fail to select Access Port
Error: Fail to access Bank 0x0 of Port 1
Error: Fail to READ ACCESS to the Physical Reg
Error: AJI failed to send data
Error: Encounter JTAG AJI error while accessing HPS
Error: send_access_data() error while accessing DP Register
Error: Fail to select Access Port
Error: Fail to access Bank 0x0 of Port 1
Error: Fail to READ ACCESS to the Physical Reg
Error: Fail to enable DEBUG feature
Error: AJI failed to send data
Error: Encounter JTAG AJI error while accessing HPS
Error: send_access_data() error while accessing DP Register
Error: Fail to select Access Port
Error: Fail to access Bank 0x0 of Port 1
Error: Fail to READ ACCESS to the Physical Reg
Error: Failed to load program.
Error: AJI failed to send data
Error: Encounter JTAG AJI error while accessing HPS
Error: send_access_data() error while accessing DP Register
Error: Encounter JTAG AJI error while reading Control/Status Register
Error: AJI failed to send data
Error: Encounter JTAG AJI error while accessing HPS
Error: send_access_data() error while accessing DP Register
Error: Fail to select Access Port
Error: Fail to access Bank 0x0 of Port 0
Error: Fail to READ ACCESS to the Physical Reg
Error: Fail to write to MPU Module Reset Register
Error: Engine failed to set down the hardware
Error: Quartus Prime Programmer was unsuccessful. 0 errors, 0 warnings
Error: Peak virtual memory: 187 megabytes
Error: Processing ended: Tue Aug 11 11:44:38 2026
Error: Elapsed time: 00:05:05
Error: Total CPU time (on all processors): 00:00:01Any thoughts or suggestions are greatly appreciated.
2 Replies
- tehjingy_Altera
Regular Contributor
Hi
What is the Jtag clock frequency that you are using?
Could you try reducing the JtagClock frequency ? Try 16Mhz or 6Mhz.You could use the command below to change the frequency:
jtagconfig --setparam <cable_index> JtagClock <frequency>- fpga-user
New Contributor
Hello,
Thanks for the reply. It looks like the JtagClockfrequency is set to 24 Mhz by default.
However, when running quartus_hps one of the output lines is "Successfully change hardware frequency to 16Mhz":
quartus_hps --cable="$FPGADEV" -o GDBSERVER --gdbport0=3212 --preloader=/opt/intelFPGA_lite/18.1/University_Program/Monitor_Program/arm_tools/u-boot-spl.de10-standard.srec --preloaderaddr=0xffff14f0 Info: ******************************************************************* Info: Running Quartus Prime Programmer Info: Version 18.1.0 Build 625 09/12/2018 SJ Lite Edition Info: Copyright (C) 2018 Intel Corporation. All rights reserved. Info: Your use of Intel Corporation's design tools, logic functions Info: and other software and tools, and its AMPP partner logic Info: functions, and any output files from any of the foregoing Info: (including device programming or simulation files), and any Info: associated documentation or information are expressly subject Info: to the terms and conditions of the Intel Program License Info: Subscription Agreement, the Intel Quartus Prime License Agreement, Info: the Intel FPGA IP License Agreement, or other applicable license Info: agreement, including, without limitation, that your use is for Info: the sole purpose of programming logic devices manufactured by Info: Intel and sold by Intel or its authorized distributors. Please Info: refer to the applicable agreement for further details. Info: Processing started: Mon Aug 17 11:30:35 2026 Info: Command: quartus_hps --cable="DE-SoC [1-4]" -o GDBSERVER --gdbport0=3212 --preloader=/opt/intelFPGA_lite/18.1/University_Program/Monitor_Program/arm_tools/u-boot-spl.de10-standard.srec --preloaderaddr=0xffff14f0 Current hardware is: DE-SoC [1-4] Successfully change hardware frequency to 16Mhz Found HPS at device 1 Double check JTAG chain HPS Device IDCODE: 0x4BA00477 AHB Port is located at port 0 APB Port is located at port 1 Double check device identification ... >>CPU0 halted at 0x2fa4. >>Resetting HPS. >>Downloading preloader....... >>Program loaded. PC set to program entry (0xFFFF0000) >>Setting vector base address register to: 0xffff0000 >>Running preloader..After the above command is run 'jtagconfig --getparam "DE-SoC [1-4]" JtagClock' then shows the JtagClock is set to 16Mhz until the board is power cycled.
I tested our boards again today, and 2 showed the issue again. I tried power cycling these boards, manually setting the JtagClock with 'jtagconfig --setparam <cable_index> JtagClock <frequency>' to 16Mhz and 6Mhz before running quartus_hps, however the same issue kept persisting. No matter how many times I powered the 2 boards off and on they kept hanging at 'Downloading preloader...' and 'Running preloader...'
I then noticed after powering off the boards I could feel they were quite hot in the general area of the EPM570GF chip. Instead of power cycling the board quickly and trying the test again, I waited 1-2 minutes for the board to cool down. I then tested again and the quartus_hps command ran without issue and the GDB server started successfully.
I will test all the boards over the next few days and see if it's only these few boards which have this problem, or if it shows up intermittently across all devices. Any other suggestions are greatly appreciated. Thanks again.