metaonly module ti.sdo.ce.examples.codecs.sphdec1_copy.SPHDEC1_COPY

SPHDEC1_COPY codec specification

This file specifies information necessary to integrate with the Codec Engine. [ more ... ]
XDCspec summary sourced in ti/sdo/ce/examples/codecs/sphdec1_copy/SPHDEC1_COPY.xdc
metaonly module SPHDEC1_COPY {  ...
    // inherits ti.sdo.ce.ICodec
XDCscript usage meta-domain
var SPHDEC1_COPY = xdc.useModule('ti.sdo.ce.examples.codecs.sphdec1_copy.SPHDEC1_COPY');
module-wide config parameters
    const SPHDEC1_COPY.ialgFxns// name of this algorithm's xDAIS alg fxn table = String "SPHDEC1COPY_TI_ISPHDEC1COPY";
 
    SPHDEC1_COPY.stubFxns// Name of stubs fxn table = String "SPHDEC1_STUBS";
module-wide functions
 
XDCspec declarations sourced in ti/sdo/ce/examples/codecs/sphdec1_copy/SPHDEC1_COPY.xdc
 
metaonly module SPHDEC1_COPY inherits ISPHDEC1 {
module-wide config parameters
    override readonly config String ialgFxns// name of this algorithm's xDAIS alg fxn table = "SPHDEC1COPY_TI_ISPHDEC1COPY";
 
    override config String serverFxns// Name of skeleton fxn table = "SPHDEC1_SKEL";
    override config String stubFxns// Name of stubs fxn table = "SPHDEC1_STUBS";
module-wide functions
}
DETAILS
This file specifies information necessary to integrate with the Codec Engine.
By inheriting ti.sdo.ce.speech1.ISPHDEC1, SPHDEC1_COPY declares that it "is a" speech decoder algorithm. This allows the Codec Engine to automatically supply simple stubs and skeletons for transparent execution of DSP codecs by the GPP.
In addition to declaring the type of the SPHDEC1_COPY algorithm, we declare the external symbol required by xDAIS that identifies the algorithms implementation functions.
 
config SPHDEC1_COPY.ialgFxns  // module-wide

name of this algorithm's xDAIS alg fxn table

XDCscript usage meta-domain
const SPHDEC1_COPY.ialgFxns = String "SPHDEC1COPY_TI_ISPHDEC1COPY";
 
DETAILS
All xDAIS algorithms must define an IALG_Fxns structure that contains implementations of the IALG methods. This configuration parameter is simply the extern name of this structure.
 
config SPHDEC1_COPY.idma3Fxns  // module-wide

Name of xDAIS alg IDMA3 Interface function table

XDCscript usage meta-domain
const SPHDEC1_COPY.idma3Fxns = String computed value;
 
DETAILS
All xDAIS algorithms that use DMA must define an IDMA3_Fxns structure containing the pointers to functions implementatng the IDMA3 interface. If algorithm does not use DMA this structure does not have to be defined.
This configuration parameter is simply the extern name of this structure when defined, null otherwise.
 
config SPHDEC1_COPY.iresFxns  // module-wide

Name of xDAIS alg IRES Interface function table

XDCscript usage meta-domain
const SPHDEC1_COPY.iresFxns = String computed value;
 
DETAILS
All xDAIS algorithms that use an IRES resource must define an IRES_Fxns structure containing the pointers to functions implementatng the IRES interface. If algorithm does not use an IRES resource this structure does not have to be defined.
This configuration parameter is simply the extern name of this structure when defined, null otherwise.
SEE
 
config SPHDEC1_COPY.rpcProtocolVersion  // module-wide

Version of the Protocol used between the stubFxns and the serverFxns

XDCscript usage meta-domain
const SPHDEC1_COPY.rpcProtocolVersion = Int 0;
 
DETAILS
This is set by a particular implementation of a stub/skeleton RPC pair, and is used at runtime to ensure the protocol matches. This is important, for example, to ensure that the protocol used by skeletons built into a server matches that used by the stubs built into the application. Specifically, this is typically changed when the marshalling/unmarshalling message format changes.
This is generally not configured by application or server config scripts, but rather by developers of VISA-like API class extensions.
This rpcProtocolVersion is built into the local application executable, as well as the remote server's executable.
Developers of class extensions should ensure this config parameter is set appropriately by each release of their stubs/skeletons. If a new protocol is introduced, implying that updating both would result in error, the number should be incremented.
There is no "backward-compatibility" requirement in rpcProtocolVersion. If the version is different, regardless of whether it's larger or smaller, the creation of algorithms of this class will fail.
 
config SPHDEC1_COPY.serverFxns  // module-wide

Name of skeleton fxn table

XDCscript usage meta-domain
SPHDEC1_COPY.serverFxns = String "SPHDEC1_SKEL";
 
DETAILS
All algorithm's that can run on a remote processor must specify a set of "stub" functions that marshall arguments to send to the remote process that runs corresponding "skeletons" to do the actual processing. This configuration parameter defines the entry point for this algorithm's the skeletons (which run on the remote processor).
This is generally not configured by application or server config scripts, but rather by developers of VISA-like API class extensions. However, an application or server integrator could use this config param to configure in custom serverFxns.
SEE
 
config SPHDEC1_COPY.stubFxns  // module-wide

Name of stubs fxn table

XDCscript usage meta-domain
SPHDEC1_COPY.stubFxns = String "SPHDEC1_STUBS";
 
DETAILS
All algorithm's that can run on a remote processor must specify a set of "stub" functions that marshall arguments to send to the remote process that runs corresponding "skeletons" to do the actual processing. This configuration parameter defines the entry point for this algorithm's the stubs (which run on the local processor).
This is generally not configured by application or server config scripts, but rather by developers of VISA-like API class extensions. However, an application or server integrator could use this config param to configure in custom stubFxns.
SEE
 
config SPHDEC1_COPY.useCache  // module-wide

If set to true, the codec's memory requests will be allocated from cacheable memory. If set to false, the memory will be allocated from non-cached memory. If this is not set, the ti.sdo.ce.alg.Settings.useCache flag will determine whether the codec's memory will be allocated from cached or non-cached memory

XDCscript usage meta-domain
SPHDEC1_COPY.useCache = Bool undefined;
 
 
config SPHDEC1_COPY.uuid  // module-wide

Unique algorithm implementation ID

XDCscript usage meta-domain
SPHDEC1_COPY.uuid = Int undefined;
 
DETAILS
This integer must be a unique ID for every algorithm in a "system", where the "system" includes all possible DSP Servers.
This id is used by the Codec Engine APIs to identify the algorithm implementation that will create an instance on a DSP Server.
If a codec doesn't explicitly configure this parameter, a "very likely unique" ID will be generated. It is recommended that codecs not explicitly configure this parameter, and leave it to the system.
 
SPHDEC1_COPY.getCreationStackSize( )  // module-wide

Get the maximum required stack size (in octets) for this algorithm during algorithm instance creation

XDCscript usage meta-domain
SPHDEC1_COPY.getCreationStackSize( Program.Module prog ) returns Int
 
DETAILS
This method is called during DSP Server configuration and is used to ensure that the instance creation thread on the server has sufficient stackspace to instantiate the algorithm. This stack size is typically the greater of the stack sizes required by the algorithm's algNumAlloc(), algAlloc(), or algInit() methods.
 
SPHDEC1_COPY.getDaramScratchSize( )  // module-wide

Get the maximum scratch size (in octets) required for this algorithm from DARAM space

XDCscript usage meta-domain
SPHDEC1_COPY.getDaramScratchSize( Program.Module prog ) returns Int
 
DETAILS
This method is called during DSP Server configuration and is used to ensure that sufficient scratch space is configured for the specified set of algorithms.
 
SPHDEC1_COPY.getSaramScratchSize( )  // module-wide

Get the maximum scratch size (in octets) required for this algorithm from SARAM space

XDCscript usage meta-domain
SPHDEC1_COPY.getSaramScratchSize( Program.Module prog ) returns Int
 
DETAILS
This method is called during DSP Server configuration and is used to ensure that sufficient scratch space is configured for the specified set of algorithms.
 
SPHDEC1_COPY.getStackSize( )  // module-wide

Get the maximum stack size (in octets) required for this algorithm during its execution phase

XDCscript usage meta-domain
SPHDEC1_COPY.getStackSize( Program.Module prog ) returns Int
 
DETAILS
This method is called during DSP Server configuration and is used to ensure that threads on the server have sufficient stackspace to run the algorithm.
generated on Mon, 20 Sep 2010 23:50:13 GMT