AXI4 附加重要信号

1. 服务质量信号

本节描述了AXI4协议中支持的额外信号服务质量(QoS)。

1.1 QoS接口信号 AXI4信号集扩展以支持两个4位的QoS标识符:

  • AwQOS:4位QoS标识符,针对每个写事务在写地址通道上发送。
  • ARQOS:4位QoS标识符,针对每个读事务在读地址通道上发送。

在本规范中,AxQOS指AwQOS或ARQOS。

协议没有指定QoS标识符的确切用途。本规范建议AxQOS被用作相关写入或读取事务的优先级指示器,更高的值表示更高的优先级事务。

默认值0b0000表示该接口没有参与任何QoS方案。

注意

  • 可以使用QoS标识符的其他解释。

1.2 master考虑因素

master可以产生自己的AxQOS值,如果它能产生多个流量流(streams of traffic),它可以为不同的流选择不同的QoS值。

支持QoS需要对使用的QoS方案有系统级的理解,以及理解所有参与组件之间的协作。为此,本规范建议master组件包含一些可编程性,可用于控制给定场景使用的确切QoS值。

如果master组件不支持可编程的QoS方案,它可以使用代表其生成的事务的相对优先级的QoS值。如果合适,这些值可以映射到系统级的其他QoS值。

不能产生自己的AxQOS值的master必须使用默认值。

注意

  • 本规范预计许多互连组件实现将支持可编程寄存器,这些寄存器可用于为连接的master分配QoS值。这些值替换了由master提供的,无论是编程还是默认的QoS值。

1.3 系统考虑因素

AXI4中定义的QoS信号可以与任何兼容的系统级QoS方法一起使用。

QoS的默认系统级实现是,任何可以选择多个事务进行处理的组件,首先选择处理QoS值更高的事务。只有在没有其他AXI约束要求以特定顺序处理事务时,才进行此选择。

注意

  • 这意味着AXI排序规则优先于QoS目的的排序。

可以实施与此默认方案兼容的更复杂的QoS方案。

2. 多区域信号

本节描述了AXI4协议中用于支持多区域接口的可选额外信号。

2.1 额外的接口信号

AXI4接口信号集可以被扩展以支持两个4位区域标识符:

  • AWREGION:区域标识符,针对每个写事务在写地址通道上发送。
  • ARREGION:区域标识符,针对每个读事务在读地址通道上发送。

在本规范中,AxREGION指AWREGION或ARREGION。

4位区域标识符可以用来唯一标识多达16个不同的区域。区域标识符可以提供更高阶地址位的解码。区域标识符必须在任何4K字节地址空间内保持不变。

使用区域标识符意味着单个物理接口上的slave可以提供多个逻辑接口,每个逻辑接口在系统地址映射中具有不同的位置。使用区域标识符意味着slave不需要支持不同逻辑接口之间的地址解码。

本协议期望互连在执行单个具有多个逻辑接口的slave的地址解码功能时产生AxREGION信号。如果slave在系统地址映射中只有一个物理接口,互连必须使用默认的AxREGION值。

区域标识符的使用模型有很多,包括但不限于以下情况:

  • 外设可以在地址映射的不同位置拥有其主数据路径和控制寄存器,并通过单个接口被访问,而不需要slave执行地址解码。
  • slave可以在不同的内存区域展现不同的行为。例如,slave可能在一个区域提供读写访问,在另一个区域只提供读访问。

slave必须确保维护正确的协议信号和事务的正确排序。slave必须确保它为具有相同AXI ID的针对不同区域的两个事务提供响应的正确顺序。

slave还必须确保对于任何AxREGION值都维护正确的协议信号。如果slave实现少于16个区域,那么slave必须确保对于任何尝试访问不支持的区域都维护正确的协议信号。如何实现这一点是硬件设计定义的。例如,slave可能通过以下方式确保:

  • 对于访问不支持区域的任何事务提供错误响应。
  • 将支持的区域别名到所有不支持的区域,以确保对所有访问都给出符合协议的响应。

AxREGION信号仅提供现有地址空间的地址解码,可以被slave用来移除所需的地址解码功能。这些信号不创建新的独立地址空间。

AxREGION必须只在地址解码功能的下游接口上存在。

3. 用户定义信号

AXI4接口信号集可以包括一组用户定义的信号,称为用户信号(User signals),存在于每个AXI4通道上。

通常,本规范建议不使用用户信号,因为AXI协议没有定义这些信号的功能,如果两个组件以不兼容的方式使用相同的用户信号,可能会导致互操作性问题。

3.1 信号命名

为每个AXI4通道定义的用户信号名称是:

  • AWUSER:写地址通道用户信号。
  • ARUSER:读地址通道用户信号。
  • WUSER:写数据通道用户信号。
  • RUSER:读数据通道用户信号。
  • BUSER:写响应通道用户信号。

在本规范中,AxUSER指AWUSER或ARUSER。

2. 使用考虑

在实现了用户信号的地方,并不要求所有通道都支持用户信号。也就是说,是否包含用户信号的设计决策是每个通道独立做出的。

本规范建议在互连上包含用户信号,但并没有要求在master或slave上包含它们。

本规范建议互连组件包含对用户信号的支持,以便它们可以在master和slave组件之间传递。用户定义信号的宽度是硬件设计定义的,并且每个通道该信号的宽度可以不同。

  • 17
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值