Multichannel Voice Coding System
MOTOROLA
Semiconductor Products Sector Engineering Bu lletin
AN2113/D:
Rev. 0, 3/2001
© Motorola, Inc. 2001
Multichannel Voice Coding System on
the RTXC Operating System
By Duberly Mazuelos, Felicia Benavidez, Iantha Scheiwe
DSP applications are moving away from assembly language and
home-grown scheduling kernels to systems developed using
high-level languages and running on off-the-shelf Real-Time
Operating Systems (RTOSs). Assembly programming requires
intimate knowledge of the device architecture and prohibits easy
portability to a new architecture if cost or availability change. C
programmin g is bec oming more commonpl ace in the DSP mar ket
because of pressures for a fast time-to-market, low cost, and
reusability. Also, C compi ler technology is finally maturi ng to a
point where the inherent benefits of a DSP architecture can be
realized in the C language.
Engineers designing and programming complex systems
containing DSPs have long relied on their own scheduler to
determine when tasks should be handled in an application. These
schedulers are often developed in-house and are
application-specific. As the complexity of the systems increases,
the complexity of the scheduler also increases, and the task of
designing and implementing these schedulers becomes a
significant portion of the system development time. However,
RTOSs are available to ease the task of system integration and
provide the scheduling tasks necessary to meet stringent
applic at ion requiremen ts.
Various telecommunications standards dictate specific voice
coders for each telecommunications application. Because these
voice coders are standard building-blocks in a system, third
parti es have come for w ar d t o de velop high ly opt imi zed assembly
language implementations of voice coders for customer use.
This application note describes a multichannel voice coding
system developed in C and executing on an RTOS. The voice
coding software from a third party is integrated with other tasks
under the RTXC RTOS. Topics covered inc lude the voice cod ing
application, features of the RTXC RTOS, and a methodology for
integrating this type of system. This knowledge can assist you in
developing future systems using an RTOS.
Contents
1 Project Purpose .......................... 2
2 Voice Coding .............................. 2
2.1 Encoding/Decoding .........................4
2.2 Third-Party Voice Coding Software 6
3 Multichannel Applications ........ 6
4 C Compilers ...............................7
5 Real-time Operating Systems ... 9
6 System Overview .....................10
6.1 Target Hardware............................10
6.2 Applica tio n Softwar e............. ........12
7 Software Description ...............13
7.1 Data Input/Output..........................13
7.1.1 Audio Codec Initialization.............14
7.1.2 Synchronous Interface...................15
7.2 Voice Coders .................................16
7.2.1 Double Buffering...........................16
7.2.2 Wrappers........................................18
7.3 User Interface ................................18
7.4 RTXC.............................................20
7.4.1 RTXCbug.......................................21
7.5 Integration......................................22
8 Conclusions ..............................23
9 References ................................24