信道信息的獲取和應用(轉載)

知己知彼,百戰不殆--信道信息的獲取和應用

      上一回我們說到了變化莫測的MIMO信道,並且留下了一個美好的假設:“如果在發送數據之前,我們能夠提前獲得信道信息,是不是能對發送策略有指導作用,並且有效的幫助我們提升通信系統的性能呢?”本回內容,我們就來回答這些問題。

      還記得上回開篇在介紹“相關性”時舉得例子麼?這裏簡單的回顧一下:假設有一車貨物要從A地運到B地,有3條路可以選擇,分別經過城市X,Y,Z。在出發前我們聽到天氣預報說X市會有大雨,於是我們選擇繞道走Z市,從而避開了受天氣影響的X市和Y市。這裏,正是因爲我們聽到了天氣預報,才能選出最佳的出行路線,所以“天氣預報信息”爲我們的出行提供了非常有效的幫助。在無線通信系統中,“信道狀態信息(Channel State Information,CSI)”就相當於這個例子中的“天氣信息”,那麼如果我們能夠在發送端掌握到及時、準確的“信道狀態信息”,是不是就能“避開”那些信道條件不好的傳播路徑,從而提升通信系統的性能?

word1.jpg

      答案當然是肯定的。不過,發送端獲得“信道狀態信息”後,究竟能爲MIMO通信系統帶來多少好處,我們還是得從數學的角度進行分析,誰讓數學是通信的基礎呢。首先我們可以想象一下,我們心目中最佳的信道矩陣,或者叫傳輸矩陣,應該具有什麼樣的結構?拿2x2MIMO 系統舉例來說,它的傳輸矩陣具有以下形式(忽略噪聲的影響):

word2.jpg

 

我們可以很快看出,最佳的傳輸矩陣H,應該具有的形式是:

word3.jpg

當傳輸矩陣擁有這種“對角陣”的形式時,X1和X2和它進行矩陣相乘後,得到的仍然是X1和X2,就好像X1和X2各自通過了一條“透明”的子信道到達接收端,兩者之間也沒有任何干擾。

word4.jpg

      然而“理想很豐滿,現實很骨感”,要是現實中的通信系統都能擁有如此完美的傳輸過程,恐怕一大半的MIMO研究人員都可以下崗了。我們知道,現實中的傳輸矩陣,裏面的各個元素都是按一定的概率統計規律隨機變化的,根本找不到半點“對角陣”的影子。但是“對角陣”的形式實在是太好了,即使眼下無法直接獲得,我們依然希望能夠有一種方法能夠將現實的傳輸矩陣“轉化”成對角陣的形式--SVD分解(矩陣的奇異值分解,SingularValue Decomposition)就提供了完美的解決辦法。

word5.jpg

      通過對傳輸矩陣H進行SVD分解,我們可以得到三個矩陣:左酉陣U,對角矩陣S(對角陣S中的元素s1,s2就是H矩陣的奇異值)和右酉陣V。現在,我們期望的對角陣S已經出現了,但它的左右兩邊又多出了兩個酉陣U和V,怎麼辦?沒關係,“酉陣”同學有一個很好的性質,它只要與自己的共軛轉置相乘,就可以把自己化簡掉(其實是得到了一個單位陣( word6.jpg

))。如果我們在信號經過信道之前,首先對信號進行“預處理”,給它們乘以V的共軛轉置矩陣,再讓它們經過信道,右酉陣V就被化簡掉了,相當於發送信號直接與對角陣S相乘!接收端的處理類似,我們對接收信號矩陣左乘酉陣U的共軛轉置,就可以消掉它。這時我們驚喜的發現,擁有“對角陣”形式的傳輸方程又回來了,這正是我們期待的效果!

word7.jpg


      慢着慢着,我們來回顧一下剛纔是如何重新獲得“對角陣”形式的傳輸矩陣的?沒錯,正是因爲在信號發送之前,給它們乘以了右酉陣V的共軛轉置矩陣。所以,我們可以提煉出發送端擁有信道矩陣的第一個好處:如果發送端擁有了H的信息,就可以對它進行SVD分解,從而得到右酉陣V,利用它,可以將傳輸過程轉化成我們期望的“對角陣”形式。

------------------

閒話1

      在現實的MIMO通信系統中,運用信道信息對發送信號進行“預處理”的發送方式也非常重要。比如LTE協議中的“線性預編碼技術(LinerPrecoding)”或者802.11n中也有的“波束成形技術(Beamforming)”,其背後的原理和思想,都與我們上述的分析一致,只不過有多種實現方法,這也與信道信息的獲取方式有很大關係,一會兒我們再介紹。

--------------------

      好了,信道信息除了可以用來對發送信號進行“預處理”,指導發送策略以外,從中還能獲得什麼對我們有用的信息呢?這次,我們要從 “對角陣S”身上尋找答案。

      對不同的信道矩陣H進行SVD分解,可以得到不同的“對角陣S”,這聽上去是一句廢話;但是,這些不同的“對角陣S”,卻能反映出信道H的很多信息。所以,我們不妨直接拿出幾個實際的H矩陣,對它們進行SVD分解,看看分解出的這些“對角陣”中,究竟還隱藏着哪些祕密。我們依舊選擇2x2MIMO信道作爲研究對象,爲了便於對照,我們選擇3個“極端”的信道矩陣作爲分析的例子:最優矩陣(單位陣);隨機矩陣和最差矩陣(全1陣)。注:這裏列舉的信道只爲說明其自身矩陣特性,並沒有進行歸一化等處理。

