一种基于pci-e接口的大规模plc高速背板总线系统的利记博彩app
【技术领域】
[0001]本发明属于高速背板总线技术领域,特别涉及一种基于PC1-E接口的大规模PLC高速背板总线系统。
【背景技术】
[0002]随着电子技术、计算机技术、通信网络控制技术和工业自动化控制技术的飞速发展和日益普及,在工业控制系统领域中,诞生于上世纪60年代的可编程逻辑控制器(PLC)的功能日益强大,已经由传统的单机PLC控制/网络通信朝向网络化大规模PLC系统发展,在轨道交通、石化等领域已出现万点以上大规模PLC系统的应用需求。
[0003]PLC背板总线的实现是PLC系统向大型化方向发展的一个技术难点。PLC系统通常采用传统的串行通信技术实现背板总线,串行总线可以提高在恶劣的工厂和工业环境下自动化设备的可靠性。传统的串行通信技术的包括can、i2c、uart、sp1、usb和以太网等,一般来说,很多作为PLC系统主芯片的处理器自身都集成了这些外设部件。但是处理器内部集成的I2C、UART, SPI等外设通信速率太慢,根本不能满足底板总线的通信速率要求。USB和以太网的通信速度虽然很快,但由于它们都是通用的接口,在通信协议处理时需要处理器的干预,处理器处理速度较慢,因此整体通信速度仍然很慢。
[0004]针对上述现状,国内外著名生产商所使用的大规模PLC系统背板总线大都是基于公开的总线协议进行个性化的修改和设计,并出于商业的目的对背板总线技术的具体实现方法进行保密,因此对PLC系统高速背板总线实现技术无相关报道。同时,国内外知名PLC系统公司推出了众多产品,但由于PLC系统生产商都各自独立进行背板总线的开发工作,使得不同厂商间的兼容性不强,用户无法根据实际的工业环境自行配置不同厂商的模块,并且对特定厂商的PLC产品的依赖性强,而且传输速度不高、价格上昂贵。
[0005]PLC系统主机是通过背板总线支持扩展模块的连接,背板总线是CPU处理器同I/O模块之间的高速数据通路,支持CPU和扩展模块之间的高速数据通路和I/O数据刷新。背板总线技术水平决定了 PLC系统的I/O扩展能力,是PLC系统设计的核心技术。特别是大型的PLC系统需要采集上千点I/O数据的处理时间极短,要满足如此高速的通信要求必须采用新型高性能总线技术。
[0006]随着总线接口技术的发展,传统共享总线的数据传输方式已不能满足日益增多的设备互联需求,新型高性能总线技术逐渐获得市场的关注。在传统共享总线的体系结构中,所有设备都争用总线带宽,因此,设备越多,每个设备可用的带宽就越少,从而带来严重的总线瓶颈。在互联领域中,使用交换互联总线代替并行总线是大势所趋,在这种点对点的交换式总线结构中,数据传输是基于包格式的,不需要地址寄存器映射,每个设备通过网络连接到其他设备,大量设备可同时通信,提高了系统带宽。与传统的单端并行信号相比,交换互联信号可以使用更高时钟频率,从而使用更少的信号线来完成需要许多单端并行数据信号才能达到的总线带宽。除此之外,传统并行传输技术由于引脚多,带来了一定的电气和机械特性等问题,使信号频率和信号传输距离受到限制。新型高性能总线大多采用了串行I/O技术,由于互联信号线数量的减少,消除了由并行总线带来的信号偏移问题。
[0007]PCI Express技术是第三代高性能I/O总线,在PCI和PC1-X总线的基础上进行了根本性的变革,实现了新的飞跃,提供了高速率、高性能、点到点的、双单工链路。采用串行差分信号来连接PCI Express端点设备,支持芯片到芯片、板卡到板卡间的通讯,并且突破了关键难题,已经走出实验室,正在努力推进产业化的发展,是作为大规模PLC背板连接技术的极佳选择。
[0008]发明目的
[0009]本发明的目的是为了解决大规模PLC系统高速背板总线的实现问题,而提出一种可从多个端点设备获取事务数据,处理器运行用户程序处理经过大规模可编程逻辑阵列解码后的事务数据,从而得到相应处理结果,并且能将处理得到的结果通过背板总线链路发送至端点设备的基于PC1-E接口的大规模PLC系统高速背板总线系统。
【发明内容】
[0010]为了实现上述目的,本发明的技术方案是一种基于PC1-E接口的大规模PLC系统高速背板总线系统,是通过下述技术方案实现的。
[0011]包括至少一个基于PC1-E接口的CPU模块和至少一个基于PC1-E接口的端点设备,所述的CPU模块和端点设备通过同一个PCI Express背板总线互相连接并通信,CPU模块和端点设备的事务数据通过PC1-E接口数据包的方式在背板总线中进行路由传输;
[0012]CPU模块包括FPGA核心电路,CPU核心电路,DDR, Flash和FIFO ;其中FPGA核心电路包括一块FPGA及外围与FPGA连接的时钟电路和滤波电路,其硬件逻辑结构包括系统仲裁模块以及分别与系统仲裁模块通信连接的PC1-E数据收发模块、PC1-E协议解析模块、DMA控制模块、DDR控制模块、Flash控制模块和FIFO控制模块;PCI_E数据收发模块通过金手指与PCI Express背板总线物理层电路相连,分别完成接收PC1-E数据包和发送用户程序处理结果;PC1-E协议解析模块接收端点设备发送的数据包,按照接口标准解析数据包获取事务数据;DMA控制模块控制数据格式的打包解包和数据的搬运;DDR控制模块通过FPGA接口与片外DDR相连接,对DDR实现配置、读写数据,DDR为处理结果数据缓存;Flash控制模块通过FPGA接口与片外Flash相连接,对Flash实现配置、读写数据和擦除等操作,Flash为数据备份存储器;FIF0控制模块通过FPGA接口与片外FIFO相连接,对FIFO实现配置、读写数据,FIFO为FPGA与CPU间的数据交换桥;系统仲裁模块协调各个硬件逻辑模块之间的数据交换;CPU核心电路包括Microblaze软核处理器或ARM硬核处理器及外围与CPU处理器连接的时钟、滤波电路,用于运行用户程序以处理从FPGA处获取的事务数据;
[0013]根节点指的是连接CPU、DDR、Flash及PCI Express结构的设备;它可能支持一个或多个PCI Express端口,本系统中的根节点支持两个端口 ;每个端口连接一台端点设备或一个交换开关,在本系统的两个端口中,一个连接端点设备,一个连接交换开关;
[0014]交换开关用于PCI Express背板总线链路的扩展;PCI Express总线使用端到端的连接方式,在一条PCI Express背板总线链路中,这两个端口是完全对等地连接发送与接收设备,而且一条PCI Express背板总线链路的一端只能连接一个发送设备或者接收设备,因此必须使用交换开关扩展PCI Express背板总线链路,使其能连接多个设备;
[0015]端点设备是不同于根节点和交换开关的其它设备,这些设备是PCI Express事务的请求者或完成者,可以作为请求者发起事务,或者作为完成者对事务做出响应,在本系统中包括PLC中具备PC1-E接口的设备,例如I/O模块、智能模块或特殊模块。
[0016]本发明的一种基于PC1-E接口的大规模PLC高速背板总线系统,其特征在于系统的工作过程为:
[0017]步骤1:端点设备和CPU模块通过根节点和交换开关连接到同一个背板总线链路内,系统上电初始化、系统自检,根节点代表CPU发起配置事务请求初始化PLC系统,系统开始工作;
[0018]步骤2:CPU运行用户程序,生成存储器访问请求从DDR、Flash取出数据进行处理;在用户程序执行过程中,CPU和端点设备都有可能作为请求者发起事务请求或完成者完成事务请求,按照以下规则循环工作以实现事务通信:
[0019]I)如果根节点代表CPU作为请求者发起事务,端点设备作为完成者对事务做出响应,则根节点把打包生成的请求事务数据包发送到背板总线链路中,该数据包直接发送至对应的端点设备,或经过交换开关转发至下游对应的端点设备,端点设备解码获取的数据包收集请求数据,若为非报告事务则还会返回一个带数据的完成事务数据包;
[0020]2)如果端点设备作为请求者发起事务,根节点代表CPU作为完成者对事务做出响应,则端点设备把打包生成的请求事务数据包发送到背板总线链路中,该数据包直接发送至根节点,或经过交换开关转发至上游的根节点,根节点解码获取的数据包收集请求数据,若为非报告事务则还会返回一个带数据的完成事务数据包;
[0021]步骤3:显示屏实时显示所选端点设备数据和控制参数。
[0022]本发明的一种基于PC1-E接口的大规模PLC高速背板总线系统,其特征在于CPU模块可以配置系统参数:
[0023]I) CPU模块可以配置端点设备ID地址、数据刷新率、运行模式等参数;
[0024]2) CPU模块可以配置本模块ID地址、程序扫描频率、运行模式、与端点设备对应等参数;
[0025]3) CPU模块可以调取任意端点设备实时数据和控制参数并显示在显示屏上;
[0026]4) CPU模块可以将背板总线链路中事务数据存储起来,并且能够查阅历史数据。
[0027]本发明的一种基于PC1-E接口的大规模PLC高速背板总线系统,其特征在CPU模块中FPGA均选用Xilinx的Virtex-5系列型号为XC5VLX110T芯片或Zynq-7000系列型号为XC7Z045芯片。
[0028]本发明的一种基于PC1-E接口的大规模PLC高速背板总线系统,其特征在CPU模块中CPU处理器均选用Xilinx FPGA提供的Microblaze软核处理器或XC7Z045芯片内置的ARM Corte-A9双核处理器。
[0029]本发明的一种基于PC1-E接口的大规模PLC高速背板总线系统,其特征在CPU模块中 DDR 选用型号为 MT9HTF6472Y-667B3 芯片或 MT8JTF12864HZ-1G6G1 芯片。
[0030]本发明的一种基于PC1-E接口的大规模PLC高速背板总线系统,其特征在CPU模块中 Flash 选用型号为 JS28F256P30T95、M25P32 芯片或 S25FL128SAGMFIR01 芯片。
[0031]本发明的一种基于PC1-E接口的大规模PLC高速背板总线系统,其特征在CPU模块中FIFO的均通过Block RAM(BRAM)编程实现。
[0032]本发明的一种基于PC1-E接口的大规模PLC高速背板总线系统,其特征在CPU模块中PC1-