How to make it possible to specify filter weights in LMS filter?

2 views (last 30 days)
In DSP System toolbox there is a LMS adaptive filter Simulink block. With that block it is possible to load filter weights when the filter is initialized or reset. However, as default it is only possible to specify those filter weights in a dialog. Does anyone know if there is a way to load the filter weights from an input port or some kind of global variable instead? Specifying a workspace variable does not work, because the variable is not continuously updated.

Answers (1)

Kaustubha Govind
Kaustubha Govind on 22 Aug 2012
Do you mean that you want the initial filter weights to be from an input port (because Adaptive filters update filter coefficients internally/adaptively)? I'm confused as to why you would want to "update" the initial filter weights, since they are only read at initialization. Or do you need to override the internally calculated weights?
At any rate, it doesn't look like the block from the DSP System Toolbox will allow this as you have found out, so you might need to implement such a filter using basic Simulink blocks.
  2 Comments
Nils
Nils on 23 Aug 2012
Thanks for the answer. Yes, I would like to reload "updated" initial filter weights. The initial filter weights are read during initialization, but also reloaded during a reset of the filter. The purpose of loading new filter weights is that I occasionally would like to load filter weights calculated from another adaptive filter.
Kaustubha Govind
Kaustubha Govind on 23 Aug 2012
Nils: I see - so you effectively want to override the filter weights. Like I said, I think you might need to implement your own filter block.
If you are able to implement a filter block that takes the initial weights as an input, you can put it inside an enabled subsystem and "force" a reset whenever you want to override the weights.

Sign in to comment.

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!