CN116069716A - 一种基于gpu和fpga的异构数据采集与处理系统 - Google Patents
一种基于gpu和fpga的异构数据采集与处理系统 Download PDFInfo
- Publication number
- CN116069716A CN116069716A CN202211589785.1A CN202211589785A CN116069716A CN 116069716 A CN116069716 A CN 116069716A CN 202211589785 A CN202211589785 A CN 202211589785A CN 116069716 A CN116069716 A CN 116069716A
- Authority
- CN
- China
- Prior art keywords
- data
- gpu
- core
- fpga
- board card
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/173—Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
- G06F15/17337—Direct connection machines, e.g. completely connected computers, point to point communication networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4204—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
- G06F13/4221—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0026—PCI express
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Information Transfer Systems (AREA)
Abstract
本发明涉及一种基于GPU和FPGA的异构数据采集与处理系统,该系统包括GPU板卡、FPGA板卡和外部设备,FPGA板卡包括ZYNQ处理平台和DDR动态存储器,GPU板卡与ZYNQ处理平台通过PCIE接口连接,ZYNQ处理平台与DDR动态存储器通过存储器接口连接,GPU板卡采用DMA驱动通过PCIE接口直接访问DDR动态存储器中的数据,ZYNQ处理平台与外部设备连接;其中,ZYNQ处理平台包括XDMAIP核;GPU板卡包括应用APP、DMA驱动和内存单元,应用APP用于控制DMA驱动通过PCIE接口直接访问DDR动态存储器的数据,并将该数据从DDR动态存储器中拷贝到GPU板卡的内存单元中;XDMAIP核控制内存单元向FPGA板卡写入数据,XDMAIP核控制内存单元从FPGA板卡读取数据。因此,本发明不仅体积小、功耗低,还能满足功耗低和处理速度的均衡,以及灵活地运用在各种场景上。
Description
技术领域
本发明属于数字信号处理领域,涉及一种基于GPU和FPGA的异构数据采集与处理系统。
背景技术
随着市面上各种电子产品需求的提升,需要系统能够支持的数据采集与处理的速度也越来越快,目前比较主流的采集与处理系统方案(ZL202010769501.1,一种基于FPGA和GPU的高速采集存储分析系统)为PC配合专用的采集卡实现或者使用嵌入式系统实现,前者系统普遍体积大、功耗高、价格昂贵,比较容易受到工作环境的影响,并且这种系统一般是为了某些特定的方向而进行开发的,所以灵活性也较差。后者为了减小系统功耗和体积,一般采用低功耗SOC进行开发,所使用的通信接口一般为UART、IIC这种低速率的串行数据接口,但是数据量过大或者速度过快都有可能造成数据的丢失,从而达不到既定的要求。
因而,目前的数据采集与处理系统不能同时满足功耗低和处理速度的均衡,不能灵活地运用在各种场景上。
发明内容
有鉴于此,本发明的目的在于提供一种体积小、功耗低的基于GPU和FPGA的异构数据采集与处理系统,从而同时满足功耗低和处理速度的均衡,以及灵活地运用在各种场景上。
为达到上述目的,本发明提供一种基于GPU和FPGA的异构数据采集与处理系统,其中,该异构数据采集与处理系统包括GPU板卡、FPGA板卡和外部设备,所述FPGA板卡包括用于采集数据和控制外部设备的ZYNQ处理平台和用于存储数据的DDR动态存储器,所述GPU板卡与所述ZYNQ处理平台通过PCIE接口连接,所述ZYNQ处理平台与所述DDR动态存储器通过存储器接口连接,所述GPU板卡采用DMA驱动通过PCIE接口直接访问DDR动态存储器中的数据,所述ZYNQ处理平台与所述外部设备连接;其中,所述ZYNQ处理平台包括用于将AXI协议的数据与PCIE接口传输的数据间相互转换的XDMAIP核;所述GPU板卡包括应用APP、DMA驱动和内存单元,应用APP用于控制DMA驱动通过PCIE接口直接访问DDR动态存储器的数据,并将该数据从DDR动态存储器中拷贝到所述GPU板卡的内存单元中;所述XDMAIP核控制所述内存单元向FPGA板卡写入数据,所述XDMA IP核控制所述内存单元从FPGA板卡读取数据。
优选地,所述ZYNQ处理平台还包括用于将所述XDMA IP核输出的数据进行时钟域的转换的FIFO IP核、用于实现与外部设备所采集数据互联的AXI CROSSBAR IP核、用于控制DDR动态存储器将AXI格式的数据写入并转换的MIG IP核。
进一步优选地,所述FIFO IP核与所述XDMA IP核通过AXI接口连接;所述AXICROSSBAR IP核通过AXI接口分别与所述FIFO IP核和所述外部设备连接;所述MIG IP核与所述AXI CROSSBAR IP核通过AXI接口连接。
更进一步优选地,所述外部设备采集的数据通过控制逻辑单元转化成AXI协议的数据,然后再经过AXI CROSSBAR IP核完成互联。
优选地,所述外部设备包括摄像头、模拟-数字电压转换器、显示器以及PC计算机。
进一步优选地,所述GPU板卡是NVIDIA的嵌入式GPU。
优选地,所述FPGA板卡是包含ARM处理器的ZYNQ系列FPGA。
本发明的有益效果在于:本发明所述的技术方案采用PCIE接口实现数据在两个板卡之间的高效传输,以及所述GPU板卡采用DMA驱动通过PCIE接口直接访问DDR动态存储器中的数据,让FPGA采集数据,GPU处理数据、实现算法,CPU实现调度,各方面协同运行。
附图说明
为了使本发明的目的、技术方案和有益效果更加清楚,本发明提供如下附图进行说明:
图1为本发明所述一种基于GPU和FPGA的异构数据采集与处理系统的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本申请保护范围。
名词解释:
XDMA:Xilinx Direct Memory Access,赛灵思内存单元直接访问;
FIFO:First In First Out,先入先出;
AXI Crossbar:Advanced eXtensible Interface Crossbar,先进可拓展接口互联;
MIG:Memory Interface Generators,存储器接口生成;
DDR3 SDRAM:Double Data Rate Synchronous Dynamic Random Access MemoryGen3,第三代双倍速率同步动态随机存储器;
AXI:Advanced eXtensible Interface,是一种总线协议。
如图1所示,本发明提供一种基于GPU和FPGA的异构数据采集与处理系统,其中,该异构数据采集与处理系统包括GPU板卡10、FPGA板卡20和外部设备30,所述FPGA板卡20包括用于采集数据和控制外部设备的ZYNQ处理平台21和用于存储数据的DDR动态存储器22,所述GPU板卡10与所述ZYNQ处理平台21通过PCIE接口连接,所述ZYNQ处理平台21与所述DDR动态存储器22通过存储器接口连接,所述GPU板卡10采用DMA驱动12通过PCIE接口直接访问DDR动态存储器22中的数据,所述ZYNQ处理平台21与所述外部设备30连接。本发明所述系统架构与PC+采集卡相比不仅体积小,而且CPU功耗也相对减少。
所述ZYNQ处理平台21的主要包括用于将AXI协议的数据与PCIE接口传输的数据间相互转换的XDMAIP核211、用于将所述XDMAIP核输出的数据进行时钟域的转换的FIFO IP核212、用于实现与外部设备所采集数据互联的AXI CROSSBAR IP核214、用于控制DDR动态存储器将AXI格式的数据写入并转换的MIG IP核215;所述FIFO IP核212与所述XDMA IP核211通过AXI接口连接;所述AXI CROSSBAR IP核214通过AXI接口分别与所述FIFO IP核212和所述外部设备30连接;所述MIG IP核215与所述AXI CROSSBAR IP核214通过AXI接口连接。在本发明是实施中,所述GPU板卡10是NVIDIA的嵌入式GPU,所述FPGA板卡20是包含ARM处理器的ZYNQ系列FPGA。
所述GPU板卡10主要包括应用APP11、DMA驱动12和内存单元13,应用APP11用于控制DMA驱动12通过PCIE接口直接访问DDR动态存储器22的数据,并将该数据从DDR动态存储器22中拷贝到所述GPU板卡10中的内存单元13中;所述DMA驱动12通过PCIE接口直接访问DDR动态存储器22;所述XDMAIP核211控制所述内存单元13向FPGA板卡20写入数据,所述XDMA IP核211控制所述内存单元13从FPGA板卡20读取数据。
所述外部设备采集的数据通过用户采集上传控制逻辑单元213转化成AXI协议的数据,然后再经过AXI CROSSBAR IP核214进行数据处理。所述外部设备30包括摄像头、模拟-数字电压转换器、显示器以及PC计算机。
需要说明的是,本发明实施例所述系统使用了包含ARM处理器的ZYNQ系列FPGA以及NVIDIA的嵌入式GPU,其中ZYNQ处理平台21中的PS端和PL端的数据通过AXI接口进行交互,ZYNQ处理平台21和GPU板卡10之间通过PCIE接口进行数据交互,在ZYNQ处理平台21的PL端采用FIFO IP核212、MIG IP核215以及控制逻辑单元213将用户采集到的数据存进DDR动态存储器22,PL端还采用了一个XDMA IP核211,GPU采用PCIE接口以及DMA技术直接访问DDR动态存储器22,读取数据并且进行处理,通过DMA驱动12将处理后的数据写入DDR动态存储器22中。
而本发明所述基于GPU和FPGA的异构数据采集与处理系统,使用ZYNQ采集数据和进行外设控制,GPU部分进行数据的处理,能够充分发挥CPU的调度优势,GPU的数据处理优势,FPGA的灵活配置的优势,可以适用于不同的应用场景以及满足不同的需求,为用户实现数据的高速采集和处理提供了一种体积小、功耗低的数据采集与处理系统。
为了更好的理解本发明实施例,现对本发明实施例详细说明如下:
ZYNQ处理平台21由XDMA IP核211、FIFO IP核212、控制逻辑单元213、AXICrossbar IP核214、MIG IP核215组成,IP核之间通过AXI接口进行数据交互,完成对数据的采集、存储以及传输的处理,GPU板卡10使用DMA驱动12通过PCIE接口直接访问DDR动态存储器22(比如:DDR3 SDRAM存储器)中的数据,ZYNQ处理平台21和GPU板卡10通过PCIE接口进行连接,ZYNQ处理平台21可以通过PCIE接口向GPU板卡10的内存单元13发送数据或者接收GPU板卡的内存单元13的数据,GPU也可以向ZYNQ处理平台21发送数据或接收来自GPU板卡10的内存单元13的数据,确保数据采集与处理系统的实现。
因为AXI4协议目前是通用的总线协议,而设计中采用的IP核均为AXI接口,故在本发明实施例中AXI协议具体采用AXI4协议。XDMA IP核211是ZYNQ处理平台21的PCIE接口的控制IP,该IP能够将AXI4协议的数据与PCIE接口能够传输的数据进行转换,FIFO IP核212用于将XDMA IP核211输出的数据进行时钟域的转换,控制逻辑单元213将用户采集到的数据转换为满足AXI4协议的数据,AXI CROSSBAR IP核214用于实现AXI总线设备之间N-1、1-N或N-N的互联,MIG IP核用于控制DDR动态存储器以及将AXI格式的数据写入DDR动态存储器能够接收的数据进行转换,DDR动态存储器用于存储数据。
具体的流程为:用户通过外部设备30采集的数据(例如摄像头采集的图像转换为的像素数据、模拟-数字电压转换芯片采集到的电压数据)通过控制逻辑单元213转换为满足AXI4协议的数据,经过AXI CROSSBAR IP核214后通过MIG IP核写入DDR中(因为是通过MIG IP核生成的DDR3存储器接口控制逻辑),之后GPU板卡10通过DMA驱动12读取DDR动态存储器22中的数据(例如:预先设置好由用户自行编写的算法或者公式程序)进行相应的处理后重新写入DDR动态存储器22中,之后用户可以在ZYNQ处理平台21通过控制逻辑单元213产生AXI接口的读请求,将GPU板卡10写入DDR动态存储器22中的数据读取出来,经过控制逻辑单元213将AXI4协议的数据进行转换后发送给其他的外部设备(例如显示器、PC等),完成数据的采集和处理。
综上所述,本发明实施例所述该系统本发明所述的技术方案采用PCIE接口实现数据在两个板卡之间的高效传输,以及所述GPU板卡采用DMA驱动通过PCIE接口直接访问DDR动态存储器中的数据,让FPGA采集数据,GPU处理数据、实现算法,CPU实现调度,各方面协同运行。不仅体积和功耗都比PC+采集卡小,并且在采集和处理的数据量和速度上也能够得到一些保障,同时用户还可以利用该系统中的FPGA端实现一些系统中关键算法的加速实现,进而保证在用户需求之内实现特定的功能。
以上对本申请所提供的基于GPU和FPGA的异构数据采集与处理系统进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的平台而言,由于其与实施例公开的系统相对应,所以描述的比较简单,相关之处参见系统部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
最后说明的是,以上优选实施例仅用以说明本发明的技术方案而非限制,尽管通过上述优选实施例已经对本发明进行了详细的描述,但本领域技术人员应当理解,可以在形式上和细节上对其作出各种各样的改变,而不偏离本发明权利要求书所限定的范围。
Claims (7)
1.一种基于GPU和FPGA的异构数据采集与处理系统,其特征在于,该异构数据采集与处理系统包括GPU板卡、FPGA板卡和外部设备,所述FPGA板卡包括用于采集数据和控制外部设备的ZYNQ处理平台和用于存储数据的DDR动态存储器,所述GPU板卡与所述ZYNQ处理平台通过PCIE接口连接,所述ZYNQ处理平台与所述DDR动态存储器通过存储器接口连接,所述GPU板卡采用DMA驱动通过PCIE接口直接访问DDR动态存储器中的数据,所述ZYNQ处理平台与所述外部设备连接;其中,所述ZYNQ处理平台包括用于将AXI协议的数据与PCIE接口传输的数据间相互转换的XDMA IP核;所述GPU板卡包括应用APP、DMA驱动和内存单元,应用APP用于控制DMA驱动通过PCIE接口直接访问DDR动态存储器的数据,并将该数据从DDR动态存储器中拷贝到所述GPU板卡的内存单元中;所述XDMA IP核控制所述内存单元向FPGA板卡写入数据,所述XDMA IP核控制所述内存单元从FPGA板卡读取数据。
2.根据权利要求1所述的基于GPU和FPGA的异构数据采集与处理系统,其特征在于,所述ZYNQ处理平台还包括用于将所述XDMA IP核输出的数据进行时钟域的转换的FIFO IP核、用于实现与外部设备所采集数据互联的AXI CROSSBAR IP核、用于控制DDR动态存储器将AXI格式的数据写入并转换的MIG IP核。
3.根据权利要求2所述的基于GPU和FPGA的异构数据采集与处理系统,其特征在于,所述FIFO IP核与所述XDMA IP核通过AXI接口连接;所述AXI CROSSBAR IP核通过AXI接口分别与所述FIFO IP核和所述外部设备连接;所述MIG IP核与所述AXI CROSSBAR IP核通过AXI接口连接。
4.根据权利要求2或3所述的基于GPU和FPGA的异构数据采集与处理系统,其特征在于,所述外部设备采集的数据通过控制逻辑单元转化成AXI协议的数据,然后再经过AXICROSSBAR IP核完成互联。
5.根据权利要求1所述的基于GPU和FPGA的异构数据采集与处理系统,其特征在于,所述外部设备包括摄像头、模拟-数字电压转换器、显示器以及PC计算机。
6.根据权利要求1所述的基于GPU和FPGA的异构数据采集与处理系统,其特征在于,所述GPU板卡是NVIDIA的嵌入式GPU。
7.根据权利要求1所述的基于GPU和FPGA的异构数据采集与处理系统,其特征在于,所述FPGA板卡是包含ARM处理器的ZYNQ系列FPGA。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211589785.1A CN116069716A (zh) | 2022-12-12 | 2022-12-12 | 一种基于gpu和fpga的异构数据采集与处理系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211589785.1A CN116069716A (zh) | 2022-12-12 | 2022-12-12 | 一种基于gpu和fpga的异构数据采集与处理系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116069716A true CN116069716A (zh) | 2023-05-05 |
Family
ID=86172440
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211589785.1A Pending CN116069716A (zh) | 2022-12-12 | 2022-12-12 | 一种基于gpu和fpga的异构数据采集与处理系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116069716A (zh) |
-
2022
- 2022-12-12 CN CN202211589785.1A patent/CN116069716A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10055807B2 (en) | Hardware architecture for acceleration of computer vision and imaging processing | |
CN102694997A (zh) | 一种基于FPGA和Camera Link协议接口的通用数据采集传输板设计 | |
CN104899167A (zh) | 一种基于fpga的便携式高速数据采集方法 | |
CN108268414B (zh) | 基于spi模式的sd卡驱动器及其控制方法 | |
US20110074792A1 (en) | Ultrasonic image processing system and ultrasonic image processing method thereof | |
CN103853642A (zh) | 基于usb3.0的红外数字图像注入式仿真系统及方法 | |
CN110087037B (zh) | 一种集成摄像头的EtherCAT主站和工作方法 | |
CN104361143B (zh) | 一种便携式数据采集卡及其方法 | |
CN111090603A (zh) | 一种lvds转usb3.0适配器 | |
CN110941583A (zh) | 一种基于fpga的usb3.0数据传输系统控制方法 | |
CN109873998B (zh) | 基于多层次引导滤波的红外视频增强系统 | |
CN205563550U (zh) | 一种基于Microblaze软核的PS2接口的KVM模块 | |
CN112256615B (zh) | Usb转换接口装置 | |
CN110569173B (zh) | 一种基于龙芯ip核的服务器健康管理芯片及实现方法 | |
CN209881907U (zh) | 一种基于fpga的图像采集设备 | |
CN116069716A (zh) | 一种基于gpu和fpga的异构数据采集与处理系统 | |
CN107564265B (zh) | 一种高速传输的lxi数据采集器及其工作方法 | |
CN102841878B (zh) | 基于plb总线的isa接口ip核 | |
CN104156907A (zh) | 一种基于fpga的红外预处理存储系统及存储方法 | |
CN107911610A (zh) | 一种应用于图像采集模块的数据处理系统 | |
CN115237349A (zh) | 数据读写控制方法、控制装置、计算机存储介质和电子设备 | |
CN114168503A (zh) | 一种接口ip核控制方法、接口ip核、装置及介质 | |
CN111444131A (zh) | 一种基于usb3.0的数据采集及传输装置 | |
Tian et al. | Design and Implementation of USB3. 0 Data Transmission System based on FPGA | |
CN109062385A (zh) | 基于飞腾处理器的主板和计算机 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |