02 DSA 微架构与数据流洞察
- 章节编号:02
- 所属层:H 硬件层(软硬协同核心,随 RTL 冻结代价最高)
- 关联 ADR:ADR-005(数据流策略)、ADR-006(计算阵列形态)、ADR-007(数值格式)、ADR-008(稀疏支持)
- 上游依赖:01 章(负载画像与量化诉求:小批量低延迟、能效优先、混合精度、确定性、内存带宽瓶颈)
学习目标
- 前置知识:读过 01 章(负载画像:batch≈1、能效优先、混合精度、1kHz 确定性、内存带宽瓶颈);知道「乘加(MAC)是深度学习算力的原子」「访存比计算慢一到两个数量级」这两条常识即可。无需 RTL/Verilog 经验。
- 学完产出:① 能说清四条计算阵列路线(脉动阵列 / 空间数据流 / 向量-VLIW / 可重构数据流)各自把「数据搬运」摊薄的机制,并解释为何脉动阵列/Cube 的 16³ = 4096 个 MAC 能把一次访存的数据复用几十上百次;② 能用「结构定义数据流(Hailo/Groq)在编译期把每条指令排到时钟周期」一句话讲清确定性执行,并解释它为何天然契合 1kHz 硬实时(p999);③ 能算清「端侧为何不能照搬 Groq SRAM-only」——用 VLA 权重 GB 级 vs 片上 SRAM 数百 MB 的容量账,推出「必须 DRAM 背靠 + 大 SRAM」;④ 能读懂 3.4 的横向对比表,判断 NVIDIA/Tesla/华为/地平线/Hailo/高通六条范式在能效、面效比、供应链上的取舍。
- 阅读姿势:盯住一条主线——「DSA 的一切微架构设计,都是为了在给定功耗下让乘加单元既永远有活干、又时序可预测」。能效(让 MAC 有活干)与确定性(时序可预测)是端侧具身芯片的两条并列 KPI,本章所有形态之争、数据流之争、精度之争,本质都在这两个目标之间找折中。
1. 范围与目标
本章决定芯片"算的核心"——计算阵列形态、数据流(数据如何在片上复用)、数值精度与稀疏支持。它直接决定能效与编译器可达的性能上限,且一旦随 RTL 冻结,软件几乎无法弥补。
核心问题
- 计算阵列选什么形态(脉动阵列 / 空间数据流 / 向量-VLIW / 可重构数据流)?
- 数 据流采用哪种复用策略(WS/OS/RS/NLR),如何兼顾小批量与多算子?
- 原生支持哪些数值格式(INT4/8、FP8、FP4/FP6、BF16)与块级缩放(MXFP4/NVFP4 类)?
- 是否做结构化稀疏(2:4 / 4:8),收益与精度代价?
- 如何兼顾确定性(具身硬实时)与可编程性(适配演进中的 VLA)?
2. 需求洞察(承接 01 章)
- 具体场景/任务:端侧人形机器人本体,batch≈1,运行 OpenVLA 7B / π0 3.3B(流匹配 10 步)+ 感知 ViT/CNN + 1kHz 控制。
- 由负载反推:
- 算力/能效:对标 Jetson Thor(2070 FP4 稀疏 / 1035 FP8 稠密 TFLOPS、能效较 Orin 3.5×);能效 TOPS/W 是第一 KPI。
- 小批量利用率:batch≈1 的小 GEMM/Attention 必须高利用率(大 batch 设计会"空转")。
- 精度:权重 INT4/INT8 + 激活 INT8/FP8 + 关键路径 BF16(ADR-001)→ 阵列须原生混合精度。
- 带宽:Attention+KV-cache、扩散多步迭代访存密集 → 数据流须最大化片上复用、减少 DRAM 往返。
- 确定性:1kHz 控制要求 p999 → 倾向静态可调度、时序可预测的计算结构。
- 端/边/中心差异:端侧重能效+确定性(小阵列+高复用);中心重吞吐(大阵列+大 batch)——架构需可缩放。