本节主要介绍了VLSI DSP中脉动阵列基本概念与设计方法。
脉动阵列的基本概念
脉动架构是在规则依赖图(DG)上,利用线性映射技术来设计的
规则DG:若在DG中的任意节点沿某方向的一个边代表DG中所有节点沿相同方向的边,称为规则DG
二维坐标系中,节点标号为$(i,j)$,$[1,0]$表示$x$方向,$[0,1]$表示$y$方向
矢量定义:
- 节点标号矢量:$I^T=(i,j)$
- 投影矢量(迭代矢量):$d^T=(d_1,d_2)$给出投影方向,长度为该方向上节点间距
- PE空间矢量(处理器矢量):$p^T=(p_1,p_2)$,节点$I^T=(i,j)$被分配到标号为$p^TI=(p_1i+p_2j)$的PE执行
- 调度矢量:$S^T=(s_1,s_2)$,节点$I$在时刻$s^TI$被PE执行
- 选择$d^T=(1,0),p^T=(0,1),s^T=(1,0)$,使得$s^Td=1$时,硬件利用率$HUE=\frac1{|s^|}$可以达到100%
脉动阵列的设计方法
- 绘制算法的规则依赖图(Regular DC)
- 添加投影、PE空间矢量和调度矢量
- 边缘映射
- 构造最终脉动阵列电路
1.绘制算法的规则DG
2.添加投影、PE空间矢量和调度矢量
PE分配:
$$
p^T=(0,1)
$$$$
p^TI=j
$$- 则说明每个节点的纵坐标就决定着处理器的编号
调度分配:
$$
S^T=(1,0)
$$$$
S^TI=i
$$- 则说明每个节点的横坐标就决定着调度的时刻
3.边缘映射
例:
边缘映射表