Zynq PS上的加速器一致性接口(Accelerator Coherency Port, ACP)是一个兼容AXI3的64位从机接口,连接到SCU(Snoop Control Unit),为PL提供异步缓存一致性直接访问PS的入口。
处理器可以标记ACP上的传输为一致性或非一致性。PL端的AXI主机通过ARUSERS[1:0]指示是否为一致性读传输,通过AWUSERS[1:0]指示写传输,这几个信号都是AXI总线相关信号。设备端或强烈要求顺序传输的情况常常按照非一致性传输对待(这些情况是指由AXI主机接口产生的传输,他们不被缓存,常常产生固定尺寸和数目的传输)。
【简介】
非一致性传输直接经过SCU,出现在AXI主机接口保持不变。
ACP从机的一致性传输到AXI主机会变为或多或少传输,一些属性会随之变化。
当ACP收到来自外部主机的一致性写请求时,SCU检查CPU内核L1数据缓存中相应地址,如果命中,一致性协议清空并invalidate 相应cache行,并合并清掉的数据和写请求。
从外部主机箱一致性内存区域发起读请求时,与SCU交互,测试是否需要数据已经存入处理器L1 Cache,如果命中,SCU直接向请求方返回数据;如果miss,SCU检查先L2 cache,再不然访问主存。