You are using a deprecated Browser. Internet Explorer is no longer supported by Xilinx.
14.1 EDK - How do I boot an application from flash with the KC705?
This article gives an explanation and tutorial on how to bootload a DDR-linked application out of a parallel BPI flash on the Kintex KC705 board.
This is a minimal design, which will only use a MicroBlaze processor, DDR, Flash, and a UART-Lite peripheral. The addresses used are for demonstration purposes only, and can be edited at the desire of the end user.
Using Linear Flash (BPI): Ensure the MODE pins on the KC705 are set to M[2:0] = 010
Build your Hardware in XPS
In Base System Builder, select the KC705 for your device.
Select DDR, Linear Flash, and UARTLITE for your peripherals
Next until Finished Click
Project -> Export Hardware Design to SDK Ensure the Include bitstrem and BMM file checkbox is selected Once SDK launches, create two new Xilinx C Projects (Under
File -> New) Hello World
SREC Bootloader Ensure the linker scripts for each project point to the correct memory locations (right-click the application
-> Generate Linker Script): SREC Bootloader = BRAM
Hello World = DDR Open the blconfig.h file in the SREC bootloader project.
Set the address to match the FLASH BASEADDR in the system.xml + 0x0120 0000 offset
For example, if the FLASH starts at 0x7600 0000, you set the address to 0x7720 0000 Build both applications with Ctrl-B
Attempt to download the SREC Bootloader to the FPGA using Xilinx Tools -> Program FPGA and selecting that elf.
It should fail. This just runs DATA2MEM to get a download.bit with the SREC bootloader in it. Go to
Xilinx Tools -> Program Flash Select your Hello World ELF file (Generally under the workspace_dir/hello_world_0/Debug/hello_world_0.elf)
Check the box that says
Convert to Bootable SREC format Set the flash offset to 0x01200000
Program Flash Back in SDK, click on
Xilinx Tools -> Launch Shell Type in:
promgen -p bin -c FF -o swapped.bin -data_file up 0 hello_world_0.elf.srec -w
you will need to point "hello_world_0.elf.srec" to wherever your srec is saved (generally under hw_platform_0/cache) Open iMPACT
Create PROM file on the left side Select
BPI Flash -> Configure Single FPGA -> [Green Arrow] Select Spartan-6 in Step 2
Select a save location you will remember
File Format MCS
Data Width x16
Add Non-Configuration files YES
OK on Start adding device file to Revision 0 Find your download.bit under the hw_platform_0/ folder
Do not add another Device File
Add the swapped.bin file you made in step (18) as the non-configuration/data file
Add it to address location 0x0090 0000
Generate on the Left Side Initialize the Boundary Scan
Right-Click your device, and
Add SPI/BPI flash Assign the MCS you created in (25)
Right-click the device's flash, and click
Program. You should be done
Was this Answer Record helpful?