Mô phỏng truyền tín hiệu số qua kênh awgn

Xét một số kĩ thuật điểu chế và giải điều chế số băng gốc truyền thông tin số qua AWGN gồm: - Điều chế xung nhị phân và một số phương pháp điều chế không nhị phân. - Máy thu tối ưu và đánh giá hiệu năng ở dạng xác suất lỗi trung bình. - Truyền tin số bằng cách dùng các dạng sóng tín hiệu thích hợp, khi đó mỗi dạng sóng tải nhiều bit tin nghĩa là có thể truyền nhiều bit trên một dạng sóng tín hiệu. Ví dụ: đối với BPSK thì mỗi dạng sóng truyền một bit tin, M-QAM cho phép truyền k=log2M bit tin trên một dạng sóng. Vì vậy cần phải xắp xếp các bit tin vào các dạng sóng này trước khi điều chế sóng mang cao tần, chúng được xử lý trong miền băng tần cơ sở. Mô hình hóa và Mô phỏng hệ thống Truyền tín hiệu nhị phân trên qua kênh awGN Trong hệ thống truyền tin nhị phân, dữ liệu nhị phân gồm dãy các số 0 và 1 được truyền đi bằng hai dạng sóng s0(t) và s1(t). Giả sử (1) Tốc độ dữ liệu truyền là R =1/Tb bit/s (Tơb=1/R là khoảng thời gian của một bit), được sắp xếp vào dạng sóng tín hiệu ; (2) Xác suất truyền các bit 0 và 1 là bằng nhau ( nghĩa là P(0) = P(1) = 1/2) và độc lập thống kê tương hỗ nhau ; (3) Tín hiệu si(t) qua kênh AWGN, n(t) là một hàm mẫu của quá trình ngẫu nhiên Gauss trắng có phổ công xuất (mật độ phổ cóng suất PSD) là N0/2 W/Hz, dạng sóng tín hiệu thu là (5.2.1) Nhiệm vụ của máy thu là xác định xem bit 0 hay bit 1 đã được truyền qua kênh sau khi quan trắc tín hiệu thu r(t) trong khoảng thời gian 0≤ t ≤ Tb. Máy thu được thiết kế để giảm thiểu xác suất thu lỗi được gọi là máy thu tối ưu.

