基于HHBF561的家庭網(wǎng)關平臺的研究與設計
引言
家庭網(wǎng)絡的目標是將一個家庭中的各種信息家電(如數(shù)字電視、游戲機、PDA等)及其它控制設備(如電表、水表、汽表、能源自動控制、保安系統(tǒng)等)通過網(wǎng)絡連接為一個小范圍的局域網(wǎng),以便集成控制網(wǎng)和信息網(wǎng)的服務,即解決“最后10米的問題”,它主要包括家庭網(wǎng)絡的聯(lián)網(wǎng)技術和接人技術兩部分內容。由于未來家庭內部將會有多個信息設備(包括電腦、信息家電和控制設備)同時聯(lián)入Internet,為降低家庭用戶管理和維護的復雜性,一般不可能為每個信息設備都提供一個Internet出口,而且在目前沒有一種主導聯(lián)網(wǎng)解決方案的情況下,要解決各種信息設備之間的互聯(lián)和互操作問題,通常在考慮家庭網(wǎng)絡的組成時,往往會設置一個家庭網(wǎng)關。家庭網(wǎng)關是家庭區(qū)域網(wǎng)的關鍵設備,它可使家庭中的信息設備相互通信,并可通過同一個Internet高速管道實現(xiàn)集成的語音、數(shù)據(jù)和視頻服務。
家庭網(wǎng)關平臺主要完成網(wǎng)絡協(xié)議的轉換和處理,包括MPU,RAM、ROM、多種網(wǎng)絡接口及外設接口、RTOS、網(wǎng)絡通信協(xié)議和應用軟件等。家庭網(wǎng)關是一個家庭專用設備。與實現(xiàn)網(wǎng)關功能的普通PC機相比,傳統(tǒng)的操作系統(tǒng)往往不夠穩(wěn)定,易用性較差。而作為提供關鍵功能(如安全可靠)的網(wǎng)關。專用設備則在性價比上存在較大優(yōu)勢。考慮到家庭網(wǎng)關的靈活性、可移植性,本文基于HHBF561開發(fā)板,并采用主流家庭聯(lián)網(wǎng)技術和接入技術,來對家庭網(wǎng)關進行如下定義:
(1) 網(wǎng)關是一個協(xié)議轉換器,是一種可以對數(shù)據(jù)格式。傳輸速率和媒體驅動方式等協(xié)議的轉換和通信轉發(fā)的設備。
(2) 設備資源管理器必須有一個I/O設備,通常應由一個輸入裝置(鍵盤,鼠標或話筒等)和顯示裝置組成,并應能解釋設備描述文件。
(3) Web服務器應具有瀏覽器功能,可以將設備配置管理文件轉換成操作頁面,并具有用超文本傳輸協(xié)議HTTP發(fā)送的能力。
(4) 網(wǎng)關還應該是一個防火墻,應能保證家庭網(wǎng)絡的信息安全。
2 基于HHBF561平臺的軟件開發(fā)
整個開發(fā)系統(tǒng)包括硬件開發(fā)板、底層軟件支持庫、驅動程序、操作系統(tǒng)和上層應用程序。這里以實現(xiàn)可視VoIP網(wǎng)關為例對其進行詳細介紹。圖1所示是其軟件架構示意圖。
在網(wǎng)關軟件的整體結構中,網(wǎng)關的上層應用包括最主要的控制部分程序,主要負責控制SIP核心協(xié)議棧SIP和RTP/RTCP核心協(xié)議棧的正常運轉。同時控制芯片工作以完成IP網(wǎng)側和PSTN網(wǎng)側協(xié)議的相互轉換。而其它部分軟件由于各自的功能比較集中,因而可單獨模塊化實現(xiàn)。而整個軟件運行的基礎則是嵌入式操作系統(tǒng)。
2.1 μClinux操作系統(tǒng)
Linux是一種很受歡迎的操作系統(tǒng),它與U-NIX系統(tǒng)兼容,并具有開放的源代碼。它原本被設計為桌面系統(tǒng),現(xiàn)在則廣泛應用于服務器領域。Linux更大的影響在于它正逐漸的應用于嵌入式設備。μClinux正是在這種氛圍下產(chǎn)生的。在μClinux這個英文單詞中,μ表示Micro(小的意思),C表示Control(控制的意思),所以uClinux就是Micro-Control-Linux,字面上的理解就是針對微控制領域而設計的Linux系統(tǒng)。
μClinux的一大特點是它沒有MMU(Mem-mory Management Unit,內存管理單元),它是針對沒有MMU的CPU而設計的,并專為嵌入式系統(tǒng)做了許多小型化的工作。雖然μClinux不能使用處理器的虛擬內存管理技術,但出于移植簡單和盡量靠攏標準Linux的需要,μClinux仍然沿用標準Linux的分頁內存管理結構。系統(tǒng)在啟動時將對實際存儲器進行分頁,它實際上采用的是實存儲器管理策略。μClinux系統(tǒng)對于內存的訪問是直接的,它對地址的訪問不需要經(jīng)過MMU,所有程序中訪問的地址都是實際的物理地址。該操作系統(tǒng)對內存空間沒有保護,各個進程實際上共享一個運行空間,而沒有獨立的地址轉換表。一個進程在執(zhí)行前,系統(tǒng)必須為進程分配足夠的地址空間,然后再全部載入主存儲器的連續(xù)空間。
2.2 μClinux的移植
由于向一個新的平臺上移植μClinux會涉及到很多文件,但是最主要的還是要使uClinux在指定的平臺上正常啟動,其它與平臺相關的文件可以在進一步開發(fā)過程中再進行修改,我先分析一下在啟動過程中都有哪些文件和具體硬件平臺相關,再修改相應文件,以便一步一步地完成系統(tǒng)的移植工作。
2.3 Bootlaoder
Bootlaoder在沒有操作系統(tǒng)支持的情況下,便可構建最簡單的軟件運行環(huán)境,并可將其保存在BOOTROM中,這樣,系統(tǒng)上電就能直接運行,從而實現(xiàn)簡單命令行控制和網(wǎng)絡通訊功能。該開發(fā)板可從上位機通過tftp下載操作系統(tǒng),并提供gdb調試,同時可以在此軟件平臺上搭建脫離操作系統(tǒng)的應用程序。Bootloader的啟動模式要求其能夠實現(xiàn)自動加載功能。這可借鑒vxworks中的啟動方式,即可啟動之初有一小段時間等待用戶輸入,一旦用戶輸人就進入下載模式。下載模式可提供手動下載和內存監(jiān)控功能。
2.4 TCP/IP網(wǎng)絡協(xié)議棧
通過家庭網(wǎng)關可使網(wǎng)絡與各種信息設備相連,相互交互進行工作,但需要支持多種協(xié)議。物理層和數(shù)據(jù)鏈路層協(xié)議主要包括UWB協(xié)議和Cable Modem鏈路控制協(xié)議;網(wǎng)絡層和傳送層協(xié)議主要包括ARP、RARP、ICMP、DHCP Client/Server/Proxv、PPP、TP、DNS、RIP V1.0/V2.0、TCP、UDP等協(xié)議;應用層協(xié)議主要包括TFTP、TFLNET、STMP、IMAP4、POP3、HTTP和SNMP等協(xié)議;安全協(xié)議可以采取一些較為簡便的安全措施,如包過濾、NAT/PAT及多層次口令保護等。上述協(xié)議是家庭網(wǎng)關中可能用到的最大協(xié)議集合。實際上,在開發(fā)具體產(chǎn)品時,可根據(jù)應用情況和產(chǎn)品配置情況進行合理的裁剪。
3 基于HHBF561平臺的硬件設計
本文給出了兩種硬件設計方案,分別為IPTV機頂盒解決方案和可視VoIP解決方案。
3.1 IPTV機頂盒解決方案
圖2所示是IPTV機頂盒解決方案的功能框圖。在該方案中,32位RISC MCU負責運行嵌入式Llinux,以進行無線局域網(wǎng)/以太網(wǎng)傳輸、硬盤存儲、音頻編解碼、文件管理以及控制處理等。MCU從網(wǎng)絡接收到的媒體流可以存儲到硬盤或者通過SPI接口(速率可達12 Mbps)傳給BF533,然后由BF533負責H.264@D1格式的視頻編解碼。該產(chǎn)品可實現(xiàn)的功能如下:
(1)支持H.264@D1格式的視頻播放;
(2)支持PCMCIA+802.11b無線接入;
(3)支持IrDA紅外遙控;
(4)支持100Mbps以太網(wǎng);
(5)支持硬盤存儲;
(6)實現(xiàn)VGA/S port/CVBS視頻輸出和立體聲音頻輸出;
(7)支持PS2鍵盤輸入。
3.2 可視化VoIP解決方案
目前,ARM9系列的處理器在手持終端(如PDA、Smart Phone、PMP)產(chǎn)品上已經(jīng)有了非常廣泛的應用。而實際上,它在可視電話上也有非常明顯的優(yōu)勢。因此,設計一個基于BF533和ARM9(400 MHz) MCU的可視VoIP電話方案是非??尚械摹D3所示是即是一個可視化的VOIP解決方案的結構框圖。
該方案通過使用ARM9+BF533以及相關的軟件支持可以實現(xiàn)以下功能:
(1)在局域網(wǎng)和廣域網(wǎng)內進行音視頻的電話對講;
(2)通過多媒體娛樂功能可以播放MPEG4視頻和MP3、WMA音樂;
(3)支持email服務;
(4)支持軟鍵盤和手寫輸入;
(5)可外接鍵盤和鼠標。
4 相關說明
4.1 語音編碼技術
語音通信是可視電話最基本的功能。然而,受網(wǎng)絡條件的限制,可視電話不可能占用太大的帶寬。為了適應低碼率語音通信的要求,ITU-T推出了G.72X系列語音壓縮標準。其中G.723.1、G.728、G.729和G.729A已在IP電話中得到了廣泛應用。不同的語音壓縮標準所采用的技術不同,它們可提供不同的碼率、時延和語音質量。
4.2 視頻編碼技術
原始的視頻數(shù)據(jù)需要占用非常高的帶寬。因此,如果要通過網(wǎng)絡傳輸,必須通過壓縮技術盡量降低視頻資料的碼率,以適應不同的網(wǎng)絡條件。事實上,視頻壓縮算法的效率決定著可視電話的圖像質量和應用前景。
4.3 通信協(xié)議
為保證可視電話通過網(wǎng)絡進行可靠的通信,不同的終端必須運行統(tǒng)一的通信控制協(xié)議,以保證相互協(xié)同工作。ITU-T推出的H.320/323標準是面向不同網(wǎng)絡、不同網(wǎng)絡介面,不同信令過程、以及為適應不同網(wǎng)絡而優(yōu)化設計的包結構。其中復用協(xié)定規(guī)定了視頻資料、語音資料等的打包標準,而控制協(xié)定的作用則是在終端之間協(xié)商通信方式,如視頻編碼標準的協(xié)商,語音編碼標準的協(xié)商,通道帶寬的協(xié)商等?;谝蕴W(wǎng)的可視電話通常采用H.323控制協(xié)議。
5 結束語
家庭網(wǎng)關做為家庭網(wǎng)絡中最重要的一個設備,它連接著家庭網(wǎng)絡與運營商,因此,對于家庭網(wǎng)絡的開展至關重要。本文基于華恒科技的HHBF561開發(fā)板所設計的嵌入式家庭網(wǎng)關平臺,提出了兩種家庭網(wǎng)關設計方法,并對可實現(xiàn)的功能進行了描述。
評論