www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 通信技術(shù) > 通信技術(shù)
[導(dǎo)讀] 摘要:研究并設(shè)計(jì)了一種基于SoPC的千兆以太網(wǎng)接口卡,重點(diǎn)對(duì)千兆以太網(wǎng)接口卡的組成、工作流程、EMAC、時(shí)鐘管理、用戶邏輯設(shè)計(jì)和軟件設(shè)計(jì)等關(guān)鍵技術(shù)進(jìn)行了描述,并基于Xilinx平臺(tái)驗(yàn)證了千兆以太網(wǎng)接口卡的有效性。本

 摘要:研究并設(shè)計(jì)了一種基于SoPC的千兆以太網(wǎng)接口卡,重點(diǎn)對(duì)千兆以太網(wǎng)接口卡的組成、工作流程、EMAC、時(shí)鐘管理、用戶邏輯設(shè)計(jì)和軟件設(shè)計(jì)等關(guān)鍵技術(shù)進(jìn)行了描述,并基于Xilinx平臺(tái)驗(yàn)證了千兆以太網(wǎng)接口卡的有效性。本文的研究為基于SoPC實(shí)現(xiàn)自主化的千兆以太網(wǎng)產(chǎn)品具有一定的工程參考價(jià)值。

關(guān)鍵詞:千兆以太網(wǎng);SOPC;接口卡

0 引言

隨著通信技術(shù)的迅猛發(fā)展,千兆以太網(wǎng)以其傳輸速度快、距離遠(yuǎn)、接口普及、成本低、易于集成等特點(diǎn),受到業(yè)內(nèi)青睞,廣泛應(yīng)用在通信、金融、商業(yè)、教育和政府機(jī)關(guān)等領(lǐng)域。

SoPC即可編程片上系統(tǒng),以FPGA為載體構(gòu)造面向應(yīng)用的完整系統(tǒng),具有開發(fā)周期短、難度和成本低的優(yōu)點(diǎn)。Xilinx公司推出基于FPGA器件開發(fā)SoPC的開發(fā)環(huán)境EDK,并在新一代器件中集成硬核EMAC,使得FPGA能夠和千兆以太網(wǎng)實(shí)現(xiàn)無縫連接。

本文研究并設(shè)計(jì)了一種基于SoPC的千兆以太網(wǎng)接口卡,重點(diǎn)對(duì)其組成、工作流程、EMAC、時(shí)鐘管理、用戶邏輯設(shè)計(jì)和軟件設(shè)計(jì)等關(guān)鍵技術(shù)進(jìn)行了描述,并開發(fā)測(cè)試用例進(jìn)行測(cè)試驗(yàn)證。

1 千兆以太網(wǎng)接口卡系統(tǒng)結(jié)構(gòu)

本文采用Xilinx公司的Virtex-5 FX70T作為核心器件,基于嵌入式處理器PPC440實(shí)現(xiàn)千兆以太網(wǎng)接口卡高速通信功能。在設(shè)計(jì)實(shí)現(xiàn)中,所設(shè)計(jì)的接口卡包括PPC440、DMA控制器、MPMC、EMC、UART、定時(shí)器、EMAC、中斷控制器和GTX等內(nèi)容,如圖1所示。

其中,PPC440是整個(gè)SoPC的核心,它控制所有部件,運(yùn)行控制程序。Xilinx提供PPC440的硬核,支持32位流水線,支持32位運(yùn)算,單核最高主頻550MHz,處理能力1000DMIPS。在本設(shè)計(jì)中,PPC440工作主頻為400MHz,內(nèi)部PLB總線頻率為100MHz。

