《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 業界動態 > 利用Rabbit3000芯片設計以太網接入功能與TCP/IP協議棧的優勢分析

利用Rabbit3000芯片設計以太網接入功能與TCP/IP協議棧的優勢分析

2008-07-07
作者:楊 早

??? 摘 要: 首先分析了網絡方案設計過程中需要注意的三個問題,介紹并分析了現有的幾種設計方案,并以Rabbit3000芯片為例,分析了該芯片在構建以太網接口和TCP/IP" title="TCP/IP">TCP/IP協議棧" title="協議棧">協議棧方面的優勢。
??? 關鍵詞: 以太網? TCP協議? Rabbit3000微處理器

?

??? 在長期采用RS-232/RS-485等串行傳輸接口作為數據傳輸接口之后,現在越來越多的基于單片機的嵌入式系統開始提供以太網接口的高速數據傳輸接口,用于多個節點之間的數據交互,而且在單片機內部實現了TCP/IP協議棧,從而具備遠程網絡間的數據傳輸能力。TCP/IP協議棧是互聯網上數據傳輸的事實標準,支持TCP/IP協議??梢允垢鱾€廠家生產的設備之間實現互連互通,而且可以較為方便地訪問互聯網上的其他資源,如文件服務器、郵件服務器等。
??? 不斷提供更多功能是嵌入式系統的一個發展方向,但是更多的功能就意味著更多的計算任務、代碼存儲空間、數據存儲" title="數據存儲">數據存儲空間,而嵌入式系統的計算能力和存儲空間相對有限,因此需要在設計和選型時仔細規劃。本文從網絡功能入手,針對方案設計中的技術細節,從以下三點進行了分析:(1)以太網接入" title="以太網接入">以太網接入并不等同于支持TCP/IP協議棧; (2)并不是每一種類型的單片機都能夠提供足夠的處理能力來支持以太網接入;(3)系統對TCP/IP協議棧的支持是有量化衡量指標的,不只是一個是或否的問題。
??? 經過上述分析之后,本文就目前已有的幾種設計方法,分析了Rabiit3000微處理器在提供網絡功能方面的一些技術優勢。
1 以太網接入不等于對TCP/IP協議棧的支持
??? 作為一種數據傳輸技術,從傳統的OSI七層模型(見圖1)來分析,以太網技術提供的是物理層和數據鏈路層上的數據傳輸服務,它與RS-485傳輸協議的區別在于傳輸速度快和支持對等傳輸模式。以太網技術沒有規定每一個傳輸點的地址分配問題、報文的轉發與路由問題,它部分解決了點對點之間數據傳輸正確性問題,但是沒有規定如何保證非直接相連節點之間報文傳輸的丟失、重復以及亂序問題。這些問題是局域網以及廣域網都必須面對的問題,需要有另外的協議機制來解決,從計算機網絡技術的發展過程看,以太網上應用的網絡層/傳輸層協議有NetBEUI 協議、IPX/SPX協議、TCP/IP協議棧等。NetBEUI 協議是IBM公司開發的非路由協議,用于攜帶NETBIOS通信,其協議比較簡單,適用于單個網段組成的局域網;IPX/SPX協議是NOVELL公司用于NETWARE客戶端/服務器的協議族,其中IPX協議具有完全的路由能力,可以跨網絡傳輸報文,SPX協議則負責保證報文在跨網絡傳輸時的正確性;IP/TCP協議棧是廣域網上應用非常廣泛的傳輸協議,具有很強的靈活性,能夠支持多種網絡接入方式,如電話線、以太網、無線接入等。


??? 如上所述,即使設計方案提供了以太網接入功能,它也只是提供了一個高速、多點間的數據傳輸接口,并不意味著設計方案有完整的數據傳輸功能,不能保證設備之間的數據互聯互通。