word8.jpg

      最優傳輸矩陣的特性,剛纔我們已經分析過了,這裏爲什麼要把全一矩陣定義成“最差信道”呢?原因也很簡單,信道矩陣H中的所有元素都一樣,不就說明所有傳輸路徑的增益都相同麼,換句話說,所有路徑都經歷了完全相同的衰落過程,在上一回“猶抱琵琶半遮面--MIMO信道中隱藏的祕密”中,我們分析過,如果 4條傳輸路徑完全相同,可以把它們看成是同一條路徑,2x2MIMO系統將退化成SISO系統,這當然是我們最不願意看到的結果。

      現在我們分別對這三個信道矩陣進行SVD分解,得到的對角陣如下圖:

word9.jpg

(1)對角陣中,奇異值個數的意義:我們可以清晰看到, “最優信道”和“隨機信道”分解出的對角陣S1和S2都有兩個非零元素,即信道H的奇異值。而“最差信道”分解出的對角陣S3中只有1個奇異值,這代表什麼呢?我們來深入的研究下這種情況:現在,如果在發送端同時發出兩個信號X1和X2,實際上只有一個信號能夠通過子信道,另一個卻“消失”了,這就說明這種信道只能保證一個信號的收發,換句話說,它的“自由度”只有1。

word10.jpg


      且慢,你在第一回“魚與熊掌能否兼得--淺談分集與複用的權衡”中不是說過,2x2MIMO系統能夠寫出兩個傳輸方程,所以支持的“自由度”應該是2 麼?沒錯,不過讓我們先來看看,“最差信道”寫出的兩個傳輸方程是什麼樣的。仍舊假設發送端發出信號X1和X2,在與全一矩陣相乘後,我們得到了兩個完全一樣的傳輸方程,這不就相當於只有一個方程麼!我們也不可能從一個方程中解出兩個準確的X1和X2,所以,儘管2x2 MIMO支持的最大“自由度”是2,“最差信道”能提供的“自由度”只有1。看來,奇異值的個數,直接反應了信道所支持的“自由度”數目。

word11.jpg

      我們當然要更進一步追問,究竟是什麼原因造成了“自由度”的退化?罪魁禍首當然是“相關性”。剛纔我們已經分析了,“最差信道”中,所有元素都相同,就意味着4條傳輸路徑完全相同,MIMO系統將退化成SISO系統,而SISO系統能提供的“自由度”可不就是1麼。“相關性”還真是個難纏的傢伙。(如何才能降低信號間的相關性?可以回顧上一回“猶抱琵琶半遮面--MIMO信道中隱藏的祕密”)

      現在我們來總結一下 “對角陣S”中,奇異值個數的含義:在對一個信道矩陣進行SVD分解後,得到的“對角陣”中,奇異值(非零元素)的個數就代表該信道能支持的 “自由度”數目----更專業一點的說法是,奇異值的個數,就是該信道矩陣的秩(Rank)。

------------

閒話2:

    在現實的MIMO通信系統中,發送端如果能夠知道信道矩陣的秩,對發送策略的選擇也是大有益處的:當信道質量好的時候,我們會更多的發揮“自由度”的優勢,使用更多的空間流數(自由度)進行傳輸,以提高通信的速率;但是當信道變差以後,就無法再支持多個空間流了,信道秩的指示(RankIndication,RI)可以幫助我們選擇合適的空間流數進行傳輸,以提高通信效率。

--------------

(2)對角陣中,奇異值大小的意義:從圖中我們也能清晰看到,儘管“最優信道”和“隨機信道”分解後得到的對角陣中,都有兩個奇異值,但這兩個奇異值的大小分佈卻不相同。那麼,奇異值間的大小分佈又有什麼意義呢?簡單的說,奇異值的大小,衡量的是信道所支持的“自由度”的“健康狀況”,數值越趨近0,說明該自由度越接近“退化”的邊緣。比如在“最優信道”中,兩個奇異值大小相同,意味着信道對兩個自由度的支持都很好,沒有任何差別,這當然也是我們最想看到的情況;而在“隨機信道”中就不同了,一個數值特別大,一個特別小,換句話說,這個信道支持1個自由度綽綽有餘,想支持2個,效果就沒有那麼好了。所以,在許多經典的MIMO教科書中,都能看到這樣一個參數:ConditionNumber(條件數),它定義爲“對角陣S”中,最大奇異值比上最小奇異值的結果,現在我們對它應該有了更好的理解:這個比值(條件數)越接近1,說明信道中各個平行子信道(自由度)的傳輸條件都很好,很平均;比值越大,說明各個子信道的傳輸條件好的好,差的差。

word12.jpg

      那麼在現實中,如果我們能夠知道奇異值的個數和大小,不就能夠知道哪些子信道的傳輸條件好,哪些傳輸條件不好了麼?我們當然希望發送策略可以多多利用條件好的子信道,儘量少用或不用條件差的子信道。這就像突圍戰中,一定要找到敵人最薄弱的環節,集中優勢兵力,一舉擊破。在實際的MIMO通信系統中,總的發送功率有限,與其把功率浪費在條件差的信道上,不如通過調整發送功率,給條件好的子信道多分配一些功率,給條件差的子信道少分或不分配功率,來實現上述思想。

      這個過程就像給一個杯子中加水,如果杯中的雜物很多,能加入的水就少;若杯中空無一物,能容的水就多。我們不妨把各個子信道的信道條件比作雜物,條件越差,意味着雜物越多,能分配的功率就越少。當我們把總量一定的水(功率)倒入這些杯中,可以清晰的看到一條注水線,水的深度就是給這些子信道分配的功率了。這便是大名鼎鼎的“注水算法(water-filling)”!

word13.jpg


      好了,說了那麼多,相信大家也看累了。現在我們可以回顧並總結一下,發送端獲得信道信息後,能夠帶來的好處:

(1)使用右酉陣V,可以對發送信號進行“預處理”,將傳輸過程轉化成具有“平行子信道”的對角陣形式;

(2)有了信道矩陣秩的信息(奇異值的個數),可以靈活的調整空間流數(自由度),從而提高通信系統效率;

(3)知道了奇異值的個數和大小後,可以使用“注水算法”分配發送功率,提升系統容量。


      本回中,我們用了很大的篇幅來介紹“信道信息的應用”,最後,我們就來簡單的看一下發送端有哪些方法來獲得這些有用的信道信息的,並結束全文。

      發送端獲取信道信息的方式與通信系統所採用的雙工方式有很大關係。在一個時分複用(TimeDivision Duplexing,TDD)系統中,顧名思義,這樣的通信系統是通過時間來區分上下行數據的,所以,所有數據共享相同的頻率資源。這就相當於有一條很窄的路,每次只能允許一輛汽車通過,來往的車輛都通過時間調度,這個時刻你過,下個時刻輪到我。

word14.jpg


      這種情況下,下行車輛如果想知道“路況信息”,直接問問上行開過來的車輛就行了。在TDD的通信系統中,信道信息獲取的方式也類似:只需要對上行數據中的參考信號進行信道估計,就可以得到下行的信道信息(實際運用中,通常還需要“校準”這一步,以消除上下行射頻(RF)間的誤差)。

我國自主制定的3G通信協議TD-SCDMA,和“4G”演進版本的TDD-LTE協議,都屬於這種雙工方式,所以比較容易在發送端得到信道的信息,因此,那些強烈依賴信道信息的技術,如智能天線,波束成形等,都是這些協議中的“亮點”。

      而在FDD(FrequencyDivision Duplexing)系統中,上下行數據使用不同的頻段進行傳輸,相當於各自獨享一條單行線路。這樣一來,兩條線路上的“狀況”可能大相徑庭,就像你問一個剛從西藏乘飛機回來的同學說:“進藏公路好不好走?”,他肯定也一頭霧水。所以,在FDD系統中,建立有效的反饋鏈路,就顯得十分重要了。

word15.jpg


-------------
閒話3:
對於反饋過程來說,它的內容不能過大,否則會影響正常的上行數據傳輸。但是信道信息哪裏是省油的燈,完整且準確的信道信息的數據量龐大,將佔用大量的上行資源。因此第一步要做的,就是要減少反饋開銷。我們可以把一些計算放到接收方來做,比如SVD分解,這樣只需要反饋信道信息的一些指示,和右酉陣V的信息就夠了。怎麼,還嫌反饋量大,那我們對V進行壓縮,量化,再進行反饋好了。其實,802.11n802.11ac中的波束成形技術就是這麼做的,它通過Givens矩陣旋轉,把V轉化成只和角度有關的參數,並只反饋這些角度的量化值,以達到減少反饋量的目的。不過它們是典型的時分系統,需要在上行時隙中進行反饋。不行,反饋量還是有點大,還有沒有別的辦法呢?有!我們可以利用右酉陣V的“矩陣特性”,設計專門的碼本(Codebook),這就像給“各式各樣的V”進行了編號,每次只用向發送方反饋一個編號索引(Index),發送方就知道對應的矩陣是哪個了。LTE中“基於碼本的預編碼技術”就是採用的這種方式,反饋指示就叫“預編碼矩陣指示”(Precoding Matrix IndicationPMI)
----------------------

     結束語:這半個月來,陸陸續續更新了三篇關於MIMO技術的拙作,期間得到了通信戰友們的幫助和支持,與大家交流學習的過程,令筆者難忘。然年底將至,事物繁多,實在有些分身乏術,筆者恐怕不得不暫別論壇一陣子。通信世界還有許多精彩的技術值得我們認真學習,筆者也期待與通信戰友們一起努力學習,共同交流。謝謝~

轉自:https://blog.csdn.net/rookiew/article/details/51441071

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章