MSSGE_Setup_with_Xilinx_14.x_and_Matlab_2012b - david-macmahon/wiki_convert_test GitHub Wiki

This page explains how to set up the MSSGE toolflow for CASPER development with the Xilinx 14.x tools and Matlab 2012a/b.

  • ''Note: Compiling for ROACH1/2 can use a lot of RAM. We recommend that you have more than 8GB for your 14.4 compilation machines and ideally an SSD.

Required software

  • Ubuntu 12.04 64bit / RHEL6 / CentOS 6.2 x64. (This page is aimed at Ubuntu, although RHEL is supported by Xilinx)
  • Matlab R2012a/b
  • Xilinx v14.x (Latest 14.7)
  • MSSGE libraries

Tool-Flow Setup

  1. Install the Operating System
  2. Install Matlab 2012a/b
  3. Install Xilinx 14.x (System Edition)
  4. Clone the mlib_devel repository ("git clone git://github.com/casper-astro/mlib_devel.git")
  5. Create a startsg.local file in the root mlib_devel directory to specify your Xilinx and Matlab install path. This should contain the three definitions (changed to suit your particular setup):

export MATLAB_PATH=/opt/MATLAB/R2012b export XILINX_PATH=/opt/Xilinx/14.7/ISE_DS export XILINX_PLATFORM=lin64

You can now start system generator by running startsg "./startsg"

Tweaks to be able to compile

Xilinx removed support for several hardware pcores we use for ROACH1/2 from the 14 versions. So the current solution is to add the following pcores from the Xilinx 11 install to your XPS_ROACH_BASE/pcores folder or to your 14 install directory at Xilinx/14.7/ISE_DS/EDK/hw/XilinxProcessorIPLib/pcore. Link to the 11 opb pcores

  • bram_if_cntlr_v1_00_a
  • bram_if_cntlr_v1_00_b
  • ipif_common_v1_00_c
  • opb_arbiter_v1_02_e
  • opb_bram_if_cntlr_v1_00_a
  • opb_ipif_v3_00_a
  • opb_opb_lite_v1_00_a
  • opb_v20_v1_10_c
  • proc_common_v1_00_a

The syntax in the Xilinx Perl scripts is not supported under the Ubuntu default shell Dash. Change the symbolic link sh -> dash to sh -> bash:

  • cd /bin/
  • sudo rm sh
  • sudo ln -s bash sh

Point gmake to make by creating the symbolic link gmake -> make:

  • cd /usr/bin/
  • sudo ln -s make gmake

If you are not getting any blocks in Simulink (Seen in CentOS) change the permissions on /tmp/LibraryBrowser to a+rwx:

  • chmod a+rwx /tmp/LibraryBrowser

Upgrades to the Tool-Flow Repository

  • bee_xps has changed to casper_xps, this means that to run compile your design you need to now run casper_xps NOT bee_xps!
  • The BEE2_XPS_LIB_PATH has been changed to XPS_BASE_PATH, you will need to update your startsg scripts with this.
  • The xps_lib directory has been changed to xsp_base, this also requires a change to the start scripts.
  • The name of the yellow block library has changed to casper xps blockset, update this in your start scripts.
  • BEE_XPS_HW_ROUTES.mat has changed to xps_hw_routes.mat
  • All code pertaining to iBOBs and BEE2s is removed, including the plb bus.
  • The GAVRT lib has been removed.