



下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、 基于DSP的嵌入式網絡瘦服務器的研究 基于DSP的嵌入式網絡瘦服務器的研究 類別:單片機/DSP &nb
2、sp來源:微計算機信息 作者:王振 王攀 馬雙寶  摘要:主要介紹了網絡傳輸控制協議TCP/IP的原理以及在嵌入式系統上的實現,并論述了以TMS320VC5402為核心處理器的嵌入式網路瘦服務器的研制。該系統簡化了TCP/IP的實現,使嵌入式系統成功接入Internet,具有靈活,方便,可移動性等特點。并給出了網絡數據采集處理系統的應用前景。  關鍵詞:TCP/IP,TMS320VC5402,R
3、TL8019AS,網絡瘦服務器;  1. 引言  將嵌入式系統與Internet網結合起來主要的困難在于,一方面,Internet網上的各種通訊協議對于處理器的要求比較高,而嵌入式系統微處理器的資源卻是很有限1;另一方面,嵌入式系統微處理器的型號、種類非常多,在各種不同的微處理器上實現網絡功能的軟件編程可移植性差 2。為了能夠使得嵌入式系統接入Internet,本文精簡了TCP/IP的實現,只保
4、留其中最核心的部分,實現了低速度,低內存,低成本的嵌入式系統上的網絡連接,一方面能夠作為網絡服務器接收和處理來自遠端的數據,另一方面還能作為Web服務器給遠程客戶機提供HTTP訪問。  2系統的硬件設計  2.1 系統硬件設計原理  在本系統中我們采用的核心處理器為TI公司的TMS320VC5402
5、,TMS320VC5402是16位定點DSP,適應遠程通信等實時嵌入式應用的需要。它有高度的操作靈活性和運行速度,具有專用硬件邏輯的CPU、片內存儲器、片內外圍設備以及一個高度專業化的指令集3。在本文中,由于網絡數據流較大,我們采用了TMS320VC5402的McBsp接口以及其DMA功能。McBsp具有全雙工通信,雙緩沖的發送和三緩沖的接收數據存儲器,允許連續的數據流等特點,能夠完全滿足網絡數據流的接收,發送和處理的要求4。DMA控制器可以在沒有CPU參與的情況下完成存儲器映射區之間以及內部存儲器與片內外設或外部設備的數據傳輸,DMA控制能夠大大減輕CPU的負擔,實現數據的高速傳送與存儲。&
6、#160;  本文中以太網控制芯片采用臺灣Realtek公司生產的RTL8019AS,它是一種高度集成的以太網控制器,實現了以太網媒介訪問層(MAC)和物理層(PHY)的全部功能。按數據鏈路的不同, RTL8019AS內部分為遠程DMA通道和本地DMA通道兩部分。本地DMA完成控制器與網線的數據交換,主處理器收發數據需對遠程DMA操作 5。本系統中,TMS320VC5402通過IO空間對RTL8019AS進行控制以及數據傳輸。
7、0; 2.2 系統整體硬件框圖  系統框圖如上圖所示,整個系統分為兩大部分,即DSP處理器和網卡部分。系統有專門的電源部分為整個瘦服務器提供不同的電壓。TMS320VC5402是主處理器,它主要負責對網卡芯片RTL8019AS接收或發送的數據進行處理分析,存儲,并可以以USB或RS485串口總線的方式與上位機相連,其工作過程為DSP通過McBsp接收或發送數據,當McBsp緩沖區數據
8、滿時觸發DMA控制器并進行數據傳輸,實現了McBsp與DMA控制器的配合工作。網絡接口芯片RTL8019AS主要負責對網絡數據流的接收與發送,為了防止干擾,獲得穩定的數據流,系統在網卡芯片與外部網絡數據線之間增加了電氣隔離濾波芯片YCL20F001N。外部接口部分我們采用常用的RJ45網絡接口。  3系統軟件設計  系統軟件部分是本文研究的重點,由于嵌入式系統的資源有限,所以系統只涉及到TCP/I
9、P中的核心的部分。按照TCP/IP協議分為四個部分6的定義,系統軟件的設計也分為相應的四個部分,即:網卡底層驅動程序,ARP以及RARP程序對應網絡接口層;IP,ICMP以及IGMP程序對應互聯網絡層;TCP和UDP程序部分對應網絡傳輸層;HTTP服務程序對應應用層。  3.1 網卡驅動程序設計  在網卡芯片RTL8019AS的驅動程序設計中主要涉及到RTL8019AS的寄存器配置,DSP對RTL
10、8019AS內存的讀取以及發送數據,數據鏈路層協議ARP和RARP的程序設計等。   RTL8019AS寄存器以及對它們的初始化配置  RTL8019AS的內部輸入輸出地址共32個,地址偏移量為00H1FH。其中00H0FH共16個地址,為寄存器地址。10H17H共8個地址,為DMA地址。18H1FH共8個地址,為復位端口5。本文中我們只用到了上面的地址中只有18個,即00H0FH共16個寄存器地
11、址,10H DMA地址,1FH 復位地址。RTL8019AS初始化配置為操作方式為跳線方式Jumper;端口I/O base為0300-31FH。   RTL8019AS的數據收發  處理器對RTL8019AS的軟件操作,有查詢和中斷兩種方式5。在本文中我們采用了查詢方式對8019中的數據進行讀取。在查詢方式下,主程序通過CURR和Boundary兩個寄存器的值來判斷是否收到一幀數據7。
12、0;   數據鏈路層協議ARP的程序設計  在TCPIP協議通訊中,涉及到的地址是IP地址,這是來自網絡層的地址,然而以太網都有自己的尋址機制,所以兩層之間必須進行地址之間的轉換。向以太網中發送IP數據時,如果目的IP地址在ARP高速緩存表中查詢相應的以太網地址失敗,ARP會先保留待發送的IP數據報,然后廣播一個詢問目的主機硬件地址的ARP報文,等收到回答后再將IP數據報發送出去,RARP協議恰恰相反,它負責
13、將以太網地址轉化為IP地址5。  在本系統中只涉及到ARP程序設計,其具體過程為:發送ARP廣播請求時,目的以太網地址全為1;接收到ARP數據包時首先判斷ARP數據包的類型,如果是ARP請求包,則將自己的MAC地址拷貝到數據包中,生成ARP應答包,然后發送出去;如果收到的是ARP應答包,則存儲遠程主機的MAC地址。  3.2 互聯網絡層的程序設計
14、  網絡層主要涉及到IP協議、ICMP協議和IGMP協議。IP協議是TCP/IP中的重點,所有的應用都要通過它在Internet進行數據傳輸,IP協議提供的是不可靠、無連接的數據分組傳送服務。ICMP協議主要是用于差錯控制。IGMP協議主要是用于支持主機和路由器迸行多播5。為了簡化TCP/IP協議,在本系統中只涉及到IP,ICMP的程序設計。   IP數據報實現
15、; 在本協議棧中,IP層的實現就是把要發送出去的消息進行IP打包,即加上IP包頭,使之符合IP數據包的格式發送到物理層;將接收到的來自物理層的數據包進行IP解包,即去掉包頭,送到TCP層。  IP協議的實現主要流程是:當接收到以太網上的數據包時,根據IP幀頭中的數據類型,轉交給不同的子程序進行更進一步的處理。見圖2:
16、160;   ICMP數據報的格式及其實現  由于本文所研究的是嵌入式瘦服務器,所以我們簡化了ICMP的程序設計,只涉及ECHO和ECHO REPLAY消息,目的是為了測試另一臺主機是否可達。其主要工作過程為先判斷所收到的ICMP數據包是否為ECHO幀,如果是則生成相應的ICMP REPLAY幀,并發送出去。 3.3 傳輸層的程序設計
17、160; 傳輸層主要包括UDP協議和TCP協議,在本文中主要涉及到TCP的程序設計。傳輸控制協議TCP提供面向連接的可靠的字節流通信服務,是能動態滿足互聯網的要求并能處理各種錯誤的可靠性協議5。   TCP連接的建立與關閉  TCP工作過程是: 建立連接、數據傳輸、關閉連接。在將數據發向遠方主機之前,必須先建立TCP接入。在建立TCP連接時,用到了
18、三向握手機制。包含數據的每一個TCP段都應該取得對端返回的應答段(ACK),作為握手信號來保證數據被可靠地接收。應答段本身不再需要應答,避免應答陷入無窮的嵌套。每一個TCP段中都包含一個序號,并以這個序號作為數據流的定位器,而返給客戶機的應答號則表達所發來的數據已經妥收。消除傳輸中的錯誤,仰賴持續跟蹤已發出數據段的應答是否返回。在設定的時間段內,如果未收到該段的應答則應重發。如果還是未收到應答,則適當增加間隔時間再次重發。在總的極限時間段內一直不能等到應答返回,則本次接入失效不能再用,并應將出錯情況及時通知應用程序。關閉TCP接入分為4向握手才能完成6。 &
19、#160;  由于TMS320VC5402的資源有限,因此,在設計TCP協議時不得不采取大幅度的調整。同一時間只能有一個TCP任務,不支持分片和重組,只能同時接收和處理一個TCP包,不支持類型服務安全選項。在MCU啟動時,將打開本地的80端口,作為一個Passive Port,等待網絡上的客戶端設備連接,這就能提供HTTP服務的支持。   TCP數據的處理 &
20、amp;nbspTCP數據的處理包括兩種情況:發送數據或接收數據。發送數據時,在數據前面加上TCP包頭再發送到IP層。接收TCP數據包處理過程如下圖3所示:  3.4 應用層的程序設計  TCPIP的應用層協議主要有Telnet協議、文件傳輸協議FTP、簡單郵件協議SMTP、簡單的網絡管理協議SNMP
21、和超文本連接協議HTTP等等。本系統中我們在MCU的Flash中存儲了一個HTML 網頁,客戶端存在外部請求時,傳輸網頁給客戶端,從而同時實現了一個Web服務器8。  3.5 整體軟件框架  系統的整體軟件設計主要分為硬件初始化部分和網絡數據接收與發送處理部分,其中硬件初始化部分主要包括TMS320VC5402的初始化以及其McBsp和DMA控制器的配置,USB接口芯片的初始化,RS485串行接口
22、的初始化,網卡芯RTL8019的驅動程序設計;網絡數據的處理部分主要包括來自遠程采集數據的接收與處理,存儲和對來自網絡客戶機的訪問的處理等。圖4即為系統軟件設計的整體架構。  4.系統的應用前景  本系統主要應用于網絡數據采集,處理,即可以作為Web服務器為外部所訪問,又可以為遠程采集到的數據進行處理和存儲。該系統不僅利用了網絡數據傳輸的強大功能,還結合了嵌入式系統的靈活性,在不久的將來當IPV6得以實現的時候,每個嵌入式系統都擁有自己獨立的IP地址將成為可能,本系統也將有更加廣闊的應用前景9。  參考文獻: 1楊全勝等,可接入Internet的智能儀表的設計,工業控制計算機2001年14卷 12期
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《西游記》導讀課件講解
- 勞動關系托管合同樣本
- 2025屆廣州天河區一一三中高考英語三模試卷含解析
- 2025屆寶坻區第一中學高考考前提分英語仿真卷含解析
- 2025社會資本進入醫療領域政策環境分析及投資機會挖掘報告
- 2025屆福建省福安市一中高三沖刺模擬英語試卷含答案
- 航空發動機維修技術優化與成本控制策略研究報告:2025年視角
- 2025標準型房屋租賃合同模板
- 工業互聯網平臺2025年網絡安全態勢感知技術安全態勢感知技術風險評估報告
- 2025正式員工勞動合同模板
- 離散數學(下)智慧樹知到課后章節答案2023年下桂林電子科技大學
- 醫療機構安全檢查表
- 【基于雙因素理論下Y公司基層員工激勵機制研究11000字(論文)】
- 醫務人員手衛生考試試題
- 信息技術說課市公開課金獎市賽課一等獎課件
- GB/T 42172-2022精油產品標簽標識通則
- 肺癌SBRT的進展課件
- 2500個常用字按偏旁部首歸類
- 方案設計初步設計施工圖設計要求模板
- 安徽海華科技集團有限公司年產2萬噸甲酚技改及廠區清潔化升級改造項目環評報告書
- 城鄉規劃管理與法規智慧樹知到答案章節測試2023年同濟大學
評論
0/150
提交評論