Please note as of Wednesday, August 15th, 2018 this wiki has been set to read only. If you are a TI Employee and require Edit ability please contact x0211426 from the company directory.


From Texas Instruments Wiki
Jump to: navigation, search


C6Accel 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.

C6EZAccel Software Development Tool
video platform video management video solutions video player
C6EZAccel Software Development Tool

What is C6EZAccel?

C6accel graphic.png C6EZAccel is a free, software development tool from Texas Instruments that allows ARM SoC users access canned DSP software on heterogeneous ARM+DSP devices. The C6EZAccel tool is available for download from the TI website. This page serves as a launch pad to the C6Accel online documentation. Please see the subsequent links for more information on using C6EZAccel.

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

What Does C6EZAccel Consist Of?

C6EZAccel consists of a DSP algorithm that follows TI's specified algorithm interface called XDAIS. TI also provides a framework called Codec Engine that allows efficient execution of algorithms written using the XDAIS interface. All the codecs that TI provides follow the XDAIS algorithm interface. TI provides these codecs as part of the SW offering for the SoC and recommends the usage of Codec Engine. C6EZAccel also consists of an ARM side library build on top of Codec Engine which provides APIs that allow ARM side application code to invoke execution of XDAIS algorithms on the DSP. This library abstracts the cache management, address translation, parameter passing and error handling from the ARM application

How Does C6EZAccel work?

The ARM application code (or the middleware it uses) calls C6EZAccel using wrapper library APIs and/or codec engine compliant iUniversal APIs which are similar to the VISA APIs used to invoke Audio/Video/Speech codecs. These APIs then pass through the codec engine interface and invoke the C6EZAccel algorithm on the DSP which identifies the function call and executes the appropriate functionality on the DSP using the parameters passed from the application.

C6EZAccel SoCview.JPG

Figure: SoC View with C6EZAccel


  • Easy-to-use application interface: Easy application interface with simple callable ARM APIs to DSP functionalities
  • Extensible and configurable: New algorithms can be added to C6EZAccel by users, using C6EZAccel algorithm as a template.
  • Chaining APIs into a tasklist: Capabilty to chain function calls using single API call to the Codec Engine
  • Asynchronous and synchronous calling modes: Asynchronous calling mode enables parallel processing on DSP and ARM.
  • Complaint with Multimedia framework: C6EZAccel provides optimized canned DSP software in a Codec Engine compliant format.

Why should I use C6EZAccel?

If you are an ARM application developer on TI's SoCs, C6EZAccel is a software tool that enables acceleration by leveraging the DSP on the device. C6EZAccel facilitates acceleration of ARM application by providing it access to optimized, prodcution ready DSP software. Several application developers on TI SoC devices, use the DSP on the SoC for codec operation. For such users, C6EZaccel can enable additional functionalities on the DSP. The codec operation doesn't always consume all the MHz of the DSP. C6EZAccel provides generic signal processing and math functionalities that can be leveraged by the developer to enable best use of the DSP in the application. If you are an application developers on TI's SoCs and you are not making use of the DSP today, the C6EZAccel provides ready to use, optimized DSP kernels that can be invoked from your ARM application. By making use of the DSP to do what it is best at (signal processing and math operations) you can make most efficient use of your SoC resources.

Benefits of Using C6EZAccel

  • Easy-to-use: Easy application interface with simple callable ARM APIs to DSP functionalities
  • Reduces time to market:Ready to use DSP software reduces learning curve and decreases time to market for ARM applications.
  • Portable: The APIs and algorithm are SoC target platform independent.

What Devices Does C6EZAccel Support?

The C6EZAccel project targets two-core heterogeneous SoC processors from Texas Instruments, specifically targeting ARM+DSP devices, which run Linux on the ARM, in particular:

C6EZAccel Supported Devices
TI Device Number ARM Core Type DSP Core Type C6EZAccel 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 ARM Cortex-A8 TMS320C64x+ fixed-point DSP v1.x or earlier
DM6467 ARM926EJ-S TMS320C64x+ fixed-point DSP v1.x or earlier
DM8168/C6A816X ARM Cortex-A8 TMS320C674x fixed- and floating-point DSP v2.x or later
DM8148 ARM Cortex-A8 TMS320C674x fixed- and floating-point DSP v2.x or later

Note:: Target specific information can be found in the Release Notes.


  • C6EZAccel 1.x package is part of the DVSDK 4.00 for OMAP3530/DM3730 and OMAPL138 platforms which can be downloaded here
  • C6EZAccel 2.x package is part of the EZ SDK for DM8148/DM8168/C6A8168 which can be downloaded here
  • Latest Source releases and other resources are available here.

How do I get Started with C6EZAccel?

Main article: Getting Started using C6EZAccel

This wiki provides information on the the following topics:

  • Where To Get It ?
  • Minimum system requirements
  • How to Install C6EZAccel
  • Building the C6EZAccel Package and running the test application

Where Do I find C6EZAccel Documentation ?

C6EZAccel ARM user Documentation

Main article: C6EZAccel ARM user Documentation

Reference guides for C6EZAccel APIs

C6EZAccel Advanced user guide Documentation

Main article: C6EZAccel Advanced Users Guide

C6EZAccel Example and Demos

  1. DVSDK 4.00 Out of Box Edge detection demo on DM3730
  2. DVSDK 4.00 DSP benchmark demo on OMAPL138
  3. C6EZAccel sobel demo using H.264 codecs
  4. Signal Analyzer Demo on C6A8168 as part of EZ SDK

[This demo source code can only be obtained along with EZSDK v5.02 or earlier]


C6EZAccel Download and Training

C6EZAccel Demonstration
video platform video management video solutions video player
C6EZAccel Demonstration

C6EZAccel Feedback and Support

General Usage Support

If you have issues with or questions about the C6EZAccel project, you can look for support from TI's E2E community forums. It is recommended that you place your question in the device-specific forum (see links below), tagged with 'C6Accel'. The tag is important as it lets the TI support team filter your questions to the right people. Without the tag, responses to your posts may be delayed.

Bug Reports and feature requests

If you believe you have found a bug or if you wish to see a new feature in the future release of the tool, you can report it to the developers list mentioned below and provide as much detail as you can on your requests. Before filing a bug report or a feature request, you may want to post on the TI E2E forums with a question about the issue. It is also recommended that you search or browse forum items to make sure you are not posting a duplicate request of an existing forum post.

Developer Mailing List

The c6accel developers mailing list exists for C6EZAccel users to report issues, submit feature requests and discuss ideas. Please feel free to write to us with any feedback you may have for us.

See Also