2 單片機的數據存儲能力和存取速度分析
??? 對于個人電腦,從以太網絡上讀取和發送數據的任務是由網卡負責的,主板和網卡之間一般采用基于中斷的通知方式和基于PCI總線的數據傳輸方式。PCI總線提供32bit的數據傳輸寬度與132Mbps的傳輸速度,這些都是小型單片機所不能提供的。在基于單片機的設計方案中,單片機多數通過8位數據總線與RTL8019等以太網MAC控制芯片相連,單片機直接從以太網MAC控制芯片讀取收到的數據報文,然后放置在存儲芯片中。對于單指令周期的單片機,假設它接在10Mbps的以太網絡上,MAC控制芯片本身能夠緩沖10個報文,并可能出現連續幾十個報文的流量模型,則單片機需要在數據總線上提供10M~20Mbps的數據傳輸帶寬,以防止因為緩沖溢出而丟失報文。如果單片機使用的是8位數據總線,則一條數據傳輸指令要在0.5μs~1μs之內完成。對于傳統的8051單片機,一條MOVX需要兩個機器周期的時間,每個機器周期由12個時鐘周期組成,這就意味著單片機的晶振要在24M~48MHz左右。考慮到單片機同時還要以高優先級處理按鍵、顯示、A/D轉換等控制任務,只能將部分處理能力分配給以太網報文處理功能,所以以太網接入功能的引入對于單片機的運算速度提出了比較高的要求。
??? 基于單片機的以太網接入設計方案另一個需要注意的問題是單片機數據存儲空間的大小。與個人電腦相比,單片機的數據存儲空間非常有限,8051系列單片機" title="系列單片機">系列單片機的外部數據存儲空間為64KB,TI公司推出的MSC1210單片機外部也可擴展至64KB存儲器。以太網上傳輸的報文常規大小在1KB左右,IP協議報文大小規定不超過64KB,除了其他變量和數據結構,64KB的存儲器可以放置幾十個以太網報文和若干個IP層協議報文。在不考慮TCP/IP協議棧的情況下,這樣的存儲情況可以滿足解決報文丟失、亂序問題的要求。因此64KB存儲器是單片機進行以太網報文處理的一個基本要求。
3系統對TCP/IP協議棧的量化衡量指標的要求
??? TCP/IP協議棧最早是為Unix系統設計的,隨后移植到Windows和Linux等操作系統上,是目前互聯網和局域網通信的事實標準。TCP/IP協議棧內包括了多項協議,例如處理網絡層報文的IP協議和ICMP協議、處理數據報發送的UDP協議、處理有連接的傳輸層控制協議TCP、處理局域網內尋址的ARP/RARP協議等。如果系統要求有訪問WEB網頁的功能,則在TCP/IP協議棧中還要添加對HTTP協議的支持。從這一點來說,系統對TCP/IP協議棧的支持是有量化衡量指標的,不只是一個是或否的問題。考慮到單片機有限的代碼空間和數據存儲空間,單片機對TCP/IP協議棧的支持就更加受限。例如單片機應用TCP/IP協議多為完成少量數據的采集傳輸,而不是網頁瀏覽、文件傳輸這些功能。所以單片機一般不完全支持HTTP協議。
??? 即使是在單片機上實現了某種協議,資源上的限制也可能使單片機簡化對該協議的實現,例如TCP協議提供傳輸層上點對點的可靠數據連接,由于它采用了滑動窗口、握手信號和三次握手建立連接等方法來保證數據接收的有序和正確,并利用擁塞控制機制來調整報文的發送速度,所以需要較大的數據存儲空間來保存亂序到達的報文。如果單片機同時開通多條TCP連接,則需要的存儲空間會相應加倍。在不能提供足夠存儲空間的情況下,單片機可能會通過舍棄擁塞控制機制、或者減小滑動窗口的大小,限制并發TCP連接的數目等方法來降低資源的開銷,這樣實現的TCP協議棧與傳統的個人電腦上所使用的TCP/IP協議棧在功能和性能方面都有很大的區別。另一個常見的例子是IP包的分段問題,IP報文最大可以為65KB并進行分段傳輸,而在單片機里一般很難存放如此大的報文,所以一般不支持分段,單片機會采用發送小數據包的方式來避免分段。
4 在單片機上實現以太網接入和TCP/IP協議棧的多種方法
??? 設計性能指標和成本核算要求是方案設計時需要平衡的兩個基本方向,越高的性能指標就會要求更多的計算能力、存儲資源和更復雜的處理算法,這勢必會提高最終產品的核算成本。所以嵌入式系統的設計人員往往會根據自己的實際要求,提出相應的設計方案,同時滿足性能和成本核算的要求?,F有的公司提供了不同的實現以太網接入和TCP/IP協議棧的方法:在以太網接入方面有微處理器加MAC控制芯片的方案,也有微控制器整合MAC控制功能的方案;在TCP/IP協議棧實現方面,有單微處理器加定制協議棧的方案,也有雙微處理器分工加軟件協議棧的方案,也有采用專用芯片來處理協議報文的方案。
??? 在以太網接入功能的設計方案中,很多具有8位數據總線的單片機采用外接MAC控制芯片的方案,如ATMEL公司生產的89S51系列單片機外接RTL8019AS芯片,由于89C51系列單片機支持的RAM單元數目不超過2K,所以這種方案不會支持類似TCP協議這樣的復雜通信協議,一般用于簡單、少量的數據傳輸,89S51系列單片機的價格在10元以內,RTL8019AS芯片的價格在20元左右;而Freescale公司推出的MC9S12NE64單片機內置10/100Mbps以太網MAC控制器及PHY接口控制器,在只需一路以太網通信接口的情況下無需額外的MAC控制器,簡化了硬件電路設計。從存儲容量上分析,MC9S12NE64單片機提供64KB的閃存和8KB的RAM,可存儲的數據量也較為有限。
??? 在TCP/IP協議棧實現方面,采用專用芯片來處理協議報文的方案是一個比較新的實現方法。以韓國WIZnet公司推出的W3100A芯片為例,該芯片能處理TCP、UDP、ICMP和IP協議報文以及以太網的MAC協議報文,它給負責應用邏輯的微處理器提供一個類似于Socket的調用接口,可同時支持4路連接。W3100A芯片內置16KB的RAM,用于緩存收到的協議報文,它的售價在7美金左右。為了發揮W3100A芯片的作用,目前配合W3100A芯片使用的微處理器以ARM類型的微處理器居多,以ATMEL公司生產的AT91M40800芯片為例,該芯片基于ARM7TDMI內核,內置8KB的RAM,外部RAM可以擴充到8MB,并可外接LCD等復雜顯示設備。
??? 另外一種在嵌入式系統上實現TCP/IP協議棧的方法是采用雙處理器的方案,其中一個微處理器主要負責應用邏輯的控制,包括按鍵控制、顯示處理和信號采集與控制等多項功能;另一個處理器則專門負責數據在網絡上的傳輸與接收。例如有設計方案采用ATMEL公司生產的AT90S8515微控制器作為網絡傳輸控制器,采用低端的AT89S53作為事務邏輯控制器,兩個微處理器之間采用某種協議來交換數據,實現任務的同步。這樣可以利用8位/16位微處理器價格低的特點來實現較多的功能,但是相應地軟件設計的難度增大了,在某種情況下還需要嵌入式操作系統的支持。
??? 單枚微處理器加定制協議棧是實現TCP/IP協議棧的另一種方法,在這種方法中微處理器處理能力的高低和定制協議棧的大小與性能是影響總體性能的關鍵因素。針對某種微處理器進行過定制優化的協議棧往往能表現出優異的性能,Rabbit Semiconductor公司推出的Rabbit2000/3000系列微處理器就是一個協議棧定制的例子,Rabbit2000/3000微處理器的開發包中帶有完整的TCP/IP協議棧實現代碼,用戶不需要從第三方獲取TCP/IP協議棧實現代碼然后自己移植,可以縮短開發周期并獲得一定的性能保證。
5 Rabbit3000系列單片機實現以太網接入和TCP/IP協議棧的優勢分析
??? 如上所述,Rabbit3000系列單片機擁有的第一個優勢就是有針對硬件定制的TCP/IP協議棧實現代碼,使用戶只專著于應用邏輯的設計工作。該協議棧實現的協議包括PPP協議、套接字級的TCP和UDP協議、FTP、TFTP、HTTP(w/SSI 和 CGI)、DHCP客戶端、SMTP客戶端以及 POP3協議等,可以滿足用戶對互聯網資源一般性的訪問和相互間的數據傳輸。
??? Rabbit3000系列單片機擁有的另一個優勢是無需外部內存驅動器或者接口邏輯就可直接尋址多達1MB的存儲空間,這一點在8位單片機中并不多見。它具備20根地址線,3根芯片選擇線,2根輸出使能線,以及2根寫使能線可以直接與6個存儲設備(Flash或SRAM)交互,用戶可以根據各自不同的需求選擇適當的存儲芯片。如前所述,TCP協議的實現對可用存儲空間的大小很敏感,存儲空間的大小直接影響到所支持并發連接的數目、滑動窗口的大小、對亂序到達報文的緩存和處理能力,存儲空間大的情況下一般會取得更好的運行效果。如果以太網的數據發送速度達到100Mbps,隨著報文接收突發性的增強,存儲空間的大小對協議棧運行效果的影響會越加明顯。
??? Rabbit3000系列單片機擁有的第三個優勢是高運算速度。Rabbit3000系列單片機的運行時鐘最高達到54MHz,每指令字節的執行時間為兩個時鐘,因此它的運算速度非??臁P協議、UDP協議和TCP協議的報文都需要計算校驗和,而且由于這些校驗值多為16位,在8位單片機上需要更多的指令來求出計算結果,所以Rabbit3000系列單片機的速度優勢與其他8位單片機相比非常明顯。
參考文獻
[1] WRIGHT G R,STEVENS W R. TCP/IP illustrated. volume 2nd, the implementation,2004.
[2] ?Rabbit 3000 microprocessor introduction. http://www.rabbitsemiconductor.com/products/rab3000/index.shtml.
[3] ?Zilog microprocessor introduction. http:// www.zilog.com/products/.

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲一区国产| 欧美精品不卡| 一本色道久久综合亚洲精品按摩 | 国产精品女人毛片| 欧美视频中文字幕| 欧美日韩亚洲一区二区三区| 欧美成人影音| 欧美精品久久久久久久久老牛影院 | 亚洲国产欧美一区| 亚洲国产视频一区| 亚洲国产欧美久久| 亚洲国产你懂的| 亚洲精品乱码久久久久久久久| 亚洲电影欧美电影有声小说| 亚洲第一页在线| 亚洲第一久久影院| 亚洲第一区在线| 最新国产の精品合集bt伙计| 亚洲精品国产精品乱码不99按摩 | 欧美丝袜第一区| 国产精品成人一区二区网站软件| 欧美先锋影音| 国产精品萝li| 国产伦精品免费视频| 国产色产综合产在线视频| 国产日韩欧美制服另类| 国模大胆一区二区三区| 在线成人免费视频| 亚洲精品国产精品乱码不99按摩| 99re6热在线精品视频播放速度| 一区二区三区视频在线观看| 亚洲一区视频| 亚洲大胆女人| 日韩一区二区福利| 亚洲免费一级电影| 久久久久久有精品国产| 你懂的亚洲视频| 欧美日韩国产小视频在线观看| 欧美少妇一区| 国产午夜精品麻豆| 亚洲国产精品999| 99在线|亚洲一区二区| 亚洲免费影视| 91久久综合| 亚洲一区日韩在线| 久久久久久久久蜜桃| 欧美精品久久久久久久免费观看| 国产精品久久久久久久第一福利| 国产一区二区精品久久91| 亚洲国产精品一区| 亚洲综合电影| 亚洲精选成人| 欧美一区二区免费视频| 欧美成人精品影院| 国产精品欧美激情| 亚洲福利免费| 亚洲一区欧美一区| 亚洲精品一区二区网址| 欧美一区二区三区免费在线看 | 99国产精品久久久久久久| 午夜精品福利在线| 免费视频一区二区三区在线观看| 国产精品成人一区二区三区夜夜夜 | 狠狠网亚洲精品| 日韩写真在线| 亚洲第一久久影院| 亚洲一区二区欧美日韩| 久久亚洲精品中文字幕冲田杏梨 | 亚洲一二三四久久| 亚洲欧洲日本mm| 欧美一区网站| 欧美日韩极品在线观看一区| 国内精品伊人久久久久av影院| 99精品热视频| 亚洲精品日韩激情在线电影| 欧美一区二区久久久| 欧美日本在线视频| 一区二区视频免费在线观看| 亚洲神马久久| 99re成人精品视频| 美国成人直播| 国产视频久久久久| 亚洲视频一区二区| av成人免费在线| 麻豆成人在线| 国产视频精品网| 一区二区免费看| 99国产成+人+综合+亚洲欧美| 久久青青草原一区二区| 国产精品欧美久久| 一区二区免费在线观看| 亚洲免费成人av| 老司机亚洲精品| 国产日韩综合| 亚洲专区一区| 亚洲一区二区免费| 欧美另类变人与禽xxxxx| 亚洲二区精品| 亚洲激情在线| 久久一区二区三区av| 国产日本欧美一区二区| 亚洲一区二区免费看| 中日韩视频在线观看| 欧美精品日韩| 亚洲人成毛片在线播放| 亚洲精选成人| 欧美激情中文字幕乱码免费| 亚洲高清中文字幕| 亚洲国内在线| 久久在线视频在线| 狠狠色伊人亚洲综合网站色| 亚洲成人直播| 葵司免费一区二区三区四区五区| 国产日产欧产精品推荐色| 亚洲在线一区二区三区| 午夜精品免费视频| 国产精品另类一区| 亚洲午夜精品国产| 午夜亚洲性色视频| 国产精品一区二区在线观看| 亚洲影院污污.| 欧美一区三区三区高中清蜜桃| 国产精品资源在线观看| 午夜视频久久久| 久久久午夜视频| 激情久久影院| 亚洲精品久久久蜜桃| 欧美精品综合| 夜色激情一区二区| 亚洲欧美国产va在线影院| 国产精品欧美日韩久久| 亚洲欧美偷拍卡通变态| 欧美一区在线视频| 国产自产女人91一区在线观看| 亚洲第一区色| 欧美黑人国产人伦爽爽爽| 亚洲人成人一区二区在线观看| 一区二区三区产品免费精品久久75 | 国产欧美一区二区精品性色| 午夜精品av| 久久一区亚洲| 最近中文字幕mv在线一区二区三区四区| 亚洲精品少妇30p| 欧美日韩在线视频一区| 亚洲天堂av电影| 久久国产天堂福利天堂| 韩日成人av| 日韩视频一区二区三区在线播放免费观看| 欧美精品久久久久久久久久| 一区二区三区产品免费精品久久75 | 另类酷文…触手系列精品集v1小说| 亚洲电影免费观看高清完整版在线| 亚洲精品偷拍| 国产精品电影在线观看| 欧美有码视频| 欧美伦理a级免费电影| 亚洲一区二区三区在线视频| 久久九九精品99国产精品| 亚洲国产日韩欧美综合久久| 亚洲无线一线二线三线区别av| 国产精品中文字幕在线观看| 亚洲黄页一区| 国产精品国产a| 亚洲国产精品电影在线观看| 欧美日韩亚洲国产精品| 欧美一级久久久久久久大片| 欧美黑人多人双交| 亚洲欧美日韩天堂| 欧美不卡视频一区发布| 一区二区国产精品| 久久天堂成人| 一区二区欧美视频| 免费成人av在线| 中国成人亚色综合网站| 久久免费视频网| 一本色道精品久久一区二区三区| 久久九九免费| 夜夜嗨av一区二区三区中文字幕| 久久精品中文字幕免费mv| 99精品视频免费全部在线| 开心色5月久久精品| 亚洲深爱激情| 欧美激情精品久久久六区热门| 亚洲欧美日韩国产综合精品二区| 欧美v日韩v国产v| 欧美一二三区在线观看| 欧美日韩国产欧| 久久精品国产久精国产一老狼| 欧美视频在线观看免费| 久久精品国产亚洲一区二区三区| 欧美私人啪啪vps| 亚洲精品国产精品国自产观看浪潮| 国产精品日韩二区| 一本色道久久综合狠狠躁篇的优点 | 国产精品人人做人人爽人人添| 亚洲美女av在线播放| 国产一区二区0| 亚洲淫性视频| 亚洲精品视频在线观看免费| 久久中文字幕一区|