在FOSDEM 2020會議期間,它揭幕 第一個開源開發 OpenWifi“ Wi-Fi 802.11 a / g / n” 通過編程(SDR,軟件無線電)和FPGA定義的完整堆棧波形和調製。
關於項目的有趣之處 無線網絡 就是這樣 允許您創建完全兼容Linux的實現 並控制無線設備的所有組件,包括常規無線適配器中的底層,這些層在無法審核的芯片級別實現。 Verilog中針對FPGA語言的軟件組件代碼以及電路和硬件塊描述均在AGPLv3許可下分發。
無線網絡 使用SoftMAC架構, 這意味著在控制器側實現了主要802.11無線堆棧,而在FPGA側則存在一個低MAC層。 Linux內核提供的mac80211子系統用作無線堆棧, 與SDR的交互是通過特殊的控制器完成的。
功能原型的硬件組件 證明 基於Xilinx Zynq FPGA和AD9361通用收發器(RF).
主要特點 通過OpenWifi
- 完全支持802.11a / g,部分支持802.11n MCS 0〜7(到目前為止僅PHY rx)。 計劃支持802.11ax
- 20MHz帶寬和70 MHz至6 GHz頻率範圍
- 操作模式:臨時(客戶端設備網絡),訪問點,站點和監視
- 使用CSMA / CA方法的DCF(分佈式協調功能)協議的FPGA實現。 提供10us的幀處理時間(SIFS)
- 通道訪問優先級可配置參數:RTS / CTS,自身的CTS,SIFS,DIFS,xIFS,時隙時間等。
- 根據MAC地址的時間間隔
- 輕鬆修改的帶寬和頻率:2ah為802.11MHz,10p為802.11MHz
- OpenWifi當前支持具有Analog Devices FMCOMMS706 / 2/3收發器以及ADRV4Z9361 SOM + ADRV7035CRR-BOB和ADRV1Z9361 SOM + ADRVCR(FPGA + RF)封裝的Xilinx ZC7035 FPGA SDR平台。
對於行政部門 可以使用標準的Linux實用程序,例如ifconfig和iwconfig以及通過netlink運行的專用sdrctl實用程序,並允許您以較低級別管理SDR(操作寄存器,更改時間切片器設置等)。
在其他嘗試使用Wi-Fi堆棧的開放項目中,我們可以提到Wime項目,該項目基於GNU Radio和普通PC開發了與IEEE 802.11 a / g / p兼容的發射器。
Ziria和Sora(微軟研究軟件電台)也正在開發802.11開放無線軟件堆棧。
在性能測試中, 從將帶有TL-WDN4200 N900 USB適配器的客戶端連接到基於OpenWifi的訪問點時獲得的數據, 允許達到30.6Mbps(TCP)和38.8Mbps(UDP)的吞吐量 從接入點向客戶端傳輸數據時,從客戶端向接入點傳輸數據時分別為17.0Mbps(TCP)和21.5Mbps(UDP)。
這是連接到運行OpenWifi的接入點的電話的演示。
涉及的組件 在OpenWifi的第一個原型中 費用約1300歐元,但它們正在轉移到便宜的盤子上。 例如,基於Analog Devices ADRV9364-Z7020的解決方案的成本為700歐元,基於ZYNQ NH7020的解決方案的成本約為400歐元。
排出
最後,對於那些有興趣了解更多有關該項目或下載準備好的OpenWifi映像的人 可以通過得到它 到以下鏈接。
在這裡,您可以找到有關在SD卡上使用和安裝映像的信息(該映像基於Linux的ARM版本)。
當前支持該軟件包的組件包括:ADRV9364Z7020 SOM + ADRV1CRR-BOB,Xilinx zed + FMCOMMS2 / 3/4,Xilinx ZCU102 + FMCOMMS2 / 3/4,以及Xilinx ZCU102 + ADRV9371。