以太網基礎①以太網相關通信接口

1. 今日摸魚任務

需要學習使用ZYNQ的以太網傳輸SCPI指令

需要把PL PS兩側的都用起來(加油鴨!)

吶吶吶

今天就先學一下基礎知識唄

02_【邏輯教程】基于HDL的FPGA邏輯設計與驗證教程V3.5.2.pdf

51 以太網相關通信接口詳解

52?以太網(MAC)幀協議介紹

2.?以太網 MAC 層接口介紹

這些網口只是起到一個信號連接的作用,本身無主動通信的能力,一個典型的網絡通信電路如下圖所示

MAC的全稱是?Media Access Control(媒體訪問控制),它是數據鏈路層(Data Link Layer)中的一個子層,主要負責以下功能:

? 1. 幀的封裝與解封:將上層(如IP層)的數據打包成幀(Frame),或從接收的幀中提取有效數據。

? 2. 物理尋址:通過MAC地址(如?00:1A:2B:3C:4D:5E)唯一標識網絡設備。

? 3. 介質訪問控制:協調多個設備共享同一物理介質(如以太網中的沖突檢測CSMA/CD或無線網絡中的CSMA/CA)。

數據通過串行方式發送
千兆以太網的位速率為 1.25Gbps 、百兆以太網的位速率為 125Mbps
PHY 芯片可實現并行以太網數據到符合以太網物理層鏈路數據傳輸格式的電平信號之間的轉換

2.1 MII接口

2.2 GMIII接口

2.3 RGMII接口

RGMII ReducedGMII ,是 GMII 的簡化版本,將接口信號線數量從 24根減少到 14 根,時鐘頻率仍舊為 125MHz TX/RX 數據寬度從 8 位變為 4 位。
為了保持 1000Mbps 的傳輸速率不變, RGMII 接口在時鐘的上升沿和下降沿都采樣數據 。

【以太網通信】RGMII 接口及其時序規范-CSDN博客

INPUT

OUTPUT

3.?ACZ702 FPGA 以太網電路介紹

ACZ702 開發板 PL 側通過一片 Realtek RTL8211F-CG 以太網 PHY 提供對以太網連接的支持, RTL8211F-CG 是一片 10M/100M/1000Mbps自適應以太網收發器,提供 RGMII 接口的 MAC 連接。

3.1??RTL8211F-CG 芯片器件地址【PL】

以太網物理層芯片都有一個器件地址,該器件地址就是在介紹 PHY 管理接口 MDIO 時所說的 PHY 器件地址,該器件地址用來由 MDIO 主機(如 MAC 或處理器)尋址 MDIO 總線上連接的指定的 PHY 芯片。
RTL8211F-CG 芯片的地址分為固定部分和硬件可設定兩部分。
器件地址共有 5 位 ,其中高 2 位為固定的 00,低三位通過三個地址設置腳在芯片上電或復位時候設置, 這三位分別對應 RTL8211F 芯片的 22 27 26 腳。
ACZ702 開發板上,這三個腳通過三個電阻分別上/下拉到了指定電平
摸魚怪的是ACZ702 V2.1版本,找到對應的硬件圖紙
ACZ702V2.1-231107.pdf

PHY_ADDR0 PHY_ADDR2 通過電阻上拉到了高電平 , PHY_ADDR1 通過電阻下拉到了低電平,所以摸魚怪PHY 器件地址為 00101

未列出管腳均為無必要與 FPGA 連接的信號。

3.3芯片器件地址【PS】

這里是ENET1

PHY_ADDR0 通過電阻上拉到了高電平 , PHY_ADDR1 和 PHY_ADDR2通過電阻下拉到了低電平,所以摸魚怪的 PHY 器件地址為 00001

4.?幀協議

以太網技術的正式標準是 IEEE 802.3 標準,規定了在以太網中傳輸的數據幀結構:

4.1 前導碼和分隔(開始)符

? ? ? ? 這 8 個字節的值在任何以太網幀中都一樣, 7 字節的前導碼值為 0x55 1 字節的分隔符值為 0xD5
前導碼存在的意義是為了標記一幀以太網幀即將開始傳輸,分隔符存在的意義是指示前導碼傳輸完畢,接下來將要傳輸的就是正式的以太網幀的有用部分。
? ? ? ?前導碼的值為 7 字節的 0x55 0x55 用二進制表示就是 01010101b,前導碼的意義就是驅動網絡鏈路電平開始交替翻轉,以標記幀的開始。
? ? ? ?分隔符的值為 0xD5 0xD5 用二進制表示就是 11010101b
? ? ? ?以太網 PHY 在將數據編碼為以太網物理鏈路層的位傳輸信號時是從低位開始編碼的,所以從信號鏈路的電平來看,先連續的產生 62 0 1 交替變化的電平,最后再以2 位連續的高電平來標記以太網數據幀部分的到來。

