FPGA优质开源模块 - SRIO

本文介绍一个FPGA常用模块:SRIO(Serial RapidIO)。SRIO协议是一种高速串行通信协议,在我参与的项目中主要是用于FPGA和DSP之间的高速通信。有关SRIO协议的详细介绍网上有很多,本文主要简单介绍一下SRIO IP核的使用和本工程的源代码结构。

由于Vivado中RapidIO IP核需要付费才能使用,因此本文提供完整工程源码。文章末尾有该工程源码获取方式,有需要的小伙伴可以收藏、分享一下。

一、软硬件平台

  • 软件平台:Vivado 2017.4;
  • 硬件平台:XC7K410T...;

二、IP核参数配置

本工程SRIO IP核参数配置如下图所示,仅供参考:

三、工程源码结构

下图是SRIO工程源码结构:

其中,

  • SRIO_Auto_rst_Mod:SRIO自动复位模块;

  • srio_request_gen:SRIO请求事务生成模块;

  • srio_response_gen:SRIO响应事务生成模块;

  • RapidIO_switch_maintr_mod & srio_quick_start:SRIO维护事务生成模块。

四、实现功能

该FPGA SRIO模块采用NWRITE类型事务往DSP目的地址传输数据,每包数据大小为256字节。数据写入完毕后,通过DOORBELL事务给DSP发送数据接收中断。另外FPGA端通过RapidIO IP核m_axis_treq接口接收来自DSP的数据。

五、源码获取方式

需要该工程源码的小伙伴,请下载我的 资源**:《FPGA优质开源项目获取方式》** ,里面有获取方式。

相关推荐
IvorySQL27 分钟前
济南站活动回顾|IvorySQL中的Oracle XML函数使用示例及技术实现原理
xml·数据库·sql·postgresql·oracle·开源
老齐谈电商36 分钟前
开源电商erp系统启航电商ERP系统centos Docker部署
docker·开源·centos
望森FPGA1 小时前
HDLBits中文版,标准参考答案 |2.5 More Verilog Features | 更多Verilog 要点
学习·fpga开发
infominer1 小时前
RAGFlow 0.12 版本功能导读
人工智能·开源·aigc·ai-native
望森FPGA4 小时前
HDLBits中文版,标准参考答案 |3.1.1 Basic Gates | 基本门电路
学习·fpga开发
IM_DALLA15 小时前
【Verilog学习日常】—牛客网刷题—Verilog进阶挑战—VL25
学习·fpga开发·verilog学习
辣个蓝人QEX16 小时前
【FPGA开发】Modelsim如何给信号分组
fpga开发·modelsim·zynq
li星野19 小时前
ZYNQ:点亮LED灯
fpga开发·zynq·7010
9527华安19 小时前
FPGA实现PCIE视频采集转HDMI输出,基于XDMA中断架构,提供3套工程源码和技术支持
fpga开发·音视频·pcie·xdma·ov5640·hdmi
乌恩大侠20 小时前
【Xcode Command Line Tools】安装指南
macos·fpga开发·c