一种面向异构多源大数据的异构多核并行处理装置及方法与流程

文档序号:14774019发布日期:2018-06-23 02:31阅读:244来源:国知局

本发明属于电子工程和计算机科学领域,具体涉及一种面向异构多源大数据的异构多核并行处理装置及方法。



背景技术:

随着国家战略“中国制造2025”的提出,智能制造已成为当代中国的热点名词。但是实现智能制造离不开数据,这些数据更具体的表现为制造现场的数据,而种类繁多的设备构成了制造现场,比如支持工业Ethernet接口、RS232接口、异步RS422接口、异步RS485接口、同步RS485接口、SPI接口、I2C接口、CAN接口、MTConnect接口以及OPC UA接口的设备。为了实现对制造现场的有效监控,实现对现场各种设备的数据并行采集与处理就显得尤为必要,而传统的方法大多采用多个处理器/嵌入式微处理器来分别采集、处理不同的设备数据,然后这些处理器/嵌入式微处理器再通过片外总线的方式进行数据交互,而这种传统的方式势必增加现场采集、处理装置的数量,增大了成本,也增加了现场布局布线的难度,同时基于片外总线的数据交互也增大了时延,降低了数据传输、处理的实时性。所以需要寻求一种能够实现制造现场异构设备的并行处理方法和装置,而该方法和装置能够使用数量很少的处理器/嵌入式微处理器即可完成众多设备的数据采集与处理,同时降低数据交互的时延。

SoC(System on Chip,片上系统)是一种系统级的微处理器,一般集成了包括FPGA、ARM、Microblaze、DSP等处理器,FPGA具备高度的硬件并行特性,能够实现多种设备数据的并行采集,通过搭建多个Microblaze核,每个核运行不同设备的数据处理任务,再结合任务的动态调度,不失为一种实现异构设备大数据并行处理的方法。因此,本发明提出一种面向异构多源大数据的异构多核并行处理装置及方法,该装置及方法能够实现制造现场不同设备大数据的高效并行处理,能有效支撑智能制造上层决策。



技术实现要素:

本发明要解决的技术问题为:提供一种面向异构多源大数据的异构多核并行处理装置及方法,该装置及方法能够实现对异构设备大数据的高效并行处理。

本发明解决其技术问题是采取以下技术方案实现的:一种面向异构多源大数据的异构多核并行处理装置,包括:

基于FPGA的异构多源大数据并行采集模块,

①该基于FPGA的异构多源大数据并行采集模块具备10种数据接口,能够实现对10种不同协议的数据采集,进而实现对不同设备的数据采集,具体数据接口包括工业Ethernet接口、RS232接口、异步RS422接口、异步RS485接口、同步RS485接口、SPI接口、I2C接口、CAN接口、MTConnect接口以及OPC UA Server接口;该基于FPGA的异构多源大数据并行采集模块将并行采集到的不同设备的数据以DMA的方式,并通过片内HP端口分别缓存在不同偏移地址和大小的片外DDR中;

②该基于FPGA的异构多源大数据并行采集模块通过设计状态机完成对片外DDR的AXI接口封装,实现将片外DDR挂载到片内AXI总线上;

基于异构多核的数据并行处理模块,

①在该基于异构多核的数据并行处理模块中搭建15个MicroBlaze核,并与ARM核组成异构多核架构,这些核全部挂载到片内AXI总线上,同时为片内AXI总线上不同设备分配不同的内存地址,实现核与核之间、核与片外DDR之间的通信;

②不同的MicroBlaze核负责处理不同的设备数据,包括读取缓存在片外DDR中的数据,执行不同的处理算法,具体为:MicroBlaze-1核负责工业Ethernet数据、MicroBlaze-2核负责RS232数据、MicroBlaze-3核负责异步RS422数据、MicroBlaze-4核负责异步RS485数据、MicroBlaze-5核负责同步RS485数据、MicroBlaze-6核负责SPI数据、MicroBlaze-7核负责I2C数据、MicroBlaze-8核负责CAN数据、MicroBlaze-9核负责MTConnect数据、MicroBlaze-10核负责OPC UA数据;MicroBlaze-11核、MicroBlaze-12核、MicroBlaze-13核、MicroBlaze-14核、MicroBlaze-15核作为备用,暂不执行任何任务;