doc16 trang | Chia sẻ: banmai | Lượt xem: 3209 | Lượt tải: 5download
Bạn đang xem nội dung tài liệu Mô phỏng truyền tín hiệu số qua kênh awgn, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
M« pháng truyÒn tÝn hiÖu sè qua kªnh awgn 5.1. giíi thiÖu XÐt mét sè kÜ thuËt ®iÓu chÕ vµ gi¶i ®iÒu chÕ sè b¨ng gèc truyÒn th«ng tin sè qua AWGN gåm: §iÒu chÕ xung nhÞ ph©n vµ mét sè ph­¬ng ph¸p ®iÒu chÕ kh«ng nhÞ ph©n. M¸y thu tèi ­u vµ ®¸nh gi¸ hiÖu n¨ng ë d¹ng x¸c suÊt lçi trung b×nh. TruyÒn tin sè b»ng c¸ch dïng c¸c d¹ng sãng tÝn hiÖu thÝch hîp, khi ®ã mçi d¹ng sãng t¶i nhiÒu bit tin nghÜa lµ cã thÓ truyÒn nhiÒu bit trªn mét d¹ng sãng tÝn hiÖu. VÝ dô: ®èi víi BPSK th× mçi d¹ng sãng truyÒn mét bit tin, M-QAM cho phÐp truyÒn k=log2M bit tin trªn mét d¹ng sãng. V× vËy cÇn ph¶i x¾p xÕp c¸c bit tin vµo c¸c d¹ng sãng nµy tr­íc khi ®iÒu chÕ sãng mang cao tÇn, chóng ®­îc xö lý trong miÒn b¨ng tÇn c¬ së. 5.2. m« h×nh hãa vµ M« pháng hÖ thèng TruyÒn tÝn hiÖu nhÞ ph©n trªn qua kªnh awGN Trong hÖ thèng truyÒn tin nhÞ ph©n, d÷ liÖu nhÞ ph©n gåm d·y c¸c sè 0 vµ 1 ®­îc truyÒn ®i b»ng hai d¹ng sãng s0(t) vµ s1(t). Gi¶ sö (1) Tèc ®é d÷ liÖu truyÒn lµ R =1/Tb bit/s (Tb=1/R lµ kho¶ng thêi gian cña mét bit), ®­îc s¾p xÕp vµo d¹ng sãng tÝn hiÖu  ; (2) X¸c suÊt truyÒn c¸c bit 0 vµ 1 lµ b»ng nhau ( nghÜa lµ P(0) = P(1) = 1/2) vµ ®éc lËp thèng kª t­¬ng hç nhau ; (3) TÝn hiÖu si(t) qua kªnh AWGN, n(t) lµ mét hµm mÉu cña qu¸ tr×nh ngÉu nhiªn Gauss tr¾ng cã phæ c«ng xuÊt (mËt ®é phæ cãng suÊt PSD) lµ N0/2 W/Hz, d¹ng sãng tÝn hiÖu thu lµ (5.2.1) NhiÖm vô cña m¸y thu lµ x¸c ®Þnh xem bit 0 hay bit 1 ®· ®­îc truyÒn qua kªnh sau khi quan tr¾c tÝn hiÖu thu r(t) trong kho¶ng thêi gian 0≤ t ≤ Tb. M¸y thu ®­îc thiÕt kÕ ®Ó gi¶m thiÓu x¸c suÊt thu lçi ®­îc gäi lµ m¸y thu tèi ­u. 5.2.1 M¸y thu tèi ­u ®èi víi tÝn hiÖu trùc giao §Þnh nghÜa: Hai d¹ng sãng tÝn hiÖu si(t) & sj (t) ®­îc gäi lµ trùc giao nhau nÕu tho¶ m·n ®iÒu kiÖn trong ®ã E lµ n¨ng l­îng tÝn hiÖu. H×nh 5.1(a) minh ho¹ d¹ng sãng tÝn hiÖu trùc giao s0(t) vµ s1(t) ®iÓn h×nh. H×nh 5.1: CÊu tróc m¸y thu tèi ­u ®èi víi tÝn hiÖu trùc giao ThiÕt kÕ c¸c khèi chøc n¨ng CÊu tróc m¸y thu tèi ­u ®èi víi kªnh AWGN ®­îc cho ë h×nh 5.1(b) gåm 2 khèi c¬ b¶n: Mét mét bé t­¬ng quan (hoÆc mét m¹ch läc phèi hîp cÇn l­u ý t¹i thêi ®iÓm lÊy mÉu t=Tb, tÝn hiÖu ra bé läc phèi hîp b»ng tÝn hiÖu ra cña bé t­¬ng quan) vµ mét bé t¸ch tÝn hiÖu. Bé t­¬ng quan tÝn hiÖu Bé t­¬ng quan thùc hiÖn lÊy t­¬ng quan gi÷a tÝn hiÖu thu r(t) víi hai tÝn hiÖu ®· ®­îc truyÒn s0(t) vµ s1(t). Theo ®ã, ta ®­îc (5.2.2) sau ®ã lÊy mÉu tÝn hiÖu r0(t) vµ r1(t) t¹i thêi ®iÓm t=Tb råi ®­a vµo bé t¸ch tÝn hiÖu. NÕu tÝn hiÖu thu r(t) ®­îc xö lÝ bëi hai bé t­¬ng quan tÝn hiÖu nh­ trªn h×nh 5.1(b) th× c¸c tÝn hiÖu ra r0 vµ r1 t¹i thêi ®iÓm lÊy mÉu t= Tb lµ NÕu truyÒn tÝn hiÖu s0(t) qua kªnh, th× tÝn hiÖu thu lµ r(t) = s0(t) + n(t) 0≤ t ≤ Tb (5.23) (5.2.4) (5.25) trong ®ã E = A2T lµ n¨ng l­îng cña c¸c tÝn hiÖu s0(t) vµ s1(t); n0 vµ n1 lµ c¸c thµnh phÇn t¹p ©m t¹i ®Çu ra cña c¸c bé t­¬ng quan. Nh­ vËy, khi truyÒn tÝn hiÖu s0(t) qua kªnh AWGN t¹i thêi ®iÓm lÊy mÉu t =Tb nhËn ®­îc tÝn hiÖu ë ®Çu ra hai bé t­¬ng quan lµ. (2.28a) NÕu truyÒn tÝn hiÖu s1(t) qua kªnh, th× tÝn hiÖu thu lµ T­¬ng tù tÝnh nh­ trªn tÝn hiÖu ë ®Çu ra cña hai bé t­¬ng quan t¹i thêi ®iÓm lÊy mÉu t = Tb lµ (5.28b) C¸c tÝn hiÖu ra bé t­¬ng quan khi kh«ng cã t¹p ©m trong kho¶ng 0≤ t ≤ Tb t­¬ng øng víi viÖc ph¸t s0(t) vµ s1(t) ®­îc cho ë h×nh 5.1(c). Thµnh phÇn t¹p ©m vµ ¶nh h­ëng lªn tÝn hiÖu t¹i ®Çu vµo bé t¸ch sãng Do n(t) lµ mét hµm mÉu cña mét qu¸ tr×nh Gauss tr¾ng cã phæ c«ng xuÊt b»ng N0/2 nªn c¸c thµnh phÇn n0 vµ n1 lµ c¸c biÕn ngÉu nhiªn ph©n bè Gauss cã E[ni] = 0 vµ Var[ni] = EN0/2 (i = 0,1), nghÜa lµ (5.2.9) ph­¬ng sai Var[ni] = , víi i=0,1 (5.2.10 & 5.2.11) V× vËy, NÕu ph¸t s0(t), th× r0 lµ biÕn ngÉu nhiªn Gauss cã E[r0] =E vµ Var[r0] =s2 cßn r1 lµ biÕn ngÉu nhiªn Gauss E[r0] = 0 vµ Var[r0] =s2, hµm mËt ®é x¸c suÊt cña r0 vµ r1 kÝ hiÖu lµ p(r0|0) vµ p(r1|0) ®­îc cho bëi (5.2.12) vµ ®­îc minh ho¹ bëi h×nh 5.4 t­¬ng øng (5.2.12) NÕu ph¸t s1(t), th× r0 lµ biÕn ngÉu nhiªn Gauss cã E[r0] = 0 vµ Var[r0]=s2 cßn r1 lµ mét biÕn ngÉu nhiªn Gauss cã E[r1] = E vµ Var[r1] = s2 (Note Var[r0] = Var[r1] = s2). Bé t¸ch sãng Bé t¸ch sãng quan tr¾c tÝn hiÖu r0 vµ r1 t¹i ®Çu ra bé t­¬ng quan ®Ó quyÕt ®Þnh tÝn hiÖu s0(t) hay s1(t) ®· truyÒn qua kªnh (t­¬ng øng víi bit 0 hay bit 1). XÐt bé t¸ch tÝn hiÖu vµ x¸c ®Þnh x¸c suÊt lçi nÕu cho d¹ng sãng tÝn hiÖu truyÒn qua kªnh ®­îc cho ë h×nh 5.1(a), chóng ®ång x¸c suÊt vµ cïng n¨ng l­îng. Khi nµy, bé t¸ch sãng tèi ­u so s¸nh r0 vµ r1 råi quyÕt ®Þnh bit 0 hay bit 1 ®· ®­îc truyÒn qua kªnh theo nguyªn t¾c , theo ®ã NÕu truyÒn tÝn hiÖu s0(t) qua kªnh, th× x¸c suÊt lçi sÏ lµ (5.2.19) Do n1 vµ n0 lµ c¸c biÕn ngÉu nhiªn Gauss cã trung b×nh kh«ng, nªn xº n1-n0 còng lµ mét biÕn ngÉu nhiªn Gauss cã E[x] = 0 vµ ph­¬ng sai lµ (5.2.20) do tÝnh trùc giao cña d¹ng sãng tÝn hiÖu s0(t) vµ s1(t) nªn E[n1n0] = 0 v× (5.2.21) KÕt qu¶ nhËn ®­îc (5.2.22) Do vËy, x¸c suÊt lçi lµ (5.2.23) TØ sè E/N0 ®­îc gäi lµ tØ sè tÝn trªn t¹p ©m SNR NÕu truyÒn s1(t) qua kªnh, c¸ch tÝnh x¸c suÊt lçi hoµn toµn t­¬ng tù trªn vµ nhËn ®­îc cïng kÕt qu¶ (5.2.23). MÆt kh¸c, do gi¶ thiÕt x¸c suÊt xuÊt hiÖn c¸c bit 0 vµ 1 trong d·y d÷ liÖu lµ b»ng nhau nªn x¸c suÊt lçi trung b×nh ®óng b»ng x¸c suÊt lçi ®· ®­îc cho bëi (5.2.23). LËp m« h×nh m« pháng vµ ch­¬ng tr×nh m« pháng §­íi ®©y, tr×nh bµy tãm t¾t qu¸ tr×nh m« pháng BER cho hÖ thèng truyÒn tÝn hiÖu trùc giao. Sö dông m« h×nh m« pháng ®­îc cho trªn h×nh 5.2 ®Ó ­íc tÝnh BER vµ c«ng thøc (5.2.23) ®Ó vÏ ®å thÞ Pe theo SNR ®èi víi hÖ thèng truyÒn tin nhÞ ph©n dïng c¸c bé t­¬ng quan tÝn hiÖu. H×nh 5.2 M« h×nh m« pháng BER ®èi víi hÖ thèng truyÒn tin nhÞ ph©n Tãm t¾t qu¸ tr×nh m« pháng nh­ sau: Pháng t¹o c¸c biÕn ngÉu nhiªn r0 vµ r1 ®Ó ®­a vµo bé t¸ch sãng tÝn hiÖu. Muèn vËy, cÇn ph¶i t¹o mét d·y bit nhÞ ph©n 0 vµ 1 ®ång x¸c suÊt vµ ®éc lËp thèng kª t­¬ng hç nhau. V× vËy, ta sö dông mét bé t¹o sè ngÉu nhiªn ®Ó t¹o ra sè ngÉu nhiªn ph©n bè ®Òu trong kho¶ng (0,1), dùa vµo sè ngÉu nhiªn ph©n bè ®Òu x nµy t¹o chuçi sè c¬ hai 0 vµ 1 theo nguyªn t¾c, nÕu sè ngÉu nhiªn cã gi¸ trÞ trong kho¶ng (0 < x < 0,5) th× nguån d÷ liÖu c¬ hai lµ bit "0" vµ ng­îc l¹i sè ngÉu nhiªn cã trÞ trong kho¶ng (0,5 < x < 1), th× lèi ra cña nguån d÷ liÖu c¬ hai lµ bit "1". NÕu mét bit 0 ®­îc t¹o ra th× r0 =E + n0 vµ r1=n1. Cßn nÕu mét bit 1 ®­îc t¹o ra th× r0 = n0 vµ r1= E + n1. Pháng t¹o kªnh AWGN. Muèn vËy, c¸c thµnh phÇn t¹p ©m céng ni (i=0,1) ®­îc t¹o ra b»ng hai bé t¹o t¹p ©m Gauss, chóng cã trung b×nh E[ni]=0 vµ ph­¬ng sai Var[ni] = s2 = EN0/2. V× x¸c suÊt lçi ®­îc m« pháng lµ hµm cña tØ sè tÝn hiÖu trªn t¹p ©m SNR = E/N0, nªn ®Ó tiÖn cho viÖc m« pháng ta chuÈn ho¸ n¨ng l­îng tÝn hiÖu E =1 vµ cho s2 biÕn thiªn. Theo ®ã SNR ®­îc tÝnh bëi TÝn hiÖu lèi ra bé t¸ch tÝn hiÖu ®­îc so s¸nh víi chuçi bit nhÞ ph©n ®· ®­îc truyÒn qua kªnh AWGN, dïng bé ®Õm lçi ®Ó ®Õm sè c¸c lçi bit vµ lËp tØ sè tÝnh BER. Ch¼ng h¹n, truyÒn N=10000 bit qua kªnh AWGN t¹i c¸c møc kh¸c nhau cña SNR (l­u ý øng víi mçi gi¸ trÞ cña SNR lµ gi¸ trÞ ph­¬ng sai s2 cña t¹p ©m ni t¸c ®éng vµo bit truyÒn qua kªnh theo nguyªn t¾c céng theo ®ã sÏ nhËn ®­îc gi¸ trÞ BER t­¬ng øng). Ch­¬ng tr×nh m« pháng BER theo m« h×nh h×nh 5.2 vµ tÝnh to¸n lý thuyÕt theo (5.2.23) ®­îc viÕt b»ng Matlab, kÕt qu¶ ®­îc cho ë h×nh 5.3. ThÊy râ sù khíp nhau gi÷a c¸c kÕt qu¶ m« pháng vµ gi¸ trÞ tÝnh to¸n lý thuyÕt. Ch­¬ng tr×nh Matlab ®­îc cho ë file : D06VT_BER_Orthogonal_signal.m H×nh 5.3 X¸c suÊt lçi m« pháng vµ x¸csuÊt lçi tÝnh to¸n ®èi víi hÖ thèng truyÒn tÝn hiÖu trùc giao trªn kªnh AWGN 5.2.2. M¸y thu tèi ­u ®èi víi tÝn hiÖu ®èi cùc (Antipodal Signals) §Þnh nghÜa: Hai d¹ng sãng tÝn hiÖu ®­îc gäi lµ ®èi cùc nÕu d¹ng sãng tÝn hiÖu nµy b»ng ©m cña d¹ng sãng tÝn hiÖu kia. H×nh 5.4(a) minh ho¹ hai cÆp tÝn hiÖu ®èi cùc nhau. ThiÕt kÕ c¸c khèi chøc n¨ng Ta dïng cÊu tróc m¸y thu tèi ­u ®­îc cho h×nh 4.6(b) ®Ó kh«i phôc th«ng tin nhÞ ph©n tõ d¹ng sãng tÝn hiÖu ®èi cùc h×nh 5.4(a). NÕu dïng d¹ng sãng tÝn hiÖu ®èi cùc s0(t) = s(t) vµ s1(t) = -s(t) ®Ó truyÒn tin nhÞ ph©n (trong ®ã s(t) lµ mét d¹ng sãng tuú ý cã n¨ng l­îng E), th× tÝn hiÖu thu t¹i ®Çu ra kªnh AWGN lµ (5.2.24) H×nh 5.4 CÊu tróc m¸y thu tèi ­u ®èi víi c¸c tÝn hiÖu ®èi cùc NÕu truyÒn s(t) qua kªnh AWGN, th× tÝn hiÖu thu lµ (5.2.25) TÝn hiÖu ra cña bé t­¬ng quan (hay bé läc phèi hîp) t¹i thêi ®iÓm lÊy mÉu t=Tb lµ (5.2.26) trong ®ã, n¨ng l­îng tÝn hiÖu E vµ thµnh phÇn t¹p ©m céng n ®­îc tÝnh theo (5.2.27) V× qu¸ tr×nh t¹p ©m céng cã trung b×nh 0 nªn E[n] = 0 vµ ph­¬ng sai cña thµnh phÇn t¹p ©m n lµ (5.2.28) Theo ®ã, hµm mËt ®é x¸c suÊt cña r khi truyÒn s(t) qua kªnh lµ (2.2.29) NÕu truyÒn -s(t) qua kªnh AWGN, th× tÝn hiÖu thu lµ T­¬ng tù nh­ trªn, tÝn hiÖu lèi vµo bé t¸ch tÝn hiÖu sÏ lµ (2.2.30) vµ hµm mËt ®é x¸c suÊt cña r lµ (2.2.31) Hai hµm mËt ®é x¸c suÊt nµy ®­îc minh ho¹ trªn h×nh 5.4(c) V× c¸c d¹ng sãng tÝn hiÖu ®ång x¸c suÊt, nªn bé t¸ch tÝn hiÖu tèi ­u thùc hiÖn so s¸nh tÝn hiÖu ra bé t­¬ng quan r víi ng­ìng quyÕt ®Þnh (tr­êng hîp nµy ng­ìng quyÕt ®Þnh b»ng 0) vµ thùc hiÖn quyÕt ®Þnh tÝn hiÖu ra theo nguyªn t¾c. NÕu r > 0, bé t¸ch sãng quyÕt ®Þnh s(t) ®· ®­îc truyÒn qua kªnh. NÕu r <0, bé t¸ch tÝn hiÖu sÏ quyÕt ®Þnh –s(t) ®· ®­îc truyÒn qua kªnh. X¸c suÊt lçi t¸ch sãng. XÐt x¸c suÊt lçi víi ®iÒu kiÖn kªnh AWGN, d­íi t¸c ®éng t¹p ©m lµm cho viÖc quyÕt ®Þnh tÝn hiÖu ra bÞ lçi ®­îc tÝnh nh­ sau NÕu s(t) ®· ®­îc truyÒn qua kªnh, th× x¸c suÊt lçi lµ x¸c suÊt cña sù kiÖn r < 0, nghÜa lµ (5.2.32) NÕu -s(t) ®· ®­îc truyÒn qua kªnh, th× x¸c suÊt lçi lµ x¸c suÊt cña sù kiÖn r>0, thùc hiÖn t­¬ng tù nh­ trªn, nhËn ®­îc cïng mét kÕt qu¶ theo (5.2.32). V× hai d¹ng sãng tÝn hiÖu ®ång x¸c suÊt nªn x¸c suÊt lçi trung b×nh còng ®­îc cho bëi (5.2.32). NhËn xÐt: So s¸nh hai hÖ thèng truyÒn nhÞ ph©n HÖ thèng tÝn hiÖu trùc giao HÖ thèng tÝn hiÖu ®èi cùc §Ó cã cïng hiÖu n¨ng vÒ x¸c suÊt lçi th× ë ph­¬ng ph¸p tÝn hiÖu trùc giao ph¸t n¨ng l­îng lín gÊp hai lÇn so víi tÝn hiÖu ®èi cùc. Do vËy c¸c tÝn hiÖu ®èi cùc hiÖu qu¶ h¬n c¸c c¸c tÝn hiÖu trùc giao 3 dB. LËp m« h×nh m« pháng M« pháng ®Ó ­íc tÝnh vµ vÏ ®å thÞ hiÖu n¨ng x¸c suÊt lçi cho hÖ thèng BPSK dïng tÝn hiÖu ®èi cùc ®­îc cho trªn h×nh 5.5. Qu¸ tr×nh m« pháng hiÖu n¨ng x¸c suÊt lçi ®­îc tiÕn hµnh nh­ sau: (1) Tr­íc hÕt t¹o biÕn ngÉu nhiªn r ®­a ®Õn ®Çu vµo bé t¸ch tÝn hiÖu. Theo ®ã, dïng mét bé t¹o sè ngÉu nhiªn ph©n bè ®Òu ®Ó t¹o ra chuçi tin nhÞ ph©n ë ®Çu ra nguån d÷ liÖu nhÞ ph©n. Chuçi c¸c bit 0 vµ 1 nµy ®­îc ¸nh x¹ vµo mét chuçi ±E (E lµ n¨ng l­îng cña tÝn hiÖu ®­îc chuÈn ho¸ b»ng 1 khi thùc hiÖn m« pháng). Dïng mét bé t¹o t¹p ©m Gauss ®Ó t¹o ra c¸c chuçi ngÉu nhiªn Gauss cã trung b×nh kh«ng vµ ph­¬ng sai b»ng s2. (2) Dïng bé t¸ch tÝn hiÖu ®Ó so s¸nh biÕn ngÉu nhiªn r víi ng­ìng 0 vµ thùc hiÖn quyÕt ®Þnh tÝn hiÖu ra theo nguyªn t¾c. NÕu r > 0, quyÕt ®Þnh bit 0 ®­îc truyÒn qua kªnh. NÕu r<0, quyÕt ®Þnh bit 1 ®­îc ph¸t. (3) TÝn hiÖu ra bé t¸ch tÝn hiÖu ®­îc so s¸nh víi chuçi bit tin ®· ®­îc truyÒn qua kªnh AWGN vµ lçi sÏ ®­îc ®Õm. KÕt qu¶ m« pháng vµ tÝnh to¸n hiÖu n¨ng cña hÖ thèng dïng tÝn hiÖu ®èi cùc ®­îc cho ë h×nh 5.6 khi truyÒn qua kªnh 10 000 bit tin t­¬ng øng víi mét sè gi¸ trÞ kh¸c nhau cña SNR. Ch­¬ng tr×nh Matlab ®­îc cho ë file : D06VT_BER_Antipodal_signal.m H×nh 5.5 M« h×nh m« pháng hÖ thèng truyÒn tin BPSK dïng tÝn hiÖu ®èi cùc H×nh 5.6 KÕt qu¶ m« pháng vµ tÝnh to¸n BER Phô lôc ch­¬ng tr×nh Matlab function [y] = D06VT_BER_Orthogonal_signal SNRindB1 = 0:1:12; % tao Vector loi voi step=1 don vi dB SNRindB2 = 0:0.1:12; % tao Vector loi voi step=0,1 don vi dB N = 1000; h = waitbar(0,'Please wait...'); for i=1:length(SNRindB1), % Simulated error rate waitbar(i/length(SNRindB1)); smld_err_prb_fsk(i)= smldPe54(SNRindB1(i),N); end; for i=1:length(SNRindB2), SNR = exp(SNRindB2(i)*log(10)/10); % Theoretical error rate theo_err_prb(i) = Qfunct(sqrt(SNR)); end; close(h); semilogy(SNRindB1,smld_err_prb_fsk,'g*',SNRindB2,theo_err_prb); xlabel('TØ sè tÝn hiÖu trªn t¹p ©m SNR dB','FontName','.VnTime','color','b','FontSize',10); ylabel('X¸c suÊt lçi Pe','FontName','.VnTime','color','b','FontSize',12); title('M« pháng x¸c suÊt lçi cho tÝn hiÖu trùc giao','FontName','.VnTime','color','b','FontSize',12); legend('Mo phong','Tinh toan'); grid on; % axis([0 30 10^(-5) 1]); function [p] = smldPe54(snr_in_dB,N) % [P]==smldPe54(snr_in_dB) % SMLDPE54 find the probobility of error for the given % snr_in_dB, signal to noise ratio in dB E = 1; SNR = exp(snr_in_dB*log(10)/10); % signal to noise ratio. Moi quan he ln(x)=log(10); sgma = E/sqrt(2*SNR); % sigam, standard deviation of noise % Generation of the binary data source for i=1:N, temp=rand; % Uniform radom variable over (0,1) if (temp<0.5), dsource(i)=0; % data source: With probability 1/2 source output is 0 else dsource(i)=1; % With probability 1/2 source output is 1 end end; % Detection, and probability of error caculation numoferr = 0; for i=1:N, % matched filter outputs. if (dsource(i)==0), r0 = E+gngauss(sgma); r1 = gngauss(sgma); % if the source output is '0' else r0 = gngauss(sgma); r1 = E+gngauss(sgma); % if the source output is '1' end; r = [r0 r1]; % detector follows if (r0>r1), decis=0; % Decission is '0' else decis=1; % Decission is '1' end; if (decis~=dsource(i)), % if it is an error, increase the error counter numoferr = numoferr + 1; end; end; p = numoferr/N; % Probability of error estimate function y = D06VT_BER_Antipodal_signal SNRindB1 = 0:1:10; SNRindB2 = 0:0.1:10; N = 10000; h = waitbar(0,'Please wait...'); for i=1:length(SNRindB1), % Simulated error rate waitbar(i/length(SNRindB1)); smld_err_prb(i) = smldPe55(SNRindB1(i),N); end; for i=1:length(SNRindB2), SNR = exp(SNRindB2(i)*log(10)/10); % Theoretical error rate theo_err_prb(i)=Qfunct(sqrt(2*SNR)); end; close(h); % Plotting command flollow semilogy(SNRindB1,smld_err_prb,'r*',... SNRindB2,theo_err_prb); %semilogy(SNRindB2,theo_err_prb); xlabel('TØ sè tÝn hiÖu trªn t¹p ©m SNR dB','FontName','.VnTime','color','b','FontSize',10); ylabel('X¸c suÊt lçi Pe','FontName','.VnTime','color','b','FontSize',12); title('M« pháng x¸c suÊt lçi cho tÝn hiÖu ®èi cùc nhÞ ph©n','FontName','.VnTime','color','b','FontSize',12); legend('Mo phong','Tinh toan'); grid on function [p]=smldPe55(snr_in_dB,N) % [P]==smldPe55(snr_in_dB) % SMLDPE54 mo phong xac xuat loi thuc te % gia tri cua snr_in_dB, signal to noise ratio in dB E = 1; SNR = exp(snr_in_dB*log(10)/10); % signal to noise ratio sgma = E/sqrt(2*SNR); % sigam, standard deviation of noise % Generation of the binary data source follow. for i=1:N, temp=rand; % Uniform radom variable over (0,1) if (temp<0.5), dsource(i)=0; % With probability 1/2 source output is 0 else dsource(i)=1; % With probability 1/2 source output is 1 end end; % Detection, and probability of error caculation numoferr = 0; for i=1:N, % matched filter outputs. if (dsource(i)==0), r = -E + gngauss(sgma); % if the source output is '0' else r = E + gngauss(sgma); % if the source output is '1' end; % detector follows if (r<0), decis=0; % Decission is '0' else decis=1; % Decission is '1' end; if (decis~=dsource(i)), % if it is an error, increase the error counter numoferr = numoferr+1; end; end; p = numoferr/N; % Probability of error estimate function [gsrv1,gsrv2] = gngauss(m,sgma) % Generation Gauss function % [gsrv1,gsrv1]=gngauss(m,sgma) % [gsrv1,gsrv1]=gngauss(m,sgma) % [gsrv1,gsrv1]=gngauss % GNGASS generates tow independent random variables with mean m % and standard deviation sgma. If one of the input arguments is missing, % it takes the mean as '0' % If Neither the mean Nor the variance is given, it generates tow standard % Gaussian random variables. % if nargin==0, m=0; sgma=1; elseif nargin==1, sgma=m; m=0; end; u=rand; % a uniform random variable in (0,1) z=sgma*(sqrt(2*log(1/(1-u)))); % Rayleigh distributed random variable. u=rand; % Another uniform random variable in (0,1) gsrv1=m+z*cos(2*pi*u); gsrv2=m+z*cos(2*pi*u); function Q = Qfunct(x) Q = 0.5 *erfc(x/sqrt(2)); B¸o c¸o kÕt qu¶ HiÓu c¸ch m« h×nh hãa hÖ thèng. X©y dùng m« h×nh trªn c¬ së nguyªn lý, lý thuyÕt truyÒn th«ng c¨n b¶n. Chøc n¨ng cña c¸c phÇn tö; x©y dùng c¸c phÇn tö cho m« h×nh; x¸c ®Þnh mèi quan hÖ vµo/ra c¸c phÇn tö cña m« h×nh ë d¹ng to¸n häc; d¹ng tÝn hiÖu trong miÒn thêi gian vµ tÇn sè; ý nghÜa cña biÓu thøc to¸n trong viÖc m« h×nh hãa. 2. Trùc quan hãa nguyªn lý ho¹t ®éng cña m« h×nh ë d¹ng biÓu diÔn tÝn hiÖu t¹i c¸c ®iÓm ®Æc tr­ng cña m« h×nh trong miÒn thêi gian vµ tÇn sè. VÏ l­u ®å gi¶i thuËt cho ch­¬ng tr×nh m« pháng. Ph©n tÝch ®¸nh gi¸ kÕt qu¶ m« pháng: Ph©n tÝch tÝn hiÖu t¹i c¸c ®iÓm ®Æc tr­ng cña m« h×nh trong miÒn thêi gian vµ tÇn sè. Ph©n tÝch kÕt qu¶ BER. T×m hiÓu vµ tr×nh bµy bé läc thÝch hîp, so s¸nh víi bé t­¬ng quan.

Các file đính kèm theo tài liệu này:

  • docSimulation of BER D06VT.doc
Tài liệu liên quan