Commit 4c8b8f1
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 bbea144 commit 4c8b8f1
1 file changed
+229
-199
lines changed
0 commit comments