利用FPGA對大規(guī)模MIMO信道進(jìn)行特性描述
多用戶MIMO(MUMIMO)是一種無線通信技術(shù),采用基礎(chǔ)架構(gòu)節(jié)點(例如基站和接入點)上的多個天線為多個客戶同時提供服務(wù)。MU-MIMO是未來無線標(biāo)準(zhǔn)中必不可少的組成部分,有望為繁忙的網(wǎng)絡(luò)帶來顯著的性能提升。
人們預(yù)想隨著無線系統(tǒng)的更新?lián)Q代,基站的天線數(shù)量將會不斷增加,最終形成“大規(guī)模MIMO”系統(tǒng)。大規(guī)模MIMO方案將MU-MIMO基站上的天線數(shù)量增至數(shù)十個甚至數(shù)百個,以求在提高性能的同時簡化基站的信號處理功能。有一種可擴展的大規(guī)模MIMO技術(shù)被稱為共軛波束形成[1]。該技術(shù)的一種早期實現(xiàn)方案顯示出實際性能提升潛力[2]。
多用戶MIMO技術(shù)離不開無線傳輸環(huán)境的準(zhǔn)確信息。一個MUMIMO基礎(chǔ)架構(gòu)節(jié)點可同時服務(wù)多個用戶,前提條件是具備有關(guān)每個用戶無線信道的準(zhǔn)確的最新測量信息。實時收集信道信息極具挑戰(zhàn)性,而且陳舊或不準(zhǔn)確的信道信息對性能影響可能非常嚴(yán)重。
我們設(shè)計出一款用于描述大規(guī)模MIMO信道特性的集成系統(tǒng),可幫助研究人員實時分析信道的動態(tài)特性。該系統(tǒng)的核心部分采用基于賽靈思FPGA的WARP硬件平臺和Mango Communications的802.11參考設(shè)計,可通過萊斯大學(xué)(Rice University)的Argos平臺將24個FPGA連接至96個天線[2]。Mango Communications開發(fā)的Python定制框架可用來實時控制和收集來自陣列中每個節(jié)點的數(shù)據(jù)。Mango和萊斯大學(xué)的這兩款工具結(jié)合使用可提供深入的無線協(xié)議棧信息,包括對大規(guī)模MIMO進(jìn)行特性描述所需的原始信道數(shù)據(jù)。
Mango Communications802.11定制模塊的重要功能是實時發(fā)送來自各個接收天線的底層基帶參數(shù),例如AGC增益、信道估計值和原始數(shù)據(jù)包內(nèi)容(甚至是含有錯誤的數(shù)據(jù)包)。參考設(shè)計的這項功能使萊斯大學(xué)的Argos陣列作為符合802.11標(biāo)準(zhǔn)的接入點(AP)使用,為商用Wi-Fi設(shè)備(例如智能手機、平板電腦或筆記本電腦)提供互聯(lián)網(wǎng),同時實時收集陣列天線與每個客戶端之間的信道數(shù)據(jù)。賽靈思FPGA是實現(xiàn)每個天線上的實時處理的關(guān)鍵。
它們將來自各個天線的數(shù)據(jù)簡化成可由定制模塊發(fā)送和分析的每客戶端信道特性信息。
讓我們來具體了解一下WARP硬件平臺、Mango的802.11模塊以及針對MU-MIMO的共軛波束形成策略。最后,我們還會檢查特性分析過程,包括實時從Wi-Fi客戶端收集無線信道測量數(shù)據(jù),以及處理信道數(shù)據(jù)以估計可達(dá)到的MU-MIMO性能。系統(tǒng)組件
無線開放訪問研究平臺(WARP)是一款全新構(gòu)建的可擴展、可編程無線平臺,用于高級無線網(wǎng)絡(luò)的原型設(shè)計。WARP能夠?qū)⒏咝阅芸删幊逃布c包含參考設(shè)計和支持資料的開放源碼庫結(jié)合在一起。
WARP項目于2006年由萊斯大學(xué)教授Ashu Sabharwal創(chuàng)立,最初由美國國家科學(xué)基金會(National Science Foundation)提供資金支持,目前由賽靈思持續(xù)提供支持。自此,該項目已經(jīng)發(fā)展成為能夠自我維持的開放源碼平臺,其用戶遍布世界各地。Mango Communications于2008年從萊斯大學(xué)WARP項目中拆分出來,最初的目的是制造和銷售萊斯WARP硬件。2012年,Mango發(fā)布了經(jīng)過徹底重新設(shè)計的WARP v3硬件。如今,Mango工程師是WARP資源庫和論壇最活躍的貢獻(xiàn)者,持續(xù)提供開發(fā)和開放源碼WARP設(shè)計支持。
大規(guī)模MIMO信道測量系統(tǒng)的核心組成部分是Mango Communications的WARPv3硬件平臺。WARP v3適用于快速、實時構(gòu)建新型無線系統(tǒng)的原型設(shè)計。在硬件方面集成了一個賽靈思高性能Virtex®-6 FPGA,兩個靈活的射頻接口以及包括DDR3 DRAM和兩個1Gbps以太網(wǎng)接口在內(nèi)的多個外設(shè)。WARP v3板卡可通過Mango的雙無線電FMC模塊擴展至4個射頻接口。圖1中的硬件配置可提供具有FPGA獨立數(shù)字基帶連接的4個完全可編程的射頻接口。
為了研究大規(guī)模MIMO系統(tǒng),應(yīng)該讓多個WARPv3節(jié)點位于相同位置并共享電源、時鐘和以太網(wǎng)連接。萊斯大學(xué)Argos項目能夠滿足這一要求。Argos v2陣列包含24個四天線WARP v3節(jié)點,如圖2所示。Argos陣列旨在支持各種大規(guī)模MIMO實驗,而且特別適合同時收集所有96個陣列天線的信道測量數(shù)據(jù)。
圖2 – 萊斯大學(xué)Argos v2陣列包含24個四無線電WARP v3節(jié)點,具備共享時鐘和以太網(wǎng)連接。
這種實時處理能力對于我們的大規(guī)模MIMO信道特性描述設(shè)計來說非常重要,因為這樣系統(tǒng)就可以不斷地測量信道,并可靠地觀測小于毫秒的信道特性變化。執(zhí)行該處理的FPGA定制設(shè)計正是針對WARP v3的Mango Communications 802.11參考設(shè)計。
該參考設(shè)計是802.11a/g介質(zhì)訪問控制層(MAC)和物理層(PHY)的實時FPGA實現(xiàn)方案。該設(shè)計用來與標(biāo)準(zhǔn)Wi-Fi設(shè)備進(jìn)行交互操作,起到接入點(用于Wi-Fi客戶端)、客戶端(訪問Wi-Fi接入點)或者監(jiān)控器(只能接收的網(wǎng)絡(luò)活動無源觀測器)的作用。您可以對MAC和PHY進(jìn)行定制,以探索從標(biāo)準(zhǔn)配置衍生出的變體方案。這種互操作性與可擴展性的完美結(jié)合能夠?qū)崿F(xiàn)各種規(guī)模的無線通信和網(wǎng)絡(luò)實驗。WARP v3硬件用戶可免費獲得802.11參考設(shè)計的完整源文件。
圖3給出了參考設(shè)計架構(gòu)。該設(shè)計使用兩個賽靈思MicroBlaze™內(nèi)核在軟件中實現(xiàn)高電平和低電平MAC協(xié)議。MAC連接兩個FPGA核,分別用于實現(xiàn)PHY發(fā)送器和接收器。我們在賽靈思系統(tǒng)生成器中實現(xiàn)了這些PHY內(nèi)核。發(fā)送器內(nèi)核實現(xiàn)了完整的字節(jié)至波形流水線,可從MAC讀取數(shù)據(jù)包有效載荷,創(chuàng)建OFDM波形,并將波形驅(qū)動至射頻接口DAC。該流水線包含編碼、擾碼、交織、IFFT和前同步碼插入。MAC指定每個數(shù)據(jù)包的調(diào)制和編碼速率;支持802.11a/g規(guī)定的全部8種數(shù)據(jù)速率。
接收器設(shè)計則實現(xiàn)了完整的波形至字節(jié)流水線,包括AGC、同步、FFT、信道估計、均衡、檢測和解碼。
Argos陣列中每個WARP v3節(jié)點上的FPGA都可提供接近射頻接口的強大處理能力。在諸如Argos這樣的大規(guī)模MIMO配置中,有大量數(shù)據(jù)需要處理。例如,當(dāng)接收40MHz的帶寬時,WARP v3上的每個射頻接口都會產(chǎn)生960Mbps的采樣流(雙12位40Msps的ADC)。完整Argos陣列的總量是該值的96倍,遠(yuǎn)遠(yuǎn)超出可發(fā)送到PC和實時處理的最高值。相反,該系統(tǒng)能夠利用FPGA實時對這些數(shù)據(jù)進(jìn)行本地處理,并顯著減少上游處理器的負(fù)擔(dān)。
WARPnet框架針對我們的大規(guī)模MIMO信道特性描述設(shè)計,維持著與Argos陣列中每個節(jié)點的連接。每個節(jié)點都被配置為802.11監(jiān)控器,可捕獲來自每個接收數(shù)據(jù)包的信道估計值,并通過以太網(wǎng)下載這些數(shù)據(jù)包以備進(jìn)一步分析。
WARPnet的完整Python源代碼在WARP庫中以開放源碼方式提供。
理解MU-MIMO
采用MU-MIMO技術(shù)的基站需要為眾多發(fā)射天線創(chuàng)建波形,這些天線與無線信道相結(jié)合時可同時為多個用戶發(fā)送數(shù)據(jù)。創(chuàng)建多用戶波形需要在基站上執(zhí)行精細(xì)復(fù)雜的處理。我們現(xiàn)已提出很多種MU-MIMO技術(shù)。對MU-MIMO設(shè)計的普遍要求是準(zhǔn)確掌握每個基站天線到每個客戶設(shè)備間的無線傳播特性。
有一種被稱為“迫零”的MU-MIMO方法,與單用戶技術(shù)相比,其無論從理論上還是從近期的實踐上[3]都可實現(xiàn)顯著的性能提升。迫零方法可最大程度地提高每個客戶接收天線上的信號與干擾加噪聲比(SINR)。將SINR實現(xiàn)最大化需要最大程度地提高達(dá)到用戶天線的波形中的用戶有效載荷的信號功率(即“S”),同時盡量減小其他用戶的有效載荷功率(即“I”)。迫零法需要在基站上進(jìn)行非常精細(xì)復(fù)雜的處理。采用迫零法,在計算特定基站天線的傳輸波形時需要了解每個用戶的有效載荷以及從其它天線到每個用戶的無線信道。計算復(fù)雜性會隨著基站天線數(shù)量的增加而顯著提高。
接收器使用數(shù)據(jù)包SIGNAL字段中的RATE值自動針對每個數(shù)據(jù)包配置解調(diào)和解碼模塊。接收器能以足夠快的速度解碼任何速率的數(shù)據(jù)包,并在接收后發(fā)出確認(rèn)字符(ACK),以滿足標(biāo)準(zhǔn)對于接收至發(fā)送(Rx-to-Tx)之間嚴(yán)格的轉(zhuǎn)換要求。
接收器中的信道估計子系統(tǒng)對大規(guī)模MIMO信道的特性描述來說特別重要。在標(biāo)準(zhǔn)OFDM接收器中,信道估計器生成每個副載波的復(fù)雜信道系數(shù)。均衡器使用這些估計系數(shù)為每個接收到的數(shù)據(jù)符號校正信道幅度和相位衰減問題。此外,我們的設(shè)計還將每個接收數(shù)據(jù)包的信道估計值副本保存到片上存儲區(qū)。MAC將這些信道估計值作為關(guān)于接收幀和標(biāo)準(zhǔn)信息(例如接收器功耗、AGC增益選擇、校驗和狀態(tài)以及天線選擇等)的額外元數(shù)據(jù)。然后,信道估計值會被復(fù)制到更高電平的MAC以備進(jìn)一步處理。我們的特性描述平臺從Argos 陣列中各個節(jié)點所接收到的每個數(shù)據(jù)包中收集這些估計值,以構(gòu)成對大規(guī)模MIMO傳播環(huán)境的實時視圖。
WARPNET實驗框架
大規(guī)模MIMO特性描述系統(tǒng)的最后一個部分是WARPnet框架,用于運行大型WARP節(jié)點網(wǎng)絡(luò)的實驗。WARPnet是一個Python定制軟件包,使用專用控制連接功能連接至多個WARP節(jié)點。該框架允許Python腳本在PC上運行,以便實時地遠(yuǎn)程配置實驗參數(shù)并檢索實驗數(shù)據(jù)。WARPnet通過每個WARP v3板卡上的次級以太網(wǎng)連接與Mango 802.11參考設(shè)計進(jìn)行交互。上部的MicroBlaze器件用于處理WARPnet命令,使框架能夠直接訪問節(jié)點的高電平MAC狀態(tài)以及從低電平MAC和PHY傳送上來的全部數(shù)據(jù)。
仿真假設(shè)網(wǎng)絡(luò)中有一個基站和八個用戶,用獨立且恒等分布的瑞利(Rayleigh)衰落信道對無線信道建模。仿真實驗給出了同時服務(wù)一至八個用戶時的總體網(wǎng)絡(luò)速率與基站所用天線數(shù)量的對比情況。當(dāng)天線數(shù)量很少時,我們發(fā)現(xiàn)一次對一個以上的用戶采用共軛波束形成法并沒有好處。如果基站只限制在幾個天線,那么帶分時功能的傳統(tǒng)單用戶波束形成法可能優(yōu)于多用戶共軛波束形成法。隨著天線數(shù)量的增加,可以支持更多的用戶,以獲得整體網(wǎng)絡(luò)速率的顯著提升。
該仿真實驗使用理想的信道模型展示說明多用戶共軛波束形成法可實現(xiàn)性能提升。性能提升是否能夠在真實系統(tǒng)中實現(xiàn)取決于基站與客戶端設(shè)備之間真實的無線信道。我們的MU-MIMO信道特性描述平臺可實時測量基站與真實用戶設(shè)備之間的信道,為評估MU-MIMO技術(shù)的真實性能提供了強大的工具。
完美集成
既然我們已經(jīng)了解了測量大規(guī)模MIMO信道的目的,以及Rice Argos陣列、WARP硬件和Mango 802.11參考設(shè)計所提供的工具,我們接下來就看一看如何將這些內(nèi)容組成完整的實時大規(guī)模MIMO信道特性描述平臺。
Argos陣列中的24個WARP v3節(jié)點由Mango 802.11定制參考設(shè)計版進(jìn)行配置。這個版本以只接收監(jiān)控器模式工作,使節(jié)點的四個天線都接收數(shù)據(jù)包。每次接收數(shù)據(jù)包時,節(jié)點都會為每個副載波估算復(fù)雜信道系數(shù)。
共軛波束形成[1]是另外一種MU-MIMO替代技術(shù)。使用這種方法時,基站會最大程度地提高發(fā)送到每個客戶端設(shè)備的有效信號功率,而不會主動將干擾功率最小化。共軛波束形成法通過將信號功率最大化(SINR中的“S”)同時忽略干擾功率(SINR中的“I”)的方式增加每個用戶的SINR,理論上這種方式會隨天線數(shù)量的增加而改善。此外,進(jìn)行每個傳輸天線波形的共軛波束形成計算時,無需知道其它天線的信道特性。以上因素綜合起來使得共軛波束形成法特別適合用于大規(guī)模MIMO系統(tǒng),其中基站天線數(shù)量比用戶要多得多。
考慮一下經(jīng)典的Shannon信道容量公式C =log(1+SINR)。無線信道的容量(比特/秒/Hz)與SINR成對數(shù)增長關(guān)系。當(dāng)系統(tǒng)添加更多用戶和天線時,多用戶共軛波束形成法存在兩個相互矛盾的因素。首先,多個天線的存在會增加接收信號功率,因為每個天線都可旋轉(zhuǎn)相位,使傳輸信號在用戶接收器端被有機地結(jié)合起來。第二,獨立用戶的多傳輸會增加干擾功率。疊加的干擾信號會隨機組合。隨著天線數(shù)量的增加,有機組合的信號功率增長速度超過隨機組合的干擾功率,從而增大整體的SINR。
圖4中的仿真結(jié)果顯示出,在使用共軛波束形成法時,基站天線數(shù)量的增加對整體網(wǎng)絡(luò)容量的影響。
對數(shù)據(jù)包進(jìn)行解碼并通過以太網(wǎng)發(fā)送數(shù)據(jù)包頭和信道估計值以進(jìn)行分析。這個處理流程在陣列中所有24個并行工作的節(jié)點中執(zhí)行。
為了與標(biāo)準(zhǔn)Wi-Fi設(shè)備通信,信道測量平臺必須實現(xiàn)一個標(biāo)準(zhǔn)的802.11接入點。使用另一個WARP v3節(jié)點來達(dá)到此目的,使Mango 802.11參考設(shè)計運行于AP模式。這個AP節(jié)點作為Argos陣列中的第25個節(jié)點。AP可提供開放的Wi-Fi網(wǎng)絡(luò),接受商用Wi-Fi設(shè)備的關(guān)聯(lián),并通過其主以太網(wǎng)連接提供互聯(lián)網(wǎng)接入。
這是Mango 802.11參考設(shè)計中AP的標(biāo)準(zhǔn)特征。為了實現(xiàn)實時信道測量,AP需要實施一個附加功能。每次有Wi-Fi客戶端加入或離開無線網(wǎng)絡(luò)時,AP節(jié)點會通過WARP v3板卡上的副以太網(wǎng)連接發(fā)送一個以太網(wǎng)數(shù)據(jù)包。信道分析應(yīng)用程序(下面將介紹)使用這些關(guān)聯(lián)更新來維護活動客戶端本地列表。 客戶端傳輸
在從Wi-Fi商用設(shè)備接收到的數(shù)據(jù)包中收集信道估計值時所面臨的一個重要挑戰(zhàn)是確保設(shè)備的信息發(fā)送頻率足夠高?,F(xiàn)代Wi-Fi設(shè)備經(jīng)常采用嚴(yán)格的節(jié)電方案,在沒有應(yīng)用程序請求網(wǎng)絡(luò)接入的情況下會關(guān)閉Wi-Fi連接。這些設(shè)備會定期與接入點報到,但其頻率有可能不足以確保獲得最新的陣列信道估計信息。
我們用兩種方法解決客戶端傳輸頻率不足的問題。首先,修改由平臺AP發(fā)送的信標(biāo)中的流量指示圖(TIM)字段,以通知所有連接客戶端有新的數(shù)據(jù)包正排隊等待。TIM字段一般用來幫助客戶端實現(xiàn)節(jié)電效果,使客戶端在純接收模式下短暫喚醒,以接收信標(biāo),解碼TIM,并在無流量等候時恢復(fù)到低功耗模式。通過在每個信標(biāo)的TIM字段中列出每個節(jié)點,可以讓節(jié)點較少地進(jìn)入休眠模式。
第二種方法是使用客戶端設(shè)備發(fā)送的ACK數(shù)據(jù)包來請求客戶端傳輸。該陣列可以從客戶端發(fā)送的任何數(shù)據(jù)包(包括短ACK)中提取信道估計值。不過,802.11 ACK數(shù)據(jù)包只包含一個目標(biāo)MAC地址,通常會阻止陣列識別正在傳輸?shù)目蛻舳恕?/p>
我們在802.11 MAC規(guī)范中使用一個特殊方法來解決這一問題。該標(biāo)準(zhǔn)要求802.11器件在成功接收發(fā)送到該客戶端的單播數(shù)據(jù)包后發(fā)送一個肯定的確認(rèn)數(shù)據(jù)包。即使數(shù)據(jù)包源地址無法識別,“強制ACK”要求仍然適用。因此, AP可發(fā)送一個采用唯一虛假源地址的數(shù)據(jù)包,以便讓包含唯一標(biāo)識符的客戶端觸發(fā)一個ACK發(fā)送信號??蛻舳耸盏?strong>數(shù)據(jù)包后會將ACK發(fā)送至AP所使用的唯一虛假源地址。陣列節(jié)點接收ACK,并明確地將得到的信道估計值與發(fā)送客戶端進(jìn)行關(guān)聯(lián)。這個技巧非常好用,能夠在陣列上為信道估計觸發(fā)頻率更新。之所以能使用這種方法,是因為Mango802.11參考設(shè)計具備完全可編程性。
實時分析
大規(guī)模MIMO信道測量平臺的最后一個組成部分是定制應(yīng)用程序,該應(yīng)用程序能夠收集陣列信道估計值,計算出可達(dá)到的多用戶容量,并實時顯示結(jié)果。我們采用Objective C開發(fā)該應(yīng)用,使用本地UDP插口連接陣列的WARP v3節(jié)點,并利用OS X圖形框架繪出結(jié)果。
該應(yīng)用程序有兩個主視圖。第一個視圖顯示每個陣列天線針對各個副載波所收集的信道數(shù)量,共4,992個數(shù)據(jù)點(52個副載波x96個陣列天線)。該視圖顯示由陣列收集的原始信道數(shù)據(jù),并主要負(fù)責(zé)傳達(dá)由每個陣列天線觀察到的大量信道值。
圖5給出了該視圖的屏幕截圖。實際上,該視圖會進(jìn)行實時更新(10幀每秒更新活動Wi-Fi客戶端)。
應(yīng)用程序的第二個視圖顯示了根據(jù)陣列信道估計值得到的容量計算結(jié)果。在圖6中給出該視圖。執(zhí)行兩個容量計算。第一張圖描繪了每個用戶的容量與所用陣列天線數(shù)量的對比情況。圖中的每條線近似等于可達(dá)到的單用戶下行鏈路容量,并假設(shè)陣列在傳統(tǒng)的單用戶波束形成配置下使用部分天線。每條容量曲線斜度隨天線數(shù)量增加而減小,這清楚地說明在使用傳統(tǒng)單用戶無線技術(shù)時多天線優(yōu)勢會減小。
第二張圖顯示了陣列使用部分天線實現(xiàn)下行鏈路多用戶波束形成技術(shù)時的總體網(wǎng)絡(luò)容量。四條曲線的走勢清楚體現(xiàn)了在使用多用戶技術(shù)時更多天線數(shù)量所帶來的優(yōu)勢。當(dāng)服務(wù)更多用戶時斜率增加體現(xiàn)了采用多用戶波束形成技術(shù)時所實現(xiàn)的“日志外(outside the log)”(常在MIMO中用 “prelog” 表達(dá))網(wǎng)絡(luò)容量增益。
我們在2月份舉行的2014賽靈思新興技術(shù)座談會(ETS)上演示了大規(guī)模MIMO信道測量平臺。演示具體內(nèi)容,包括視頻和補充材料鏈接均在http://warpproject.org/XilinxETS中提供。
參考資料
1. T.L. Marzetta, “Noncooperative Cellular
Wireless with Unlimited Numbers of Base
Station Antennas,” IEEE Transactions on
Wireless Communications, vol. 9, no. 11, pp.
3590–3600, 2010
2. C. Shepard, H. Yu, N. Anand, E. Li, T.
Marzetta, R. Yang and L. Zhong, “Argos:
Practical Many-Antenna Base Stations,” Proceedings
of ACM MobiCom, pp. 53–64, 2012
3. Q. Yang, X. Li, H. Yao, J. Fang, K. Tan, W.
Hu, J. Zhang and Y. Zhang, “Bigstation: Enabling
Scalable Real-time Signal Processing
in Large MU-MIMO Systems,” Proceedings
of ACM SIGCOMM, pp. 399–410, 2013