DMA控制器能夠在CPU配置之后長(zhǎng)時(shí)間地獨(dú)立引導(dǎo)以太網(wǎng)數(shù)據(jù)在EMAC和MPMC之間高速交換。Xilinx提供獨(dú)立的IP核CDMAC,CDMAC的結(jié)構(gòu)包含4個(gè)DMA引擎,128bytes存儲(chǔ)器觸發(fā)能力,分散的地址數(shù)據(jù)Buffer。CDMAC針對(duì)MPMC提供了2個(gè)獨(dú)立的數(shù)據(jù)操作端口,針對(duì)EMAC提供了為其硬件總線構(gòu)造的4個(gè)收發(fā)端口,在CDMAC內(nèi)部有數(shù)據(jù)通道、控制通道,各包含2個(gè)DMA引擎,可以根據(jù)數(shù)據(jù)的長(zhǎng)度產(chǎn)生DMA的不同長(zhǎng)度讀寫觸發(fā)工作模式,最大效率地提高操作效率。

DDR2用來解決FPGA內(nèi)部RAM不足的問題,本系統(tǒng)采用MPMC作為DDR2的控制器。MPMC提供了1~8個(gè)端口來存取內(nèi)存,每個(gè)端口都能選擇一系列連接個(gè)性接口模塊(PIMs),包含PPC440MC、PLB、NPI、XCL和VFBC等接口。本系統(tǒng)將MPMC配置為兩端口模式。一個(gè)端口是PPC440MC,用于和

PPC440的接口;另一個(gè)端口為NPI接口,數(shù)據(jù)寬度為64位,用于要發(fā)送數(shù)據(jù)的輸入DDR2作為緩存。

FLASH用來固化和貯存可執(zhí)行的軟件程序,通過EMC接口連接在PLB總線上。UART用來完成PC機(jī)和SoPC系統(tǒng)之間的通信,定時(shí)器用來為實(shí)時(shí)操作系統(tǒng)提供周期節(jié)拍。

中斷控制器接收FPGA內(nèi)部各種中斷,包括定時(shí)器中斷、串口中斷等,并上報(bào)給PPC440,等待PPC440進(jìn)行處理。

EMAC采用Xilinx提供的硬核實(shí)現(xiàn),用戶邏輯完成對(duì)EMAC的訪問和控制。EMAC產(chǎn)生的數(shù)據(jù)通過GTX進(jìn)行串并/并串轉(zhuǎn)換后,通過外部光纖進(jìn)行通信。

2 千兆以太網(wǎng)接口卡設(shè)計(jì)

千兆以太網(wǎng)接口卡基于SoPC設(shè)計(jì),采用Xilinx提供的PPC440、MPMC、EMC、EMAC等軟硬核,結(jié)合自主開發(fā)的用戶邏輯,共同完成干兆以太網(wǎng)接口卡的通信功能。

2.1 工作原理

千兆以太網(wǎng)接口卡發(fā)送過程如下:

(1)當(dāng)需要發(fā)送時(shí),通過外部高速接口將傳輸數(shù)據(jù)寫入內(nèi)部RAM中,暫時(shí)存入DDR2中;

(2)當(dāng)DDR2中數(shù)據(jù)達(dá)到一定的數(shù)量后,向PPC440發(fā)送中斷信號(hào);

(3)當(dāng)PPC440收到中斷申請(qǐng)后,通過DMA通道將數(shù)據(jù)從千兆以太網(wǎng)送出。

千兆以太網(wǎng)接口卡接收過程如下:

(1)當(dāng)千兆以太網(wǎng)接收數(shù)據(jù)后,產(chǎn)生中斷;

(2)當(dāng)PPC440收到中斷申請(qǐng)后,通過DMA通道將數(shù)據(jù)寫入DDR2中;

(3)外部高速接口通過內(nèi)部RAM,將DDR2中的數(shù)據(jù)讀出。

2.2 EMAC

