嵌入式fpga集群智能计算平台硬件框架

文档序号:1755363 发布日期:2019-11-29 浏览:16次 >En<

阅读说明:本技术 嵌入式fpga集群智能计算平台硬件框架 (Embedded FPGA swarm intelligence computing platform hardware frame ) 是由 刘红伟 潘灵 贾明权 邵龙 梁超广 林勤 吴明钦 张昊 于 2019-07-27 设计创作,主要内容包括:本发明公开的一种嵌入式FPGA集群智能计算平台硬件框架,旨在提出一种能够灵活调度计算资源,应用模型更换方便的硬件框架。本发明通过下述技术方案予以实现:运行系统框架软件的主节点通过簇控制类总线将簇节点信息管理包、算法模型包、配置参数和簇节点状态回传包下发到各个簇节点;接收并解析各簇节点信息管理包、算法模型包和配置参数包。控制类处理器将应用算法模型部署到簇节点,并通过应用算法启停控制模块来控制算法模型的启停;通过模型参数通道的AXI总线传输算法模型参数到簇节点的大规模逻辑计算单元节点;每个大规模计算单元运行应用算法模型的业务数据,从数据源中输入,计算处理完的数据通过业务数据总线发送回数据源。(A kind of embedded FPGA swarm intelligence computing platform hardware frame disclosed by the invention, it is intended to propose one kind can flexible dispatching computing resource, application model replaces convenient hardware frame.The technical scheme is that: the host node of operating system Framework controls class bus by cluster and cluster node information management packet, algorithm model packet, configuration parameter and cluster knot dotted state passback packet is issued to each cluster node;Receive and parse through each cluster node information management packet, algorithm model packet and configuration parameter packet.Control class processor will be deployed to cluster node using algorithm model, and by application algorithm start-up and shut-down control module come the start and stop of control algorithm model;Pass through the extensive logic computing unit node of the AXI bus transfer algorithm model parameter in model parameter channel to cluster node;The business datum of algorithm model is applied in each large-scale calculations unit operation, is inputted from data source, the complete data of calculation processing send back data source by business datum bus.)

嵌入式FPGA集群智能计算平台硬件框架

技术领域

本发明涉及一种用于智能终端或边缘计算中心的高算力、低功耗的嵌入式FPGA集群智能计算平台的硬件框架。

技术背景

最近几年,随着人工智能、无人驾驶汽车、网络、工业自动化、机器学习、高性能数据分析和金融分析等计算密集型领域的兴起,终端智能和边缘计算中心的智能化程度和计算需求越来越高。随着智能终端或边缘计算中心的功能复杂度和多样性的提升,对这些应用场景中计算系统的高算力、低功耗、多应用功能部署和计算资源的灵活调度等要求也越来越高。

传统CPU(Central Processing Unit)并行计算的方式已经无法满足我们对计算能力的需求。目前,业界最受欢迎的异构计算平台“CPU+GPU(Graphics Processing Unit)”以及“CPU+FPGA(Field-Programmable Gate Array)”具有比传统CPU并行计算更高效率和低延迟的计算性能,能够很好的满足智能终端或边缘计算中心的算力需求。和“CPU+GPU”相比,“CPU+FPGA”中的FPGA的优势则主要体现在它拥有更高的每瓦性能、非规整数据计算更高的性能、更高的硬件加速性能、更低的设备互联延迟,另外与GPU相比,现场可编程门阵列FPGA可硬件编程,适应于多应用功能的部署。

FPGA是一种集成电路,其中包含的逻辑可以在制造后进行配置和连接(即“现场模式”)。FPGA的可重配置性可以为硬件设计带来很多灵活性,但由于FPGA掉电易失,每次加载都是完整整个FPGA的重配置,这样会导致不需要重配置的业务中断。目前,商用平台上基于FPGA运行深度学***台多采用以下模式:在超大规模基础设施架构上,基于CPU的服务器构成了一个CPU计算层,在这个服务器的计算层之上又加入了基于超大规模FPGA组成的FPGA计算层,CPU的计算层和FPGA的计算层都同时接入了数据中心的融合网络,这样运行在本地的CPU或者FPGA的应用可以直接调用远端的FPGA池,然后将已经训练好的各种各样的复杂的神经网络编译成可以在FPGA上执行并加速的代码并通过分布式的方式部署到运算池上。这种架构实施多采用重型虚拟化环境进行资源调用的计算中心机房,单个FPGA资源上运行部署的应用单一。

深度学***台,而且往往还是有监督学习。目前深度学习随着应用场景的限制,越来越多的迁移到边缘计算中心或者智能终端,对硬件架构低功耗特征要求更加严厉。FPGA的芯片技术随着加工制造工艺的进步,在每瓦功耗上的算了大幅提升,更加适合在边缘计算中心或智能终端中使用。另外,许多框架具有绑定机制,允许使用者使用与编写框架不同的语言访问框架,但是编写框架所使用的语言也不可避免地在某种程度上影响后期开发的语言的灵活性。目前商用计算中心使用的软件框架多为重型环境(比如JAVA虚拟机)下的框架,难以使用在边缘计算中心和智能终端设备上宝贵的计算资源上。

