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.

TMS320C5535: AEr AEC Quick Tuning

Part Number: TMS320C5535

Hello,

we are developing an intercom unit which uses aer/aec algorithms. Regarding gain calibration, we don't have to meet standard specifications. So we start with a nominal value for adc, dac and output amplifier gains.

Questions:

1. Parameter gain_rx_analog in aerControl_s struct:

Do we have to set this parameter to the same value as the dac + output amplifier gain? So if we start with nominal dac + output amplifier gain of 20dB, should we set this parameter to 20*16=320? When speaker volume is changed, should we adapt this parameter?

2. Same question as 1. for gain_tx_analog and pga gain

3. We use aic3254 codec and have agc activated. So in aer/aec we don't use agc block. Is this allowed?

Thanks in advance

Marc

  • Hello Marc,

    What software are you using? Where did you download it?

    best regards,

    David Zhou

  • Marc,

    The AER tuning is a long and time consuming process. I would recommend ADT, one of TI's 3rd party to support you on this tuning.

    Adaptive Digital Technology

    http://www.adaptivedigital.com

    brian.mcCarthy@adaptivedigital.com

    best regards,

    David Zhou

  • Hello,

    thanks for your answer. My question is not directly concerned with tuning, it is just an issue with the general application of the aec/aer library. Your colleague  gave some good support for aec/aer issues. Perhaps he can take a quick look at the question?

    Thanks in advance and have a nice day

    Marc

  • Marc,

    For questions 1 and 2, yes, you'll need to set both gain_rx_analog and gain_tx_analog initially, and inform AER when they are changed. The reason is when these gains change, the echo path changes. If AER is not aware of gain changes, it will have to re-converge to the new echo path, which may cause echo or near end suppression. However, if AER is informed of the gain changes, it will simply rescale the adaptive filter coefficients without re-converging, so any gain change won't affect performance. 

    For question 3, it is okay not to use AGC. However, if TX path ADC saturates, performance may degrade. I hope aic3254 agc can prevent TX path saturation. 

    Regards,

    Jianzhong

  • Hello Jianzhong,

    thanks a lot for the informations. They were quite helpful to us.

    1. We want to change the speaker volume during runtime via line out gain adjustment. So every time we change line out gain, it should be reported to aer via gain_rx_analog parameter? In my understanding the absolute initial value of  gain_rx_analog doesn't matter. Only the changes are of importance?! So we can start with an inital value of 0dB?

    2. Since we use agc of aic3254, the adc output level stays constant. So we don't have to report any gain_tx_analog changes to aer?

    3. It the first step we don't use DRC and HLC. I saw that the aic3254 also has a drc feature. Does it make sens to activate this aic32354 drc?

    We still have some trouble with our hardware and are not able to do calibration. When we will start calibration and have some open issues, we hope that we can come back to you?!

    Thanks in advance and have a nice day

    Marc

  • Hi Marc,

    1. You're right. Only the change in analog gain matters. 

    2. If the agc of aic3254 adjusts ADC gain during operation, then gain change will need to be reported to AER. Again, when ADC gain changes, it essentially changes the echo path. If gain change is not reported to AER, AER will have to re-adapt to the new echo path. It can still work, but could cause echo or near end suppression. 

    3. It's fine if you don't use DRC/HLC for the first step. I'm not clear about what aic3254 drc does, but if it adjusts DAC gain, you'll again need to report gain change to AER with same reason as #2. 

    I'd recommend you to start with disabling agc and drc of aic3254 and get AER working with basic performance, and then incrementally turn on optional features to improve performance. Please feel free to post questions here when you get to calibration. 

    Regards,

    Jianzhong