千兆以太網(wǎng)MAC采用Xilinx公司提供的三速嵌入式以太網(wǎng)MAC核(EMAC)實(shí)現(xiàn)。該IP核集成了10/100/1000Mb/s以太網(wǎng)MAC核,符合802.3—2002規(guī)范,支持全雙工的10/100/10013Mb/s,半雙工的10/100Mb/s。支持多種可配置的物理層接口,包括MII、GMII、RGMII、SGMII和1000BASE—XPCS/PMA接口。EMAC中包含主機(jī)接口、客戶端、時(shí)鐘管理、MII/GMII/RGMII接口等,如圖2所示。

在設(shè)計(jì)中,根據(jù)系統(tǒng)需求對(duì)EMAC進(jìn)行配置。配置接口為主機(jī)配置模式,并以8位數(shù)據(jù)進(jìn)行訪問,配置速率為固定千兆模式,配置物理接口為SGMII模式,通過GTX進(jìn)行串并/并串轉(zhuǎn)換。

2.3 時(shí)鐘管理

整個(gè)系統(tǒng)需要提供2個(gè)外部時(shí)鐘:40MHz單端時(shí)鐘和125MHz差分時(shí)鐘。

40MHz時(shí)鐘通過倍頻產(chǎn)生100MHz、200MHz和400MHz時(shí)鐘。100MHz時(shí)鐘為PLB總線提供時(shí)鐘,200MHz時(shí)鐘為DDR2提供時(shí)鐘,400MHz時(shí)鐘為

PPC440內(nèi)頻時(shí)鐘。

125MHz差分時(shí)鐘用于提供GTX、EMAC和內(nèi)部邏輯時(shí)鐘。125MHz高質(zhì)量的差分時(shí)鐘經(jīng)過IBUFDS后直接連接GTX的CLKIN端,然后GTX返回一個(gè)125MHz時(shí)鐘REFCLKOUT,經(jīng)過內(nèi)部DCM產(chǎn)生125MHz和162.5MHz時(shí)鐘,分別提供給GTX并行端時(shí)鐘、EMAC時(shí)鐘和內(nèi)部邏輯,如圖3所示。

2.4 用戶邏輯設(shè)計(jì)

用戶邏輯中完成三個(gè)功能:EMAC配置接口設(shè)計(jì)、客戶端發(fā)送單元設(shè)計(jì)和客戶端接收單元設(shè)計(jì)。

EMAC配置接口實(shí)現(xiàn)PPC440和EMAC之間的訪問控制。EMAC通過Xilinx提供的IPIF接口掛接在PLB總線上。

發(fā)送單元負(fù)責(zé)將待發(fā)送的數(shù)據(jù)按照一定時(shí)序發(fā)送到MAC核,再通過GTX輸出到數(shù)據(jù)鏈路中??蛻舳税l(fā)送時(shí)序如圖4所示。

客戶端發(fā)送過程如下:

(1)當(dāng)客戶端需要發(fā)送數(shù)據(jù)時(shí),首先將第一個(gè)字節(jié)送到數(shù)據(jù)線(TXD),同時(shí)將數(shù)據(jù)有效信號(hào)(TXDVLD)置高;

(2)當(dāng)EMAC收到第一個(gè)字節(jié)后,返回一個(gè)應(yīng)答信號(hào)(TXACK);

(3)客戶端收到應(yīng)答信號(hào)后,將剩余數(shù)據(jù)按照字節(jié)發(fā)送,在數(shù)據(jù)發(fā)送完成之前,TXDLVD信號(hào)一直為高。

接收單元負(fù)責(zé)根據(jù)客戶端接收時(shí)序接收來自于MAC的數(shù)據(jù)??蛻舳私邮諘r(shí)序如圖5所示。

客戶端接收過程如下:

(1)當(dāng)EMAC有數(shù)據(jù)發(fā)送到客戶端時(shí),接收數(shù)據(jù)信號(hào)(RXD)和數(shù)據(jù)有效信號(hào)(RXDVLD)同時(shí)有效;

(2)接收單元根據(jù)RXD和RXDVLD接收來自EMAC的數(shù)據(jù);

