當前位置:首頁 > 電源 > 數(shù)字電源
[導讀]1、 引言 計算機網絡技術迅猛發(fā)展,幾乎延伸到各個領域,已經成為很多嵌入式系統(tǒng)的重要功能組件[1],并且衍生出新型終端,如IP電話、IPTV等。在嵌入式網絡終端系統(tǒng)中,網絡報文的收發(fā)依靠協(xié)議棧完成,其功能集中在傳

1、 引言
計算機網絡技術迅猛發(fā)展,幾乎延伸到各個領域,已經成為很多嵌入式系統(tǒng)的重要功能組件[1],并且衍生出新型終端,如IP電話、IPTV等。在嵌入式網絡終端系統(tǒng)中,網絡報文的收發(fā)依靠協(xié)議棧完成,其功能集中在傳輸層、網絡層和鏈路層。通常的報文接收機制是在鏈路層以上建立接收任務,通過查詢物理層的通信狀態(tài)或者由物理層中斷觸發(fā)[2],來接收網絡數(shù)據(jù)。這兩種方式都有一定的缺陷。查詢方式,就是接收任務按照某種規(guī)則檢查底層是否收到新數(shù)據(jù),簡單可靠,但由于網絡通信是一種隨機的離散事件,查詢方式可能對處理器資源造成嚴重浪費,加大通信延時。中斷方式相對靈活,延時固定,但在程序中引入了更多的上下文切換,在復雜度和可靠性上略有不足。本文提出一種中斷與查詢結合使用的方法,通過實踐,表明這套收發(fā)機制具有高效、穩(wěn)定、可靠的優(yōu)點。
2、 收發(fā)機制
本文的目標是充分利用嵌入式系統(tǒng)的處理器和存儲器資源,保證網絡終端報文收發(fā)的實時性和吞吐量。本系統(tǒng)按圖1的基本架構實現(xiàn)網絡通信,由三層功能模塊和兩級緩存構成一條接收通道和一條發(fā)送通道。上層是系統(tǒng)應用程序。底層負責物理鏈路上的數(shù)據(jù)收發(fā)。中層由協(xié)議棧和網絡接口適配器驅動負責上層和底層的數(shù)據(jù)交互。有兩級緩存,上層與中層之間的二級緩存用于網絡報文的封裝和解析;中層與底層之間的一級緩存分為接收緩存和發(fā)送緩存,采用環(huán)行結構,作用是解決終端與網絡之間異步問題。接收過程分為三個階段,主要工作在RX2階段;發(fā)送過程分為兩個階段,上層和中層屬于同一階段(TX2)。原因是發(fā)送過程是主動過程,由高層發(fā)起并控制低層完成,而接收過程中低層先得到數(shù)據(jù),但只能等待而不能控制高層的響應。通常物理層、媒體訪問控制(MAC)和一級緩存可以使用網絡接口控制器 (Network Interface Controller: NIC) 實現(xiàn),NIC能獨立完成物理鏈路上的報文收發(fā)。
500)this.style.width=500;" border="0" />

2、1接收流程

500)this.style.width=500;" border="0" />

