fpga-pynq镜像制作及网络环境配置

fpga pynq镜像制作及win下网络配置

先前准备:

  1. 一块至少8GB的SD卡用于存放pynq镜像;
  2. 一个SD卡读取器,用于在PC端访问SD卡;
  3. 一个支持烧录pynq镜像并支持SD启动的FPGA开发板;
  4. 一根足够连接PC和开发板的网线;
  5. 在下载文件等多处可能国内网络较差,可以尝试通过软件连接外网;

pynq镜像下载

  1. 首先去 pynq镜像官网下载对应pynq版本(新版本:v2.6之后和旧版本之间差异还是比较大的;比如xlink库的删除)。而且在下载时要注意pynq版本和vivado版本的对应关系。
    在这里插入图片描述
    我使用的是zcu104+vivado2022.1,因此我下载的是pynqv3.0.1。
    注: 访问这个网站需要接入外网。

在这里插入图片描述

pynq镜像制作

  1. 将下载好的pynq包解压;
  2. 使用镜像制作软件:Win32DiskImage,打开下载好的软件;
  3. 将sd卡通过读卡器连接上电脑,选择解压后的pynq镜像文件,并点击写入,等待烧录;
    在这里插入图片描述
  4. 等待一会,写入完成后即可将sd卡插入开发板。

fpga启动模式调节

通过开发板上的启动开关调节开发板的启动模式,使其能通过sd卡启动。
下图为ZCU104的板子的调节方式,其他板子可以参考pynq_DOS
在这里插入图片描述
具体操作如下图(有些板结构不同,认准标号即可):
在这里插入图片描述

上电连接

  1. 使用串口可视化软件(puttyMobaXterm)连接开发板;
  2. (使用MobaXterm)配置端口,可能会出现三个端口,一般默认是三个中最小的(com4口),不过你可以都试试,波特率调为115200;
    在这里插入图片描述
  3. 打开刚刚的Serial,开发板上电,接着窗口中出现加载信息,加载结束后出现“xilinx@pynq:~$”;
    注:
    a. 此时的开发板上会有对应led亮起(具体参考上文pynq_Dos);
    b. 假如你是直接等文件加载好后再打开的serial,则需要按下‘Enter’即可出现上述结果。

    在这里插入图片描述

参考资料

  1. 知乎上的《制作ZCU102的PYNQ镜像》,其中较详细的介绍了从外部环境(linux)搭建、vivado安装到pynq镜像制作的详细过程。
  2. pynq官方配置文档,其中详细的介绍了多种开发板pynq镜像制作、pynq overlay和libs介绍等资料,建议研读。

网络配置

pc端网络共享处理

  1. 通过网线连接PC和FPGA;

  2. 打开PC端“网络适配器”的控制面板,在页面中会出现一个新的网络(可以进行改名,我的是改名之后的);
    在这里插入图片描述

  3. 选中当前网络(可以是WiFi也可以是以太网),选择属性中的共享,勾选允许共享,并选中刚才的网络(其他不用更改);
    在这里插入图片描述

  4. 确定之后会弹出PC端为网络固定的IP(一般会被固定为192.168.137.1)窗口,记住这个ip后续会用它作为pynq的网关。注意,如果没有弹出强制固定ip,可能是没配置好,可以试着把共享关了,再重新共享一下。下图是自动固定的ip,不需要手动填写,如果没有试着重新共享。
    在这里插入图片描述

    查看pynq的ip:
    在这里插入图片描述

fpga ip修改

  1. 进入之前的serial窗口,输入 ip查看命令
// ifconfig为linux IP 查看命令
xilinx@pynq:~$ ifconfig

初始时eth0下不含ipv4的ip地址,下图为已修改后的。
在这里插入图片描述

  1. 输入 用户切换命令,以便拥有更高的权限去修改IP:
// 使用sudo命令将用户切换到权限最高的Xilinx用户
xilinx@pynq:~$ sudo su

对应的用户密码为xilinx,对于所有的镜像的用户和密码都是xilinx,当然不想麻烦可以直接在ifconfig命令前加上sudo
在这里插入图片描述

  1. 输入 IP修改命令,其中要保持开发版的ip与pc端网口的ip位于同一个网段,即pynq的ip需要设置为192.168.137.x(x表示2~255的任意):
//pynq默认的ip位于eth0:1下,因此需要设置eth0的ip,才能修改pynq IP
root@pynq:/home/xilinx# ifconfig eth0 192.168.137.10 netmask 255.255.255.0

注: 重新连上fpga时可能会出现ip变更现象,可能会出现用以前的ip访问不了文件系统,建议使用ifconfig命令查看确保ip无误后再访问

在这里插入图片描述

网络测试

  1. 联网测试,输入 网站访问命令
// 在外网和内网都是可以ping通百度的
xilinx@pynq:~$ ping www.baidu.com

如果联网正常可以正常返回与百度网站的握手信息。
在这里插入图片描述

  1. jupyter 访问测试,在浏览器中输入pynq的jupyter的访问链接
// 在浏览器中直接输入下面代码
192.168.137.10:9090

其中9090是默认端口,可以自行在命令窗口中更改;而且每次重新启动,可能会换ip,但可以使用pynq:9090访问
在这里插入图片描述

  1. 文件系统访问,注意只有出现在jupyter中的文件是可以通过共享修改的。

    a. 使用pc端自带文件系统访问pynq目录(只含xilinx文件夹下的文件),可以直接通过复制、拖拽等操作实现文件控制;
    在窗口输入\\pynq\xilinx便可以进入文件系统:
    在这里插入图片描述

    在这里插入图片描述

    b. 使用串口可视化软件,通过 ssh连接fpga(不能使用直接可以操作文件的ftp等协议),其中文件都属于只读文件,但可以通过复制路径在命令窗口中通过copy等命令实现;

    协议连接窗口: 在这里插入图片描述
    文件系统显示文件:
    在这里插入图片描述

参考资料

  1. csdn上的PYNQ板连接互联网的方法,其中介绍了ip的配置。
  2. csdn上的PYNQ上手笔记,其中详细的介绍了镜像的烧录及fpga的连接。
  3. csdn上的Pynq-Z2 开发指南与实例(Linux系统方式),超详细地介绍了在linux下的pynq配置。
  4. csdn上的PYNQ -z2 与 PC主板网口直连上网 可ping通外网,介绍了网络的连接。
  5. PC端网络共享页面卡死处理,如果出现共享页面卡死,可以参考这个处理。

小结

  1. pynq的安装主要为两个方面,镜像烧录及网络配置。
  2. 对于镜像的烧录主要关注版本的对应,以及在使用win32软件烧录镜像时,要注意要确保在烧录前要把sd卡清空(否则可能会有未知的错误)。
  3. 对于网络的配置要注意pc端网口的固定ip(作为pynq网关)。如果不想这么麻烦,可以直接将fpga接在路由器上。
  4. 对于网络共享时页面卡死情况需要重置winsock目录。
  5. 有时重新登录后,会出现断网(与主机共享失效)现象,尝试重新共享网络解决。
  • 7
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值