AN2832 Freescale Semiconductor / Motorola, AN2832 Datasheet - Page 9

no-image

AN2832

Manufacturer Part Number
AN2832
Description
Packet Telephony Remote Diagnostics on the StarCore SC140 Core
Manufacturer
Freescale Semiconductor / Motorola
Datasheet
A simple MATLAB script corresponding to these steps is listed as follows (for simplicity, r
= r(n)):
2.7 Typical Results
Figure 6 and Figure 7 illustrate typical results obtained with the method described here, using the MATLAB
script. Figure 6 illustrates a multi-window impulse response generated by cascading multiple hybrid circuits.
Additive white Gaussian noise is injected at w(n) (see Figure 4) to simulate an SNR = 30 dB. The resulting
estimate presented an accuracy of at least 9 bits, estimated as follows:
Freescale Semiconductor
3.
4.
5.
ECAN must be disabled (see Figure 4). Notice that the signals are converted from serial to parallel
(S/P) and from parallel to serial (P/S), as needed.
Compute the DFT of x(n), which is typically pre-computed, and y(n): X = FFT[x(n)] and Y =
FFT[y(n)].
Use X and Y to compute H= FFT[h
conjugate.
Get the impulse response estimate of the hybrid circuit, which is the channel impulse response (CIR),
by taking the inverse discrete Fourier transform of H
N
X
X(2 : N / 2) = exp(2 * pi * j * rand(1, N / 2 -1)); % Define Random phase
X(N : -1 : N/2 + 2) = conj(X(2 : N / 2)); % Impose Hermitian symmetry
x
M
xx
for m = 1 : M
end
ho
y
y
SNR
d
yd
ya
for m = 1 : M
end
Ya
hest = real(ifft(Ya .* conj(X))); % Estimate hybrid impulse response
ye
ye
e
ep
erle = 20*log10(norm(ho) / norm(ho - hest));
Packet Telephony Remote Diagnostics on the StarCore SC140 Core, Rev. 1
= 2^10; % Set maximum echo path span to 128 ms
= ones(1, N);
= real(ifft(X)); % Generate the training signal
= 100; % Number of frames to be transmitted
= zeros(1, M * N);
= load(‘hybrid_impulse_response.txt’); % Reference impulse response
= conv(xx, ho); % Generate expected receive signal
= y(1, 1 : M * N);
= 30;
= sqrt(mean(y.^2)) * 10^(-SNR / 20) * randn(1, M * N);
= y + d; % Inject additive noise to achieve target SNR
= zeros(1, N);
= fft(ya); % Generate the FFT of the average receive signal
= conv(xx, hest);
= ye(1, 1 : M * N);
= yd - ye;
= 10*log10(mean(e.^2)) + 6.2;
xx((m - 1) * M + (1 : N)) = x;
ya = ya + ya((m - 1) * M + (1 : N)) / M;
% Target SNR (in dB)
% Generate training sequence
% Main estimation loop
% Estimate residual echo (error signal)
% Generate estimated receive signal
est
]: H
est
log
= Y / X = Y ⋅ X*, since |X|=1, where (⋅)* denotes a complex
2
(
h h
% Estimate residual echo power (dBm0)
est
est
: h
est
)
= IFFT[H
% Estimate ERLE (dB)
est
Remote Diagnostic Architecture
].
0
(n) = 0, such that x(n)
9

Related parts for AN2832