CN107391429A - 一种cpu+gpu+fpga的设计方法 - Google Patents

一种cpu+gpu+fpga的设计方法 Download PDF

Info

Publication number
CN107391429A
CN107391429A CN201710665118.XA CN201710665118A CN107391429A CN 107391429 A CN107391429 A CN 107391429A CN 201710665118 A CN201710665118 A CN 201710665118A CN 107391429 A CN107391429 A CN 107391429A
Authority
CN
China
Prior art keywords
fpga
gpu
cpu
demand
design
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
Application number
CN201710665118.XA
Other languages
English (en)
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to CN201710665118.XA priority Critical patent/CN107391429A/zh
Publication of CN107391429A publication Critical patent/CN107391429A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)
  • Advance Control (AREA)

Abstract

一种CPU+GPU+FPGA的设计方法的技术领域,是属于计算机领域,人工智能和超算领域,主要的设计方法是把这三种各自擅长的计算能力和灵活的进行重构化结合起来,使计算机不但具备了,超强的计算能力,并且具备自我设计,自我编程,自我改进的能力提供硬件基础。

Description

一种CPU+GPU+FPGA的设计方法
技术领域
一种CPU+GPU+FPGA的设计方法的技术领域,是属于计算机领域,人工智能和超算领域,主要的设计方法是把这三种各自擅长的计算能力和灵活的进行重构化结合起来,使计算机不但具备了,超强的计算能力,并且具备自我设计,自我编程,自我改进的能力提供硬件基础。
背景技术
中央处理器(CPU,Central Processing Unit)是一块超大规模的集成电路,是一台计算机的运算核心(Core)和控制核心( Control Unit)。它的功能主要是解释计算机指令以及处理计算机软件中的数据。中央处理器主要包括运算器(算术逻辑运算单元,ALU,Arithmetic Logic Unit)和高速缓冲存储器(Cache)及实现它们之间联系的数据(Data)、控制及状态的总线(Bus)。它与内部存储器(Memory)和输入/输出(I/O)设备合称为电子计算机三大核心部件。图形处理器(英语:Graphics Processing Unit,缩写:GPU),又称显示核心、视觉处理器、显示芯片,是一种专门在个人电脑、工作站、游戏机和一些移动设备(如平板电脑、智能手机等)上图像运算工作的微处理器。将计算机系统所需要的显示信息进行转换驱动,并向显示器提供行扫描信号,控制显示器的正确显示,是连接显示器和个人电脑主板的重要元件,也是“人机对话”的重要设备之一,显卡作为电脑主机里的一个重要组成部分,承担输出显示图形的任务,现在通过多GPU结合提高技术速度,在人工智能方面对图片的处理,对运算的加速起到关键的作用。FPGA(Field-Programmable Gate Array),即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。现在的电脑一般都是CPU+GPU结合,或CPU+FPGA结合,这样的结合确实解决了很多问题,CPU+GPU结合就是我们一般使用的电脑,这样的构架也是现在超级计算机的组合,不过这样的组合全是固定构架,CPU和GPU组合的构架全是固定死的,也就是说里面的线路是不能改变的,这样的组合可以设计成多CPU和多GPU构成一个计算能力十分强大的超级计算机,CPU+FPGA结合,这样的结合的好处是可以灵活的进行编程,改变FPGA里面的线路布局,随时针对性的满足计算能力不是十分强大,当灵活性强的设计,能满足时时改变的外部环境要求,具有极大的灵活性。
发明内容
由于人工智能的迅速崛起,现在数据数量指数的增长,并且对外部的信息的输入越来越多,越来越精细,数据量也越来越大,对数据分析的深度越来越深,因此对计算能力的要求也越来越高,而且要对外部环境的变化要不断适应,需要不断的在现有的设备上加传感器或其他外围设备,根据上面的分析,CPU+GPU结合或CPU+FPGA结合各有优点和缺点,因此根据现在发展的迫切需要,把这三者结合构成一个既具有超级计算能力,又可以灵活设计的构思来满足现在火热的人工智能对硬件的需求,和其他各种各业的需求,一种CPU+GPU+FPGA的设计方法,其特征是: 把CPU、GPU、FPGA一起做在主板上,为了满足现在巨大的计算量和适应各种变化,CPU要根据现实的需求,采用多核CPU,GPU一般是采用多片GPU,这要根据实际的需求和成本决定,FPGA肯定要采用很多片的,当GPU很忙时,把一些任务交给FPGA处理,或直接把一些子任务分配给FPGA进行处理,当使用完后,如果不使用FPGA,就把FPGA设置为初始状态,这样就可以根据如何的需求把FPGA设置满足需求的电路,当然固定需求的设计就不须改变了,同时设备根据外部环境的要求,和产品的不断进化升级,不断的要添加外部设备和传感器,通过对FPGA的设计,进行实时处理信息,FPGA当然可以直接把任务解决或对任务进行预处理,CPU的作用是处理串行计算,同时调度和分配任务,并根据需求改变FPGA的设计,使它满足各种需求,GPU的作用是把大量并行的计算通过CPU的调度,把任务分配给GPU,进行大量的并行计算,FPGA的作用是当计算机现有的硬件,并行计算能力不足时的补充,当外部的环境发生改变需要适应或需要升级功能,或增加硬件时,就可以通过编程增加这个需要的硬件对应的设计,也可以设计为系统内部的部件加强计算能力或内部需求,就是当硬件的并行速度不能满足并行运算需求时,就会自动改变FPGA的设计,把任务分配给FPGA进行并行处理,因此把CPU、GPU、FPGA完美的结合起来,为设备具有自我学习,自我演化,自我更新,提供硬件基础,更重要这样设备的设计,可以对自己的硬件进行设计改变和扩增外部设备的能力,这样就可以不断优化,不断扩增,使设备变的越来越先进,越来越智能。
附图说明
当图1是一种CPU+GPU+FPGA的设计方法的结构原理图,1代表主板,2代表CPU,3代表GPU,4.5.6.7.8.9.10.11.12代表FPGA,图1是最简单的结构,用来示范作用,这里的CPU是多核的,主板上也可以安装多片CPU,GPU也可以安装多片GPU,根据需要,FPGA是肯定要安装多片的,以满足多用途需要和实时处理的需要。
实施方法
启动设备,系统进入操作系统,CPU管理串行的任务,当处理的任务遇到大量的并行运算时,把任务分配给GPU,GPU就是处理并行运算的设计,这样大量的并行的数据就被处理掉,如果这些数据实在太大,那么CPU就把一些子任务分配给FPGA进行并行计算或直接加入并行计算,当然最主要的是,CPU会通过比如神经网络和其他的深度学习的算法,让机器自己学习,产生新的算法,让这种算法对FPGA进行编程,使FPGA能解决特点问题的方法,这样就可以使设备不但具备自我学习,自我演化,自我更新,更重要的是使机器对自己的硬件进行编程改变和扩增设备的能力,这样就可以不断优化,不断扩增,使设备变的越来越先进,越来越智能。

