0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

科普NPU、TPU、IPU是什么?

ruikundianzi 来源:IP与SoC设计 2023-05-17 14:14 次阅读

各种PU(processing unit)的概念层出不穷,比较火热。今天我们来大致看看,这些X PU都是些什么?

什么是CPU

中央处理器(Central Processing Unit),是电子计算机的主要设备之一,电脑中的核心配件。其功能主要是解释计算机指令以及处理计算机软件中的数据。CPU是计算机中负责读取指令,对指令译码并执行指令的核心部件。中央处理器主要包括两个部分,即控制器、运算器,其中还包括高速及实现它们缓冲处理器之间联系的数据、控制的总线。

电子计算机三大核心部件就是CPU、内部存储器、输入/输出设备。中央处理器的功效主要为处理指令、执行操作、控制时间、处理数据,也就是机器的“大脑”。在计算机体系结构中,CPU 是对计算机的所有硬件资源(如存储器、输入输出单元) 进行控制调配、执行通用运算的核心硬件单元。CPU 是计算机的运算和控制核心。计算机系统中所有软件层的操作,最终都将通过指令集映射为CPU的操作。

CPU的结构主要包括运算器(ALU, Arithmetic and Logic Unit)、控制单元(CU, Control Unit)、寄存器(Register)、高速缓存器(Cache)和它们之间通讯的数据、控制及状态的总线。

架构如下图所示:

475f94b2-f474-11ed-90ce-dac502259ad0.png

什么是GPU

图形处理器(Graphics Processing Unit),又称显示核心、视觉处理器、显示芯片,是一种专门在个人电脑、工作站、游戏机和一些移动设备(如平板电脑、智能手机等)上做图像和图形相关运算工作的微处理器

GPU的构成相对简单,有数量众多的计算单元和超长的流水线,特别适合处理大量的类型统一的数据。但GPU无法单独工作,必须由CPU进行控制调用才能工作。

图像上的每一个像素点都有被处理的需要,而且每个像素点处理的过程和方式都十分相似,也就成了GPU的天然温床。GPU就是用很多简单的计算单元去完成大量的计算任务,也就是并行计算。

47793c5a-f474-11ed-90ce-dac502259ad0.png

47856cb4-f474-11ed-90ce-dac502259ad0.png

什么是TPU?

TPU(Tensor Processing Unit),也就是张量处理单元,是一款为机器学习而定制的芯片,经过了专门深度机器学习方面的训练,它有更高效能。

如果说CPU,GPU是比较万能的工具,那么TPU就是专用工具。TPU就是谷歌专门为加速深层神经网络运算能力而研发的一款芯片,其实也是一款ASIC

财大气粗的谷歌就是针对机器学习算法而专门制作了TPU,那么它的性能想来也是没得说。毕竟专业人做专业事,效率更高。

据说,TPU与同期的CPU和GPU相比,可以提供15-30倍的性能提升,以及30-80倍的效率(性能/瓦特)提升。

每一个操作需要更少的晶体管,用更多精密且大功率的机器学习模型,并快速应用这些模型,因此用户便能得到更正确的结果。这就是TPU。

47a3fd50-f474-11ed-90ce-dac502259ad0.png

47c04de8-f474-11ed-90ce-dac502259ad0.png

什么是NPU?

NPU(Neural network Processing Unit), 也就是神经网络处理器。顾名思义,设计人员试图用电路模拟人类的神经元和突触结构。

在电路层模拟神经元,通过突触权重实现存储和计算一体化,一条指令完成一组神经元的处理,提高运行效率。主要应用于通信领域、大数据、图像处理。

嵌入式神经网络处理器(NPU)采用“数据驱动并行计算”的架构,特别擅长处理视频、图像类的海量多媒体数据。

NPU处理器专门为物联网人工智能而设计,用于加速神经网络的运算,解决传统芯片在神经网络运算时效率低下的问题。

NPU处理器包括了乘加、激活函数、二维数据运算、解压缩等模块。

乘加模块用于计算矩阵乘加、卷积、点乘等功能,NPU内部有64个MAC,SNPU有32个。

激活函数模块采用最高12阶参数拟合的方式实现神经网络中的激活函数,NPU内部有6个MAC,SNPU有3个。

二维数据运算模块用于实现对一个平面的运算,如降采样、平面数据拷贝等,NPU内部有1个MAC,SNPU有1个。

解压缩模块用于对权重数据的解压。为了解决物联网设备中内存带宽小的特点,在NPU编译器中会对神经网络中的权重进行压缩,在几乎不影响精度的情况下,可以实现6-10倍的压缩效果。

神经网络中存储和处理是一体化的,都是通过突触权重来体现。而冯·诺伊曼结构中,存储和处理是分离的,分别由存储器和运算器来实现,二者之间存在巨大的差异。因此专门针对人工智能的专业芯片在具体的应用领域比传统芯片更有性能等方面的优势。

47dfad32-f474-11ed-90ce-dac502259ad0.png

什么是IPU?

传统意义上的IPU(Image Processing Unit),图像处理单元,是图像识别SoC的重要组成部分。

47f5f38a-f474-11ed-90ce-dac502259ad0.png

图像处理单元的目标是提供从图像输入(摄像头传感器 / 电视信号输入等)到显示设备(LCD显示屏 / TV输出 / 外部图像处理单元等)端到端的数据流信号处理的全面支持。

480de9c2-f474-11ed-90ce-dac502259ad0.png

IPU库(IPU Library)是基于IPU硬件的,它能实现以下功能:

1、调整大小。

2、旋转。

3、色彩空间 / 格式转换。

4、以同样大小的窗口,支持色键和α混合叠加组合。

5、在IPU处理后,直接输出显示到帧缓冲区。

6、两个输出处理来自一个输入。

7、窗口切割。

8、局部 α 混合。

在IPU处理内,IPU库采取三种操作缓冲区的方式:

1、输入缓冲区,包含需要处理的数据,用户可以自己分配或者由IPU库分配。

2、输出缓冲区,包含来自输入缓冲区已经处理完成的数据,用户可以自己分配

或者由IPU库分配;如果用户想将输出显示指向帧缓冲区,然后用户就不需要分配它们,帧缓冲区现在已经是输出缓冲区了。

3、覆盖缓冲区,包含要处理和组合的数据。

(注意:这三个缓冲区是连续的。)

对于IPU缓冲区有两种操作模式:

1、流模式,在IPU低级操作里将使用双缓冲区。

2、正常模式,在IPU低级操作里将使用单缓冲区。

481e79b8-f474-11ed-90ce-dac502259ad0.png

Tip:

以上提到的IPU是传统意义上的IPU,2021年8月英特尔发布了两款新的IPU(Infrustracture Processing Unit),架构处理器,让各类网络服务运作过程可降低CPU资源占用比重。在定位上与英伟达提出的DPU(Data Processing Unit)相类似。

哦对了,Graphcore 此前也开发了一款IPU,智能处理单元(intelligence processing unit),用于改善AI性能,实现AI技术

目前看来,或许X PU的前缀字母已经不够用了。当然,这也是各大厂商希望自己与其他家产品区分开的结果。我们真的需要这么多X PU吗?大浪淘沙,时间自然会给我们答案。

X PU大致一览

APU -- Accelerated Processing Unit, 加速处理器,AMD公司推出加速图像处理芯片产品。

BPU -- Brain Processing Unit, 地平线公司主导的嵌入式处理器架构。

CPU -- Central Processing Unit 中央处理器, 目前PC core的主流产品。

DPU -- Deep learning Processing Unit, 深度学习处理器,最早由国内深鉴科技提出;另说有Dataflow Processing Unit 数据流处理器, Wave Computing 公司提出的AI架构;Data storage Processing Unit,深圳大普微的智能固态硬盘处理器。

FPU -- Floating Processing Unit 浮点计算单元,通用处理器中的浮点运算模块。

