PL端案例开发手册

目    录

  

1 工程编译、程序加载方法

1.1 工程编译

1.2 程序加载

2 led-flash

2.1 案例说明

2.2 操作说明

2.3 关键代码

更多帮助

  

本文主要介绍PL端案例的使用说明,适用开发环境:Windows 7/10 64bit、Xilinx Unified 2022.2。在进行本文如下操作前,请先按照调试工具安装文档安装Xilinx Unified 2022.2开发工具包。本文默认使用创龙科技的TL-DLC10下载器进行操作演示,请使用下载器连接评估板JTAG接口至PC端USB接口

注:本案例基于创龙科技Xilinx UltraScale+ MPSoC系列XCZU7EV高性能处理器设计的高端异构多核SoC工业核心板

PL端案例位于产品资料“4-软件资料\Demo\FPGA-HDL-demos\”目录下,案例使用Verilog语言进行开发。案例包含project和bin两个目录,其中project目录下包含案例工程文件,bin目录下含有案例可执行文件。案例目录详细说明见下表:

1

目录

文件/目录

说明

bin

xxx_xczu7ev.bin/xxx_xczu7ev.bit

PL端可执行文件

project

PL端Vivado工程

处理器硬件资源详细开发说明可查阅产品资料“6-开发参考资料\数据手册\核心板元器件\ZYNQ\”目录下的文档。

  1. 工程编译、程序加载方法

本章节以产品资料“4-软件资料\Demo\FPGA-HDL-demos\目录下的led_flash案例为例,演示工程编译、程序加载等相关操作方法。此案例的功能是PL端控制评估底板的LED2进行闪烁。

请将对应案例目录拷贝至Windows非中文路径下。

备注:Windows路径有长度限制,路径太长将会导致工程打开出错。

  1. 工程编译

进入案例工程对应平台目录,双击.xpr文件打开Vivado工程。

1

在弹出的界面中,点击"PROGRAM AND DEBUG"栏目下的"Generate Bitstream"选项。

2

如弹出如下对话框,请点击Yes。

3

弹出如下界面,请点击OK

4

耗时约3~6min后,工程编译完成,编译时间与PL端工程大小、PC机性能相关。编译完成后,将弹出如下界面,请点击Cancel即可。

5

此时将在案例工程目录的"xxx.runs\impl_1\"路径下生成PL端.bit与.bin格式可执行文件。其中.bit文件一般通过下载器进行加载运行,.bin文件可基于PS端加载运行。

6

  1. 程序加载

请将评估板启动方式选择拨码开关设置为0000(1~4),此档位为JTAG模式,再将评估板上电。将Vivado界面左下角的"Open Hardware Manager"栏目展开,点"Open Target"后点击"Auto Connect"选项。

7

等待Vivado识别评估板,识别成功后如下图所示。

8

右击xczu7_0后点击"Program Device…"选项

9

弹出界面的"Bitstream file"栏,选择待加载的PL端.bit格式可执行文件,已编译的工程将会自动选择,再点击Program进行加载。

10

11

加载完成后,即可看到评估底板的LED2进行闪烁,说明程序基于下载器加载并运行成功。

  1. led-flash
  1. 案例说明

案例功能:控制评估底板LED2每隔0.5s将状态翻转一次。

管脚约束请查看案例工程"xxx.srcs\constrs_1\imports\constraints\"目录下的.xdc文件。

12

  1. 操作说明

程序运行后,即可看到评估底板的LED2进行闪烁,

  1. 关键代码

层文件为"led_flash\project\led_flash.srcs\sources_1\imports\hdl\led_flash.v",关键代码说明如下。

  1. 根据50MHz时钟定义0.5s延时计数值。

13

  1. 使用STARTUPE3原语提供LED时钟及复位。

14

  1. 使用eos_n信号对LED延时进行复位;延时计数值累计次数达到设定的延时值,则翻转LED输出状态。

15

RTL原理图如下所示:

16

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/51950.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Tomcat的安装与介绍

首先我们先了解一下什么是服务器?什么是服务器软件? 什么是服务器?安装了服务器软件的计算机。 什么是服务器软件? 服务器软件是一种运行在服务器操作系统上,用于接收和处理客户端请求,并提供相应服务和资…

PySide6学习笔记--gui小模版使用

一、界面绘制 1.desiner画图 2.画图代码 # -*- coding: utf-8 -*-################################################################################ ## Form generated from reading UI file t1gui.ui ## ## Created by: Qt User Interface Compiler version 6.5.2 ## ##…

第9天----【位运算进阶之----按位取反(~)】(附补码,原码讲解)

今天我们来谈谈按位取反这件事。 简单来说,按位取反就是先将一个数写成其二进制表达形式,然后1变0,0变1。下面就让我们展开深入地讨论吧! 文章目录 一、预备知识:1. 原码:定义:优缺点&#xff…

Mac操作系统上设置和配置PPPoE连接

嗨,在使用Mac的小伙伴么!你是否在Mac操作系统上尝试设置和配置PPPoE连接,却不知道怎么设置?别担心,今天我将为你一步步教你如何在Mac上进行设置和配置。无论你是新手还是有经验的用户,本文都将帮助你轻松完…

