【導讀】我愛方案網小編為大家介紹如何802.11B的無線網卡在DSP系統中的實現,DSP對PC機數據或者直接采樣語音信號,通過無線網絡傳輸,實現數據通信。由于系統以DSP為核心,使得無線網絡的數字信號處理更加方便,可以較方便地實現數據加密、信號壓縮等較復雜的算法。
引 言
無線局域網是指以無線信道作為傳輸媒介的計算機局域網;無線網絡是有線聯網方式的重要補充和延伸,并逐漸成為計算機網絡中一個至關重要的組成部分,廣泛應用于需要可移動數據處理或無法進行物理傳輸介質布線的領域。隨著IEEE802.11無線網絡標準的制定與發展,使無線網絡技術更加成熟與完善;能夠給用戶提供更加安全可靠、移動、高效、遠距離的網絡互聯方案,并已成功應用于眾多行業。無線網絡的強大加密技術和極低的輻射以及可以自由架設的2.4 GHz自由頻段,可使無線網絡得到進一步發展。下面介紹一種在嵌入式數字信號處理器(DSP)OMAP5912上實現無線網絡802.11B的方法。
1 無線網卡模塊TNETll00B
無線信號的收發采用無線網卡模塊TNETll00B實現。TNETll00B是TI公司最近推出的遵循802.11B通信標準的無線信號收發芯片。
TNETll00B的內部功能如圖1所示。TNETll00B主要由射頻信號處理單元、基帶信號處理單元、中間接入控制單元以及嵌入式CPU、RAM、主機硬件接口、時鐘管理模塊等多個部分組成。
射頻信號處理單元實現無線信號的接收和發送。集成有1個8位22MHz的模數轉換器AD和1個10位44MHz的數模轉換器DA。AD/DA都具有自動增益控制功能,DA還具有功率控制功能。射頻信號處理單元還提供可調的參考時鐘,為AD的全速、半速時鐘或者其1/4分頻時鐘,分別對應為22 MHz、11MHz和5.5 MHz。
基帶信號處理單元實現基帶信號的調制解調,支持IEEE Std的802.11B協議。基帶單元的數據速率可以和射頻單元的時鐘一致,也可以設置成較低的1 Mb/s或者2 Mb/s。較低速率下的基帶信號為了和射頻單元進行通信,發送數據時采用插值濾波,使得低速率信號變成高速率信號;同樣,接收數據時采用抽取濾波,使得高速率信號變成低速率信號。
中間接人控制單元完成射頻單元和基帶單元與處理器的邏輯控制,處理器、RAM、時鐘以及與外設硬件接口的控制。處理器為44 MHz主頻的ARM7TDMI嵌入式處理器,RAM容量為64 KB,可以動態分配接收和發送數據所占用的塊。接人單元響應硬件產生的應答ACK、請求發送RTS、清除發送CTS等Modem命令。接人單元還具有對接收數據包的解析功能,具有64、128或者256位的加密/解碼密鑰注入功能。
主機硬件接口支持33 MHz的PCl2.2協議或者USBl.1接口,數據通信可以使用DMA后臺方式傳輸。為了支持USB接口,TNETll00B專門配有1個48 MHz的時鐘接口。此外,為了嵌入式CPU保持實時時鐘,TNETll00B配有sleep時鐘接口。該時鐘信號需要配置電池。這樣系統在斷電情況下,依靠電池仍然保持準確的時鐘信號。實時時鐘在電池情況下功耗極低,功耗為12μW。
2系統硬件結構
整個系統由OMAP5912、TNET1100B、音頻AD/DA、人機接口、PC機以及Flash組成,硬件連接如圖2所示。圖2中,13SP是核心控制單元;音頻AD用于將采集的模擬語音信號轉變成數字語音信號;音頻DA將數字語音信號轉換成模擬語音信號。FLASH_1保存DSP所需要的程序,供DSP上電調用;FLASH_2保存TNETll00B所需要的程序,供TNETll00B上電調用。DSP和PC機之間使用HPI口,使用PCI橋芯片,實現和PC機的連接。
PC機發送的數據包可以直接在PC上完成數據的壓縮、交織以及編碼等數據處理,OMAP5912負責傳送數據。對OMAP5912直接采樣的語音信號,基于WiFi的語音傳輸,(VoWiFi)要求數字化的語音信號必須以數據包的形式通過無線網絡傳輸,為此OMAP5912必須實現數據組包處理算法。此外,無線網絡要求語音數據必須在規定的時間間隔內傳送出去,一般最長的時間間隔為20ms。這樣語音信號到目的地后,目的網卡才有足夠的時間進行拆包并最終形成語音數據實時播放出去。無線網絡的結構必須保證數據包的丟失、延遲以及誤碼在規定的門限以下。在802.ll的升級協議中,還要求了新的服務質量協議、允許控制協議、快速漫游協議、智能安全協議以及無線資源管理協議等各種新的算法。這些均由OMAP5912中的嵌入式ARM處理器完成。
3 TNETll00B和OMAP5912的硬件設計
TNETll00B和OMAP5912的連接是系統硬件連接的關鍵,具體連接如圖3所示。使用OMAP5912的EMIFS接口連接TNETll00B。EMIFS是OMAP5912的慢速外部存儲器接口(External Memory InteRFace SlOW),可以方便地和外部Flash、異步SRAM等設備連接。系統的TNETll00B模塊遵循802.llB協議,其最高數據傳輸速率為11 Mbps。OMAP5912的EMIFS接口滿足其速度要求。
在TNETll00B和OMAP5912的EMIFS連接圖中,TNETll00B作為OMAP5912的外部16位從異步設備。由于OMAP5912的內部數據總線寬度為32位,而TNETll00B的數據總線寬度為16位,為此,
將每32位數據分成2個16位數據傳輸,使用BE0和BEl引腳區分當前傳輸的是高16位還是低16位。通信時,使用第20位地址線ADD20和片選信號CSl參與字節信號的譯碼,具體的譯碼電路如圖4所示。譯碼電路直接使用邏輯器件實現,也可以使用CPLD實現。此外,當TNETllOOB有數據上傳時,使用CINT引腳發送中斷信號到OMAP5912,OMAP5912根據當前自身的工作情況處理和TNETll00B的通信;OMAP5912也可以使用通用I/O引腳控制TNETll00B的復位信號,當連續多次未收到TNETll00B的響應信號時,OMAP5912可以軟件復位TNETll00B,從而避免通信的互鎖現象。此外,OMAP5912使用通用I/O引腳控制TNETll00B的CPD(CardPower Down)信號,可以在無數據通信時.控制TNETll00B進入低功耗狀態。
4 TNETllDOB和OMAP5912的軟件設計
OMAP5912和TNETll00B的數據通信流程如圖5所示。系統初始化后,OMAP5912判斷當前是否有數據讀寫。數據的讀是通過判斷是否有掛起的硬件中斷;數據寫是通過判斷上層程序是否有數據發的軟件中斷。無數據讀寫情況下,OMAP5912將定期發送測試命令到TNET1100B,以便確定TNETll00B在正常工作;也可以根據需要,將TNET1100B設置到低功耗狀態。如果讀取數據的校驗錯誤較多,表明當前無線通信的信道噪聲很大或者TNETll00B的總線被干擾出現紊亂。OMAP5912將軟件復位TNETll00B模塊,使得TNETll00B重新設置總線,避免在低信噪比情況下多次重復發送同樣的數據,減小無效通信時間。
使用OMAP5910的EMIFS接口連接無線網卡接口TNETll00B,可實現802.llB協議的無線數據收發。使用TNETll00B模塊實現射頻信號處理、基帶信號處理以及中間接入控制,可使系統結構簡單、實現方便。由于采用具有DSP核的處理器,系統還可以方便地應用各種數據信號處理算法。
相關文章
一款如何在DSP上實現二進制數折半查找算法
基于DSP控UPS不間斷電源技術原理及典型應用
基于ARM/DSP 的高性能驅動解決方案