4G數據傳輸流程系列(四)—物理層OFDM、MIMO實現


上回書講到4G網絡物理層處理共11個步驟(Bob小編看一個小視頻的背后發生了這么多事…),並且詳細介紹第一部分:第一步到第五步,從傳輸塊到碼字的處理流程,重點是信道編碼和速率匹配。今天,小編要說說第二部分:第六步到第十一步,重點講4G網絡哼哈二將MIMO和OFDM在物理層如何實現,同時本文也是4G數據傳輸流程的收官之戰。

 
 

來吧,和小編一起繼續物理層之戰。第六步~第十一步依次是加擾、調制、層映射、預編碼、資源映射、OFDM符號生成,其中第八步層映射和第九步預編碼實現MIMO,第十一步OFDM符號生成實現另一關鍵技術OFDM。

第六步:加擾。輸入是一串稱為碼字的比特流,與一串已知的碼序列,稱為擾碼,進行異或運算就得到輸出比特流。

 
 

A:這么折騰為啥?

B:加擾的目的是為了避免干擾,下行方向避免小區間干擾,上行方向避免用戶間干擾。

A:怎么就避免干擾了?

B:看圖說話。以下行為例,Bob手機所屬基站叫eNB X,旁邊一個基站eNB Y發射的信號對於Bob手機來說就是干擾;基站X發送的數據采用擾碼1數據加擾,這是有用數據;基站Y發送的數據采用擾碼2加擾,這是干擾數據;兩個擾碼1和2是正交的。

B:Bob手機接收到兩個基站的信號后,用擾碼1和接收到的數據做運算,把基站X發送的數據還原出來;而基站Y的數據采用擾碼2加擾,並且擾碼1和擾碼2正交,所以運算后干擾數據就被抵消掉了。這樣Bob手機相當於沒收到干擾基站Y的信號,從而避免小區間干擾。

 
 

第七步:調制。輸入是加擾后的一串比特流;輸出是I路和Q路兩路數據。調制的目的很簡單,使無線資源,即一個載波,承載更多的信息bit,提高頻譜利用率,增加傳輸速率和小區容量。怎么使一個載波承載更多的信息bit呢?信息bit就是0101的一串數據,載波上某些參數的變化就能反映出01的信息來,這些參數包括幅度、相位、頻率等。比如,對於一個載波,幅度高代表1,幅度低代表0,相位0度代表1,相位90度代表0,這樣幅度和相位兩個參數就有四種組合,分別代表11,10,01,00四種信息bit。

4G網絡中,數據傳輸采用的是QAM調制方式,就是用一個載波的幅度和相位來表示信息bit。輸入數據,按照調制方式星座圖,將若干個信息bit映射成一個調制符號,調制符號從數學表達上看是一個復數S=I+j*Q,其實部和虛部分別對應輸出的I路和Q路信號值,利用歐拉公式可以計算出幅度和相位。具體映射方式在36.211 7.1中有詳細介紹。

 
 

舉個栗子,輸入的一串數據為01011000,采用16QAM調制方式,這8個比特將被映射為兩個調制符號,查36.211 Table 7.1.3-1可以得到映射后的I,Q取值,如下圖。也就是說01011000這串數據通過16QAM調制器后,輸出兩路信號,其中I路取值XX和XX,Q路取值XX和XX(看下圖吧,不知道怎么打根號。。。),對應兩個調制符號。工程實現上當然無法輸出一個復數,只需要把I路、Q路信號的取值保存成一張表,后續處理直接從表中取數就OK。

 
 

第八步:層映射,第九步:預編碼。 4G網絡一項關鍵技術是多天線,這里第七步和第八步就是為了實現多天線技術。多天線在移動通信史有重要地位,移動通信發展史就是與無線資源做斗爭的血淚史,而多天線就是一個重要武器,它發現了除頻率、時間等無線資源外另一片新的資源,就是空間資源。2G、3G中已經開發利用了頻域、時域、碼域,4G要好好開發利用空域資源,就像在拓寬車道的基礎上架立交橋。

想利用空域資源,至少得能在空間中區分出不同的路呀,不然肯定撞車,靠什么區分?怎么區分?哈哈,就是靠多天線,發送端多天線,就收端也是多天線,這樣從發送端到接收端連線,就得到一條一條的路,天線越多,路越多,我們的新天地越廣闊。既然這樣,使勁的加天線,豈不更好?用膝蓋想想也是不對的。

