6.0
This commit is contained in:
+1
-1
@@ -207,7 +207,7 @@ A simple method to further reduce the load of the \ac{DSP} core is to reduce the
|
|||||||
\caption{Updated plot of the relative performance of the SNR-Gain, the cycles per samples and the DSP load in regard of the update rate for the benchmark case. The higher load is indicated by the newly added continuous lines.}
|
\caption{Updated plot of the relative performance of the SNR-Gain, the cycles per samples and the DSP load in regard of the update rate for the benchmark case. The higher load is indicated by the newly added continuous lines.}
|
||||||
\label{fig:fig_snr_update_rate_new.png}
|
\label{fig:fig_snr_update_rate_new.png}
|
||||||
\end{figure}
|
\end{figure}
|
||||||
\noindent A more sophisticated method to reduce the load of the \ac{DSP} core is to use an error-driven implementation, where the update of the filter coefficients is only conducted, if the error signal exceeds a certain threshold. For the benchmark case, with a similar \ac{DSP} load of 24.1\% (compared to the reduce update implementation), the \ac{SNR}-Gain is reduced by only 8.9\% from 9.47dB to 8.63 dB. For all viewed scenarios, an error threshold of 0.07 represents the best cost-value ratio - with a mean \ac{SNR}-Gain reduction of 11.7\% from 11.54 dB to 10.19 dB, while the load of the \ac{DSP} core is reduced by about 62.8\% from 44.6\% to 16.6\%. This substentional performance gain is bought by only a slight increase in computing effort - the 16.6\% total load rise only to 17.8\%\\ \\
|
\noindent A more sophisticated method to reduce the load of the \ac{DSP} core is to use an error-driven implementation, where the update of the filter coefficients is only conducted, if the error signal exceeds a certain threshold. For the benchmark case, with a similar \ac{DSP} load of 24.1\% (compared to the reduce update implementation), the \ac{SNR}-Gain is reduced by only 8.9\% from 9.47 dB to 8.63 dB. For all viewed scenarios, an error threshold of 0.07 represents the best cost-value ratio - with a mean \ac{SNR}-Gain reduction of 11.7\% from 11.54 dB to 10.19 dB, while the load of the \ac{DSP} core is reduced by about 62.8\% from 44.6\% to 16.6\%. This substentional performance gain is bought by only a slight increase in computing effort - the 16.6\% total load rise only to 17.8\%\\ \\
|
||||||
This result proofes, that an error-driven implementation of the \ac{ANR} algorithm is highly suitable to reduce the load needed for adaptive noise reduction in a \ac{CI} application, while still providing nearly 90\% of the maximum achievable performance under the viewed circumstances. Again, Figure \ref{fig:fig_snr_error_threshold_new.png} shows the updated plot of the relative performance of the SNR-Gain, the cycles per samples and the DSP load in regard of the error threshold for the benchmark case.
|
This result proofes, that an error-driven implementation of the \ac{ANR} algorithm is highly suitable to reduce the load needed for adaptive noise reduction in a \ac{CI} application, while still providing nearly 90\% of the maximum achievable performance under the viewed circumstances. Again, Figure \ref{fig:fig_snr_error_threshold_new.png} shows the updated plot of the relative performance of the SNR-Gain, the cycles per samples and the DSP load in regard of the error threshold for the benchmark case.
|
||||||
\begin{figure}[H]
|
\begin{figure}[H]
|
||||||
\centering
|
\centering
|
||||||
|
|||||||
+3
-2
@@ -13,8 +13,9 @@
|
|||||||
\acronymused{ANR}
|
\acronymused{ANR}
|
||||||
\acronymused{DSP}
|
\acronymused{DSP}
|
||||||
\acronymused{SNR}
|
\acronymused{SNR}
|
||||||
\acronymused{DSP}
|
\acronymused{ANR}
|
||||||
\acronymused{SNR}
|
\acronymused{CI}
|
||||||
|
\acronymused{CI}
|
||||||
\@setckpt{chapter_06}{
|
\@setckpt{chapter_06}{
|
||||||
\setcounter{page}{74}
|
\setcounter{page}{74}
|
||||||
\setcounter{equation}{49}
|
\setcounter{equation}{49}
|
||||||
|
|||||||
+2
-1
@@ -8,4 +8,5 @@ With a set filter length of 45 coefficients, the final improvement of the algori
|
|||||||
\noindent The error driven optimization approach can therefore be seen as a the clear winner, as it was able to further improve an already real-time capable \ac{ANR} algorithm, by significantly reducing the computational load of the \ac{DSP} core, while only slightly reducing the performance improvement in terms of \ac{SNR}-Gain.\\ \\
|
\noindent The error driven optimization approach can therefore be seen as a the clear winner, as it was able to further improve an already real-time capable \ac{ANR} algorithm, by significantly reducing the computational load of the \ac{DSP} core, while only slightly reducing the performance improvement in terms of \ac{SNR}-Gain.\\ \\
|
||||||
\noindent For future work, a more advanced method to further optimize the system could be the use of a dynamic threshold, which could be adapted according to the current noise conditions. The background for this proposal is the fact, that beside the error-signal, also the noise signal itself influences the size of the filter-coeffcient update. In the current implementation, the threshold is only dependend on the error signal - if a sitatuion arises, where the noise signal is very small, but the error/output signal is high due to a high input signal, an update of the filter coefficients would be triggered, even if not necessary. A dynamic threshold, which also takes the noise signal into account, could further reduce the number of updates, but with a potentially higher computational effort.\\ \\
|
\noindent For future work, a more advanced method to further optimize the system could be the use of a dynamic threshold, which could be adapted according to the current noise conditions. The background for this proposal is the fact, that beside the error-signal, also the noise signal itself influences the size of the filter-coeffcient update. In the current implementation, the threshold is only dependend on the error signal - if a sitatuion arises, where the noise signal is very small, but the error/output signal is high due to a high input signal, an update of the filter coefficients would be triggered, even if not necessary. A dynamic threshold, which also takes the noise signal into account, could further reduce the number of updates, but with a potentially higher computational effort.\\ \\
|
||||||
\noindent Also, the already in Chapter 2 mentioned hybrid filter approach, which splits the filter into a static and adaptive part, could be further investigated. The idea behind this approach is, that the static part of the filter covers certain signal paths, which are to be expected time invariant, while the adaptive part of the filter only needs to cover changing signals.\\ \\
|
\noindent Also, the already in Chapter 2 mentioned hybrid filter approach, which splits the filter into a static and adaptive part, could be further investigated. The idea behind this approach is, that the static part of the filter covers certain signal paths, which are to be expected time invariant, while the adaptive part of the filter only needs to cover changing signals.\\ \\
|
||||||
\noindent Therefore, the final result of this thesis shows, that the approach of an error driven optimization, utilizing the idea of a fixed threshold for the error signal, is a viable method to achieve significant performance improvement, reducing the computational load of the \ac{DSP} core by over 62\% while only redcuing the \ac{SNR}-Gain by roughly 12\%.\\ \\
|
\noindent Therefore, the final result of this thesis can be summarized as follows:\\ \\
|
||||||
|
The approach of an error driven optimization of a real-time capable \ac{ANR} algorithm, utilizing the idea of a fixed threshold for the error signal, is a viable method to achieve significant reduction in computational load while still keeping the performance near its maximum. For the use in a \ac{CI} system, this means, that the additional power usage needed for Adaptive Noise Reduction can be kept low, making it a promising option to further improve the auditory quality for \ac{CI} users.\\ \\
|
||||||
Reference in New Issue
Block a user