SORA 微軟基于PC的軟件無(wú)線電平臺(tái)
高性能的無(wú)線通信對(duì)系統(tǒng)有非常嚴(yán)格的需求,主要是以下三個(gè)方面:
1.高速的系統(tǒng)吞吐量
包括遠(yuǎn)端射頻頭和PHY層協(xié)議之間以及PHY層協(xié)議內(nèi)部的模塊之間。例如,實(shí)現(xiàn)802.11系列協(xié)議,單天線需要大約1.2Gbps的吞吐量,如果支持4x4 MIMO應(yīng)用,那么至少5Gbps以上,這個(gè)指標(biāo)目前對(duì)大部分PC都是嚴(yán)峻的挑戰(zhàn)。
Sora的硬件架構(gòu)
Radio Control Board:RCB
RCB是Sora系統(tǒng)的核心板卡,采用了PCI Express 8x架構(gòu),最高吞吐率達(dá)到16Gbps。RCB上有8個(gè)通用的射頻接口,可以支持最高8x8MIMO。FPGA內(nèi)容邏輯框圖如下:
Radio Adapter Board:RAB
實(shí)現(xiàn)ADC和DAC功能,將模擬基帶轉(zhuǎn)換為數(shù)字基帶信號(hào)。采用USRP兼容的接口,可以支持Ettus公司大部分射頻模塊。雙通道ADC,12位64MSPS以及雙通道DAC,14位64MSPS。板上FPGA提供參考設(shè)計(jì)代碼
Radio Module:
實(shí)現(xiàn)天線接口和上下變頻,將射頻芯片轉(zhuǎn)換為模擬基帶,頻率范圍覆蓋WiFi、LTE和WiMax等主要通信頻段,帶寬最高可達(dá)80MHz。
Sora的軟件架構(gòu)
主要技術(shù):
1. 采用查找表技術(shù)充分利用CPU的L2 Cache, 大部分的PHY層算法可以通過(guò)查找表來(lái)加速1.5~22倍。
2. SIMD指令集優(yōu)化。充分利用CPU并行加速指令,特別適合FFT和IFFT這一類運(yùn)算。
3. 利用多核流水線技術(shù)
通過(guò)同步FIFO,將PHY層實(shí)現(xiàn)的子流水線模塊分配到不同的內(nèi)核執(zhí)行,充分利用多核
CPU的計(jì)算能力。
4. 獨(dú)占內(nèi)核技術(shù)
為了確保CPU可以實(shí)時(shí)響應(yīng),Sora采用了獨(dú)占線程技術(shù),可以讓某個(gè)或者某幾個(gè)內(nèi)核專用于SDR的任務(wù),不被其他系統(tǒng)調(diào)用影響。 實(shí)現(xiàn)這種技術(shù)不需要修改操作系統(tǒng)的內(nèi)核。
Sora的性能測(cè)試
以WiFi 802.11a/b/g的實(shí)現(xiàn)為案例,測(cè)試Sora的性能。算法優(yōu)化前后對(duì)比
Sora與商業(yè)網(wǎng)卡吞吐量對(duì)比
SoraSDK開(kāi)發(fā)包
Sora學(xué)術(shù)套件提供了SDK開(kāi)發(fā)包,提供了開(kāi)源實(shí)現(xiàn)的802.11a/b/g的PHY和MAC實(shí)現(xiàn)。自從2010年發(fā)布以來(lái),多次更新,目前的版本為SDK1.6,下載鏈接如下:
SDK不僅提供了PHY和MAC的實(shí)現(xiàn)代碼,還提供了調(diào)試用的一些工具,如示波器