Saturday 26 April 2014

Writing/Reading data from Compact flash from FPGA


Do you know how to read/write from Compact flash from an FPGA board ?

Last week, I was trying to do read/write operations to compact flash using FPGA. As usual, it was very difficult to get good documentation to do this.

A summary of the procedure to access files in a Xilinx FPGA board(ML605) is as follows: 

1. Created an XPS project (Microblaze based) and added compact flash IP to the design 
2. Generated bitstream and exported the design to SDK
3. Created a new software project - added the Libxil FAT system library in MSS project settings
4. Wrote a C code to open a file, read/write file by reading LibXil documentation)
5. Increase the stack and heap size of the application (to allow dynamic memory allocation) and store application in DDR memory by generating linker script

Note : There is no change in jumper settings (for ML605) and default files in compact flash are not to be modified. 

Check out the following links for more details:


2 comments:

  1. Can you give me some information on the CompactFLASH IP you used here? Is it an alternative to the SystemACE controller?

    ReplyDelete
  2. Also can I do this using Spartan?

    ReplyDelete