精華區beta comm_and_RF 關於我們 聯絡資訊
例如: 訊號=[+1 -1 +1 -1],展頻碼=[+1 -1] 訊號*展頻碼--->[+1 -1 -1 +1 +1 -1 -1 +1]; 送進通道後,解展頻(假設沒有雜訊) [+1 -1]*[+1 -1]=[+2]=[+1] %正值判定為+1 [-1 +1]*[+1 -1]=[-2]=[-1] %負值判定為-1 [+1 -1]*[+1 -1]=[+2]=[+1] [-1 +1]*[+1 -1]=[-2]=[-1] 在一個用戶下,可以完全解出來 請問ㄧ下,若是2個用戶,可不可以完全解出來? 還是我解展頻方法錯誤? 例如 第一個用戶=[+1 +1 -1 -1],第一個用戶展頻碼=[+1 -1] 第二個用戶=[-1 +1 -1 +1],第一個用戶展頻碼=[-1 +1] 第一個用戶*第一個用戶展頻碼=[+1 -1 +1 -1 -1 +1 -1 +1] 第二個用戶*第二個用戶展頻碼=[+1 -1 -1 +1 +1 -1 -1 +1] 兩個用戶相加後進入通道=[+2 -2 0 0 0 0 -2 0] 解展頻,解第一個用戶(假設AWGN=0) [+2 -2]*[+1 -1]=[0]=[+1] [0 0 ]*[+1 -1]=[0]=[+1] [0 0 ]*[+1 -1]=[0]=[+1] %%解展頻錯誤 [-2 0 ]*[+1 -1]=[-2]=[-1] -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 163.17.21.103
renj:用戶展頻碼沒有正交? 61.225.201.93 07/23 19:48
> -------------------------------------------------------------------------- < 作者: q5212 (偷吃是王道) 看板: comm_and_RF 標題: Re: [問題] 展頻通訊問題 時間: Mon Jul 24 08:38:06 2006 ※ 引述《Tokukawa (嵐)》之銘言: : ※ 引述《q5212 (偷吃是王道)》之銘言: : : 例如: 訊號=[+1 -1 +1 -1],展頻碼=[+1 -1] : : 訊號*展頻碼--->[+1 -1 -1 +1 +1 -1 -1 +1]; : : 送進通道後,解展頻(假設沒有雜訊) : : [+1 -1]*[+1 -1]=[+2]=[+1] %正值判定為+1 : : [-1 +1]*[+1 -1]=[-2]=[-1] %負值判定為-1 : : [+1 -1]*[+1 -1]=[+2]=[+1] : : [-1 +1]*[+1 -1]=[-2]=[-1] : : 在一個用戶下,可以完全解出來 : : 請問ㄧ下,若是2個用戶,可不可以完全解出來? : : 還是我解展頻方法錯誤? : : 例如 : : 第一個用戶=[+1 +1 -1 -1],第一個用戶展頻碼=[+1 -1] : : 第二個用戶=[-1 +1 -1 +1],第一個用戶展頻碼=[-1 +1] : : 第一個用戶*第一個用戶展頻碼=[+1 -1 +1 -1 -1 +1 -1 +1] : : 第二個用戶*第二個用戶展頻碼=[+1 -1 -1 +1 +1 -1 -1 +1] : : 兩個用戶相加後進入通道=[+2 -2 0 0 0 0 -2 0] : : 解展頻,解第一個用戶(假設AWGN=0) : : [+2 -2]*[+1 -1]=[0]=[+1] : : [0 0 ]*[+1 -1]=[0]=[+1] : : [0 0 ]*[+1 -1]=[0]=[+1] %%解展頻錯誤 : : [-2 0 ]*[+1 -1]=[-2]=[-1] : 上面的計算上有些問題....換個方式表示好了...(避免作threshold...) : 1st user的symbol為[1,1,0,0], Spreading code=[1,0] : 2nd user的symbol為[0,1,0,1], Spreading code=[0,1] : 則spreaded signal : for 1 =[1,0,1,0,0,0,0,0] : for 2 =[0,0,0,1,0,0,0,1] : 所以for 1+2=[1,0,1,1,0,0,0,1] : despread 1st user=[1,0,1,1,0,0,0,1]*[1,0]=[1,1,0,0] : despread 2nd user=[1,0,1,1,0,0,0,1]*[0,1]=[0,1,0,1] 可是...展頻的課本不是都用+1與-1,0應該不行吧 因為我再寫程式,單1用戶用展頻BER跟理論值ㄧ樣 可是若20個用戶加在一起卻跟理論值不同(反而跟BPSKㄧ樣) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 163.17.21.103 > -------------------------------------------------------------------------- < 作者: gpsOne (CDMA2000) 看板: comm_and_RF 標題: Re: [問題] 展頻通訊問題 時間: Mon Jul 24 10:04:06 2006 ※ 引述《Tokukawa (嵐)》之銘言: : ※ 引述《q5212 (偷吃是王道)》之銘言: : : 例如: 訊號=[+1 -1 +1 -1],展頻碼=[+1 -1] : : 訊號*展頻碼--->[+1 -1 -1 +1 +1 -1 -1 +1]; : : 送進通道後,解展頻(假設沒有雜訊) : : [+1 -1]*[+1 -1]=[+2]=[+1] %正值判定為+1 : : [-1 +1]*[+1 -1]=[-2]=[-1] %負值判定為-1 : : [+1 -1]*[+1 -1]=[+2]=[+1] : : [-1 +1]*[+1 -1]=[-2]=[-1] : : 在一個用戶下,可以完全解出來 : : 請問ㄧ下,若是2個用戶,可不可以完全解出來? : : 還是我解展頻方法錯誤? : : 例如 : : 第一個用戶=[+1 +1 -1 -1],第一個用戶展頻碼=[+1 -1] : : 第二個用戶=[-1 +1 -1 +1],第一個用戶展頻碼=[-1 +1] : : 第一個用戶*第一個用戶展頻碼=[+1 -1 +1 -1 -1 +1 -1 +1] : : 第二個用戶*第二個用戶展頻碼=[+1 -1 -1 +1 +1 -1 -1 +1] : : 兩個用戶相加後進入通道=[+2 -2 0 0 0 0 -2 0] 你沒做錯 問題正如renj的推文所說 是因為你取的spreading code不是orthogonal : : 解展頻,解第一個用戶(假設AWGN=0) : : [+2 -2]*[+1 -1]=[0]=[+1] : : [0 0 ]*[+1 -1]=[0]=[+1] : : [0 0 ]*[+1 -1]=[0]=[+1] %%解展頻錯誤 : : [-2 0 ]*[+1 -1]=[-2]=[-1] 但是這裡就出問題了 你的結果應該是[? ? ? -1] 順道一提 下面有一篇關於aaronmvp的回文也是錯的 在這裡加起來>1完全是對的 現實就是這樣 請想想一下兩個BPSK相加就知道了 decode的判斷是> or < 0 : 上面的計算上有些問題....換個方式表示好了...(避免作threshold...) : 1st user的symbol為[1,1,0,0], Spreading code=[1,0] : 2nd user的symbol為[0,1,0,1], Spreading code=[0,1] : 則spreaded signal : for 1 =[1,0,1,0,0,0,0,0] : for 2 =[0,0,0,1,0,0,0,1] 很抱歉 但是tokukawa你在這一步就錯了 展頻是做XOR, not AND : 所以for 1+2=[1,0,1,1,0,0,0,1] : despread 1st user=[1,0,1,1,0,0,0,1]*[1,0]=[1,1,0,0] : despread 2nd user=[1,0,1,1,0,0,0,1]*[0,1]=[0,1,0,1] -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 66.27.110.28 ※ 編輯: gpsOne 來自: 66.27.110.28 (07/24 10:06) > -------------------------------------------------------------------------- < 作者: SoSoLife (需要翻越新的山頭) 看板: comm_and_RF 標題: Re: [問題] 展頻通訊問題 時間: Mon Jul 24 21:09:34 2006 ※ 引述《q5212 (偷吃是王道)》之銘言: : 例如: 訊號=[+1 -1 +1 -1],展頻碼=[+1 -1] : 訊號*展頻碼--->[+1 -1 -1 +1 +1 -1 -1 +1]; : 送進通道後,解展頻(假設沒有雜訊) : [+1 -1]*[+1 -1]=[+2]=[+1] %正值判定為+1 : [-1 +1]*[+1 -1]=[-2]=[-1] %負值判定為-1 : [+1 -1]*[+1 -1]=[+2]=[+1] : [-1 +1]*[+1 -1]=[-2]=[-1] : 在一個用戶下,可以完全解出來 : 請問ㄧ下,若是2個用戶,可不可以完全解出來? : 還是我解展頻方法錯誤? : 例如 第一個用戶=[+1 +1 -1 -1],第一個用戶展頻碼=[+1 -1] 第二個用戶=[-1 +1 -1 +1],第一個用戶展頻碼=[-1 +1] wash code=[1 1;1 -1] 這是我感覺怪怪的地方 你的code似乎沒正交?? 小意見 有錯請指正! : 第一個用戶*第一個用戶展頻碼=[+1 -1 +1 -1 -1 +1 -1 +1] : 第二個用戶*第二個用戶展頻碼=[+1 -1 -1 +1 +1 -1 -1 +1] : 兩個用戶相加後進入通道=[+2 -2 0 0 0 0 -2 0] : 解展頻,解第一個用戶(假設AWGN=0) : [+2 -2]*[+1 -1]=[0]=[+1] : [0 0 ]*[+1 -1]=[0]=[+1] : [0 0 ]*[+1 -1]=[0]=[+1] %%解展頻錯誤 : [-2 0 ]*[+1 -1]=[-2]=[-1] -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.212.185 > -------------------------------------------------------------------------- < 作者: asneo (阿鎧) 看板: comm_and_RF 標題: Re: [問題] 展頻通訊問題 時間: Tue Jul 25 00:52:18 2006 clear all; clc; Signal_1 = [1 -1 1 -1]; Signal_2 = [1 1 1 1]; Code = [1 1 ;1 -1]; y1 = kron(Signal_1,Code(1,:)); y2 = kron(Signal_2,Code(2,:)); y = y1+y2 Rx = reshape(y,length(Code),4); Rx1 = Code(1,:)*Rx Rx2 = Code(2,:)*Rx 這個跑出來就可以~符合你所需要的 ※ 引述《q5212 (偷吃是王道)》之銘言: : 例如: 訊號=[+1 -1 +1 -1],展頻碼=[+1 -1] : 訊號*展頻碼--->[+1 -1 -1 +1 +1 -1 -1 +1]; : 送進通道後,解展頻(假設沒有雜訊) : [+1 -1]*[+1 -1]=[+2]=[+1] %正值判定為+1 : [-1 +1]*[+1 -1]=[-2]=[-1] %負值判定為-1 : [+1 -1]*[+1 -1]=[+2]=[+1] : [-1 +1]*[+1 -1]=[-2]=[-1] : 在一個用戶下,可以完全解出來 : 請問ㄧ下,若是2個用戶,可不可以完全解出來? : 還是我解展頻方法錯誤? : 例如 : 第一個用戶=[+1 +1 -1 -1],第一個用戶展頻碼=[+1 -1] : 第二個用戶=[-1 +1 -1 +1],第一個用戶展頻碼=[-1 +1] : 第一個用戶*第一個用戶展頻碼=[+1 -1 +1 -1 -1 +1 -1 +1] : 第二個用戶*第二個用戶展頻碼=[+1 -1 -1 +1 +1 -1 -1 +1] : 兩個用戶相加後進入通道=[+2 -2 0 0 0 0 -2 0] : 解展頻,解第一個用戶(假設AWGN=0) : [+2 -2]*[+1 -1]=[0]=[+1] : [0 0 ]*[+1 -1]=[0]=[+1] : [0 0 ]*[+1 -1]=[0]=[+1] %%解展頻錯誤 : [-2 0 ]*[+1 -1]=[-2]=[-1] -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.62.88.168
q5212:謝~~ 163.17.21.103 07/25 22:47