Commit bae5764
committed
Audio: SRC: Optimize HiFi4 version code
This patch applies to HiF4 part of the optimizations done for HiFi5
version.
- As a fix for code the coefficients read align register is primed
for 16 bit coefficients version. Without priming the load works
correctly only for aligned addresses.
- The FIR filter functions are separated for stereo and any channels
count versions. It avoids channels count check for every
intermediate and final sample value.
- The 32 bit coefficients version is similarly separated for stereo
and any channels version.
- The data loads are changed to more efficient 32 bits without
s24 conversion. The dual-MAC is changed to 32x32 with Q17.47
format.
- The data store is changed in stereo version to 64 bit store of
stereo frame.
- In src_polyphase_stage_cir() function the filters process loops
are separated for stereo and for any channels count.
The MCPS is improved from 18.03 to 16.00 MCPS in stereo 32 bit
44.1 kHz to 48 kHz conversion.
Signed-off-by: Seppo Ingalsuo <seppo.ingalsuo@linux.intel.com>1 parent 0f906e2 commit bae5764
1 file changed
+227
-196
lines changed
0 commit comments