AXI互连,Crossbar  –  AXI互连循环如何在空闲期间进行仲裁?-Xilinx-AMD社区-FPGA CPLD-ChipDebug

AXI互连,Crossbar – AXI互连循环如何在空闲期间进行仲裁?

描述

AXI互连循环如何在空闲期间进行仲裁?

AXI互连交叉开关中的循环仲裁器将始终在复位后选择最低有效且符合条件的从站。

当从属接口(SI)达到其配置的接受限制或当它们请求访问的主接口(MI)已达到其颁发限制时,它们将被取消资格。

仲裁器然后将授予下一个有效和合格的从属接口(SI)以赢得仲裁,将最高SI号包回到接口0。

待处理请求的年龄无关紧要,只有授予的最后一个SI确定特定周期内的优先级。

这意味着如果由于空闲/取消资格而跳过SI,则可能必须等待所有其他从接口在其下一次授权之前被授予,无论其AWVALID / ARVALID信号已被断言多长时间。

轮回不合格的MI例外

AXI交叉开关和互连2.1及更早版本中此行为的一个例外是,在接收到其响应的已寻址但完全发布(因而不合格)的MI之后的周期中,仲裁器将考虑新的AWVALID / ARVALID请求,其优先级高于现有的下一个时钟周期请求。

如果SI在该特定周期上声明新请求,则可能违反循环仲裁,可能导致所有其他接口的饥饿。

这可以通过将AWVALID / ARVALID的断言延迟超过BVALID / RVALID之后的下一个周期来解决,以便在该时钟周期内不会发生新请求(例如通过在AXI交叉开关前添加AXI寄存器片)。

或者,当直接使用AXI交叉开关时,将MI Issuance参数增加到大于可以访问MI的所有SI接受值的总和。

这将防止它首先变得不合格。

目前尚未计划在2.1版中修复此问题。

请登录后发表评论

    没有回复内容