node.js 简单使用 开始

1.概要 问:体验一下node.js 看一下如何运行。 答:使用命令 node 文件名.js 2.举例 2.1 代码准备(main.js) console.log(第一行node.js代码); 2.2 运行效果

Qt 获取文件图标、类型 QFileIconProvider

Qt中获取系统图标、类型是通过QFileIconProvider来实现的,具体如下: 一、Qt获取系统文件图标1、获取文件夹图标QFileIconProvider icon_provider;QIcon icon icon_provider.icon(QFileIconProvider::Folder);2、获取指定文件图标QFileInfo file_info(n…

【JVM基础】JVM入门基础

目录 JVM的位置三种 JVMJVM体系结构类加载器双亲委派机制概念例子作用 沙箱安全机制组成沙箱的基本组件 NativeJNI:Java Native Interface(本地方法接口)Native Method Stack(本地方法栈) PC寄存器(Program…

牛客python练习2

1 解析:赋值操作(aXX,ba),a,b指向同一内存空间。当a,b是不可变类型时,a变,a 值变,id变,但是b不变,b的id也不变;当a,b是可变类型时,a变…

c语言函数指针和指针函数的区别,以及回调函数的使用。

函数指针是什么,函数指针本质也是指针,不过是指向函数的指针,存储的是函数的地址。 指针函数是什么,指针函数其实就是返回值是指针的函数,本质是函数。 函数指针是如何定义的呢,如下 void (*pfun)(int a,int b) 这…

解决redis-server.exe不是内部或外部命令

报错:redis-server.exe不是内部或外部命令 原因:未进入到redis的安装目录下 解决:先找到redis安装路径,复制之后,在终端中输入cd xxxxx(redis的安装路径),进入安装目录之后再次输入redis-server.exe就成功了…

车联网技术介绍

上图是目前车联网架构图,基于“云-管-端”的车联网系统架构以支持车联网应用的实现, “云”是指 V2X 基础平台、高基于精度定位平台等基础能力,可实现车辆动态厘米级定位,这将满足现阶段以及未来车联网应用场景的定位精度需求。 “…

自动化编排工具Terraform介绍(一)

Terraform是什么?: Terraform 是 HashiCorp 公司旗下的 Provision Infrastructure 产品, 是 AWS APN Technology Partner 与 AWS DevOps Competency Partner。Terraform 是一个 IT 基础架构自动化编排工具,它的口号是“Write, Plan, and Create …

vue 简单实验 自定义组件 局部注册

1.概要 2.代码 <html> </html> <script src"https://unpkg.com/vuenext" rel"external nofollow" ></script> <body><div id"counter"><component-a></component-a></div> </body&g…

什么是算法评价指标

在我们建立一个学习算法时&#xff0c;或者说训练一个模型时&#xff0c;我们总是希望最大化某一个给定的评价指标&#xff08;比如说准确度Acc&#xff09;&#xff0c;但算法在学习过程中又会尝试优化某一个损失函数&#xff08;比如说均方差MSE或者交叉熵Cross-entropy&…

【面试经典150题】删除有序数组中的重复项-JavaScript版

题目链接 思路1&#xff1a;使用set。 /*** param {number[]} nums* return {number}*/ var removeDuplicates function(nums) {const uniqueSetnew Set();for(let i0;i<nums.length;i){uniqueSet.add(nums[i]);}const uniqueArrayArray.from(uniqueSet);nums.length0;nu…

控制疫情蔓延嵌入式物联网能帮大忙

联合国所订定之永续发展目标之一&#xff0c;便是针对防治传染病的蔓延做好准备。在新型冠状病毒(COVID-19)流行期间&#xff0c;防疫已成为当前最重要目标&#xff0c;科技在对抗传染病方面扮演重要角色&#xff0c;而物联网(IoT)相关技术正是我们重要的防疫武器──降低成本、…

基于Java+SpringBoot+vue前后端分离华强北商城二手手机管理系统设计实现

博主介绍&#xff1a;✌全网粉丝30W,csdn特邀作者、博客专家、CSDN新星计划导师、Java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专…

win10系统rust串口通信实现

一、用cargo创建新工程 命令&#xff1a;cargo new comport use std::env; use std::{thread, time}; use serialport::{DataBits, StopBits, Parity, FlowControl}; use std::io::{self, Read, Write}; use std::time::Duration;fn main() -> io::Result<()> {let m…

Matlab分割彩色图像

彩色图像 彩色图像除有亮度信息外&#xff0c;还包含有颜色信息。以最常见的RGB&#xff08;红绿蓝&#xff09;彩色空间为例来简要说明彩色图像&#xff1a; 彩色图像可按照颜色的数目来划分。例如&#xff0c;256色图像和真彩色图像&#xff08;2的16次方&#xff1d;21677…

JDK JRE JVM 三者之间的详解

JDK : Java Development Kit JRE: Java Runtime Environment JVM : JAVA Virtual Machine JDK : Java Development Kit JDK : Java Development Kit【 Java开发者工具】&#xff0c;可以从上图可以看出&#xff0c;JDK包含JRE&#xff1b;java自己的一些开发工具中&#…