在多 CPU 架构中,处理器之间可以对共享数据进行操作。Snoop control uint (SCU) 模块用于确保每个处理器都在最新的数据拷贝上运行,从而保持缓存一致性。通用中断控制器 Generic interrupt controller (GIC) 使用优先级的思想,管理 CPU 中断信号的优先级。本文主要介绍 Zynq SCU 和 GIC 的基本结构与工作原理。
Snoop control unit (SCU)
在多 CPU 架构中,处理器之间可以对共享数据进行操作。Snoop control uint (SCU) 模块用于确保每个处理器都在最新的数据拷贝上运行,从而保持缓存一致性。
在前面 Zynq 芯片介绍一文中,我们了解到 Zynq 7000 SoC 具有单核或双核 ARM Cortex-A9 处理器,因此 Zynq 双核器件需要 SCU 模块。
从上图可以看到,Zynq APU 架构中,SCU 位于处理器与 L2 Cache 之间。SCU 将两个 Cortex-A9 处理器连接到存储器子系统(On-