【摘要】本文通過分析現場可編程門陣列(FPGA)在數據處理中的優勢和W5100固體網絡芯片的特點,采用FPGA與W5100相結合的方式,設計一種網絡傳輸系統,使得該系統具有高性能的邏輯功能、信號處理功能和網絡傳輸功能,同時具有硬件結構簡單、軟件開發簡便和可移植性強等特點。
【關鍵詞】FPGA;W5100;以太網;TCP/IP協議
1.引言
使用現場可編程門陣列(FPGA)器件設計數字電路,不僅可以簡化設計過程,而且可以降低整個系統的體積和成本,增加系統的可靠性。具有工作速度快、設計靈活和可靠性高等優勢,其應用領域從原來的通信擴展到消費電子、汽車電子、工業控制、測試測量等廣泛的領域,越來越多的系統廠商選擇用FPGA來實現最終產品。[1]
在遠程工業控制、遠程測試測量等應用領域中,通過FPGA測試和處理的數據往往經網絡高速傳輸給其他系統,一種方法是將數據由FPGA發送給由MCU與網絡接口芯片相結合組成的網絡傳輸模塊[2][3],另一種方法采用FPGA的邏輯資源綜合網絡通信協議,再通過PHY芯片將數據傳輸到物理層[4]。前者使得設計復雜,而且網絡傳輸速率相對較低,后者需開發者耗用大量時間和精力開發FPGA軟件,并且占用大量FPGA片上邏輯資源,即便如此,可靠性仍需進一步提高。
W5100固體網絡芯片將TCP/IP協議棧、以太網的MAC和PHY三種功能集為一體。具有與MCU接口的并行總線接口,還增加了SPI串行總線接口。大大簡化了硬件電路設計,使系統在沒有操作系統的支持下,真正實現了單芯片接入以太網的目的[5]。
本文采用FPGA與W5100固體網絡芯片相結合的方式設計網絡傳輸系統,只需采用FPGA對W5100進行簡單的邏輯控制,就可實現網絡傳輸功能,該系統即具有FPGA并行高性能的特點,又能使FPGA實現網絡傳輸功能模塊的軟硬件設計簡化,調試方便,可靠性高。
圖1 W5100結構框圖
2.W5100網絡接口芯片
2.1 總體介紹
W5100是一款多功能的單片網絡接口芯片,內部集成有10/100以太網控制器,主要應用于高集成、高穩定、高性能和低成本的嵌入式系統中。內部集成了全硬件的、且經過多年市場驗證的TCP/IP協議棧、以太網介質傳輸層(MAC)和物理層(PHY)。硬件TCP/IP協議棧支持TCP,UDP,IPv4,ICMP,ARP,IGMP和PPPoE,這些協議已經在很多領域經過了多年的驗證。其功能框圖及基本外圍連接如圖1所示。
2.2 工作原理
3.FPGA與W5100硬件接口設計
FPGA具有豐富的IO引腳資源,并且IO引腳通過配置可兼容1.8V、3.3V、5V等多種電平標準,W5100提供與微處理器的接口有3種:直接總線接口,間接總路線接口和SPI模式。為了快速傳輸數據,同時考慮到FPGA具有豐富的IO引腳資源,本系統采用直接總線接口。采用15位地址線、8位數據線、另加\CS、\WR、\RD、\INT及\RESET等信號線。FPGA可以與W5100靈活接口,每個被W5100使用的功能引腳都直接與FPGA的IO引腳相連,只需通過FPGA的開發軟件對相應引腳進行編程配置即可。硬件系統的接口電路如圖3所示。
4.FPGA邏輯設計
4.1 讀寫控制
FPGA主要通過控制讀寫W5100的通用寄存器、套接字寄存器和內部收發存儲器來完成網絡數據通信,以對寄存器的讀為例說明用FPGA實現對W5100讀寫的過程,圖4為W5100的讀時序圖。
圖4 W5100的讀時序圖
圖4中定義了各控制引腳的時序邏輯關系,表1列出了各引腳的時序約束關系,只需在FPGA中實現該邏輯關系即可實現對寄存器/存儲器的讀操作,用有限狀態機來實現讀寫時序,采用有限狀態機是為了避免出現邏輯混亂。以讀時序為例,選用10MHz的時鐘來進行數據和地址的讀操作,即讀周期為100ns,用50MHz的時鐘來控制狀態機,狀態如圖5所示。
4.2 工作過程控制
FPGA為并行系統,為了使圖2的各工作狀態按流程圖進行,需運用圖6所示的有限狀態機對各工作流程進行控制。
。
5.結束語
本文通過FPGA控制W5100固體網絡芯片實現網絡數據傳輸功能,通過UDP測試,該系統的網絡傳輸速率最高可達到70000kbps,使FPGA在具備高性能的信號處理與控制處理能力的前提下,通過簡單的控制即可進行網絡數據傳輸,節約了硬件資原,減少了軟件開發開支,具有簡單、可靠、價格低廉等優點。該方法可廣泛應用于工業控制、野外測試測量等需遠程數據采集與處理和數據通信等領域。
參考文獻
[1]王紅,彭亮,于宗光.FPGA現狀與發展趨勢[J].電子與封裝,2007,Vol.34No.16:32-37.
[2]陳麗娟,白瑞林.FPGA在網絡化數據采集系統中應用[J].電子測量技術,2005,5:50-51.
[3]王冬冬,李宇,張保祥.基于FPGA與ARM的遙測數據網絡化采集[J].現代電子技術,2011,Vol.34No.16:89-92.
[4]胡文靜,王增,肖雄偉,胡建偉.基于FPGA的高速網絡IP協議處理實現研究[J].湖南理工學院學報(自然科學版),2011,Vol.24No.2:36-38.
[5]鄒依依,郭燦新,黃成軍,王瑤,江秀臣.W5100在DSP遠程以太網數據通信系統中的應用[J].工業控制計算機,2008Vol.21No.8:20-23.