【问题】
如何理解originating PE Banked和target PE Banked,下面gicv2/gicv3的banked如何理解?
【回答】
GICv2 中,SGI 对于 originating PE(即生成中断的处理器)和 target PE(即接收中断的处理器)是 banked 的
GICv3 中,SGI 仅仅 target PE(即接收中断的处理器)是 banked 的
相对于target PE的banked就不再讨论,gicv2/gicv3都是banked。
相对于originating PE,我们先看下gicv2架构,在gic组件中只有一个Distributor组件,但里面的SGI寄存器是banked by core0-7,所以这里就是说SGI 对于 originating PE是banked。例如cpu4和cpu5都产生一个SGI=1的中断,在distrubutor中事实上是有两份拷贝的,所以两个中断都会被处理。
相对于originating PE,我们先看下gicv3架构,在gic组件中只有一个Distributor组件,其寄存器并不是banked,如果cpu4和cpu5同时都产生一个SGI=1的中断,在distrubutor中事实上是只有1份拷贝的,所以两个中断只会被处理一次。