IDT CPS1848 SRIO交换芯片使用

参考

RapidIO规范《RapidIO_Rev_2.2_Specification》
书籍《RapidIO The Embedded System Interconnect》
IDT CPS1848手册《CPS-1848™ User Manual》

IDT CPS1848

  1. CPS1848结构图,最大18个port,注意的是port从0到17,即0x00到0x11。
    IDT CPS1848 SRIO交换芯片使用
  2. CPS1848路由方式,每个端口提供256个缓存来存储设备路由表,还有256个缓存来存储域路由表,这样设计的目的是,在大型的系统里会用到域路由表,大型系统有很多底板,每个底板上也会有很多子板,域路由表用来选择包被发送到哪一块板卡,而设备路由表用来将包发送到某个处理单元(某个芯片的SRIO端口)。RIO_DOMAIN由RapidIO Domain Register寄存器确定。
    IDT CPS1848 SRIO交换芯片使用
  3. 单播(unicast)编程,CPS1848每个端口都有自己的路由表,所以可以支持虚拟网络,路由配置时,有寄存器The Route Port Select Register selects来控制路由表项是添加到所有端口还是某个端口。路由配置主要是三个寄存器Standard Route Table Entries Configuration destID Select CSR,Standard Route Table Entry Configuration Port Select CSR和Standard Route Table Entry Default Port CSR。
    IDT CPS1848 SRIO交换芯片使用
  4. 多播编程,用到再说。
  5. 上面配置路由的方法是非直接方式(Indirect Programming),配置路由需要操作多次,在多(线程)设备的环境下要做互斥,CPS1848支持另外一种直接方式(Direct Programming)可以支持这种情况。
    IDT CPS1848 SRIO交换芯片使用
  6. Switch Port Information CAR寄存器,这个寄存器很重要,在多个Switch互联的系统里,用于确定拓扑关系。
    IDT CPS1848 SRIO交换芯片使用
  7. Port General Control CSR寄存器,会用到DISCV位,是发现标志位。
    IDT CPS1848 SRIO交换芯片使用
  8. Port Error and Status CSR寄存器,第1位PORT_OK。
    IDT CPS1848 SRIO交换芯片使用
  9. Host Base deviceID Lock CSR寄存器,同xilinx SRIO IP。
    IDT CPS1848 SRIO交换芯片使用