天線越多,設計越復雜,越貴啊,對比下帶8根天線長得像蜘蛛的路由器和普通2根天線的路由器價格就知道啦;

天線越多,道路越密,有些路就不好區分了,既然路都分不開了,要多天線有毛線用啊。

所以目前4G網絡的基站一般最多8天線,4G手機一般兩天線。當然,現在大規模天線也如火如荼,成為5G的關鍵技術,小編也會在后續天線系列中說說大規模天線是什么鬼,記得關注呦~

 
 

鋪墊了這么多,到底第七、八步是怎么處理的呢?看圖。

 
 

還得繼續鋪墊…先說說上圖里層/流、天線端口、物理天線。

物理天線數,就是基站和手機上實際的天線,這是硬件基礎設施,決定了多天線性能的理論上限。現在絕大部分手機有兩根天線,基站最多有八根天線(像某動的TD-LTE基站)。

天線端口:小編編在第二段(自己找哈~)中提到了,多天線技術核心是利用不同天線創造出不同的路,這些路必須得能區分開,不然如果兩條路離得很近,我們也只能把它們當成一條來看了。翻譯成通信汪的話,就是不同天線信道環境要不相關。這里天線端口就是指不相關的物理天線數,那么當然,天線端口<=物理天線數,天線端口數決定了多天線實際最高性能。

層/流:這兩其實是一個意思,但好像在國內大家都叫流,翻譯成E文就成了layer,經常說的下行雙流,上行雙流,以及近期比較火熱的下行四流就是dual layers,four layers。第七步層映射輸出的數據就叫層,層映射輸出幾個layer,就稱為幾流。

終於鋪墊完了,開始說層映射和預編碼哈。我們知道4G 下行最多可以同時處理2個TB,對應兩個CW;上行只能處理一個TB,對應一個CW。而我們上面提到的天線數、層數/流數動不動就4呀,8呀的,顯然比2大,所以存在這么個關系:TB數=CW數<=層數<=天線端口數<=物理天線數,而層映射和預編碼這兩貨就是把CW數、層/流數、天線端口數匹配起來。數學上看,層映射就是串並轉換,預編碼就是和一個矩陣做乘法。層映射串並轉換規則參考TS36.211 6.3.3節,預編碼乘的那個矩陣叫預編碼矩陣,取值參考TS36.211 6.3.4節。

簡單講,通過層印射、預編碼首先將CW變成多層並行數據,進而再與多天線匹配,獲得多天線不同增益,包括復用、分集、波束賦形。當然,具體CW映射到多少層,選擇哪個預編碼矩陣都是由物理層的上層MAC層資源調度器決定的,物理層仍然是個干活的。這其中,也需要手機的參與,包括反饋信道狀態信息(CSI)、預編碼矩陣指數(PMI)、RI等,具體過程說來話長,所以就不說了。

舉個栗子,看下圖。第一個碼字調制后得到4個符號,記為矩陣S;要把它映射到兩層,按照TS36.211 6.3.3規則,串並轉換后得到兩層數據(也就是兩流),數學上看就是個兩行矩陣,第一層是[S0,S2],第二層是[S1,S3];假設天線端口數為2,則兩層數據分別乘以一個2*2的預編碼矩陣W,仍然得到一個2*2的矩陣Y,Y的兩行[Y0,Y2]和[Y1,Y3]就是每個天線端口的數據。層數、預編碼矩陣、天線端口數是由基站資源調度器根據手機反饋上來的一些關鍵信息(如RI、CSI、PMI)決定的。

 
 

最后,說明一點,層映射和預編碼處理的數據都是復數信號,也就是同時處理I路和Q路。輸出仍然是復信號,對應I和Q兩路,並且每一個天線端口輸出的數據都是如此。

第十步:資源映射, 第十一步:OFDM信號生成。把第十步和第十一步一起講的目的是,在邏輯上,資源映射和OFDM信號生成是分開的,沒什么關系;但在實現上,可以認為二者是同時進行的。這兩個步驟功能很簡單,就是把每一個天線端口對應的數據(I和Q路)映射到二維時頻資源,然后生成OFDM波形,但是不容易理解。這里小編將通過具體工程實現來說明白,下圖是OFDM信號生成器。

一個天線端口輸出的I路和Q路調制數據經過OFDM波形發生器,輸出兩路OFDM信號,I-OFDM和Q-OFDM,完了。

 
 