发明内容

本发明的目的是针对智能终端或边缘计算中心的功能复杂度和多样性的提升,对这些应用场景中计算系统的高算力、低功耗、多应用功能部署和计算资源的灵活调度的要求,提出一种能够灵活调度计算资源,应用模型更换方便的嵌入式FPGA集群智能计算平台的硬件框架。

为达到上述发明目的,本发明提出的一种嵌入式FPGA集群智能计算平台硬件框架,包括:分为主节点、簇节点和数据源三部分的嵌入式FPGA集群智能计算平台和运行系统框架软件,其特征在于:运行系统框架软件的主节点通过簇控制类总线将簇节点信息管理包、算法模型包、配置参数和簇节点状态回传包下发到各个簇节点;接收并解析各簇节点信息管理包、算法模型包和配置参数包的各个簇节点的控制类处理器,通过配置管理总线将应用算法模型1、应用算法模型2···应用算法模型n部署到簇节点内部的大规模逻辑计算单元节点1、大规模逻辑计算单元节点2···大规模逻辑计算单元节点n,并通过应用算法启停控制模块来控制应用算法模型的启停;各个簇节点通过配置管理总线将应用算法模型1、应用算法模型2···应用算法模型n运行需要的算法参数,通过模型参数通道的AXI总线传输到簇节点内部的大规模逻辑计算单元节点1、大规模逻辑计算单元节点2···大规模逻辑计算单元节点n;每个大规模计算单元运行算法模型时的业务数据通过业务数据总线从数据源中输入,计算处理完的数据通过业务数据总线发送回数据源。

本发明相比于现有技术具有如下有益效果:

计算资源的灵活调度。本发明采用接收并解析各簇节点信息管理包、算法模型包和配置参数包的各个簇节点的控制类处理器,通过配置管理总线将各应用算法模型部署到簇节点内部的各大规模逻辑计算单元节点,并通过应用算法启停控制模块来控制应用算法模型的启停;基于控制类处理器和大规模逻辑计算单元节点,实现对智能终端或边缘计算中心的计算资源的灵活调度和多种算法模型的在线部署,实现业务数据的实时处理并输出结果,客户了传统CPU并行计算的方式已经很难满足对计算能力的需求不足。

应用模型更换方便。本发明将各应用算法模型运行需要的算法参数,通过模型参数通道的AXI总线传输到簇节点内部的各大规模逻辑计算单元节点;每个大规模计算单元运行算法模型时的业务数据通过业务数据总线从数据源中输入,计算处理完的数据通过业务数据总线发送回数据源。在不重启电的情况下,可以通过多种算法模型的在线部署应用算法加载单元,加载大规模计算单元节点上处于停止状态的应用算法模型,更换成其它的应用模型。

本发明特别应用于对数据带宽高、业务数据并行实时处理时延小的应用场景中。支持的算法包含但不限于CNN(Convolutional Neural Networks)、LSTM(Long Short-TermMemory)、DNN(Deep Neural Network)等。

附图说明

为了更清楚地理解本发明,参照本发明实施过程和附图,来描述本发明,其中:

图1是本发明嵌入式FPGA集群智能计算平台硬件框架的示意图;

图2是图1的簇节点硬件框图;

图3是图1的大规模逻辑计算单元节点硬件框图。

具体实施方式

参阅图1。在以下描述的优选实施例中,一种嵌入式FPGA集群智能计算平台硬件框架,包括:分为主节点、簇节点和数据源三部分的嵌入式FPGA集群智能计算平台和运行系统框架软件,其中:运行系统框架软件的主节点通过簇控制类总线将簇节点信息管理包、算法模型包、配置参数和簇节点状态回传包下发到各个簇节点;接收并解析各簇节点信息管理包、算法模型包和配置参数包的各个簇节点的控制类处理器,通过配置管理总线将应用算法模型1、应用算法模型2···应用算法模型n部署到簇节点内部的大规模逻辑计算单元节点1、大规模逻辑计算单元节点2···大规模逻辑计算单元节点n,并通过应用算法启停控制模块来控制应用算法模型的启停;各个簇节点通过配置管理总线将应用算法模型1、应用算法模型2···应用算法模型n运行需要的算法参数,通过模型参数通道的AXI总线传输到簇节点内部的大规模逻辑计算单元节点1、大规模逻辑计算单元节点2···大规模逻辑计算单元节点n;每个大规模计算单元运行算法模型时的业务数据通过业务数据总线从数据源中输入,计算处理完的数据通过业务数据总线发送回数据源。

