异构平台间数据联动方法及装置制造方法及图纸

技术编号:8271379 阅读:220 留言:0更新日期:2013-01-31 03:36
本发明专利技术提供了一种基于事件驱动的数据联动方法,用于X86架构下的第一平台、FPGA架构下的第二平台的数据交互,所述第二平台存储共享信息,该方法包括:判断所接收的事件的来源是第一平台还是第二平台;在所接收的事件是来自第二平台时,将来自第二平台的数据包转发到第一平台进行逻辑运算处理;在所接收到的事件是来自第一平台的至少包括对第一平台的数据包进行逻辑运算处理后得到的共享信息操作指令的信息时,向所述第一平台返回共享信息操作指令完成消息,同时向所述第二平台转发该共享信息操作指令,以在所述第二平台完成该共享信息操作。利用该方法,可确保第一平台同步获取数据而无需等待第二平台的反馈,从而缩短第一平台的处理时间。

【技术实现步骤摘要】
本专利技术涉及数据处理领域,更为具体地,涉及一种异构平台间基于事件驱动的数据联动方法和装置。
技术介绍
FPGA(Field-programmable gate array),即现场可编程门阵列,作为专用集成电路(ASIC)领域中的一种半定制电路而出现,由于FPGA具备良好的性能指标以及一定的可编程能力并且功耗和成本也相对较低,被广泛应用在通信、数据处理、网络、仪器、工业控制、军事和航空等众多领域。但FPGA在控制成本的前提下,通常不能实现过于复杂的运算逻辑。在进行数据处理时,X86架构平台的优势在于具备很强的可扩展性,也就是运行在 X86架构平台上的软件能支持很复杂的运算逻辑,但X86架构平台的运算能力通常不会很高,从而限制其向高端市场发展。鉴于上述两种异构平台的各自特点,现有技术中提出了一种两种异构平台结合的架构体系FPGA+X86结合的架构体系。图I示出了在现有的FPGA+X86结合的架构体系中,两种异构平台间数据交互的体系图。如图I所示,在该体系中,X86平台的逻辑处理必须在获得共享信息的基础上,才能继续进行,由此两种异构平台间的数据交互需要同步。这部分共享信息在大多数转发下是FPGA使用,跨平台查询信息越少发生,对整体性能影响越小。为此,数据集通常存放在FPGA上。在这种情况下,X86系统何时需要该部分数据FPGA并不知晓,因此大部分数据的获取都是由X86系统发起的。现有的X86系统和FPGA之间的同步数据交互过程如下X86系统通过中断异常发起操作指令,FPGA对该操作指令进行响应,并且执行该操作指令,最终FPGA将操作的执行结果返回给X86系统。此后,X86系统才能继续进行后续复杂逻辑的处理。然而,由于这个逻辑路径非常长,导致非常损耗整个系统的性能。因此,在FPGA+X86结合的架构体系中,如何高效处理两个异构平台间关联数据的同步,以保证两个体系中共享数据集的一致性,是FPGA+X86结合的架构体系的关键技术,也是当前困扰该架构体系的技术瓶颈。
技术实现思路
鉴于上述,本专利技术的目的在于提供一种异构平台间的基于事件驱动的数据联动方法及装置,该方法及装置能够确保X86架构下的第一平台(即,X86架构平台)同步获取数据而无需等待FPGA架构下的第二平台(B卩,FPGA架构平台)的反馈,从而缩短第一平台的处理时间。根据本专利技术的一个方面,提供了一种基于事件驱动的数据联动方法,用于X86架构下的第一平台、FPGA架构下的第二平台的数据交互,所述第二平台存储共享信息,该方法由所述第一平台中的数据联动模块执行,该数据联动模块包括用于存储共享信息副本的对应缓存器,所述方法包括判断所接收的事件的来源是第一平台还是第二平台;在所接收的事件是来自第二平台时,将来自第二平台的数据包转发到第一平台进行逻辑运算处理;在所接收到的事件是来自第一平台的至少包括对第一平台的数据包进行逻辑运算处理后得到的共享信息操作指令的信息时,向所述第一平台返回共享信息操作指令完成消息,同时向所述第二平台转发该共享信息操作指令,以在所述第二平台完成该共享信息操作。在上述方面的一个或多个示例中,所述方法还可以包括在第二平台完成该共享信息操作后,根据第二平台返回的共享信息操作结果,对第一平台的对应缓存器中的共享信息副本进行同步处理。在上述方面的一个或多个示例中,在所接收的事件是来自第二平台时,将来自第二平台的数据包转发到第一平台进行逻辑运算处理可以包括在所接收的事件是来自第二平台时,在所述共享信息副本的对应缓存器中查找是否存在针对来自第二平台的数据 包的共享信息副本;在存在针对来自第二平台的数据包的共享信息副本时,更新该共享信息副本的老化超时时间,并将该数据包转发到第一平台进行逻辑运算处理,或者在不存在针对来自第二平台的数据包的共享信息副本时,将该数据包转发到第一平台进行逻辑运算处理。在上述方面的一个或多个示例中,在不存在共享信息副本时,将来自第二平台的数据包转发到第一平台进行逻辑运算处理可以包括在不存在共享信息副本时,查询从第二平台接收的事件中是否包含指示第二平台的共享信息全集中存在针对该数据包的共享信息的标记;以及在所接收的事件中存在指示所述第二平台的共享信息全集中存在针对该数据包括的共享信息的标记时,将该数据包转发到第一平台进行逻辑运算处理,同时从第二平台获取该共享信息并存储到所述共享信息副本的对应缓存器中,或者在所接收的事件中不存在指示所述第二平台的共享信息全集中存在针对该数据包括的共享信息的标记时,将该数据包转发到第一平台进行逻辑运算处理。在上述方面的一个或多个示例中,所述共享信息操作指令包括共享信息创建、共享信息更新、共享信息删除和/或该事件关联的共享信息副本查找。在上述方面的一个或多个示例中,所述方法还可以包括遍历所述第一平台的对应缓存器中的共享信息副本,对共享信息副本进行老化超时处理,其中,在共享信息副本的老化超时时间已经期满时,从所述对应缓存器中删除该共享信息副本。在上述方面的一个或多个不例中,所述共享信息是会话表、路由表,权限表或策略表。根据本专利技术的另一方面,提供了一种基于事件驱动的数据联动装置,用于X86架构下的第一平台、FPGA架构下的第二平台的数据交互,所述第二平台存储共享信息,该数据联动装置包括缓存器,用于存储共享信息副本;判断单元,用于判断所接收的事件的来源是第一平台还是第二平台;事件处理单元,用于在所述判断单元判断为所接收的事件是来自第二平台时,将来自第二平台的数据包转发到第一平台进行运算逻辑处理,或者在所接收到的信息是来自第一平台的至少包括对所述第一平台的数据包进行运算逻辑处理后得到的共享信息操作指令的信息时,向所述第一平台返回共享信息操作指令完成消息,同时向所述第二平台转发该共享信息操作指令,以在所述第二平台完成该共享信息操作。在上述方面的一个或多个示例中,所述数据联动装置还可以包括共享信息副本同步单元,用于在第二平台完成该共享信息操作后,根据第二平台返回的共享信息操作结果,对所述缓存器中的共享信息副本进行同步处理。在上述方面的一个或多个示例中,所述事件处理单元可以包括共享信息副本查找模块,用于在所接收的事件是来自所述第二平台时,在所述缓存器中查找是否存在针对来自第二平台的数据包的共享信息副本;以及更新模块,用于在存在针对来自第二平台的数据包的共享信息副本时,更新该共享信息副本的老化超时时间。在上述方面的一个或多个示例中,所述事件处理单元可以包括标记查询模块,用于在不存在针对来自第二平台的数据包的共享信息副本时,查询从第二平台接收的事件中是否包含指示第二平台的共享信息全集中存在针对该数据包的共享信息的标记;共享信息获取模块,用于在从第二平台接收的事件中存在指示第二平台的共享信息全集中存在针对该数据包的共享信息的标记时,从第二平台获取该共享信息;以及共享信息存储模块,用于 将所获取的共享信息存储到所述缓存器中。在这种情况下,所述事件处理单元还被配置为无论标记查询模块是否查询到所述标记,都将来自第二平台的数据包转发到第一平台进行运算逻辑处理。在上述方面的一个或多个示例中,所述数据联动装置还可以包括老化超时处理单元,用于遍历所述缓存器中的共享信息副本,对共享信息副本进行老化超时处理,其中,在共享信息副本的老化超时时本文档来自技高网
...

