首页 > 其他分享 >system ila的使用

system ila的使用

时间:2022-11-09 11:55:37浏览次数:64  
标签:PS ILA IP ila system 片内 使用 GPIO AXI

片内逻辑分析仪的使用原理 使用ILA观测AXI总线以及用户逻辑
学习内容
本课 重点介绍片内逻辑分析仪的使用原理,以及如何使用 ILA 对 AXI 总
线进行观测分析,实现对 FPGA 设计的全局规划和细节分析。
实现步骤
逻辑分析仪主要有以下几个阶段:
1,预触发阶段。
2,触发并采集阶段。
3,采集结束并上传到电脑。
4,用户界面显示并解析。
vivado 中可以使用 ILA IP 核,使用片内的任意时钟来观测片内的任意信号。

Step1 建立 vivado 工程,添加 IP ,进行布线。

添加Processor System AXI GPIO 2个 ILA IP 核,其中 ILA0 用于观察 AXI GPIO 的 AXI 总线, ILA1用于观察 AXI GPIO 的 GPIO 输出。
在这里插入图片描述
其中AXI GPIO IP 和 ILA IP 设置如下:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在连线过程中,将ILA0 的 AXI 观测接口与 AXO GPIO 的 AXI 总线连接,
clk 与 AXO GPIO s_axi_clk 连接,且是与 ZYNQ PS 的 FCLK_CLK0 连接。
ILA1 设置:
在这里插入图片描述
在这里插入图片描述
将ILA1 的一组端口与 AXI GPIO 的 GPIO 输出连接,一组接口引出端口,在
顶层文件中编写计数器,同时将 clk连接到 PS 的 FCLK_CLK0 并引出。
在这里插入图片描述

Step2 生成 block_design 的输出文件,产生 wrapper 文件,注意选择 Copy generated wrapper to allow user edits 选项。

在这里插入图片描述

Step3 编辑 wrapper 文件,做以下修改:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Step4 生成 bitstream 文件,导出硬件,打开 SDK

观察AXI GPIO 的地址
在这里插入图片描述
新建Application Project,修改 main 函数。
在这里插入图片描述
Step5 将程序下载到开发板运行观测 。
在这里插入图片描述
在这里插入图片描述
下载PS 代码到板上运行
在这里插入图片描述
在vivado 中 open target ,打开 ILA 界面,分析 AXI 时序:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
一定注意:要想扫描到
ILA必须在扫描 ILA之前有时钟输入给 ILA. 官方文档里
面提到的是有一个 FREE RUNNING的时钟。在纯 FPGA系统里面这需要一个外
部输入的 FPGA时钟,在 Z7系统中我们使用 PS输出的时钟做采样时候可以让
PS先运转起来就可以。

标签:PS,ILA,IP,ila,system,片内,使用,GPIO,AXI
From: https://www.cnblogs.com/amxiang/p/16873140.html

相关文章

  • 使用RealSense D435i深度相机 -- pyrealsense2 读取流和保存数据
    #!/usr/bin/envpython#encoding:utf-8"""@version:v1.0@author:Jory.d@contact:[email protected]@site:@software:PyCharm@file:read_realsense_stream2......
  • Java JVM的内存使用
    内存总览堆:运行时数据区域,所有类实例和数组的内存均从此处分配,堆是在Java虚拟机启动时创建的;非堆:非堆就是JVM留给自己用的,所有方法区、JVM内部处理或优化所需的内......
  • 使用kubeadm方式搭建K8S集群
     kubeadm是官方社区推出的一个用于快速部署kubernetes集群的工具。这个工具能通过两条指令完成一个kubernetes集群的部署:#创建一个Master节点kubeadminit#将一......
  • RabbitMQ的安装和使用说明
    1:什么是RabbitMQ简单说明RabbitMQ简称MQ是一套实现了高级消息队列协议的开源消息代理软件,简单来说就是一个消息中间件。是一种程序对程序的通信方法,其服务器也是以高......
  • Vue的Vue-ls使用
    Vue插件,用于从Vue上下文中使用本地Storage,会话Storage和内存Storage一个vue封装的本地储存的方法。1.安装NPMnpminstallvue-ls--saveYARNyarnaddvue-ls2.......
  • 自定义创建Docker镜像,上传至Docker Hub并使用
    自定义创建Docker镜像选择基础镜像系统首先第一步是需要拉取centos:7作为基础镜像系统,以后所有操作均在此基础之上构建。dockerpullcentos:7确定镜像的功能确定......
  • Python|使用Flask进行Web开发
    基础知识Flask是一个用Python编写的Web应用程序框架。它由ArminRonacher开发,他领导一个名为Pocco的国际Python爱好者团队。Flask基于WerkzeugWSGI工具包和Jinja2模......
  • Windows下nginx的使用
    在Windows下使用Nginx,我们需要掌握一些基本的操作命令,比如:启动、停止Nginx服务,重新载入Nginx等,下面我就进行一些简单的介绍。1、启动在nginx安装路径中使用cmd进入到D:\n......
  • Unity版本使用情况统计(更新至2022年10月)
    本期UWA发布的内容是第11期Unity版本使用统计,周期为2022年5月至2022年10月,数据来源于UWA网站(www.uwa4d.com)提测的项目。希望给Unity开发者一个行业参考,了解近半年来哪些Uni......
  • 使用github管理iOS分布式项目开发
    使用github管理iOS分布式项目开发 在我们iOS项目开发过程中,我们的团队成员都是分散的、分布式,这个项目管理带来了挑战。Git是一个能够进行版本管理的软件,它是cvs和svn的未......