Visualizing the signal processing chain through the receiver is the main objective of this section. The stacked chart waveform indicator works best
because it allows timescale adjustments while maintaining synchronism among all of the displayed signals. The stacked chart emulates a strip chart recorder or
oscilloscope display, and is designed to accumulate and display one sample point generated each pass through a repetitive structure such
as a for-loop or while-loop. The Figure 6 screencast video introduces the stacked chart waveform indicator,
explains how to display multiple signals, and describes how to interact with the indicator to view selected time intervals.
Copy Transmitter.vi to a new file called TransmitterReceiver.vi. Remove the
waveform graph indicator. Add the AWGN channel and coherent receiver to this VI by translating the Figure 4 receiver block diagram.
Make a front panel control for the channel Eb/No. Embed the entire channel and receiver into a for-loop structure. Include "Programming | Timing | Wait Until Next ms Multiple"
inside the for-loop and create a front-panel control called loop delay [ms] to adjust the delay. Place the control inside the
for-loop structure so that the processing rate of the receiver can be easily adjusted. Display the following signals on a stacked chart:
- transmitted signal, s(t)
- received signal, s(t)+n(t)
- transmitter bit interval start pulse
- transmitter bit interval end pulse
- correlator output
- sample-and-hold output
- comparator output
Include a BER measurement (with util_MeasureBER.vi) to compare the transmitted and received message bitstreams.
Include Boolean indicators for the transmitted bitstream, the regenerated (received) bitstream, and the error bitstream.
Reserve space for the BER vs. Eb/No plot to be added later.
Figure 7 illustrates a suggested front-panel layout for TransmitterReceiver.vi.
Debug the combined transmitter and receiver with a high value of Eb/No such as 40dB to effectively eliminate channel noise. Ensure that the received message
is the same as the transmitted message. The BER should remain zero or nearly so, even for relatively long messages.
To confirm that the AWGN channel works properly, set the front panel controls to these exact values:
-
message length = 10,000 bits -
Eb = 1 J/bit -
Tb = 1 s -
Eb/No = 0 dB -
pulse shape = Polar NRZ -
fs = 32 Hz -
loop delay = 0 ms
The BER should be very close to 0.079 each time the VI is run; the theoretical value is 0.07865.
"Starting point collection that gathers all modules from this course"