本系統(tǒng)中,網絡報文接收過程RX2階段如圖2。初始狀態(tài)下,打開接收中斷A和一級緩沖溢出中斷B。若物理層收到一幀或多幀數(shù)據(jù),就存入一級接收緩存,并向處理器發(fā)出中斷請求。系統(tǒng)將會執(zhí)行相應中斷程序,檢查一級接收緩存是否溢出。如果溢出,就對其復位,并回到初始狀態(tài)。否則,關閉中斷A、B,向協(xié)議棧的接收任務發(fā)出一次接收通知。接收任務每次收到該通知,就從一級緩存取出一幀數(shù)據(jù),保存到二級緩存,并按照網絡協(xié)議進行處理后轉交上層,之后,檢查一級緩存內是否仍有新數(shù)據(jù)。如果沒有,就清除中斷A的有效狀態(tài),然后重新打開中斷A、B。如果有,就直接進入下輪接收過程。如此,一次突發(fā)過程中如果網絡中有多幀數(shù)據(jù)到達終端,能夠直接由上層一一接收,而不需一次次中斷。
2、2發(fā)送流程
本系統(tǒng)報文發(fā)送過程TX2階段如圖3,實現(xiàn)方式與接收不同,無專門任務負責發(fā)送功能,而是由協(xié)議棧提供一套統(tǒng)一接口,上層應用程序借此發(fā)送數(shù)據(jù)。首先在二級緩存中形成網絡報文,然后檢查一級緩存中發(fā)送緩存,待其可用,將數(shù)據(jù)從二級緩存復制到一級緩存,啟動發(fā)送。之后,NIC通常能夠自動完成余下的物理層發(fā)送工作。此刻,系統(tǒng)主動查詢接收通道的工作狀態(tài)。如果發(fā)生中斷A或B,就觸發(fā)軟中斷。于是,構成一種多點隨機查詢機制。[!--empirenews.page--]
本系統(tǒng)中,報文接收流程本是一種被動方式,相對查詢方式,軟硬件設計復雜度高,實用中很可能由于軟硬件缺陷導致可靠性問題。采用這種中斷結合多點隨機查詢的辦法,既克服了周期性查詢的效率低、實時性差的缺點,又消除了完全被動接收的不可靠性。
3實現(xiàn)
根據(jù)上文提出的收發(fā)機制,建立一個實驗終端系統(tǒng),檢查實際性能。
3、1系統(tǒng)硬件平臺
本系統(tǒng)核心采用LSI403LP定點數(shù)字信號處理器,時鐘頻率150MHz,最高速率600MIPS。具有外部指令和數(shù)據(jù)存儲器接口,類存儲器外設接口,三種接口共享地址、數(shù)據(jù)總線和讀寫等控制信號,但具有各自的片選信號,而且可以單獨配置,兼容不同訪問時序。
本系統(tǒng)的NIC選用RTL8019AS[4]。該NIC支持ISA總線,可直接按存儲器方式訪問,支持10BASE-T,有16KBytes片內SRAM,可作為一級緩存,其中14KB作為接收緩存,2KB作為發(fā)送緩存。

500)this.style.width=500;" border="0" />

本系統(tǒng)的以太網接口模塊電路如圖4。8019的JP引腳接高電平,將8019設置在jumper工作模式。此模式下,8019的部分功能由跳線開關來設定,軟件控制使用NE2000寄存器組。LSI403LP對8019的一個訪問周期即PCS0N的一個有效周期,可通過403的寄存器設置為403時鐘周期的整數(shù)倍。
3、2系統(tǒng)軟件設計
500)this.style.width=500;" border="0" />

本系統(tǒng)軟件架構如圖5,網絡通信流程按照上文描述設計。本系統(tǒng)基于單DSP,采用uC/OS-II 嵌入式實時操作系統(tǒng)。uC/OS-II采用基于優(yōu)先級的搶占式多任務內核,最高優(yōu)先級任務一旦就緒就必須搶占處理器[3],任務級響應時間可預知,對實時通信應用非常重要。
本系統(tǒng)中存在一個網絡接收任務和多個網絡發(fā)送任務,NIC作為它們的共享資源,利用一個信號量來進行資源分配,以確保這幾個任務不會同時訪問NIC,導致NIC故障。
4實驗結果
將一臺PC作為主機與一臺實驗終端通過10Base-T以太網直接連通,不通過任何中間節(jié)點,進行以下測試,考察本系統(tǒng)以太網接口的性能。
4、1中斷頻率
主機向實驗終端發(fā)送100字節(jié)的ICMP回傳請求報文,發(fā)送10萬次,發(fā)送速率約8330次/秒,占用帶寬約7.0Mbps。實驗終端收到ICMP報文并且解析正確則是一次成功接收,但并不響應。LSI403與8019采用不同通信帶寬,實驗結果如表1。
500)this.style.width=500;" border="0" />

500)this.style.width=500;" border="0" />[!--empirenews.page--]