4.2?MAC 地址

硬件地址或物理地址,是一個48位的全球唯一標識符(前24位為廠商ID,后24位由廠商分配)

4.3?數據和填充字段

該段數據長度至少為 46 個字節,而最多不超過 1500 個字節。
整個以太網幀的數據長度最小為 64 字節,最多1518個字節。【不含前8個字節】
最小數據幀的設計原因和以太網電纜長度(以太網的最大長度限制為 2500m)有關,為的是讓兩個相距最遠的站點能夠感知到雙方的數據發生了碰撞;最遠兩端數據的往返時間就是爭用期,以太網設計者規定的爭用期是 51.2us 10M 以太網傳輸 64byte 數據的時間,該時間是有考慮到充足的裕量)。
太網長度為 1518,那有效傳輸效率=1460/1518=96% 通過比較,選擇較大的幀長度,有效傳輸效率更高。而更大的幀長度同時也會造成上述的問題,可能是基于這些考慮,選擇了一個折中的1518 字節。對應的 IP packet 就是 1500 字節。

4.4 校驗序列

CRC32 進行計算,得到一個 32 位的數,附加在數據和填充字段的結尾發送。
若不同則意味著該幀數據中肯定有至少 1 位數據的值在傳輸過程中發生了變化,整個這一幀會被舍棄。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/87667.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/87667.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/87667.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

FPGA基礎 -- Verilog 共享任務(task)和函數(function)

Verilog 中共享任務(task)和函數(function) 的詳細專業培訓,適合具有一定 RTL 編程經驗的工程師深入掌握。 一、任務(task)與函數(function)的基本區別 特性taskfunctio…

學習大模型---需要掌握的數學知識

1. 線性代數:樂高積木的世界 想象你有很多樂高積木塊。線性代數就是研究怎么用這些積木塊搭建東西,以及這些搭建好的東西有什么特性的學問。 向量: 就像一個有方向的箭頭,或者一組排好隊的數字。比如: 一個箭頭&…

明遠智睿RK3506開發板:多核異構架構賦能高可靠性工業與商業應用

在工業4.0與物聯網(IoT)技術快速發展的背景下,嵌入式系統對性能、功耗、可靠性和實時性的要求日益嚴苛。針對這一趨勢,瑞芯微推出的RK3506開發板憑借其創新的三核A7單核M0多核異構架構、高能低耗設計以及豐富的外設資源&#xff0…

【AI時代速通QT】第二節:Qt SDK 的目錄介紹和第一個Qt Creator項目

目錄 一、認識 Qt SDK 的目錄結構 二、第一個 Qt 程序 2.1 Qt Creator 創建項目 2.2 介紹項目各文件 三、揭秘 Qt 的構建過程 四、運行項目與總結 🎬 攻城獅7號:個人主頁 🔥 個人專欄:CQT跨平臺界面編程 ?? 君子慎獨! &#x1f308…

CDH部署Hive詳細指南

CDH部署Hive詳細指南 本文將詳細介紹如何使用Cloudera Manager Web界面部署Hive組件,包括安裝、配置、優化和運維管理等內容。 1. 環境準備 1.1 系統要求 1.1.1 硬件要求 服務器配置 CPU:建議8核以上內存:建議32GB以上磁盤:建議使用企業級SAS或SSD網絡:建議萬兆網絡集…

黨建賦能 醫校協同|廣州附醫華南醫院與湖南中醫藥高等專科學校簽約攜手共育英才

為深入貫徹落實黨中央、國務院關于高校畢業生就業創業工作決策部署,教育部印發《職業學校校企合作促進辦法》,對深化醫教協同提供了政策指引。在醫學教育領域,鼓勵醫學院校與醫療機構開展深度合作,根據醫療行業需求調整專業設置與…

【RTSP從零實踐】2、使用RTP協議封裝并傳輸H264

😁博客主頁😁:🚀https://blog.csdn.net/wkd_007🚀 🤑博客內容🤑:🍭嵌入式開發、Linux、C語言、C、數據結構、音視頻🍭 🤣本文內容🤣&a…

行業熱點丨手機中框設計如何體現增材思維?

編者薦語: 通過增材設計思維在金屬邊框設計晶格結構,既能減輕重量,同時也有助于散熱,針對不同位置設計不同類型的晶格結構還能起到緩沖效果,提高手機抗沖擊能力。 以下文章來源于Inspire增材創新設計,作者…

鴻蒙案例實戰——添加水印

本示例為開發者展示常用的水印添加能力,包括兩種方式給頁面添加水印、保存圖片添加水印、拍照圖片添加水印和pdf文件添加水印。 案例效果截圖 首頁 頁面水印 圖片水印 pdf水印 案例運用到的知識點 核心知識點 頁面添加水印:封裝Canv…

