基于FPGA的嵌入式串行千兆以太網設計
摘要:本設計以Xilinx FPGA為棱心芯片,利用內嵌硬核處理器PowerPC、嵌入式操作系統Xilkernel和LwIP協議功能函數,完成嵌入式串行千兆以太網系統的設計。本設計能夠滿足以太網通信對高速數據傳輸的要求,同時在電路設計時,具有PCB布線簡單以及信號完整性好等優點。
關鍵詞:千兆以太網;FPGA;SGMII;PowerPCA40
引言
隨著通信技術的發展,千兆以太網因在傳輸中具備高帶寬和高速率的特點,成為高速傳輸設備的首選?;赬ilinx FPGA的嵌入式系統設計整合了一系列的知識產權(IP)核使其功能強大,從而使得利用FPGA進行嵌入式串行千兆以太網開發成為可能。
本設計使用Xilinx公司65 tim工藝級別的Virtex-5FXT系列芯片,滿足嵌入式系統設計所應具備的高性能、高密度、低功耗和低成本的要求。V5 Hard TEMAC模塊提供了專用的以太網功能,并通過FPGA內部高速串行收發器GTX和Marvell公司的88E1111物理層接口芯片相連,完成串行千兆以太網的接口功能。物理層接口芯片支持MII、GMII、RGMII和SGMII四種以太網接口模式。相對GMII接口而言,SGMII接口的I/O端口數目少,便于PCB布線,并且數據信號以差分對的形式出現,有利于保證信號完整性。
本文將FPGA內嵌PowerPC硬核處理器、Xilinx精簡嵌入式操作系統Xilkernel,以及相應的外設IP Core相結合,完成嵌入式串行千兆以太網的設計。
1 總體設計
系統硬件平臺中選用Xilinx公司的Virtex-5 FX70t作為主控芯片,它集成了PowerPCA40處理器模塊和高速RocketIO GTX收發器。
外部存儲器采用Mcron公司的128M×16位DDRSDRAM芯片MT47H128M16HG-31T,為程序運行提供空間。
在網絡芯片方面有兩種方案可供選擇,即單物理層芯片方案和物理層加MAC層集成于同一芯片方案。基于易于控制方面的考慮,采用Marv ell公司的88E1111單物理層接口芯片作為解決方案,該芯片支持10BASE-T、100BASE-TX和1000BASE-T以太網協議。本系統硬件由Virtex-5 FX 70t芯片、88E1111 PHY芯片、DDRII芯片、8個撥碼開關(8DIPS)、8個LED燈和RJ45接口構成,其連接框圖如圖1所示。
串行千兆以太網設計中,需使用FPGA內部RoeketIO GTX收發器完成SGMII鏈路的建立。RoeketIOGTX是集成在Virtex-5 FX70t芯片中靈活的、功能可配置的千兆位級串行收發器,支持750 Mbps~6.5 Gbps的數據傳輸速率,滿足千兆以太網系統設計中數據傳輸速率的要求。本設計通過在FPGA中例化EMAC硬核,并將相應的FPGA端口和外部PHY芯片88E1111相連完成SGMII鏈路的建立。SGMII接口使用全雙工模式,有收發兩個獨立的通道,每個通道使用一對差分信號線,采用無時鐘信號模式,RoeketIO GTX收發器從串行數據中恢復時鐘用于差分數據的發送與接收。
SGMII接口實現框圖如圖2所示。
fpga相關文章:fpga是什么
評論