A nonlinearity with memory can be modelled by a two-box-model, which consists of a filter and a memoryless nonlinearity. I am referring to chapter 5.3.2 of the book "Simulation of Communication Systems" by M.C.Jeruchim et. al. here's a link to Google books

I am given the AM-AM- and the AM-PM-characteristic of an amplifier. I want to model the behavior of the amplifier to a two-tone input signal. To do so, I want to set up a two-box-model. The memoryless nonlinearity should be described by the given characteristics.

  • But what does a filter before the memoryless nonlinearity do?
  • What does an ARMA filter do?
  • Can an ARMA filter be used to filter an analog signal (sine-waves) ?
  • $\begingroup$ Hi Luk, you brought up the term "two-box model", so I think it'd be only fair to us if you referred to the source where you've got that from. I'm not asking for this because I want to be nitpicky - it's just that I actually already answered a question you asked by pointing out a sentence in the paper you forgot to cite in the original version of your question, and had you specified your sources right from the start, you could have saved me a lot of work. $\endgroup$ – Marcus Müller Jan 3 '17 at 19:02
  • $\begingroup$ To my understanding, "two-box models" don't always consist of a filter and a nonlinearity, so your question is literature-specific, so you must at least specify which literature you're referring to. $\endgroup$ – Marcus Müller Jan 3 '17 at 19:03
  • $\begingroup$ you're right, I didn't think about it. $\endgroup$ – user25356 Jan 4 '17 at 8:43
  • $\begingroup$ ARMA filters operate on discrete-time data. I've added some information to my answer. $\endgroup$ – Matt L. Jan 4 '17 at 10:02

The filter is a linear time-invariant (LTI) system that adds memory to the model. Combined with a memoryless nonlinearity, the filter allows to model non-linear systems with memory, unlike a pure AM-AM and AM-PM model, which models a memoryless nonlinearity. An ARMA-filter is the same as an infinite-impulse response (IIR) filter, which computes its output as a linear combination of weighted and delayed versions of the input and output signal. IIR filters need to be implemented by recursive structures.

An ARMA (or IIR) filter is a discrete-time (linear time-invariant) filter whose response $y[n]$ to an input sequence $x[n]$ is computed as follows:


where $b_m$ and $a_l$ are the filter coefficients, which are chosen such that a certain desired filter characteristic (e.g., low pass, high pass, etc.) is achieved.

  • $\begingroup$ thx, Matt! I am given a superposition of 2 sine-waves. I think this signal can be considered discrete as I am given the values of the signal at different time steps ( so I have a vector). I have a vector of the output signal as well. I think the main goal of a filter before my nonlinearity is to filter out the 3rd-degree intermodulation products of my output spectrum. At least it would be great, if this was possible! In equation (1), m and l are just the indices of the vector entries, right? And now my task is to determine $a_l$ and $b_m$ - is this where least squares is used? $\endgroup$ – user25356 Jan 4 '17 at 15:56
  • $\begingroup$ @Luk: I'm not sure what your filter is supposed to do. Filtering out intermodulation products is something that you might want to do, but the actual task of the filter (together with the memoryless nonlinearity) is to model a given nonlinear system. So you have to choose the filter coefficients in such a way that your model matches your observation of the actual system. $\endgroup$ – Matt L. Jan 4 '17 at 20:33

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy