xilinx multichannel fir alignment

I'm using the v5.1 coregen fir, decimate by 2, two channel operation to process my I/Q. My system clock is 56 Mhz and the I/Q data rate is 500 ksps so I'm sure the latency is okay for the single dsp48 mac engine. Anyway, the output I get is misaligned, that is if I input a complex sinusoid and then plot the output on an x-y plot I get an ellipse instead of a circle.

To figure out the misalignment I changed to input the same I sample on both channels expecting that I should get the same output on both channels. The outputs don't match. AND its not that they are shifted in time, they just do not match. I get the same result with modelsim and in my system.

Does anyone have a working two channel fir example with testbench that I can use as a reference? Any ideas on why the channels would be misaligned?

Thanks, Clark

Reply to
cpope
Loading thread data ...

I don't have an answer for you, but I did a 2-channel interpolating FIR using the FIR Compiler and it worked fine. At the moment I am implementing both 8-channel decimation and 8-channel interpolation filter, but again using the compiler. I believe the compiler has less bugs than the MAC FIR...

/Mikhail

Reply to
MM

FIR...

Thanks for the suggestion. I switched to fir compiler and I got the same result though. Was interesting that output actually appears to be registered now. (It only changes with the rdy line where before it changed many times even though I had 'register output' selected both times.)

Is there a restriction on filter length? I am using 65 taps symmetric. Maybe the odd length is causing a problem with the decimate by 2 structure?

Thanks, Clark

Reply to
cpope

I

implementing

registered

Maybe

Actually, nevermind. I had an extra clock in the input mux so the I and Q were on different phases into the fir. -Clark

Reply to
cpope

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.