RISCV 操作常见问题集 – v5-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug

RISCV 操作常见问题集 – v5

(1)如果工程直接复制另一个工程,路径一定要修改,建议重新eclipse工程。

(2)clean Project时提示rm: can’t remove ‘build/dhrystone.elf’: Permission denied

正在使得该elf文件,上次的JTAG链接没有断开。此时可以先关闭c/c++工作界面,再重新添加C/C++ (default),然后在Console中关闭上次的链接。

图片[1]-RISCV 操作常见问题集 – v5-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug

图片[2]-RISCV 操作常见问题集 – v5-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug

图片[3]-RISCV 操作常见问题集 – v5-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug

(3)Debug session’default’ already started。

先关闭c/c++工作界面,再重新添加C/C++ (default),然后在Console中关闭上次的链接。

图片[4]-RISCV 操作常见问题集 – v5-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug

(3)Memory region         Used Size  Region Size  %age Used

c:/efinity/sdk_windows/riscv-xpack-toolchain_8.3.0-2.3_windows/bin/../lib/gcc/riscv-none-embed/8.3.0/../../../../riscv-none-embed/bin/ld.exe: build/ti60f225_oob.elf section `.bss’ will not fit in region `ram’

             ram:     2363296 B         1 MB    225.38%

