网上查询了许多关于PCIe端口仲裁与VC仲裁的相关资料,总是讲的很模糊,甚至自己看的参考书上讲的都不是太清楚,故进行部分分析记录,以供参考。
一、端口仲裁
定义:不同Ingress端口的、相同VC等级的数据报文到达同一Engress端口的顺序,仲裁决定来自不同Ingress端口的相同VC等级报文如何使用VC通路。
端口仲裁器:两端连接的都是同等级的虚拟通路VC,类似于一个多输入MUX,输出的选通信号来自于数据所使用的端口,如下图所示:
二、VC仲裁
定义:发送到同一Engress端口的数据报文,根据其使用的VC进行仲裁,决定其离开端口的顺序,即VC仲裁决定哪个VC的报文先进行发送。
VC仲裁器:前端连接的多个不同等级的VC通路,后端连接的是实际物理链路,输出的选通信号来自于VC等级。
也就是说:端口仲裁是发生在进入Egress端口时,仲裁的结果是决定不同端口、相等VC等级的数据报文使用哪一个VC VC仲裁是发生在离开Engress端口时,仲裁的结果是决定不同的VC先发送哪一个VC中的数据到实际物理链路中去。