該項目創建一個模塊,可用於與以太網PHY連接用於傳輸UDP數據包。僅支持傳輸,並且在FPGA上沒有實現接收器。
該模塊是專門用於從FPGA流式固定寬度數據的。例如,該模塊可以很好地用於流在ADC或某些過程生成的數據上採樣的數據。儘管該模塊可以在某種程度上處理變量大小的數據,但不受直接支持。要發送可變大小的數據,每個數據點必須填充到要發送的最大數據點的大小。必須前面聲明數據點的大小,並且模塊保證絕不會散佈單個數據點的多個數據包。
該項目是專門為Digilent Arty A7建造和測試的,該ARTY A7使用Xilinx Artix-7 XC7A100T FPGA,並具有Texas Instruments DP83848J以太網PHY控制器。但是,MII標準將與任何PHY一起使用。
如果您應該使用此模塊
如果您不應使用此模塊
要在項目中使用此模塊,必須包括兩個文件
src/hdl/eth_udp.svsrc/ip/eth_udp_fifo_async/eth_udp_fifo_async.xci ethernet_udp_transmit模塊將進行實例化,並在內部使用eth_udp_fifo_async ip。
如果Xilinx IP被鎖定,則很可能將IP配置為不同的部分。通過在TCL控制台中運行report_ip_status來檢查此問題,該修復程序是運行upgrade_ip [get_ips *] 。
打開xilinx vivado並選擇Tools > Run Tcl Script... ,然後在文件出口商中選擇generate_project.tcl腳本。該腳本將通過導入所有項目來源來運行並在新的proj/ Directory中生產Vivado項目。如果未創建項目,則proj/ Directory很可能已經存在。
可以使用ether_tester程序對該項目進行測試。測試儀在FPGA上生成一個字節的偽隨機序列,以通過UDP發送,並且測試程序驗證其接收到的序列是否正確。
要使用測試程序,請確保安裝貨物以編譯生鏽程序,然後導航到ether_tester目錄並運行
cargo build下載依賴項並構建項目。要查看程序幫助信息,請運行
cargo run -- -h該程序的示例調用是
cargo run --
-b256
--serial-port=/dev/ttyUSB1:115200
--src=8.8.8.8:4096,aa:bb:cc:dd:ee:ff
--dest=1.2.3.4:4096,00:11:22:33:44:55
-r1000按順序,論點意味著以下內容。