前注:ARM端的TCP协议编程步骤和UDP协议编程步骤完全相同,只是在ARM端的C代码实现不同,在本次TCP协议实现过程中我们主要利用了官方提供的Demo,然后根据自己的需要加以改写,具体过程如下。
1、开始前的准备工作
- 关闭电脑防火墙
- 连接开发板电源
- 开发板与PC之间串口连接,JTAG下载线连接
- PC机与开发板间网线连接,并保证能ping通
2、Vivado端配置
- 创建工程,具体步骤不详细介绍,网上都有教程,器件型号按照实际用的板子的型号选,我这里用的是米联Miz7035的板子
- 工程创建完毕后,在Vivado主页左边有个(创建块设计)create block design,点击创建,然后添加ZYNQ7 Processing System IP核,然后对IP核进行配置,主要需要配置的几个地方为:
- 配置时钟,由于本工程只用到了PS资源,只需要给PS配置时钟,所以可以不用给PL提供时钟。
- 配置串口,勾选UART1用于打印相关调试信息。
- 配置网口,勾选ENET0,用于PC和开发板的UDP通信。
- 配置DDR内存,按照具体板子的DDR型号进行配置,由于目前我们的工程在PS端还是在“裸奔”,所以内存一定要配置正确,不然后续Debug会出现问题。
- 配置完成后就是检查规范性,生成输出文件,创建顶层文件,导出硬件,这个具体步骤我在前面讲过,有不知道如何操作的可以翻翻之

本文详细介绍了基于ZYNQ-7000的AI加速器设计中,如何在ARM端进行TCP协议编程。从准备工作到Vivado端的配置,再到SDK端的TCP协议实现与调试,最后展示了成功的调试结果。通过FPGA回传数据,验证了TCP通信的正确性。
最低0.47元/天 解锁文章
网络编程(TCP协议)&spm=1001.2101.3001.5002&articleId=102962741&d=1&t=3&u=1154c7a06693428eb6ea893223e2ccf6)
2566

被折叠的 条评论
为什么被折叠?



