Thursday, March 19, 2009

Adaptive Signal Processing, Polyphase Filter Banks, for the old and new

Recently I have spent enough time on adaptive signal processing algorithms to have driven my friends crazy (yes, I do have friends). Everyone wants the polyphase filter bank code. I completely sympathize. While I am not a Dionysius (a Greek king), I invite you to be Damocles and feel the sword as you sit in my chair for a few sentences and then I won't bore you any more with this.

The polyphase filter bank code is "done". It has been for months. The implementation of the filter banks in question? A completely trivial matter for someone with as much digital signal processing experience as I have suffered, err uhh, enjoyed. There is a problem. The problem is significant and I am absolutely determined to solve it. Polyphase filter banks should be everywhere, ubiquitous if you will. They should be easily used, and easy to get right. This is a major problem but it really is the only one I am interested in pursuing to the end. I find that all of the major players, from my new friends and colleagues, to those I have never had the pleasure of meeting, have failed to address an overall structure.

The structure in question is how to do all of this in a completely automated way. You give me a few design parameters, ones that are obvious, I give you back a pointer to a filter bank object and from that moment on, you give me signal, and I give you output. What is difficult about this? The filter bank's signal performance is completely determined by the filters and the filter performance is determined by the size of the computer word. If you ask me to implement a filterbank with brick wall edges and 100 dB adjacent channel suppression, the filter design and the flow of signal through the filter bank needs new work done by fred harris and I (soon to be published). If you need perfect reconstruction with these parameters (the channelization is reversible to high accuracy through a synthesis operation), I return with a "you are a fool" and tell you the best you can hope for is ...... The nature of the filters inside depends on whether or not you want linear phase or not and .......

The construction of all of this filter determination code has been the object of study for brains better than mine for decades (Julius O. Smith comes to mind) but it is not all collected into one object. I am determined to crack this nut once and for all. Irrespective of how much respect I have for my filter bank colleagues, they have written enough papers on one-off designs. They have charged enough money for one-off consulting. Through the power of doing this right and then giving it away GPL and probably publishing a treatise, I am determined to make this a sea change, once and for all.

The work done by fred harris and I needs publication approval from my masters. These are the ones that feed my children, send them to school, and allow me to drive a fancy sports car and go to Broadway twice a month. The approval is coming. The filter bank FILTER DESIGN work is being done and we will all have it soon.

Thank you for your patience. Understand that I do the other things knowing they are not as important as the filter bank code. They are nevertheless necessary. They show off the differences between these sdr signal processing chains and what is possible in traditional "narrow band high performance radios" to the SIGNIFICANT advantage of the SDR's. I may be mad, but there is method to my aggravating pace.

No comments:

Post a Comment