0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看威廉希尔官方网站 视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

【FPGA】SRIO IP核系统总览以及端口之Messaging Port介绍

FPGA之家 来源:FPGA之家 2023-10-10 15:58 次阅读

Messaging Port

消息传递端口是可选接口(消息也可以组合到I / O端口上,并使用Vivado集成设计环境(IDE)设置视为写入事务)。单独的Messaging端口遵循Initiator / Target样式。

Initiator / Target端口样式允许将针对远程设备的事务与针对本地端点的事务分开。图2-5详细说明了Messaging端口。

a749337e-6742-11ee-939d-92fbcf53809c.png

本地端点生成的请求放在消息发起方请求(msgireq)端口上,以便在链路上传输。从远程设备收到的响应显示在消息发起者响应(msgiresp)端口上。

来自远程设备的由Serial RapidIO核心接收的请求显示在消息目标请求(msgtreq)端口上。由用户设计生成的对这些请求的响应被放置在消息目标响应(msgtresp)端口上。

Table 2-6 shows the signals associated with the Messaging port. At the level, the following signals are associated with these interfaces:

• s_axis_msgireq* are associated with MSGIREQ.

• m_axis_msgiresp* are associated with MSGIRESP.

• m_axis_msgtreq* are associated with MSGTREQ.

• s_axis_msgtresp* are associated with MSGTRESP.

a753ce1a-6742-11ee-939d-92fbcf53809c.png

本地端点生成的请求放在消息发起方请求(msgireq)端口上,以便在链路上传输。从远程设备收到的响应显示在消息发起者响应(msgiresp)端口上。

来自远程设备的由Serial RapidIO核心接收的请求显示在消息目标请求(msgtreq)端口上。由用户设计生成的对这些请求的响应被放置在消息目标响应(msgtresp)端口上。

Table 2-6 shows the signals associated with the Messaging port. At the level, the following signals are associated with these interfaces:

• s_axis_msgireq* are associated with MSGIREQ.

• m_axis_msgiresp* are associated with MSGIRESP.

• m_axis_msgtreq* are associated with MSGTREQ.

• s_axis_msgtresp* are associated with MSGTRESP.

a762d892-6742-11ee-939d-92fbcf53809c.png

a7671790-6742-11ee-939d-92fbcf53809c.png

a76aec8a-6742-11ee-939d-92fbcf53809c.png

其含义都在上表中给出了,但是我还是要挑出一组来用中文解释下:

下面这一组为本地message请求信号

s_axis_msgireq_tvalid 本地逻辑层Message接口上发起的请求信息是有效的。(输入)

s_axis_msgireq_tready :

握手信号。表明来自于源端的数据被接收了。(输出)

s_axis_msgireq_tdata[63:0] :

包头和数据(输入)

s_axis_msgireq_tkeep[7:0] :

字节限定符,指示相关联的数据字节的内容是否有效。对于HELLO端口,这必须与8'hFF相关联。(输入)

s_axis_msgireq_tlast :

表示数据包的最后一拍。(输入)

s_axis_msgireq_tuser[31:0] :

在数据包的第一个节拍上,该信号由数据包的源ID(31:16)和目标ID(15:0)组成。如果使用

8位器件ID,每个ID的最高有效字节应填充0。

在数据包中的后续节拍中,保留此字段。(输入)

下面这一组是远程设备(另一端)的响应:(含义一致)

m_axis_msgiresp_tvalid Output Indicates that the information on the interface is valid.

m_axis_msgiresp_tready Input Handshaking signal. Indicates that the data from the source is accepted (if valid).

m_axis_msgiresp_tdata[63:0] Output Packet header and data.

m_axis_msgiresp_tkeep[7:0] Output Byte qualifier that indicates whether the content of the associated byte of data is valid. For HELLO ports, this must be tied to 8’hFF.

m_axis_msgiresp_tlast Output Indicates the last beat of a packet.

m_axis_msgiresp_tuser[31:0] Output

On the first beat of a packet, this signal consists of the Source ID (31:16) and Destination ID (15:0) for the packet. If using

