How to Create DSP Algorithm Package with RidgeRun SDK

From RidgeRun Developer Connection

(Difference between revisions)
Jump to:navigation, search
(References)
(References)
Line 15: Line 15:
For details, see the following documents:
For details, see the following documents:
-
*TMS320 DSP Algorithm Standard Rules and Guidelines [wisconsin.cern.ch/ROD/ti_documents/SPRU352E.pdf SPRU352E]
+
*TMS320 DSP Algorithm Standard Rules and Guidelines '''SPRU352E'''
-
*TMS320 DSP Algorithm Standard API Reference [focus.tij.co.jp/jp/lit/ug/spru360e/spru360e.pdf spru360e.pdf]
+
*TMS320 DSP Algorithm Standard API Reference '''SPRU360E'''
-
*TMS320 DSP Algorithm Standard Developer’s Guide [focus.ti.com.cn/cn/lit/ug/spru424c/spru424c.pdf spru424c.pdf]
+
*TMS320 DSP Algorithm Standard Developer’s Guide '''SPRU424C'''
-
*Codec Engine Algorithm Creator User’s Guide [focus.ti.com/lit/ug/sprued6c/sprued6c.pdf sprued6c.pdf]
+
*Codec Engine Algorithm Creator User’s Guide '''SPRUED6C'''
*Based on the Codec Engine GenCodecPkg Wizard [http://processors.wiki.ti.com/index.php/Codec_Engine_GenCodecPkg_Wizard_FAQ GenCodecPkg]
*Based on the Codec Engine GenCodecPkg Wizard [http://processors.wiki.ti.com/index.php/Codec_Engine_GenCodecPkg_Wizard_FAQ GenCodecPkg]
*The most important care-abouts in a typical Codec Engine configuration  [http://processors.wiki.ti.com/index.php/Codec_Engine_configuration_en_breve Codec Engine configuration en breve]
*The most important care-abouts in a typical Codec Engine configuration  [http://processors.wiki.ti.com/index.php/Codec_Engine_configuration_en_breve Codec Engine configuration en breve]

Revision as of 10:13, 7 June 2010

Contents

Introduction

This document will be an easy way to create a new DSP algorithm based on TMS320 DSP processor. It will target these algorithms and assists the reader with making the algorithms compliant with the TMS320 DSP algorithm standard which is part of TI's eXpressDSP technology initiative. The document proposes a simple approach to running xDAIS or iUniversal algorithms with a Codec Engine (CE) application based on TI's technology and RidgeRun SDK. The wizard is responsible for creating an xDAIS algorithm (iUniversal), and providing the necessary packaging to enable these algorithms to be consumed and configured by Codec Engine.

We assume readers have a basic understanding of the elements in a Codec Engine application, including VISA APIs, xDM, servers, and codecs

References

For details, see the following documents:

Requirements for the GencodecPkg Wizard

Making a DSP algorithm callable from a Gstreamer Plugin

Those steps shown below has to be followed to complete a memcpy DSP algorithm. If you desire to add new features , new funtions, and others refer to previous section links for more details.

Adding the wizard support to DVSDK makefile

The GenCodecPkg wizard generates the files and packaging required for integrating an algorithm into Codec Engine. Assuming your using a RR SDK you have a complete integration with a TI DVSDK release, then you likely have already defined paths to all your tools in the Rules.make.

Those generated Codec Packages can be integrated into a Server and the document will explain the way to append the new codec into TI's Codec Server.

Checking your DVSKD Makefile Support

$ cd $(DEVDIR)/propietary/dvsdk*
$ gedit Makefile

On the Makefile check if the gencodecpkg macro is activated if it's already added, please ignore next step.


Inside the Makefile from the DVSDK

 
$ cd $(DEVDIR)/propietary/dvsdk*
$ gedit Makefile

Append the following rule:

gencodecpkg: 
    $(XDC)/xs --xdcpath="$(CE_INSTALL_DIR)/packages; \
    $(XDAIS_INSTALL_DIR)/packages" ti.sdo.ce.wizards.gencodecpkg

Make sure you use a tab instead spaces.

Running the wizard

From your DVSDK directory you can invoke gencodecpkg with the following command:

 
 $ cd $(DEVDIR)/proprietary/dvsdk_* 
 $ make gencodecpkg

At the first Screen

  1. Choose the 3rd option, I want to create an algorithm from scratch
  2. Point to the xDAIS directory
  3. Point to the root of the compiler installation: CGTOOLS
  4. Click on next

CodecEngineGenCodecPkgWizard-moc01.png

At the Second Screen

  1. Fill the spaces according with the name of your new package.
  2. Keep the capital letters on the names. as it's shown on the table placed below
Module eg: MYCODEC
Vendor eg: RIDGERUN
Interface eg: IMYCODEC
Package_name eg: ti.sdo.codecs.mycodec
BaseInterface eg: IUNIVERSAL.
Target eg: ti.targets.C64P
OutputDir eg: $(DVSDK)/csomapl138/packages

CodecEngineGenCodecPkgWizard-moc02.png

  1. Click Finish to generate the starter files.
Navigation
Toolbox