伦伦影院久久影视,天天操天天干天天射,ririsao久久精品一区 ,一本大道香蕉大久在红桃,999久久久免费精品国产色夜,色悠悠久久综合88,亚洲国产精品久久无套麻豆,亚洲香蕉毛片久久网站,一本一道久久综合狠狠老

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

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

3天內不再提示

基于DWC_ether_qos的以太網驅動開發-數據流驗證過程

嵌入式USB開發 ? 來源:嵌入式Lee ? 作者:嵌入式Lee ? 2023-08-31 08:41 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

轉自公眾號歡迎關注

https://mp.weixin.qq.com/s/klrHhaLMM_0W3FGVwHXFkA

基于DWC_ether_qos的以太網驅動開發-數據流驗證過程 (qq.com)

一.前言

以太網驅動的編寫與調試是以數據流為導向的,數據流的確認我們可以采取層層推進的方式進行驗證。即先驗證MAC層,再驗證PHY層,再驗證接具體的設備比如PC收發數據。

如下所示

wKgaomTv7TmARPccAAB715-4tFs084.png

二.MAC層回環

MAC層回環可以確認MAC的DMA和PHY接口等是否工作正常.

MAC層回環即MAC的MII接口內部回環,不到外部PHY上,但是也驗證到了MAC的PHY接口。

見手冊16 Using the Loopback Mode

使能MAC回環需要配置寄存器MAC_Configuration的LM位為1

wKgZomTv7TmAemNZAAC08pFmVCw142.png

有以下需要注意的地方:

1.只能使用全雙工模式

2.MAC回環也需要RXC時鐘,正常RXC時鐘來源于PHY,所以要不就使用PHY正常工作,要不就使用其他方式提供RXC時鐘。很多時候MAC回環不通就是RXC或者TXC沒有,所以先使用示波器確認這兩個信號。

對于RTL8211F可以通過如下寄存器查看RXC是否輸出

wKgaomTv7TqAYgVqAAJNGpil5zU184.png

同時確認如下寄存器是否是LPI停止了RXC

最好如下寄存器按照默認配置為0,即LPI時不停止RXC

wKgZomTv7TuAM6COAACikgoDESI795.png

還有需要注意的是我這里實測是要接上網線到電腦,Link OK狀態BMSR的bit2為1,才能MAC回環。否則MAC回環不通。

3.不要回環大包

三.PHY層回環

配置PHY寄存器0的bit14為1

wKgaomTv7TuAToDHAAHzsZNacgM975.png

四.ARP測試數據收發

發送ARP請求,電腦會自動返回ARP響應以測試回路。

ARP請求包格式如下

DA 6字節目的MAC地址,設置為全FF廣播
SA 6字節源MAC地址
Type 2字節Type 0x0806
HWType 2字節 0x0001
ProtocolType 2字節0x0800
HWSize 1字節0x06
ProtocolSize 1字節0x04
Opcode 2字節0x0001
6字節發送端MAC地址
4字節發送端IP地址
6字節目的端MAC地址,未知所以全0
4字節目的端IP地址
18字節填充0,使得包長(DA到FCS)64字節

ARP響應包,和請求對比Opcode不一樣,MAC和IP的源和目的反向。

DA 6字節目的MAC地址
SA 6字節源MAC地址
Type 2字節Type 0x0806
HWType 2字節 0x0001
ProtocolType 2字節0x0800
HWSize 1字節0x06
ProtocolSize 1字節0x04
Opcode 2字節0x0002
6字節發送端MAC地址
4字節發送端IP地址
6字節目的端MAC地址,未知所以全0
4字節目的端IP地址
18字節填充0,使得包長(DA到FCS)64字節

1.注意最低64字節的幀長要求

TDES3的CPC設置為00可以自動填充。

wKgZomTv7TuAYlF_AAJHv81cH2A532.png

2.使用wireshark抓包確認

wKgaomTv7TyAeo__AAFrOXIeDvk285.png

wKgZomTv7TyAew9rAAFNcBRl-Zg050.png

五.總結

1.MAC層回環不通,則確認RXC和TXC是否有時鐘,確認DMA_Debug_Status0的收發狀態和描述符的相關寄存器(后面會單獨詳講收發的調試)。

2.PHY層回環不通則確認PHY是否處于LINK Ok狀態,邏輯分析儀監控MII接口等。