③ARM核完成对多个MicroBlaze核的性能监视,动态调度不同的数据处理算法在多个MicroBlaze核上的运行,以保证核的负载均衡,ARM核通过监测每个MicroBlaze核与片内AXI总线的数据交换速率来判断每个MicroBlaze核的处理器资源使用率,当任何一个MicroBlaze核的处理器资源使用率过高时,ARM核动态调度暂时没有执行任何任务的MicroBlaze核来分担该MicroBlaze核上执行的任务,这里没有执行任何任务的MicroBlaze核不仅仅包括②中搭建的MicroBlaze-11核、MicroBlaze-12核、MicroBlaze-13核、MicroBlaze-14核、MicroBlaze-15核,也包括暂时没有执行任何任务的其余MicroBlaze核。

本发明设计的一种面向异构多源大数据的异构多核并行处理装置采用Xilinx公司ZYNQ-7000SoC芯片实现。

一种面向异构多源大数据的异构多核并行处理方法,包括以下步骤:

步骤一:基于FPGA的异构多源大数据并行采集模块,具体实现如下:

①该基于FPGA的异构多源大数据并行采集模块具备10种数据接口,能够实现对10种不同协议的数据采集,进而实现对不同设备的数据采集,具体数据接口包括工业Ethernet接口、RS232接口、异步RS422接口、异步RS485接口、同步RS485接口、SPI接口、I2C接口、CAN接口、MTConnect接口以及OPC UA Server接口;该基于FPGA的异构多源大数据并行采集模块将并行采集到的不同设备的数据以DMA的方式,并通过片内HP端口分别缓存在不同偏移地址和大小的片外DDR中;

②该基于FPGA的异构多源大数据并行采集模块通过设计状态机完成对片外DDR的AXI接口封装,实现将片外DDR挂载到片内AXI总线上;

步骤二:基于异构多核的数据并行处理模块,具体实现如下:

①在该基于异构多核的数据并行处理模块中搭建15个MicroBlaze核,并与ARM核组成异构多核架构,这些核全部挂载到片内AXI总线上,同时为片内AXI总线上不同设备分配不同的内存地址,实现核与核之间、核与片外DDR之间的通信;

②不同的MicroBlaze核负责处理不同的设备数据,包括读取缓存在片外DDR中的数据,执行不同的处理算法,具体为:MicroBlaze-1核负责工业Ethernet数据、MicroBlaze-2核负责RS232数据、MicroBlaze-3核负责异步RS422数据、MicroBlaze-4核负责异步RS485数据、MicroBlaze-5核负责同步RS485数据、MicroBlaze-6核负责SPI数据、MicroBlaze-7核负责I2C数据、MicroBlaze-8核负责CAN数据、MicroBlaze-9核负责MTConnect数据、MicroBlaze-10核负责OPC UA数据;MicroBlaze-11核、MicroBlaze-12核、MicroBlaze-13核、MicroBlaze-14核、MicroBlaze-15核作为备用,暂不执行任何任务;

③ARM核完成对多个MicroBlaze核的性能监视,动态调度不同的数据处理算法在多个MicroBlaze核上的运行,以保证核的负载均衡,ARM核通过监测每个MicroBlaze核与片内AXI总线的数据交换速率来判断每个MicroBlaze核的处理器资源使用率,当任何一个MicroBlaze核的处理器资源使用率过高时,ARM核动态调度暂时没有执行任何任务的MicroBlaze核来分担该MicroBlaze核上执行的任务,这里没有执行任何任务的MicroBlaze核不仅仅包括②中搭建的MicroBlaze-11核、MicroBlaze-12核、MicroBlaze-13核、MicroBlaze-14核、MicroBlaze-15核,也包括暂时没有执行任何任务的其余MicroBlaze核。

本发明设计的一种面向异构多源大数据的异构多核并行处理方法采用Xilinx公司ZYNQ-7000SoC芯片实现。

本发明与现有技术相比的优点在于:

(1)通过片内AXI总线的互联,能够减少各个核之间以及各个核与片外设备之间的通信时延,提高异构数据交互的实时性;

(2)通过构建多个MicroBlaze核,每个核执行不同的数据处理任务,能够实现多种数据的并行处理,同时基于ARM核的对多个MicroBlaze核性能的监视以及动态调度不同的数据处理算法在多个MicroBlaze核上的运行,能够在保证每个核负载均衡的同时实现数据处理资源的优化配置,提升异构多源大数据并行处理的效率。

附图说明

图1为本发明一种面向异构多源大数据的异构多核并行处理装置的结构框图。

