一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

千兆以太網(wǎng)工程模塊劃分總結(jié)與分析

潘文明 ? 來源:明德?lián)P吳老師 ? 作者:明德?lián)P吳老師 ? 2022-11-25 10:15 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

千兆以太網(wǎng)工程模塊劃分總結(jié)與分析

很多朋友在工程模塊劃分的時候總會遇到很多問題,比如不知道如何下手、模塊劃分不合理等;我開始也是這樣的,在學習了明德?lián)P的幾項工程以后,按照老師分享的思路,也對模塊劃分有了一定的小經(jīng)驗,今天通過案例的方式與大家分享。

一、模塊劃分要點總結(jié)

1、列出項目的功能要求(客戶提出的產(chǎn)品功能要求)

2、畫出硬件的系統(tǒng)結(jié)構(gòu)框圖(添加外設(shè))

3、框圖中每個外圍接口都對應有一個接口轉(zhuǎn)換模塊

接口轉(zhuǎn)換模塊的作用是將外圍器件的接口時序轉(zhuǎn)為通用的接口時序,或者將通用接口時序轉(zhuǎn)換為外圍器件接口時序,這樣使得FPGA內(nèi)部其他模塊不用再關(guān)心外圍接口的時序了。

MDY規(guī)范通用接口時序:

l data以及對應的vld,傳輸單個數(shù)據(jù)格式

l MDY的包文格式,din,vld,SOP,EOP,MTY,ERR

l wren,waddr,wdata;rden,raddr,rdata,rdata_vld

4、考慮是否涉及指令系統(tǒng)(操作碼+數(shù)據(jù)格式)

上位機,例如PC,ARMDSP或者其他的器件,只涉及到一個接口,但是卻有很多指令或者命令功能要發(fā)送,因此就需要一個指令系統(tǒng)。

指令系統(tǒng)一定會涉及到命令、地址和數(shù)據(jù)。這種情況,肯定會有一個“寄存器解析模塊”,根據(jù)命令、地址和數(shù)據(jù),改變相應的寄存器的值。

5、考慮外圍器件是否涉及寄存器配置

項目中有某些外設(shè),上電工作前需要進行配置才能按要求工作。因此需要對外設(shè)內(nèi)部寄存器進行讀寫,這一流程是通過FPGA來進行配置。

遇到這個情況,使用MDY推薦的模塊寄存器配置結(jié)構(gòu):

寄存器配置表模塊+寄存器讀寫配置模塊+外設(shè)配置接口時序轉(zhuǎn)換模塊

6、根據(jù)實際情況,增加、補充或者拆分,優(yōu)化對應模塊,隨時調(diào)整

原則:根據(jù)接口信號,看模塊間是否方便對接。接口就決定了模塊功能。所以在這一層的調(diào)整,一定要清楚接口的定義。

7、考慮是否涉及多路進一路出,要用FIFO

調(diào)度FIFO要考慮自身帶寬能否滿足多路一起突發(fā)發(fā)送時的數(shù)據(jù)量情況。如果帶寬不滿足,就要要輸出給上游模塊RDY信號。此時RDY信號有效取決于自己設(shè)置FIFO的Almost Full信號。如果帶寬滿足則不必設(shè)RDY信號。

8、考慮是否涉及到速率匹配問題,要加上RDY信號或者FIFO

首先考慮與外圍器件通信的接口上是否需要rdy信號(FPGA內(nèi)部運行頻率往往與設(shè)接口速率不一致),然后考慮FPGA內(nèi)部模塊間數(shù)據(jù)帶寬是否不一致,有等一等的情況。

二、千兆以太網(wǎng)工程案例分析

根據(jù)前面總結(jié)的要點,通過實際項目案例來分析一下FPGA內(nèi)部功能模塊是怎樣劃分的。這里我們選取已經(jīng)做過的千兆以太網(wǎng)工程,接下來按照上面總結(jié)的模塊劃分步驟,一步步完成模塊初步劃分!

1.列出項目的功能要求

本項目功能要求:FPGA內(nèi)部產(chǎn)生要發(fā)送的包文數(shù)據(jù),通過UDP協(xié)議,發(fā)送給PC;PC發(fā)送UDP格式包文數(shù)據(jù),F(xiàn)PGA需要解析UDP協(xié)議,提取出用戶數(shù)據(jù);ARP協(xié)議實現(xiàn)定期發(fā)送ARP協(xié)議,獲取對方電腦的物理地址。