3.ARP測試不通,則確認發送包是否填充到了64字節;確認網線,硬件分析儀抓包等。

審核編輯 黃宇

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 嵌入式
    +關注

    關注

    5203

    文章

    20549

    瀏覽量

    335745
  • 以太網
    +關注

    關注

    41

    文章

    6087

    瀏覽量

    181292
  • 寄存器
    +關注

    關注

    31

    文章

    5612

    瀏覽量

    130234
  • 數據流
    +關注

    關注

    0

    文章

    129

    瀏覽量

    16331
  • 驅動開發
    +關注

    關注

    0

    文章

    140

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    基于DWC_ether_qos以太網驅動開發-MAC幀格式介紹

    本文轉自公眾號,歡迎關注 基于DWC_ether_qos以太網驅動開發-MAC幀格式介紹 (qq.com) 一.前言 ? 在以太網
    的頭像 發表于 08-30 09:23 ?5234次閱讀
    基于<b class='flag-5'>DWC_ether_qos</b>的<b class='flag-5'>以太網</b><b class='flag-5'>驅動</b><b class='flag-5'>開發</b>-MAC幀格式介紹

    基于DWC_ether_qos以太網驅動開發-MDIO驅動編寫與測試

    本文轉自公眾號歡迎關注 基于DWC_ether_qos以太網驅動開發-MDIO驅動編寫與測試 一.前言
    的頭像 發表于 08-30 09:37 ?6722次閱讀
    基于<b class='flag-5'>DWC_ether_qos</b>的<b class='flag-5'>以太網</b><b class='flag-5'>驅動</b><b class='flag-5'>開發</b>-MDIO<b class='flag-5'>驅動</b>編寫與測試

    基于DWC_ether_qos以太網驅動開發-描述符鏈表介紹

    of descriptors)。DMA根據描述符鏈表自動在FIFO和用戶指定的緩存之間搬運數據。對于熟悉新思的IP的用戶來說,這種套路會有似曾相識的感覺,沒錯新思的大部分高速IP的數據流都是這么處理的,比如在DWC
    的頭像 發表于 08-30 09:39 ?7442次閱讀
    基于<b class='flag-5'>DWC_ether_qos</b>的<b class='flag-5'>以太網</b><b class='flag-5'>驅動</b><b class='flag-5'>開發</b>-描述符鏈表介紹

    基于DWC_ether_qos以太網驅動開發-收發驅動編寫與調試

    本文轉自公眾號,歡迎關注 基于DWC_ether_qos以太網驅動開發-收發驅動編寫與調試 (qq.com) https://mp.wei
    的頭像 發表于 09-05 08:47 ?4805次閱讀
    基于<b class='flag-5'>DWC_ether_qos</b>的<b class='flag-5'>以太網</b><b class='flag-5'>驅動</b><b class='flag-5'>開發</b>-收發<b class='flag-5'>驅動</b>編寫與調試

    基于DWC_ether_qos以太網驅動開發-無OS環境移植LWIP

    本文轉自公眾號歡迎關注 基于DWC_ether_qos以太網驅動開發-無OS環境移植LWIP (qq.com) https://mp.weixin.qq.com/s
    的頭像 發表于 09-06 08:40 ?3965次閱讀
    基于<b class='flag-5'>DWC_ether_qos</b>的<b class='flag-5'>以太網</b><b class='flag-5'>驅動</b><b class='flag-5'>開發</b>-無OS環境移植LWIP

    基于DWC_ether_qos以太網驅動開發-LWIP的堆管理介紹

    本文轉自公眾號歡迎關注 基于DWC_ether_qos以太網驅動開發-LWIP的堆管理介紹 (qq.com) https://mp.weixin.qq.com/s
    的頭像 發表于 09-08 08:40 ?3478次閱讀
    基于<b class='flag-5'>DWC_ether_qos</b>的<b class='flag-5'>以太網</b><b class='flag-5'>驅動</b><b class='flag-5'>開發</b>-LWIP的堆管理介紹

    基于DWC_ether_qos以太網驅動開發-RTOS環境移植LWIP與性能測試

    本文轉自公眾號,歡迎關注 基于DWC_ether_qos以太網驅動開發-RTOS環境移植LWIP與性能測試 (qq.com) https://mp.weixin.qq.com/s
    的頭像 發表于 09-11 11:20 ?5005次閱讀
    基于<b class='flag-5'>DWC_ether_qos</b>的<b class='flag-5'>以太網</b><b class='flag-5'>驅動</b><b class='flag-5'>開發</b>-RTOS環境移植LWIP與性能測試

    基于DWC_ether_qos以太網驅動開發-LWIP在PC上進行開發調試

    本文轉自公眾號歡迎關注 基于DWC_ether_qos以太網驅動開發-LWIP在PC上進行開發調試 (qq.com) https://mp
    的頭像 發表于 09-11 08:40 ?4353次閱讀
    基于<b class='flag-5'>DWC_ether_qos</b>的<b class='flag-5'>以太網</b><b class='flag-5'>驅動</b><b class='flag-5'>開發</b>-LWIP在PC上進行<b class='flag-5'>開發</b>調試

    基于DWC_ether_qos以太網驅動開發-LWIP的定時器模塊詳解

    才會編譯,也是默認配置。 2.2數據結構 定時器的核心數據結構是一個單向鏈表,鏈表的節點如下 struct sys_timeo { struct sys_timeo * next ; u32_t time;sys_timeout_handler h; void *arg;
    的頭像 發表于 09-18 09:33 ?4049次閱讀
    基于<b class='flag-5'>DWC_ether_qos</b>的<b class='flag-5'>以太網</b><b class='flag-5'>驅動</b><b class='flag-5'>開發</b>-LWIP的定時器模塊詳解

    基于DWC_ether_qos以太網驅動開發-LWIP的ICMP模塊介紹與PING收發測

    Protocol因特網控制消息協議。 ICMP是網絡層協議,IP不可分割的一部分。 ICMP用于報告數據報處理中的錯誤,比如以下情況下時發送ICMP消息:當數據報無法到達其目的地時,當網關沒有轉發數據
    的頭像 發表于 09-18 17:51 ?4809次閱讀
    基于<b class='flag-5'>DWC_ether_qos</b>的<b class='flag-5'>以太網</b><b class='flag-5'>驅動</b><b class='flag-5'>開發</b>-LWIP的ICMP模塊介紹與PING收發測

    設計軟件核心以太網服務質量數據手冊免費下載

    本文描述Synopsys設計軟件核心以太網服務質量DWC以太網QoS核心5.10A。DWC以太網
    發表于 10-23 08:00 ?17次下載
    設計軟件核心<b class='flag-5'>以太網</b>服務質量<b class='flag-5'>數據</b>手冊免費下載

    DesignWare核心以太網服務質量數據

      本文檔介紹Synopsys DesignWare核心以太網服務質量(DWC_Ethernet_qos)核心,5.10a。DWC_Ethernet_qos實現了與MAC層相關的以太網
    發表于 03-31 15:11 ?4次下載

    基于DWC_ether_qos以太網驅動開發-包過濾

    以太網數據非常多,如果所有數據都接收交給軟件去處理軟件負載會非常重,所以一般只需要接收發給自己的數據即可
    的頭像 發表于 09-02 09:19 ?4535次閱讀
    基于<b class='flag-5'>DWC_ether_qos</b>的<b class='flag-5'>以太網</b><b class='flag-5'>驅動</b><b class='flag-5'>開發</b>-包過濾

    基于DWC_ether_qos以太網驅動開發-軟復位介紹與問題案例

    一般模塊都會有軟復位的功能,軟復位在驅動編寫中很重要。一般初始化時執行軟復位使得模塊進入確定的初始狀態以提高可靠性,異常時也可以重新初始化來恢復,所以軟復位在驅動中一般是必須要做的動作。
    的頭像 發表于 09-02 09:17 ?4016次閱讀
    基于<b class='flag-5'>DWC_ether_qos</b>的<b class='flag-5'>以太網</b><b class='flag-5'>驅動</b><b class='flag-5'>開發</b>-軟復位介紹與問題案例

    基于DWC_ether_qos以太網驅動開發-描述符格式介紹

    前面我們介紹了描述符鏈表的工作模式,重點是了解環形鏈表是如何環形的,以及相關的寄存器。驅動編寫就需要更進一步,了解描述符的具體內容,即4個描述符的每個字段的含義。
    的頭像 發表于 09-04 14:14 ?5712次閱讀
    基于<b class='flag-5'>DWC_ether_qos</b>的<b class='flag-5'>以太網</b><b class='flag-5'>驅動</b><b class='flag-5'>開發</b>-描述符格式介紹