基於MicroBlaze的千兆乙太網除錯

2021-10-23 20:29:59 字數 1149 閱讀 3918

vivado部分

下面是axi 1g/2.5g ethernet subsystem的配置,只需設定第一頁,其它選項預設

注意整個bd中還需乙個重要的ip,axi timer,這個ip在除錯乙太網時是不可能缺少的,配置預設,需要注意的是需要把interrupt連到microblaze的中斷控制上

連好其它ip後生成頂層,生成位元流

sdk部分

export位元流,開啟sdk

新建乙個iwip tcp perf server工程

見證奇蹟的時候到啦,網路。。。連不上

這是為什麼呢,我也百思不得其解,在檢查**和配置一天以後,發現原來是例子**中自帶的phy晶元和我的除錯板上的phy晶元型號不符

在除錯時你可以檢查一下這個c檔案

找到get_ieee_phy_speed這個函式

這裡支援的是88e1116r和88e1111晶元,如果你的phy晶元不屬於以上兩種,那麼首先列印出phy_model,然後按照下面的格式,新增該晶元的驅動函式以及在get_ieee_phy_speed中增加乙個if條件,再執行**就可以連上網路了。

88e1116r的驅動**

如果!我是說你實在找不到驅動函式,找到…\microblaze_0\libsrc\standalone_v7_0\src中的xil_assert.c檔案,注釋掉

執行程式,開啟你的網路除錯助手就可以連上網路了。

MicroBlaze定時器(Timer)的使用

microblaze的timer ip比較簡單易用,乙個xps tc ip包含兩個32bit定時 計數器。工作方式也比較靈活,可以設定中斷 自動載入 count up down等模式,每當timer溢位的時候產生中斷,進入中斷程式後通過寫1 clear中斷標誌位,通常的做法是csr xtmrctr ...

基於XC7A100T的PCIe千兆電口乙太網收發卡

一 板卡概述 本板卡採用xilinx公司的artix7系列的xc7a100t 2fgg484 晶元作為主處理器。包含雙路千兆電口網路,雙組ddr,pciex1 v1.1介面,板卡設計滿足工業級要求。二 功能和技術指標 板卡功能 引數內容 主處理器 xc7a100t 2fgg484i 板卡標準 pci...

千兆網絡卡驅動的設計

資料傳輸方式。驅動與網絡卡進行資料傳輸有輪詢方式 中斷方式和dma方式。不同的傳輸方式會影響資料傳輸的效率。中斷開銷。中斷處理中要保護程式的上下文,這些處理會消耗cpu資源。如果中斷非常頻繁的話,會影響整個系統的效率。記憶體拷貝開銷。大批量的記憶體拷貝會消耗大量的cpu資源。如果發生缺頁異常的話,需...