Κωδικοποίηση Γραμμής Ψηφιακές Διαμορφώσεις M-PSK, M-QAM, FSK Καθηγητής Γεώργιος Ευθύμογλου April 6, 2019 Module Title
Εισαγωγή Κωδικοποίηση γραμμής Φασματική απόκριση Αντιστοίχιση (mapping) bits σε σύμβολα εκπομπής Αποδιαμόρφωση (demodulation) Hard decision Soft decision Σχεδιασμός σημάτων εκπομπής – Ψηφιακές Διαμορφώσεις Γεωμετρική αναπαράσταση σημάτων Επίδοση ψηφιακών διαμορφώσεων σε κανάλι με θόρυβο Module Title
Κωδικοποίηση σε παλμούς σηματοδοσίας η απεικόνιση των bits (που δημιουργεί μία πηγή πληροφορίας) σε παλμούς προς μετάδοση αποτελείται από δύο στάδια: απεικόνιση bn αn πλάτη σήματος σύμφωνα με κάποιο τρόπο κωδικοποίησης (polar, unipolar, bipolar) απεικόνιση κάθε πλάτους με συγκεκριμένη κυματομορφή παλμού ptr( ) για κάθε χρονική διάρκεια ένος συμβόλου Ts. bits bn Line Coder
Δημιουργία παλμών Non Return to Zero ROM Make Impulse h[n] = p[n] 0 -1 1 +1 binary bits a n p[n] d [n] s[n] impulse train which represents the data pulse shape defined by impulse response of FIR filter N 5N 3N 2N 4N 1 Δημιουργία παλμών Non Return to Zero
Power Spectral Density of Line Code (1/10) Η Μέση Πυκνότητα Κατανομής Ισχύος (Power Spectral Density) ενός κωδικοποιητή γραμμής (line code) δίνεται από τη σχέση: (ισχύει για Ε{αn}=0): (A) όπου Ptr(f) είναι ο μετασχηματισμός Fourier του ptr( ) και R(k) = E{αnαn+k}. O δεύτερος όρος δείχνει με ποιο τρόπο το φάσμα επηρεάζεται από τη στατιστική της ακολουθίας {αn} του πλάτους των σταθμών, που προκύπτουν ανάλογα με την απεικόνιση bn αn που επιλέγουμε. Αν θεωρήσουμε, για απλότητα, τετραγωνικούς παλμούς τότε ο πρώτος όρος του Gx(f) είναι:
Power Spectral Density of Line Code (2/10) Ο δεύτερος όρος προκύπτει ανάλογα με το είδος κωδικοποίησης που επιλέγουμε. η PSD του x(t) – NRZ-L (Polar NRZ) Οι διαφορετικοί συνδυασμοί εκπομπής bits και των αντίστοιχων πλατών για Polar NRZ, φαίνονται στον παρακάτω πίνακα (k = απόσταση σε αριθμό bits): k = 0 k 0 bnbn αnαn bnbn+k αnαn+k 00 (-A)(-A) 11 AA 01 (-A)A 10 A(-A)
Power Spectral Density of Line Code (3/10) Επομένως η (Α) μας δίνει (για τετραγωνικούς παλμούς): και η γραφική της παράσταση στο Matlab είναι: (θεωρούμε τη σταθερά Α2Τs = 1)
Power Spectral Density of Line Code (4/10) x = 0:0.01:2; g = ( sin (pi .* x)./(pi .*x)).^2; plot(x,g) (Η τελεία . σημαίνει ότι η παραπάνω έκφραση θα υπολογιστεί για κάθε στοιχείο του πίνακα x και το αποτέλεσμα να αποτελεί το αντίστοιχο στοιχείο του πίνακα g). To x = f * Ts, άρα όσο μικρότερη είναι η διάρκεια συμβόλου Τs τόσο μεγαλύτερη η συχνότητα που εμφανίζεται το 1ο null (f = 1/ Ts )
Power Spectral Density of Line Code (5/10) η PSD του x(t) – Διπολική Κωδικοποίηση (Bipolar NRZ) Με βάση τους πίνακες συνδυασμένης πιθανότητας που δίνονται παρακάτω έχουμε: R(0) = E{αk2} = (Α)2 P(αk = A) + (-Α)2 P(αk = -A) + (0)2 P(αk = 0) = (Α)2 (1/4) + (-Α)2 (1/4) + (0)2 (1/2) = (Α)2 / 2 x3 t ( ) A 1
Power Spectral Density of Line Code (6/10) [Δεχόμαστε ότι το τελευταίο 1 κωδικοποιήθηκε ως πλάτος -Α] R(1) = E{αk αk+1} = ¼ * (A)(-A) + ¼ *(0)(0) + ¼ *(A)(0) + ¼ *(0)(A) = -A2/4 αk αk+1 -A A -Α ¼ Α
Power Spectral Density of Line Code (7/10) R(2) = E{αk αk+2} = 1/8 * (0)(-A) + 1/8*(A)(-A) + ¼ *(0)(0) + ¼ *(A)(0) +1/8*(0)(A) + 1/8*(A)(A) = 0 Επίσης εύκολα αποδεικνύεται ότι R(k) = E{αn αn+k} = 0 για k >2... αk αk+2 -A A -Α 1/8 ¼ Α
Power Spectral Density of Line Code (8/10) Επομένως η (Α) μας δίνει (για τετραγωνικούς παλμούς):
Power Spectral Density of Line Code (9/10) x = 0:0.01:2; g = 0.5.*(( sin (pi .* x)./(pi .*x)).^2).*(1 - cos(2*pi.*x)); plot(x,g)
Power Spectral Density of Line Code (10/10) Από την παραπάνω γραφική παράσταση της Gx(f) παρατηρούμε ότι η Διπολική Κωδικοποίηση μπορεί να χρησιμοποιηθεί για σηματοδοσία σε βασική ζώνη χωρίς συνιστώσες DC ή κοντά στο DC. Το γεγονός αυτό καθιστά την εν λόγω κωδικοποίηση ιδανική για κανάλια με φτωχή απόκριση σε χαμηλές συχνότητες. Παρατηρούμε επίσης ότι η μέση ισχύς είναι μειωμένη σε σχέση με την Polar NRZ αφού οι μισοί παλμοί έχουν μηδενικό πλάτος. Όμως οι παλμοί που λείπουν κάνουν δύσκολη την ανάκτηση του ρολογιού.
Digital Modulation at Passband If the modulated signal has the waveform where fc is the carrier frequency, then a baseband simulation recognizes that this equals to and models only the part inside the square brackets. The modulated signal at baseband is given by sampling the complex signal
Digital Modulation at Passband Example QPSK: analyze tx signal to basis functions a1= {-1, +1} b1= {-1, +1} Tx:
Baseband and Passband signals M-PSK: σύμβολα εκποπμής I(t)+ j Q(t) signal σε βασική ζώνη (baseband) gΤ(t) κρουστική απόκριση φίλτρου για μορφοποίηση παλμού Στην προσομοίωση μοντελοποιούμε το σήμα σε βασική ζώνη (low-pass equivalent) I(t) + j Q(t) (μιγαδικοί αριθμοί)
Modulation using Gray encoding Decimal Binary Gray Gray-code values code code values 0 000 000 0 1 001 001 1 2 010 011 3 3 011 010 2 4 100 110 6 5 101 111 7 6 110 101 5 7 111 100 4
Modulation using Gray encoding Conversion from natural Binary to Gray code Consider a bit binary number with representing the index of the binary number. Let be the equivalent Gray code. 1. For , i.e, the most significant bit (MSB) of the Gray code is same as the MSB of original binary number. 2. For , i.e, bit of the Gray code is the exclusive-OR (XOR) of of the bit of the binary number and of the bit of the binary number.
Example of binary to Gray-code conversion Example: a binary ‘11101’ becomes a ‘10011’ in Gray. g(1) = b(1) g(2) = b(1) xor b(2) g(3) = b(2) xor b(3) g(4) = b(3) xor b(4) g(5) = b(4) xor b(5) The xor operation produces a 1 if the bits are different, and produces a 0 if the bits are equal.
Modulation using Gray encoding Conversion from Gray code to natural Binary Let be the bit Gray code of a binary number with representing the index of the binary number. 1. For , i.e, the most significant bit (MSB) of the Gray code is same as the MSB of original binary number. 2. For , i.e, bit of the binary number is the exclusive-OR (XOR) of the bit of the binary number and of the bit of the Gray code number.
Convert a Gray number to a binary number conversion from ‘10011’ Gray to its binary equivalent. b(1) = g(1) b(2) = b(1) xor g(2) b(3) = b(2) xor g(3) b(4) = b(3) xor g(4) b(5) = b(4) xor g(5)
Binary to Gray conversion in matlab Simulation % Binary to Gray code conversion clear; ipBin = [0:7]; % decimal equivalent of a 3-bit binary word opGray = bitxor(ipBin, floor(ipBin/2)); % decimal equivalent of the >> opGray = 0 1 3 2 6 7 5 4 % 3-bit Gray word % Gray to Binary conversion [tt ind] = sort(opGray); % sorting Gray code elements to form % the lookup table opBin = ind(opGray+1)-1; % picking elements from the array >> opBin = 0 1 2 3 4 5 6 7
16-QAM without Gray coding >>ipBin=[0:15]; >>y = qammod(ipBin, 16); >> scatterplot(y); text(real(y)+0.1, imag(y), dec2bin(ipBin)); axis([-1 1 -1 1]);
16-QAM with Gray coding >>ipBin=[0:15]; >>mapping = [3 2 0 1 7 6 4 5 15 14 12 13 11 10 8 9].'; >>sym = mapping(ipBin+1); >>y = qammod(sym, 16); >> scatterplot(y); text(real(y)+0.1, imag(y), … dec2bin(ipBin)); axis([-4 4 -4 4]);
Αντιστοίχιση (mapping) bits σε σύμβολα εκπομπής M=16; k=log2(M); N_bits = 200; msg_orig = randsrc(N_bits, 1, 0:1); mapping = [3 2 0 1 7 6 4 5 15 14 12 13 11 10 8 9].'; xsym = bi2de(reshape(msg_orig, k, length(msg_orig)/k).', 'left-msb'); sym = mapping(xsym+1); y = qammod(sym, M); y_hat = y/sqrt(10) % normalize average tx power to 1 scatterplot(y); % Plot the constellation. % Include text annotations that number the points. text(real(y)+0.1, imag(y), dec2bin(xsym)); axis([-4 4 -4 4]); % Change axis so all labels fit in plot.
Αντιστοίχιση (mapping) bits σε σύμβολα εκπομπής Scatter plot for 16-QAM
De-modulation of M-ary signals There are two distinct methods for bit recovery from modulation symbols Hard decision: the receiver estimates the received symbol and then de-maps it to the gray code bits and finally to the binary code bits (original transmitted bits). Soft decision: from the received symbols, the receiver is able to obtain soft estimates for the received bits. In this case, information about the reliability of the estimate is preserved. Soft bit values for M-ary modulations are used in soft decision Viterbi decoders, which have better bit error rate (BER) performance compared to hard decision decoders (where we first estimate the symbol and then obtain log2(M) bit values, which are input to the decoder).
Soft decision bits for 16-QAM symbols y_hat = y_hat*sqrt(10); % approximate soft value for b0 b1 b2 b3 b0_soft = real(y_hat'); b1_soft = 2 - abs(real(y_hat')); b2_soft = -imag(y_hat'); b3_soft = 2 - abs(imag(y_hat')); b0 = b0_soft > 0; b1 = b1_soft > 0; b2 = b2_soft > 0; b3 = b3_soft > 0; BitHat = [b0 b1 b2 b3]; BitHatSoft = [b0_soft b1_soft b2_soft b3_soft];
Soft decision bits for 16-QAM symbols Example for symbol (ideal case without noise) y_hat = 3.0000 - 1.0000i BitHatSoft = 3 -1 -1 1 BitHat = 1 0 0 1
Soft decision demodulation Similarly, soft decision estimates for various modulation schemes are given as follows: BPSK QPSK 16-QAM
Soft decision demodulation 64-QAM
Αποδιαμόρφωση (demodulation) Έστω ότι είναι το σύμβολο λήψης, το οποίο δίνεται ως όπου α είναι ο συντελεστής του καναλιού, s είναι το εκπεμπόμενο σύμβολο και n είναι ο θόρυβος. Η επίδραση του καναλιού διορθώνεται με το να πολλαπλασιάσουμε το λαμβανόμενο σύμβολο με α* και να κανονικοποιήσουμε διαιρώντας με την ισχύ του καναλιού Υπάρχουν δύο μέθοδοι αποδιαμόρφωσης: hard και soft
Αποδιαμόρφωση (demodulation) Η hard decision μέθοδος δίνει hard bits +1 και -1, τα οποία αντιστοιχούν στη maximum likelihood decision που επιλέγει το constellation point με την μικρότερη απόσταση από ένα δυνατό σύμβολο όπου m = 1, …, M , και Μ είναι το μέγεθος της διαμόρφωσης. Στη soft decision μέθοδο, ο αποδιαμορφωτής δίνει soft information για κάθε bit στην έξοδο του αποδιαμορφωτή. Για κάθε output bit, αντί να δίνει τιμές +1 και -1 για το bit, δίνει μία soft decision variable η οποία αν συγκριθεί με το zero threshold level, δίνει τη σωστή hard decision τιμή για το συγκεκριμένο bit.
Γεωμετρική αναπαράσταση σημάτων Τα σήματα MPSK μπορούν να εκφραστούν ως γραμμικός συνδυασμός των δύο ορθοκανονικών κυματομορφών φ1(t), φ2(t), ως εξής με Τα ανύσματα , για m = 1,2,...,M, αντιστοιχούν σε Μ διαφορετικές κυματομορφές εκπομπής, που δίνονται από τις προβολές Για MPSK
Γεωμετρική αναπαράσταση σημάτων Οι προβολές sm1 και sm2 προκύπτουν ως οι προβολές στα φ1(t) και φ2(t): θm=2π(m–1)/4, m = 1, 2, 3, 4 θm=(2m–1 )π/4, m = 1, 2, 3, 4
Παράδειγμα: QPSK (Μ=4)
BPSK Binary Phase Shift Keyeing (BPSK)
QPSK (2 orthogonal 2-PAM)
Baseband and passband signals M-PSK: σύμβολα εκποπμής I(t)+ j Q(t) signal σε βασική ζώνη (baseband) gΤ(t) κρουστική απόκριση φίλτρου για μορφοποίηση παλμού
Baseband and passband signals Example: QPSK σε βασική ζώνη – Διάγραμμα Αστερισμού I+ j Q where I & Q takes values {0.707, -0.707}
16-QAM (Quadrature Amplitude Modulation) Αποτελείται από 2 ορθογώνιες 4-PAM (Pulse Amplitude Modulation)
Μ-QAM (1/3) όπου , gΤ(t) είναι ένας παλμός με ενέργεια Εg, Am1 και Am2 είναι τα πλάτη των ορθογωνίων σημάτων που εξαρτώνται από τα δεδομένα. Εναλλακτικά ένα σήμα QAM μπορεί να παρασταθεί ως άνυσμα: όπου είναι το πλάτος και η φάση, αντίστοιχα, του m-οστού σήματος από το Μ-αδικό signal set της QAM.
Μ-QAM (2/3) Από την έκφραση αυτή είναι προφανές ότι οι κυματομορφές που προκύπτουν από τη διαμόρφωση αυτή μπορούν να θεωρηθούν ως συνδυασμός διαμόρφωσης πλάτους και φάσης. Η απόσταση του κάθε σημείου από το κέντρο των αξόνων δηλώνει το πλάτος ενώ η γωνία που σχηματίζει με τον οριζόντιο άξονα καθορίζει τη φάση του εκπεμπόμενου σήματος. Από τις παραπάνω σχέσεις επίσης προκύπτει ότι: όπου Εmin είναι η ενέργεια του σήματος με το μικρότερο πλάτος, και (αm, bm) είναι το ζευγάρι των ανεξάρτητων ακεραίων ανάλογα με τη θέση του συγκεκριμένου signal point.
Μ-QAM (3/3) Όπως στην περίπτωση των σημάτων Μ-PSK, έτσι και στο QAM, οι κυματομορφές μπορούν να παρασταθούν ως ένας γραμμικός συνδυασμός δύο ορθογώνιων κυματομορφών φ1(t) και φ2(t), Οι προβολές στη βάση δίνονται από τη σχέση όπου τα (αm, bm) είναι στοιχεία ενός L × L πίνακα που δίνεται ως: με
16-QAM (1/2) Είναι φανερό ότι το εισερχόμενο bit stream χωρίζεται σε δύο παράλληλα μέρη με ρυθμό Rb/2 το καθένα. Στη συνέχεια, για 16-QAM, κάθε 2 bits στo I και 2 bits στο Q μετατρέπονται σε 4 = 22 διαφορετικά πλάτη, έστω [-3, -1, 1, 3] (ανάλογα με το συνδυασμό 2 bit). Αυτή η διαδικασία λαβαίνει μέρος και στο inphase και στο quadrature μέρος.
16-QAM (2/2) Κατά το άθροισμά τους, παίρνουμε τα εξής σύμβολα μετάδοσης, τα οποία δίνονται παρακάτω από τις προβολές τους (αm, bm) στα I και Q: Η Ευκλείδεια απόσταση μεταξύ δύο σημείων στο διάγραμμα αστερισμού M-QAM είναι: όπου Εmin είναι η ενέργεια (τετραγωνική ρίζα του πλάτους) του πιο κοντινού συμβόλου στο διάγραμμα αστερισμού της MQAM.
M-PSK (M>4) clear; M=8; ref = [0:M-1]; ipBin = dec2bin(ref.'); % conversion from integer to phase ipPhase = ref*2*pi/M; % modulation symbols at baseband mod = exp(j*ipPhase); scatterplot(mod); text(real(mod)-0.1, imag(mod)-0.1, ipBin); axis([-1.25 1.25 -1.25 1.25]);
Αποδιαμόρφωση για M-PSK με Μ > 4 Για διαμορφώσεις Μ-PSK, υπολογίζουμε τις προβολές [r1, r2], από τις οποίες μπορούμε να βρούμε το πλάτος και τη γωνία του λαμβανομένου συμβόλου από τις σχέσεις: Απουσία θορύβου, θα έχουμε: Παρουσία θορύβου, η γωνία θ θα διαφέρει από την θm. Επειδή το πλάτος δεν αποτελεί ξεχωριστό χαρακτηριστικό για κάθε διαφορετικό σύμβολο M-PSK, η ανίχνευση με το κριτήριο μέγιστης πιθανοφάνειας ισοδυναμεί με την επιλογή του συμβόλου με την μικρότερη τιμή |θm - θ|.
Δέκτης για αποδιαμόρφωση Μ-PSK Αυτός ο κανόνας επιλέγει το σύμβολο διαμόρφωσης sm της MPSK για το οποίο το σήμα λήψης r = [r1, r2] πέφτει στην περιοχή ανίχνευσης του m-οστού συμβόλου. Απόφαση
Binary Frequency Shift Keying (BFSK) Τα δύο σήματα που χρησιμοποιούνται (Σχήμα 1.19) δίνονται παρακάτω: Binary Frequency Shift Keying (BFSK) (1 – 36) τα οποία έχουν δύο συχνότητες f1 και f2, για τις οποίες ισχύει: τα δύο σήματα έχουν δύο συχνότητες f1 και f2, για τις οποίες ισχύει:
BFSK Η ορθοκανονική βάση φ1(t) και φ2(t) αποτελείται από αυτές τις συχνότητες f1 και f2, αντίστοιχα. Αυτό φαίνεται και στο σχήμα που ακολουθεί:
Μ-αδική FSK (1/3) Γενικά, M-FSK μπορεί να εκπέμψει log2(M) bits ανά κυματομορφή Η απόσταση συχνότητας f των σημάτων εκπομπής καθορίζει το βαθμό κατά τον οποίο μπορούμε να διακρίνουμε μεταξύ M πιθανών σημάτων. Ως μέτρο ομοιότητας (ή ανομοιότητας) μεταξύ ενός ζεύγους κυματομορφών με συχνότητες f0+iΔf και f0+jΔf , χρησιμοποιείται ο correlation coefficient ij:
Μ-αδική FSK (2/3) Παρακάτω σχεδιάζουμε τη συνάρτηση από την οποία φαίνεται ποια πρέπει να είναι η επιλογή των συχνοτήτων στη διαμόρφωση FSK. -0.217 715 . T s 1 3 2 D f g ij
Μ-αδική FSK (3/3) Παρατηρούμε λοιπόν ότι: Τα δύο σήματα είναι ορθογώνια (ij = 0) όταν f είναι πολλαπλάσιο του 1/(2Ts) Ελάχιστη τιμή του ij = - 0.217 @ f = 0.715/Ts Με βάση την προηγούμενη ανάλυση έχουμε ότι για M-FSK η ορθοκανονική βάση πρέπει να αποτελείται από τα σήματα: ενώ τα σήματα εκπομπής θα πρέπει να είναι: όπου Το φάσμα εκπομπής για M-FSK είναι περίπου Μ*Δf
Differential PSK (DPSK) (1/2) Η διαφορική κωδικοποίηση έχει ως εξής: για να σταλεί το σύμβολο αk =0 μεταβάλουμε τη φάση της κυματομορφής του σήματος κατά 180 μοίρες ενώ για να σταλεί το σύμβολο αk = 1 η φάση της τρέχουσας κυματομορφής του σήματος παραμένει αμετάβλητη.
DPSK (2/2) Αντί για τα σύμβολα αk εκπέμπονται τα σύμβολα dk Ο Διαφορικός Δέκτης στηρίζεται στην διαφορά από το προηγούμενο, χωρίς να απαιτείται εκτίμηση της φάσης του φέροντος.
Additive White Gaussian Noise Ε[n2(t)]=σn2=Ν0/2 x (Amplitude) m sn + 3 - μ 60 . a f x n ( ) = 1 2 psn N ~ , b g Variance n2 = Power
Συνάρτηση πυκνότητας ισχύος AWGN Ο τύπος θορύβου ονομάζεται Αθροιστικός White Gaussian (AWGN) με Power Spectral Density που δίνεται ως k σταθερά Boltzmann = 1.38 ∙10-23 J/K = -228.6 dBW/Hz Για θερμοκρασία δωματίου Τ0=290οΚ
Συνάρτηση αυτοσυσχέτισης AWGN Από τη PSD μπορούμε να υπολογίσουμε τη συνάρτηση αυτοσυσχέτισης της διαδικασίας του AWGN, ως εξής:
Συνάρτηση αυτοσυσχέτισης και συνάρτηση πυκνότητας ισχύος clear; N = 5000; % length of random sequence M = 50; % maximum time shift in samples Rx_av = zeros(1,M+1); Sx_av = zeros(1,M+1); for j=1:10 X = randn(1,N); % randn function creates Gaussian noise samples Rx = Rx_est(X,M); Sx = abs(fft(Rx)); % abs computes the magnitude Rx_av = Rx_av + Rx; Sx_av = Sx_av + Sx; end Rx_av = Rx_av/10; Sx_av = Sx_av/10; figure(1) plot(Rx_av) xlabel('time shift m') ylabel('Rx(m)') figure(2) f = [-0.5:1/50:0.5]; % 0.5 corresponds to fs/2 plot(f,Sx_av) xlabel('frequency f') ylabel('Sx(f)') axis([-0.5 0.5 0 2])
Συνάρτηση αυτοσυσχέτισης στο Matlab function [Rx] = Rx_est(X,M) N = length(X); Rx = zeros(1,M+1); % create vector Rx with M+1 zeros for m=0:M for n=1:N-m Rx(m+1)=Rx(m+1)+X(n)*X(n+m); % shift m=0 is saved at Rx(1) end Rx(m+1)=Rx(m+1)/(N-m);
Συνάρτηση αυτοσυσχέτισης και συνάρτηση πυκνότητας ισχύος Παρατηρήστε ότι όπου =noise variance = average power των δειγμάτων που δημιουργεί η συνάρτηση randn(1,N) (Gaussian noise with mean = 0 and variance =1 ). Παρατηρήστε ότι σταθερή για όλα τα f (flat spectrum) με τιμή
Στατιστική δειγμάτων θορύβου Το παρακάτω πρόγραμμα επαληθεύει ότι η randn function creates Gaussian noise samples clear; N=100000; bins=200; rv=randn(1, N); [n xout]=hist(rv,bins); y=[max(xout), abs(min(xout))] bar(xout, n/(N*(2*max(y)/bins))) % !!!!! calculate the bin size axis([-3.5 3.5 0 0.5]) h = findobj(gca,'Type','patch'); set(h,'FaceColor','r','LineStyle',':','EdgeColor','w') hold on y = normpdf([-3.5:0.1:3.5], 0, 1); % mean = 0, variance = 1 x=-3.5:0.1:3.5; plot(x,y, '*')
Στατιστική δειγμάτων θορύβου
AWGN in time domain Στο πεδίο του χρόνου το σήμα rv = randn(1, N) μπορεί εύκολα να γίνει plot. Παρακάτω δίνονται 100 δείγματα του σήματος του Gaussian θορύβου: plot(rv(1:100))
Δέκτης συσχετισμού με συναρτήσεις βάσης t = T z r ( t ) r ( T ) T x ( × ) dt 1 1 φ ( t ) Maximum Likelihood Detector $ r ( t ) s ( t ) 1 m z r ( t ) r ( T ) T × 2 x ( ) dt 2 φ ( t ) 2
Επίδραση θορύβου στην έξοδο του δέκτη Αποδεικνύεται ότι ο όρος είναι τυχαία μεταβλητή Gaussian (όπως ο θόρυβος n(t)) με μέση τιμή και διακύμανση
Κανόνας απόφασης maximum a-posteriori probability Μά το δέκτη συσχετισμού με τις συναρτήσεις (σήματα) βάσης και με βάση το receive vector r = [r1, r2] ο ανιχνευτής (φωρατής) πρέπει να επιλέξει το σύμβολα με τη μεγαλύτερη εκ των υστέρων πιθανότητα Χρησιμοποιώντας όμως τον κανόνα του Bayes έχουμε οπότε για ισοπίθανα σύμβολα και αφού το είναι κοινό σε όλες τις εκ των υστέρων πιθανότητες, το παραπάνω κριτήριο απόπφασης ισοδυναμεί με το κριτήριο μέγιστης πιθανοφάνεις (Maximum Likelihood (ML) criterion)
Στατιστική δειγμάτων εξόδου του δέκτη Επομένως και επειδή οι όροι είναι στατιστικά ανεξάρτητοι με την ίδια διακύμανση , αν θεωρήσουμε το vector r = (r1, r2), η συνάρτηση πιθανοφάνειας θα είναι Επομένως ο maximum likelihood estimator θα επιλέξει το σύμβολο με τη μεγαλύτερη πιθανοφάνεια
Maximum Likelihood Estimator (MLE) Για να απλοποιήσουμε τους υπολογισμούς, αν πάρουμε τον λογάριθμο της συνάρτησης πιθανοφάνειας έχουμε Οπότε εύκολα προκύπτει ότι η μέγιστη πιθανοφάνεια ισοδυναμεί με την επιλογή Δηλαδή η Ευκλείδεια απόσταση μεταξύ του vector r = [r1, r2] και του ελαχιστοποιείται. ΚΡΙΤΗΡΙΟ ΑΝΙΧΝΕΥΣΗΣ: επιλέγεται το σύμβολο με τη μικρότερη Ευκλείδεια απόσταση με την έξοδο του δέκτη συσχετισμού.
Επίδραση AWGN στο διάγραμμα αστερισμού Example: QPSK σε βασική ζώνη – Διάγραμμα Αστερισμού I+ j Q where I & Q takes values {1, -1, j, -j} Χωρίς θόρυβο Με θόρυβο
BER curves vs SNR
Η συνάρτηση Q(x) Ορίζεται ως Και είναι το εμβαδό από x έως ∞ για την κανονική Gaussian κατανομή με μέση τιμή 0 και διακύμανση 1 Όλες οι πιθανότητες σφάλματος επιλογής συμβόλου λόγω AWGN μπορούν να εκφραστούν συναρτήσει της συνάρτησης Q( )
Example: BPSK detection error Region 0 Region 1 Likelihood of s0 Likelihood of s1 Decision P[r|s sent] P[r|s sent] Line 1 -√Ε √Ε P (s ) e
Probability of error – approximation (1/3) Μια ακόμα πιο απλή προσέγγιση βασισμένη στο union bound είναι να υποθέσουμε ότι σε υψηλά SNR, η είναι περίπου ίση με την πιθανότητα να γίνει λάθος με κάποιο γειτονικό σύμβολο. Εάν τα σημεία των συμβόλων χωρίζονται με μια ελάχιστη απόσταση , τότε η είναι περίπου ίση με το αριθμό των γειτονικών συμβόλων, έστω α φορές την πιθανότητα ο θόρυβος AWGN να ξεπεράσει τη τιμή /2:
Probability of error – approximation (2/3) Εφαρμόζοντας την παραπάνω προσέγγιση στη σύμφωνη M-PSK και M-QAM βρίσκουμε όπου και εξαρτώνται από τον τύπο της διαμόρφωσης. Για να μετατρέψουμε την σε , πρέπει να σκεφτούμε την αναλογία bit-to-symbol, οπότε Επίσης για M-PSK και Μ-QAM με κωδικοποίηση Gray, και σχετικά υψηλό SNR, μπορούμε να χρησιμοποιήσουμε την προσέγγιση πως ένα σφάλμα συμβόλου ( bits) θα οδηγήσει σε ένα μονό σφάλμα bit κι έτσι:
Probability of error - approximation (3/3) SER vs Es/No BER vs Eb/No BPSK QPSK M-PSK 16-QAM 64-QAM
Monte Carlo Simulation in Matlab % Modulate using 16-QAM. k=log2(M); ytx = qammod(xsym,M); % Send signal over an AWGN channel. EbNo = 10; % In dB snr = EbNo + 10*log10(k) - 10*log10(nsamp); yrx = awgn(ytx,snr,'measured'); % Demodulate signal using 16-QAM. zsym = qamdemod(yrx,M);
Signal Constellation (Διάγραμμα Αστερισμού)
Bit Error Rate (BER) for BPSK SNR(dB) -2 -1 0 1 2 3 4 BER 0.1321 0.1030 0.0783 0.0566 0.0372 0.0226 0.0127 SNR(dB) 5 6 7 8 BER 0.0054 0.0024 0.0007 0.0002