Xilinx Vitis 2020.1裡面執行C程式時提示找不到microblaze_0
阿新 • • 發佈:2020-12-31
技術標籤:FPGAFPGAXilinxVitisMicroBlazeVivado
Executables selected for download on to the following processors doesn't exist or incorrectly specified. Do you wish to ignore them and proceed?
1. microblaze_0
其實根本就不是MicroBlaze找不到,而是程式根本就沒有編譯出來!
仔細看一下編譯時的輸出資訊:
10:12:15 **** Build of configuration Debug for project lwiptest **** make all 'Building file: ../src/echo.c' 'Invoking: MicroBlaze gcc compiler' mb-gcc -Wall -O0 -g3 -c -fmessage-length=0 -MT"src/echo.o" -IE:/fpga_projects/test4/ethernet_test3/ethernet_test3/export/ethernet_test3/sw/ethernet_test3/standalone_domain/bspinclude/include -mlittle-endian -mcpu=v11.0 -mxl-soft-mul -Wl,--no-relax -ffunction-sections -fdata-sections -MMD -MP -MF"src/echo.d" -MT"src/echo.o" -o "src/echo.o" "../src/echo.c" 'Finished building: ../src/echo.c' ' ' 'Building file: ../src/i2c_access.c' 'Invoking: MicroBlaze gcc compiler' mb-gcc -Wall -O0 -g3 -c -fmessage-length=0 -MT"src/i2c_access.o" -IE:/fpga_projects/test4/ethernet_test3/ethernet_test3/export/ethernet_test3/sw/ethernet_test3/standalone_domain/bspinclude/include -mlittle-endian -mcpu=v11.0 -mxl-soft-mul -Wl,--no-relax -ffunction-sections -fdata-sections -MMD -MP -MF"src/i2c_access.d" -MT"src/i2c_access.o" -o "src/i2c_access.o" "../src/i2c_access.c" 'Finished building: ../src/i2c_access.c' ' ' 'Building file: ../src/iic_phyreset.c' 'Invoking: MicroBlaze gcc compiler' mb-gcc -Wall -O0 -g3 -c -fmessage-length=0 -MT"src/iic_phyreset.o" -IE:/fpga_projects/test4/ethernet_test3/ethernet_test3/export/ethernet_test3/sw/ethernet_test3/standalone_domain/bspinclude/include -mlittle-endian -mcpu=v11.0 -mxl-soft-mul -Wl,--no-relax -ffunction-sections -fdata-sections -MMD -MP -MF"src/iic_phyreset.d" -MT"src/iic_phyreset.o" -o "src/iic_phyreset.o" "../src/iic_phyreset.c" 'Finished building: ../src/iic_phyreset.c' ' ' 'Building file: ../src/main.c' 'Invoking: MicroBlaze gcc compiler' mb-gcc -Wall -O0 -g3 -c -fmessage-length=0 -MT"src/main.o" -IE:/fpga_projects/test4/ethernet_test3/ethernet_test3/export/ethernet_test3/sw/ethernet_test3/standalone_domain/bspinclude/include -mlittle-endian -mcpu=v11.0 -mxl-soft-mul -Wl,--no-relax -ffunction-sections -fdata-sections -MMD -MP -MF"src/main.d" -MT"src/main.o" -o "src/main.o" "../src/main.c" 'Finished building: ../src/main.c' ' ' 'Building file: ../src/platform.c' 'Invoking: MicroBlaze gcc compiler' mb-gcc -Wall -O0 -g3 -c -fmessage-length=0 -MT"src/platform.o" -IE:/fpga_projects/test4/ethernet_test3/ethernet_test3/export/ethernet_test3/sw/ethernet_test3/standalone_domain/bspinclude/include -mlittle-endian -mcpu=v11.0 -mxl-soft-mul -Wl,--no-relax -ffunction-sections -fdata-sections -MMD -MP -MF"src/platform.d" -MT"src/platform.o" -o "src/platform.o" "../src/platform.c" 'Finished building: ../src/platform.c' ' ' 'Building file: ../src/platform_mb.c' 'Invoking: MicroBlaze gcc compiler' mb-gcc -Wall -O0 -g3 -c -fmessage-length=0 -MT"src/platform_mb.o" -IE:/fpga_projects/test4/ethernet_test3/ethernet_test3/export/ethernet_test3/sw/ethernet_test3/standalone_domain/bspinclude/include -mlittle-endian -mcpu=v11.0 -mxl-soft-mul -Wl,--no-relax -ffunction-sections -fdata-sections -MMD -MP -MF"src/platform_mb.d" -MT"src/platform_mb.o" -o "src/platform_mb.o" "../src/platform_mb.c" 'Finished building: ../src/platform_mb.c' ' ' 'Building file: ../src/platform_ppc.c' 'Invoking: MicroBlaze gcc compiler' mb-gcc -Wall -O0 -g3 -c -fmessage-length=0 -MT"src/platform_ppc.o" -IE:/fpga_projects/test4/ethernet_test3/ethernet_test3/export/ethernet_test3/sw/ethernet_test3/standalone_domain/bspinclude/include -mlittle-endian -mcpu=v11.0 -mxl-soft-mul -Wl,--no-relax -ffunction-sections -fdata-sections -MMD -MP -MF"src/platform_ppc.d" -MT"src/platform_ppc.o" -o "src/platform_ppc.o" "../src/platform_ppc.c" 'Finished building: ../src/platform_ppc.c' ' ' 'Building file: ../src/platform_zynq.c' 'Invoking: MicroBlaze gcc compiler' mb-gcc -Wall -O0 -g3 -c -fmessage-length=0 -MT"src/platform_zynq.o" -IE:/fpga_projects/test4/ethernet_test3/ethernet_test3/export/ethernet_test3/sw/ethernet_test3/standalone_domain/bspinclude/include -mlittle-endian -mcpu=v11.0 -mxl-soft-mul -Wl,--no-relax -ffunction-sections -fdata-sections -MMD -MP -MF"src/platform_zynq.d" -MT"src/platform_zynq.o" -o "src/platform_zynq.o" "../src/platform_zynq.c" 'Finished building: ../src/platform_zynq.c' ' ' 'Building file: ../src/platform_zynqmp.c' 'Invoking: MicroBlaze gcc compiler' mb-gcc -Wall -O0 -g3 -c -fmessage-length=0 -MT"src/platform_zynqmp.o" -IE:/fpga_projects/test4/ethernet_test3/ethernet_test3/export/ethernet_test3/sw/ethernet_test3/standalone_domain/bspinclude/include -mlittle-endian -mcpu=v11.0 -mxl-soft-mul -Wl,--no-relax -ffunction-sections -fdata-sections -MMD -MP -MF"src/platform_zynqmp.d" -MT"src/platform_zynqmp.o" -o "src/platform_zynqmp.o" "../src/platform_zynqmp.c" 'Finished building: ../src/platform_zynqmp.c' ' ' 'Building file: ../src/sfp.c' 'Invoking: MicroBlaze gcc compiler' mb-gcc -Wall -O0 -g3 -c -fmessage-length=0 -MT"src/sfp.o" -IE:/fpga_projects/test4/ethernet_test3/ethernet_test3/export/ethernet_test3/sw/ethernet_test3/standalone_domain/bspinclude/include -mlittle-endian -mcpu=v11.0 -mxl-soft-mul -Wl,--no-relax -ffunction-sections -fdata-sections -MMD -MP -MF"src/sfp.d" -MT"src/sfp.o" -o "src/sfp.o" "../src/sfp.c" 'Finished building: ../src/sfp.c' ' ' 'Building file: ../src/si5324.c' 'Invoking: MicroBlaze gcc compiler' mb-gcc -Wall -O0 -g3 -c -fmessage-length=0 -MT"src/si5324.o" -IE:/fpga_projects/test4/ethernet_test3/ethernet_test3/export/ethernet_test3/sw/ethernet_test3/standalone_domain/bspinclude/include -mlittle-endian -mcpu=v11.0 -mxl-soft-mul -Wl,--no-relax -ffunction-sections -fdata-sections -MMD -MP -MF"src/si5324.d" -MT"src/si5324.o" -o "src/si5324.o" "../src/si5324.c" 'Finished building: ../src/si5324.c' ' ' 'Building target: lwiptest.elf' 'Invoking: MicroBlaze gcc linker' mb-gcc -Wl,-T -Wl,../src/lscript.ld -LE:/fpga_projects/test4/ethernet_test3/ethernet_test3/export/ethernet_test3/sw/ethernet_test3/standalone_domain/bsplib/lib -mlittle-endian -mcpu=v11.0 -mxl-soft-mul -Wl,--no-relax -Wl,--gc-sections -o "lwiptest.elf" ./src/echo.o ./src/i2c_access.o ./src/iic_phyreset.o ./src/main.o ./src/platform.o ./src/platform_mb.o ./src/platform_ppc.o ./src/platform_zynq.o ./src/platform_zynqmp.o ./src/sfp.o ./src/si5324.o -Wl,--start-group,-lxil,-lgcc,-lc,--end-group -Wl,--start-group,-lxil,-llwip4,-lgcc,-lc,--end-group c:/xilinx/vitis/2020.1/gnu/microblaze/nt/x86_64-oesdk-mingw32/usr/bin/microblaze-xilinx-elf/../../libexec/microblaze-xilinx-elf/gcc/microblaze-xilinx-elf/9.2.0/real-ld.exe: lwiptest.elf section `.bss' will not fit in region `microblaze_0_local_memory_ilmb_bram_if_cntlr_Mem_microblaze_0_local_memory_dlmb_bram_if_cntlr_Mem' c:/xilinx/vitis/2020.1/gnu/microblaze/nt/x86_64-oesdk-mingw32/usr/bin/microblaze-xilinx-elf/../../libexec/microblaze-xilinx-elf/gcc/microblaze-xilinx-elf/9.2.0/real-ld.exe: region `microblaze_0_local_memory_ilmb_bram_if_cntlr_Mem_microblaze_0_local_memory_dlmb_bram_if_cntlr_Mem' overflowed by 733496 bytes collect2.exe: error: ld returned 1 exit status 'Finished building target: lwiptest.elf' ' ' 'Invoking: MicroBlaze Print Size' mb-size lwiptest.elf |tee "lwiptest.elf.size" mb-size: 'lwiptest.elf': No such file 'Finished building: lwiptest.elf.size' ' ' 10:12:17 Build Finished (took 2s.285ms)
裡面有一個error,說是BRAM空間不夠了,編譯失敗。連elf檔案(程式檔案)都沒有生成,當然就無法執行!
把BRAM的空間改大後,編譯成功了,程式就執行成功了。
程式執行成功後,如果串列埠沒有輸出,檢查一下Block Design裡面Uartlite波特率設定的對不對。