赞
踩
本章介绍了对系统级缓存和保护单元的 AXI 协议支持。 它包含以下部分:
通过使用缓存信息信号 ARCACHE 和 AWCACHE 来支持系统级缓存和其他性能增强组件。 这些信号提供有关如何处理事务的附加信息。
ARCACHE[3:0] 或 AWCACHE[3:0] 信号通过提供事务的可缓冲、可缓存和分配属性来支持系统级缓存:
Bufferable(B) bit, ARCACHE[0] and AWCACHE[0]
当该位为高电平时,意味着互连或任何组件可以将事务到达其最终目的地的时间延迟任意数量的周期。 这通常只与写入相关。
Cacheable(C) bit, ARCACHE[1] and AWCACHE[1]
当该位为 HIGH 时,表示最终目的地的事务不必与原始事务的特征匹配。
对于写入,这意味着可以将多个不同的写入合并在一起。
对于读取,这意味着可以预取一个位置,或者可以为多个读取事务只提取一次。
要确定是否应缓存事务,该位应与Read Allocate (RA) 和Write Allocate (WA) 位结合使用。
Read Allocate (RA) bit, ARCACHE[2] and AWCACHE[2]
当 RA 位为 HIGH 时,这意味着如果传输是读取并且在缓存中未命中,则应该分配它。
如果 C 位为低,则 RA 位不得为高。
Write Allocate (WA) bit, ARCACHE[3] and AWCACHE[3]
当 WA 位为 HIGH 时,这意味着如果传输是写入并且在缓存中未命中,则应该分配它。
如果 C 位为低,则 WA 位不得为高。
表 5-1 显示了 ARCACHE[3:0] 和 AWCACHE[3:0] 信号的编码。
在写事务的情况下,AWCACHE 信号可用于确定哪个组件提供写响应。 如果写事务被指示为可缓冲,那么桥接器或系统级缓存提供写响应是可以接受的。 但是,如果事务被指示为不可缓冲,则必须从事务的最终目的地提供写响应。(如果事务可以缓存,则写响应可以由桥接器或者系统级缓存提供,不需要由直接接受事务的slave提供;但是如果事务不能缓存,则接收事务的slave必须能提供写响应。)
AXI 协议不确定缓冲或缓存数据到达目的地的机制。 例如,系统级缓存可能有一个控制器来管理清理、刷新和使缓存条目无效。 另一个示例是包含写入缓冲区的桥接器,如果它接收到具有匹配事务 ID 的不可缓冲写入,则它可能具有控制逻辑来排空缓冲区。
为了支持复杂的系统设计,系统中的互连和其他设备通常需要提供针对非法事务的保护。 AWPROT 或 ARPROT 信号提供三个级别的访问保护:
Normal or privileged, ARPROT[0] and AWPROT[0]
一些Master使用它来指示他们的处理模式。 特权处理模式通常在系统内具有更高级别的访问权限。
Secure or non-secure, ARPROT[1] and AWPROT[1]
这用于需要在处理模式之间进行更大程度区分的系统。
注意:
该位被配置为当它为高时,事务被认为是不安全的,当为低时,交易被认为是安全的。
Instruction or data, ARPROT[2] and AWPROT[2]
该位指示事务是指令还是数据访问。
注意:
此指示是作为提示提供的,并非在所有情况下都准确。 例如,事务包含指令和数据项的混合。 建议默认情况下,将访问标记为数据访问,除非它被明确称为指令访问。
表 5-2 总结了 ARPROT[2:0] 和 AWPROT[2:0] 信号的编码。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。