Sparse-PE:稀疏CNN加速器的原理与性能解析
1. Sparse-PE核心处理流程
Sparse-PE是一种用于加速CNN推理过程的加速器架构,其核心处理流程包含多个关键环节。
1.1 计算与积累
在处理过程中,计算块(CM)负责计算稀疏输入数据和稀疏权重数据的点积,产生部分点积输出。而积累块(AM)则对这些部分点积输出进行缓冲和累加,以生成最终输出结果。
积累块由一系列FIFO(fifo1 - fifo9)组成,它们连接在3个L1加法器电路的输出端。FIFO的输出会被送到L2加法器,L2加法器对特定卷积块的点积进行累加,从而得到最终输出。CM块不仅输出部分点积,还会输出与每个乘积相关的标签值(tag values),这些标签值在积累过程中起着重要作用。
积累过程分为两个阶段,通过相同颜色编码的FIFO组合(fifo1 + fifo4 + fifo7)、(fifo2 + fifo5 + fifo8)和(fifo3 + fifo6 + fifo9)来完成。根据每个积累阶段的标签值,输出可以是有效(valid)或部分(partial)的。如果所有输入的标签值都为1,则输出被认为是有效的;否则,就是部分的。
以下是积累阶段的示例表格:
| Cycle # | Fifos | Accumulation Stage | Output | Input1/tag | Input2/tag | Input3/tag |
| ---- | ---- | ---- | ---- | ---- | ---- | ---- |
| 1 | F1 + F4 + F7 | Stage 2 | O0(vali
超级会员免费看
订阅专栏 解锁全文
3447

被折叠的 条评论
为什么被折叠?



