12-12-2012
Lecture 1: Narrowband and
Wideband Signals
Lecture 4:
Functions of Fourier Transforms
Lecture 6: PSD and
Autocorrelation
Lecture 7: Linear
Time-Invariant Systems
Lecture 9: Discrete
Fourier Transform
Lecture 12:
Flat Top Sampling and Summary
Lecture 13: Double Sideband
Suppressed Carrier (DSBSC) modulation
Lecture 16:
Super Heterodyne Receiver
Lecture
18: SSB with Weavers Method
Lecture 19:
FM and PM modulation
Lecture
21: Simple AM/FM demodulation
Lecture 23: Pulse Width
Modulation
Lecture 24:
Integrate and Dump
Lecture 26: Time Division
Multiplexing
Lecture
27: Baseband Digital Data and Binary Modulation
Lecture 28:
Review of Probability
Supporting functions: binarize.m, irect.m, lp_butterworth_oN_dft.m
Supporting functions: binarize.m, irect.m, lp_butterworth_oN_dft.m
Supporting functions: binarize.m, irect.m, lp_butterworth_oN_dft.m, bp_butterworth_oN_dft.m
Supporting functions: binarize.m, irect.m, lp_butterworth_oN_dft.m, bp_butterworth_oN_dft.m, GenDsssKeys.m
AfanBenNikky Nbits=65536
MinghaoW_V4 Nbits=65536
DNZ Nbits=65536
AisforAwesomeV4 Nbits=4096
MattNeal Nbits=4096
ZW Nbits=4096
vc Nbits=4096
AfanBenNikky Nbits=131072 Afan Memon, Ben Reyes, Nkiruka Uzuegbunam
MinghaoW_V5 Nbits=131072 Minghao Wang
DNZ Nbits=8192 David Smith, Zach Burns
AisforAwesomeV5 Nbits=8192 Joe Walbourn, Josh Cook, Matt Neal, Melody Burkhart
ZW Nbits= 4096 Wei Zhu
Supporting functions: binarize.m, irect.m, lp_butterworth_oN_dft.m, bp_butterworth_oN_dft.m
|
Group Name |
AM |
DSBSC |
FM |
DSSS |
Performance |
|
AfanBenNikky |
8320 |
65550 |
21840 |
2048 |
90 |
|
AisforAwesome |
8192 |
65536 |
4096 |
2048 |
77 |
|
DNZ |
8192 |
40960 |
36864 |
2048 |
90 |
|
Minghao |
4095 |
65536 |
32768 |
2048 |
84 |
|
ZW |
9 errors |
65536 |
34816 |
2048 |
74 |
|
VC |
73 errors |
65536 |
1 error |
2048 |
50 |
|
Maximum |
8320 |
65550 |
36864 |
2048 |
100 |
Project
A: Flat Top Sampling Model,
counts ¼ of the final project. That is your whole project grade counts 20%
where 15%=final project and 5% is this project A
|
Group Name |
N bits |
PERFORMANCE |
Date/Time |
Score |
|
AfanBenNikky (Afan Memon, Ben Reyes, Nkiruka Uzuegbunam) |
1344 |
WINNER |
121212-6:17pm |
100 |
|
AisforAwesome (Joe Walbourn, Josh Cook, Matt Neal, Melody Burkhart) |
1342 |
SECOND PLACE |
121212-7:12pm |
100 |
|
DNZ (David Smith, Zach Burns) |
1024 |
FOURTH PLACE |
121212-2:38pm |
88 |
|
Minghao (Minghao, Wei Zhu, Weixi Ma) |
1280 |
THIRD PLACE |
121212-2:48pm |
98 |
|
Maximum |
1344 |
100 |
||
|
Baseline EE511 |
512 |
LAST |
|
70 |
A = 30/(maxBits - 512), B = 70 - A x 512, Score = A x Nbits +B
A=0.0361, B=51.5168
SCORING:
This
is a competitive format so the scoring is based on a dynamic scale. The score is SCORE = A * Nbit + B where A and B are determined from the following
two equations:
100
= A * Nbmax + B
70
= A * 512 + B
where Nbmax is the highest number of bits transmitted and
received without error. The baseline ran at 512 bits.
Student
sends the bit matrix size, modulator and demodulator m files to instructor. All
the files sent to the instructor have the "groupname"
as a prefix so the instructor can keep the track of the individual group m
files and data.
1.
BIT MATRIX SIZE (student sends
this to instructor): The student is ranked by the total number of bits that can
be transmitted through the channel. The bit matrix is 2 dimensional. It has a
length Nbit (column dimension) and a width of Nseq (row dimension). These values, named "Nbit" and "Nseq",
along with a character string containing "groupname",
they are stored in a file called "groupname_Bsize.mat." An example m
file is
Group sends
instructor this m file to initiate test.
2.
BIT MATRIX (instructor
generates this based on groupnameBsize values): The
bit matrix is generated and stored in a file called groupname_B.mat and the
matrix is called B. A sample code that will generate a Nseq
x Nbit bit matrix B is
I
will use Bgen to generate a random sequence of bits
of the size specified by the student in "groupnameBsize.mat."
3.
MODULATOR (student sends
the modulator m file to the instructor): A modulator m file by the name
will be sent to the instructor. Its input is
the file named "groupname_B.mat." The program will create a 1 x N
real vector "s" and a Nseq
x N, bit check matrix, called "Bcheck." The
signal vector will be stored in "groupname_signal.mat" and the bit
check matrix is stored in "groupname_Bcheck.mat." The length is N=1048576=131072*8. The Bcheck matrix (Nseq x N) has 3
element values +1 for a bit value of "1" to be present, -1 for a bit
value of "0" to be present and
0 for "don't care."
4.
CHANNEL (instructor
will run this program,
on vector s). The channel will do two things, lowpass filter and then
add noise. The signal vector s0 is convolved with the Butterworth low pass
filter of order 8 and fc=(N/32), yielding a bandlimited signal vector s. It also has a bandpass componet centered at
f0=N/8. The noise is based on the value sigma=0.1*(max(s)-min(s)) and is
generated by w=sigma*randn(1,N). The noisy vector is sn=s+w.
The output of the channel will be a real one dimensional vector, "r",
of size 1xN. This r vector will be stored in groupname_r.mat.
5.
DEMODULATOR/BINARIZER (student sends the demodulator.m file to the instructor): A demodulator file
by the name
will be sent to the instructor. Its input
file is groupname_r.mat. Its output will
be a Nseq x N real matrix.
Each row of the matrix will represent the demodulated and binarized
bit stream defined in B. This output will be stored in "Bs" and saved
to the file groupname_Bs.mat. NOTE: The demodulator should also binarize the signals in Bs to have values of either 1 or 0.
6.
BIT CHECK (instructor will run bitcheck
to test the students data for errors): The
instructor will run a program that will input the groupname_B.mat file,
groupname_Bcheck.mat file and the groupname_Bs.mat file. The program will go to
each value of 1 or -1 in the Bcheck matrix and see if
the associated element in the Bs matrix is (1) if Bcheck
is 1, then Bs value must be 1 (above 0.5), (2) if Bcheck
is -1, then Bs must be 0 (below 0.5). For each element of Bcheck
that is 0 (between -0.5 and +0.5) the associated value in Bs is ignored. The
resulting values will be verified with the B matrix. To be acceptable, there
must not be any errors in either the number of ones and zeros or the specific
bit values when compared to B. The
results will be posted on the web.
Where
is a manual for MATLAB? Try the library first. Most students only use the
manual in the very beginning of their MATLAB experience. Once into it, the
language is intuitive enough and there are enough sample M files that learning
MATLAB is somewhat self-sustaining without manuals. Type "matlab" to execute intepreter,
"help ?" to see listing of operators, "help" for listing of
functions, "who" to see active variables, "what" for
listing of M files and always use "clear" to start over again.
How
do you initialize the dimension of a variable? One way is to initialize its
values by zeros(M,N) or ones(M,N). Ex: A=zeros(10,8) is a 10 x 8 matrix of zeroes. Another function
is "ones" which works the same way as "zeros". Another
method is nested loop, ie., 1:5 loops from 1 to 5 so A(1:5)=3:7 will store the values
3 to 7 in the first 5 elements of A.
V2
DATA (ABLIST12.M)
Additional
Problem HW 3: Nodal Analysis of BPF
V7 Mixer and DSBSC Description