NPU IP(NPU IP Core)
3 秒看懂
一句话定义:NPU IP 是可复用的神经网络处理器硬件设计模块,以 IP 授权方式嵌入客户 SoC,让芯片公司无需从零设计就能获得 AI 推理能力。
类比:如果说芯片是一栋大楼,NPU IP 就是预制的”AI 电梯模块”——买来直接装进去就能用,不用自己造电梯。
核心玩家:Arm(Ethos)、Cadence(Tensilica)、Synopsys(DesignWare ARC)、芯原(Vivante)、CEVA
3 分钟产业解释
产业位置:AI 芯片设计的”中间层”
┌─────────────────────────────────────────────────────────────────┐
│ AI 应用 / 框架层 │
├─────────────────────────────────────────────────────────────────┤
│ 编译器 / 工具链(与 IP 深度耦合) │
├─────────────────────────────────────────────────────────────────┤
│ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ │
│ │ NPU IP │ │ GPU IP │ │ DSP IP │ │ CPU IP │ ← IP 核层 │
│ └────┬────┘ └────┬────┘ └────┬────┘ └────┬────┘ │
├───────┼────────────┼───────────┼────────────┼──────────────────┤
│ └────────────┴───────────┴────────────┘ │
│ SoC 集成设计 │
├─────────────────────────────────────────────────────────────────┤
│ 晶圆代工(TSMC/Samsung 等) │
└─────────────────────────────────────────────────────────────────┘
为什么需要 NPU IP?
| 角色 | 需求 | NPU IP 如何解决 |
|---|---|---|
| 手机/PC SoC 厂 | 快速集成 AI 能力,抢占市场窗口 | 授权 Arm Ethos,6-12 个月集成完成 |
| IoT/安防芯片厂 | 成本敏感,无法养大团队 | 买成熟 IP,省去 2-3 年研发 |
| 汽车芯片厂 | 需要车规认证、长期维护 | 选有车规经验的 IP 供应商 |
| 新进入者 | 缺乏微架构经验 | IP 提供完整 RTL + 工具链 |
商业模式本质
┌──────────────┐
│ IP 授权方 │
└──────┬───────┘
│
┌──────────────────────┼──────────────────────┐
▼ ▼ ▼
┌───────────┐ ┌───────────┐ ┌───────────┐
│ 授权费 │ │ 版税/royalty│ │ 工具链/支持│
│(upfront) │ │(per chip) │ │ (subscription) │
│ │ │ │ │ │
│ 一次性支付 │ │ 按出货量 │ │ 编译器/量化工具│
│ 数百万美元 │ │ 每颗几美分 │ │ 技术支持 │
│ 量级[估算] │ │ 到几美元 │ │ │
└───────────┘ └───────────┘ └───────────┘
15 分钟专家深入
核心概念拆解
1. NPU 是什么?
NPU(Neural Processing Unit)是专门为神经网络计算优化的处理器,与 CPU、GPU 的区别:
| 维度 | CPU | GPU | NPU |
|---|---|---|---|
| 设计哲学 | 通用、低延迟 | 大规模并行 | 专用数据流 |
| 核心单元 | ALU + 分支预测 | 大量 CUDA Core/流处理器 | MAC 阵列 + 专用调度 |
| 擅长任务 | 逻辑控制、串行 | 训练、通用并行 | 推理(尤其边缘) |
| 典型精度 | FP64/FP32 | FP32/FP16/BF16 | INT8/INT4/二值 |
| 功耗效率 | 低 | 中 | 高(推理场景) |
2. IP 核是什么?
IP 核(Intellectual Property Core)是预先设计好、可验证的硬件模块,客户获得的是:
┌─────────────────────────────────────────────────┐
│ NPU IP 交付物 │
├─────────────────────────────────────────────────┤
│ ┌─────────────┐ ┌─────────────┐ │
│ │ RTL 代码 │ │ 物理实现 │ │
│ │ (软核/固核) │ │ (硬核可选) │ │
│ └──────┬──────┘ └──────┬──────┘ │
│ │ │ │
│ ┌──────▼────────────────▼──────┐ │
│ │ 验证环境 & 测试向量 │ │
│ └──────────────┬───────────────┘ │
│ │ │
│ ┌──────────────▼───────────────┐ │
│ │ 编译器/工具链/算子库 │ ← 软硬一体 │
│ └──────────────────────────────┘ │
└─────────────────────────────────────────────────┘
三种形态:
- 软核(Soft IP):RTL 源码,灵活度最高,客户可定制,但需要自己做后端
- 固核(Firm IP):门级网表,平衡灵活性与 PPA
- 硬核(Hard IP):GDS 版图,PPA 最优,但几乎不可修改
技术原理
NPU 核心微架构
┌─────────────────────────────────────────────────────────────────────┐
│ NPU IP Core 架构示意 │
├─────────────────────────────────────────────────────────────────────┤
│ │
│ ┌───────────────────────────────────────────────────────────────┐ │
│ │ 调度器 (Scheduler) │ │
│ │ 指令解码 / 任务队列 / 数据流编排 │ │
│ └─────────────────────┬─────────────────────────────────────────┘ │
│ │ │
│ ┌─────────────────────▼─────────────────────────────────────────┐ │
│ │ 计算阵列 (Compute Fabric) │ │
│ │ ┌─────────────────────────────────────────────────────────┐ │ │
│ │ │ MAC 阵列 (乘累加) │ │ │
│ │ │ ┌─────┐ ┌─────┐ ┌─────┐ ┌─────┐ ┌─────┐ │ │ │
│ │ │ │ MAC │ │ MAC │ │ MAC │ │ MAC │ ··· │ MAC │ │ │ │
│ │ │ └──┬──┘ └──┬──┘ └──┬──┘ └──┬──┘ └──┬──┘ │ │ │
│ │ │ │ │ │ │ │ │ │ │
│ │ │ ┌──▼───────▼───────▼───────▼─────────────▼──┐ │ │ │
│ │ │ │ 累加树 / 归约网络 │ │ │ │
│ │ │ └────────────────────────────────────────────┘ │ │ │
│ │ └─────────────────────────────────────────────────────────┘ │ │
│ │ │ │
│ │ ┌───────────────┐ ┌───────────────┐ ┌───────────────┐ │ │
│ │ │ 向量单元(VPU) │ │ 激活函数单元 │ │ 池化/归一化 │ │ │
│ │ │ SIMD/向量处理 │ │ ReLU/SiLU... │ │ MaxPool/BN │ │ │
│ │ └───────────────┘ └───────────────┘ └───────────────┘ │ │
│ └───────────────────────────────────────────────────────────────┘ │
│ │
│ ┌───────────────────────────────────────────────────────────────┐ │
│ │ 存储子系统 (Memory) │ │
│ │ ┌──────────┐ ┌──────────┐ ┌──────────────────────────┐ │ │
│ │ │ 寄存器堆 │ │ SRAM 缓冲│ │ DMA 引擎(访存控制) │ │ │
│ │ │ (最小) │ │ (MB级) │ │ ── 连接外部 DRAM/片上SRAM│ │ │
│ │ └──────────┘ └──────────┘ └──────────────────────────┘ │ │
│ └───────────────────────────────────────────────────────────────┘ │
│ │
│ ┌───────────────────────────────────────────────────────────────┐ │
│ │ 片上互连接口 (NoC/AXI/AHB) │ │
│ └───────────────────────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────────────────────────┘
关键技术机制
(1) 数据流架构选择
类型一:权重固定 (Weight Stationary)
┌─────────────────────────────────────┐
│ 权重锁存在 MAC 阵列中 │
│ 输入数据(激活值)流过阵列 │
│ 适合:权重复用高的层(卷积) │
└─────────────────────────────────────┘
类型二:输出固定 (Output Stationary)
┌─────────────────────────────────────┐
│ 部分和锁存在 MAC 阵列中 │
│ 权重和输入依次流入完成累加 │
│ 适合:减少累加器读写能耗 │
└─────────────────────────────────────┘
类型三:行固定 (Row Stationary)
┌─────────────────────────────────────┐
│ 最大化数据复用(权重/输入/输出) │
│ Eyeriss 论文提出,能效优化 │
│ 适合:边缘低功耗场景 │
└─────────────────────────────────────┘
(2) 量化精度支持
| 精度 | 位宽 | 适用场景 | 典型准确率损失 | 备注 |
|---|---|---|---|---|
| FP32 | 32-bit | 训练/高精度推理 | 0% | 基线 |
| FP16/BF16 | 16-bit | 训练/推理 | <1% | 需要硬件支持 |
| INT8 | 8-bit | 推理主流 | 1-3% [典型估算] | PTQ/QAT |
| INT4 | 4-bit | 边缘推理 | 3-8% [典型估算] | GPTQ/AWQ |
| INT2/二值 | 1-2-bit | 极端边缘 | >10% | 研究为主 |
量化对性能的影响(定性):
- 位宽减半 → MAC 阵列吞吐量理论翻倍(相同面积)
- 但需要校准/微调,增加部署复杂度
(3) 关键性能公式
理论峰值算力(TOPS)= MAC 数量 × 2 × 时钟频率
例:256 个 MAC × 2 × 1GHz = 512 GOPS = 0.512 TOPS [INT8]
能效比(TOPS/W)= 峰值算力 / 功耗
边缘 NPU IP 典型范围:1-10 TOPS/W [估算,视工艺/架构]
有效利用率 = 实际吞吐 / 理论峰值
受限于:内存带宽、数据复用效率、算子调度开销
典型:30%-70% [视模型/编译器优化程度]
技术演进史
时间线
─────────────────────────────────────────────────────────────────────►
2010s初 2016 2018-2019 2020-2022 2023-2025
│ │ │ │ │
▼ ▼ ▼ ▼ ▼
┌──────────┐ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐
│ DSP+加速器│ │ 第一代NPU IP │ │ 专用NPU IP │ │ NPU+编译器 │ │ 大模型推理IP │
│ 混合方案 │ │ 出现 │ │ 成熟 │ │ 一体化 │ │ 兴起 │
│ │ │ │ │ │ │ │ │ │
│·CEVA │ │·Cadence │ │·Arm Ethos-N │ │·编译器成为 │ │·Transformer │
│·Cadence │ │ Tensilica │ │·Cadence Tensilica Vision P6 │ │ 核心差异化 │ │ 专用加速 │
│ Tensilica│ │ Vision P5/P6 │ │·芯原Vivante │ │·端侧大模型 │ │·INT4/稀疏 │
│ │ │·Synopsys │ │ VX系列 │ │ 需求驱动 │ │ 支持增强 │
│ │ │ DesignWare │ │ │ │ │ │ │
│ │ │ ARC EV系列 │ │ │ │ │ │ │
└──────────┘ └──────────────┘ └──────────────┘ └──────────────┘ └──────────────┘
关键事件:
• 2016: AlphaGo 推动 AI 芯片热潮,NPU IP 需求激增
• 2018: 智能手机 SoC 普遍集成 NPU(华为麒麟、高通、联发科)
• 2020: 自动驾驶芯片开始大规模采用 NPU IP
• 2023+: 端侧大模型(7B 量化推理)成为新前沿
关键转折点
| 时间 | 事件 | 影响 |
|---|---|---|
| 2016-2017 | AI 加速成为 SoC 必备 | NPU IP 从可选变必选 |
| 2019-2020 | 量化技术成熟(INT8 主流化) | 边缘 NPU 性能跨越式提升 |
| 2021-2022 | Transformer 统治 CV/NLP | 需要 attention 机制加速支持 |
| 2023-2024 | 端侧大模型兴起 | NPU IP 需要支持更大访存/稀疏/长序列 |
技术路线对比
主要 NPU IP 供应商横向对比
| 维度 | Arm Ethos | Synopsys ARC | Cadence Tensilica | 芯原 Vivante | CEVA |
|---|---|---|---|---|---|
| 典型产品线 | Ethos-U (MCU) / Ethos-N (应用处理器) | ARC HS/EV 系列 | Vision P系列 / AI 系列 | VIP 系列 | SensPro / NeuPro |
| 目标市场 | 手机、IoT、汽车 | IoT、汽车、嵌入式 | 手机、IoT、音频 | 安防、IoT、汽车 | IoT、音频、视觉 |
| 典型算力范围 | U:0.1-1 TOPS; N: 1-10+ TOPS [估算] | 0.1-几 TOPS [估算] | 1-10+ TOPS [估算] | 1-10+ TOPS [估算] | 0.5-8 TOPS [估算] |
| 核心优势 | 生态最广,与 Arm CPU 天然协同 | 超低功耗,可配置性强 | 视觉处理传统强项 | 性价比,中国市场 | 信号处理+AI融合 |
| 工具链成熟度 | ★★★★★ | ★★★★ | ★★★★ | ★★★ | ★★★ |
| 大模型支持 | 中等(探索中) | 中等 | 中等 | 追赶中 | 追赶中 |
| 车规认证 | 有(通过合作伙伴) | 有 | 有 | 有 | 有 |
技术路线分化
NPU IP 技术路线
│
┌───────────────┼───────────────┐
▼ ▼ ▼
┌─────────┐ ┌─────────┐ ┌─────────┐
│ MCU 级 │ │ 应用级 │ │ 汽车级 │
│ (μW-mW) │ │ (mW-W) │ │ (W-10W+)│
└────┬────┘ └────┬────┘ └────┬────┘
│ │ │
·极低功耗 ·高性能密度 ·功能安全
·TinyML ·多精度支持 ·高可靠性
·INT8/INT4 ·Transformer ·冗余设计
·内存<1MB ·内存MB级 ·长期支持
上下游
产业链全景
上游(设计资源) 中游(NPU IP 供应商) 下游(IP 集成方/终端)
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ │ │ │ │ │
│ · EDA 工具 │ │ · Arm Ethos │ │ · 手机 SoC: │
│ (Synopsys, │ 授权/采购 │ · Synopsys ARC │ IP 授权 │ 高通/联发科/三星│
│ Cadence...) │──────────────►│ · Cadence │─────────────►│ · 安防芯片: │
│ │ │ · 芯原 │ │ 海思/瑞芯微 │
│ · 工艺 IP │ │ · CEVA │ │ · 汽车芯片: │
│ (TSMC, Samsung│ │ │ │ 地平线/黑芝麻 │
│ 工艺设计套件) │ │ │ │ · IoT: 各类厂商 │
│ │ │ │ │ │
└─────────────────┘ └─────────────────┘ └─────────────────┘
│ │ │
│ │ │
▼ ▼ ▼
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ 晶圆代工 │ │ 工具链/编译器 │ │ 终端产品 │
│ TSMC/Samsung/ │ │ (配套销售/订阅) │ │ 手机/摄像头/汽车/│
│ GlobalFoundries │ │ │ │ IoT/PC │
└─────────────────┘ └─────────────────┘ └─────────────────┘
关键依赖关系
| 上游依赖 | 影响 | 供应商分散度 |
|---|---|---|
| EDA 工具 | 设计效率、验证覆盖率 | 高度集中(Synopsys/Cadence/Siemens) |
| 工艺 IP | PPA、良率 | 高度集中(TSMC/Samsung) |
| ARM CPU IP | SoC 集成协同 | 事实垄断(Arm) |
关键指标
评估 NPU IP 的核心维度
| 指标类别 | 具体指标 | 说明 | 典型量级[估算] |
|---|---|---|---|
| 算力 | Peak TOPS(INT8) | 理论峰值,不含稀疏 | 0.1-20+ TOPS |
| 能效 | TOPS/W | 每瓦算力,决定续航/热设计 | 1-10+ TOPS/W |
| 面积效率 | TOPS/mm² | 影响芯片成本 | 视工艺差异大 |
| 精度 | 支持的量化位宽 | INT8/INT4/INT2/FP16 | INT8 为主流 |
| 模型覆盖 | 支持的算子/架构 | CNN/Transformer/MoE | 持续扩展中 |
| 内存 | 片上 SRAM 大小 | 决定可处理模型大小 | 256KB-几MB |
| 带宽 | 外部内存接口带宽 | 大模型推理瓶颈 | 视配置 |
| 利用率 | 实际/理论峰值 | 编译器+硬件协同效率 | 30%-70% [估算] |
| 灵活性 | 可配置程度 | 阵列大小/精度/功能 | 视 IP 类型 |
为什么这些指标重要?
┌─────────────────┐
│ 终端需求 │
│ 体验/续航/成本 │
└────────┬────────┘
│
┌──────────────────┼──────────────────┐
▼ ▼ ▼
┌──────────┐ ┌──────────┐ ┌──────────┐
│ 算力够不够 │ │ 功耗够不够 │ │ 成本够不够 │
│ (TOPS) │ │ (TOPS/W) │ │ (面积) │
└──────────┘ └──────────┘ └──────────┘
│ │ │
▼ ▼ ▼
┌──────────┐ ┌──────────┐ ┌──────────┐
│ 模型能不能 │ │ 散热/续航 │ │ 芯片售价 │
│ 跑得动 │ │ 能不能接受│