表1說明,在終端內部,隨著上層與一級緩存通信速率的降低,接收中斷次數(shù)大大減少,報文丟失數(shù)有一定增加,但收到的報文數(shù)遠高于中斷次數(shù)。說明本系統(tǒng)的接收機制,能夠有效減少中斷和任務切換對處理器資源的消耗,彌補上層與一級緩存通信速率的不足。表1中第6種配置下,有大量數(shù)據(jù)包丟失,原因是403外部總線通信速率略高,數(shù)據(jù)傳輸出錯。
總線通信速率低,與處理器速度慢或者協(xié)議棧效率低對網絡報文接收性能的影響是一致的,因此,這些都能夠采用本系統(tǒng)的接收機制來獲得較大的改善。
4、2帶寬
采用表1中第5種配置,測試環(huán)境與中斷頻率測試相同,ICMP回傳請求報文長度分別為60和1514字節(jié)。主機配置是2.4GHz奔4處理器,256MDDR內存,RTL8139快速網卡,按0ms間隔(即最高速度)發(fā)送數(shù)據(jù)。測試結果如表2。本系統(tǒng)兩種情況下的吞吐量分別可以達到5.77Mbps和9.55Mbps,說明本系統(tǒng)對網絡帶寬具有很高的使用效率。
500)this.style.width=500;" border="0" />

4、3沖擊測試
計算機網絡中,各個節(jié)點都可能遭到大量數(shù)據(jù)沖擊,導致發(fā)生故障,甚至無法自動恢復。為檢測本系統(tǒng)抗沖擊能力,主機向實驗終端連續(xù)地發(fā)送長度74字節(jié)的ICMP回送請求報文。相同帶寬下,數(shù)據(jù)包長度越小,收發(fā)頻率越高,通信節(jié)點負擔也就越大。測試過程中,實驗終端只運行uC/OS-II操作系統(tǒng)和協(xié)議棧相關任務,以及一個用戶任務(每秒鐘向主機發(fā)送一個報文)。主機發(fā)送報文頻率約每毫秒10次,占用帶寬約786KBytes/s。經過3000萬次沖擊,終端仍在按1秒間隔發(fā)送報文,并且主機仍能收到終端的ICMP回送。測試結果表明,本系統(tǒng)能夠為實際應用提供很好的穩(wěn)定性保障。

5、結束語
本文針對嵌入式網絡終端,提出了一種中斷結合多點隨機查詢的網絡報文收發(fā)機制并進行實踐。通過這種機制既獲得了很高的報文接收速率,同時大大降低了系統(tǒng)的中斷切換、查詢、任務切換等負擔,而且具有很好的穩(wěn)定性和可靠性。本文的成果已經在一種基于LSI403LP的單DSP網絡電話終端方案中運用,在通信速度、丟報率、穩(wěn)定性各方面收到令人滿意的效果。

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內容真實性等。需要轉載請聯(lián)系該專欄作者,如若文章內容侵犯您的權益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或將催生出更大的獨角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉型技術解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術公司SODA.Auto推出其旗艦產品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關鍵字: 汽車 人工智能 智能驅動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務中斷的風險,如企業(yè)系統(tǒng)復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務連續(xù)性,提升韌性,成...

關鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網易近期正在縮減他們對日本游戲市場的投資。

關鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產業(yè)博覽會開幕式在貴陽舉行,華為董事、質量流程IT總裁陶景文發(fā)表了演講。

關鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數(shù)據(jù)產業(yè)博覽會上,華為常務董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權最終是由生態(tài)的繁榮決定的。

關鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應對環(huán)境變化,經營業(yè)績穩(wěn)中有升 落實提質增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務引領增長 以科技創(chuàng)新為引領,提升企業(yè)核心競爭力 堅持高質量發(fā)展策略,塑強核心競爭優(yōu)勢...

關鍵字: 通信 BSP 電信運營商 數(shù)字經濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術學會聯(lián)合牽頭組建的NVI技術創(chuàng)新聯(lián)盟在BIRTV2024超高清全產業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術創(chuàng)新聯(lián)...

關鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關鍵字: BSP 信息技術
關閉
關閉