c:/efinity/sdk_windows/riscv-xpack-toolchain_8.3.0-2.3_windows/bin/../lib/gcc/riscv-none-embed/8.3.0/../../../../riscv-none-embed/bin/ld.exe: region `ram’ overflowed by 1314720 bytes

collect2.exe: error: ld returned 1 exit status

make: *** [../common/standalone.mk:33: build/ti60f225_oob.elf] Error 1

图片[5]-RISCV 操作常见问题集 – v5-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug

解决办法:Error的意思是外部存储器的存储空间不够,目前在分配了1MB的情况下使用了225.38%。所以把default.ld中的LENGTH 修改成4M.

图片[6]-RISCV 操作常见问题集 – v5-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug

重新编译后的结果 。

图片[7]-RISCV 操作常见问题集 – v5-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug

(4)Error: libusb_get_string_descriptor_ascii() failed with LIBUSB_ERROR_PIPE

Error: no device found

Error: unable to open ftdi device with vid 0403, pid 6014, description ‘ELITES-232DL’, serial ‘*’ at bus location ‘*’

图片[8]-RISCV 操作常见问题集 – v5-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug

原因:把embedded_swsoc_xxbspefinixEfxSapphireSocopenocdftdi.cfg(ftdi_ti.cfg)修改成下载器读出来的名字,比如这里我把ELTES-232DL修改成了Trion T120F324 Development Board。因为Programmer界面读到的USB target就是Trion T120F324 Development Board,当然也要注意ftdi_vid_pid和ftdi_channel是否正确,如果不正确也会引起别的问题。

图片[9]-RISCV 操作常见问题集 – v5-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug

(5)Error:cpuConfigFile D:testriscvefx_ti60f225_oob_v2.1embedded_swsapphire_soccpu0.yaml not found

Error: target ‘fpga_spinal.cpu0’ init failed

图片[10]-RISCV 操作常见问题集 – v5-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug

原因:debuger路径问题。在riscv和efx之间应该有个斜杠,如报错中的红色标注。

(6)No source available for “main() at 0x1114” 

图片[11]-RISCV 操作常见问题集 – v5-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug

原因:没有打开debug环境变量。打开debug开关之后要重新编译。

(7)Error: timed out while waiting for target halted

图片[12]-RISCV 操作常见问题集 – v5-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug

原因:1)IP设置的是soft Jtag,实际却用hard Jtag在调试;

2)CPU没有跑起来;

3)debuger与JTAG冲突;

4)在interface 添加JTAG之后生成的信号与RISCV 连接不正确或者不完全。

5)AXI接口连接异常,也可能出现timed out指示。

(8)SOC烧写到flash启动不了

一般默认片上RAM选择了4K大小用于bootloader,但是如果手动修改了bootloader,比如添加了debug,可能存储空间不足。

(9)

Error:JTAG scan chain interrogation failed :all ones

Error: Check JTAG interface,timings,target power, etc.

Error: Trying to use configured scan chain anyway…

Error: fpga_spinal.bridge: IR capture error:saw ox0f not 0x01

图片[13]-RISCV 操作常见问题集 – v5-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug

workround:JTAG下载线连接不紧。

(10)soft Jtag与hard Jtag同时使用时,会出现第一次debug都需要重新插拔下载器问题

workround:查找两个下载线的连接位置,注意分开两个下载器的连接位置。

(10)soc IP生成不了,

图片[14]-RISCV 操作常见问题集 – v5-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug

workround可能是java 8没有安装

图片[15]-RISCV 操作常见问题集 – v5-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug

 

(11) No source available for “(gdbi2),proc[42000j,threadGroupi1],gdb(2),proc420001.0Sthread[1).thread(1j.framel0j’

图片[16]-RISCV 操作常见问题集 – v5-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug

说明:外部存储器没有运行起来

(12)错误:

mkdir: can’t create directory ‘build/xxx/embedded_sw/sapphire_soc/software/standalone/uartInterruptDemo/’: No such file or directory

make: *** [../common/standalone.mk:56: build/xxx/embedded_sw/sapphire_soc/software/standalone/uartInterruptDemo/src/main.o] Error 1

“make all” terminated with exit code 2. Build might be incomplete.

WorkWround : Eclipse路径太长。

在common文件夹下,找到standalone.mk文件。

图片[17]-RISCV 操作常见问题集 – v5-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug

把路径:

OBJS := $(realpath $(OBJS))

修改成:

OBJS := $(addprefix $(PROJ_NAME)/,$(OBJS))

如下图所示(感谢客户为我们提供解决方案)

图片[18]-RISCV 操作常见问题集 – v5-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug

(13)Debug时出Break at address “0xf90000000” with no debug information avalibale,or outside of program code

图片[19]-RISCV 操作常见问题集 – v5-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug

 

(14)

Info : JTAG tap: fpga_spinal.bridge tap/device found: 0x10660a79 (mfg: 0x53c (Efinix Inc), part: 0x0660, ver: 0x1)

Error: fpga_spinal.bridge: IR capture error; saw 0x05 not 0x01

Warn : Bypassing JTAG setup events due to errors

Error: !!!

Error: Can’t communicate with the CPU

Error: !!!

Warn : target fpga_spinal.cpu0 examination failed

Info : starting gdb server for fpga_spinal.cpu0 on 3333

Info : Listening on port 3333 for gdb connections

Warn : Target was in unknown state when halt was requested

Info : Halt timed out, wake up GDB.

Error: timed out while waiting for target halted

 

图片[20]-RISCV 操作常见问题集 – v5-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug

原因(1)RISCV中FPGA Top Port选择不对。

 

图片[21]-RISCV 操作常见问题集 – v5-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug

(2)确认下载线连接是否正常。

(13)

图片[22]-RISCV 操作常见问题集 – v5-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug

(1) 同一个下载器时softjtag与hardjtag的名字不能一样,比如一个是YLS_DL,另一个是YLS_DL1.也就是需要手动把另一个名字修改下。

(2)注意修改cfg文件时文件时的channel号要与下载器对应

图片[23]-RISCV 操作常见问题集 – v5-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug

(14)

图片[24]-RISCV 操作常见问题集 – v5-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug

(1)用2022的版本打开 2023版本的工程报这个错误 ,新版本已经不再使用c232hm_ddhsl.cfg文件,而是改用external.cfg文件 。

 

(15)[BUILDER_INVOKE_BUILD_COMMAND]stderr:错误:找不到或无法加载主类saxon.board.efinix.EfxSapphireSocBUILDER INVOKE BUILD COMMAND-DONE] Build Command Execution: FailureIPGenerateFilesetException: [GENERATE _IP-ERROR] Build script failed in build command, 错误找不到或无法加载主类 saxon. board. efinix.EfxSapphireSoc

图片[25]-RISCV 操作常见问题集 – v5-易灵思(Elitestek)社区-FPGA CPLD-ChipDebug

(1)重新安装Efinity,可能某些文件丢失。

请登录后发表评论

    没有回复内容