Vivado VIO IP核(Virtual Input/Output)的使用

前言

在Aurora通信工程中,有一个专门产生Aurora数据包的模块,该模块在Aurora ip准备好后会自动根据计数器产生发送的数据包。

但现在希望能实时地控制数据包的发送以及中断,这时候可以采用vivado的vio ip核处理。

VIO IP

调用VIO IP核可以实时监控和驱动FPGA内部的信号,另外输入和输出端口的数量和宽度是可以设置的,其中输入输出端口的数量支持0-256;位宽支持1-256。

注意VIO IP核时钟与被监控或驱动信号的同步,即时钟应该连接被监控或驱动信号的时钟域。

比如我们输出一个监控信号package_vio,用于驱动实时发包。因此在IP核中配置输出数量=1.

在Probe width配置该信号的位宽 = 1.

在vio ip核模板上进行实例化,其时钟与Aurora发包时钟域相同,输出的package_vio作用发包的使能信号即可。

bash 复制代码
//vio_0 u_vio_0
//  (
//   .clk                                 (sCLK_50M                          ),
//   .probe_out0                          (package_vio                       )
//  );

至此,即可生成bit文件,并下载到板卡中,然后手动调节package_vio信号,来实现数据包的实时发送和关闭。默认为0,调至1表示发包,调回0表示结束发包。

相关推荐
星辰徐哥5 小时前
C语言网络编程:TCP、UDP、HTTP深度解析
c语言·网络·tcp/ip
2301_780789666 小时前
云服务器数据会泄露吗?怎么保护云服务器的数据
运维·服务器·tcp/ip·网络安全
念越6 小时前
从网络基础到Socket编程:TCP/UDP原理 + Java实战详解
java·网络·tcp/ip·udp
ALINX技术博客7 小时前
【黑金云课堂】FPGA技术教程Linux开发:GPIO 编程/寄存器读写/以太网RJ45
fpga开发
静心观复12 小时前
从短连接到 gRPC:一文读懂 HTTP 连接模型的演进
网络·网络协议·http
原来是猿13 小时前
TCP Echo Server 深度解析:从单进程到线程池的演进之路(上)
服务器·网络·tcp/ip
ALINX技术博客14 小时前
AMD VU FPGA+NVIDIA Thor AI 超高性能异构平台 ALINX HEA13,支撑新一代边缘 AI 系统
人工智能·fpga开发
艾莉丝努力练剑14 小时前
【Linux网络】Linux 网络编程入门:TCP Socket 编程(下)
linux·运维·服务器·网络·c++·tcp/ip
w1wi15 小时前
【Vibe Coding】TCP/UDP包篡改重放工具
人工智能·网络协议·tcp/ip·ai·udp·ai编程
treesforest15 小时前
IP地址段查询完全指南:从单IP查到IPv4段批量归属地查询
网络·数据库·网络协议·tcp/ip·网络安全·运维开发