PCI-5565反射内存卡系统结构与使用
反射内存卡基于 PCI 接口,是反射内存实时光纤网络产品系
列中的一个。两个以上的 反射内存卡,或反射内存卡系列中的其
它板卡可以用标准光纤线连接组成反射内存网,反射内存网络中的每
个板卡被称做一个“节点”。
反射内存卡可以在使用在不同的体系结构和不同的操作系统的
计算机,工作站,PLC 和其它嵌入式控制器中进行实时共享数据。5565
系统反射内存卡**、灵活并且容易操作。一个数据写到内存
(SDRAM)后该数据被传输到所有的网络上板卡的内存中。板载的
电路自动进行数据传输,所有其它节点的数据*新都不需要 CPU 的
参与。
经典的 VMIPCI-5565 反射内存卡包括一组在 PLX 芯片内的控制
寄存器和一组 FPGA 内的 RFM 控制寄存器。因为这两组寄存器从物
理上分布在两个独立的器件上,通过两个不同的内存区域访问。相反,
反射内存卡的两组寄存器在同一个 FPGA 内。两组寄
存器可以被组合。但是为了保证软件连续性和向后兼容,两组寄存器
继续像 VMIPCI-5565 中一样保持分离。此外,个别内部寄存器的位
功能,在适用的情况下,仍然是兼容的。
反射内存卡反射内存只包括一个 DMA 通道。
射内存网中的每个反射内存节点(任何 5565 反射内存卡)以
菊花链的形式用光纤线跳线互联。块卡的发送必须连接到*二块
卡的接收端,*二块卡的发送端连接到*三块卡的接收端,以此类推,
直到再连接到块卡的接收端完成一个完整的环形连接。也可以将
所有节点连接到一个或多个 ACC-5595 反射内存 HUB,每个节点的
接收和发送都必须连接,如果没有检测到光信号或失去同步反射内存
卡 RFM-5565 将不会发送数据包(例如光纤线已损坏)。反射内存网
中每个节点的节点号必须为一,节点号通过板上的拨码开关 S2 进行
设置,任何两个节点不能有设置成同一个节点号,每个板卡的节点号
可以在通过 NODEID 进行读取显示,节点号的顺序并不重要。
主系统对反射内存卡的板载 SDRAM 的写操作后,反射内内卡的
硬件检测电路将自动发起一个整个反射内存网的数据传输动作。这个
写操作可以是一个简单的 PIO 写或是一个 DMA 周期。
当产生一个对 SDRAM 的写操作时,RFM-5565 反射内存卡自动
将数据和其它相关的信息写入到发送缓冲器中(其它相关信息包括节
点号,数据地址等信息),在发送缓冲器中,发送电路检测数据,并
且将数据变成一个 4 到 64 字节长度可变的数据包。通过光纤接口发
送到下一个板卡的接收端口。
接收电路检查数据包是否有错误,当无错误发生时数据被接收。
接收电路解开数据包并且将数据存储到板载的接收缓冲器。在接收缓
冲器中,另一个电路将数据写入到本地的 SDRAM 的和源节点相同的
地址中。同时,该电路将数据同时发送到发送 FIFO 中,重复这个处
理过程直到这个数据返回到源节点的接收端,在源节点中,接收电路
检测到数据包的 NODEID 和源节点的 NODEID 相同,因此将数据包
从网络中移除,这样所有的节点数据都被*新了。