當前位置:首頁 > 嵌入式 > 嵌入式軟件
[導讀]基于SoPC的網(wǎng)絡模塊設計與實現(xiàn)

摘要:在Altera公司提供的QuartusⅡ軟件中開發(fā)網(wǎng)絡模塊控制器并在SoPC Builder中將其作為一個獨立的IP核集成到SoPC中,通過軟件驅(qū)動控制器實現(xiàn)網(wǎng)絡模塊收發(fā)等操作,發(fā)揮其設計靈活、集成度高、收發(fā)速度快等優(yōu)點,為SoPC設計中網(wǎng)絡功能提供了新的方案。
關鍵詞:SoPC;NIOSⅡ;網(wǎng)絡模塊

    網(wǎng)絡模塊是網(wǎng)絡設備中必不可少的部分,隨著近年來物聯(lián)網(wǎng)技術的高速發(fā)展,對互聯(lián)設備的網(wǎng)絡模塊提出的更高要求。本文提出了基于NIOSⅡ的SoPC系統(tǒng)設計與實現(xiàn)的網(wǎng)絡模塊。
    美國Altera公司于2000年提出了SoPC(Systemon a Programmable Chip,可編程片上系統(tǒng))技術,并同時推出了相應的開發(fā)軟件QuartusⅡ及硬件平臺FPGA (Field-Programmable Gate Array)。SOPC具備嵌入式處理器內(nèi)核,具有豐富的IP核資源可供選擇,擁有足夠的片上可編程邏輯資源,提供處理器調(diào)試接口和FPGA編程接口,具有單芯片、低功耗、小封裝等的優(yōu)點。NIOSⅡ是Altera公司發(fā)布的軟核處理器,其最大特點是可配置性較好,即用戶可根據(jù)自已的標準定制處理器,按照需求選擇合適的外設、存儲器和接口。此外還可以輕松集成自己專有的功能,使設計具有獨特的競爭優(yōu)勢。NiosⅡ軟核處理器的原理框圖如圖1所示,其中對用戶可見的單元電路包括存儲器文件、算術邏輯單元(ALU)、與用戶自定義指令邏輯的接口、異常控制器、中斷控制器、指令總線、數(shù)據(jù)總線、指令及數(shù)據(jù)緩存、緊密耦合存儲器接口電路及JTAG調(diào)試模塊等。本設計通過Altera公司的FPGA芯片和NIOSⅡ嵌入式系統(tǒng)實現(xiàn)SoPC。

1 系統(tǒng)總體方案設計
    Altera公司的SoPC Builder為建立SoPC設計提供了標準化的圖形環(huán)境,SoPC Builder包含在QuartusⅡ軟件中。SoPC Builder幫助設計者自動完成系統(tǒng)集成的工作,ScPC提供了直觀的圖形用戶界面(GUI),幫助設計者添加和配置系統(tǒng)所需的外設(包括存儲器、定制外設和IP模塊),根據(jù)設計者的要求將這些外設與處理器連接在一起,并自動完成外設和存儲器的地址映射、中斷控制和總線控制等工作。完成系統(tǒng)配置之后,SoPC Builder根據(jù)要求生成VHDL或Verilog HDL的系統(tǒng)級設計代碼,并自動生成部分外設的硬件抽象層(HAL)代碼和底層硬件驅(qū)動代碼,為軟件開發(fā)做好準備。圖2所示為SoPC Builder為本次設計生成的系統(tǒng)模塊的應用實例。



2 網(wǎng)絡模塊設計與實現(xiàn)
    SoPC系統(tǒng)設計流程如圖3所示。設計者根據(jù)任務要求決定系統(tǒng)需求,用SoPC Builder建立自已的SoPC系統(tǒng)。在硬件方面,建立一個頂層設計文件,將生成的SoPC系統(tǒng)例化,并設置引腳分配、時序要求及其它設計約束,然后編譯硬件設計并將FPGA設計下載到目標板中。在軟件方面,用Nios IIIDE開發(fā)應用軟什,在其中使用Nios II指令仿真器運行并調(diào)試軟件。之后將可執(zhí)行軟件下載到目標板上的NiosⅡ系統(tǒng)中,在目標板上運行調(diào)試軟件,并對設計的不足進行收進。
