Digital Signal Processing Reference
In-Depth Information
the interrupt routine is invoked. The receiver uses Newton's Forward interpolation
with a third-degree polynomial to interpolate the sample values [39]. The generic
expansion follows for points f 0 through f n :
() =+
[
(
)
]
[
(
)
(
)
]
px
f
u
D
f
+
uu
-
12
!
D
f
+-
uu
1
u
-
23
!
D
f
+
...
0
1
1
2
2
3
3
[
(
)
(
)
(
)
]
+-
uu
1
u
-
2
...
u
-+
n
1
n
!
D
nn
+
...
where u
x i )] and f i is the value of the function f ( n ) at x i . To inter-
polate, based on three points, this equation becomes
=
[( x
-
x i )/( x i +1
-
() =+
(
) +-
[
(
)
]
(
)
px
f
uf
-
f
uu
12
f
-+
2
f
f
0
1
0
2
1
0
Interpolating the output values significantly increases the quality of the output voice.
Possible improvements include the following:
1. At least a quadrature phase-shift keying (QPSK) scheme can be used for the
transmitter/receiver to allow much higher data rates across the channel.
2. Noise can be added to the system to increase the practicality of the project.
3. In addition to a phase estimator, a frequency estimator can be added to the
receiver. Channels can sometimes introduce frequency distortion into a signal,
and this would help the correlator to decode the modulated sequence.
10.12 BINARY PHASE SHIFT KEYING
This mini-project implements BPSK (see also Section 10.11). Two separate boards
are used, one to modulate a signal simulating the transmitter component and the
other to demodulate the received signal, simulating the receiver component.
Modulation
The modulation scheme transmits binary data using the polar nonreturn to zero
(NRZ),
1 V for the input data. The input is multiplied by a carrier signal with a fre-
quency of f c =
±
8 kHz. For input data with values of
±
1 V, the amplitude of the carrier
remains the same, but not the phase. An input of
+
1 V yields a carrier output with
a zero-phase shift, while an input of
-
1 V yields a carrier output that has been shifted
by 180°.
A 100-Hz square wave with an amplitude of
1 V is chosen as the input data.
Using a threshold detector at 0 V, it is determined from the input whether the output
signal carrier is a positive or a negative cosine. An 8-kHz cosine as the carrier is
generated using a 4-point lookup table, sampling at 32 kHz. If the sampled data are
greater than zero, then the output carrier is the generated cosine multiplied by
+
±
1; if the sampled data are less than zero, then the output carrier is the generated
cosine multiplied by
1,
or vice versa, the phase of the cosine wave is scaled by 180º. This change in phase
looks like an M or a W on an oscilloscope. Figure 10.32 shows the core of the C
-
1. Whenever the input signal switches from
+
1 to
-
Search WWH ::




Custom Search