Migration from Visual DSP++ to Crosscore ad1980

Hey Im currently in the process of Migrating some visual DSP+ code to crosscore embedded stuidos, for the ADSP-BF548 board

The code makes extensive use of the AD1980 codec , AD1980 driver includes and a callback routine. . Currently I am watching this video

http://videos.analog.com/video/products/processors-dsp/2751956133001/Migrating-from-VisualDSP-to-CrossCore-Embedded-Studio/

To assists with the migration. In the video they replaces the BF2x onchip codec drivers includes an all mentions to the codec with the ssm2603.

My question is do I follow a similar process to the above video and replace all mention too the AD1980 with the ssm2603, and if so why?

Cheers Eranga

  • Hi Eranga,

    Are you using a BF548 EZ-KIT Lite, or a custom board that uses the AD1980 codec?

    The changes in the example used to illustrate the porting process in that video were required because the name of the driver differs between VisualDSP++ and CrossCore Embedded Studio. In VDSP++ the driver for the on-chip codec in the BF52xC processors was "adi_bf52xc1.c" - though the underlying codec is actually an SSM2603 (with a separate adi_ssm2603.c file for other processors to use with the SSM2603 codec). In CCES this is unified into a single driver, adi_ssm2603.

    So, changing your code to use the SSM2603 codec is not a requirement when porting other code to CCES. Typically, you would identify the appropriate driver from the Board Support Package (BSP) and port your code to use this. For example, for the BF533 EZ-KIT Lite you will find the CCES driver in the BSP at "...\BF533_EZ-Kit_Lite\Blackfin\src\drivers\codec\ad1836a\".

    Unfortunately we do not have a driver for the AD1980 codec with CrossCore Embedded Studio. The AD1980 is an obsolete part, and one that is considered quite inefficient for the world of embedded processing. In VisualDSP++ this device required a significant software overhead in the device driver.

    We recommend using an alternative codec - and I would suggest you take a look at the Audio/Video Ez-Extender board, which uses the AD1836 Audio Codec. Examples for this particular codec are available in the Board Support Package (available on the product page) and demonstrate its use in both I2S and TDM modes.

    I'm sorry I couldn't be of more help on this occasion. I notice that you are listed a University in your profile. You may want to use the University Program page to enquire whether a discount is available for the EZ-Extender.

    Regards,

    Craig.

  • Hi CrigG

    Thanks for your Response, I am using the BF548 EZ-KIT Lite.

    Is their any other way I can do audio processing using the BF548 kit if  I am unable to utilize the on-board ad1980 codec?

    Regards

    Eranga

  • Hi Eranga,

    Unfortunately, as there is no Device Driver available for CrossCore Embedded Studio, you would have to directly interact with the codec through the SPORT interface. Do you still have VisualDSP++ installed? If so, take a look at the Power On Self Test example for the BF548 EZ-KIT Lite.

    Within the folder "...\Blackfin\Examples\ADSP-BF548 EZ-KIT Lite\Power_On_Self_Test\" you will see a file called "Audio_test.c". This demonstrates how to enable and configure the codec, test a transmit and receive buffer, etc, all using direct register access, rather than a device driver. This could be ported to CCES, and adapted for audio processing (rather than just testing its very small buffers).

    Regards,

    Craig.

  • Hi Eranga,

    If these files are not present, I suspect you have only installed the base-release of VisualDSP++ 5.0 (which did not have complete BF548 support).

    I recommend using the latest release of the 5.x tools, VisualDSP++ 5.1, which can be downloaded from our website at the link below.

    http://www.analog.com/visualdsp

    Regards,

    Craig.

  • Hey Craig

    Thanks for all your help, after some thought I have decided to simply use VisualDSP++ to continue working on my project and program the board. However the adi_ac97.h and adi_ad1980.h header files are not in the 

    Analog Devices\VisualDSP5.0\Blackfin\lib\src\drivers\codec directory . Is it still possible to obtain these header files through the analogue devices site?

    Regards

    Eranga