GNU Radio
Digital Modulation
Modulation Alphabet
Digital Modulation
Digital-to-Analog Conversion
Binary ASK
Binary FSK
Binary PSK
QAM
This Lab
1.
2.
3.
4.
5.
6.
On the right side, find Random Source from Sources category. Bring it to the
main window. Double click Random Source block and change the output type to
Byte, the maximum to 2 (in case of binary ASK), number of samples to 10M, and
repeat to No.
Add Variable from Variables category and change the ID to symbol, the value to
1, -1 (in case of binary ASK).
Hint) root mean square (r.m.s.) of signal = root( (1^2 + 1^2) / 2 ) = 1
noise amplitude = sqrt ( No / 2 )
Therefore, to make SNR = 10 * log10( 1 / No ) = 0 dB, No = 1 and thus
noise amplitude is 0.707
Similarily, to make SNR = 1 dB, No = 0.7938 and thus
noise amplitude is 0.630
Add another Variable from Variables category and change the ID to value, the
value to 0, 1 (in case of binary ASK).
Add Chunks to Symbols from Misc Conversions category and change the input
type to Byte, symbol table to symbol, the dimension to 1.
Click on the out port of Random Source block and in port of Chunks to Symbols
block to make a connection.
Add Noise Source from Sources category and change the amplitude to 0.707
(amplitude can be adjusted to change SNR).
Lab homepage
http://monet.postech.ac.kr/class/lab/
11
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
Add Add from Operators category and make connections between Chunks to
Symbols and Add blocks, Noise Source and Add blocks.
Add Constellation Decoder from Modulators category and change the symbol
position to symbol, the symbol value out to value, and make a connection with
Add block.
Add Import from Misc category and change the import to import math.
Add Error Rate from Misc category and change the window size to 10M, the bits
per symbol to int(math.log(len(symbol))/math.log(2)).
Make connections between Random Source and Error Rate blocks,
Constellation Decoder and Error Rate blocks.
Add Number Sink from Graphical Sinks and change the type to Float , the title
to BER, the min value to 0, the max value to 1, the factor to 1, the decimal places
to 20, the average to On, the show gauge to Hide.
Make a connection between Error Rate and Number Sink blocks.
Add Scope Sink from Graphical Sinks category and change the XY mode to
On.
Make a connection between Add and Scope Sink blocks.
Save the grc file and Click Generate the flow graph icon. Notice that there is a
warning message at the bottom of the window. Solve this problem by adding
Throttle block properly.
12
17.
18.
19.
20.
21.
22.
8-PSK
16-QAM
13