【技术保护点】
一种基于事件驱动的数据联动方法,用于X86架构下的第一平台、FPGA架构下的第二平台的数据交互,所述第二平台存储共享信息,该方法由所述第一平台中的数据联动模块执行,该数据联动模块包括用于存储共享信息副本的对应缓存器,所述方法包括:判断所接收的事件的来源是第一平台还是第二平台;在所接收的事件是来自第二平台时,将来自第二平台的数据包转发到第一平台进行逻辑运算处理;在所接收到的事件是来自第一平台的至少包括对第一平台的数据包进行逻辑运算处理后得到的共享信息操作指令的信息时,向所述第一平台返回共享信息操作指令完成消息,同时向所述第二平台转发该共享信息操作指令,以在所述第二平台完成该共享信息操作。

【技术特征摘要】
1.一种基于事件驱动的数据联动方法,用于X86架构下的第一平台、FPGA架构下的第二平台的数据交互,所述第二平台存储共享信息,该方法由所述第一平台中的数据联动模块执行,该数据联动模块包括用于存储共享信息副本的对应缓存器,所述方法包括 判断所接收的事件的来源是第一平台还是第二平台; 在所接收的事件是来自第二平台时,将来自第二平台的数据包转发到第一平台进行逻辑运算处理; 在所接收到的事件是来自第一平台的至少包括对第一平台的数据包进行逻辑运算处理后得到的共享信息操作指令的信息时,向所述第一平台返回共享信息操作指令完成消息,同时向所述第二平台转发该共享信息操作指令,以在所述第二平台完成该共享信息操作。2.如权利要求I所述的方法,还包括在第二平台完成该共享信息操作后,根据第二平台返回的共享信息操作结果,对第一平台的对应缓存器中的共享信息副本进行同步处理。3.如权利要求I所述的方法,其中,在所接收的事件是来自第二平台时,将来自第二平台的数据包转发到第一平台进行逻辑运算处理包括 在所接收的事件是来自第二平台时,在所述共享信息副本的对应缓存器中查找是否存在针对来自第二平台的数据包的共享信息副本; 在存在针对来自第二平台的数据包的共享信息副本时,更新该共享信息副本的老化超时时间,并将该数据包转发到第一平台进行逻辑运算处理,或者, 在不存在针对来自第二平台的数据包的共享信息副本时,将该数据包转发到第一平台进行逻辑运算处理。4.如权利要求3所述的方法,其中,在不存在共享信息副本时,将来自第二平台的数据包转发到第一平台进行逻辑运算处理包括 在不存在针对来自第二平台的数据包的共享信息副本时,查询从第二平台接收的事件中是否包含指示第二平台的共享信息全集中存在针对该数据包的共享信息的标记;以及 在所接收的事件中存在指示所述第二平台的共享信息全集中存在针对该数据包括的共享信息的标记时,将该数据包转发到第一平台进行逻辑运算处理,同时从第二平台获取该共享信息并存储到所述共享信息副本的对应缓存器中,或者 在所接收的事件中不存在指示所述第二平台的共享信息全集中存在针对该数据包括的共享信息的标记时,将该数据包转发到第一平台进行逻辑运算处理。5.如权利要求I所述的方法,其中,所述共享信息操作指令包括共享信息创建、共享信息更新、共享信息删除和/或该事件关联的共享信息副本查找。6.如权利要求I所述的方法,还包括 遍历所述第一平台的对应缓存器中的共享信息副本,对共享信...

【专利技术属性】
技术研发人员:陈静相鲁杰王书义
申请(专利权)人:东软集团股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1