Klen
Member level 1
Hello everyone.
I am simulating a MDFT polyphase filter bank in Matlab. To break it down very simple, the analysis and synthesis parts perform the following function:
1) Analysis: Input Signal (n domain) --> Downsample --> Filter through (typ 1) polyphase component of a prototype low filter --> Perform IDFT
2) Synthes: Analysis Output Signal --> DFT --> Filter through (typ 2) polyphase component..... --> Upsample --> Combine to form original signal
My question (hopefully) doesn't require detailed information about MDFT polyphase filter banks, but I have simply provided it for those interested.
I created a protoype filter and extracted the polyphase components from it. My polyphase components are n-domain filter coefficents.
Assumeing my coefficients to be g0, g1, g2 etc, in matlab to filter the signal I simply use filter(g(1:end) , 1, X) where X is the downsampled signal to be filtered. However, I noted that all the filter bank diagrams that I have display the polyphase filter as G0(z), G1(z), thus in z domain. I am now confused as to should I multiply the n coefficients with z^-n and run it through the same filter function, or use a special filter function meant for using z-domain filters, or something else.
I would very much appreciate your kind replies.
Thank you
Klen
I am simulating a MDFT polyphase filter bank in Matlab. To break it down very simple, the analysis and synthesis parts perform the following function:
1) Analysis: Input Signal (n domain) --> Downsample --> Filter through (typ 1) polyphase component of a prototype low filter --> Perform IDFT
2) Synthes: Analysis Output Signal --> DFT --> Filter through (typ 2) polyphase component..... --> Upsample --> Combine to form original signal
My question (hopefully) doesn't require detailed information about MDFT polyphase filter banks, but I have simply provided it for those interested.
I created a protoype filter and extracted the polyphase components from it. My polyphase components are n-domain filter coefficents.
Assumeing my coefficients to be g0, g1, g2 etc, in matlab to filter the signal I simply use filter(g(1:end) , 1, X) where X is the downsampled signal to be filtered. However, I noted that all the filter bank diagrams that I have display the polyphase filter as G0(z), G1(z), thus in z domain. I am now confused as to should I multiply the n coefficients with z^-n and run it through the same filter function, or use a special filter function meant for using z-domain filters, or something else.
I would very much appreciate your kind replies.
Thank you
Klen