簇控制类总线包含以太网总线但不限于该类总线。簇控制类总线提供应用算法模型的加载通道和应用算法模型参数下发通道实现,提供与大规模逻辑门阵列并行配置接口之间的逻辑程序的应用算法模型加载单元,实现多种对外接口的接入和协议逻辑转换,通过算法模型加载单元实现应用算法模块的启停控制。通过业务数据通道输入业务数据的大规模逻辑门阵列,用来加载应用模型的应用算法模型加载单元,实现业务数据的缓存和转换的FPGA内存颗粒三者组成大规模逻辑计算单元节点1、大规模逻辑计算单元节点2···大规模逻辑计算单元节点n。

簇控制类总线包含存放并解析处理的簇节点信息管理包,算法模型包、配置参数包的内存颗粒和簇节点回传包;运行算法模型对业务数据总线传输来的业务数据进行计算处理,通过业务数据总线将计算结果输出到数据源,大规模逻辑计算单元节点1、大规模逻辑计算单元节点2···大规模逻辑计算单元节点n组成簇节点1、簇节点2···簇节点3…簇节点n,并且每个簇节点的大规模逻辑计算单元节点1、大规模逻辑计算单元节点2···大规模逻辑计算单元节点n都通过配置管理总线与控制类处理器交互数据,同时通过业务数据总线和数据源进行数据通信。

参阅图2。簇节点包含以太网接口、交互内存颗粒的内存接口、交互非遗失存储颗粒的Flash接口和PCIE接口的控制类处理器,并且控制类处理器通过PCIE接口连接配置管理总线的大规模逻辑计算单元节点。控制类处理器通过Flash接口将操作系统、驱动软件、应用软件动态库等存放到非遗失存储颗粒,并在上电启动时进行加载;控制类处理器通过簇控制类总线(例如以太网总线)接收簇节点信息管理包、算法模型包和配置参数包,并通过内存接口存放到内存颗粒中进行解析处理,将解析处理好的数据转换成PCIE协议,通过PCIE接口输出到配置管理总线(例如PCIE总线)。配置管理总线一方面通过应用算法加载单元将算法模型加载到各个大规模逻辑计算单元节点,大规模逻辑计算单元节点通过控制类处理器将状态上报给主节点,运行系统框架的主节点对大规模逻辑计算单元节点的应用算法模型的运行状态来进行部署管理,另一方面将模型参数加载到大规模逻辑计算单元节点的算法模型中。大规模逻辑计算单元节点运行算法模型,通过业务数据总线将传输来的业务数据进行计算处理,并通过业务数据总线输出计算结果,同时,通过配置管理总线将各个大规模逻辑计算单元节点的算法模型运行状态,完成标志状态等回传到控制类处理器。

控制类处理器通过以太网总线接收簇节点算法模型包,通过算法模型加载单元将应用算法模型加载到大规模逻辑计算单元节点,由主节点操作系统负责对多个应用算法模型进行调度、配置和管理,同时实现对大规模逻辑计算资源的灵活调用。

参阅图3。大规模逻辑计算单元节点的体系结构分为应用算法模型加载单元、大规模逻辑门阵列和FPGA内存颗粒三部分。应用算法模型加载单元提供应用算法模型的加载通道,提供与大规模逻辑门阵列并行配置接口之间的逻辑程序。大规模逻辑门阵列实现多种对外接口的接入和协议逻辑转换、应用算法模块的启停控制、模型参数通道、业务数据通道。

大规模逻辑门阵列包括:通过并行配置接口连接的应用算法模型1、应用算法模型2···应用算法模型n及其应用算法模块,通过PCIE接口连接的总线协议转换IP模块,连接在总线协议转换IP模块与应用算法模块之间的应用算法启停控制IP模块,连接在多通道内存接口与上述应用算法模块之间的内存接口IP模块,以及通过AXI总线接口连接上述应用算法模块的业务数据接口控制IP模块。

总线协议转换IP模块将接入大规模逻辑门阵列的PCIE接口转换成两路AXI总线接口形式,其中一路AXI总线通过应用算法启停控制IP模块,控制应用算法模块中算法模型的启停和状态回传,另外一路AXI总线通过模型参数通道,将应用算法模型的参数传输给应用算法模块并配置算法模型。内存接口IP模块通过多通道内存接口连接FPGA内存颗粒,将多通道内存接口的协议转换为AXI协议,通过应用算法模块来控制业务数据和应用算法的中间数据的存储和转换。

FPGA内存颗粒用来存储和转换应用算法模块运行过程中的业务数据,实现业务数据的缓存和转换。

业务数据接口控制IP模块通过AXI业务数据通道,控制应用算法模块业务数据的输入。业务数据接口控制IP模块通过业务数据通道,将高速串行总线接口转换成AXI协议,通过应用算法模块来控制处理后业务结果数据输出。

对于本领域的技术人员来说,可根据以上描述的技术方案以及构思,做出其它各种相应的改变以及变形,而所有的这些改变以及变形都应该属于本发明权利要求的保护范围之内。

9页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:多处理器片上系统MPSOC的数据解析方法及系统

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!