GPU -- Graphics Processing Unit, 图形处理器,采用多线程SIMD架构,为图形处理而生。

HPU -- Holographics Processing Unit 全息图像处理器, 微软出品的全息计算芯片与设备。

IPU -- Intelligence Processing Unit, Deep Mind投资的Graphcore公司出品的AI处理器产品。

MPU/MCU -- Microprocessor/Micro controller Unit, 微处理器/微控制器,一般用于低计算应用的RISC计算机体系架构产品,如ARM-M系列处理器。

NPU -- Neural Network Processing Unit,神经网络处理器,是基于神经网络算法与加速的新型处理器总称,如中科院计算所/寒武纪公司出品的diannao系列。

RPU -- Radio Processing Unit, 无线电处理器, Imagination Technologies 公司推出的集合集Wifi/蓝牙/FM/处理器为单片的处理器。

TPU -- Tensor Processing Unit 张量处理器, Google 公司推出的加速人工智能算法的专用处理器。目前一代TPU面向Inference,二代面向训练。

VPU -- Vector Processing Unit 矢量处理器,Intel收购的Movidius公司推出的图像处理与人工智能的专用芯片的加速计算核心。

WPU -- Wearable Processing Unit, 可穿戴处理器,Ineda Systems公司推出的可穿戴片上系统产品,包含GPU/MIPS CPU等IP。

XPU -- 百度与Xilinx公司在2017年Hotchips大会上发布的FPGA智能云加速,含256核。

ZPU -- Zylin Processing Unit, 由挪威Zylin 公司推出的一款32位开源处理器。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 处理器
    +关注

    关注

    68

    文章

    19160

    浏览量

    229121
  • cpu
    cpu
    +关注

    关注

    68

    文章

    10825

    浏览量

    211146
  • TPU
    TPU
    +关注

    关注

    0

    文章

    138

    浏览量

    20698
  • IPU
    IPU
    +关注

    关注

    0

    文章

    34

    浏览量

    15546
  • NPU
    NPU
    +关注

    关注

    2

    文章

    269

    浏览量

    18543

原文标题:科普:NPU,TPU,IPU,这些都是什么?

