09-11-2014 12:57 PM
I want to implement a microblaze in PL on my zynq board. I have established the hardware, programmed both ps0 application and microblaze application, and test them under SDK by referring UG940 and XAPP1093.
Trying to create boot.bin for sd booting.
if I just creat boot.bin with FSBL.elf+.bit+ps0.elf+mb.elf, only the ps0 application is running.
if I create in the same way but add [load = 0x08000000] for mb.elf, none of applications works, i.e. 0x08000000 is the
I should have missed something, but got no explict hints after I searched a lot online.
Someone mentioned a solution is to initialize the bram of microblaze with its appliction elf if it is small, how to realize such initialization?
In XAPP1093, it says "The FSBL is responsible for placing the MB0 ELF at 0x30000000" with C_BASE_VECTORS = 0x30000000 for microblaze, how does FSBL finish this work? no modification on generated FSBL project is described in XAPP1093.
09-12-2014 06:24 PM
Never used this scenario. Some comments based upon the doc and experience with the FSBL.
The ELF files contain the entry point and load addresses. Bootgen will convert the ELF files to a binary image partition and put the entry point / load address into a partition header. The FSBL will use the partition header to determine where to load the binary image and what address to jump to. The FSBL will load all non-bootloader ELFs but jump to the first non-bootloader ELF.
In theory, a boot.bin file of FSBL.elf+.bit+ps0.elf+mb.elf will result in PS.ELF and MB.ELF being loaded and control passed to PS.ELF. MB.ELF may be loaded but the MicroBlaze is held in reset. XAPP109 says that code in PS.ELF will release the reset on MicroBlaze to start it running.
I don't think it is an issue with the FSBL loading the MicroBlaze memory. Maybe be try dumping out a few memory locations from the PS app to see if the MB app got loaded. Stating the obvious, I would guess that something is stopping the MicroBlaze from starting.
The auto-generated FSBL should not need modification. It does need a BSP that points to the correct hardware platform export. I believe that is the only external depedency that FSBL has.
09-17-2014 07:13 AM