Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Becker__Neal
Beginner
51 Views

FIR filter with non-contiguous (strided) input?

Are FIR filters limited to only inputs with unit-stride (contiguous)?

0 Kudos
2 Replies
Chao_Y_Intel
Employee
51 Views

Hi, 

It is only support unit stride. You can use the ippmExtract_v_xxx function to create the contiguous input data. 

Regards,
Chao 

Igor_A_Intel
Employee
51 Views

Hi,

it is better to use ippsSampleUp or ippsSampleDown functions - they support any regular stride. Also there are FIRSparse functions, but they are oriented for strided taps, not input vector. We can't implement all possible kinds of DSP specific with single functions - IPP functions are just building blocks - so if your request can be implemented with 2 or more blocks - that is normal situation. Use SampleDown and FIR in a loop taking into account L0 size - in this case there is no performance difference between special single primitive and combined one. So SampleDown your input vector to some tmp, then perform FIR from tmp to your dst vector (if you use 7.1.1 - you can get rid of tmp and perform SampleDown to dst and then apply FIR with pSrc==pDst - it supports in-place). In this case you should divide your vector on "slices" that input+tmp+dst (or input+dst in case of in-place op) < 32K (L0 size).

Regards,

Igor

Reply