AXI 独占访问(Exclusive)和锁定访问(Locked )机制

您所在的位置:网站首页 独占模式应用程序是什么意思啊 AXI 独占访问(Exclusive)和锁定访问(Locked )机制

AXI 独占访问(Exclusive)和锁定访问(Locked )机制

2024-07-11 18:17| 来源: 网络整理| 查看: 265

本文讲解AXI协议中的独占访问和锁定访问机制。

AXI中使用 ARLOCK或 AWLOCK信号的编码来表示普通访问、独占访问和锁定访问,这里我们用AxLOCK代指。

独占访问(Exclusive accesses):

独占访问机制使得信号量类型操作(semaphore type operations)的开发不需要总线在操作期间保持对某一特定主机的锁定。 独占访问的优点是既不会影响关键总线访问延迟,也不会影响最大可达到的带宽。 通过AxLOCK信号的值来选择独占访问,RRESP和BRESP信号分别表示独占访问读和写的成功或失败。 在这里插入图片描述

从机需要额外的逻辑来支持独占访问。AXI 协议提供了一种自动防故障(fail-self)机制来指示当主机试图对一个不支持独占访问的从机进行独占访问。

一个exclusive访问的基本过程如下: 1. 主机对slave的一个地址执行独占读操作。从机中的monitor会记录下该master的 ARID和 要访问的地址位置 2. 一段时间之后,主机对相同的地址执行独占写操作,从机同样要记录该操作的主机的 AWID 和 要访问的地址位置。 如果AWID == ARID 并且 该地址内容没有改变(没有被其他的master访问过),则独占写操作成功,同时slave会返回EXOKEY,否则slave会返回OKEY。 3. 主机独占写访问的结果表示为: •如果自独占读访问到写访问以来没有其他主机写入该位置,则独占访问成功。在这种情况下,独占写更新内存地址。 •如果在独占读访问之后,有任何另外一个主机写入了该位置,则独占访问失败。

对于exclusive操作,总线不会被锁定,所以总线事实上允许其他master同时来请求总线。不过,当一个主机在执行独占访问时,其他master要同时通过总线访问其他的slave,该独占访问就失败了

独占访问限制: •指定ID的独占写的burst size和burst length必须与前一个具有相同ID的独占读的burst size和burst length相同。 •独占访问的地址必须与事务中的总字节数(burst size * burst length)对齐。 •独占读和独占写的地址必须相同。 •独占访问中,独占读的ARID值必须与独占写AWID值匹配,即AWID==ARID •独占访问中,独占读和独占写事务的控制信号必须相同。 •一个独占访问突发中,要被传输的字节数必须是2的幂,即1、2、4、8、16、32、64或128 bytes。 •一个独占访问突发中,可以传输的最大字节数是128。 •在AXI4中,独占访问的burst length不能超过16个transfers。 •AxCACHE信号的值必须保证监视独占访问的从机能看到事务。例如,一个独占访问不能具有表明该事务是可缓存的AxCACHE值。

锁定访问(Locked accesses):

当一个主机使用AxLOCK信号表示一个事务是锁定事务时,互联(interconnect)必须确保只有该主机可以访问目标从机区域,直到同一个主机的一个非锁定传输的事务完成。互连中的仲裁程序用来执行该限制,并且必须强制执行此限制。

锁定访问要求在锁定序列进行时,互连(interconnect)阻止任何其他事务发生,即某个master 可以锁定总线来实现独占,只有当该master完成传输后才释放出bus,因此可能会对互连性能产生影响。相比之下,exclusive访问不需要将bus锁定给某个master。

AXI3的实现必须要支持锁定事务,而AXI4移除了对LOCK访问的支持,因为: •大多数组件不需要锁定事务 •锁定事务的实现对互连(interconnect)的复杂性、保证QoS的能力有显著影响: 所以AXI4建议锁定访问仅用于支持legacy设备。

AxLOCK信号编码:

AXI3的AxLOCK信号编码如表: 在这里插入图片描述 AXI4取消了对锁定事务的支持,只使用1位信号,AxLOCK信号编码如表: 在这里插入图片描述 legacy注意事项: 在AXI4环境中,任何AXI3锁定事务(locked transaction)会按如下规则转换: •AWLOCK[1:0] = 2’b10被转换为一个普通的写事务,即AWLOCK = 1’b0 •ARLOCK[1:0] = 2’b10被转换为一个普通的读事务,即ARLOCK = 1’b0。 规范建议任何会进行此类转换的组件(通常是interconnect)都包含一种可选的机制,用于检测和标记发生了锁定事务转换。 手册表示: Any component that cannot operate correctly if this translation is performed cannot be used in an AXI4 environment. 任何执行了此类转换就无法正确工作的组件,都不能在AXI4环境中使用。

参考: AMBA AXI and ACE Protocol Specification AXI3, AXI4, and AXI4-Lite ACE and ACE-Lite AXI协议中的模棱两可的含义的解释



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3