RISCV 操作常见问题集
(1)假如工程直接仿制另一个工程,途径一定要修正,主张从头eclipse工程。
(2)clean Project时提示rm:。 can。't remove 'build/dhrystone.elf': Permission denied。
正在使得该elf文件,前次的JTAG链接没有断开。此刻能够先封闭c/。c++。作业界面,再从头增加C/C++(default),然后在Console中封闭前次的链接。
(3)Debug session'default' alre。ad。y star。te。d。
先封闭c/c++作业界面,再从头增加C/C++(default),然后在Console中封闭前次的链接。
(3)。Mem。or。y region Used Size Region Size %age Used。
c:/efinity/。sd。k_windows/。risc。v-xpack-toolchain_8.3.0-2.3_windows/bin/../lib/gcc/riscv-none-embed/8.3.0/../../../../riscv-none-embed/bin/ld.exe: build/。ti。60f225_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 build/ti60f225_oob.elf] Error 1。
解决办法:Error的意思是外部存储器的存储空间不行,现在在分配了1MB的情况下运用了225.38%。所以把default.ld中的LENGTH 修正成4M.。
从头编译后的成果。
(4)Error: lib。usb。_get_string_descriptor_ascii() fai。led。with LIBUSB_ERROR_。PI。PE。
Error: no device found。
Error: unable to open ftdi device with vid 0403, pid 6014, description 'ELITES-232DL', serial '*' at bus location '*'。
原因:把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是否正确,假如不正确也会引起其他问题。
(5)Error:。cpu。ConfigFileD:testriscvefx_ti60f225_oob_v2.1embedded_swsapphire_soccpu0.yaml not found。
Error: target '。fpga。_spinal.cpu0' init failed。
原因:debuger途径问题。在riscv和efx之间应该有个斜杠,如报错中的赤色标示。
(6)No source av。ai。lable for "main() at 0x1114"。
原因:没有翻开debug环境变量。翻开debug开关之后要从头编译。
(7)Error: timed out while waiting for target halted。
原因: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: CheckJTAGinterface,timings,target power, etc.。
Error: Trying to use configured scan chain anyway...。
Error: fpga_spinal.bridge: IR capture error:saw ox0f not 0x01。
workround:JTAG下载线衔接不紧。
(10)soft Jtag与hard Jtag一起运用时,会呈现第一次debug都需求从头插拔下载器问题。
workround:查找两个下载线的衔接方位,留意分隔两个下载器的衔接方位。
(10)soc IP生成不了,
workround或许是。java。8没有装置。
(11) No source available for "(gdbi2),proc[42000j,threadGroupi1],gdb(2),proc420001.0Sthread[1).thread(1j.framel0j'。
阐明:外部存储器没有运转起来。
(12)过错:
mkdir: can't create directory 'build/xxx/embedded_sw/sapphire_soc/software/standalone/。uart。InterruptDemo/': No such file or directory。
make: *** [../common/standalone.mk 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文件。
把途径:
OBJS := $(realpath $(OBJS))。
修正成:
OBJS := $(addprefix $(PROJ_NAME)/,$(OBJS))。
如下图所示(感谢客户为咱们供给解决方案)。
(13)Debug时出Break at address"0xf90000000" with no debug information avalibale,oroutside of program code。
(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 erro。rs。
Error: !!!。
Error: Can't commun。ic。ate 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。
原因(1)RISCV中FPGA Top Port挑选不对。
(2)承认下载线衔接是否正常。
(13)。
(1) 同一个下载器时softjtag与hardjtag的姓名不能相同,比方一个是YLS_DL,另一个是YLS_DL1.也便是需求手动把另一个姓名修正下。
(2)留意修正cfg文件时文件时的channel号要与下载器对应。
(14)。
(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。
(1)从头装置Efinity,或许某些文件丢掉。
(16)Tr。ac。eback (most recent call last):。
File "F:/efinity/scripts/efx_run_pt.py", line 59, in。
File "F:/efinity/pt/binlengine.py",line 24,in。
ImportError: DLL load failed while importing Qtwidgets: 找不到指定的模块。
周四月22 24 1117- E:/efinity/。python3。8/bin/。python。.exe finished. Exit code = 1 Exit st.。
ERROR: Interface Designer constraint generation was not successful, will not proceed to efx_pnr...。
Running placement and routing flow fail, See exit code and exit status.。
阐明:需求装置VC。
(17)RISCV IP生成报错。
[BUILDER_INVOKE_BUILD_COMMAND] stderr: Traceback (most recent call last): File "C:Efinity2023.2ipmip/efx_soc/efx_soc/embedded_sw/sw_script.py", line 677, in main() File "C:Efinity2023.2ipmip/efx_soc/efx_soc/embedded_sw/sw_script.py", line 121, in main shutil.copytree(Path(src_dir, f), dst=Path(loc, f), dirs_exist_ok=True) File "C:Efinity2023.2python311Libshutil.py", line 561, in copytree return _copytree(entries=entries, src=src, dst=dst, symlinks=symlinks, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:Efinity2023.2python311Libshutil.py", line 515, in _copytree raise Error(errors) shutil.Error: [('C:\Efinity\2023.2\ipm\ip\efx_soc\efx_soc\embedded_sw\software\。freeRTOS。\freertosUartInterruptDemo\src\freertos_risc_v_chip_specific_extensions.h',
.......。
[BUILDER_INVOKE_BUILD_COMMAND-DONE] Build Command Execution: Failure。
IPGenerateFilesetException: [GENERATE_IP-ERROR] Build script failed in build_command, Traceback (most recent call last): File "C:Efinity2023.2ipmip/efx_soc/efx_soc/embedded_sw/sw_script.py", line 677, in main() File "C:Efinity2023.2ipmip/efx_soc/efx_soc/embedded_sw/sw_script.py", line 121, in main shutil.copytree(Path(src_dir, f), dst=Path(loc, f), dirs_exist_ok=True) File "C:Efinity2023.2python311Libshutil.py", line 561, in copytree return _copytree(entries=entries, src=src, dst=dst, symlinks=symlinks, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File。
阐明:或许是工程的途径太深。
内容来源:https://havascm.com/app-1/mtaiphim,https://chatbotjud-hml.saude.mg.gov.br/app-1/sortear-insta
(责任编辑:最新热点)