CN112148670A - 多功能业务板卡以及数据处理方法 - Google Patents

多功能业务板卡以及数据处理方法 Download PDF

Info

Publication number
CN112148670A
CN112148670A CN202011119251.3A CN202011119251A CN112148670A CN 112148670 A CN112148670 A CN 112148670A CN 202011119251 A CN202011119251 A CN 202011119251A CN 112148670 A CN112148670 A CN 112148670A
Authority
CN
China
Prior art keywords
data
module
interface
gpu
fpga
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.)
Granted
Application number
CN202011119251.3A
Other languages
English (en)
Other versions
CN112148670B (zh
Inventor
高维臣
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Dadi Xinhe Information Technology Co ltd
Original Assignee
Beijing Dadi Xinhe Information Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Dadi Xinhe Information Technology Co ltd filed Critical Beijing Dadi Xinhe Information Technology Co ltd
Priority to CN202011119251.3A priority Critical patent/CN112148670B/zh
Publication of CN112148670A publication Critical patent/CN112148670A/zh
Application granted granted Critical
Publication of CN112148670B publication Critical patent/CN112148670B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7803System on board, i.e. computer system on one or more PCB, e.g. motherboards, daughterboards or blades
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4221Bus 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0026PCI express
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

本公开提供了一种多功能业务板卡以及数据处理方法,涉及嵌入式系统技术领域,其中的多功能业务板卡在PCB电路板上设置有处理器模块、GPU模块和FPGA模块;FPGA模块通过第一PCIE信号线与处理器模块连接,处理器模块通过第二PCIE信号线与GPU模块连接;FPGA模块用于对接收到的第一数据进行处理,GPU模块对接收到的第三数据进行处理;处理器模块对第二数据和第四数据进行整合处理;本公开的多功能业务板卡以及方法,处理器模块对数据处理进行控制,FPGA模块和GPU模块分别执行不同的处理任务,能够适用于多种应用场景,满足多任务处理需求,使系统的性能功耗较低,提高了产品质量和可靠性。

Description

多功能业务板卡以及数据处理方法
技术领域
本公开涉及嵌入式系统技术领域,尤其涉及一种多功能业务板卡以及数据处理方法。
背景技术
随着集成电路、计算机处理技术和软件技术的飞速发展,处理平台系统架构也随之快速发展演变。VPX是VITA(VME International Trade Association,VME国际贸易协会)组织于2007年在其VME总线基础上提出的新一代高速串行总线标准。在VPX平台或VPX系统中可以使用多种专用业务板卡,专用业务板卡为进行视频处理、雷达信号分析、数据加解密等的板卡,可用于雷达、通信、声纳、导航、电子对抗等多个领域。目前,对于多任务需求的应用场景,需要同时使用多种专用板卡。例如,在自动驾驶中,对于3D点云信号分析任务和3D场景图像生成任务,需要使用两个专用业务板卡,分别用于对3D点云信号进行分析、生成周边场景的3D场景图像。由于对于多任务需要同时使用多种专用板卡进行处理,使得系统的性能功耗较高、功耗较高,并且任务调度处理较复杂;因此,需要一种多功能业务板卡,能够满足处理多种任务的需求。
发明内容
为了解决上述技术问题,提出了本公开。本公开的实施例提供了一种多功能业务板卡以及数据处理方法。
根据本公开实施例的一个方面,提供一种多功能业务板卡,包括:PCB电路板;在所述PCB电路板上设置有处理器模块、GPU模块和FPGA模块;所述FPGA模块通过第一PCIE信号线与所述处理器模块连接,所述处理器模块通过第二PCIE信号线与所述GPU模块连接;所述FPGA模块,用于对接收到的第一数据进行处理,获得第二数据并发送给所述处理器模块或外部设备;所述GPU模块对接收到的第三数据进行处理,获得第四数据并将所述第四数据发送给所述处理器模块或外部设备;所述处理器模块用于根据所述第二数据生成所述第三数据并传输给所述GPU模块或外部设备;对所述第二数据和所述第四数据进行整合处理,将整合后的数据传输给外部设备;其中,所述第一数据、所述第二数据、所述第三数据和所述第四数据包括:图像数据。
可选地,所述处理器模块包括CPU芯片单元;所述CPU芯片单元与第一DDR内存单元连接;在所述PCB电路板上设置有XMC接口、USB接口、以太网接口、VGA接口、音频接口、串行接口、PCIE接口和光纤接口;所述CPU芯片单元与所述XMC接口、所述USB接口、所述以太网接口、所述VGA接口、所述音频接口、所述串行接口、所述PCIE接口和所述光纤接口中的至少一个接口连接。
可选地,所述FPGA模块包括:符合UltraScale架构的FPGA芯片和第二DDR内存模块,所述FPGA芯片与所述第二DDR内存模块连接;在所述PCB电路板上设置有多个LVDS接口和多个GTH接口;所述FPGA芯片分别与所述LVDS接口和所述GTH接口连接。
可选地,所述FPGA芯片设置有多个高速扩展卡接口以及调试JTAG接口,其中,所述FPGA芯片通过所述调试JTAG接口接收调试指令以及配置信息。
可选地,所述GPU模块包括多个CUDA处理核、图形模块和第三DDR内存单元;所述GPU模块通过所述CUDA处理核对所述第三数据进行处理,获得所述第四图像数据;通过所述第三DDR内存单元缓存所述第三数据和所述第四数据。
可选地,所述第三数据和所述第四数据为图像数据;其中,所述GPU模块还包括图像输出接口;所述GPU模块通过所述图像输出接口向外部设备发送所述第四数据。
可选地,多种状态指示灯和电源单元;所述多种状态指示灯和所述电源单元设置在所述PCB电路板上;所述处理器模块、所述GPU模块和所述FPGA模块分别与对应的状态指示灯连接,所述处理器模块、所述GPU模块和所述FPGA模块分别与所述电源单元连接;后插卡模块;所述后插卡模块包括SATA扩展接口、SATA盘、显示接口、USB接口。
根据本公开实施例的一个方面,提供一种基于如上所述的多功能业务板卡的数据处理方法,包括:处理器模块接收到外部设备发送的处理命令和待处理数据,生成第一数据任务和第二数据处理任务;所述处理器模块基于所述第一数据任务并基于所述处理命令和所述待处理数据生成第一数据,将所述第一数据通过第一PCIE信号线发送给FPGA模块;所述FPGA模块对所述第一数据进行处理,获得第二数据并通过所述第一PCIE信号线将所述第二数据发送给所述处理器模块;所述处理器模块基于所述第二数据任务并基于所述处理命令、所述待处理数据以及所述第二数据生成第三数据,将所述第三数据通过第二PCIE信号线发送给GPU模块;所述GPU模块对所述第三数据进行处理,生成第四数据并通过第二PCIE信号线将所述第四数据发送给所述处理器模块;所述CPU主机单元对进行所述第二数据和所述第四数据进行整合处理,将整合后的数据传输给外部设备。
可选地,所述FPGA接收外部设备发送的数据,对外部设备发送的数据进行处理,获得所述第二数据并发给所述处理器模块或此外部设备。
可选地,在所述FPGA芯片内设置有虚拟接口模块、虚拟任务分发模块、虚拟数据处理模块;所述虚拟接口模块接收所述第一数据或外部设备发送的数据,将所述第一数据或外部设备发送的数据发送给所述虚拟任务分发模块;所述虚拟任务分发模块将所述第一数据或外部设备发送给对应的虚拟数据处理模块;所述虚拟数据处理模块对所述第一数据或外部设备发送的数据进行处理,获得所述第二数据并发给所述处理器模块或外部设备。
可选地,所述处理器模块将所述第二数据发送给外部设备;所述GPU模块对接收到的第三数据进行处理,获得第四数据并将所述第四数据发送给外部设备。
可选地,所述第一数据处理任务包括:压缩或解压任务、信号分析任务、编码或解码任务;所述第二数据任务包括:图像处理任务、3D虚拟重构任务;所述FPGA模块对所述第一数据进行的处理包括:压缩或解压处理、信号分析处理、编码或解码处理;所述GPU模块对所述第三数据进行的处理包括:图像处理、3D虚拟重构处理。
基于本公开上述实施例提供的一种多功能业务板卡以及数据处理方法,在PCB电路板上设置有处理器模块、GPU模块和FPGA模块,FPGA模块通过第一PCIE信号线与处理器模块连接,处理器模块通过第二PCIE信号线与GPU模块连接;处理器模块对数据处理进行控制,FPGA模块和GPU模块分别执行不同的处理任务,可以发挥FPGA模块和GPU模块的并行处理能力,并且FPGA具有良好的性能功耗比;能够适用于多种应用场景,满足多任务处理需求,使系统的性能功耗较低,降低了任务调度处理的复杂度,提高了产品质量和可靠性。
下面通过附图和实施例,对本公开的技术方案做进一步的详细描述。
附图说明
通过结合附图对本公开实施例进行更详细的描述,本公开的上述以及其他目的、特征以及优势将变得更加明显。附图用来提供对本公开实施例的进一步的理解,并且构成说明书的一部分,与本公开实施例一起用于解释本公开,并不构成对本公开的限制。在附图中,相同的参考标号通常代表相同部件或步骤。
图1为本公开的多功能业务板卡的一个实施例的模块示意图;
图2为本公开的多功能业务板卡的另一个实施例的模块示意图;
图3为本公开的多功能业务板卡的实物示意图;
图4为本公开的多功能业务板卡的一个实施例中的FPGA芯片内设置的模块示意图;
图5为本公开的多功能业务板卡的GPU模块的实物示意图;
图6为在CUDA架构下的存储器层次结构示意图;
图7为本公开的多功能业务板卡的后插卡模块的模块示意图;
图8为本公开的数据处理方法的一个实施例的流程图。
具体实施方式
下面将参考附图详细地描述根据本公开的示例实施例。显然,所描述的实施例仅仅是本公开的一部分实施例,而不是本公开的全部实施例,应理解,本公开不受这里描述的示例实施例的限制。
应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。
本领域技术人员可以理解,本公开实施例中的“第一”、“第二”等术语仅用于区别不同步骤、设备或模块等,既不代表任何特定技术含义,也不表示它们之间的必然逻辑顺序。
还应理解,在本公开实施例中,“多个”可以指两个或者两个以上,“至少一个”可以指一个、两个或两个以上。
还应理解,对于本公开实施例中提及的任一部件、数据或结构,在没有明确限定或者在前后文给出相反启示的情况下,一般可以理解为一个或多个。
另外,本公开中术语“和/或”,仅是一种描述关联对象的关联关系,表示可以存在三种关系,如A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本公开中字符“/”,一般表示前后关联对象是一种“或”的关系。
还应理解,本公开对各个实施例的描述着重强调各个实施例之间的不同之处,其相同或相似之处可以相互参考,为了简洁,不再一一赘述。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
本公开的实施例可以应用于终端设备、计算机系统、服务器等电子设备,其可与众多其它通用或者专用计算系统环境或配置一起操作。适于与终端设备、计算机系统或者服务器等电子设备一起使用的众所周知的终端设备、计算系统、环境和/或配置的例子包括但不限于:个人计算机系统、服务器计算机系统、瘦客户机、厚客户机、手持或膝上设备、基于微处理器的系统、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机系统、大型计算机系统和包括上述任何系统的分布式云计算技术环境等。
如图1所示,本公开提供一种多功能业务板卡,包括PCB电路板11;在PCB电路板11上设置有处理器模块12、GPU(图形处理器,Graphics Processing Unit)模块14和FPGA(现场可编程门阵列,Field Programmable Gate Array)模块13。FPGA模块13通过第一PCIE(Peripheral Component Interconnect Express,高速串行计算机扩展总线标准)信号线与处理器模块12连接,处理器模块12通过第二PCIE信号线与GPU模块14连接。
FPGA模块13对接收到的第一数据进行处理,获得第二数据并发送给处理器模块12或外部设备;第一数据和第二数据可以为图像数据、雷达信号数据、需要进行加密解密的数据等多种数据。外部设备可以为位于多功能业务板卡外部的多种终端、板卡等。第一数据可以由处理器模块12或外部设备发送给FPGA模块13。
GPU模块14对接收到的第三数据进行处理,获得第四数据并将第四数据发送给处理器模块12或外部设备。处理器模块12用于根据第二数据生成第三数据并传输给GPU模块14或外部设备。处理器模块12对第二数据和第四数据进行整合处理,将整合后的数据传输给外部设备。第三数据和第四数据可以包括图像数据等。第三数据可以由处理器模块12或外部设备输入GPU模块14。
在一个实施例中,处理器模块12包括CPU(中央处理器,Central ProcessingUnit)芯片单元,CPU芯片单元与第一DDR内存单元连接。在PCB电路板11上设置有XMC接口、USB接口、以太网接口、VGA接口、音频接口、串行接口、PCIE接口和光纤接口等多种接口,CPU芯片单元与XMC接口、USB接口、以太网接口、VGA接口、音频接口、串行接口、PCIE接口和光纤接口中的至少一个接口连接。
FPGA模块13包括符合UltraScale架构的FPGA芯片和第二DDR内存模块,FPGA芯片与第二DDR内存模块连接。在PCB电路板11上设置有多个LVDS接口和多个GTH接口,FPGA芯片分别与LVDS接口和GTH接口连接。FPGA芯片设置有多个高速扩展卡接口以及调试JTAG接口,FPGA芯片通过调试JTAG接口接收调试指令以及配置信息。
GPU模块14包括多个CUDA处理核和第三DDR内存单元。GPU模块14通过CUDA处理核并基于CUDA架构下shift and add等算法对第三数据进行处理,获得第四图像数据,通过第三DDR内存单元缓存第三数据和第四数据。第三数据和第四数据为图像数据,GPU模块14能够进行加速处理等。GPU模块14还包括图像输出接口,GPU模块14可以通过图像输出接口向外部设备发送第四数据。
在一个实施例中,如图2所示,本公开的多功能业务板卡可以为6U VPX集成GPU板卡,板卡遵循VITA65规范。多功能业务板卡集成符合Xilinx UltraScale架构的FPGA芯片,集成Intel Xeon D-1500系列服务器级CPU,可扩展1组GPU模块(为MXM,Mobile PCIExpress Module模块)14,包括英伟达(NVIDIA)28nm工艺Tesla P6处理器模块和GeForceGTX 10系列(GTX 1050Ti/GTX 1060/GTX 1070)。
多功能业务板卡的实物如图3所示。多功能业务板卡为6U OpenVPX规格的板卡,处理器模块12包括Intel Xeon D-1500系列CPU芯片,第一DDR内存单元包括32GB DDR4内存。GPU模块14包括1组Tesla P6图形处理器,Tesla P6图形处理器包括2048颗CUDATM处理核;第三DDR内存单元包括16GB GDDR5,支持ECC,内存宽度256-bit。
多功能业务板卡包括多种前面板接口,包括1个RJ45千兆网口、2个USB2.0/3.0接口、1个显示接口、1x SFP+万兆网光口、复位按键等。多功能业务板卡包括VPX接口:1x8PCIe Gen3@P2、1路千兆以太网(1000Base-T)@P4、2x RS422@P4、8x GTX/GTH@P5、16xLVDS@P4。多功能业务板卡的其他参数包括:主供电:+12V;典型功耗:<100W;可提供常温(0-55℃);宽温(-40-70℃)版本;相对湿度0-95%;散热方式:风冷、导冷。
多功能业务板卡对外可以提供1组X8 PCIe接口,方便用户搭建高性能嵌入式计算系统(HPEC),多功能业务板卡适用于雷达信号/图像处理,视频压缩/解压,图像增强,3D虚拟重构,360°情景识别,编码、解码和密码分析,情报监视和侦察等应用。
处理器模块12的CPU芯片采用Intel Xeon D-1539处理器,Intel Xeon D-1539处理器的参数包括:8核,1.6GHz主频,睿频2.1GHz;12MB Cache;最大功耗35W;32GB DDR4 ECC内存;集成芯片组;1路SFP+万兆网口;24XPCIe 3.0,8X PCIe 2.0接口;2路USB2.0;2路SATA3.0;支持Windows 7/8,Linux等操作系统。Intel Xeon D-1500处理器对外提供24组PCIE 3.0接口和8组PCIE 2.0接口,分别扩展Xilinx FPGA,NVME存储模块或GPU模块。
在一个实施例中,FPGA芯片为Xilinx FPGA芯片。Xilinx UltraScale+FPGA系列包括
Figure BDA0002731414030000071
UltraScale+FPGA和
Figure BDA0002731414030000072
UltraScale+FPGA以及3D IC系列。UltraScale架构的主要创新包括:面向90%利用率的新一代布线方法、类似ASIC时钟和逻辑基础设施的增强高速存储器串联有助于消除DSP和包处理的瓶颈;增强型DSP Slice整合27x 18位乘法器和两个加法器,可显著提升定点及IEEE Std 754浮点运算性能与效率;通过AES比特流解密与认证、密钥模糊处理以及安全设备编程等高级方法实现新一代安全应用;DDR4支持高达2,666Mb/s的大容量存储器接口带宽;UltraRAM提供大容量片上存储器,支持SRAM器件集成;创新性IP互联优化技术可将性能功耗比优势进一步提高20%到30%;MPSoC技术将软硬引擎相结合,支持实时控制、图形与视频处理、波形与数据包处理以及多层面安防、安全与可靠性等。
在UltraScale系列的FPGA芯片中,GC(Global Clock)管脚取代了SRCC和MRCC。UltraScale系列的FPGA芯片的时钟区域共有6x6即36个,如果是7系列FPGA,则是2x6即12个。UltraScale系列的FPGA芯片不包含时钟缓冲器,其功能由新增的BUFGCE_DIV代替。
FPGA模块13的FPGA芯片采用基于Xilinx UltraScale Kintex系列的FPGA芯片,型号为XCKU060-FFVA1156-2-I,支持PCIE Gen3 x8,两组64-bitDDR4,每组容量4Gbyte,可稳定运行在2400MT/s,对外提供8X GTH高速接口,以及16对LVDS接口。板卡具有自控上电顺序,BPI模式快速程序加载,支持板内/板外两种系统时钟接入模式等特点。
FPGA芯片XCKU060的主要技术参数为:外挂两簇DDR4,数据位宽64-bit,每组容量4GByte,可稳定运行在2400MT/s;外挂一片BPI x16 Nor Flash,容量1Gb,用于系统配置程序存储;外挂一片QSPI x4 Nor Flash,容量512Mb,可用于参数存储;加载模式为BPI模式;外接两路QSFP+,支持40Gbps传输速率;支持PCIE Gen3 x8模式,传输速率高可达5000Mbyte/s;对外提供16对LVDS接口;对外提供8X GTH接口,传输速率可达13.6Gbps等。
在一个实施例中,FPGA芯片内部逻辑分为固定区和可重构区两部分,可重构区能够实现多种算法的重新配置,可以将不同的算法程序通过固定区下载到可重构区,实现不同的算法。如图4所示,FPGA芯片内配置有虚拟接口模块131、虚拟任务分发模块132、虚拟数据处理模块133。虚拟接口模块131接收第一数据或外部设备发送的数据,将第一数据或外部设备发送的数据发送给虚拟任务分发模块132。虚拟任务分发模块132将第一数据或外部设备发送给对应的虚拟数据处理模块133。虚拟数据处理模块133对第一数据或外部设备发送的数据进行处理,获得第二数据并发给处理器模块12或外部设备。
在一个实施例中,GPU模块14包括具有特定宽温范围(-40℃至+85℃)的强固型MXM图形模块的6U VPX GPU板卡,GPU模块14同时提供可加强防尘、防潮、防腐蚀与抵抗化学物质溅入的敷形涂层服务,强化产品抵抗静电、防潮、防尘、抗腐蚀与各种环境污染的能力。
基于业界标准MXM(行动PCI Express模块)规范,6U VPX GPU板卡提供高速图形计算能力,其总线数据传输率符合PCI Express 3.0,提供最高每秒8Gigatransfers(GT/s)位传输率,适用于高性能需求与图像密集的嵌入式平台。如图5所示,相较于传统PCI Express显卡,6U VPX GPU板卡外型设计更为轻薄,能更紧密的嵌入于平台中,除节省系统空间外,于冲击或振动中仍保有稳定运作。
GPU模块的组成以及主要性能和参数为:6U OpenVPX GPU处理板,符合VITA 46VPXVITA65 OpenVPX规范;2x8 PCIE2.0接口@VPX P2;2x8 PCIE2.0接口@VPX P5;预留4x DP/DVI-D接口@VPX P3;预留4x DP/DVI-D接口@VPX P6。
处理板包括1组NVIDIA Tesla P6 MXM模块:GPU时钟为1012(最高1506)MHz;CUDATM处理核为2048颗;浮点运算能力为6.16TFLOPS(单精度);内存为16GB GDDR5,支持ECC;内存宽度为256-bit;内存时钟为3003MHz;内存带宽为192.2GB/s。
处理板包括2组NVIDIA GTX 1060MXM模块(可选):GPU时钟1404(最高1670)MHz;CUDA处理核1280颗;浮点运算能力3.90TFLOPS(单精度);内存6GB GDDR5(6x 256M x 32);内存宽度192-bit;内存时钟4004MHz(8Gbps);MXM3.1 Type B外型。
处理板支持CUDA9.0,DirectX 12,Open CL 1.2;支持NVIDIA CUDA技术;预留前出显示接口:2x Display Port,2x VGA;供电电压12V;最大功耗100W(2片);MTBF 120000小时;工作温度范围-40-85℃,湿度10%到90%,无凝结;存储温度范围-45℃到85℃,湿度10%到90%,无凝结;操作系统支持Windows,Linux。
在一个实施例中,CUDA(Compute Unified Device Architecture,统一计算架构)是一种指令集架构(ISA)以及并行计算引擎。CUDA是建立在GPU基础之上的通用计算开发平台,是一个全新的软硬件架构,可以将GPU视为一个并行数据计算的设备,对所进行的计算进行分配和管理。利用CUDA能够充分地将GPU的高计算能力开发出来,并使得GPU的计算能力获得更多的应用。
CUDA的GPU编程语言基于标准的C语言,在CUDA的架构下,一个程序分为两个部份:host端和device端。Host端是指在CPU上执行的部份,而device端则是在显示芯片上执行的部份。Device端的程序又称为"kernel"。通常host端程序会将数据准备好后,复制到显卡的内存中,再由显示芯片执行device端程序,完成后再由host端程序将结果从显卡的内存中取回。
CUDA允许定义称为内核(kernel)的C语言函数,从而扩展了C语言,在调用此类函数时,它将由N个不同的CUDA线程并行执行N次,与普通的C语言函数只执行一次的方式不同。CUDA的核心有三个重要抽象概念:线程层次结构、共享存储器、屏蔽同步,这些抽象提供了细粒度的数据并行化和线程并行化。在CUDA架构下,显示芯片执行时的最小单位是thread。多个thread可以组成一个block。多个block可以组成一个grid。同一个grid中的block执行相同程序,不同的grid则可以执行不同的程序。线程层次结构如图6所示,Block中的thread能存取同一块共享的内存,而且可以快速进行同步的动作。不同block中的thread无法存取同一个共享的内存,因此无法直接互通或进行同步。
CUDA线程可在执行过程中访问多个存储器空间的数据,如图6所示,每个线程都有一个私有的本地存储器。每个block都有一个共享存储器,该存储器对于block内的所有线程都是可见的,并且与block具有相同的生命周期。同时,所有线程都可访问相同的全局存储器。在一个块内的某些线程访问共享或全局存储器中的相同地址时,部分访问操作可能存在写入后读取、读取后写入或写入后写入之类的风险。可通过在这些访问操作间同步线程来避免这些数据风险。很多应用领域需要强大的计算能力,GPU提供了一个可能性:在降低尺寸,重量和功耗的同时还能增加功能。在SWaP方面提供了一个数量级的改进,仅用10%SWaP就可以提供目前的功能或使用目前的SWaP可以增加目前功能的10倍。
在一个实施例中,多功能业务板卡设置有多种状态指示灯和电源单元,多种状态指示灯和电源单元16设置在PCB电路板11上,处理器模块12、GPU模块14和FPGA模块13分别与对应的状态指示灯连接,处理器模块、GPU模块和FPGA模块分别与电源单元16连接。
在一个实施例中,在提供6组LED指示灯,LED指示灯的位置功能表如下表1所示:
Figure BDA0002731414030000101
Figure BDA0002731414030000111
表1-LED指示灯的位置功能表
在一个实施例中,后插卡模块,后插卡模块包括SATA扩展接口、SATA盘、显示接口、USB接口等。为了满足使用者对于多路接口接口的需求,为本公开的多功能业务板卡设计了配套的后插卡模块,例如为IO插卡RTM-VPX6-G800。RTM-VPX6-G800是多功能业务板卡配套的后插卡模块,后插卡模块扩展可1个SATA3.0接口,支持2.5inch SATA盘,对外提供2路千兆以太网(1000Base-T),提供1路HDMI显示接口和2路USB2.0/3.0接口。
在一个实施例中,如图7所示,后插卡模块的基本技术指标为:6U OpenVPX规格(后出线);扩展2路1000BASE-T网口(RJ45);扩展1路SATA3.0接口,支持2.5inch SATA盘扩展,存储容量1TB;提供1路HDMI显示接口;提供2路USB2.0/3.0接口;支持的操作系统:Windows,Linux,VxWorks 6.x;供电电压12V(+/-5%);功耗:10W;工作温度范围:-40-70℃;存储温度范围:-40℃~+85℃。
图8为本公开的数据处理方法的一个实施例的流程图,数据处理方法应用在如上实施例中的多功能业务板卡中,如图8所示:
S801,处理器模块接收到外部设备发送的处理命令和待处理数据,生成第一数据任务和第二数据处理任务。例如,待处理数据为3D点云信号以及周边图像数据等,处理命令包括信号分析命令、生成3D场景图像命令等。
S802,处理器模块基于第一数据任务并基于处理命令和待处理数据生成第一数据,将第一数据通过第一PCIE信号线发送给FPGA模块。例如,第一数据为3D点云信号。
S803,FPGA模块对第一数据进行处理,获得第二数据并通过第一PCIE信号线将第二数据发送给处理器模块。例如,第二数据为对3D点云信号的分析结果。
S804,处理器模块基于第二数据任务并基于处理命令、待处理数据以及第二数据生成第三数据,将第三数据通过第二PCIE信号线发送给GPU模块。例如,第三数据为基于周边图像数据、3D点云信号的分析结果生成的3D场景图像数据。
S805,GPU模块对第三数据进行处理,生成第四数据并通过第二PCIE信号线将第四数据发送给处理器模块。例如,第四数据为对3D场景图像数据的处理结果。
S806,CPU主机单元对进行第二数据和第四数据进行整合处理,将整合后的数据传输给外部设备。例如,整合后的数据为基于对3D点云信号的分析结果、对3D场景图像数据的处理结果生成的最终结果。
在一个实施例中,FPGA接收外部设备发送的数据,对外部设备发送的数据进行处理,获得第二数据并发给处理器模块或此外部设备。在FPGA芯片内设置有虚拟接口模块、虚拟任务分发模块、虚拟数据处理模块。虚拟接口模块接收第一数据或外部设备发送的数据,将第一数据或外部设备发送的数据发送给虚拟任务分发模块。虚拟任务分发模块将第一数据或外部设备发送给对应的虚拟数据处理模块。虚拟数据处理模块对第一数据或外部设备发送的数据进行处理,获得第二数据并发给处理器模块或外部设备。GPU模块对接收到的第三数据进行处理,获得第四数据并将第四数据发送给外部设备。
在一个实施例中,第一数据处理任务包括压缩或解压任务、信号分析任务、编码或解码任务等;第二数据任务包括图像处理任务、3D虚拟重构任务等;FPGA模块对第一数据进行的处理包括压缩或解压处理、信号分析处理、编码或解码处理等;GPU模块对第三数据进行的处理包括图像处理、3D虚拟重构处理等。
处理器模块根据应用场景分配第一数据任务和第二数据处理任务,FPGA模块和GPU模块分别执行不同的任务。处理器模块对数据处理进行控制,可以发挥FPGA模块和GPU模块的并行处理能力,并且FPGA具有良好的性能功耗比,能够适用于多种应用场景。
以上结合具体实施例描述了本公开的基本原理,但是,需要指出的是,在本公开中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势以及效果等是本公开的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本公开为必须采用上述具体的细节来实现。
上述实施例中的多功能业务板卡以及数据处理方法,在PCB电路板上设置有处理器模块、GPU模块和FPGA模块,FPGA模块通过第一PCIE信号线与处理器模块连接,处理器模块通过第二PCIE信号线与GPU模块连接;处理器模块对数据处理进行控制,FPGA模块和GPU模块分别执行不同的处理任务,可以发挥FPGA模块和GPU模块的并行处理能力,并且FPGA具有良好的性能功耗比;能够适用于多种应用场景,满足多任务处理需求,使系统的性能功耗较低,降低了任务调度处理的复杂度,提高了产品质量和可靠性。
可能以许多方式来实现本公开的方法和装置。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本公开的方法和装置。用于所述方法的步骤的上述顺序仅是为了进行说明,本公开的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本公开实施为记录在记录介质中的程序,这些程序包括用于实现根据本公开的方法的机器可读指令。因而,本公开还覆盖存储用于执行根据本公开的方法的程序的记录介质。
还需要指出的是,在本公开的装置、设备和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本公开的等效方案。
提供所公开的方面的以上描述,以使本领域的任何技术人员能够做出或者使用本公开。对这些方面的各种修改等对于本领域技术人员而言,是非常显而易见的,并且在此定义的一般原理可以应用于其他方面,而不脱离本公开的范围。因此,本公开不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。
为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本公开的实施例限制到在此公开的形式中。尽管以上已经讨论了多个示例方面以及实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。

Claims (10)

1.一种多功能业务板卡,包括:
PCB电路板;在所述PCB电路板上设置有处理器模块、GPU模块和FPGA模块;所述FPGA模块通过第一PCIE信号线与所述处理器模块连接,所述处理器模块通过第二PCIE信号线与所述GPU模块连接;
所述FPGA模块,用于对接收到的第一数据进行处理,获得第二数据并发送给所述处理器模块或外部设备;所述GPU模块对接收到的第三数据进行处理,获得第四数据并将所述第四数据发送给所述处理器模块或外部设备;
所述处理器模块用于根据所述第二数据生成所述第三数据并传输给所述GPU模块或外部设备;对所述第二数据和所述第四数据进行整合处理,将整合后的数据传输给外部设备;
其中,所述第一数据、所述第二数据、所述第三数据和所述第四数据包括:图像数据。
2.如权利要求1所述的多功能业务板卡,其中,
所述处理器模块包括CPU芯片单元;所述CPU芯片单元与第一DDR内存单元连接;在所述PCB电路板上设置有XMC接口、USB接口、以太网接口、VGA接口、音频接口、串行接口、PCIE接口和光纤接口;所述CPU芯片单元与所述XMC接口、所述USB接口、所述以太网接口、所述VGA接口、所述音频接口、所述串行接口、所述PCIE接口和所述光纤接口中的至少一个接口连接。
3.如权利要求2所述的多功能业务板卡,其中,
所述FPGA模块包括:符合UltraScale架构的FPGA芯片和第二DDR内存模块,所述FPGA芯片与所述第二DDR内存模块连接;在所述PCB电路板上设置有多个LVDS接口和多个GTH接口;所述FPGA芯片分别与所述LVDS接口和所述GTH接口连接。
4.如权利要求3所述的多功能业务板卡,其中,
所述FPGA芯片设置有多个高速扩展卡接口以及调试JTAG接口,其中,所述FPGA芯片通过所述调试JTAG接口接收调试指令以及配置信息。
5.如权利要求3所述的多功能业务板卡,其中,
所述GPU模块包括多个CUDA处理核、图形模块和第三DDR内存单元;所述GPU模块通过所述CUDA处理核对所述第三数据进行处理,获得所述第四图像数据;通过所述第三DDR内存单元缓存所述第三数据和所述第四数据。
6.如权利要求5所述的多功能业务板卡,所述第三数据和所述第四数据为图像数据;其中,
所述GPU模块还包括图像输出接口;所述GPU模块通过所述图像输出接口向外部设备发送所述第四数据。
7.如权利要求1所述的多功能业务板卡,还包括:
多种状态指示灯和电源单元;所述多种状态指示灯和所述电源单元设置在所述PCB电路板上;所述处理器模块、所述GPU模块和所述FPGA模块分别与对应的状态指示灯连接,所述处理器模块、所述GPU模块和所述FPGA模块分别与所述电源单元连接;
后插卡模块;所述后插卡模块包括SATA扩展接口、SATA盘、显示接口、USB接口。
8.一种基于如权利要求1至7任一项所述的多功能业务板卡的数据处理方法,包括:
处理器模块接收到外部设备发送的处理命令和待处理数据,生成第一数据任务和第二数据处理任务;
所述处理器模块基于所述第一数据任务并基于所述处理命令和所述待处理数据生成第一数据,将所述第一数据通过第一PCIE信号线发送给FPGA模块;
所述FPGA模块对所述第一数据进行处理,获得第二数据并通过所述第一PCIE信号线将所述第二数据发送给所述处理器模块;
所述处理器模块基于所述第二数据任务并基于所述处理命令、所述待处理数据以及所述第二数据生成第三数据,将所述第三数据通过第二PCIE信号线发送给GPU模块;
所述GPU模块对所述第三数据进行处理,生成第四数据并通过第二PCIE信号线将所述第四数据发送给所述处理器模块;
所述CPU主机单元对进行所述第二数据和所述第四数据进行整合处理,将整合后的数据传输给外部设备。
9.如权利要求8所述的方法,还包括:
所述FPGA接收外部设备发送的数据,对外部设备发送的数据进行处理,获得所述第二数据并发给所述处理器模块或此外部设备。
10.如权利要求9所述的方法,还包括:
在所述FPGA芯片内设置有虚拟接口模块、虚拟任务分发模块、虚拟数据处理模块;
所述虚拟接口模块接收所述第一数据或外部设备发送的数据,将所述第一数据或外部设备发送的数据发送给所述虚拟任务分发模块;
所述虚拟任务分发模块将所述第一数据或外部设备发送给对应的虚拟数据处理模块;
所述虚拟数据处理模块对所述第一数据或外部设备发送的数据进行处理,获得所述第二数据并发给所述处理器模块或外部设备。
CN202011119251.3A 2020-10-19 2020-10-19 多功能业务板卡以及数据处理方法 Active CN112148670B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011119251.3A CN112148670B (zh) 2020-10-19 2020-10-19 多功能业务板卡以及数据处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011119251.3A CN112148670B (zh) 2020-10-19 2020-10-19 多功能业务板卡以及数据处理方法

Publications (2)

Publication Number Publication Date
CN112148670A true CN112148670A (zh) 2020-12-29
CN112148670B CN112148670B (zh) 2023-12-19

Family

ID=73953982

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011119251.3A Active CN112148670B (zh) 2020-10-19 2020-10-19 多功能业务板卡以及数据处理方法

Country Status (1)

Country Link
CN (1) CN112148670B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113258941A (zh) * 2021-05-11 2021-08-13 江苏信息职业技术学院 一种矢量信号产生模块及产生方法
CN113778031A (zh) * 2021-08-27 2021-12-10 北京和利时系统工程有限公司 一种智能控制节点和数据传输方法
CN114416382A (zh) * 2022-03-30 2022-04-29 中国科学院空天信息创新研究院 基于OpenVPX架构的地理网格投票装置

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050073384A (ko) * 2004-01-09 2005-07-13 삼성전자주식회사 이동통신시스템에서 프로그램이 가능한 로직 디바이스에데이터를 다운로딩하는 장치 및 방법
US7307977B1 (en) * 2002-10-01 2007-12-11 Comsys Communication & Signal Processing Ltd. Information transfer and interrupt event scheduling scheme for a communications transceiver incorporating multiple processing elements
US20080094403A1 (en) * 2003-11-19 2008-04-24 Reuven Bakalash Computing system capable of parallelizing the operation graphics processing units (GPUs) supported on a CPU/GPU fusion-architecture chip and one or more external graphics cards, employing a software-implemented multi-mode parallel graphics rendering subsystem
KR20090101773A (ko) * 2008-03-24 2009-09-29 한양대학교 산학협력단 멀티입력 멀티출력을 위한 플랫폼 장치
CN102710477A (zh) * 2012-05-15 2012-10-03 浙江大学 一种基于vpx总线结构的数据处理系统
US20140218379A1 (en) * 2013-02-07 2014-08-07 Nvidia Corporation Device, system and method for transferring network data
CN105893307A (zh) * 2016-03-30 2016-08-24 北京航天自动控制研究所 一种高速大数据量信息处理系统
CN107817216A (zh) * 2017-10-31 2018-03-20 武汉精测电子技术股份有限公司 一种基于cpu+gpu+fpga架构的自动光学检测系统
CN108255773A (zh) * 2017-12-07 2018-07-06 中国航空工业集团公司西安航空计算技术研究所 一种智能计算异构多核处理方法与平台
CN108710596A (zh) * 2018-05-10 2018-10-26 中国人民解放军空军工程大学 一种基于dsp和fpga多协处理卡的桌面超算硬件平台
CN209044577U (zh) * 2018-12-27 2019-06-28 北京盛博协同科技有限责任公司 综合显示控制模块
CN211124042U (zh) * 2020-03-18 2020-07-28 河南炬讯信息技术有限公司 一种具有强大数据处理能力的amc信号处理板卡
US20200294181A1 (en) * 2019-03-15 2020-09-17 Intel Corporation Disaggregation of soc architecture

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7307977B1 (en) * 2002-10-01 2007-12-11 Comsys Communication & Signal Processing Ltd. Information transfer and interrupt event scheduling scheme for a communications transceiver incorporating multiple processing elements
US20080094403A1 (en) * 2003-11-19 2008-04-24 Reuven Bakalash Computing system capable of parallelizing the operation graphics processing units (GPUs) supported on a CPU/GPU fusion-architecture chip and one or more external graphics cards, employing a software-implemented multi-mode parallel graphics rendering subsystem
KR20050073384A (ko) * 2004-01-09 2005-07-13 삼성전자주식회사 이동통신시스템에서 프로그램이 가능한 로직 디바이스에데이터를 다운로딩하는 장치 및 방법
KR20090101773A (ko) * 2008-03-24 2009-09-29 한양대학교 산학협력단 멀티입력 멀티출력을 위한 플랫폼 장치
CN102710477A (zh) * 2012-05-15 2012-10-03 浙江大学 一种基于vpx总线结构的数据处理系统
US20140218379A1 (en) * 2013-02-07 2014-08-07 Nvidia Corporation Device, system and method for transferring network data
CN105893307A (zh) * 2016-03-30 2016-08-24 北京航天自动控制研究所 一种高速大数据量信息处理系统
CN107817216A (zh) * 2017-10-31 2018-03-20 武汉精测电子技术股份有限公司 一种基于cpu+gpu+fpga架构的自动光学检测系统
CN108255773A (zh) * 2017-12-07 2018-07-06 中国航空工业集团公司西安航空计算技术研究所 一种智能计算异构多核处理方法与平台
CN108710596A (zh) * 2018-05-10 2018-10-26 中国人民解放军空军工程大学 一种基于dsp和fpga多协处理卡的桌面超算硬件平台
CN209044577U (zh) * 2018-12-27 2019-06-28 北京盛博协同科技有限责任公司 综合显示控制模块
US20200294181A1 (en) * 2019-03-15 2020-09-17 Intel Corporation Disaggregation of soc architecture
CN211124042U (zh) * 2020-03-18 2020-07-28 河南炬讯信息技术有限公司 一种具有强大数据处理能力的amc信号处理板卡

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
邓豹;段小虎;: "基于VPX标准的高速处理模块的设计与实现", 航空计算技术, no. 04 *
高原;顾文杰;丁雨恒;彭晖;陈泊宇;顾雯轩;: "异构集群中CPU与GPU协同调度算法的设计与实现", 计算机工程与设计, no. 02 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113258941A (zh) * 2021-05-11 2021-08-13 江苏信息职业技术学院 一种矢量信号产生模块及产生方法
CN113778031A (zh) * 2021-08-27 2021-12-10 北京和利时系统工程有限公司 一种智能控制节点和数据传输方法
CN114416382A (zh) * 2022-03-30 2022-04-29 中国科学院空天信息创新研究院 基于OpenVPX架构的地理网格投票装置
CN114416382B (zh) * 2022-03-30 2022-06-24 中国科学院空天信息创新研究院 基于OpenVPX架构的地理网格投票装置

Also Published As

Publication number Publication date
CN112148670B (zh) 2023-12-19

Similar Documents

Publication Publication Date Title
CN112148670B (zh) 多功能业务板卡以及数据处理方法
US10997106B1 (en) Inter-smartNIC virtual-link for control and datapath connectivity
Fahmy et al. Virtualized FPGA accelerators for efficient cloud computing
US20220351326A1 (en) Direct memory writes by network interface of a graphics processing unit
US8825922B2 (en) Arrangement for processing trace data information, integrated circuits and a method for processing trace data information
TW201145172A (en) Sharing resources between a CPU and GPU
US9330002B2 (en) Multi-core interconnect in a network processor
US10367639B2 (en) Graphics processor with encrypted kernels
CN109190420B (zh) 一种服务器加解密刀片、系统、及加解密方法
EP3575969B1 (en) Reducing cache line collisions
Al-Aghbari et al. Cloud-based FPGA custom computing machines for streaming applications
Mbakoyiannis et al. Energy-performance considerations for data offloading to FPGA-based accelerators over PCIe
CN112380162A (zh) 基于vpx架构的单板计算机主板
Wang et al. {FpgaNIC}: An {FPGA-based} versatile 100gb {SmartNIC} for {GPUs}
US20120319750A1 (en) Multi-part clock management
CN114121055A (zh) 内存互连架构系统和方法
US20180336034A1 (en) Near memory computing architecture
US8922571B2 (en) Display pipe request aggregation
CN111813736B (zh) 片上系统及信号处理方法
Boyle et al. The QCDOC project
CN112181891B (zh) 基于NVMe的存储板卡以及数据处理方法
US8688889B2 (en) Virtual USB key for blade server
US10417168B1 (en) Combining switch slot resources
Borga et al. Evolution of the ReadOut System of the ATLAS experiment
US20230086222A1 (en) Scalable address decoding scheme for cxl type-2 devices with programmable interleave granularity

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
GR01 Patent grant
GR01 Patent grant