2.1 硬件模塊設計
    系統(tǒng)選用Altera公司Cyclone II系列的EP2C35F672C6,構(gòu)建一個基于NIOS II的SoPC系統(tǒng)。本設計中,NIOS II CPU負責網(wǎng)絡模塊的控制、數(shù)據(jù)的傳輸以及I/O接口等功能,故選用高端NIOS II/f內(nèi)核以滿足所要求的功能,其約占1400—1800個邏輯單元,3個M4K RAM塊,可以用來增加指令緩存。NIOS II/f的最好性能可達到101 MIPS將NIOS II處理器的復位地址設置為cfi_flash,其為非易失存儲器Flash。將NIOS II處理器的異常地址設置為sdram_0,其為掉電易失的存儲器SDRAM在“JTAG Debug Module”標簽下選擇Level 1,此時占用邏輯資源最少,為300—400邏輯單元,2個M4K RAM塊。
    網(wǎng)絡模塊選用DAVICOM半導體公司的DM9000A DM9000A集成了帶有通用處理器接口的MAC和PHY,支持100Base-T應用,帶有auto-MDIX,支持10Mb/s和100Mb/s的全雙工操作DM9000A既可支持8位處理器,也可支持16位處理器接口。DM9000A完全兼容IEEE 802.3u規(guī)范,支持IP/  TCP/UDP求和檢驗,支持半雙工模式背壓數(shù)據(jù)流控。


    DM9000A內(nèi)部功能框罔如圖4所示,左邊帶有AUTO—MDIX的收發(fā)器提供RJ45的接口,中間為MAC,右邊則為處理器接口。處理器可通過這個接口實現(xiàn)對DM9000A的控制,具體引腳包括:
    ◇nRD讀命令;
    ◇nWR寫命令;
    ◇nCS/nAEN片選;
    ◇SD0~SD7數(shù)據(jù)總線(低8位);
    ◇SD8~SD15數(shù)據(jù)總線(高8位),在16位模式下才有用;
    ◇CMD命令類型。低電平時,讀寫INDEX口;高電平時,讀寫DATA口;
    ◇INT中斷請求。
    SoPC的標準組件庫中并不包含網(wǎng)絡控制器DM9000A,在這里需要添加自定義組件。
在SoPC Builder中,用Create new component添加自定義組件。需要向其添加HDL設計文件DM9000A_IF.v,用來設計一個從Avalon總線到DM90 00A的一個邏輯接口,其代碼所下:
    [!--empirenews.page--]
  
[!--empirenews.page--]
     
    接下來設置輸入/輸出信號,使DM9000A控制器的輸入/輸出信號與Avalon總線信號匹配。
    在QuartusⅡ中為系統(tǒng)創(chuàng)建一個如圖5所示NIOSⅡCPU頂層文件,實現(xiàn)對NIOSⅡ系統(tǒng)例化。

[!--empirenews.page--]
    DM9000A為本設計的核心,其模塊如圖6所示。其中:


    ◇iCMD用來區(qū)分是INDEX端口還是DATA端口,與處理器的地址線相連;
    ◇iCS_N片選信號;
    ◇iDATA寫數(shù)據(jù);
    ◇iRD_N讀信號;
    ◇iRST_N復位信號;
    ◇iWR_N寫信號;
    ◇oTADA讀數(shù)據(jù);
    ◇oINT中斷請求信號;
    ◇其余信號均與Avalon總線相連。
    將編譯后的文件下載到FPGA中,完成硬件部分的設計。
