Intel® Integrated Performance Primitives
Deliberate problems developing high-performance vision, signal, security, and storage applications.
공지
FPGA community forums and blogs on community.intel.com are migrating to the new Altera Community and are read-only. For urgent support needs during this transition, please visit the FPGA Design Resources page or contact an Altera Authorized Distributor.
6814 토론

Replacement for ippsFIRSetDlyLine_64f in current IPP libraries?

Michael_K_10
초급자
1,102 조회수

I'm presently updating some code that was written against version 5.1 of the IPP library to work against 9.0.3 (the update was triggered because we need to port the application to a 64 bit platform).

So far I've had no trouble - the IIR and FFT function name changes have been straightforward (the InitAlloc functions went away). 

But the FIR functions are giving me more trouble - specifically, I believe that the ippsFIR functions should be replaced by ippsFIRSR functions, but there is no SetDlyLine for the ippsFIRSR functions. So clearly I've mis-understood something.

What is the appropriate substitution for the old ippsFIRSetDlyLine_64f function in the new IPP libraries?

 

0 포인트
4 응답
Michael_K_10
초급자
1,102 조회수

Additional information: The only time ippsFIRSetDlyLine_64f is used in our code, it's used with a block of zeros in a function called 'reset'. Is that equivalent to simply re-initializing the filter state? 

0 포인트
Andrey_B_Intel
1,102 조회수

Hi Michael.

Thanks for using IPP library.

There is 2 possible solution in your situation.

1) Organize delay line in external buffer and manipulate with it. 0-ing for 'reset'.

2) Provide NULL instead of pDlySrc pointer to ippsFIRSR_64f function when you need to 'reset'

0 포인트
Michael_K_10
초급자
1,102 조회수

Andrey Bakshaev (Intel) wrote:

Hi Michael.

Thanks for using IPP library.

There is 2 possible solution in your situation.

1) Organize delay line in external buffer and manipulate with it. 0-ing for 'reset'.

2) Provide NULL instead of pDlySrc pointer to ippsFIRSR_64f function when you need to 'reset'

AHH! here we go. The ippsFIRSR_64f actually has both a dlySrc and dlyDst parameter, and the init function has no delay parameters. So maintaining the delay line buffers myself is in fact the proper thing to do at this point (I missed those parameters on my previous pass through, as I was concentrating on the init functions).

OK, so now I just have to restructure my code to maintain those buffers manually. 

So, the next question is: do I actually need two buffers here? Or can I pass the same buffer for both pDlySrc and pDlyDst and have it update in place? I suspect that the answer is 'no, you need two buffers', but I thought I'd ask.

Thank you!

0 포인트
Ying_H_Intel
중재자
1,102 조회수

Hi Michael ,

Yes, it should be two buffer one for source , one for destination. 

You may put all of them as NULL  when  the arrays pDlySrc and pDlyDst support NULL values:
• if pDlySrc is NULL, the function uses the delay line with zero values
• if pDlyDst is NULL, the function does not copy any data to the destination delay line

Best Regards,
Ying

 

0 포인트
응답