文章出处:【微信号:IP与SoC设计,微信公众号:IP与SoC设计】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    TPU-MLIR开发环境配置时出现的各种问题求解

    按照 TPU-MLIR 开发指南进行环境配置: 2.1. 代码下载 代码路径: https://github.com/sophgo/tpu-mlir 克隆该代码后, 需要在Docker中编译
    发表于 01-10 08:02

    CORAL-EDGE-TPU:珊瑚开发板TPU

    包括一个上系统模块(SOM)和护壁板。SOM基于iMX 8M应用处理器,还包含LPDDR4内存,eMMC存储,双频Wi-Fi和Edge TPU。Edge TPU是由Google设计的小型ASIC
    发表于 05-29 10:43

    TPU透明副牌.TPU副牌料.TPU抽粒厂.TPU塑胶副牌.TPU再生料.TPU低温料

    清源塑胶经营. 供应TPU塑胶原料.副牌.再生颗粒料.TPU塑胶.TPU透明副牌. 再生粒子.白色.黑色.透明. 注塑料.挤出料. 压延等等..聚醚. 脂肪料. 聚酯料.硬度70A--98A.
    发表于 11-21 17:21

    TPU副牌低温料.TPU热熔料.TPU中温料.TPU低温塑胶.TPU低温抽粒.TPU中温塑料

    清源塑胶公司.供应TPU塑胶原料.副牌.再生颗粒料.TPU塑胶.TPU透明副牌. 再生粒子.白色.黑色.透明. 注塑料.挤出料. 压延等等..聚醚. 脂肪料. 聚酯料.硬度70A--98A. 高硬度
    发表于 11-21 17:33

    供应TPU抽粒工厂.TPU再生工厂.TPU聚醚料.TPU聚酯料.TPU副牌透明.TPU副牌.TPU中低温料

    清源塑胶经营.进口.国内.供应TPU原料.副牌TPU塑胶.TPU透明副牌. 再生粒子.白色.黑色.透明. 注塑料.挤出料. 压延等等..聚醚. 脂肪料. 聚酯料.硬度70A--98A. 高硬度
    发表于 11-21 17:47

    采购TPU复牌料.复牌TPU原料.TPU复牌透明塑料.TPU废边料.TPU废膜料.TPU低温料

    全球大量采购① tpu,透明,白色,副牌,再生粒,注塑,挤出料,TPU边角膜料. TPU废卷膜. 进口.国内料. 200吨,② TPU低温,中温.副牌料,胶块料. 200吨, ③ PB
    发表于 11-22 02:38

    CPU,GPU,TPU,NPU都是什么

    嵌入式算法移植优化学习笔记5——CPU,GPU,TPU,NPU都是什么一、什么是CPU?二、什么是GPU?三、什么是TPU?四、什么是NPU?附:一、什么是CPU?中央处理器(CPU)
    发表于 12-15 06:07

    MCU、DSP、GPU、MPU、CPU、DPU、FPGA、ASIC、SOC、ECU、NPUTPU、VPU、APU、BPU、ECU、FPU、EPU、这些主控异同点有哪些?

    MCU、DSP、GPU、MPU、CPU、DPU、FPGA、ASIC、SOC、ECU、NPUTPU、VPU、APU、BPU、ECU、FPU、EPU、这些主控异同点有哪些?
    发表于 12-17 17:07

    如何验证MC68332 TPU配置是否正确?

    a) 以下 TPU 模块配置在项目中完成 *M332_TPU_TMCR = 0x1e4c;/* 选择 TCR1 时基 = 250nsec, TCR2 = 4usec,仿真模式
    发表于 05-09 08:17

    CPU、GPU、TPUNPU等的讲解

    CPU、GPU、TPUNPU等的讲解
    的头像 发表于 01-05 14:54 1.1w次阅读

    MPU、MCU、CPU、GPU、DSP、MMU、TPUNPU大杂烩

    MPU、MCU、CPU、GPU、DSP、MMU、TPUNPU大杂烩写在前面:相信大家都和我一样,对这些U的英文缩写,傻傻分不清楚,这是最近收集的一些,整理一下,做个记录。MPU与MCU最常见的大家
    发表于 12-08 14:21 19次下载
    MPU、MCU、CPU、GPU、DSP、MMU、<b class='flag-5'>TPU</b>、<b class='flag-5'>NPU</b>大杂烩

    什么是CPU、GPU、TPU、DPU、NPU、BPU?有什么区别?

    技术日新月异,物联网、人工智能、深度学习等遍地开花,各类芯片名词GPU, TPU, NPU,DPU层出不穷…它们都是什么鬼?又有什么不一样? 01 CPU CPU,作为机器的“大脑”,它是布局谋略
    的头像 发表于 06-30 08:48 1.6w次阅读
    什么是CPU、GPU、<b class='flag-5'>TPU</b>、DPU、<b class='flag-5'>NPU</b>、BPU?有什么区别?

    npu是什么意思?npu芯片是什么意思?npu到底有什么用?

    npu是什么意思?npu芯片是什么意思?npu到底有什么用?  NPU的概念 NPU(Neural Processing Unit,神经网络
    的头像 发表于 08-27 17:03 4.1w次阅读

    TPUNPU的区别

    TPUNPU的区别  在IT领域中,TPUNPU属于两种不同类型的芯片。这两种芯片都是专为人工智能(AI)和大型数据分析设计而开发的,但它们的功能和优点却有所不同。在本文中,我们将
    的头像 发表于 08-27 17:08 7619次阅读

    NPU与机器学习算法的关系

    紧密。 NPU的起源与特点 NPU的概念最早由谷歌在其TPU(Tensor Processing Unit)项目中提出,旨在为TensorFlow框架提供专用的硬件加速。NPU的设计目
    的头像 发表于 11-15 09:19 306次阅读