DSPRelated.com
Forums

how to simulate NONLINEAR echo in matlab

Started by RUMMY February 22, 2005
Hi,

I was wondering if anyone knows how to simulate a nonlinear echo using
matlab. Any information would help Thanks in advance




		
This message was sent using the Comp.DSP web interface on
www.DSPRelated.com
RUMMY wrote:

> Hi, > > I was wondering if anyone knows how to simulate a nonlinear echo using > matlab. Any information would help Thanks in advance > >
Step 1: Understand the mathematical model for the echo. Step 2: Code it up. Step 3: Debug and test. We can't get more specific unless you tell us more -- and there _is_ a matlab newsgroup out there. -- Tim Wescott Wescott Design Services http://www.wescottdesign.com
>RUMMY wrote: > >> Hi, >> >> I was wondering if anyone knows how to simulate a nonlinear echo using >> matlab. Any information would help Thanks in advance >> >> >Step 1: Understand the mathematical model for the echo. >Step 2: Code it up. >Step 3: Debug and test. > >We can't get more specific unless you tell us more -- and there _is_ a >matlab newsgroup out there. > >-- > >Tim Wescott >Wescott Design Services >http://www.wescottdesign.com >
where can i find this matlab newsgroup? This message was sent using the Comp.DSP web interface on www.DSPRelated.com
RUMMY wrote:

>>RUMMY wrote: >> >> >>>Hi, >>> >>>I was wondering if anyone knows how to simulate a nonlinear echo using >>>matlab. Any information would help Thanks in advance >>> >>> >> >>Step 1: Understand the mathematical model for the echo. >>Step 2: Code it up. >>Step 3: Debug and test. >> >>We can't get more specific unless you tell us more -- and there _is_ a >>matlab newsgroup out there. >> >>-- >> >>Tim Wescott >>Wescott Design Services >>http://www.wescottdesign.com >> > > where can i find this matlab newsgroup? > >
Do you know what newsgroups are and how to use them? If so, search for one with 'matlab' in the name. If you don't know about newsgroups then do a websearch. I found this -- http://www.ahuka.com/flash000807/newsgroups.html. Google has a way to access groups if your ISP doesn't provide one, and there are other web-based newsgroup access sites out there. -- Tim Wescott Wescott Design Services http://www.wescottdesign.com
I'm curious, what kind of system are you working with that has
non-linear echoes?

Mark

> >I'm curious, what kind of system are you working with that has >non-linear echoes? > >Mark > >
I'm trying to cancel nonlinear echo for as a school project. The objective is to use NLMS and LMS algorithm to eliminate nonlinear echo. So the whole simulation requires to have a nonlinear echo as well as a matlab code to eliminate it. This message was sent using the Comp.DSP web interface on www.DSPRelated.com
"RUMMY" <rpj616@yahoo.com> wrote in message 
news:LJKdnYd4rY03NoHfRVn-3g@giganews.com...
> > >>I'm curious, what kind of system are you working with that has >>non-linear echoes? >> >>Mark >> >> > > I'm trying to cancel nonlinear echo for as a school project. The objective > is to use NLMS and LMS algorithm to eliminate nonlinear echo. So the whole > simulation requires to have a nonlinear echo as well as a matlab code to > eliminate it.
Considering that LMS/NLMS are linear algorithms, it would seem difficult to cancel a non-linear echo with them! Also, what kind of non-linear echo are you trying to deal with? Talking about non-linear echo is kind of like talking about non-dog animals--there is a huge variety and you don't know much about what it is, only what it isn't. A simple practical type of non-linear echo would be a sound system with clipping distortion. But until you define what type of non-linearity you want to deal with, it is difficult to recommend a way to simulate it.
>"RUMMY" <rpj616@yahoo.com> wrote in message >news:LJKdnYd4rY03NoHfRVn-3g@giganews.com... >> > >>>I'm curious, what kind of system are you working with that has >>>non-linear echoes? >>> >>>Mark >>> >>> >> >> I'm trying to cancel nonlinear echo for as a school project. The
objective
>> is to use NLMS and LMS algorithm to eliminate nonlinear echo. So the
whole
>> simulation requires to have a nonlinear echo as well as a matlab code
to
>> eliminate it. > >Considering that LMS/NLMS are linear algorithms, it would seem difficult
to
>cancel a non-linear echo with them! Also, what kind of non-linear echo
are you
>trying to deal with? Talking about non-linear echo is kind of like
talking
>about non-dog animals--there is a huge variety and you don't know much
about
>what it is, only what it isn't. A simple practical type of non-linear
echo
>would be a sound system with clipping distortion. But until you define
what
>type of non-linearity you want to deal with, it is difficult to recommend
a way
>to simulate it. > > >
Well, that is a confusion I have as well. I was simply told to modify the LMS/NLMS algorithm so that it also accounts for the nonlinear portion. The overall goal is to simulate the acoustic echo canceller that would use this. Also, no LMS/NLMS algorithm is supplied. The built-in Matlab may not be used. This message was sent using the Comp.DSP web interface on www.DSPRelated.com
>"RUMMY" <rpj616@yahoo.com> wrote in message >news:LJKdnYd4rY03NoHfRVn-3g@giganews.com... >> > >>>I'm curious, what kind of system are you working with that has >>>non-linear echoes? >>> >>>Mark >>> >>> >> >> I'm trying to cancel nonlinear echo for as a school project. The
objective
>> is to use NLMS and LMS algorithm to eliminate nonlinear echo. So the
whole
>> simulation requires to have a nonlinear echo as well as a matlab code
to
>> eliminate it. > >Considering that LMS/NLMS are linear algorithms, it would seem difficult
to
>cancel a non-linear echo with them! Also, what kind of non-linear echo
are you
>trying to deal with? Talking about non-linear echo is kind of like
talking
>about non-dog animals--there is a huge variety and you don't know much
about
>what it is, only what it isn't. A simple practical type of non-linear
echo
>would be a sound system with clipping distortion. But until you define
what
>type of non-linearity you want to deal with, it is difficult to recommend
a way
>to simulate it. > > >
Well, that is a confusion I have as well. I was simply told to modify the LMS/NLMS algorithm so that it also accounts for the nonlinear portion. The overall goal is to simulate the acoustic echo canceller that would use this. Also, no LMS/NLMS algorithm is supplied. The built-in Matlab may not be used. This message was sent using the Comp.DSP web interface on www.DSPRelated.com
RUMMY wrote:

