= Using the SystemACE CF = Both versions of the WARP FPGA Board include a Xilinx SystemACE CF controller. This chip provides two functions: * Configuration of the main FPGA from a bitstream stored on a CompactFlash card * File I/O between a design running in the FPGA and the !CompactFlash card ---- == CompactFlash Card Requirements == '''Type''': must be Type I or II CF card. We have successfully used sizes from 128MB to 1GB (2GB should work too). '''Format''': must be formatted as FAT16. Windows can read this format but will not initialize new cards using it. Instead, you can use an open-source command line tool, mkdosfs, to format cards. 1. Download [attachment:wiki:SystemACE/Files:mkdosfs.zip?format=raw mkdosfs.zip]. You can read more about mkdosfs and download the source from the author's [http://www1.mager.org/mkdosfs/ site]. 1. Unzip the program, open a Windows command prompt and change to the mkdosfs directory. 1. Mount your !CompactFlash card and look for the drive letter Windows assigns it in My Computer. 1. Run the following command, replacing "X" with the drive letter of your !CompactFlash card: {{{ mkdosfs -v -F 16 X: }}} ---- == FPGA Configuration == The SystemACE CF controller supports two schemes for reading FPGA configuration files from the CF card. === Xilinx iMPACT === This flow uses the Xilinx iMPACT tool to collect .bit files (up to 8), convert them into .ace files and create the require folder structure on the CF card. You must use this flow if you want to store multiple FPGA configurations on the CF card. === Single .ace File === This flow uses XMD (a tool provided by the EDK) to convert a single .bit file into an .ace file, suitable for use with the SystemACE CF controller. We've written batch/shell scripts to utilize this flow. If you already have an ACE file jump to step 6. 1. Download the support scripts from the repository: [source:/PlatformSupport/SystemACE /PlatformSupport/SystemACE]. 1. Copy the scripts to some directory in your path. 1. Edit the .sh (Linux) or .bat (Windows) script with the paths to the warp_genace.tcl script and your .bit file. You can use a relative path to the .bit file, allowing the same script to be used for multiple projects. 1. Open a command prompt and change to your project directory (for XPS projects, this is the directory with your .xmp file). 1. Run the .sh or .bat script. If successful, it will produce a file 'system.ace' in the same directory. 1. Copy 'system.ace' to your (already-formatted) CF card. This should be the only file on the card. ---- == Resources == * Xilinx SystemACE CF datasheet: [http://www.xilinx.com/support/documentation/data_sheets/ds080.pdf http://www.xilinx.com/support/documentation/data_sheets/ds080.pdf]