I am wondering if it is any way to use the Modified FxLMS block or FxLMS block for the ADA1442 eval board. This board supports only NLMS block, which is not very useful for multi-channel ANC.
Thank you for your reply. However, ADAU145x and ADAU146x are also not a good solution for us because we need more inputs for our application then these evaluation boards have. However, is it still possible to implement active noise control manually using ADAU1442?
So you are not designing your own PCB?
The ADAU1442 is a reasonably powerful DSP but the ADAU1452 is much more powerful and had block based processing and a quad MAC that makes it more efficient for doing FFTs. Then there is the AEC and NR allocation that is available for licensing for that platform.
So you should be able to do an FxLMS algorithm but it might limit how much other things you can do. Also, I do not have any example projects to get you started. There is a lot on the forum and I can help with small parts of the program if questions come up.
Thank you for your reply. Yes, I' m not designing my PCB.
I know that ADAU1452 is more powerful. However, we choose ADAU1442 eval board because we need more than 4 analog (3.5 jack) inputs and ADAU1452 eval board has only 4.
I'm starting to implement the algorithm. Hope, it will be ok.
Thank you for help
If I understand right FIR filter block assumes one input and implements the convolution of this input with pre-stored filter coefficients. And I need a block that has two inputs and implements the convolution of these inputs. Is it possible to use FIR filter in this way?
We have the FIR Filter Pool block which can have multiple inputs and you can choose from a pool of FIR filters for which filter to use. So this is good where multiple inputs will be using the same filter coefficients. Then you do not have to store the same coefficients multiple times. But we do not have any block that uses one input to convolve with another? Unless you must multiply one sample by the other? So I am not fully understanding your question.
If you need to process more than one channel you can simply grow the cell.
This above was a single channel FIR filter that I grew to three inputs and outputs. They all will use the coefficients stored in the table so that is efficient.
Thank you for reply. Let me explain what I mean. I mean convolution between two input vectors. It can be expressed by this equation:
where x and z input vector of order N and y(n) is a one-samle output.
Is it possible to implement something similar?