ECE497 Notes on DSP via c6run

Revision as of 06:02, 30 December 2010 by Yoder (Talk | contribs)

Jump to: navigation, search

Here are some notes on how to get c6run going on the BeagleBoard.

Things to download from here

  1. /lib/modules from target FS
  2. uImage itself
  3. C6Run package prebuilt for the above
  4. C6Run target software
    1. Kernel modules for TI components
    2. and
    3. pre-compiled test and and example applications

Things user will have to download

 DSP toolchain - point them to same one using
 Angstrom distribution ARM compiler
 DSP/BIOS 5.41 - point them to same one using

Instructions for Host Setup and Build

1. Download the TI C6000 v7.0.4 code generation tools for Linux:

2. Install the codegen tools to ~/toolchains/TI_CGT_C6000_7.04 (you implicitly accept a EULA when doing this)

    host$ mkdir ~/toolchains
    host$ chmod +x ti_cgt_c6000_7.0.4_setup_linux_x86.bin
    host$ ./ti_cgt_c6000_7.0.4_setup_linux_x86.bin --installto ~/toolchains --mode silent

3. Download the angstrom ARM toolchain

4. Install the ARM toolchain

    host$ tar -C ~/toolchains -xjf angstrom-2010.4-test-20100422-i686-linux-armv7a-linux-gnueabi-toolchain-qte-4.6.2.tar.bz2
  The ARM toolchain will be in ~/toolchains/usr/local/angstrom/arm/

5. Download the DSP/Bios package

6. Install the DSP/Bios package (you implicitly accept a EULA when doing this)

    host$ chmod +x bios_setuplinux_5_41_09_34.bin
    host$ ./bios_setuplinux_5_41_09_34.bin --mode silent --prefix ~/toolchains  

7. Install the pre-built C6Run package

    host$ tar -C ~/toolchains -xzf c6run_0_95_02_02_beagleboard.tar.gz

8. Edit the c6run enviroment settings to correctly point to the location of the components on your

  host PC (replace ${HOME} with the absolute path)
    host$ cd ~/toolchains/c6run_0_95_02_02_beagleboard
    host$ vi

9. Source the environment variables

    host$ source

A this point the enviroment and components are all setup to build the examples and test cases

included in the the C6Run package. All the makefiles for the examples and test cases rely on


C6RUN_TOOLCHAIN_PATH. The compilation scripts (c6runlib and c6runapp scripts) rely on these

and the other variables from the file.

It is suggested that the test and example makefiles be used as a template for any builds done

for your own code.

Target Preparation

1. Setup the beagleboard to boot using the included kernel image (uImage binary file). This should just require

  replacing the uImage file on your SD card with the provided one (rename the file to be just 'uImage').

2. Copy the the contents of the provided /lib/modules to the target's /lib/modules path. (this step I'm not entirely

  sure about, we should consult with Jason to make sure this is right).

3. Copy the contents of c6run_target.tar.gz to the target file system. I place it in /opt. It contains

  the kernel modules form the TI components and the script which should be used to install them.
  The pre-built examples and test cases are also included in this archive

4. Before running any c6run based application, make sure you run the script to load the needed kerne