Giter Site home page Giter Site logo

alexeykosinov / ml605-ddr-bpi-flash-bootloader-guide Goto Github PK

View Code? Open in Web Editor NEW
0.0 2.0 0.0 2 KB

Running your application from DDR memory & BPI flash using SREC bootloader

ml605 xilinx virtex-6 ise-design-suite xilinx-ise xilinx-sdk xilinx-fpga ddr bootloader

ml605-ddr-bpi-flash-bootloader-guide's Introduction

Enviroment

  • Windows 7
  • ISE Desgn Suite 14.7
  • ML605 Development board

Instruction

  1. Create EDK project using BSB. Select your stuff that must includes: UART, DDR, EMC controllers as well. All settings as you wish nothing special.
  2. Build project, export design, open Xilinx SDK
  3. Create two project:
    • Application (stored in DDR memory: generate linker script -> in Basic all in DDR)
    • Bootloader (stored in BRAM)
  4. Optionally you can reduce size of bootloader by choosing in C/C++ Build Settings -> Optimization -> Optimization Level : Optimize for size (-Os) and comment #define VERBOSE in bootloader.c
  5. In blconfig.h set FLASH_IMAGE_BASEADDR with address your EMC controller with offset:
#define FLASH_IMAGE_BASEADDR  (XPAR_LINEAR_FLASH_S_AXI_MEM0_BASEADDR + 0x01200000)
  1. Build all
  2. Now you have two .[elf] : for example app.elf and bootloader.elf
  3. Return to dir of your EDK project open bitgen.ut in etc folder and add at the bottom:
-g Compress
-bd ..\SDK\SDK_Export\bootloader\Debug\bootloader.elf

when:

  • 1st command reduces the size of generated bit file
  • 2nd command store bootloader in your bitsream
  1. Re-run Generated BitStream
  2. Finally you have .[bit] file with bootloader in it stored in implementation folder
  3. Convert this .[bit] file into .[mcs] using promgen for example:
promgen -w -p mcs -c FF -o system -s 131072 -u 00000000 system.bit -bpi_dc parallel -data_width 16
  1. In ML605:
  • Set switch S2[6:1] to 001010 (select's Numonyx JS28F256P30 BPI flash, 32MB)
  • Set switch S1[4:1] to 0XXX
  • Connect JTAG and USB cable to host
  1. Power on & using iMPACT or batch program flash with your .[mcs] file
  2. After succesfull programming open Xilinx SDK
  3. Selct Xilinx Tools -> Program Flash
  4. Image file: Debug/Release .[elf] file of your builded application
  5. Program at offset 0x01200000 (choosen in 4) and click Program
  6. Restart board and see result's in terminal

ml605-ddr-bpi-flash-bootloader-guide's People

Contributors

alexeykosinov avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.