可进qq群进行相关Verilog知识交流:1073030956
1.准备工作
在开始之前,你需要准备好如下物品:
- PYNQ-Z2开发板
- 装有最新版本Chrome浏览器的PC机
- 一根百兆/千兆网线
- 一根Micro USB线
- 至少8GB大小的Micro SD卡和读卡器
- 下载安装putty串口软件
2.制作Micro SD卡
这一步的任务是制作一张可启动的Micro SD卡。在制作Micro SD卡之前,请确认你已经准备好下列物品:
- 一台可以读写Micro SD卡的电脑,或者Micro SD卡读卡器
- PYNQ-Z2开发板的PYNQ镜像,可在http://www.pynq.io/board.html下载
- 镜像烧录工具。根据不同的操作系统有不同的推荐:
Windows:可通过镜像烧录软件,如Win32DiskImager,官方下载链接为https://sourceforge.net/projects/win32diskimager/
Mac OS X/Linux:dd命令行sudo dd bs=4M if=pynq_z1.img of=/dev/sdd
以在Windows下制作可启动的Micro SD卡为例。
①打开Win32DiskImager,并根据开发板选择下载好的镜像文件,PYNQ-Z2.img。
②选择MicroSD卡对应的盘符(请务必正确选择),点击写入然后等待完成。
③烧录完成之后可以看到对应的Micro SD盘符如下图所示。
Micros SD卡内被划分为两个分区,本例中99.7MB大小的FAT分区挂载的是Linux中的**/boot分区,内部存放的是Boot.bin等启动所需文件。另一个ext4格式的分区在Windows中不可读,挂载的是根目录/**分区。
3. 启动开发板
开发板启动步骤如下:
- 配置成SD卡启动模式(如图①处)
- 配置为USB供电模式(如图②处)
- 把上一小节中制作好的Micro SD卡插入对应的卡槽(如图③处)
- 将Micro USB线连接到板板卡与PC(该线缆用于板卡供电/串口通讯/JTAG调试)。(如图④处)
- 将网线连接到板卡与PC机对应的接口(如图⑤处),PC上配置本地网络静态IP为192.168.2.100,子网掩码为255.255.255.0。(打开网络与共享中心–>更改适配器设置–>选择以太网右击属性–>选中Internet协议版本4–>选中属性–>选中‘使用下面的IP地址’选项–>输入对应数)(注意:也可以通过路由器连接,这里不做说明)
- 打开电源拨码开关,等待板卡启动完毕。
- 测试板子通过网线和PC连接正常。(测试步骤:Window+R键打开命令窗口–>输入cmd,然后回车–>在弹出的窗口中输入ping 192.168.2.99 , 然后回车–>如果出现串口信息则表明连接成功)
4. 与PYNQ-Z2建立串口连接
串口连接需要专门的串口连接软件来操作,这里我们推荐使用开源免费跨平台的PuTTY来进行连接。下面将只介绍Windows上的操作,mac和Linux上的操作类似。
首先我们需要知道串口端口号,打开设备管理器,展开端口列表即可看到,如COM29。
其次,打开之前安装好的PuTTY软件,输入USB端口号和下列串口参数,点击连接即可。
- 波特率115200 Speed
- 数据位 8 Data bits
- 停止位1 Stop bits
- 奇偶校验 None Parity
- 流控制 No Flow Control
5. 连接Web UI: Jupyter Notebook
在这一小节中,我们将通过浏览器打开板载Linux上运行的嵌入式Web服务器Jupyter Notebook的页面,感受不一样的编程体验。
开发板是直接网线连到PC上的,默认的<PYNQ_IP>=192.168.2.99。如果是通过路由器建立的网络连接,则需要查询板卡的IP地址。通过putty软件在串口终端输入ifconfig命令即可查询到板卡的IP地址。
具体操作:打开Chrome浏览器输入 http://pynq:9090 ,输入密码:xilinx,即可进入到开发板上的Jupyter Notebook主页。推荐使用Chrome浏览器是因为Jupyter Notebook使用了许多最新需要浏览器支持的js框架。
主页中展示的例子可以让我们快速上手PYNQ相关的操作,base文件夹和logictools文件夹与具体的Overlay应用相关(Overlay的概念后面会介绍),common文件夹中的是与具体Overlay不绑定的较为通用的例子。对新手来说,getting_started文件夹提供了了解PYNQ必知必会的几个例子,我们也建议读者朋友先从这里入手。
我们以PYNQ上自带的/base/board/board_btns_leds.ipynb为例,打开该notebook。点击Run按钮运行该notebook,根据notebook中的介绍操作按钮,观察板卡的运行状态。
如果对Jupyter了解有限,可以先看本章后面的JupyterNotebook必知必会对它有一个初步的使用印象,再去进行下一步操作。
6. 通过samba传输文件
在开发过程中,如果需要在PC机与板卡之间传输一些较大的文件,可以通过PYNQ支持的samba协议将PYNQ的文件系统当作一个网络硬盘直接读取。在Windows中只需要打开资源管理器,输入\\pynq\xilinx即可成功连接。在Mac/Linux中同样可以打开文件管理器,输入smb: //pynq/xilinx进行挂载。注意,用户名和密码均为xilinx。