0
$\begingroup$

In MATLAB there are filters with 0 phase filtfilt and ordinary FIR1. When I filtered a group of simulated data, I found that filtFilt was superior to FIR1 in terms of phase delay. I know the difference. But would there be any essential difference between filtfilt-designed filter and FIR1-designed filter when written into FPGA? Or are they just different in Matlab when it is used to filter data? Besides, could you please tell me how to set the order of filtfilt? I would like to compare the filtering performance difference between FILtFilt and FIR1 of the same order. Thanks!

$\endgroup$
0
1
$\begingroup$

filtfilt() applies forwards, then backwards filtering using any iir filter you feed it. As such, it only applies to finite length file processing, not realtime stream processing.

fir1 is a method to design fir filters that can subsequently be applied using filter, conv or (unusually) filtfilt.

$\endgroup$
1
  • $\begingroup$ And to add it provides a post processed zero-phase filter result, meaning the buffered output result would be time aligned with the buffered input with no delay between the two buffered signals. $\endgroup$ – Dan Boschen Sep 12 '20 at 18:12

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.