该项目创建一个模块,可用于与以太网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按顺序,论点意味着以下内容。