A:完了?這么簡單…你逗我吧?

B:流程和實現就是這樣的,玄妙都在那個專用的DSP信號發生器。

A:說說唄…

B:OFDM的原理和好處都被嚼爛了,就不說了,小編重點說OFDM的實現。

B:OFDM其實就是一系列正交正弦或余弦信號(子載波)的疊加,從數學表達式上看更清晰:OFDM=Σa(k)*cos(kft),也就是說,在某一個時刻(已知t),如果知道k階子載波的取值cos(kft),把它和輸入的信號a(k)乘起來,在對k求和,就得到OFDM在t時刻的值。

A:輸入信號a(k)肯定是已知的,只要能產生k階子再波cos(kft)就OK了唄。

B:對,過去產生載波信號使用本振,一個本振產生一個頻率的載波信號,k階載波就需要k個本振。4G網路中,20MHz帶寬時大概有1300多個子載波。

A:那就要用1300多個本振??受的了嗎…

B:受不了啊,所以這也是OFDM技術原理早就出現了,但一直沒能得到應用的原因之一。直到隨着集成數字電路和數字信號處理器件的迅猛發展,采用專用的DSP來實現OFDM,子載波通過軟件生成,其數量與硬件沒有關系,OFDM才開始邁向高速移動通信領域。

A:這就是上圖“OFDM波形發生器”中DSP的來龍去脈吧!

A:那“復數IFFT算法”又是神馬?

B:現在實現OFDM硬件已經不是問題了,但光有硬件還不行,還要有實現的算法,復數IFFT就是一種算法。

A:一種?這么說有好多可以實現OFDM的算法嘍?

B:當然,剛才說了,某一時刻的OFDM信號實際上就是輸入信號a(k)和k階子載波乘積的疊加,本質就是輸入一個序列a(k),輸出另一個相同長度的序列。所以只要能滿足這個要求的算法都可以生成OFDM信號。像離散余弦變換、反向離散哈特萊變換、實數IDFT變換等,還有就是復數IFFT變換。

A:為什么選復數IFFT變換呢?

B:小編認為有兩個原因:(1)子載波數量相同時,復數IFFT能傳遞的參數最多,提高帶寬利用率;(2)QAM調制后的信號也是復信號,復數IFFT輸入也是復數,二者一拍即合。

A:明白!

A:還有一個問題…OFDM波形發生的硬件和算法都有了,到底怎么工作呢?

B:復數IFFT算法同時處理I路和Q路,處理流程完全相同,以I路處理為例。

B:首先,基站和手機里要存一張表,這張表是1~k階子載波(正弦或余弦)在0~N-1這N個采樣點的幅值,即函數C(k, n) = cos(k*n*2π/N)取值,k是載波階數,在4G中最大取2048;n是采樣點序號,取值0~N-1。

B:其次,取I路數據的k個值a(1)~a(k),分別與C(k,n),即1~k子載波幅值相乘,得到k個值,再把k個值相加,得到采樣點n的OFDM信號幅值,即OFDM(n)=Σa(k)*C(k, n)=Σa(k)*cos(k*n*2π/N)。

B:這樣依次計算出一個采樣周期OFDM信號的幅值:OFDM(0),OFDM(1)~OFDM(N-1),再通過D/A轉換就得到OFDM信號波形。

B:放一張時域的OFDM信號波形直觀感受下。

A:這是I路的數據,Q路同理,最后也得到這樣一張圖?

B:聰明。

B:這兩張圖最后通過上變頻/下變頻、功放、合路、濾波變成射頻信號,通過天線發射出去。

 
 

A:最后一個問題…上面講辣么多,好像沒有提到資源映射吧?

B:其實已經提到了,我們在說OFDM生成的時候,講到要用子載波幅值和輸入信號做運算,選擇用哪些子載波就是資源映射。這也是由基站資源調度器決定,不是物理層決定。

A:醬紫啊!

B:當然,資源映射也沒這么簡單。還涉及到虛擬資源塊概念,以及集中映射還是分布映射。另外,上行由於采用SC-OFDM,所以一個用戶分配的資源在頻域上是連續的,這點與下行不同。

A:Soga!

至此,4G物理層之戰就大獲全勝,數據傳輸流程也已收官



作者:讀萬卷行萬里
鏈接:https://www.jianshu.com/p/d4541ee1efce
來源:簡書
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM