First order digital PLL for tracking constant phase offset

Considering a typical scenario where there might exist a small phase offset between local oscillator between the transmitter and receiver.

tx_rx_phase_offset.gif

Figure 1 : Transmitter receiver with constant phase offset

In such cases, it might be desirable to estimate and track the phase offset such that the performance of the receiver does not degrade.

Continue reading “First order digital PLL for tracking constant phase offset”

Sigma delta modulation

In an earlier post, it was mentioned that delta modulator without the quantizer is identical to convolving an input sequence with . Let us first try to validate that thought using a small MATLAB example and using the delta modulator circuit shown in Figure 9.13a of DSP-Proakis [1].

% delta modulation
xn = sin(2*pi*1/64*[0:63]);
xhatn = 0; 

for ii = 1:length(xn)

dn = xn(ii) - xhatn;
dqn = dn; % no quantizing done, when quantizing is done: dqn = 2*(dn>0) - 1;
xqn = dqn + xhatn; 

% dump of transmitter variables
dnDump(ii) = dn;
dqnDump(ii) = dqn;
xqnDump(ii) = xqn;
xhatnDump(ii) = xhatn; 

xhatn = xqn; %  variable storing one-sample delayed version of xn

% receiver
rn = rn + dqn;
rnDump(ii) = rn;

end 


% implementation by convolving with [1 -1] 

d1n = conv(xn,[1 -1]);
diff = (dnDump - d1n(1:64))

Continue reading “Sigma delta modulation”

Zero-order hold and first-order hold based interpolation

In problem 9.14 of DSP-Proakis, the objective is to analyze the effect of zero-order interpolation and first-order interpolation to double the number of samples in the sinusoidal

while keeping the sampling frequency unchanged.

My take:

The first part of the problem (a) is to generate the sequence having half the frequency of . For zero-order interpolation, the interpolated samples can be generated by holding the current sample till the new sampling instant (Ref: Section 9.3.1 -Sample and Hold [1]). The impulse response of such a system is a rectangular function.

Continue reading “Zero-order hold and first-order hold based interpolation”