如何为自己的ZYNQ板卡创建Pynq镜像_第1页
如何为自己的ZYNQ板卡创建Pynq镜像_第2页
如何为自己的ZYNQ板卡创建Pynq镜像_第3页
如何为自己的ZYNQ板卡创建Pynq镜像_第4页
如何为自己的ZYNQ板卡创建Pynq镜像_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第第页如何为自己的ZYNQ板卡创建Pynq镜像

XilinxPynq框架允许我们将(Python)和可(编程)逻辑结合起来。让我们看看如何为自己的ZYNQ板卡创建Pynq镜像。

介绍

Python是目前最热门的编程语言之一(Python是一种高级编程语言,由Guidovan(Ros)sum于1991年开发。它具有简洁、易读、易学的特点,被广泛应用于各个领域的软件开发。),我们希望能够在(FPGA)/SoC开发中利用使用Python带来的生产力红利。

XilinxPynq框架允许开发人员做到这一点,利用Python使用可编程逻辑的进行加速。

在Pynq框架内,可编程逻辑设计称为overlays(覆盖层),并被视为(硬件)库。虽然创建新的overlays需要FPGA设计经验,但越来越多的开源overlays可供开发人员使用(http://www.pynq.io/community.html)

然而,有时我们需要不同或自定义板的Pynq映像,让我们看看如何为自己的Z7010板创建Pynq镜像。

创建环境

我们需要做的第一件事是创建一个虚拟机,配置如下:

Ubuntu16.04

4个(处理器)核心

至少8G内存

至少300G硬盘空间

配置机器进行无密码sudo操作

虚拟机启动并运行后,我们需要做的下一件事是安装构建Pynq所需的应用程序。

需要什么工具?

要创建Pynq映像,我们需要在(Linux)虚拟机上安装以下工具

Viv(ad)o2023.2

(SD)K2023.2

PetaLinux2023.2

我们还需要使用以下命令从XilinxGitHub克隆Pynq存储库。

git

clone

/Xilinx/Pynq.git

clonePynq存储库后,将能够看到包含许多文件夹的Pynq目录。

Boards-现有主板规格、Juyp(te)rNotebook和基础覆盖层

Doc-文档来源

Pynq-Python和相关的支持文件

SDBuild-包含构建Pynq映像的所有脚本和资源

要正确设置我们的构建环境,下一步是在目录中运行设置环境脚本(setup_host.sh)

Pynq/SDBuild/Scripts

一旦这个脚本运行完成,接下来我们确保可以重建现有的主板(确保环境无问题)。

在这种情况下,决定重建PynqZ1映像,为此我将目录更改为SDBuild目录并运行命令

make

BOARDS=Pynq-Z1

将启动镜像创建过程

构建过程可能需要一段时间(如果速度很慢,请检查分配给虚拟机的处理器数量)。完成后SDBuild目录下有一个输出目录。

在此将找到Pynq-Z1镜像

现在我们知道我们可以重新创建Pynq镜像来开发我们的自定义镜像。

构建基础覆盖层

Pynq构建首先需要的东西之一是基础覆盖层。对于自己的开发板,我们将使用PynqZ1镜像作为起点。

打开Vivado(2023.2)并在VivadoTCL窗口中获取以下脚本。可以在目录中找到它们

boards/Pynq-Z1/base

source

build_base_ip.tcl

Source

base.tcl

第一个命令将生成必要的IP,而第二个命令将在Vivado项目中重新创建设计。

现在我们需要做的就是更改设备型号(FPGA型号)。

根据板卡外设添加自己的外设到工程中,其中包括

PmodA

PmodB

Tri-coloured(LED)s

Switches(pushbuttonsontheCora)

(I2C)interface

SPIInterface

然而,由于我们可用的资源较少,我们需要删除一些功能。最终的基础平台如下。

然后,在Vivado中生成bit,以确保设计符合我们的设计

此步骤的目的是确保新的基础平台适合Zynq7010器件,并允许重新生成我们用于自定义板卡的base.tcl。

创建新板

生成镜像之前的最后一步是在目录下创建一个新板

pynq/boards

创建新板需要创建一个以目标板命名的新目录,在本例中为cora。

在此目录中,我们还需要创建几个目录和板规范。

电路板规格是一个文本文件,包含以下信息

目录是:

base-这包含基础覆盖层和相关的设计信息notebooks-这包含juypternotebookspetalinux_bsp-LinuxBSP

使用PynqZ1作为每个目录的模板,根据Cora板(自己的板卡)和较小的7010设备的需要更新tcl、x(dc)和python文件。

使用基本目录中的make脚本生成基本设计的位文件。

当上面所有操作完成后,可以使用SDBuild目录中的命令启动Pynq构建

make

BOARDS=cora

同样,这需要一段时间才能结束,但结果将与之前相同

硬件测试

启动时要监控的是串口输出,通过串口打印能监控到Pynq的启动是否正确。

FPGA启动Pynq映像后,下一步是检查FPGA能否连接到(网络),以便可以访问Jupyternotebooks。

$

ifconfig

最后阶段是测试Jupyternotebooks。在与Pynq位于同一网络的计算机上打开浏览器并输入网址pynq:9090

将进入登录屏幕,密码是xilinx

登录后,将看到笔记本和目录

一旦我们点击一个n

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论