UDP千兆以太网FPGA_verilog实现(一、知识搜集)
2018年11月11日 星期日 近段時(shí)間打算在FPGA——quartus上實(shí)現(xiàn)千兆以太網(wǎng)
一、對(duì)網(wǎng)卡的重新認(rèn)識(shí):
網(wǎng)卡工作在ISO/OSI的最后兩層:物理層和數(shù)據(jù)鏈路層。
1、物理層:定義了數(shù)據(jù)傳送與接收所需要的電光信號(hào)、線路狀態(tài)、數(shù)據(jù)編碼和電路等等,并向數(shù)據(jù)鏈路層設(shè)備提供標(biāo)準(zhǔn)接口。物理層的芯片稱之為PHY芯片
、----------------------------------------------------------------、
2、數(shù)據(jù)鏈路層:提供尋址,數(shù)據(jù)幀的構(gòu)建,數(shù)據(jù)差錯(cuò)檢查,傳送控制,向網(wǎng)絡(luò)層提供標(biāo)準(zhǔn)的數(shù)據(jù)接口等功能。以太網(wǎng)卡中數(shù)據(jù)鏈路層的芯片稱之為MAC控制器。
很多網(wǎng)卡的這兩個(gè)部分是做到一起的,他們之間的關(guān)系是PCI總線接MAC總線,MAC控制器接PHY,PHY又接網(wǎng)線(當(dāng)然并非完全直接接上,中間又一些電容等)
3、PHY和MAC之間又是如何傳送數(shù)據(jù)和相互溝通的呢?
IEEE定義了標(biāo)準(zhǔn)的MII/GigaMII(Media Independed Interface)。MII傳遞了網(wǎng)絡(luò)的所有數(shù)據(jù)和數(shù)據(jù)的控制,而MAC對(duì)PHY的工作狀態(tài)的確定和對(duì)PHY的控制則是使用SMI(serial Management Interface)界面通過讀寫PHY的寄存器來完成的。MAC通過SMI總線不斷的讀取PHY的狀態(tài)寄存器以得知目前PHY的狀態(tài)
上述3.大致了解留個(gè)印象即可,暫時(shí)還不具體明白
也就是說,我們不用管PHY層,因?yàn)镻HY層次,使用RTL8211EG這款芯片來實(shí)現(xiàn)的,我們只用管數(shù)據(jù)鏈路層,數(shù)據(jù)鏈路層的MAC控制芯片,便是我們的FPGA芯片。
*-----------------------------------------------------------------
RTL8211EG 支持MDI/MDX自適應(yīng),各種速度自適應(yīng),maser/slave自適應(yīng)
RTL8211EG上電會(huì)檢測(cè)一些特定的IO的電平狀態(tài),從而確定自己的工作模式
補(bǔ)充:此CRC為自定義添加,只針對(duì)UDP幀頭到數(shù)據(jù)末尾,不對(duì)其他數(shù)據(jù)位進(jìn)行校驗(yàn),也就是說,只有數(shù)據(jù)到了UDP幀頭才開始計(jì)算CRC,到數(shù)據(jù)末尾結(jié)束,并將結(jié)果(32bit=4Byte)附在末尾。
二、PHY芯片之RTL8211EG芯片介紹
RTL8211EG是由Realtek公司推出的千兆網(wǎng)PHY芯片,RTL8211EG芯片作為千兆網(wǎng)PHY芯片,它與MAC層的接口可通過RGMII(Reduced Gigabit Media Independent interface:簡(jiǎn)化的千兆介質(zhì)無關(guān)接口)和GMLL(Gigabit Media Independent interface千兆介質(zhì)無關(guān)接口)進(jìn)行通信,
時(shí)鐘部分就不多說了,圖上很清新,可以通過過MDC/MDIO管理接口來配置或讀取PHY芯片內(nèi)部的寄存器。由于RTL8211EG芯片只提供PHY層功能,不包括MAC、UDP、TCP等功能,所以我們需要私用FPGA來實(shí)現(xiàn)這些功能來完成數(shù)據(jù)通信。
下圖來自datasheet
上圖是該芯片的管腳
--------------------------------下次繼續(xù)
總結(jié)
以上是生活随笔為你收集整理的UDP千兆以太网FPGA_verilog实现(一、知识搜集)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 离散信号处理的基本概念理解(第一章 离散
- 下一篇: UDP千兆以太网FPGA_verilog