>>"RUMMY" <rpj616@yahoo.com> wrote in message >>news:LJKdnYd4rY03NoHfRVn-3g@giganews.com... >> >> >>>>I'm curious, what kind of system are you working with that has >>>>non-linear echoes? >>>> >>>>Mark >>>> >>>> >>>> >>>> >>>I'm trying to cancel nonlinear echo for as a school project. The >>> >>> >objective > > >>>is to use NLMS and LMS algorithm to eliminate nonlinear echo. So the >>> >>> >whole > > >>>simulation requires to have a nonlinear echo as well as a matlab code >>> >>> >to > > >>>eliminate it. >>> >>> >>Considering that LMS/NLMS are linear algorithms, it would seem difficult >> >> >to > > >>cancel a non-linear echo with them! Also, what kind of non-linear echo >> >> >are you > > >>trying to deal with? Talking about non-linear echo is kind of like >> >> >talking > > >>about non-dog animals--there is a huge variety and you don't know much >> >> >about > > >>what it is, only what it isn't. A simple practical type of non-linear >> >> >echo > > >>would be a sound system with clipping distortion. But until you define >> >> >what > > >>type of non-linearity you want to deal with, it is difficult to recommend >> >> >a way > > >>to simulate it. >> >> >> >> >> > >Well, that is a confusion I have as well. I was simply told to modify the >LMS/NLMS algorithm so that it also accounts for the nonlinear portion. The >overall goal is to simulate the acoustic echo canceller that would use >this. Also, no LMS/NLMS algorithm is supplied. The built-in Matlab may not >be used. > >This message was sent using the Comp.DSP web interface on >www.DSPRelated.com > >
Could it be the person who set the problem is simply looking for a canceller which simply behaves well under all conditions? For example, a typical telephony canceller needs to deal with various non-linearities in a sensible way. A-law and u-law distortion introduce a low level of non-linearity, which cancellers need to deal with. That doesn't generally screw them up. It just limits them to about 30dB of echo suppression. That may require special action, though. Typically a non-linear suppression process is used to eliminate residual echo when the far end is silent. If the signal clips, that is much nastier. Cancellers usually need to detect such things, and prevent the adaption process going wild. Typically they just freeze the filter's adaption process during periods of overload, and for long enough after the event that any distorted signals have flushed from the echo path. Telephony cancellers have plenty of problems with entirely linear things too, such as unexpected narrow band energy misleading the adaption process. :-) Regards, Steve