8-bit Device IDs, the most significant byte of each ID should be padded with 0s.

On subsequent beats within a packet, this field is reserved.

下面这一组为远端的请求信号:

m_axis_msgtreq_tvalid Output Indicates that the information on the interface is valid.

m_axis_msgtreq_tready Input Handshaking signal. Indicates that the data from the source is accepted (if valid).

m_axis_msgtreq_tdata[63:0] Output Packet header and data.

m_axis_msgtreq_tkeep[7:0] Output Byte qualifier that indicates whether the content of the associated byte of data is valid. For HELLO ports, this must be tied to 8’hFF.

m_axis_msgtreq_tlast Output Indicates the last beat of a packet.

m_axis_msgtreq_tuser[31:0] Output On the first beat of a packet, this signal consists of the Source ID (31:16) and Destination ID (15:0) for the packet. If using 8-bit Device IDs, the most significant byte of each ID should be padded with 0s.

On subsequent beats within a packet, this field is reserved.

下面这一组为本地的响应信号:

s_axis_msgtresp_tvalid Input Indicates that the information on the interface is valid.

s_axis_msgtresp_tready Output Handshaking signal. Indicates that the data from the source is accepted (if valid).

s_axis_msgtresp_tdata[63:0] Input Packet header and data.

s_axis_msgtresp_tkeep[7:0] Input Byte qualifier that indicates whether the content of the associated byte of data is valid. For HELLO ports, this must be tied to 8’hFF.

s_axis_msgtresp_tlast Input Indicates the last beat of a packet.

s_axis_msgtresp_tuser[31:0] Input On the first beat of a packet, this signal consists of the Source ID (31:16) and Destination ID (15:0) for the packet. If using 8-bit Device IDs, the most significant byte of each ID should be padded with 0s.

On subsequent beats within a packet, this field is reserved.

User-Defined Port

用户定义端口是一个可选端口,有两个AXI4-Stream通道,其中一个通道用于发送方向,一个通道用于接收方向。

用户定义的端口仅使用SRIO Stream格式。用户定义端口如图2-6所示。

a77ce84a-6742-11ee-939d-92fbcf53809c.png

表2-7列出了与用户定义端口关联的信号。s_axis_usrtx *信号与USER_IO_TX接口相关联,m_axis_usrrx *与级别的USER_IO_RX接口相关联。

a7872422-6742-11ee-939d-92fbcf53809c.png

a79e587c-6742-11ee-939d-92fbcf53809c.png

Maintenance Port

如果启用了 "维护" 端口, 则它将使用 AXI4-LITE 接口。AXI4-LITE 接口允许用户应用程序定位本地或远程配置空间。

这些端口用到了再说吧。暂时不看了。

​​​




审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1629

    文章

    21729

    浏览量

    603048
  • 接收机
    +关注

    关注

    8

    文章

    1180

    浏览量

    53458
  • Vivado
    +关注

    关注

    19

    文章

    812

    浏览量

    66482

原文标题:【FPGA】SRIO IP核系统总览以及端口介绍(三)(Messaging Port、User-Defined Port介绍)

