overlay由两个主要部分组成; PL设计(比特流)和项目框图Tcl文件(the PL design (bitstream) and the project block diagram Tcl file.)。 overlay设计是硬件工程师的专业任务。 本节假定读者具有数字设计,构建Zynq系统和Vivado设计工具的一些经验。

PL Design

Xilinx®Vivado软件用于创建Zynq设计。 将生成可用于对Zynq PL进行编程的比特流或二进制文件(.bit文件)。

Vivado的免费WebPack版本可用于构建overlay。
https://www.xilinx.com/products/design-tools/vivado/vivado-webpack.html

IP in an overlay that can be controlled by PYNQ will be memory mapped, connected to GPIO. IP may also have a master connection to the PL.
鼓励硬件设计人员利用PYNQ overlay来编程IP。 创建IP后,PL设计的执行方式与任何其他Zynq设计相同。overlay中的 IP可以由PYNQ控制,将被存储器映射,连接到GPIO。 IP也可以与PL建立主连接。 PYNQ提供Python库以及与PL设计接口,并可用于创建自己的驱动程序。 overlay的Python API将在下一节中介绍。

Overlay Tcl file

PYNQ使用Vivado IP Integrator模块设计的Tcl来自动识别Zynq系统配置,IP包括版本,中断,复位和其他控制信号。根据这些信息,可以从PYNQ自动修改系统配置的某些部分,可以自动分配驱动程序,启用或禁用功能,并且可以将信号连接到相应的Python方法。

必须生成Tcl文件,并将其作为overlay的一部分提供给比特流文件。通过在overlay设计过程结束时导出IP Integrator程序框图,可以在Vivado中生成Tcl文件。下载overlay时,应为Tcl文件提供比特流。 PYNQ PL类将自动解析Tcl。

可以使用自定义或手动创建的Tcl文件来构建Vivado项目,但应使用Vivado生成并导出程序框图的Tcl文件。这个自动生成的Tcl应该确保它可以被PYNQ正确解析。

要从Vivado GUI生成块图的Tcl:
File > Export > Block Design

或者,在Tcl控制台中运行以下命令:
write_bd_tcl

Tcl文件名应与.bit文件名匹配。 例如,my_overlay.bit和my_overlay.tcl。

在实例化和下载overlay时解析Tcl。
from pynq import Overlay
ol = Overlay(“base.bit”) # Tcl is parsed here

如果在尝试下载叠加层时Tcl不可用,或者如果Tcl文件名与.bit文件名不匹配,则会显示错误。

可编程
覆盖应该具有后比特流可编程性以允许定制系统。许多可重复使用的PYNQ IP模块可用于支持可编程性。例如,PYNQ MicroBlaze可用于Pmod和Arduino接口。可以重用来自各种覆盖的IP以提供运行时可配置性。

Zynq PS设置
用于Zynq设计的Vivado项目由两部分组成; PL设计和PS配置设置。

用于引导板的PYNQ映像在引导时配置Zynq PS。这将解决大多数PS配置,包括DRAM的设置,以及启用PYNQ使用的Zynq PS外设,包括SD卡,以太网,USB和UART。

PS配置还包括系统时钟的设置,包括PL中使用的时钟。 PL时钟可以在运行时编程,以匹配覆盖的要求。这由PYNQ Overlay类自动管理。

在下载新overlay的过程中,时钟配置将从overlay的Tcl文件中解析。在下载overlay之前,将自动应用overlay的新时钟设置。

现有overlay
现有overlay可用作创建新overlay的起点。基础overlay可以在PYNQ存储库的板目录中找到,并包括板上外设的参考IP:

/ boards / / base
每个文件夹中都存在一个makefile,可用于重建Vivado项目并为overlay生成比特流和Tcl。 (在Windows上,而不是使用make,Tcl文件可以从Vivado获取。)

overlay的比特流和Tcl可在电路板上以及GitHub项目存储库中获得:

/ boards / / base