(3)當(dāng)數(shù)據(jù)接收完成后,如果接收數(shù)據(jù)正確信號(hào)(RXGOODFRAME)有效,表示該幀數(shù)據(jù)正確,則將數(shù)據(jù)提交。如果數(shù)據(jù)錯(cuò)誤信號(hào)(RXBADFRA ME)有效,表示該幀數(shù)據(jù)錯(cuò)誤,則將數(shù)據(jù)丟棄。

2.5 軟件設(shè)計(jì)

在設(shè)計(jì)中,軟件負(fù)責(zé)完成系統(tǒng)的運(yùn)行、設(shè)備的控制、系統(tǒng)各部分功能實(shí)現(xiàn)、以太網(wǎng)的TCP/IP協(xié)議的實(shí)現(xiàn)等功能。使用Xilinx提供的EDK下集成的工具SDK,使用C語言進(jìn)行編程。

EDK提供第三方支持庫TRECK,它使用一種簡(jiǎn)化的TCP/IP協(xié)議,并向用戶提供上層的API函數(shù),實(shí)現(xiàn)了一種高效的、便于與SOPC實(shí)現(xiàn)的TCP /IP協(xié)議。

3 仿真與驗(yàn)證

本論文采用Xilinx Virtex-5 FPGA芯片對(duì)千兆以太網(wǎng)接口板進(jìn)行設(shè)計(jì)和實(shí)現(xiàn),并采用Modelsim6.5d進(jìn)行仿真驗(yàn)證,采用ISE12.1進(jìn)行綜合、布局布線、生成bit文件。

將生成的bit文件下載到自主設(shè)計(jì)的板卡中,并開發(fā)測(cè)試用例進(jìn)行測(cè)試、驗(yàn)證。實(shí)際測(cè)試結(jié)果表明:基于SoPC的千兆以太網(wǎng)接口板系統(tǒng)功能正確,傳輸速率達(dá)到了線速。

4 結(jié)束語

本文研究并設(shè)計(jì)了一種基于SoPC的千兆以太網(wǎng)接口卡,重點(diǎn)對(duì)其組成、工作流程、EMAC、時(shí)鐘管理、用戶邏輯設(shè)計(jì)和軟件設(shè)計(jì)等關(guān)鍵技術(shù)進(jìn)行了描述,并開發(fā)測(cè)試用例進(jìn)行測(cè)試驗(yàn)證。經(jīng)嚴(yán)格測(cè)試驗(yàn)證表明,該千兆以太網(wǎng)接口板功能完全符合系統(tǒng)要求。

本文的研究對(duì)基于SoPC實(shí)現(xiàn)自主化的千兆以太網(wǎng)產(chǎn)品具有一定的工程參考價(jià)值。

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