功能分析:

a) FPGA內(nèi)部產(chǎn)生發(fā)送的包文數(shù)據(jù);

b) 要通過UDP協(xié)議發(fā)送,就需要添加MAC協(xié)議頭部,IP協(xié)議頭部,UDP協(xié)議頭部;

c) FPGA接收到PC發(fā)來的UDP報文,要一層層解析協(xié)議頭部信息,先解析出MAC頭,然后是IP頭,UDP頭,最后才能獲取用戶數(shù)據(jù);

d) FPGA定期發(fā)送ARP協(xié)議請求報文;

e) FPGA接收到PC發(fā)來的ARP協(xié)議應答報文,要解析出源MAC地址;并在發(fā)送包文數(shù)據(jù)中,將獲取的MAC地址作為目的MAC地址進行打包發(fā)送。

2.畫出硬件系統(tǒng)結(jié)構(gòu)框圖

根據(jù)步驟1總結(jié)出的功能要求,找到除FPGA外需要哪些外圍器件。分析得出:

FPGA與PC通信是以千兆以太網(wǎng)的形式,需要將FPGA輸出的信號調(diào)制成千兆以太網(wǎng)信號,本項目選取了外部PHY芯片RTL8211來實現(xiàn)此通信調(diào)制功能。同理PC端發(fā)送的數(shù)據(jù)通過千兆以太網(wǎng)網(wǎng)線傳輸,需要經(jīng)過PHY解調(diào)后輸出給FPGA;

為了設(shè)計方便,F(xiàn)PGA發(fā)送的報文數(shù)據(jù)中,完成FCS校驗的計算交給了MAC IP核來完成;同理,接收端接收到PC發(fā)來的報文數(shù)據(jù)也由MAC IP核完成FCS校驗;

前期為了驗證設(shè)計,考慮添加按鍵作為觸發(fā)MAC IP核初始化的啟動條件。

外圍器件總共需要三個:

a) 按鍵

b) 2PHY(RTL8211)

c) 3PC

畫出系統(tǒng)框圖如下所示:

16aa1296622d43ef9a8658314d002ab9~noop.image?_iz=58558&from=article.pc_detail&x-expires=1669947223&x-signature=XLsAaDrqax6HaxTsCco8wtdr28E%3D

3.框圖中每個外圍接口都對應有一個接口轉(zhuǎn)換模塊

a) 按鍵對應的接口轉(zhuǎn)換模塊是按鍵消抖檢測模塊;

b) PHY對應的接口轉(zhuǎn)換模塊是MAC IP核模塊。

添加后框圖如下所示:

e7c146d96d5f4a3d88d9d903188e9624~noop.image?_iz=58558&from=article.pc_detail&x-expires=1669947223&x-signature=GX%2FSxmI6mP74jhkMlqib7zcV14E%3D

本項目不涉及指令系統(tǒng)

5.考慮外圍器件是否涉及寄存器配置

本項目中MAC IP核涉及寄存器配置。使用MDY推薦模板:寄存器配置表模塊+寄存器讀寫配置模塊+外設(shè)配置接口時序轉(zhuǎn)換模塊;

由于MAC IP配置接口使用的是Avalon協(xié)議(與MDY接口協(xié)議不同之處在于waitrequest信號),所以外設(shè)配置接口時序轉(zhuǎn)換模塊對外接口也應該是Avalon,對內(nèi)則是MDY規(guī)范接口。

完善后如下所示:

2529a97665f547b1896e0608e410526f~noop.image?_iz=58558&from=article.pc_detail&x-expires=1669947223&x-signature=H%2BjVCptDGjyjL5i4lDhxbv9uqXc%3D

到第6步,根據(jù)數(shù)據(jù)流向,需要對模塊間的接口進行詳細分析了,補充模塊或者將功能相同的模塊合并化簡。

從發(fā)送側(cè)數(shù)據(jù)流向思考:

a) FPGA內(nèi)部產(chǎn)生要發(fā)送的數(shù)據(jù),因此需要一個數(shù)據(jù)產(chǎn)生模塊;

b) 產(chǎn)生的發(fā)送數(shù)據(jù)需要先添加UDP頭部,所以需要一個添加UDP協(xié)議頭部模塊;

c) 然后添加IP頭部,需要一個添加IP協(xié)議頭部模塊;

