This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Audio examples for TMS320C6747 Starter Kit?

Expert 1215 points
Other Parts Discussed in Thread: TMS320C6747, OMAP-L137, CCSTUDIO

Hi,

I just received the OMAP-L137/TMS320C6747 Floating Point Starter Kit yesterday. I could not find any audio related examples for C6747, neither on the bundle disks nor on the website. Any idea?

The CCS installer program was supposed to installer two shortcuts for me, one for omap and one for c6747. But it only installed one shortcut to the generic CCS. How do I disable the ARM core? Can I debug the DSP core with the onboard xds510?

Spectrum Digital (in general, TI) has never been able to impress me with the quality and easy-to-use of their software/driver... Oh Gosh, how much I missed ADI...

Thanks 

  • yli said:

    The CCS installer program was supposed to installer two shortcuts for me, one for omap and one for c6747. But it only installed one shortcut to the generic CCS. How do I disable the ARM core? Can I debug the DSP core with the onboard xds510?

    The installer most likely placed two shortcuts, one to cc_setup.exe and the other to cc_app.exe.  In order to configure CCS to use the OMAP-L137/C6747 board, you need to invoke cc_setup.  You can then use the Family filter on the Available Factory Boards tab to select C67xx.  This will filter the available boards to just the C67xx family.  You can then select one of two available boards:

    • C6747 EVM
    • C6747 EVM XDS510USB EMULATOR

    The first one uses the on-board emulation (xds510), so yes, you can debug the DSP core with the onboard xds510.

    Click on "<< Add", to add this to your board configuration.
    Click on "Save & Quit".

    You are now ready to connect to the DSP.

    IF this board option is not available to you, then download the latest CCS configuration files from Spectrum Digital's website for Code Composer Studio v3.3.

    http://support.spectrumdigital.com/boards/evmomapl137/revd/files/EVMOMAPL137-CCSetupConfigs.zip

     

    EDIT:

    I apologize, I left these instructions half complete.  Once you download the EVMOMAPL137-CCSetupConfigs.zip file, unpack it.  You can unpack them anywhere, but if you would like to keep them in a known spot, unpack them into your CCStudio_v3.3 installation directory in C:\CCStudio_v3.3\drivers\import, for example.

    Invoke cc_setup.exe and use File->Import to import these configurations into CCSetup.  You will then be able to use configurations mentioned.

    END EDIT

     

    yli said:

    Spectrum Digital (in general, TI) has never been able to impress me with the quality and easy-to-use of their software/driver... Oh Gosh, how much I missed ADI...

    Hopefully the steps above will get you through this issue.

  • yli said:

    I just received the OMAP-L137/TMS320C6747 Floating Point Starter Kit yesterday. I could not find any audio related examples for C6747, neither on the bundle disks nor on the website. Any idea?

    Which website?  Please be specific.

    There is test/example software on Spectrum Digital's support website for the OMAP-L137/C6747 EVM (EVMOMAPL137 Support Home), which I have placed the link below.  Inspecting this ZIP file suggests there is example code for the AIC3106.

  • I did find these. Thanks.

    What I was looking for was a more-or-less-complete audio example. for it to be complete, I expect everything from setting up mcasp, dma (buffer and isr) and ... , in a way that real audio application is done. Lyrtech's PADK has lots of this kind of thing. I am just reluctant to spend time to sort out all these details by myself.

     

  • yli said:
    What I was looking for was a more-or-less-complete audio example. for it to be complete, I expect everything from setting up mcasp, dma (buffer and isr) and ... , in a way that real audio application is done. Lyrtech's PADK has lots of this kind of thing. I am just reluctant to spend time to sort out all these details by myself.


    Please also realize that not all of the software from TI that will support this part has been released yet. Please see the Staged Release note on the product folder as well as the SW release chart for more information on when the different parts will be released and what is included.

    To add to this the decision was made to get the hardware kits out sooner rather than waiting for all of the software to be released. I do not know if this is the official reason but I would suspect this is to alleviate the rush to get EVMs and the 2+ month lead times associated with it. Even though the software to support it is not released right this second many folks would rather get the hardware now as opposed to waiting until the middle of 2009.

  • FYI, the PSP released yesterday does include an audio example. You can find it in the \pspdrivers_01_20_00_04\packages\ti\psp\iom\examples\evm6747\audio\build directory.

  • Thanks all for pointing me to here.

    I tried to build the audioSample but failed. I had the following drivers built as instructed

    • audio,
    • codec,
    • i2c,
    • mcasp,
    • psc

    The errors seem to sugguest I am missing some BIOS lib. Where should I be looking at? I am on Windows XP and have these installed

    • DSP BIOS 5.33.01 and DSP BIOS 5.33.03
    • CCS 3.3
    • BIOSPSP 1.20.00.04

     

    -------------------------  audioSample.pjt - Release  -------------------------
    [Linking...] "C:\CCStudio_v3.3\C6000\cgtools\bin\cl6x"
    -@"Release.lkf"
    <Linking>
    warning: creating output section ".DVTEvent_Log$buf" without a SECTIONS
       specification
    warning: creating output section ".LOG_system$buf" without a SECTIONS
       specification
    warning: creating output section ".TSK_idle$stk" without a SECTIONS
       specification
    warning: creating output section ".clk" without a SECTIONS specification
    warning: creating output section ".devtable" without a SECTIONS specification
    warning: creating output section ".dio" without a SECTIONS specification
    warning: creating output section ".echoTask$stk" without a SECTIONS
       specification
    warning: creating output section ".gblinit" without a SECTIONS specification
    warning: creating output section ".hst" without a SECTIONS specification
    warning: creating output section ".hst0" without a SECTIONS specification
    warning: creating output section ".hst1" without a SECTIONS specification
    warning: creating output section ".hwi_vec" without a SECTIONS specification
    warning: creating output section ".idl" without a SECTIONS specification
    warning: creating output section ".idlcal" without a SECTIONS specification
    warning: creating output section ".log" without a SECTIONS specification
    warning: creating output section ".mem" without a SECTIONS specification
    warning: creating output section ".pip" without a SECTIONS specification
    warning: creating output section ".printf" without a SECTIONS specification
    warning: creating output section ".rtdx_data" without a SECTIONS specification
    warning: creating output section ".sts" without a SECTIONS specification
    warning: creating output section ".swi" without a SECTIONS specification
    warning: creating output section ".sys" without a SECTIONS specification
    warning: creating output section ".sysinit" without a SECTIONS specification
    warning: creating output section ".trace$buf" without a SECTIONS specification
    warning: creating output section ".tsk" without a SECTIONS specification
    warning: creating output section ".vers" without a SECTIONS specification
    warning: entry-point symbol "_c_int00" undefined

     undefined               first referenced                                                                                                                                                                                                                
      symbol                     in file                                                                                                                                                                                                                     
     ---------               ----------------                                                                                                                                                                                                                
     CLK_A_TABBEG            C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     CLK_F_isr               C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     FXN_F_run               C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     GBL_initdone            C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     GBL_stackbeg            C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     GBL_stackend            C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     HWI_A_VECS              C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     HWI_F_dispatch          C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     IDL_D_busyObj           C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     IDL_D_calibrate         C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     IDL_F_busy              C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     IDL_F_loop              C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     KNL_glue                C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     LNK_F_dataPump          C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     LNK_dspFrameReadyMask   C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     LNK_dspFrameRequestMask C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     PIP_D_tabbeg            C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     PIP_F_start             C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     PRD_F_tick              C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     RTA_F_dispatch          C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     RTA_F_or                C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     SDRAM$B                 C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     SDRAM$L                 C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     SWI_D_rdytab            C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     SWI_F_enable            C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     TRC_R_mask              C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     TRC_cinit               C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     TSK_VCREATEFXN          C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     TSK_VDELETEFXN          C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     TSK_VEXITFXN            C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     _BCACHE_inv             C:/Program Files/Texas Instruments/pspdrivers_01_20_00_04/packages/ti/psp/iom/examples/evm6747/audio/build/../../../../../../../ti\psp\iom\mcasp\lib\C6747\Release\ti.psp.iom.mcasp.a674<Mcasp.obj>                             
     _BCACHE_wb              C:/Program Files/Texas Instruments/pspdrivers_01_20_00_04/packages/ti/psp/iom/examples/evm6747/audio/build/../../../../../../../ti\psp\iom\mcasp\lib\C6747\Release\ti.psp.iom.mcasp.a674<Mcasp.obj>                             
     _BCACHE_wbInv           C:/Program Files/Texas Instruments/pspdrivers_01_20_00_04/packages/ti/psp/iom/examples/evm6747/audio/build/../../../../../../../ti\psp\iom\i2c\lib\C6747\Release\ti.psp.iom.i2c.a674<I2c_edma.obj>                              
     _C64_enableIER          C:/Program Files/Texas Instruments/pspdrivers_01_20_00_04/packages/ti/psp/iom/examples/evm6747/audio/build/../../../../../../../ti\psp\iom\i2c\lib\C6747\Release\ti.psp.iom.i2c.a674<I2c.obj>                                   
     _CLK_DFLTMICROSECS      C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     _CLK_D_microseconds     C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     _CLK_D_prd              C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     _CLK_gethtime           C:/Program Files/Texas Instruments/pspdrivers_01_20_00_04/packages/ti/psp/iom/examples/evm6747/audio/build/../../../../../../../ti\psp\iom\i2c\lib\C6747\Release\ti.psp.iom.i2c.a674<I2c.obj>                                   
     _CLK_htimePerLtime      C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     _CLK_inputClock         C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     _DEV_D_devinit          C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     _DEV_init               C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     _DEV_match              C:/Program Files/Texas Instruments/pspdrivers_01_20_00_04/packages/ti/psp/iom/examples/evm6747/audio/build/../../../../../../../ti\psp\iom\platforms\evm6747\audio\lib\Release\ti.psp.iom.platforms.evm6747.audio.a674<Audio.obj>
     _DIO_init               C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     _DIO_tskDynamicFxns     C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     _ECM_ATTRS              C:/Program Files/Texas Instruments/pspdrivers_01_20_00_04/packages/ti/psp/iom/examples/evm6747/audio/build/../../../../../../../ti\psp\iom\i2c\lib\C6747\Release\ti.psp.iom.i2c.a674<I2c.obj>                                   
     _ECM_disableEvent       C:/Program Files/Texas Instruments/pspdrivers_01_20_00_04/packages/ti/psp/iom/examples/evm6747/audio/build/../../../../../../../ti\psp\iom\i2c\lib\C6747\Release\ti.psp.iom.i2c.a674<I2c.obj>                                   
     _ECM_dispatch           C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     _ECM_dispatchPlug       C:/Program Files/Texas Instruments/pspdrivers_01_20_00_04/packages/ti/psp/iom/examples/evm6747/audio/build/../../../../../../../ti\psp\iom\i2c\lib\C6747\Release\ti.psp.iom.i2c.a674<I2c.obj>                                   
     _ECM_enableEvent        C:/Program Files/Texas Instruments/pspdrivers_01_20_00_04/packages/ti/psp/iom/examples/evm6747/audio/build/../../../../../../../ti\psp\iom\i2c\lib\C6747\Release\ti.psp.iom.i2c.a674<I2c.obj>                                   
     _EXC_dispatch           C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     _EXC_init               C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     _FXN_F_nop              C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     _GBL_cacheInit64P       C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     _GBL_getVersion         C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     _GBL_procId             C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     _HSRTDX_rec             C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     _HSRTDX_xmt             C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     _HWI_D_inhwi            C:/Program Files/Texas Instruments/pspdrivers_01_20_00_04/packages/ti/psp/iom/examples/evm6747/audio/build/../../../../../../../ti\psp\iom\i2c\lib\C6747\Release\ti.psp.iom.i2c.a674<I2c.obj>                                   
     _HWI_disable            C:/Program Files/Texas Instruments/pspdrivers_01_20_00_04/packages/ti/psp/iom/examples/evm6747/audio/build/../../../../../../../ti\psp\iom\platforms\evm6747\audio\lib\Release\ti.psp.iom.platforms.evm6747.audio.a674<Audio.obj>
     _HWI_dispatchTab        C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     _HWI_restore            C:/Program Files/Texas Instruments/pspdrivers_01_20_00_04/packages/ti/psp/iom/examples/evm6747/audio/build/../../../../../../../ti\psp\iom\platforms\evm6747\audio\lib\Release\ti.psp.iom.platforms.evm6747.audio.a674<Audio.obj>
     _KNL_curtask            C:/Program Files/Texas Instruments/pspdrivers_01_20_00_04/packages/ti/psp/iom/examples/evm6747/audio/build/../../../../../../../ti\psp\iom\i2c\lib\C6747\Release\ti.psp.iom.i2c.a674<I2c.obj>                                   
     _KNL_dummy              C:/Program Files/Texas Instruments/pspdrivers_01_20_00_04/packages/ti/psp/iom/examples/evm6747/audio/build/../../../../../../../ti\psp\iom\i2c\lib\C6747\Release\ti.psp.iom.i2c.a674<I2c.obj>                                   
     _KNL_exit               C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     _KNL_queues             C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     _KNL_run                C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     _MEM                    C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     _MEM_init               C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     _MEM_valloc             C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSample_io.obj                                                                              
     _OBJ_table              C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     _QUE_create             C:/Program Files/Texas Instruments/pspdrivers_01_20_00_04/packages/ti/psp/iom/examples/evm6747/audio/build/../../../../../../../ti\psp\iom\i2c\lib\C6747\Release\ti.psp.iom.i2c.a674<I2c.obj>                                   
     _QUE_get                C:/Program Files/Texas Instruments/pspdrivers_01_20_00_04/packages/ti/psp/iom/examples/evm6747/audio/build/../../../../../../../ti\psp\iom\i2c\lib\C6747\Release\ti.psp.iom.i2c.a674<I2c.obj>                                   
     _QUE_put                C:/Program Files/Texas Instruments/pspdrivers_01_20_00_04/packages/ti/psp/iom/examples/evm6747/audio/build/../../../../../../../ti\psp\iom\i2c\lib\C6747\Release\ti.psp.iom.i2c.a674<I2c.obj>                                   
     _RTDX_Poll              C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     _SEM_create             C:/Program Files/Texas Instruments/pspdrivers_01_20_00_04/packages/ti/psp/iom/examples/evm6747/audio/build/../../../../../../../ti\psp\iom\platforms\evm6747\codec\lib\Release\ti.psp.iom.platforms.evm6747.codec.a674<Aic31.obj>
     _SEM_delete             C:/Program Files/Texas Instruments/edma3_lld_01_06_00_01/packages/ti\sdo\edma3\drv\sample\lib\c6747\Release\edma3_drv_bios_sample.lib<bios_edma3_drv_sample_cs.obj>                                                             
     _SEM_pend               C:/Program Files/Texas Instruments/pspdrivers_01_20_00_04/packages/ti/psp/iom/examples/evm6747/audio/build/../../../../../../../ti\psp\iom\platforms\evm6747\codec\lib\Release\ti.psp.iom.platforms.evm6747.codec.a674<Aic31.obj>
     _SEM_post               C:/Program Files/Texas Instruments/pspdrivers_01_20_00_04/packages/ti/psp/iom/examples/evm6747/audio/build/../../../../../../../ti\psp\iom\platforms\evm6747\codec\lib\Release\ti.psp.iom.platforms.evm6747.codec.a674<Aic31.obj>
     _SIO_ATTRS              C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSample_io.obj                                                                              
     _SIO_create             C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSample_io.obj                                                                              
     _SIO_issue              C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSample_io.obj                                                                              
     _SIO_reclaim            C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSample_io.obj                                                                              
     _SWI_D_inswi            C:/Program Files/Texas Instruments/pspdrivers_01_20_00_04/packages/ti/psp/iom/examples/evm6747/audio/build/../../../../../../../ti\psp\iom\i2c\lib\C6747\Release\ti.psp.iom.i2c.a674<I2c.obj>                                   
     _SYS_printf             C:/Program Files/Texas Instruments/pspdrivers_01_20_00_04/packages/ti/psp/iom/examples/evm6747/audio/build/../../../../../../../ti\psp\iom\i2c\lib\C6747\Release\ti.psp.iom.i2c.a674<I2c.obj>                                   
     _TSK                    C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     _TSK_config             C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     _TSK_disable            C:/Program Files/Texas Instruments/edma3_lld_01_06_00_01/packages/ti\sdo\edma3\drv\sample\lib\c6747\Release\edma3_drv_bios_sample.lib<bios_edma3_drv_sample_cs.obj>                                                             
     _TSK_enable             C:/Program Files/Texas Instruments/edma3_lld_01_06_00_01/packages/ti\sdo\edma3\drv\sample\lib\c6747\Release\edma3_drv_bios_sample.lib<bios_edma3_drv_sample_cs.obj>                                                             
     _TSK_exit               C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     _TSK_init               C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     _TSK_setup              C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     _TSK_startup            C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     _TSK_timerSem           C:/Program Files/Texas Instruments/pspdrivers_01_20_00_04/packages/ti/psp/iom/examples/evm6747/audio/build/../../../../../../../ti\psp\iom\i2c\lib\C6747\Release\ti.psp.iom.i2c.a674<I2c.obj>                                   
     _UTL_doAbort            C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     _UTL_doError            C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     _UTL_doPutc             C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     _UTL_halt               C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     __DEV_D_NUMINITFXNS     C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     __HOOK_NUMHOOKS         C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     __HOOK_knlId            C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSamplecfg.obj                                                                              
     __abort_msg             C:/Program Files/Texas Instruments/edma3_lld_01_06_00_01/packages/ti\sdo\edma3\drv\lib\Release\edma3_drv_bios_c674.lib<edma3_drv_basic.obj>                                                                                     
     __divi                  C:/Program Files/Texas Instruments/pspdrivers_01_20_00_04/packages/ti/psp/iom/examples/evm6747/audio/build/../../../../../../../ti\psp\iom\mcasp\lib\C6747\Release\ti.psp.iom.mcasp.a674<Mcasp_edma.obj>                        
     __divu                  C:/Program Files/Texas Instruments/pspdrivers_01_20_00_04/packages/ti/psp/iom/examples/evm6747/audio/build/../../../../../../../ti\psp\iom\i2c\lib\C6747\Release\ti.psp.iom.i2c.a674<I2c.obj>                                   
     __strasgi               C:/Program Files/Texas Instruments/pspdrivers_01_20_00_04/packages/ti/psp/iom/examples/evm6747/audio/build/../../../../../../../ti\psp\iom\platforms\evm6747\audio\lib\Release\ti.psp.iom.platforms.evm6747.audio.a674<Audio.obj>
     __strasgi_64plus        C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSample_instParams.obj                                                                      
     _memcpy                 C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSample_io.obj                                                                              
     _memset                 C:/Program Files/Texas Instruments/pspdrivers_01_20_00_04/packages/ti/psp/iom/examples/evm6747/audio/build/../../../../../../../ti\psp\iom\platforms\evm6747\audio\lib\Release\ti.psp.iom.platforms.evm6747.audio.a674<Audio.obj>
     _printf                 C:\\Program Files\\Texas Instruments\\pspdrivers_01_20_00_04\\packages\\ti\\psp\\iom\\examples\\evm6747\\audio\\build\\Release\\audioSample_io.obj                                                                              

    error: unresolved symbols remain
    warning: no suitable entry-point found; setting to 0
    error: errors encountered during linking; "C:/Program Files/Texas
       Instruments/pspdrivers_01_20_00_04/packages/ti/psp/iom/examples/evm6747/audi
       o/build/../bin/Release/audioSample.out" not built

    >> Compilation failure

    Build Complete,
      1 Errors, 28 Warnings, 0 Remarks.

  • The majority of those problems look like they stem from the Linker Command File missing. By default you should see audioSample_Debug.cmd included in the Project->Build Options->Linker tab->Libraries category as well as audioSamplecfg.cmd in the File listing (under the Source folder). See the attached screenshot.

    yli said:
    I tried to build the audioSample but failed. I had the following drivers built as instructed
    • audio,
    • codec,
    • i2c,
    • mcasp,
    • psc

    The errors seem to sugguest I am missing some BIOS lib. Where should I be looking at? I am on Windows XP and have these installed

    • DSP BIOS 5.33.01 and DSP BIOS 5.33.03
    • CCS 3.3
    • BIOSPSP 1.20.00.04

    Please note that you will need to use BIOS v5.33.03 and CGTools v6.1.6. Additionally, you will need to download an updated version of the EDMA Low-Level Driver (LLD) as the EA2 shipped with an older version. From what I have heard this should be available on the software downloads site this afternoon.

    NOTE: You must tell the Component Manager to use BIOS v5.33.03 for the C67xx processor or the build will fail.

  • Hi,

    I figured I would post this here since I am basically in the same boat as him, or even worse.

    I am a total beginner with DSPs, and I only have some basic C/C++ programming experience. I have bought the same SK (OMAP-L137/TMS320C6747) and I have also been looking for examples in order to gain an understanding of how it works. I have to say that I am currently overwhelmed pretty badly. Anyway..

    Here are my questions:

    1. I was able to compile/load the audio example you suggested above (notice that I was also missing the .cmd file mentioned above, what I did is to go to the ./build directory, randomly take one of the .cmds files that you have there and rename it to spiSamplecfg.cmd and it worked). I have tested it and it is in fact working so far

      Now: the example loads a buffer with data from inStream, the whole buffer is then "processed" (it just gets copy-pasted) and it is then sent back through outStream. The declaration that does the "copy-pasting" is "memcpy(xmt,rcv,nmadus);" (line 327, file audioSample_io.c) - correct me here if I am wrong. But I would like the processor to process the data sample by sample and not buffer-by-buffer, i.e. I would like that the data is sent to the proc at each sampling. This is why I've tried to lower the "#define BUFLEN" (line 68 file audioSample_io.c) number. But doing this does not to seem a good idea since the processor starts to be loaded to around 100% if I lower it to 24.

      Therefore:
      What would you suggest doing?
      Is there a simpler example I can use to do this kind of task (without resorting to DSP/BIOS)?
    2. The two variables mentioned in 1., i.e. xmt and rcv, are of type Ptr. There are also other types (like Int in contrast to lowercase int) which are used but I was unable to find where they are defined. Where is the definition of these types?
    3. In CSS, when it try to "View -> Memory" I *always* get the error "Unexpected Fatal Error Encountered which may have been caused by a stack overflow, out of memory condition, or access violation. I'm going to try and save your work before TERMINATING this application." and then boom the program crashes. By *always* I mean that this hapens even If I don't have any file open, or even if I do have one, compile it, load it and then run it and try to do view->memory runtime. Any idea?
  • RobinVujanic said:
    I was able to compile/load the audio example you suggested above (notice that I was also missing the .cmd file mentioned above, what I did is to go to the ./build directory, randomly take one of the .cmds files that you have there and rename it to spiSamplecfg.cmd and it worked). I have tested it and it is in fact working so far

    Now: the example loads a buffer with data from inStream, the whole buffer is then "processed" (it just gets copy-pasted) and it is then sent back through outStream. The declaration that does the "copy-pasting" is "memcpy(xmt,rcv,nmadus);" (line 327, file audioSample_io.c) - correct me here if I am wrong. But I would like the processor to process the data sample by sample and not buffer-by-buffer, i.e. I would like that the data is sent to the proc at each sampling. This is why I've tried to lower the "#define BUFLEN" (line 68 file audioSample_io.c) number. But doing this does not to seem a good idea since the processor starts to be loaded to around 100% if I lower it to 24.

    Therefore:
    What would you suggest doing?
    Is there a simpler example I can use to do this kind of task (without resorting to DSP/BIOS)?

    Why do you want to process sample by sample rather than buffer by buffer? Are you worried about the latency caused by processing an entire buffer. This method would create a lot more overhead which is why you see the CPU load increase so dramatically. The project could be modified to interrupt the CPU every time you receive a new sample, but depending on the overhead you may start to drop samples.

    RobinVujanic said:
    The two variables mentioned in 1., i.e. xmt and rcv, are of type Ptr. There are also other types (like Int in contrast to lowercase int) which are used but I was unable to find where they are defined. Where is the definition of these types?
    Take a look at the tistdtypes.h file found in the C:\Program Files\Texas Instruments\pspdrivers_01_20_00_04\packages\ti\psp\iom\cslr folder by default.

    RobinVujanic said:
    In CSS, when it try to "View -> Memory" I *always* get the error "Unexpected Fatal Error Encountered which may have been caused by a stack overflow, out of memory condition, or access violation. I'm going to try and save your work before TERMINATING this application." and then boom the program crashes. By *always* I mean that this hapens even If I don't have any file open, or even if I do have one, compile it, load it and then run it and try to do view->memory runtime. Any idea?
    This one I'm a bit stuck on. I have this type of error once in a while, but not every time I open the Memory window.

  • TimHarron said:

    Why do you want to process sample by sample rather than buffer by buffer? Are you worried about the latency caused by processing an entire buffer. This method would create a lot more overhead which is why you see the CPU load increase so dramatically. The project could be modified to interrupt the CPU every time you receive a new sample, but depending on the overhead you may start to drop samples.

    Ok brief background, I am a mechanical engineering student, and I am currently working on a student project. We want to use the DSP on that board to do control of a mechanical system. This is why I need to process sample by sample.

    I was guessing that the audio example is more involved than what actually need, in particular I have the feeling that much of the overhead I see is due to the DSP/BIOS. I was hoping that a much simpler program could be written without having to resort to the DSP/BIOS. My understanding is that you want to have an OS to support your application with solid scheduling, but my idea was to start without it and try to see how much I could safely push the sampling frequency without incurring in scheduling problems.

    In fact, I have found a book (http://www.amazon.com/Real-Time-Digital-Signal-Processing-TMS320C6000/dp/0750678305/ref=pd_sim_b_3) where such a program is described, and it does what you say, i.e. it interrupts the DSP at each sampling, but without using the DSP/BIOS.

    Here is the code I am talking about:

    and



    There are similar codes for other platforms too on the book, which is why I was wondering: 1) is something along these lines possible on my board? 2) do you have any book or any kind of reference I could consult in order to understand what kind of modifications I need to make in order to make it work on my platform?

  • I am sure that something like this is possible, but unfortunately we do not already have code like this written for the C674x parts. This code can probably be used as a basepoint for your own software; however, this code is written for C6711 which is supported by the functional-layer CSL whereas the C674x is supported by PSP drivers and a register-layer CSL.

    I would take a look at either the audio driver or the register CSL in the PSP installation folder to get more familiar with how they work. The PSP driver is a benefit in that it's already written, but it may not be exactly what you need. I suggest starting by either tweaking this driver, or try tweaking the code you snapshotted with the register CSL.

  • RobinVujanic said:

    Ok brief background, I am a mechanical engineering student, and I am currently working on a student project. We want to use the DSP on that board to do control of a mechanical system. This is why I need to process sample by sample.

    I was guessing that the audio example is more involved than what actually need, in particular I have the feeling that much of the overhead I see is due to the DSP/BIOS. I was hoping that a much simpler program could be written without having to resort to the DSP/BIOS. My understanding is that you want to have an OS to support your application with solid scheduling, but my idea was to start without it and try to see how much I could safely push the sampling frequency without incurring in scheduling problems.

    First of all, I would not use the DSP for this. ARMs are normally more suited for control application. Also, I would probably not use the audio examples, uart seemed to be a better choice.

    I believe the most of the overhead is due to peripheral access and DMA rather than the OS itself.

    There are some test program in $(CCS)\boards\evmc6747_v1\dsp\. I am sure you don't have to use BIOS/DSP or even CSL to program the timer. Find, read and set relevent registers.

    Hope it helps.

  • Yan said:
    First of all, I would not use the DSP for this. ARMs are normally more suited for control application. Also, I would probably not use the audio examples, uart seemed to be a better choice.

    I believe the most of the overhead is due to peripheral access and DMA rather than the OS itself.

    There are some test program in $(CCS)\boards\evmc6747_v1\dsp\. I am sure you don't have to use BIOS/DSP or even CSL to program the timer. Find, read and set relevent registers.

    The overhead is primarily due to the context switches involved in swapping between your "regular" functions and the interrupt routines. I don't see why servicing the UART ISR would have any less overhead than servicing the McASP ISR. Additionally, the UART is more far more limited regarding sample rate throughput.

    I do agree that the DSP is probably overkill for this sort of application, but it is still capable [:)] BIOS, CSL and PSP are never required but are tools there to be used if desired.

  • Yan said:

    There are some test program in $(CCS)\boards\evmc6747_v1\dsp\. I am sure you don't have to use BIOS/DSP or even CSL to program the timer. Find, read and set relevent registers.

    Hope it helps.

    EDIT nvm. Thank you very much for the hint!

    EDIT2 I do see however that on the RS-232 I can only read digital data, whereas I have an analog input. So if I do not want to buy an external ADC I should be using the one included into the AIC3106, correct me if I am wrong. And also, take in consideration Tim's opinion on UART's performance.

  • TimHarron said:

    The overhead is primarily due to the context switches involved in swapping between your "regular" functions and the interrupt routines. I don't see why servicing the UART ISR would have any less overhead than servicing the McASP ISR. Additionally, the UART is more far more limited regarding sample rate throughput.
    I do agree that the DSP is probably overkill for this sort of application, but it is still capable Smile BIOS, CSL and PSP are never required but are tools there to be used if desired.

    I actually am not sure whether a DSP is going to be able to process at the speeds we wanted to cover with our specs at all. We ("they") already have an implementation on a normal microcontroller.

    We want to control a microresonator with this thing, the control algorithm isn't too much involved, but the resonator itself can vibrate up to 50-100kHz. If we want to oversample that signal at least by 10x, it already means we would need to sample at 1MHz. This is of course not possible with the board we have, since the sampling rates are limited to 96kHz, but we don't have problems with restricting specs and see what kind of improvement we can observe with respect to the previous microcontroller implementation.

    Now I am not even sure anymore whether I can process the algorithm at 96kHz (on the paper, given the DSP specs, I should be able to), but again restricting specs further is an option.

    The problem now is that if I do not use the BIOS/DSP, I cannot see how much the DSP is loaded, which concerns me because I want to determine how far I can get with the sampling frequency.

    Anyway, now even if I tweak the program contained in $CCS\boards\evmc6747_v1\dsp\tests\aic3106 (which looks more digestible to me than the psp audio example) I do not think I will get better performance, given that the overhead is due to context switches (which are still going to incur, correct me if I am wrong)?

  •  

    TimHarron said:
    UART ISR would have any less overhead than servicing the McASP ISR.

    Hi

    Please note that the audio driver we are discussing here, is also handling ping/pong transfers and even they transmit "specified" data when application data is not available.

    Due to these features considerable overhead would be there in audio driver, especially in its ISR. This also explains CPU overhead versus no. of bytes in each IO request. 

    Less the no. of bytes/IO request, more frequent the IO submit and its callback (as the audio peripheral would be done with the bytes in less time) and hence more CPU load.

    Regards

    Vichu,

    Lead Engineer,

    PSP Team,

    Texas Instruments.

     

  • Hi,

    Is there any chance the CSL can come back?  I require low latency and my clock cycles are going to be packed.  I can't afford to spend 25% of my cycles doing I/O, nor can I wait 50ms to get data through.  I'll roll my own if necessary, but the CSL used to have the low level support.

    I asked about it before here:

    http://community.ti.com/forums/p/2094/13760.aspx#13760

    Thanks,

    Chris

  • There is a register bases CSL available in the PSP at:

    C:\OMAPL137_dsp_1_00_00_07\pspdrivers_01_20_00_07\packages\ti\pspiom\cslr\evm6747\examples

    Is that sufficient for your purposes?

  • Hi Chis,

    Other than the register CSL, there are no plans for the full CSL for OMAP-L1x, just PSP as mentioned in the other post.

    You could try to adapt form the C6713 csl or C6455 csl, but  that might be a lot of work.