27, 15:53:51
/****************************************************************************
*
* Name: FirAlgs.c
*
* Synopsis: FIR filter algorithms for use in C
*
* Description:
*
* This module provides functions to implement Finite ImpulseResponse (FIR)
* filters using a variety of algorithms.
*
* These functions use most or all of the following inputparameters:
*
* input - the input sample data
* ntaps - the number of taps in the filter
* h[] - the FIR coefficient array
* z[] - the FIR delay line array
* *p_state - the "state" of the filter; initialize thisto 0 before
* the first call
*
* The functions fir_basic, fir_shuffle, and fir_circular arenot very
* efficient in C, and are provided here mainly to illustrateFIR
* algorithmic concepts. However, the functions fir_split,fir_double_z
* and fir_double_h are all fairly efficient ways to
implement FIR filters
* in C.
*
* Copyright 2000 by Grant R. Griffin
*
* Thanks go to contributors of comp.dsp for teaching me someof these
* techniques, and to Jim Thomas for his review and great
suggestions.
*
* The Wide Open License (WOL)
*
* Permission to use, copy, modify, distribute and sell thissoftware and its
* documentation for any purpose is hereby granted without fee,provided that
* the above copyright notice and this license appear in all
第 1 页