2.2 軟件模塊設計
    系統(tǒng)網(wǎng)絡模塊的控制是通過在集成開發(fā)環(huán)境NiosⅡIDE中用C語言編程實現(xiàn)的。
    為實現(xiàn)網(wǎng)絡模塊的通信功能,需存放MAC地址、IP地址以及目標MAC地址、IP地址,其數(shù)據(jù)結(jié)構(gòu)均用無符號字符型數(shù)組實現(xiàn),MAC地址為6個字節(jié),IP地址為4個字節(jié),如下:
   
   
    網(wǎng)絡通信,最重要的就是協(xié)議的一致。本設計將各個協(xié)議字段存儲在一維無符號字符型數(shù)組中,根據(jù)各個協(xié)議需求的不同而開辟不同的空間,如下:
   
    接收到的數(shù)據(jù)報存儲在無符號字符型數(shù)組中,其中數(shù)組長度,即可接收的數(shù)據(jù)報長度MAX_PACKET_SIZE由頭文件確定為1522,如下:
    unsigned char rcv [MAX_PACKET_SIZE];
    //接收到的報文


    網(wǎng)絡模塊控制流程如圖7所示。系統(tǒng)首先對網(wǎng)絡控制器DM9000A進行初始化,包括ARP、內(nèi)存、定時器等的初始化。初始化完成之后,通過特定接口設置網(wǎng)卡的IP地址、子網(wǎng)掩碼、默認網(wǎng)關等信息。接下來,網(wǎng)絡模塊開啟中斷,以便接收網(wǎng)絡控制器的中斷信號。當接收到發(fā)送端或接收端的中斷信號后,分別進入到各自的處理進程中進行處理。若沒有中斷,系統(tǒng)則進入等待狀態(tài)。

3 系統(tǒng)測試
    由前面的工作,完成了網(wǎng)絡模塊軟、硬件部分的設計。將設計下載到FPGA平臺中,運行該系統(tǒng)。
    使用網(wǎng)線將FPGA的RJ45接口與路由器相連接。網(wǎng)絡模塊自動獲取IP地址為192.168.0.101,子剛掩碼為255.255.255.0,默認網(wǎng)關為192.168.0.1計算機也與同一個路由器相連,其獲取的IP地址為192.168.0.100。這樣計算機與FPGA中網(wǎng)絡模塊處于同一網(wǎng)段,互相之間可以通信。使用Ping命令,由計算機向網(wǎng)絡模塊的IP地址192.168.0.101發(fā)送500個包,無丟包現(xiàn)象,在這500個數(shù)據(jù)包中,返回速度在2~5ms之間。通過在NiosⅡIDE中編程實現(xiàn)網(wǎng)絡模塊Ping計算機,同樣發(fā)送500個包沒有丟包現(xiàn)象。
    將另一個同樣的FPGA連接到路由器上,獲取到IP地址192.168.0.102。在NiosⅡIDE中編程,IP地址為192.168.0.101的FPGA通過網(wǎng)絡模塊向IP地址為192.168.0.102的FPGA發(fā)送UDP格式的控制報文,可以順利控制后者面板上LED燈的亮滅,延遲不超過1秒。
    本設計完成了基于SoPC的網(wǎng)絡摸塊的軟硬件設計與調(diào)試,驗證了網(wǎng)絡饃塊的工作狀況,并在此基礎上實現(xiàn)了基于網(wǎng)絡的控制命令的傳送,使SoPC設計能與PC機或其他各種電子設備進行數(shù)據(jù)交換。隨著物聯(lián)網(wǎng)技術的發(fā)展,基于網(wǎng)絡的系統(tǒng)必將具有廣闊的應用前景。

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

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

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

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

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

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

關鍵字: 汽車 人工智能 智能驅(qū)動 BSP

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

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

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

關鍵字: 騰訊 編碼器 CPU

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

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

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

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

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

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

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術學會聯(lián)合牽頭組建的NVI技術創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(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 信息技術
關閉
關閉