Überschreiben der REchtschreibkorrektur
This commit is contained in:
+27
-27
@@ -7,10 +7,10 @@
|
|||||||
\acronymused{ANR}
|
\acronymused{ANR}
|
||||||
\@writefile{toc}{\contentsline {subsection}{\numberline {4.1}Low-power system architecture and integration}{42}{}\protected@file@percent }
|
\@writefile{toc}{\contentsline {subsection}{\numberline {4.1}Low-power system architecture and integration}{42}{}\protected@file@percent }
|
||||||
\AC@undonewlabel{acro:SOC}
|
\AC@undonewlabel{acro:SOC}
|
||||||
\newlabel{acro:SOC}{{4.1}{42}{}{}{}}
|
\newlabel{acro:SOC}{{4.1}{42}{}{subsection.4.1}{}}
|
||||||
\acronymused{SOC}
|
\acronymused{SOC}
|
||||||
\AC@undonewlabel{acro:ARM}
|
\AC@undonewlabel{acro:ARM}
|
||||||
\newlabel{acro:ARM}{{4.1}{42}{}{}{}}
|
\newlabel{acro:ARM}{{4.1}{42}{}{subsection.4.1}{}}
|
||||||
\acronymused{ARM}
|
\acronymused{ARM}
|
||||||
\acronymused{DSP}
|
\acronymused{DSP}
|
||||||
\acronymused{ARM}
|
\acronymused{ARM}
|
||||||
@@ -22,7 +22,7 @@
|
|||||||
\acronymused{DSP}
|
\acronymused{DSP}
|
||||||
\acronymused{DSP}
|
\acronymused{DSP}
|
||||||
\AC@undonewlabel{acro:MAC}
|
\AC@undonewlabel{acro:MAC}
|
||||||
\newlabel{acro:MAC}{{4.1.1}{42}{}{}{}}
|
\newlabel{acro:MAC}{{4.1.1}{42}{}{subsubsection.4.1.1}{}}
|
||||||
\acronymused{MAC}
|
\acronymused{MAC}
|
||||||
\acronymused{ARM}
|
\acronymused{ARM}
|
||||||
\acronymused{ANR}
|
\acronymused{ANR}
|
||||||
@@ -37,10 +37,10 @@
|
|||||||
\acronymused{ARM}
|
\acronymused{ARM}
|
||||||
\acronymused{DSP}
|
\acronymused{DSP}
|
||||||
\AC@undonewlabel{acro:DMA}
|
\AC@undonewlabel{acro:DMA}
|
||||||
\newlabel{acro:DMA}{{4.1.1}{43}{}{}{}}
|
\newlabel{acro:DMA}{{4.1.1}{43}{}{subsubsection.4.1.1}{}}
|
||||||
\acronymused{DMA}
|
\acronymused{DMA}
|
||||||
\AC@undonewlabel{acro:PCM}
|
\AC@undonewlabel{acro:PCM}
|
||||||
\newlabel{acro:PCM}{{4.1.1}{43}{}{}{}}
|
\newlabel{acro:PCM}{{4.1.1}{43}{}{subsubsection.4.1.1}{}}
|
||||||
\acronymused{PCM}
|
\acronymused{PCM}
|
||||||
\acronymused{DSP}
|
\acronymused{DSP}
|
||||||
\acronymused{PCM}
|
\acronymused{PCM}
|
||||||
@@ -51,7 +51,7 @@
|
|||||||
\acronymused{DSP}
|
\acronymused{DSP}
|
||||||
\acronymused{DSP}
|
\acronymused{DSP}
|
||||||
\AC@undonewlabel{acro:ALU}
|
\AC@undonewlabel{acro:ALU}
|
||||||
\newlabel{acro:ALU}{{4.1.1}{43}{}{}{}}
|
\newlabel{acro:ALU}{{4.1.1}{43}{}{subsubsection.4.1.1}{}}
|
||||||
\acronymused{ALU}
|
\acronymused{ALU}
|
||||||
\acronymused{DSP}
|
\acronymused{DSP}
|
||||||
\acronymused{MAC}
|
\acronymused{MAC}
|
||||||
@@ -70,7 +70,7 @@
|
|||||||
\acronymused{ARM}
|
\acronymused{ARM}
|
||||||
\acronymused{DSP}
|
\acronymused{DSP}
|
||||||
\acronymused{PCM}
|
\acronymused{PCM}
|
||||||
\newlabel{fig:fig_dsp_setup.jpg}{{32}{44}{}{}{}}
|
\newlabel{fig:fig_dsp_setup.jpg}{{32}{44}{}{figure.32}{}}
|
||||||
\acronymused{ARM}
|
\acronymused{ARM}
|
||||||
\acronymused{PCM}
|
\acronymused{PCM}
|
||||||
\acronymused{DMA}
|
\acronymused{DMA}
|
||||||
@@ -85,7 +85,7 @@
|
|||||||
\@writefile{lof}{\contentsline {figure}{\numberline {33}{\ignorespaces Simplified flowchart of the sample processing between the \ac {ARM} core and the \ac {DSP} core via interrupts and shared memory.}}{45}{}\protected@file@percent }
|
\@writefile{lof}{\contentsline {figure}{\numberline {33}{\ignorespaces Simplified flowchart of the sample processing between the \ac {ARM} core and the \ac {DSP} core via interrupts and shared memory.}}{45}{}\protected@file@percent }
|
||||||
\acronymused{ARM}
|
\acronymused{ARM}
|
||||||
\acronymused{DSP}
|
\acronymused{DSP}
|
||||||
\newlabel{fig:fig_dsp_comm.jpg}{{33}{45}{}{}{}}
|
\newlabel{fig:fig_dsp_comm.jpg}{{33}{45}{}{figure.33}{}}
|
||||||
\@writefile{toc}{\contentsline {subsection}{\numberline {4.2}Software architecture and execution flow}{45}{}\protected@file@percent }
|
\@writefile{toc}{\contentsline {subsection}{\numberline {4.2}Software architecture and execution flow}{45}{}\protected@file@percent }
|
||||||
\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.2.1}ARM–DSP communication and data exchange details}{45}{}\protected@file@percent }
|
\@writefile{toc}{\contentsline {subsubsection}{\numberline {4.2.1}ARM–DSP communication and data exchange details}{45}{}\protected@file@percent }
|
||||||
\acronymused{ANR}
|
\acronymused{ANR}
|
||||||
@@ -121,7 +121,7 @@
|
|||||||
\acronymused{DMA}
|
\acronymused{DMA}
|
||||||
\acronymused{DSP}
|
\acronymused{DSP}
|
||||||
\acronymused{ARM}
|
\acronymused{ARM}
|
||||||
\newlabel{fig:fig_dsp_dma.jpg}{{34}{47}{}{}{}}
|
\newlabel{fig:fig_dsp_dma.jpg}{{34}{47}{}{figure.34}{}}
|
||||||
\acronymused{DMA}
|
\acronymused{DMA}
|
||||||
\acronymused{DMA}
|
\acronymused{DMA}
|
||||||
\acronymused{PCM}
|
\acronymused{PCM}
|
||||||
@@ -138,10 +138,10 @@
|
|||||||
\acronymused{DSP}
|
\acronymused{DSP}
|
||||||
\acronymused{PCM}
|
\acronymused{PCM}
|
||||||
\acronymused{DSP}
|
\acronymused{DSP}
|
||||||
\newlabel{fig:fig_dps_code_memory}{{4.2.2}{48}{}{}{}}
|
\newlabel{fig:fig_dps_code_memory}{{4.2.2}{48}{}{lstnumber.-2.13}{}}
|
||||||
\@writefile{lof}{\contentsline {figure}{\numberline {35}{\ignorespaces Low-level implementation: Memory initialization and mapping}}{48}{}\protected@file@percent }
|
\@writefile{lof}{\contentsline {figure}{\numberline {35}{\ignorespaces Low-level implementation: Memory initialization and mapping}}{48}{}\protected@file@percent }
|
||||||
\@writefile{lof}{\contentsline {figure}{\numberline {36}{\ignorespaces Exemplary memory map of the 4-element input buffer array. As it is initialized as a 16-bit integer array, each element occupies 2 bytes of memory, resulting in a total size of 8 bytes for the entire array. As the DSP architecture works in 32-bit double-words, the bytewise addressing is a result of the compiler abstraction.}}{48}{}\protected@file@percent }
|
\@writefile{lof}{\contentsline {figure}{\numberline {36}{\ignorespaces Exemplary memory map of the 4-element input buffer array. As it is initialized as a 16-bit integer array, each element occupies 2 bytes of memory, resulting in a total size of 8 bytes for the entire array. As the DSP architecture works in 32-bit double-words, the bytewise addressing is a result of the compiler abstraction.}}{48}{}\protected@file@percent }
|
||||||
\newlabel{fig:fig_compiler.jpg}{{36}{48}{}{}{}}
|
\newlabel{fig:fig_compiler.jpg}{{36}{48}{}{figure.36}{}}
|
||||||
\@writefile{toc}{\contentsline {paragraph}{Main loop and interrupt handling}{48}{}\protected@file@percent }
|
\@writefile{toc}{\contentsline {paragraph}{Main loop and interrupt handling}{48}{}\protected@file@percent }
|
||||||
\acronymused{DSP}
|
\acronymused{DSP}
|
||||||
\acronymused{ANR}
|
\acronymused{ANR}
|
||||||
@@ -151,10 +151,10 @@
|
|||||||
\acronymused{ARM}
|
\acronymused{ARM}
|
||||||
\acronymused{DSP}
|
\acronymused{DSP}
|
||||||
\@writefile{lof}{\contentsline {figure}{\numberline {37}{\ignorespaces Low-level implementation: Main loop and interrupt handling}}{49}{}\protected@file@percent }
|
\@writefile{lof}{\contentsline {figure}{\numberline {37}{\ignorespaces Low-level implementation: Main loop and interrupt handling}}{49}{}\protected@file@percent }
|
||||||
\newlabel{fig:fig_dps_code_mainloop}{{37}{49}{}{}{}}
|
\newlabel{fig:fig_dps_code_mainloop}{{37}{49}{}{figure.37}{}}
|
||||||
\@writefile{lof}{\contentsline {figure}{\numberline {38}{\ignorespaces Flow diagram of the code implementation of the main loop and interrupt handling on the \ac {DSP} core.}}{50}{}\protected@file@percent }
|
\@writefile{lof}{\contentsline {figure}{\numberline {38}{\ignorespaces Flow diagram of the code implementation of the main loop and interrupt handling on the \ac {DSP} core.}}{50}{}\protected@file@percent }
|
||||||
\acronymused{DSP}
|
\acronymused{DSP}
|
||||||
\newlabel{fig:fig_dsp_logic.jpg}{{38}{50}{}{}{}}
|
\newlabel{fig:fig_dsp_logic.jpg}{{38}{50}{}{figure.38}{}}
|
||||||
\@writefile{toc}{\contentsline {paragraph}{calculate\_output()-function}{50}{}\protected@file@percent }
|
\@writefile{toc}{\contentsline {paragraph}{calculate\_output()-function}{50}{}\protected@file@percent }
|
||||||
\acronymused{DSP}
|
\acronymused{DSP}
|
||||||
\acronymused{ANR}
|
\acronymused{ANR}
|
||||||
@@ -168,11 +168,11 @@
|
|||||||
\acronymused{DSP}
|
\acronymused{DSP}
|
||||||
\acronymused{DSP}
|
\acronymused{DSP}
|
||||||
\@writefile{lof}{\contentsline {figure}{\numberline {39}{\ignorespaces Manual implementation of a max-function, returning the maximum of two integer values, taking 12 cycles to execute. The intrinsic functions of the DSP compiler allows a 4-cycle implementation of such an operation.}}{51}{}\protected@file@percent }
|
\@writefile{lof}{\contentsline {figure}{\numberline {39}{\ignorespaces Manual implementation of a max-function, returning the maximum of two integer values, taking 12 cycles to execute. The intrinsic functions of the DSP compiler allows a 4-cycle implementation of such an operation.}}{51}{}\protected@file@percent }
|
||||||
\newlabel{fig:fig_dsp_code_find_max}{{39}{51}{}{}{}}
|
\newlabel{fig:fig_dsp_code_find_max}{{39}{51}{}{figure.39}{}}
|
||||||
\@writefile{toc}{\contentsline {paragraph}{Cyclic array iteration}{51}{}\protected@file@percent }
|
\@writefile{toc}{\contentsline {paragraph}{Cyclic array iteration}{51}{}\protected@file@percent }
|
||||||
\acronymused{ANR}
|
\acronymused{ANR}
|
||||||
\@writefile{lof}{\contentsline {figure}{\numberline {40}{\ignorespaces Manual implementation of a cyclic array iteration function in C, taking the core 20 cycles to execute a pointer inremen of 1. The intrinsic functions of the DSP compiler allows a single-cycle implementation of such cyclic additions.}}{52}{}\protected@file@percent }
|
\@writefile{lof}{\contentsline {figure}{\numberline {40}{\ignorespaces Manual implementation of a cyclic array iteration function in C, taking the core 20 cycles to execute a pointer inremen of 1. The intrinsic functions of the DSP compiler allows a single-cycle implementation of such cyclic additions.}}{52}{}\protected@file@percent }
|
||||||
\newlabel{fig:fig_dsp_code_cyclic_add}{{40}{52}{}{}{}}
|
\newlabel{fig:fig_dsp_code_cyclic_add}{{40}{52}{}{figure.40}{}}
|
||||||
\acronymused{DSP}
|
\acronymused{DSP}
|
||||||
\acronymused{DSP}
|
\acronymused{DSP}
|
||||||
\@writefile{toc}{\contentsline {paragraph}{Fractional fixed-point arithmetic}{52}{}\protected@file@percent }
|
\@writefile{toc}{\contentsline {paragraph}{Fractional fixed-point arithmetic}{52}{}\protected@file@percent }
|
||||||
@@ -196,9 +196,9 @@
|
|||||||
\@writefile{lof}{\contentsline {figure}{\numberline {41}{\ignorespaces Code snippet of the $apply\_fir\_filter$-function, showing the use of the dual \ac {MAC} architecture of the \ac {DSP} and the fractional multiplication function. The loop iterates through the filter coefficients and reference noise signal samples, performing two multiplications and two additions in each cycle.}}{54}{}\protected@file@percent }
|
\@writefile{lof}{\contentsline {figure}{\numberline {41}{\ignorespaces Code snippet of the $apply\_fir\_filter$-function, showing the use of the dual \ac {MAC} architecture of the \ac {DSP} and the fractional multiplication function. The loop iterates through the filter coefficients and reference noise signal samples, performing two multiplications and two additions in each cycle.}}{54}{}\protected@file@percent }
|
||||||
\acronymused{MAC}
|
\acronymused{MAC}
|
||||||
\acronymused{DSP}
|
\acronymused{DSP}
|
||||||
\newlabel{fig:fig_dsp_code_apply_fir_filter}{{41}{54}{}{}{}}
|
\newlabel{fig:fig_dsp_code_apply_fir_filter}{{41}{54}{}{figure.41}{}}
|
||||||
\@writefile{lof}{\contentsline {figure}{\numberline {42}{\ignorespaces Visualization of the FIR filter calculation in the $apply\_fir\_filter$-function during the 2nd cyclce of a calculation loop. The reference noise signal samples are stored in the sample line, while the filter coefficients are stored in a separate memory section (filter line).}}{54}{}\protected@file@percent }
|
\@writefile{lof}{\contentsline {figure}{\numberline {42}{\ignorespaces Visualization of the FIR filter calculation in the $apply\_fir\_filter$-function during the 2nd cyclce of a calculation loop. The reference noise signal samples are stored in the sample line, while the filter coefficients are stored in a separate memory section (filter line).}}{54}{}\protected@file@percent }
|
||||||
\newlabel{fig:fig_dsp_fir_cycle.jpg}{{42}{54}{}{}{}}
|
\newlabel{fig:fig_dsp_fir_cycle.jpg}{{42}{54}{}{figure.42}{}}
|
||||||
\@writefile{toc}{\contentsline {paragraph}{update\_output}{55}{}\protected@file@percent }
|
\@writefile{toc}{\contentsline {paragraph}{update\_output}{55}{}\protected@file@percent }
|
||||||
\@writefile{toc}{\contentsline {paragraph}{update\_filter\_coefficient}{55}{}\protected@file@percent }
|
\@writefile{toc}{\contentsline {paragraph}{update\_filter\_coefficient}{55}{}\protected@file@percent }
|
||||||
\acronymused{DSP}
|
\acronymused{DSP}
|
||||||
@@ -206,20 +206,20 @@
|
|||||||
\@writefile{lof}{\contentsline {figure}{\numberline {43}{\ignorespaces Code snippet of the $update\_filter\_coefficient$-function, again making use of the dual \ac {MAC} architecture of the \ac {DSP} and the fractional multiplication function. Additionaly, 32-bit values are loaded and stored as 64-bit values, using two also intrinisc functions, allowing to update two filter coefficients in a single cycle.}}{55}{}\protected@file@percent }
|
\@writefile{lof}{\contentsline {figure}{\numberline {43}{\ignorespaces Code snippet of the $update\_filter\_coefficient$-function, again making use of the dual \ac {MAC} architecture of the \ac {DSP} and the fractional multiplication function. Additionaly, 32-bit values are loaded and stored as 64-bit values, using two also intrinisc functions, allowing to update two filter coefficients in a single cycle.}}{55}{}\protected@file@percent }
|
||||||
\acronymused{MAC}
|
\acronymused{MAC}
|
||||||
\acronymused{DSP}
|
\acronymused{DSP}
|
||||||
\newlabel{fig:fig_dsp_code_update_filter_coefficients}{{43}{55}{}{}{}}
|
\newlabel{fig:fig_dsp_code_update_filter_coefficients}{{43}{55}{}{figure.43}{}}
|
||||||
\@writefile{lof}{\contentsline {figure}{\numberline {44}{\ignorespaces Visualization of the coefficient calculation in the $update\_filter\_coefficient$-function during the 2nd cyclce of a calculation loop. The output is multiplied with the step size and the corresponding sample from the sample line, before being added to the current filter coefficient.}}{56}{}\protected@file@percent }
|
\@writefile{lof}{\contentsline {figure}{\numberline {44}{\ignorespaces Visualization of the coefficient calculation in the $update\_filter\_coefficient$-function during the 2nd cyclce of a calculation loop. The output is multiplied with the step size and the corresponding sample from the sample line, before being added to the current filter coefficient.}}{56}{}\protected@file@percent }
|
||||||
\newlabel{fig:fig_dsp_coefficient_cycle.jpg}{{44}{56}{}{}{}}
|
\newlabel{fig:fig_dsp_coefficient_cycle.jpg}{{44}{56}{}{figure.44}{}}
|
||||||
\@writefile{toc}{\contentsline {paragraph}{write\_output}{56}{}\protected@file@percent }
|
\@writefile{toc}{\contentsline {paragraph}{write\_output}{56}{}\protected@file@percent }
|
||||||
\newlabel{equation_computing}{{24}{56}{}{}{}}
|
\newlabel{equation_computing}{{24}{56}{}{equation.24}{}}
|
||||||
\newlabel{equation_c_1}{{25}{56}{}{}{}}
|
\newlabel{equation_c_1}{{25}{56}{}{equation.25}{}}
|
||||||
\newlabel{equation_c_2}{{26}{56}{}{}{}}
|
\newlabel{equation_c_2}{{26}{56}{}{equation.26}{}}
|
||||||
\newlabel{equation_c_3}{{27}{56}{}{}{}}
|
\newlabel{equation_c_3}{{27}{56}{}{equation.27}{}}
|
||||||
\newlabel{equation_c_4}{{28}{56}{}{}{}}
|
\newlabel{equation_c_4}{{28}{56}{}{equation.28}{}}
|
||||||
\newlabel{equation_c_5}{{29}{56}{}{}{}}
|
\newlabel{equation_c_5}{{29}{56}{}{equation.29}{}}
|
||||||
\newlabel{equation_computing_final}{{31}{57}{}{}{}}
|
\newlabel{equation_computing_final}{{31}{57}{}{equation.31}{}}
|
||||||
\acronymused{DSP}
|
\acronymused{DSP}
|
||||||
\@writefile{lof}{\contentsline {figure}{\numberline {45}{\ignorespaces Dependence of the total computing effort on the filter length $N$ and update rate $1/U$.}}{57}{}\protected@file@percent }
|
\@writefile{lof}{\contentsline {figure}{\numberline {45}{\ignorespaces Dependence of the total computing effort on the filter length $N$ and update rate $1/U$.}}{57}{}\protected@file@percent }
|
||||||
\newlabel{fig:fig_c_total.png}{{45}{57}{}{}{}}
|
\newlabel{fig:fig_c_total.png}{{45}{57}{}{figure.45}{}}
|
||||||
\@setckpt{chapter_04}{
|
\@setckpt{chapter_04}{
|
||||||
\setcounter{page}{58}
|
\setcounter{page}{58}
|
||||||
\setcounter{equation}{31}
|
\setcounter{equation}{31}
|
||||||
|
|||||||
-258
@@ -1,258 +0,0 @@
|
|||||||
\relax
|
|
||||||
\@writefile{toc}{\contentsline {section}{\numberline {5}Performance evaluation of different implementation variants}{58}{}\protected@file@percent }
|
|
||||||
\acronymused{DSP}
|
|
||||||
\@writefile{toc}{\contentsline {subsection}{\numberline {5.1}Verification of the \ac {DSP} implementation}{58}{}\protected@file@percent }
|
|
||||||
\acronymused{DSP}
|
|
||||||
\acronymused{ANR}
|
|
||||||
\acronymused{FIR}
|
|
||||||
\acronymused{ANR}
|
|
||||||
\acronymused{SNR}
|
|
||||||
\@writefile{lof}{\contentsline {figure}{\numberline {46}{\ignorespaces Desired signal, corrupted signal, reference noise signal and filter output of the complex \ac {ANR} use case, simulated on the \ac {DSP}}}{58}{}\protected@file@percent }
|
|
||||||
\acronymused{ANR}
|
|
||||||
\acronymused{DSP}
|
|
||||||
\newlabel{fig:fig_plot_1_dsp_complex.png}{{46}{58}{}{}{}}
|
|
||||||
\@writefile{lof}{\contentsline {figure}{\numberline {47}{\ignorespaces Error signal of the complex \ac {ANR} use case, simulated on the \ac {DSP}}}{59}{}\protected@file@percent }
|
|
||||||
\acronymused{ANR}
|
|
||||||
\acronymused{DSP}
|
|
||||||
\newlabel{fig:fig_plot_2_dsp_complex.png}{{47}{59}{}{}{}}
|
|
||||||
\@writefile{lof}{\contentsline {figure}{\numberline {48}{\ignorespaces Comparison of the high- and low-level simulation output.}}{59}{}\protected@file@percent }
|
|
||||||
\newlabel{fig:fig_high_low_comparison.png}{{48}{59}{}{}{}}
|
|
||||||
\@writefile{lof}{\contentsline {figure}{\numberline {49}{\ignorespaces Histogram of the error amplitude between the high- and low-level simulation output.}}{60}{}\protected@file@percent }
|
|
||||||
\newlabel{fig:fig_high_low_comparison_hist.png}{{49}{60}{}{}{}}
|
|
||||||
\acronymused{ANR}
|
|
||||||
\acronymused{DSP}
|
|
||||||
\acronymused{SNR}
|
|
||||||
\acronymused{DSP}
|
|
||||||
\acronymused{DSP}
|
|
||||||
\acronymused{DSP}
|
|
||||||
\acronymused{ANR}
|
|
||||||
\acronymused{DSP}
|
|
||||||
\@writefile{toc}{\contentsline {subsection}{\numberline {5.2}Determination of the optimal filter length}{60}{}\protected@file@percent }
|
|
||||||
\acronymused{CI}
|
|
||||||
\acronymused{ANR}
|
|
||||||
\acronymused{CI}
|
|
||||||
\@writefile{lof}{\contentsline {figure}{\numberline {50}{\ignorespaces Noise signals used to corrupt the desired signal in the computational efficiency evaluation}}{61}{}\protected@file@percent }
|
|
||||||
\newlabel{fig:fig_noise_signals.png}{{50}{61}{}{}{}}
|
|
||||||
\acronymused{ANR}
|
|
||||||
\acronymused{SNR}
|
|
||||||
\@writefile{lof}{\contentsline {figure}{\numberline {51}{\ignorespaces Simulation of the to be expected \ac {SNR}-Gain for different noise signals and filter lengths applied to the desired signal of a male speaker. The applied delay between the signals amounts 2ms. The graphs are smoothed by a third order savigol filter.}}{62}{}\protected@file@percent }
|
|
||||||
\acronymused{SNR}
|
|
||||||
\newlabel{fig:fig_snr_comparison.png}{{51}{62}{}{}{}}
|
|
||||||
\acronymused{SNR}
|
|
||||||
\acronymused{SNR}
|
|
||||||
\acronymused{SNR}
|
|
||||||
\acronymused{SNR}
|
|
||||||
\acronymused{SNR}
|
|
||||||
\acronymused{SNR}
|
|
||||||
\acronymused{ANR}
|
|
||||||
\acronymused{SNR}
|
|
||||||
\acronymused{ANR}
|
|
||||||
\@writefile{toc}{\contentsline {subsection}{\numberline {5.3}Evaluation of the computational load for a fixed update implementation}{62}{}\protected@file@percent }
|
|
||||||
\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.3.1}Full-Update implementation}{62}{}\protected@file@percent }
|
|
||||||
\newlabel{equation_computing_calculation_full_update}{{32}{63}{}{}{}}
|
|
||||||
\acronymused{PCM}
|
|
||||||
\acronymused{DSP}
|
|
||||||
\acronymused{DSP}
|
|
||||||
\newlabel{equation_cycle_budget}{{33}{63}{}{}{}}
|
|
||||||
\acronymused{DSP}
|
|
||||||
\newlabel{equation_load_calculation_full_update}{{34}{63}{}{}{}}
|
|
||||||
\acronymused{ANR}
|
|
||||||
\acronymused{SNR}
|
|
||||||
\acronymused{DSP}
|
|
||||||
\acronymused{DSP}
|
|
||||||
\acronymused{SNR}
|
|
||||||
\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.3.2}Reduced-update implementation for the benchmark case}{63}{}\protected@file@percent }
|
|
||||||
\acronymused{DSP}
|
|
||||||
\acronymused{SNR}
|
|
||||||
\@writefile{lof}{\contentsline {figure}{\numberline {52}{\ignorespaces Relative performance of the SNR-Gain, the cycles per samples and the DSP load in regard of the update rate of the ANR algorithm for the benchmark case. The baseline of 100\% is the full update implementation. The marked dots represent the results of the simulation for an explicit setup.}}{64}{}\protected@file@percent }
|
|
||||||
\newlabel{fig:fig_snr_update_rate.png}{{52}{64}{}{}{}}
|
|
||||||
\acronymused{SNR}
|
|
||||||
\acronymused{DSP}
|
|
||||||
\acronymused{SNR}
|
|
||||||
\acronymused{SNR}
|
|
||||||
\acronymused{DSP}
|
|
||||||
\newlabel{equation_computing_calculation_reduced_update_1}{{35}{64}{}{}{}}
|
|
||||||
\newlabel{equation_load_calculation_reduced_update_1}{{36}{64}{}{}{}}
|
|
||||||
\acronymused{DSP}
|
|
||||||
\acronymused{SNR}
|
|
||||||
\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.3.3}Reduced-update implementation for multiple noise signals}{64}{}\protected@file@percent }
|
|
||||||
\acronymused{SNR}
|
|
||||||
\@writefile{lof}{\contentsline {figure}{\numberline {53}{\ignorespaces Performance gain (distance between relative SNR-Gain and needed relative cycles/sample) in relation to the update rate of the ANR algorithm for different noise signals.}}{65}{}\protected@file@percent }
|
|
||||||
\newlabel{fig:fig_gain_update_rate.png}{{53}{65}{}{}{}}
|
|
||||||
\@writefile{lof}{\contentsline {figure}{\numberline {54}{\ignorespaces Absolute \ac {DSP} load in relation to the update rate of the ANR algorithm for different noise signals.}}{65}{}\protected@file@percent }
|
|
||||||
\acronymused{DSP}
|
|
||||||
\newlabel{fig:fig_load_update_rate.png}{{54}{65}{}{}{}}
|
|
||||||
\acronymused{DSP}
|
|
||||||
\newlabel{equation_computing_calculation_reduced_update_2}{{37}{65}{}{}{}}
|
|
||||||
\newlabel{equation_load_calculation_reduced_update_2}{{38}{66}{}{}{}}
|
|
||||||
\acronymused{DSP}
|
|
||||||
\acronymused{SNR}
|
|
||||||
\acronymused{DSP}
|
|
||||||
\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.3.4}Computational load for reduced-update implementation}{66}{}\protected@file@percent }
|
|
||||||
\@writefile{toc}{\contentsline {subsection}{\numberline {5.4}Evaluation of the computational load for an error driven implementation}{66}{}\protected@file@percent }
|
|
||||||
\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.4.1}Error threshold implementation for the benchmark case}{66}{}\protected@file@percent }
|
|
||||||
\acronymused{DSP}
|
|
||||||
\@writefile{lof}{\contentsline {figure}{\numberline {55}{\ignorespaces Relative performance of the SNR-Gain, the cycles per samples and the DSP load in regard of the fixed error threshold. The baseline is the full update variant the complex usecase. The marked dots represent the results of the simulation for an explicit setup.}}{67}{}\protected@file@percent }
|
|
||||||
\newlabel{fig:fig_snr_error_threshold.png.png}{{55}{67}{}{}{}}
|
|
||||||
\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.4.2}Error threshold implementaion for multiple noise signals}{67}{}\protected@file@percent }
|
|
||||||
\@writefile{lof}{\contentsline {figure}{\numberline {56}{\ignorespaces Relative performance of the SNR-Gain, the cycles per samples and the DSP load in regard of the fixed error threshold. The baseline is the full update variant the complex usecase. The marked dots represent the results of the simulation for an explicit setup.}}{68}{}\protected@file@percent }
|
|
||||||
\newlabel{fig:fig_gain_error_threshold.png.png}{{56}{68}{}{}{}}
|
|
||||||
\@writefile{lof}{\contentsline {figure}{\numberline {57}{\ignorespaces Relative performance of the SNR-Gain, the cycles per samples and the DSP load in regard of the fixed error threshold. The baseline is the full update variant the complex usecase. The marked dots represent the results of the simulation for an explicit setup.}}{68}{}\protected@file@percent }
|
|
||||||
\newlabel{fig:fig_load_error_threshold.png.png}{{57}{68}{}{}{}}
|
|
||||||
\acronymused{SNR}
|
|
||||||
\acronymused{DSP}
|
|
||||||
\acronymused{SNR}
|
|
||||||
\newlabel{equation_computing_calculation_error_threshold}{{39}{69}{}{}{}}
|
|
||||||
\newlabel{equation_load_calculation_error_threshold}{{40}{69}{}{}{}}
|
|
||||||
\@writefile{toc}{\contentsline {subsubsection}{\numberline {5.4.3}Computational load for error threshold implementation}{69}{}\protected@file@percent }
|
|
||||||
\@writefile{toc}{\contentsline {subsection}{\numberline {5.5}Summary of the performance evaluation}{69}{}\protected@file@percent }
|
|
||||||
\acronymused{SNR}
|
|
||||||
\@setckpt{chapter_05}{
|
|
||||||
\setcounter{page}{70}
|
|
||||||
\setcounter{equation}{40}
|
|
||||||
\setcounter{enumi}{0}
|
|
||||||
\setcounter{enumii}{0}
|
|
||||||
\setcounter{enumiii}{0}
|
|
||||||
\setcounter{enumiv}{0}
|
|
||||||
\setcounter{footnote}{0}
|
|
||||||
\setcounter{mpfootnote}{0}
|
|
||||||
\setcounter{part}{0}
|
|
||||||
\setcounter{section}{5}
|
|
||||||
\setcounter{subsection}{5}
|
|
||||||
\setcounter{subsubsection}{0}
|
|
||||||
\setcounter{paragraph}{0}
|
|
||||||
\setcounter{subparagraph}{0}
|
|
||||||
\setcounter{figure}{57}
|
|
||||||
\setcounter{table}{0}
|
|
||||||
\setcounter{float@type}{16}
|
|
||||||
\setcounter{tabx@nest}{0}
|
|
||||||
\setcounter{listtotal}{0}
|
|
||||||
\setcounter{listcount}{0}
|
|
||||||
\setcounter{liststart}{0}
|
|
||||||
\setcounter{liststop}{0}
|
|
||||||
\setcounter{citecount}{0}
|
|
||||||
\setcounter{citetotal}{0}
|
|
||||||
\setcounter{multicitecount}{0}
|
|
||||||
\setcounter{multicitetotal}{0}
|
|
||||||
\setcounter{instcount}{18}
|
|
||||||
\setcounter{maxnames}{3}
|
|
||||||
\setcounter{minnames}{1}
|
|
||||||
\setcounter{maxitems}{3}
|
|
||||||
\setcounter{minitems}{1}
|
|
||||||
\setcounter{citecounter}{0}
|
|
||||||
\setcounter{maxcitecounter}{0}
|
|
||||||
\setcounter{savedcitecounter}{0}
|
|
||||||
\setcounter{uniquelist}{0}
|
|
||||||
\setcounter{uniquename}{0}
|
|
||||||
\setcounter{refsection}{0}
|
|
||||||
\setcounter{refsegment}{0}
|
|
||||||
\setcounter{maxextratitle}{0}
|
|
||||||
\setcounter{maxextratitleyear}{0}
|
|
||||||
\setcounter{maxextraname}{3}
|
|
||||||
\setcounter{maxextradate}{0}
|
|
||||||
\setcounter{maxextraalpha}{0}
|
|
||||||
\setcounter{abbrvpenalty}{50}
|
|
||||||
\setcounter{highnamepenalty}{50}
|
|
||||||
\setcounter{lownamepenalty}{25}
|
|
||||||
\setcounter{maxparens}{3}
|
|
||||||
\setcounter{parenlevel}{0}
|
|
||||||
\setcounter{blx@maxsection}{0}
|
|
||||||
\setcounter{mincomprange}{10}
|
|
||||||
\setcounter{maxcomprange}{100000}
|
|
||||||
\setcounter{mincompwidth}{1}
|
|
||||||
\setcounter{afterword}{0}
|
|
||||||
\setcounter{savedafterword}{0}
|
|
||||||
\setcounter{annotator}{0}
|
|
||||||
\setcounter{savedannotator}{0}
|
|
||||||
\setcounter{author}{0}
|
|
||||||
\setcounter{savedauthor}{0}
|
|
||||||
\setcounter{bookauthor}{0}
|
|
||||||
\setcounter{savedbookauthor}{0}
|
|
||||||
\setcounter{commentator}{0}
|
|
||||||
\setcounter{savedcommentator}{0}
|
|
||||||
\setcounter{editor}{0}
|
|
||||||
\setcounter{savededitor}{0}
|
|
||||||
\setcounter{editora}{0}
|
|
||||||
\setcounter{savededitora}{0}
|
|
||||||
\setcounter{editorb}{0}
|
|
||||||
\setcounter{savededitorb}{0}
|
|
||||||
\setcounter{editorc}{0}
|
|
||||||
\setcounter{savededitorc}{0}
|
|
||||||
\setcounter{foreword}{0}
|
|
||||||
\setcounter{savedforeword}{0}
|
|
||||||
\setcounter{holder}{0}
|
|
||||||
\setcounter{savedholder}{0}
|
|
||||||
\setcounter{introduction}{0}
|
|
||||||
\setcounter{savedintroduction}{0}
|
|
||||||
\setcounter{namea}{0}
|
|
||||||
\setcounter{savednamea}{0}
|
|
||||||
\setcounter{nameb}{0}
|
|
||||||
\setcounter{savednameb}{0}
|
|
||||||
\setcounter{namec}{0}
|
|
||||||
\setcounter{savednamec}{0}
|
|
||||||
\setcounter{translator}{0}
|
|
||||||
\setcounter{savedtranslator}{0}
|
|
||||||
\setcounter{shortauthor}{0}
|
|
||||||
\setcounter{savedshortauthor}{0}
|
|
||||||
\setcounter{shorteditor}{0}
|
|
||||||
\setcounter{savedshorteditor}{0}
|
|
||||||
\setcounter{labelname}{0}
|
|
||||||
\setcounter{savedlabelname}{0}
|
|
||||||
\setcounter{institution}{0}
|
|
||||||
\setcounter{savedinstitution}{0}
|
|
||||||
\setcounter{lista}{0}
|
|
||||||
\setcounter{savedlista}{0}
|
|
||||||
\setcounter{listb}{0}
|
|
||||||
\setcounter{savedlistb}{0}
|
|
||||||
\setcounter{listc}{0}
|
|
||||||
\setcounter{savedlistc}{0}
|
|
||||||
\setcounter{listd}{0}
|
|
||||||
\setcounter{savedlistd}{0}
|
|
||||||
\setcounter{liste}{0}
|
|
||||||
\setcounter{savedliste}{0}
|
|
||||||
\setcounter{listf}{0}
|
|
||||||
\setcounter{savedlistf}{0}
|
|
||||||
\setcounter{location}{0}
|
|
||||||
\setcounter{savedlocation}{0}
|
|
||||||
\setcounter{organization}{0}
|
|
||||||
\setcounter{savedorganization}{0}
|
|
||||||
\setcounter{origlocation}{0}
|
|
||||||
\setcounter{savedoriglocation}{0}
|
|
||||||
\setcounter{origpublisher}{0}
|
|
||||||
\setcounter{savedorigpublisher}{0}
|
|
||||||
\setcounter{publisher}{0}
|
|
||||||
\setcounter{savedpublisher}{0}
|
|
||||||
\setcounter{language}{0}
|
|
||||||
\setcounter{savedlanguage}{0}
|
|
||||||
\setcounter{origlanguage}{0}
|
|
||||||
\setcounter{savedoriglanguage}{0}
|
|
||||||
\setcounter{pageref}{0}
|
|
||||||
\setcounter{savedpageref}{0}
|
|
||||||
\setcounter{textcitecount}{0}
|
|
||||||
\setcounter{textcitetotal}{0}
|
|
||||||
\setcounter{textcitemaxnames}{0}
|
|
||||||
\setcounter{biburlbigbreakpenalty}{100}
|
|
||||||
\setcounter{biburlbreakpenalty}{200}
|
|
||||||
\setcounter{biburlnumpenalty}{0}
|
|
||||||
\setcounter{biburlucpenalty}{0}
|
|
||||||
\setcounter{biburllcpenalty}{0}
|
|
||||||
\setcounter{smartand}{1}
|
|
||||||
\setcounter{bbx:relatedcount}{0}
|
|
||||||
\setcounter{bbx:relatedtotal}{0}
|
|
||||||
\setcounter{parentequation}{0}
|
|
||||||
\setcounter{lstnumber}{15}
|
|
||||||
\setcounter{FancyVerbLine}{0}
|
|
||||||
\setcounter{linenumber}{1}
|
|
||||||
\setcounter{LN@truepage}{69}
|
|
||||||
\setcounter{FancyVerbWriteLine}{0}
|
|
||||||
\setcounter{FancyVerbBufferLine}{0}
|
|
||||||
\setcounter{FV@TrueTabGroupLevel}{0}
|
|
||||||
\setcounter{FV@TrueTabCounter}{0}
|
|
||||||
\setcounter{FV@HighlightLinesStart}{0}
|
|
||||||
\setcounter{FV@HighlightLinesStop}{0}
|
|
||||||
\setcounter{FancyVerbLineBreakLast}{0}
|
|
||||||
\setcounter{FV@BreakBufferDepth}{0}
|
|
||||||
\setcounter{minted@FancyVerbLineTemp}{0}
|
|
||||||
\setcounter{listing}{0}
|
|
||||||
\setcounter{lstlisting}{0}
|
|
||||||
}
|
|
||||||
+2
-2
@@ -27,10 +27,10 @@ To verify the general performance of the \ac{DSP}-implemented \ac{ANR} algorithm
|
|||||||
\end{figure}
|
\end{figure}
|
||||||
\noindent Figure \ref{fig:fig_plot_1_dsp_complex.png} and \ref{fig:fig_plot_2_dsp_complex.png} show the results of the complex \ac{ANR} use case, simulated on the \ac{DSP} - with a \ac{SNR}-Gain of 10.26 dB it performs equivalent sucessful as the one of the high-level implementation. Figure \ref{fig:fig_high_low_comparison.png} shows both outputs seperately and then together in one subfigure, together with the plotted error amplitude. Figure \ref{fig:fig_high_low_comparison_hist.png} feautres a histogram of the error amplitude between the high- and low-level implemenation, indicating the correct functionality of the \ac{DSP} implementation. The small deviations can be explained by the fact that the \ac{DSP} implementation is based on fixed-point arithmetic, which leads to a slightly different convergence behavior. Nevertheless, the results show that the \ac{DSP} implementation of the \ac{ANR} algorithm is able to achieve the same performance as the high-level implementation. The next step is of evaluate the performance of the \ac{DSP} implementation in terms of computational efficiency under different scenarios and non-synchrone signals.
|
\noindent Figure \ref{fig:fig_plot_1_dsp_complex.png} and \ref{fig:fig_plot_2_dsp_complex.png} show the results of the complex \ac{ANR} use case, simulated on the \ac{DSP} - with a \ac{SNR}-Gain of 10.26 dB it performs equivalent sucessful as the one of the high-level implementation. Figure \ref{fig:fig_high_low_comparison.png} shows both outputs seperately and then together in one subfigure, together with the plotted error amplitude. Figure \ref{fig:fig_high_low_comparison_hist.png} feautres a histogram of the error amplitude between the high- and low-level implemenation, indicating the correct functionality of the \ac{DSP} implementation. The small deviations can be explained by the fact that the \ac{DSP} implementation is based on fixed-point arithmetic, which leads to a slightly different convergence behavior. Nevertheless, the results show that the \ac{DSP} implementation of the \ac{ANR} algorithm is able to achieve the same performance as the high-level implementation. The next step is of evaluate the performance of the \ac{DSP} implementation in terms of computational efficiency under different scenarios and non-synchrone signals.
|
||||||
\subsection{Determination of the optimal filter length}
|
\subsection{Determination of the optimal filter length}
|
||||||
\noindent The main focus for evaluating the computational efficiency is the determination of the optimal filter length. To achieve this goal, different signal combinations, which are to be expected everyday situiations for a \ac{CI} patient, are considered. Again, a delay of 2 ms bewteen the corruption noise signal and the reference noise signal is applied, increasing the need for a longer filter. The desired signal of a male voice over speaker is now corrupted with 5 different noise signals, ruling out, that a certain combination of signals is not representative for the overall performance of the \ac{ANR} algorithm:
|
\noindent The main focus for evaluating the computational efficiency is the determination of the optimal filter length. To achieve this goal, different signal combinations, which are to be expected every day situiations for a \ac{CI} patient, are considered. Again, a delay of 2 ms bewteen the corruption noise signal and the reference noise signal is applied, increasing the need for a longer filter. The desired signal of a male voice is now corrupted with 5 different noise signals, ruling out, that a certain combination of signals is not representative for the overall performance of the \ac{ANR} algorithm:
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Breathing noise: Already used in the high-level implementation, this noise signal is a typical noise source for \ac{CI} patients, especially in quiet environments. It consists out of slowly rising and falling maxima.
|
\item Breathing noise: Already used in the high-level implementation, this noise signal is a typical noise source for \ac{CI} patients, especially in quiet environments. It consists out of slowly rising and falling maxima.
|
||||||
\item Coughing noise: This noise signal is generated by coughing and consists out few, but long lasting maxima, showing similarities to a rectangular function.
|
\item Coughing noise: This noise signal is generated by coughing and consists out few, but long-lasting maxima, showing similarities to a rectangular function.
|
||||||
\item Scratching noise: This noise signal is generated by scratching some material with finger nails, like the hair or clothes. It consists out of a high number of sharp peaks.
|
\item Scratching noise: This noise signal is generated by scratching some material with finger nails, like the hair or clothes. It consists out of a high number of sharp peaks.
|
||||||
\item Drinking Noise: This noise signal is generated by swallowing a liquid and consists out of a low number of sharp peaks, featuring long pauses between them.
|
\item Drinking Noise: This noise signal is generated by swallowing a liquid and consists out of a low number of sharp peaks, featuring long pauses between them.
|
||||||
\item Chewing Noise: This noise signal is generated by consuming food and consists out of a high number of peaks of different amplitude.
|
\item Chewing Noise: This noise signal is generated by consuming food and consists out of a high number of peaks of different amplitude.
|
||||||
|
|||||||
Reference in New Issue
Block a user