具体实施方式

下面结合附图对本发明做进一步详细的描述。

本发明涉及一种面向异构多源大数据的异构多核并行处理装置及方法,该装置及方法采用Xilinx公司的ZYNQ-7000SoC芯片实现,包括基于FPGA的异构多源大数据并行采集模块和基于异构多核的数据并行处理模块。针对制造现场异构设备大数据的并行采集、处理需要,本发明能够提升异构多源大数据并行处理的效率。

本发明的结构框图如图1所示,具体实施方式如下:

(1)图1中的2是基于FPGA的异构多源大数据并行采集模块,具体实现如下:

①该基于FPGA的异构多源大数据并行采集模块具备10种数据接口,能够实现对10种不同协议的数据采集,进而实现对不同设备的数据采集,如附图1中的1所示:具体能够采集的数据接口包括工业Ethernet接口、RS232接口、异步RS422接口、异步RS485接口、同步RS485接口、SPI接口、I2C接口、CAN接口、MTConnect接口以及OPC UA Server接口;FPGA调用DMA IP核将采集到的异构数据通过ZYNQ-7000SoC芯片内部的HP端口传输到片外DDR(附图1中的4),这些数据分别存储在不同偏移地址和大小存储空间中;

②由于片外DDR设备不能直接挂载到片内AXI总线上,所以该基于FPGA的异构多源大数据并行采集模块设计状态机对片外DDR接口进行封装,封装后的片外DDR可以以AXI协议传输数据,也就可以作为设备挂载到片内AXI总线上了;

(2)图1中的3是基于异构多核的数据并行处理模块,具体实现如下:

①在该基于异构多核的数据并行处理模块中搭建15个MicroBlaze核,并与ARM核组成异构多核架构,这些核全部挂载到片内AXI总线上,同时为片内AXI总线上不同设备分配不同的内存地址,实现核与核之间、核与片外DDR之间的通信;

②不同的MicroBlaze核负责处理不同的设备数据,包括读取缓存在片外DDR中的数据,执行不同的处理算法。具体为:MicroBlaze-1核负责工业Ethernet数据、MicroBlaze-2核负责RS232数据、MicroBlaze-3核负责异步RS422数据、MicroBlaze-4核负责异步RS485数据、MicroBlaze-5核负责同步RS485数据、MicroBlaze-6核负责SPI数据、MicroBlaze-7核负责I2C数据、MicroBlaze-8核负责CAN数据、MicroBlaze-9核负责MTConnect数据、MicroBlaze-10核负责OPC UA数据;MicroBlaze-11核、MicroBlaze-12核、MicroBlaze-13核、MicroBlaze-14核、MicroBlaze-15核作为备用,暂不执行任何任务;

③ARM核完成对多个MicroBlaze核的性能监视,动态调度不同的数据处理算法在多个MicroBlaze核上的运行,以保证核的负载均衡。ARM核通过监测每个MicroBlaze核与片内AXI总线的数据交换速率来判断每个MicroBlaze核的处理器资源使用率:当一个MicroBlaze核与片内AXI总线的数据交换速率越高,说明该MicroBlaze核正在执行的任务需要处理的数据量就越大,那么该MicroBlaze核的处理器资源使用率就必然会增大,同时以片内AXI总线的最大数据交换速率为参考,就可以计算得到该MicroBlaze核的处理器资源使用率。当任何一个MicroBlaze核的处理器资源使用率过高时,ARM核动态调度暂时没有执行任何任务的MicroBlaze核来分担该MicroBlaze核上执行的任务。这里没有执行任何任务的MicroBlaze核不仅仅包括②中搭建的MicroBlaze-11核、MicroBlaze-12核、MicroBlaze-13核、MicroBlaze-14核、MicroBlaze-15核,也包括暂时没有执行任何任务的其余MicroBlaze核:MicroBlaze-1核、MicroBlaze-2核、MicroBlaze-3核、MicroBlaze-4核、MicroBlaze-5核、MicroBlaze-6核、MicroBlaze-7核、MicroBlaze-8核、MicroBlaze-9核、MicroBlaze-10核。

综上所述,本发明公开了一种面向异构多源大数据的异构多核并行处理装置,包括基于FPGA的异构多源大数据并行采集模块和基于异构多核的数据并行处理模块。本发明能够提升异构多源大数据并行处理的效率,能有效支撑智能制造上层决策。

本发明说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1