Qt工作總結07 <qBound和std::clamp>

一、qBound簡介 1. 定義 是 Qt 框架中一個非常實用的邊界限制函數&#xff08;也稱為 "clamp" 函數&#xff09;&#xff0c;用于將一個值限制在指定的最小值和最大值之間。頭文件&#xff1a;#include <QtGlobal> 2. 函數原型 template <typename T>…

53-Oracle sqlhc多版本實操含(23 ai)

SQLHC&#xff08;SQL Health Check&#xff09;作為 Oracle 數據庫性能診斷的核心工具&#xff0c;其設計理念和核心功能在 Oracle 各版本中保持高度一致&#xff0c;但在技術實現和周邊生態上存在漸進式優化。定期對關鍵業務 SQL 執行健康檢查&#xff0c;特別是在版本升級或…

math.pow()和pow()的區別

math.pow() 和 pow() 的區別 ? 1. math.pow() 來自 math 模塊參數&#xff1a;兩個數&#xff08;底數&#xff0c;指數&#xff09;結果類型&#xff1a; 始終返回 float 類型 示例&#xff1a; import math print(math.pow(2, 3)) # 輸出&#xff1a;8.0 &#xff08;…

郵科OEM攝像頭POE供電技術的核心優勢

安防監控中&#xff0c;供電方式影響系統穩定性、安裝效率與維護成本。郵科攝像頭采用POE技術&#xff0c;通過網線同時傳輸數據與電力&#xff0c;革新傳統部署模式。本文解析其六大核心優勢&#xff0c;展現其作為現代安防優選方案的價值。 一、布線簡化&#xff0c;效率提升…

微信小程序-數據加密

npm install crypto-js utils/aes.js const CryptoJS require(crypto-js);// 默認的 KEY 與 iv 如果沒有給 const KEY CryptoJS.enc.Utf8.parse(KrQ4KAYOEyAz66RS); // 十六位十六進制數作為密鑰 const IV CryptoJS.enc.Utf8.parse(ep1YCmxXuxKe4eH1); // 十六位十六進制…

【時時三省】(C語言基礎)善于利用指針

山不在高&#xff0c;有仙則名。水不在深&#xff0c;有龍則靈。 ----CSDN 時時三省 指針是C語言中的一個重要概念&#xff0c;也是C語言的一個重要特色。正確而靈活地運用它&#xff0c;可以使程序簡潔、緊湊、高效。每一個學習和使用C語言的人&#xff0c;都應當深入地學習和…

單點登錄進階:基于芋道(yudao)授權碼模式的單點登錄流程、代碼實現與安全設計

最近遇到需要單點登錄的場景&#xff0c;我使用的是芋道框架&#xff0c;正好它手動實現了OAuth2的功能&#xff0c;可以為單點登錄提供一些幫助&#xff0c;結合授權碼的模式&#xff0c;在改動最小的情況下實現了單點登錄。關鍵業務數據已經隱藏&#xff0c;后續將以以主認證…

關于Seata的一個小issue...

文章目錄 引言原因&#x1f913;解決方法&#x1f635;總結?? 引言 某一天&#xff0c;筆者在逛著Github的時候&#xff0c;突然看到seata有個有趣的issue&#xff0c;是一個task。 相關描述&#xff1a; While running the DruidSQLRecognizerFactoryTest.testIsSqlSynta…

FTTR+軟路由網絡拓撲方案

文章目錄 網絡拓撲軟路由配置FTTR光貓路由器TPLink路由器配置WAN設置LAN設置 參考 網絡拓撲 軟路由配置 配置靜態IP地址&#xff1a;192.168.1.100設置網關指向主路由的IP 設置自定義DNS服務器 開啟DHCP 這一步很關鍵&#xff0c;可以讓連上wifi的所有設備自動趴強。 FTTR光貓…

RPC - 服務注冊與發現模塊

為什么要服務注冊&#xff0c;服務注冊是做什么 服務注冊主要是實現分布式的系統&#xff0c;讓系統更加的健壯&#xff0c;一個節點主機將自己所能提供的服務&#xff0c;在注冊中心進行登記 為什么要服務發現&#xff0c;服務發現是要做什么 rpc調用者需要知道哪個節點主機…

分布式緩存:應對突發流量的緩存體系構建

文章目錄 緩存全景圖Pre背景與目標說明緩存原則與設計思路緩存體系架構緩存預熱與緩存預加載庫存操作與緩存結合防刷、限流與緩存緩存一致性與失效異步落地與消息隊列監控與指標容災與擴展示例小結 緩存全景圖 Pre 分布式緩存&#xff1a;緩存設計三大核心思想 分布式緩存&am…