overlay的设计相关推荐

  1. Linux下pl与ps端的通信,Overlay设计方法篇之第四章PS与PL的交互

    Overlay由两个主要部分组成--bitstream文件和hwh(Hardware Handoff)文件.可以说Overlay设计其实就是一种PL与PS的交互设计.通常PL设计针对特定任务进行高度优 ...

  2. position定位 响应式_使用 Vue3 实现双盒子定位 Overlay

    之前说过,使用  可以很优雅的把某个组件渲染到根节点之外的节点,同时使其渲染的内容不丧失响应式和对应的生命周期函数调用.那么基于此,用  实现相对于某一元素的 Overlay . 实际上,这篇文章跟 ...

  3. 计算机网络:overlay(VLAN,VxLAN)、underlay网络、大二层的介绍

    目录 相关术语 概述 Overlay 网络 Overlay网络组成 VLAN VXLAN Underlay网络 技术专区 相关术语 P network:运营商核心网络,也就是提供VPN服务供应商自己的 ...

  4. 什么是overlay?如何定制overlay?

    ---------------------------------------------------------------------------------------------------- ...

  5. overlay(VLAN,VxLAN)、underlay网络、大二层概述

    一.网络类型 1.第一种网络 网络分为物理网络和虚拟网络,物理网络就是对物理交换机,物理路由器,物理防火墙,物理负载均衡器,物理行为管理设备组成的网络,就叫做物理网络. 虚拟网络,一般指虚拟交换机,虚 ...

  6. Kubernetes容器网络及网络模型

    1.Docker 网络模型 在讨论Kubernetes网络之前,让我们先来看一下Docker网络.Docker采用插件化的网络模式,默认提供bridge.host.none.overlay.macla ...

  7. Flutter 路由源码解析

    前言 这一次,我尝试以不贴一行源代码的方式向你介绍 Flutter 路由的实现原理,同时为了提高你阅读源码的积极性,除了原理介绍以外,又补充了两个新的模块:从源码中学习到的编程技巧,以及 阅读源码之后 ...

  8. Flutter 路由原理解析

    前言 这一次,我尝试以不贴一行源代码的方式向你介绍 Flutter 路由的实现原理,同时为了提高你阅读源码的积极性,除了原理介绍以外,又补充了两个新的模块:从源码中学习到的编程技巧,以及 阅读源码之后 ...

  9. 华为HCIE DC大纲

    华为HCIE DC 数据中心课程介绍 解决方案: 云数据中心整体解决方案 云数据中心双活解决方案 云数据中心SDN解决方案 云数据中心存储解决方案 云数据中心同一管理解决方案 云数据中心容灾备份解决方 ...

最新文章

  1. POJ1276Cash Machine
  2. 分享一个PC端六格密码输入框写法
  3. Python 字符串判断字母 数字 大小写
  4. 把女友升级为老婆的时候发生的BUG(转载)
  5. Redis应用----消息传递
  6. Spring 更好地处理 Struts 动作
  7. Linux静态暗Oracle,Oracle静态监听配置示例
  8. k8s安装nginx部署前端页面_怎么在k8s中部署nginx?
  9. DTC精彩回顾—黄东旭《TiDB数据驱动的企业智能化转型新方向》丨PPT视频
  10. 查最大序号 oracle,oracle查询序号最大的表空间的已经使用空间大小的sql语句
  11. EXCHANGE指定要使用的域控制器、GC
  12. 【千律】OpenCV基础:图像边缘检测 -- Laplacian 算子和 LoG 算子
  13. 利用阿里云服务器搭建私有云电脑(Windows 11),不受局域网限制,安卓iOS也可随时远程访问
  14. 范德堡计算机科学硕士,美国范德堡大学计算机科学专业怎么样?
  15. 汇率,汇率接口,汇率行情数据
  16. 京东充值系统现漏洞 被恶意盗刷
  17. 基于vue2 + Muse-ui 开发的移动端轻社区项目 F-Rent
  18. 我的音乐(Musicoco)- 本地音乐播放器开发总结
  19. 三菱PLC内置以太网通讯
  20. 阿里云第二次实验——个人网盘的搭建

热门文章

  1. C语言 队列(循环队列和链队初始化进出队等基本操作)
  2. win10 代理服务器出现问题 或者地址有误
  3. python doc 转docx
  4. form标签的enctype属性
  5. 友盟 点完登陆后无反应_免登陆、免安装、不限速,打开网页直接下载百度云!...
  6. tomcat服务器项目迁移到另外一台tomcat服务器
  7. 内网渗透(四十六)之横向移动篇-使用系统漏洞ms17010横向移动
  8. opening registry key Software\Javasoft\Java Runtime Environment
  9. UI(六) - 如何架构UI框架
  10. C#实现SqlServer连接查询