Claims (1)

1.一种CPU+GPU+FPGA的设计方法,其特征是: 把CPU、GPU、FPGA一起做在主板上,为了满足现在巨大的计算量和适应各种变化,CPU要根据现实的需求,采用多核CPU,GPU一般是采用多片GPU,这要根据实际的需求和成本决定,FPGA肯定要采用很多片的,当GPU很忙时,把一些任务交给FPGA处理,或直接把一些子任务分配给FPGA进行处理,当使用完后,如果不使用FPGA,就把FPGA设置为初始状态,这样就可以根据如何的需求把FPGA设置满足需求的电路,当然固定需求的设计就不须改变了,同时设备根据外部环境的要求,和产品的不断进化升级,不断的要添加外部设备和传感器,通过对FPGA的设计,进行实时处理信息,FPGA当然可以直接把任务解决或对任务进行预处理,CPU的作用是处理串行计算,同时调度和分配任务,并根据需求改变FPGA的设计,使它满足各种需求,GPU的作用是把大量并行的计算通过CPU的调度,把任务分配给GPU,进行大量的并行计算,FPGA的作用是当计算机现有的硬件,并行计算能力不足时的补充,当外部的环境发生改变需要适应或需要升级功能,或增加硬件时,就可以通过编程增加这个需要的硬件对应的设计,也可以设计为系统内部的部件加强计算能力或内部需求,就是当硬件的并行速度不能满足并行运算需求时,就会自动改变FPGA的设计,把任务分配给FPGA进行并行处理,因此把CPU、GPU、FPGA完美的结合起来,为设备具有自我学习,自我演化,自我更新,提供硬件基础,更重要这样设备的设计,可以对自己的硬件进行设计改变和扩增外部设备的能力,这样就可以不断优化,不断扩增,使设备变的越来越先进,越来越智能。
CN201710665118.XA 2017-08-07 2017-08-07 一种cpu+gpu+fpga的设计方法 Pending CN107391429A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710665118.XA CN107391429A (zh) 2017-08-07 2017-08-07 一种cpu+gpu+fpga的设计方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710665118.XA CN107391429A (zh) 2017-08-07 2017-08-07 一种cpu+gpu+fpga的设计方法

