diff --git a/Source/FilteringFunctions/arm_fir_init_f64.c b/Source/FilteringFunctions/arm_fir_init_f64.c index 8c578b50..28bd17c8 100644 --- a/Source/FilteringFunctions/arm_fir_init_f64.c +++ b/Source/FilteringFunctions/arm_fir_init_f64.c @@ -52,22 +52,11 @@ {b[numTaps-1], b[numTaps-2], b[N-2], ..., b[1], b[0]} @par - pState points to the array of state variables and some working memory for the Helium version. - pState is of length numTaps+blockSize-1 samples (except for Helium - see below), where blockSize is the number of input samples processed by each call to arm_fir_f32(). - @par Initialization of Helium version - For Helium version the array of coefficients must be a multiple of 4 (4a) even if less - then 4a coefficients are defined in the FIR. The additional coefficients - (4a - numTaps) must be set to 0. - numTaps is still set to its right value in the init function. It means that - the implementation may require to read more coefficients due to the vectorization and - to avoid having to manage too many different cases in the code. - - @par Helium state buffer - The state buffer must contain some additional temporary data - used during the computation but which is not the state of the FIR. - The first blockSize samples are temporary data. - The remaining samples are the state of the FIR filter. - So the state buffer has size numTaps + 2 * blockSize - 1 + pState points to the array of state variables. + pState is of length numTaps+blockSize-1 samples, where blockSize is the number of input samples processed by each call to arm_fir_f32(). + + @par + There is no Helium version of the fir F64. */