文章出处:【微信号:zhuyandz,微信公众号:FPGA之家】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    FPGA优质开源模块-SRIO IP的使用

    本文介绍一个FPGA常用模块:SRIO(Serial RapidIO)。SRIO协议是一种高速串行通信协议,在我参与的项目中主要是用于FPGA
    的头像 发表于 12-12 09:19 2231次阅读
    <b class='flag-5'>FPGA</b>优质开源模块-<b class='flag-5'>SRIO</b> <b class='flag-5'>IP</b><b class='flag-5'>核</b>的使用

    FPGAIP使用技巧

    FPGAIP使用技巧主要包括以下几个方面: 理解IP的概念和特性 : IP
    发表于 05-27 16:13

    FPGA IP的相关问题

    我用的是xinlinx spartan6 FPGA,我想知道它的IPRAM是与FPGA独立的,只是集成在了一起呢,还是占用了FPGA的资源
    发表于 01-10 17:19

    【正点原子FPGA连载】 第十二章IPRAM实验-领航者ZYNQFPGA开发指南

    ROM时只用到了嵌入式BRAM的读数据端口。本章我们主要介绍通过BRAM IP核配置成RAM的使用方法。Xilinx 7系列器件内部的BRAM全部是真双端口RAM(True Dual-
    发表于 09-23 17:24

    FPGAIP的生成

    FPGAIP的生成,简单介绍Quartus II生成IP的基本操作,简单实用挺不错的资料
    发表于 11-30 17:36 11次下载

    HFSS端口Wave Port和Lumped Port介绍

    Wave Port是HFSS中典型的外部端口,这里所说的外部是指只有一侧有场分布,一般都在边界和背景的交界处。外部端口需要通过传输线的方式才能将激励信号加入到结构中,而外部端口通常会定
    发表于 11-22 16:35 3.1w次阅读
    HFSS<b class='flag-5'>端口</b>Wave <b class='flag-5'>Port</b>和Lumped <b class='flag-5'>Port</b>的<b class='flag-5'>介绍</b>

    FPGA实现基于Vivado的BRAM IP的使用

      Xilinx公司的FPGA中有着很多的有用且对整个工程很有益处的IP,比如数学类的IP,数字信号处理使用的
    的头像 发表于 12-29 15:59 1.2w次阅读

    逻辑层接口的IO口如何使用

    上篇博文:【FPGASRIO IP系统总览以及
    的头像 发表于 08-18 09:35 4928次阅读
    逻辑层接口的IO口如何使用

    FPGASRIO IP系统总览端口介绍

    RapidIO标准分为三层:逻辑,传输和物理。
    的头像 发表于 04-12 19:51 3417次阅读

    Xilinx SRIO IP介绍和使用经验分享

    随着PCIe接口、以太网接口的飞速发展,以及SOC芯片的层出不穷,芯片间的数据交互带宽大大提升并且正在向片内交互转变;SRIO接口的应用市场在缩小,但是由于DSP和PowerPC中集成了SRIO接口,因此在使用DSP/Power
    的头像 发表于 08-02 10:00 4685次阅读
    Xilinx <b class='flag-5'>SRIO</b> <b class='flag-5'>IP</b><b class='flag-5'>介绍</b>和使用经验分享

    SRIO IP的三层协议的作用?

    数据从远程设备(假设为DSP的SRIO端)传输过来,FPGA端(假设我们这端为FPGASRIO端口)通过RX接收到串行数据,先到达物理层进
    的头像 发表于 03-03 10:19 1030次阅读

    SRIO IP的三层协议的作用解析

    SRIO这种高速串口复杂就复杂在它的协议上,三层协议:逻辑层,传输层以及物理层。 数据手册会说这三层协议是干什么的呢?也就是分工(【FPGASRIO
    的头像 发表于 04-25 11:20 1654次阅读
    <b class='flag-5'>SRIO</b> <b class='flag-5'>IP</b><b class='flag-5'>核</b>的三层协议的作用解析

    基于FPGASRIO协议设计

    本文介绍一个FPGA常用模块:SRIO(Serial RapidIO)。SRIO协议是一种高速串行通信协议,在我参与的项目中主要是用于FPGA
    的头像 发表于 09-04 18:19 1375次阅读
    基于<b class='flag-5'>FPGA</b>的<b class='flag-5'>SRIO</b>协议设计

    FPGA实现基于Vivado的BRAM IP的使用

    Xilinx公司的FPGA中有着很多的有用且对整个工程很有益处的IP,比如数学类的IP,数字信号处理使用的
    的头像 发表于 12-05 15:05 1695次阅读

    SRIO介绍及xilinx的vivado 2017.4中生成srio例程代码解释

    介绍 本处将从SRIO的数据流,数据协议,常用FPGA支持模式,以及IP例程中的时钟大小计算等部分介绍
    的头像 发表于 12-10 16:24 278次阅读
    <b class='flag-5'>SRIO</b><b class='flag-5'>介绍</b>及xilinx的vivado 2017.4中生成<b class='flag-5'>srio</b>例程代码解释