Introduction to C6Run

From Texas Instruments Wiki
Jump to: navigation, search

END OF LIFE

C6Run is still available for download, but is no longer being actively developed or maintained. Please consider other alternatives such as, Codec Engine IUNIVERSAL support, OpenCL or RCM.

^ Up to main C6EZRun Main Page ^

This article is part of a collection of articles describing the C6EZRun Software Development Project. Select the link above to return to the main project page.

C6Run Project Overview

C6Run is a DSP-Ease-Of-Use project to ease development of DSP code on two-core heterogeneous SoC processors from Texas Instruments, specifically targeting ARM+DSP devices. This project is intended to be used in a system running ARM Linux and containing a C6000 DSP core (see the list of supported devices).

Why do I need C6Run?

You need C6Run if you are an ARM Linux developer and you want to easily get started running arbitrary DSP code. A typical use case will be to benchmark an algorithm on the DSP.

The aim of this project is to ease initial development and loading of DSP code for ARM developers who are familiar with building applications for the Linux OS using an ARM GCC cross-compiler.

This project should be of particular interest to ARM developers who are familiar with the command-line ARM GCC cross-compiler and who want a similar mechanism to build and run code on the DSP.

What Does C6Run Do?

The C6Run project allows you to seamlessly use the DSP from the ARM core on TI's ARM+DSP devices, without having to deal with any advanced, and potentially complicated, frameworks and software stacks. C6Run is a set of tools which will take in C files and generate either an ARM executable, or an ARM library which will leverage the DSP to execute the C code.

There are two uses of the C6Run project, exposed through two different front-end scripts. They are called C6RunLib and C6RunApp. The use of these two scripts are graphically shown below.

C6RunLib.gif

C6RunApp.gif

What Does C6Run Consist Of?

The project consists of two main components:

  1. A build system to create back-end libraries composed of various TI software technologies and the code of the C6Run framework itself
  2. Front-end scripts that wrap the TI C6000 code generation tools in a GCC-like interface. These scripts make use of the back-end libraries and build system to create ARM-side components that transparently make use of the DSP.


Supported Devices/Platforms

The C6Run project targets two-core heterogeneous SoC processors from Texas Instruments, specifically ARM+DSP devices which run Linux on the ARM. The complete list of supported devices is given:

C6Run Supported Devices
TI Device Number ARM Core Type DSP Core Type C6Run Version
OMAP-L137 ARM926EJ-S TMS320C674x fixed- and floating-point DSP v1.x or earlier
OMAP-L138 ARM926EJ-S TMS320C674x fixed- and floating-point DSP v1.x or earlier
OMAP3530/25 ARM Cortex-A8 TMS320C64x+ fixed-point DSP v1.x or earlier
DM3730/25 ARM Cortex-A8 TMS320C64x+ fixed-point DSP v1.x or earlier


Some devices which may be supported, but have not undergone testing are given below:

C6Run Provisionally Supported Devices (not fully tested)
TI Device Number ARM Core Type DSP Core Type C6Run Version Comments
DM6467T ARM926EJ-S TMS320C64x+ fixed-point DSP v0.94.04.05 or later See here for details.


Getting Started With C6Run

Information about how to get started with C6Run can be found here.


C6RunLib

Information about using the C6RunLib tools can be found here.


C6RunApp

Information about using the C6RunLib tools can be found here.


Return to C6Run Main page

^ Up to main C6EZRun Main Page ^

This article is part of a collection of articles describing the C6EZRun Software Development Project. Select the link above to return to the main project page.