Publications (1)

Publication Number Publication Date
CN107391429A true CN107391429A (zh) 2017-11-24

Family

ID=60344021

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710665118.XA Pending CN107391429A (zh) 2017-08-07 2017-08-07 一种cpu+gpu+fpga的设计方法

Country Status (1)

Country Link
CN (1) CN107391429A (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108255773A (zh) * 2017-12-07 2018-07-06 中国航空工业集团公司西安航空计算技术研究所 一种智能计算异构多核处理方法与平台
CN108874518A (zh) * 2018-05-21 2018-11-23 福建省数字福建云计算运营有限公司 一种任务调度方法及终端
CN109325494A (zh) * 2018-08-27 2019-02-12 腾讯科技(深圳)有限公司 图片处理方法、任务数据处理方法和装置
CN109408445A (zh) * 2018-11-01 2019-03-01 郑州云海信息技术有限公司 一种图形处理器板卡
CN110333946A (zh) * 2019-05-14 2019-10-15 王娅雯 一种基于人工智能cpu数据处理系统及方法
CN110889497A (zh) * 2018-12-29 2020-03-17 中科寒武纪科技股份有限公司 一种人工智能处理器的学习任务编译方法及相关产品
CN111590610A (zh) * 2020-04-30 2020-08-28 南京智音云数字科技有限公司 一种新型智能对话机器人控制系统及其方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101526934A (zh) * 2009-04-21 2009-09-09 浪潮电子信息产业股份有限公司 一种gpu与cpu复合处理器的组建方法
US20120117362A1 (en) * 2010-11-10 2012-05-10 Bhargava Ravindra N Replay of detected patterns in predicted instructions
CN104965689A (zh) * 2015-05-22 2015-10-07 浪潮电子信息产业股份有限公司 一种cpu/gpu的混合并行计算方法及装置
CN105824780A (zh) * 2016-04-01 2016-08-03 浪潮电子信息产业股份有限公司 一种基于单机多fpga的并行开发方法
CN106843045A (zh) * 2017-01-23 2017-06-13 张军 一种基于多核异构cpu‑gpu‑fpga系统架构的嵌入式操作系统原型

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101526934A (zh) * 2009-04-21 2009-09-09 浪潮电子信息产业股份有限公司 一种gpu与cpu复合处理器的组建方法
US20120117362A1 (en) * 2010-11-10 2012-05-10 Bhargava Ravindra N Replay of detected patterns in predicted instructions
CN104965689A (zh) * 2015-05-22 2015-10-07 浪潮电子信息产业股份有限公司 一种cpu/gpu的混合并行计算方法及装置
CN105824780A (zh) * 2016-04-01 2016-08-03 浪潮电子信息产业股份有限公司 一种基于单机多fpga的并行开发方法
CN106843045A (zh) * 2017-01-23 2017-06-13 张军 一种基于多核异构cpu‑gpu‑fpga系统架构的嵌入式操作系统原型

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SUSAN M.SCOTT ETC.: ""The "chimera":An off-the-shelf CPU/GPGPU/FPGA hybrid computing platform"", 《INTERNATIONAL JOURNAL OF RECONFIGURABLE COMPUTING》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108255773A (zh) * 2017-12-07 2018-07-06 中国航空工业集团公司西安航空计算技术研究所 一种智能计算异构多核处理方法与平台
CN108874518A (zh) * 2018-05-21 2018-11-23 福建省数字福建云计算运营有限公司 一种任务调度方法及终端
CN109325494A (zh) * 2018-08-27 2019-02-12 腾讯科技(深圳)有限公司 图片处理方法、任务数据处理方法和装置
CN109408445A (zh) * 2018-11-01 2019-03-01 郑州云海信息技术有限公司 一种图形处理器板卡
CN110889497A (zh) * 2018-12-29 2020-03-17 中科寒武纪科技股份有限公司 一种人工智能处理器的学习任务编译方法及相关产品
CN110333946A (zh) * 2019-05-14 2019-10-15 王娅雯 一种基于人工智能cpu数据处理系统及方法
CN111590610A (zh) * 2020-04-30 2020-08-28 南京智音云数字科技有限公司 一种新型智能对话机器人控制系统及其方法

Similar Documents

Publication Publication Date Title
CN107391429A (zh) 一种cpu+gpu+fpga的设计方法
CN110023962B (zh) 人类体验到机器人和其他自主机器的高效传递
CN101714247B (zh) 单通道镶嵌
JP2020537789A (ja) 超並列ソフトウェア定義ハードウェアシステムにおける静的ブロックスケジューリング
DE102020120372A1 (de) Programmierbare wandlungshardware
EP3349870B1 (en) Game engine on a chip
CN105190542B (zh) 提供可伸缩计算结构的方法、计算设备和打印设备
CN110333946A (zh) 一种基于人工智能cpu数据处理系统及方法
CN106462393A (zh) 用于统一应用编程接口和模型的系统和方法
TWI750557B (zh) 按行緩衝器單元記憶體分配之判定
DE102019101118A1 (de) Anweisung und Logik für systolisches Skalarprodukt mit Akkumulation
US20130207983A1 (en) Central processing unit, gpu simulation method thereof, and computing system including the same
CN107038060A (zh) 一种页面着色器代码调试方法、装置
DE102021103492A1 (de) Anwendungsprogrammierschnittstelle zum beschleunigen von matrixoperationen
DE102020115578A1 (de) Management von partiellem schreiben in einer grafik-enginemit mehreren kacheln
CN104360860B (zh) 一种国产自主嵌入式计算机系统及其显卡驱动方法
DE102019123443A1 (de) Mechanismus zum gemeinsamen Benutzen von Registern
JP6441963B2 (ja) グラフィックス処理における加速された複数のポリゴンの単一平面クリッピング
WO2011023204A1 (en) Simulation of distributed virtual control systems
Baji GPU: the biggest key processor for AI and parallel processing
DE102020108215A1 (de) Bedienflächenzugriff mittels flacher Speicherzuordnung
CN101441761B (zh) 图形处理器单元管线中的条件执行位
Lee et al. An investigation of software describing methods to design dual background scrolling hardware in high-level synthesis
Lübeck et al. A heterogeneous and reconfigurable embedded architecture for energy-efficient execution of convolutional neural networks
CN104331302B (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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20171124