CS434/534 Mobile Computing and Wireless Networks

CS434/534
Mobile Computing and Wireless Networks
Homework 2: Digital Transmission
Due: 9 PM, Oct. 10, 2012 by submitting through the classesv2 server. If you have
handwritten part, please scan to pdf.
2.1 Written Part
Assume that a wireless base station at a height of 100 m transmits at the unlicensed
carrier frequency of fc = 5.775 GHz. Its maximum transmit power is 1 W according to
FCC rules. Assume that the base station and receiver antenna gains are 4. We use dBm =
10 log10(power), where power is represented in mW. Thus 1 W = 30 dBm
2.1a) What is the wavelength of the wireless channel?
2.1b) What is the received signal power in dBm, in the free space, of a signal from the
base station to a receiver who is at a distance of 1 mile (1.6 km)? What is the
transmission (propagation) delay in ns?
2.1c) Assume that a receiver (e.g., D-link DWL-G650M card) has a sensitivity level of
-91 dBm, what is the maximum distance of the receiver, in the free space, from the base
station?
2.1d) Assume a realistic propagation model recommended by TIA/ANSI Joint Technical
Committee. It defines a breakpoint distance dbp = 4 hb hm/λ, where hb is the height of the
base station, hm is the height of a receiver, and λ is the wavelength. Then the path loss
(Lp=transmit power in dBm – received power in dBm) in dB is:
25 log10 d
d < d dp
⎧
⎪
d
L p = 38.1 + ⎨
25 log10 d dp + 45 log10
d > d dp
⎪
d dp
⎩
Again assume a receiver with a sensitivity level of -91 dBm, what is the maximum
distance of the receiver from the base station? Assume that the height of the receiver is
1.5 m.
2.1e) As we discussed in class (e.g., the two-path example), the frequency of small-scale
multipath fading is on the order of vc f c , where v is moving speed of the receiver. Assume
a receiver moves at a speed of 35 miles/hour. What is the cycle time (inverse of the
frequency of the small-scale fading) in ms? Please discuss briefly its impact and how to
1/3
address it.
2.1f) Assume you were asked to design a wireless network for the preceding case. How
large will you design the frame size? Here a frame is a single unit of transmission and
recovery. Please briefly justify.
2.1g) Assume delay (measured in distance) spread is 1500 m. Assume the two-path
propagation example we discussed in class but the receiver is stationary. Assume the
sender transmits a white signal: a signal consisting of pure sine/cosine waves of equal
magnitude at all frequencies. What will the power spectrum density graph look like for
the received signal at the receiver? Hint: think about the phase difference, which is a
function of frequency and delay spread. A more direct question is if I am using frequency
hopping, what should the step size be?
2.1h) For the preceding delay spread, what is a limit on the symbol rate to avoid serious
multipath ISI?
2.1i) The unlicensed spectrum at 5.7 GHz is 5.725 GHz to 5.825 GHz. For the symbol
rate you decided in the preceding question, if we use direct sequence spread spectrum
(DSSS) to spread symbols to chips and use BPSK with RRC (Root Raised Cosine) to
modulate the generated chips. What is the expansion factor (i.e. how long can the
chipping sequence be)?
2.1j) Assume that we use a high symbol rate and cause ISI with 4 taps. Please draw the
state graph for the Viterbi’s algorithm we covered in class for frame length 16. You can
skip some middle part of the graph if they just repeat, but you need to include the
beginning and end of the graph.
2.2 Modulation/Demodulation using GNURadio
2.2a) [Basic Modulation] cs434_psk_send.grc gives a starting point of implementing
basic BPSK and QPSK modulation to understand their real implementations. The
parameters are based on 802.11a, but scaled down. ‘Tx Real Sent’ displays the signal that
will be sent in the air. The program has a variable constell to, which is an array that
maps each symbol value to its phase shift. A phase shift is represented as a complex
number. The array can be set to either digital.qpsk_constellation() or
digital.bpsk_constellation(). Specifically, what is the signaling function
of BPSK for bit value 0 and 1, respectively? What is signaling function of QPSK for 00,
01, 10, and 11 respectively? To print out the values of an array, you may start a Python
interpreter at command line, and then type in statements or run a simple Python script.
2/3
2.2b) [Demodulation in Baseband] In real deployment (e.g., GNURadio with USRP),
often the radio frontend (RF) converts from carrier band to baseband. Hence, the input to
demodulation is baseband signal. The program cs434_psk_base_demod.grc shows
baseband demodulation with Gaussian noise. Please use the program to compute the bit
error rate when the noise variable is set to 0.5. Can you relate the error rate with our
derivation in class?
2.2c) [Demodulation in Carrier Frequency] We may also conduct demodulation/decoding
in the carrier band. The demodulation approach we discussed in class is matched filter.
That is, we project (correlate) received signal with both cos(2 PI fc t) and sin(2 PI fc t) to
obtain a coordinate of the received signal. We compare the coordinate with that of each
possible transmission and pick the closest (maximum likelihood).
Please implement cs434_psk_carrier_demod.py to implement this approach to
demodulate/decode the saved file from 2.2a). Your program should allow command line
options so that a user can specify the input file name and bpsk or qpsk. You will need to
demo this program to the TA.
For this part, we request that you design and implement a new GNURadio C++ block. It
takes two equal-length float vectors, and computes their inner product (correlation). For
this assignment, you will use this block to compute correlation. You may use
GNURadio’s any other blocks, e.g., constellation decoding, as you see fit, or design your
other block(s).
We recommend that you start by reading one of the tutorials listed below.
•
•
•
•
http://gnuradio.org/redmine/projects/gnuradio/wiki/OutOfTreeModules
http://www.gnu.org/software/gnuradio/doc/howto-write-a-block.html
http://radioware.nd.edu/documentation/advanced-gnuradio/writing-a-signalprocessing-block-for-gnu-radio-part-i
http://www.snowymtn.ca/GNURadio/GNURAdioDoc-11.pdf
3/3