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