在現(xiàn)代電子系統(tǒng)設(shè)計(jì)中,SOPC(System on a Programmable Chip,可編程片上系統(tǒng))、SoC(System on Chip,片上系統(tǒng))和FPGA(Field Programmable Gate A...

關(guān)鍵字: SOPC SoC FPGA

FPGA(Field-Programmable Gate Array)是一種可編程邏輯器件,可以通過編程實(shí)現(xiàn)不同的數(shù)字電路功能。固核、軟核和硬核是FPGA(Field-Programmable Gate Array)中常...

關(guān)鍵字: FPGA SOPC

FPGA的世界里,"核"如同心臟,驅(qū)動(dòng)著數(shù)字系統(tǒng)的運(yùn)作,它涵蓋了內(nèi)存調(diào)度、中斷管理等關(guān)鍵功能,由邏輯門與觸發(fā)器交織而成。IP核,即知識(shí)產(chǎn)權(quán)豐富的可重用模塊,有著三種形態(tài):軟核、硬核與固核,各自承載著獨(dú)特的特性與應(yīng)用場(chǎng)景。...

關(guān)鍵字: FPGA SOPC

在信息技術(shù)飛速發(fā)展的今天,網(wǎng)絡(luò)速度已成為衡量一個(gè)系統(tǒng)性能的重要指標(biāo)之一。從早期的傳統(tǒng)以太網(wǎng)到如今的千兆以太網(wǎng)(Gigabit Ethernet),網(wǎng)絡(luò)傳輸速度實(shí)現(xiàn)了質(zhì)的飛躍。本文將深入探討千兆以太網(wǎng)相比傳統(tǒng)以太網(wǎng)的速度優(yōu)...

關(guān)鍵字: 千兆以太網(wǎng) 高速數(shù)據(jù)傳輸

在這篇文章中,小編將對(duì)FPGA的相關(guān)內(nèi)容和情況加以介紹以幫助大家增進(jìn)對(duì)它的了解程度,和小編一起來閱讀以下內(nèi)容吧。

關(guān)鍵字: FPGA SOPC 芯片

摘要:基于Zynq-7000系列芯片,利用其ARM+FPGA的組合架構(gòu),搭建了千兆以太網(wǎng)模塊。介紹了該模塊的硬件平臺(tái)設(shè)計(jì),并在硬件基礎(chǔ)上設(shè)計(jì)了FPGA和ARM程序。經(jīng)測(cè)試,模塊成功實(shí)現(xiàn)了數(shù)據(jù)上下行傳輸功能,傳輸速度達(dá)到6...

關(guān)鍵字: ARM+FPGA 千兆以太網(wǎng) 模塊設(shè)計(jì)

摘要:基于SOPC的在線分析儀器平臺(tái)從數(shù)據(jù)采集到顯示已經(jīng)可以完成分析儀器的基本功能。通過添加與上位機(jī)的通信來方便數(shù)據(jù)的驗(yàn)證和平臺(tái)與網(wǎng)絡(luò)的鏈接以及數(shù)據(jù)傳輸,從而在非線性驗(yàn)證和TCP/IP通訊方面實(shí)現(xiàn)對(duì)上位機(jī)的信息管理,同時(shí)...

關(guān)鍵字: SOPC 信息管理 非線性 TCP/IP

摘 要:為了更好地實(shí)現(xiàn)物聯(lián)網(wǎng)或工業(yè)控制領(lǐng)域中傳感器網(wǎng)絡(luò)設(shè)備的遠(yuǎn)程監(jiān)控功能,本文設(shè)計(jì)了一種基于FPGA的嵌入式網(wǎng)關(guān)系統(tǒng)的隨機(jī)方法。該設(shè)計(jì)通過構(gòu)建可編程片上系統(tǒng) (SOPC),并利用Nios II嵌入式系統(tǒng)通過串口通信來實(shí)現(xiàn)...

關(guān)鍵字: 嵌入式網(wǎng)關(guān) FPGA NIOS II COS-II操作系統(tǒng) SOPC

摘要:針對(duì)工業(yè)控制領(lǐng)域中對(duì)多串口通信的需求,采用SOPC技術(shù)并利用FPGA的可編程性,給出了一個(gè)基于NiosII的30路串口數(shù)據(jù)轉(zhuǎn)發(fā)通信處理機(jī)的設(shè)計(jì)方法,同時(shí)定義了相應(yīng)的數(shù)據(jù)通信協(xié)議,從而實(shí)現(xiàn)了30路下位機(jī)與上位機(jī)的串口...

關(guān)鍵字: 多串口通信 SOPC FPGA NIOS

摘要:給出了采用EDA軟件Quartus II中的SOPC Builder來構(gòu)建SOPC系統(tǒng),再通過所構(gòu)建的SOPC系統(tǒng)為平 臺(tái),在Altera公司的FPGA多媒體開發(fā)平臺(tái)DE2上來設(shè)計(jì)物聯(lián)網(wǎng)數(shù)字鐘的具體方法。

關(guān)鍵字: 物聯(lián)網(wǎng) Quartus II SOPC FPGA DE2 數(shù)字鐘
關(guān)閉