d) 最后添加MAC頭部,就完成了完整的發(fā)送UDP協(xié)議報文,因此需要一個添加MAC協(xié)議頭部模塊;

e) 同時需要定期發(fā)送ARP協(xié)議請求報文,需要一個ARP請求報文模塊;

f) 由于ARP報文需要定時產(chǎn)生,所以需要一個計時模塊。

從接收側(cè)數(shù)據(jù)流向思考:

FPGA接收到PHY解調(diào)出的PC發(fā)送來的UDP報文或者ARP應答報文,經(jīng)過MAC IP核驗證FCS后,解析出正確或者錯誤的UDP、ARP報文:

a) 經(jīng)過MAC IP核輸出的報文需要進行MAC頭部檢查,正確則輸出UDP、ARP報文,錯誤則做丟包處理。所以需要一個MAC頭部解析模塊;

b) 經(jīng)過MAC頭部解析模塊處理后輸出的是正確的IP報文,此時需要進行IP頭部檢查,正確則輸出報文,錯誤則做丟包處理。所以需要一個IP頭部解析模塊;

c) 經(jīng)過MAC頭部解析模塊處理后輸出的是正確的ARP應答報文,此時需要進行ARP報文解析,獲取發(fā)送端MAC地址。所以需要一個ARP應答解析模塊;

d) 同1、2兩步原理,輸出UDP報文需要進行UDP頭部檢查,所以需要一個UDP頭部解析模塊。

經(jīng)過UDP頭部解析模塊解析出來的報文數(shù)據(jù)即是PC端發(fā)來的正確用戶數(shù)據(jù),輸出即可。

補充后如下圖所示:

494de3eb4e774d818e83123de37598f2~noop.image?_iz=58558&from=article.pc_detail&x-expires=1669947223&x-signature=RobcVFWZZNYSykQ5I6PS%2FpkpbJE%3D

接下來將功能互斥、數(shù)據(jù)流向相關(guān),接口一致的模塊做合并化簡處理,如下圖所示:

23dc342928474689a12fb2af8bcaa782~noop.image?_iz=58558&from=article.pc_detail&x-expires=1669947223&x-signature=VtNvpK93orH%2BC1GuLuwTWE7kfJM%3D

本項目數(shù)據(jù)流方面涉及多路進一路出的問題。

在進行模塊優(yōu)化時,注意到產(chǎn)生的用戶數(shù)據(jù)和定時ARP請求報文不能同時輸出給MAC IP核,需要一個發(fā)送調(diào)度模塊來完成多路輸入一路輸出的調(diào)度,是發(fā)送打包模塊送來的UDP報文還是發(fā)送ARP請求報文。

b92a215e5dae45d6b30aec4c0a62f8bb~noop.image?_iz=58558&from=article.pc_detail&x-expires=1669947223&x-signature=a8ZKvRit7GN0vz6abZ7Hrf%2FkGtg%3D

8.考慮是否涉及到速率匹配問題,要加上RDY信號或者FIFO

首先考慮與外圍器件通信的接口上是否需要rdy信號。

外圍PHY芯片與FPGA通信是經(jīng)過MAC IP核來處理,時序MAC IP核已經(jīng)做好了,所以不需要設(shè)rdy信號。

再考慮FPGA內(nèi)部模塊間運行速率不匹配的情況,根據(jù)數(shù)據(jù)流方向來考慮:

發(fā)送側(cè):

a) 發(fā)送報文打包模塊需要時間(計算各個協(xié)議頭部校驗和,長度等信息),所以需要在數(shù)據(jù)產(chǎn)生模塊和數(shù)據(jù)打包模塊間設(shè)FIFO并設(shè)rdy信號。

b) 數(shù)據(jù)打包模塊和ARP請求報文發(fā)送模塊同時發(fā)送給報文調(diào)度模塊,發(fā)送包文調(diào)度模塊不能同時響應,需要FIFO來緩存,考慮到突發(fā)情況FIFO會溢出,所以需要與數(shù)據(jù)打包模塊和ARP請求報文定時發(fā)送模塊間設(shè)FIFO并設(shè)RDY信號。

接收側(cè):

接收側(cè)模塊間速率匹配,不需要設(shè)FIFO和RDY信號。

最終得到的模塊圖如下所示:

aacad42d133f4912b15aae65fe7c1ad1~noop.image?_iz=58558&from=article.pc_detail&x-expires=1669947223&x-signature=8RBdGWz2rI4DZVhCI%2B57SFmk4FA%3D

到此,根據(jù)模塊劃分步驟一步步做下來,千兆網(wǎng)工程的模塊劃分雛形初步已經(jīng)完成。具體實踐中需要根據(jù)FPGA內(nèi)部信號的調(diào)整,隨時拆分或獨立來增減功能模塊。

今天分享的案例是千兆以太網(wǎng)工程。該工程是明德?lián)P的網(wǎng)絡(luò)班、就業(yè)班的其中一個項目,涉及到MAC協(xié)議、ARP協(xié)議、IP協(xié)議和UDP協(xié)議的實現(xiàn),協(xié)議較多,劃分的模塊也較多。



審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1645

    文章

    22034

    瀏覽量

    618046
  • 千兆以太網(wǎng)
    +關(guān)注

    關(guān)注

    0

    文章

    70

    瀏覽量

    14066
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    WiFi和以太網(wǎng)哪個更快

    以太網(wǎng)通常比WiFi更快、更穩(wěn)定,尤其在理想條件下差距顯著;而WiFi勝在靈活便捷,但實際速度受環(huán)境干擾較大。 以下是具體分析: 一、理論速度對比 以太網(wǎng) 千兆
    的頭像 發(fā)表于 07-01 09:54 ?237次閱讀

    雙通道CAN轉(zhuǎn)以太網(wǎng)#CAN轉(zhuǎn)以太網(wǎng)#三格電子

    以太網(wǎng)
    三格電子科技
    發(fā)布于 :2025年05月12日 13:17:05

    AD9574以太網(wǎng) 千兆以太網(wǎng)時鐘發(fā)生器技術(shù)手冊

    AD9574具有多路輸出時鐘發(fā)生器功能,內(nèi)置專用鎖相環(huán)(PLL)內(nèi)核,針對以太網(wǎng)千兆以太網(wǎng)線路卡應用進行了優(yōu)化。 整數(shù)N PLL設(shè)計基于ADI公司成熟的高性能、低抖動頻率合成器產(chǎn)品系列,確保實現(xiàn)高的網(wǎng)絡(luò)性能。 AD9574還適
    的頭像 發(fā)表于 04-10 10:43 ?303次閱讀
    AD9574<b class='flag-5'>以太網(wǎng)</b> <b class='flag-5'>千兆</b><b class='flag-5'>以太網(wǎng)</b>時鐘發(fā)生器技術(shù)手冊

    串口轉(zhuǎn)以太網(wǎng)芯片選型指南:2025十大以太網(wǎng)模塊品牌盤點與應用方案解析

    ,不同品牌的以太網(wǎng)模塊在性能、穩(wěn)定性、功能支持等方面存在差異,如何選擇合適的芯片成為了眾多研發(fā)工程師關(guān)注的重點。 本文基于權(quán)威數(shù)據(jù)平臺的分析,盤點了2025年十大主流
    的頭像 發(fā)表于 04-09 15:30 ?652次閱讀

    廣成科技CAN轉(zhuǎn)以太網(wǎng)模塊的作用和應用

    CAN轉(zhuǎn)以太網(wǎng)模塊是一類能夠?qū)AN總線數(shù)據(jù)轉(zhuǎn)換為以太網(wǎng)數(shù)據(jù)的設(shè)備,通常用于實現(xiàn)CAN總線與以太網(wǎng)總線之間的互聯(lián)互通。在智能鎖柜和智能文件交換箱中,CAN轉(zhuǎn)
    的頭像 發(fā)表于 03-20 13:58 ?527次閱讀
    廣成科技CAN轉(zhuǎn)<b class='flag-5'>以太網(wǎng)</b><b class='flag-5'>模塊</b>的作用和應用

    以太網(wǎng)帶寬總是跑不滿,是什么原因?

    導讀隨著網(wǎng)絡(luò)需求增長,千兆以太網(wǎng)速率問題備受關(guān)注。本文針對其實際速率低的情況,詳細分析布線不佳等原因,并從等長走線、阻抗匹配等硬件方面及軟件調(diào)試角度,提供全面提升速率與穩(wěn)定性的有效方法。正常的
    的頭像 發(fā)表于 12-26 11:34 ?3556次閱讀
    <b class='flag-5'>以太網(wǎng)</b>帶寬總是跑不滿,是什么原因?

    英偉達邁絡(luò)思以太網(wǎng)模塊的介紹和型號梳理

    英偉達邁絡(luò)思高速以太網(wǎng)模塊滿足現(xiàn)代數(shù)據(jù)中心,支持AI系統(tǒng)大規(guī)模并行計算,支持25G至400G應用,是數(shù)據(jù)中心和高性能計算網(wǎng)絡(luò)的關(guān)鍵組件。本文介紹英偉達邁絡(luò)思以太網(wǎng)模塊概況,相關(guān)配置
    的頭像 發(fā)表于 11-25 12:01 ?1220次閱讀
    英偉達邁絡(luò)思<b class='flag-5'>以太網(wǎng)</b>光<b class='flag-5'>模塊</b>的介紹和型號梳理

    以太網(wǎng)協(xié)議的種類和特點

    以太網(wǎng)是一種局域網(wǎng)(Local Area Network, LAN)技術(shù),它定義了一組用于在局域網(wǎng)中傳輸數(shù)據(jù)的規(guī)則和標準。以太網(wǎng)協(xié)議的種類和特點如下: 1.
    的頭像 發(fā)表于 11-08 09:10 ?3380次閱讀

    工業(yè)以太網(wǎng)的應用場景分析

    隨著工業(yè)4.0和智能制造的興起,工業(yè)以太網(wǎng)作為連接工業(yè)設(shè)備、實現(xiàn)自動化和智能化的關(guān)鍵技術(shù),其應用場景日益廣泛。 工業(yè)以太網(wǎng)的特點 高可靠性 :工業(yè)以太網(wǎng)設(shè)備通常采用堅固的外殼和接口,能夠抵抗極端溫度
    的頭像 發(fā)表于 11-07 14:26 ?2133次閱讀

    怎么檢查CAN以太網(wǎng)模塊的物理連接

    檢查CAN以太網(wǎng)模塊的物理連接是確保數(shù)據(jù)能夠正確傳輸?shù)闹匾襟E。
    的頭像 發(fā)表于 09-18 11:30 ?900次閱讀

    車載以太網(wǎng)線束傳輸性能——汽車線束故障定位實際測試結(jié)果分析#車載以太網(wǎng)

    車載以太網(wǎng)
    北匯信息POLELINK
    發(fā)布于 :2024年08月16日 18:13:19

    以太網(wǎng)端口和千兆端口的區(qū)別

    以太網(wǎng)端口和千兆端口在多個方面存在顯著的區(qū)別,這些區(qū)別主要體現(xiàn)在速度、應用范圍、技術(shù)規(guī)格以及網(wǎng)絡(luò)性能等方面。
    的頭像 發(fā)表于 08-07 15:42 ?2430次閱讀

    100M/1000M以太網(wǎng)靜電浪涌防護方案

    方案簡介 以太網(wǎng)是一種生產(chǎn)較早且廣泛應用的局域網(wǎng)通訊方式,同時也是一種協(xié)議,其核心在于實現(xiàn)區(qū)域內(nèi)(如辦公室、學校等)的網(wǎng)絡(luò)互聯(lián)。根據(jù)數(shù)據(jù)傳輸速度的不同,以太網(wǎng)大致可以劃分為幾個等級:標準以太網(wǎng)
    的頭像 發(fā)表于 07-25 17:23 ?1789次閱讀
    100M/1000M<b class='flag-5'>以太網(wǎng)</b>靜電浪涌防護方案

    車載以太網(wǎng)與傳統(tǒng)以太網(wǎng)的區(qū)別

    車載以太網(wǎng)與傳統(tǒng)以太網(wǎng)在多個方面存在顯著的差異,這些差異主要體現(xiàn)在傳輸速率、實時性、可靠性、物理層標準、應用場景以及技術(shù)發(fā)展等方面。
    的頭像 發(fā)表于 07-25 11:12 ?3380次閱讀

    MX60千兆以太網(wǎng)非接觸式連接解決方案

    MX60千兆以太網(wǎng)非接觸式連接解決方案是無線收發(fā)器,可提供高速固態(tài)無線連接,以取代傳統(tǒng)的機械連接器。為了簡化設(shè)計,MX60千兆以太網(wǎng)非接觸式設(shè)備提供了內(nèi)置天線,并且非常適合在高振動應用
    發(fā)表于 07-17 16:15 ?529次閱讀