J1—Vivado调试技巧VIO IP

1.简介

VIO(Virtual Input/Output)IP核是一种用于FPGA设计的IP核,它可以模拟输入/输出设备的功能,如键盘、鼠标、显示器等。VIO IP核可以在FPGA设计中用于调试和验证,帮助工程师快速定位问题并进行调试。如图所示,VIO通过JTAG接口与芯片内部互换信息,其中output指VIO IP的输出对于FPGA内部逻辑是输入信号。Input指VIO IP的输入对于FPGA内部逻辑是输出信号,用来监测信号变化,与ILA相比,VIO无需占用ram资源。

2.使用场景

调试:VIO IP核可以模拟输入设备的信号,帮助工程师验证设计的正确性,快速定位问题并进行调试。验证:VIO IP核可以用于验证设计的功能是否符合预期,提高设计的可靠性和稳定性。监控:VIO IP核可以监控设计中的信号变化,帮助工程师了解设计的工作状态。

3.调试技巧

  1. 使用VIO IP核连接到设计中的信号,观察信号的变化和波形。
  2. 设置断点和触发条件,可以在特定条件下暂停设计的运行,方便调试。
  3. 使用VIO IP核的时钟控制功能,可以控制信号的采样速率,帮助调试设计中的时序问题。
  4. 结合其他调试工具如逻辑分析仪、仿真工具等,可以更加全面地进行调试。

总之,通过VIO IP核的使用,工程师可以更加高效地进行FPGA设计的调试和验证工作。

4.快速使用

       创建一个场景是多路选择器,输入不同的2bit值,输出不同的8bit的值,实现多选一的功能,场景中通过VIO output通道向程序输入2bit值,同时通过VIO input通道检测程序的输出值。

代码如下:

module vio_top( input sys_clk_p,input sys_clk_n//200M
);  wire sys_clk;wire [1:0] mux_sel;reg [7:0] mux_val;localparam O1 = 8'd1;localparam O2 = 8'd2;localparam O3 = 8'haa;localparam O4 = 8'hee;//clk差分转单端  IBUFDS #(.DIFF_TERM("FALSE"),       // Differential Termination.IBUF_LOW_PWR("TRUE"),     // Low power="TRUE", Highest performance="FALSE" .IOSTANDARD("DEFAULT")     // Specify the input I/O standard) IBUFDS_inst (.O(sys_clk),  // Buffer output.I(sys_clk_p),  // Diff_p buffer input (connect directly to top-level port).IB(sys_clk_n) // Diff_n buffer input (connect directly to top-level port));//多路选择器always @(*) begin  case(mux_sel)  2'b00: mux_val = O1;  2'b01: mux_val = O2;  2'b10: mux_val = O3; 2'b11: mux_val = O4; default: mux_val = 8'bx; // 'x'表示不确定值,用于表示非法选择  endcase  end  //VIOvio_0 vio_instance (.clk(sys_clk),                // input wire clk.probe_in0(mux_val),    // input wire [7 : 0] probe_in0.probe_out0(mux_sel)  // output wire [1 : 0] probe_out0
); 
endmodule

IP配置如下:可在输出页配置输出信号的默认值,当前为0。

结果如下:双击vio ip显示dashboard信息

可以看到输入不同的数,input端将检测到不同的结果

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

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

相关文章

学习阶段单片机买esp32还是stm32?

学习阶段单片机买esp32还是stm32? 在开始前我有一些资料,是我根据网友给的问题精心整理了一份「stm32的资料从专业入门到高级教程」, 点个关注在评论区回复“888”之后私信回复“888”,全部无偿共享给大家!!&#xf…

放着奥威-用友BI方案不用?糊涂!

放着奥威-用友BI方案不用,自己在那死磕数据可视化报表开发、数据分析报表开发,白白投了大量的人力物力进去,还得不到好效果,比百忙一场还要亏。 奥威-用友BI方案究竟有多优秀? 1、分析快,报表制作快 半个…

Socket网络编程(三)——TCP快速入门

目录 概述TCP连接可靠性1. 三次握手过程2. 四次挥手过程3. 为什么挥手需要四次? 传输可靠性TCP核心APITCP传输初始化配置&建立连接客户端创建Socket建立连接服务端创建ServerSocket监听连接ServerSocket 和 Socket的关系 Socket基本数据类型传输客户端数据传输服…

web前端-html自定义列表

html 自定义列表 <!--有序列表 应用范围&#xff1a;试卷、问答--> <ol><li>Java</li><li>C</li><li>Python</li><li>C</li><li>VB</li> </ol><br><!--无序列表 应用范围&#xff1a…

渗透测试靶场环境搭建

1.DVWA靶场 DVWA&#xff08;Damn Vulnerable Web Application&#xff09;是一个用来进行安全脆弱性鉴定的PHP/MySQL Web应用&#xff0c;包含了OWASP TOP10的所有攻击漏洞的练习环境&#xff0c;旨在为安全专业人员测试自己的专业技能和工具提供合法的环境&#xff0c;同时…

html2canvas + JsPDF.js 导出pdf分页时的问题

问题描述 前一段时间 实现了html2canvas jspdf.js 导出pdf的功能 项目当时没有测试做完就先搁置 最近项目要上线发现分页时问题 这篇文章记录一下之前的bug import html2canvas from html2canvas; import JsPDF from jspdf export function savePdf(el, title) {html2canva…

微信小程序真机调试:连接局域网失败ws://********:8001/失败,已切换回广域网模式的解决方式

这个问题大多数是由于系统上安装了虚拟网卡造成&#xff0c;只要禁用虚拟网卡即可查询方式&#xff1a;windx - 选择设备管理器 - 查看网络适配器&#xff0c;找到虚拟网卡禁用 重新勾选局域网模式进行调试即可

开发知识点-Python-conda

Python-conda https://conda.io/miniconda.html conda search python conda env list conda deactivate conda activate python11 conda 是一个流行的开源包管理系统&#xff0c;它支持多种 Python 版本。 使用 conda 来创建和管理不同的 Python 环境&#xff0c;并在这些环…

WordPress介绍(开源内容管理系统(CMS),一个用于构建和管理网站的平台)

文章目录 Introduction to WordPress: Powering the Web with Simplicity and Flexibility&#xff08;WordPress简介&#xff1a;以简洁和灵活性驱动万维网&#xff09;Overview of WordPress&#xff08;WordPress概述&#xff09;Evolution of WordPress&#xff08;WordPre…

Window系统部署Z-blog并结合内网穿透实现远程访问本地博客站点

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

《Decoupling Representation and Classifier for Long-Tailed Recognition》阅读笔记

论文标题 《Decoupling Representation and Classifier for Long-Tailed Recognition》 用于长尾识别的解耦表示和分类器 作者 Bingyi Kang、Saining Xie、Marcus Rohrbach、Zhicheng Yan、 Albert Gordo、Jiashi Feng 和 Yannis Kalantidis 来自 Facebook AI 和 新加坡国…

Tomcat安装,配置文件、组件

一、Tomcat的基本功能 1.1.Tomcat是什么&#xff1f; Tomcat服务器是一个免费的开放源代码的Web应用服务器&#xff0c;属于轻量级应用服务器&#xff0c;在中小型系统和并发访问用户不是很多的场合下被普遍使用&#xff0c;是开发和调试JSP程序的首选。一般来说&#xff0c;T…